@atlaskit/editor-plugin-table 12.3.0 → 12.3.2

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 (143) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/cjs/nodeviews/TableContainer.js +9 -7
  3. package/dist/cjs/nodeviews/table.js +5 -0
  4. package/dist/cjs/nodeviews/toDOM.js +5 -2
  5. package/dist/es2019/nodeviews/TableContainer.js +9 -7
  6. package/dist/es2019/nodeviews/table.js +5 -0
  7. package/dist/es2019/nodeviews/toDOM.js +5 -1
  8. package/dist/esm/nodeviews/TableContainer.js +9 -7
  9. package/dist/esm/nodeviews/table.js +5 -0
  10. package/dist/esm/nodeviews/toDOM.js +5 -2
  11. package/dist/types/nodeviews/ExternalDropTargets.d.ts +1 -1
  12. package/dist/types/nodeviews/TableComponent.d.ts +21 -21
  13. package/dist/types/nodeviews/TableComponentWithSharedState.d.ts +9 -9
  14. package/dist/types/nodeviews/TableContainer.d.ts +20 -20
  15. package/dist/types/nodeviews/TableResizer.d.ts +16 -16
  16. package/dist/types/nodeviews/TableRow.d.ts +1 -1
  17. package/dist/types/nodeviews/table-node-views.d.ts +4 -4
  18. package/dist/types/nodeviews/table.d.ts +2 -2
  19. package/dist/types/nodeviews/toDOM.d.ts +4 -4
  20. package/dist/types/nodeviews/types.d.ts +12 -12
  21. package/dist/types/pm-plugins/analytics/actions.d.ts +2 -2
  22. package/dist/types/pm-plugins/analytics/types.d.ts +2 -2
  23. package/dist/types/pm-plugins/commands/column-resize.d.ts +6 -6
  24. package/dist/types/pm-plugins/commands/insert.d.ts +7 -7
  25. package/dist/types/pm-plugins/drag-and-drop/actions.d.ts +4 -4
  26. package/dist/types/pm-plugins/drag-and-drop/types.d.ts +3 -3
  27. package/dist/types/pm-plugins/drag-and-drop/utils/autoscrollers.d.ts +1 -1
  28. package/dist/types/pm-plugins/safari-delete-composition-text-issue-workaround.d.ts +1 -1
  29. package/dist/types/pm-plugins/sticky-headers/types.d.ts +2 -2
  30. package/dist/types/pm-plugins/table-resizing/commands.d.ts +3 -3
  31. package/dist/types/pm-plugins/table-resizing/utils/column-state.d.ts +1 -1
  32. package/dist/types/pm-plugins/table-resizing/utils/misc.d.ts +3 -3
  33. package/dist/types/pm-plugins/table-resizing/utils/resize-state.d.ts +6 -6
  34. package/dist/types/pm-plugins/table-resizing/utils/scale-table.d.ts +6 -6
  35. package/dist/types/pm-plugins/table-resizing/utils/types.d.ts +8 -8
  36. package/dist/types/pm-plugins/utils/analytics.d.ts +2 -2
  37. package/dist/types/pm-plugins/utils/collapse.d.ts +3 -3
  38. package/dist/types/pm-plugins/utils/column-controls.d.ts +1 -1
  39. package/dist/types/pm-plugins/utils/create.d.ts +8 -8
  40. package/dist/types/pm-plugins/utils/dom.d.ts +2 -2
  41. package/dist/types/pm-plugins/utils/drag-menu.d.ts +1 -1
  42. package/dist/types/pm-plugins/utils/row-controls.d.ts +2 -2
  43. package/dist/types/pm-plugins/utils/snapping.d.ts +1 -1
  44. package/dist/types/pm-plugins/view-mode-sort/index.d.ts +1 -1
  45. package/dist/types/pm-plugins/view-mode-sort/types.d.ts +2 -2
  46. package/dist/types/tablePluginType.d.ts +10 -10
  47. package/dist/types/types/index.d.ts +99 -99
  48. package/dist/types/ui/ColumnResizeWidget/index.d.ts +1 -1
  49. package/dist/types/ui/ContentComponent.d.ts +5 -5
  50. package/dist/types/ui/DragHandle/HandleIconComponent.d.ts +1 -1
  51. package/dist/types/ui/DragHandle/index.d.ts +11 -11
  52. package/dist/types/ui/DragPreview/index.d.ts +1 -1
  53. package/dist/types/ui/FloatingContextualButton/FixedButton.d.ts +2 -2
  54. package/dist/types/ui/FloatingContextualButton/index.d.ts +7 -7
  55. package/dist/types/ui/FloatingContextualMenu/ContextualMenu.d.ts +10 -10
  56. package/dist/types/ui/FloatingContextualMenu/index.d.ts +8 -8
  57. package/dist/types/ui/FloatingDeleteButton/DeleteButton.d.ts +2 -2
  58. package/dist/types/ui/FloatingDeleteButton/getPopUpOptions.d.ts +1 -1
  59. package/dist/types/ui/FloatingDeleteButton/index.d.ts +9 -9
  60. package/dist/types/ui/FloatingDragMenu/DragMenu.d.ts +15 -15
  61. package/dist/types/ui/FloatingDragMenu/DropdownMenu.d.ts +14 -14
  62. package/dist/types/ui/FloatingDragMenu/index.d.ts +14 -14
  63. package/dist/types/ui/FloatingInsertButton/InsertButton.d.ts +3 -3
  64. package/dist/types/ui/FloatingInsertButton/index.d.ts +11 -11
  65. package/dist/types/ui/FloatingToolbarLabel/FloatingToolbarLabel.d.ts +4 -4
  66. package/dist/types/ui/TableFloatingColumnControls/ColumnControls/index.d.ts +10 -10
  67. package/dist/types/ui/TableFloatingColumnControls/ColumnDropTargets/ColumnDropTarget.d.ts +2 -2
  68. package/dist/types/ui/TableFloatingColumnControls/ColumnDropTargets/index.d.ts +4 -4
  69. package/dist/types/ui/TableFloatingColumnControls/index.d.ts +10 -10
  70. package/dist/types/ui/TableFloatingControls/CornerControls/types.d.ts +3 -3
  71. package/dist/types/ui/TableFloatingControls/FloatingControlsWithSelection.d.ts +7 -7
  72. package/dist/types/ui/TableFloatingControls/NumberColumn/index.d.ts +7 -7
  73. package/dist/types/ui/TableFloatingControls/RowControls/ClassicControls.d.ts +5 -5
  74. package/dist/types/ui/TableFloatingControls/RowControls/DragControls.d.ts +8 -8
  75. package/dist/types/ui/TableFloatingControls/index.d.ts +14 -14
  76. package/dist/types/ui/global-styles.d.ts +1 -1
  77. package/dist/types-ts4.5/nodeviews/ExternalDropTargets.d.ts +1 -1
  78. package/dist/types-ts4.5/nodeviews/TableComponent.d.ts +21 -21
  79. package/dist/types-ts4.5/nodeviews/TableComponentWithSharedState.d.ts +9 -9
  80. package/dist/types-ts4.5/nodeviews/TableContainer.d.ts +20 -20
  81. package/dist/types-ts4.5/nodeviews/TableResizer.d.ts +16 -16
  82. package/dist/types-ts4.5/nodeviews/TableRow.d.ts +1 -1
  83. package/dist/types-ts4.5/nodeviews/table-node-views.d.ts +4 -4
  84. package/dist/types-ts4.5/nodeviews/table.d.ts +2 -2
  85. package/dist/types-ts4.5/nodeviews/toDOM.d.ts +4 -4
  86. package/dist/types-ts4.5/nodeviews/types.d.ts +12 -12
  87. package/dist/types-ts4.5/pm-plugins/analytics/actions.d.ts +2 -2
  88. package/dist/types-ts4.5/pm-plugins/analytics/types.d.ts +2 -2
  89. package/dist/types-ts4.5/pm-plugins/commands/column-resize.d.ts +6 -6
  90. package/dist/types-ts4.5/pm-plugins/commands/insert.d.ts +7 -7
  91. package/dist/types-ts4.5/pm-plugins/drag-and-drop/actions.d.ts +4 -4
  92. package/dist/types-ts4.5/pm-plugins/drag-and-drop/types.d.ts +3 -3
  93. package/dist/types-ts4.5/pm-plugins/drag-and-drop/utils/autoscrollers.d.ts +1 -1
  94. package/dist/types-ts4.5/pm-plugins/safari-delete-composition-text-issue-workaround.d.ts +1 -1
  95. package/dist/types-ts4.5/pm-plugins/sticky-headers/types.d.ts +2 -2
  96. package/dist/types-ts4.5/pm-plugins/table-resizing/commands.d.ts +3 -3
  97. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/column-state.d.ts +1 -1
  98. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/misc.d.ts +3 -3
  99. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/resize-state.d.ts +6 -6
  100. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/scale-table.d.ts +6 -6
  101. package/dist/types-ts4.5/pm-plugins/table-resizing/utils/types.d.ts +8 -8
  102. package/dist/types-ts4.5/pm-plugins/utils/analytics.d.ts +2 -2
  103. package/dist/types-ts4.5/pm-plugins/utils/collapse.d.ts +3 -3
  104. package/dist/types-ts4.5/pm-plugins/utils/column-controls.d.ts +1 -1
  105. package/dist/types-ts4.5/pm-plugins/utils/create.d.ts +8 -8
  106. package/dist/types-ts4.5/pm-plugins/utils/dom.d.ts +2 -2
  107. package/dist/types-ts4.5/pm-plugins/utils/drag-menu.d.ts +1 -1
  108. package/dist/types-ts4.5/pm-plugins/utils/row-controls.d.ts +2 -2
  109. package/dist/types-ts4.5/pm-plugins/utils/snapping.d.ts +1 -1
  110. package/dist/types-ts4.5/pm-plugins/view-mode-sort/index.d.ts +1 -1
  111. package/dist/types-ts4.5/pm-plugins/view-mode-sort/types.d.ts +2 -2
  112. package/dist/types-ts4.5/tablePluginType.d.ts +10 -10
  113. package/dist/types-ts4.5/types/index.d.ts +99 -99
  114. package/dist/types-ts4.5/ui/ColumnResizeWidget/index.d.ts +1 -1
  115. package/dist/types-ts4.5/ui/ContentComponent.d.ts +5 -5
  116. package/dist/types-ts4.5/ui/DragHandle/HandleIconComponent.d.ts +1 -1
  117. package/dist/types-ts4.5/ui/DragHandle/index.d.ts +11 -11
  118. package/dist/types-ts4.5/ui/DragPreview/index.d.ts +1 -1
  119. package/dist/types-ts4.5/ui/FloatingContextualButton/FixedButton.d.ts +2 -2
  120. package/dist/types-ts4.5/ui/FloatingContextualButton/index.d.ts +7 -7
  121. package/dist/types-ts4.5/ui/FloatingContextualMenu/ContextualMenu.d.ts +10 -10
  122. package/dist/types-ts4.5/ui/FloatingContextualMenu/index.d.ts +8 -8
  123. package/dist/types-ts4.5/ui/FloatingDeleteButton/DeleteButton.d.ts +2 -2
  124. package/dist/types-ts4.5/ui/FloatingDeleteButton/getPopUpOptions.d.ts +1 -1
  125. package/dist/types-ts4.5/ui/FloatingDeleteButton/index.d.ts +9 -9
  126. package/dist/types-ts4.5/ui/FloatingDragMenu/DragMenu.d.ts +15 -15
  127. package/dist/types-ts4.5/ui/FloatingDragMenu/DropdownMenu.d.ts +14 -14
  128. package/dist/types-ts4.5/ui/FloatingDragMenu/index.d.ts +14 -14
  129. package/dist/types-ts4.5/ui/FloatingInsertButton/InsertButton.d.ts +3 -3
  130. package/dist/types-ts4.5/ui/FloatingInsertButton/index.d.ts +11 -11
  131. package/dist/types-ts4.5/ui/FloatingToolbarLabel/FloatingToolbarLabel.d.ts +4 -4
  132. package/dist/types-ts4.5/ui/TableFloatingColumnControls/ColumnControls/index.d.ts +10 -10
  133. package/dist/types-ts4.5/ui/TableFloatingColumnControls/ColumnDropTargets/ColumnDropTarget.d.ts +2 -2
  134. package/dist/types-ts4.5/ui/TableFloatingColumnControls/ColumnDropTargets/index.d.ts +4 -4
  135. package/dist/types-ts4.5/ui/TableFloatingColumnControls/index.d.ts +10 -10
  136. package/dist/types-ts4.5/ui/TableFloatingControls/CornerControls/types.d.ts +3 -3
  137. package/dist/types-ts4.5/ui/TableFloatingControls/FloatingControlsWithSelection.d.ts +7 -7
  138. package/dist/types-ts4.5/ui/TableFloatingControls/NumberColumn/index.d.ts +7 -7
  139. package/dist/types-ts4.5/ui/TableFloatingControls/RowControls/ClassicControls.d.ts +5 -5
  140. package/dist/types-ts4.5/ui/TableFloatingControls/RowControls/DragControls.d.ts +8 -8
  141. package/dist/types-ts4.5/ui/TableFloatingControls/index.d.ts +14 -14
  142. package/dist/types-ts4.5/ui/global-styles.d.ts +1 -1
  143. package/package.json +5 -5
@@ -17,9 +17,9 @@ export type RowInsertPosition = 'TOP' | 'BOTTOM';
17
17
  **/
18
18
  export type PermittedLayoutsDescriptor = TableLayout[] | 'all';
19
19
  export type Cell = {
20
+ node: PmNode;
20
21
  pos: number;
21
22
  start: number;
22
- node: PmNode;
23
23
  };
24
24
  export type CellTransform = (cell: Cell) => (tr: Transaction) => Transaction;
25
25
  export interface InsertRowOptions {
@@ -35,44 +35,44 @@ export type PluginInjectionAPIWithA11y = ExtractInjectionAPI<TablePlugin> & {
35
35
  };
36
36
  };
37
37
  export type TableSharedStateInternal = Pick<TablePluginState, 'isFullWidthModeEnabled' | 'wasFullWidthModeEnabled' | 'isHeaderRowEnabled' | 'isHeaderColumnEnabled' | 'ordering' | 'isInDanger' | 'hoveredRows' | 'hoveredColumns' | 'hoveredCell' | 'isTableHovered' | 'tableNode' | 'widthToWidest' | 'tableRef' | 'tablePos' | 'targetCellPosition' | 'isContextualMenuOpen' | 'pluginConfig' | 'insertColumnButtonIndex' | 'insertRowButtonIndex' | 'isDragAndDropEnabled' | 'tableWrapperTarget' | 'isCellMenuOpenByKeyboard'> & {
38
- isResizing: boolean;
39
- isTableResizing?: boolean;
40
- isWholeTableInDanger?: boolean;
41
- resizingTableRef?: HTMLTableElement;
42
- resizingTableLocalId?: string;
43
- stickyHeader?: RowStickyState;
44
38
  dragMenuDirection?: TableDirection;
45
39
  dragMenuIndex?: number;
46
40
  isDragMenuOpen?: boolean;
41
+ isResizing: boolean;
47
42
  isSizeSelectorOpen?: boolean;
43
+ isTableResizing?: boolean;
44
+ isWholeTableInDanger?: boolean;
45
+ resizingTableLocalId?: string;
46
+ resizingTableRef?: HTMLTableElement;
48
47
  sizeSelectorTargetRef?: HTMLElement;
48
+ stickyHeader?: RowStickyState;
49
49
  };
50
50
  export type TableSharedState = Pick<TablePluginState, 'isFullWidthModeEnabled' | 'wasFullWidthModeEnabled'>;
51
51
  export type AlignmentOptions = 'center' | 'align-start';
52
52
  export type InsertRowMethods = INPUT_METHOD.CONTEXT_MENU | INPUT_METHOD.BUTTON | INPUT_METHOD.SHORTCUT | INPUT_METHOD.KEYBOARD | INPUT_METHOD.FLOATING_TB | INPUT_METHOD.TABLE_CONTEXT_MENU;
53
53
  export interface PluginConfig {
54
54
  advanced?: boolean;
55
+ allowAddColumnWithCustomStep?: boolean;
55
56
  allowBackgroundColor?: boolean;
57
+ allowCellOptionsInFloatingToolbar?: boolean;
58
+ allowCollapse?: boolean;
56
59
  allowColumnResizing?: boolean;
57
- allowTableResizing?: boolean;
58
- allowTableAlignment?: boolean;
60
+ allowColumnSorting?: boolean;
61
+ allowControls?: boolean;
62
+ allowDistributeColumns?: boolean;
59
63
  allowHeaderColumn?: boolean;
60
64
  allowHeaderRow?: boolean;
61
65
  allowMergeCells?: boolean;
62
- allowNumberColumn?: boolean;
63
- allowColumnSorting?: boolean;
64
- allowAddColumnWithCustomStep?: boolean;
65
- allowCollapse?: boolean;
66
66
  allowNestedTables?: boolean;
67
+ allowNumberColumn?: boolean;
68
+ allowTableAlignment?: boolean;
69
+ allowTableResizing?: boolean;
67
70
  isHeaderRowRequired?: boolean;
68
71
  /**
69
72
  * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-6877 Internal documentation for deprecation (no external access)}
70
73
  **/
71
74
  permittedLayouts?: PermittedLayoutsDescriptor;
72
- allowControls?: boolean;
73
75
  stickyHeaders?: boolean;
74
- allowCellOptionsInFloatingToolbar?: boolean;
75
- allowDistributeColumns?: boolean;
76
76
  }
77
77
  export type { ColumnResizingPluginState } from '@atlaskit/editor-common/types';
78
78
  export type CellColumnPositioning = Pick<Rect, 'right' | 'left'>;
@@ -84,212 +84,212 @@ export interface WidthToWidest {
84
84
  [tableLocalId: string]: boolean;
85
85
  }
86
86
  export interface TablePluginState {
87
+ canCollapseTable?: boolean;
87
88
  editorHasFocus?: boolean;
89
+ getIntl: () => IntlShape;
90
+ hoveredCell: CellHoverMeta;
88
91
  hoveredColumns: number[];
89
92
  hoveredRows: number[];
90
- hoveredCell: CellHoverMeta;
91
- pluginConfig: PluginConfig;
93
+ insertColumnButtonIndex?: number;
94
+ insertRowButtonIndex?: number;
95
+ isCellMenuOpenByKeyboard?: boolean;
96
+ isContextualMenuOpen?: boolean;
97
+ isDragAndDropEnabled?: boolean;
98
+ isFullWidthModeEnabled?: boolean;
92
99
  isHeaderColumnEnabled: boolean;
93
100
  isHeaderRowEnabled: boolean;
94
- isNumberColumnEnabled?: boolean;
95
- targetCellPosition?: number;
96
- tableNode?: PmNode;
97
- tableRef?: HTMLTableElement;
98
- tablePos?: number;
99
- tableWrapperTarget?: HTMLElement;
100
- isContextualMenuOpen?: boolean;
101
101
  isInDanger?: boolean;
102
+ isKeyboardResize?: boolean;
103
+ isNumberColumnEnabled?: boolean;
104
+ isResizeHandleWidgetAdded?: boolean;
105
+ isTableCollapsed?: boolean;
106
+ isTableHovered?: boolean;
107
+ isTableScalingEnabled?: boolean;
102
108
  isWholeTableInDanger?: boolean;
103
- insertColumnButtonIndex?: number;
104
- insertRowButtonIndex?: number;
105
- isFullWidthModeEnabled?: boolean;
106
109
  ordering?: TableColumnOrdering;
107
- isResizeHandleWidgetAdded?: boolean;
108
- resizeHandleRowIndex?: number;
110
+ pluginConfig: PluginConfig;
109
111
  resizeHandleColumnIndex?: number;
110
112
  resizeHandleIncludeTooltip?: boolean;
111
- isKeyboardResize?: boolean;
112
- isTableCollapsed?: boolean;
113
- canCollapseTable?: boolean;
114
- widthToWidest?: WidthToWidest;
115
- getIntl: () => IntlShape;
113
+ resizeHandleRowIndex?: number;
114
+ tableNode?: PmNode;
115
+ tablePos?: number;
116
+ tableRef?: HTMLTableElement;
117
+ tableWrapperTarget?: HTMLElement;
118
+ targetCellPosition?: number;
116
119
  wasFullWidthModeEnabled?: boolean;
117
- isDragAndDropEnabled?: boolean;
118
- isTableHovered?: boolean;
119
- isTableScalingEnabled?: boolean;
120
- isCellMenuOpenByKeyboard?: boolean;
120
+ widthToWidest?: WidthToWidest;
121
121
  }
122
122
  export type TablePluginAction = {
123
- type: 'SET_EDITOR_FOCUS';
124
123
  data: {
125
124
  editorHasFocus: boolean;
126
125
  };
126
+ type: 'SET_EDITOR_FOCUS';
127
127
  } | {
128
128
  type: 'TOGGLE_HEADER_ROW';
129
129
  } | {
130
130
  type: 'TOGGLE_HEADER_COLUMN';
131
131
  } | {
132
- type: 'SORT_TABLE';
133
132
  data: {
134
133
  ordering: TableColumnOrdering;
135
134
  };
135
+ type: 'SORT_TABLE';
136
136
  } | {
137
- type: 'SET_TABLE_REF';
138
137
  data: {
139
- tableRef?: HTMLTableElement;
138
+ isHeaderColumnEnabled: boolean;
139
+ isHeaderRowEnabled: boolean;
140
140
  tableNode?: PmNode;
141
+ tableRef?: HTMLTableElement;
141
142
  tableWrapperTarget?: HTMLElement;
142
- isHeaderRowEnabled: boolean;
143
- isHeaderColumnEnabled: boolean;
144
143
  };
144
+ type: 'SET_TABLE_REF';
145
145
  } | {
146
- type: 'HOVER_ROWS';
147
146
  data: {
148
147
  decorationSet: DecorationSet;
149
148
  hoveredRows: number[];
150
149
  isInDanger?: boolean;
151
150
  };
151
+ type: 'HOVER_ROWS';
152
152
  } | {
153
- type: 'HOVER_MERGED_CELLS';
154
153
  data: {
155
154
  decorationSet: DecorationSet;
156
155
  };
156
+ type: 'HOVER_MERGED_CELLS';
157
157
  } | {
158
- type: 'HOVER_COLUMNS';
159
158
  data: {
160
159
  decorationSet: DecorationSet;
161
160
  hoveredColumns: number[];
162
161
  isInDanger?: boolean;
163
162
  };
163
+ type: 'HOVER_COLUMNS';
164
164
  } | {
165
- type: 'HOVER_TABLE';
166
165
  data: {
167
166
  decorationSet: DecorationSet;
168
- hoveredRows: number[];
169
167
  hoveredColumns: number[];
168
+ hoveredRows: number[];
170
169
  isInDanger?: boolean;
171
170
  };
171
+ type: 'HOVER_TABLE';
172
172
  } | {
173
- type: 'START_KEYBOARD_COLUMN_RESIZE';
174
173
  data: {
175
174
  decorationSet: DecorationSet;
176
- resizeHandleRowIndex: number;
175
+ isKeyboardResize?: boolean;
177
176
  resizeHandleColumnIndex: number;
178
177
  resizeHandleIncludeTooltip: boolean;
179
- isKeyboardResize?: boolean;
178
+ resizeHandleRowIndex: number;
180
179
  };
180
+ type: 'START_KEYBOARD_COLUMN_RESIZE';
181
181
  } | {
182
- type: 'ADD_RESIZE_HANDLE_DECORATIONS';
183
182
  data: {
184
183
  decorationSet: DecorationSet;
185
- resizeHandleRowIndex: number;
184
+ isKeyboardResize?: boolean;
186
185
  resizeHandleColumnIndex: number;
187
186
  resizeHandleIncludeTooltip: boolean;
188
- isKeyboardResize?: boolean;
187
+ resizeHandleRowIndex: number;
189
188
  };
189
+ type: 'ADD_RESIZE_HANDLE_DECORATIONS';
190
190
  } | {
191
- type: 'UPDATE_RESIZE_HANDLE_DECORATIONS';
192
191
  data: {
193
192
  decorationSet: DecorationSet;
194
- resizeHandleRowIndex: number | undefined;
195
193
  resizeHandleColumnIndex: number | undefined;
196
194
  resizeHandleIncludeTooltip: boolean | undefined;
195
+ resizeHandleRowIndex: number | undefined;
197
196
  };
197
+ type: 'UPDATE_RESIZE_HANDLE_DECORATIONS';
198
198
  } | {
199
- type: 'UPDATE_TABLE_WIDTH_TO_WIDEST';
200
199
  data: {
201
200
  widthToWidest: WidthToWidest | undefined;
202
201
  };
202
+ type: 'UPDATE_TABLE_WIDTH_TO_WIDEST';
203
203
  } | {
204
- type: 'REMOVE_RESIZE_HANDLE_DECORATIONS';
205
204
  data: {
206
205
  decorationSet: DecorationSet;
207
206
  };
207
+ type: 'REMOVE_RESIZE_HANDLE_DECORATIONS';
208
208
  } | {
209
- type: 'STOP_KEYBOARD_COLUMN_RESIZE';
210
209
  data: {
211
210
  decorationSet: DecorationSet;
212
211
  };
212
+ type: 'STOP_KEYBOARD_COLUMN_RESIZE';
213
213
  } | {
214
- type: 'CLEAR_HOVER_SELECTION';
215
214
  data: {
216
215
  decorationSet: DecorationSet;
217
216
  };
217
+ type: 'CLEAR_HOVER_SELECTION';
218
218
  } | {
219
- type: 'SHOW_RESIZE_HANDLE_LINE';
220
219
  data: {
221
220
  decorationSet: DecorationSet;
222
221
  };
222
+ type: 'SHOW_RESIZE_HANDLE_LINE';
223
223
  } | {
224
- type: 'HIDE_RESIZE_HANDLE_LINE';
225
224
  data: {
226
225
  decorationSet: DecorationSet;
227
226
  };
227
+ type: 'HIDE_RESIZE_HANDLE_LINE';
228
228
  } | {
229
- type: 'HOVER_CELL';
230
229
  data: {
231
230
  hoveredCell: CellHoverMeta;
232
231
  };
232
+ type: 'HOVER_CELL';
233
233
  } | {
234
- type: 'TABLE_HOVERED';
235
234
  data: {
236
235
  isTableHovered: boolean;
237
236
  };
237
+ type: 'TABLE_HOVERED';
238
238
  } | {
239
- type: 'SET_TARGET_CELL_POSITION';
240
239
  data: {
241
240
  targetCellPosition?: number;
242
241
  };
242
+ type: 'SET_TARGET_CELL_POSITION';
243
243
  } | {
244
- type: 'SELECT_COLUMN';
245
244
  data: {
246
- targetCellPosition: number;
247
245
  decorationSet: DecorationSet;
246
+ targetCellPosition: number;
248
247
  };
248
+ type: 'SELECT_COLUMN';
249
249
  } | {
250
- type: 'SHOW_INSERT_ROW_BUTTON';
251
250
  data: {
252
251
  insertRowButtonIndex: number;
253
252
  };
253
+ type: 'SHOW_INSERT_ROW_BUTTON';
254
254
  } | {
255
- type: 'SHOW_INSERT_COLUMN_BUTTON';
256
255
  data: {
257
256
  insertColumnButtonIndex: number;
258
257
  };
258
+ type: 'SHOW_INSERT_COLUMN_BUTTON';
259
259
  } | {
260
260
  type: 'HIDE_INSERT_COLUMN_OR_ROW_BUTTON';
261
261
  } | {
262
262
  type: 'TOGGLE_CONTEXTUAL_MENU';
263
263
  } | {
264
- type: 'SET_CELL_MENU_OPEN';
265
264
  data: {
266
265
  isCellMenuOpenByKeyboard: boolean;
267
266
  };
267
+ type: 'SET_CELL_MENU_OPEN';
268
268
  };
269
269
  export type ColumnResizingPluginAction = {
270
- type: 'SET_RESIZE_HANDLE_POSITION';
271
270
  data: {
272
271
  resizeHandlePos: number | null;
273
272
  };
273
+ type: 'SET_RESIZE_HANDLE_POSITION';
274
274
  } | {
275
275
  type: 'STOP_RESIZING';
276
276
  } | {
277
- type: 'SET_DRAGGING';
278
277
  data: {
279
278
  dragging: {
280
- startX: number;
281
279
  startWidth: number;
280
+ startX: number;
282
281
  } | null;
283
282
  };
283
+ type: 'SET_DRAGGING';
284
284
  } | {
285
- type: 'SET_LAST_CLICK';
286
285
  data: {
287
286
  lastClick: {
287
+ time: number;
288
288
  x: number;
289
289
  y: number;
290
- time: number;
291
290
  } | null;
292
291
  };
292
+ type: 'SET_LAST_CLICK';
293
293
  };
294
294
  export declare enum TableDecorations {
295
295
  /** Classic controls */
@@ -433,18 +433,18 @@ export declare const TableCssClassName: {
433
433
  TABLE_RESIZER_CONTAINER: "pm-table-resizer-container";
434
434
  };
435
435
  export interface ToolbarMenuConfig {
436
- allowHeaderRow?: boolean;
436
+ allowCollapse?: boolean;
437
437
  allowHeaderColumn?: boolean;
438
+ allowHeaderRow?: boolean;
438
439
  allowNumberColumn?: boolean;
439
- allowCollapse?: boolean;
440
440
  }
441
441
  export interface ToolbarMenuState {
442
- isHeaderRowEnabled?: boolean;
442
+ canCollapseTable?: boolean;
443
+ isDragAndDropEnabled?: boolean;
443
444
  isHeaderColumnEnabled?: boolean;
445
+ isHeaderRowEnabled?: boolean;
444
446
  isNumberColumnEnabled?: boolean;
445
447
  isTableCollapsed?: boolean;
446
- canCollapseTable?: boolean;
447
- isDragAndDropEnabled?: boolean;
448
448
  }
449
449
  export interface ToolbarMenuContext {
450
450
  formatMessage: IntlShape['formatMessage'];
@@ -455,8 +455,8 @@ export declare enum ShadowEvent {
455
455
  }
456
456
  export type ReportInvalidNodeAttrs = (invalidNodeAttrs: InvalidNodeAttr) => void;
457
457
  export type InvalidNodeAttr = {
458
- nodeType: string;
459
458
  attribute: string;
459
+ nodeType: string;
460
460
  reason: string;
461
461
  spanValue: number;
462
462
  tableLocalId: string;
@@ -468,22 +468,25 @@ export type TableDirection = 'row' | 'column';
468
468
  export type DraggableType = 'table-row' | 'table-column';
469
469
  export type DraggableBehaviour = 'move' | 'clone';
470
470
  export interface DraggableSourceData extends Record<string, unknown> {
471
- type: DraggableType;
472
- localId: string;
473
471
  indexes: number[];
472
+ localId: string;
473
+ type: DraggableType;
474
474
  }
475
475
  export interface DraggableTargetData extends Record<string | symbol, unknown> {
476
- type: DraggableType;
477
476
  localId: string;
478
477
  targetIndex: number;
478
+ type: DraggableType;
479
479
  }
480
480
  export interface DraggableData {
481
- sourceType: DraggableType;
482
- sourceLocalId: string;
481
+ behaviour: DraggableBehaviour;
482
+ /**
483
+ * This represents a hollistic movement direction; a value of 1 means the source->target index would shift in a positive direction.
484
+ * A value of 0 indicates that the target index is inside the the source indexes.
485
+ */
486
+ direction: 1 | -1 | 0;
483
487
  sourceIndexes: number[];
484
- targetType: DraggableType;
485
- targetLocalId: string;
486
- targetIndex: number;
488
+ sourceLocalId: string;
489
+ sourceType: DraggableType;
487
490
  targetAdjustedIndex: number;
488
491
  targetClosestEdge: Edge;
489
492
  /**
@@ -491,16 +494,13 @@ export interface DraggableData {
491
494
  * mean that the item is being inserted before the index, and 'end would be after.
492
495
  */
493
496
  targetDirection: 'start' | 'end';
494
- /**
495
- * This represents a hollistic movement direction; a value of 1 means the source->target index would shift in a positive direction.
496
- * A value of 0 indicates that the target index is inside the the source indexes.
497
- */
498
- direction: 1 | -1 | 0;
499
- behaviour: DraggableBehaviour;
497
+ targetIndex: number;
498
+ targetLocalId: string;
499
+ targetType: DraggableType;
500
500
  }
501
501
  export type HandleTypes = 'hover' | 'selected';
502
502
  export interface MessageDescriptor {
503
- id: string;
504
- description: string;
505
503
  defaultMessage: string;
504
+ description: string;
505
+ id: string;
506
506
  }
@@ -4,9 +4,9 @@
4
4
  */
5
5
  import { jsx } from '@emotion/react';
6
6
  type Props = {
7
- startIndex: number;
8
7
  endIndex: number;
9
8
  includeTooltip?: boolean;
9
+ startIndex: number;
10
10
  };
11
11
  export declare const ColumnResizeWidget: ({ startIndex, endIndex, includeTooltip }: Props) => jsx.JSX.Element;
12
12
  export {};
@@ -5,14 +5,14 @@ import { type EditorView } from '@atlaskit/editor-prosemirror/view';
5
5
  import { type TablePlugin, type TablePluginOptions } from '../tablePluginType';
6
6
  export type ContentComponentProps = {
7
7
  api: ExtractInjectionAPI<TablePlugin> | undefined;
8
- editorView: EditorView;
8
+ defaultGetEditorContainerWidth: GetEditorContainerWidth;
9
+ defaultGetEditorFeatureFlags: GetEditorFeatureFlags;
9
10
  dispatchAnalyticsEvent: DispatchAnalyticsEvent | undefined;
11
+ editorView: EditorView;
12
+ isTableSelectorEnabled: boolean | undefined;
10
13
  options?: TablePluginOptions;
11
- popupsMountPoint?: HTMLElement;
12
14
  popupsBoundariesElement?: HTMLElement;
15
+ popupsMountPoint?: HTMLElement;
13
16
  popupsScrollableElement?: HTMLElement;
14
- isTableSelectorEnabled: boolean | undefined;
15
- defaultGetEditorContainerWidth: GetEditorContainerWidth;
16
- defaultGetEditorFeatureFlags: GetEditorFeatureFlags;
17
17
  };
18
18
  export declare const ContentComponent: ({ api, editorView, dispatchAnalyticsEvent, options, popupsMountPoint, popupsBoundariesElement, popupsScrollableElement, isTableSelectorEnabled, defaultGetEditorContainerWidth, defaultGetEditorFeatureFlags, }: ContentComponentProps) => React.JSX.Element;
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
2
  type HandleIconProps = {
3
3
  forceDefaultHandle: boolean;
4
- isHandleHovered: boolean;
5
4
  hasMergedCells: boolean;
5
+ isHandleHovered: boolean;
6
6
  };
7
7
  export declare const HandleIconComponent: (props: HandleIconProps) => React.JSX.Element;
8
8
  export {};
@@ -8,22 +8,22 @@ import type { TablePlugin } from '../../tablePluginType';
8
8
  import type { CellHoverMeta, TableDirection } from '../../types';
9
9
  export type DragHandleAppearance = 'default' | 'selected' | 'disabled' | 'danger' | 'placeholder';
10
10
  type DragHandleProps = {
11
- tableLocalId: string;
12
- indexes: number[];
11
+ appearance?: DragHandleAppearance;
12
+ direction?: TableDirection;
13
+ editorView: EditorView;
13
14
  forceDefaultHandle?: boolean;
14
- previewWidth?: number;
15
- previewHeight?: number;
16
15
  hoveredCell?: CellHoverMeta;
17
- direction?: TableDirection;
18
- appearance?: DragHandleAppearance;
16
+ hoveredColumns?: number[];
17
+ hoveredRows?: number[];
18
+ indexes: number[];
19
+ isDragMenuTarget: boolean;
19
20
  onClick?: MouseEventHandler;
20
- onMouseOver?: MouseEventHandler;
21
21
  onMouseOut?: MouseEventHandler;
22
+ onMouseOver?: MouseEventHandler;
23
+ previewHeight?: number;
24
+ previewWidth?: number;
25
+ tableLocalId: string;
22
26
  toggleDragMenu?: (trigger: TriggerType, event?: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
23
- editorView: EditorView;
24
- isDragMenuTarget: boolean;
25
- hoveredColumns?: number[];
26
- hoveredRows?: number[];
27
27
  };
28
28
  export declare const DragHandle: React.FC<import("react-intl-next").WithIntlProps<DragHandleProps & WrappedComponentProps>> & {
29
29
  WrappedComponent: React.ComponentType<DragHandleProps & WrappedComponentProps>;
@@ -2,6 +2,6 @@ import React from 'react';
2
2
  import type { TableDirection } from '../../types';
3
3
  export declare const DragPreview: ({ direction, width, height, }: {
4
4
  direction: TableDirection;
5
- width: number;
6
5
  height: number;
6
+ width: number;
7
7
  }) => React.JSX.Element;
@@ -2,13 +2,13 @@ import React from 'react';
2
2
  import type { RowStickyState } from '../../pm-plugins/sticky-headers/types';
3
3
  interface Props {
4
4
  children: React.ReactNode;
5
+ isContextualMenuOpen: boolean | undefined;
5
6
  mountTo: HTMLElement;
6
7
  offset: number;
7
8
  stickyHeader: RowStickyState;
9
+ tableWrapper: HTMLElement;
8
10
  targetCellPosition: number;
9
11
  targetCellRef: HTMLElement;
10
- tableWrapper: HTMLElement;
11
- isContextualMenuOpen: boolean | undefined;
12
12
  }
13
13
  interface CalcLeftPosData {
14
14
  buttonWidth: number;
@@ -4,17 +4,17 @@ import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
4
4
  import type { EditorView } from '@atlaskit/editor-prosemirror/view';
5
5
  import type { RowStickyState } from '../../pm-plugins/sticky-headers/types';
6
6
  export interface Props {
7
+ boundariesElement?: HTMLElement;
8
+ dispatchAnalyticsEvent?: DispatchAnalyticsEvent;
7
9
  editorView: EditorView;
8
- tableWrapper?: HTMLElement;
9
- tableNode?: PMNode;
10
- targetCellPosition: number;
10
+ isCellMenuOpenByKeyboard?: boolean;
11
11
  isContextualMenuOpen?: boolean;
12
+ isNumberColumnEnabled?: boolean;
12
13
  mountPoint?: HTMLElement;
13
- boundariesElement?: HTMLElement;
14
14
  scrollableElement?: HTMLElement;
15
- isNumberColumnEnabled?: boolean;
16
15
  stickyHeader?: RowStickyState;
17
- dispatchAnalyticsEvent?: DispatchAnalyticsEvent;
18
- isCellMenuOpenByKeyboard?: boolean;
16
+ tableNode?: PMNode;
17
+ tableWrapper?: HTMLElement;
18
+ targetCellPosition: number;
19
19
  }
20
20
  export default function (props: Props): jsx.JSX.Element;
@@ -11,26 +11,26 @@ import type { EditorView } from '@atlaskit/editor-prosemirror/view';
11
11
  import type { Rect } from '@atlaskit/editor-tables/table-map';
12
12
  import type { PluginInjectionAPI } from '../../types';
13
13
  interface Props {
14
- editorView: EditorView;
15
- isOpen: boolean;
16
- selectionRect: Rect;
17
- targetCellPosition?: number;
18
- mountPoint?: HTMLElement;
19
- allowMergeCells?: boolean;
20
- allowColumnSorting?: boolean;
21
14
  allowBackgroundColor?: boolean;
22
- boundariesElement?: HTMLElement;
23
- offset?: Array<number>;
15
+ allowColumnSorting?: boolean;
16
+ allowMergeCells?: boolean;
24
17
  api: PluginInjectionAPI | undefined | null;
18
+ boundariesElement?: HTMLElement;
25
19
  editorAnalyticsAPI?: EditorAnalyticsAPI;
20
+ editorView: EditorView;
26
21
  getEditorContainerWidth: GetEditorContainerWidth;
27
22
  getEditorFeatureFlags?: GetEditorFeatureFlags;
28
23
  isCellMenuOpenByKeyboard?: boolean;
29
24
  isCommentEditor?: boolean;
25
+ isOpen: boolean;
26
+ mountPoint?: HTMLElement;
27
+ offset?: Array<number>;
28
+ selectionRect: Rect;
29
+ targetCellPosition?: number;
30
30
  }
31
31
  interface State {
32
- isSubmenuOpen: boolean;
33
32
  isOpenAllowed: boolean;
33
+ isSubmenuOpen: boolean;
34
34
  }
35
35
  export declare class ContextualMenu extends Component<Props & WrappedComponentProps, State> {
36
36
  state: State;
@@ -8,19 +8,19 @@ import type { GetEditorContainerWidth, GetEditorFeatureFlags } from '@atlaskit/e
8
8
  import type { EditorView } from '@atlaskit/editor-prosemirror/view';
9
9
  import type { PluginConfig, PluginInjectionAPI } from '../../types';
10
10
  interface Props {
11
- editorView: EditorView;
12
- isOpen: boolean;
13
- getEditorContainerWidth: GetEditorContainerWidth;
14
11
  api: PluginInjectionAPI | undefined | null;
15
- getEditorFeatureFlags?: GetEditorFeatureFlags;
16
- targetCellPosition?: number;
17
- mountPoint?: HTMLElement;
18
12
  boundariesElement?: HTMLElement;
19
- scrollableElement?: HTMLElement;
20
- pluginConfig?: PluginConfig;
21
13
  editorAnalyticsAPI?: EditorAnalyticsAPI;
14
+ editorView: EditorView;
15
+ getEditorContainerWidth: GetEditorContainerWidth;
16
+ getEditorFeatureFlags?: GetEditorFeatureFlags;
22
17
  isCellMenuOpenByKeyboard?: boolean;
23
18
  isCommentEditor?: boolean;
19
+ isOpen: boolean;
20
+ mountPoint?: HTMLElement;
21
+ pluginConfig?: PluginConfig;
22
+ scrollableElement?: HTMLElement;
23
+ targetCellPosition?: number;
24
24
  }
25
25
  declare const FloatingContextualMenu: {
26
26
  ({ mountPoint, boundariesElement, scrollableElement, editorView, isOpen, pluginConfig, editorAnalyticsAPI, getEditorContainerWidth, getEditorFeatureFlags, isCellMenuOpenByKeyboard, isCommentEditor, api, }: Props): jsx.JSX.Element | null;
@@ -2,11 +2,11 @@ import type { SyntheticEvent } from 'react';
2
2
  import React from 'react';
3
3
  import type { MessageDescriptor, WrappedComponentProps } from 'react-intl-next';
4
4
  interface ButtonProps {
5
- removeLabel: MessageDescriptor;
6
- style?: object;
7
5
  onClick?: (event: SyntheticEvent) => void;
8
6
  onMouseEnter?: (event: SyntheticEvent) => void;
9
7
  onMouseLeave?: (event: SyntheticEvent) => void;
8
+ removeLabel: MessageDescriptor;
9
+ style?: object;
10
10
  }
11
11
  declare const _default: React.FC<import("react-intl-next").WithIntlProps<ButtonProps & WrappedComponentProps>> & {
12
12
  WrappedComponent: React.ComponentType<ButtonProps & WrappedComponentProps>;
@@ -2,9 +2,9 @@ import type { PopupProps } from '@atlaskit/editor-common/ui';
2
2
  import type { CellSelectionType } from './types';
3
3
  interface GetPopupOptions {
4
4
  left: number;
5
- top: number;
6
5
  selectionType?: CellSelectionType;
7
6
  tableWrapper: HTMLElement | null;
7
+ top: number;
8
8
  }
9
9
  export default function getPopupOptions({ left, top, selectionType, tableWrapper, }: GetPopupOptions): Partial<PopupProps>;
10
10
  export {};