New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@atlassian/clientside-extensions-docs

Package Overview
Dependencies
Maintainers
29
Versions
167
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@atlassian/clientside-extensions-docs - npm Package Compare versions

Comparing version 2.1.0 to 2.2.0-a5cd816-kpexidsd

content/server/framework/clientside-extensions/guides/how-to/debugging-and-troubleshooting-an-extension.md

2

content/server/framework/clientside-extensions/get-help.md

@@ -7,3 +7,3 @@ ---

subcategory: get-help
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: extension-points
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: extension-points
date: '2021-05-05'
date: '2021-05-18'
---

@@ -105,3 +105,3 @@

const renderExtension = extension => {
const renderExtension = (extension) => {
/* rendering extension logic */

@@ -153,3 +153,3 @@ };

const renderExtension = extension => {
const renderExtension = (extension) => {
/* rendering extension logic */

@@ -156,0 +156,0 @@ };

@@ -7,3 +7,3 @@ ---

subcategory: extension-points
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: extension-points
date: '2021-05-05'
date: '2021-05-18'
---

@@ -132,3 +132,3 @@

const renderExtension = extension => {
const renderExtension = (extension) => {
/* rendering extension logic */

@@ -135,0 +135,0 @@ };

@@ -7,3 +7,3 @@ ---

subcategory: extension-points
date: '2021-05-05'
date: '2021-05-18'
---

@@ -57,3 +57,3 @@

const renderExtension = extension => {
const renderExtension = (extension) => {
const { key, attributes } = extension;

@@ -113,3 +113,3 @@ switch (attributes.type) {

const renderExtension = extension => {
const renderExtension = (extension) => {
const { key, attributes } = extension;

@@ -195,3 +195,3 @@ switch (attributes.type) {

const renderExtension = extension => {
const renderExtension = (extension) => {
const { key, attributes } = extension;

@@ -274,3 +274,3 @@ switch (attributes.type) {

const renderExtension = extension => {
const renderExtension = (extension) => {
const { key, attributes } = extension;

@@ -277,0 +277,0 @@ switch (attributes.type) {

@@ -7,3 +7,3 @@ ---

subcategory: how-to
date: '2021-05-05'
date: '2021-05-18'
---

@@ -78,3 +78,3 @@

In your `pom.xml` file, find your declaration of the Maven plugin for the product you're targeting (e.g: `bitbucket-maven-plugin`), and:
In your `pom.xml` file, find your declaration of the Maven plugin for the product you're targeting (e.g.: `bitbucket-maven-plugin`), and:

@@ -81,0 +81,0 @@ - Import the `com.atlassian.plugin.clientsideextensions` package.

@@ -7,3 +7,3 @@ ---

subcategory: how-to
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: how-to
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: introduction
date: '2021-05-05'
date: '2021-05-18'
---

@@ -61,3 +61,3 @@

label: 'Click to open a modal',
onAction: modalAPI => {
onAction: (modalAPI) => {
const getContent = () => `

@@ -69,7 +69,7 @@ <p>And some content inside the modal too.</p>

modalAPI.onMount(container => {
modalAPI.onMount((container) => {
container.innerHTML = getContent();
});
modalAPI.onUnmount(container => {
modalAPI.onUnmount((container) => {
container.innerHTML = '';

@@ -110,3 +110,3 @@ });

label: 'Click to open a modal',
onAction: modalAPI => {
onAction: (modalAPI) => {
let count = 0;

@@ -120,3 +120,3 @@

modalAPI.onMount(container => {
modalAPI.onMount((container) => {
container.innerHTML = getContent();

@@ -140,3 +140,3 @@

modalAPI.onUnmount(container => {
modalAPI.onUnmount((container) => {
container.innerHTML = '';

@@ -143,0 +143,0 @@ });

@@ -7,3 +7,3 @@ ---

subcategory: introduction
date: '2021-05-05'
date: '2021-05-18'
---

@@ -66,3 +66,3 @@

*/
export default PageExtension.factory(container => {
export default PageExtension.factory((container) => {
container.innerHTML = `

@@ -144,3 +144,3 @@ <!-- using AUI page-panel CSS to make it look nice -->

*/
export default PageExtension.factory(container => {
export default PageExtension.factory((container) => {
container.innerHTML = `

@@ -161,3 +161,3 @@ <h2>My extension</h2>

You may have noticed that the callback it receives doesn't return any attributes (like e.g: buttons or panels).
You may have noticed that the callback it receives doesn't return any attributes (like e.g.: buttons or panels).
That's because pages don't need an API to interact with products since they control the whole page.

@@ -177,3 +177,3 @@

*/
export default PageExtension.factory(container => {
export default PageExtension.factory((container) => {
// do whatever you want with the container :)

@@ -211,3 +211,3 @@ });

*/
export default PageExtension.factory(container => {
export default PageExtension.factory((container) => {
render(<MyPage />, container);

@@ -214,0 +214,0 @@ });

@@ -7,3 +7,3 @@ ---

subcategory: introduction
date: '2021-05-05'
date: '2021-05-18'
---

@@ -82,2 +82,10 @@

{{% tip %}}
Always remember to check the documentation of each product's extension point and supported attributes.
You will read more information about [revealing extension points on the page](/server/framework/clientside-extensions/guides/introduction/discovering-extension-points/#revealing-extension-points-on-the-page) in the next part of the guide.
{{% /tip %}}
## Comment annotations

@@ -112,2 +120,3 @@

label: 'Extensions are awesome!',
iconBefore: 'app-access',
url: 'https://go.atlassian.com/clientside-extensions',

@@ -170,2 +179,3 @@ };

label: 'Extensions are awesome!',
iconBefore: 'app-access',
onAction: () => {

@@ -172,0 +182,0 @@ alert('They are awesome indeed!');

@@ -7,3 +7,3 @@ ---

subcategory: introduction
date: '2021-05-05'
date: '2021-05-18'
---

@@ -69,4 +69,4 @@

return {
onAction: panelAPI => {
panelAPI.onMount(container => {
onAction: (panelAPI) => {
panelAPI.onMount((container) => {
container.innerHTML = `

@@ -108,3 +108,3 @@ <h2>Look!</h2>

return {
onAction: panelAPI => {
onAction: (panelAPI) => {
let interval;

@@ -118,3 +118,3 @@ let count = 1;

panelAPI.onMount(container => {
panelAPI.onMount((container) => {
interval = setInterval(() => {

@@ -129,3 +129,3 @@ console.log('interval executed');

panelAPI.onUnmount(container => {
panelAPI.onUnmount((container) => {
console.log('interval cleared');

@@ -132,0 +132,0 @@ clearInterval(interval);

@@ -7,3 +7,3 @@ ---

subcategory: introduction
date: '2021-05-05'
date: '2021-05-18'
---

@@ -29,3 +29,3 @@

1. Navigate to the PR you created for testing CSE (e.g: http://localhost:7990/bitbucket/projects/PROJECT_1/repos/rep_1/pull-requests/1/)
1. Navigate to the PR you created for testing CSE (e.g.: http://localhost:7990/bitbucket/projects/PROJECT_1/repos/rep_1/pull-requests/1/)
2. Add this query parameter to the URL: `?clientside-extensions`.

@@ -32,0 +32,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: introduction
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: introduction
date: '2021-05-05'
date: '2021-05-18'
---

@@ -42,3 +42,3 @@

*/
export default ButtonExtension.factory(extensionAPI => {
export default ButtonExtension.factory((extensionAPI) => {
return {

@@ -86,3 +86,3 @@ label: 'Extensions are awesome!',

*/
export default ButtonExtension.factory(extensionAPI => {
export default ButtonExtension.factory((extensionAPI) => {
let clicked = 0;

@@ -134,3 +134,3 @@

*/
export default ButtonExtension.factory(extensionAPI => {
export default ButtonExtension.factory((extensionAPI) => {
let clicked = 0;

@@ -137,0 +137,0 @@ let changed = 0;

@@ -7,3 +7,3 @@ ---

subcategory: index
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-04-30'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -81,3 +81,3 @@

someOperation().then(res => {
someOperation().then((res) => {
if (!res) {

@@ -109,4 +109,4 @@ return extensionAPI.updateAttributes({ isLoading: false, isDisabled: true });

export default ButtonExtension.factory((extensionAPI, context) => {
initialize(context).then(res => {
extensionAPI.updateAttributes(prevAttributes => ({
initialize(context).then((res) => {
extensionAPI.updateAttributes((prevAttributes) => ({
isLoading: false,

@@ -136,3 +136,3 @@ isDisabled: prevAttributes.isDisabled || res.active,

export default ButtonExtension.factory((extensionAPI, context) => {
fetchRequest().then(response => {
fetchRequest().then((response) => {
extensionAPI.updateAttributes(() => ({

@@ -214,3 +214,3 @@ isDisabled: !response.active,

export default ButtonExtension.factory((extensionAPI, context) => {
const likeSubscription = likeService.getLikes(context).subscribe(res => {
const likeSubscription = likeService.getLikes(context).subscribe((res) => {
extensionAPI.updateAttributes({

@@ -217,0 +217,0 @@ isLoading: false,

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-04-30'
date: '2021-05-18'
---

@@ -284,3 +284,3 @@

modalAPI.onMount(container => {
modalAPI.onMount((container) => {
// append your content for the modal

@@ -287,0 +287,0 @@ container.innerHTML = getModalContent();

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-04-30'
date: '2021-05-18'
---

@@ -70,4 +70,4 @@

return {
onAction: panelApi => {
panelApi.onMount(container => {
onAction: (panelApi) => {
panelApi.onMount((container) => {
container.innerHTML = getPanelContent();

@@ -120,7 +120,7 @@ });

label: 'JS Panel',
onAction: panelApi => {
onAction: (panelApi) => {
let button;
panelApi
.onMount(container => {
.onMount((container) => {
button = document.createElement('button');

@@ -132,3 +132,3 @@ button.innerText = 'Click me!';

})
.onUnmount(container => {
.onUnmount((container) => {
// use to cleanup any event listener, subscription, or unmount components

@@ -135,0 +135,0 @@ button.removeEventListener('click', onClick);

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -141,6 +141,6 @@

asyncPanelApi
.onMount(container => {
.onMount((container) => {
// use the container to render your content in it
})
.onUnmount(container => {
.onUnmount((container) => {
// run your clean up code. e.g. stop listening to events, unmount your component from the container.

@@ -147,0 +147,0 @@ });

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -148,3 +148,3 @@

onAction(modalAPI) {
modalAPI.onMount(container => {
modalAPI.onMount((container) => {
container.innerHTML = `

@@ -151,0 +151,0 @@ <h1>${context.title}</h1>

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -144,3 +144,3 @@

*/
export default PageExtension.factory(container => {
export default PageExtension.factory((container) => {
// attach content to the container

@@ -175,3 +175,3 @@

*/
export default PageExtension.factory(container => {
export default PageExtension.factory((container) => {
container.innerHTML = '<div>My custom page</div>';

@@ -198,3 +198,3 @@ });

*/
export default PageExtension.factory(container => {
export default PageExtension.factory((container) => {
container.innerHTML = '<div>Very secure page!</div>';

@@ -201,0 +201,0 @@ });

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -106,8 +106,8 @@

return {
onAction: panelApi => {
onAction: (panelApi) => {
panelApi
.onMount(container => {
.onMount((container) => {
// use the container to render your content in it
})
.onUnmount(container => {
.onUnmount((container) => {
// run your clean up code. e.g. stop listening to events, unmount your component from the container.

@@ -137,3 +137,3 @@ });

onAction(panelApi) {
panelApi.onMount(container => {
panelApi.onMount((container) => {
container.innerHTML = `

@@ -140,0 +140,0 @@ <h1>${context.title}</h1>

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -151,3 +151,3 @@

<>
{extensions.map(ext => (
{extensions.map((ext) => (
<a href="ext.url">{ext.label}</a>

@@ -154,0 +154,0 @@ ))}

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-04-30'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: api
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: glossary
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -7,3 +7,3 @@ ---

subcategory: webpack
date: '2021-05-05'
date: '2021-05-18'
---

@@ -109,3 +109,3 @@

*/
export default LinkExtension.factory(api => {
export default LinkExtension.factory((api) => {
return {

@@ -237,3 +237,3 @@ label: 'My Link-Extension',

*/
export default PageExtension.factory(container => {
export default PageExtension.factory((container) => {
container.innerHTML = '<div>Very secure page!</div>';

@@ -261,3 +261,3 @@ });

*/
export default PageExtension.factory(container => {
export default PageExtension.factory((container) => {
container.innerHTML = '<div>Very secure page!</div>';

@@ -264,0 +264,0 @@ });

@@ -7,3 +7,3 @@ ---

subcategory: webpack
date: '2021-05-05'
date: '2021-05-18'
---

@@ -10,0 +10,0 @@

@@ -91,2 +91,6 @@ {

"url": "/server/framework/clientside-extensions/guides/how-to/setup-schema-loader"
},
{
"title": "Debugging and troubleshooting an extension",
"url": "/server/framework/clientside-extensions/guides/how-to/debugging-and-troubleshooting-an-extension"
}

@@ -93,0 +97,0 @@ ]

{
"name": "@atlassian/clientside-extensions-docs",
"version": "2.1.0",
"version": "2.2.0-a5cd816-kpexidsd",
"description": "Holds the official documentation for Altassian Server client-side extensions API.",

@@ -76,3 +76,3 @@ "license": "BSD-3-Clause",

"link-check": "doc-scripts link-check",
"prepare": "SKIP_VERSION_CHECK=true doc-scripts validate",
"prepublishOnly": "SKIP_VERSION_CHECK=true doc-scripts validate",
"prepack": "SKIP_VERSION_CHECK=true doc-scripts set-last-updated",

@@ -82,5 +82,5 @@ "doc-scripts": "doc-scripts"

"optionalDependencies": {
"@atlassian/doc-scripts": "^2.6.0"
"@atlassian/doc-scripts": "^3.0.3"
},
"gitHead": "ba74ac4a8fc369d13e030d6b9c5112e35be20254"
"gitHead": "a5cd8161e4fc757a920d0076886fda8cb66739ce"
}

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc