@atlaskit/editor-plugin-table 2.10.8 → 2.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/dist/cjs/plugins/table/commands/misc.js +58 -5
- package/dist/cjs/plugins/table/event-handlers.js +3 -6
- package/dist/cjs/plugins/table/index.js +3 -2
- package/dist/cjs/plugins/table/nodeviews/TableResizer.js +13 -19
- package/dist/cjs/plugins/table/pm-plugins/decorations/utils/column-resizing.js +18 -5
- package/dist/cjs/plugins/table/pm-plugins/decorations/utils/index.js +6 -0
- package/dist/cjs/plugins/table/pm-plugins/main.js +7 -3
- package/dist/cjs/plugins/table/pm-plugins/table-resizing/event-handlers.js +5 -0
- package/dist/cjs/plugins/table/pm-plugins/table-resizing/utils/scale-table.js +2 -0
- package/dist/cjs/plugins/table/reducer.js +26 -2
- package/dist/cjs/plugins/table/types.js +1 -0
- package/dist/cjs/plugins/table/ui/ColumnResizeWidget/index.js +44 -0
- package/dist/cjs/plugins/table/ui/messages.js +5 -0
- package/dist/cjs/plugins/table/utils/decoration.js +17 -4
- package/dist/es2019/plugins/table/commands/misc.js +49 -5
- package/dist/es2019/plugins/table/event-handlers.js +3 -6
- package/dist/es2019/plugins/table/index.js +3 -2
- package/dist/es2019/plugins/table/nodeviews/TableResizer.js +14 -17
- package/dist/es2019/plugins/table/pm-plugins/decorations/utils/column-resizing.js +12 -2
- package/dist/es2019/plugins/table/pm-plugins/decorations/utils/index.js +1 -1
- package/dist/es2019/plugins/table/pm-plugins/main.js +6 -3
- package/dist/es2019/plugins/table/pm-plugins/table-resizing/event-handlers.js +5 -0
- package/dist/es2019/plugins/table/pm-plugins/table-resizing/utils/scale-table.js +2 -0
- package/dist/es2019/plugins/table/reducer.js +29 -2
- package/dist/es2019/plugins/table/types.js +1 -0
- package/dist/es2019/plugins/table/ui/ColumnResizeWidget/index.js +35 -0
- package/dist/es2019/plugins/table/ui/messages.js +5 -0
- package/dist/es2019/plugins/table/utils/decoration.js +16 -5
- package/dist/esm/plugins/table/commands/misc.js +56 -5
- package/dist/esm/plugins/table/event-handlers.js +3 -6
- package/dist/esm/plugins/table/index.js +3 -2
- package/dist/esm/plugins/table/nodeviews/TableResizer.js +13 -19
- package/dist/esm/plugins/table/pm-plugins/decorations/utils/column-resizing.js +15 -3
- package/dist/esm/plugins/table/pm-plugins/decorations/utils/index.js +1 -1
- package/dist/esm/plugins/table/pm-plugins/main.js +8 -4
- package/dist/esm/plugins/table/pm-plugins/table-resizing/event-handlers.js +5 -0
- package/dist/esm/plugins/table/pm-plugins/table-resizing/utils/scale-table.js +2 -0
- package/dist/esm/plugins/table/reducer.js +26 -2
- package/dist/esm/plugins/table/types.js +1 -0
- package/dist/esm/plugins/table/ui/ColumnResizeWidget/index.js +35 -0
- package/dist/esm/plugins/table/ui/messages.js +5 -0
- package/dist/esm/plugins/table/utils/decoration.js +17 -4
- package/dist/types/plugins/table/commands/misc.d.ts +8 -6
- package/dist/types/plugins/table/event-handlers.d.ts +3 -3
- package/dist/types/plugins/table/pm-plugins/decorations/utils/column-resizing.d.ts +4 -2
- package/dist/types/plugins/table/pm-plugins/decorations/utils/index.d.ts +1 -1
- package/dist/types/plugins/table/pm-plugins/main.d.ts +2 -1
- package/dist/types/plugins/table/pm-plugins/table-resizing/plugin.d.ts +2 -2
- package/dist/types/plugins/table/pm-plugins/table-resizing/utils/scale-table.d.ts +3 -3
- package/dist/types/plugins/table/reducer.d.ts +1 -1
- package/dist/types/plugins/table/types.d.ts +18 -0
- package/dist/types/plugins/table/ui/ColumnResizeWidget/index.d.ts +9 -0
- package/dist/types/plugins/table/ui/messages.d.ts +5 -0
- package/dist/types/plugins/table/utils/decoration.d.ts +2 -1
- package/dist/types-ts4.5/plugins/table/commands/misc.d.ts +8 -6
- package/dist/types-ts4.5/plugins/table/event-handlers.d.ts +3 -3
- package/dist/types-ts4.5/plugins/table/pm-plugins/decorations/utils/column-resizing.d.ts +4 -2
- package/dist/types-ts4.5/plugins/table/pm-plugins/decorations/utils/index.d.ts +1 -1
- package/dist/types-ts4.5/plugins/table/pm-plugins/main.d.ts +2 -1
- package/dist/types-ts4.5/plugins/table/pm-plugins/table-resizing/plugin.d.ts +2 -2
- package/dist/types-ts4.5/plugins/table/pm-plugins/table-resizing/utils/scale-table.d.ts +3 -3
- package/dist/types-ts4.5/plugins/table/reducer.d.ts +1 -1
- package/dist/types-ts4.5/plugins/table/types.d.ts +18 -0
- package/dist/types-ts4.5/plugins/table/ui/ColumnResizeWidget/index.d.ts +9 -0
- package/dist/types-ts4.5/plugins/table/ui/messages.d.ts +5 -0
- package/dist/types-ts4.5/plugins/table/utils/decoration.d.ts +2 -1
- package/package.json +2 -2
- package/src/__tests__/unit/event-handlers.ts +1 -1
- package/src/__tests__/unit/nodeviews/TableContainer.tsx +17 -8
- package/src/__tests__/unit/pm-plugins/decorations/column-resizing.ts +2 -0
- package/src/plugins/table/commands/misc.ts +84 -7
- package/src/plugins/table/event-handlers.ts +11 -16
- package/src/plugins/table/index.tsx +2 -0
- package/src/plugins/table/nodeviews/TableResizer.tsx +12 -20
- package/src/plugins/table/pm-plugins/decorations/utils/column-resizing.ts +34 -7
- package/src/plugins/table/pm-plugins/decorations/utils/index.ts +4 -1
- package/src/plugins/table/pm-plugins/main.ts +7 -1
- package/src/plugins/table/pm-plugins/table-resizing/event-handlers.ts +5 -0
- package/src/plugins/table/pm-plugins/table-resizing/plugin.ts +3 -5
- package/src/plugins/table/pm-plugins/table-resizing/utils/scale-table.ts +5 -3
- package/src/plugins/table/reducer.ts +51 -3
- package/src/plugins/table/types.ts +19 -0
- package/src/plugins/table/ui/ColumnResizeWidget/index.tsx +53 -0
- package/src/plugins/table/ui/messages.ts +5 -0
- package/src/plugins/table/utils/decoration.ts +27 -5
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
import { createElement } from 'react';
|
|
2
|
+
|
|
3
|
+
import ReactDOM from 'react-dom';
|
|
4
|
+
import { RawIntlProvider } from 'react-intl-next';
|
|
5
|
+
import type { IntlShape } from 'react-intl-next';
|
|
6
|
+
|
|
1
7
|
import type { CellAttributes } from '@atlaskit/adf-schema';
|
|
2
8
|
import { nonNullable } from '@atlaskit/editor-common/utils';
|
|
3
9
|
import type { Node as PmNode } from '@atlaskit/editor-prosemirror/model';
|
|
@@ -19,6 +25,7 @@ import {
|
|
|
19
25
|
|
|
20
26
|
import type { Cell, CellColumnPositioning } from '../types';
|
|
21
27
|
import { TableCssClassName as ClassName, TableDecorations } from '../types';
|
|
28
|
+
import { ColumnResizeWidget } from '../ui/ColumnResizeWidget';
|
|
22
29
|
|
|
23
30
|
const filterDecorationByKey = (
|
|
24
31
|
key: TableDecorations,
|
|
@@ -238,7 +245,6 @@ export const updateDecorations = (
|
|
|
238
245
|
): DecorationSet => {
|
|
239
246
|
const filteredDecorations = filterDecorationByKey(key, decorationSet);
|
|
240
247
|
const decorationSetFiltered = decorationSet.remove(filteredDecorations);
|
|
241
|
-
|
|
242
248
|
return decorationSetFiltered.add(node, decorations);
|
|
243
249
|
};
|
|
244
250
|
|
|
@@ -327,6 +333,8 @@ export const createResizeHandleDecoration = (
|
|
|
327
333
|
tr: Transaction | ReadonlyTransaction,
|
|
328
334
|
rowIndexTarget: number,
|
|
329
335
|
columnEndIndexTarget: Omit<CellColumnPositioning, 'left'>,
|
|
336
|
+
includeTooltip: boolean = false,
|
|
337
|
+
getIntl: () => IntlShape,
|
|
330
338
|
): [Decoration[], Decoration[]] => {
|
|
331
339
|
const emptyResult: [Decoration[], Decoration[]] = [[], []];
|
|
332
340
|
const table = findTable(tr.selection);
|
|
@@ -351,13 +359,27 @@ export const createResizeHandleDecoration = (
|
|
|
351
359
|
position,
|
|
352
360
|
() => {
|
|
353
361
|
const element = document.createElement('div');
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
362
|
+
ReactDOM.render(
|
|
363
|
+
createElement(
|
|
364
|
+
RawIntlProvider,
|
|
365
|
+
{ value: getIntl() },
|
|
366
|
+
createElement(ColumnResizeWidget, {
|
|
367
|
+
startIndex: cellColumnPositioning.left,
|
|
368
|
+
endIndex: cellColumnPositioning.right,
|
|
369
|
+
includeTooltip,
|
|
370
|
+
}),
|
|
371
|
+
),
|
|
372
|
+
element,
|
|
373
|
+
);
|
|
357
374
|
return element;
|
|
358
375
|
},
|
|
359
376
|
{
|
|
360
|
-
key: `${
|
|
377
|
+
key: `${
|
|
378
|
+
TableDecorations.COLUMN_RESIZING_HANDLE_WIDGET
|
|
379
|
+
}_${rowIndex}_${columnIndex}_${includeTooltip ? 'with' : 'no'}-tooltip`,
|
|
380
|
+
destroy: (node) => {
|
|
381
|
+
ReactDOM.unmountComponentAtNode(node as HTMLDivElement);
|
|
382
|
+
},
|
|
361
383
|
},
|
|
362
384
|
);
|
|
363
385
|
};
|