@atlaskit/editor-core 206.0.2 → 206.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 (43) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/cjs/ui/Appearance/Chromeless.js +12 -4
  3. package/dist/cjs/ui/Appearance/Comment/Comment.js +9 -2
  4. package/dist/cjs/ui/Appearance/FullPage/FullPageContentArea.js +25 -2
  5. package/dist/cjs/ui/Appearance/FullPage/FullPageToolbar.js +2 -1
  6. package/dist/cjs/ui/Appearance/FullPage/StyledComponents.js +1 -18
  7. package/dist/cjs/ui/ContentStyles/index.js +11 -4
  8. package/dist/cjs/ui/ContentStyles/layout.js +4 -0
  9. package/dist/cjs/ui/EditorContentContainer.js +260 -0
  10. package/dist/cjs/version-wrapper.js +1 -1
  11. package/dist/es2019/ui/Appearance/Chromeless.js +9 -3
  12. package/dist/es2019/ui/Appearance/Comment/Comment.js +7 -2
  13. package/dist/es2019/ui/Appearance/FullPage/FullPageContentArea.js +25 -4
  14. package/dist/es2019/ui/Appearance/FullPage/FullPageToolbar.js +2 -1
  15. package/dist/es2019/ui/Appearance/FullPage/StyledComponents.js +0 -18
  16. package/dist/es2019/ui/ContentStyles/index.js +11 -4
  17. package/dist/es2019/ui/ContentStyles/layout.js +4 -0
  18. package/dist/es2019/ui/EditorContentContainer.js +624 -0
  19. package/dist/es2019/version-wrapper.js +1 -1
  20. package/dist/esm/ui/Appearance/Chromeless.js +11 -3
  21. package/dist/esm/ui/Appearance/Comment/Comment.js +9 -2
  22. package/dist/esm/ui/Appearance/FullPage/FullPageContentArea.js +27 -4
  23. package/dist/esm/ui/Appearance/FullPage/FullPageToolbar.js +2 -1
  24. package/dist/esm/ui/Appearance/FullPage/StyledComponents.js +0 -18
  25. package/dist/esm/ui/ContentStyles/index.js +11 -4
  26. package/dist/esm/ui/ContentStyles/layout.js +4 -0
  27. package/dist/esm/ui/EditorContentContainer.js +251 -0
  28. package/dist/esm/version-wrapper.js +1 -1
  29. package/dist/types/create-editor/create-universal-preset.d.ts +3 -0
  30. package/dist/types/presets/universal.d.ts +3 -0
  31. package/dist/types/presets/useUniversalPreset.d.ts +3 -0
  32. package/dist/types/ui/Appearance/Chromeless.d.ts +10 -1
  33. package/dist/types/ui/Appearance/FullPage/StyledComponents.d.ts +0 -9
  34. package/dist/types/ui/ContentStyles/index.d.ts +2 -1
  35. package/dist/types/ui/EditorContentContainer.d.ts +39 -0
  36. package/dist/types-ts4.5/create-editor/create-universal-preset.d.ts +3 -0
  37. package/dist/types-ts4.5/presets/universal.d.ts +3 -0
  38. package/dist/types-ts4.5/presets/useUniversalPreset.d.ts +3 -0
  39. package/dist/types-ts4.5/ui/Appearance/Chromeless.d.ts +10 -1
  40. package/dist/types-ts4.5/ui/Appearance/FullPage/StyledComponents.d.ts +0 -9
  41. package/dist/types-ts4.5/ui/ContentStyles/index.d.ts +2 -1
  42. package/dist/types-ts4.5/ui/EditorContentContainer.d.ts +39 -0
  43. package/package.json +6 -7
@@ -18,11 +18,14 @@ import { WidthConsumer, WidthProvider } from '@atlaskit/editor-common/ui';
18
18
  import { ToolbarArrowKeyNavigationProvider } from '@atlaskit/editor-common/ui-menu';
19
19
  import { tableCommentEditorStyles } from '@atlaskit/editor-plugins/table/ui/common-styles';
20
20
  import { akEditorMobileBreakoutPoint } from '@atlaskit/editor-shared-styles';
21
+ import { componentWithCondition } from '@atlaskit/platform-feature-flags-react';
22
+ import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
21
23
  // Ignored via go/ees005
22
24
  // eslint-disable-next-line import/no-named-as-default
23
25
  import ClickAreaBlock from '../../Addon/ClickAreaBlock';
24
26
  import { contentComponentClickWrapper } from '../../Addon/ClickAreaBlock/contentComponentWrapper';
25
27
  import { createEditorContentStyle } from '../../ContentStyles';
28
+ import EditorContentContainer from '../../EditorContentContainer';
26
29
  import PluginSlot from '../../PluginSlot';
27
30
  import { ToolbarWithSizeDetector as Toolbar } from '../../Toolbar/ToolbarWithSizeDetector';
28
31
  import WithFlash from '../../WithFlash';
@@ -74,6 +77,9 @@ var secondaryToolbarStyles = css({
74
77
  padding: "var(--ds-space-150, 12px)".concat(" ", "var(--ds-space-025, 2px)")
75
78
  });
76
79
  var appearance = 'comment';
80
+ var EditorContainer = componentWithCondition(function () {
81
+ return editorExperiment('platform_editor_core_static_emotion', true);
82
+ }, EditorContentContainer, ContentArea);
77
83
  export var CommentEditorWithIntl = function CommentEditorWithIntl(props) {
78
84
  var editorAPI = props.editorAPI;
79
85
  var _useSharedPluginState = useSharedPluginState(editorAPI, ['media', 'maxContentSize', 'primaryToolbar', 'editorViewMode']),
@@ -208,7 +214,7 @@ export var CommentEditorWithIntl = function CommentEditorWithIntl(props) {
208
214
  editorDisabled: disabled
209
215
  }, jsx(WidthConsumer, null, function (_ref) {
210
216
  var width = _ref.width;
211
- return jsx(ContentArea, {
217
+ return jsx(EditorContainer, {
212
218
  ref: containerElement,
213
219
  css: maxHeight ?
214
220
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
@@ -227,7 +233,8 @@ export var CommentEditorWithIntl = function CommentEditorWithIntl(props) {
227
233
  'less-margin': width < akEditorMobileBreakoutPoint
228
234
  }),
229
235
  featureFlags: featureFlags,
230
- viewMode: editorViewModeState === null || editorViewModeState === void 0 ? void 0 : editorViewModeState.mode
236
+ viewMode: editorViewModeState === null || editorViewModeState === void 0 ? void 0 : editorViewModeState.mode,
237
+ appearance: appearance
231
238
  }, customContentComponents && 'before' in customContentComponents ? contentComponentClickWrapper(customContentComponents.before) : contentComponentClickWrapper(customContentComponents), jsx(PluginSlot, {
232
239
  editorView: editorView,
233
240
  editorActions: editorActions,
@@ -7,21 +7,43 @@ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
7
7
  import React, { useImperativeHandle, useRef } from 'react';
8
8
 
9
9
  // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
10
- import { jsx, useTheme } from '@emotion/react';
10
+ import { css, jsx, useTheme } from '@emotion/react';
11
11
  import classnames from 'classnames';
12
12
  import { injectIntl } from 'react-intl-next';
13
13
  import { fullPageMessages as messages } from '@atlaskit/editor-common/messages';
14
+ import { scrollbarStyles } from '@atlaskit/editor-shared-styles/scrollbar';
14
15
  import { fg } from '@atlaskit/platform-feature-flags';
16
+ import { componentWithCondition } from '@atlaskit/platform-feature-flags-react';
15
17
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
16
18
  // Ignored via go/ees005
17
19
  // eslint-disable-next-line import/no-named-as-default
18
20
  import ClickAreaBlock from '../../Addon/ClickAreaBlock';
19
21
  import { contentComponentClickWrapper } from '../../Addon/ClickAreaBlock/contentComponentWrapper';
22
+ import { createEditorContentStyle } from '../../ContentStyles';
20
23
  import { ContextPanel } from '../../ContextPanel';
24
+ import EditorContentContainer from '../../EditorContentContainer';
21
25
  import PluginSlot from '../../PluginSlot';
22
- import { contentArea, contentAreaHeightNoToolbar, contentAreaWrapper, editorContentAreaStyle, editorContentGutterStyle, ScrollContainer, sidebarArea } from './StyledComponents';
26
+ import { contentArea, contentAreaHeightNoToolbar, contentAreaWrapper, editorContentAreaStyle, editorContentGutterStyle, sidebarArea } from './StyledComponents';
23
27
  export var CONTENT_AREA_TEST_ID = 'ak-editor-fp-content-area';
24
28
  export var EDITOR_CONTAINER = 'ak-editor-container';
29
+ var scrollStyles = css({
30
+ flexGrow: 1,
31
+ height: '100%',
32
+ overflowY: 'scroll',
33
+ position: 'relative',
34
+ display: 'flex',
35
+ flexDirection: 'column',
36
+ scrollBehavior: 'smooth'
37
+ },
38
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
39
+ scrollbarStyles);
40
+
41
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
42
+ var ScrollContainer = createEditorContentStyle(scrollStyles);
43
+ ScrollContainer.displayName = 'ScrollContainer';
44
+ var EditorContainer = componentWithCondition(function () {
45
+ return editorExperiment('platform_editor_core_static_emotion', true);
46
+ }, EditorContentContainer, ScrollContainer);
25
47
  var Content = /*#__PURE__*/React.forwardRef(function (props, ref) {
26
48
  var _contentAreaRef$curre;
27
49
  var theme = useTheme();
@@ -65,14 +87,15 @@ var Content = /*#__PURE__*/React.forwardRef(function (props, ref) {
65
87
  contentAreaWrapper,
66
88
  "data-testid": EDITOR_CONTAINER,
67
89
  "data-editor-container": 'true'
68
- }, jsx(ScrollContainer
90
+ }, jsx(EditorContainer
69
91
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
70
92
  , {
71
93
  className: "fabric-editor-popup-scroll-parent",
72
94
  featureFlags: props.featureFlags,
73
95
  ref: scrollContainerRef,
74
96
  viewMode: props === null || props === void 0 ? void 0 : props.viewMode,
75
- isScrollable: true
97
+ isScrollable: true,
98
+ appearance: props.appearance
76
99
  }, jsx(ClickAreaBlock, {
77
100
  editorView: props.editorView,
78
101
  editorDisabled: props.disabled
@@ -12,6 +12,7 @@ import { injectIntl } from 'react-intl-next';
12
12
  import { fullPageMessages as messages } from '@atlaskit/editor-common/messages';
13
13
  import { ContextPanelConsumer } from '@atlaskit/editor-common/ui';
14
14
  import { ToolbarArrowKeyNavigationProvider } from '@atlaskit/editor-common/ui-menu';
15
+ import { fg } from '@atlaskit/platform-feature-flags';
15
16
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
16
17
  import { ToolbarPortalMountPoint, useToolbarPortal } from '../../Toolbar/ToolbarPortal';
17
18
  import { ToolbarWithSizeDetector as Toolbar } from '../../Toolbar/ToolbarWithSizeDetector';
@@ -64,7 +65,7 @@ export var EditorToolbar = /*#__PURE__*/React.memo(function (props) {
64
65
  css: customToolbarWrapperStyle
65
66
  }, !!props.customPrimaryToolbarComponents && 'before' in props.customPrimaryToolbarComponents ? jsx(BeforePrimaryToolbarWrapper, {
66
67
  beforePrimaryToolbarComponents: (_props$customPrimaryT = props.customPrimaryToolbarComponents) === null || _props$customPrimaryT === void 0 ? void 0 : _props$customPrimaryT.before
67
- }) : null, editorAPI !== null && editorAPI !== void 0 && editorAPI.findReplace && twoLineEditorToolbar ? editorAPI === null || editorAPI === void 0 ? void 0 : editorAPI.findReplace.actions.registerToolbarButton({
68
+ }) : null, !(editorExperiment('platform_editor_controls', 'variant1') && fg('platform_editor_find_and_replace_duplication')) && editorAPI !== null && editorAPI !== void 0 && editorAPI.findReplace && twoLineEditorToolbar ? editorAPI === null || editorAPI === void 0 ? void 0 : editorAPI.findReplace.actions.registerToolbarButton({
68
69
  popupsBoundariesElement: props.popupsBoundariesElement,
69
70
  popupsMountPoint: popupsMountPoint,
70
71
  popupsScrollableElement: props.popupsScrollableElement,
@@ -6,11 +6,8 @@ import { decisionListSelector, taskListSelector } from '@atlaskit/adf-schema';
6
6
  import { tableFullPageEditorStyles } from '@atlaskit/editor-plugins/table/ui/common-styles';
7
7
  import { tableMarginFullWidthMode } from '@atlaskit/editor-plugins/table/ui/consts';
8
8
  import { FULL_PAGE_EDITOR_TOOLBAR_HEIGHT, akEditorFullWidthLayoutWidth, akEditorGutterPaddingDynamic, akEditorSwoopCubicBezier, akLayoutGutterOffset } from '@atlaskit/editor-shared-styles';
9
- import { scrollbarStyles } from '@atlaskit/editor-shared-styles/scrollbar';
10
9
  import { fg } from '@atlaskit/platform-feature-flags';
11
10
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
12
- import { createEditorContentStyle } from '../../ContentStyles';
13
-
14
11
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
15
12
  var SWOOP_ANIMATION = "0.5s ".concat(akEditorSwoopCubicBezier);
16
13
  var getTotalPadding = function getTotalPadding() {
@@ -25,21 +22,6 @@ export var fullPageEditorWrapper = css({
25
22
  flexDirection: 'column',
26
23
  boxSizing: 'border-box'
27
24
  });
28
- var scrollStyles = css({
29
- flexGrow: 1,
30
- height: '100%',
31
- overflowY: 'scroll',
32
- position: 'relative',
33
- display: 'flex',
34
- flexDirection: 'column',
35
- scrollBehavior: 'smooth'
36
- },
37
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
38
- scrollbarStyles);
39
-
40
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
41
- export var ScrollContainer = createEditorContentStyle(scrollStyles);
42
- ScrollContainer.displayName = 'ScrollContainer';
43
25
 
44
26
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
45
27
  export var contentArea = function contentArea() {
@@ -142,7 +142,12 @@ export var fixBlockControlStylesSSR = function fixBlockControlStylesSSR() {
142
142
 
143
143
  // The breakpoint for small devices is 1266px, copied from getBreakpoint in platform/packages/editor/editor-common/src/ui/WidthProvider/index.tsx
144
144
  var akEditorBreakpointForSmallDevice = "1266px";
145
- var contentStyles = function contentStyles(props) {
145
+
146
+ // We are going to deprecate this in near future
147
+ // Currently, we are migrating content styles in packages/editor/editor-core/src/ui/EditorContentContainer.tsx
148
+ // Under editor experiment platform_editor_core_static_emotion
149
+ // If you are making changes to this file, please make sure to update in EditorContentContainer.tsx as well
150
+ var legacyContentStyles = function legacyContentStyles(props) {
146
151
  return css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n\t--ak-editor--default-gutter-padding: ", "px;\n\t/* 52 is from akEditorGutterPaddingDynamic via editor-shared-styles */\n\t--ak-editor--large-gutter-padding: ", "px;\n\t--ak-editor--default-layout-width: ", "px;\n\t--ak-editor--full-width-layout-width: ", "px;\n\t/* calculate editor line length, 100cqw is the editor container width */\n\t--ak-editor--line-length: min(\n\t\tcalc(100cqw - var(--ak-editor--large-gutter-padding) * 2),\n\t\tvar(--ak-editor--default-layout-width)\n\t);\n\t--ak-editor--breakout-wide-layout-width: ", "px;\n\t--ak-editor--breakout-full-page-guttering-padding: calc(\n\t\tvar(--ak-editor--large-gutter-padding) * 2 + var(--ak-editor--default-gutter-padding)\n\t);\n\n\t.fabric-editor--full-width-mode {\n\t\t--ak-editor--line-length: min(\n\t\t\tcalc(100cqw - var(--ak-editor--large-gutter-padding) * 2),\n\t\t\tvar(--ak-editor--full-width-layout-width)\n\t\t);\n\t}\n\n\t.ProseMirror {\n\t\t--ak-editor-max-container-width: calc(100cqw - var(--ak-editor--large-gutter-padding));\n\t}\n\n\t/* We can't allow nodes that are inside other nodes to bleed from the parent container */\n\t.ProseMirror > div[data-prosemirror-node-block] [data-prosemirror-node-block] {\n\t\t--ak-editor-max-container-width: 100%;\n\t}\n\n\t/* container editor-area is defined in platform/packages/editor/editor-core/src/ui/Appearance/FullPage/StyledComponents.ts */\n\t@container editor-area (width >= ", ") {\n\t\t.ProseMirror {\n\t\t\t--ak-editor--breakout-wide-layout-width: ", "px;\n\t\t}\n\t}\n\n\t.ProseMirror {\n\t\toutline: none;\n\t\tfont-size: ", "px;\n\t\t", ";\n\t\t", ";\n\t\t", ";\n\t\t", ";\n\t\t", ";\n\t\t", ";\n\t}\n\n\t", "\n\n\t.ProseMirror-hideselection *::selection {\n\t\tbackground: transparent;\n\t}\n\n\t.ProseMirror-hideselection *::-moz-selection {\n\t\tbackground: transparent;\n\t}\n\n\t/**\n\t * This prosemirror css style: https://github.com/ProseMirror/prosemirror-view/blob/f37ebb29befdbde3cd194fe13fe17b78e743d2f2/style/prosemirror.css#L24\n\t *\n\t * 1. Merge and Release platform_editor_hide_cursor_when_pm_hideselection\n\t * 2. Cleanup duplicated style from platform_editor_advanced_code_blocks\n\t * https://product-fabric.atlassian.net/browse/ED-26331\n\t */\n\t", "\n\n\t/* This prosemirror css style: https://github.com/ProseMirror/prosemirror-view/blob/f37ebb29befdbde3cd194fe13fe17b78e743d2f2/style/prosemirror.css#L24 */\n\t", "\n\n\t.ProseMirror-selectednode {\n\t\toutline: none;\n\t}\n\n\t.ProseMirror-selectednode:empty {\n\t\toutline: 2px solid ", ";\n\t}\n\n\t.ProseMirror.ProseMirror-focused:has(.ProseMirror-mark-boundary-cursor) {\n\t\tcaret-color: transparent;\n\t}\n\t.ProseMirror:not(.ProseMirror-focused) .ProseMirror-mark-boundary-cursor {\n\t\tdisplay: none;\n\t}\n\n\t", "\n\t", "\n\t", "\n\t", "\n\n ", "\n\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", ";\n\t", "\n\t", "\n\t", "\n\t", "\n\t", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n /* Switch between the two icons based on the visual refresh feature gate */\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\t", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\n .panelView-content-wrap {\n\t\tbox-sizing: border-box;\n\t}\n\n\t.mediaGroupView-content-wrap ul {\n\t\tpadding: 0;\n\t}\n\n\t/** Needed to override any cleared floats, e.g. image wrapping */\n\n\tdiv.fabric-editor-block-mark[class^='fabric-editor-align'] {\n\t\tclear: none !important;\n\t}\n\n\t.fabric-editor-align-end {\n\t\ttext-align: right;\n\t}\n\n\t.fabric-editor-align-start {\n\t\ttext-align: left;\n\t}\n\n\t.fabric-editor-align-center {\n\t\ttext-align: center;\n\t}\n\n\t/* For FullPage only when inside a table\n\tRelated code all lives inside: packages/editor/editor-core/src/ui/Appearance/FullPage/StyledComponents.ts\n\tIn the \"editorContentAreaContainerStyle\" function */\n\t.fabric-editor--full-width-mode {\n\t\t.pm-table-container {\n\t\t\t.code-block,\n\t\t\t.extension-container,\n\t\t\t.multiBodiedExtension--container {\n\t\t\t\tmax-width: 100%;\n\t\t\t}\n\t\t}\n\t}\n\n\t.pm-table-header-content-wrap :not(.fabric-editor-alignment),\n\t.pm-table-header-content-wrap :not(p, .fabric-editor-block-mark) + div.fabric-editor-block-mark,\n\t.pm-table-cell-content-wrap :not(p, .fabric-editor-block-mark) + div.fabric-editor-block-mark {\n\t\tp:first-of-type {\n\t\t\tmargin-top: 0;\n\t\t}\n\t}\n\t.pm-table-cell-content-wrap .mediaGroupView-content-wrap {\n\t\tclear: both;\n\t}\n\n\t.hyperlink-floating-toolbar,\n\t.", " {\n\t\tpadding: 0;\n\t}\n\n\t/* Legacy Link icon in the Atlaskit package\n is bigger than the others, new ADS icon does not have this issue\n */\n\t", "\n"])), akEditorGutterPadding, akEditorGutterPaddingDynamic(), akEditorDefaultLayoutWidth, akEditorFullWidthLayoutWidth, akEditorCalculatedWideLayoutWidthSmallViewport, akEditorBreakpointForSmallDevice, akEditorCalculatedWideLayoutWidth, editorFontSize({
147
152
  theme: props.theme
148
153
  }), whitespaceSharedStyles, paragraphSharedStyles(props.typographyTheme), listsSharedStyles, indentationSharedStyles, shadowSharedStyle, InlineNodeViewSharedStyles, fg('editor_request_to_edit_task') ? null : css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n\t\t\t\t.ProseMirror[contenteditable='false'] .taskItemView-content-wrap {\n\t\t\t\t\tpointer-events: none;\n\t\t\t\t\topacity: 0.7;\n\t\t\t\t}\n\t\t\t"]))), fg('platform_editor_hide_cursor_when_pm_hideselection') ? css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n\t\t\t\t.ProseMirror-hideselection {\n\t\t\t\t\tcaret-color: transparent;\n\t\t\t\t}\n\t\t\t"]))) : null, editorExperiment('platform_editor_advanced_code_blocks', true) ? css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral(["\n\t\t\t\t.ProseMirror-hideselection {\n\t\t\t\t\tcaret-color: transparent;\n\t\t\t\t}\n\t\t\t"]))) : null, "var(--ds-border-focused, #8cf)", placeholderTextStyles, placeholderStyles, editorExperiment('platform_editor_controls', 'variant1') ? placeholderOverflowStyles : null, editorExperiment('platform_editor_controls', 'variant1') && fg('platform_editor_quick_insert_placeholder') ? placeholderWrapStyles : null, codeBlockStyles(), blocktypeStyles(props.typographyTheme), codeMarkSharedStyles(), textColorStyles, backgroundColorStyles(), listsStyles, ruleStyles(), mediaStyles(), layoutStyles(props.viewMode), fg('confluence_team_presence_scroll_to_pointer') ? telepointerStyle : telepointerStyleWithInitialOnly, gapCursorStyles, panelStyles(), mentionsStyles, editorExperiment('platform_editor_vanilla_dom', true, {
@@ -171,7 +176,7 @@ export var createEditorContentStyle = function createEditorContentStyle(styles)
171
176
  colorMode = _useThemeObserver.colorMode,
172
177
  typography = _useThemeObserver.typography;
173
178
  var memoizedStyle = useMemo(function () {
174
- return contentStyles({
179
+ return legacyContentStyles({
175
180
  theme: theme,
176
181
  colorMode: colorMode,
177
182
  featureFlags: featureFlags,
@@ -185,14 +190,16 @@ export var createEditorContentStyle = function createEditorContentStyle(styles)
185
190
  className: className,
186
191
  ref: ref,
187
192
  css: [memoizedStyle, styles],
188
- "data-editor-scroll-container": "true"
193
+ "data-editor-scroll-container": "true",
194
+ "data-testid": "editor-content-container"
189
195
  }, children);
190
196
  }
191
197
  return jsx("div", {
192
198
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
193
199
  className: className,
194
200
  ref: ref,
195
- css: [memoizedStyle, styles]
201
+ css: [memoizedStyle, styles],
202
+ "data-testid": "editor-content-container"
196
203
  }, children);
197
204
  });
198
205
  };
@@ -40,6 +40,8 @@ var columnSeparatorStyles = function columnSeparatorStyles(viewMode) {
40
40
  var rowSeparatorStyles = function rowSeparatorStyles(viewMode) {
41
41
  return css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n\t[data-layout-content]::before {\n\t\tcontent: '';\n\t\tborder-top: ", "px solid\n\t\t\t", ";\n\t\tposition: absolute;\n\t\twidth: calc(100% - 32px);\n\t\tmargin-top: -13px;\n\n\t\t/* clear styles for column separator */\n\t\tborder-left: unset;\n\t\tmargin-left: unset;\n\t\theight: unset;\n\t}\n"])), viewMode === 'view' ? 0 : akEditorSelectedBorderSize, "var(--ds-border, #091E4224)");
42
42
  };
43
+
44
+ // jest warning: JSDOM version (22) doesn't support the new @container CSS rule
43
45
  var layoutWithSeparatorBorderResponsiveStyles = function layoutWithSeparatorBorderResponsiveStyles(breakpoint, viewMode
44
46
  // eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression
45
47
  ) {
@@ -51,6 +53,8 @@ var layoutWithSeparatorBorderStyles = function layoutWithSeparatorBorderStyles(v
51
53
  // eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression
52
54
  return css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n\t\t&.selected [data-layout-column]:not(:first-of-type),\n\t\t[data-empty-layout='true'] [data-layout-column]:not(:first-of-type),\n\t\t&:hover [data-layout-column]:not(:first-of-type) {\n\t\t\t", "\n\t\t}\n\n\t\t&.selected.danger [data-layout-section] {\n\t\t\tbackground-color: ", ";\n\n\t\t\tbox-shadow: 0 0 0 ", "px\n\t\t\t\t", ";\n\t\t\tborder-radius: 4px;\n\t\t\t[data-layout-column]:not(:first-of-type) {\n\t\t\t\t", "\n\t\t\t}\n\t\t}\n\n\t\t&.", ":not(.danger) [data-layout-section] {\n\t\t\tbox-shadow: 0 0 0 ", "px\n\t\t\t\t", ";\n\t\t\tborder-radius: 4px;\n\t\t\tbackground-color: ", ";\n\t\t\t[data-layout-column] {\n\t\t\t\t", "\n\t\t\t\tborder: 0px;\n\t\t\t\t::before {\n\t\t\t\t\tbackground-color: transparent;\n\t\t\t\t}\n\t\t\t}\n\t\t\t[data-layout-column]:not(:first-of-type) {\n\t\t\t\t", "\n\t\t\t}\n\t\t}\n\t"])), columnSeparatorStyles(viewMode), "var(--ds-background-danger, ".concat(akEditorDeleteBackground, ")"), viewMode === 'view' ? 0 : akEditorSelectedBorderSize, akEditorDeleteBorder, columnSeparatorStyles(viewMode), akEditorSelectedNodeClassName, viewMode === 'view' ? 0 : akEditorSelectedBorderSize, "var(--ds-border-selected, #0C66E4)", "var(--ds-background-selected, #E9F2FF)", getSelectionStyles([SelectionStyle.Blanket]), columnSeparatorStyles(viewMode));
53
55
  };
56
+
57
+ // jest warning: JSDOM version (22) doesn't support the new @container CSS rule
54
58
  var layoutResponsiveStyles = function layoutResponsiveStyles(viewMode) {
55
59
  return (// eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression
56
60
  css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n\t\t/* chosen breakpoints in container queries are to make sure layout responsiveness in editor aligns with renderer */\n\t\t/* not resized layout in full-width editor */\n\t\t.fabric-editor--full-width-mode .ProseMirror {\n\t\t\t> .layoutSectionView-content-wrap {\n\t\t\t\t[data-layout-section] {\n\t\t\t\t\t@container editor-area (max-width:724px) {\n\t\t\t\t\t\tflex-direction: column;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t", "\n\t\t\t}\n\t\t}\n\n\t\t/* not resized layout in fixed-width editor */\n\t\t.ak-editor-content-area:not(.fabric-editor--full-width-mode) .ProseMirror {\n\t\t\t> .layoutSectionView-content-wrap {\n\t\t\t\t[data-layout-section] {\n\t\t\t\t\t@container editor-area (max-width:788px) {\n\t\t\t\t\t\tflex-direction: column;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t", "\n\t\t\t}\n\t\t}\n\n\t\t/* resized layout in full/fixed-width editor */\n\t\t.ProseMirror .fabric-editor-breakout-mark {\n\t\t\t.layoutSectionView-content-wrap {\n\t\t\t\t[data-layout-section] {\n\t\t\t\t\t@container editor-area (max-width:820px) {\n\t\t\t\t\t\tflex-direction: column;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t", "\n\t\t\t}\n\t\t}\n\t"])), layoutWithSeparatorBorderResponsiveStyles(724, viewMode), layoutWithSeparatorBorderResponsiveStyles(788, viewMode), layoutWithSeparatorBorderResponsiveStyles(820, viewMode))
@@ -0,0 +1,251 @@
1
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
2
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14;
3
+ /* eslint-disable @atlaskit/design-system/consistent-css-prop-usage */
4
+ /* eslint-disable react-hooks/rules-of-hooks */
5
+ /* eslint-disable @atlaskit/design-system/no-css-tagged-template-expression -- Requires manual remediation over time due to use of unsafe nested mixins */
6
+ /**
7
+ * @jsxRuntime classic
8
+ * @jsx jsx
9
+ */
10
+ import React, { useMemo } from 'react';
11
+
12
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
13
+ import { css, jsx, useTheme } from '@emotion/react';
14
+ import { browser } from '@atlaskit/editor-common/browser';
15
+ import { telepointerStyle, telepointerStyleWithInitialOnly } from '@atlaskit/editor-common/collab';
16
+ import { EmojiSharedCssClassName, defaultEmojiHeight } from '@atlaskit/editor-common/emoji';
17
+ import { MentionSharedCssClassName } from '@atlaskit/editor-common/mention';
18
+ import { PanelSharedCssClassName } from '@atlaskit/editor-common/panel';
19
+ import { gapCursorStyles } from '@atlaskit/editor-common/selection';
20
+ import { CodeBlockSharedCssClassName, GRID_GUTTER, MediaSharedClassNames, SmartCardSharedCssClassName, annotationSharedStyles, backgroundColorStyles, blockMarksSharedStyles, codeBlockInListSafariFix, codeMarkSharedStyles, dateSharedStyle, embedCardStyles, expandClassNames, getSmartCardSharedStyles, gridStyles, indentationSharedStyles, linkSharedStyle, listsSharedStyles, paragraphSharedStyles, resizerStyles, ruleSharedStyles, shadowSharedStyle, smartCardSharedStyles, smartCardStyles, tasksAndDecisionsStyles, textColorStyles, unsupportedStyles, whitespaceSharedStyles } from '@atlaskit/editor-common/styles';
21
+ import { blocktypeStyles } from '@atlaskit/editor-plugins/block-type/styles';
22
+ import { findReplaceStyles } from '@atlaskit/editor-plugins/find-replace/styles';
23
+ import { textHighlightStyle } from '@atlaskit/editor-plugins/paste-options-toolbar/styles';
24
+ import { placeholderTextStyles } from '@atlaskit/editor-plugins/placeholder-text/styles';
25
+ import { tableCommentEditorStyles } from '@atlaskit/editor-plugins/table/ui/common-styles';
26
+ import { SelectionStyle, akEditorCalculatedWideLayoutWidth, akEditorCalculatedWideLayoutWidthSmallViewport, akEditorDefaultLayoutWidth, akEditorDeleteBackgroundWithOpacity, akEditorDeleteBorder, akEditorFullWidthLayoutWidth, akEditorGutterPadding, akEditorGutterPaddingDynamic, akEditorSelectedBorderColor, akEditorSelectedBorderSize, akEditorSelectedNodeClassName, blockNodesVerticalMargin, editorFontSize, getSelectionStyles } from '@atlaskit/editor-shared-styles';
27
+ import { scrollbarStyles } from '@atlaskit/editor-shared-styles/scrollbar';
28
+ import { fg } from '@atlaskit/platform-feature-flags';
29
+ import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
30
+ import { useThemeObserver } from '@atlaskit/tokens';
31
+ import { InlineNodeViewSharedStyles } from '../nodeviews/getInlineNodeViewProducer.styles';
32
+ import { aiPanelStyles } from './ContentStyles/ai-panels';
33
+ import { codeBlockStyles } from './ContentStyles/code-block';
34
+ import { dateStyles, dateVanillaStyles } from './ContentStyles/date';
35
+ import { expandStyles } from './ContentStyles/expand';
36
+ import { extensionStyles } from './ContentStyles/extension';
37
+ import { layoutStyles } from './ContentStyles/layout';
38
+ import { mediaStyles } from './ContentStyles/media';
39
+ import { panelStyles } from './ContentStyles/panel';
40
+ import { statusStyles, vanillaStatusStyles } from './ContentStyles/status';
41
+ import { taskDecisionStyles, vanillaTaskDecisionIconWithoutVisualRefresh as vanillaDecisionIconWithoutVisualRefresh, vanillaTaskDecisionIconWithVisualRefresh as vanillaDecisionIconWithVisualRefresh, vanillaTaskDecisionStyles as vanillaDecisionStyles, vanillaTaskItemStyles } from './ContentStyles/tasks-and-decisions';
42
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
43
+ export var linkStyles = css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n\t.ProseMirror {\n\t\t", "\n\t}\n"])), linkSharedStyle());
44
+ var ruleStyles = function ruleStyles() {
45
+ return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n\t.ProseMirror {\n\t\t", ";\n\n\t\thr {\n\t\t\tcursor: pointer;\n\t\t\tpadding: ", " 0;\n\t\t\tmargin: ", " 0;\n\t\t\tbackground-clip: content-box;\n\n\t\t\t&.", " {\n\t\t\t\toutline: none;\n\t\t\t\tbackground-color: ", ";\n\t\t\t}\n\t\t}\n\t}\n"])), ruleSharedStyles(), "var(--ds-space-050, 4px)", "var(--ds-space-300, 24px)", akEditorSelectedNodeClassName, "var(--ds-border-selected, ".concat(akEditorSelectedBorderColor, ")"));
46
+ };
47
+ var vanillaMentionsStyles = css({
48
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
49
+ '.editor-mention-primitive': {
50
+ display: 'inline',
51
+ borderRadius: '20px',
52
+ cursor: 'pointer',
53
+ padding: '0 0.3em 2px 0.23em',
54
+ fontWeight: "var(--ds-font-weight-regular, 400)",
55
+ wordBreak: 'break-word',
56
+ background: "var(--ds-background-neutral, #091E420F)",
57
+ border: '1px solid transparent',
58
+ color: "var(--ds-text-subtle, #44546F)",
59
+ '&:hover': {
60
+ background: "var(--ds-background-neutral-hovered, #091E4224)"
61
+ },
62
+ '&:active': {
63
+ background: "var(--ds-background-neutral-pressed, #091E424F)"
64
+ }
65
+ },
66
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
67
+ '.editor-mention-primitive.mention-restricted': {
68
+ background: 'transparent',
69
+ border: "1px solid ".concat("var(--ds-border-bold, #758195)"),
70
+ color: "var(--ds-text, #172B4D)",
71
+ '&:hover': {
72
+ background: 'transparent'
73
+ },
74
+ '&:active': {
75
+ background: 'transparent'
76
+ }
77
+ },
78
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
79
+ '.editor-mention-primitive.mention-self': {
80
+ background: "var(--ds-background-brand-bold, #0C66E4)",
81
+ border: '1px solid transparent',
82
+ color: "var(--ds-text-inverse, #FFFFFF)",
83
+ '&:hover': {
84
+ background: "var(--ds-background-brand-bold-hovered, #0055CC)"
85
+ },
86
+ '&:active': {
87
+ background: "var(--ds-background-brand-bold-pressed, #09326C)"
88
+ }
89
+ }
90
+ });
91
+ var vanillaSelectionStyles = css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n\t.danger {\n\t\t.editor-mention-primitive {\n\t\t\tbox-shadow: 0 0 0 ", "px ", ";\n\t\t\tbackground-color: ", ";\n\t\t}\n\t}\n\n\t.", " > .editor-mention-primitive,\n\t.", " > .editor-mention-primitive.mention-self,\n\t.", " > .editor-mention-primitive.mention-restricted {\n\t\t", "\n\t\t/* need to specify dark text colour because personal mentions\n\t\t (in dark blue) have white text by default */\n\t\tcolor: ", "\n\t}\n"])), akEditorSelectedBorderSize, akEditorDeleteBorder, "var(--ds-background-danger, ".concat(akEditorDeleteBackgroundWithOpacity, ")"), akEditorSelectedNodeClassName, akEditorSelectedNodeClassName, akEditorSelectedNodeClassName, getSelectionStyles([SelectionStyle.BoxShadow, SelectionStyle.Background]), "var(--ds-text-subtle, #44546F)");
92
+ var mentionsStyles = css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n\t.", " {\n\t\t&.", " [data-mention-id] > span {\n\t\t\t", "\n\n\t\t\t/* need to specify dark text colour because personal mentions\n\t\t (in dark blue) have white text by default */\n\t color: ", ";\n\t\t}\n\t}\n\n\t.danger {\n\t\t.", ".", "\n\t\t\t> span\n\t\t\t> span\n\t\t\t> span {\n\t\t\tbox-shadow: 0 0 0 ", "px ", ";\n\t\t\tbackground-color: ", ";\n\t\t}\n\t\t.", " > span > span > span {\n\t\t\tbackground-color: ", ";\n\t\t\tcolor: ", ";\n\t\t}\n\t}\n"])), MentionSharedCssClassName.MENTION_CONTAINER, akEditorSelectedNodeClassName, getSelectionStyles([SelectionStyle.BoxShadow, SelectionStyle.Background]), "var(--ds-text-subtle, #44546F)", MentionSharedCssClassName.MENTION_CONTAINER, akEditorSelectedNodeClassName, akEditorSelectedBorderSize, akEditorDeleteBorder, "var(--ds-background-danger, ".concat(akEditorDeleteBackgroundWithOpacity, ")"), MentionSharedCssClassName.MENTION_CONTAINER, "var(--ds-background-neutral, #091E420F)", "var(--ds-text-subtle, #44546F)");
93
+ var listsStyles = css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n\t.ProseMirror {\n\t\tli {\n\t\t\tposition: relative;\n\n\t\t\t> p:not(:first-child) {\n\t\t\t\tmargin: ", " 0 0 0;\n\t\t\t}\n\n\t\t\t// In SSR the above rule will apply to all p tags because first-child would be a style tag.\n\t\t\t// The following rule resets the first p tag back to its original margin\n\t\t\t// defined in packages/editor/editor-common/src/styles/shared/paragraph.ts\n\t\t\t> style:first-child + p {\n\t\t\t\tmargin-top: ", ";\n\t\t\t}\n\t\t}\n\n\t\t&:not([data-node-type='decisionList']) > li,\n\t// This prevents https://product-fabric.atlassian.net/browse/ED-20924\n\t&:not(.", ") > li {\n\t\t\t", "\n\t\t}\n\t}\n"])), "var(--ds-space-050, 4px)", blockNodesVerticalMargin, SmartCardSharedCssClassName.BLOCK_CARD_CONTAINER, browser.safari ? codeBlockInListSafariFix : '');
94
+ var reactEmojiStyles = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n\t.", " {\n\t\tdisplay: inline-block;\n\n\t\t.", " {\n\t\t\tcursor: pointer;\n\n\t\t\t&.", " > span {\n\t\t\t\t/** needed for selection style to cover custom emoji image properly */\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\t.", ", .", " {\n\t\t\t\tborder-radius: 2px;\n\t\t\t\t", "\n\t\t\t}\n\t\t}\n\t}\n"])), EmojiSharedCssClassName.EMOJI_CONTAINER, EmojiSharedCssClassName.EMOJI_NODE, EmojiSharedCssClassName.EMOJI_IMAGE, akEditorSelectedNodeClassName, EmojiSharedCssClassName.EMOJI_SPRITE, EmojiSharedCssClassName.EMOJI_IMAGE, getSelectionStyles([SelectionStyle.Blanket, SelectionStyle.BoxShadow]));
95
+ var emojiStyles = css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n\t[data-prosemirror-node-view-type='vanilla'] {\n\t\t.", " {\n\t\t\tdisplay: inline-block;\n\t\t}\n\n\t\t.", ", .", " {\n\t\t\tbackground: no-repeat transparent;\n\t\t\tdisplay: inline-block;\n\t\t\theight: ", "px;\n\t\t\tmax-height: ", "px;\n\t\t\tcursor: pointer;\n\t\t\tvertical-align: middle;\n\t\t\tuser-select: all;\n\t\t}\n\n\t\t&.", " {\n\t\t\t.", ", .", " {\n\t\t\t\tborder-radius: 2px;\n\t\t\t\t", "\n\t\t\t}\n\t\t}\n\t}\n"])), EmojiSharedCssClassName.EMOJI_CONTAINER, EmojiSharedCssClassName.EMOJI_SPRITE, EmojiSharedCssClassName.EMOJI_IMAGE, defaultEmojiHeight, defaultEmojiHeight, akEditorSelectedNodeClassName, EmojiSharedCssClassName.EMOJI_SPRITE, EmojiSharedCssClassName.EMOJI_IMAGE, getSelectionStyles([SelectionStyle.Blanket, SelectionStyle.BoxShadow]));
96
+
97
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
98
+ export var placeholderStyles = css({
99
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
100
+ '.ProseMirror .placeholder-decoration': {
101
+ color: "var(--ds-text-subtlest, #626F86)",
102
+ width: '100%',
103
+ pointerEvents: 'none',
104
+ userSelect: 'none',
105
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
106
+ '.placeholder-android': {
107
+ pointerEvents: 'none',
108
+ outline: 'none',
109
+ userSelect: 'none',
110
+ position: 'absolute'
111
+ }
112
+ }
113
+ });
114
+ var placeholderOverflowStyles = css({
115
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors -- Ignored via go/DSP-18766
116
+ '.ProseMirror p:has(.placeholder-decoration-hide-overflow)': {
117
+ overflow: 'hidden',
118
+ whiteSpace: 'nowrap',
119
+ textOverflow: 'ellipsis'
120
+ }
121
+ });
122
+ var placeholderWrapStyles = css({
123
+ // As part of controls work, we add placeholder `Search` to quick insert command
124
+ // This style is to prevent `/Search` being wrapped if it's triggered at the end of the line
125
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
126
+ '.ProseMirror mark[data-type-ahead-query="true"]:has(.placeholder-decoration-wrap)': {
127
+ whiteSpace: 'nowrap'
128
+ }
129
+ });
130
+ var firstBlockNodeStyles = css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n\t.ProseMirror {\n\t\t> .", ",\n\t\t\t> .", ",\n\t\t\t> .", ",\n\t\t\t> div[data-task-list-local-id],\n\t\t> div[data-layout-section],\n\t\t> .", " {\n\t\t\t&:first-child {\n\t\t\t\tmargin-top: 0;\n\t\t\t}\n\t\t}\n\n\t\t> hr:first-of-type {\n\t\t\tmargin-top: 0;\n\t\t}\n\t}\n"])), PanelSharedCssClassName.prefix, CodeBlockSharedCssClassName.CODEBLOCK_CONTAINER, SmartCardSharedCssClassName.BLOCK_CARD_CONTAINER, expandClassNames.prefix);
131
+ var firstBlockNodeStylesNew = css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n\t.ProseMirror {\n\t\t> .", ",\n\t\t\t> .", ",\n\t\t\t> .", ",\n\t\t\t> div[data-task-list-local-id],\n\t\t> div[data-layout-section],\n\t\t> .", " {\n\t\t\t&:first-child {\n\t\t\t\tmargin-top: 0;\n\t\t\t}\n\t\t}\n\n\t\t> hr:first-child,\n\t\t> .ProseMirror-widget:first-child + hr {\n\t\t\tmargin-top: 0;\n\t\t}\n\t}\n"])), PanelSharedCssClassName.prefix, CodeBlockSharedCssClassName.CODEBLOCK_CONTAINER, SmartCardSharedCssClassName.BLOCK_CARD_CONTAINER, expandClassNames.prefix);
132
+
133
+ /**
134
+ * fix layout issue of first block node
135
+ */
136
+ export var fixBlockControlStylesSSR = function fixBlockControlStylesSSR() {
137
+ if (fg('platform_editor_element_dnd_nested_fix_patch_6')) {
138
+ return firstBlockNodeStylesNew;
139
+ }
140
+ return firstBlockNodeStyles;
141
+ };
142
+
143
+ // The breakpoint for small devices is 1266px, copied from getBreakpoint in platform/packages/editor/editor-common/src/ui/WidthProvider/index.tsx
144
+ var akEditorBreakpointForSmallDevice = "1266px";
145
+
146
+ // jest warning: JSDOM version (22) doesn't support the new @container CSS rule
147
+ var contentStyles = function contentStyles(props) {
148
+ return css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n\t--ak-editor--default-gutter-padding: ", "px;\n\t/* 52 is from akEditorGutterPaddingDynamic via editor-shared-styles */\n\t--ak-editor--large-gutter-padding: ", "px;\n\t--ak-editor--default-layout-width: ", "px;\n\t--ak-editor--full-width-layout-width: ", "px;\n\t/* calculate editor line length, 100cqw is the editor container width */\n\t--ak-editor--line-length: min(\n\t\tcalc(100cqw - var(--ak-editor--large-gutter-padding) * 2),\n\t\tvar(--ak-editor--default-layout-width)\n\t);\n\t--ak-editor--breakout-wide-layout-width: ", "px;\n\t--ak-editor--breakout-full-page-guttering-padding: calc(\n\t\tvar(--ak-editor--large-gutter-padding) * 2 + var(--ak-editor--default-gutter-padding)\n\t);\n\n\t.fabric-editor--full-width-mode {\n\t\t--ak-editor--line-length: min(\n\t\t\tcalc(100cqw - var(--ak-editor--large-gutter-padding) * 2),\n\t\t\tvar(--ak-editor--full-width-layout-width)\n\t\t);\n\t}\n\n\t.ProseMirror {\n\t\t--ak-editor-max-container-width: calc(100cqw - var(--ak-editor--large-gutter-padding));\n\t}\n\n\t/* We can't allow nodes that are inside other nodes to bleed from the parent container */\n\t.ProseMirror > div[data-prosemirror-node-block] [data-prosemirror-node-block] {\n\t\t--ak-editor-max-container-width: 100%;\n\t}\n\n\t/* container editor-area is defined in platform/packages/editor/editor-core/src/ui/Appearance/FullPage/StyledComponents.ts */\n\t@container editor-area (width >= ", ") {\n\t\t.ProseMirror {\n\t\t\t--ak-editor--breakout-wide-layout-width: ", "px;\n\t\t}\n\t}\n\n\t.ProseMirror {\n\t\toutline: none;\n\t\tfont-size: ", "px;\n\t\t", ";\n\t\t", ";\n\t\t", ";\n\t\t", ";\n\t\t", ";\n\t\t", ";\n\t}\n\n\t", "\n\n\t.ProseMirror-hideselection *::selection {\n\t\tbackground: transparent;\n\t}\n\n\t.ProseMirror-hideselection *::-moz-selection {\n\t\tbackground: transparent;\n\t}\n\n\t/**\n\t * This prosemirror css style: https://github.com/ProseMirror/prosemirror-view/blob/f37ebb29befdbde3cd194fe13fe17b78e743d2f2/style/prosemirror.css#L24\n\t *\n\t * 1. Merge and Release platform_editor_hide_cursor_when_pm_hideselection\n\t * 2. Cleanup duplicated style from platform_editor_advanced_code_blocks\n\t * https://product-fabric.atlassian.net/browse/ED-26331\n\t */\n\t", "\n\n\t/* This prosemirror css style: https://github.com/ProseMirror/prosemirror-view/blob/f37ebb29befdbde3cd194fe13fe17b78e743d2f2/style/prosemirror.css#L24 */\n\t", "\n\n\t.ProseMirror-selectednode {\n\t\toutline: none;\n\t}\n\n\t.ProseMirror-selectednode:empty {\n\t\toutline: 2px solid ", ";\n\t}\n\n\t.ProseMirror.ProseMirror-focused:has(.ProseMirror-mark-boundary-cursor) {\n\t\tcaret-color: transparent;\n\t}\n\t.ProseMirror:not(.ProseMirror-focused) .ProseMirror-mark-boundary-cursor {\n\t\tdisplay: none;\n\t}\n\n\t", "\n\t", "\n\t", "\n\t", "\n\n ", "\n\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", ";\n\t", "\n\t", "\n\t", "\n\t", "\n\t", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n // Switch between the two icons based on the visual refresh feature gate\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\t", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\n .panelView-content-wrap {\n\t\tbox-sizing: border-box;\n\t}\n\n\t.mediaGroupView-content-wrap ul {\n\t\tpadding: 0;\n\t}\n\n\t/** Needed to override any cleared floats, e.g. image wrapping */\n\n\tdiv.fabric-editor-block-mark[class^='fabric-editor-align'] {\n\t\tclear: none !important;\n\t}\n\n\t.fabric-editor-align-end {\n\t\ttext-align: right;\n\t}\n\n\t.fabric-editor-align-start {\n\t\ttext-align: left;\n\t}\n\n\t.fabric-editor-align-center {\n\t\ttext-align: center;\n\t}\n\n\t// For FullPage only when inside a table\n\t// Related code all lives inside: packages/editor/editor-core/src/ui/Appearance/FullPage/StyledComponents.ts\n\t// In the \"editorContentAreaContainerStyle\" function\n\t.fabric-editor--full-width-mode {\n\t\t.pm-table-container {\n\t\t\t.code-block,\n\t\t\t.extension-container,\n\t\t\t.multiBodiedExtension--container {\n\t\t\t\tmax-width: 100%;\n\t\t\t}\n\t\t}\n\t}\n\n\t.pm-table-header-content-wrap :not(.fabric-editor-alignment),\n\t.pm-table-header-content-wrap :not(p, .fabric-editor-block-mark) + div.fabric-editor-block-mark,\n\t.pm-table-cell-content-wrap :not(p, .fabric-editor-block-mark) + div.fabric-editor-block-mark {\n\t\tp:first-of-type {\n\t\t\tmargin-top: 0;\n\t\t}\n\t}\n\t.pm-table-cell-content-wrap .mediaGroupView-content-wrap {\n\t\tclear: both;\n\t}\n\n\t.hyperlink-floating-toolbar,\n\t.", " {\n\t\tpadding: 0;\n\t}\n\n\t/* Legacy Link icon in the Atlaskit package\n\t is bigger than the others, new ADS icon does not have this issue\n */\n\t", "\n"])), akEditorGutterPadding, akEditorGutterPaddingDynamic(), akEditorDefaultLayoutWidth, akEditorFullWidthLayoutWidth, akEditorCalculatedWideLayoutWidthSmallViewport, akEditorBreakpointForSmallDevice, akEditorCalculatedWideLayoutWidth, editorFontSize({
149
+ theme: props.theme
150
+ }), whitespaceSharedStyles, paragraphSharedStyles(props.typographyTheme), listsSharedStyles, indentationSharedStyles, shadowSharedStyle, InlineNodeViewSharedStyles, fg('editor_request_to_edit_task') ? null : css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n\t\t\t\t.ProseMirror[contenteditable='false'] .taskItemView-content-wrap {\n\t\t\t\t\tpointer-events: none;\n\t\t\t\t\topacity: 0.7;\n\t\t\t\t}\n\t\t\t"]))), fg('platform_editor_hide_cursor_when_pm_hideselection') ? css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n\t\t\t\t.ProseMirror-hideselection {\n\t\t\t\t\tcaret-color: transparent;\n\t\t\t\t}\n\t\t\t"]))) : null, editorExperiment('platform_editor_advanced_code_blocks', true) ? css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral(["\n\t\t\t\t.ProseMirror-hideselection {\n\t\t\t\t\tcaret-color: transparent;\n\t\t\t\t}\n\t\t\t"]))) : null, "var(--ds-border-focused, #8cf)", placeholderTextStyles, placeholderStyles, editorExperiment('platform_editor_controls', 'variant1') ? placeholderOverflowStyles : null, editorExperiment('platform_editor_controls', 'variant1') && fg('platform_editor_quick_insert_placeholder') ? placeholderWrapStyles : null, codeBlockStyles(), blocktypeStyles(props.typographyTheme), codeMarkSharedStyles(), textColorStyles, backgroundColorStyles(), listsStyles, ruleStyles(), mediaStyles(), layoutStyles(props.viewMode), fg('confluence_team_presence_scroll_to_pointer') ? telepointerStyle : telepointerStyleWithInitialOnly, gapCursorStyles, panelStyles(), mentionsStyles, editorExperiment('platform_editor_vanilla_dom', true, {
151
+ exposure: false
152
+ }) && vanillaMentionsStyles, editorExperiment('platform_editor_vanilla_dom', true, {
153
+ exposure: false
154
+ }) && vanillaSelectionStyles, editorExperiment('platform_editor_vanilla_dom', true, {
155
+ exposure: false
156
+ }) ? emojiStyles : reactEmojiStyles, emojiStyles, tasksAndDecisionsStyles, gridStyles, linkStyles, blockMarksSharedStyles, dateSharedStyle, extensionStyles, expandStyles(), findReplaceStyles, textHighlightStyle, taskDecisionStyles, editorExperiment('platform_editor_vanilla_dom', true, {
157
+ exposure: false
158
+ }) && vanillaTaskItemStyles, editorExperiment('platform_editor_vanilla_dom', true, {
159
+ exposure: false
160
+ }) && vanillaDecisionStyles, editorExperiment('platform_editor_vanilla_dom', true, {
161
+ exposure: false
162
+ }) && fg('platform-visual-refresh-icons') && vanillaDecisionIconWithVisualRefresh, editorExperiment('platform_editor_vanilla_dom', true, {
163
+ exposure: false
164
+ }) && !fg('platform-visual-refresh-icons') && vanillaDecisionIconWithoutVisualRefresh, statusStyles, editorExperiment('platform_editor_vanilla_dom', true) ? vanillaStatusStyles : null, annotationSharedStyles(), smartCardStyles(), fg('platform-linking-visual-refresh-v1') ? getSmartCardSharedStyles() : smartCardSharedStyles, editorExperiment('platform_editor_vanilla_dom', true) ? dateVanillaStyles : null, dateStyles, embedCardStyles(), unsupportedStyles, resizerStyles, aiPanelStyles(props.colorMode), fixBlockControlStylesSSR(), MediaSharedClassNames.FLOATING_TOOLBAR_COMPONENT, !fg('platform-visual-refresh-icons') ? css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral(["\n\t\t\t\t.hyperlink-open-link {\n\t\t\t\t\tmin-width: 24px;\n\t\t\t\t\tsvg {\n\t\t\t\t\t\tmax-width: 18px;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t"]))) : null);
165
+ };
166
+ var CommentEditorMargin = 14;
167
+
168
+ // Originally copied from packages/editor/editor-core/src/ui/Appearance/Comment/Comment.tsx
169
+ var commentEditorStyles = css({
170
+ flexGrow: 1,
171
+ overflowX: 'clip',
172
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-typography
173
+ lineHeight: '24px',
174
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
175
+ '.ProseMirror': {
176
+ margin: "var(--ds-space-150, 12px)"
177
+ },
178
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
179
+ '.gridParent': {
180
+ marginLeft: "var(--ds-space-025, 2px)",
181
+ marginRight: "var(--ds-space-025, 2px)",
182
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
183
+ width: "calc(100% + ".concat(CommentEditorMargin - GRID_GUTTER, "px)")
184
+ },
185
+ padding: "var(--ds-space-250, 20px)"
186
+ },
187
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
188
+ tableCommentEditorStyles);
189
+
190
+ // Originally copied from scrollStyles in packages/editor/editor-core/src/ui/Appearance/FullPage/StyledComponents.ts
191
+ var fullPageEditorStyles = css({
192
+ flexGrow: 1,
193
+ height: '100%',
194
+ overflowY: 'scroll',
195
+ position: 'relative',
196
+ display: 'flex',
197
+ flexDirection: 'column',
198
+ scrollBehavior: 'smooth'
199
+ },
200
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
201
+ scrollbarStyles);
202
+
203
+ /**
204
+ * EditorContentStyles is a wrapper component that applies styles to its children
205
+ * based on the provided feature flags, view mode, and other props.
206
+ * It uses Emotion for styling and supports scrollable content.
207
+ * The component is memoized to optimize performance.
208
+ *
209
+ * This will be used in near future to replace the current editor content styles from index.tsx
210
+ *
211
+ * @param {EditorContentContainerProps} props - The props for the component.
212
+ * @param {string} props.className - Additional class name for the component.
213
+ * @param {React.ReactNode} props.children - The content to be rendered inside the component.
214
+ * @param {FeatureFlags} props.featureFlags - Feature flags to control the styles.
215
+ * @param {'view' | 'edit'} props.viewMode - The view mode of the editor.
216
+ * @param {boolean} props.isScrollable - Whether the content is scrollable.
217
+ * @param {'full-page' | 'full-width' | 'comment' | 'chromeless'} props.appearance - The appearance of the editor.
218
+ * @returns {JSX.Element} The styled content component.
219
+ */
220
+ var EditorContentContainer = /*#__PURE__*/React.forwardRef(function (props, ref) {
221
+ var className = props.className,
222
+ children = props.children,
223
+ featureFlags = props.featureFlags,
224
+ viewMode = props.viewMode,
225
+ isScrollable = props.isScrollable,
226
+ appearance = props.appearance;
227
+ var theme = useTheme();
228
+ var _useThemeObserver = useThemeObserver(),
229
+ colorMode = _useThemeObserver.colorMode,
230
+ typography = _useThemeObserver.typography;
231
+ var memoizedStyle = useMemo(function () {
232
+ return contentStyles({
233
+ theme: theme,
234
+ colorMode: colorMode,
235
+ featureFlags: featureFlags,
236
+ viewMode: viewMode,
237
+ typographyTheme: typography
238
+ });
239
+ }, [theme, colorMode, featureFlags, viewMode, typography]);
240
+ var isFullPage = appearance === 'full-page' || appearance === 'full-width';
241
+ var isComment = appearance === 'comment';
242
+ return jsx("div", {
243
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
244
+ className: className,
245
+ ref: ref,
246
+ css: [memoizedStyle, isComment && commentEditorStyles, isFullPage && fullPageEditorStyles],
247
+ "data-editor-scroll-container": isScrollable ? 'true' : undefined,
248
+ "data-testid": "editor-content-container"
249
+ }, children);
250
+ });
251
+ export default EditorContentContainer;
@@ -1,2 +1,2 @@
1
1
  export var name = "@atlaskit/editor-core";
2
- export var version = "206.0.2";
2
+ export var version = "206.1.0";
@@ -713,6 +713,7 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
713
713
  suppressToolbar?: (() => boolean) | undefined;
714
714
  unsuppressToolbar?: (() => boolean) | undefined;
715
715
  setToolbarDocking?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
716
+ forceToolbarDockingWithoutAnalytics?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
716
717
  refreshToolbarDocking?: (() => boolean) | undefined;
717
718
  } | undefined;
718
719
  }, import("@atlaskit/editor-plugins/selection-toolbar").SelectionToolbarPluginOptions>>];
@@ -794,6 +795,7 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
794
795
  suppressToolbar?: (() => boolean) | undefined;
795
796
  unsuppressToolbar?: (() => boolean) | undefined;
796
797
  setToolbarDocking?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
798
+ forceToolbarDockingWithoutAnalytics?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
797
799
  refreshToolbarDocking?: (() => boolean) | undefined;
798
800
  } | undefined;
799
801
  }, import("@atlaskit/editor-plugins/selection-toolbar").SelectionToolbarPluginOptions>, import("@atlaskit/editor-common/types").NextEditorPluginFunctionOptionalConfigDefinition<"clearMarksOnEmptyDoc", {}, undefined>, import("@atlaskit/editor-common/types").NextEditorPluginFunctionOptionalConfigDefinition<"blockType", {
@@ -877,6 +879,7 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
877
879
  suppressToolbar?: (() => boolean) | undefined;
878
880
  unsuppressToolbar?: (() => boolean) | undefined;
879
881
  setToolbarDocking?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
882
+ forceToolbarDockingWithoutAnalytics?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
880
883
  refreshToolbarDocking?: (() => boolean) | undefined;
881
884
  } | undefined;
882
885
  }, import("@atlaskit/editor-plugins/selection-toolbar").SelectionToolbarPluginOptions>>];
@@ -765,6 +765,7 @@ export default function createUniversalPresetInternal({ appearance, props, featu
765
765
  suppressToolbar?: (() => boolean) | undefined;
766
766
  unsuppressToolbar?: (() => boolean) | undefined;
767
767
  setToolbarDocking?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
768
+ forceToolbarDockingWithoutAnalytics?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
768
769
  refreshToolbarDocking?: (() => boolean) | undefined;
769
770
  } | undefined;
770
771
  }, import("@atlaskit/editor-plugins/selection-toolbar").SelectionToolbarPluginOptions>>];
@@ -846,6 +847,7 @@ export default function createUniversalPresetInternal({ appearance, props, featu
846
847
  suppressToolbar?: (() => boolean) | undefined;
847
848
  unsuppressToolbar?: (() => boolean) | undefined;
848
849
  setToolbarDocking?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
850
+ forceToolbarDockingWithoutAnalytics?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
849
851
  refreshToolbarDocking?: (() => boolean) | undefined;
850
852
  } | undefined;
851
853
  }, import("@atlaskit/editor-plugins/selection-toolbar").SelectionToolbarPluginOptions>, import("@atlaskit/editor-common/types").NextEditorPluginFunctionOptionalConfigDefinition<"clearMarksOnEmptyDoc", {}, undefined>, import("@atlaskit/editor-common/types").NextEditorPluginFunctionOptionalConfigDefinition<"blockType", {
@@ -929,6 +931,7 @@ export default function createUniversalPresetInternal({ appearance, props, featu
929
931
  suppressToolbar?: (() => boolean) | undefined;
930
932
  unsuppressToolbar?: (() => boolean) | undefined;
931
933
  setToolbarDocking?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
934
+ forceToolbarDockingWithoutAnalytics?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
932
935
  refreshToolbarDocking?: (() => boolean) | undefined;
933
936
  } | undefined;
934
937
  }, import("@atlaskit/editor-plugins/selection-toolbar").SelectionToolbarPluginOptions>>];
@@ -713,6 +713,7 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
713
713
  suppressToolbar?: (() => boolean) | undefined;
714
714
  unsuppressToolbar?: (() => boolean) | undefined;
715
715
  setToolbarDocking?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
716
+ forceToolbarDockingWithoutAnalytics?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
716
717
  refreshToolbarDocking?: (() => boolean) | undefined;
717
718
  } | undefined;
718
719
  }, import("@atlaskit/editor-plugins/selection-toolbar").SelectionToolbarPluginOptions>>];
@@ -794,6 +795,7 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
794
795
  suppressToolbar?: (() => boolean) | undefined;
795
796
  unsuppressToolbar?: (() => boolean) | undefined;
796
797
  setToolbarDocking?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
798
+ forceToolbarDockingWithoutAnalytics?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
797
799
  refreshToolbarDocking?: (() => boolean) | undefined;
798
800
  } | undefined;
799
801
  }, import("@atlaskit/editor-plugins/selection-toolbar").SelectionToolbarPluginOptions>, import("@atlaskit/editor-common/types").NextEditorPluginFunctionOptionalConfigDefinition<"clearMarksOnEmptyDoc", {}, undefined>, import("@atlaskit/editor-common/types").NextEditorPluginFunctionOptionalConfigDefinition<"blockType", {
@@ -877,6 +879,7 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
877
879
  suppressToolbar?: (() => boolean) | undefined;
878
880
  unsuppressToolbar?: (() => boolean) | undefined;
879
881
  setToolbarDocking?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
882
+ forceToolbarDockingWithoutAnalytics?: ((toolbarDocking: import("packages/editor/editor-plugin-selection-toolbar/dist/types/types").ToolbarDocking) => boolean) | undefined;
880
883
  refreshToolbarDocking?: (() => boolean) | undefined;
881
884
  } | undefined;
882
885
  }, import("@atlaskit/editor-plugins/selection-toolbar").SelectionToolbarPluginOptions>>];