@atlaskit/editor-plugin-table 22.4.8 → 22.4.9
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 +10 -0
- package/dist/cjs/pm-plugins/commands/split-cell.js +18 -1
- package/dist/cjs/pm-plugins/transforms/merge.js +5 -2
- package/dist/cjs/ui/FloatingContextualMenu/CellMenuPopup.js +1 -0
- package/dist/cjs/ui/FloatingDragMenu/index.js +7 -2
- package/dist/cjs/ui/TableMenu/cell/getCellMenuComponents.js +2 -9
- package/dist/cjs/ui/TableMenu/cell/items/MergeCellsItem.js +12 -0
- package/dist/cjs/ui/TableMenu/cell/items/SplitCellItem.js +12 -0
- package/dist/cjs/ui/TableMenu/cell/keys.js +2 -2
- package/dist/cjs/ui/TableMenu/column/getColumnMenuComponents.js +4 -11
- package/dist/cjs/ui/TableMenu/column/items/ColumnBackgroundSection.js +25 -0
- package/dist/cjs/ui/TableMenu/column/items/ColumnToggleSection.js +24 -0
- package/dist/cjs/ui/TableMenu/column/items/DistributeColumnsItem.js +10 -0
- package/dist/cjs/ui/TableMenu/column/items/HeaderColumnToggleItem.js +17 -1
- package/dist/cjs/ui/TableMenu/column/items/SortDecreasingItem.js +3 -1
- package/dist/cjs/ui/TableMenu/column/items/SortIncreasingItem.js +3 -1
- package/dist/cjs/ui/TableMenu/row/getRowMenuComponents.js +0 -7
- package/dist/cjs/ui/TableMenu/row/items/HeaderRowToggleItem.js +9 -0
- package/dist/cjs/ui/TableMenu/row/items/MoveRowDownItem.js +10 -0
- package/dist/cjs/ui/TableMenu/row/items/MoveRowUpItem.js +10 -0
- package/dist/cjs/ui/TableMenu/shared/TableMenu.js +51 -2
- package/dist/cjs/ui/TableMenu/shared/TableMenuContext.js +13 -0
- package/dist/cjs/ui/TableMenu/shared/consts.js +3 -2
- package/dist/cjs/ui/event-handlers.js +6 -1
- package/dist/es2019/pm-plugins/commands/split-cell.js +17 -1
- package/dist/es2019/pm-plugins/transforms/merge.js +4 -4
- package/dist/es2019/ui/FloatingContextualMenu/CellMenuPopup.js +1 -0
- package/dist/es2019/ui/FloatingDragMenu/index.js +7 -2
- package/dist/es2019/ui/TableMenu/cell/getCellMenuComponents.js +3 -11
- package/dist/es2019/ui/TableMenu/cell/items/MergeCellsItem.js +11 -0
- package/dist/es2019/ui/TableMenu/cell/items/SplitCellItem.js +11 -0
- package/dist/es2019/ui/TableMenu/cell/keys.js +1 -1
- package/dist/es2019/ui/TableMenu/column/getColumnMenuComponents.js +4 -12
- package/dist/es2019/ui/TableMenu/column/items/ColumnBackgroundSection.js +20 -0
- package/dist/es2019/ui/TableMenu/column/items/ColumnToggleSection.js +19 -0
- package/dist/es2019/ui/TableMenu/column/items/DistributeColumnsItem.js +11 -0
- package/dist/es2019/ui/TableMenu/column/items/HeaderColumnToggleItem.js +15 -0
- package/dist/es2019/ui/TableMenu/column/items/SortDecreasingItem.js +3 -1
- package/dist/es2019/ui/TableMenu/column/items/SortIncreasingItem.js +3 -1
- package/dist/es2019/ui/TableMenu/row/getRowMenuComponents.js +0 -8
- package/dist/es2019/ui/TableMenu/row/items/HeaderRowToggleItem.js +8 -0
- package/dist/es2019/ui/TableMenu/row/items/MoveRowDownItem.js +8 -0
- package/dist/es2019/ui/TableMenu/row/items/MoveRowUpItem.js +8 -0
- package/dist/es2019/ui/TableMenu/shared/TableMenu.js +49 -2
- package/dist/es2019/ui/TableMenu/shared/TableMenuContext.js +4 -0
- package/dist/es2019/ui/TableMenu/shared/consts.js +2 -1
- package/dist/es2019/ui/event-handlers.js +4 -1
- package/dist/esm/pm-plugins/commands/split-cell.js +17 -1
- package/dist/esm/pm-plugins/transforms/merge.js +4 -2
- package/dist/esm/ui/FloatingContextualMenu/CellMenuPopup.js +1 -0
- package/dist/esm/ui/FloatingDragMenu/index.js +7 -2
- package/dist/esm/ui/TableMenu/cell/getCellMenuComponents.js +3 -11
- package/dist/esm/ui/TableMenu/cell/items/MergeCellsItem.js +13 -0
- package/dist/esm/ui/TableMenu/cell/items/SplitCellItem.js +13 -0
- package/dist/esm/ui/TableMenu/cell/keys.js +1 -1
- package/dist/esm/ui/TableMenu/column/getColumnMenuComponents.js +4 -12
- package/dist/esm/ui/TableMenu/column/items/ColumnBackgroundSection.js +19 -0
- package/dist/esm/ui/TableMenu/column/items/ColumnToggleSection.js +18 -0
- package/dist/esm/ui/TableMenu/column/items/DistributeColumnsItem.js +11 -0
- package/dist/esm/ui/TableMenu/column/items/HeaderColumnToggleItem.js +17 -0
- package/dist/esm/ui/TableMenu/column/items/SortDecreasingItem.js +3 -1
- package/dist/esm/ui/TableMenu/column/items/SortIncreasingItem.js +3 -1
- package/dist/esm/ui/TableMenu/row/getRowMenuComponents.js +0 -8
- package/dist/esm/ui/TableMenu/row/items/HeaderRowToggleItem.js +10 -0
- package/dist/esm/ui/TableMenu/row/items/MoveRowDownItem.js +10 -0
- package/dist/esm/ui/TableMenu/row/items/MoveRowUpItem.js +10 -0
- package/dist/esm/ui/TableMenu/shared/TableMenu.js +50 -2
- package/dist/esm/ui/TableMenu/shared/TableMenuContext.js +6 -0
- package/dist/esm/ui/TableMenu/shared/consts.js +2 -1
- package/dist/esm/ui/event-handlers.js +6 -1
- package/dist/types/pm-plugins/commands/split-cell.d.ts +2 -0
- package/dist/types/pm-plugins/transforms/merge.d.ts +2 -0
- package/dist/types/ui/TableMenu/cell/getCellMenuComponents.d.ts +0 -7
- package/dist/types/ui/TableMenu/cell/items/MergeCellsItem.d.ts +1 -1
- package/dist/types/ui/TableMenu/cell/items/SplitCellItem.d.ts +1 -1
- package/dist/types/ui/TableMenu/cell/keys.d.ts +1 -1
- package/dist/types/ui/TableMenu/column/getColumnMenuComponents.d.ts +0 -7
- package/dist/types/ui/TableMenu/column/items/ColumnBackgroundSection.d.ts +10 -0
- package/dist/types/ui/TableMenu/column/items/ColumnToggleSection.d.ts +9 -0
- package/dist/types/ui/TableMenu/column/items/DistributeColumnsItem.d.ts +1 -1
- package/dist/types/ui/TableMenu/column/items/HeaderColumnToggleItem.d.ts +11 -1
- package/dist/types/ui/TableMenu/row/getRowMenuComponents.d.ts +0 -7
- package/dist/types/ui/TableMenu/row/items/HeaderRowToggleItem.d.ts +1 -1
- package/dist/types/ui/TableMenu/row/items/MoveRowDownItem.d.ts +1 -1
- package/dist/types/ui/TableMenu/row/items/MoveRowUpItem.d.ts +1 -1
- package/dist/types/ui/TableMenu/shared/TableMenu.d.ts +3 -1
- package/dist/types/ui/TableMenu/shared/TableMenuContext.d.ts +14 -0
- package/dist/types/ui/TableMenu/shared/consts.d.ts +1 -0
- package/dist/types-ts4.5/pm-plugins/commands/split-cell.d.ts +2 -0
- package/dist/types-ts4.5/pm-plugins/transforms/merge.d.ts +2 -0
- package/dist/types-ts4.5/ui/TableMenu/cell/getCellMenuComponents.d.ts +0 -7
- package/dist/types-ts4.5/ui/TableMenu/cell/items/MergeCellsItem.d.ts +1 -1
- package/dist/types-ts4.5/ui/TableMenu/cell/items/SplitCellItem.d.ts +1 -1
- package/dist/types-ts4.5/ui/TableMenu/cell/keys.d.ts +1 -1
- package/dist/types-ts4.5/ui/TableMenu/column/getColumnMenuComponents.d.ts +0 -7
- package/dist/types-ts4.5/ui/TableMenu/column/items/ColumnBackgroundSection.d.ts +10 -0
- package/dist/types-ts4.5/ui/TableMenu/column/items/ColumnToggleSection.d.ts +9 -0
- package/dist/types-ts4.5/ui/TableMenu/column/items/DistributeColumnsItem.d.ts +1 -1
- package/dist/types-ts4.5/ui/TableMenu/column/items/HeaderColumnToggleItem.d.ts +11 -1
- package/dist/types-ts4.5/ui/TableMenu/row/getRowMenuComponents.d.ts +0 -7
- package/dist/types-ts4.5/ui/TableMenu/row/items/HeaderRowToggleItem.d.ts +1 -1
- package/dist/types-ts4.5/ui/TableMenu/row/items/MoveRowDownItem.d.ts +1 -1
- package/dist/types-ts4.5/ui/TableMenu/row/items/MoveRowUpItem.d.ts +1 -1
- package/dist/types-ts4.5/ui/TableMenu/shared/TableMenu.d.ts +3 -1
- package/dist/types-ts4.5/ui/TableMenu/shared/TableMenuContext.d.ts +14 -0
- package/dist/types-ts4.5/ui/TableMenu/shared/consts.d.ts +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type TableMenuContextValue = {
|
|
3
|
+
canMergeCells?: boolean;
|
|
4
|
+
canSplitCell?: boolean;
|
|
5
|
+
hasMergedCellsInTable?: boolean;
|
|
6
|
+
isFirstColumn?: boolean;
|
|
7
|
+
isFirstRow?: boolean;
|
|
8
|
+
isLastColumn?: boolean;
|
|
9
|
+
isLastRow?: boolean;
|
|
10
|
+
selectedColumnCount?: number;
|
|
11
|
+
selectedRowCount?: number;
|
|
12
|
+
};
|
|
13
|
+
export declare const TableMenuProvider: React.Provider<TableMenuContextValue | undefined>;
|
|
14
|
+
export declare const useTableMenuContext: () => TableMenuContextValue | undefined;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { Command } from '@atlaskit/editor-common/types';
|
|
2
|
+
import type { Selection } from '@atlaskit/editor-prosemirror/state';
|
|
3
|
+
export declare const canSplitCellSelection: (selection: Selection) => boolean;
|
|
2
4
|
/**
|
|
3
5
|
* We need to split cell keeping the right type of cell given current table configuration.
|
|
4
6
|
* We are using editor-tables splitCellWithType that allows you to choose what cell type should be.
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
|
|
2
2
|
import type { Transaction } from '@atlaskit/editor-prosemirror/state';
|
|
3
|
+
import { Selection } from '@atlaskit/editor-prosemirror/state';
|
|
3
4
|
export declare function mergeCells(tr: Transaction): Transaction;
|
|
5
|
+
export declare function canMergeCellSelection(selection: Selection): boolean;
|
|
4
6
|
export declare function canMergeCells(tr: Transaction): boolean;
|
|
5
7
|
export declare function mergeEmptyColumns(table: PMNode): PMNode | null;
|
|
@@ -1,9 +1,2 @@
|
|
|
1
1
|
import type { RegisterComponent } from '@atlaskit/editor-ui-control-model';
|
|
2
|
-
/**
|
|
3
|
-
* Returns the RegisterComponent[] array defining the cell contextual menu surface.
|
|
4
|
-
*
|
|
5
|
-
* This is a **UI-only stub** — all items are always visible with no conditional
|
|
6
|
-
* logic and no wired actions. Functional behaviour (actions, conditional visibility)
|
|
7
|
-
* will be connected in follow-up tickets.
|
|
8
|
-
*/
|
|
9
2
|
export declare const getCellMenuComponents: () => RegisterComponent[];
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const MergeCellsItem: () => React.JSX.Element;
|
|
2
|
+
export declare const MergeCellsItem: () => React.JSX.Element | null;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const SplitCellItem: () => React.JSX.Element;
|
|
2
|
+
export declare const SplitCellItem: () => React.JSX.Element | null;
|
|
@@ -2,7 +2,7 @@ import type { MenuItemType, MenuSectionType, MenuType } from '@atlaskit/editor-u
|
|
|
2
2
|
export declare const CELL_MENU: MenuType;
|
|
3
3
|
export declare const CELL_ACTION_SECTION: MenuSectionType;
|
|
4
4
|
export declare const CELL_DANGER_SECTION: MenuSectionType;
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const CELL_MENU_RANK: Record<string, number>;
|
|
6
6
|
export declare const MERGE_CELLS_ITEM: MenuItemType;
|
|
7
7
|
export declare const SPLIT_CELL_ITEM: MenuItemType;
|
|
8
8
|
export declare const CELL_ACTION_SECTION_RANK: Record<string, number>;
|
|
@@ -1,9 +1,2 @@
|
|
|
1
1
|
import type { RegisterComponent } from '@atlaskit/editor-ui-control-model';
|
|
2
|
-
/**
|
|
3
|
-
* Returns the RegisterComponent[] array defining the column menu surface.
|
|
4
|
-
*
|
|
5
|
-
* This is a **UI-only stub** — all items are always visible with no conditional
|
|
6
|
-
* logic and no wired actions. Functional behaviour (actions, conditional visibility)
|
|
7
|
-
* will be connected in follow-up tickets.
|
|
8
|
-
*/
|
|
9
2
|
export declare const getColumnMenuComponents: () => RegisterComponent[];
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Background section sits directly below `ColumnToggleSection`. Its separator
|
|
4
|
+
* exists only to divide it from the toggle section; when the toggle section
|
|
5
|
+
* is hidden, the separator must drop too so we don't render a stray rule at
|
|
6
|
+
* the very top of the menu.
|
|
7
|
+
*/
|
|
8
|
+
export declare const ColumnBackgroundSection: ({ children, }: {
|
|
9
|
+
children?: React.ReactNode;
|
|
10
|
+
}) => React.JSX.Element;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* The toggle section currently contains only the Header column toggle. When
|
|
4
|
+
* that item is hidden, the whole section disappears so we don't render an
|
|
5
|
+
* empty wrapper (and so the section below can drop its leading separator).
|
|
6
|
+
*/
|
|
7
|
+
export declare const ColumnToggleSection: ({ children, }: {
|
|
8
|
+
children?: React.ReactNode;
|
|
9
|
+
}) => React.JSX.Element | null;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const DistributeColumnsItem: () => React.JSX.Element;
|
|
2
|
+
export declare const DistributeColumnsItem: () => React.JSX.Element | null;
|
|
@@ -1,2 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
|
|
2
|
+
import { type TableMenuContextValue } from '../../shared/TableMenuContext';
|
|
3
|
+
/**
|
|
4
|
+
* Header column toggle is only visible when the first column is the entire
|
|
5
|
+
* selection.
|
|
6
|
+
*
|
|
7
|
+
* Exported so `ColumnToggleSection` (which can become empty) and
|
|
8
|
+
* `ColumnBackgroundSection` (which drops its leading separator alongside)
|
|
9
|
+
* can stay in lockstep with this rule without redefining it.
|
|
10
|
+
*/
|
|
11
|
+
export declare const shouldShowHeaderColumnToggle: (tableMenuContext?: TableMenuContextValue) => boolean;
|
|
12
|
+
export declare const HeaderColumnToggleItem: () => React.JSX.Element | null;
|
|
@@ -1,9 +1,2 @@
|
|
|
1
1
|
import type { RegisterComponent } from '@atlaskit/editor-ui-control-model';
|
|
2
|
-
/**
|
|
3
|
-
* Returns the RegisterComponent[] array defining the row menu surface.
|
|
4
|
-
*
|
|
5
|
-
* This is a **UI-only stub** — all items are always visible with no conditional
|
|
6
|
-
* logic and no wired actions. Functional behaviour (actions, conditional visibility)
|
|
7
|
-
* will be connected in follow-up tickets.
|
|
8
|
-
*/
|
|
9
2
|
export declare const getRowMenuComponents: () => RegisterComponent[];
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const HeaderRowToggleItem: () => React.JSX.Element;
|
|
2
|
+
export declare const HeaderRowToggleItem: () => React.JSX.Element | null;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const MoveRowDownItem: () => React.JSX.Element;
|
|
2
|
+
export declare const MoveRowDownItem: () => React.JSX.Element | null;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const MoveRowUpItem: () => React.JSX.Element;
|
|
2
|
+
export declare const MoveRowUpItem: () => React.JSX.Element | null;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import type { EditorView } from '@atlaskit/editor-prosemirror/view';
|
|
2
3
|
import type { MenuType } from '@atlaskit/editor-ui-control-model';
|
|
3
4
|
import type { PluginInjectionAPI } from '../../../types';
|
|
4
5
|
type TableMenuProps = {
|
|
5
6
|
api: PluginInjectionAPI | undefined | null;
|
|
7
|
+
editorView?: EditorView;
|
|
6
8
|
surface: MenuType;
|
|
7
9
|
};
|
|
8
|
-
export declare const TableMenu: React.
|
|
10
|
+
export declare const TableMenu: React.NamedExoticComponent<TableMenuProps>;
|
|
9
11
|
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type TableMenuContextValue = {
|
|
3
|
+
canMergeCells?: boolean;
|
|
4
|
+
canSplitCell?: boolean;
|
|
5
|
+
hasMergedCellsInTable?: boolean;
|
|
6
|
+
isFirstColumn?: boolean;
|
|
7
|
+
isFirstRow?: boolean;
|
|
8
|
+
isLastColumn?: boolean;
|
|
9
|
+
isLastRow?: boolean;
|
|
10
|
+
selectedColumnCount?: number;
|
|
11
|
+
selectedRowCount?: number;
|
|
12
|
+
};
|
|
13
|
+
export declare const TableMenuProvider: React.Provider<TableMenuContextValue | undefined>;
|
|
14
|
+
export declare const useTableMenuContext: () => TableMenuContextValue | undefined;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-table",
|
|
3
|
-
"version": "22.4.
|
|
3
|
+
"version": "22.4.9",
|
|
4
4
|
"description": "Table plugin for the @atlaskit/editor",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^2.1.0",
|
|
60
60
|
"@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.1.0",
|
|
61
61
|
"@atlaskit/primitives": "^19.0.0",
|
|
62
|
-
"@atlaskit/tmp-editor-statsig": "^81.
|
|
62
|
+
"@atlaskit/tmp-editor-statsig": "^81.2.0",
|
|
63
63
|
"@atlaskit/toggle": "^15.6.0",
|
|
64
64
|
"@atlaskit/tokens": "^13.0.0",
|
|
65
65
|
"@atlaskit/tooltip": "^22.2.0",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"uuid": "^3.1.0"
|
|
75
75
|
},
|
|
76
76
|
"peerDependencies": {
|
|
77
|
-
"@atlaskit/editor-common": "^114.
|
|
77
|
+
"@atlaskit/editor-common": "^114.36.0",
|
|
78
78
|
"react": "^18.2.0",
|
|
79
79
|
"react-dom": "^18.2.0",
|
|
80
80
|
"react-intl": "^5.25.1 || ^6.0.0 || ^7.0.0"
|