@atlaskit/editor-plugin-table 7.16.11 → 7.16.13
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/.eslintrc.js +3 -3
- package/CHANGELOG.md +16 -0
- package/dist/cjs/commands/misc.js +3 -3
- package/dist/cjs/nodeviews/TableCell.js +10 -10
- package/dist/cjs/nodeviews/TableContainer.js +83 -27
- package/dist/cjs/nodeviews/TableResizer.js +40 -19
- package/dist/cjs/nodeviews/TableRow.js +23 -23
- package/dist/cjs/pm-plugins/table-resizing/plugin.js +3 -3
- package/dist/cjs/pm-plugins/table-resizing/utils/resize-state.js +4 -4
- package/dist/cjs/pm-plugins/table-resizing/utils/scale-table.js +3 -3
- package/dist/cjs/ui/FloatingContextualMenu/styles.js +1 -1
- package/dist/cjs/ui/FloatingDragMenu/styles.js +1 -1
- package/dist/cjs/ui/common-styles.js +13 -13
- package/dist/cjs/ui/ui-styles.js +25 -25
- package/dist/cjs/utils/guidelines.js +7 -4
- package/dist/cjs/utils/merged-cells.js +3 -3
- package/dist/cjs/utils/snapping.js +7 -8
- package/dist/es2019/commands/misc.js +3 -3
- package/dist/es2019/nodeviews/TableContainer.js +70 -9
- package/dist/es2019/nodeviews/TableResizer.js +42 -21
- package/dist/es2019/nodeviews/TableRow.js +21 -21
- package/dist/es2019/pm-plugins/table-resizing/plugin.js +3 -3
- package/dist/es2019/pm-plugins/table-resizing/utils/resize-state.js +4 -4
- package/dist/es2019/pm-plugins/table-resizing/utils/scale-table.js +3 -3
- package/dist/es2019/ui/FloatingContextualMenu/styles.js +47 -47
- package/dist/es2019/ui/FloatingDragMenu/styles.js +30 -30
- package/dist/es2019/ui/common-styles.js +802 -816
- package/dist/es2019/ui/ui-styles.js +665 -678
- package/dist/es2019/utils/guidelines.js +5 -2
- package/dist/es2019/utils/merged-cells.js +3 -3
- package/dist/es2019/utils/snapping.js +5 -6
- package/dist/esm/commands/misc.js +3 -3
- package/dist/esm/nodeviews/TableCell.js +10 -10
- package/dist/esm/nodeviews/TableContainer.js +85 -29
- package/dist/esm/nodeviews/TableResizer.js +42 -21
- package/dist/esm/nodeviews/TableRow.js +23 -23
- package/dist/esm/pm-plugins/table-resizing/plugin.js +3 -3
- package/dist/esm/pm-plugins/table-resizing/utils/resize-state.js +4 -4
- package/dist/esm/pm-plugins/table-resizing/utils/scale-table.js +3 -3
- package/dist/esm/ui/FloatingContextualMenu/styles.js +1 -1
- package/dist/esm/ui/FloatingDragMenu/styles.js +1 -1
- package/dist/esm/ui/common-styles.js +13 -13
- package/dist/esm/ui/ui-styles.js +25 -25
- package/dist/esm/utils/guidelines.js +6 -3
- package/dist/esm/utils/merged-cells.js +3 -3
- package/dist/esm/utils/snapping.js +6 -7
- package/dist/types/nodeviews/TableResizer.d.ts +2 -1
- package/dist/types/pm-plugins/decorations/utils/index.d.ts +1 -1
- package/dist/types/pm-plugins/drag-and-drop/utils/autoscrollers.d.ts +1 -1
- package/dist/types/pm-plugins/drag-and-drop/utils/getDragBehaviour.d.ts +1 -1
- package/dist/types/pm-plugins/table-resizing/utils/index.d.ts +1 -1
- package/dist/types/ui/ColumnResizeWidget/index.d.ts +1 -1
- package/dist/types/ui/FloatingAlignmentButtons/FloatingAlignmentButtons.d.ts +1 -1
- package/dist/types/ui/FloatingToolbarLabel/FloatingToolbarLabel.d.ts +1 -1
- package/dist/types/ui/TableFloatingColumnControls/ColumnDropTargets/ColumnDropTarget.d.ts +1 -1
- package/dist/types/ui/TableFloatingControls/CornerControls/index.d.ts +1 -1
- package/dist/types/ui/icons/DragHandleDisabledIcon.d.ts +1 -1
- package/dist/types/utils/guidelines.d.ts +2 -1
- package/dist/types/utils/snapping.d.ts +3 -2
- package/dist/types-ts4.5/nodeviews/TableResizer.d.ts +2 -1
- package/dist/types-ts4.5/pm-plugins/decorations/utils/index.d.ts +1 -1
- package/dist/types-ts4.5/pm-plugins/drag-and-drop/utils/autoscrollers.d.ts +1 -1
- package/dist/types-ts4.5/pm-plugins/drag-and-drop/utils/getDragBehaviour.d.ts +1 -1
- package/dist/types-ts4.5/pm-plugins/table-resizing/utils/index.d.ts +1 -1
- package/dist/types-ts4.5/ui/ColumnResizeWidget/index.d.ts +1 -1
- package/dist/types-ts4.5/ui/FloatingAlignmentButtons/FloatingAlignmentButtons.d.ts +1 -1
- package/dist/types-ts4.5/ui/FloatingToolbarLabel/FloatingToolbarLabel.d.ts +1 -1
- package/dist/types-ts4.5/ui/TableFloatingColumnControls/ColumnDropTargets/ColumnDropTarget.d.ts +1 -1
- package/dist/types-ts4.5/ui/TableFloatingControls/CornerControls/index.d.ts +1 -1
- package/dist/types-ts4.5/ui/icons/DragHandleDisabledIcon.d.ts +1 -1
- package/dist/types-ts4.5/utils/guidelines.d.ts +2 -1
- package/dist/types-ts4.5/utils/snapping.d.ts +3 -2
- package/docs/0-intro.tsx +9 -7
- package/package.json +3 -3
- package/report.api.md +67 -66
- package/src/commands/clear.ts +36 -44
- package/src/commands/collapse.ts +8 -8
- package/src/commands/column-resize.ts +412 -452
- package/src/commands/delete.ts +14 -14
- package/src/commands/display-mode.ts +10 -11
- package/src/commands/go-to-next-cell.ts +48 -54
- package/src/commands/hover.ts +210 -227
- package/src/commands/index.ts +35 -35
- package/src/commands/insert.ts +208 -235
- package/src/commands/misc.ts +655 -748
- package/src/commands/referentiality.ts +9 -9
- package/src/commands/selection.ts +433 -563
- package/src/commands/sort.ts +68 -86
- package/src/commands/split-cell.ts +14 -14
- package/src/commands/toggle.ts +69 -67
- package/src/commands-with-analytics.ts +570 -639
- package/src/create-plugin-config.ts +13 -13
- package/src/event-handlers.ts +513 -612
- package/src/handlers.ts +120 -133
- package/src/nodeviews/ExternalDropTargets.tsx +68 -73
- package/src/nodeviews/OverflowShadowsObserver.ts +148 -157
- package/src/nodeviews/TableCell.ts +47 -54
- package/src/nodeviews/TableComponent.tsx +1018 -1112
- package/src/nodeviews/TableComponentWithSharedState.tsx +91 -94
- package/src/nodeviews/TableContainer.tsx +384 -340
- package/src/nodeviews/TableNodeViewBase.ts +19 -24
- package/src/nodeviews/TableResizer.tsx +642 -653
- package/src/nodeviews/TableRow.ts +580 -629
- package/src/nodeviews/TableStickyScrollbar.ts +173 -190
- package/src/nodeviews/__mocks__/OverflowShadowsObserver.ts +8 -8
- package/src/nodeviews/__mocks__/OverridableMock.ts +14 -15
- package/src/nodeviews/table.tsx +345 -375
- package/src/nodeviews/types.ts +21 -24
- package/src/nodeviews/update-overflow-shadows.ts +8 -14
- package/src/plugin.tsx +578 -603
- package/src/pm-plugins/analytics/actions.ts +10 -12
- package/src/pm-plugins/analytics/commands.ts +31 -37
- package/src/pm-plugins/analytics/plugin-factory.ts +4 -2
- package/src/pm-plugins/analytics/plugin-key.ts +1 -3
- package/src/pm-plugins/analytics/plugin.ts +60 -70
- package/src/pm-plugins/analytics/reducer.ts +19 -19
- package/src/pm-plugins/analytics/types.ts +10 -10
- package/src/pm-plugins/analytics/utils/moved-event.ts +38 -38
- package/src/pm-plugins/decorations/plugin.ts +58 -77
- package/src/pm-plugins/decorations/utils/column-controls.ts +59 -71
- package/src/pm-plugins/decorations/utils/column-resizing.ts +50 -57
- package/src/pm-plugins/decorations/utils/compose-decorations.ts +6 -6
- package/src/pm-plugins/decorations/utils/index.ts +3 -6
- package/src/pm-plugins/decorations/utils/types.ts +7 -12
- package/src/pm-plugins/default-table-selection.ts +3 -3
- package/src/pm-plugins/drag-and-drop/actions.ts +25 -25
- package/src/pm-plugins/drag-and-drop/commands-with-analytics.ts +158 -190
- package/src/pm-plugins/drag-and-drop/commands.ts +154 -170
- package/src/pm-plugins/drag-and-drop/consts.ts +4 -5
- package/src/pm-plugins/drag-and-drop/plugin-factory.ts +23 -20
- package/src/pm-plugins/drag-and-drop/plugin-key.ts +1 -3
- package/src/pm-plugins/drag-and-drop/plugin.ts +329 -383
- package/src/pm-plugins/drag-and-drop/reducer.ts +30 -30
- package/src/pm-plugins/drag-and-drop/types.ts +8 -8
- package/src/pm-plugins/drag-and-drop/utils/autoscrollers.ts +38 -41
- package/src/pm-plugins/drag-and-drop/utils/getDragBehaviour.ts +3 -6
- package/src/pm-plugins/drag-and-drop/utils/monitor.ts +57 -70
- package/src/pm-plugins/keymap.ts +208 -220
- package/src/pm-plugins/main.ts +348 -400
- package/src/pm-plugins/plugin-factory.ts +32 -34
- package/src/pm-plugins/safari-delete-composition-text-issue-workaround.ts +83 -97
- package/src/pm-plugins/sticky-headers/commands.ts +2 -6
- package/src/pm-plugins/sticky-headers/plugin-key.ts +1 -3
- package/src/pm-plugins/sticky-headers/plugin-state.ts +41 -44
- package/src/pm-plugins/sticky-headers/plugin.ts +4 -4
- package/src/pm-plugins/sticky-headers/types.ts +8 -8
- package/src/pm-plugins/sticky-headers/util.ts +10 -10
- package/src/pm-plugins/table-analytics.ts +70 -72
- package/src/pm-plugins/table-local-id.ts +180 -184
- package/src/pm-plugins/table-resizing/commands.ts +72 -85
- package/src/pm-plugins/table-resizing/event-handlers.ts +298 -317
- package/src/pm-plugins/table-resizing/plugin-factory.ts +10 -10
- package/src/pm-plugins/table-resizing/plugin-key.ts +1 -3
- package/src/pm-plugins/table-resizing/plugin.ts +61 -68
- package/src/pm-plugins/table-resizing/reducer.ts +30 -33
- package/src/pm-plugins/table-resizing/utils/colgroup.ts +84 -84
- package/src/pm-plugins/table-resizing/utils/column-state.ts +78 -81
- package/src/pm-plugins/table-resizing/utils/content-width.ts +94 -114
- package/src/pm-plugins/table-resizing/utils/dom.ts +93 -110
- package/src/pm-plugins/table-resizing/utils/index.ts +29 -34
- package/src/pm-plugins/table-resizing/utils/misc.ts +94 -119
- package/src/pm-plugins/table-resizing/utils/resize-column.ts +93 -106
- package/src/pm-plugins/table-resizing/utils/resize-logic.ts +240 -257
- package/src/pm-plugins/table-resizing/utils/resize-state.ts +343 -372
- package/src/pm-plugins/table-resizing/utils/scale-table.ts +202 -207
- package/src/pm-plugins/table-resizing/utils/types.ts +17 -17
- package/src/pm-plugins/table-resizing/utils/unit-to-number.ts +1 -2
- package/src/pm-plugins/table-selection-keymap.ts +25 -51
- package/src/pm-plugins/table-width.ts +191 -204
- package/src/pm-plugins/view-mode-sort/index.ts +223 -227
- package/src/pm-plugins/view-mode-sort/plugin-key.ts +3 -2
- package/src/pm-plugins/view-mode-sort/types.ts +12 -12
- package/src/pm-plugins/view-mode-sort/utils.ts +108 -117
- package/src/reducer.ts +139 -155
- package/src/toolbar.tsx +815 -905
- package/src/transforms/column-width.ts +186 -213
- package/src/transforms/delete-columns.ts +208 -222
- package/src/transforms/delete-rows.ts +117 -121
- package/src/transforms/fix-tables.ts +190 -215
- package/src/transforms/merge.ts +263 -269
- package/src/transforms/replace-table.ts +27 -43
- package/src/transforms/split.ts +65 -75
- package/src/types.ts +421 -427
- package/src/ui/ColumnResizeWidget/index.tsx +40 -47
- package/src/ui/DragHandle/HandleIconComponent.tsx +9 -13
- package/src/ui/DragHandle/index.tsx +221 -250
- package/src/ui/DragPreview/index.tsx +35 -35
- package/src/ui/FloatingAlignmentButtons/FloatingAlignmentButtons.tsx +33 -41
- package/src/ui/FloatingContextualButton/FixedButton.tsx +154 -157
- package/src/ui/FloatingContextualButton/index.tsx +109 -115
- package/src/ui/FloatingContextualButton/styles.ts +43 -46
- package/src/ui/FloatingContextualMenu/ContextualMenu.tsx +634 -694
- package/src/ui/FloatingContextualMenu/index.tsx +83 -101
- package/src/ui/FloatingContextualMenu/styles.ts +57 -65
- package/src/ui/FloatingDeleteButton/DeleteButton.tsx +37 -37
- package/src/ui/FloatingDeleteButton/getPopUpOptions.ts +47 -57
- package/src/ui/FloatingDeleteButton/index.tsx +319 -350
- package/src/ui/FloatingDragMenu/DragMenu.tsx +555 -596
- package/src/ui/FloatingDragMenu/DropdownMenu.tsx +152 -162
- package/src/ui/FloatingDragMenu/index.tsx +88 -102
- package/src/ui/FloatingDragMenu/styles.ts +51 -54
- package/src/ui/FloatingInsertButton/InsertButton.tsx +204 -217
- package/src/ui/FloatingInsertButton/getPopupOptions.ts +100 -115
- package/src/ui/FloatingInsertButton/index.tsx +248 -292
- package/src/ui/FloatingToolbarLabel/FloatingToolbarLabel.tsx +24 -29
- package/src/ui/TableFloatingColumnControls/ColumnControls/index.tsx +308 -329
- package/src/ui/TableFloatingColumnControls/ColumnDropTargets/ColumnDropTarget.tsx +85 -94
- package/src/ui/TableFloatingColumnControls/ColumnDropTargets/index.tsx +46 -46
- package/src/ui/TableFloatingColumnControls/index.tsx +116 -136
- package/src/ui/TableFloatingControls/CornerControls/ClassicCornerControls.tsx +79 -91
- package/src/ui/TableFloatingControls/CornerControls/DragCornerControls.tsx +95 -102
- package/src/ui/TableFloatingControls/CornerControls/index.tsx +1 -4
- package/src/ui/TableFloatingControls/CornerControls/types.ts +8 -8
- package/src/ui/TableFloatingControls/FloatingControlsWithSelection.tsx +50 -50
- package/src/ui/TableFloatingControls/NumberColumn/index.tsx +111 -124
- package/src/ui/TableFloatingControls/RowControls/ClassicControls.tsx +86 -105
- package/src/ui/TableFloatingControls/RowControls/DragControls.tsx +305 -341
- package/src/ui/TableFloatingControls/RowDropTarget/index.tsx +72 -75
- package/src/ui/TableFloatingControls/index.tsx +191 -193
- package/src/ui/TableFullWidthLabel/index.tsx +20 -20
- package/src/ui/common-styles.ts +880 -912
- package/src/ui/consts.ts +29 -74
- package/src/ui/icons/AddColLeftIcon.tsx +33 -39
- package/src/ui/icons/AddColRightIcon.tsx +33 -39
- package/src/ui/icons/AddRowAboveIcon.tsx +16 -22
- package/src/ui/icons/AddRowBelowIcon.tsx +33 -39
- package/src/ui/icons/DisplayModeIcon.tsx +31 -31
- package/src/ui/icons/DragHandleDisabledIcon.tsx +19 -21
- package/src/ui/icons/DragHandleIcon.tsx +12 -12
- package/src/ui/icons/DragInMotionIcon.tsx +45 -52
- package/src/ui/icons/MergeCellsIcon.tsx +22 -28
- package/src/ui/icons/MinimisedHandle.tsx +9 -9
- package/src/ui/icons/SplitCellIcon.tsx +30 -36
- package/src/ui/ui-styles.ts +769 -798
- package/src/utils/alignment.ts +1 -1
- package/src/utils/analytics.ts +192 -208
- package/src/utils/collapse.ts +55 -64
- package/src/utils/column-controls.ts +237 -254
- package/src/utils/create.ts +30 -30
- package/src/utils/decoration.ts +482 -502
- package/src/utils/dom.ts +127 -134
- package/src/utils/drag-menu.ts +322 -373
- package/src/utils/get-allow-add-column-custom-step.ts +4 -5
- package/src/utils/guidelines.ts +16 -21
- package/src/utils/index.ts +68 -68
- package/src/utils/merged-cells.ts +245 -254
- package/src/utils/nodes.ts +91 -106
- package/src/utils/paste.ts +119 -135
- package/src/utils/row-controls.ts +199 -213
- package/src/utils/selection.ts +77 -87
- package/src/utils/snapping.ts +87 -100
- package/src/utils/table.ts +44 -44
- package/src/utils/transforms.ts +5 -5
- package/src/utils/update-plugin-state-decorations.ts +5 -9
|
@@ -6,7 +6,7 @@ export { growColumn, shrinkColumn, reduceSpace } from './resize-logic';
|
|
|
6
6
|
export { getResizeState, updateColgroup, getTotalWidth, evenAllColumnsWidths, bulkColumnsResize, areColumnsEven, adjustColumnsWidths, } from './resize-state';
|
|
7
7
|
export { getLayoutSize, getDefaultLayoutMaxWidth, pointsAtCell, currentColWidth, domCellAround, getTableMaxWidth, getTableElementWidth, getTableContainerElementWidth, } from './misc';
|
|
8
8
|
export { updateControls, isClickNear, getResizeCellPos } from './dom';
|
|
9
|
-
export { scale, scaleWithParent, scaleTable, previewScaleTable
|
|
9
|
+
export { scale, scaleWithParent, scaleTable, previewScaleTable } from './scale-table';
|
|
10
10
|
export type { ScaleOptions } from './scale-table';
|
|
11
11
|
export type { ResizeState, ResizeStateWithAnalytics } from './types';
|
|
12
12
|
export { resizeColumn, resizeColumnAndTable } from './resize-column';
|
|
@@ -5,5 +5,5 @@ type Props = {
|
|
|
5
5
|
endIndex: number;
|
|
6
6
|
includeTooltip?: boolean;
|
|
7
7
|
};
|
|
8
|
-
export declare const ColumnResizeWidget: ({ startIndex, endIndex, includeTooltip
|
|
8
|
+
export declare const ColumnResizeWidget: ({ startIndex, endIndex, includeTooltip }: Props) => jsx.JSX.Element;
|
|
9
9
|
export {};
|
|
@@ -5,5 +5,5 @@ type Props = {
|
|
|
5
5
|
alignmentButtons: FloatingToolbarItem<Command>[];
|
|
6
6
|
dispatchCommand: (command: Command) => void;
|
|
7
7
|
};
|
|
8
|
-
export declare const FloatingAlignmentButtons: ({ alignmentButtons, dispatchCommand
|
|
8
|
+
export declare const FloatingAlignmentButtons: ({ alignmentButtons, dispatchCommand }: Props) => jsx.JSX.Element;
|
|
9
9
|
export {};
|
|
@@ -6,4 +6,4 @@ export interface Props {
|
|
|
6
6
|
height?: number;
|
|
7
7
|
marginTop?: number;
|
|
8
8
|
}
|
|
9
|
-
export declare const ColumnDropTarget: ({ index, localId, width, height, marginTop
|
|
9
|
+
export declare const ColumnDropTarget: ({ index, localId, width, height, marginTop }: Props) => JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { CornerControls } from './ClassicCornerControls';
|
|
2
|
-
export { DragCornerControls, DragCornerControlsWithSelection
|
|
2
|
+
export { DragCornerControls, DragCornerControlsWithSelection } from './DragCornerControls';
|
|
@@ -2,5 +2,5 @@ import React from 'react';
|
|
|
2
2
|
interface DragHandleDisabledIconProps {
|
|
3
3
|
style?: React.CSSProperties;
|
|
4
4
|
}
|
|
5
|
-
export declare const DragHandleDisabledIcon: ({ style
|
|
5
|
+
export declare const DragHandleDisabledIcon: ({ style }: DragHandleDisabledIconProps) => JSX.Element;
|
|
6
6
|
export {};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { GuidelineConfig } from '@atlaskit/editor-common/guideline';
|
|
2
2
|
import type { GuidelineExcludeConfig } from './snapping';
|
|
3
3
|
export declare const defaultGuidelines: GuidelineConfig[];
|
|
4
|
-
export declare const
|
|
4
|
+
export declare const PRESERVE_TABLE_GUIDELINES_LENGTH_OFFSET = -1;
|
|
5
|
+
export declare const defaultGuidelinesForPreserveTable: (lengthOffset: number, editorContainerWidth: number, exclude?: GuidelineExcludeConfig) => GuidelineConfig[];
|
|
@@ -6,9 +6,10 @@ export type GuidelineExcludeConfig = {
|
|
|
6
6
|
};
|
|
7
7
|
export declare const calculateDefaultTablePreserveSnappings: (lengthOffset?: number, editorContainerWith?: number, exclude?: GuidelineExcludeConfig) => number[];
|
|
8
8
|
export declare const defaultSnappingWidths: number[];
|
|
9
|
-
export declare const
|
|
9
|
+
export declare const PRESERVE_TABLE_SNAPPING_LENGTH_OFFSET = 0;
|
|
10
|
+
export declare const defaultTablePreserveSnappingWidths: (lengthOffset: number, editorContainerWidth: number, exclude?: GuidelineExcludeConfig) => number[];
|
|
10
11
|
/**
|
|
11
|
-
* Returns keys of guidelines that are closest to the table and
|
|
12
|
+
* Returns keys of guidelines that are closest to the table and within the snapGap
|
|
12
13
|
*/
|
|
13
14
|
export declare const findClosestSnap: (currentWidth: number, snapWidths: number[], guidelines: GuidelineConfig[], snapGap?: number, tolerance?: number) => {
|
|
14
15
|
gap: number;
|
|
@@ -22,10 +22,11 @@ interface TableResizerProps {
|
|
|
22
22
|
isTableScalingEnabled?: boolean;
|
|
23
23
|
isTableAlignmentEnabled?: boolean;
|
|
24
24
|
isWholeTableInDanger?: boolean;
|
|
25
|
+
isFullWidthModeEnabled?: boolean;
|
|
25
26
|
}
|
|
26
27
|
export interface TableResizerImprovementProps extends TableResizerProps {
|
|
27
28
|
onResizeStop?: () => void;
|
|
28
29
|
onResizeStart?: () => void;
|
|
29
30
|
}
|
|
30
|
-
export declare const TableResizer: ({ children, width, maxWidth, containerWidth, lineLength, updateWidth, onResizeStop, onResizeStart, editorView, getPos, node, tableRef, displayGuideline, attachAnalyticsEvent, displayGapCursor, isTableScalingEnabled, isTableAlignmentEnabled, isWholeTableInDanger, pluginInjectionApi, }: PropsWithChildren<TableResizerImprovementProps>) => JSX.Element;
|
|
31
|
+
export declare const TableResizer: ({ children, width, maxWidth, containerWidth, lineLength, updateWidth, onResizeStop, onResizeStart, editorView, getPos, node, tableRef, displayGuideline, attachAnalyticsEvent, displayGapCursor, isTableScalingEnabled, isTableAlignmentEnabled, isWholeTableInDanger, pluginInjectionApi, isFullWidthModeEnabled, }: PropsWithChildren<TableResizerImprovementProps>) => JSX.Element;
|
|
31
32
|
export {};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { buildColumnControlsDecorations, maybeUpdateColumnControlsSelectedDecoration, } from './column-controls';
|
|
2
|
-
export { buildColumnResizingDecorations, clearColumnResizingDecorations
|
|
2
|
+
export { buildColumnResizingDecorations, clearColumnResizingDecorations } from './column-resizing';
|
|
3
3
|
export { composeDecorations } from './compose-decorations';
|
|
@@ -3,5 +3,5 @@ type AutoScrollerFactory = {
|
|
|
3
3
|
tableWrapper: HTMLElement;
|
|
4
4
|
getNode: () => PmNode;
|
|
5
5
|
};
|
|
6
|
-
export declare const autoScrollerFactory: ({ tableWrapper, getNode
|
|
6
|
+
export declare const autoScrollerFactory: ({ tableWrapper, getNode }: AutoScrollerFactory) => import("@atlaskit/pragmatic-drag-and-drop/types").CleanupFn[];
|
|
7
7
|
export {};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { Input } from '@atlaskit/pragmatic-drag-and-drop/types';
|
|
2
2
|
import type { DraggableBehaviour } from '../../../types';
|
|
3
|
-
export declare const getDragBehaviour: ({ altKey, ctrlKey
|
|
3
|
+
export declare const getDragBehaviour: ({ altKey, ctrlKey }: Input) => DraggableBehaviour;
|
|
@@ -6,7 +6,7 @@ export { growColumn, shrinkColumn, reduceSpace } from './resize-logic';
|
|
|
6
6
|
export { getResizeState, updateColgroup, getTotalWidth, evenAllColumnsWidths, bulkColumnsResize, areColumnsEven, adjustColumnsWidths, } from './resize-state';
|
|
7
7
|
export { getLayoutSize, getDefaultLayoutMaxWidth, pointsAtCell, currentColWidth, domCellAround, getTableMaxWidth, getTableElementWidth, getTableContainerElementWidth, } from './misc';
|
|
8
8
|
export { updateControls, isClickNear, getResizeCellPos } from './dom';
|
|
9
|
-
export { scale, scaleWithParent, scaleTable, previewScaleTable
|
|
9
|
+
export { scale, scaleWithParent, scaleTable, previewScaleTable } from './scale-table';
|
|
10
10
|
export type { ScaleOptions } from './scale-table';
|
|
11
11
|
export type { ResizeState, ResizeStateWithAnalytics } from './types';
|
|
12
12
|
export { resizeColumn, resizeColumnAndTable } from './resize-column';
|
|
@@ -5,5 +5,5 @@ type Props = {
|
|
|
5
5
|
endIndex: number;
|
|
6
6
|
includeTooltip?: boolean;
|
|
7
7
|
};
|
|
8
|
-
export declare const ColumnResizeWidget: ({ startIndex, endIndex, includeTooltip
|
|
8
|
+
export declare const ColumnResizeWidget: ({ startIndex, endIndex, includeTooltip }: Props) => jsx.JSX.Element;
|
|
9
9
|
export {};
|
|
@@ -5,5 +5,5 @@ type Props = {
|
|
|
5
5
|
alignmentButtons: FloatingToolbarItem<Command>[];
|
|
6
6
|
dispatchCommand: (command: Command) => void;
|
|
7
7
|
};
|
|
8
|
-
export declare const FloatingAlignmentButtons: ({ alignmentButtons, dispatchCommand
|
|
8
|
+
export declare const FloatingAlignmentButtons: ({ alignmentButtons, dispatchCommand }: Props) => jsx.JSX.Element;
|
|
9
9
|
export {};
|
package/dist/types-ts4.5/ui/TableFloatingColumnControls/ColumnDropTargets/ColumnDropTarget.d.ts
CHANGED
|
@@ -6,4 +6,4 @@ export interface Props {
|
|
|
6
6
|
height?: number;
|
|
7
7
|
marginTop?: number;
|
|
8
8
|
}
|
|
9
|
-
export declare const ColumnDropTarget: ({ index, localId, width, height, marginTop
|
|
9
|
+
export declare const ColumnDropTarget: ({ index, localId, width, height, marginTop }: Props) => JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { CornerControls } from './ClassicCornerControls';
|
|
2
|
-
export { DragCornerControls, DragCornerControlsWithSelection
|
|
2
|
+
export { DragCornerControls, DragCornerControlsWithSelection } from './DragCornerControls';
|
|
@@ -2,5 +2,5 @@ import React from 'react';
|
|
|
2
2
|
interface DragHandleDisabledIconProps {
|
|
3
3
|
style?: React.CSSProperties;
|
|
4
4
|
}
|
|
5
|
-
export declare const DragHandleDisabledIcon: ({ style
|
|
5
|
+
export declare const DragHandleDisabledIcon: ({ style }: DragHandleDisabledIconProps) => JSX.Element;
|
|
6
6
|
export {};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { GuidelineConfig } from '@atlaskit/editor-common/guideline';
|
|
2
2
|
import type { GuidelineExcludeConfig } from './snapping';
|
|
3
3
|
export declare const defaultGuidelines: GuidelineConfig[];
|
|
4
|
-
export declare const
|
|
4
|
+
export declare const PRESERVE_TABLE_GUIDELINES_LENGTH_OFFSET = -1;
|
|
5
|
+
export declare const defaultGuidelinesForPreserveTable: (lengthOffset: number, editorContainerWidth: number, exclude?: GuidelineExcludeConfig) => GuidelineConfig[];
|
|
@@ -6,9 +6,10 @@ export type GuidelineExcludeConfig = {
|
|
|
6
6
|
};
|
|
7
7
|
export declare const calculateDefaultTablePreserveSnappings: (lengthOffset?: number, editorContainerWith?: number, exclude?: GuidelineExcludeConfig) => number[];
|
|
8
8
|
export declare const defaultSnappingWidths: number[];
|
|
9
|
-
export declare const
|
|
9
|
+
export declare const PRESERVE_TABLE_SNAPPING_LENGTH_OFFSET = 0;
|
|
10
|
+
export declare const defaultTablePreserveSnappingWidths: (lengthOffset: number, editorContainerWidth: number, exclude?: GuidelineExcludeConfig) => number[];
|
|
10
11
|
/**
|
|
11
|
-
* Returns keys of guidelines that are closest to the table and
|
|
12
|
+
* Returns keys of guidelines that are closest to the table and within the snapGap
|
|
12
13
|
*/
|
|
13
14
|
export declare const findClosestSnap: (currentWidth: number, snapWidths: number[], guidelines: GuidelineConfig[], snapGap?: number, tolerance?: number) => {
|
|
14
15
|
gap: number;
|
package/docs/0-intro.tsx
CHANGED
|
@@ -8,16 +8,18 @@ import { token } from '@atlaskit/tokens';
|
|
|
8
8
|
export default md`
|
|
9
9
|
|
|
10
10
|
${createEditorUseOnlyNotice('Editor Plugin Table', [
|
|
11
|
-
|
|
11
|
+
{ name: 'Editor Core', link: '/packages/editor/editor-core' },
|
|
12
12
|
])}
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
${
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
15
|
+
${
|
|
16
|
+
(
|
|
17
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
|
|
18
|
+
<div style={{ marginTop: token('space.100', '8px') }}>
|
|
19
|
+
<AtlassianInternalWarning />
|
|
20
|
+
</div>
|
|
21
|
+
)
|
|
22
|
+
}
|
|
21
23
|
|
|
22
24
|
This package includes the table plugin used by \`@atlaskit/editor-core\`.
|
|
23
25
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-table",
|
|
3
|
-
"version": "7.16.
|
|
3
|
+
"version": "7.16.13",
|
|
4
4
|
"description": "Table plugin for the @atlaskit/editor",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"@atlaskit/adf-schema": "^36.10.7",
|
|
32
32
|
"@atlaskit/button": "^17.17.0",
|
|
33
33
|
"@atlaskit/custom-steps": "^0.2.0",
|
|
34
|
-
"@atlaskit/editor-common": "^81.
|
|
34
|
+
"@atlaskit/editor-common": "^81.2.0",
|
|
35
35
|
"@atlaskit/editor-palette": "1.6.0",
|
|
36
36
|
"@atlaskit/editor-plugin-accessibility-utils": "^1.1.0",
|
|
37
37
|
"@atlaskit/editor-plugin-analytics": "^1.2.0",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"@atlaskit/pragmatic-drag-and-drop": "^1.1.0",
|
|
50
50
|
"@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^1.3.0",
|
|
51
51
|
"@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.0.0",
|
|
52
|
-
"@atlaskit/primitives": "^6.
|
|
52
|
+
"@atlaskit/primitives": "^6.4.0",
|
|
53
53
|
"@atlaskit/theme": "^12.8.0",
|
|
54
54
|
"@atlaskit/toggle": "^13.1.0",
|
|
55
55
|
"@atlaskit/tokens": "^1.49.0",
|
package/report.api.md
CHANGED
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
## API Report File for "@atlaskit/editor-plugin-table"
|
|
4
4
|
|
|
5
|
-
> Do not edit this file. This report is auto-generated using
|
|
5
|
+
> Do not edit this file. This report is auto-generated using
|
|
6
|
+
> [API Extractor](https://api-extractor.com/).
|
|
6
7
|
> [Learn more about API reports](https://hello.atlassian.net/wiki/spaces/UR/pages/1825484529/Package+API+Reports)
|
|
7
8
|
|
|
8
9
|
### Table of contents
|
|
@@ -34,76 +35,76 @@ type PermittedLayoutsDescriptor = 'all' | TableLayout[];
|
|
|
34
35
|
|
|
35
36
|
// @public (undocumented)
|
|
36
37
|
interface PluginConfig {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
38
|
+
// (undocumented)
|
|
39
|
+
advanced?: boolean;
|
|
40
|
+
// (undocumented)
|
|
41
|
+
allowAddColumnWithCustomStep?: boolean;
|
|
42
|
+
// (undocumented)
|
|
43
|
+
allowBackgroundColor?: boolean;
|
|
44
|
+
// (undocumented)
|
|
45
|
+
allowCellOptionsInFloatingToolbar?: boolean;
|
|
46
|
+
// (undocumented)
|
|
47
|
+
allowCollapse?: boolean;
|
|
48
|
+
// (undocumented)
|
|
49
|
+
allowColumnResizing?: boolean;
|
|
50
|
+
// (undocumented)
|
|
51
|
+
allowColumnSorting?: boolean;
|
|
52
|
+
// (undocumented)
|
|
53
|
+
allowControls?: boolean;
|
|
54
|
+
// (undocumented)
|
|
55
|
+
allowDistributeColumns?: boolean;
|
|
56
|
+
// (undocumented)
|
|
57
|
+
allowHeaderColumn?: boolean;
|
|
58
|
+
// (undocumented)
|
|
59
|
+
allowHeaderRow?: boolean;
|
|
60
|
+
// (undocumented)
|
|
61
|
+
allowMergeCells?: boolean;
|
|
62
|
+
// (undocumented)
|
|
63
|
+
allowNumberColumn?: boolean;
|
|
64
|
+
// (undocumented)
|
|
65
|
+
isHeaderRowRequired?: boolean;
|
|
66
|
+
// (undocumented)
|
|
67
|
+
permittedLayouts?: PermittedLayoutsDescriptor;
|
|
68
|
+
// (undocumented)
|
|
69
|
+
stickyHeaders?: boolean;
|
|
69
70
|
}
|
|
70
71
|
|
|
71
72
|
// @public (undocumented)
|
|
72
73
|
export type TablePlugin = NextEditorPlugin<
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
74
|
+
'table',
|
|
75
|
+
{
|
|
76
|
+
pluginConfiguration: TablePluginOptions | undefined;
|
|
77
|
+
actions: {
|
|
78
|
+
insertTable: InsertTableAction;
|
|
79
|
+
};
|
|
80
|
+
dependencies: [
|
|
81
|
+
AnalyticsPlugin,
|
|
82
|
+
ContentInsertionPlugin,
|
|
83
|
+
WidthPlugin,
|
|
84
|
+
GuidelinePlugin,
|
|
85
|
+
SelectionPlugin,
|
|
86
|
+
];
|
|
87
|
+
}
|
|
87
88
|
>;
|
|
88
89
|
|
|
89
90
|
// @public (undocumented)
|
|
90
91
|
interface TablePluginOptions {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
92
|
+
// (undocumented)
|
|
93
|
+
allowContextualMenu?: boolean;
|
|
94
|
+
// (undocumented)
|
|
95
|
+
breakoutEnabled?: boolean;
|
|
96
|
+
// (undocumented)
|
|
97
|
+
dragAndDropEnabled?: boolean;
|
|
98
|
+
// (undocumented)
|
|
99
|
+
fullWidthEnabled?: boolean;
|
|
100
|
+
// (undocumented)
|
|
101
|
+
getEditorFeatureFlags?: GetEditorFeatureFlags;
|
|
102
|
+
// (undocumented)
|
|
103
|
+
tableOptions: PluginConfig;
|
|
104
|
+
// (undocumented)
|
|
105
|
+
tableResizingEnabled?: boolean;
|
|
106
|
+
// (undocumented)
|
|
107
|
+
wasFullWidthEnabled?: boolean;
|
|
107
108
|
}
|
|
108
109
|
|
|
109
110
|
// @public
|
|
@@ -120,9 +121,9 @@ export const tablesPlugin: TablePlugin;
|
|
|
120
121
|
|
|
121
122
|
```json
|
|
122
123
|
{
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
124
|
+
"react": "^16.8.0",
|
|
125
|
+
"react-dom": "^16.8.0",
|
|
126
|
+
"react-intl-next": "npm:react-intl@^5.18.1"
|
|
126
127
|
}
|
|
127
128
|
```
|
|
128
129
|
|
package/src/commands/clear.ts
CHANGED
|
@@ -2,58 +2,50 @@
|
|
|
2
2
|
import type { Command } from '@atlaskit/editor-common/types';
|
|
3
3
|
import { Selection } from '@atlaskit/editor-prosemirror/state';
|
|
4
4
|
import type { CellSelection } from '@atlaskit/editor-tables/cell-selection';
|
|
5
|
-
import {
|
|
6
|
-
emptyCell,
|
|
7
|
-
findCellClosestToPos,
|
|
8
|
-
isSelectionType,
|
|
9
|
-
} from '@atlaskit/editor-tables/utils';
|
|
5
|
+
import { emptyCell, findCellClosestToPos, isSelectionType } from '@atlaskit/editor-tables/utils';
|
|
10
6
|
|
|
11
7
|
// #endregion
|
|
12
8
|
|
|
13
9
|
// #region Commands
|
|
14
10
|
export const clearMultipleCells =
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
11
|
+
(targetCellPosition?: number): Command =>
|
|
12
|
+
(state, dispatch) => {
|
|
13
|
+
let cursorPos: number | undefined;
|
|
14
|
+
let { tr } = state;
|
|
19
15
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
tr.setSelection(textSelection);
|
|
39
|
-
}
|
|
16
|
+
if (isSelectionType(tr.selection, 'cell')) {
|
|
17
|
+
const selection = tr.selection as any as CellSelection;
|
|
18
|
+
selection.forEachCell((_node, pos) => {
|
|
19
|
+
const $pos = tr.doc.resolve(tr.mapping.map(pos + 1));
|
|
20
|
+
tr = emptyCell(findCellClosestToPos($pos)!, state.schema)(tr);
|
|
21
|
+
});
|
|
22
|
+
cursorPos = selection.$headCell.pos;
|
|
23
|
+
} else if (targetCellPosition) {
|
|
24
|
+
const cell = findCellClosestToPos(tr.doc.resolve(targetCellPosition + 1))!;
|
|
25
|
+
tr = emptyCell(cell, state.schema)(tr);
|
|
26
|
+
cursorPos = cell.pos;
|
|
27
|
+
}
|
|
28
|
+
if (tr.docChanged && cursorPos) {
|
|
29
|
+
const $pos = tr.doc.resolve(tr.mapping.map(cursorPos));
|
|
30
|
+
const textSelection = Selection.findFrom($pos, 1, true);
|
|
31
|
+
if (textSelection) {
|
|
32
|
+
tr.setSelection(textSelection);
|
|
33
|
+
}
|
|
40
34
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
35
|
+
if (dispatch) {
|
|
36
|
+
dispatch(tr);
|
|
37
|
+
}
|
|
38
|
+
return true;
|
|
39
|
+
}
|
|
40
|
+
return false;
|
|
41
|
+
};
|
|
48
42
|
|
|
49
43
|
export const clearSelection: Command = (state, dispatch) => {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
}
|
|
57
|
-
return true;
|
|
44
|
+
if (dispatch) {
|
|
45
|
+
dispatch(
|
|
46
|
+
state.tr.setSelection(Selection.near(state.selection.$from)).setMeta('addToHistory', false),
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
return true;
|
|
58
50
|
};
|
|
59
51
|
// #endregion
|
package/src/commands/collapse.ts
CHANGED
|
@@ -3,15 +3,15 @@ import type { Command } from '@atlaskit/editor-common/types';
|
|
|
3
3
|
import { collapseSelectedTable } from '../utils/collapse';
|
|
4
4
|
|
|
5
5
|
export const wrapTableInExpand: Command = (state, dispatch) => {
|
|
6
|
-
|
|
6
|
+
const collapseTr = collapseSelectedTable(state.tr);
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
if (!collapseTr) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
if (dispatch) {
|
|
13
|
+
dispatch(collapseTr);
|
|
14
|
+
}
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
return true;
|
|
17
17
|
};
|