@atlaskit/editor-common 128.0.0 → 128.1.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.
Files changed (30) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/cjs/extensibility/GeneratedContentReveal.compiled.css +5 -5
  3. package/dist/cjs/extensibility/GeneratedContentReveal.js +3 -3
  4. package/dist/cjs/messages/syncBlock.js +5 -0
  5. package/dist/cjs/monitoring/error.js +1 -1
  6. package/dist/cjs/quick-insert/CompactQuickInsertMenuItem.js +6 -2
  7. package/dist/cjs/quick-insert/QuickInsertHoverPreview.js +26 -7
  8. package/dist/cjs/quick-insert/rank.js +1 -1
  9. package/dist/cjs/ui/DropList/index.js +1 -1
  10. package/dist/es2019/extensibility/GeneratedContentReveal.compiled.css +5 -5
  11. package/dist/es2019/extensibility/GeneratedContentReveal.js +3 -3
  12. package/dist/es2019/messages/syncBlock.js +5 -0
  13. package/dist/es2019/monitoring/error.js +1 -1
  14. package/dist/es2019/quick-insert/CompactQuickInsertMenuItem.js +6 -2
  15. package/dist/es2019/quick-insert/QuickInsertHoverPreview.js +28 -7
  16. package/dist/es2019/quick-insert/rank.js +4 -4
  17. package/dist/es2019/ui/DropList/index.js +1 -1
  18. package/dist/esm/extensibility/GeneratedContentReveal.compiled.css +5 -5
  19. package/dist/esm/extensibility/GeneratedContentReveal.js +3 -3
  20. package/dist/esm/messages/syncBlock.js +5 -0
  21. package/dist/esm/monitoring/error.js +1 -1
  22. package/dist/esm/quick-insert/CompactQuickInsertMenuItem.js +6 -2
  23. package/dist/esm/quick-insert/QuickInsertHoverPreview.js +26 -7
  24. package/dist/esm/quick-insert/rank.js +1 -1
  25. package/dist/esm/ui/DropList/index.js +1 -1
  26. package/dist/types/messages/syncBlock.d.ts +5 -0
  27. package/dist/types/quick-insert/QuickInsertContext.d.ts +3 -0
  28. package/dist/types/quick-insert/QuickInsertHoverPreview.d.ts +2 -1
  29. package/dist/types/types/feature-flags.d.ts +10 -0
  30. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,39 @@
1
1
  # @atlaskit/editor-common
2
2
 
3
+ ## 128.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`a5e4fa298e7ad`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/a5e4fa298e7ad) -
8
+ [EDITOR-8408] Add the syncedLocationDropdownRestrictedContent message for synced locations the
9
+ viewer cannot access.
10
+ - [`b31a1d76b3076`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/b31a1d76b3076) -
11
+ Restore the optional `FeatureFlags.lcmPreventRenderTracking` field to preserve the legacy content
12
+ macro opt-out when the `platform_editor_enable_rerender_tracking` experiment enables tracking.
13
+
14
+ ### Patch Changes
15
+
16
+ - [`2f527121e0516`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/2f527121e0516) -
17
+ Require deliberate pointer or keyboard activation before displaying registered slash-command
18
+ previews under `platform_editor_slash_command`. Avoid redundant menu renders when the pointer
19
+ moves within the active preview row.
20
+ - [`2f527121e0516`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/2f527121e0516) -
21
+ Keep active slash-command previews positioned with custom popup hosts such as Whiteboards.
22
+ - Updated dependencies
23
+
24
+ ## 128.0.1
25
+
26
+ ### Patch Changes
27
+
28
+ - [`668acb672d91e`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/668acb672d91e) -
29
+ The generated content reveal opens in 150ms and the embed's fade, also 150ms, follows it after the
30
+ same 150ms, so the whole entrance takes 300ms.
31
+ - [`5a55f9e71b685`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/5a55f9e71b685) -
32
+ Reorder the Create category in the editor slash command menu: Jira work item, Loom video,
33
+ Confluence page, Database, Whiteboard, Diagram, Flowchart, Brainstorm session, Retrospective,
34
+ Roadmap. Applies when the platform_editor_slash_command experiment is enabled.
35
+ - Updated dependencies
36
+
3
37
  ## 128.0.0
4
38
 
5
39
  ### Major Changes
@@ -1,7 +1,7 @@
1
1
  ._10i01bym [data-native-embed-card-wrapper=true]{animation-name:var(--ds-keyframe-fade-in,FadeIn0to100)}
2
2
  ._10t9kb7n:has(.extension-label:hover) .extension-edit-toggle-container{opacity:1}
3
3
  ._114yglyw [data-testid$="--loading-overlay"]{display:none}
4
- ._147ai9qs [data-native-embed-card-wrapper=true]{animation-duration:var(--ds-duration-medium,.2s)}
4
+ ._147a1ign [data-native-embed-card-wrapper=true]{animation-duration:var(--ds-duration-short,.15s)}
5
5
  ._15k3glyw:has(.extension-edit-toggle-container:hover) .extension-label{box-shadow:none}
6
6
  ._17sh1wug:has(.extension-edit-toggle-container:hover) .extension-label.always-hide-label{cursor:auto}
7
7
  ._17w9indk iframe:not([data-native-embed-card-wrapper=true] iframe){animation-timing-function:var(--ds-easing-out-practical,cubic-bezier(.4,1,.6,1))}
@@ -11,10 +11,10 @@
11
11
  ._1fdfidpf .extension-label:hover.always-hide-label{opacity:0}
12
12
  ._1ghxysee:has(.extension-container:hover) .extension-label{background-color:var(--ds-background-accent-gray-subtlest,#f0f1f2)}
13
13
  ._1i8c1j9a:has(.extension-container:hover) .extension-label.with-bodied-macro-live-page-styles{background-color:var(--ds-background-input,#fff)}
14
- ._1jbo15uc iframe:not([data-native-embed-card-wrapper=true] iframe){animation-delay:var(--ds-duration-xlong,.4s)}
14
+ ._1jbo1ign iframe:not([data-native-embed-card-wrapper=true] iframe){animation-delay:var(--ds-duration-short,.15s)}
15
15
  ._1kr5kb7n:has(.extension-container:hover) .extension-edit-toggle-container{opacity:1}
16
16
  ._1nuetlke:has(.extension-container:hover) .extension-label{cursor:pointer}
17
- ._1p7l15uc [data-native-embed-card-wrapper=true]{animation-delay:var(--ds-duration-xlong,.4s)}
17
+ ._1p7l1ign [data-native-embed-card-wrapper=true]{animation-delay:var(--ds-duration-short,.15s)}
18
18
  ._1pfgidpf:has(.extension-container:hover) .extension-label.always-hide-label{opacity:0}
19
19
  ._1pglindk{animation-timing-function:var(--ds-easing-out-practical,cubic-bezier(.4,1,.6,1))}
20
20
  ._1qac1nu9:has(.extension-container:hover) .extension-icon{display:inline}
@@ -26,7 +26,7 @@
26
26
  ._2z44kb7n:has(.extension-edit-toggle-container:hover) .extension-label{opacity:1}
27
27
  ._4t3iidpf{height:0}
28
28
  ._54r11nu9:has(.extension-edit-toggle-container:hover) .extension-icon{display:inline}
29
- ._5sag15uc{animation-duration:var(--ds-duration-xlong,.4s)}
29
+ ._5sag1ign{animation-duration:var(--ds-duration-short,.15s)}
30
30
  ._9sz11bym iframe:not([data-native-embed-card-wrapper=true] iframe){animation-name:var(--ds-keyframe-fade-in,FadeIn0to100)}
31
31
  ._bcikkb7n:has(.extension-container:hover) .extension-label{opacity:1}
32
32
  ._d1oeglyw:has(.extension-container:hover) .extension-label{box-shadow:none}
@@ -37,7 +37,7 @@
37
37
  ._kqswh2mm{position:relative}
38
38
  ._ks721tsb:has(.extension-container:hover) .extension-label.with-bodied-macro-live-page-styles{box-shadow:0 0 0 1px var(--ds-border,#0b120e24)}
39
39
  ._lbjpindk [data-native-embed-card-wrapper=true]{animation-timing-function:var(--ds-easing-out-practical,cubic-bezier(.4,1,.6,1))}
40
- ._lwlpi9qs iframe:not([data-native-embed-card-wrapper=true] iframe){animation-duration:var(--ds-duration-medium,.2s)}
40
+ ._lwlp1ign iframe:not([data-native-embed-card-wrapper=true] iframe){animation-duration:var(--ds-duration-short,.15s)}
41
41
  ._mi5m1wug .extension-label:hover.always-hide-label{cursor:auto}
42
42
  ._okd3ysee:has(.extension-edit-toggle-container:hover) .extension-label{background-color:var(--ds-background-accent-gray-subtlest,#f0f1f2)}
43
43
  ._pjh31hrf [data-native-embed-card-wrapper=true]{animation-fill-mode:both}
@@ -19,8 +19,8 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
19
19
  * 1. `collapsed` — clipped to zero height and `inert`. The embed loads behind it, full size but
20
20
  * unseen, with its own loading overlay hidden.
21
21
  * 2. The extension reports its content ready through `contentReady`.
22
- * 3. `revealing` — the node animates open to its content height (400ms).
23
- * 4. The embed fades in (200ms), delayed so it follows the opening instead of overlapping it.
22
+ * 3. `revealing` — the node animates open to its content height (150ms).
23
+ * 4. The embed fades in (150ms), delayed so it follows the opening instead of overlapping it.
24
24
  * 5. `open` — on `animationend`, when the content first becomes visible, `inert` is dropped.
25
25
  *
26
26
  * Failure paths: never settles → `READY_TIMEOUT_MS` opens it and the embed's overlay reappears;
@@ -123,7 +123,7 @@ var GeneratedContentReveal = exports.GeneratedContentReveal = function Generated
123
123
  ref: setWrapperElement
124
124
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- the block controls and the SSR cleanup find the wrapper by `span.relative`
125
125
  ,
126
- className: (0, _runtime.ax)(["_1tr2ynbm _xajsynbm _1tmrkb7n _bcikkb7n _2z44kb7n _dmn9ysee _1ghxysee _okd3ysee _1er3glyw _d1oeglyw _15k3glyw _1ql7tlke _1nuetlke _decvtlke _1fdfidpf _1pfgidpf _y7o7idpf _mi5m1wug _1si41wug _17sh1wug _x3ro1j9a _1i8c1j9a _1a2e1j9a _26lx1tsb _ks721tsb _jl0d1tsb _1qac1nu9 _54r11nu9 _1vs61nu9 _10pdkb7n _1kr5kb7n _10t9kb7n", showMacroInteractionDesignUpdates && "_kqswh2mm", state !== 'open' && "_1reo15vq _18m915vq _1e0c1ule", state === 'collapsed' && "_4t3iidpf _114yglyw", state === 'revealing' && "", state === 'revealing' && "_tw1z1t97 _j7hq180b _5sag15uc _1pglindk _2hwzru3m", state !== 'collapsed' && "_10i01bym _9sz11bym _147ai9qs _lwlpi9qs _lbjpindk _17w9indk _1p7l15uc _1jbo15uc _pjh31hrf _gp9p1hrf _dxfxru3m _log5ru3m _1pz3ru3m _9hrrru3m", showMacroInteractionDesignUpdates ? 'relative' : undefined]),
126
+ className: (0, _runtime.ax)(["_1tr2ynbm _xajsynbm _1tmrkb7n _bcikkb7n _2z44kb7n _dmn9ysee _1ghxysee _okd3ysee _1er3glyw _d1oeglyw _15k3glyw _1ql7tlke _1nuetlke _decvtlke _1fdfidpf _1pfgidpf _y7o7idpf _mi5m1wug _1si41wug _17sh1wug _x3ro1j9a _1i8c1j9a _1a2e1j9a _26lx1tsb _ks721tsb _jl0d1tsb _1qac1nu9 _54r11nu9 _1vs61nu9 _10pdkb7n _1kr5kb7n _10t9kb7n", showMacroInteractionDesignUpdates && "_kqswh2mm", state !== 'open' && "_1reo15vq _18m915vq _1e0c1ule", state === 'collapsed' && "_4t3iidpf _114yglyw", state === 'revealing' && "", state === 'revealing' && "_tw1z1t97 _j7hq180b _5sag1ign _1pglindk _2hwzru3m", state !== 'collapsed' && "_10i01bym _9sz11bym _147a1ign _lwlp1ign _lbjpindk _17w9indk _1p7l1ign _1jbo1ign _pjh31hrf _gp9p1hrf _dxfxru3m _log5ru3m _1pz3ru3m _9hrrru3m", showMacroInteractionDesignUpdates ? 'relative' : undefined]),
127
127
  onAnimationEnd: onAnimationEnd
128
128
  }, children));
129
129
  };
@@ -426,6 +426,11 @@ var syncBlockMessages = exports.syncBlockMessages = (0, _reactIntl.defineMessage
426
426
  defaultMessage: 'Request access',
427
427
  description: 'Label shown in the synced location dropdown option when the sync block is not accessible to the user'
428
428
  },
429
+ syncedLocationDropdownRestrictedContent: {
430
+ id: 'fabric.editor.syncedLocationDropdownRestrictedContent',
431
+ defaultMessage: 'Restricted content',
432
+ description: 'Title shown in the synced location dropdown in place of a page or work item the user does not have permission to view'
433
+ },
429
434
  syncedLocationDropdownUntitledPage: {
430
435
  id: 'fabric.editor.syncedLocationDropdownUntitledPage',
431
436
  defaultMessage: 'Untitled',
@@ -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 = "127.2.0";
30
+ var packageVersion = "128.0.1";
31
31
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
32
32
  // Remove URL as it has UGC
33
33
  // Ignored via go/ees007
@@ -93,12 +93,15 @@ var CompactQuickInsertMenuItem = exports.CompactQuickInsertMenuItem = function C
93
93
  shouldWrapIcon = _ref$shouldWrapIcon === void 0 ? true : _ref$shouldWrapIcon,
94
94
  title = _ref.title;
95
95
  var _useQuickInsertContex = (0, _useQuickInsertContext.useQuickInsertContext)(),
96
- item = _useQuickInsertContex.item;
96
+ item = _useQuickInsertContex.item,
97
+ popupsMountPoint = _useQuickInsertContex.popupsMountPoint;
97
98
  var _ref2 = item !== null && item !== void 0 ? item : {
98
99
  id: undefined,
100
+ isPreviewActive: undefined,
99
101
  isSelected: false
100
102
  },
101
103
  id = _ref2.id,
104
+ isPreviewActive = _ref2.isPreviewActive,
102
105
  isSelected = _ref2.isSelected;
103
106
  var resolvedDescription = description !== null && description !== void 0 ? description : item === null || item === void 0 ? void 0 : item.description;
104
107
  var previewId = (0, _react.useId)();
@@ -112,7 +115,7 @@ var CompactQuickInsertMenuItem = exports.CompactQuickInsertMenuItem = function C
112
115
  image: previewImageUrls
113
116
  } : {};
114
117
  }, [preview, previewImageUrls]);
115
- var shouldRenderPreview = shouldShowPreview && isSelected && !isDisabled;
118
+ var shouldRenderPreview = shouldShowPreview && (isPreviewActive !== null && isPreviewActive !== void 0 ? isPreviewActive : isSelected) && !isDisabled;
116
119
  var hasAccessiblePreview = Boolean(resolvedDescription || (resolvedPreview === null || resolvedPreview === void 0 ? void 0 : resolvedPreview.attribution));
117
120
  var previewAttributionName = (_resolvedPreview$attr = resolvedPreview.attribution) === null || _resolvedPreview$attr === void 0 ? void 0 : _resolvedPreview$attr.name;
118
121
  var previewAttributionKey = typeof previewAttributionName === 'string' ? previewAttributionName : previewAttributionName === null || previewAttributionName === void 0 ? void 0 : previewAttributionName.id;
@@ -143,6 +146,7 @@ var CompactQuickInsertMenuItem = exports.CompactQuickInsertMenuItem = function C
143
146
  id: previewId,
144
147
  description: resolvedDescription,
145
148
  preview: resolvedPreview,
149
+ popupsMountPoint: popupsMountPoint,
146
150
  referenceElement: referenceElement,
147
151
  title: title
148
152
  }));
@@ -13,6 +13,7 @@ var React = _react;
13
13
  var _runtime = require("@compiled/react/runtime");
14
14
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
15
  var _reactDom = require("react-dom");
16
+ var _bindEventListener = require("bind-event-listener");
16
17
  var _reactIntl = require("react-intl");
17
18
  var _reactPopper = require("@atlaskit/popper/react-popper");
18
19
  var _text = require("@atlaskit/primitives/compiled/text");
@@ -63,16 +64,18 @@ var QuickInsertHoverPreview = exports.QuickInsertHoverPreview = function QuickIn
63
64
  var description = _ref.description,
64
65
  id = _ref.id,
65
66
  preview = _ref.preview,
67
+ popupsMountPoint = _ref.popupsMountPoint,
66
68
  referenceElement = _ref.referenceElement,
67
69
  title = _ref.title;
68
70
  var _useThemeObserver = (0, _useThemeObserver2.useThemeObserver)(),
69
71
  colorMode = _useThemeObserver.colorMode;
70
72
  var imageUrl = preview.image ? colorMode === 'dark' && preview.image.dark ? preview.image.dark : preview.image.light : undefined;
71
73
  var hasAccessibleContent = Boolean(description || preview.attribution);
74
+ var portalTarget = popupsMountPoint !== null && popupsMountPoint !== void 0 ? popupsMountPoint : referenceElement.ownerDocument.body;
72
75
  return /*#__PURE__*/(0, _reactDom.createPortal)( /*#__PURE__*/React.createElement(_reactPopper.Popper, {
73
76
  placement: "right-start",
74
77
  referenceElement: referenceElement,
75
- strategy: "fixed",
78
+ strategy: popupsMountPoint ? 'absolute' : 'fixed',
76
79
  modifiers: PREVIEW_MODIFIERS
77
80
  }, function (_ref2) {
78
81
  var ref = _ref2.ref,
@@ -87,11 +90,12 @@ var QuickInsertHoverPreview = exports.QuickInsertHoverPreview = function QuickIn
87
90
  id: hasAccessibleContent ? id : undefined,
88
91
  imageUrl: imageUrl,
89
92
  preview: preview,
93
+ popupsMountPoint: popupsMountPoint,
90
94
  referenceElement: referenceElement,
91
95
  title: title,
92
96
  update: update
93
97
  }));
94
- }), referenceElement.ownerDocument.body);
98
+ }), portalTarget);
95
99
  };
96
100
  var QuickInsertPreviewPanel = function QuickInsertPreviewPanel(_ref3) {
97
101
  var _preview$attribution, _preview$attribution2;
@@ -99,6 +103,7 @@ var QuickInsertPreviewPanel = function QuickInsertPreviewPanel(_ref3) {
99
103
  id = _ref3.id,
100
104
  imageUrl = _ref3.imageUrl,
101
105
  preview = _ref3.preview,
106
+ popupsMountPoint = _ref3.popupsMountPoint,
102
107
  referenceElement = _ref3.referenceElement,
103
108
  title = _ref3.title,
104
109
  update = _ref3.update;
@@ -112,20 +117,34 @@ var QuickInsertPreviewPanel = function QuickInsertPreviewPanel(_ref3) {
112
117
  var attributionName = (_preview$attribution2 = preview.attribution) === null || _preview$attribution2 === void 0 ? void 0 : _preview$attribution2.name;
113
118
  var formattedAttributionName = typeof attributionName === 'string' ? attributionName : attributionName ? formatMessage(attributionName) : '';
114
119
  (0, _react.useLayoutEffect)(function () {
115
- var _referenceElement$own;
120
+ var _ownerDocument$defaul;
116
121
  void update();
117
- var ResizeObserverConstructor = (_referenceElement$own = referenceElement.ownerDocument.defaultView) === null || _referenceElement$own === void 0 ? void 0 : _referenceElement$own.ResizeObserver;
122
+ var ownerDocument = referenceElement.ownerDocument;
123
+ var onScroll = function onScroll() {
124
+ return void update();
125
+ };
126
+ var unbindScrollListener = (0, _bindEventListener.bind)(ownerDocument, {
127
+ type: 'scroll',
128
+ listener: onScroll,
129
+ options: true
130
+ });
131
+ var ResizeObserverConstructor = (_ownerDocument$defaul = ownerDocument.defaultView) === null || _ownerDocument$defaul === void 0 ? void 0 : _ownerDocument$defaul.ResizeObserver;
118
132
  if (!panelElement || !ResizeObserverConstructor) {
119
- return;
133
+ return unbindScrollListener;
120
134
  }
121
135
  var observer = new ResizeObserverConstructor(function () {
122
136
  return void update();
123
137
  });
124
138
  observer.observe(panelElement);
139
+ observer.observe(referenceElement);
140
+ if (popupsMountPoint) {
141
+ observer.observe(popupsMountPoint);
142
+ }
125
143
  return function () {
126
- return observer.disconnect();
144
+ unbindScrollListener();
145
+ observer.disconnect();
127
146
  };
128
- }, [panelElement, referenceElement, update]);
147
+ }, [panelElement, popupsMountPoint, referenceElement, update]);
129
148
  return /*#__PURE__*/React.createElement("div", {
130
149
  ref: setPanelElement,
131
150
  id: id,
@@ -12,7 +12,7 @@ var _STRUCTURE_SECTION_RA;
12
12
  var QUICK_INSERT_MENU_RANK = exports.QUICK_INSERT_MENU_RANK = (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, _keys.RECOMMENDED_SECTION.key, 0), _keys.STRUCTURE_SECTION.key, 1), _keys.MEDIA_SECTION.key, 2), _keys.CREATE_SECTION.key, 3), _keys.EMBED_SECTION.key, 4), _keys.TEXT_FORMATTING_SECTION.key, 5), _keys.ROVO_SECTION.key, 6), _keys.DATA_AND_CHARTS_SECTION.key, 7), _keys.BLOCK_TEMPLATES_SECTION.key, 8), _keys.OTHER_SECTION.key, 9);
13
13
  var STRUCTURE_SECTION_RANK = exports.STRUCTURE_SECTION_RANK = (_STRUCTURE_SECTION_RA = {}, (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)(_STRUCTURE_SECTION_RA, _keys.ACTION_MENU_ITEM.key, 100), _keys.TABLE_MENU_ITEM.key, 200), _keys.STATUS_MENU_ITEM.key, 300), _keys.DATE_MENU_ITEM.key, 400), _keys.MENTION_MENU_ITEM.key, 500), _keys.EXPAND_MENU_ITEM.key, 700), _keys.CODE_BLOCK_MENU_ITEM.key, 800), _keys.INFO_PANEL_MENU_ITEM.key, 900), _keys.NOTE_PANEL_MENU_ITEM.key, 1000), _keys.SUCCESS_PANEL_MENU_ITEM.key, 1100), (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)(_STRUCTURE_SECTION_RA, _keys.WARNING_PANEL_MENU_ITEM.key, 1200), _keys.ERROR_PANEL_MENU_ITEM.key, 1300), _keys.CUSTOM_PANEL_MENU_ITEM.key, 1400), _keys.TWO_COLUMNS_LAYOUT_MENU_ITEM.key, 1500), _keys.THREE_COLUMNS_LAYOUT_MENU_ITEM.key, 1600), _keys.FOUR_COLUMNS_LAYOUT_MENU_ITEM.key, 1700), _keys.FIVE_COLUMNS_LAYOUT_MENU_ITEM.key, 1800), _keys.SYNCED_BLOCK_MENU_ITEM.key, 2300), _keys.RULE_MENU_ITEM.key, 2400), _keys.DECISION_MENU_ITEM.key, 2800));
14
14
  var MEDIA_SECTION_RANK = exports.MEDIA_SECTION_RANK = (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, _keys.MEDIA_INSERT_MENU_ITEM.key, 100), _keys.HYPERLINK_MENU_ITEM.key, 200), _keys.EMOJI_MENU_ITEM.key, 300), _keys.AI_IMAGE_GENERATION_MENU_ITEM.key, 1600);
15
- var CREATE_SECTION_RANK = exports.CREATE_SECTION_RANK = (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, _keys.JIRA_ISSUE_MENU_ITEM.key, 100), _keys.CONFLUENCE_PAGE_MENU_ITEM.key, 200), _keys.WHITEBOARD_MENU_ITEM.key, 500), _keys.DIAGRAM_MENU_ITEM.key, 600), _keys.FLOWCHART_MENU_ITEM.key, 700), _keys.BRAINSTORMING_MENU_ITEM.key, 800), _keys.RETROSPECTIVE_MENU_ITEM.key, 900), _keys.ROADMAP_MENU_ITEM.key, 1000), _keys.DATABASE_MENU_ITEM.key, 1100), _keys.LOOM_MENU_ITEM.key, 1200);
15
+ var CREATE_SECTION_RANK = exports.CREATE_SECTION_RANK = (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, _keys.JIRA_ISSUE_MENU_ITEM.key, 100), _keys.LOOM_MENU_ITEM.key, 200), _keys.CONFLUENCE_PAGE_MENU_ITEM.key, 300), _keys.DATABASE_MENU_ITEM.key, 400), _keys.WHITEBOARD_MENU_ITEM.key, 500), _keys.DIAGRAM_MENU_ITEM.key, 600), _keys.FLOWCHART_MENU_ITEM.key, 700), _keys.BRAINSTORMING_MENU_ITEM.key, 800), _keys.RETROSPECTIVE_MENU_ITEM.key, 900), _keys.ROADMAP_MENU_ITEM.key, 1000);
16
16
  var TEXT_FORMATTING_SECTION_RANK = exports.TEXT_FORMATTING_SECTION_RANK = (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, _keys.UNORDERED_LIST_MENU_ITEM.key, 100), _keys.ORDERED_LIST_MENU_ITEM.key, 200), _keys.HEADING_1_MENU_ITEM.key, 300), _keys.HEADING_2_MENU_ITEM.key, 400), _keys.HEADING_3_MENU_ITEM.key, 500), _keys.HEADING_4_MENU_ITEM.key, 600), _keys.HEADING_5_MENU_ITEM.key, 700), _keys.HEADING_6_MENU_ITEM.key, 800), _keys.BLOCKQUOTE_MENU_ITEM.key, 900), _keys.PLACEHOLDER_TEXT_MENU_ITEM.key, 1000);
17
17
  var ROVO_SECTION_RANK = exports.ROVO_SECTION_RANK = (0, _defineProperty2.default)({}, _keys.ASK_ROVO_MENU_ITEM.key, 100);
18
18
  var DATA_AND_CHARTS_SECTION_RANK = exports.DATA_AND_CHARTS_SECTION_RANK = (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, _keys.JIRA_WORK_ITEMS_MENU_ITEM.key, 300), _keys.CONFLUENCE_LIST_MENU_ITEM.key, 400), _keys.ASSETS_MENU_ITEM.key, 500);
@@ -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 = "127.2.0";
27
+ var packageVersion = "128.0.1";
28
28
  var halfFocusRing = 1;
29
29
  var dropOffset = '0, 8';
30
30
  var fadeIn = (0, _react2.keyframes)({
@@ -1,7 +1,7 @@
1
1
  ._10i01bym [data-native-embed-card-wrapper=true]{animation-name:var(--ds-keyframe-fade-in,FadeIn0to100)}
2
2
  ._10t9kb7n:has(.extension-label:hover) .extension-edit-toggle-container{opacity:1}
3
3
  ._114yglyw [data-testid$="--loading-overlay"]{display:none}
4
- ._147ai9qs [data-native-embed-card-wrapper=true]{animation-duration:var(--ds-duration-medium,.2s)}
4
+ ._147a1ign [data-native-embed-card-wrapper=true]{animation-duration:var(--ds-duration-short,.15s)}
5
5
  ._15k3glyw:has(.extension-edit-toggle-container:hover) .extension-label{box-shadow:none}
6
6
  ._17sh1wug:has(.extension-edit-toggle-container:hover) .extension-label.always-hide-label{cursor:auto}
7
7
  ._17w9indk iframe:not([data-native-embed-card-wrapper=true] iframe){animation-timing-function:var(--ds-easing-out-practical,cubic-bezier(.4,1,.6,1))}
@@ -11,10 +11,10 @@
11
11
  ._1fdfidpf .extension-label:hover.always-hide-label{opacity:0}
12
12
  ._1ghxysee:has(.extension-container:hover) .extension-label{background-color:var(--ds-background-accent-gray-subtlest,#f0f1f2)}
13
13
  ._1i8c1j9a:has(.extension-container:hover) .extension-label.with-bodied-macro-live-page-styles{background-color:var(--ds-background-input,#fff)}
14
- ._1jbo15uc iframe:not([data-native-embed-card-wrapper=true] iframe){animation-delay:var(--ds-duration-xlong,.4s)}
14
+ ._1jbo1ign iframe:not([data-native-embed-card-wrapper=true] iframe){animation-delay:var(--ds-duration-short,.15s)}
15
15
  ._1kr5kb7n:has(.extension-container:hover) .extension-edit-toggle-container{opacity:1}
16
16
  ._1nuetlke:has(.extension-container:hover) .extension-label{cursor:pointer}
17
- ._1p7l15uc [data-native-embed-card-wrapper=true]{animation-delay:var(--ds-duration-xlong,.4s)}
17
+ ._1p7l1ign [data-native-embed-card-wrapper=true]{animation-delay:var(--ds-duration-short,.15s)}
18
18
  ._1pfgidpf:has(.extension-container:hover) .extension-label.always-hide-label{opacity:0}
19
19
  ._1pglindk{animation-timing-function:var(--ds-easing-out-practical,cubic-bezier(.4,1,.6,1))}
20
20
  ._1qac1nu9:has(.extension-container:hover) .extension-icon{display:inline}
@@ -26,7 +26,7 @@
26
26
  ._2z44kb7n:has(.extension-edit-toggle-container:hover) .extension-label{opacity:1}
27
27
  ._4t3iidpf{height:0}
28
28
  ._54r11nu9:has(.extension-edit-toggle-container:hover) .extension-icon{display:inline}
29
- ._5sag15uc{animation-duration:var(--ds-duration-xlong,.4s)}
29
+ ._5sag1ign{animation-duration:var(--ds-duration-short,.15s)}
30
30
  ._9sz11bym iframe:not([data-native-embed-card-wrapper=true] iframe){animation-name:var(--ds-keyframe-fade-in,FadeIn0to100)}
31
31
  ._bcikkb7n:has(.extension-container:hover) .extension-label{opacity:1}
32
32
  ._d1oeglyw:has(.extension-container:hover) .extension-label{box-shadow:none}
@@ -37,7 +37,7 @@
37
37
  ._kqswh2mm{position:relative}
38
38
  ._ks721tsb:has(.extension-container:hover) .extension-label.with-bodied-macro-live-page-styles{box-shadow:0 0 0 1px var(--ds-border,#0b120e24)}
39
39
  ._lbjpindk [data-native-embed-card-wrapper=true]{animation-timing-function:var(--ds-easing-out-practical,cubic-bezier(.4,1,.6,1))}
40
- ._lwlpi9qs iframe:not([data-native-embed-card-wrapper=true] iframe){animation-duration:var(--ds-duration-medium,.2s)}
40
+ ._lwlp1ign iframe:not([data-native-embed-card-wrapper=true] iframe){animation-duration:var(--ds-duration-short,.15s)}
41
41
  ._mi5m1wug .extension-label:hover.always-hide-label{cursor:auto}
42
42
  ._okd3ysee:has(.extension-edit-toggle-container:hover) .extension-label{background-color:var(--ds-background-accent-gray-subtlest,#f0f1f2)}
43
43
  ._pjh31hrf [data-native-embed-card-wrapper=true]{animation-fill-mode:both}
@@ -10,8 +10,8 @@ import { ExtensionSSRReactContextsProvider } from './ExtensionSSRReactContextsPr
10
10
  * 1. `collapsed` — clipped to zero height and `inert`. The embed loads behind it, full size but
11
11
  * unseen, with its own loading overlay hidden.
12
12
  * 2. The extension reports its content ready through `contentReady`.
13
- * 3. `revealing` — the node animates open to its content height (400ms).
14
- * 4. The embed fades in (200ms), delayed so it follows the opening instead of overlapping it.
13
+ * 3. `revealing` — the node animates open to its content height (150ms).
14
+ * 4. The embed fades in (150ms), delayed so it follows the opening instead of overlapping it.
15
15
  * 5. `open` — on `animationend`, when the content first becomes visible, `inert` is dropped.
16
16
  *
17
17
  * Failure paths: never settles → `READY_TIMEOUT_MS` opens it and the embed's overlay reappears;
@@ -98,7 +98,7 @@ export const GeneratedContentReveal = ({
98
98
  ref: setWrapperElement
99
99
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- the block controls and the SSR cleanup find the wrapper by `span.relative`
100
100
  ,
101
- className: ax(["_1tr2ynbm _xajsynbm _1tmrkb7n _bcikkb7n _2z44kb7n _dmn9ysee _1ghxysee _okd3ysee _1er3glyw _d1oeglyw _15k3glyw _1ql7tlke _1nuetlke _decvtlke _1fdfidpf _1pfgidpf _y7o7idpf _mi5m1wug _1si41wug _17sh1wug _x3ro1j9a _1i8c1j9a _1a2e1j9a _26lx1tsb _ks721tsb _jl0d1tsb _1qac1nu9 _54r11nu9 _1vs61nu9 _10pdkb7n _1kr5kb7n _10t9kb7n", showMacroInteractionDesignUpdates && "_kqswh2mm", state !== 'open' && "_1reo15vq _18m915vq _1e0c1ule", state === 'collapsed' && "_4t3iidpf _114yglyw", state === 'revealing' && "", state === 'revealing' && "_tw1z1t97 _j7hq180b _5sag15uc _1pglindk _2hwzru3m", state !== 'collapsed' && "_10i01bym _9sz11bym _147ai9qs _lwlpi9qs _lbjpindk _17w9indk _1p7l15uc _1jbo15uc _pjh31hrf _gp9p1hrf _dxfxru3m _log5ru3m _1pz3ru3m _9hrrru3m", showMacroInteractionDesignUpdates ? 'relative' : undefined]),
101
+ className: ax(["_1tr2ynbm _xajsynbm _1tmrkb7n _bcikkb7n _2z44kb7n _dmn9ysee _1ghxysee _okd3ysee _1er3glyw _d1oeglyw _15k3glyw _1ql7tlke _1nuetlke _decvtlke _1fdfidpf _1pfgidpf _y7o7idpf _mi5m1wug _1si41wug _17sh1wug _x3ro1j9a _1i8c1j9a _1a2e1j9a _26lx1tsb _ks721tsb _jl0d1tsb _1qac1nu9 _54r11nu9 _1vs61nu9 _10pdkb7n _1kr5kb7n _10t9kb7n", showMacroInteractionDesignUpdates && "_kqswh2mm", state !== 'open' && "_1reo15vq _18m915vq _1e0c1ule", state === 'collapsed' && "_4t3iidpf _114yglyw", state === 'revealing' && "", state === 'revealing' && "_tw1z1t97 _j7hq180b _5sag1ign _1pglindk _2hwzru3m", state !== 'collapsed' && "_10i01bym _9sz11bym _147a1ign _lwlp1ign _lbjpindk _17w9indk _1p7l1ign _1jbo1ign _pjh31hrf _gp9p1hrf _dxfxru3m _log5ru3m _1pz3ru3m _9hrrru3m", showMacroInteractionDesignUpdates ? 'relative' : undefined]),
102
102
  onAnimationEnd: onAnimationEnd
103
103
  }, children));
104
104
  };
@@ -420,6 +420,11 @@ export const syncBlockMessages = defineMessages({
420
420
  defaultMessage: 'Request access',
421
421
  description: 'Label shown in the synced location dropdown option when the sync block is not accessible to the user'
422
422
  },
423
+ syncedLocationDropdownRestrictedContent: {
424
+ id: 'fabric.editor.syncedLocationDropdownRestrictedContent',
425
+ defaultMessage: 'Restricted content',
426
+ description: 'Title shown in the synced location dropdown in place of a page or work item the user does not have permission to view'
427
+ },
423
428
  syncedLocationDropdownUntitledPage: {
424
429
  id: 'fabric.editor.syncedLocationDropdownUntitledPage',
425
430
  defaultMessage: 'Untitled',
@@ -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 = "127.2.0";
16
+ const packageVersion = "128.0.1";
17
17
  const sanitiseSentryEvents = (data, _hint) => {
18
18
  // Remove URL as it has UGC
19
19
  // Ignored via go/ees007
@@ -82,13 +82,16 @@ export const CompactQuickInsertMenuItem = ({
82
82
  }) => {
83
83
  var _resolvedPreview$attr, _ref, _resolvedPreview$imag, _resolvedPreview$imag2;
84
84
  const {
85
- item
85
+ item,
86
+ popupsMountPoint
86
87
  } = useQuickInsertContext();
87
88
  const {
88
89
  id,
90
+ isPreviewActive,
89
91
  isSelected
90
92
  } = item !== null && item !== void 0 ? item : {
91
93
  id: undefined,
94
+ isPreviewActive: undefined,
92
95
  isSelected: false
93
96
  };
94
97
  const resolvedDescription = description !== null && description !== void 0 ? description : item === null || item === void 0 ? void 0 : item.description;
@@ -98,7 +101,7 @@ export const CompactQuickInsertMenuItem = ({
98
101
  const resolvedPreview = useMemo(() => preview !== null && preview !== void 0 ? preview : previewImageUrls ? {
99
102
  image: previewImageUrls
100
103
  } : {}, [preview, previewImageUrls]);
101
- const shouldRenderPreview = shouldShowPreview && isSelected && !isDisabled;
104
+ const shouldRenderPreview = shouldShowPreview && (isPreviewActive !== null && isPreviewActive !== void 0 ? isPreviewActive : isSelected) && !isDisabled;
102
105
  const hasAccessiblePreview = Boolean(resolvedDescription || (resolvedPreview === null || resolvedPreview === void 0 ? void 0 : resolvedPreview.attribution));
103
106
  const previewAttributionName = (_resolvedPreview$attr = resolvedPreview.attribution) === null || _resolvedPreview$attr === void 0 ? void 0 : _resolvedPreview$attr.name;
104
107
  const previewAttributionKey = typeof previewAttributionName === 'string' ? previewAttributionName : previewAttributionName === null || previewAttributionName === void 0 ? void 0 : previewAttributionName.id;
@@ -129,6 +132,7 @@ export const CompactQuickInsertMenuItem = ({
129
132
  id: previewId,
130
133
  description: resolvedDescription,
131
134
  preview: resolvedPreview,
135
+ popupsMountPoint: popupsMountPoint,
132
136
  referenceElement: referenceElement,
133
137
  title: title
134
138
  }));
@@ -7,6 +7,7 @@ import { createPortal } from 'react-dom';
7
7
 
8
8
  // Viewport calculations and multiline clamping require styles outside @atlaskit/css's schema.
9
9
 
10
+ import { bind } from 'bind-event-listener';
10
11
  import { useIntl } from 'react-intl';
11
12
 
12
13
  // Viewport clamping requires modifiers, which the top-layer adapter does not support.
@@ -56,6 +57,7 @@ export const QuickInsertHoverPreview = ({
56
57
  description,
57
58
  id,
58
59
  preview,
60
+ popupsMountPoint,
59
61
  referenceElement,
60
62
  title
61
63
  }) => {
@@ -64,10 +66,11 @@ export const QuickInsertHoverPreview = ({
64
66
  } = useThemeObserver();
65
67
  const imageUrl = preview.image ? colorMode === 'dark' && preview.image.dark ? preview.image.dark : preview.image.light : undefined;
66
68
  const hasAccessibleContent = Boolean(description || preview.attribution);
69
+ const portalTarget = popupsMountPoint !== null && popupsMountPoint !== void 0 ? popupsMountPoint : referenceElement.ownerDocument.body;
67
70
  return /*#__PURE__*/createPortal( /*#__PURE__*/React.createElement(Popper, {
68
71
  placement: "right-start",
69
72
  referenceElement: referenceElement,
70
- strategy: "fixed",
73
+ strategy: popupsMountPoint ? 'absolute' : 'fixed',
71
74
  modifiers: PREVIEW_MODIFIERS
72
75
  }, ({
73
76
  ref,
@@ -82,16 +85,18 @@ export const QuickInsertHoverPreview = ({
82
85
  id: hasAccessibleContent ? id : undefined,
83
86
  imageUrl: imageUrl,
84
87
  preview: preview,
88
+ popupsMountPoint: popupsMountPoint,
85
89
  referenceElement: referenceElement,
86
90
  title: title,
87
91
  update: update
88
- }))), referenceElement.ownerDocument.body);
92
+ }))), portalTarget);
89
93
  };
90
94
  const QuickInsertPreviewPanel = ({
91
95
  description,
92
96
  id,
93
97
  imageUrl,
94
98
  preview,
99
+ popupsMountPoint,
95
100
  referenceElement,
96
101
  title,
97
102
  update
@@ -105,16 +110,32 @@ const QuickInsertPreviewPanel = ({
105
110
  const attributionName = (_preview$attribution2 = preview.attribution) === null || _preview$attribution2 === void 0 ? void 0 : _preview$attribution2.name;
106
111
  const formattedAttributionName = typeof attributionName === 'string' ? attributionName : attributionName ? formatMessage(attributionName) : '';
107
112
  useLayoutEffect(() => {
108
- var _referenceElement$own;
113
+ var _ownerDocument$defaul;
109
114
  void update();
110
- const ResizeObserverConstructor = (_referenceElement$own = referenceElement.ownerDocument.defaultView) === null || _referenceElement$own === void 0 ? void 0 : _referenceElement$own.ResizeObserver;
115
+ const {
116
+ ownerDocument
117
+ } = referenceElement;
118
+ const onScroll = () => void update();
119
+ const unbindScrollListener = bind(ownerDocument, {
120
+ type: 'scroll',
121
+ listener: onScroll,
122
+ options: true
123
+ });
124
+ const ResizeObserverConstructor = (_ownerDocument$defaul = ownerDocument.defaultView) === null || _ownerDocument$defaul === void 0 ? void 0 : _ownerDocument$defaul.ResizeObserver;
111
125
  if (!panelElement || !ResizeObserverConstructor) {
112
- return;
126
+ return unbindScrollListener;
113
127
  }
114
128
  const observer = new ResizeObserverConstructor(() => void update());
115
129
  observer.observe(panelElement);
116
- return () => observer.disconnect();
117
- }, [panelElement, referenceElement, update]);
130
+ observer.observe(referenceElement);
131
+ if (popupsMountPoint) {
132
+ observer.observe(popupsMountPoint);
133
+ }
134
+ return () => {
135
+ unbindScrollListener();
136
+ observer.disconnect();
137
+ };
138
+ }, [panelElement, popupsMountPoint, referenceElement, update]);
118
139
  return /*#__PURE__*/React.createElement("div", {
119
140
  ref: setPanelElement,
120
141
  id: id,
@@ -43,15 +43,15 @@ export const MEDIA_SECTION_RANK = {
43
43
  };
44
44
  export const CREATE_SECTION_RANK = {
45
45
  [JIRA_ISSUE_MENU_ITEM.key]: 100,
46
- [CONFLUENCE_PAGE_MENU_ITEM.key]: 200,
46
+ [LOOM_MENU_ITEM.key]: 200,
47
+ [CONFLUENCE_PAGE_MENU_ITEM.key]: 300,
48
+ [DATABASE_MENU_ITEM.key]: 400,
47
49
  [WHITEBOARD_MENU_ITEM.key]: 500,
48
50
  [DIAGRAM_MENU_ITEM.key]: 600,
49
51
  [FLOWCHART_MENU_ITEM.key]: 700,
50
52
  [BRAINSTORMING_MENU_ITEM.key]: 800,
51
53
  [RETROSPECTIVE_MENU_ITEM.key]: 900,
52
- [ROADMAP_MENU_ITEM.key]: 1000,
53
- [DATABASE_MENU_ITEM.key]: 1100,
54
- [LOOM_MENU_ITEM.key]: 1200
54
+ [ROADMAP_MENU_ITEM.key]: 1000
55
55
  };
56
56
  export const TEXT_FORMATTING_SECTION_RANK = {
57
57
  [UNORDERED_LIST_MENU_ITEM.key]: 100,
@@ -14,7 +14,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
14
14
  import { fg } from '@atlaskit/platform-feature-flags/fg';
15
15
  import Layer from '../Layer';
16
16
  const packageName = "@atlaskit/editor-common";
17
- const packageVersion = "127.2.0";
17
+ const packageVersion = "128.0.1";
18
18
  const halfFocusRing = 1;
19
19
  const dropOffset = '0, 8';
20
20
  const fadeIn = keyframes({
@@ -1,7 +1,7 @@
1
1
  ._10i01bym [data-native-embed-card-wrapper=true]{animation-name:var(--ds-keyframe-fade-in,FadeIn0to100)}
2
2
  ._10t9kb7n:has(.extension-label:hover) .extension-edit-toggle-container{opacity:1}
3
3
  ._114yglyw [data-testid$="--loading-overlay"]{display:none}
4
- ._147ai9qs [data-native-embed-card-wrapper=true]{animation-duration:var(--ds-duration-medium,.2s)}
4
+ ._147a1ign [data-native-embed-card-wrapper=true]{animation-duration:var(--ds-duration-short,.15s)}
5
5
  ._15k3glyw:has(.extension-edit-toggle-container:hover) .extension-label{box-shadow:none}
6
6
  ._17sh1wug:has(.extension-edit-toggle-container:hover) .extension-label.always-hide-label{cursor:auto}
7
7
  ._17w9indk iframe:not([data-native-embed-card-wrapper=true] iframe){animation-timing-function:var(--ds-easing-out-practical,cubic-bezier(.4,1,.6,1))}
@@ -11,10 +11,10 @@
11
11
  ._1fdfidpf .extension-label:hover.always-hide-label{opacity:0}
12
12
  ._1ghxysee:has(.extension-container:hover) .extension-label{background-color:var(--ds-background-accent-gray-subtlest,#f0f1f2)}
13
13
  ._1i8c1j9a:has(.extension-container:hover) .extension-label.with-bodied-macro-live-page-styles{background-color:var(--ds-background-input,#fff)}
14
- ._1jbo15uc iframe:not([data-native-embed-card-wrapper=true] iframe){animation-delay:var(--ds-duration-xlong,.4s)}
14
+ ._1jbo1ign iframe:not([data-native-embed-card-wrapper=true] iframe){animation-delay:var(--ds-duration-short,.15s)}
15
15
  ._1kr5kb7n:has(.extension-container:hover) .extension-edit-toggle-container{opacity:1}
16
16
  ._1nuetlke:has(.extension-container:hover) .extension-label{cursor:pointer}
17
- ._1p7l15uc [data-native-embed-card-wrapper=true]{animation-delay:var(--ds-duration-xlong,.4s)}
17
+ ._1p7l1ign [data-native-embed-card-wrapper=true]{animation-delay:var(--ds-duration-short,.15s)}
18
18
  ._1pfgidpf:has(.extension-container:hover) .extension-label.always-hide-label{opacity:0}
19
19
  ._1pglindk{animation-timing-function:var(--ds-easing-out-practical,cubic-bezier(.4,1,.6,1))}
20
20
  ._1qac1nu9:has(.extension-container:hover) .extension-icon{display:inline}
@@ -26,7 +26,7 @@
26
26
  ._2z44kb7n:has(.extension-edit-toggle-container:hover) .extension-label{opacity:1}
27
27
  ._4t3iidpf{height:0}
28
28
  ._54r11nu9:has(.extension-edit-toggle-container:hover) .extension-icon{display:inline}
29
- ._5sag15uc{animation-duration:var(--ds-duration-xlong,.4s)}
29
+ ._5sag1ign{animation-duration:var(--ds-duration-short,.15s)}
30
30
  ._9sz11bym iframe:not([data-native-embed-card-wrapper=true] iframe){animation-name:var(--ds-keyframe-fade-in,FadeIn0to100)}
31
31
  ._bcikkb7n:has(.extension-container:hover) .extension-label{opacity:1}
32
32
  ._d1oeglyw:has(.extension-container:hover) .extension-label{box-shadow:none}
@@ -37,7 +37,7 @@
37
37
  ._kqswh2mm{position:relative}
38
38
  ._ks721tsb:has(.extension-container:hover) .extension-label.with-bodied-macro-live-page-styles{box-shadow:0 0 0 1px var(--ds-border,#0b120e24)}
39
39
  ._lbjpindk [data-native-embed-card-wrapper=true]{animation-timing-function:var(--ds-easing-out-practical,cubic-bezier(.4,1,.6,1))}
40
- ._lwlpi9qs iframe:not([data-native-embed-card-wrapper=true] iframe){animation-duration:var(--ds-duration-medium,.2s)}
40
+ ._lwlp1ign iframe:not([data-native-embed-card-wrapper=true] iframe){animation-duration:var(--ds-duration-short,.15s)}
41
41
  ._mi5m1wug .extension-label:hover.always-hide-label{cursor:auto}
42
42
  ._okd3ysee:has(.extension-edit-toggle-container:hover) .extension-label{background-color:var(--ds-background-accent-gray-subtlest,#f0f1f2)}
43
43
  ._pjh31hrf [data-native-embed-card-wrapper=true]{animation-fill-mode:both}
@@ -11,8 +11,8 @@ import { ExtensionSSRReactContextsProvider } from './ExtensionSSRReactContextsPr
11
11
  * 1. `collapsed` — clipped to zero height and `inert`. The embed loads behind it, full size but
12
12
  * unseen, with its own loading overlay hidden.
13
13
  * 2. The extension reports its content ready through `contentReady`.
14
- * 3. `revealing` — the node animates open to its content height (400ms).
15
- * 4. The embed fades in (200ms), delayed so it follows the opening instead of overlapping it.
14
+ * 3. `revealing` — the node animates open to its content height (150ms).
15
+ * 4. The embed fades in (150ms), delayed so it follows the opening instead of overlapping it.
16
16
  * 5. `open` — on `animationend`, when the content first becomes visible, `inert` is dropped.
17
17
  *
18
18
  * Failure paths: never settles → `READY_TIMEOUT_MS` opens it and the embed's overlay reappears;
@@ -115,7 +115,7 @@ export var GeneratedContentReveal = function GeneratedContentReveal(_ref) {
115
115
  ref: setWrapperElement
116
116
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- the block controls and the SSR cleanup find the wrapper by `span.relative`
117
117
  ,
118
- className: ax(["_1tr2ynbm _xajsynbm _1tmrkb7n _bcikkb7n _2z44kb7n _dmn9ysee _1ghxysee _okd3ysee _1er3glyw _d1oeglyw _15k3glyw _1ql7tlke _1nuetlke _decvtlke _1fdfidpf _1pfgidpf _y7o7idpf _mi5m1wug _1si41wug _17sh1wug _x3ro1j9a _1i8c1j9a _1a2e1j9a _26lx1tsb _ks721tsb _jl0d1tsb _1qac1nu9 _54r11nu9 _1vs61nu9 _10pdkb7n _1kr5kb7n _10t9kb7n", showMacroInteractionDesignUpdates && "_kqswh2mm", state !== 'open' && "_1reo15vq _18m915vq _1e0c1ule", state === 'collapsed' && "_4t3iidpf _114yglyw", state === 'revealing' && "", state === 'revealing' && "_tw1z1t97 _j7hq180b _5sag15uc _1pglindk _2hwzru3m", state !== 'collapsed' && "_10i01bym _9sz11bym _147ai9qs _lwlpi9qs _lbjpindk _17w9indk _1p7l15uc _1jbo15uc _pjh31hrf _gp9p1hrf _dxfxru3m _log5ru3m _1pz3ru3m _9hrrru3m", showMacroInteractionDesignUpdates ? 'relative' : undefined]),
118
+ className: ax(["_1tr2ynbm _xajsynbm _1tmrkb7n _bcikkb7n _2z44kb7n _dmn9ysee _1ghxysee _okd3ysee _1er3glyw _d1oeglyw _15k3glyw _1ql7tlke _1nuetlke _decvtlke _1fdfidpf _1pfgidpf _y7o7idpf _mi5m1wug _1si41wug _17sh1wug _x3ro1j9a _1i8c1j9a _1a2e1j9a _26lx1tsb _ks721tsb _jl0d1tsb _1qac1nu9 _54r11nu9 _1vs61nu9 _10pdkb7n _1kr5kb7n _10t9kb7n", showMacroInteractionDesignUpdates && "_kqswh2mm", state !== 'open' && "_1reo15vq _18m915vq _1e0c1ule", state === 'collapsed' && "_4t3iidpf _114yglyw", state === 'revealing' && "", state === 'revealing' && "_tw1z1t97 _j7hq180b _5sag1ign _1pglindk _2hwzru3m", state !== 'collapsed' && "_10i01bym _9sz11bym _147a1ign _lwlp1ign _lbjpindk _17w9indk _1p7l1ign _1jbo1ign _pjh31hrf _gp9p1hrf _dxfxru3m _log5ru3m _1pz3ru3m _9hrrru3m", showMacroInteractionDesignUpdates ? 'relative' : undefined]),
119
119
  onAnimationEnd: onAnimationEnd
120
120
  }, children));
121
121
  };
@@ -420,6 +420,11 @@ export var syncBlockMessages = defineMessages({
420
420
  defaultMessage: 'Request access',
421
421
  description: 'Label shown in the synced location dropdown option when the sync block is not accessible to the user'
422
422
  },
423
+ syncedLocationDropdownRestrictedContent: {
424
+ id: 'fabric.editor.syncedLocationDropdownRestrictedContent',
425
+ defaultMessage: 'Restricted content',
426
+ description: 'Title shown in the synced location dropdown in place of a page or work item the user does not have permission to view'
427
+ },
423
428
  syncedLocationDropdownUntitledPage: {
424
429
  id: 'fabric.editor.syncedLocationDropdownUntitledPage',
425
430
  defaultMessage: 'Untitled',
@@ -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 = "127.2.0";
22
+ var packageVersion = "128.0.1";
23
23
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
24
24
  // Remove URL as it has UGC
25
25
  // Ignored via go/ees007
@@ -84,12 +84,15 @@ export var CompactQuickInsertMenuItem = function CompactQuickInsertMenuItem(_ref
84
84
  shouldWrapIcon = _ref$shouldWrapIcon === void 0 ? true : _ref$shouldWrapIcon,
85
85
  title = _ref.title;
86
86
  var _useQuickInsertContex = useQuickInsertContext(),
87
- item = _useQuickInsertContex.item;
87
+ item = _useQuickInsertContex.item,
88
+ popupsMountPoint = _useQuickInsertContex.popupsMountPoint;
88
89
  var _ref2 = item !== null && item !== void 0 ? item : {
89
90
  id: undefined,
91
+ isPreviewActive: undefined,
90
92
  isSelected: false
91
93
  },
92
94
  id = _ref2.id,
95
+ isPreviewActive = _ref2.isPreviewActive,
93
96
  isSelected = _ref2.isSelected;
94
97
  var resolvedDescription = description !== null && description !== void 0 ? description : item === null || item === void 0 ? void 0 : item.description;
95
98
  var previewId = useId();
@@ -103,7 +106,7 @@ export var CompactQuickInsertMenuItem = function CompactQuickInsertMenuItem(_ref
103
106
  image: previewImageUrls
104
107
  } : {};
105
108
  }, [preview, previewImageUrls]);
106
- var shouldRenderPreview = shouldShowPreview && isSelected && !isDisabled;
109
+ var shouldRenderPreview = shouldShowPreview && (isPreviewActive !== null && isPreviewActive !== void 0 ? isPreviewActive : isSelected) && !isDisabled;
107
110
  var hasAccessiblePreview = Boolean(resolvedDescription || (resolvedPreview === null || resolvedPreview === void 0 ? void 0 : resolvedPreview.attribution));
108
111
  var previewAttributionName = (_resolvedPreview$attr = resolvedPreview.attribution) === null || _resolvedPreview$attr === void 0 ? void 0 : _resolvedPreview$attr.name;
109
112
  var previewAttributionKey = typeof previewAttributionName === 'string' ? previewAttributionName : previewAttributionName === null || previewAttributionName === void 0 ? void 0 : previewAttributionName.id;
@@ -134,6 +137,7 @@ export var CompactQuickInsertMenuItem = function CompactQuickInsertMenuItem(_ref
134
137
  id: previewId,
135
138
  description: resolvedDescription,
136
139
  preview: resolvedPreview,
140
+ popupsMountPoint: popupsMountPoint,
137
141
  referenceElement: referenceElement,
138
142
  title: title
139
143
  }));
@@ -8,6 +8,7 @@ import { createPortal } from 'react-dom';
8
8
 
9
9
  // Viewport calculations and multiline clamping require styles outside @atlaskit/css's schema.
10
10
 
11
+ import { bind } from 'bind-event-listener';
11
12
  import { useIntl } from 'react-intl';
12
13
 
13
14
  // Viewport clamping requires modifiers, which the top-layer adapter does not support.
@@ -57,16 +58,18 @@ export var QuickInsertHoverPreview = function QuickInsertHoverPreview(_ref) {
57
58
  var description = _ref.description,
58
59
  id = _ref.id,
59
60
  preview = _ref.preview,
61
+ popupsMountPoint = _ref.popupsMountPoint,
60
62
  referenceElement = _ref.referenceElement,
61
63
  title = _ref.title;
62
64
  var _useThemeObserver = useThemeObserver(),
63
65
  colorMode = _useThemeObserver.colorMode;
64
66
  var imageUrl = preview.image ? colorMode === 'dark' && preview.image.dark ? preview.image.dark : preview.image.light : undefined;
65
67
  var hasAccessibleContent = Boolean(description || preview.attribution);
68
+ var portalTarget = popupsMountPoint !== null && popupsMountPoint !== void 0 ? popupsMountPoint : referenceElement.ownerDocument.body;
66
69
  return /*#__PURE__*/createPortal( /*#__PURE__*/React.createElement(Popper, {
67
70
  placement: "right-start",
68
71
  referenceElement: referenceElement,
69
- strategy: "fixed",
72
+ strategy: popupsMountPoint ? 'absolute' : 'fixed',
70
73
  modifiers: PREVIEW_MODIFIERS
71
74
  }, function (_ref2) {
72
75
  var ref = _ref2.ref,
@@ -81,11 +84,12 @@ export var QuickInsertHoverPreview = function QuickInsertHoverPreview(_ref) {
81
84
  id: hasAccessibleContent ? id : undefined,
82
85
  imageUrl: imageUrl,
83
86
  preview: preview,
87
+ popupsMountPoint: popupsMountPoint,
84
88
  referenceElement: referenceElement,
85
89
  title: title,
86
90
  update: update
87
91
  }));
88
- }), referenceElement.ownerDocument.body);
92
+ }), portalTarget);
89
93
  };
90
94
  var QuickInsertPreviewPanel = function QuickInsertPreviewPanel(_ref3) {
91
95
  var _preview$attribution, _preview$attribution2;
@@ -93,6 +97,7 @@ var QuickInsertPreviewPanel = function QuickInsertPreviewPanel(_ref3) {
93
97
  id = _ref3.id,
94
98
  imageUrl = _ref3.imageUrl,
95
99
  preview = _ref3.preview,
100
+ popupsMountPoint = _ref3.popupsMountPoint,
96
101
  referenceElement = _ref3.referenceElement,
97
102
  title = _ref3.title,
98
103
  update = _ref3.update;
@@ -106,20 +111,34 @@ var QuickInsertPreviewPanel = function QuickInsertPreviewPanel(_ref3) {
106
111
  var attributionName = (_preview$attribution2 = preview.attribution) === null || _preview$attribution2 === void 0 ? void 0 : _preview$attribution2.name;
107
112
  var formattedAttributionName = typeof attributionName === 'string' ? attributionName : attributionName ? formatMessage(attributionName) : '';
108
113
  useLayoutEffect(function () {
109
- var _referenceElement$own;
114
+ var _ownerDocument$defaul;
110
115
  void update();
111
- var ResizeObserverConstructor = (_referenceElement$own = referenceElement.ownerDocument.defaultView) === null || _referenceElement$own === void 0 ? void 0 : _referenceElement$own.ResizeObserver;
116
+ var ownerDocument = referenceElement.ownerDocument;
117
+ var onScroll = function onScroll() {
118
+ return void update();
119
+ };
120
+ var unbindScrollListener = bind(ownerDocument, {
121
+ type: 'scroll',
122
+ listener: onScroll,
123
+ options: true
124
+ });
125
+ var ResizeObserverConstructor = (_ownerDocument$defaul = ownerDocument.defaultView) === null || _ownerDocument$defaul === void 0 ? void 0 : _ownerDocument$defaul.ResizeObserver;
112
126
  if (!panelElement || !ResizeObserverConstructor) {
113
- return;
127
+ return unbindScrollListener;
114
128
  }
115
129
  var observer = new ResizeObserverConstructor(function () {
116
130
  return void update();
117
131
  });
118
132
  observer.observe(panelElement);
133
+ observer.observe(referenceElement);
134
+ if (popupsMountPoint) {
135
+ observer.observe(popupsMountPoint);
136
+ }
119
137
  return function () {
120
- return observer.disconnect();
138
+ unbindScrollListener();
139
+ observer.disconnect();
121
140
  };
122
- }, [panelElement, referenceElement, update]);
141
+ }, [panelElement, popupsMountPoint, referenceElement, update]);
123
142
  return /*#__PURE__*/React.createElement("div", {
124
143
  ref: setPanelElement,
125
144
  id: id,
@@ -6,7 +6,7 @@ import { ACTION_MENU_ITEM, AI_IMAGE_GENERATION_MENU_ITEM, ASK_ROVO_MENU_ITEM, AS
6
6
  export var QUICK_INSERT_MENU_RANK = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, RECOMMENDED_SECTION.key, 0), STRUCTURE_SECTION.key, 1), MEDIA_SECTION.key, 2), CREATE_SECTION.key, 3), EMBED_SECTION.key, 4), TEXT_FORMATTING_SECTION.key, 5), ROVO_SECTION.key, 6), DATA_AND_CHARTS_SECTION.key, 7), BLOCK_TEMPLATES_SECTION.key, 8), OTHER_SECTION.key, 9);
7
7
  export var STRUCTURE_SECTION_RANK = (_STRUCTURE_SECTION_RA = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_STRUCTURE_SECTION_RA, ACTION_MENU_ITEM.key, 100), TABLE_MENU_ITEM.key, 200), STATUS_MENU_ITEM.key, 300), DATE_MENU_ITEM.key, 400), MENTION_MENU_ITEM.key, 500), EXPAND_MENU_ITEM.key, 700), CODE_BLOCK_MENU_ITEM.key, 800), INFO_PANEL_MENU_ITEM.key, 900), NOTE_PANEL_MENU_ITEM.key, 1000), SUCCESS_PANEL_MENU_ITEM.key, 1100), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_STRUCTURE_SECTION_RA, WARNING_PANEL_MENU_ITEM.key, 1200), ERROR_PANEL_MENU_ITEM.key, 1300), CUSTOM_PANEL_MENU_ITEM.key, 1400), TWO_COLUMNS_LAYOUT_MENU_ITEM.key, 1500), THREE_COLUMNS_LAYOUT_MENU_ITEM.key, 1600), FOUR_COLUMNS_LAYOUT_MENU_ITEM.key, 1700), FIVE_COLUMNS_LAYOUT_MENU_ITEM.key, 1800), SYNCED_BLOCK_MENU_ITEM.key, 2300), RULE_MENU_ITEM.key, 2400), DECISION_MENU_ITEM.key, 2800));
8
8
  export var MEDIA_SECTION_RANK = _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, MEDIA_INSERT_MENU_ITEM.key, 100), HYPERLINK_MENU_ITEM.key, 200), EMOJI_MENU_ITEM.key, 300), AI_IMAGE_GENERATION_MENU_ITEM.key, 1600);
9
- export var CREATE_SECTION_RANK = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, JIRA_ISSUE_MENU_ITEM.key, 100), CONFLUENCE_PAGE_MENU_ITEM.key, 200), WHITEBOARD_MENU_ITEM.key, 500), DIAGRAM_MENU_ITEM.key, 600), FLOWCHART_MENU_ITEM.key, 700), BRAINSTORMING_MENU_ITEM.key, 800), RETROSPECTIVE_MENU_ITEM.key, 900), ROADMAP_MENU_ITEM.key, 1000), DATABASE_MENU_ITEM.key, 1100), LOOM_MENU_ITEM.key, 1200);
9
+ export var CREATE_SECTION_RANK = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, JIRA_ISSUE_MENU_ITEM.key, 100), LOOM_MENU_ITEM.key, 200), CONFLUENCE_PAGE_MENU_ITEM.key, 300), DATABASE_MENU_ITEM.key, 400), WHITEBOARD_MENU_ITEM.key, 500), DIAGRAM_MENU_ITEM.key, 600), FLOWCHART_MENU_ITEM.key, 700), BRAINSTORMING_MENU_ITEM.key, 800), RETROSPECTIVE_MENU_ITEM.key, 900), ROADMAP_MENU_ITEM.key, 1000);
10
10
  export var TEXT_FORMATTING_SECTION_RANK = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, UNORDERED_LIST_MENU_ITEM.key, 100), ORDERED_LIST_MENU_ITEM.key, 200), HEADING_1_MENU_ITEM.key, 300), HEADING_2_MENU_ITEM.key, 400), HEADING_3_MENU_ITEM.key, 500), HEADING_4_MENU_ITEM.key, 600), HEADING_5_MENU_ITEM.key, 700), HEADING_6_MENU_ITEM.key, 800), BLOCKQUOTE_MENU_ITEM.key, 900), PLACEHOLDER_TEXT_MENU_ITEM.key, 1000);
11
11
  export var ROVO_SECTION_RANK = _defineProperty({}, ASK_ROVO_MENU_ITEM.key, 100);
12
12
  export var DATA_AND_CHARTS_SECTION_RANK = _defineProperty(_defineProperty(_defineProperty({}, JIRA_WORK_ITEMS_MENU_ITEM.key, 300), CONFLUENCE_LIST_MENU_ITEM.key, 400), ASSETS_MENU_ITEM.key, 500);
@@ -21,7 +21,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
21
21
  import { fg } from '@atlaskit/platform-feature-flags/fg';
22
22
  import Layer from '../Layer';
23
23
  var packageName = "@atlaskit/editor-common";
24
- var packageVersion = "127.2.0";
24
+ var packageVersion = "128.0.1";
25
25
  var halfFocusRing = 1;
26
26
  var dropOffset = '0, 8';
27
27
  var fadeIn = keyframes({
@@ -434,6 +434,11 @@ export declare const syncBlockMessages: {
434
434
  description: string;
435
435
  id: string;
436
436
  };
437
+ syncedLocationDropdownRestrictedContent: {
438
+ defaultMessage: string;
439
+ description: string;
440
+ id: string;
441
+ };
437
442
  syncedLocationDropdownSamePage: {
438
443
  defaultMessage: string;
439
444
  description: string;
@@ -9,14 +9,17 @@ export type QuickInsertSelectionHandler = (context: {
9
9
  source: INPUT_METHOD.ELEMENT_BROWSER | INPUT_METHOD.INSERT_MENU | INPUT_METHOD.QUICK_INSERT | INPUT_METHOD.TOOLBAR;
10
10
  }) => Transaction | false | void;
11
11
  export type QuickInsertContextValue = {
12
+ activePreviewItemKey?: string;
12
13
  editorView: EditorView;
13
14
  isOffline: boolean;
14
15
  item?: {
15
16
  description?: string;
16
17
  id: string;
18
+ isPreviewActive?: boolean;
17
19
  isSelected: boolean;
18
20
  };
19
21
  menuOpenId?: symbol;
22
+ popupsMountPoint?: HTMLElement;
20
23
  select: (selectionHandler: QuickInsertSelectionHandler) => void;
21
24
  surface: 'typeahead' | 'toolbar' | 'element-browser';
22
25
  surfaceContext?: SurfaceContext;
@@ -1,9 +1,10 @@
1
1
  import type { QuickInsertPreview } from './preview';
2
2
  /** The selected item's description and attribution are announced through its aria-describedby. */
3
- export declare const QuickInsertHoverPreview: ({ description, id, preview, referenceElement, title, }: {
3
+ export declare const QuickInsertHoverPreview: ({ description, id, preview, popupsMountPoint, referenceElement, title, }: {
4
4
  description?: string;
5
5
  id: string;
6
6
  preview: QuickInsertPreview;
7
+ popupsMountPoint?: HTMLElement;
7
8
  referenceElement: HTMLElement;
8
9
  title: string;
9
10
  }) => React.JSX.Element;
@@ -125,6 +125,16 @@ export type FeatureFlags = {
125
125
  * @default false
126
126
  */
127
127
  extensionLocalIdGeneration?: boolean;
128
+ /**
129
+ * @description
130
+ * Used by the legacy content macro to disable render tracking due to excessive logs.
131
+ * Will be removed once re-rendering issue is resolved.
132
+ * Note: This is hardcoded into the LCM code, it does not exist in Switcheroo.
133
+ *
134
+ * @see https://product-fabric.atlassian.net/browse/ED-26650
135
+ * @default false
136
+ */
137
+ lcmPreventRenderTracking?: boolean;
128
138
  /**
129
139
  * @description
130
140
  * Use the linking platform link picker for link insertion and edit
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-common",
3
- "version": "128.0.0",
3
+ "version": "128.1.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/"
@@ -85,7 +85,7 @@
85
85
  "@atlaskit/task-decision": "^21.11.0",
86
86
  "@atlaskit/teams-app-config": "^3.1.0",
87
87
  "@atlaskit/textfield": "^10.2.0",
88
- "@atlaskit/tmp-editor-statsig": "^220.0.0",
88
+ "@atlaskit/tmp-editor-statsig": "^221.0.0",
89
89
  "@atlaskit/tokens": "^20.1.0",
90
90
  "@atlaskit/tooltip": "^24.4.0",
91
91
  "@atlaskit/width-detector": "^7.2.0",