@atlaskit/editor-common 121.2.1 → 121.2.3
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 +25 -0
- package/dist/cjs/ai-messages/ai-suggestions.js +5 -0
- package/dist/cjs/analytics/types/enums.js +1 -0
- package/dist/cjs/extensibility/Extension/Extension/index.js +6 -3
- package/dist/cjs/extensibility/Extension/InlineExtension/index.js +6 -3
- package/dist/cjs/extensibility/Extension/Lozenge/ExtensionLabel.js +2 -1
- package/dist/cjs/extensibility/Extension/Lozenge/LozengeComponent.js +3 -1
- package/dist/cjs/extensibility/Extension/Lozenge/index.js +1 -0
- package/dist/cjs/extensibility/ExtensionComponent.js +129 -26
- package/dist/cjs/extensibility/MultiBodiedExtension/index.js +4 -2
- package/dist/cjs/monitoring/error.js +1 -1
- package/dist/cjs/ui/DropList/index.js +1 -1
- package/dist/es2019/ai-messages/ai-suggestions.js +5 -0
- package/dist/es2019/analytics/types/enums.js +1 -0
- package/dist/es2019/extensibility/Extension/Extension/index.js +6 -3
- package/dist/es2019/extensibility/Extension/InlineExtension/index.js +6 -3
- package/dist/es2019/extensibility/Extension/Lozenge/ExtensionLabel.js +2 -1
- package/dist/es2019/extensibility/Extension/Lozenge/LozengeComponent.js +3 -1
- package/dist/es2019/extensibility/Extension/Lozenge/index.js +1 -0
- package/dist/es2019/extensibility/ExtensionComponent.js +85 -3
- package/dist/es2019/extensibility/MultiBodiedExtension/index.js +4 -2
- package/dist/es2019/monitoring/error.js +1 -1
- package/dist/es2019/ui/DropList/index.js +1 -1
- package/dist/esm/ai-messages/ai-suggestions.js +5 -0
- package/dist/esm/analytics/types/enums.js +1 -0
- package/dist/esm/extensibility/Extension/Extension/index.js +6 -3
- package/dist/esm/extensibility/Extension/InlineExtension/index.js +6 -3
- package/dist/esm/extensibility/Extension/Lozenge/ExtensionLabel.js +2 -1
- package/dist/esm/extensibility/Extension/Lozenge/LozengeComponent.js +3 -1
- package/dist/esm/extensibility/Extension/Lozenge/index.js +1 -0
- package/dist/esm/extensibility/ExtensionComponent.js +128 -25
- package/dist/esm/extensibility/MultiBodiedExtension/index.js +4 -2
- package/dist/esm/monitoring/error.js +1 -1
- package/dist/esm/ui/DropList/index.js +1 -1
- package/dist/types/ai-messages/ai-suggestions.d.ts +5 -0
- package/dist/types/analytics/types/enums.d.ts +1 -0
- package/dist/types/analytics/types/node-events.d.ts +1 -1
- package/dist/types/extensibility/Extension/Extension/index.d.ts +1 -0
- package/dist/types/extensibility/Extension/InlineExtension/index.d.ts +1 -0
- package/dist/types/extensibility/Extension/Lozenge/ExtensionLabel.d.ts +2 -1
- package/dist/types/extensibility/Extension/Lozenge/LozengeComponent.d.ts +2 -1
- package/dist/types/extensibility/Extension/Lozenge/index.d.ts +1 -0
- package/dist/types/extensibility/ExtensionComponent.d.ts +1 -0
- package/dist/types/extensibility/MultiBodiedExtension/index.d.ts +1 -0
- package/package.json +6 -4
- package/afm-cc/tsconfig.json +0 -206
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,30 @@
|
|
|
1
1
|
# @atlaskit/editor-common
|
|
2
2
|
|
|
3
|
+
## 121.2.3
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`9ec75083521a7`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/9ec75083521a7) -
|
|
8
|
+
[ux] Behind `platform_editor_hide_configure_lozenge_non_configurable`: hide the "Configure {name}"
|
|
9
|
+
extension lozenge label for extensions that expose no configuration, using the same signal the
|
|
10
|
+
floating toolbar uses for its edit button (an `update` method on the extension handler or node
|
|
11
|
+
module). Configurable extensions are unchanged. Motivating case: the guard-premium redaction node,
|
|
12
|
+
which should only expose its delete affordance.
|
|
13
|
+
- [`0e5685af71a8f`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/0e5685af71a8f) -
|
|
14
|
+
[ux] [EDITOR-8350] This change adds a feature-gated floating toolbar for divider nodes behind
|
|
15
|
+
platform_editor_lovability_dividers, with Copy and Delete buttons.
|
|
16
|
+
- Updated dependencies
|
|
17
|
+
|
|
18
|
+
## 121.2.2
|
|
19
|
+
|
|
20
|
+
### Patch Changes
|
|
21
|
+
|
|
22
|
+
- [`38a509b8e70ac`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/38a509b8e70ac) -
|
|
23
|
+
[ux] Show the reviewing agent name and avatar on the first AI suggestions thinking-bar status,
|
|
24
|
+
behind the platform_editor_ai_content_suggested_edits experiment. Adds a firstMessage prop to
|
|
25
|
+
RovoThinkingBar to override the first status's text/icon.
|
|
26
|
+
- Updated dependencies
|
|
27
|
+
|
|
3
28
|
## 121.2.1
|
|
4
29
|
|
|
5
30
|
### Patch Changes
|
|
@@ -276,6 +276,11 @@ var aiSuggestionsMessages = exports.aiSuggestionsMessages = (0, _reactIntl.defin
|
|
|
276
276
|
defaultMessage: 'Reviewing content',
|
|
277
277
|
description: 'Loading message shown while the AI is reviewing the content'
|
|
278
278
|
},
|
|
279
|
+
thinkingReviewingContentWithAgent: {
|
|
280
|
+
id: 'fabric.editor.ai.suggestions.thinking.reviewingContentWithAgent.non-final',
|
|
281
|
+
defaultMessage: 'Reviewing content with {agentName}',
|
|
282
|
+
description: 'First loading message on the AI suggestions thinking bar. The {agentName} placeholder is replaced with the reviewing agent name (for example "Content Reviewer"). Shown for a few seconds before the remaining rotating statuses.'
|
|
283
|
+
},
|
|
279
284
|
thinkingMayTakeAFewMinutes: {
|
|
280
285
|
id: 'fabric.editor.ai.suggestions.thinking.mayTakeAFewMinutes.non-final',
|
|
281
286
|
defaultMessage: 'This may take a few minutes',
|
|
@@ -327,6 +327,7 @@ var ACTION_SUBJECT = exports.ACTION_SUBJECT = /*#__PURE__*/function (ACTION_SUBJ
|
|
|
327
327
|
ACTION_SUBJECT["CONTENT_COMPONENT"] = "contentComponent";
|
|
328
328
|
ACTION_SUBJECT["DATE"] = "date";
|
|
329
329
|
ACTION_SUBJECT["DATE_SEGMENT"] = "dateSegment";
|
|
330
|
+
ACTION_SUBJECT["DIVIDER"] = "divider";
|
|
330
331
|
ACTION_SUBJECT["DOCUMENT"] = "document";
|
|
331
332
|
ACTION_SUBJECT["EDITOR"] = "editor";
|
|
332
333
|
ACTION_SUBJECT["ACTIVITY_SESSION"] = "activitySession";
|
|
@@ -60,7 +60,8 @@ function ExtensionWithPluginState(props) {
|
|
|
60
60
|
showBodiedExtensionRendererView = props.showBodiedExtensionRendererView,
|
|
61
61
|
setShowBodiedExtensionRendererView = props.setShowBodiedExtensionRendererView,
|
|
62
62
|
pluginInjectionApi = props.pluginInjectionApi,
|
|
63
|
-
isLivePageViewMode = props.isLivePageViewMode
|
|
63
|
+
isLivePageViewMode = props.isLivePageViewMode,
|
|
64
|
+
hideConfigureLabel = props.hideConfigureLabel;
|
|
64
65
|
var _ref = macroInteractionDesignFeatureFlags || {},
|
|
65
66
|
showMacroInteractionDesignUpdates = _ref.showMacroInteractionDesignUpdates;
|
|
66
67
|
var isLegacyContentMacroExtension = function isLegacyContentMacroExtension(extensionNode) {
|
|
@@ -153,7 +154,8 @@ function ExtensionWithPluginState(props) {
|
|
|
153
154
|
showUpdatedLivePages1PBodiedExtensionUI: showUpdatedLivePages1PBodiedExtensionUI,
|
|
154
155
|
showBodiedExtensionRendererView: showBodiedExtensionRendererView,
|
|
155
156
|
setShowBodiedExtensionRendererView: setShowBodiedExtensionRendererView,
|
|
156
|
-
pluginInjectionApi: pluginInjectionApi
|
|
157
|
+
pluginInjectionApi: pluginInjectionApi,
|
|
158
|
+
hideConfigureLabel: hideConfigureLabel
|
|
157
159
|
}), (0, _react2.jsx)("div", {
|
|
158
160
|
"data-testid": "extension-container",
|
|
159
161
|
ref: handleRef,
|
|
@@ -199,7 +201,8 @@ function ExtensionWithPluginState(props) {
|
|
|
199
201
|
}, !removeBorder && (0, _react2.jsx)(_Lozenge.default, {
|
|
200
202
|
node: node,
|
|
201
203
|
showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates,
|
|
202
|
-
pluginInjectionApi: pluginInjectionApi
|
|
204
|
+
pluginInjectionApi: pluginInjectionApi,
|
|
205
|
+
hideConfigureLabel: hideConfigureLabel
|
|
203
206
|
}), children), hasBody &&
|
|
204
207
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop, @atlaskit/design-system/consistent-css-prop-usage -- Ignored via go/DSP-18766
|
|
205
208
|
(0, _react2.jsx)("div", {
|
|
@@ -84,7 +84,8 @@ var InlineExtension = function InlineExtension(props) {
|
|
|
84
84
|
children = props.children,
|
|
85
85
|
isNodeHovered = props.isNodeHovered,
|
|
86
86
|
setIsNodeHovered = props.setIsNodeHovered,
|
|
87
|
-
isLivePageViewMode = props.isLivePageViewMode
|
|
87
|
+
isLivePageViewMode = props.isLivePageViewMode,
|
|
88
|
+
hideConfigureLabel = props.hideConfigureLabel;
|
|
88
89
|
var _ref3 = macroInteractionDesignFeatureFlags || {},
|
|
89
90
|
showMacroInteractionDesignUpdates = _ref3.showMacroInteractionDesignUpdates;
|
|
90
91
|
var shouldUseFlowingInlineWrapper = (0, _fg.fg)('rovo_skill_tag_label_wrapping');
|
|
@@ -122,7 +123,8 @@ var InlineExtension = function InlineExtension(props) {
|
|
|
122
123
|
isNodeHovered: isNodeHovered,
|
|
123
124
|
showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates,
|
|
124
125
|
setIsNodeHovered: setIsNodeHovered,
|
|
125
|
-
pluginInjectionApi: pluginInjectionApi
|
|
126
|
+
pluginInjectionApi: pluginInjectionApi,
|
|
127
|
+
hideConfigureLabel: hideConfigureLabel
|
|
126
128
|
}), (0, _react2.jsx)("div", {
|
|
127
129
|
"data-testid": "inline-extension-wrapper",
|
|
128
130
|
css: [
|
|
@@ -148,7 +150,8 @@ var InlineExtension = function InlineExtension(props) {
|
|
|
148
150
|
}), children ? children : (0, _react2.jsx)(_Lozenge.default, {
|
|
149
151
|
node: node,
|
|
150
152
|
showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates,
|
|
151
|
-
pluginInjectionApi: pluginInjectionApi
|
|
153
|
+
pluginInjectionApi: pluginInjectionApi,
|
|
154
|
+
hideConfigureLabel: hideConfigureLabel
|
|
152
155
|
})));
|
|
153
156
|
return (0, _expValEquals.expValEquals)('enghealth-53346_fix_redaction_marker_editor', 'isEnabled', true) ? (0, _react2.jsx)(MemoizedWidthContextProvider, {
|
|
154
157
|
rendererContainerWidth: rendererContainerWidth
|
|
@@ -126,6 +126,7 @@ var ExtensionLabel = exports.ExtensionLabel = function ExtensionLabel(_ref) {
|
|
|
126
126
|
isNodeNested = _ref.isNodeNested,
|
|
127
127
|
setIsNodeHovered = _ref.setIsNodeHovered,
|
|
128
128
|
isBodiedMacro = _ref.isBodiedMacro,
|
|
129
|
+
hideConfigureLabel = _ref.hideConfigureLabel,
|
|
129
130
|
showUpdatedLivePages1PBodiedExtensionUI = _ref.showUpdatedLivePages1PBodiedExtensionUI,
|
|
130
131
|
showLivePagesBodiedMacrosRendererView = _ref.showLivePagesBodiedMacrosRendererView,
|
|
131
132
|
showBodiedExtensionRendererView = _ref.showBodiedExtensionRendererView,
|
|
@@ -183,7 +184,7 @@ var ExtensionLabel = exports.ExtensionLabel = function ExtensionLabel(_ref) {
|
|
|
183
184
|
onBlur: (0, _expValEquals.expValEquals)('editor_a11y__enghealth-46814_fy26', 'isEnabled', true) ? function () {} : undefined,
|
|
184
185
|
"data-testid": "new-lozenge-container",
|
|
185
186
|
contentEditable: false
|
|
186
|
-
}, (0, _react2.jsx)(_Tooltip.default, {
|
|
187
|
+
}, !hideConfigureLabel && (0, _react2.jsx)(_Tooltip.default, {
|
|
187
188
|
content: (0, _react2.jsx)(_reactIntl.FormattedMessage
|
|
188
189
|
// Ignored via go/ees005
|
|
189
190
|
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
@@ -38,12 +38,14 @@ var LozengeComponent = exports.LozengeComponent = function LozengeComponent(_ref
|
|
|
38
38
|
showUpdatedLivePages1PBodiedExtensionUI = _ref.showUpdatedLivePages1PBodiedExtensionUI,
|
|
39
39
|
showBodiedExtensionRendererView = _ref.showBodiedExtensionRendererView,
|
|
40
40
|
setShowBodiedExtensionRendererView = _ref.setShowBodiedExtensionRendererView,
|
|
41
|
-
pluginInjectionApi = _ref.pluginInjectionApi
|
|
41
|
+
pluginInjectionApi = _ref.pluginInjectionApi,
|
|
42
|
+
hideConfigureLabel = _ref.hideConfigureLabel;
|
|
42
43
|
var capitalizedTitle = capitalizeFirstLetter(title);
|
|
43
44
|
if (showMacroInteractionDesignUpdates) {
|
|
44
45
|
return (0, _react2.jsx)(_react.Fragment, null, (0, _react2.jsx)(_ExtensionLabel.ExtensionLabel, {
|
|
45
46
|
text: capitalizedTitle,
|
|
46
47
|
extensionName: extensionName,
|
|
48
|
+
hideConfigureLabel: hideConfigureLabel,
|
|
47
49
|
isNodeHovered: isNodeHovered,
|
|
48
50
|
isNodeNested: isNodeNested,
|
|
49
51
|
customContainerStyles: customContainerStyles,
|
|
@@ -70,6 +70,7 @@ var ExtensionLozenge = exports.default = /*#__PURE__*/function (_Component) {
|
|
|
70
70
|
isNodeNested: isNodeNested,
|
|
71
71
|
showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates,
|
|
72
72
|
extensionName: name,
|
|
73
|
+
hideConfigureLabel: _this.props.hideConfigureLabel,
|
|
73
74
|
lozengeData: lozengeData,
|
|
74
75
|
params: params,
|
|
75
76
|
title: title,
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var
|
|
4
|
+
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.ExtensionComponent = void 0;
|
|
9
9
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
10
11
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
12
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
12
13
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
@@ -29,7 +30,7 @@ var _InlineExtension = _interopRequireDefault(require("./Extension/InlineExtensi
|
|
|
29
30
|
var _MultiBodiedExtension = _interopRequireDefault(require("./MultiBodiedExtension"));
|
|
30
31
|
var _excluded = ["extensionProvider", "showLivePagesBodiedMacrosRendererView", "node"];
|
|
31
32
|
/* eslint-disable @repo/internal/react/no-class-components */
|
|
32
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" !=
|
|
33
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t3 in e) "default" !== _t3 && {}.hasOwnProperty.call(e, _t3) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t3)) && (i.get || i.set) ? o(f, _t3, i) : f[_t3] = e[_t3]); return f; })(e, t); }
|
|
33
34
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
|
|
34
35
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
35
36
|
var getBodiedExtensionContent = function getBodiedExtensionContent(node) {
|
|
@@ -86,6 +87,8 @@ var ExtensionComponentInner = /*#__PURE__*/function (_Component) {
|
|
|
86
87
|
}
|
|
87
88
|
_this = _callSuper(this, ExtensionComponentInner, [].concat(args));
|
|
88
89
|
(0, _defineProperty2.default)(_this, "privatePropsParsed", false);
|
|
90
|
+
(0, _defineProperty2.default)(_this, "configureAffordanceResolved", false);
|
|
91
|
+
(0, _defineProperty2.default)(_this, "isUnmounted", false);
|
|
89
92
|
(0, _defineProperty2.default)(_this, "state", {});
|
|
90
93
|
// memoized to avoid rerender on extension state changes
|
|
91
94
|
(0, _defineProperty2.default)(_this, "getNodeRenderer", (0, _memoizeOne.default)(_extensions.getNodeRenderer));
|
|
@@ -145,14 +148,100 @@ var ExtensionComponentInner = /*#__PURE__*/function (_Component) {
|
|
|
145
148
|
}
|
|
146
149
|
}, _callee, null, [[2, 4]]);
|
|
147
150
|
})));
|
|
151
|
+
/**
|
|
152
|
+
* Decides whether the "Configure {name}" lozenge label should be hidden for this node.
|
|
153
|
+
*
|
|
154
|
+
* Mirrors how the floating toolbar decides to show its edit button (see
|
|
155
|
+
* `shouldShowEditButton` and `updateEditButton` in `editor-plugin-extension`):
|
|
156
|
+
* - a legacy function handler is configurable via the macro browser;
|
|
157
|
+
* - an object handler is configurable only if it defines `update`;
|
|
158
|
+
* - otherwise the node module from the extension provider decides via its optional `update`.
|
|
159
|
+
* Nodes with no way to be configured get no Configure affordance. Anything we cannot
|
|
160
|
+
* resolve keeps the label, which is the pre-existing behaviour.
|
|
161
|
+
*
|
|
162
|
+
* The result is resolved once per node and held in state rather than derived on each render
|
|
163
|
+
* because the provider path is asynchronous: `getExtensionModuleNode` goes through
|
|
164
|
+
* `extensionProvider.getExtension`, which returns a Promise. Deriving the synchronous handler
|
|
165
|
+
* branches in render while the provider branch stays async would let the same node flip
|
|
166
|
+
* between answers, and would re-run the manifest lookup on every hover re-render. One
|
|
167
|
+
* resolution keeps the label stable and cheap.
|
|
168
|
+
*/
|
|
169
|
+
(0, _defineProperty2.default)(_this, "resolveConfigureAffordanceIfNeeded", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
170
|
+
var _this$props, extensionHandlers, extensionProvider, node, _node$attrs, extensionType, extensionKey, extensionHandler, extensionModuleNode, _t2;
|
|
171
|
+
return _regenerator.default.wrap(function (_context2) {
|
|
172
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
173
|
+
case 0:
|
|
174
|
+
if (!(_this.configureAffordanceResolved || !(0, _fg.fg)('platform_editor_hide_configure_lozenge_non_configurable'))) {
|
|
175
|
+
_context2.next = 1;
|
|
176
|
+
break;
|
|
177
|
+
}
|
|
178
|
+
return _context2.abrupt("return");
|
|
179
|
+
case 1:
|
|
180
|
+
_this$props = _this.props, extensionHandlers = _this$props.extensionHandlers, extensionProvider = _this$props.extensionProvider, node = _this$props.node;
|
|
181
|
+
_node$attrs = node.attrs, extensionType = _node$attrs.extensionType, extensionKey = _node$attrs.extensionKey;
|
|
182
|
+
extensionHandler = extensionHandlers === null || extensionHandlers === void 0 ? void 0 : extensionHandlers[extensionType];
|
|
183
|
+
if (!(typeof extensionHandler === 'function')) {
|
|
184
|
+
_context2.next = 2;
|
|
185
|
+
break;
|
|
186
|
+
}
|
|
187
|
+
// Legacy macro browser: configurable, keep the label.
|
|
188
|
+
_this.configureAffordanceResolved = true;
|
|
189
|
+
return _context2.abrupt("return");
|
|
190
|
+
case 2:
|
|
191
|
+
if (!(extensionHandler && (0, _typeof2.default)(extensionHandler) === 'object')) {
|
|
192
|
+
_context2.next = 3;
|
|
193
|
+
break;
|
|
194
|
+
}
|
|
195
|
+
_this.configureAffordanceResolved = true;
|
|
196
|
+
if (typeof extensionHandler.update !== 'function') {
|
|
197
|
+
_this.setState({
|
|
198
|
+
hideConfigureLabel: true
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
return _context2.abrupt("return");
|
|
202
|
+
case 3:
|
|
203
|
+
if (extensionProvider) {
|
|
204
|
+
_context2.next = 4;
|
|
205
|
+
break;
|
|
206
|
+
}
|
|
207
|
+
return _context2.abrupt("return");
|
|
208
|
+
case 4:
|
|
209
|
+
_this.configureAffordanceResolved = true;
|
|
210
|
+
_context2.prev = 5;
|
|
211
|
+
_context2.next = 6;
|
|
212
|
+
return (0, _extensions.getExtensionModuleNode)(extensionProvider, extensionType, extensionKey);
|
|
213
|
+
case 6:
|
|
214
|
+
extensionModuleNode = _context2.sent;
|
|
215
|
+
if (!_this.isUnmounted) {
|
|
216
|
+
_context2.next = 7;
|
|
217
|
+
break;
|
|
218
|
+
}
|
|
219
|
+
return _context2.abrupt("return");
|
|
220
|
+
case 7:
|
|
221
|
+
if (typeof (extensionModuleNode === null || extensionModuleNode === void 0 ? void 0 : extensionModuleNode.update) !== 'function') {
|
|
222
|
+
_this.setState({
|
|
223
|
+
hideConfigureLabel: true
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
_context2.next = 9;
|
|
227
|
+
break;
|
|
228
|
+
case 8:
|
|
229
|
+
_context2.prev = 8;
|
|
230
|
+
_t2 = _context2["catch"](5);
|
|
231
|
+
case 9:
|
|
232
|
+
case "end":
|
|
233
|
+
return _context2.stop();
|
|
234
|
+
}
|
|
235
|
+
}, _callee2, null, [[5, 8]]);
|
|
236
|
+
})));
|
|
148
237
|
(0, _defineProperty2.default)(_this, "handleExtension", function (pmNode, actions) {
|
|
149
238
|
var _pmNode$marks;
|
|
150
|
-
var _this$
|
|
151
|
-
extensionHandlers = _this$
|
|
152
|
-
extensionLoadingHandlers = _this$
|
|
153
|
-
editorView = _this$
|
|
154
|
-
showBodiedExtensionRendererView = _this$
|
|
155
|
-
rendererExtensionHandlers = _this$
|
|
239
|
+
var _this$props2 = _this.props,
|
|
240
|
+
extensionHandlers = _this$props2.extensionHandlers,
|
|
241
|
+
extensionLoadingHandlers = _this$props2.extensionLoadingHandlers,
|
|
242
|
+
editorView = _this$props2.editorView,
|
|
243
|
+
showBodiedExtensionRendererView = _this$props2.showBodiedExtensionRendererView,
|
|
244
|
+
rendererExtensionHandlers = _this$props2.rendererExtensionHandlers;
|
|
156
245
|
var _pmNode$attrs = pmNode.attrs,
|
|
157
246
|
extensionType = _pmNode$attrs.extensionType,
|
|
158
247
|
extensionKey = _pmNode$attrs.extensionKey,
|
|
@@ -217,30 +306,41 @@ var ExtensionComponentInner = /*#__PURE__*/function (_Component) {
|
|
|
217
306
|
}
|
|
218
307
|
(0, _inherits2.default)(ExtensionComponentInner, _Component);
|
|
219
308
|
return (0, _createClass2.default)(ExtensionComponentInner, [{
|
|
309
|
+
key: "componentDidMount",
|
|
310
|
+
value: function componentDidMount() {
|
|
311
|
+
this.resolveConfigureAffordanceIfNeeded();
|
|
312
|
+
}
|
|
313
|
+
}, {
|
|
220
314
|
key: "componentDidUpdate",
|
|
221
315
|
value: function componentDidUpdate() {
|
|
222
316
|
this.parsePrivateNodePropsIfNeeded();
|
|
317
|
+
this.resolveConfigureAffordanceIfNeeded();
|
|
318
|
+
}
|
|
319
|
+
}, {
|
|
320
|
+
key: "componentWillUnmount",
|
|
321
|
+
value: function componentWillUnmount() {
|
|
322
|
+
this.isUnmounted = true;
|
|
223
323
|
}
|
|
224
324
|
}, {
|
|
225
325
|
key: "render",
|
|
226
326
|
value: function render() {
|
|
227
327
|
var _this$state$_privateP2;
|
|
228
|
-
var _this$
|
|
229
|
-
node = _this$
|
|
230
|
-
handleContentDOMRef = _this$
|
|
231
|
-
editorView = _this$
|
|
232
|
-
references = _this$
|
|
233
|
-
editorAppearance = _this$
|
|
234
|
-
pluginInjectionApi = _this$
|
|
235
|
-
getPos = _this$
|
|
236
|
-
eventDispatcher = _this$
|
|
237
|
-
macroInteractionDesignFeatureFlags = _this$
|
|
238
|
-
extensionProvider = _this$
|
|
239
|
-
showLivePagesBodiedMacrosRendererView = _this$
|
|
240
|
-
showUpdatedLivePages1PBodiedExtensionUI = _this$
|
|
241
|
-
showBodiedExtensionRendererView = _this$
|
|
242
|
-
setShowBodiedExtensionRendererView = _this$
|
|
243
|
-
isLivePageViewMode = _this$
|
|
328
|
+
var _this$props3 = this.props,
|
|
329
|
+
node = _this$props3.node,
|
|
330
|
+
handleContentDOMRef = _this$props3.handleContentDOMRef,
|
|
331
|
+
editorView = _this$props3.editorView,
|
|
332
|
+
references = _this$props3.references,
|
|
333
|
+
editorAppearance = _this$props3.editorAppearance,
|
|
334
|
+
pluginInjectionApi = _this$props3.pluginInjectionApi,
|
|
335
|
+
getPos = _this$props3.getPos,
|
|
336
|
+
eventDispatcher = _this$props3.eventDispatcher,
|
|
337
|
+
macroInteractionDesignFeatureFlags = _this$props3.macroInteractionDesignFeatureFlags,
|
|
338
|
+
extensionProvider = _this$props3.extensionProvider,
|
|
339
|
+
showLivePagesBodiedMacrosRendererView = _this$props3.showLivePagesBodiedMacrosRendererView,
|
|
340
|
+
showUpdatedLivePages1PBodiedExtensionUI = _this$props3.showUpdatedLivePages1PBodiedExtensionUI,
|
|
341
|
+
showBodiedExtensionRendererView = _this$props3.showBodiedExtensionRendererView,
|
|
342
|
+
setShowBodiedExtensionRendererView = _this$props3.setShowBodiedExtensionRendererView,
|
|
343
|
+
isLivePageViewMode = _this$props3.isLivePageViewMode;
|
|
244
344
|
var selection = editorView.state.selection;
|
|
245
345
|
var selectedNode = selection instanceof _state.NodeSelection && selection.node;
|
|
246
346
|
var position = typeof getPos === 'function' && getPos();
|
|
@@ -264,7 +364,8 @@ var ExtensionComponentInner = /*#__PURE__*/function (_Component) {
|
|
|
264
364
|
isNodeNested: isNodeNested,
|
|
265
365
|
setIsNodeHovered: this.setIsNodeHovered,
|
|
266
366
|
isLivePageViewMode: isLivePageViewMode,
|
|
267
|
-
allowBodiedOverride: allowBodiedOverride
|
|
367
|
+
allowBodiedOverride: allowBodiedOverride,
|
|
368
|
+
hideConfigureLabel: this.state.hideConfigureLabel
|
|
268
369
|
});
|
|
269
370
|
}
|
|
270
371
|
var extensionHandlerResult = this.tryExtensionHandler(undefined);
|
|
@@ -279,6 +380,7 @@ var ExtensionComponentInner = /*#__PURE__*/function (_Component) {
|
|
|
279
380
|
handleContentDOMRef: handleContentDOMRef,
|
|
280
381
|
view: editorView,
|
|
281
382
|
editorAppearance: editorAppearance,
|
|
383
|
+
hideConfigureLabel: this.state.hideConfigureLabel,
|
|
282
384
|
hideFrame: (_this$state$_privateP2 = this.state._privateProps) === null || _this$state$_privateP2 === void 0 ? void 0 : _this$state$_privateP2.__hideFrame,
|
|
283
385
|
pluginInjectionApi: pluginInjectionApi,
|
|
284
386
|
macroInteractionDesignFeatureFlags: macroInteractionDesignFeatureFlags,
|
|
@@ -296,7 +398,8 @@ var ExtensionComponentInner = /*#__PURE__*/function (_Component) {
|
|
|
296
398
|
macroInteractionDesignFeatureFlags: macroInteractionDesignFeatureFlags,
|
|
297
399
|
isNodeSelected: selectedNode === node,
|
|
298
400
|
pluginInjectionApi: pluginInjectionApi,
|
|
299
|
-
isLivePageViewMode: isLivePageViewMode
|
|
401
|
+
isLivePageViewMode: isLivePageViewMode,
|
|
402
|
+
hideConfigureLabel: this.state.hideConfigureLabel
|
|
300
403
|
}, extensionHandlerResult);
|
|
301
404
|
default:
|
|
302
405
|
return null;
|
|
@@ -214,7 +214,8 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref2
|
|
|
214
214
|
pluginInjectionApi = _ref2.pluginInjectionApi,
|
|
215
215
|
isLivePageViewMode = _ref2.isLivePageViewMode,
|
|
216
216
|
_ref2$allowBodiedOver = _ref2.allowBodiedOverride,
|
|
217
|
-
allowBodiedOverride = _ref2$allowBodiedOver === void 0 ? false : _ref2$allowBodiedOver
|
|
217
|
+
allowBodiedOverride = _ref2$allowBodiedOver === void 0 ? false : _ref2$allowBodiedOver,
|
|
218
|
+
hideConfigureLabel = _ref2.hideConfigureLabel;
|
|
218
219
|
var _ref3 = macroInteractionDesignFeatureFlags || {},
|
|
219
220
|
showMacroInteractionDesignUpdates = _ref3.showMacroInteractionDesignUpdates;
|
|
220
221
|
var _node$attrs = node.attrs,
|
|
@@ -325,7 +326,8 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref2
|
|
|
325
326
|
isNodeNested: isNodeNested,
|
|
326
327
|
setIsNodeHovered: setIsNodeHovered,
|
|
327
328
|
isBodiedMacro: true,
|
|
328
|
-
pluginInjectionApi: pluginInjectionApi
|
|
329
|
+
pluginInjectionApi: pluginInjectionApi,
|
|
330
|
+
hideConfigureLabel: hideConfigureLabel
|
|
329
331
|
}), (0, _react2.jsx)("div", {
|
|
330
332
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
331
333
|
className: wrapperClassNames,
|
|
@@ -27,7 +27,7 @@ var NETWORK_FAILURE_REGEX = /^network failure/i;
|
|
|
27
27
|
var RESIZE_OBSERVER_LOOP_REGEX = /ResizeObserver loop completed with undelivered notifications/;
|
|
28
28
|
var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
|
|
29
29
|
var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
|
|
30
|
-
var packageVersion = "121.2.
|
|
30
|
+
var packageVersion = "121.2.3";
|
|
31
31
|
var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
|
|
32
32
|
// Remove URL as it has UGC
|
|
33
33
|
// Ignored via go/ees007
|
|
@@ -24,7 +24,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
24
24
|
* @jsx jsx
|
|
25
25
|
*/ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
26
26
|
var packageName = "@atlaskit/editor-common";
|
|
27
|
-
var packageVersion = "121.2.
|
|
27
|
+
var packageVersion = "121.2.3";
|
|
28
28
|
var halfFocusRing = 1;
|
|
29
29
|
var dropOffset = '0, 8';
|
|
30
30
|
var fadeIn = (0, _react2.keyframes)({
|
|
@@ -270,6 +270,11 @@ export const aiSuggestionsMessages = defineMessages({
|
|
|
270
270
|
defaultMessage: 'Reviewing content',
|
|
271
271
|
description: 'Loading message shown while the AI is reviewing the content'
|
|
272
272
|
},
|
|
273
|
+
thinkingReviewingContentWithAgent: {
|
|
274
|
+
id: 'fabric.editor.ai.suggestions.thinking.reviewingContentWithAgent.non-final',
|
|
275
|
+
defaultMessage: 'Reviewing content with {agentName}',
|
|
276
|
+
description: 'First loading message on the AI suggestions thinking bar. The {agentName} placeholder is replaced with the reviewing agent name (for example "Content Reviewer"). Shown for a few seconds before the remaining rotating statuses.'
|
|
277
|
+
},
|
|
273
278
|
thinkingMayTakeAFewMinutes: {
|
|
274
279
|
id: 'fabric.editor.ai.suggestions.thinking.mayTakeAFewMinutes.non-final',
|
|
275
280
|
defaultMessage: 'This may take a few minutes',
|
|
@@ -333,6 +333,7 @@ export let ACTION_SUBJECT = /*#__PURE__*/function (ACTION_SUBJECT) {
|
|
|
333
333
|
ACTION_SUBJECT["CONTENT_COMPONENT"] = "contentComponent";
|
|
334
334
|
ACTION_SUBJECT["DATE"] = "date";
|
|
335
335
|
ACTION_SUBJECT["DATE_SEGMENT"] = "dateSegment";
|
|
336
|
+
ACTION_SUBJECT["DIVIDER"] = "divider";
|
|
336
337
|
ACTION_SUBJECT["DOCUMENT"] = "document";
|
|
337
338
|
ACTION_SUBJECT["EDITOR"] = "editor";
|
|
338
339
|
ACTION_SUBJECT["ACTIVITY_SESSION"] = "activitySession";
|
|
@@ -49,7 +49,8 @@ function ExtensionWithPluginState(props) {
|
|
|
49
49
|
showBodiedExtensionRendererView,
|
|
50
50
|
setShowBodiedExtensionRendererView,
|
|
51
51
|
pluginInjectionApi,
|
|
52
|
-
isLivePageViewMode
|
|
52
|
+
isLivePageViewMode,
|
|
53
|
+
hideConfigureLabel
|
|
53
54
|
} = props;
|
|
54
55
|
const {
|
|
55
56
|
showMacroInteractionDesignUpdates
|
|
@@ -153,7 +154,8 @@ function ExtensionWithPluginState(props) {
|
|
|
153
154
|
showUpdatedLivePages1PBodiedExtensionUI: showUpdatedLivePages1PBodiedExtensionUI,
|
|
154
155
|
showBodiedExtensionRendererView: showBodiedExtensionRendererView,
|
|
155
156
|
setShowBodiedExtensionRendererView: setShowBodiedExtensionRendererView,
|
|
156
|
-
pluginInjectionApi: pluginInjectionApi
|
|
157
|
+
pluginInjectionApi: pluginInjectionApi,
|
|
158
|
+
hideConfigureLabel: hideConfigureLabel
|
|
157
159
|
}), jsx("div", {
|
|
158
160
|
"data-testid": "extension-container",
|
|
159
161
|
ref: handleRef,
|
|
@@ -195,7 +197,8 @@ function ExtensionWithPluginState(props) {
|
|
|
195
197
|
}, !removeBorder && jsx(ExtensionLozenge, {
|
|
196
198
|
node: node,
|
|
197
199
|
showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates,
|
|
198
|
-
pluginInjectionApi: pluginInjectionApi
|
|
200
|
+
pluginInjectionApi: pluginInjectionApi,
|
|
201
|
+
hideConfigureLabel: hideConfigureLabel
|
|
199
202
|
}), children), hasBody &&
|
|
200
203
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop, @atlaskit/design-system/consistent-css-prop-usage -- Ignored via go/DSP-18766
|
|
201
204
|
jsx("div", {
|
|
@@ -75,7 +75,8 @@ const InlineExtension = props => {
|
|
|
75
75
|
children,
|
|
76
76
|
isNodeHovered,
|
|
77
77
|
setIsNodeHovered,
|
|
78
|
-
isLivePageViewMode
|
|
78
|
+
isLivePageViewMode,
|
|
79
|
+
hideConfigureLabel
|
|
79
80
|
} = props;
|
|
80
81
|
const {
|
|
81
82
|
showMacroInteractionDesignUpdates
|
|
@@ -116,7 +117,8 @@ const InlineExtension = props => {
|
|
|
116
117
|
isNodeHovered: isNodeHovered,
|
|
117
118
|
showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates,
|
|
118
119
|
setIsNodeHovered: setIsNodeHovered,
|
|
119
|
-
pluginInjectionApi: pluginInjectionApi
|
|
120
|
+
pluginInjectionApi: pluginInjectionApi,
|
|
121
|
+
hideConfigureLabel: hideConfigureLabel
|
|
120
122
|
}), jsx("div", {
|
|
121
123
|
"data-testid": "inline-extension-wrapper",
|
|
122
124
|
css: [
|
|
@@ -138,7 +140,8 @@ const InlineExtension = props => {
|
|
|
138
140
|
}), children ? children : jsx(ExtensionLozenge, {
|
|
139
141
|
node: node,
|
|
140
142
|
showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates,
|
|
141
|
-
pluginInjectionApi: pluginInjectionApi
|
|
143
|
+
pluginInjectionApi: pluginInjectionApi,
|
|
144
|
+
hideConfigureLabel: hideConfigureLabel
|
|
142
145
|
})));
|
|
143
146
|
return expValEquals('enghealth-53346_fix_redaction_marker_editor', 'isEnabled', true) ? jsx(MemoizedWidthContextProvider, {
|
|
144
147
|
rendererContainerWidth: rendererContainerWidth
|
|
@@ -117,6 +117,7 @@ export const ExtensionLabel = ({
|
|
|
117
117
|
isNodeNested,
|
|
118
118
|
setIsNodeHovered,
|
|
119
119
|
isBodiedMacro,
|
|
120
|
+
hideConfigureLabel,
|
|
120
121
|
showUpdatedLivePages1PBodiedExtensionUI,
|
|
121
122
|
showLivePagesBodiedMacrosRendererView,
|
|
122
123
|
showBodiedExtensionRendererView,
|
|
@@ -173,7 +174,7 @@ export const ExtensionLabel = ({
|
|
|
173
174
|
onBlur: expValEquals('editor_a11y__enghealth-46814_fy26', 'isEnabled', true) ? () => {} : undefined,
|
|
174
175
|
"data-testid": "new-lozenge-container",
|
|
175
176
|
contentEditable: false
|
|
176
|
-
}, jsx(Tooltip, {
|
|
177
|
+
}, !hideConfigureLabel && jsx(Tooltip, {
|
|
177
178
|
content: jsx(FormattedMessage
|
|
178
179
|
// Ignored via go/ees005
|
|
179
180
|
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
@@ -32,13 +32,15 @@ export const LozengeComponent = ({
|
|
|
32
32
|
showUpdatedLivePages1PBodiedExtensionUI,
|
|
33
33
|
showBodiedExtensionRendererView,
|
|
34
34
|
setShowBodiedExtensionRendererView,
|
|
35
|
-
pluginInjectionApi
|
|
35
|
+
pluginInjectionApi,
|
|
36
|
+
hideConfigureLabel
|
|
36
37
|
}) => {
|
|
37
38
|
const capitalizedTitle = capitalizeFirstLetter(title);
|
|
38
39
|
if (showMacroInteractionDesignUpdates) {
|
|
39
40
|
return jsx(Fragment, null, jsx(ExtensionLabel, {
|
|
40
41
|
text: capitalizedTitle,
|
|
41
42
|
extensionName: extensionName,
|
|
43
|
+
hideConfigureLabel: hideConfigureLabel,
|
|
42
44
|
isNodeHovered: isNodeHovered,
|
|
43
45
|
isNodeNested: isNodeNested,
|
|
44
46
|
customContainerStyles: customContainerStyles,
|
|
@@ -59,6 +59,7 @@ export default class ExtensionLozenge extends Component {
|
|
|
59
59
|
isNodeNested: isNodeNested,
|
|
60
60
|
showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates,
|
|
61
61
|
extensionName: name,
|
|
62
|
+
hideConfigureLabel: this.props.hideConfigureLabel,
|
|
62
63
|
lozengeData: lozengeData,
|
|
63
64
|
params: params,
|
|
64
65
|
title: title,
|