@atlaskit/editor-common 132.0.4 → 133.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.
Files changed (38) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/cjs/analytics/types/enums.js +1 -0
  3. package/dist/cjs/emoji/fallback.js +1 -5
  4. package/dist/cjs/experiences/Experience.js +4 -1
  5. package/dist/cjs/monitoring/error.js +1 -1
  6. package/dist/cjs/quick-insert/snippetPreviewImageUrls.js +29 -42
  7. package/dist/cjs/ui/DropList/index.js +1 -1
  8. package/dist/cjs/ui/Mention/index.js +4 -0
  9. package/dist/cjs/utils/annotation/index.js +0 -57
  10. package/dist/cjs/utils/index.js +0 -6
  11. package/dist/cjs/utils/processRawValue.js +6 -11
  12. package/dist/es2019/analytics/types/enums.js +1 -0
  13. package/dist/es2019/emoji/fallback.js +1 -5
  14. package/dist/es2019/experiences/Experience.js +5 -1
  15. package/dist/es2019/monitoring/error.js +1 -1
  16. package/dist/es2019/quick-insert/snippetPreviewImageUrls.js +29 -42
  17. package/dist/es2019/ui/DropList/index.js +1 -1
  18. package/dist/es2019/ui/Mention/index.js +4 -0
  19. package/dist/es2019/utils/annotation/index.js +0 -57
  20. package/dist/es2019/utils/index.js +1 -1
  21. package/dist/es2019/utils/processRawValue.js +6 -11
  22. package/dist/esm/analytics/types/enums.js +1 -0
  23. package/dist/esm/emoji/fallback.js +1 -5
  24. package/dist/esm/experiences/Experience.js +4 -1
  25. package/dist/esm/monitoring/error.js +1 -1
  26. package/dist/esm/quick-insert/snippetPreviewImageUrls.js +29 -42
  27. package/dist/esm/ui/DropList/index.js +1 -1
  28. package/dist/esm/ui/Mention/index.js +4 -0
  29. package/dist/esm/utils/annotation/index.js +0 -56
  30. package/dist/esm/utils/index.js +1 -1
  31. package/dist/esm/utils/processRawValue.js +6 -11
  32. package/dist/types/analytics/types/enums.d.ts +1 -0
  33. package/dist/types/annotation/index.d.ts +0 -2
  34. package/dist/types/quick-insert/snippetPreviewImageUrls.d.ts +3 -0
  35. package/dist/types/types/annotation/index.d.ts +0 -2
  36. package/dist/types/utils/annotation/index.d.ts +0 -10
  37. package/dist/types/utils/index.d.ts +1 -1
  38. package/package.json +3 -12
package/CHANGELOG.md CHANGED
@@ -1,5 +1,45 @@
1
1
  # @atlaskit/editor-common
2
2
 
3
+ ## 133.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`84e89f54232c1`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/84e89f54232c1) -
8
+ Render preloaded Rovo mention identity styling during SSR behind platform_editor_mention_rovo.
9
+ - Updated dependencies
10
+
11
+ ## 133.0.0
12
+
13
+ ### Major Changes
14
+
15
+ - [`904166434c26b`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/904166434c26b) -
16
+ Remove abandoned draft annotation ancestor node logging. Delete the unused
17
+ `getRangeAncestorNodeNames` export and `ancestorNodeTypes` annotation result fields. Renderer
18
+ annotations no longer contain the unused ancestor node field.
19
+
20
+ ### Minor Changes
21
+
22
+ - [`cd47720f33219`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/cd47720f33219) -
23
+ Report team mentions as creationMethod 'linkpicker_searchResult' instead of 'unknown' on the link
24
+ created event, and add a linkCreationType attribute ('mention' | 'conventionalSmartLink' | 'link')
25
+ so mentions can be told apart from conventional smart links. The team mention change is behind the
26
+ `platform_editor_team_mention_link_analytics` gate.
27
+
28
+ ### Patch Changes
29
+
30
+ - [`25d608f808027`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/25d608f808027) -
31
+ Look up GLOBAL template preview images by `snippetKey`, so every product's copy of a template
32
+ shows its preview and Atlassian attribution (behind `platform_editor_slash_command`). Remove the
33
+ snippet-specific preview fallback from generic quick insert provider items
34
+ - [`b5a57ab5f5fea`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/b5a57ab5f5fea) -
35
+ Clean up feature gate `platform_editor_panel_c1_fallback_transform`
36
+ - [`49d75093d8f1c`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/49d75093d8f1c) -
37
+ Clean up feature gate `platform_editor_custom_emoji_unicode_fallback`
38
+ - [`e05b45927358b`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/e05b45927358b) -
39
+ Duplicate experienceSampled actionSubjectId into attributes behind
40
+ duplicate_actionsubjectid_to_attributes.
41
+ - Updated dependencies
42
+
3
43
  ## 132.0.4
4
44
 
5
45
  ### Patch Changes
@@ -268,6 +268,7 @@ var INPUT_METHOD = exports.INPUT_METHOD = /*#__PURE__*/function (INPUT_METHOD) {
268
268
  INPUT_METHOD["SHORTCUT"] = "shortcut";
269
269
  INPUT_METHOD["TOOLBAR"] = "toolbar";
270
270
  INPUT_METHOD["TYPEAHEAD"] = "typeAhead";
271
+ INPUT_METHOD["MENTION_TYPEAHEAD"] = "mentionTypeahead";
271
272
  INPUT_METHOD["DATASOURCE"] = "datasource_config";
272
273
  INPUT_METHOD["TABLE_CONTEXT_MENU"] = "tableContextMenu";
273
274
  INPUT_METHOD["MOUSE"] = "mouse";
@@ -4,12 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.getEmojiCustomFallback = getEmojiCustomFallback;
7
- var _fg = require("@atlaskit/platform-feature-flags/fg");
8
7
  var _isSingleEmoji = require("../utils/isSingleEmoji");
9
8
  /** Shared custom-emoji fallback without importing components or resolving providers. */
10
9
  function getEmojiCustomFallback(fallbackText) {
11
- if ((0, _fg.fg)('platform_editor_custom_emoji_unicode_fallback')) {
12
- return (0, _isSingleEmoji.isSingleEmoji)(fallbackText) ? undefined : "\uFFFD";
13
- }
14
- return undefined;
10
+ return (0, _isSingleEmoji.isSingleEmoji)(fallbackText) ? undefined : "\uFFFD";
15
11
  }
@@ -8,6 +8,7 @@ exports.Experience = void 0;
8
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _dynamicConfigBooleanValue = require("@atlaskit/tmp-editor-statsig/dynamic-config-boolean-value");
11
12
  var _analytics = require("../analytics");
12
13
  var _consts = require("./consts");
13
14
  var _experienceState = require("./experience-state");
@@ -175,7 +176,9 @@ var Experience = exports.Experience = /*#__PURE__*/function () {
175
176
  actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
176
177
  actionSubjectId: this.actionSubjectId,
177
178
  eventType: _analytics.EVENT_TYPE.OPERATIONAL,
178
- attributes: attributes
179
+ attributes: (0, _dynamicConfigBooleanValue.dynamicConfigBooleanValue)('duplicate_actionsubjectid_to_attributes') ? _objectSpread(_objectSpread({}, attributes), {}, {
180
+ actionSubjectId: this.actionSubjectId
181
+ }) : attributes
179
182
  };
180
183
  this.dispatchAnalyticsEvent(experienceSampledEvent);
181
184
  }
@@ -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 = "132.0.3";
30
+ var packageVersion = "133.0.0";
31
31
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
32
32
  // Remove URL as it has UGC
33
33
  // Ignored via go/ees007
@@ -5,113 +5,100 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.getSnippetPreviewImageUrls = void 0;
7
7
  var DAM_CDN_LINK = 'https://dam-cdn.atl.orangelogic.com/CDNLink';
8
+
9
+ /**
10
+ * Keyed by `snippetKey`, which is the same for every product's copy of a GLOBAL template.
11
+ */
8
12
  var snippetPreviewImageUrlsByKey = {
9
- // Action items
10
- '019e5cd9-5ca1-7258-befd-4f50d491bb42': {
13
+ 'action-items': {
11
14
  light: "".concat(DAM_CDN_LINK, "/AT12OVLE.png"),
12
15
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJI.png")
13
16
  },
14
- // Bug report
15
- '019e5cd9-5ca1-7258-befd-1c3c59b0aa00': {
17
+ 'bug-report': {
16
18
  light: "".concat(DAM_CDN_LINK, "/AT12OVMN.png"),
17
19
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJ6.png")
18
20
  },
19
- // Campaign brief
20
- '019e5cd9-5ca1-7258-befd-398bb4e40f15': {
21
+ 'campaign-brief': {
21
22
  light: "".concat(DAM_CDN_LINK, "/AT12OVMY.png"),
22
23
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJE.png")
23
24
  },
24
- // Colorful layout
25
- '019e5cd9-5ca1-7258-befd-53b6eec19427': {
25
+ 'colourful-layout': {
26
26
  light: "".concat(DAM_CDN_LINK, "/AT12OVN6.png"),
27
27
  dark: "".concat(DAM_CDN_LINK, "/AT12OVIG.png")
28
28
  },
29
- // Colorful numbered table
30
- '019e5cd9-5ca1-7258-befd-70a282facf16': {
29
+ 'colourful-numbered-table': {
31
30
  light: "".concat(DAM_CDN_LINK, "/AT12OVN7.png"),
32
31
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJL.png")
33
32
  },
34
- // Colorful summary
35
- '019e5cd9-5ca1-7258-befd-7e200502de8e': {
33
+ 'colourful-summary': {
36
34
  light: "".concat(DAM_CDN_LINK, "/AT12OVN4.png"),
37
35
  dark: "".concat(DAM_CDN_LINK, "/AT12OVIE.png")
38
36
  },
39
- // Colorful table
40
- '019e5cd9-5ca1-7258-befd-5524d394ba0a': {
37
+ 'colourful-table': {
41
38
  light: "".concat(DAM_CDN_LINK, "/AT12OVMJ.png"),
42
39
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJM.png")
43
40
  },
44
- // Competitive snapshot
45
- '019e5cd9-5ca1-7258-befd-40d1947b7b84': {
41
+ 'competitive-snapshot': {
46
42
  light: "".concat(DAM_CDN_LINK, "/AT12OVMR.png"),
47
43
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJC.png")
48
44
  },
49
- // Criteria rubric
50
- '019e5cd9-5ca1-7258-befd-84723a493931': {
45
+ 'criteria-rubric': {
51
46
  light: "".concat(DAM_CDN_LINK, "/AT12OVMA.png"),
52
47
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJ1.png")
53
48
  },
54
- // Customer quote
55
- '019e5cd9-5ca1-7258-befd-5fcf6165870f': {
49
+ 'customer-quote': {
56
50
  light: "".concat(DAM_CDN_LINK, "/AT12OVLF.png"),
57
51
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJK.png")
58
52
  },
59
- // Decision log
60
- '019e5cd9-5ca1-7258-befd-30c6e8712ba4': {
53
+ 'decision-log': {
61
54
  light: "".concat(DAM_CDN_LINK, "/AT12OVMT.png"),
62
55
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJ9.png")
63
56
  },
64
- // Launch checklist
65
- '019e5cd9-5ca1-7258-befd-3ce1c551015e': {
57
+ 'launch-checklist': {
66
58
  light: "".concat(DAM_CDN_LINK, "/AT12OVKW.png"),
67
59
  dark: "".concat(DAM_CDN_LINK, "/AT12OVHN.png")
68
60
  },
69
- // Meeting agenda
70
- '019e5cd9-5ca1-7258-befd-47559a8d7cfc': {
61
+ 'meeting-agenda': {
71
62
  light: "".concat(DAM_CDN_LINK, "/AT12OVMU.png"),
72
63
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJD.png")
73
64
  },
74
- // Project status snapshot
75
- '019e5cd9-5ca1-7258-befd-2943939d1b79': {
65
+ 'project-status-snapshot': {
76
66
  light: "".concat(DAM_CDN_LINK, "/AT12OVMO.png"),
77
67
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJU.png")
78
68
  },
79
- // Pros and cons
80
- '019e5cd9-5ca1-7258-befd-6db9658d75f4': {
69
+ 'pros-and-cons': {
81
70
  light: "".concat(DAM_CDN_LINK, "/AT12OVN5.png"),
82
71
  dark: "".concat(DAM_CDN_LINK, "/AT12OVHY.png")
83
72
  },
84
- // Quick project update
85
- '019e5cd9-5ca1-7258-befd-820ce1acd7a0': {
73
+ 'quick-project-update': {
86
74
  light: "".concat(DAM_CDN_LINK, "/AT12OVNA.png"),
87
75
  dark: "".concat(DAM_CDN_LINK, "/AT12OVI5.png")
88
76
  },
89
- // Risks and assumptions
90
- '019e5cd9-5ca1-7258-befd-2da95ce98772': {
77
+ 'risks-and-assumptions': {
91
78
  light: "".concat(DAM_CDN_LINK, "/AT12OVMQ.png"),
92
79
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJ7.png")
93
80
  },
94
- // Roles and responsibilities matrix
95
- '019e5cd9-5ca1-7258-befd-37cd3a06776d': {
81
+ 'roles-and-responsibilities-matrix': {
96
82
  light: "".concat(DAM_CDN_LINK, "/AT12OVM8.png"),
97
83
  dark: "".concat(DAM_CDN_LINK, "/AT12OVHG.png")
98
84
  },
99
- // Run sheet
100
- '019e5cd9-5ca1-7258-befd-4a9979f87235': {
85
+ 'run-sheet': {
101
86
  light: "".concat(DAM_CDN_LINK, "/AT12OVMZ.png"),
102
87
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJB.png")
103
88
  },
104
- // Started → Now
105
- '019e5cd9-5ca1-7258-befd-74fb1585da6f': {
89
+ 'started-now': {
106
90
  light: "".concat(DAM_CDN_LINK, "/AT12OVN8.png"),
107
91
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJQ.png")
108
92
  },
109
- // Weekly calendar
110
- '019e5cd9-5ca1-7258-befd-580c2c95a0a0': {
93
+ 'weekly-calendar': {
111
94
  light: "".concat(DAM_CDN_LINK, "/AT12OVN2.png"),
112
95
  dark: "".concat(DAM_CDN_LINK, "/AT12OVIJ.png")
113
96
  }
114
97
  };
98
+
99
+ /**
100
+ * Returns the preview image URLs for a GLOBAL template's `snippetKey`.
101
+ */
115
102
  var getSnippetPreviewImageUrls = exports.getSnippetPreviewImageUrls = function getSnippetPreviewImageUrls(snippetKey) {
116
103
  return Object.prototype.hasOwnProperty.call(snippetPreviewImageUrlsByKey, snippetKey) ? snippetPreviewImageUrlsByKey[snippetKey] : undefined;
117
104
  };
@@ -23,7 +23,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
23
23
  * @jsx jsx
24
24
  */ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
25
25
  var packageName = "@atlaskit/editor-common";
26
- var packageVersion = "132.0.3";
26
+ var packageVersion = "133.0.0";
27
27
  var halfFocusRing = 1;
28
28
  var dropOffset = '0, 8';
29
29
  // Ignored via go/ees005
@@ -75,6 +75,10 @@ var Mention = exports.default = /*#__PURE__*/function (_PureComponent) {
75
75
  disabledTooltip: disabledTooltip,
76
76
  eventHandlers: eventHandlers,
77
77
  mentionProvider: mentionProvider,
78
+ mentionNodeData: mentionNodeDataProvider && (0, _isExperimentEnabled.isExperimentEnabled)('platform_editor_mention_rovo') ? mentionNodeDataProvider.getMentionDataFromCache({
79
+ id: id,
80
+ userType: userType
81
+ }) : undefined,
78
82
  profilecardProvider: profilecardProvider
79
83
  }));
80
84
  });
@@ -9,7 +9,6 @@ exports.containsAnyAnnotations = containsAnyAnnotations;
9
9
  exports.getAnnotationIdsFromRange = void 0;
10
10
  exports.getAnnotationInlineNodeTypes = getAnnotationInlineNodeTypes;
11
11
  exports.getAnnotationMarksForPos = getAnnotationMarksForPos;
12
- exports.getRangeAncestorNodeNames = getRangeAncestorNodeNames;
13
12
  exports.getRangeInlineNodeNames = getRangeInlineNodeNames;
14
13
  exports.hasAnnotationMark = hasAnnotationMark;
15
14
  exports.isEmptyTextSelection = isEmptyTextSelection;
@@ -132,62 +131,6 @@ function getRangeInlineNodeNames(_ref) {
132
131
  }
133
132
  }
134
133
 
135
- /**
136
- * This returns a list of ancestor node names that contain the given position.
137
- */
138
- function getRangeAncestorNodeNames(_ref2) {
139
- var doc = _ref2.doc,
140
- pos = _ref2.pos;
141
- if (!(0, _fg.fg)('cc_comments_log_draft_annotation_ancestor_nodes')) {
142
- return undefined;
143
- }
144
- var nodeNames = new Set();
145
- try {
146
- // For a range, we can get ancestors at both from and to positions
147
- // or just use the from position if you want ancestors at the start
148
- var resolvedFromPos = doc.resolve(pos.from);
149
- var resolvedToPos = doc.resolve(pos.to);
150
-
151
- // Collect ancestors at the 'from' position
152
- for (var depth = resolvedFromPos.depth; depth > 0; depth--) {
153
- var ancestorNode = resolvedFromPos.node(depth);
154
- nodeNames.add(ancestorNode.type.name);
155
- }
156
-
157
- // Use nodesBetween to collect parent types without additional resolve() calls
158
- // This isn't as precise as calling resolve() on each parent, but it's a lot faster
159
- // and should hopefully provide a good approximation of the ancestor nodes
160
- var seenParents = new Set();
161
- doc.nodesBetween(pos.from, pos.to, function (_node, _nodePos, parent) {
162
- // Collect parent chain using the parent parameter
163
- var currentParent = parent;
164
- if (!!currentParent && !seenParents.has(currentParent)) {
165
- seenParents.add(currentParent);
166
- nodeNames.add(currentParent.type.name);
167
- // Note: We can't easily get the parent's parent from this context
168
- // without additional resolve calls, so this approach has limitations
169
- }
170
- return true;
171
- });
172
-
173
- // Optionally collect ancestors at the 'to' position if different
174
- // This ensures we capture all ancestor contexts across the range
175
- if (pos.from !== pos.to) {
176
- for (var _depth = resolvedToPos.depth; _depth > 0; _depth--) {
177
- var _ancestorNode = resolvedToPos.node(_depth);
178
- nodeNames.add(_ancestorNode.type.name);
179
- }
180
- }
181
- return (0, _toConsumableArray2.default)(nodeNames);
182
- } catch (_unused2) {
183
- // Some callers have existing gaps where the positions are not valid,
184
- // and so when called in the current document can throw an error if out of range.
185
- //
186
- // This is a defensive check to ensure we don't throw an error in those cases.
187
- return undefined;
188
- }
189
- }
190
-
191
134
  /**
192
135
  * This function returns a list of node types that are wrapped by an annotation mark.
193
136
  *
@@ -534,12 +534,6 @@ Object.defineProperty(exports, "getPropsDifference", {
534
534
  return _compareProps.getPropsDifference;
535
535
  }
536
536
  });
537
- Object.defineProperty(exports, "getRangeAncestorNodeNames", {
538
- enumerable: true,
539
- get: function get() {
540
- return _annotation.getRangeAncestorNodeNames;
541
- }
542
- });
543
537
  Object.defineProperty(exports, "getRangeInlineNodeNames", {
544
538
  enumerable: true,
545
539
  get: function get() {
@@ -24,7 +24,6 @@ var _textLinkCodeTransform = require("@atlaskit/adf-utils/text-link-code-transfo
24
24
  var _transformMediaSingleWidth = require("@atlaskit/adf-utils/transform-media-single-width");
25
25
  var _transforms = require("@atlaskit/adf-utils/transforms");
26
26
  var _model = require("@atlaskit/editor-prosemirror/model");
27
- var _fg = require("@atlaskit/platform-feature-flags/fg");
28
27
  var _expValEquals = require("@atlaskit/tmp-editor-statsig/exp-val-equals");
29
28
  var _analytics = require("../analytics");
30
29
  var _isNestedTablesSupported = require("../nesting/isNestedTablesSupported");
@@ -157,11 +156,9 @@ function processRawValueWithoutValidation(schema, value, dispatchAnalyticsEvent)
157
156
  if (result.isTransformed && result.transformedAdf) {
158
157
  transformedAdf = result.transformedAdf;
159
158
  }
160
- if ((0, _fg.fg)('platform_editor_panel_c1_fallback_transform')) {
161
- var panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
162
- if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
163
- transformedAdf = panelC1Result.transformedAdf;
164
- }
159
+ var panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
160
+ if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
161
+ transformedAdf = panelC1Result.transformedAdf;
165
162
  }
166
163
  if ((0, _expValEquals.expValEquals)('platform_editor_nest_table_in_panel', 'isEnabled', true)) {
167
164
  var _transformContainerNo2 = transformContainerNodesWithAnalytics(transformedAdf, schema, dispatchAnalyticsEvent);
@@ -337,11 +334,9 @@ function processRawValue(schema, value, providerFactory, sanitizePrivateContent,
337
334
  });
338
335
  }
339
336
  }
340
- if ((0, _fg.fg)('platform_editor_panel_c1_fallback_transform')) {
341
- var panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
342
- if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
343
- transformedAdf = panelC1Result.transformedAdf;
344
- }
337
+ var panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
338
+ if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
339
+ transformedAdf = panelC1Result.transformedAdf;
345
340
  }
346
341
 
347
342
  // Validate ADF first before converting nested-table extensions into nested tables
@@ -266,6 +266,7 @@ export let INPUT_METHOD = /*#__PURE__*/function (INPUT_METHOD) {
266
266
  INPUT_METHOD["SHORTCUT"] = "shortcut";
267
267
  INPUT_METHOD["TOOLBAR"] = "toolbar";
268
268
  INPUT_METHOD["TYPEAHEAD"] = "typeAhead";
269
+ INPUT_METHOD["MENTION_TYPEAHEAD"] = "mentionTypeahead";
269
270
  INPUT_METHOD["DATASOURCE"] = "datasource_config";
270
271
  INPUT_METHOD["TABLE_CONTEXT_MENU"] = "tableContextMenu";
271
272
  INPUT_METHOD["MOUSE"] = "mouse";
@@ -1,10 +1,6 @@
1
- import { fg } from '@atlaskit/platform-feature-flags/fg';
2
1
  import { isSingleEmoji } from '../utils/isSingleEmoji';
3
2
 
4
3
  /** Shared custom-emoji fallback without importing components or resolving providers. */
5
4
  export function getEmojiCustomFallback(fallbackText) {
6
- if (fg('platform_editor_custom_emoji_unicode_fallback')) {
7
- return isSingleEmoji(fallbackText) ? undefined : '\uFFFD';
8
- }
9
- return undefined;
5
+ return isSingleEmoji(fallbackText) ? undefined : '\uFFFD';
10
6
  }
@@ -1,4 +1,5 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import { dynamicConfigBooleanValue } from '@atlaskit/tmp-editor-statsig/dynamic-config-boolean-value';
2
3
  import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '../analytics';
3
4
  import { DEFAULT_EXPERIENCE_SAMPLE_RATE, EXPERIENCE_ABORT_REASON } from './consts';
4
5
  import { canTransition } from './experience-state';
@@ -158,7 +159,10 @@ export class Experience {
158
159
  actionSubject: ACTION_SUBJECT.EDITOR,
159
160
  actionSubjectId: this.actionSubjectId,
160
161
  eventType: EVENT_TYPE.OPERATIONAL,
161
- attributes
162
+ attributes: dynamicConfigBooleanValue('duplicate_actionsubjectid_to_attributes') ? {
163
+ ...attributes,
164
+ actionSubjectId: this.actionSubjectId
165
+ } : attributes
162
166
  };
163
167
  this.dispatchAnalyticsEvent(experienceSampledEvent);
164
168
  }
@@ -13,7 +13,7 @@ const NETWORK_FAILURE_REGEX = /^network failure/i;
13
13
  const RESIZE_OBSERVER_LOOP_REGEX = /ResizeObserver loop completed with undelivered notifications/;
14
14
  const SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
15
15
  const packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
16
- const packageVersion = "132.0.3";
16
+ const packageVersion = "133.0.0";
17
17
  const sanitiseSentryEvents = (data, _hint) => {
18
18
  // Remove URL as it has UGC
19
19
  // Ignored via go/ees007
@@ -1,109 +1,96 @@
1
1
  const DAM_CDN_LINK = 'https://dam-cdn.atl.orangelogic.com/CDNLink';
2
+
3
+ /**
4
+ * Keyed by `snippetKey`, which is the same for every product's copy of a GLOBAL template.
5
+ */
2
6
  const snippetPreviewImageUrlsByKey = {
3
- // Action items
4
- '019e5cd9-5ca1-7258-befd-4f50d491bb42': {
7
+ 'action-items': {
5
8
  light: `${DAM_CDN_LINK}/AT12OVLE.png`,
6
9
  dark: `${DAM_CDN_LINK}/AT12OVJI.png`
7
10
  },
8
- // Bug report
9
- '019e5cd9-5ca1-7258-befd-1c3c59b0aa00': {
11
+ 'bug-report': {
10
12
  light: `${DAM_CDN_LINK}/AT12OVMN.png`,
11
13
  dark: `${DAM_CDN_LINK}/AT12OVJ6.png`
12
14
  },
13
- // Campaign brief
14
- '019e5cd9-5ca1-7258-befd-398bb4e40f15': {
15
+ 'campaign-brief': {
15
16
  light: `${DAM_CDN_LINK}/AT12OVMY.png`,
16
17
  dark: `${DAM_CDN_LINK}/AT12OVJE.png`
17
18
  },
18
- // Colorful layout
19
- '019e5cd9-5ca1-7258-befd-53b6eec19427': {
19
+ 'colourful-layout': {
20
20
  light: `${DAM_CDN_LINK}/AT12OVN6.png`,
21
21
  dark: `${DAM_CDN_LINK}/AT12OVIG.png`
22
22
  },
23
- // Colorful numbered table
24
- '019e5cd9-5ca1-7258-befd-70a282facf16': {
23
+ 'colourful-numbered-table': {
25
24
  light: `${DAM_CDN_LINK}/AT12OVN7.png`,
26
25
  dark: `${DAM_CDN_LINK}/AT12OVJL.png`
27
26
  },
28
- // Colorful summary
29
- '019e5cd9-5ca1-7258-befd-7e200502de8e': {
27
+ 'colourful-summary': {
30
28
  light: `${DAM_CDN_LINK}/AT12OVN4.png`,
31
29
  dark: `${DAM_CDN_LINK}/AT12OVIE.png`
32
30
  },
33
- // Colorful table
34
- '019e5cd9-5ca1-7258-befd-5524d394ba0a': {
31
+ 'colourful-table': {
35
32
  light: `${DAM_CDN_LINK}/AT12OVMJ.png`,
36
33
  dark: `${DAM_CDN_LINK}/AT12OVJM.png`
37
34
  },
38
- // Competitive snapshot
39
- '019e5cd9-5ca1-7258-befd-40d1947b7b84': {
35
+ 'competitive-snapshot': {
40
36
  light: `${DAM_CDN_LINK}/AT12OVMR.png`,
41
37
  dark: `${DAM_CDN_LINK}/AT12OVJC.png`
42
38
  },
43
- // Criteria rubric
44
- '019e5cd9-5ca1-7258-befd-84723a493931': {
39
+ 'criteria-rubric': {
45
40
  light: `${DAM_CDN_LINK}/AT12OVMA.png`,
46
41
  dark: `${DAM_CDN_LINK}/AT12OVJ1.png`
47
42
  },
48
- // Customer quote
49
- '019e5cd9-5ca1-7258-befd-5fcf6165870f': {
43
+ 'customer-quote': {
50
44
  light: `${DAM_CDN_LINK}/AT12OVLF.png`,
51
45
  dark: `${DAM_CDN_LINK}/AT12OVJK.png`
52
46
  },
53
- // Decision log
54
- '019e5cd9-5ca1-7258-befd-30c6e8712ba4': {
47
+ 'decision-log': {
55
48
  light: `${DAM_CDN_LINK}/AT12OVMT.png`,
56
49
  dark: `${DAM_CDN_LINK}/AT12OVJ9.png`
57
50
  },
58
- // Launch checklist
59
- '019e5cd9-5ca1-7258-befd-3ce1c551015e': {
51
+ 'launch-checklist': {
60
52
  light: `${DAM_CDN_LINK}/AT12OVKW.png`,
61
53
  dark: `${DAM_CDN_LINK}/AT12OVHN.png`
62
54
  },
63
- // Meeting agenda
64
- '019e5cd9-5ca1-7258-befd-47559a8d7cfc': {
55
+ 'meeting-agenda': {
65
56
  light: `${DAM_CDN_LINK}/AT12OVMU.png`,
66
57
  dark: `${DAM_CDN_LINK}/AT12OVJD.png`
67
58
  },
68
- // Project status snapshot
69
- '019e5cd9-5ca1-7258-befd-2943939d1b79': {
59
+ 'project-status-snapshot': {
70
60
  light: `${DAM_CDN_LINK}/AT12OVMO.png`,
71
61
  dark: `${DAM_CDN_LINK}/AT12OVJU.png`
72
62
  },
73
- // Pros and cons
74
- '019e5cd9-5ca1-7258-befd-6db9658d75f4': {
63
+ 'pros-and-cons': {
75
64
  light: `${DAM_CDN_LINK}/AT12OVN5.png`,
76
65
  dark: `${DAM_CDN_LINK}/AT12OVHY.png`
77
66
  },
78
- // Quick project update
79
- '019e5cd9-5ca1-7258-befd-820ce1acd7a0': {
67
+ 'quick-project-update': {
80
68
  light: `${DAM_CDN_LINK}/AT12OVNA.png`,
81
69
  dark: `${DAM_CDN_LINK}/AT12OVI5.png`
82
70
  },
83
- // Risks and assumptions
84
- '019e5cd9-5ca1-7258-befd-2da95ce98772': {
71
+ 'risks-and-assumptions': {
85
72
  light: `${DAM_CDN_LINK}/AT12OVMQ.png`,
86
73
  dark: `${DAM_CDN_LINK}/AT12OVJ7.png`
87
74
  },
88
- // Roles and responsibilities matrix
89
- '019e5cd9-5ca1-7258-befd-37cd3a06776d': {
75
+ 'roles-and-responsibilities-matrix': {
90
76
  light: `${DAM_CDN_LINK}/AT12OVM8.png`,
91
77
  dark: `${DAM_CDN_LINK}/AT12OVHG.png`
92
78
  },
93
- // Run sheet
94
- '019e5cd9-5ca1-7258-befd-4a9979f87235': {
79
+ 'run-sheet': {
95
80
  light: `${DAM_CDN_LINK}/AT12OVMZ.png`,
96
81
  dark: `${DAM_CDN_LINK}/AT12OVJB.png`
97
82
  },
98
- // Started → Now
99
- '019e5cd9-5ca1-7258-befd-74fb1585da6f': {
83
+ 'started-now': {
100
84
  light: `${DAM_CDN_LINK}/AT12OVN8.png`,
101
85
  dark: `${DAM_CDN_LINK}/AT12OVJQ.png`
102
86
  },
103
- // Weekly calendar
104
- '019e5cd9-5ca1-7258-befd-580c2c95a0a0': {
87
+ 'weekly-calendar': {
105
88
  light: `${DAM_CDN_LINK}/AT12OVN2.png`,
106
89
  dark: `${DAM_CDN_LINK}/AT12OVIJ.png`
107
90
  }
108
91
  };
92
+
93
+ /**
94
+ * Returns the preview image URLs for a GLOBAL template's `snippetKey`.
95
+ */
109
96
  export const getSnippetPreviewImageUrls = snippetKey => Object.prototype.hasOwnProperty.call(snippetPreviewImageUrlsByKey, snippetKey) ? snippetPreviewImageUrlsByKey[snippetKey] : undefined;
@@ -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 = "132.0.3";
16
+ const packageVersion = "133.0.0";
17
17
  const halfFocusRing = 1;
18
18
  const dropOffset = '0, 8';
19
19
  // Ignored via go/ees005
@@ -62,6 +62,10 @@ export default class Mention extends PureComponent {
62
62
  disabledTooltip: disabledTooltip,
63
63
  eventHandlers: eventHandlers,
64
64
  mentionProvider: mentionProvider,
65
+ mentionNodeData: mentionNodeDataProvider && isExperimentEnabled('platform_editor_mention_rovo') ? mentionNodeDataProvider.getMentionDataFromCache({
66
+ id,
67
+ userType
68
+ }) : undefined,
65
69
  profilecardProvider: profilecardProvider
66
70
  }));
67
71
  });
@@ -126,63 +126,6 @@ export function getRangeInlineNodeNames({
126
126
  }
127
127
  }
128
128
 
129
- /**
130
- * This returns a list of ancestor node names that contain the given position.
131
- */
132
- export function getRangeAncestorNodeNames({
133
- doc,
134
- pos
135
- }) {
136
- if (!fg('cc_comments_log_draft_annotation_ancestor_nodes')) {
137
- return undefined;
138
- }
139
- const nodeNames = new Set();
140
- try {
141
- // For a range, we can get ancestors at both from and to positions
142
- // or just use the from position if you want ancestors at the start
143
- const resolvedFromPos = doc.resolve(pos.from);
144
- const resolvedToPos = doc.resolve(pos.to);
145
-
146
- // Collect ancestors at the 'from' position
147
- for (let depth = resolvedFromPos.depth; depth > 0; depth--) {
148
- const ancestorNode = resolvedFromPos.node(depth);
149
- nodeNames.add(ancestorNode.type.name);
150
- }
151
-
152
- // Use nodesBetween to collect parent types without additional resolve() calls
153
- // This isn't as precise as calling resolve() on each parent, but it's a lot faster
154
- // and should hopefully provide a good approximation of the ancestor nodes
155
- const seenParents = new Set();
156
- doc.nodesBetween(pos.from, pos.to, (_node, _nodePos, parent) => {
157
- // Collect parent chain using the parent parameter
158
- const currentParent = parent;
159
- if (!!currentParent && !seenParents.has(currentParent)) {
160
- seenParents.add(currentParent);
161
- nodeNames.add(currentParent.type.name);
162
- // Note: We can't easily get the parent's parent from this context
163
- // without additional resolve calls, so this approach has limitations
164
- }
165
- return true;
166
- });
167
-
168
- // Optionally collect ancestors at the 'to' position if different
169
- // This ensures we capture all ancestor contexts across the range
170
- if (pos.from !== pos.to) {
171
- for (let depth = resolvedToPos.depth; depth > 0; depth--) {
172
- const ancestorNode = resolvedToPos.node(depth);
173
- nodeNames.add(ancestorNode.type.name);
174
- }
175
- }
176
- return [...nodeNames];
177
- } catch {
178
- // Some callers have existing gaps where the positions are not valid,
179
- // and so when called in the current document can throw an error if out of range.
180
- //
181
- // This is a defensive check to ensure we don't throw an error in those cases.
182
- return undefined;
183
- }
184
- }
185
-
186
129
  /**
187
130
  * This function returns a list of node types that are wrapped by an annotation mark.
188
131
  *
@@ -6,7 +6,7 @@ import { hasParentNodeOfType } from '@atlaskit/editor-prosemirror/utils';
6
6
  import { hasDocAsParent } from './hasDocAsParent';
7
7
  import { isEmptyParagraph } from './isEmptyParagraph';
8
8
  export { shouldAutoLinkifyMatch } from './should-auto-linkify-tld';
9
- export { getAnnotationMarksForPos, canApplyAnnotationOnRange, containsAnyAnnotations, getAnnotationIdsFromRange, getAnnotationInlineNodeTypes, hasAnnotationMark, getRangeInlineNodeNames, getRangeAncestorNodeNames, isEmptyTextSelection, isEmptyTextSelectionRenderer } from './annotation';
9
+ export { getAnnotationMarksForPos, canApplyAnnotationOnRange, containsAnyAnnotations, getAnnotationIdsFromRange, getAnnotationInlineNodeTypes, hasAnnotationMark, getRangeInlineNodeNames, isEmptyTextSelection, isEmptyTextSelectionRenderer } from './annotation';
10
10
  export { getExtensionLozengeData } from './macro';
11
11
  export {
12
12
  /**
@@ -11,7 +11,6 @@ import { transformTextLinkCodeMarks } from '@atlaskit/adf-utils/text-link-code-t
11
11
  import { transformMediaSingleWidth } from '@atlaskit/adf-utils/transform-media-single-width';
12
12
  import { transformNestedTablesIncomingDocument } from '@atlaskit/adf-utils/transforms';
13
13
  import { Node } from '@atlaskit/editor-prosemirror/model';
14
- import { fg } from '@atlaskit/platform-feature-flags/fg';
15
14
  import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
16
15
  import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '../analytics';
17
16
  import { isNestedTablesSupported } from '../nesting/isNestedTablesSupported';
@@ -145,11 +144,9 @@ export function processRawValueWithoutValidation(schema, value, dispatchAnalytic
145
144
  if (result.isTransformed && result.transformedAdf) {
146
145
  transformedAdf = result.transformedAdf;
147
146
  }
148
- if (fg('platform_editor_panel_c1_fallback_transform')) {
149
- const panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
150
- if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
151
- transformedAdf = panelC1Result.transformedAdf;
152
- }
147
+ const panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
148
+ if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
149
+ transformedAdf = panelC1Result.transformedAdf;
153
150
  }
154
151
  if (expValEquals('platform_editor_nest_table_in_panel', 'isEnabled', true)) {
155
152
  ({
@@ -331,11 +328,9 @@ export function processRawValue(schema, value, providerFactory, sanitizePrivateC
331
328
  });
332
329
  }
333
330
  }
334
- if (fg('platform_editor_panel_c1_fallback_transform')) {
335
- const panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
336
- if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
337
- transformedAdf = panelC1Result.transformedAdf;
338
- }
331
+ const panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
332
+ if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
333
+ transformedAdf = panelC1Result.transformedAdf;
339
334
  }
340
335
 
341
336
  // Validate ADF first before converting nested-table extensions into nested tables
@@ -266,6 +266,7 @@ export var INPUT_METHOD = /*#__PURE__*/function (INPUT_METHOD) {
266
266
  INPUT_METHOD["SHORTCUT"] = "shortcut";
267
267
  INPUT_METHOD["TOOLBAR"] = "toolbar";
268
268
  INPUT_METHOD["TYPEAHEAD"] = "typeAhead";
269
+ INPUT_METHOD["MENTION_TYPEAHEAD"] = "mentionTypeahead";
269
270
  INPUT_METHOD["DATASOURCE"] = "datasource_config";
270
271
  INPUT_METHOD["TABLE_CONTEXT_MENU"] = "tableContextMenu";
271
272
  INPUT_METHOD["MOUSE"] = "mouse";
@@ -1,10 +1,6 @@
1
- import { fg } from '@atlaskit/platform-feature-flags/fg';
2
1
  import { isSingleEmoji } from '../utils/isSingleEmoji';
3
2
 
4
3
  /** Shared custom-emoji fallback without importing components or resolving providers. */
5
4
  export function getEmojiCustomFallback(fallbackText) {
6
- if (fg('platform_editor_custom_emoji_unicode_fallback')) {
7
- return isSingleEmoji(fallbackText) ? undefined : "\uFFFD";
8
- }
9
- return undefined;
5
+ return isSingleEmoji(fallbackText) ? undefined : "\uFFFD";
10
6
  }
@@ -3,6 +3,7 @@ import _createClass from "@babel/runtime/helpers/createClass";
3
3
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
4
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
5
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ import { dynamicConfigBooleanValue } from '@atlaskit/tmp-editor-statsig/dynamic-config-boolean-value';
6
7
  import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '../analytics';
7
8
  import { DEFAULT_EXPERIENCE_SAMPLE_RATE, EXPERIENCE_ABORT_REASON } from './consts';
8
9
  import { canTransition } from './experience-state';
@@ -168,7 +169,9 @@ export var Experience = /*#__PURE__*/function () {
168
169
  actionSubject: ACTION_SUBJECT.EDITOR,
169
170
  actionSubjectId: this.actionSubjectId,
170
171
  eventType: EVENT_TYPE.OPERATIONAL,
171
- attributes: attributes
172
+ attributes: dynamicConfigBooleanValue('duplicate_actionsubjectid_to_attributes') ? _objectSpread(_objectSpread({}, attributes), {}, {
173
+ actionSubjectId: this.actionSubjectId
174
+ }) : attributes
172
175
  };
173
176
  this.dispatchAnalyticsEvent(experienceSampledEvent);
174
177
  }
@@ -19,7 +19,7 @@ var NETWORK_FAILURE_REGEX = /^network failure/i;
19
19
  var RESIZE_OBSERVER_LOOP_REGEX = /ResizeObserver loop completed with undelivered notifications/;
20
20
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
21
21
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
22
- var packageVersion = "132.0.3";
22
+ var packageVersion = "133.0.0";
23
23
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
24
24
  // Remove URL as it has UGC
25
25
  // Ignored via go/ees007
@@ -1,111 +1,98 @@
1
1
  var DAM_CDN_LINK = 'https://dam-cdn.atl.orangelogic.com/CDNLink';
2
+
3
+ /**
4
+ * Keyed by `snippetKey`, which is the same for every product's copy of a GLOBAL template.
5
+ */
2
6
  var snippetPreviewImageUrlsByKey = {
3
- // Action items
4
- '019e5cd9-5ca1-7258-befd-4f50d491bb42': {
7
+ 'action-items': {
5
8
  light: "".concat(DAM_CDN_LINK, "/AT12OVLE.png"),
6
9
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJI.png")
7
10
  },
8
- // Bug report
9
- '019e5cd9-5ca1-7258-befd-1c3c59b0aa00': {
11
+ 'bug-report': {
10
12
  light: "".concat(DAM_CDN_LINK, "/AT12OVMN.png"),
11
13
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJ6.png")
12
14
  },
13
- // Campaign brief
14
- '019e5cd9-5ca1-7258-befd-398bb4e40f15': {
15
+ 'campaign-brief': {
15
16
  light: "".concat(DAM_CDN_LINK, "/AT12OVMY.png"),
16
17
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJE.png")
17
18
  },
18
- // Colorful layout
19
- '019e5cd9-5ca1-7258-befd-53b6eec19427': {
19
+ 'colourful-layout': {
20
20
  light: "".concat(DAM_CDN_LINK, "/AT12OVN6.png"),
21
21
  dark: "".concat(DAM_CDN_LINK, "/AT12OVIG.png")
22
22
  },
23
- // Colorful numbered table
24
- '019e5cd9-5ca1-7258-befd-70a282facf16': {
23
+ 'colourful-numbered-table': {
25
24
  light: "".concat(DAM_CDN_LINK, "/AT12OVN7.png"),
26
25
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJL.png")
27
26
  },
28
- // Colorful summary
29
- '019e5cd9-5ca1-7258-befd-7e200502de8e': {
27
+ 'colourful-summary': {
30
28
  light: "".concat(DAM_CDN_LINK, "/AT12OVN4.png"),
31
29
  dark: "".concat(DAM_CDN_LINK, "/AT12OVIE.png")
32
30
  },
33
- // Colorful table
34
- '019e5cd9-5ca1-7258-befd-5524d394ba0a': {
31
+ 'colourful-table': {
35
32
  light: "".concat(DAM_CDN_LINK, "/AT12OVMJ.png"),
36
33
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJM.png")
37
34
  },
38
- // Competitive snapshot
39
- '019e5cd9-5ca1-7258-befd-40d1947b7b84': {
35
+ 'competitive-snapshot': {
40
36
  light: "".concat(DAM_CDN_LINK, "/AT12OVMR.png"),
41
37
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJC.png")
42
38
  },
43
- // Criteria rubric
44
- '019e5cd9-5ca1-7258-befd-84723a493931': {
39
+ 'criteria-rubric': {
45
40
  light: "".concat(DAM_CDN_LINK, "/AT12OVMA.png"),
46
41
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJ1.png")
47
42
  },
48
- // Customer quote
49
- '019e5cd9-5ca1-7258-befd-5fcf6165870f': {
43
+ 'customer-quote': {
50
44
  light: "".concat(DAM_CDN_LINK, "/AT12OVLF.png"),
51
45
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJK.png")
52
46
  },
53
- // Decision log
54
- '019e5cd9-5ca1-7258-befd-30c6e8712ba4': {
47
+ 'decision-log': {
55
48
  light: "".concat(DAM_CDN_LINK, "/AT12OVMT.png"),
56
49
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJ9.png")
57
50
  },
58
- // Launch checklist
59
- '019e5cd9-5ca1-7258-befd-3ce1c551015e': {
51
+ 'launch-checklist': {
60
52
  light: "".concat(DAM_CDN_LINK, "/AT12OVKW.png"),
61
53
  dark: "".concat(DAM_CDN_LINK, "/AT12OVHN.png")
62
54
  },
63
- // Meeting agenda
64
- '019e5cd9-5ca1-7258-befd-47559a8d7cfc': {
55
+ 'meeting-agenda': {
65
56
  light: "".concat(DAM_CDN_LINK, "/AT12OVMU.png"),
66
57
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJD.png")
67
58
  },
68
- // Project status snapshot
69
- '019e5cd9-5ca1-7258-befd-2943939d1b79': {
59
+ 'project-status-snapshot': {
70
60
  light: "".concat(DAM_CDN_LINK, "/AT12OVMO.png"),
71
61
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJU.png")
72
62
  },
73
- // Pros and cons
74
- '019e5cd9-5ca1-7258-befd-6db9658d75f4': {
63
+ 'pros-and-cons': {
75
64
  light: "".concat(DAM_CDN_LINK, "/AT12OVN5.png"),
76
65
  dark: "".concat(DAM_CDN_LINK, "/AT12OVHY.png")
77
66
  },
78
- // Quick project update
79
- '019e5cd9-5ca1-7258-befd-820ce1acd7a0': {
67
+ 'quick-project-update': {
80
68
  light: "".concat(DAM_CDN_LINK, "/AT12OVNA.png"),
81
69
  dark: "".concat(DAM_CDN_LINK, "/AT12OVI5.png")
82
70
  },
83
- // Risks and assumptions
84
- '019e5cd9-5ca1-7258-befd-2da95ce98772': {
71
+ 'risks-and-assumptions': {
85
72
  light: "".concat(DAM_CDN_LINK, "/AT12OVMQ.png"),
86
73
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJ7.png")
87
74
  },
88
- // Roles and responsibilities matrix
89
- '019e5cd9-5ca1-7258-befd-37cd3a06776d': {
75
+ 'roles-and-responsibilities-matrix': {
90
76
  light: "".concat(DAM_CDN_LINK, "/AT12OVM8.png"),
91
77
  dark: "".concat(DAM_CDN_LINK, "/AT12OVHG.png")
92
78
  },
93
- // Run sheet
94
- '019e5cd9-5ca1-7258-befd-4a9979f87235': {
79
+ 'run-sheet': {
95
80
  light: "".concat(DAM_CDN_LINK, "/AT12OVMZ.png"),
96
81
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJB.png")
97
82
  },
98
- // Started → Now
99
- '019e5cd9-5ca1-7258-befd-74fb1585da6f': {
83
+ 'started-now': {
100
84
  light: "".concat(DAM_CDN_LINK, "/AT12OVN8.png"),
101
85
  dark: "".concat(DAM_CDN_LINK, "/AT12OVJQ.png")
102
86
  },
103
- // Weekly calendar
104
- '019e5cd9-5ca1-7258-befd-580c2c95a0a0': {
87
+ 'weekly-calendar': {
105
88
  light: "".concat(DAM_CDN_LINK, "/AT12OVN2.png"),
106
89
  dark: "".concat(DAM_CDN_LINK, "/AT12OVIJ.png")
107
90
  }
108
91
  };
92
+
93
+ /**
94
+ * Returns the preview image URLs for a GLOBAL template's `snippetKey`.
95
+ */
109
96
  export var getSnippetPreviewImageUrls = function getSnippetPreviewImageUrls(snippetKey) {
110
97
  return Object.prototype.hasOwnProperty.call(snippetPreviewImageUrlsByKey, snippetKey) ? snippetPreviewImageUrlsByKey[snippetKey] : undefined;
111
98
  };
@@ -20,7 +20,7 @@ import withAnalyticsContext from '@atlaskit/analytics-next/withAnalyticsContext'
20
20
  import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
21
21
  import Layer from '../Layer';
22
22
  var packageName = "@atlaskit/editor-common";
23
- var packageVersion = "132.0.3";
23
+ var packageVersion = "133.0.0";
24
24
  var halfFocusRing = 1;
25
25
  var dropOffset = '0, 8';
26
26
  // Ignored via go/ees005
@@ -68,6 +68,10 @@ var Mention = /*#__PURE__*/function (_PureComponent) {
68
68
  disabledTooltip: disabledTooltip,
69
69
  eventHandlers: eventHandlers,
70
70
  mentionProvider: mentionProvider,
71
+ mentionNodeData: mentionNodeDataProvider && isExperimentEnabled('platform_editor_mention_rovo') ? mentionNodeDataProvider.getMentionDataFromCache({
72
+ id: id,
73
+ userType: userType
74
+ }) : undefined,
71
75
  profilecardProvider: profilecardProvider
72
76
  }));
73
77
  });
@@ -116,62 +116,6 @@ export function getRangeInlineNodeNames(_ref) {
116
116
  }
117
117
  }
118
118
 
119
- /**
120
- * This returns a list of ancestor node names that contain the given position.
121
- */
122
- export function getRangeAncestorNodeNames(_ref2) {
123
- var doc = _ref2.doc,
124
- pos = _ref2.pos;
125
- if (!fg('cc_comments_log_draft_annotation_ancestor_nodes')) {
126
- return undefined;
127
- }
128
- var nodeNames = new Set();
129
- try {
130
- // For a range, we can get ancestors at both from and to positions
131
- // or just use the from position if you want ancestors at the start
132
- var resolvedFromPos = doc.resolve(pos.from);
133
- var resolvedToPos = doc.resolve(pos.to);
134
-
135
- // Collect ancestors at the 'from' position
136
- for (var depth = resolvedFromPos.depth; depth > 0; depth--) {
137
- var ancestorNode = resolvedFromPos.node(depth);
138
- nodeNames.add(ancestorNode.type.name);
139
- }
140
-
141
- // Use nodesBetween to collect parent types without additional resolve() calls
142
- // This isn't as precise as calling resolve() on each parent, but it's a lot faster
143
- // and should hopefully provide a good approximation of the ancestor nodes
144
- var seenParents = new Set();
145
- doc.nodesBetween(pos.from, pos.to, function (_node, _nodePos, parent) {
146
- // Collect parent chain using the parent parameter
147
- var currentParent = parent;
148
- if (!!currentParent && !seenParents.has(currentParent)) {
149
- seenParents.add(currentParent);
150
- nodeNames.add(currentParent.type.name);
151
- // Note: We can't easily get the parent's parent from this context
152
- // without additional resolve calls, so this approach has limitations
153
- }
154
- return true;
155
- });
156
-
157
- // Optionally collect ancestors at the 'to' position if different
158
- // This ensures we capture all ancestor contexts across the range
159
- if (pos.from !== pos.to) {
160
- for (var _depth = resolvedToPos.depth; _depth > 0; _depth--) {
161
- var _ancestorNode = resolvedToPos.node(_depth);
162
- nodeNames.add(_ancestorNode.type.name);
163
- }
164
- }
165
- return _toConsumableArray(nodeNames);
166
- } catch (_unused2) {
167
- // Some callers have existing gaps where the positions are not valid,
168
- // and so when called in the current document can throw an error if out of range.
169
- //
170
- // This is a defensive check to ensure we don't throw an error in those cases.
171
- return undefined;
172
- }
173
- }
174
-
175
119
  /**
176
120
  * This function returns a list of node types that are wrapped by an annotation mark.
177
121
  *
@@ -6,7 +6,7 @@ import { hasParentNodeOfType } from '@atlaskit/editor-prosemirror/utils';
6
6
  import { hasDocAsParent } from './hasDocAsParent';
7
7
  import { isEmptyParagraph } from './isEmptyParagraph';
8
8
  export { shouldAutoLinkifyMatch } from './should-auto-linkify-tld';
9
- export { getAnnotationMarksForPos, canApplyAnnotationOnRange, containsAnyAnnotations, getAnnotationIdsFromRange, getAnnotationInlineNodeTypes, hasAnnotationMark, getRangeInlineNodeNames, getRangeAncestorNodeNames, isEmptyTextSelection, isEmptyTextSelectionRenderer } from './annotation';
9
+ export { getAnnotationMarksForPos, canApplyAnnotationOnRange, containsAnyAnnotations, getAnnotationIdsFromRange, getAnnotationInlineNodeTypes, hasAnnotationMark, getRangeInlineNodeNames, isEmptyTextSelection, isEmptyTextSelectionRenderer } from './annotation';
10
10
  export { getExtensionLozengeData } from './macro';
11
11
  export {
12
12
  /**
@@ -11,7 +11,6 @@ import { transformTextLinkCodeMarks } from '@atlaskit/adf-utils/text-link-code-t
11
11
  import { transformMediaSingleWidth } from '@atlaskit/adf-utils/transform-media-single-width';
12
12
  import { transformNestedTablesIncomingDocument } from '@atlaskit/adf-utils/transforms';
13
13
  import { Node } from '@atlaskit/editor-prosemirror/model';
14
- import { fg } from '@atlaskit/platform-feature-flags/fg';
15
14
  import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
16
15
  import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '../analytics';
17
16
  import { isNestedTablesSupported } from '../nesting/isNestedTablesSupported';
@@ -144,11 +143,9 @@ export function processRawValueWithoutValidation(schema, value, dispatchAnalytic
144
143
  if (result.isTransformed && result.transformedAdf) {
145
144
  transformedAdf = result.transformedAdf;
146
145
  }
147
- if (fg('platform_editor_panel_c1_fallback_transform')) {
148
- var panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
149
- if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
150
- transformedAdf = panelC1Result.transformedAdf;
151
- }
146
+ var panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
147
+ if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
148
+ transformedAdf = panelC1Result.transformedAdf;
152
149
  }
153
150
  if (expValEquals('platform_editor_nest_table_in_panel', 'isEnabled', true)) {
154
151
  var _transformContainerNo2 = transformContainerNodesWithAnalytics(transformedAdf, schema, dispatchAnalyticsEvent);
@@ -324,11 +321,9 @@ export function processRawValue(schema, value, providerFactory, sanitizePrivateC
324
321
  });
325
322
  }
326
323
  }
327
- if (fg('platform_editor_panel_c1_fallback_transform')) {
328
- var panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
329
- if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
330
- transformedAdf = panelC1Result.transformedAdf;
331
- }
324
+ var panelC1Result = runPanelC1FallbackTransform(schema, transformedAdf);
325
+ if (panelC1Result.isTransformed && panelC1Result.transformedAdf) {
326
+ transformedAdf = panelC1Result.transformedAdf;
332
327
  }
333
328
 
334
329
  // Validate ADF first before converting nested-table extensions into nested tables
@@ -258,6 +258,7 @@ export declare enum INPUT_METHOD {
258
258
  SHORTCUT = "shortcut",
259
259
  TOOLBAR = "toolbar",
260
260
  TYPEAHEAD = "typeAhead",
261
+ MENTION_TYPEAHEAD = "mentionTypeahead",
261
262
  DATASOURCE = "datasource_config",
262
263
  TABLE_CONTEXT_MENU = "tableContextMenu",
263
264
  MOUSE = "mouse",
@@ -18,8 +18,6 @@ type AnnotationByMatches = {
18
18
  pos?: number;
19
19
  };
20
20
  export type ActionResult = {
21
- /** The list of types of all nodes, which wrap the annotation. */
22
- ancestorNodeTypes?: string[];
23
21
  doc: JSONDocNode;
24
22
  /** The list of types of all inline nodes, which were wrapped by annotation. */
25
23
  inlineNodeTypes?: string[];
@@ -2,5 +2,8 @@ type SnippetPreviewImageUrls = {
2
2
  dark: string;
3
3
  light: string;
4
4
  };
5
+ /**
6
+ * Returns the preview image URLs for a GLOBAL template's `snippetKey`.
7
+ */
5
8
  export declare const getSnippetPreviewImageUrls: (snippetKey: string) => SnippetPreviewImageUrls | undefined;
6
9
  export {};
@@ -16,8 +16,6 @@ type ActionResult = {
16
16
  step: RemoveMarkStep | RemoveNodeMarkStep;
17
17
  } | false;
18
18
  export type AnnotationActionResult = ({
19
- /** The list of types of all nodes, which wrap the annotation. */
20
- ancestorNodeTypes?: string[];
21
19
  doc: JSONDocNode;
22
20
  /** The list of types of all inline nodes, which were wrapped by annotation. */
23
21
  inlineNodeTypes?: string[];
@@ -18,16 +18,6 @@ export declare function getRangeInlineNodeNames({ doc, pos, }: {
18
18
  to: number;
19
19
  };
20
20
  }): string[] | undefined;
21
- /**
22
- * This returns a list of ancestor node names that contain the given position.
23
- */
24
- export declare function getRangeAncestorNodeNames({ doc, pos, }: {
25
- doc: PMNode;
26
- pos: {
27
- from: number;
28
- to: number;
29
- };
30
- }): string[] | undefined;
31
21
  /**
32
22
  * This function returns a list of node types that are wrapped by an annotation mark.
33
23
  *
@@ -2,7 +2,7 @@ import type { Node as PMNode, ResolvedPos, Schema } from '@atlaskit/editor-prose
2
2
  import type { EditorState, Selection } from '@atlaskit/editor-prosemirror/state';
3
3
  import type { ContentNodeWithPos } from '@atlaskit/editor-prosemirror/utils';
4
4
  export { shouldAutoLinkifyMatch } from './should-auto-linkify-tld';
5
- export { getAnnotationMarksForPos, canApplyAnnotationOnRange, containsAnyAnnotations, getAnnotationIdsFromRange, getAnnotationInlineNodeTypes, hasAnnotationMark, getRangeInlineNodeNames, getRangeAncestorNodeNames, isEmptyTextSelection, isEmptyTextSelectionRenderer, } from './annotation';
5
+ export { getAnnotationMarksForPos, canApplyAnnotationOnRange, containsAnyAnnotations, getAnnotationIdsFromRange, getAnnotationInlineNodeTypes, hasAnnotationMark, getRangeInlineNodeNames, isEmptyTextSelection, isEmptyTextSelectionRenderer, } from './annotation';
6
6
  export { getExtensionLozengeData } from './macro';
7
7
  export type { Params } from './macro';
8
8
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-common",
3
- "version": "132.0.4",
3
+ "version": "133.0.1",
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/"
@@ -37,7 +37,7 @@
37
37
  "@atlaskit/analytics-next": "^12.6.0",
38
38
  "@atlaskit/atlassian-context": "^2.0.0",
39
39
  "@atlaskit/browser-apis": "^1.2.0",
40
- "@atlaskit/button": "^25.4.0",
40
+ "@atlaskit/button": "^25.5.0",
41
41
  "@atlaskit/codemod-utils": "^5.1.0",
42
42
  "@atlaskit/css": "^1.1.0",
43
43
  "@atlaskit/custom-steps": "^1.1.0",
@@ -74,7 +74,7 @@
74
74
  "@atlaskit/platform-feature-flags-react": "^1.2.0",
75
75
  "@atlaskit/popper": "^9.4.0",
76
76
  "@atlaskit/primitives": "^22.6.0",
77
- "@atlaskit/profilecard": "^27.2.0",
77
+ "@atlaskit/profilecard": "^27.3.0",
78
78
  "@atlaskit/prosemirror-history": "^1.3.0",
79
79
  "@atlaskit/react-compiler-gating": "^0.2.0",
80
80
  "@atlaskit/react-ufo": "^8.1.0",
@@ -209,9 +209,6 @@
209
209
  "platform_editor_ssr_reuse_requires_content": {
210
210
  "type": "boolean"
211
211
  },
212
- "cc_comments_log_draft_annotation_ancestor_nodes": {
213
- "type": "boolean"
214
- },
215
212
  "jfp_a11y_fix_create_issue_no_results_link_focus": {
216
213
  "type": "boolean"
217
214
  },
@@ -227,12 +224,6 @@
227
224
  "platform_editor_ai_selection_local_ids": {
228
225
  "type": "boolean"
229
226
  },
230
- "platform_editor_panel_c1_fallback_transform": {
231
- "type": "boolean"
232
- },
233
- "platform_editor_custom_emoji_unicode_fallback": {
234
- "type": "boolean"
235
- },
236
227
  "platform_editor_use_vanilla_components_patch_2": {
237
228
  "type": "boolean"
238
229
  }