@atlaskit/editor-core 212.0.1 → 212.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/cjs/ui/ContentStyles/tasks-and-decisions.js +1 -1
  3. package/dist/cjs/ui/EditorContentContainer/EditorContentContainer.js +3 -1
  4. package/dist/cjs/ui/EditorContentContainer/styles/blockTypeStyles.js +1 -1
  5. package/dist/cjs/ui/EditorContentContainer/styles/expandStyles.js +1 -1
  6. package/dist/cjs/ui/EditorContentContainer/styles/tableStyles.js +25 -2
  7. package/dist/cjs/ui/EditorContentContainer/styles/tasksAndDecisionsStyles.js +1 -1
  8. package/dist/cjs/ui/Toolbar/Toolbar.js +30 -2
  9. package/dist/cjs/version-wrapper.js +1 -1
  10. package/dist/es2019/ui/ContentStyles/tasks-and-decisions.js +1 -1
  11. package/dist/es2019/ui/EditorContentContainer/EditorContentContainer.js +4 -2
  12. package/dist/es2019/ui/EditorContentContainer/styles/blockTypeStyles.js +1 -1
  13. package/dist/es2019/ui/EditorContentContainer/styles/expandStyles.js +1 -1
  14. package/dist/es2019/ui/EditorContentContainer/styles/tableStyles.js +23 -0
  15. package/dist/es2019/ui/EditorContentContainer/styles/tasksAndDecisionsStyles.js +1 -1
  16. package/dist/es2019/ui/Toolbar/Toolbar.js +29 -2
  17. package/dist/es2019/version-wrapper.js +1 -1
  18. package/dist/esm/ui/ContentStyles/tasks-and-decisions.js +1 -1
  19. package/dist/esm/ui/EditorContentContainer/EditorContentContainer.js +4 -2
  20. package/dist/esm/ui/EditorContentContainer/styles/blockTypeStyles.js +1 -1
  21. package/dist/esm/ui/EditorContentContainer/styles/expandStyles.js +1 -1
  22. package/dist/esm/ui/EditorContentContainer/styles/tableStyles.js +24 -1
  23. package/dist/esm/ui/EditorContentContainer/styles/tasksAndDecisionsStyles.js +1 -1
  24. package/dist/esm/ui/Toolbar/Toolbar.js +30 -2
  25. package/dist/esm/version-wrapper.js +1 -1
  26. package/dist/types/ui/EditorContentContainer/styles/tableStyles.d.ts +1 -0
  27. package/dist/types-ts4.5/ui/EditorContentContainer/styles/tableStyles.d.ts +1 -0
  28. package/package.json +4 -4
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @atlaskit/editor-core
2
2
 
3
+ ## 212.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`4edb2aee0da9c`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/4edb2aee0da9c) -
8
+ Add conditionalHooksFactory and migrate usage of useSharedPluginStateSelector to useEditorToolbar
9
+ and useSharedPluginStateWithSelector
10
+
11
+ ### Patch Changes
12
+
13
+ - [`c0656bad0f992`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/c0656bad0f992) -
14
+ EDITOR-1389 fix table container width behind platform_editor_table_container_width_fix
15
+ - [`f0662cd7a143e`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/f0662cd7a143e) -
16
+ Internal changes to how borders are applied.
17
+ - Updated dependencies
18
+
3
19
  ## 212.0.1
4
20
 
5
21
  ### Patch Changes
@@ -17,7 +17,7 @@ var taskDecisionStyles = exports.taskDecisionStyles = (0, _react.css)({
17
17
  '.ak-editor-selected-node > [data-decision-wrapper], ol[data-node-type="decisionList"].ak-editor-selected-node':
18
18
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values
19
19
  [{
20
- borderRadius: '4px'
20
+ borderRadius: "var(--ds-radius-small, 4px)"
21
21
  },
22
22
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
23
23
  (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.BoxShadow, _editorSharedStyles.SelectionStyle.Blanket])],
@@ -358,7 +358,9 @@ var EditorContentContainer = /*#__PURE__*/_react.default.forwardRef(function (pr
358
358
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
359
359
  _mediaStyles.mediaAlignmentStyles,
360
360
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
361
- _tableStyles.tableLayoutFixes,
361
+ _tableStyles.tableLayoutFixes, (0, _expValEquals.expValEquals)('platform_editor_table_container_width_fix', 'isEnabled', true)
362
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
363
+ && _tableStyles.tableContainerStyles,
362
364
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
363
365
  _link.hyperLinkFloatingToolbarStyles,
364
366
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
@@ -19,7 +19,7 @@ var blocktypeStyles = exports.blocktypeStyles = (0, _react.css)({
19
19
  width: '100%',
20
20
  display: 'inline-block',
21
21
  paddingLeft: "var(--ds-space-200, 16px)",
22
- borderLeftWidth: '2px',
22
+ borderLeftWidth: "var(--ds-border-width-selected, 2px)",
23
23
  borderLeftStyle: 'solid',
24
24
  borderLeftColor: "var(--ds-border, #091E4224)",
25
25
  margin: '0.75rem 0 0 0',
@@ -16,7 +16,7 @@ var expandStyles = exports.expandStyles = (0, _react.css)({
16
16
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
17
17
  '.ak-editor-expand': {
18
18
  // sharedExpandStyles.containerStyles({ expanded: false, focused: false })(),
19
- borderWidth: '1px',
19
+ borderWidth: "var(--ds-border-width, 1px)",
20
20
  borderStyle: 'solid',
21
21
  borderColor: 'transparent',
22
22
  borderRadius: "var(--ds-radius-small, 4px)",
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.tableLayoutFixes = exports.tableCommentEditorStyles = exports.tableCommentEditorMarginOverride = void 0;
7
+ exports.tableLayoutFixes = exports.tableContainerStyles = exports.tableCommentEditorStyles = exports.tableCommentEditorMarginOverride = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
9
  var _react = require("@emotion/react");
10
10
  var _scrollbarStyles = require("./scrollbarStyles");
@@ -32,4 +32,27 @@ var tableCommentEditorMarginOverride = exports.tableCommentEditorMarginOverride
32
32
  });
33
33
 
34
34
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
35
- var tableCommentEditorStyles = exports.tableCommentEditorStyles = (0, _react.css)((0, _defineProperty2.default)({}, ".ProseMirror .pm-table-wrapper > table", [tableCommentEditorMarginOverride, _scrollbarStyles.scrollbarStyles]));
35
+ var tableCommentEditorStyles = exports.tableCommentEditorStyles = (0, _react.css)((0, _defineProperty2.default)({}, ".ProseMirror .pm-table-wrapper > table", [tableCommentEditorMarginOverride, _scrollbarStyles.scrollbarStyles]));
36
+
37
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
38
+ var tableContainerStyles = exports.tableContainerStyles = (0, _react.css)({
39
+ /* Fix for HOT-119925: Ensure table containers have proper width constraints and overflow handling */
40
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
41
+ '.ProseMirror .pm-table-wrapper': {
42
+ maxWidth: '100%',
43
+ overflowX: 'auto',
44
+ overflowY: 'visible',
45
+ // Ensure the wrapper doesn't grow beyond its container
46
+ width: '100%',
47
+ boxSizing: 'border-box'
48
+ },
49
+ /* Fix for HOT-119925: Ensure table elements are responsive and don't overflow */
50
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
51
+ '.ProseMirror .pm-table-wrapper table': {
52
+ maxWidth: '100%',
53
+ width: '100%',
54
+ tableLayout: 'fixed',
55
+ // Ensure tables can be scrolled horizontally if needed
56
+ minWidth: 'auto'
57
+ }
58
+ });
@@ -77,7 +77,7 @@ var tasksAndDecisionsStyles = exports.tasksAndDecisionsStyles = (0, _react.css)(
77
77
  var decisionStyles = exports.decisionStyles = (0, _react.css)((_css = {}, (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)(_css, ".".concat(akEditorSelectedNodeClassName, " > [data-decision-wrapper], ol[data-node-type='decisionList'].").concat(akEditorSelectedNodeClassName),
78
78
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values
79
79
  [{
80
- borderRadius: '4px'
80
+ borderRadius: "var(--ds-radius-small, 4px)"
81
81
  },
82
82
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
83
83
  _selectionStyles.boxShadowSelectionStyles,
@@ -6,11 +6,14 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.ToolbarNext = exports.Toolbar = void 0;
8
8
  var _react = _interopRequireDefault(require("react"));
9
+ var _hooks = require("@atlaskit/editor-common/hooks");
9
10
  var _toolbar = require("@atlaskit/editor-common/toolbar");
10
11
  var _types = require("@atlaskit/editor-common/types");
11
12
  var _useSharedPluginStateSelector = require("@atlaskit/editor-common/use-shared-plugin-state-selector");
12
13
  var _editorToolbar = require("@atlaskit/editor-toolbar");
13
14
  var _editorToolbarModel = require("@atlaskit/editor-toolbar-model");
15
+ var _platformFeatureFlagsReact = require("@atlaskit/platform-feature-flags-react");
16
+ var _expValEquals = require("@atlaskit/tmp-editor-statsig/exp-val-equals");
14
17
  var _ToolbarInner = require("./ToolbarInner");
15
18
  /**
16
19
  * *Warning:* With `platform_editor_toolbar_aifc` enabled this component is no longer used and is replaced with `<ToolbarNext />`.
@@ -35,6 +38,26 @@ var Toolbar = exports.Toolbar = function Toolbar(props) {
35
38
  containerElement: props.containerElement
36
39
  });
37
40
  };
41
+ var usePluginState = (0, _platformFeatureFlagsReact.conditionalHooksFactory)(function () {
42
+ return (0, _expValEquals.expValEquals)('platform_editor_toolbar_aifc_patch_3', 'isEnabled', true);
43
+ }, function (api) {
44
+ return (0, _hooks.useSharedPluginStateWithSelector)(api, ['connectivity', 'editorViewMode', 'userPreferences'], function (state) {
45
+ var _state$connectivitySt, _state$editorViewMode, _state$userPreference;
46
+ return {
47
+ connectivityStateMode: (_state$connectivitySt = state.connectivityState) === null || _state$connectivitySt === void 0 ? void 0 : _state$connectivitySt.mode,
48
+ editorViewMode: (_state$editorViewMode = state.editorViewModeState) === null || _state$editorViewMode === void 0 ? void 0 : _state$editorViewMode.mode,
49
+ editorToolbarDockingPreference: (_state$userPreference = state.userPreferencesState) === null || _state$userPreference === void 0 || (_state$userPreference = _state$userPreference.preferences) === null || _state$userPreference === void 0 ? void 0 : _state$userPreference.toolbarDockingPosition
50
+ };
51
+ });
52
+ }, function (api) {
53
+ var connectivityStateMode = (0, _useSharedPluginStateSelector.useSharedPluginStateSelector)(api, 'connectivity.mode');
54
+ return {
55
+ connectivityStateMode: connectivityStateMode,
56
+ editorViewMode: undefined,
57
+ editorToolbarDockingPreference: undefined
58
+ };
59
+ });
60
+
38
61
  /**
39
62
  * Renders a primary toolbar, driven by components registed by `editor-plugin-toolbar`. `ToolbarModelRenderer` will just
40
63
  * render the toolbar structure, the design is driven per component registered including the toolbar itself.
@@ -50,11 +73,16 @@ var ToolbarNext = exports.ToolbarNext = function ToolbarNext(_ref) {
50
73
  editorAppearance = _ref.editorAppearance,
51
74
  popupsBoundariesElement = _ref.popupsBoundariesElement,
52
75
  popupsScrollableElement = _ref.popupsScrollableElement;
53
- var connectivityStateMode = (0, _useSharedPluginStateSelector.useSharedPluginStateSelector)(editorAPI, 'connectivity.mode');
76
+ var _usePluginState = usePluginState(editorAPI),
77
+ connectivityStateMode = _usePluginState.connectivityStateMode,
78
+ editorViewMode = _usePluginState.editorViewMode,
79
+ editorToolbarDockingPreference = _usePluginState.editorToolbarDockingPreference;
54
80
  var isOffline = connectivityStateMode === 'offline';
55
81
  return /*#__PURE__*/_react.default.createElement(_toolbar.EditorToolbarProvider, {
56
82
  editorView: editorView !== null && editorView !== void 0 ? editorView : null,
57
- editorAppearance: editorAppearance
83
+ editorAppearance: editorAppearance,
84
+ editorViewMode: editorViewMode,
85
+ editorToolbarDockingPreference: editorToolbarDockingPreference
58
86
  }, /*#__PURE__*/_react.default.createElement(_toolbar.EditorToolbarUIProvider, {
59
87
  api: editorAPI,
60
88
  isDisabled: isOffline,
@@ -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 = "212.0.0";
8
+ var version = exports.version = "212.0.1";
@@ -8,7 +8,7 @@ export const taskDecisionStyles = css({
8
8
  '.ak-editor-selected-node > [data-decision-wrapper], ol[data-node-type="decisionList"].ak-editor-selected-node':
9
9
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values
10
10
  [{
11
- borderRadius: '4px'
11
+ borderRadius: "var(--ds-radius-small, 4px)"
12
12
  },
13
13
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
14
14
  getSelectionStyles([SelectionStyle.BoxShadow, SelectionStyle.Blanket])],
@@ -57,7 +57,7 @@ import { selectionToolbarAnimationStyles } from './styles/selectionToolbarStyles
57
57
  import { shadowStyles } from './styles/shadowStyles';
58
58
  import { editorControlsSmartCardStyles, linkingVisualRefreshV1Styles, smartCardStyles, smartCardStylesWithSearchMatch, smartCardStylesWithSearchMatchAndBlockMenuDangerStyles, smartCardStylesWithSearchMatchAndPreviewPanelResponsiveness, smartLinksInLivePagesStyles } from './styles/smartCardStyles';
59
59
  import { statusDangerStyles, statusStyles, statusStylesMixin_fg_platform_component_visual_refresh, statusStylesMixin_fg_platform_component_visual_refresh_with_search_match, statusStylesMixin_without_fg_platform_component_visual_refresh, statusStylesMixin_without_fg_platform_component_visual_refresh_with_search_match } from './styles/statusStyles';
60
- import { tableCommentEditorStyles, tableLayoutFixes } from './styles/tableStyles';
60
+ import { tableCommentEditorStyles, tableContainerStyles, tableLayoutFixes } from './styles/tableStyles';
61
61
  import { decisionStyles, tasksAndDecisionsStyles, decisionIconWithVisualRefresh, decisionIconWithoutVisualRefresh, taskItemStyles, taskItemStylesWithBlockTaskItem, decisionDangerStyles } from './styles/tasksAndDecisionsStyles';
62
62
  import { telepointerColorAndCommonStyle, telepointerStyle } from './styles/telepointerStyles';
63
63
  import { textColorStyles } from './styles/textColorStyles';
@@ -353,7 +353,9 @@ const EditorContentContainer = /*#__PURE__*/React.forwardRef((props, ref) => {
353
353
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
354
354
  mediaAlignmentStyles,
355
355
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
356
- tableLayoutFixes,
356
+ tableLayoutFixes, expValEquals('platform_editor_table_container_width_fix', 'isEnabled', true)
357
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
358
+ && tableContainerStyles,
357
359
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
358
360
  hyperLinkFloatingToolbarStyles,
359
361
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
@@ -12,7 +12,7 @@ export const blocktypeStyles = css({
12
12
  width: '100%',
13
13
  display: 'inline-block',
14
14
  paddingLeft: "var(--ds-space-200, 16px)",
15
- borderLeftWidth: '2px',
15
+ borderLeftWidth: "var(--ds-border-width-selected, 2px)",
16
16
  borderLeftStyle: 'solid',
17
17
  borderLeftColor: "var(--ds-border, #091E4224)",
18
18
  margin: '0.75rem 0 0 0',
@@ -9,7 +9,7 @@ export const expandStyles = css({
9
9
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
10
10
  '.ak-editor-expand': {
11
11
  // sharedExpandStyles.containerStyles({ expanded: false, focused: false })(),
12
- borderWidth: '1px',
12
+ borderWidth: "var(--ds-border-width, 1px)",
13
13
  borderStyle: 'solid',
14
14
  borderColor: 'transparent',
15
15
  borderRadius: "var(--ds-radius-small, 4px)",
@@ -28,4 +28,27 @@ export const tableCommentEditorStyles = css({
28
28
  // TODO: ED-28075 - refactor array include to unblock Compiled CSS migration
29
29
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values
30
30
  [`.ProseMirror .pm-table-wrapper > table`]: [tableCommentEditorMarginOverride, scrollbarStyles]
31
+ });
32
+
33
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
34
+ export const tableContainerStyles = css({
35
+ /* Fix for HOT-119925: Ensure table containers have proper width constraints and overflow handling */
36
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
37
+ '.ProseMirror .pm-table-wrapper': {
38
+ maxWidth: '100%',
39
+ overflowX: 'auto',
40
+ overflowY: 'visible',
41
+ // Ensure the wrapper doesn't grow beyond its container
42
+ width: '100%',
43
+ boxSizing: 'border-box'
44
+ },
45
+ /* Fix for HOT-119925: Ensure table elements are responsive and don't overflow */
46
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
47
+ '.ProseMirror .pm-table-wrapper table': {
48
+ maxWidth: '100%',
49
+ width: '100%',
50
+ tableLayout: 'fixed',
51
+ // Ensure tables can be scrolled horizontally if needed
52
+ minWidth: 'auto'
53
+ }
31
54
  });
@@ -80,7 +80,7 @@ export const decisionStyles = css({
80
80
  [`.${akEditorSelectedNodeClassName} > [data-decision-wrapper], ol[data-node-type='decisionList'].${akEditorSelectedNodeClassName}`]:
81
81
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values
82
82
  [{
83
- borderRadius: '4px'
83
+ borderRadius: "var(--ds-radius-small, 4px)"
84
84
  },
85
85
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
86
86
  boxShadowSelectionStyles,
@@ -1,9 +1,12 @@
1
1
  import React from 'react';
2
+ import { useSharedPluginStateWithSelector } from '@atlaskit/editor-common/hooks';
2
3
  import { EditorToolbarProvider, EditorToolbarUIProvider } from '@atlaskit/editor-common/toolbar';
3
4
  import { ToolbarSize } from '@atlaskit/editor-common/types';
4
5
  import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
5
6
  import { ToolbarButtonGroup, ToolbarDropdownItemSection, ToolbarSection } from '@atlaskit/editor-toolbar';
6
7
  import { ToolbarModelRenderer } from '@atlaskit/editor-toolbar-model';
8
+ import { conditionalHooksFactory } from '@atlaskit/platform-feature-flags-react';
9
+ import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
7
10
  import { ToolbarInner } from './ToolbarInner';
8
11
 
9
12
  /**
@@ -29,6 +32,24 @@ export const Toolbar = props => {
29
32
  containerElement: props.containerElement
30
33
  });
31
34
  };
35
+ const usePluginState = conditionalHooksFactory(() => expValEquals('platform_editor_toolbar_aifc_patch_3', 'isEnabled', true), api => {
36
+ return useSharedPluginStateWithSelector(api, ['connectivity', 'editorViewMode', 'userPreferences'], state => {
37
+ var _state$connectivitySt, _state$editorViewMode, _state$userPreference, _state$userPreference2;
38
+ return {
39
+ connectivityStateMode: (_state$connectivitySt = state.connectivityState) === null || _state$connectivitySt === void 0 ? void 0 : _state$connectivitySt.mode,
40
+ editorViewMode: (_state$editorViewMode = state.editorViewModeState) === null || _state$editorViewMode === void 0 ? void 0 : _state$editorViewMode.mode,
41
+ editorToolbarDockingPreference: (_state$userPreference = state.userPreferencesState) === null || _state$userPreference === void 0 ? void 0 : (_state$userPreference2 = _state$userPreference.preferences) === null || _state$userPreference2 === void 0 ? void 0 : _state$userPreference2.toolbarDockingPosition
42
+ };
43
+ });
44
+ }, api => {
45
+ const connectivityStateMode = useSharedPluginStateSelector(api, 'connectivity.mode');
46
+ return {
47
+ connectivityStateMode,
48
+ editorViewMode: undefined,
49
+ editorToolbarDockingPreference: undefined
50
+ };
51
+ });
52
+
32
53
  /**
33
54
  * Renders a primary toolbar, driven by components registed by `editor-plugin-toolbar`. `ToolbarModelRenderer` will just
34
55
  * render the toolbar structure, the design is driven per component registered including the toolbar itself.
@@ -45,11 +66,17 @@ export const ToolbarNext = ({
45
66
  popupsBoundariesElement,
46
67
  popupsScrollableElement
47
68
  }) => {
48
- const connectivityStateMode = useSharedPluginStateSelector(editorAPI, 'connectivity.mode');
69
+ const {
70
+ connectivityStateMode,
71
+ editorViewMode,
72
+ editorToolbarDockingPreference
73
+ } = usePluginState(editorAPI);
49
74
  const isOffline = connectivityStateMode === 'offline';
50
75
  return /*#__PURE__*/React.createElement(EditorToolbarProvider, {
51
76
  editorView: editorView !== null && editorView !== void 0 ? editorView : null,
52
- editorAppearance: editorAppearance
77
+ editorAppearance: editorAppearance,
78
+ editorViewMode: editorViewMode,
79
+ editorToolbarDockingPreference: editorToolbarDockingPreference
53
80
  }, /*#__PURE__*/React.createElement(EditorToolbarUIProvider, {
54
81
  api: editorAPI,
55
82
  isDisabled: isOffline,
@@ -1,2 +1,2 @@
1
1
  export const name = "@atlaskit/editor-core";
2
- export const version = "212.0.0";
2
+ export const version = "212.0.1";
@@ -9,7 +9,7 @@ export var taskDecisionStyles = css({
9
9
  '.ak-editor-selected-node > [data-decision-wrapper], ol[data-node-type="decisionList"].ak-editor-selected-node':
10
10
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values
11
11
  [{
12
- borderRadius: '4px'
12
+ borderRadius: "var(--ds-radius-small, 4px)"
13
13
  },
14
14
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
15
15
  getSelectionStyles([SelectionStyle.BoxShadow, SelectionStyle.Blanket])],
@@ -57,7 +57,7 @@ import { selectionToolbarAnimationStyles } from './styles/selectionToolbarStyles
57
57
  import { shadowStyles } from './styles/shadowStyles';
58
58
  import { editorControlsSmartCardStyles, linkingVisualRefreshV1Styles, smartCardStyles, smartCardStylesWithSearchMatch, smartCardStylesWithSearchMatchAndBlockMenuDangerStyles, smartCardStylesWithSearchMatchAndPreviewPanelResponsiveness, smartLinksInLivePagesStyles } from './styles/smartCardStyles';
59
59
  import { statusDangerStyles, statusStyles, statusStylesMixin_fg_platform_component_visual_refresh, statusStylesMixin_fg_platform_component_visual_refresh_with_search_match, statusStylesMixin_without_fg_platform_component_visual_refresh, statusStylesMixin_without_fg_platform_component_visual_refresh_with_search_match } from './styles/statusStyles';
60
- import { tableCommentEditorStyles, tableLayoutFixes } from './styles/tableStyles';
60
+ import { tableCommentEditorStyles, tableContainerStyles, tableLayoutFixes } from './styles/tableStyles';
61
61
  import { decisionStyles, tasksAndDecisionsStyles, decisionIconWithVisualRefresh, decisionIconWithoutVisualRefresh, taskItemStyles, taskItemStylesWithBlockTaskItem, decisionDangerStyles } from './styles/tasksAndDecisionsStyles';
62
62
  import { telepointerColorAndCommonStyle, telepointerStyle } from './styles/telepointerStyles';
63
63
  import { textColorStyles } from './styles/textColorStyles';
@@ -350,7 +350,9 @@ var EditorContentContainer = /*#__PURE__*/React.forwardRef(function (props, ref)
350
350
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
351
351
  mediaAlignmentStyles,
352
352
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
353
- tableLayoutFixes,
353
+ tableLayoutFixes, expValEquals('platform_editor_table_container_width_fix', 'isEnabled', true)
354
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
355
+ && tableContainerStyles,
354
356
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
355
357
  hyperLinkFloatingToolbarStyles,
356
358
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
@@ -12,7 +12,7 @@ export var blocktypeStyles = css({
12
12
  width: '100%',
13
13
  display: 'inline-block',
14
14
  paddingLeft: "var(--ds-space-200, 16px)",
15
- borderLeftWidth: '2px',
15
+ borderLeftWidth: "var(--ds-border-width-selected, 2px)",
16
16
  borderLeftStyle: 'solid',
17
17
  borderLeftColor: "var(--ds-border, #091E4224)",
18
18
  margin: '0.75rem 0 0 0',
@@ -9,7 +9,7 @@ export var expandStyles = css({
9
9
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
10
10
  '.ak-editor-expand': {
11
11
  // sharedExpandStyles.containerStyles({ expanded: false, focused: false })(),
12
- borderWidth: '1px',
12
+ borderWidth: "var(--ds-border-width, 1px)",
13
13
  borderStyle: 'solid',
14
14
  borderColor: 'transparent',
15
15
  borderRadius: "var(--ds-radius-small, 4px)",
@@ -25,4 +25,27 @@ export var tableCommentEditorMarginOverride = css({
25
25
  });
26
26
 
27
27
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
28
- export var tableCommentEditorStyles = css(_defineProperty({}, ".ProseMirror .pm-table-wrapper > table", [tableCommentEditorMarginOverride, scrollbarStyles]));
28
+ export var tableCommentEditorStyles = css(_defineProperty({}, ".ProseMirror .pm-table-wrapper > table", [tableCommentEditorMarginOverride, scrollbarStyles]));
29
+
30
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
31
+ export var tableContainerStyles = css({
32
+ /* Fix for HOT-119925: Ensure table containers have proper width constraints and overflow handling */
33
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
34
+ '.ProseMirror .pm-table-wrapper': {
35
+ maxWidth: '100%',
36
+ overflowX: 'auto',
37
+ overflowY: 'visible',
38
+ // Ensure the wrapper doesn't grow beyond its container
39
+ width: '100%',
40
+ boxSizing: 'border-box'
41
+ },
42
+ /* Fix for HOT-119925: Ensure table elements are responsive and don't overflow */
43
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
44
+ '.ProseMirror .pm-table-wrapper table': {
45
+ maxWidth: '100%',
46
+ width: '100%',
47
+ tableLayout: 'fixed',
48
+ // Ensure tables can be scrolled horizontally if needed
49
+ minWidth: 'auto'
50
+ }
51
+ });
@@ -71,7 +71,7 @@ export var tasksAndDecisionsStyles = css({
71
71
  export var decisionStyles = css((_css = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_css, ".".concat(akEditorSelectedNodeClassName, " > [data-decision-wrapper], ol[data-node-type='decisionList'].").concat(akEditorSelectedNodeClassName),
72
72
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values
73
73
  [{
74
- borderRadius: '4px'
74
+ borderRadius: "var(--ds-radius-small, 4px)"
75
75
  },
76
76
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
77
77
  boxShadowSelectionStyles,
@@ -1,9 +1,12 @@
1
1
  import React from 'react';
2
+ import { useSharedPluginStateWithSelector } from '@atlaskit/editor-common/hooks';
2
3
  import { EditorToolbarProvider, EditorToolbarUIProvider } from '@atlaskit/editor-common/toolbar';
3
4
  import { ToolbarSize } from '@atlaskit/editor-common/types';
4
5
  import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
5
6
  import { ToolbarButtonGroup, ToolbarDropdownItemSection, ToolbarSection } from '@atlaskit/editor-toolbar';
6
7
  import { ToolbarModelRenderer } from '@atlaskit/editor-toolbar-model';
8
+ import { conditionalHooksFactory } from '@atlaskit/platform-feature-flags-react';
9
+ import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
7
10
  import { ToolbarInner } from './ToolbarInner';
8
11
 
9
12
  /**
@@ -29,6 +32,26 @@ export var Toolbar = function Toolbar(props) {
29
32
  containerElement: props.containerElement
30
33
  });
31
34
  };
35
+ var usePluginState = conditionalHooksFactory(function () {
36
+ return expValEquals('platform_editor_toolbar_aifc_patch_3', 'isEnabled', true);
37
+ }, function (api) {
38
+ return useSharedPluginStateWithSelector(api, ['connectivity', 'editorViewMode', 'userPreferences'], function (state) {
39
+ var _state$connectivitySt, _state$editorViewMode, _state$userPreference;
40
+ return {
41
+ connectivityStateMode: (_state$connectivitySt = state.connectivityState) === null || _state$connectivitySt === void 0 ? void 0 : _state$connectivitySt.mode,
42
+ editorViewMode: (_state$editorViewMode = state.editorViewModeState) === null || _state$editorViewMode === void 0 ? void 0 : _state$editorViewMode.mode,
43
+ editorToolbarDockingPreference: (_state$userPreference = state.userPreferencesState) === null || _state$userPreference === void 0 || (_state$userPreference = _state$userPreference.preferences) === null || _state$userPreference === void 0 ? void 0 : _state$userPreference.toolbarDockingPosition
44
+ };
45
+ });
46
+ }, function (api) {
47
+ var connectivityStateMode = useSharedPluginStateSelector(api, 'connectivity.mode');
48
+ return {
49
+ connectivityStateMode: connectivityStateMode,
50
+ editorViewMode: undefined,
51
+ editorToolbarDockingPreference: undefined
52
+ };
53
+ });
54
+
32
55
  /**
33
56
  * Renders a primary toolbar, driven by components registed by `editor-plugin-toolbar`. `ToolbarModelRenderer` will just
34
57
  * render the toolbar structure, the design is driven per component registered including the toolbar itself.
@@ -44,11 +67,16 @@ export var ToolbarNext = function ToolbarNext(_ref) {
44
67
  editorAppearance = _ref.editorAppearance,
45
68
  popupsBoundariesElement = _ref.popupsBoundariesElement,
46
69
  popupsScrollableElement = _ref.popupsScrollableElement;
47
- var connectivityStateMode = useSharedPluginStateSelector(editorAPI, 'connectivity.mode');
70
+ var _usePluginState = usePluginState(editorAPI),
71
+ connectivityStateMode = _usePluginState.connectivityStateMode,
72
+ editorViewMode = _usePluginState.editorViewMode,
73
+ editorToolbarDockingPreference = _usePluginState.editorToolbarDockingPreference;
48
74
  var isOffline = connectivityStateMode === 'offline';
49
75
  return /*#__PURE__*/React.createElement(EditorToolbarProvider, {
50
76
  editorView: editorView !== null && editorView !== void 0 ? editorView : null,
51
- editorAppearance: editorAppearance
77
+ editorAppearance: editorAppearance,
78
+ editorViewMode: editorViewMode,
79
+ editorToolbarDockingPreference: editorToolbarDockingPreference
52
80
  }, /*#__PURE__*/React.createElement(EditorToolbarUIProvider, {
53
81
  api: editorAPI,
54
82
  isDisabled: isOffline,
@@ -1,2 +1,2 @@
1
1
  export var name = "@atlaskit/editor-core";
2
- export var version = "212.0.0";
2
+ export var version = "212.0.1";
@@ -2,3 +2,4 @@ import { type SerializedStyles } from '@emotion/react';
2
2
  export declare const tableLayoutFixes: SerializedStyles;
3
3
  export declare const tableCommentEditorMarginOverride: SerializedStyles;
4
4
  export declare const tableCommentEditorStyles: SerializedStyles;
5
+ export declare const tableContainerStyles: SerializedStyles;
@@ -2,3 +2,4 @@ import { type SerializedStyles } from '@emotion/react';
2
2
  export declare const tableLayoutFixes: SerializedStyles;
3
3
  export declare const tableCommentEditorMarginOverride: SerializedStyles;
4
4
  export declare const tableCommentEditorStyles: SerializedStyles;
5
+ export declare const tableContainerStyles: SerializedStyles;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-core",
3
- "version": "212.0.1",
3
+ "version": "212.1.0",
4
4
  "description": "A package contains Atlassian editor core functionality",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -63,7 +63,7 @@
63
63
  "@atlaskit/platform-feature-flags-react": "^0.3.0",
64
64
  "@atlaskit/react-ufo": "^4.6.0",
65
65
  "@atlaskit/task-decision": "^19.2.0",
66
- "@atlaskit/tmp-editor-statsig": "^12.9.0",
66
+ "@atlaskit/tmp-editor-statsig": "^12.10.0",
67
67
  "@atlaskit/tokens": "^6.3.0",
68
68
  "@atlaskit/tooltip": "^20.4.0",
69
69
  "@atlaskit/width-detector": "^5.0.0",
@@ -80,7 +80,7 @@
80
80
  "uuid": "^3.1.0"
81
81
  },
82
82
  "peerDependencies": {
83
- "@atlaskit/editor-common": "^109.0.0",
83
+ "@atlaskit/editor-common": "^109.1.0",
84
84
  "@atlaskit/link-provider": "^3.7.0",
85
85
  "@atlaskit/media-core": "^37.0.0",
86
86
  "react": "^18.2.0",
@@ -106,7 +106,7 @@
106
106
  "@atlaskit/primitives": "^14.14.0",
107
107
  "@atlaskit/renderer": "^122.0.0",
108
108
  "@atlaskit/section-message": "^8.7.0",
109
- "@atlaskit/smart-card": "^40.21.0",
109
+ "@atlaskit/smart-card": "^40.22.0",
110
110
  "@atlaskit/synchrony-test-helpers": "workspace:^",
111
111
  "@atlaskit/toggle": "^15.1.0",
112
112
  "@atlaskit/util-data-test": "^18.1.0",