@atlaskit/editor-plugin-block-controls 2.19.0 → 2.19.1

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # @atlaskit/editor-plugin-block-controls
2
2
 
3
+ ## 2.19.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#102045](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/102045)
8
+ [`44f96aff22dd9`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/44f96aff22dd9) -
9
+ [ED-26179] clean up platform_editor_elements_dnd_nested_table
10
+ - Updated dependencies
11
+
3
12
  ## 2.19.0
4
13
 
5
14
  ### Minor Changes
@@ -15,7 +15,7 @@ var IGNORE_NODE_DESCENDANTS = ['listItem', 'taskList', 'decisionList', 'mediaSin
15
15
  var IGNORE_NODE_DESCENDANTS_ADVANCED_LAYOUT = ['listItem', 'taskList', 'decisionList'];
16
16
  var shouldDescendIntoNode = exports.shouldDescendIntoNode = function shouldDescendIntoNode(node) {
17
17
  // Optimisation to avoid drawing node decorations for empty table cells
18
- if (['tableCell', 'tableHeader'].includes(node.type.name) && !(0, _experiments.editorExperiment)('table-nested-dnd', true)) {
18
+ if (['tableCell', 'tableHeader'].includes(node.type.name)) {
19
19
  var _node$firstChild;
20
20
  if (node.childCount === 1 && ((_node$firstChild = node.firstChild) === null || _node$firstChild === void 0 ? void 0 : _node$firstChild.type.name) === 'paragraph') {
21
21
  return false;
@@ -48,16 +48,12 @@ var handleMouseOver = exports.handleMouseOver = function handleMouseOver(view, e
48
48
  var parentElementType = parentElement === null || parentElement === void 0 ? void 0 : parentElement.getAttribute('data-drag-handler-node-type');
49
49
  if ((0, _experiments.editorExperiment)('advanced_layouts', true) && (0, _platformFeatureFlags.fg)('platform_editor_advanced_layouts_post_fix_patch_1')) {
50
50
  // We want to exclude handles from showing for direct descendant of table nodes (i.e. nodes in cells)
51
- if (parentElement && (parentElementType === 'table' || parentElementType === 'tableRow') && (0, _experiments.editorExperiment)('nested-dnd', true) && (0, _experiments.editorExperiment)('table-nested-dnd', false, {
52
- exposure: true
53
- })) {
51
+ if (parentElement && (parentElementType === 'table' || parentElementType === 'tableRow') && (0, _experiments.editorExperiment)('nested-dnd', true)) {
54
52
  rootElement = parentElement;
55
53
  }
56
54
  } else {
57
55
  // We want to exclude handles from showing for direct descendant of table nodes (i.e. nodes in cells)
58
- if (parentElement && parentElementType === 'table' && (0, _experiments.editorExperiment)('nested-dnd', true) && (0, _experiments.editorExperiment)('table-nested-dnd', false, {
59
- exposure: true
60
- })) {
56
+ if (parentElement && parentElementType === 'table' && (0, _experiments.editorExperiment)('nested-dnd', true)) {
61
57
  rootElement = parentElement;
62
58
  }
63
59
  }
@@ -73,9 +73,9 @@ var extendedHoverZoneNested = function extendedHoverZoneNested() {
73
73
  position: 'absolute',
74
74
  top: 0,
75
75
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values
76
- left: "-".concat((0, _experiments.editorExperiment)('table-nested-dnd', true) ? _consts.DRAG_HANDLE_MAX_WIDTH_PLUS_GAP : 0, "px"),
76
+ left: 0,
77
77
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values
78
- width: "".concat((0, _experiments.editorExperiment)('table-nested-dnd', true) ? _consts.DRAG_HANDLE_MAX_WIDTH_PLUS_GAP : 0, "px"),
78
+ width: 0,
79
79
  height: '100%',
80
80
  cursor: 'default',
81
81
  zIndex: 1
@@ -7,7 +7,7 @@ const IGNORE_NODE_DESCENDANTS = ['listItem', 'taskList', 'decisionList', 'mediaS
7
7
  const IGNORE_NODE_DESCENDANTS_ADVANCED_LAYOUT = ['listItem', 'taskList', 'decisionList'];
8
8
  export const shouldDescendIntoNode = node => {
9
9
  // Optimisation to avoid drawing node decorations for empty table cells
10
- if (['tableCell', 'tableHeader'].includes(node.type.name) && !editorExperiment('table-nested-dnd', true)) {
10
+ if (['tableCell', 'tableHeader'].includes(node.type.name)) {
11
11
  var _node$firstChild;
12
12
  if (node.childCount === 1 && ((_node$firstChild = node.firstChild) === null || _node$firstChild === void 0 ? void 0 : _node$firstChild.type.name) === 'paragraph') {
13
13
  return false;
@@ -43,16 +43,12 @@ export const handleMouseOver = (view, event, api) => {
43
43
  const parentElementType = parentElement === null || parentElement === void 0 ? void 0 : parentElement.getAttribute('data-drag-handler-node-type');
44
44
  if (editorExperiment('advanced_layouts', true) && fg('platform_editor_advanced_layouts_post_fix_patch_1')) {
45
45
  // We want to exclude handles from showing for direct descendant of table nodes (i.e. nodes in cells)
46
- if (parentElement && (parentElementType === 'table' || parentElementType === 'tableRow') && editorExperiment('nested-dnd', true) && editorExperiment('table-nested-dnd', false, {
47
- exposure: true
48
- })) {
46
+ if (parentElement && (parentElementType === 'table' || parentElementType === 'tableRow') && editorExperiment('nested-dnd', true)) {
49
47
  rootElement = parentElement;
50
48
  }
51
49
  } else {
52
50
  // We want to exclude handles from showing for direct descendant of table nodes (i.e. nodes in cells)
53
- if (parentElement && parentElementType === 'table' && editorExperiment('nested-dnd', true) && editorExperiment('table-nested-dnd', false, {
54
- exposure: true
55
- })) {
51
+ if (parentElement && parentElementType === 'table' && editorExperiment('nested-dnd', true)) {
56
52
  rootElement = parentElement;
57
53
  }
58
54
  }
@@ -85,9 +85,9 @@ const extendedHoverZoneNested = () => css({
85
85
  position: 'absolute',
86
86
  top: 0,
87
87
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values
88
- left: `-${editorExperiment('table-nested-dnd', true) ? DRAG_HANDLE_MAX_WIDTH_PLUS_GAP : 0}px`,
88
+ left: 0,
89
89
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values
90
- width: `${editorExperiment('table-nested-dnd', true) ? DRAG_HANDLE_MAX_WIDTH_PLUS_GAP : 0}px`,
90
+ width: 0,
91
91
  height: '100%',
92
92
  cursor: 'default',
93
93
  zIndex: 1
@@ -8,7 +8,7 @@ var IGNORE_NODE_DESCENDANTS = ['listItem', 'taskList', 'decisionList', 'mediaSin
8
8
  var IGNORE_NODE_DESCENDANTS_ADVANCED_LAYOUT = ['listItem', 'taskList', 'decisionList'];
9
9
  export var shouldDescendIntoNode = function shouldDescendIntoNode(node) {
10
10
  // Optimisation to avoid drawing node decorations for empty table cells
11
- if (['tableCell', 'tableHeader'].includes(node.type.name) && !editorExperiment('table-nested-dnd', true)) {
11
+ if (['tableCell', 'tableHeader'].includes(node.type.name)) {
12
12
  var _node$firstChild;
13
13
  if (node.childCount === 1 && ((_node$firstChild = node.firstChild) === null || _node$firstChild === void 0 ? void 0 : _node$firstChild.type.name) === 'paragraph') {
14
14
  return false;
@@ -42,16 +42,12 @@ export var handleMouseOver = function handleMouseOver(view, event, api) {
42
42
  var parentElementType = parentElement === null || parentElement === void 0 ? void 0 : parentElement.getAttribute('data-drag-handler-node-type');
43
43
  if (editorExperiment('advanced_layouts', true) && fg('platform_editor_advanced_layouts_post_fix_patch_1')) {
44
44
  // We want to exclude handles from showing for direct descendant of table nodes (i.e. nodes in cells)
45
- if (parentElement && (parentElementType === 'table' || parentElementType === 'tableRow') && editorExperiment('nested-dnd', true) && editorExperiment('table-nested-dnd', false, {
46
- exposure: true
47
- })) {
45
+ if (parentElement && (parentElementType === 'table' || parentElementType === 'tableRow') && editorExperiment('nested-dnd', true)) {
48
46
  rootElement = parentElement;
49
47
  }
50
48
  } else {
51
49
  // We want to exclude handles from showing for direct descendant of table nodes (i.e. nodes in cells)
52
- if (parentElement && parentElementType === 'table' && editorExperiment('nested-dnd', true) && editorExperiment('table-nested-dnd', false, {
53
- exposure: true
54
- })) {
50
+ if (parentElement && parentElementType === 'table' && editorExperiment('nested-dnd', true)) {
55
51
  rootElement = parentElement;
56
52
  }
57
53
  }
@@ -66,9 +66,9 @@ var extendedHoverZoneNested = function extendedHoverZoneNested() {
66
66
  position: 'absolute',
67
67
  top: 0,
68
68
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values
69
- left: "-".concat(editorExperiment('table-nested-dnd', true) ? DRAG_HANDLE_MAX_WIDTH_PLUS_GAP : 0, "px"),
69
+ left: 0,
70
70
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values
71
- width: "".concat(editorExperiment('table-nested-dnd', true) ? DRAG_HANDLE_MAX_WIDTH_PLUS_GAP : 0, "px"),
71
+ width: 0,
72
72
  height: '100%',
73
73
  cursor: 'default',
74
74
  zIndex: 1
@@ -43,19 +43,21 @@ export type BlockControlsSharedState = {
43
43
  export type HandleOptions = {
44
44
  isFocused: boolean;
45
45
  } | undefined;
46
+ export type MoveNode = (start: number, to: number, inputMethod?: MoveNodeMethod, formatMessage?: IntlShape['formatMessage']) => EditorCommand;
47
+ export type BlockControlsPluginDependencies = [
48
+ OptionalPlugin<EditorDisabledPlugin>,
49
+ OptionalPlugin<WidthPlugin>,
50
+ OptionalPlugin<FeatureFlagsPlugin>,
51
+ OptionalPlugin<AnalyticsPlugin>,
52
+ OptionalPlugin<AccessibilityUtilsPlugin>,
53
+ /**
54
+ * For Typeahead - Empty line prompt experiment
55
+ * Clean up ticket ED-24824
56
+ */
57
+ OptionalPlugin<QuickInsertPlugin>
58
+ ];
46
59
  export type BlockControlsPlugin = NextEditorPlugin<'blockControls', {
47
- dependencies: [
48
- OptionalPlugin<EditorDisabledPlugin>,
49
- OptionalPlugin<WidthPlugin>,
50
- OptionalPlugin<FeatureFlagsPlugin>,
51
- OptionalPlugin<AnalyticsPlugin>,
52
- OptionalPlugin<AccessibilityUtilsPlugin>,
53
- /**
54
- * For Typeahead - Empty line prompt experiment
55
- * Clean up ticket ED-24824
56
- */
57
- OptionalPlugin<QuickInsertPlugin>
58
- ];
60
+ dependencies: BlockControlsPluginDependencies;
59
61
  sharedState: BlockControlsSharedState;
60
62
  commands: {
61
63
  /**
@@ -67,7 +69,7 @@ export type BlockControlsPlugin = NextEditorPlugin<'blockControls', {
67
69
  moveToLayout: (start: number, to: number, options?: {
68
70
  moveToEnd?: boolean;
69
71
  }) => EditorCommand;
70
- moveNode: (start: number, to: number, inputMethod?: MoveNodeMethod, formatMessage?: IntlShape['formatMessage']) => EditorCommand;
72
+ moveNode: MoveNode;
71
73
  showDragHandleAt: (pos: number, anchorName: string, nodeType: string, handleOptions?: HandleOptions) => EditorCommand;
72
74
  setNodeDragged: (getPos: () => number | undefined, anchorName: string, nodeType: string) => EditorCommand;
73
75
  };
@@ -1,4 +1,5 @@
1
1
  import { type IntlShape } from 'react-intl-next';
2
2
  import type { ExtractInjectionAPI } from '@atlaskit/editor-common/types';
3
+ import { EditorView } from '@atlaskit/editor-prosemirror/view';
3
4
  import type { BlockControlsPlugin } from '../blockControlsPluginType';
4
- export declare const boundKeydownHandler: (api?: ExtractInjectionAPI<BlockControlsPlugin>, formatMessage?: IntlShape['formatMessage']) => (view: import("prosemirror-view").EditorView, event: KeyboardEvent) => boolean;
5
+ export declare const boundKeydownHandler: (api?: ExtractInjectionAPI<BlockControlsPlugin>, formatMessage?: IntlShape['formatMessage']) => (view: EditorView, event: KeyboardEvent) => boolean;
@@ -43,19 +43,21 @@ export type BlockControlsSharedState = {
43
43
  export type HandleOptions = {
44
44
  isFocused: boolean;
45
45
  } | undefined;
46
+ export type MoveNode = (start: number, to: number, inputMethod?: MoveNodeMethod, formatMessage?: IntlShape['formatMessage']) => EditorCommand;
47
+ export type BlockControlsPluginDependencies = [
48
+ OptionalPlugin<EditorDisabledPlugin>,
49
+ OptionalPlugin<WidthPlugin>,
50
+ OptionalPlugin<FeatureFlagsPlugin>,
51
+ OptionalPlugin<AnalyticsPlugin>,
52
+ OptionalPlugin<AccessibilityUtilsPlugin>,
53
+ /**
54
+ * For Typeahead - Empty line prompt experiment
55
+ * Clean up ticket ED-24824
56
+ */
57
+ OptionalPlugin<QuickInsertPlugin>
58
+ ];
46
59
  export type BlockControlsPlugin = NextEditorPlugin<'blockControls', {
47
- dependencies: [
48
- OptionalPlugin<EditorDisabledPlugin>,
49
- OptionalPlugin<WidthPlugin>,
50
- OptionalPlugin<FeatureFlagsPlugin>,
51
- OptionalPlugin<AnalyticsPlugin>,
52
- OptionalPlugin<AccessibilityUtilsPlugin>,
53
- /**
54
- * For Typeahead - Empty line prompt experiment
55
- * Clean up ticket ED-24824
56
- */
57
- OptionalPlugin<QuickInsertPlugin>
58
- ];
60
+ dependencies: BlockControlsPluginDependencies;
59
61
  sharedState: BlockControlsSharedState;
60
62
  commands: {
61
63
  /**
@@ -67,7 +69,7 @@ export type BlockControlsPlugin = NextEditorPlugin<'blockControls', {
67
69
  moveToLayout: (start: number, to: number, options?: {
68
70
  moveToEnd?: boolean;
69
71
  }) => EditorCommand;
70
- moveNode: (start: number, to: number, inputMethod?: MoveNodeMethod, formatMessage?: IntlShape['formatMessage']) => EditorCommand;
72
+ moveNode: MoveNode;
71
73
  showDragHandleAt: (pos: number, anchorName: string, nodeType: string, handleOptions?: HandleOptions) => EditorCommand;
72
74
  setNodeDragged: (getPos: () => number | undefined, anchorName: string, nodeType: string) => EditorCommand;
73
75
  };
@@ -1,4 +1,5 @@
1
1
  import { type IntlShape } from 'react-intl-next';
2
2
  import type { ExtractInjectionAPI } from '@atlaskit/editor-common/types';
3
+ import { EditorView } from '@atlaskit/editor-prosemirror/view';
3
4
  import type { BlockControlsPlugin } from '../blockControlsPluginType';
4
- export declare const boundKeydownHandler: (api?: ExtractInjectionAPI<BlockControlsPlugin>, formatMessage?: IntlShape['formatMessage']) => (view: import("prosemirror-view").EditorView, event: KeyboardEvent) => boolean;
5
+ export declare const boundKeydownHandler: (api?: ExtractInjectionAPI<BlockControlsPlugin>, formatMessage?: IntlShape['formatMessage']) => (view: EditorView, event: KeyboardEvent) => boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-plugin-block-controls",
3
- "version": "2.19.0",
3
+ "version": "2.19.1",
4
4
  "description": "Block controls plugin for @atlaskit/editor-core",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -48,7 +48,7 @@
48
48
  "@atlaskit/pragmatic-drag-and-drop-react-drop-indicator": "^1.1.0",
49
49
  "@atlaskit/primitives": "^13.3.0",
50
50
  "@atlaskit/theme": "^14.0.0",
51
- "@atlaskit/tmp-editor-statsig": "^2.33.0",
51
+ "@atlaskit/tmp-editor-statsig": "^2.34.0",
52
52
  "@atlaskit/tokens": "^3.0.0",
53
53
  "@atlaskit/tooltip": "^19.0.0",
54
54
  "@babel/runtime": "^7.0.0",