@atlaskit/editor-plugin-table 0.1.0 → 0.1.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.
Files changed (190) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/cjs/plugins/table/ui/FloatingDeleteButton/index.js +2 -1
  3. package/dist/cjs/version.json +1 -1
  4. package/dist/es2019/plugins/table/ui/FloatingDeleteButton/index.js +2 -1
  5. package/dist/es2019/version.json +1 -1
  6. package/dist/esm/plugins/table/ui/FloatingDeleteButton/index.js +2 -1
  7. package/dist/esm/version.json +1 -1
  8. package/examples/99-testing.tsx +35 -30
  9. package/package.json +2 -11
  10. package/src/__tests__/integration/__fixtures__/auto-size-documents.ts +5 -10
  11. package/src/__tests__/integration/__fixtures__/layout-documents.ts +1 -2
  12. package/src/__tests__/integration/__fixtures__/resize-documents.ts +5 -10
  13. package/src/__tests__/integration/resize.ts +1 -2
  14. package/src/__tests__/unit/analytics.ts +33 -32
  15. package/src/__tests__/unit/collab.ts +12 -9
  16. package/src/__tests__/unit/commands/sort.ts +28 -28
  17. package/src/__tests__/unit/copy-paste.ts +6 -8
  18. package/src/__tests__/unit/event-handlers.ts +7 -10
  19. package/src/__tests__/unit/fix-tables.ts +17 -23
  20. package/src/__tests__/unit/get-toolbar-config.ts +0 -5
  21. package/src/__tests__/unit/hover-selection.ts +1 -66
  22. package/src/__tests__/unit/index-with-fake-timers.ts +1 -1
  23. package/src/__tests__/unit/index.ts +5 -5
  24. package/src/__tests__/unit/nodeviews/TableComponent.tsx +11 -218
  25. package/src/__tests__/unit/nodeviews/cell.ts +12 -10
  26. package/src/__tests__/unit/nodeviews/table.ts +25 -26
  27. package/src/__tests__/unit/pm-plugins/safari-delete-composition-text-issue-workaround.ts +11 -8
  28. package/src/__tests__/unit/pm-plugins/sticky-headers/tableRow.tsx +11 -12
  29. package/src/__tests__/unit/toolbar.ts +18 -5
  30. package/src/__tests__/unit/ui/ContextualMenu.tsx +55 -0
  31. package/src/__tests__/unit/ui/CornerControls.tsx +7 -7
  32. package/src/__tests__/unit/ui/FloatingContextualButton.tsx +45 -49
  33. package/src/__tests__/unit/ui/FloatingContextualMenu.tsx +49 -0
  34. package/src/__tests__/unit/ui/FloatingDeleteButton.tsx +30 -2
  35. package/src/__tests__/unit/ui/FloatingInsertButton.tsx +143 -111
  36. package/src/__tests__/unit/ui/RowControls.tsx +112 -141
  37. package/src/__tests__/unit/ui/TableFloatingControls.tsx +18 -15
  38. package/src/__tests__/unit/undo-redo.ts +10 -9
  39. package/src/__tests__/unit/utils/nodes.ts +8 -4
  40. package/src/__tests__/unit/utils/row-controls.ts +8 -4
  41. package/src/plugins/table/commands/clear.ts +30 -29
  42. package/src/plugins/table/commands/go-to-next-cell.ts +41 -38
  43. package/src/plugins/table/commands/insert.ts +91 -91
  44. package/src/plugins/table/commands/misc.ts +123 -125
  45. package/src/plugins/table/commands/selection.ts +329 -319
  46. package/src/plugins/table/commands-with-analytics.ts +299 -294
  47. package/src/plugins/table/event-handlers.ts +111 -111
  48. package/src/plugins/table/handlers.ts +95 -94
  49. package/src/plugins/table/nodeviews/OverflowShadowsObserver.ts +4 -3
  50. package/src/plugins/table/nodeviews/TableComponent.tsx +6 -9
  51. package/src/plugins/table/nodeviews/update-overflow-shadows.ts +39 -39
  52. package/src/plugins/table/pm-plugins/decorations/utils/column-controls.ts +7 -9
  53. package/src/plugins/table/pm-plugins/decorations/utils/column-resizing.ts +30 -30
  54. package/src/plugins/table/pm-plugins/decorations/utils/compose-decorations.ts +7 -7
  55. package/src/plugins/table/pm-plugins/plugin-factory.ts +33 -33
  56. package/src/plugins/table/pm-plugins/safari-delete-composition-text-issue-workaround.ts +6 -9
  57. package/src/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.ts +3 -2
  58. package/src/plugins/table/pm-plugins/table-resizing/commands.ts +98 -90
  59. package/src/plugins/table/pm-plugins/table-resizing/utils/dom.ts +46 -47
  60. package/src/plugins/table/toolbar.tsx +116 -113
  61. package/src/plugins/table/transforms/column-width.ts +143 -146
  62. package/src/plugins/table/transforms/delete-columns.ts +144 -142
  63. package/src/plugins/table/transforms/delete-rows.ts +110 -111
  64. package/src/plugins/table/transforms/metadata.ts +9 -9
  65. package/src/plugins/table/ui/FloatingContextualMenu/ContextualMenu.tsx +7 -6
  66. package/src/plugins/table/ui/FloatingDeleteButton/index.tsx +3 -2
  67. package/src/plugins/table/ui/FloatingInsertButton/index.tsx +2 -5
  68. package/src/plugins/table/ui/LayoutButton/index.tsx +2 -6
  69. package/src/plugins/table/ui/common-styles.ts +1 -3
  70. package/src/plugins/table/utils/analytics.ts +24 -25
  71. package/src/plugins/table/utils/dom.ts +3 -3
  72. package/src/plugins/table/utils/row-controls.ts +92 -93
  73. package/dist/types-ts4.0/index.d.ts +0 -1
  74. package/dist/types-ts4.0/plugins/table/commands/clear.d.ts +0 -3
  75. package/dist/types-ts4.0/plugins/table/commands/collapse.d.ts +0 -2
  76. package/dist/types-ts4.0/plugins/table/commands/go-to-next-cell.d.ts +0 -4
  77. package/dist/types-ts4.0/plugins/table/commands/hover.d.ts +0 -8
  78. package/dist/types-ts4.0/plugins/table/commands/index.d.ts +0 -7
  79. package/dist/types-ts4.0/plugins/table/commands/insert.d.ts +0 -10
  80. package/dist/types-ts4.0/plugins/table/commands/misc.d.ts +0 -27
  81. package/dist/types-ts4.0/plugins/table/commands/selection.d.ts +0 -8
  82. package/dist/types-ts4.0/plugins/table/commands/sort.d.ts +0 -3
  83. package/dist/types-ts4.0/plugins/table/commands/split-cell.d.ts +0 -6
  84. package/dist/types-ts4.0/plugins/table/commands/toggle.d.ts +0 -12
  85. package/dist/types-ts4.0/plugins/table/commands-with-analytics.d.ts +0 -26
  86. package/dist/types-ts4.0/plugins/table/create-plugin-config.d.ts +0 -2
  87. package/dist/types-ts4.0/plugins/table/event-handlers.d.ts +0 -16
  88. package/dist/types-ts4.0/plugins/table/handlers.d.ts +0 -3
  89. package/dist/types-ts4.0/plugins/table/index.d.ts +0 -17
  90. package/dist/types-ts4.0/plugins/table/nodeviews/OverflowShadowsObserver.d.ts +0 -26
  91. package/dist/types-ts4.0/plugins/table/nodeviews/TableComponent.d.ts +0 -72
  92. package/dist/types-ts4.0/plugins/table/nodeviews/__mocks__/OverflowShadowsObserver.d.ts +0 -9
  93. package/dist/types-ts4.0/plugins/table/nodeviews/__mocks__/OverridableMock.d.ts +0 -9
  94. package/dist/types-ts4.0/plugins/table/nodeviews/table.d.ts +0 -31
  95. package/dist/types-ts4.0/plugins/table/nodeviews/tableCell.d.ts +0 -19
  96. package/dist/types-ts4.0/plugins/table/nodeviews/types.d.ts +0 -24
  97. package/dist/types-ts4.0/plugins/table/nodeviews/update-overflow-shadows.d.ts +0 -8
  98. package/dist/types-ts4.0/plugins/table/pm-plugins/decorations/plugin.d.ts +0 -7
  99. package/dist/types-ts4.0/plugins/table/pm-plugins/decorations/utils/column-controls.d.ts +0 -3
  100. package/dist/types-ts4.0/plugins/table/pm-plugins/decorations/utils/column-resizing.d.ts +0 -2
  101. package/dist/types-ts4.0/plugins/table/pm-plugins/decorations/utils/compose-decorations.d.ts +0 -2
  102. package/dist/types-ts4.0/plugins/table/pm-plugins/decorations/utils/index.d.ts +0 -3
  103. package/dist/types-ts4.0/plugins/table/pm-plugins/decorations/utils/types.d.ts +0 -6
  104. package/dist/types-ts4.0/plugins/table/pm-plugins/default-table-selection.d.ts +0 -5
  105. package/dist/types-ts4.0/plugins/table/pm-plugins/keymap.d.ts +0 -5
  106. package/dist/types-ts4.0/plugins/table/pm-plugins/main.d.ts +0 -8
  107. package/dist/types-ts4.0/plugins/table/pm-plugins/plugin-factory.d.ts +0 -1
  108. package/dist/types-ts4.0/plugins/table/pm-plugins/plugin-key.d.ts +0 -3
  109. package/dist/types-ts4.0/plugins/table/pm-plugins/safari-delayed-dom-selection-syncing-workaround.d.ts +0 -4
  110. package/dist/types-ts4.0/plugins/table/pm-plugins/safari-delete-composition-text-issue-workaround.d.ts +0 -15
  111. package/dist/types-ts4.0/plugins/table/pm-plugins/sticky-headers/commands.d.ts +0 -3
  112. package/dist/types-ts4.0/plugins/table/pm-plugins/sticky-headers/index.d.ts +0 -6
  113. package/dist/types-ts4.0/plugins/table/pm-plugins/sticky-headers/nodeviews/dom.d.ts +0 -6
  114. package/dist/types-ts4.0/plugins/table/pm-plugins/sticky-headers/nodeviews/tableRow.d.ts +0 -65
  115. package/dist/types-ts4.0/plugins/table/pm-plugins/sticky-headers/plugin-key.d.ts +0 -3
  116. package/dist/types-ts4.0/plugins/table/pm-plugins/sticky-headers/plugin-state.d.ts +0 -3
  117. package/dist/types-ts4.0/plugins/table/pm-plugins/sticky-headers/plugin.d.ts +0 -4
  118. package/dist/types-ts4.0/plugins/table/pm-plugins/sticky-headers/types.d.ts +0 -16
  119. package/dist/types-ts4.0/plugins/table/pm-plugins/sticky-headers/util.d.ts +0 -2
  120. package/dist/types-ts4.0/plugins/table/pm-plugins/table-local-id.d.ts +0 -22
  121. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/commands.d.ts +0 -25
  122. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/event-handlers.d.ts +0 -4
  123. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/index.d.ts +0 -4
  124. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/plugin-factory.d.ts +0 -4
  125. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/plugin-key.d.ts +0 -3
  126. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/plugin.d.ts +0 -6
  127. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/reducer.d.ts +0 -3
  128. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/colgroup.d.ts +0 -8
  129. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/column-state.d.ts +0 -14
  130. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/content-width.d.ts +0 -4
  131. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/dom.d.ts +0 -13
  132. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/index.d.ts +0 -12
  133. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/misc.d.ts +0 -22
  134. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/resize-column.d.ts +0 -2
  135. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/resize-logic.d.ts +0 -4
  136. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/resize-state.d.ts +0 -29
  137. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/scale-table.d.ts +0 -17
  138. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/types.d.ts +0 -22
  139. package/dist/types-ts4.0/plugins/table/pm-plugins/table-resizing/utils/unit-to-number.d.ts +0 -1
  140. package/dist/types-ts4.0/plugins/table/pm-plugins/table-selection-keymap.d.ts +0 -4
  141. package/dist/types-ts4.0/plugins/table/reducer.d.ts +0 -3
  142. package/dist/types-ts4.0/plugins/table/toolbar.d.ts +0 -36
  143. package/dist/types-ts4.0/plugins/table/transforms/column-width.d.ts +0 -18
  144. package/dist/types-ts4.0/plugins/table/transforms/delete-columns.d.ts +0 -3
  145. package/dist/types-ts4.0/plugins/table/transforms/delete-rows.d.ts +0 -3
  146. package/dist/types-ts4.0/plugins/table/transforms/fix-tables.d.ts +0 -10
  147. package/dist/types-ts4.0/plugins/table/transforms/index.d.ts +0 -7
  148. package/dist/types-ts4.0/plugins/table/transforms/merge.d.ts +0 -5
  149. package/dist/types-ts4.0/plugins/table/transforms/metadata.d.ts +0 -21
  150. package/dist/types-ts4.0/plugins/table/transforms/replace-table.d.ts +0 -5
  151. package/dist/types-ts4.0/plugins/table/transforms/split.d.ts +0 -9
  152. package/dist/types-ts4.0/plugins/table/types.d.ts +0 -328
  153. package/dist/types-ts4.0/plugins/table/ui/FloatingContextualButton/index.d.ts +0 -29
  154. package/dist/types-ts4.0/plugins/table/ui/FloatingContextualButton/styles.d.ts +0 -1
  155. package/dist/types-ts4.0/plugins/table/ui/FloatingContextualMenu/ContextualMenu.d.ts +0 -87
  156. package/dist/types-ts4.0/plugins/table/ui/FloatingContextualMenu/index.d.ts +0 -22
  157. package/dist/types-ts4.0/plugins/table/ui/FloatingContextualMenu/styles.d.ts +0 -2
  158. package/dist/types-ts4.0/plugins/table/ui/FloatingDeleteButton/DeleteButton.d.ts +0 -14
  159. package/dist/types-ts4.0/plugins/table/ui/FloatingDeleteButton/getPopUpOptions.d.ts +0 -10
  160. package/dist/types-ts4.0/plugins/table/ui/FloatingDeleteButton/index.d.ts +0 -54
  161. package/dist/types-ts4.0/plugins/table/ui/FloatingDeleteButton/types.d.ts +0 -1
  162. package/dist/types-ts4.0/plugins/table/ui/FloatingInsertButton/InsertButton.d.ts +0 -12
  163. package/dist/types-ts4.0/plugins/table/ui/FloatingInsertButton/getPopupOptions.d.ts +0 -3
  164. package/dist/types-ts4.0/plugins/table/ui/FloatingInsertButton/index.d.ts +0 -35
  165. package/dist/types-ts4.0/plugins/table/ui/LayoutButton/index.d.ts +0 -21
  166. package/dist/types-ts4.0/plugins/table/ui/TableFloatingControls/CornerControls/index.d.ts +0 -16
  167. package/dist/types-ts4.0/plugins/table/ui/TableFloatingControls/NumberColumn/index.d.ts +0 -21
  168. package/dist/types-ts4.0/plugins/table/ui/TableFloatingControls/RowControls/index.d.ts +0 -17
  169. package/dist/types-ts4.0/plugins/table/ui/TableFloatingControls/index.d.ts +0 -40
  170. package/dist/types-ts4.0/plugins/table/ui/common-styles.d.ts +0 -4
  171. package/dist/types-ts4.0/plugins/table/ui/consts.d.ts +0 -39
  172. package/dist/types-ts4.0/plugins/table/ui/messages.d.ts +0 -38
  173. package/dist/types-ts4.0/plugins/table/ui/ui-styles.d.ts +0 -15
  174. package/dist/types-ts4.0/plugins/table/utils/analytics.d.ts +0 -18
  175. package/dist/types-ts4.0/plugins/table/utils/collapse.d.ts +0 -29
  176. package/dist/types-ts4.0/plugins/table/utils/column-controls.d.ts +0 -10
  177. package/dist/types-ts4.0/plugins/table/utils/decoration.d.ts +0 -16
  178. package/dist/types-ts4.0/plugins/table/utils/dom.d.ts +0 -20
  179. package/dist/types-ts4.0/plugins/table/utils/get-allow-add-column-custom-step.d.ts +0 -2
  180. package/dist/types-ts4.0/plugins/table/utils/index.d.ts +0 -11
  181. package/dist/types-ts4.0/plugins/table/utils/nodes.d.ts +0 -12
  182. package/dist/types-ts4.0/plugins/table/utils/paste.d.ts +0 -14
  183. package/dist/types-ts4.0/plugins/table/utils/referentiality.d.ts +0 -2
  184. package/dist/types-ts4.0/plugins/table/utils/row-controls.d.ts +0 -16
  185. package/dist/types-ts4.0/plugins/table/utils/selection.d.ts +0 -6
  186. package/dist/types-ts4.0/plugins/table/utils/table.d.ts +0 -4
  187. package/dist/types-ts4.0/plugins/table/utils/update-plugin-state-decorations.d.ts +0 -4
  188. package/dist/types-ts4.0/plugins/table-plugin.d.ts +0 -2
  189. package/src/plugins/table/ui/FloatingContextualMenu/__tests__/ContextualMenu.tsx +0 -56
  190. package/src/plugins/table/ui/FloatingContextualMenu/__tests__/FloatingContextualMenu.tsx +0 -50
@@ -134,12 +134,8 @@ class LayoutButton extends React.Component<Props & WrappedComponentProps, any> {
134
134
  }
135
135
 
136
136
  renderPopup(button: JSX.Element) {
137
- const {
138
- mountPoint,
139
- boundariesElement,
140
- scrollableElement,
141
- targetRef,
142
- } = this.props;
137
+ const { mountPoint, boundariesElement, scrollableElement, targetRef } =
138
+ this.props;
143
139
 
144
140
  if (!targetRef) {
145
141
  return null;
@@ -333,9 +333,7 @@ export const tableStyles = (props: ThemeProps) => css`
333
333
  }
334
334
 
335
335
  ${props.featureFlags?.stickyHeadersOptimization ? sentinelStyles : ''}
336
- ${OverflowShadow(
337
- props,
338
- )}
336
+ ${OverflowShadow(props)}
339
337
 
340
338
  .${ClassName.TABLE_STICKY} .${ClassName.TABLE_STICKY_SHADOW} {
341
339
  height: 0; // stop overflow flash & set correct height in update-overflow-shadows.ts
@@ -33,9 +33,8 @@ export function getSelectedCellInfo(selection: Selection) {
33
33
  let verticalCells = 1;
34
34
  let totalCells = 1;
35
35
 
36
- const { table, map, totalRowCount, totalColumnCount } = getSelectedTableInfo(
37
- selection,
38
- );
36
+ const { table, map, totalRowCount, totalColumnCount } =
37
+ getSelectedTableInfo(selection);
39
38
 
40
39
  if (table && map) {
41
40
  const rect = getSelectionRect(selection);
@@ -55,27 +54,27 @@ export function getSelectedCellInfo(selection: Selection) {
55
54
  };
56
55
  }
57
56
 
58
- export const withEditorAnalyticsAPI = (
59
- payload: AnalyticsEventPayload | AnalyticsEventPayloadCallback,
60
- ) => (
61
- editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null,
62
- ): HigherOrderCommand => {
63
- return (command) => (state, dispatch, view) =>
64
- command(
65
- state,
66
- (tr) => {
67
- const dynamicPayload =
68
- payload instanceof Function ? payload(state) : payload;
57
+ export const withEditorAnalyticsAPI =
58
+ (payload: AnalyticsEventPayload | AnalyticsEventPayloadCallback) =>
59
+ (
60
+ editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null,
61
+ ): HigherOrderCommand => {
62
+ return (command) => (state, dispatch, view) =>
63
+ command(
64
+ state,
65
+ (tr) => {
66
+ const dynamicPayload =
67
+ payload instanceof Function ? payload(state) : payload;
69
68
 
70
- if (dynamicPayload) {
71
- editorAnalyticsAPI?.attachAnalyticsEvent(dynamicPayload)(tr);
72
- }
69
+ if (dynamicPayload) {
70
+ editorAnalyticsAPI?.attachAnalyticsEvent(dynamicPayload)(tr);
71
+ }
73
72
 
74
- if (dispatch) {
75
- dispatch(tr);
76
- }
77
- return true;
78
- },
79
- view,
80
- );
81
- };
73
+ if (dispatch) {
74
+ dispatch(tr);
75
+ }
76
+ return true;
77
+ },
78
+ view,
79
+ );
80
+ };
@@ -168,9 +168,9 @@ export const updateResizeHandles = (tableRef?: HTMLElement) => {
168
168
  const height = tableRef.offsetHeight + tableToolbarSize;
169
169
  // see ED-7600
170
170
  const nodes = Array.from(
171
- tableRef.querySelectorAll(`.${ClassName.RESIZE_HANDLE}`) as NodeListOf<
172
- HTMLElement
173
- >,
171
+ tableRef.querySelectorAll(
172
+ `.${ClassName.RESIZE_HANDLE}`,
173
+ ) as NodeListOf<HTMLElement>,
174
174
  );
175
175
  if (!nodes || !nodes.length) {
176
176
  return;
@@ -125,113 +125,112 @@ export const getRowClassNames = (
125
125
  return classNames.join(' ');
126
126
  };
127
127
 
128
- export const copyPreviousRow = (schema: Schema) => (
129
- insertNewRowIndex: number,
130
- ) => (tr: Transaction) => {
131
- const table = findTable(tr.selection);
132
- if (!table) {
133
- return tr;
134
- }
128
+ export const copyPreviousRow =
129
+ (schema: Schema) => (insertNewRowIndex: number) => (tr: Transaction) => {
130
+ const table = findTable(tr.selection);
131
+ if (!table) {
132
+ return tr;
133
+ }
134
+
135
+ const map = TableMap.get(table.node);
136
+ const copyPreviousRowIndex = insertNewRowIndex - 1;
135
137
 
136
- const map = TableMap.get(table.node);
137
- const copyPreviousRowIndex = insertNewRowIndex - 1;
138
+ if (insertNewRowIndex <= 0) {
139
+ throw Error(
140
+ `Row Index less or equal 0 isn't not allowed since there is not a previous to copy`,
141
+ );
142
+ }
143
+
144
+ if (insertNewRowIndex > map.height) {
145
+ return tr;
146
+ }
138
147
 
139
- if (insertNewRowIndex <= 0) {
140
- throw Error(
141
- `Row Index less or equal 0 isn't not allowed since there is not a previous to copy`,
148
+ const tableNode = table.node;
149
+ const {
150
+ nodes: { tableRow },
151
+ } = schema;
152
+
153
+ const cellsInRow = map.cellsInRect({
154
+ left: 0,
155
+ right: map.width,
156
+ top: copyPreviousRowIndex,
157
+ bottom: copyPreviousRowIndex + 1,
158
+ });
159
+ const offsetIndexPosition = copyPreviousRowIndex * map.width;
160
+ const offsetNextLineIndexPosition = insertNewRowIndex * map.width;
161
+ const cellsPositionsInOriginalRow = map.map.slice(
162
+ offsetIndexPosition,
163
+ offsetIndexPosition + map.width,
142
164
  );
143
- }
144
165
 
145
- if (insertNewRowIndex > map.height) {
146
- return tr;
147
- }
166
+ const cellsPositionsInNextRow = map.map.slice(
167
+ offsetNextLineIndexPosition,
168
+ offsetNextLineIndexPosition + map.width,
169
+ );
148
170
 
149
- const tableNode = table.node;
150
- const {
151
- nodes: { tableRow },
152
- } = schema;
153
-
154
- const cellsInRow = map.cellsInRect({
155
- left: 0,
156
- right: map.width,
157
- top: copyPreviousRowIndex,
158
- bottom: copyPreviousRowIndex + 1,
159
- });
160
- const offsetIndexPosition = copyPreviousRowIndex * map.width;
161
- const offsetNextLineIndexPosition = insertNewRowIndex * map.width;
162
- const cellsPositionsInOriginalRow = map.map.slice(
163
- offsetIndexPosition,
164
- offsetIndexPosition + map.width,
165
- );
166
-
167
- const cellsPositionsInNextRow = map.map.slice(
168
- offsetNextLineIndexPosition,
169
- offsetNextLineIndexPosition + map.width,
170
- );
171
-
172
- let cells = [] as PMNode[];
173
- let fixRowspans = [];
174
- for (let i = 0; i < cellsPositionsInOriginalRow.length; ) {
175
- const pos = cellsPositionsInOriginalRow[i];
176
- const documentCellPos = pos + table.start;
177
- const node = tr.doc.nodeAt(documentCellPos);
178
- if (!node) {
179
- continue;
180
- }
171
+ let cells = [] as PMNode[];
172
+ let fixRowspans = [];
173
+ for (let i = 0; i < cellsPositionsInOriginalRow.length; ) {
174
+ const pos = cellsPositionsInOriginalRow[i];
175
+ const documentCellPos = pos + table.start;
176
+ const node = tr.doc.nodeAt(documentCellPos);
177
+ if (!node) {
178
+ continue;
179
+ }
181
180
 
182
- const attributes = {
183
- ...node.attrs,
184
- colspan: 1,
185
- rowspan: 1,
186
- };
181
+ const attributes = {
182
+ ...node.attrs,
183
+ colspan: 1,
184
+ rowspan: 1,
185
+ };
187
186
 
188
- const newCell = node.type.createAndFill(attributes);
187
+ const newCell = node.type.createAndFill(attributes);
189
188
 
190
- if (!newCell) {
191
- return tr;
192
- }
189
+ if (!newCell) {
190
+ return tr;
191
+ }
193
192
 
194
- if (cellsPositionsInNextRow.indexOf(pos) > -1) {
195
- fixRowspans.push({ pos: documentCellPos, node });
196
- } else if (cellsInRow.indexOf(pos) > -1) {
197
- if (node.attrs.colspan > 1) {
198
- const newCellWithColspanFixed = node.type.createAndFill({
199
- ...attributes,
200
- colspan: node.attrs.colspan,
201
- });
202
-
203
- if (!newCellWithColspanFixed) {
204
- return tr;
205
- }
193
+ if (cellsPositionsInNextRow.indexOf(pos) > -1) {
194
+ fixRowspans.push({ pos: documentCellPos, node });
195
+ } else if (cellsInRow.indexOf(pos) > -1) {
196
+ if (node.attrs.colspan > 1) {
197
+ const newCellWithColspanFixed = node.type.createAndFill({
198
+ ...attributes,
199
+ colspan: node.attrs.colspan,
200
+ });
206
201
 
207
- cells.push(newCellWithColspanFixed);
208
- i = i + node.attrs.colspan;
202
+ if (!newCellWithColspanFixed) {
203
+ return tr;
204
+ }
209
205
 
210
- continue;
206
+ cells.push(newCellWithColspanFixed);
207
+ i = i + node.attrs.colspan;
208
+
209
+ continue;
210
+ }
211
+ cells.push(newCell);
212
+ } else {
213
+ cells.push(newCell);
211
214
  }
212
- cells.push(newCell);
213
- } else {
214
- cells.push(newCell);
215
- }
216
215
 
217
- i++;
218
- }
216
+ i++;
217
+ }
219
218
 
220
- fixRowspans.forEach((cell) => {
221
- tr.setNodeMarkup(cell.pos, undefined, {
222
- ...cell.node.attrs,
223
- rowspan: cell.node.attrs.rowspan + 1,
219
+ fixRowspans.forEach((cell) => {
220
+ tr.setNodeMarkup(cell.pos, undefined, {
221
+ ...cell.node.attrs,
222
+ rowspan: cell.node.attrs.rowspan + 1,
223
+ });
224
224
  });
225
- });
226
225
 
227
- const cloneRow = tableNode.child(copyPreviousRowIndex);
228
- let rowPos = table.start;
229
- for (let i = 0; i < insertNewRowIndex; i++) {
230
- rowPos += tableNode.child(i).nodeSize;
231
- }
226
+ const cloneRow = tableNode.child(copyPreviousRowIndex);
227
+ let rowPos = table.start;
228
+ for (let i = 0; i < insertNewRowIndex; i++) {
229
+ rowPos += tableNode.child(i).nodeSize;
230
+ }
232
231
 
233
- return safeInsert(
234
- tableRow.createChecked(cloneRow.attrs, cells, cloneRow.marks),
235
- rowPos,
236
- )(tr);
237
- };
232
+ return safeInsert(
233
+ tableRow.createChecked(cloneRow.attrs, cells, cloneRow.marks),
234
+ rowPos,
235
+ )(tr);
236
+ };
@@ -1 +0,0 @@
1
- export { default as tablesPlugin } from './plugins/table-plugin';
@@ -1,3 +0,0 @@
1
- import { Command } from '@atlaskit/editor-common/types';
2
- export declare const clearMultipleCells: (targetCellPosition?: number | undefined) => Command;
3
- export declare const clearSelection: Command;
@@ -1,2 +0,0 @@
1
- import { Command } from '@atlaskit/editor-common/types';
2
- export declare const wrapTableInExpand: Command;
@@ -1,4 +0,0 @@
1
- import { Direction } from '@atlaskit/editor-tables/types';
2
- import { Command } from '@atlaskit/editor-common/types';
3
- import type { EditorAnalyticsAPI } from '@atlaskit/editor-common/analytics';
4
- export declare const goToNextCell: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (direction: Direction) => Command;
@@ -1,8 +0,0 @@
1
- import { CellColumnPositioning } from '../types';
2
- export declare const hoverMergedCells: () => import("@atlaskit/editor-common/types").Command;
3
- export declare const hoverColumns: (hoveredColumns: number[], isInDanger?: boolean | undefined) => import("@atlaskit/editor-common/types").Command;
4
- export declare const hoverRows: (hoveredRows: number[], isInDanger?: boolean | undefined) => import("@atlaskit/editor-common/types").Command;
5
- export declare const hoverTable: (isInDanger?: boolean | undefined, isSelected?: boolean | undefined) => import("@atlaskit/editor-common/types").Command;
6
- export declare const clearHoverSelection: () => import("@atlaskit/editor-common/types").Command;
7
- export declare const showResizeHandleLine: (cellColumnPositioning: CellColumnPositioning) => import("@atlaskit/editor-common/types").Command;
8
- export declare const hideResizeHandleLine: () => import("@atlaskit/editor-common/types").Command;
@@ -1,7 +0,0 @@
1
- export { hoverColumns, hoverRows, hoverTable, hoverMergedCells, clearHoverSelection, showResizeHandleLine, hideResizeHandleLine, } from './hover';
2
- export { insertColumn, insertRow, createTable } from './insert';
3
- export { getNextLayout, toggleContextualMenu, toggleHeaderColumn, toggleHeaderRow, toggleNumberColumn, toggleTableLayout, } from './toggle';
4
- export { clearMultipleCells } from './clear';
5
- export { autoSizeTable, convertFirstRowToHeader, deleteTable, hideInsertColumnOrRowButton, moveCursorBackward, selectColumn, selectRow, setCellAttr, setEditorFocus, setMultipleCellAttrs, setTableRef, showInsertColumnButton, showInsertRowButton, transformSliceToAddTableHeaders, triggerUnlessTableHeader, addBoldInEmptyHeaderCells, addResizeHandleDecorations, } from './misc';
6
- export { sortByColumn } from './sort';
7
- export { goToNextCell } from './go-to-next-cell';
@@ -1,10 +0,0 @@
1
- import { Transaction } from 'prosemirror-state';
2
- import { Command } from '@atlaskit/editor-common/types';
3
- import { EditorView } from 'prosemirror-view';
4
- import type { GetEditorContainerWidth } from '@atlaskit/editor-common/types';
5
- export declare function addColumnAt(getEditorContainerWidth: GetEditorContainerWidth): (column: number, allowAddColumnCustomStep: boolean | undefined, view: EditorView | undefined) => (tr: Transaction) => Transaction<any>;
6
- export declare const addColumnBefore: (getEditorContainerWidth: GetEditorContainerWidth) => Command;
7
- export declare const addColumnAfter: (getEditorContainerWidth: GetEditorContainerWidth) => Command;
8
- export declare const insertColumn: (getEditorContainerWidth: GetEditorContainerWidth) => (column: number) => Command;
9
- export declare const insertRow: (row: number, moveCursorToTheNewRow: boolean) => Command;
10
- export declare const createTable: () => Command;
@@ -1,27 +0,0 @@
1
- import { Node as PMNode, Schema, Slice } from 'prosemirror-model';
2
- import { Transaction } from 'prosemirror-state';
3
- import { ContentNodeWithPos } from 'prosemirror-utils';
4
- import { EditorView } from 'prosemirror-view';
5
- import { Command } from '@atlaskit/editor-common/types';
6
- export declare const setEditorFocus: (editorHasFocus: boolean) => Command;
7
- export declare const setTableRef: (ref?: HTMLTableElement | undefined) => Command;
8
- export declare const setCellAttr: (name: string, value: any) => Command;
9
- export declare const triggerUnlessTableHeader: (command: Command) => Command;
10
- export declare const transformSliceRemoveCellBackgroundColor: (slice: Slice, schema: Schema) => Slice;
11
- export declare const transformSliceToAddTableHeaders: (slice: Slice, schema: Schema) => Slice;
12
- export declare const transformSliceToRemoveColumnsWidths: (slice: Slice, schema: Schema) => Slice;
13
- export declare const deleteTable: Command;
14
- export declare const deleteTableIfSelected: Command;
15
- export declare const convertFirstRowToHeader: (schema: Schema) => (tr: Transaction) => Transaction;
16
- export declare const moveCursorBackward: Command;
17
- export declare const setMultipleCellAttrs: (attrs: Object, targetCellPosition?: number | undefined) => Command;
18
- export declare const selectColumn: (column: number, expand?: boolean | undefined) => Command;
19
- export declare const selectRow: (row: number, expand?: boolean | undefined) => Command;
20
- export declare const showInsertColumnButton: (columnIndex: number) => Command;
21
- export declare const showInsertRowButton: (rowIndex: number) => Command;
22
- export declare const hideInsertColumnOrRowButton: () => Command;
23
- export declare const addResizeHandleDecorations: (columnIndex: number) => Command;
24
- export declare const autoSizeTable: (view: EditorView, node: PMNode, table: HTMLTableElement, basePos: number, opts: {
25
- containerWidth: number;
26
- }) => boolean;
27
- export declare const addBoldInEmptyHeaderCells: (tableCellHeader: ContentNodeWithPos) => Command;
@@ -1,8 +0,0 @@
1
- import type { Command } from '@atlaskit/editor-common/types';
2
- import { EditorSelectionAPI } from '@atlaskit/editor-common/selection';
3
- export declare enum TableSelectionDirection {
4
- TopToBottom = "TopToBottom",
5
- BottomToTop = "BottomToTop"
6
- }
7
- export declare const arrowLeftFromTable: (editorSelectionAPI: EditorSelectionAPI | undefined | null) => () => Command;
8
- export declare const arrowRightFromTable: (editorSelectionAPI: EditorSelectionAPI | undefined | null) => () => Command;
@@ -1,3 +0,0 @@
1
- import { Command } from '@atlaskit/editor-common/types';
2
- import { TableSortOrder as SortOrder } from '@atlaskit/adf-schema/steps';
3
- export declare const sortByColumn: (columnIndex: number, order?: SortOrder) => Command;
@@ -1,6 +0,0 @@
1
- import { Command } from '@atlaskit/editor-common/types';
2
- /**
3
- * We need to split cell keeping the right type of cell given current table configuration.
4
- * We are using editor-tables splitCellWithType that allows you to choose what cell type should be.
5
- */
6
- export declare const splitCell: Command;
@@ -1,12 +0,0 @@
1
- import { TableLayout } from '@atlaskit/adf-schema';
2
- import { Command } from '@atlaskit/editor-common/types';
3
- /**
4
- * Table layout toggle logic
5
- * default -> wide -> full-width -> default
6
- */
7
- export declare const getNextLayout: (currentLayout: TableLayout) => TableLayout;
8
- export declare const toggleHeaderRow: Command;
9
- export declare const toggleHeaderColumn: Command;
10
- export declare const toggleNumberColumn: Command;
11
- export declare const toggleTableLayout: Command;
12
- export declare const toggleContextualMenu: () => Command;
@@ -1,26 +0,0 @@
1
- import { Rect } from '@atlaskit/editor-tables/table-map';
2
- import type { Command } from '@atlaskit/editor-common/types';
3
- import { INPUT_METHOD } from '@atlaskit/editor-common/analytics';
4
- import type { EditorAnalyticsAPI } from '@atlaskit/editor-common/analytics';
5
- import { InsertRowMethods, InsertRowOptions, RowInsertPosition } from './types';
6
- import { TableSortOrder as SortOrder } from '@atlaskit/adf-schema/steps';
7
- import { ResizeStateWithAnalytics } from './pm-plugins/table-resizing/utils';
8
- import type { GetEditorContainerWidth } from '@atlaskit/editor-common/types';
9
- export declare const emptyMultipleCellsWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (inputMethod: INPUT_METHOD.CONTEXT_MENU | INPUT_METHOD.KEYBOARD | INPUT_METHOD.FLOATING_TB, targetCellPosition?: number | undefined) => Command;
10
- export declare const mergeCellsWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | null | undefined) => (inputMethod: INPUT_METHOD.CONTEXT_MENU | INPUT_METHOD.FLOATING_TB) => Command;
11
- export declare const splitCellWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (inputMethod: INPUT_METHOD.CONTEXT_MENU | INPUT_METHOD.FLOATING_TB) => Command;
12
- export declare const setColorWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (inputMethod: INPUT_METHOD.CONTEXT_MENU | INPUT_METHOD.FLOATING_TB, cellColor: string, targetCellPosition?: number | undefined) => Command;
13
- export declare const addRowAroundSelection: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (side: RowInsertPosition) => Command;
14
- export declare const insertRowWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (inputMethod: InsertRowMethods, options: InsertRowOptions) => Command;
15
- export declare const insertColumnWithAnalytics: (getEditorContainerWidth: GetEditorContainerWidth, editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (inputMethod: INPUT_METHOD.CONTEXT_MENU | INPUT_METHOD.BUTTON | INPUT_METHOD.SHORTCUT | INPUT_METHOD.FLOATING_TB, position: number) => Command;
16
- export declare const deleteRowsWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (inputMethod: INPUT_METHOD.CONTEXT_MENU | INPUT_METHOD.BUTTON | INPUT_METHOD.FLOATING_TB, rect: Rect, isHeaderRowRequired: boolean) => Command;
17
- export declare const deleteColumnsWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (inputMethod: INPUT_METHOD.CONTEXT_MENU | INPUT_METHOD.BUTTON | INPUT_METHOD.FLOATING_TB, rect: Rect) => Command;
18
- export declare const deleteTableWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => Command;
19
- export declare const deleteTableIfSelectedWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (inputMethod: INPUT_METHOD.FLOATING_TB | INPUT_METHOD.KEYBOARD) => Command;
20
- export declare const toggleHeaderRowWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => Command;
21
- export declare const toggleHeaderColumnWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => Command;
22
- export declare const toggleNumberColumnWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => Command;
23
- export declare const toggleTableLayoutWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => Command;
24
- export declare const sortColumnWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (inputMethod: INPUT_METHOD.CONTEXT_MENU | INPUT_METHOD.FLOATING_TB, columnIndex: number, sortOrder: SortOrder) => Command;
25
- export declare const distributeColumnsWidthsWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => (inputMethod: INPUT_METHOD.CONTEXT_MENU | INPUT_METHOD.FLOATING_TB, { resizeState, table, attributes }: ResizeStateWithAnalytics) => Command;
26
- export declare const wrapTableInExpandWithAnalytics: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined | null) => Command;
@@ -1,2 +0,0 @@
1
- import { PluginConfig } from './types';
2
- export declare const pluginConfig: (config?: PluginConfig) => PluginConfig;
@@ -1,16 +0,0 @@
1
- import { EditorState, Transaction } from 'prosemirror-state';
2
- import { EditorView } from 'prosemirror-view';
3
- import type { EditorAnalyticsAPI } from '@atlaskit/editor-common/analytics';
4
- import { ElementContentRects } from './types';
5
- import type { GetEditorFeatureFlags } from '@atlaskit/editor-common/types';
6
- export declare const handleBlur: (view: EditorView, event: Event) => boolean;
7
- export declare const handleFocus: (view: EditorView, event: Event) => boolean;
8
- export declare const handleClick: (view: EditorView, event: Event) => boolean;
9
- export declare const handleMouseOver: (view: EditorView, mouseEvent: Event) => boolean;
10
- export declare const handleMouseDown: (_: EditorView, event: Event) => boolean;
11
- export declare const handleMouseOut: (view: EditorView, mouseEvent: Event) => boolean;
12
- export declare const handleMouseLeave: (view: EditorView, event: Event) => boolean;
13
- export declare const handleMouseMove: (getEditorFeatureFlags: GetEditorFeatureFlags) => (view: EditorView, event: Event, tableCellOptimization?: boolean | undefined, elementContentRects?: ElementContentRects | undefined) => boolean;
14
- export declare function handleTripleClick(view: EditorView, pos: number): boolean;
15
- export declare const handleCut: (oldTr: Transaction, oldState: EditorState, newState: EditorState, editorAnalyticsAPI?: EditorAnalyticsAPI | undefined) => Transaction;
16
- export declare const whenTableInFocus: (eventHandler: (view: EditorView, mouseEvent: Event, tableCellOptimization?: boolean | undefined, elementContentRects?: ElementContentRects | undefined) => boolean, elementContentRects?: ElementContentRects | undefined) => (view: EditorView, mouseEvent: Event) => boolean;
@@ -1,3 +0,0 @@
1
- import { Transaction, ReadonlyTransaction } from 'prosemirror-state';
2
- import { TablePluginState } from './types';
3
- export declare const handleDocOrSelectionChanged: (tr: Transaction | ReadonlyTransaction, pluginState: TablePluginState) => TablePluginState;
@@ -1,17 +0,0 @@
1
- import type { EditorPlugin } from '@atlaskit/editor-common/types';
2
- import type { EditorAnalyticsAPI } from '@atlaskit/editor-common/analytics';
3
- import type { EditorSelectionAPI } from '@atlaskit/editor-common/selection';
4
- import { PluginConfig } from './types';
5
- import type { GetEditorFeatureFlags } from '@atlaskit/editor-common/types';
6
- interface TablePluginOptions {
7
- tableOptions: PluginConfig;
8
- breakoutEnabled?: boolean;
9
- allowContextualMenu?: boolean;
10
- fullWidthEnabled?: boolean;
11
- wasFullWidthEnabled?: boolean;
12
- editorAnalyticsAPI?: EditorAnalyticsAPI;
13
- editorSelectionAPI?: EditorSelectionAPI;
14
- getEditorFeatureFlags?: GetEditorFeatureFlags;
15
- }
16
- declare const tablesPlugin: (options?: TablePluginOptions | undefined) => EditorPlugin;
17
- export default tablesPlugin;
@@ -1,26 +0,0 @@
1
- import { ShadowEvent } from '../types';
2
- export declare class OverflowShadowsObserver {
3
- private tableIntersectionObserver?;
4
- private updateShadowState;
5
- private table;
6
- private wrapper;
7
- private firstCell;
8
- private lastCell;
9
- private getFirstCell;
10
- private getLastCell;
11
- private isSticky;
12
- private stickyRowHeight;
13
- constructor(updateShadowState: (shadowKey: ShadowEvent, value: boolean) => void, table: HTMLElement, wrapper: HTMLDivElement);
14
- private init;
15
- private checkIntersectionEvent;
16
- private updateStickyShadowsHeightIfChanged;
17
- private getStickyCell;
18
- observeCells: (isSticky?: boolean | undefined, hasHeaderRow?: boolean | undefined) => void;
19
- /**
20
- * Takes a heightStyle if it can be computed in a less expensive manner,
21
- * e.g. bounds on an IntersectionObserverEntry, otherwise proceed with
22
- * reading it from sticky cell
23
- */
24
- updateStickyShadows: (stickyRowHeight?: number | undefined) => void;
25
- dispose(): void;
26
- }
@@ -1,72 +0,0 @@
1
- import React from 'react';
2
- import { Node as PmNode } from 'prosemirror-model';
3
- import { EditorView } from 'prosemirror-view';
4
- import type { EditorContainerWidth } from '@atlaskit/editor-common/types';
5
- import { RowStickyState, StickyPluginState } from '../pm-plugins/sticky-headers';
6
- import type { GetEditorFeatureFlags } from '@atlaskit/editor-common/types';
7
- import { ColumnResizingPluginState, ShadowEvent } from '../types';
8
- import type { TableColumnOrdering } from '@atlaskit/adf-schema/steps';
9
- import type { TableOptions } from './types';
10
- import type { EventDispatcher } from '@atlaskit/editor-common/event-dispatcher';
11
- export interface ComponentProps {
12
- view: EditorView;
13
- getNode: () => PmNode;
14
- allowColumnResizing?: boolean;
15
- eventDispatcher: EventDispatcher;
16
- getPos: () => number;
17
- options?: TableOptions;
18
- contentDOM: (node: HTMLElement | null) => void;
19
- containerWidth: EditorContainerWidth;
20
- allowControls: boolean;
21
- isHeaderRowEnabled: boolean;
22
- isHeaderColumnEnabled: boolean;
23
- isMediaFullscreen?: boolean;
24
- tableActive: boolean;
25
- ordering: TableColumnOrdering;
26
- tableResizingPluginState?: ColumnResizingPluginState;
27
- getEditorFeatureFlags: GetEditorFeatureFlags;
28
- }
29
- interface TableState {
30
- scroll: number;
31
- tableContainerWidth: string;
32
- parentWidth?: number;
33
- isLoading: boolean;
34
- stickyHeader?: RowStickyState;
35
- [ShadowEvent.SHOW_BEFORE_SHADOW]: boolean;
36
- [ShadowEvent.SHOW_AFTER_SHADOW]: boolean;
37
- }
38
- declare class TableComponent extends React.Component<ComponentProps, TableState> {
39
- static displayName: string;
40
- state: TableState;
41
- private wrapper?;
42
- private table?;
43
- private node;
44
- private containerWidth?;
45
- private layoutSize?;
46
- private overflowShadowsObserver?;
47
- constructor(props: ComponentProps);
48
- componentDidMount(): void;
49
- componentWillUnmount(): void;
50
- componentDidUpdate(prevProps: ComponentProps): void;
51
- private updateShadows;
52
- private updateShadowState;
53
- onStickyState: (state: StickyPluginState) => void;
54
- prevTableState: any;
55
- render(): JSX.Element;
56
- private getMarginLeft;
57
- private handleScroll;
58
- private handleTableResizing;
59
- private scaleTable;
60
- private handleAutoSize;
61
- private handleWindowResize;
62
- private updateTableContainerWidth;
63
- private getParentNodeWidth;
64
- private updateParentWidth;
65
- private tableNodeLayoutSize;
66
- private scaleTableDebounced;
67
- private handleTableResizingDebounced;
68
- private handleScrollDebounced;
69
- private handleAutoSizeDebounced;
70
- private handleWindowResizeDebounced;
71
- }
72
- export default TableComponent;
@@ -1,9 +0,0 @@
1
- import { OverridableMock } from './OverridableMock';
2
- export declare class OverflowShadowsObserver extends OverridableMock {
3
- firstCell: HTMLElement | null;
4
- lastCell: HTMLElement | null;
5
- constructor(...inputs: any[]);
6
- observeCells: any;
7
- updateStickyShadows: any;
8
- dispose: any;
9
- }
@@ -1,9 +0,0 @@
1
- export declare abstract class OverridableMock {
2
- static mockOverrides: {
3
- [key: string]: any;
4
- };
5
- constructor(...inputs: any[]);
6
- getMock(key: string): any;
7
- static setMock(thisKey: string, value: any): void;
8
- static resetMocks(): void;
9
- }