@atlaskit/editor-plugin-extension 4.1.2 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/dist/cjs/extensionPlugin.js +19 -5
- package/dist/cjs/pm-plugins/toolbar.js +25 -24
- package/dist/cjs/ui/ConfigPanel/ConfigPanel.js +9 -1
- package/dist/cjs/ui/ConfigPanel/DescriptionSummary.js +50 -0
- package/dist/cjs/ui/ConfigPanel/Header/HeaderAfterIconElement.js +50 -0
- package/dist/cjs/ui/ConfigPanel/Header/HeaderIcon.js +49 -0
- package/dist/cjs/ui/ConfigPanel/Header.js +3 -12
- package/dist/cjs/ui/ConfigPanel/HelpLink.js +22 -0
- package/dist/cjs/ui/ConfigPanel/constants.js +4 -2
- package/dist/cjs/ui/ConfigPanel/withExtensionManifest.js +33 -0
- package/dist/cjs/ui/useConfigPanelPluginHook.js +250 -0
- package/dist/es2019/extensionPlugin.js +19 -5
- package/dist/es2019/pm-plugins/toolbar.js +25 -24
- package/dist/es2019/ui/ConfigPanel/ConfigPanel.js +9 -1
- package/dist/es2019/ui/ConfigPanel/DescriptionSummary.js +45 -0
- package/dist/es2019/ui/ConfigPanel/Header/HeaderAfterIconElement.js +44 -0
- package/dist/es2019/ui/ConfigPanel/Header/HeaderIcon.js +39 -0
- package/dist/es2019/ui/ConfigPanel/Header.js +1 -11
- package/dist/es2019/ui/ConfigPanel/HelpLink.js +16 -0
- package/dist/es2019/ui/ConfigPanel/constants.js +3 -1
- package/dist/es2019/ui/ConfigPanel/withExtensionManifest.js +21 -0
- package/dist/es2019/ui/useConfigPanelPluginHook.js +201 -0
- package/dist/esm/extensionPlugin.js +18 -5
- package/dist/esm/pm-plugins/toolbar.js +25 -24
- package/dist/esm/ui/ConfigPanel/ConfigPanel.js +9 -1
- package/dist/esm/ui/ConfigPanel/DescriptionSummary.js +41 -0
- package/dist/esm/ui/ConfigPanel/Header/HeaderAfterIconElement.js +43 -0
- package/dist/esm/ui/ConfigPanel/Header/HeaderIcon.js +40 -0
- package/dist/esm/ui/ConfigPanel/Header.js +1 -10
- package/dist/esm/ui/ConfigPanel/HelpLink.js +15 -0
- package/dist/esm/ui/ConfigPanel/constants.js +3 -1
- package/dist/esm/ui/ConfigPanel/withExtensionManifest.js +26 -0
- package/dist/esm/ui/useConfigPanelPluginHook.js +236 -0
- package/dist/types/extensionPluginType.d.ts +2 -0
- package/dist/types/ui/ConfigPanel/DescriptionSummary.d.ts +7 -0
- package/dist/types/ui/ConfigPanel/Header/HeaderAfterIconElement.d.ts +7 -0
- package/dist/types/ui/ConfigPanel/Header/HeaderIcon.d.ts +7 -0
- package/dist/types/ui/ConfigPanel/HelpLink.d.ts +7 -0
- package/dist/types/ui/ConfigPanel/constants.d.ts +2 -0
- package/dist/types/ui/ConfigPanel/withExtensionManifest.d.ts +9 -0
- package/dist/types/ui/useConfigPanelPluginHook.d.ts +27 -0
- package/dist/types-ts4.5/extensionPluginType.d.ts +2 -0
- package/dist/types-ts4.5/ui/ConfigPanel/DescriptionSummary.d.ts +7 -0
- package/dist/types-ts4.5/ui/ConfigPanel/Header/HeaderAfterIconElement.d.ts +7 -0
- package/dist/types-ts4.5/ui/ConfigPanel/Header/HeaderIcon.d.ts +7 -0
- package/dist/types-ts4.5/ui/ConfigPanel/HelpLink.d.ts +7 -0
- package/dist/types-ts4.5/ui/ConfigPanel/constants.d.ts +2 -0
- package/dist/types-ts4.5/ui/ConfigPanel/withExtensionManifest.d.ts +9 -0
- package/dist/types-ts4.5/ui/useConfigPanelPluginHook.d.ts +27 -0
- package/package.json +7 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-extension
|
|
2
2
|
|
|
3
|
+
## 5.0.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#123010](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/123010)
|
|
8
|
+
[`de55801631775`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/de55801631775) -
|
|
9
|
+
[ux] Move copy/delete to overflow menu on editor floating toolbar
|
|
10
|
+
- Updated dependencies
|
|
11
|
+
|
|
12
|
+
## 5.0.0
|
|
13
|
+
|
|
14
|
+
### Major Changes
|
|
15
|
+
|
|
16
|
+
- [#122281](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/122281)
|
|
17
|
+
[`8c84e6db9b94f`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/8c84e6db9b94f) -
|
|
18
|
+
EDF-2539 Integrated object sidebar api through context-panel plugin in extensions to show panel.
|
|
19
|
+
|
|
20
|
+
### Patch Changes
|
|
21
|
+
|
|
22
|
+
- Updated dependencies
|
|
23
|
+
|
|
3
24
|
## 4.1.2
|
|
4
25
|
|
|
5
26
|
### Patch Changes
|
|
@@ -8,6 +8,7 @@ exports.extensionPlugin = void 0;
|
|
|
8
8
|
var _adfSchema = require("@atlaskit/adf-schema");
|
|
9
9
|
var _safePlugin = require("@atlaskit/editor-common/safe-plugin");
|
|
10
10
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
11
|
+
var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
11
12
|
var _actions = require("./editor-actions/actions");
|
|
12
13
|
var _commands = require("./editor-commands/commands");
|
|
13
14
|
var _extensionApi = require("./pm-plugins/extension-api");
|
|
@@ -20,6 +21,9 @@ var _bodiedExtension = require("./pm-plugins/toDOM-fixes/bodiedExtension");
|
|
|
20
21
|
var _toolbar = require("./pm-plugins/toolbar");
|
|
21
22
|
var _uniqueId = require("./pm-plugins/unique-id");
|
|
22
23
|
var _contextPanel = require("./ui/context-panel");
|
|
24
|
+
var _useConfigPanelPluginHook = require("./ui/useConfigPanelPluginHook");
|
|
25
|
+
// Remove below line when cleaning up platform_editor_ai_object_sidebar_injection feature flag
|
|
26
|
+
|
|
23
27
|
var extensionPlugin = exports.extensionPlugin = function extensionPlugin(_ref) {
|
|
24
28
|
var _api$featureFlags, _api$analytics2, _api$analytics3, _api$contextPanel3, _api$decorations, _api$contextPanel4, _api$analytics4;
|
|
25
29
|
var _ref$config = _ref.config,
|
|
@@ -58,7 +62,9 @@ var extensionPlugin = exports.extensionPlugin = function extensionPlugin(_ref) {
|
|
|
58
62
|
}
|
|
59
63
|
var pluginState = _pluginKey.pluginKey.getState(state);
|
|
60
64
|
return {
|
|
61
|
-
showContextPanel: pluginState === null || pluginState === void 0 ? void 0 : pluginState.showContextPanel
|
|
65
|
+
showContextPanel: pluginState === null || pluginState === void 0 ? void 0 : pluginState.showContextPanel,
|
|
66
|
+
extensionProvider: pluginState === null || pluginState === void 0 ? void 0 : pluginState.extensionProvider,
|
|
67
|
+
processParametersAfter: pluginState === null || pluginState === void 0 ? void 0 : pluginState.processParametersAfter
|
|
62
68
|
};
|
|
63
69
|
},
|
|
64
70
|
pmPlugins: function pmPlugins() {
|
|
@@ -174,12 +180,20 @@ var extensionPlugin = exports.extensionPlugin = function extensionPlugin(_ref) {
|
|
|
174
180
|
breakoutEnabled: options.breakoutEnabled,
|
|
175
181
|
hoverDecoration: _api === null || _api === void 0 || (_api$decorations = _api.decorations) === null || _api$decorations === void 0 ? void 0 : _api$decorations.actions.hoverDecoration,
|
|
176
182
|
applyChangeToContextPanel: _api === null || _api === void 0 || (_api$contextPanel4 = _api.contextPanel) === null || _api$contextPanel4 === void 0 ? void 0 : _api$contextPanel4.actions.applyChange,
|
|
177
|
-
editorAnalyticsAPI: _api === null || _api === void 0 || (_api$analytics4 = _api.analytics) === null || _api$analytics4 === void 0 ? void 0 : _api$analytics4.actions
|
|
183
|
+
editorAnalyticsAPI: _api === null || _api === void 0 || (_api$analytics4 = _api.analytics) === null || _api$analytics4 === void 0 ? void 0 : _api$analytics4.actions,
|
|
184
|
+
extensionApi: (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1') ? _api : undefined
|
|
178
185
|
}),
|
|
179
|
-
contextPanel: (0, _contextPanel.getContextPanel)(function () {
|
|
186
|
+
contextPanel: !(0, _platformFeatureFlags.fg)('platform_editor_ai_object_sidebar_injection') ? (0, _contextPanel.getContextPanel)(function () {
|
|
180
187
|
var _editorViewRef$curren;
|
|
181
188
|
return (_editorViewRef$curren = editorViewRef.current) !== null && _editorViewRef$curren !== void 0 ? _editorViewRef$curren : undefined;
|
|
182
|
-
})(_api, featureFlags)
|
|
183
|
-
}
|
|
189
|
+
})(_api, featureFlags) : undefined
|
|
190
|
+
},
|
|
191
|
+
usePluginHook: (0, _platformFeatureFlags.fg)('platform_editor_ai_object_sidebar_injection') ? function (_ref6) {
|
|
192
|
+
var editorView = _ref6.editorView;
|
|
193
|
+
(0, _useConfigPanelPluginHook.useConfigPanelPluginHook)({
|
|
194
|
+
editorView: editorView,
|
|
195
|
+
api: _api
|
|
196
|
+
});
|
|
197
|
+
} : undefined
|
|
184
198
|
};
|
|
185
199
|
};
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.getToolbarConfig = void 0;
|
|
8
8
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
10
|
var _extensions = require("@atlaskit/editor-common/extensions");
|
|
10
11
|
var _messages = _interopRequireDefault(require("@atlaskit/editor-common/messages"));
|
|
11
12
|
var _styles = require("@atlaskit/editor-common/styles");
|
|
@@ -13,6 +14,7 @@ var _utils = require("@atlaskit/editor-common/utils");
|
|
|
13
14
|
var _utils2 = require("@atlaskit/editor-prosemirror/utils");
|
|
14
15
|
var _contentWidthNarrow = _interopRequireDefault(require("@atlaskit/icon/core/content-width-narrow"));
|
|
15
16
|
var _contentWidthWide = _interopRequireDefault(require("@atlaskit/icon/core/content-width-wide"));
|
|
17
|
+
var _copy = _interopRequireDefault(require("@atlaskit/icon/core/copy"));
|
|
16
18
|
var _delete = _interopRequireDefault(require("@atlaskit/icon/core/delete"));
|
|
17
19
|
var _edit = _interopRequireDefault(require("@atlaskit/icon/core/edit"));
|
|
18
20
|
var _expandHorizontal = _interopRequireDefault(require("@atlaskit/icon/core/expand-horizontal"));
|
|
@@ -139,7 +141,7 @@ var getToolbarConfig = exports.getToolbarConfig = function getToolbarConfig(_ref
|
|
|
139
141
|
editorAnalyticsAPI = extensionApi === null || extensionApi === void 0 || (_extensionApi$analyti = extensionApi.analytics) === null || _extensionApi$analyti === void 0 ? void 0 : _extensionApi$analyti.actions;
|
|
140
142
|
}
|
|
141
143
|
if (extensionState && !extensionState.showContextPanel && extensionState.element) {
|
|
142
|
-
var _hoverDecoration, _hoverDecoration2, _hoverDecoration3, _hoverDecoration4
|
|
144
|
+
var _hoverDecoration, _hoverDecoration2, _hoverDecoration3, _hoverDecoration4;
|
|
143
145
|
var nodeType = [state.schema.nodes.extension, state.schema.nodes.inlineExtension, state.schema.nodes.bodiedExtension, state.schema.nodes.multiBodiedExtension];
|
|
144
146
|
var editButtonArray = editButton(formatMessage, extensionState, applyChangeToContextPanel, editorAnalyticsAPI);
|
|
145
147
|
var breakoutButtonArray = breakoutOptions(state, formatMessage, extensionState, breakoutEnabled, editorAnalyticsAPI);
|
|
@@ -215,13 +217,13 @@ var getToolbarConfig = exports.getToolbarConfig = function getToolbarConfig(_ref
|
|
|
215
217
|
left: nextPos.left
|
|
216
218
|
};
|
|
217
219
|
},
|
|
218
|
-
items: [].concat((0, _toConsumableArray2.default)(editButtonArray), (0, _toConsumableArray2.default)(breakoutButtonArray), [{
|
|
220
|
+
items: [].concat((0, _toConsumableArray2.default)(editButtonArray), (0, _toConsumableArray2.default)(breakoutButtonArray), (0, _toConsumableArray2.default)((0, _experiments.editorExperiment)('platform_editor_controls', 'control') ? [{
|
|
219
221
|
type: 'separator',
|
|
220
222
|
hidden: editButtonArray.length === 0 && breakoutButtonArray.length === 0
|
|
221
223
|
}, {
|
|
222
224
|
type: 'extensions-placeholder',
|
|
223
225
|
separator: 'end'
|
|
224
|
-
}
|
|
226
|
+
}, {
|
|
225
227
|
type: 'copy-button',
|
|
226
228
|
items: [{
|
|
227
229
|
state: state,
|
|
@@ -246,28 +248,27 @@ var getToolbarConfig = exports.getToolbarConfig = function getToolbarConfig(_ref
|
|
|
246
248
|
tabIndex: null,
|
|
247
249
|
confirmDialog: confirmDialog
|
|
248
250
|
}] : [{
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
icon: _delete.default,
|
|
252
|
-
iconFallback: _remove.default,
|
|
253
|
-
appearance: 'danger',
|
|
254
|
-
onClick: (0, _commands.removeExtension)(editorAnalyticsAPI),
|
|
255
|
-
onMouseEnter: (_hoverDecoration5 = hoverDecoration) === null || _hoverDecoration5 === void 0 ? void 0 : _hoverDecoration5(nodeType, true),
|
|
256
|
-
onMouseLeave: (_hoverDecoration6 = hoverDecoration) === null || _hoverDecoration6 === void 0 ? void 0 : _hoverDecoration6(nodeType, false),
|
|
257
|
-
onFocus: (_hoverDecoration7 = hoverDecoration) === null || _hoverDecoration7 === void 0 ? void 0 : _hoverDecoration7(nodeType, true),
|
|
258
|
-
onBlur: (_hoverDecoration8 = hoverDecoration) === null || _hoverDecoration8 === void 0 ? void 0 : _hoverDecoration8(nodeType, false),
|
|
259
|
-
focusEditoronEnter: true,
|
|
260
|
-
title: formatMessage(_messages.default.remove),
|
|
261
|
-
tabIndex: null,
|
|
262
|
-
confirmDialog: confirmDialog
|
|
263
|
-
}, {
|
|
264
|
-
type: 'separator'
|
|
251
|
+
type: 'separator',
|
|
252
|
+
fullHeight: true
|
|
265
253
|
}, {
|
|
266
|
-
type: '
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
254
|
+
type: 'overflow-dropdown',
|
|
255
|
+
options: [{
|
|
256
|
+
title: 'Copy',
|
|
257
|
+
onClick: function onClick() {
|
|
258
|
+
var _extensionApi$core, _extensionApi$floatin;
|
|
259
|
+
extensionApi === null || extensionApi === void 0 || (_extensionApi$core = extensionApi.core) === null || _extensionApi$core === void 0 || _extensionApi$core.actions.execute( // @ts-ignore
|
|
260
|
+
extensionApi === null || extensionApi === void 0 || (_extensionApi$floatin = extensionApi.floatingToolbar) === null || _extensionApi$floatin === void 0 ? void 0 : _extensionApi$floatin.commands.copyNode(nodeType));
|
|
261
|
+
return true;
|
|
262
|
+
},
|
|
263
|
+
icon: /*#__PURE__*/_react.default.createElement(_copy.default, {
|
|
264
|
+
label: "Copy"
|
|
265
|
+
})
|
|
266
|
+
}, {
|
|
267
|
+
title: 'Delete',
|
|
268
|
+
onClick: (0, _commands.removeExtension)(editorAnalyticsAPI),
|
|
269
|
+
icon: /*#__PURE__*/_react.default.createElement(_delete.default, {
|
|
270
|
+
label: "Delete"
|
|
271
|
+
})
|
|
271
272
|
}]
|
|
272
273
|
}])),
|
|
273
274
|
scrollable: true
|
|
@@ -27,7 +27,9 @@ var _analytics = require("@atlaskit/editor-common/analytics");
|
|
|
27
27
|
var _extensions = require("@atlaskit/editor-common/extensions");
|
|
28
28
|
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
29
29
|
var _form = _interopRequireWildcard(require("@atlaskit/form"));
|
|
30
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
30
31
|
var _constants = require("./constants");
|
|
32
|
+
var _DescriptionSummary = require("./DescriptionSummary");
|
|
31
33
|
var _ErrorMessage = _interopRequireDefault(require("./ErrorMessage"));
|
|
32
34
|
var _FormContent = _interopRequireDefault(require("./FormContent"));
|
|
33
35
|
var _FormErrorBoundary = require("./FormErrorBoundary");
|
|
@@ -270,6 +272,10 @@ var ConfigPanel = /*#__PURE__*/function (_React$Component) {
|
|
|
270
272
|
}());
|
|
271
273
|
// memoized to prevent rerender on new parameters
|
|
272
274
|
(0, _defineProperty2.default)(_this, "renderHeader", (0, _memoizeOne.default)(function (extensionManifest) {
|
|
275
|
+
// If below FG is true then Header will be rendered separately
|
|
276
|
+
if ((0, _platformFeatureFlags.fg)('platform_editor_ai_object_sidebar_injection')) {
|
|
277
|
+
return null;
|
|
278
|
+
}
|
|
273
279
|
var _this$props2 = _this.props,
|
|
274
280
|
onCancel = _this$props2.onCancel,
|
|
275
281
|
showHeader = _this$props2.showHeader;
|
|
@@ -436,7 +442,9 @@ var ConfigPanel = /*#__PURE__*/function (_React$Component) {
|
|
|
436
442
|
noValidate: true,
|
|
437
443
|
onKeyDown: handleKeyDown,
|
|
438
444
|
"data-testid": "extension-config-panel"
|
|
439
|
-
}), _this2.renderHeader(extensionManifest), /*#__PURE__*/_react.default.createElement(
|
|
445
|
+
}), _this2.renderHeader(extensionManifest), (0, _platformFeatureFlags.fg)('platform_editor_ai_object_sidebar_injection') && /*#__PURE__*/_react.default.createElement(_DescriptionSummary.DescriptionSummary, {
|
|
446
|
+
extensionManifest: extensionManifest
|
|
447
|
+
}), /*#__PURE__*/_react.default.createElement(ConfigFormIntlWithBoundary, {
|
|
440
448
|
api: api,
|
|
441
449
|
canSave: false,
|
|
442
450
|
errorMessage: errorMessage,
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.DescriptionSummary = DescriptionSummary;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _reactIntlNext = require("react-intl-next");
|
|
10
|
+
var _extensions = require("@atlaskit/editor-common/extensions");
|
|
11
|
+
var _primitives = require("@atlaskit/primitives");
|
|
12
|
+
var _HelpLink = require("./HelpLink");
|
|
13
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
14
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
15
|
+
var descriptionStyles = (0, _primitives.xcss)({
|
|
16
|
+
marginBottom: 'space.300'
|
|
17
|
+
});
|
|
18
|
+
var helpLinkStyles = (0, _primitives.xcss)({
|
|
19
|
+
paddingTop: 'space.150'
|
|
20
|
+
});
|
|
21
|
+
function DescriptionSummary(_ref) {
|
|
22
|
+
var extensionManifest = _ref.extensionManifest;
|
|
23
|
+
var _useIntl = (0, _reactIntlNext.useIntl)(),
|
|
24
|
+
formatMessage = _useIntl.formatMessage;
|
|
25
|
+
var description = extensionManifest.description,
|
|
26
|
+
documentationUrl = extensionManifest.documentationUrl;
|
|
27
|
+
// Use a temporary allowlist of top 3 macros to test out a new "Documentation" CTA ("Need help?")
|
|
28
|
+
// This will be removed when Top 5 Modernized Macros updates are rolled out
|
|
29
|
+
var modernizedMacrosList = ['children', 'recently-updated', 'excerpt'];
|
|
30
|
+
var enableHelpCTA = modernizedMacrosList.includes(extensionManifest.key);
|
|
31
|
+
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, (description || documentationUrl) && /*#__PURE__*/_react.default.createElement(_primitives.Box, {
|
|
32
|
+
xcss: descriptionStyles
|
|
33
|
+
}, /*#__PURE__*/_react.default.createElement(_primitives.Text, {
|
|
34
|
+
as: "p",
|
|
35
|
+
testId: "config-panel-header-description"
|
|
36
|
+
}, description && /*#__PURE__*/_react.default.createElement(_react.Fragment, null,
|
|
37
|
+
// Ignored via go/ees005
|
|
38
|
+
// eslint-disable-next-line require-unicode-regexp
|
|
39
|
+
description.replace(/([^.])$/, '$1.'), ' '), documentationUrl && (enableHelpCTA ? /*#__PURE__*/_react.default.createElement(_primitives.Box, {
|
|
40
|
+
xcss: helpLinkStyles
|
|
41
|
+
}, /*#__PURE__*/_react.default.createElement(_primitives.Text, {
|
|
42
|
+
as: "p"
|
|
43
|
+
}, /*#__PURE__*/_react.default.createElement(_HelpLink.HelpLink, {
|
|
44
|
+
documentationUrl: documentationUrl,
|
|
45
|
+
label: formatMessage(_extensions.configPanelMessages.help)
|
|
46
|
+
}))) : /*#__PURE__*/_react.default.createElement(_HelpLink.HelpLink, {
|
|
47
|
+
documentationUrl: documentationUrl,
|
|
48
|
+
label: formatMessage(_extensions.configPanelMessages.documentation)
|
|
49
|
+
})))));
|
|
50
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _primitives = require("@atlaskit/primitives");
|
|
10
|
+
var _withExtensionManifest = require("../withExtensionManifest");
|
|
11
|
+
var itemBodyStyles = (0, _primitives.xcss)({
|
|
12
|
+
display: 'flex',
|
|
13
|
+
flexDirection: 'row',
|
|
14
|
+
flexWrap: 'nowrap',
|
|
15
|
+
justifyContent: 'space-between',
|
|
16
|
+
margin: 'space.200',
|
|
17
|
+
flexGrow: 3
|
|
18
|
+
});
|
|
19
|
+
var itemTextStyles = (0, _primitives.xcss)({
|
|
20
|
+
maxWidth: '100%',
|
|
21
|
+
whiteSpace: 'initial'
|
|
22
|
+
});
|
|
23
|
+
var summaryStyles = (0, _primitives.xcss)({
|
|
24
|
+
font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
|
|
25
|
+
color: 'color.text.subtlest',
|
|
26
|
+
marginTop: 'space.050',
|
|
27
|
+
whiteSpace: 'nowrap',
|
|
28
|
+
overflow: 'hidden',
|
|
29
|
+
textOverflow: 'ellipsis'
|
|
30
|
+
});
|
|
31
|
+
function HeaderAfterIconElement(_ref) {
|
|
32
|
+
var extensionManifest = _ref.extensionManifest;
|
|
33
|
+
var title = extensionManifest.title;
|
|
34
|
+
var summary = extensionManifest.summary;
|
|
35
|
+
return /*#__PURE__*/_react.default.createElement(_primitives.Box, {
|
|
36
|
+
xcss: itemBodyStyles
|
|
37
|
+
}, summary ? /*#__PURE__*/_react.default.createElement(_primitives.Box, {
|
|
38
|
+
xcss: itemTextStyles
|
|
39
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
40
|
+
id: "context-panel-title",
|
|
41
|
+
"data-testid": "context-panel-title"
|
|
42
|
+
}, title), /*#__PURE__*/_react.default.createElement(_primitives.Box, {
|
|
43
|
+
xcss: summaryStyles
|
|
44
|
+
}, summary)) : /*#__PURE__*/_react.default.createElement(_primitives.Flex, {
|
|
45
|
+
direction: "column",
|
|
46
|
+
alignItems: "center",
|
|
47
|
+
testId: "context-panel-title"
|
|
48
|
+
}, title));
|
|
49
|
+
}
|
|
50
|
+
var _default = exports.default = (0, _withExtensionManifest.withExtensionManifest)(HeaderAfterIconElement);
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _primitives = require("@atlaskit/primitives");
|
|
10
|
+
var _withExtensionManifest = require("../withExtensionManifest");
|
|
11
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
12
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
13
|
+
var iconWidth = '40px';
|
|
14
|
+
var itemIconStyles = (0, _primitives.xcss)({
|
|
15
|
+
width: iconWidth,
|
|
16
|
+
height: iconWidth,
|
|
17
|
+
overflow: 'hidden',
|
|
18
|
+
border: "1px solid ".concat("var(--ds-border, rgba(223, 225, 229, 0.5))"),
|
|
19
|
+
borderRadius: "var(--ds-border-radius, 3px)",
|
|
20
|
+
boxSizing: 'border-box',
|
|
21
|
+
display: 'flex',
|
|
22
|
+
justifyContent: 'center',
|
|
23
|
+
alignItems: 'center'
|
|
24
|
+
});
|
|
25
|
+
function HeaderIcon(_ref) {
|
|
26
|
+
var extensionManifest = _ref.extensionManifest;
|
|
27
|
+
var icon = extensionManifest.icons['48'];
|
|
28
|
+
var title = extensionManifest.title;
|
|
29
|
+
var ResolvedIcon = (0, _react.useMemo)(function () {
|
|
30
|
+
return /*#__PURE__*/(0, _react.lazy)(function () {
|
|
31
|
+
return icon().then(function (Cmp) {
|
|
32
|
+
if ('default' in Cmp) {
|
|
33
|
+
return Cmp;
|
|
34
|
+
}
|
|
35
|
+
return {
|
|
36
|
+
default: Cmp
|
|
37
|
+
};
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
}, [icon]);
|
|
41
|
+
return /*#__PURE__*/_react.default.createElement(_primitives.Box, {
|
|
42
|
+
xcss: itemIconStyles
|
|
43
|
+
}, /*#__PURE__*/_react.default.createElement(_react.Suspense, {
|
|
44
|
+
fallback: null
|
|
45
|
+
}, /*#__PURE__*/_react.default.createElement(ResolvedIcon, {
|
|
46
|
+
label: title
|
|
47
|
+
})));
|
|
48
|
+
}
|
|
49
|
+
var _default = exports.default = (0, _withExtensionManifest.withExtensionManifest)(HeaderIcon);
|
|
@@ -15,6 +15,7 @@ var _closeCross = _interopRequireDefault(require("@atlaskit/icon/core/migration/
|
|
|
15
15
|
var _primitives = require("@atlaskit/primitives");
|
|
16
16
|
var _colors = require("@atlaskit/theme/colors");
|
|
17
17
|
var _constants = require("@atlaskit/theme/constants");
|
|
18
|
+
var _HelpLink = require("./HelpLink");
|
|
18
19
|
/**
|
|
19
20
|
* @jsxRuntime classic
|
|
20
21
|
* @jsx jsx
|
|
@@ -152,22 +153,12 @@ var Header = function Header(_ref) {
|
|
|
152
153
|
xcss: helpLinkStyles
|
|
153
154
|
}, (0, _react2.jsx)(_primitives.Text, {
|
|
154
155
|
as: "p"
|
|
155
|
-
}, (0, _react2.jsx)(HelpLink, {
|
|
156
|
+
}, (0, _react2.jsx)(_HelpLink.HelpLink, {
|
|
156
157
|
documentationUrl: documentationUrl,
|
|
157
158
|
label: intl.formatMessage(_extensions.configPanelMessages.help)
|
|
158
|
-
}))) : (0, _react2.jsx)(HelpLink, {
|
|
159
|
+
}))) : (0, _react2.jsx)(_HelpLink.HelpLink, {
|
|
159
160
|
documentationUrl: documentationUrl,
|
|
160
161
|
label: intl.formatMessage(_extensions.configPanelMessages.documentation)
|
|
161
162
|
})))));
|
|
162
163
|
};
|
|
163
|
-
var HelpLink = function HelpLink(_ref2) {
|
|
164
|
-
var documentationUrl = _ref2.documentationUrl,
|
|
165
|
-
label = _ref2.label;
|
|
166
|
-
return (0, _react2.jsx)("a", {
|
|
167
|
-
target: "_blank",
|
|
168
|
-
rel: "noopener noreferrer",
|
|
169
|
-
href: documentationUrl,
|
|
170
|
-
"data-testid": "config-panel-header-documentation-link"
|
|
171
|
-
}, label);
|
|
172
|
-
};
|
|
173
164
|
var _default = exports.default = (0, _reactIntlNext.injectIntl)(Header);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.HelpLink = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var HelpLink = exports.HelpLink = function HelpLink(_ref) {
|
|
10
|
+
var documentationUrl = _ref.documentationUrl,
|
|
11
|
+
label = _ref.label;
|
|
12
|
+
return (
|
|
13
|
+
/*#__PURE__*/
|
|
14
|
+
// eslint-disable-next-line @atlaskit/design-system/no-html-anchor
|
|
15
|
+
_react.default.createElement("a", {
|
|
16
|
+
target: "_blank",
|
|
17
|
+
rel: "noopener noreferrer",
|
|
18
|
+
href: documentationUrl,
|
|
19
|
+
"data-testid": "config-panel-header-documentation-link"
|
|
20
|
+
}, label)
|
|
21
|
+
);
|
|
22
|
+
};
|
|
@@ -3,11 +3,13 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.ALLOWED_PARAM_TYPES = exports.ALLOWED_LOGGED_MACRO_PARAMS = void 0;
|
|
6
|
+
exports.CONFIG_PANEL_WIDTH = exports.CONFIG_PANEL_ID = exports.ALLOWED_PARAM_TYPES = exports.ALLOWED_LOGGED_MACRO_PARAMS = void 0;
|
|
7
7
|
// Allowlist of { macroKey: parameterName[] } for analytics logging
|
|
8
8
|
var ALLOWED_LOGGED_MACRO_PARAMS = exports.ALLOWED_LOGGED_MACRO_PARAMS = {
|
|
9
9
|
children: ['all', 'first', 'depth', 'style', 'excerptType', 'sort', 'reverse'],
|
|
10
10
|
'recently-updated': ['width', 'types', 'max', 'theme', 'showProfilePic', 'hideHeading'],
|
|
11
11
|
excerpt: ['hidden']
|
|
12
12
|
};
|
|
13
|
-
var ALLOWED_PARAM_TYPES = exports.ALLOWED_PARAM_TYPES = ['enum', 'number', 'boolean'];
|
|
13
|
+
var ALLOWED_PARAM_TYPES = exports.ALLOWED_PARAM_TYPES = ['enum', 'number', 'boolean'];
|
|
14
|
+
var CONFIG_PANEL_WIDTH = exports.CONFIG_PANEL_WIDTH = 320;
|
|
15
|
+
var CONFIG_PANEL_ID = exports.CONFIG_PANEL_ID = 'extensions-panel';
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.withExtensionManifest = withExtensionManifest;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
|
+
var _react = _interopRequireDefault(require("react"));
|
|
12
|
+
var _useStateFromPromise3 = require("./use-state-from-promise");
|
|
13
|
+
var _excluded = ["extensionKey", "extensionProvider", "extensionType"];
|
|
14
|
+
function withExtensionManifest(WrappedComponent) {
|
|
15
|
+
return function WithExtensionManifest(props) {
|
|
16
|
+
var extensionKey = props.extensionKey,
|
|
17
|
+
extensionProvider = props.extensionProvider,
|
|
18
|
+
extensionType = props.extensionType,
|
|
19
|
+
restProps = (0, _objectWithoutProperties2.default)(props, _excluded);
|
|
20
|
+
var _useStateFromPromise = (0, _useStateFromPromise3.useStateFromPromise)(function () {
|
|
21
|
+
return extensionProvider.getExtension(extensionType, extensionKey);
|
|
22
|
+
}, [extensionProvider, extensionType, extensionKey]),
|
|
23
|
+
_useStateFromPromise2 = (0, _slicedToArray2.default)(_useStateFromPromise, 1),
|
|
24
|
+
extensionManifest = _useStateFromPromise2[0];
|
|
25
|
+
return extensionManifest ?
|
|
26
|
+
/*#__PURE__*/
|
|
27
|
+
// Ignored via go/ees005
|
|
28
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any, react/jsx-props-no-spreading
|
|
29
|
+
_react.default.createElement(WrappedComponent, (0, _extends2.default)({
|
|
30
|
+
extensionManifest: extensionManifest
|
|
31
|
+
}, restProps)) : null;
|
|
32
|
+
};
|
|
33
|
+
}
|