@atlaskit/editor-core 208.3.4 → 208.3.6

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 +33 -0
  2. package/dist/cjs/ui/Appearance/FullPage/CustomToolbarWrapper.js +119 -0
  3. package/dist/cjs/ui/Appearance/FullPage/FullPage.js +6 -1
  4. package/dist/cjs/ui/Appearance/FullPage/FullPageToolbar.js +9 -9
  5. package/dist/cjs/ui/Appearance/FullPage/MainToolbarWrapper.js +97 -0
  6. package/dist/cjs/ui/ContentStyles/index.js +8 -7
  7. package/dist/cjs/ui/ContentStyles/tasks-and-decisions.js +1 -1
  8. package/dist/cjs/ui/EditorContentContainer/EditorContentContainer.js +11 -19
  9. package/dist/cjs/ui/EditorContentContainer/styles/findReplaceStyles.js +82 -1
  10. package/dist/cjs/ui/EditorContentContainer/styles/mentions.js +7 -3
  11. package/dist/cjs/ui/EditorContentContainer/styles/tasksAndDecisionsStyles.js +1 -1
  12. package/dist/cjs/version-wrapper.js +1 -1
  13. package/dist/es2019/ui/Appearance/FullPage/CustomToolbarWrapper.js +103 -0
  14. package/dist/es2019/ui/Appearance/FullPage/FullPage.js +6 -1
  15. package/dist/es2019/ui/Appearance/FullPage/FullPageToolbar.js +10 -10
  16. package/dist/es2019/ui/Appearance/FullPage/MainToolbarWrapper.js +92 -0
  17. package/dist/es2019/ui/ContentStyles/index.js +11 -10
  18. package/dist/es2019/ui/ContentStyles/tasks-and-decisions.js +1 -1
  19. package/dist/es2019/ui/EditorContentContainer/EditorContentContainer.js +15 -23
  20. package/dist/es2019/ui/EditorContentContainer/styles/findReplaceStyles.js +109 -0
  21. package/dist/es2019/ui/EditorContentContainer/styles/mentions.js +6 -2
  22. package/dist/es2019/ui/EditorContentContainer/styles/tasksAndDecisionsStyles.js +1 -1
  23. package/dist/es2019/version-wrapper.js +1 -1
  24. package/dist/esm/ui/Appearance/FullPage/CustomToolbarWrapper.js +111 -0
  25. package/dist/esm/ui/Appearance/FullPage/FullPage.js +6 -1
  26. package/dist/esm/ui/Appearance/FullPage/FullPageToolbar.js +10 -10
  27. package/dist/esm/ui/Appearance/FullPage/MainToolbarWrapper.js +90 -0
  28. package/dist/esm/ui/ContentStyles/index.js +9 -8
  29. package/dist/esm/ui/ContentStyles/tasks-and-decisions.js +1 -1
  30. package/dist/esm/ui/EditorContentContainer/EditorContentContainer.js +15 -23
  31. package/dist/esm/ui/EditorContentContainer/styles/findReplaceStyles.js +81 -0
  32. package/dist/esm/ui/EditorContentContainer/styles/mentions.js +6 -2
  33. package/dist/esm/ui/EditorContentContainer/styles/tasksAndDecisionsStyles.js +1 -1
  34. package/dist/esm/version-wrapper.js +1 -1
  35. package/dist/types/ui/Appearance/FullPage/CustomToolbarWrapper.d.ts +15 -0
  36. package/dist/types/ui/Appearance/FullPage/MainToolbarWrapper.d.ts +20 -0
  37. package/dist/types/ui/EditorContentContainer/styles/findReplaceStyles.d.ts +1 -0
  38. package/dist/types/ui/EditorContentContainer/styles/mentions.d.ts +2 -2
  39. package/dist/types-ts4.5/ui/Appearance/FullPage/CustomToolbarWrapper.d.ts +15 -0
  40. package/dist/types-ts4.5/ui/Appearance/FullPage/MainToolbarWrapper.d.ts +20 -0
  41. package/dist/types-ts4.5/ui/EditorContentContainer/styles/findReplaceStyles.d.ts +1 -0
  42. package/dist/types-ts4.5/ui/EditorContentContainer/styles/mentions.d.ts +2 -2
  43. package/package.json +4 -18
@@ -0,0 +1,103 @@
1
+ /**
2
+ * @jsxRuntime classic
3
+ * @jsx jsx
4
+ */
5
+ import React from 'react';
6
+
7
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
8
+ import { css, jsx } from '@emotion/react';
9
+ import { componentWithCondition } from '@atlaskit/platform-feature-flags-react';
10
+ import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
11
+ import { mainToolbarFirstChildStyle, mainToolbarSecondChildStyle } from './MainToolbar';
12
+ // Pre-computed static styles for first- and second-child wrappers.
13
+ // These contain no runtime logic and are safe for static-emotion mode.
14
+
15
+ const firstChildStaticBase = css({
16
+ display: 'flex',
17
+ flexGrow: 1
18
+ });
19
+
20
+ // we can't avoid some kind of function call here, so we need to disable the rule
21
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
22
+ const firstChildStaticTwoLine = css({
23
+ '@media (max-width: 868px)': {
24
+ flex: '1 1 100%',
25
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
26
+ height: 'var(--ak-editor-fullpage-toolbar-height)',
27
+ justifyContent: 'flex-end',
28
+ minWidth: 'fit-content'
29
+ }
30
+ });
31
+ const secondChildStaticBase = css({
32
+ minWidth: 'fit-content'
33
+ });
34
+
35
+ // we can't avoid some kind of function call here, so we need to disable the rule
36
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
37
+ const secondChildStaticTwoLine = css({
38
+ '@media (max-width: 868px)': {
39
+ display: 'flex',
40
+ flexGrow: 1,
41
+ flex: '1 1 100%',
42
+ margin: 'auto',
43
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
44
+ height: 'var(--ak-editor-fullpage-toolbar-height)',
45
+ minWidth: 0
46
+ }
47
+ });
48
+
49
+ // ---------------- First child wrapper ----------------
50
+ const FirstChildWrapperStatic = ({
51
+ twoLineEditorToolbar,
52
+ children,
53
+ role,
54
+ 'aria-label': ariaLabel,
55
+ 'data-testid': testId
56
+ }) => jsx("div", {
57
+ css: [firstChildStaticBase, twoLineEditorToolbar && firstChildStaticTwoLine],
58
+ role: role,
59
+ "aria-label": ariaLabel,
60
+ "data-testid": testId
61
+ }, children);
62
+ const FirstChildWrapperDynamic = ({
63
+ twoLineEditorToolbar,
64
+ children,
65
+ role,
66
+ 'aria-label': ariaLabel,
67
+ 'data-testid': testId
68
+ }) => jsx("div", {
69
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/design-system/consistent-css-prop-usage
70
+ css: mainToolbarFirstChildStyle(twoLineEditorToolbar),
71
+ role: role,
72
+ "aria-label": ariaLabel,
73
+ "data-testid": testId
74
+ }, children);
75
+ export const MainToolbarForFirstChildWrapper = componentWithCondition(() => expValEquals('platform_editor_core_static_emotion_non_central', 'isEnabled', true), FirstChildWrapperStatic, FirstChildWrapperDynamic);
76
+
77
+ // ---------------- Second child wrapper ----------------
78
+ const SecondChildWrapperStatic = ({
79
+ twoLineEditorToolbar,
80
+ children,
81
+ role,
82
+ 'aria-label': ariaLabel,
83
+ 'data-testid': testId
84
+ }) => jsx("div", {
85
+ css: [secondChildStaticBase, twoLineEditorToolbar && secondChildStaticTwoLine],
86
+ role: role,
87
+ "aria-label": ariaLabel,
88
+ "data-testid": testId
89
+ }, children);
90
+ const SecondChildWrapperDynamic = ({
91
+ twoLineEditorToolbar,
92
+ children,
93
+ role,
94
+ 'aria-label': ariaLabel,
95
+ 'data-testid': testId
96
+ }) => jsx("div", {
97
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/design-system/consistent-css-prop-usage
98
+ css: mainToolbarSecondChildStyle(twoLineEditorToolbar),
99
+ role: role,
100
+ "aria-label": ariaLabel,
101
+ "data-testid": testId
102
+ }, children);
103
+ export const MainToolbarForSecondChildWrapper = componentWithCondition(() => expValEquals('platform_editor_core_static_emotion_non_central', 'isEnabled', true), SecondChildWrapperStatic, SecondChildWrapperDynamic);
@@ -10,6 +10,7 @@ import { browser } from '@atlaskit/editor-common/browser';
10
10
  import { sharedPluginStateHookMigratorFactory, useSharedPluginState } from '@atlaskit/editor-common/hooks';
11
11
  import { ContextPanelWidthProvider } from '@atlaskit/editor-common/ui';
12
12
  import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
13
+ import { FULL_PAGE_EDITOR_TOOLBAR_HEIGHT } from '@atlaskit/editor-shared-styles';
13
14
  import { fg } from '@atlaskit/platform-feature-flags';
14
15
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
15
16
  import { getPrimaryToolbarComponents } from '../../Toolbar/getPrimaryToolbarComponents';
@@ -148,7 +149,11 @@ export const FullPageEditor = props => {
148
149
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
149
150
  ,
150
151
  className: "akEditor",
151
- ref: wrapperElementRef
152
+ ref: wrapperElementRef,
153
+ style: {
154
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
155
+ '--ak-editor-fullpage-toolbar-height': FULL_PAGE_EDITOR_TOOLBAR_HEIGHT()
156
+ }
152
157
  }, !isEditorToolbarHidden && jsx(FullPageToolbar, {
153
158
  appearance: props.appearance,
154
159
  editorAPI: editorAPI,
@@ -15,7 +15,9 @@ import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
15
15
  import { ToolbarPortalMountPoint, useToolbarPortal } from '../../Toolbar/ToolbarPortal';
16
16
  import { ToolbarWithSizeDetector as Toolbar } from '../../Toolbar/ToolbarWithSizeDetector';
17
17
  import { BeforePrimaryToolbarWrapper } from './BeforeWrapper';
18
- import { customToolbarWrapperStyle, mainToolbarFirstChildStyle, mainToolbarIconBeforeStyle, mainToolbarSecondChildStyle, mainToolbarStyle, MAXIMUM_TWO_LINE_TOOLBAR_BREAKPOINT, nonCustomToolbarWrapperStyle } from './MainToolbar';
18
+ import { MainToolbarForFirstChildWrapper, MainToolbarForSecondChildWrapper } from './CustomToolbarWrapper';
19
+ import { customToolbarWrapperStyle, mainToolbarIconBeforeStyle, MAXIMUM_TWO_LINE_TOOLBAR_BREAKPOINT, nonCustomToolbarWrapperStyle } from './MainToolbar';
20
+ import { MainToolbarWrapper } from './MainToolbarWrapper';
19
21
  export const EditorToolbar = /*#__PURE__*/React.memo(props => {
20
22
  var _props$primaryToolbar, _useToolbarPortal, _props$customPrimaryT;
21
23
  const [shouldSplitToolbar, setShouldSplitToolbar] = useState(false);
@@ -118,18 +120,16 @@ export const EditorToolbar = /*#__PURE__*/React.memo(props => {
118
120
  isShortcutToFocusToolbar: isShortcutToFocusToolbar,
119
121
  handleEscape: handleEscape,
120
122
  intl: props.intl
121
- }, jsx(ToolbarPortal, null, jsx("div", {
122
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/design-system/consistent-css-prop-usage -- Ignored via go/DSP-18766
123
- css: mainToolbarStyle(props.showKeyline || contextPanelWidth > 0, twoLineEditorToolbar),
123
+ }, jsx(ToolbarPortal, null, jsx(MainToolbarWrapper, {
124
+ showKeyline: props.showKeyline || contextPanelWidth > 0,
125
+ twoLineEditorToolbar: twoLineEditorToolbar,
124
126
  "data-testid": "ak-editor-main-toolbar"
125
- }, jsx("div", {
126
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/design-system/consistent-css-prop-usage -- Ignored via go/DSP-18766
127
- css: mainToolbarFirstChildStyle(twoLineEditorToolbar),
127
+ }, jsx(MainToolbarForFirstChildWrapper, {
128
+ twoLineEditorToolbar: twoLineEditorToolbar,
128
129
  role: "toolbar",
129
130
  "aria-label": props.intl.formatMessage(messages.toolbarLabel)
130
- }, shouldSplitToolbar ? customToolbar : nonCustomToolbar), jsx("div", {
131
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/design-system/consistent-css-prop-usage -- Ignored via go/DSP-18766
132
- css: mainToolbarSecondChildStyle(twoLineEditorToolbar),
131
+ }, shouldSplitToolbar ? customToolbar : nonCustomToolbar), jsx(MainToolbarForSecondChildWrapper, {
132
+ twoLineEditorToolbar: twoLineEditorToolbar,
133
133
  "data-testid": "avatar-group-outside-plugin",
134
134
  role: "region",
135
135
  "aria-label": props.intl.formatMessage(messages.pageActionsLabel)
@@ -0,0 +1,92 @@
1
+ /**
2
+ * @jsxRuntime classic
3
+ * @jsx jsx
4
+ */
5
+ import React from 'react';
6
+
7
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
8
+ import { css, jsx } from '@emotion/react';
9
+ import { akEditorFloatingDialogZIndex, akEditorSwoopCubicBezier } from '@atlaskit/editor-shared-styles';
10
+ import { fg } from '@atlaskit/platform-feature-flags';
11
+ import { componentWithCondition } from '@atlaskit/platform-feature-flags-react';
12
+ import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
13
+ import { mainToolbarStyle as mainToolbarStyleDynamic, MAXIMUM_TWO_LINE_TOOLBAR_BREAKPOINT } from './MainToolbar';
14
+
15
+ // Base styles that don't depend on feature flags
16
+ const baseToolbarStyles = css({
17
+ position: 'relative',
18
+ alignItems: 'center',
19
+ boxShadow: 'none',
20
+ borderBottom: `1px solid ${"var(--ds-border, #091E4224)"}`,
21
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values
22
+ transition: `box-shadow 200ms ${akEditorSwoopCubicBezier}`,
23
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values
24
+ zIndex: akEditorFloatingDialogZIndex,
25
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values
26
+ display: 'flex',
27
+ height: 'var(--ak-editor-fullpage-toolbar-height)',
28
+ flexShrink: 0,
29
+ backgroundColor: "var(--ds-surface, #FFFFFF)",
30
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
31
+ '& object': {
32
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-important-styles
33
+ height: '0 !important'
34
+ }
35
+ });
36
+ const flexibleIconSize = css({
37
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
38
+ '& span svg': {
39
+ maxWidth: '100%'
40
+ }
41
+ });
42
+ // box-shadow is overriden by the mainToolbar
43
+ const mainToolbarWithKeyline = css({
44
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
45
+ boxShadow: `${"var(--ds-shadow-overflow, 0px 0px 8px #091E4228, 0px 0px 1px #091E421e)"}`
46
+ });
47
+ const mainToolbarTwoLineStyle = css({
48
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
49
+ [`@media (max-width: ${MAXIMUM_TWO_LINE_TOOLBAR_BREAKPOINT}px)`]: {
50
+ flexWrap: 'wrap',
51
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
52
+ height: `calc(var(--ak-editor-fullpage-toolbar-height) * 2)`
53
+ }
54
+ });
55
+ const MainToolbarWrapperNext = ({
56
+ showKeyline,
57
+ twoLineEditorToolbar,
58
+ children,
59
+ 'data-testid': testId
60
+ }) => {
61
+ return jsx("div", {
62
+ // eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage
63
+ css: [baseToolbarStyles, fg('platform-visual-refresh-icons') && flexibleIconSize, showKeyline && mainToolbarWithKeyline, twoLineEditorToolbar && mainToolbarTwoLineStyle],
64
+ "data-testid": testId
65
+ }, children);
66
+ };
67
+
68
+ /**
69
+ * Original version of the toolbar wrapper using dynamic styles
70
+ */
71
+ const MainToolbarWrapperOld = ({
72
+ showKeyline,
73
+ twoLineEditorToolbar,
74
+ children,
75
+ 'data-testid': testId
76
+ }) => {
77
+ return jsx("div", {
78
+ css:
79
+ // eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage, @atlaskit/ui-styling-standard/no-imported-style-values
80
+ mainToolbarStyleDynamic(showKeyline, twoLineEditorToolbar),
81
+ "data-testid": testId
82
+ }, children);
83
+ };
84
+
85
+ /**
86
+ * Wrapper component for the main toolbar that handles feature flag based styling
87
+ * @example
88
+ * <MainToolbarWrapper showKeyline={true} twoLineEditorToolbar={false}>
89
+ * <ToolbarContent />
90
+ * </MainToolbarWrapper>
91
+ */
92
+ export const MainToolbarWrapper = componentWithCondition(() => expValEquals('platform_editor_core_static_emotion_non_central', 'isEnabled', true), MainToolbarWrapperNext, MainToolbarWrapperOld);
@@ -19,11 +19,12 @@ import { PanelSharedCssClassName } from '@atlaskit/editor-common/panel';
19
19
  import { gapCursorStyles } from '@atlaskit/editor-common/selection';
20
20
  import { CodeBlockSharedCssClassName, MediaSharedClassNames, SmartCardSharedCssClassName, annotationSharedStyles, backgroundColorStyles, blockMarksSharedStyles, codeBlockInListSafariFix, codeMarkSharedStyles, dateSharedStyle, embedCardStyles, expandClassNames, getSmartCardSharedStyles, gridStyles, indentationSharedStyles, linkSharedStyle, listsSharedStyles, paragraphSharedStyles, resizerStyles, pragmaticResizerStyles, pragmaticStylesLayoutFirstNodeResizeHandleFix, pragmaticResizerStylesForTooltip, ruleSharedStyles, shadowSharedStyle, smartCardSharedStyles, smartCardStyles, tasksAndDecisionsStyles, textColorStyles, unsupportedStyles, whitespaceSharedStyles } from '@atlaskit/editor-common/styles';
21
21
  import { blocktypeStyles } from '@atlaskit/editor-plugins/block-type/styles';
22
- import { findReplaceStyles } from '@atlaskit/editor-plugins/find-replace/styles';
22
+ import { findReplaceStyles, findReplaceStylesNew } from '@atlaskit/editor-plugins/find-replace/styles';
23
23
  import { textHighlightStyle } from '@atlaskit/editor-plugins/paste-options-toolbar/styles';
24
24
  import { placeholderTextStyles, placeholderTextStyles_fg_platform_editor_system_fake_text_highlight_colour } from '@atlaskit/editor-plugins/placeholder-text/styles';
25
25
  import { SelectionStyle, akEditorCalculatedWideLayoutWidth, akEditorCalculatedWideLayoutWidthSmallViewport, akEditorDefaultLayoutWidth, akEditorDeleteBackgroundWithOpacity, akEditorDeleteBorder, akEditorFullWidthLayoutWidth, akEditorGutterPadding, akEditorGutterPaddingDynamic, akEditorSelectedBorderColor, akEditorSelectedBorderSize, akEditorSelectedNodeClassName, blockNodesVerticalMargin, editorFontSize, getSelectionStyles } from '@atlaskit/editor-shared-styles';
26
26
  import { fg } from '@atlaskit/platform-feature-flags';
27
+ import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
27
28
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
28
29
  import { useThemeObserver } from '@atlaskit/tokens';
29
30
  import { InlineNodeViewSharedStyles } from '../../nodeviews/getInlineNodeViewProducer.styles';
@@ -60,13 +61,17 @@ const ruleStyles = () => css`
60
61
  }
61
62
  }
62
63
  `;
63
- const vanillaMentionsStyles = css({
64
+ const mentionNodeStyles = css({
64
65
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
65
66
  '.editor-mention-primitive': {
66
67
  display: 'inline',
67
68
  borderRadius: '20px',
68
69
  cursor: 'pointer',
69
70
  padding: '0 0.3em 2px 0.23em',
71
+ // To match `packages/elements/mention/src/components/Mention/PrimitiveMention.tsx` implementation
72
+ // we match the line height exactly
73
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-typography
74
+ lineHeight: '1.714',
70
75
  fontWeight: "var(--ds-font-weight-regular, 400)",
71
76
  wordBreak: 'break-word',
72
77
  background: "var(--ds-background-neutral, #091E420F)",
@@ -386,7 +391,7 @@ const legacyContentStyles = props => css`
386
391
  display: none;
387
392
  }
388
393
 
389
- ${fg('platform_editor_fix_floating_toolbar_focus') ? firstFloatingToolbarButtonStyles : null}
394
+ ${firstFloatingToolbarButtonStyles}
390
395
  ${placeholderTextStyles}
391
396
  ${fg('platform_editor_system_fake_text_highlight_colour') && placeholderTextStyles_fg_platform_editor_system_fake_text_highlight_colour}
392
397
  ${placeholderStyles}
@@ -407,9 +412,7 @@ const legacyContentStyles = props => css`
407
412
  ${gapCursorStyles};
408
413
  ${panelStyles()}
409
414
  ${mentionsStyles}
410
- ${editorExperiment('platform_editor_vanilla_dom', true, {
411
- exposure: false
412
- }) && vanillaMentionsStyles}
415
+ ${mentionNodeStyles}
413
416
  ${editorExperiment('platform_editor_vanilla_dom', true, {
414
417
  exposure: false
415
418
  }) && vanillaSelectionStyles}
@@ -424,12 +427,10 @@ const legacyContentStyles = props => css`
424
427
  ${dateSharedStyle}
425
428
  ${extensionStyles}
426
429
  ${expandStyles()}
427
- ${findReplaceStyles}
430
+ ${expValEqualsNoExposure('platform_editor_find_and_replace_improvements', 'isEnabled', true) ? findReplaceStylesNew : findReplaceStyles}
428
431
  ${textHighlightStyle}
429
432
  ${taskDecisionStyles}
430
- ${editorExperiment('platform_editor_vanilla_dom', true, {
431
- exposure: false
432
- }) && vanillaTaskItemStyles}
433
+ ${vanillaTaskItemStyles}
433
434
  ${editorExperiment('platform_editor_vanilla_dom', true, {
434
435
  exposure: false
435
436
  }) && vanillaDecisionStyles}
@@ -171,7 +171,7 @@ export const vanillaTaskItemStyles = css({
171
171
  display: 'none'
172
172
  },
173
173
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
174
- '[data-prosemirror-node-view-type="vanilla"][data-prosemirror-node-name="taskItem"]:has([data-empty]):not(:has([data-type-ahead])) [data-component="placeholder"]': {
174
+ "[data-prosemirror-node-view-type='vanilla'][data-prosemirror-node-name='taskItem']:has([data-empty]):not(:has([data-type-ahead])) [data-component='placeholder']": {
175
175
  display: 'block'
176
176
  },
177
177
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
@@ -25,12 +25,12 @@ import { codeMarkStyles } from './styles/codeMarkStyles';
25
25
  import { commentEditorStyles } from './styles/commentEditorStyles';
26
26
  import { cursorStyles } from './styles/cursorStyles';
27
27
  import { dateStyles, dateVanillaStyles } from './styles/dateStyles';
28
- import { editorUGCTokensDefault, editorUGCTokensModernized, editorUGCTokensRefreshed } from './styles/editorUGCTokenStyles';
28
+ import { editorUGCTokensDefault, editorUGCTokensRefreshed } from './styles/editorUGCTokenStyles';
29
29
  import { embedCardStyles } from './styles/embedCardStyles';
30
30
  import { reactEmojiStyles, vanillaEmojiStyles } from './styles/emoji';
31
31
  import { expandStyles, expandStylesMixin_fg_platform_editor_nested_dnd_styles_changes, expandStylesMixin_fg_platform_visual_refresh_icons, expandStylesMixin_without_fg_platform_editor_nested_dnd_styles_changes } from './styles/expandStyles';
32
32
  import { extensionStyles } from './styles/extensionStyles';
33
- import { findReplaceStyles } from './styles/findReplaceStyles';
33
+ import { findReplaceStyles, findReplaceStylesNew } from './styles/findReplaceStyles';
34
34
  import { firstBlockNodeStyles } from './styles/firstBlockNodeStyles';
35
35
  import { firstFloatingToolbarButtonStyles } from './styles/floatingToolbarStyles';
36
36
  import { fullPageEditorStyles } from './styles/fullPageEditorStyles';
@@ -42,9 +42,9 @@ import { layoutBaseStyles, layoutBaseStylesAdvanced, layoutBaseStylesFixesUnderN
42
42
  import { hyperLinkFloatingToolbarStyles, linkLegacyIconStylesFix, linkStyles, linkStylesOld } from './styles/link';
43
43
  import { listsStyles, listsStylesSafariFix } from './styles/list';
44
44
  import { mediaAlignmentStyles, mediaGroupStyles, mediaStyles } from './styles/mediaStyles';
45
- import { mentionsStyles, vanillaMentionsSelectionStyles, vanillaMentionsStyles } from './styles/mentions';
45
+ import { mentionsStyles, mentionsSelectionStyles, mentionNodeStyles } from './styles/mentions';
46
46
  import { panelStyles, panelStylesMixin, panelStylesMixin_fg_platform_editor_add_border_for_nested_panel, panelStylesMixin_fg_platform_editor_nested_dnd_styles_changes, panelViewStyles } from './styles/panelStyles';
47
- import { paragraphStylesOld, paragraphStylesUGCModernized, paragraphStylesUGCRefreshed } from './styles/paragraphStyles';
47
+ import { paragraphStylesOld, paragraphStylesUGCRefreshed } from './styles/paragraphStyles';
48
48
  import { placeholderOverflowStyles, placeholderStyles, placeholderTextStyles, placeholderTextStylesMixin_fg_platform_editor_system_fake_text_highlight_colour, placeholderWrapStyles } from './styles/placeholderStyles';
49
49
  import { pragmaticResizerStyles, pragmaticResizerStylesNew, pragmaticStylesLayoutFirstNodeResizeHandleFix, pragmaticResizerStylesForTooltip, resizerStyles } from './styles/resizerStyles';
50
50
  import { ruleStyles } from './styles/rule';
@@ -107,7 +107,7 @@ const EditorContentContainer = /*#__PURE__*/React.forwardRef((props, ref) => {
107
107
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
108
108
  cursorStyles,
109
109
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
110
- fg('platform_editor_fix_floating_toolbar_focus') && firstFloatingToolbarButtonStyles,
110
+ firstFloatingToolbarButtonStyles,
111
111
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
112
112
  placeholderTextStyles, fg('platform_editor_system_fake_text_highlight_colour') &&
113
113
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
@@ -121,11 +121,9 @@ const EditorContentContainer = /*#__PURE__*/React.forwardRef((props, ref) => {
121
121
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
122
122
  codeBlockStyles,
123
123
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
124
- !fg('platform_editor_typography_ugc') && editorUGCTokensDefault, (fg('platform-dst-jira-web-fonts') || fg('confluence_typography_refreshed') || fg('atlas_editor_typography_refreshed')) && fg('platform_editor_typography_ugc') &&
124
+ !fg('platform_editor_typography_ugc') && editorUGCTokensDefault, fg('platform_editor_typography_ugc') &&
125
125
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
126
- editorUGCTokensRefreshed, !(fg('platform-dst-jira-web-fonts') || fg('confluence_typography_refreshed') || fg('atlas_editor_typography_refreshed')) && fg('platform_editor_typography_ugc') &&
127
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
128
- editorUGCTokensModernized,
126
+ editorUGCTokensRefreshed,
129
127
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
130
128
  blocktypeStyles,
131
129
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
@@ -183,15 +181,15 @@ const EditorContentContainer = /*#__PURE__*/React.forwardRef((props, ref) => {
183
181
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
184
182
  expandStylesMixin_without_fg_platform_editor_nested_dnd_styles_changes,
185
183
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
186
- fg('platform-visual-refresh-icons') && expandStylesMixin_fg_platform_visual_refresh_icons,
184
+ fg('platform-visual-refresh-icons') && expandStylesMixin_fg_platform_visual_refresh_icons, expValEqualsNoExposure('platform_editor_find_and_replace_improvements', 'isEnabled', true) ?
185
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
186
+ findReplaceStylesNew :
187
187
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
188
188
  findReplaceStyles,
189
189
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
190
190
  textHighlightStyle,
191
191
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
192
- decisionStyles, editorExperiment('platform_editor_vanilla_dom', true, {
193
- exposure: false
194
- }) &&
192
+ decisionStyles,
195
193
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
196
194
  vanillaTaskItemStyles, editorExperiment('platform_editor_vanilla_dom', true, {
197
195
  exposure: false
@@ -263,12 +261,10 @@ const EditorContentContainer = /*#__PURE__*/React.forwardRef((props, ref) => {
263
261
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
264
262
  linkingVisualRefreshV1Styles,
265
263
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
266
- dateVanillaStyles, fg('platform_editor_typography_ugc') ? fg('platform-dst-jira-web-fonts') || fg('confluence_typography_refreshed') || fg('atlas_editor_typography_refreshed') ?
264
+ dateVanillaStyles, fg('platform_editor_typography_ugc') ?
267
265
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
268
266
  paragraphStylesUGCRefreshed :
269
267
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
270
- paragraphStylesUGCModernized :
271
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
272
268
  paragraphStylesOld,
273
269
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
274
270
  fg('platform_editor_hyperlink_underline') ? linkStyles : linkStylesOld,
@@ -313,15 +309,11 @@ const EditorContentContainer = /*#__PURE__*/React.forwardRef((props, ref) => {
313
309
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
314
310
  firstCodeBlockWithNoMarginOld,
315
311
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
316
- firstBlockNodeStyles, editorExperiment('platform_editor_vanilla_dom', true, {
317
- exposure: false
318
- }) &&
312
+ firstBlockNodeStyles,
319
313
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
320
- vanillaMentionsStyles, editorExperiment('platform_editor_vanilla_dom', true, {
321
- exposure: false
322
- }) &&
314
+ mentionNodeStyles,
323
315
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
324
- vanillaMentionsSelectionStyles, editorExperiment('platform_editor_vanilla_dom', true, {
316
+ mentionsSelectionStyles, editorExperiment('platform_editor_vanilla_dom', true, {
325
317
  exposure: false
326
318
  }) ?
327
319
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
@@ -12,4 +12,113 @@ export const findReplaceStyles = css({
12
12
  '.selected-search-match': {
13
13
  backgroundColor: "var(--ds-background-accent-teal-subtle, #6CC3E0)"
14
14
  }
15
+ });
16
+
17
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
18
+ export const findReplaceStylesNew = css({
19
+ /** Text match styles */
20
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
21
+ '.search-match': {
22
+ borderRadius: '3px',
23
+ backgroundColor: "var(--ds-background-accent-teal-subtlest, #E7F9FF)",
24
+ boxShadow: `${"var(--ds-shadow-raised, 0 1px 1px 0 rgba(9, 30, 66, 0.25), 0 0 1px 0 rgba(9, 30, 66, 0.31))"}, inset 0 0 0 1px ${"var(--ds-border-input, #8590A2)"}`
25
+ },
26
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
27
+ '.search-match-selected': {
28
+ backgroundColor: "var(--ds-background-accent-teal-subtle, #6CC3E0)"
29
+ },
30
+ /** Block match styles */
31
+
32
+ /** Light mode */
33
+
34
+ /** Without node selection */
35
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
36
+ '.search-match-block': {
37
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
38
+ '[data-smart-link-container="true"], .loader-wrapper>div::after': {
39
+ boxShadow: `
40
+ inset 0 0 0 1px ${"var(--ds-background-accent-yellow-subtler-pressed, #E2B203)"},
41
+ inset 0 0 0 5px ${"var(--ds-background-accent-yellow-subtler, #F8E6A0)"}
42
+ `
43
+ }
44
+ },
45
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
46
+ '.search-match-selected.search-match-block': {
47
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
48
+ '[data-smart-link-container="true"], .loader-wrapper>div::after': {
49
+ boxShadow: `
50
+ inset 0 0 0 1px ${"var(--ds-background-accent-yellow-subtler-pressed, #E2B203)"},
51
+ inset 0 0 0 4px ${"var(--ds-background-accent-yellow-subtlest-pressed, #F5CD47)"}
52
+ `
53
+ }
54
+ },
55
+ /** With node selection */
56
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
57
+ '.search-match-block.ak-editor-selected-node': {
58
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
59
+ '.loader-wrapper>div::after': {
60
+ boxShadow: `
61
+ inset 0 0 0 1px ${"var(--ds-background-accent-yellow-subtler-pressed, #E2B203)"},
62
+ inset 0 0 0 5px ${"var(--ds-background-accent-yellow-subtler, #F8E6A0)"},
63
+ 0 0 0 1px ${"var(--ds-border-selected, #0C66E4)"}
64
+ `
65
+ }
66
+ },
67
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
68
+ '.search-match-selected.search-match-block.ak-editor-selected-node': {
69
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
70
+ '[data-smart-link-container="true"], .loader-wrapper>div::after': {
71
+ boxShadow: `
72
+ inset 0 0 0 1px ${"var(--ds-background-accent-yellow-subtler-pressed, #E2B203)"},
73
+ inset 0 0 0 4px ${"var(--ds-background-accent-yellow-subtlest-pressed, #F5CD47)"},
74
+ 0 0 0 1px ${"var(--ds-border-selected, #0C66E4)"}
75
+ `
76
+ }
77
+ },
78
+ /** Dark mode */
79
+
80
+ /** Without node selection */
81
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
82
+ '.search-match-block.search-match-dark': {
83
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
84
+ '[data-smart-link-container="true"], .loader-wrapper>div::after': {
85
+ boxShadow: `
86
+ inset 0 0 0 1px ${"var(--ds-background-accent-yellow-bolder, #946F00)"},
87
+ inset 0 0 0 5px ${"var(--ds-background-accent-yellow-bolder-pressed, #533F04)"}
88
+ `
89
+ }
90
+ },
91
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
92
+ '.search-match-selected.search-match-block.search-match-dark': {
93
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
94
+ '[data-smart-link-container="true"], .loader-wrapper>div::after': {
95
+ boxShadow: `
96
+ inset 0 0 0 1px ${"var(--ds-background-accent-yellow-bolder, #946F00)"},
97
+ inset 0 0 0 4px ${"var(--ds-background-accent-yellow-bolder-hovered, #7F5F01)"}
98
+ `
99
+ }
100
+ },
101
+ /** With node selection */
102
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
103
+ '.search-match-block.search-match-dark.ak-editor-selected-node': {
104
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
105
+ '.loader-wrapper>div::after': {
106
+ boxShadow: `
107
+ inset 0 0 0 1px ${"var(--ds-background-accent-yellow-bolder, #946F00)"},
108
+ inset 0 0 0 5px ${"var(--ds-background-accent-yellow-bolder-pressed, #533F04)"},
109
+ 0 0 0 1px ${"var(--ds-border-selected, #0C66E4)"}
110
+ `
111
+ }
112
+ },
113
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
114
+ '.search-match-selected.search-match-block.search-match-dark.ak-editor-selected-node': {
115
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
116
+ '[data-smart-link-container="true"], .loader-wrapper>div::after': {
117
+ boxShadow: `
118
+ inset 0 0 0 1px ${"var(--ds-background-accent-yellow-bolder, #946F00)"},
119
+ inset 0 0 0 4px ${"var(--ds-background-accent-yellow-bolder-hovered, #7F5F01)"},
120
+ 0 0 0 1px ${"var(--ds-border-selected, #0C66E4)"}
121
+ `
122
+ }
123
+ }
15
124
  });
@@ -42,13 +42,17 @@ export const mentionsStyles = css({
42
42
  });
43
43
 
44
44
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
45
- export const vanillaMentionsStyles = css({
45
+ export const mentionNodeStyles = css({
46
46
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
47
47
  '.editor-mention-primitive': {
48
48
  display: 'inline',
49
49
  borderRadius: '20px',
50
50
  cursor: 'pointer',
51
51
  padding: '0 0.3em 2px 0.23em',
52
+ // To match `packages/elements/mention/src/components/Mention/PrimitiveMention.tsx` implementation
53
+ // we match the line height exactly
54
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-typography
55
+ lineHeight: '1.714',
52
56
  fontWeight: "var(--ds-font-weight-regular, 400)",
53
57
  wordBreak: 'break-word',
54
58
  background: "var(--ds-background-neutral, #091E420F)",
@@ -89,7 +93,7 @@ export const vanillaMentionsStyles = css({
89
93
 
90
94
  // This is mentions styles for mentions selection styles based on the vanilla node view
91
95
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
92
- export const vanillaMentionsSelectionStyles = css({
96
+ export const mentionsSelectionStyles = css({
93
97
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
94
98
  '.danger': {
95
99
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
@@ -253,7 +253,7 @@ export const vanillaTaskItemStyles = css({
253
253
  display: 'none'
254
254
  },
255
255
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
256
- '[data-prosemirror-node-view-type="vanilla"][data-prosemirror-node-name="taskItem"]:has([data-empty]):not(:has([data-type-ahead])) [data-component="placeholder"]': {
256
+ "[data-prosemirror-node-view-type='vanilla'][data-prosemirror-node-name='taskItem']:has([data-empty]):not(:has([data-type-ahead])) [data-component='placeholder']": {
257
257
  display: 'block'
258
258
  },
259
259
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
@@ -1,2 +1,2 @@
1
1
  export const name = "@atlaskit/editor-core";
2
- export const version = "208.3.3";
2
+ export const version = "208.3.5";