@atlaskit/editor-core 208.7.4 → 209.0.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 (31) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/afm-cc/tsconfig.json +3 -3
  3. package/afm-jira/tsconfig.json +3 -3
  4. package/afm-post-office/tsconfig.json +3 -3
  5. package/dist/cjs/ui/ContentStyles/code-bidi-warning.js +75 -0
  6. package/dist/cjs/ui/ContentStyles/index.js +3 -2
  7. package/dist/cjs/ui/EditorContentContainer/EditorContentContainer.js +4 -1
  8. package/dist/cjs/ui/EditorContentContainer/styles/codeBidiWarningStyles.js +75 -0
  9. package/dist/cjs/version-wrapper.js +1 -1
  10. package/dist/es2019/ui/ContentStyles/code-bidi-warning.js +68 -0
  11. package/dist/es2019/ui/ContentStyles/index.js +2 -0
  12. package/dist/es2019/ui/EditorContentContainer/EditorContentContainer.js +4 -1
  13. package/dist/es2019/ui/EditorContentContainer/styles/codeBidiWarningStyles.js +68 -0
  14. package/dist/es2019/version-wrapper.js +1 -1
  15. package/dist/esm/ui/ContentStyles/code-bidi-warning.js +68 -0
  16. package/dist/esm/ui/ContentStyles/index.js +3 -2
  17. package/dist/esm/ui/EditorContentContainer/EditorContentContainer.js +4 -1
  18. package/dist/esm/ui/EditorContentContainer/styles/codeBidiWarningStyles.js +68 -0
  19. package/dist/esm/version-wrapper.js +1 -1
  20. package/dist/types/create-editor/create-universal-preset.d.ts +8 -8
  21. package/dist/types/editor-appearances/FullPageEditor.d.ts +1 -1
  22. package/dist/types/presets/useUniversalPreset.d.ts +8 -8
  23. package/dist/types/ui/ContentStyles/code-bidi-warning.d.ts +1 -0
  24. package/dist/types/ui/EditorContentContainer/styles/codeBidiWarningStyles.d.ts +1 -0
  25. package/dist/types-ts4.5/create-editor/create-universal-preset.d.ts +8 -8
  26. package/dist/types-ts4.5/editor-appearances/FullPageEditor.d.ts +1 -1
  27. package/dist/types-ts4.5/presets/useUniversalPreset.d.ts +8 -8
  28. package/dist/types-ts4.5/ui/ContentStyles/code-bidi-warning.d.ts +1 -0
  29. package/dist/types-ts4.5/ui/EditorContentContainer/styles/codeBidiWarningStyles.d.ts +1 -0
  30. package/docs/0-intro.tsx +2 -2
  31. package/package.json +16 -13
package/CHANGELOG.md CHANGED
@@ -1,5 +1,58 @@
1
1
  # @atlaskit/editor-core
2
2
 
3
+ ## 209.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [#181024](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/181024)
8
+ [`8e80c487ca307`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/8e80c487ca307) - ##
9
+ Make `@atlaskit/editor-common` a peer dependency
10
+
11
+ **WHAT:** `@atlaskit/editor-common` has been moved from `dependencies` to `peerDependencies` in
12
+ all editor plugin packages.
13
+
14
+ **WHY:** This change ensures that only a single version of `@atlaskit/editor-common` is used in
15
+ consuming applications, preventing issues caused by multiple versions of singleton libraries (such
16
+ as context mismatches or duplicated state). This is especially important for packages that rely on
17
+ shared context or singletons.
18
+
19
+ **HOW TO ADJUST:**
20
+
21
+ - Consumers must now explicitly install `@atlaskit/editor-common` in their own project if they use
22
+ any of these editor plugins.
23
+ - Ensure the version you install matches the version required by the plugins.
24
+ - You can use the
25
+ [`check-peer-dependencies`](https://www.npmjs.com/package/check-peer-dependencies) package to
26
+ verify that all required peer dependencies are installed and compatible.
27
+ - Example install command:
28
+ ```
29
+ npm install @atlaskit/editor-common
30
+ ```
31
+ or
32
+ ```
33
+ yarn add @atlaskit/editor-common
34
+ ```
35
+
36
+ **Note:** This is a breaking change. If `@atlaskit/editor-common` is not installed at the
37
+ application level, you may see errors or unexpected behavior.
38
+
39
+ ### Patch Changes
40
+
41
+ - Updated dependencies
42
+
43
+ ## 208.8.0
44
+
45
+ ### Minor Changes
46
+
47
+ - [#180500](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/180500)
48
+ [`411796e8a55c6`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/411796e8a55c6) -
49
+ [ux] Move code-bidi-warning plugin widget to be a vanilla-DOM implementation, instead of react, to
50
+ fix memory leaks.
51
+
52
+ ### Patch Changes
53
+
54
+ - Updated dependencies
55
+
3
56
  ## 208.7.4
4
57
 
5
58
  ### Patch Changes
@@ -33,9 +33,6 @@
33
33
  {
34
34
  "path": "../../../design-system/css/afm-cc/tsconfig.json"
35
35
  },
36
- {
37
- "path": "../../editor-common/afm-cc/tsconfig.json"
38
- },
39
36
  {
40
37
  "path": "../../editor-json-transformer/afm-cc/tsconfig.json"
41
38
  },
@@ -93,6 +90,9 @@
93
90
  {
94
91
  "path": "../../../design-system/width-detector/afm-cc/tsconfig.json"
95
92
  },
93
+ {
94
+ "path": "../../editor-common/afm-cc/tsconfig.json"
95
+ },
96
96
  {
97
97
  "path": "../../../linking-platform/link-provider/afm-cc/tsconfig.json"
98
98
  },
@@ -33,9 +33,6 @@
33
33
  {
34
34
  "path": "../../../design-system/css/afm-jira/tsconfig.json"
35
35
  },
36
- {
37
- "path": "../../editor-common/afm-jira/tsconfig.json"
38
- },
39
36
  {
40
37
  "path": "../../editor-json-transformer/afm-jira/tsconfig.json"
41
38
  },
@@ -93,6 +90,9 @@
93
90
  {
94
91
  "path": "../../../design-system/width-detector/afm-jira/tsconfig.json"
95
92
  },
93
+ {
94
+ "path": "../../editor-common/afm-jira/tsconfig.json"
95
+ },
96
96
  {
97
97
  "path": "../../../linking-platform/link-provider/afm-jira/tsconfig.json"
98
98
  },
@@ -33,9 +33,6 @@
33
33
  {
34
34
  "path": "../../../design-system/css/afm-post-office/tsconfig.json"
35
35
  },
36
- {
37
- "path": "../../editor-common/afm-post-office/tsconfig.json"
38
- },
39
36
  {
40
37
  "path": "../../editor-json-transformer/afm-post-office/tsconfig.json"
41
38
  },
@@ -93,6 +90,9 @@
93
90
  {
94
91
  "path": "../../../design-system/width-detector/afm-post-office/tsconfig.json"
95
92
  },
93
+ {
94
+ "path": "../../editor-common/afm-post-office/tsconfig.json"
95
+ },
96
96
  {
97
97
  "path": "../../../linking-platform/link-provider/afm-post-office/tsconfig.json"
98
98
  },
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.codeBidiWarningStyles = void 0;
7
+ var _react = require("@emotion/react");
8
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled
9
+
10
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
11
+ var codeBidiWarningStyles = exports.codeBidiWarningStyles = (0, _react.css)({
12
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
13
+ '[data-prosemirror-node-name="code-bidi-warning"]': {
14
+ display: 'inline-block'
15
+ },
16
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
17
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]': {
18
+ paddingInlineStart: "var(--ds-space-050, 4px)",
19
+ paddingInlineEnd: "var(--ds-space-050, 4px)",
20
+ font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
21
+ fontStyle: 'normal',
22
+ fontFamily: "var(--ds-font-family-code, ui-monospace, Menlo, \"Segoe UI Mono\", \"Ubuntu Mono\", monospace)",
23
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
24
+ paddingTop: '0.05rem',
25
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
26
+ paddingBottom: '0.05rem',
27
+ color: "var(--ds-text-warning, #A54800)",
28
+ backgroundColor: "var(--ds-background-warning, #FFF7D6)"
29
+ },
30
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
31
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]:hover': {
32
+ color: "var(--ds-text-warning, #A54800)",
33
+ backgroundColor: "var(--ds-background-warning-hovered, #F8E6A0)"
34
+ },
35
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
36
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-tooltip"]': {
37
+ visibility: 'hidden',
38
+ boxSizing: 'border-box',
39
+ width: '15pc',
40
+ backgroundColor: "var(--ds-background-neutral-bold, #44546F)",
41
+ color: "var(--ds-text-inverse, #FFFFFF)",
42
+ overflowWrap: 'break-word',
43
+ cursor: 'default',
44
+ borderRadius: "var(--ds-border-radius, 4px)",
45
+ margin: "var(--ds-space-0, 0px)",
46
+ padding: "var(--ds-space-025, 2px)".concat(" ", "var(--ds-space-075, 6px)"),
47
+ position: 'fixed',
48
+ // The character label will be ~80px and this is positioned from the end of that label
49
+ // We also use this instead of top: 24px to make sure the tooltip maintains its initial position
50
+ // instead of being positioned relative to the viewport.
51
+ // We need to use position: fixed so that the tooltip bypasses the overflow settings of the code block
52
+ // and is always visible.
53
+ // We also offset a little extra here to account for the transition behavior (to replicate ADS fade-in-from-top)
54
+ transform: 'translate(calc(-50% - 40px), calc(24px - 4px))',
55
+ opacity: 0,
56
+ whiteSpace: 'normal',
57
+ font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
58
+ zIndex: 9999,
59
+ // Exit animation timings
60
+ // - Mark invisible after 0.475s
61
+ // - After 0.3s, fade out and move up over 0.175s
62
+ transition: 'visibility 0s linear 0.475s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s'
63
+ },
64
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
65
+ '[data-prosemirror-node-name="code-bidi-warning"]:hover [data-bidi-component="code-bidi-warning-tooltip"]': {
66
+ visibility: 'visible',
67
+ transform: 'translate(calc(-50% - 40px), calc(24px))',
68
+ opacity: 1,
69
+ // Enter animation timings
70
+ // - Mark visible after 0.3s of hovering
71
+ // - After 0.3s, fade in over 0.175s
72
+ // - After 0.3s, move down over 0.35s
73
+ transition: 'visibility 0s linear 0.3s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.35s cubic-bezier(0.15,1,0.3,1) 0.3s'
74
+ }
75
+ });
@@ -27,6 +27,7 @@ var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
27
27
  var _tokens = require("@atlaskit/tokens");
28
28
  var _getInlineNodeViewProducer = require("../../nodeviews/getInlineNodeViewProducer.styles");
29
29
  var _aiPanels = require("./ai-panels");
30
+ var _codeBidiWarning = require("./code-bidi-warning");
30
31
  var _codeBlock = require("./code-block");
31
32
  var _date = require("./date");
32
33
  var _expand = require("./expand");
@@ -166,9 +167,9 @@ var akEditorBreakpointForSmallDevice = "1266px";
166
167
  // Under editor experiment platform_editor_core_static_emotion
167
168
  // If you are making changes to this file, please make sure to update in EditorContentContainer.tsx as well
168
169
  var legacyContentStyles = function legacyContentStyles(props) {
169
- return (0, _react2.css)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\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--ak-editor--breakout-fallback-width: calc(\n\t\t100cqw - var(--ak-editor--breakout-full-page-guttering-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\n\t\t/* in full width appearances it's not possible to rely on cqw because it doesn't account for the page scrollbar, which depends on users system settings */\n\t\t--ak-editor--breakout-fallback-width: 100%;\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.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\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\t", "\n /* Switch between the two icons based on the visual refresh feature gate */\n\t", "\n\t", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\t", "\n ", "\n ", "\n ", "\n ", "\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"])), _editorSharedStyles.akEditorGutterPadding, (0, _editorSharedStyles.akEditorGutterPaddingDynamic)(), _editorSharedStyles.akEditorDefaultLayoutWidth, _editorSharedStyles.akEditorFullWidthLayoutWidth, _editorSharedStyles.akEditorCalculatedWideLayoutWidthSmallViewport, akEditorBreakpointForSmallDevice, _editorSharedStyles.akEditorCalculatedWideLayoutWidth, (0, _editorSharedStyles.editorFontSize)({
170
+ return (0, _react2.css)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\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--ak-editor--breakout-fallback-width: calc(\n\t\t100cqw - var(--ak-editor--breakout-full-page-guttering-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\n\t\t/* in full width appearances it's not possible to rely on cqw because it doesn't account for the page scrollbar, which depends on users system settings */\n\t\t--ak-editor--breakout-fallback-width: 100%;\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.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\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\t", "\n /* Switch between the two icons based on the visual refresh feature gate */\n\t", "\n\t", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\t", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\t", "\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"])), _editorSharedStyles.akEditorGutterPadding, (0, _editorSharedStyles.akEditorGutterPaddingDynamic)(), _editorSharedStyles.akEditorDefaultLayoutWidth, _editorSharedStyles.akEditorFullWidthLayoutWidth, _editorSharedStyles.akEditorCalculatedWideLayoutWidthSmallViewport, akEditorBreakpointForSmallDevice, _editorSharedStyles.akEditorCalculatedWideLayoutWidth, (0, _editorSharedStyles.editorFontSize)({
170
171
  theme: props.theme
171
- }), _styles.whitespaceSharedStyles, (0, _styles.paragraphSharedStyles)(props.typographyTheme), _styles.listsSharedStyles, _styles.indentationSharedStyles, _styles.shadowSharedStyle, _getInlineNodeViewProducer.InlineNodeViewSharedStyles, (0, _platformFeatureFlags.fg)('platform_editor_hide_cursor_when_pm_hideselection') ? (0, _react2.css)(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\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, (0, _experiments.editorExperiment)('platform_editor_advanced_code_blocks', true) ? (0, _react2.css)(_templateObject0 || (_templateObject0 = (0, _taggedTemplateLiteral2.default)(["\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)", firstFloatingToolbarButtonStyles, _styles5.placeholderTextStyles, (0, _platformFeatureFlags.fg)('platform_editor_system_fake_text_highlight_colour') && _styles5.placeholderTextStyles_fg_platform_editor_system_fake_text_highlight_colour, placeholderStyles, (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1') ? placeholderOverflowStyles : null, (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1') && (0, _platformFeatureFlags.fg)('platform_editor_quick_insert_placeholder') ? placeholderWrapStyles : null, (0, _codeBlock.codeBlockStyles)(), (0, _styles2.blocktypeStyles)(props.typographyTheme), (0, _styles.codeMarkSharedStyles)(), _styles.textColorStyles, (0, _styles.backgroundColorStyles)(), listsStyles, ruleStyles(), (0, _media.mediaStyles)(), (0, _layout.layoutStyles)(props.viewMode), (0, _platformFeatureFlags.fg)('confluence_team_presence_scroll_to_pointer') ? _collab.telepointerStyle : _collab.telepointerStyleWithInitialOnly, _selection.gapCursorStyles, (0, _panel2.panelStyles)(), mentionsStyles, mentionNodeStyles, (0, _platformFeatureFlags.fg)('platform_editor_centre_mention_padding') && mentionNodeStylesMixin_fg_platform_editor_centre_mention_padding, mentionSelectionStyles, emojiStyles, _styles.tasksAndDecisionsStyles, _styles.gridStyles, linkStyles, _styles.blockMarksSharedStyles, _styles.dateSharedStyle, _extension.extensionStyles, (0, _expand.expandStyles)(), (0, _expValEqualsNoExposure.expValEqualsNoExposure)('platform_editor_find_and_replace_improvements', 'isEnabled', true) ? (0, _platformFeatureFlags.fg)('platform_editor_find_and_replace_magenta_match') ? _styles3.findReplaceStylesNewMagenta : _styles3.findReplaceStylesNewYellow : _styles3.findReplaceStyles, _styles4.textHighlightStyle, _tasksAndDecisions.taskDecisionStyles, _tasksAndDecisions.taskItemStyles, (0, _platformFeatureFlags.fg)('platform-visual-refresh-icons') && _tasksAndDecisions.taskDecisionIconWithVisualRefresh, !(0, _platformFeatureFlags.fg)('platform-visual-refresh-icons') && _tasksAndDecisions.taskDecisionIconWithoutVisualRefresh, _status.statusStyles, (0, _status.statusNodeStyles)(), (0, _styles.annotationSharedStyles)(), (0, _styles.smartCardStyles)(), (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-v1') ? (0, _styles.getSmartCardSharedStyles)() : _styles.smartCardSharedStyles, _date.dateStyles, _date.dateNodeStyles, (0, _styles.embedCardStyles)(), _styles.unsupportedStyles, _styles.resizerStyles, (0, _styles.pragmaticResizerStyles)(), (0, _styles.pragmaticStylesLayoutFirstNodeResizeHandleFix)(), (0, _styles.pragmaticResizerStylesForTooltip)(), (0, _aiPanels.aiPanelStyles)(props.colorMode), firstBlockNodeStylesNew, _styles.MediaSharedClassNames.FLOATING_TOOLBAR_COMPONENT, !(0, _platformFeatureFlags.fg)('platform-visual-refresh-icons') ? (0, _react2.css)(_templateObject1 || (_templateObject1 = (0, _taggedTemplateLiteral2.default)(["\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);
172
+ }), _styles.whitespaceSharedStyles, (0, _styles.paragraphSharedStyles)(props.typographyTheme), _styles.listsSharedStyles, _styles.indentationSharedStyles, _styles.shadowSharedStyle, _getInlineNodeViewProducer.InlineNodeViewSharedStyles, (0, _platformFeatureFlags.fg)('platform_editor_hide_cursor_when_pm_hideselection') ? (0, _react2.css)(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\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, (0, _experiments.editorExperiment)('platform_editor_advanced_code_blocks', true) ? (0, _react2.css)(_templateObject0 || (_templateObject0 = (0, _taggedTemplateLiteral2.default)(["\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)", firstFloatingToolbarButtonStyles, _styles5.placeholderTextStyles, (0, _platformFeatureFlags.fg)('platform_editor_system_fake_text_highlight_colour') && _styles5.placeholderTextStyles_fg_platform_editor_system_fake_text_highlight_colour, placeholderStyles, (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1') ? placeholderOverflowStyles : null, (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1') && (0, _platformFeatureFlags.fg)('platform_editor_quick_insert_placeholder') ? placeholderWrapStyles : null, (0, _codeBlock.codeBlockStyles)(), (0, _styles2.blocktypeStyles)(props.typographyTheme), (0, _styles.codeMarkSharedStyles)(), _styles.textColorStyles, (0, _styles.backgroundColorStyles)(), listsStyles, ruleStyles(), (0, _media.mediaStyles)(), (0, _layout.layoutStyles)(props.viewMode), (0, _platformFeatureFlags.fg)('confluence_team_presence_scroll_to_pointer') ? _collab.telepointerStyle : _collab.telepointerStyleWithInitialOnly, _selection.gapCursorStyles, (0, _panel2.panelStyles)(), mentionsStyles, mentionNodeStyles, (0, _platformFeatureFlags.fg)('platform_editor_centre_mention_padding') && mentionNodeStylesMixin_fg_platform_editor_centre_mention_padding, mentionSelectionStyles, emojiStyles, _styles.tasksAndDecisionsStyles, _styles.gridStyles, linkStyles, _styles.blockMarksSharedStyles, _styles.dateSharedStyle, _extension.extensionStyles, (0, _expand.expandStyles)(), (0, _expValEqualsNoExposure.expValEqualsNoExposure)('platform_editor_find_and_replace_improvements', 'isEnabled', true) ? (0, _platformFeatureFlags.fg)('platform_editor_find_and_replace_magenta_match') ? _styles3.findReplaceStylesNewMagenta : _styles3.findReplaceStylesNewYellow : _styles3.findReplaceStyles, _styles4.textHighlightStyle, _tasksAndDecisions.taskDecisionStyles, _tasksAndDecisions.taskItemStyles, (0, _platformFeatureFlags.fg)('platform-visual-refresh-icons') && _tasksAndDecisions.taskDecisionIconWithVisualRefresh, !(0, _platformFeatureFlags.fg)('platform-visual-refresh-icons') && _tasksAndDecisions.taskDecisionIconWithoutVisualRefresh, _status.statusStyles, (0, _status.statusNodeStyles)(), (0, _styles.annotationSharedStyles)(), (0, _styles.smartCardStyles)(), (0, _platformFeatureFlags.fg)('platform-linking-visual-refresh-v1') ? (0, _styles.getSmartCardSharedStyles)() : _styles.smartCardSharedStyles, _date.dateStyles, _date.dateNodeStyles, (0, _styles.embedCardStyles)(), _styles.unsupportedStyles, _styles.resizerStyles, (0, _styles.pragmaticResizerStyles)(), (0, _styles.pragmaticStylesLayoutFirstNodeResizeHandleFix)(), (0, _styles.pragmaticResizerStylesForTooltip)(), (0, _aiPanels.aiPanelStyles)(props.colorMode), firstBlockNodeStylesNew, (0, _platformFeatureFlags.fg)('platform_editor_vanilla_codebidi_warning') && _codeBidiWarning.codeBidiWarningStyles, _styles.MediaSharedClassNames.FLOATING_TOOLBAR_COMPONENT, !(0, _platformFeatureFlags.fg)('platform-visual-refresh-icons') ? (0, _react2.css)(_templateObject1 || (_templateObject1 = (0, _taggedTemplateLiteral2.default)(["\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);
172
173
  };
173
174
  var createEditorContentStyle = exports.createEditorContentStyle = function createEditorContentStyle(styles) {
174
175
  return /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
@@ -20,6 +20,7 @@ var _backgroundColorStyles = require("./styles/backgroundColorStyles");
20
20
  var _baseStyles = require("./styles/baseStyles");
21
21
  var _blockMarksStyles = require("./styles/blockMarksStyles");
22
22
  var _blockTypeStyles = require("./styles/blockTypeStyles");
23
+ var _codeBidiWarningStyles = require("./styles/codeBidiWarningStyles");
23
24
  var _codeBlockStyles = require("./styles/codeBlockStyles");
24
25
  var _codeMarkStyles = require("./styles/codeMarkStyles");
25
26
  var _commentEditorStyles = require("./styles/commentEditorStyles");
@@ -327,7 +328,9 @@ var EditorContentContainer = /*#__PURE__*/_react.default.forwardRef(function (pr
327
328
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
328
329
  !(0, _platformFeatureFlags.fg)('platform-visual-refresh-icons') && _link.linkLegacyIconStylesFix,
329
330
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
330
- (0, _platformFeatureFlags.fg)('confluence_floating_toolbar_animation') && _selectionToolbarStyles.selectionToolbarAnimationStyles],
331
+ (0, _platformFeatureFlags.fg)('confluence_floating_toolbar_animation') && _selectionToolbarStyles.selectionToolbarAnimationStyles,
332
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
333
+ (0, _platformFeatureFlags.fg)('platform_editor_vanilla_codebidi_warning') && _codeBidiWarningStyles.codeBidiWarningStyles],
331
334
  "data-editor-scroll-container": isScrollable ? 'true' : undefined,
332
335
  "data-testid": "editor-content-container",
333
336
  style: {
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.codeBidiWarningStyles = void 0;
7
+ var _react = require("@emotion/react");
8
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled
9
+
10
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
11
+ var codeBidiWarningStyles = exports.codeBidiWarningStyles = (0, _react.css)({
12
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
13
+ '[data-prosemirror-node-name="code-bidi-warning"]': {
14
+ display: 'inline-block'
15
+ },
16
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
17
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]': {
18
+ paddingInlineStart: "var(--ds-space-050, 4px)",
19
+ paddingInlineEnd: "var(--ds-space-050, 4px)",
20
+ font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
21
+ fontStyle: 'normal',
22
+ fontFamily: "var(--ds-font-family-code, ui-monospace, Menlo, \"Segoe UI Mono\", \"Ubuntu Mono\", monospace)",
23
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
24
+ paddingTop: '0.05rem',
25
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
26
+ paddingBottom: '0.05rem',
27
+ color: "var(--ds-text-warning, #A54800)",
28
+ backgroundColor: "var(--ds-background-warning, #FFF7D6)"
29
+ },
30
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
31
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]:hover': {
32
+ color: "var(--ds-text-warning, #A54800)",
33
+ backgroundColor: "var(--ds-background-warning-hovered, #F8E6A0)"
34
+ },
35
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
36
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-tooltip"]': {
37
+ visibility: 'hidden',
38
+ boxSizing: 'border-box',
39
+ width: '15pc',
40
+ backgroundColor: "var(--ds-background-neutral-bold, #44546F)",
41
+ color: "var(--ds-text-inverse, #FFFFFF)",
42
+ overflowWrap: 'break-word',
43
+ cursor: 'default',
44
+ borderRadius: "var(--ds-border-radius, 4px)",
45
+ margin: "var(--ds-space-0, 0px)",
46
+ padding: "var(--ds-space-025, 2px)".concat(" ", "var(--ds-space-075, 6px)"),
47
+ position: 'fixed',
48
+ // The character label will be ~80px and this is positioned from the end of that label
49
+ // We also use this instead of top: 24px to make sure the tooltip maintains its initial position
50
+ // instead of being positioned relative to the viewport.
51
+ // We need to use position: fixed so that the tooltip bypasses the overflow settings of the code block
52
+ // and is always visible.
53
+ // We also offset a little extra here to account for the transition behavior (to replicate ADS fade-in-from-top)
54
+ transform: 'translate(calc(-50% - 40px), calc(24px - 4px))',
55
+ opacity: 0,
56
+ whiteSpace: 'normal',
57
+ font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
58
+ zIndex: 9999,
59
+ // Exit animation timings
60
+ // - Mark invisible after 0.475s
61
+ // - After 0.3s, fade out and move up over 0.175s
62
+ transition: 'visibility 0s linear 0.475s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s'
63
+ },
64
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
65
+ '[data-prosemirror-node-name="code-bidi-warning"]:hover [data-bidi-component="code-bidi-warning-tooltip"]': {
66
+ visibility: 'visible',
67
+ transform: 'translate(calc(-50% - 40px), calc(24px))',
68
+ opacity: 1,
69
+ // Enter animation timings
70
+ // - Mark visible after 0.3s of hovering
71
+ // - After 0.3s, fade in over 0.175s
72
+ // - After 0.3s, move down over 0.35s
73
+ transition: 'visibility 0s linear 0.3s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.35s cubic-bezier(0.15,1,0.3,1) 0.3s'
74
+ }
75
+ });
@@ -5,4 +5,4 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.version = exports.name = void 0;
7
7
  var name = exports.name = "@atlaskit/editor-core";
8
- var version = exports.version = "208.7.3";
8
+ var version = exports.version = "208.8.0";
@@ -0,0 +1,68 @@
1
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled
2
+ import { css } from '@emotion/react';
3
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
4
+ export const codeBidiWarningStyles = css({
5
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
6
+ '[data-prosemirror-node-name="code-bidi-warning"]': {
7
+ display: 'inline-block'
8
+ },
9
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
10
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]': {
11
+ paddingInlineStart: "var(--ds-space-050, 4px)",
12
+ paddingInlineEnd: "var(--ds-space-050, 4px)",
13
+ font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
14
+ fontStyle: 'normal',
15
+ fontFamily: "var(--ds-font-family-code, ui-monospace, Menlo, \"Segoe UI Mono\", \"Ubuntu Mono\", monospace)",
16
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
17
+ paddingTop: '0.05rem',
18
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
19
+ paddingBottom: '0.05rem',
20
+ color: "var(--ds-text-warning, #A54800)",
21
+ backgroundColor: "var(--ds-background-warning, #FFF7D6)"
22
+ },
23
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
24
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]:hover': {
25
+ color: "var(--ds-text-warning, #A54800)",
26
+ backgroundColor: "var(--ds-background-warning-hovered, #F8E6A0)"
27
+ },
28
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
29
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-tooltip"]': {
30
+ visibility: 'hidden',
31
+ boxSizing: 'border-box',
32
+ width: '15pc',
33
+ backgroundColor: "var(--ds-background-neutral-bold, #44546F)",
34
+ color: "var(--ds-text-inverse, #FFFFFF)",
35
+ overflowWrap: 'break-word',
36
+ cursor: 'default',
37
+ borderRadius: "var(--ds-border-radius, 4px)",
38
+ margin: "var(--ds-space-0, 0px)",
39
+ padding: `${"var(--ds-space-025, 2px)"} ${"var(--ds-space-075, 6px)"}`,
40
+ position: 'fixed',
41
+ // The character label will be ~80px and this is positioned from the end of that label
42
+ // We also use this instead of top: 24px to make sure the tooltip maintains its initial position
43
+ // instead of being positioned relative to the viewport.
44
+ // We need to use position: fixed so that the tooltip bypasses the overflow settings of the code block
45
+ // and is always visible.
46
+ // We also offset a little extra here to account for the transition behavior (to replicate ADS fade-in-from-top)
47
+ transform: 'translate(calc(-50% - 40px), calc(24px - 4px))',
48
+ opacity: 0,
49
+ whiteSpace: 'normal',
50
+ font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
51
+ zIndex: 9999,
52
+ // Exit animation timings
53
+ // - Mark invisible after 0.475s
54
+ // - After 0.3s, fade out and move up over 0.175s
55
+ transition: 'visibility 0s linear 0.475s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s'
56
+ },
57
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
58
+ '[data-prosemirror-node-name="code-bidi-warning"]:hover [data-bidi-component="code-bidi-warning-tooltip"]': {
59
+ visibility: 'visible',
60
+ transform: 'translate(calc(-50% - 40px), calc(24px))',
61
+ opacity: 1,
62
+ // Enter animation timings
63
+ // - Mark visible after 0.3s of hovering
64
+ // - After 0.3s, fade in over 0.175s
65
+ // - After 0.3s, move down over 0.35s
66
+ transition: 'visibility 0s linear 0.3s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.35s cubic-bezier(0.15,1,0.3,1) 0.3s'
67
+ }
68
+ });
@@ -29,6 +29,7 @@ import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
29
29
  import { useThemeObserver } from '@atlaskit/tokens';
30
30
  import { InlineNodeViewSharedStyles } from '../../nodeviews/getInlineNodeViewProducer.styles';
31
31
  import { aiPanelStyles } from './ai-panels';
32
+ import { codeBidiWarningStyles } from './code-bidi-warning';
32
33
  import { codeBlockStyles } from './code-block';
33
34
  import { dateStyles, dateNodeStyles } from './date';
34
35
  import { expandStyles } from './expand';
@@ -433,6 +434,7 @@ const legacyContentStyles = props => css`
433
434
  ${pragmaticResizerStylesForTooltip()}
434
435
  ${aiPanelStyles(props.colorMode)}
435
436
  ${firstBlockNodeStylesNew}
437
+ ${fg('platform_editor_vanilla_codebidi_warning') && codeBidiWarningStyles}
436
438
 
437
439
  .panelView-content-wrap {
438
440
  box-sizing: border-box;
@@ -21,6 +21,7 @@ import { backgroundColorStyles } from './styles/backgroundColorStyles';
21
21
  import { baseStyles } from './styles/baseStyles';
22
22
  import { blockMarksStyles } from './styles/blockMarksStyles';
23
23
  import { blocktypeStyles, blocktypeStyles_fg_platform_editor_nested_dnd_styles_changes, blocktypeStyles_fg_platform_editor_typography_ugc, blocktypeStyles_without_fg_platform_editor_typography_ugc } from './styles/blockTypeStyles';
24
+ import { codeBidiWarningStyles } from './styles/codeBidiWarningStyles';
24
25
  import { codeBlockStyles, codeBgColorStyles, firstCodeBlockWithNoMargin, firstCodeBlockWithNoMarginOld } from './styles/codeBlockStyles';
25
26
  import { codeMarkStyles } from './styles/codeMarkStyles';
26
27
  import { commentEditorStyles } from './styles/commentEditorStyles';
@@ -322,7 +323,9 @@ const EditorContentContainer = /*#__PURE__*/React.forwardRef((props, ref) => {
322
323
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
323
324
  !fg('platform-visual-refresh-icons') && linkLegacyIconStylesFix,
324
325
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
325
- fg('confluence_floating_toolbar_animation') && selectionToolbarAnimationStyles],
326
+ fg('confluence_floating_toolbar_animation') && selectionToolbarAnimationStyles,
327
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
328
+ fg('platform_editor_vanilla_codebidi_warning') && codeBidiWarningStyles],
326
329
  "data-editor-scroll-container": isScrollable ? 'true' : undefined,
327
330
  "data-testid": "editor-content-container",
328
331
  style: {
@@ -0,0 +1,68 @@
1
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled
2
+ import { css } from '@emotion/react';
3
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
4
+ export const codeBidiWarningStyles = css({
5
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
6
+ '[data-prosemirror-node-name="code-bidi-warning"]': {
7
+ display: 'inline-block'
8
+ },
9
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
10
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]': {
11
+ paddingInlineStart: "var(--ds-space-050, 4px)",
12
+ paddingInlineEnd: "var(--ds-space-050, 4px)",
13
+ font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
14
+ fontStyle: 'normal',
15
+ fontFamily: "var(--ds-font-family-code, ui-monospace, Menlo, \"Segoe UI Mono\", \"Ubuntu Mono\", monospace)",
16
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
17
+ paddingTop: '0.05rem',
18
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
19
+ paddingBottom: '0.05rem',
20
+ color: "var(--ds-text-warning, #A54800)",
21
+ backgroundColor: "var(--ds-background-warning, #FFF7D6)"
22
+ },
23
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
24
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]:hover': {
25
+ color: "var(--ds-text-warning, #A54800)",
26
+ backgroundColor: "var(--ds-background-warning-hovered, #F8E6A0)"
27
+ },
28
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
29
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-tooltip"]': {
30
+ visibility: 'hidden',
31
+ boxSizing: 'border-box',
32
+ width: '15pc',
33
+ backgroundColor: "var(--ds-background-neutral-bold, #44546F)",
34
+ color: "var(--ds-text-inverse, #FFFFFF)",
35
+ overflowWrap: 'break-word',
36
+ cursor: 'default',
37
+ borderRadius: "var(--ds-border-radius, 4px)",
38
+ margin: "var(--ds-space-0, 0px)",
39
+ padding: `${"var(--ds-space-025, 2px)"} ${"var(--ds-space-075, 6px)"}`,
40
+ position: 'fixed',
41
+ // The character label will be ~80px and this is positioned from the end of that label
42
+ // We also use this instead of top: 24px to make sure the tooltip maintains its initial position
43
+ // instead of being positioned relative to the viewport.
44
+ // We need to use position: fixed so that the tooltip bypasses the overflow settings of the code block
45
+ // and is always visible.
46
+ // We also offset a little extra here to account for the transition behavior (to replicate ADS fade-in-from-top)
47
+ transform: 'translate(calc(-50% - 40px), calc(24px - 4px))',
48
+ opacity: 0,
49
+ whiteSpace: 'normal',
50
+ font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
51
+ zIndex: 9999,
52
+ // Exit animation timings
53
+ // - Mark invisible after 0.475s
54
+ // - After 0.3s, fade out and move up over 0.175s
55
+ transition: 'visibility 0s linear 0.475s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s'
56
+ },
57
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
58
+ '[data-prosemirror-node-name="code-bidi-warning"]:hover [data-bidi-component="code-bidi-warning-tooltip"]': {
59
+ visibility: 'visible',
60
+ transform: 'translate(calc(-50% - 40px), calc(24px))',
61
+ opacity: 1,
62
+ // Enter animation timings
63
+ // - Mark visible after 0.3s of hovering
64
+ // - After 0.3s, fade in over 0.175s
65
+ // - After 0.3s, move down over 0.35s
66
+ transition: 'visibility 0s linear 0.3s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.35s cubic-bezier(0.15,1,0.3,1) 0.3s'
67
+ }
68
+ });
@@ -1,2 +1,2 @@
1
1
  export const name = "@atlaskit/editor-core";
2
- export const version = "208.7.3";
2
+ export const version = "208.8.0";
@@ -0,0 +1,68 @@
1
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled
2
+ import { css } from '@emotion/react';
3
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
4
+ export var codeBidiWarningStyles = css({
5
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
6
+ '[data-prosemirror-node-name="code-bidi-warning"]': {
7
+ display: 'inline-block'
8
+ },
9
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
10
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]': {
11
+ paddingInlineStart: "var(--ds-space-050, 4px)",
12
+ paddingInlineEnd: "var(--ds-space-050, 4px)",
13
+ font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
14
+ fontStyle: 'normal',
15
+ fontFamily: "var(--ds-font-family-code, ui-monospace, Menlo, \"Segoe UI Mono\", \"Ubuntu Mono\", monospace)",
16
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
17
+ paddingTop: '0.05rem',
18
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
19
+ paddingBottom: '0.05rem',
20
+ color: "var(--ds-text-warning, #A54800)",
21
+ backgroundColor: "var(--ds-background-warning, #FFF7D6)"
22
+ },
23
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
24
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]:hover': {
25
+ color: "var(--ds-text-warning, #A54800)",
26
+ backgroundColor: "var(--ds-background-warning-hovered, #F8E6A0)"
27
+ },
28
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
29
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-tooltip"]': {
30
+ visibility: 'hidden',
31
+ boxSizing: 'border-box',
32
+ width: '15pc',
33
+ backgroundColor: "var(--ds-background-neutral-bold, #44546F)",
34
+ color: "var(--ds-text-inverse, #FFFFFF)",
35
+ overflowWrap: 'break-word',
36
+ cursor: 'default',
37
+ borderRadius: "var(--ds-border-radius, 4px)",
38
+ margin: "var(--ds-space-0, 0px)",
39
+ padding: "var(--ds-space-025, 2px)".concat(" ", "var(--ds-space-075, 6px)"),
40
+ position: 'fixed',
41
+ // The character label will be ~80px and this is positioned from the end of that label
42
+ // We also use this instead of top: 24px to make sure the tooltip maintains its initial position
43
+ // instead of being positioned relative to the viewport.
44
+ // We need to use position: fixed so that the tooltip bypasses the overflow settings of the code block
45
+ // and is always visible.
46
+ // We also offset a little extra here to account for the transition behavior (to replicate ADS fade-in-from-top)
47
+ transform: 'translate(calc(-50% - 40px), calc(24px - 4px))',
48
+ opacity: 0,
49
+ whiteSpace: 'normal',
50
+ font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
51
+ zIndex: 9999,
52
+ // Exit animation timings
53
+ // - Mark invisible after 0.475s
54
+ // - After 0.3s, fade out and move up over 0.175s
55
+ transition: 'visibility 0s linear 0.475s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s'
56
+ },
57
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
58
+ '[data-prosemirror-node-name="code-bidi-warning"]:hover [data-bidi-component="code-bidi-warning-tooltip"]': {
59
+ visibility: 'visible',
60
+ transform: 'translate(calc(-50% - 40px), calc(24px))',
61
+ opacity: 1,
62
+ // Enter animation timings
63
+ // - Mark visible after 0.3s of hovering
64
+ // - After 0.3s, fade in over 0.175s
65
+ // - After 0.3s, move down over 0.35s
66
+ transition: 'visibility 0s linear 0.3s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.35s cubic-bezier(0.15,1,0.3,1) 0.3s'
67
+ }
68
+ });
@@ -31,6 +31,7 @@ import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
31
31
  import { useThemeObserver } from '@atlaskit/tokens';
32
32
  import { InlineNodeViewSharedStyles } from '../../nodeviews/getInlineNodeViewProducer.styles';
33
33
  import { aiPanelStyles } from './ai-panels';
34
+ import { codeBidiWarningStyles } from './code-bidi-warning';
34
35
  import { codeBlockStyles } from './code-block';
35
36
  import { dateStyles, dateNodeStyles } from './date';
36
37
  import { expandStyles } from './expand';
@@ -160,9 +161,9 @@ var akEditorBreakpointForSmallDevice = "1266px";
160
161
  // Under editor experiment platform_editor_core_static_emotion
161
162
  // If you are making changes to this file, please make sure to update in EditorContentContainer.tsx as well
162
163
  var legacyContentStyles = function legacyContentStyles(props) {
163
- return css(_templateObject8 || (_templateObject8 = _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--ak-editor--breakout-fallback-width: calc(\n\t\t100cqw - var(--ak-editor--breakout-full-page-guttering-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\n\t\t/* in full width appearances it's not possible to rely on cqw because it doesn't account for the page scrollbar, which depends on users system settings */\n\t\t--ak-editor--breakout-fallback-width: 100%;\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.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\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\t", "\n /* Switch between the two icons based on the visual refresh feature gate */\n\t", "\n\t", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\t", "\n ", "\n ", "\n ", "\n ", "\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({
164
+ return css(_templateObject8 || (_templateObject8 = _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--ak-editor--breakout-fallback-width: calc(\n\t\t100cqw - var(--ak-editor--breakout-full-page-guttering-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\n\t\t/* in full width appearances it's not possible to rely on cqw because it doesn't account for the page scrollbar, which depends on users system settings */\n\t\t--ak-editor--breakout-fallback-width: 100%;\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.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\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\t", "\n /* Switch between the two icons based on the visual refresh feature gate */\n\t", "\n\t", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\t", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\t", "\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({
164
165
  theme: props.theme
165
- }), whitespaceSharedStyles, paragraphSharedStyles(props.typographyTheme), listsSharedStyles, indentationSharedStyles, shadowSharedStyle, InlineNodeViewSharedStyles, fg('platform_editor_hide_cursor_when_pm_hideselection') ? css(_templateObject9 || (_templateObject9 = _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(_templateObject0 || (_templateObject0 = _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)", firstFloatingToolbarButtonStyles, placeholderTextStyles, fg('platform_editor_system_fake_text_highlight_colour') && placeholderTextStyles_fg_platform_editor_system_fake_text_highlight_colour, 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, mentionNodeStyles, fg('platform_editor_centre_mention_padding') && mentionNodeStylesMixin_fg_platform_editor_centre_mention_padding, mentionSelectionStyles, emojiStyles, tasksAndDecisionsStyles, gridStyles, linkStyles, blockMarksSharedStyles, dateSharedStyle, extensionStyles, expandStyles(), expValEqualsNoExposure('platform_editor_find_and_replace_improvements', 'isEnabled', true) ? fg('platform_editor_find_and_replace_magenta_match') ? findReplaceStylesNewMagenta : findReplaceStylesNewYellow : findReplaceStyles, textHighlightStyle, taskDecisionStyles, taskItemStyles, fg('platform-visual-refresh-icons') && decisionIconWithVisualRefresh, !fg('platform-visual-refresh-icons') && decisionIconWithoutVisualRefresh, statusStyles, statusNodeStyles(), annotationSharedStyles(), smartCardStyles(), fg('platform-linking-visual-refresh-v1') ? getSmartCardSharedStyles() : smartCardSharedStyles, dateStyles, dateNodeStyles, embedCardStyles(), unsupportedStyles, resizerStyles, pragmaticResizerStyles(), pragmaticStylesLayoutFirstNodeResizeHandleFix(), pragmaticResizerStylesForTooltip(), aiPanelStyles(props.colorMode), firstBlockNodeStylesNew, MediaSharedClassNames.FLOATING_TOOLBAR_COMPONENT, !fg('platform-visual-refresh-icons') ? css(_templateObject1 || (_templateObject1 = _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);
166
+ }), whitespaceSharedStyles, paragraphSharedStyles(props.typographyTheme), listsSharedStyles, indentationSharedStyles, shadowSharedStyle, InlineNodeViewSharedStyles, fg('platform_editor_hide_cursor_when_pm_hideselection') ? css(_templateObject9 || (_templateObject9 = _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(_templateObject0 || (_templateObject0 = _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)", firstFloatingToolbarButtonStyles, placeholderTextStyles, fg('platform_editor_system_fake_text_highlight_colour') && placeholderTextStyles_fg_platform_editor_system_fake_text_highlight_colour, 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, mentionNodeStyles, fg('platform_editor_centre_mention_padding') && mentionNodeStylesMixin_fg_platform_editor_centre_mention_padding, mentionSelectionStyles, emojiStyles, tasksAndDecisionsStyles, gridStyles, linkStyles, blockMarksSharedStyles, dateSharedStyle, extensionStyles, expandStyles(), expValEqualsNoExposure('platform_editor_find_and_replace_improvements', 'isEnabled', true) ? fg('platform_editor_find_and_replace_magenta_match') ? findReplaceStylesNewMagenta : findReplaceStylesNewYellow : findReplaceStyles, textHighlightStyle, taskDecisionStyles, taskItemStyles, fg('platform-visual-refresh-icons') && decisionIconWithVisualRefresh, !fg('platform-visual-refresh-icons') && decisionIconWithoutVisualRefresh, statusStyles, statusNodeStyles(), annotationSharedStyles(), smartCardStyles(), fg('platform-linking-visual-refresh-v1') ? getSmartCardSharedStyles() : smartCardSharedStyles, dateStyles, dateNodeStyles, embedCardStyles(), unsupportedStyles, resizerStyles, pragmaticResizerStyles(), pragmaticStylesLayoutFirstNodeResizeHandleFix(), pragmaticResizerStylesForTooltip(), aiPanelStyles(props.colorMode), firstBlockNodeStylesNew, fg('platform_editor_vanilla_codebidi_warning') && codeBidiWarningStyles, MediaSharedClassNames.FLOATING_TOOLBAR_COMPONENT, !fg('platform-visual-refresh-icons') ? css(_templateObject1 || (_templateObject1 = _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);
166
167
  };
167
168
  export var createEditorContentStyle = function createEditorContentStyle(styles) {
168
169
  return /*#__PURE__*/React.forwardRef(function (props, ref) {
@@ -21,6 +21,7 @@ import { backgroundColorStyles } from './styles/backgroundColorStyles';
21
21
  import { baseStyles } from './styles/baseStyles';
22
22
  import { blockMarksStyles } from './styles/blockMarksStyles';
23
23
  import { blocktypeStyles, blocktypeStyles_fg_platform_editor_nested_dnd_styles_changes, blocktypeStyles_fg_platform_editor_typography_ugc, blocktypeStyles_without_fg_platform_editor_typography_ugc } from './styles/blockTypeStyles';
24
+ import { codeBidiWarningStyles } from './styles/codeBidiWarningStyles';
24
25
  import { codeBlockStyles, codeBgColorStyles, firstCodeBlockWithNoMargin, firstCodeBlockWithNoMarginOld } from './styles/codeBlockStyles';
25
26
  import { codeMarkStyles } from './styles/codeMarkStyles';
26
27
  import { commentEditorStyles } from './styles/commentEditorStyles';
@@ -319,7 +320,9 @@ var EditorContentContainer = /*#__PURE__*/React.forwardRef(function (props, ref)
319
320
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
320
321
  !fg('platform-visual-refresh-icons') && linkLegacyIconStylesFix,
321
322
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
322
- fg('confluence_floating_toolbar_animation') && selectionToolbarAnimationStyles],
323
+ fg('confluence_floating_toolbar_animation') && selectionToolbarAnimationStyles,
324
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
325
+ fg('platform_editor_vanilla_codebidi_warning') && codeBidiWarningStyles],
323
326
  "data-editor-scroll-container": isScrollable ? 'true' : undefined,
324
327
  "data-testid": "editor-content-container",
325
328
  style: {
@@ -0,0 +1,68 @@
1
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled
2
+ import { css } from '@emotion/react';
3
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
4
+ export var codeBidiWarningStyles = css({
5
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
6
+ '[data-prosemirror-node-name="code-bidi-warning"]': {
7
+ display: 'inline-block'
8
+ },
9
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
10
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]': {
11
+ paddingInlineStart: "var(--ds-space-050, 4px)",
12
+ paddingInlineEnd: "var(--ds-space-050, 4px)",
13
+ font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
14
+ fontStyle: 'normal',
15
+ fontFamily: "var(--ds-font-family-code, ui-monospace, Menlo, \"Segoe UI Mono\", \"Ubuntu Mono\", monospace)",
16
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
17
+ paddingTop: '0.05rem',
18
+ // eslint-disable-next-line @atlaskit/design-system/use-tokens-space
19
+ paddingBottom: '0.05rem',
20
+ color: "var(--ds-text-warning, #A54800)",
21
+ backgroundColor: "var(--ds-background-warning, #FFF7D6)"
22
+ },
23
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
24
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-decorator"]:hover': {
25
+ color: "var(--ds-text-warning, #A54800)",
26
+ backgroundColor: "var(--ds-background-warning-hovered, #F8E6A0)"
27
+ },
28
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
29
+ '[data-prosemirror-node-name="code-bidi-warning"] [data-bidi-component="code-bidi-warning-tooltip"]': {
30
+ visibility: 'hidden',
31
+ boxSizing: 'border-box',
32
+ width: '15pc',
33
+ backgroundColor: "var(--ds-background-neutral-bold, #44546F)",
34
+ color: "var(--ds-text-inverse, #FFFFFF)",
35
+ overflowWrap: 'break-word',
36
+ cursor: 'default',
37
+ borderRadius: "var(--ds-border-radius, 4px)",
38
+ margin: "var(--ds-space-0, 0px)",
39
+ padding: "var(--ds-space-025, 2px)".concat(" ", "var(--ds-space-075, 6px)"),
40
+ position: 'fixed',
41
+ // The character label will be ~80px and this is positioned from the end of that label
42
+ // We also use this instead of top: 24px to make sure the tooltip maintains its initial position
43
+ // instead of being positioned relative to the viewport.
44
+ // We need to use position: fixed so that the tooltip bypasses the overflow settings of the code block
45
+ // and is always visible.
46
+ // We also offset a little extra here to account for the transition behavior (to replicate ADS fade-in-from-top)
47
+ transform: 'translate(calc(-50% - 40px), calc(24px - 4px))',
48
+ opacity: 0,
49
+ whiteSpace: 'normal',
50
+ font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
51
+ zIndex: 9999,
52
+ // Exit animation timings
53
+ // - Mark invisible after 0.475s
54
+ // - After 0.3s, fade out and move up over 0.175s
55
+ transition: 'visibility 0s linear 0.475s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s'
56
+ },
57
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
58
+ '[data-prosemirror-node-name="code-bidi-warning"]:hover [data-bidi-component="code-bidi-warning-tooltip"]': {
59
+ visibility: 'visible',
60
+ transform: 'translate(calc(-50% - 40px), calc(24px))',
61
+ opacity: 1,
62
+ // Enter animation timings
63
+ // - Mark visible after 0.3s of hovering
64
+ // - After 0.3s, fade in over 0.175s
65
+ // - After 0.3s, move down over 0.35s
66
+ transition: 'visibility 0s linear 0.3s, opacity 0.175s cubic-bezier(0.15,1,0.3,1) 0.3s, transform 0.35s cubic-bezier(0.15,1,0.3,1) 0.3s'
67
+ }
68
+ });
@@ -1,2 +1,2 @@
1
1
  export var name = "@atlaskit/editor-core";
2
- export var version = "208.7.3";
2
+ export var version = "208.8.0";
@@ -517,9 +517,9 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
517
517
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
518
518
  insert: (props: {
519
519
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
520
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
520
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
521
521
  query: string;
522
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
522
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
523
523
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
524
524
  }) => boolean;
525
525
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -618,9 +618,9 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
618
618
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
619
619
  insert: (props: {
620
620
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
621
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
621
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
622
622
  query: string;
623
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
623
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
624
624
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
625
625
  }) => boolean;
626
626
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -1165,9 +1165,9 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
1165
1165
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
1166
1166
  insert: (props: {
1167
1167
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
1168
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
1168
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
1169
1169
  query: string;
1170
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
1170
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
1171
1171
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
1172
1172
  }) => boolean;
1173
1173
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -1308,9 +1308,9 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
1308
1308
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
1309
1309
  insert: (props: {
1310
1310
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
1311
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
1311
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
1312
1312
  query: string;
1313
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
1313
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
1314
1314
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
1315
1315
  }) => boolean;
1316
1316
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import EditorActions from '../actions';
2
+ import type EditorActions from '../actions';
3
3
  import { type EditorNextProps } from '../types/editor-props';
4
4
  export type FullPageEditorProps = Pick<EditorNextProps, 'preset' | 'defaultValue' | 'disabled' | 'mentionProvider' | 'performanceTracking' | 'contextIdentifierProvider' | 'searchProvider' | 'activityProvider' | 'annotationProviders' | 'collabEditProvider' | 'collabEdit' | 'taskDecisionProvider' | 'extensionProviders' | 'shouldFocus' | 'quickInsert' | 'secondaryToolbarComponents' | 'featureFlags' | 'primaryToolbarComponents' | 'contextPanel' | 'contentComponents' | 'primaryToolbarIconBefore' | 'sanitizePrivateContent' | '__livePage'> & {
5
5
  onChange?: () => void;
@@ -517,9 +517,9 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
517
517
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
518
518
  insert: (props: {
519
519
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
520
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
520
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
521
521
  query: string;
522
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
522
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
523
523
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
524
524
  }) => boolean;
525
525
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -618,9 +618,9 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
618
618
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
619
619
  insert: (props: {
620
620
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
621
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
621
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
622
622
  query: string;
623
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
623
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
624
624
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
625
625
  }) => boolean;
626
626
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -1165,9 +1165,9 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
1165
1165
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
1166
1166
  insert: (props: {
1167
1167
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
1168
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
1168
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
1169
1169
  query: string;
1170
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
1170
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
1171
1171
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
1172
1172
  }) => boolean;
1173
1173
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -1308,9 +1308,9 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
1308
1308
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
1309
1309
  insert: (props: {
1310
1310
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
1311
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
1311
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
1312
1312
  query: string;
1313
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
1313
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
1314
1314
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
1315
1315
  }) => boolean;
1316
1316
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -0,0 +1 @@
1
+ export declare const codeBidiWarningStyles: import("@emotion/react").SerializedStyles;
@@ -0,0 +1 @@
1
+ export declare const codeBidiWarningStyles: import("@emotion/react").SerializedStyles;
@@ -701,9 +701,9 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
701
701
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
702
702
  insert: (props: {
703
703
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
704
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
704
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
705
705
  query: string;
706
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
706
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
707
707
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
708
708
  }) => boolean;
709
709
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -822,9 +822,9 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
822
822
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
823
823
  insert: (props: {
824
824
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
825
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
825
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
826
826
  query: string;
827
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
827
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
828
828
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
829
829
  }) => boolean;
830
830
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -1474,9 +1474,9 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
1474
1474
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
1475
1475
  insert: (props: {
1476
1476
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
1477
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
1477
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
1478
1478
  query: string;
1479
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
1479
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
1480
1480
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
1481
1481
  }) => boolean;
1482
1482
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -1643,9 +1643,9 @@ export declare function createUniversalPreset({ props, prevProps, initialPluginC
1643
1643
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
1644
1644
  insert: (props: {
1645
1645
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
1646
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
1646
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
1647
1647
  query: string;
1648
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
1648
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
1649
1649
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
1650
1650
  }) => boolean;
1651
1651
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import EditorActions from '../actions';
2
+ import type EditorActions from '../actions';
3
3
  import { type EditorNextProps } from '../types/editor-props';
4
4
  export type FullPageEditorProps = Pick<EditorNextProps, 'preset' | 'defaultValue' | 'disabled' | 'mentionProvider' | 'performanceTracking' | 'contextIdentifierProvider' | 'searchProvider' | 'activityProvider' | 'annotationProviders' | 'collabEditProvider' | 'collabEdit' | 'taskDecisionProvider' | 'extensionProviders' | 'shouldFocus' | 'quickInsert' | 'secondaryToolbarComponents' | 'featureFlags' | 'primaryToolbarComponents' | 'contextPanel' | 'contentComponents' | 'primaryToolbarIconBefore' | 'sanitizePrivateContent' | '__livePage'> & {
5
5
  onChange?: () => void;
@@ -701,9 +701,9 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
701
701
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
702
702
  insert: (props: {
703
703
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
704
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
704
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
705
705
  query: string;
706
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
706
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
707
707
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
708
708
  }) => boolean;
709
709
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -822,9 +822,9 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
822
822
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
823
823
  insert: (props: {
824
824
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
825
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
825
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
826
826
  query: string;
827
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
827
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
828
828
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
829
829
  }) => boolean;
830
830
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -1474,9 +1474,9 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
1474
1474
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
1475
1475
  insert: (props: {
1476
1476
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
1477
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
1477
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
1478
1478
  query: string;
1479
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
1479
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
1480
1480
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
1481
1481
  }) => boolean;
1482
1482
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -1643,9 +1643,9 @@ export default function useUniversalPreset({ props, initialPluginConfiguration }
1643
1643
  isAllowed: (editorState: import("prosemirror-state").EditorState) => boolean;
1644
1644
  insert: (props: {
1645
1645
  triggerHandler: import("@atlaskit/editor-common/types").TypeAheadHandler;
1646
- contentItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem;
1646
+ contentItem: import("@atlaskit/editor-common/types").TypeAheadItem;
1647
1647
  query: string;
1648
- sourceListItem: import("@atlaskit/editor-common/provider-factory").TypeAheadItem[];
1648
+ sourceListItem: import("@atlaskit/editor-common/types").TypeAheadItem[];
1649
1649
  mode?: import("@atlaskit/editor-common/type-ahead").SelectItemMode | undefined;
1650
1650
  }) => boolean;
1651
1651
  findHandlerByTrigger: (trigger: string) => import("@atlaskit/editor-common/types").TypeAheadHandler | null;
@@ -0,0 +1 @@
1
+ export declare const codeBidiWarningStyles: import("@emotion/react").SerializedStyles;
@@ -0,0 +1 @@
1
+ export declare const codeBidiWarningStyles: import("@emotion/react").SerializedStyles;
package/docs/0-intro.tsx CHANGED
@@ -24,8 +24,8 @@ ${(<AtlassianInternalWarning />)}
24
24
  ## Installation
25
25
 
26
26
  1. Install the editor libraries
27
- - **npm:** \`npm install --save @atlaskit/editor-core @atlaskit/css-reset\`
28
- - **yarn:** \`yarn add @atlaskit/editor-core @atlaskit/css-reset\`
27
+ - **npm:** \`npm install --save @atlaskit/editor-core @atlaskit/editor-common @atlaskit/css-reset\`
28
+ - **yarn:** \`yarn add @atlaskit/editor-core @atlaskit/editor-common @atlaskit/css-reset\`
29
29
 
30
30
  2. Deduplicate the dependencies \(if necessary\) by setting resolutions to avoid multiple versions of the editor libraries or by running [npm dedupe](https://docs.npmjs.com/cli/v6/commands/npm-dedupe) or [yarn dedupe](https://yarnpkg.com/cli/dedupe) after installation.
31
31
  3. Setup the CSS reset in your application
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-core",
3
- "version": "208.7.4",
3
+ "version": "209.0.0",
4
4
  "description": "A package contains Atlassian editor core functionality",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -45,11 +45,10 @@
45
45
  "@atlaskit/analytics-next-stable-react-context": "1.0.1",
46
46
  "@atlaskit/button": "^23.2.0",
47
47
  "@atlaskit/css": "^0.12.0",
48
- "@atlaskit/editor-common": "^107.4.0",
49
48
  "@atlaskit/editor-json-transformer": "^8.24.0",
50
49
  "@atlaskit/editor-performance-metrics": "^2.1.0",
51
- "@atlaskit/editor-plugin-quick-insert": "^2.6.0",
52
- "@atlaskit/editor-plugin-user-preferences": "^0.3.0",
50
+ "@atlaskit/editor-plugin-quick-insert": "^3.0.0",
51
+ "@atlaskit/editor-plugin-user-preferences": "^1.0.0",
53
52
  "@atlaskit/editor-plugins": "^9.4.0",
54
53
  "@atlaskit/editor-prosemirror": "7.0.0",
55
54
  "@atlaskit/editor-shared-styles": "^3.4.0",
@@ -62,7 +61,7 @@
62
61
  "@atlaskit/platform-feature-flags-react": "^0.2.0",
63
62
  "@atlaskit/react-ufo": "^3.14.0",
64
63
  "@atlaskit/task-decision": "^19.2.0",
65
- "@atlaskit/tmp-editor-statsig": "^8.6.0",
64
+ "@atlaskit/tmp-editor-statsig": "^8.7.0",
66
65
  "@atlaskit/tokens": "^5.4.0",
67
66
  "@atlaskit/tooltip": "^20.3.0",
68
67
  "@atlaskit/width-detector": "^5.0.0",
@@ -79,6 +78,7 @@
79
78
  "uuid": "^3.1.0"
80
79
  },
81
80
  "peerDependencies": {
81
+ "@atlaskit/editor-common": "^107.6.0",
82
82
  "@atlaskit/link-provider": "^3.4.0",
83
83
  "@atlaskit/media-core": "^37.0.0",
84
84
  "react": "^18.2.0",
@@ -90,11 +90,11 @@
90
90
  "@af/visual-regression": "workspace:^",
91
91
  "@atlaskit/adf-utils": "^19.20.0",
92
92
  "@atlaskit/analytics-listeners": "^9.0.0",
93
- "@atlaskit/collab-provider": "^10.21.0",
94
- "@atlaskit/editor-plugin-annotation": "^2.9.0",
95
- "@atlaskit/editor-plugin-card": "^6.7.0",
96
- "@atlaskit/editor-plugin-list": "^4.2.0",
97
- "@atlaskit/editor-plugin-paste": "^3.3.0",
93
+ "@atlaskit/collab-provider": "^11.0.0",
94
+ "@atlaskit/editor-plugin-annotation": "^3.0.0",
95
+ "@atlaskit/editor-plugin-card": "^7.0.0",
96
+ "@atlaskit/editor-plugin-list": "^5.0.0",
97
+ "@atlaskit/editor-plugin-paste": "^4.0.0",
98
98
  "@atlaskit/link-provider": "^3.4.0",
99
99
  "@atlaskit/logo": "^19.5.0",
100
100
  "@atlaskit/media-core": "^37.0.0",
@@ -102,16 +102,16 @@
102
102
  "@atlaskit/media-test-helpers": "^37.0.0",
103
103
  "@atlaskit/modal-dialog": "^14.2.0",
104
104
  "@atlaskit/primitives": "^14.10.0",
105
- "@atlaskit/renderer": "^119.3.0",
105
+ "@atlaskit/renderer": "^120.0.0",
106
106
  "@atlaskit/section-message": "^8.2.0",
107
- "@atlaskit/smart-card": "^38.20.0",
107
+ "@atlaskit/smart-card": "^39.0.0",
108
108
  "@atlaskit/synchrony-test-helpers": "workspace:^",
109
109
  "@atlaskit/toggle": "^15.0.0",
110
110
  "@atlaskit/util-data-test": "^18.0.0",
111
111
  "@atlaskit/visual-regression": "workspace:^",
112
112
  "@atlassian/adf-schema-json": "^1.31.0",
113
113
  "@atlassian/feature-flags-test-utils": "^0.3.0",
114
- "@atlassian/search-provider": "^3.0.0",
114
+ "@atlassian/search-provider": "^4.0.0",
115
115
  "@emotion/jest": "^11.8.0",
116
116
  "@storybook/addon-knobs": "^6.4.0",
117
117
  "@testing-library/react": "^13.4.0",
@@ -574,6 +574,9 @@
574
574
  },
575
575
  "platform_editor_find_and_replace_magenta_match": {
576
576
  "type": "boolean"
577
+ },
578
+ "platform_editor_vanilla_codebidi_warning": {
579
+ "type": "boolean"
577
580
  }
578
581
  },
579
582
  "stricter": {