@atlaskit/editor-common 96.1.1 → 96.3.0

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 CHANGED
@@ -1,5 +1,30 @@
1
1
  # @atlaskit/editor-common
2
2
 
3
+ ## 96.3.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#171036](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/171036)
8
+ [`94759470241e2`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/94759470241e2) -
9
+ [https://product-fabric.atlassian.net/browse/EDF-2044](EDF-2044) - add analytics for Editor AI
10
+ Command Palette link picker
11
+
12
+ ### Patch Changes
13
+
14
+ - [#174281](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/174281)
15
+ [`5178c89e2308f`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/5178c89e2308f) -
16
+ ED-25929: Fix layout insert msg formatting for i18n
17
+ - Updated dependencies
18
+
19
+ ## 96.2.0
20
+
21
+ ### Minor Changes
22
+
23
+ - [#168049](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/168049)
24
+ [`f0b76d1c73ba0`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/f0b76d1c73ba0) -
25
+ [ux] Utilizing the new extension plugin's \_\_rendererExtensionOptions option to be able to render
26
+ renderer view of bodied extensions on toggle in editor
27
+
3
28
  ## 96.1.1
4
29
 
5
30
  ### Patch Changes
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -277,6 +277,7 @@ var ACTION_SUBJECT_ID = exports.ACTION_SUBJECT_ID = /*#__PURE__*/function (ACTIO
277
277
  ACTION_SUBJECT_ID["AI_DEFINITIONS_DEFINE_BUTTON"] = "aiDefinitionsDefineButton";
278
278
  ACTION_SUBJECT_ID["AI_DEFINITIONS_AUTO_HIGHLIGHT"] = "aiDefinitionsAutoHighlight";
279
279
  ACTION_SUBJECT_ID["AI_PANELS_BODIED_EXTENSION"] = "aiPanelsBodiedExtension";
280
+ ACTION_SUBJECT_ID["AI_PROMPT_LINK_PICKER_BUTTON"] = "aiPromptLinkPickerButton";
280
281
  ACTION_SUBJECT_ID["ALL"] = "all";
281
282
  ACTION_SUBJECT_ID["ALT_TEXT"] = "altText";
282
283
  ACTION_SUBJECT_ID["ANNOTATE_BUTTON"] = "annotateButton";
@@ -49,6 +49,13 @@ var isEmptyBodiedMacro = function isEmptyBodiedMacro(node) {
49
49
  var isEmptyWithNoContent = !firstGrandChildNode && node.childCount === 1;
50
50
  return isEmptyWithPlacholder || isEmptyWithNoContent;
51
51
  };
52
+ var getBodiedExtensionContent = function getBodiedExtensionContent(node) {
53
+ var bodiedExtensionContent = [];
54
+ node.content.forEach(function (childNode) {
55
+ bodiedExtensionContent.push((0, _utils.nodeToJSON)(childNode));
56
+ });
57
+ return !!bodiedExtensionContent.length ? bodiedExtensionContent : node.attrs.text;
58
+ };
52
59
  var ExtensionComponentOld = exports.ExtensionComponentOld = /*#__PURE__*/function (_Component) {
53
60
  (0, _inherits2.default)(ExtensionComponentOld, _Component);
54
61
  var _super = _createSuper(ExtensionComponentOld);
@@ -134,7 +141,8 @@ var ExtensionComponentOld = exports.ExtensionComponentOld = /*#__PURE__*/functio
134
141
  var _pmNode$marks;
135
142
  var _this$props = _this.props,
136
143
  extensionHandlers = _this$props.extensionHandlers,
137
- editorView = _this$props.editorView;
144
+ editorView = _this$props.editorView,
145
+ rendererExtensionHandlers = _this$props.rendererExtensionHandlers;
138
146
  var showBodiedExtensionRendererView = _this.state.showBodiedExtensionRendererView; // State will only be true if the gate is on and meets requirements
139
147
  var _pmNode$attrs = pmNode.attrs,
140
148
  extensionType = _pmNode$attrs.extensionType,
@@ -148,22 +156,23 @@ var ExtensionComponentOld = exports.ExtensionComponentOld = /*#__PURE__*/functio
148
156
  var fragmentLocalId = pmNode === null || pmNode === void 0 || (_pmNode$marks = pmNode.marks) === null || _pmNode$marks === void 0 || (_pmNode$marks = _pmNode$marks.find(function (m) {
149
157
  return m.type.name === 'fragment';
150
158
  })) === null || _pmNode$marks === void 0 || (_pmNode$marks = _pmNode$marks.attrs) === null || _pmNode$marks === void 0 ? void 0 : _pmNode$marks.localId;
151
- var nodeContent = [];
152
- if (isBodiedExtension) {
153
- var _pmNode$content;
154
- pmNode === null || pmNode === void 0 || (_pmNode$content = pmNode.content) === null || _pmNode$content === void 0 || _pmNode$content.forEach(function (childNode) {
155
- nodeContent.push(childNode);
156
- });
157
- }
159
+ var content = isBodiedExtension ? getBodiedExtensionContent(pmNode) : text;
158
160
  var node = {
159
161
  type: pmNode.type.name,
160
162
  extensionType: extensionType,
161
163
  extensionKey: extensionKey,
162
164
  parameters: parameters,
163
- content: isBodiedExtension ? nodeContent.length ? nodeContent : text : text,
165
+ content: content,
164
166
  localId: pmNode.attrs.localId,
165
167
  fragmentLocalId: fragmentLocalId
166
168
  };
169
+ if (isBodiedExtension) {
170
+ var rendererExtensionHandler = rendererExtensionHandlers === null || rendererExtensionHandlers === void 0 ? void 0 : rendererExtensionHandlers[extensionType];
171
+ if (!rendererExtensionHandler) {
172
+ return null;
173
+ }
174
+ return (0, _utils.getExtensionRenderer)(rendererExtensionHandler)(node, (0, _utils.toJSON)(editorView.state.doc));
175
+ }
167
176
  var result;
168
177
  if (extensionHandlers && extensionHandlers[extensionType]) {
169
178
  var render = (0, _utils.getExtensionRenderer)(extensionHandlers[extensionType]);
@@ -431,7 +440,8 @@ var ExtensionComponentInner = /*#__PURE__*/function (_Component2) {
431
440
  var _this2$props = _this2.props,
432
441
  extensionHandlers = _this2$props.extensionHandlers,
433
442
  editorView = _this2$props.editorView,
434
- showBodiedExtensionRendererView = _this2$props.showBodiedExtensionRendererView;
443
+ showBodiedExtensionRendererView = _this2$props.showBodiedExtensionRendererView,
444
+ rendererExtensionHandlers = _this2$props.rendererExtensionHandlers;
435
445
  var _pmNode$attrs2 = pmNode.attrs,
436
446
  extensionType = _pmNode$attrs2.extensionType,
437
447
  extensionKey = _pmNode$attrs2.extensionKey,
@@ -444,22 +454,23 @@ var ExtensionComponentInner = /*#__PURE__*/function (_Component2) {
444
454
  var fragmentLocalId = pmNode === null || pmNode === void 0 || (_pmNode$marks2 = pmNode.marks) === null || _pmNode$marks2 === void 0 || (_pmNode$marks2 = _pmNode$marks2.find(function (m) {
445
455
  return m.type.name === 'fragment';
446
456
  })) === null || _pmNode$marks2 === void 0 || (_pmNode$marks2 = _pmNode$marks2.attrs) === null || _pmNode$marks2 === void 0 ? void 0 : _pmNode$marks2.localId;
447
- var nodeContent = [];
448
- if (isBodiedExtension) {
449
- var _pmNode$content2;
450
- pmNode === null || pmNode === void 0 || (_pmNode$content2 = pmNode.content) === null || _pmNode$content2 === void 0 || _pmNode$content2.forEach(function (childNode) {
451
- nodeContent.push(childNode);
452
- });
453
- }
457
+ var content = isBodiedExtension ? getBodiedExtensionContent(pmNode) : text;
454
458
  var node = {
455
459
  type: pmNode.type.name,
456
460
  extensionType: extensionType,
457
461
  extensionKey: extensionKey,
458
462
  parameters: parameters,
459
- content: isBodiedExtension ? nodeContent.length ? nodeContent : text : text,
463
+ content: content,
460
464
  localId: pmNode.attrs.localId,
461
465
  fragmentLocalId: fragmentLocalId
462
466
  };
467
+ if (isBodiedExtension) {
468
+ var rendererExtensionHandler = rendererExtensionHandlers === null || rendererExtensionHandlers === void 0 ? void 0 : rendererExtensionHandlers[extensionType];
469
+ if (!rendererExtensionHandler) {
470
+ return null;
471
+ }
472
+ return (0, _utils.getExtensionRenderer)(rendererExtensionHandler)(node, (0, _utils.toJSON)(editorView.state.doc));
473
+ }
463
474
  var result;
464
475
  if (extensionHandlers && extensionHandlers[extensionType]) {
465
476
  var render = (0, _utils.getExtensionRenderer)(extensionHandlers[extensionType]);
@@ -178,7 +178,7 @@ var toolbarInsertBlockMessages = exports.toolbarInsertBlockMessages = (0, _react
178
178
  },
179
179
  columnsDescriptionAdvancedLayout: {
180
180
  id: 'fabric.editor.columns.advanced.layout.description',
181
- defaultMessage: 'Insert {numberOfColumns} equal columns',
181
+ defaultMessage: 'Insert {numberOfColumns} equal {numberOfColumns, plural, one {column} other {columns}}',
182
182
  description: 'Create a multi column section or layout'
183
183
  },
184
184
  status: {
@@ -17,7 +17,7 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
17
17
  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; }
18
18
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
19
19
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
20
- var packageVersion = "96.1.1";
20
+ var packageVersion = "96.3.0";
21
21
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
22
22
  // Remove URL as it has UGC
23
23
  // TODO: Sanitise the URL instead of just removing it
@@ -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 = "96.1.1";
27
+ var packageVersion = "96.3.0";
28
28
  var halfFocusRing = 1;
29
29
  var dropOffset = '0, 8';
30
30
  var DropList = /*#__PURE__*/function (_Component) {
@@ -271,6 +271,7 @@ export let ACTION_SUBJECT_ID = /*#__PURE__*/function (ACTION_SUBJECT_ID) {
271
271
  ACTION_SUBJECT_ID["AI_DEFINITIONS_DEFINE_BUTTON"] = "aiDefinitionsDefineButton";
272
272
  ACTION_SUBJECT_ID["AI_DEFINITIONS_AUTO_HIGHLIGHT"] = "aiDefinitionsAutoHighlight";
273
273
  ACTION_SUBJECT_ID["AI_PANELS_BODIED_EXTENSION"] = "aiPanelsBodiedExtension";
274
+ ACTION_SUBJECT_ID["AI_PROMPT_LINK_PICKER_BUTTON"] = "aiPromptLinkPickerButton";
274
275
  ACTION_SUBJECT_ID["ALL"] = "all";
275
276
  ACTION_SUBJECT_ID["ALT_TEXT"] = "altText";
276
277
  ACTION_SUBJECT_ID["ANNOTATE_BUTTON"] = "annotateButton";
@@ -6,7 +6,7 @@ import memoizeOne from 'memoize-one';
6
6
  import { NodeSelection } from '@atlaskit/editor-prosemirror/state';
7
7
  import { fg } from '@atlaskit/platform-feature-flags';
8
8
  import { getExtensionModuleNodePrivateProps, getNodeRenderer } from '../extensions';
9
- import { getExtensionRenderer, nodeToJSON } from '../utils';
9
+ import { getExtensionRenderer, nodeToJSON, toJSON } from '../utils';
10
10
  import Extension from './Extension/Extension';
11
11
  import InlineExtension from './Extension/InlineExtension';
12
12
  import MultiBodiedExtension from './MultiBodiedExtension';
@@ -28,6 +28,13 @@ const isEmptyBodiedMacro = node => {
28
28
  const isEmptyWithNoContent = !firstGrandChildNode && node.childCount === 1;
29
29
  return isEmptyWithPlacholder || isEmptyWithNoContent;
30
30
  };
31
+ const getBodiedExtensionContent = node => {
32
+ const bodiedExtensionContent = [];
33
+ node.content.forEach(childNode => {
34
+ bodiedExtensionContent.push(nodeToJSON(childNode));
35
+ });
36
+ return !!bodiedExtensionContent.length ? bodiedExtensionContent : node.attrs.text;
37
+ };
31
38
  export class ExtensionComponentOld extends Component {
32
39
  constructor(...args) {
33
40
  super(...args);
@@ -94,7 +101,8 @@ export class ExtensionComponentOld extends Component {
94
101
  var _pmNode$marks, _pmNode$marks$find, _pmNode$marks$find$at;
95
102
  const {
96
103
  extensionHandlers,
97
- editorView
104
+ editorView,
105
+ rendererExtensionHandlers
98
106
  } = this.props;
99
107
  const {
100
108
  showBodiedExtensionRendererView
@@ -110,22 +118,23 @@ export class ExtensionComponentOld extends Component {
110
118
  return;
111
119
  }
112
120
  const fragmentLocalId = pmNode === null || pmNode === void 0 ? void 0 : (_pmNode$marks = pmNode.marks) === null || _pmNode$marks === void 0 ? void 0 : (_pmNode$marks$find = _pmNode$marks.find(m => m.type.name === 'fragment')) === null || _pmNode$marks$find === void 0 ? void 0 : (_pmNode$marks$find$at = _pmNode$marks$find.attrs) === null || _pmNode$marks$find$at === void 0 ? void 0 : _pmNode$marks$find$at.localId;
113
- const nodeContent = [];
114
- if (isBodiedExtension) {
115
- var _pmNode$content;
116
- pmNode === null || pmNode === void 0 ? void 0 : (_pmNode$content = pmNode.content) === null || _pmNode$content === void 0 ? void 0 : _pmNode$content.forEach(childNode => {
117
- nodeContent.push(childNode);
118
- });
119
- }
121
+ const content = isBodiedExtension ? getBodiedExtensionContent(pmNode) : text;
120
122
  const node = {
121
123
  type: pmNode.type.name,
122
124
  extensionType,
123
125
  extensionKey,
124
126
  parameters,
125
- content: isBodiedExtension ? nodeContent.length ? nodeContent : text : text,
127
+ content,
126
128
  localId: pmNode.attrs.localId,
127
129
  fragmentLocalId
128
130
  };
131
+ if (isBodiedExtension) {
132
+ const rendererExtensionHandler = rendererExtensionHandlers === null || rendererExtensionHandlers === void 0 ? void 0 : rendererExtensionHandlers[extensionType];
133
+ if (!rendererExtensionHandler) {
134
+ return null;
135
+ }
136
+ return getExtensionRenderer(rendererExtensionHandler)(node, toJSON(editorView.state.doc));
137
+ }
129
138
  let result;
130
139
  if (extensionHandlers && extensionHandlers[extensionType]) {
131
140
  const render = getExtensionRenderer(extensionHandlers[extensionType]);
@@ -361,7 +370,8 @@ class ExtensionComponentInner extends Component {
361
370
  const {
362
371
  extensionHandlers,
363
372
  editorView,
364
- showBodiedExtensionRendererView
373
+ showBodiedExtensionRendererView,
374
+ rendererExtensionHandlers
365
375
  } = this.props;
366
376
  const {
367
377
  extensionType,
@@ -374,22 +384,23 @@ class ExtensionComponentInner extends Component {
374
384
  return;
375
385
  }
376
386
  const fragmentLocalId = pmNode === null || pmNode === void 0 ? void 0 : (_pmNode$marks2 = pmNode.marks) === null || _pmNode$marks2 === void 0 ? void 0 : (_pmNode$marks2$find = _pmNode$marks2.find(m => m.type.name === 'fragment')) === null || _pmNode$marks2$find === void 0 ? void 0 : (_pmNode$marks2$find$a = _pmNode$marks2$find.attrs) === null || _pmNode$marks2$find$a === void 0 ? void 0 : _pmNode$marks2$find$a.localId;
377
- const nodeContent = [];
378
- if (isBodiedExtension) {
379
- var _pmNode$content2;
380
- pmNode === null || pmNode === void 0 ? void 0 : (_pmNode$content2 = pmNode.content) === null || _pmNode$content2 === void 0 ? void 0 : _pmNode$content2.forEach(childNode => {
381
- nodeContent.push(childNode);
382
- });
383
- }
387
+ const content = isBodiedExtension ? getBodiedExtensionContent(pmNode) : text;
384
388
  const node = {
385
389
  type: pmNode.type.name,
386
390
  extensionType,
387
391
  extensionKey,
388
392
  parameters,
389
- content: isBodiedExtension ? nodeContent.length ? nodeContent : text : text,
393
+ content,
390
394
  localId: pmNode.attrs.localId,
391
395
  fragmentLocalId
392
396
  };
397
+ if (isBodiedExtension) {
398
+ const rendererExtensionHandler = rendererExtensionHandlers === null || rendererExtensionHandlers === void 0 ? void 0 : rendererExtensionHandlers[extensionType];
399
+ if (!rendererExtensionHandler) {
400
+ return null;
401
+ }
402
+ return getExtensionRenderer(rendererExtensionHandler)(node, toJSON(editorView.state.doc));
403
+ }
393
404
  let result;
394
405
  if (extensionHandlers && extensionHandlers[extensionType]) {
395
406
  const render = getExtensionRenderer(extensionHandlers[extensionType]);
@@ -172,7 +172,7 @@ export const toolbarInsertBlockMessages = defineMessages({
172
172
  },
173
173
  columnsDescriptionAdvancedLayout: {
174
174
  id: 'fabric.editor.columns.advanced.layout.description',
175
- defaultMessage: 'Insert {numberOfColumns} equal columns',
175
+ defaultMessage: 'Insert {numberOfColumns} equal {numberOfColumns, plural, one {column} other {columns}}',
176
176
  description: 'Create a multi column section or layout'
177
177
  },
178
178
  status: {
@@ -1,7 +1,7 @@
1
1
  import { isFedRamp } from './environment';
2
2
  const SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
3
3
  const packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
4
- const packageVersion = "96.1.1";
4
+ const packageVersion = "96.3.0";
5
5
  const sanitiseSentryEvents = (data, _hint) => {
6
6
  // Remove URL as it has UGC
7
7
  // TODO: Sanitise the URL instead of just removing it
@@ -13,7 +13,7 @@ import withAnalyticsContext from '@atlaskit/analytics-next/withAnalyticsContext'
13
13
  import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
14
14
  import Layer from '../Layer';
15
15
  const packageName = "@atlaskit/editor-common";
16
- const packageVersion = "96.1.1";
16
+ const packageVersion = "96.3.0";
17
17
  const halfFocusRing = 1;
18
18
  const dropOffset = '0, 8';
19
19
  class DropList extends Component {
@@ -271,6 +271,7 @@ export var ACTION_SUBJECT_ID = /*#__PURE__*/function (ACTION_SUBJECT_ID) {
271
271
  ACTION_SUBJECT_ID["AI_DEFINITIONS_DEFINE_BUTTON"] = "aiDefinitionsDefineButton";
272
272
  ACTION_SUBJECT_ID["AI_DEFINITIONS_AUTO_HIGHLIGHT"] = "aiDefinitionsAutoHighlight";
273
273
  ACTION_SUBJECT_ID["AI_PANELS_BODIED_EXTENSION"] = "aiPanelsBodiedExtension";
274
+ ACTION_SUBJECT_ID["AI_PROMPT_LINK_PICKER_BUTTON"] = "aiPromptLinkPickerButton";
274
275
  ACTION_SUBJECT_ID["ALL"] = "all";
275
276
  ACTION_SUBJECT_ID["ALT_TEXT"] = "altText";
276
277
  ACTION_SUBJECT_ID["ANNOTATE_BUTTON"] = "annotateButton";
@@ -19,7 +19,7 @@ import memoizeOne from 'memoize-one';
19
19
  import { NodeSelection } from '@atlaskit/editor-prosemirror/state';
20
20
  import { fg } from '@atlaskit/platform-feature-flags';
21
21
  import { getExtensionModuleNodePrivateProps, getNodeRenderer } from '../extensions';
22
- import { getExtensionRenderer, nodeToJSON } from '../utils';
22
+ import { getExtensionRenderer, nodeToJSON, toJSON } from '../utils';
23
23
  import Extension from './Extension/Extension';
24
24
  import InlineExtension from './Extension/InlineExtension';
25
25
  import MultiBodiedExtension from './MultiBodiedExtension';
@@ -41,6 +41,13 @@ var isEmptyBodiedMacro = function isEmptyBodiedMacro(node) {
41
41
  var isEmptyWithNoContent = !firstGrandChildNode && node.childCount === 1;
42
42
  return isEmptyWithPlacholder || isEmptyWithNoContent;
43
43
  };
44
+ var getBodiedExtensionContent = function getBodiedExtensionContent(node) {
45
+ var bodiedExtensionContent = [];
46
+ node.content.forEach(function (childNode) {
47
+ bodiedExtensionContent.push(nodeToJSON(childNode));
48
+ });
49
+ return !!bodiedExtensionContent.length ? bodiedExtensionContent : node.attrs.text;
50
+ };
44
51
  export var ExtensionComponentOld = /*#__PURE__*/function (_Component) {
45
52
  _inherits(ExtensionComponentOld, _Component);
46
53
  var _super = _createSuper(ExtensionComponentOld);
@@ -126,7 +133,8 @@ export var ExtensionComponentOld = /*#__PURE__*/function (_Component) {
126
133
  var _pmNode$marks;
127
134
  var _this$props = _this.props,
128
135
  extensionHandlers = _this$props.extensionHandlers,
129
- editorView = _this$props.editorView;
136
+ editorView = _this$props.editorView,
137
+ rendererExtensionHandlers = _this$props.rendererExtensionHandlers;
130
138
  var showBodiedExtensionRendererView = _this.state.showBodiedExtensionRendererView; // State will only be true if the gate is on and meets requirements
131
139
  var _pmNode$attrs = pmNode.attrs,
132
140
  extensionType = _pmNode$attrs.extensionType,
@@ -140,22 +148,23 @@ export var ExtensionComponentOld = /*#__PURE__*/function (_Component) {
140
148
  var fragmentLocalId = pmNode === null || pmNode === void 0 || (_pmNode$marks = pmNode.marks) === null || _pmNode$marks === void 0 || (_pmNode$marks = _pmNode$marks.find(function (m) {
141
149
  return m.type.name === 'fragment';
142
150
  })) === null || _pmNode$marks === void 0 || (_pmNode$marks = _pmNode$marks.attrs) === null || _pmNode$marks === void 0 ? void 0 : _pmNode$marks.localId;
143
- var nodeContent = [];
144
- if (isBodiedExtension) {
145
- var _pmNode$content;
146
- pmNode === null || pmNode === void 0 || (_pmNode$content = pmNode.content) === null || _pmNode$content === void 0 || _pmNode$content.forEach(function (childNode) {
147
- nodeContent.push(childNode);
148
- });
149
- }
151
+ var content = isBodiedExtension ? getBodiedExtensionContent(pmNode) : text;
150
152
  var node = {
151
153
  type: pmNode.type.name,
152
154
  extensionType: extensionType,
153
155
  extensionKey: extensionKey,
154
156
  parameters: parameters,
155
- content: isBodiedExtension ? nodeContent.length ? nodeContent : text : text,
157
+ content: content,
156
158
  localId: pmNode.attrs.localId,
157
159
  fragmentLocalId: fragmentLocalId
158
160
  };
161
+ if (isBodiedExtension) {
162
+ var rendererExtensionHandler = rendererExtensionHandlers === null || rendererExtensionHandlers === void 0 ? void 0 : rendererExtensionHandlers[extensionType];
163
+ if (!rendererExtensionHandler) {
164
+ return null;
165
+ }
166
+ return getExtensionRenderer(rendererExtensionHandler)(node, toJSON(editorView.state.doc));
167
+ }
159
168
  var result;
160
169
  if (extensionHandlers && extensionHandlers[extensionType]) {
161
170
  var render = getExtensionRenderer(extensionHandlers[extensionType]);
@@ -423,7 +432,8 @@ var ExtensionComponentInner = /*#__PURE__*/function (_Component2) {
423
432
  var _this2$props = _this2.props,
424
433
  extensionHandlers = _this2$props.extensionHandlers,
425
434
  editorView = _this2$props.editorView,
426
- showBodiedExtensionRendererView = _this2$props.showBodiedExtensionRendererView;
435
+ showBodiedExtensionRendererView = _this2$props.showBodiedExtensionRendererView,
436
+ rendererExtensionHandlers = _this2$props.rendererExtensionHandlers;
427
437
  var _pmNode$attrs2 = pmNode.attrs,
428
438
  extensionType = _pmNode$attrs2.extensionType,
429
439
  extensionKey = _pmNode$attrs2.extensionKey,
@@ -436,22 +446,23 @@ var ExtensionComponentInner = /*#__PURE__*/function (_Component2) {
436
446
  var fragmentLocalId = pmNode === null || pmNode === void 0 || (_pmNode$marks2 = pmNode.marks) === null || _pmNode$marks2 === void 0 || (_pmNode$marks2 = _pmNode$marks2.find(function (m) {
437
447
  return m.type.name === 'fragment';
438
448
  })) === null || _pmNode$marks2 === void 0 || (_pmNode$marks2 = _pmNode$marks2.attrs) === null || _pmNode$marks2 === void 0 ? void 0 : _pmNode$marks2.localId;
439
- var nodeContent = [];
440
- if (isBodiedExtension) {
441
- var _pmNode$content2;
442
- pmNode === null || pmNode === void 0 || (_pmNode$content2 = pmNode.content) === null || _pmNode$content2 === void 0 || _pmNode$content2.forEach(function (childNode) {
443
- nodeContent.push(childNode);
444
- });
445
- }
449
+ var content = isBodiedExtension ? getBodiedExtensionContent(pmNode) : text;
446
450
  var node = {
447
451
  type: pmNode.type.name,
448
452
  extensionType: extensionType,
449
453
  extensionKey: extensionKey,
450
454
  parameters: parameters,
451
- content: isBodiedExtension ? nodeContent.length ? nodeContent : text : text,
455
+ content: content,
452
456
  localId: pmNode.attrs.localId,
453
457
  fragmentLocalId: fragmentLocalId
454
458
  };
459
+ if (isBodiedExtension) {
460
+ var rendererExtensionHandler = rendererExtensionHandlers === null || rendererExtensionHandlers === void 0 ? void 0 : rendererExtensionHandlers[extensionType];
461
+ if (!rendererExtensionHandler) {
462
+ return null;
463
+ }
464
+ return getExtensionRenderer(rendererExtensionHandler)(node, toJSON(editorView.state.doc));
465
+ }
455
466
  var result;
456
467
  if (extensionHandlers && extensionHandlers[extensionType]) {
457
468
  var render = getExtensionRenderer(extensionHandlers[extensionType]);
@@ -172,7 +172,7 @@ export var toolbarInsertBlockMessages = defineMessages({
172
172
  },
173
173
  columnsDescriptionAdvancedLayout: {
174
174
  id: 'fabric.editor.columns.advanced.layout.description',
175
- defaultMessage: 'Insert {numberOfColumns} equal columns',
175
+ defaultMessage: 'Insert {numberOfColumns} equal {numberOfColumns, plural, one {column} other {columns}}',
176
176
  description: 'Create a multi column section or layout'
177
177
  },
178
178
  status: {
@@ -7,7 +7,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
7
7
  import { isFedRamp } from './environment';
8
8
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
9
9
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
10
- var packageVersion = "96.1.1";
10
+ var packageVersion = "96.3.0";
11
11
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
12
12
  // Remove URL as it has UGC
13
13
  // TODO: Sanitise the URL instead of just removing it
@@ -21,7 +21,7 @@ import withAnalyticsContext from '@atlaskit/analytics-next/withAnalyticsContext'
21
21
  import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
22
22
  import Layer from '../Layer';
23
23
  var packageName = "@atlaskit/editor-common";
24
- var packageVersion = "96.1.1";
24
+ var packageVersion = "96.3.0";
25
25
  var halfFocusRing = 1;
26
26
  var dropOffset = '0, 8';
27
27
  var DropList = /*#__PURE__*/function (_Component) {
@@ -0,0 +1,7 @@
1
+ import { type ACTION, type ACTION_SUBJECT, type ACTION_SUBJECT_ID } from './enums';
2
+ import { type UIAEP } from './utils';
3
+ type PromptLinkPickerButtonClickedAEP = UIAEP<ACTION.CLICKED, ACTION_SUBJECT.BUTTON, ACTION_SUBJECT_ID.AI_PROMPT_LINK_PICKER_BUTTON, {
4
+ promptType: 'user-input' | 'interrogate';
5
+ }, undefined>;
6
+ export type AICommandPaletteEventPayload = PromptLinkPickerButtonClickedAEP;
7
+ export {};
@@ -273,6 +273,7 @@ export declare enum ACTION_SUBJECT_ID {
273
273
  AI_DEFINITIONS_DEFINE_BUTTON = "aiDefinitionsDefineButton",
274
274
  AI_DEFINITIONS_AUTO_HIGHLIGHT = "aiDefinitionsAutoHighlight",
275
275
  AI_PANELS_BODIED_EXTENSION = "aiPanelsBodiedExtension",
276
+ AI_PROMPT_LINK_PICKER_BUTTON = "aiPromptLinkPickerButton",
276
277
  ALL = "all",
277
278
  ALT_TEXT = "altText",
278
279
  ANNOTATE_BUTTON = "annotateButton",
@@ -3,6 +3,7 @@ import type { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next/types';
3
3
  import type { EditorState, PluginKey } from '@atlaskit/editor-prosemirror/state';
4
4
  import type { NewCollabSyncUpErrorAttributes } from '../../collab';
5
5
  import type { UnsupportedContentPayload, UnsupportedContentTooltipPayload, UserBrowserExtensionResults } from '../../utils';
6
+ import { type AICommandPaletteEventPayload } from './ai-command-palette-events';
6
7
  import { type AIDefinitionsEventPayload } from './ai-definitions-events';
7
8
  import type { AvatarEventPayload } from './avatar';
8
9
  import { type BreakoutEventPayload } from './breakout-events';
@@ -49,7 +50,7 @@ export type SimplifiedNode = {
49
50
  marks?: string[];
50
51
  content?: SimplifiedNode[];
51
52
  };
52
- export type AnalyticsEventPayload<T = void> = AvatarEventPayload | GeneralEventPayload<T> | FormatEventPayload | SubstituteEventPayload | InsertEventPayload | NodeEventPayload | MoveContentEventPayload | MediaEventPayload | TableEventPayload | PasteEventPayload | CutCopyEventPayload | ErrorEventPayload | ExperimentalEventPayload | FindReplaceEventPayload | DateEventPayload | SelectionEventPayload | ListEventPayload | ConfigPanelEventPayload | ElementBrowserEventPayload | CreateLinkInlineDialogEventPayload | HighlightActionsEventPayload | UnsupportedContentPayload | ExtensionEventPayload | TransactionEventPayload | TypeAheadPayload | UnlinkToolbarAEP | EditLinkToolbarAEP | OpenSettingsToolbarAEP | CustomPanelEventPayload | FeatureExposureAEP | NewCollabSyncUpErrorAEP | UnsupportedContentTooltipPayload | ReferentialityEventPayload | LoomEventPayload | MBEEventPayload | HighlightEventPayload | DatasourceClickedPayload | ElementEventPayload | ContextMenuEventPayload | VisitedLinkAEP | ViewEventPayload | MediaUploadEventPayload | MentionEventPayload | EngagementPlatformEventPayload | NestedTableActionsEventPayload | AIDefinitionsEventPayload | BreakoutEventPayload;
53
+ export type AnalyticsEventPayload<T = void> = AvatarEventPayload | GeneralEventPayload<T> | FormatEventPayload | SubstituteEventPayload | InsertEventPayload | NodeEventPayload | MoveContentEventPayload | MediaEventPayload | TableEventPayload | PasteEventPayload | CutCopyEventPayload | ErrorEventPayload | ExperimentalEventPayload | FindReplaceEventPayload | DateEventPayload | SelectionEventPayload | ListEventPayload | ConfigPanelEventPayload | ElementBrowserEventPayload | CreateLinkInlineDialogEventPayload | HighlightActionsEventPayload | UnsupportedContentPayload | ExtensionEventPayload | TransactionEventPayload | TypeAheadPayload | UnlinkToolbarAEP | EditLinkToolbarAEP | OpenSettingsToolbarAEP | CustomPanelEventPayload | FeatureExposureAEP | NewCollabSyncUpErrorAEP | UnsupportedContentTooltipPayload | ReferentialityEventPayload | LoomEventPayload | MBEEventPayload | HighlightEventPayload | DatasourceClickedPayload | ElementEventPayload | ContextMenuEventPayload | VisitedLinkAEP | ViewEventPayload | MediaUploadEventPayload | MentionEventPayload | EngagementPlatformEventPayload | NestedTableActionsEventPayload | AIDefinitionsEventPayload | AICommandPaletteEventPayload | BreakoutEventPayload;
53
54
  type CustomPanelEventPayload = TrackAEP<ACTION.CHANGED_BACKGROUND_COLOR | ACTION.CHANGED_ICON | ACTION.REMOVE_ICON, ACTION_SUBJECT.PANEL, ACTION_SUBJECT_ID.PANEL, {
54
55
  previousColor: string;
55
56
  newColor: string;
@@ -0,0 +1,7 @@
1
+ import { type ACTION, type ACTION_SUBJECT, type ACTION_SUBJECT_ID } from './enums';
2
+ import { type UIAEP } from './utils';
3
+ type PromptLinkPickerButtonClickedAEP = UIAEP<ACTION.CLICKED, ACTION_SUBJECT.BUTTON, ACTION_SUBJECT_ID.AI_PROMPT_LINK_PICKER_BUTTON, {
4
+ promptType: 'user-input' | 'interrogate';
5
+ }, undefined>;
6
+ export type AICommandPaletteEventPayload = PromptLinkPickerButtonClickedAEP;
7
+ export {};
@@ -273,6 +273,7 @@ export declare enum ACTION_SUBJECT_ID {
273
273
  AI_DEFINITIONS_DEFINE_BUTTON = "aiDefinitionsDefineButton",
274
274
  AI_DEFINITIONS_AUTO_HIGHLIGHT = "aiDefinitionsAutoHighlight",
275
275
  AI_PANELS_BODIED_EXTENSION = "aiPanelsBodiedExtension",
276
+ AI_PROMPT_LINK_PICKER_BUTTON = "aiPromptLinkPickerButton",
276
277
  ALL = "all",
277
278
  ALT_TEXT = "altText",
278
279
  ANNOTATE_BUTTON = "annotateButton",
@@ -3,6 +3,7 @@ import type { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next/types';
3
3
  import type { EditorState, PluginKey } from '@atlaskit/editor-prosemirror/state';
4
4
  import type { NewCollabSyncUpErrorAttributes } from '../../collab';
5
5
  import type { UnsupportedContentPayload, UnsupportedContentTooltipPayload, UserBrowserExtensionResults } from '../../utils';
6
+ import { type AICommandPaletteEventPayload } from './ai-command-palette-events';
6
7
  import { type AIDefinitionsEventPayload } from './ai-definitions-events';
7
8
  import type { AvatarEventPayload } from './avatar';
8
9
  import { type BreakoutEventPayload } from './breakout-events';
@@ -49,7 +50,7 @@ export type SimplifiedNode = {
49
50
  marks?: string[];
50
51
  content?: SimplifiedNode[];
51
52
  };
52
- export type AnalyticsEventPayload<T = void> = AvatarEventPayload | GeneralEventPayload<T> | FormatEventPayload | SubstituteEventPayload | InsertEventPayload | NodeEventPayload | MoveContentEventPayload | MediaEventPayload | TableEventPayload | PasteEventPayload | CutCopyEventPayload | ErrorEventPayload | ExperimentalEventPayload | FindReplaceEventPayload | DateEventPayload | SelectionEventPayload | ListEventPayload | ConfigPanelEventPayload | ElementBrowserEventPayload | CreateLinkInlineDialogEventPayload | HighlightActionsEventPayload | UnsupportedContentPayload | ExtensionEventPayload | TransactionEventPayload | TypeAheadPayload | UnlinkToolbarAEP | EditLinkToolbarAEP | OpenSettingsToolbarAEP | CustomPanelEventPayload | FeatureExposureAEP | NewCollabSyncUpErrorAEP | UnsupportedContentTooltipPayload | ReferentialityEventPayload | LoomEventPayload | MBEEventPayload | HighlightEventPayload | DatasourceClickedPayload | ElementEventPayload | ContextMenuEventPayload | VisitedLinkAEP | ViewEventPayload | MediaUploadEventPayload | MentionEventPayload | EngagementPlatformEventPayload | NestedTableActionsEventPayload | AIDefinitionsEventPayload | BreakoutEventPayload;
53
+ export type AnalyticsEventPayload<T = void> = AvatarEventPayload | GeneralEventPayload<T> | FormatEventPayload | SubstituteEventPayload | InsertEventPayload | NodeEventPayload | MoveContentEventPayload | MediaEventPayload | TableEventPayload | PasteEventPayload | CutCopyEventPayload | ErrorEventPayload | ExperimentalEventPayload | FindReplaceEventPayload | DateEventPayload | SelectionEventPayload | ListEventPayload | ConfigPanelEventPayload | ElementBrowserEventPayload | CreateLinkInlineDialogEventPayload | HighlightActionsEventPayload | UnsupportedContentPayload | ExtensionEventPayload | TransactionEventPayload | TypeAheadPayload | UnlinkToolbarAEP | EditLinkToolbarAEP | OpenSettingsToolbarAEP | CustomPanelEventPayload | FeatureExposureAEP | NewCollabSyncUpErrorAEP | UnsupportedContentTooltipPayload | ReferentialityEventPayload | LoomEventPayload | MBEEventPayload | HighlightEventPayload | DatasourceClickedPayload | ElementEventPayload | ContextMenuEventPayload | VisitedLinkAEP | ViewEventPayload | MediaUploadEventPayload | MentionEventPayload | EngagementPlatformEventPayload | NestedTableActionsEventPayload | AIDefinitionsEventPayload | AICommandPaletteEventPayload | BreakoutEventPayload;
53
54
  type CustomPanelEventPayload = TrackAEP<ACTION.CHANGED_BACKGROUND_COLOR | ACTION.CHANGED_ICON | ACTION.REMOVE_ICON, ACTION_SUBJECT.PANEL, ACTION_SUBJECT_ID.PANEL, {
54
55
  previousColor: string;
55
56
  newColor: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-common",
3
- "version": "96.1.1",
3
+ "version": "96.3.0",
4
4
  "description": "A package that contains common classes and components for editor and renderer",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -146,7 +146,7 @@
146
146
  "@atlaskit/platform-feature-flags": "^0.3.0",
147
147
  "@atlaskit/popper": "^6.3.0",
148
148
  "@atlaskit/primitives": "^13.3.0",
149
- "@atlaskit/profilecard": "^20.13.0",
149
+ "@atlaskit/profilecard": "^21.0.0",
150
150
  "@atlaskit/section-message": "^6.8.0",
151
151
  "@atlaskit/smart-card": "^32.5.0",
152
152
  "@atlaskit/smart-user-picker": "^6.11.0",