@worktile/theia 16.3.2 → 16.3.3
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/editor.module.d.ts +2 -2
- package/esm2022/plugins/table/components/table.component.mjs +3 -2
- package/esm2022/plugins/table/components/toolbar/table-options.component.mjs +3 -3
- package/esm2022/plugins/table/components/toolbar/table-toolbar.component.mjs +6 -16
- package/esm2022/plugins/table/table.editor.mjs +92 -7
- package/esm2022/plugins/table/table.plugin.mjs +2 -2
- package/esm2022/plugins/table/table.store.mjs +1 -25
- package/esm2022/plugins/table/utils/remove-row-column.mjs +3 -4
- package/esm2022/services/table-contextmenu.service.mjs +6 -8
- package/esm2022/utils/copy-node.mjs +5 -2
- package/fesm2022/worktile-theia.mjs +248 -221
- package/fesm2022/worktile-theia.mjs.map +1 -1
- package/interfaces/editor.d.ts +2 -2
- package/package.json +1 -1
- package/plugins/table/table.editor.d.ts +10 -3
- package/plugins/table/table.store.d.ts +0 -3
- package/queries/is-range-across-blocks.d.ts +1 -1
- package/esm2022/plugins/table/utils/set-cells-background-color.mjs +0 -22
- package/esm2022/plugins/table/utils/set-node-options.mjs +0 -11
- package/plugins/table/utils/set-cells-background-color.d.ts +0 -3
- package/plugins/table/utils/set-node-options.d.ts +0 -3
package/interfaces/editor.d.ts
CHANGED
|
@@ -44,7 +44,7 @@ export declare const TheEditor: {
|
|
|
44
44
|
insertTextData(editor: AngularEditor, data: DataTransfer): boolean;
|
|
45
45
|
onKeydown(editor: AngularEditor, data: KeyboardEvent): void;
|
|
46
46
|
onClick(editor: AngularEditor, data: MouseEvent): void;
|
|
47
|
-
setFragmentData(editor: AngularEditor, data: DataTransfer, originEvent?: "
|
|
47
|
+
setFragmentData(editor: AngularEditor, data: DataTransfer, originEvent?: "copy" | "drag" | "cut"): void;
|
|
48
48
|
deleteCutData(editor: AngularEditor): void;
|
|
49
49
|
toDOMNode(editor: AngularEditor, node: Node): HTMLElement;
|
|
50
50
|
toDOMPoint(editor: AngularEditor, point: import("slate").BasePoint): import("slate-angular").DOMPoint;
|
|
@@ -53,7 +53,7 @@ export declare const TheEditor: {
|
|
|
53
53
|
findEventRange(editor: AngularEditor, event: any): import("slate").BaseRange;
|
|
54
54
|
isLeafInEditor(editor: AngularEditor, leafNode: globalThis.Element): boolean;
|
|
55
55
|
toSlatePoint(editor: AngularEditor, domPoint: import("slate-angular").DOMPoint): import("slate").BasePoint;
|
|
56
|
-
toSlateRange(editor: AngularEditor, domRange: globalThis.Range | StaticRange
|
|
56
|
+
toSlateRange(editor: AngularEditor, domRange: Selection | globalThis.Range | StaticRange): import("slate").BaseRange;
|
|
57
57
|
isLeafBlock(editor: AngularEditor, node: Node): boolean;
|
|
58
58
|
isBlockCardLeftCursor(editor: AngularEditor): boolean;
|
|
59
59
|
isBlockCardRightCursor(editor: AngularEditor): boolean;
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Editor, NodeEntry, Path, Range, Location } from 'slate';
|
|
2
|
-
import { TableOptions } from './table.types';
|
|
2
|
+
import { CellPosition, TableOptions, TheTableOptions } from './table.types';
|
|
3
3
|
import { Alignment, Indents, MarkTypes, VerticalAlignment } from '../../constants';
|
|
4
4
|
import { TheEditor } from '../../interfaces';
|
|
5
|
-
import { CustomElement, TableElement } from '../../custom-types';
|
|
5
|
+
import { CustomElement, TableCellElement, TableElement } from '../../custom-types';
|
|
6
6
|
export declare const TableEditor: {
|
|
7
7
|
insertTable(editor: Editor, optionsParam?: TableOptions): void;
|
|
8
8
|
insertColumn(editor: Editor, count?: number, at?: number, optionsParam?: TableOptions): void;
|
|
@@ -11,8 +11,15 @@ export declare const TableEditor: {
|
|
|
11
11
|
removeRow(editor: Editor, rowIndex?: number, optionsParam?: TableOptions): void;
|
|
12
12
|
removeColumn(editor: Editor, colIndex?: number, optionsParam?: TableOptions): void;
|
|
13
13
|
clearCell(editor: Editor, nodeEntry?: NodeEntry<CustomElement>, optionsParam?: TableOptions): void;
|
|
14
|
+
setCellsBackgroundColor(editor: Editor, color: string, selectCells?: TableCellElement[]): void;
|
|
15
|
+
mergeCell(editor: Editor): void;
|
|
16
|
+
splitCell(editor: Editor): void;
|
|
17
|
+
setTableOptions(editor: Editor, newOptions: TheTableOptions): void;
|
|
18
|
+
setEquallyColumn(editor: Editor): void;
|
|
19
|
+
clearCellsContent(editor: Editor, selectCells?: CellPosition[]): void;
|
|
14
20
|
isActive(editor: Editor): boolean;
|
|
15
|
-
|
|
21
|
+
getSelectedCellPositions(editor: Editor): CellPosition[];
|
|
22
|
+
getSelectedCells(editor: Editor): TableCellElement[];
|
|
16
23
|
setAlign(editor: Editor, alignment: Alignment): boolean;
|
|
17
24
|
setVerticalAlign(editor: TheEditor, alignment: VerticalAlignment): boolean;
|
|
18
25
|
isVerticalAlignActive(editor: TheEditor, alignment: VerticalAlignment): boolean;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { Editor } from 'slate';
|
|
3
|
-
import { ColorType } from '../../constants/color-select';
|
|
4
3
|
import { TableCellElement } from '../../custom-types';
|
|
5
4
|
import { CellPosition, TableSelectCellDirection } from './table.types';
|
|
6
5
|
import { TablePosition } from './utils';
|
|
@@ -60,8 +59,6 @@ export declare class TableStore {
|
|
|
60
59
|
setDangerousRows(): void;
|
|
61
60
|
setDangerousColumns(): void;
|
|
62
61
|
setDangerousTable(): void;
|
|
63
|
-
setSelectedCellsBackgroundColor(backgroundColor: ColorType): void;
|
|
64
|
-
clearSelectedCellsContent(): void;
|
|
65
62
|
/**
|
|
66
63
|
* 聚焦单元格并设置聚焦相关路径及元素
|
|
67
64
|
*/
|
|
@@ -3,6 +3,6 @@ import { EditorAboveOptions } from '../interfaces';
|
|
|
3
3
|
/**
|
|
4
4
|
* Is the range (default: selection) across blocks.
|
|
5
5
|
*/
|
|
6
|
-
export declare const isRangeAcrossBlocks: (editor: Editor, { at, ...options }?: Omit<EditorAboveOptions<import("slate").Ancestor>, "
|
|
6
|
+
export declare const isRangeAcrossBlocks: (editor: Editor, { at, ...options }?: Omit<EditorAboveOptions<import("slate").Ancestor>, "match" | "at"> & {
|
|
7
7
|
at?: Range | null;
|
|
8
8
|
}) => boolean;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { TableEditor } from '../table.editor';
|
|
2
|
-
import { TableHeaderBackgroundColor, SpecialBackgroundColor } from '../../../constants';
|
|
3
|
-
import { THE_EDITOR_PREVIOUS_SELECTION } from '../../../utils';
|
|
4
|
-
export const setSelectedCellsBackgroundColor = (editor, color, tableStore) => {
|
|
5
|
-
// 点击自定义颜色面板输入框设置颜色值时,会丢失焦点和选区(目前无法做到焦点同时存在于编辑器和输入框)
|
|
6
|
-
let location;
|
|
7
|
-
if (!editor.selection) {
|
|
8
|
-
const { rangeRef } = THE_EDITOR_PREVIOUS_SELECTION.get(editor);
|
|
9
|
-
location = rangeRef.current.anchor;
|
|
10
|
-
}
|
|
11
|
-
const isHeader = TableEditor.isActiveHeader(editor, location);
|
|
12
|
-
if (color === 'transparent') {
|
|
13
|
-
color = null;
|
|
14
|
-
}
|
|
15
|
-
if ((color === TableHeaderBackgroundColor && isHeader) || (color === SpecialBackgroundColor && !isHeader)) {
|
|
16
|
-
tableStore.setSelectedCellsBackgroundColor(null);
|
|
17
|
-
}
|
|
18
|
-
else {
|
|
19
|
-
tableStore.setSelectedCellsBackgroundColor(color);
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LWNlbGxzLWJhY2tncm91bmQtY29sb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS91dGlscy9zZXQtY2VsbHMtYmFja2dyb3VuZC1jb2xvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFOUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFeEYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFL0QsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsQ0FBQyxNQUFpQixFQUFFLEtBQWEsRUFBRSxVQUFzQixFQUFFLEVBQUU7SUFDeEcsb0RBQW9EO0lBQ3BELElBQUksUUFBZSxDQUFDO0lBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFO1FBQ25CLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyw2QkFBNkIsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0QsUUFBUSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO0tBQ3RDO0lBRUQsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDOUQsSUFBSSxLQUFLLEtBQUssYUFBYSxFQUFFO1FBQ3pCLEtBQUssR0FBRyxJQUFJLENBQUM7S0FDaEI7SUFDRCxJQUFJLENBQUMsS0FBSyxLQUFLLDBCQUEwQixJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLHNCQUFzQixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDdkcsVUFBVSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ3BEO1NBQU07UUFDSCxVQUFVLENBQUMsK0JBQStCLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDckQ7QUFDTCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYWJsZVN0b3JlIH0gZnJvbSAnLi4vdGFibGUuc3RvcmUnO1xuaW1wb3J0IHsgVGFibGVFZGl0b3IgfSBmcm9tICcuLi90YWJsZS5lZGl0b3InO1xuaW1wb3J0IHsgVGhlRWRpdG9yIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBUYWJsZUhlYWRlckJhY2tncm91bmRDb2xvciwgU3BlY2lhbEJhY2tncm91bmRDb2xvciB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBFZGl0b3IsIFBvaW50IH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgVEhFX0VESVRPUl9QUkVWSU9VU19TRUxFQ1RJT04gfSBmcm9tICcuLi8uLi8uLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBzZXRTZWxlY3RlZENlbGxzQmFja2dyb3VuZENvbG9yID0gKGVkaXRvcjogVGhlRWRpdG9yLCBjb2xvcjogc3RyaW5nLCB0YWJsZVN0b3JlOiBUYWJsZVN0b3JlKSA9PiB7XG4gICAgLy8g54K55Ye76Ieq5a6a5LmJ6aKc6Imy6Z2i5p2/6L6T5YWl5qGG6K6+572u6aKc6Imy5YC85pe277yM5Lya5Lii5aSx54Sm54K55ZKM6YCJ5Yy677yI55uu5YmN5peg5rOV5YGa5Yiw54Sm54K55ZCM5pe25a2Y5Zyo5LqO57yW6L6R5Zmo5ZKM6L6T5YWl5qGG77yJXG4gICAgbGV0IGxvY2F0aW9uOiBQb2ludDtcbiAgICBpZiAoIWVkaXRvci5zZWxlY3Rpb24pIHtcbiAgICAgICAgY29uc3QgeyByYW5nZVJlZiB9ID0gVEhFX0VESVRPUl9QUkVWSU9VU19TRUxFQ1RJT04uZ2V0KGVkaXRvcik7XG4gICAgICAgIGxvY2F0aW9uID0gcmFuZ2VSZWYuY3VycmVudC5hbmNob3I7XG4gICAgfVxuXG4gICAgY29uc3QgaXNIZWFkZXIgPSBUYWJsZUVkaXRvci5pc0FjdGl2ZUhlYWRlcihlZGl0b3IsIGxvY2F0aW9uKTtcbiAgICBpZiAoY29sb3IgPT09ICd0cmFuc3BhcmVudCcpIHtcbiAgICAgICAgY29sb3IgPSBudWxsO1xuICAgIH1cbiAgICBpZiAoKGNvbG9yID09PSBUYWJsZUhlYWRlckJhY2tncm91bmRDb2xvciAmJiBpc0hlYWRlcikgfHwgKGNvbG9yID09PSBTcGVjaWFsQmFja2dyb3VuZENvbG9yICYmICFpc0hlYWRlcikpIHtcbiAgICAgICAgdGFibGVTdG9yZS5zZXRTZWxlY3RlZENlbGxzQmFja2dyb3VuZENvbG9yKG51bGwpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHRhYmxlU3RvcmUuc2V0U2VsZWN0ZWRDZWxsc0JhY2tncm91bmRDb2xvcihjb2xvcik7XG4gICAgfVxufTtcbiJdfQ==
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Transforms } from 'slate';
|
|
2
|
-
import { createTablePosition } from './create-table-position';
|
|
3
|
-
import { getTablePath } from './table-entry';
|
|
4
|
-
export function setTableOptions(editor, newOptions) {
|
|
5
|
-
const tablePosition = createTablePosition(editor);
|
|
6
|
-
const tablePath = getTablePath(editor);
|
|
7
|
-
const table = tablePosition.table;
|
|
8
|
-
const options = { ...table.options, ...newOptions };
|
|
9
|
-
Transforms.setNodes(editor, { options }, { at: tablePath });
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LW5vZGUtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3V0aWxzL3NldC1ub2RlLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUduQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdDLE1BQU0sVUFBVSxlQUFlLENBQUMsTUFBaUIsRUFBRSxVQUEyQjtJQUMxRSxNQUFNLGFBQWEsR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsRCxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkMsTUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQztJQUNsQyxNQUFNLE9BQU8sR0FBRyxFQUFFLEdBQUcsS0FBSyxDQUFDLE9BQU8sRUFBRSxHQUFHLFVBQVUsRUFBRSxDQUFDO0lBQ3BELFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztBQUNoRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtcyB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFRoZUVkaXRvciB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgVGhlVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgY3JlYXRlVGFibGVQb3NpdGlvbiB9IGZyb20gJy4vY3JlYXRlLXRhYmxlLXBvc2l0aW9uJztcbmltcG9ydCB7IGdldFRhYmxlUGF0aCB9IGZyb20gJy4vdGFibGUtZW50cnknO1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0VGFibGVPcHRpb25zKGVkaXRvcjogVGhlRWRpdG9yLCBuZXdPcHRpb25zOiBUaGVUYWJsZU9wdGlvbnMpIHtcbiAgICBjb25zdCB0YWJsZVBvc2l0aW9uID0gY3JlYXRlVGFibGVQb3NpdGlvbihlZGl0b3IpO1xuICAgIGNvbnN0IHRhYmxlUGF0aCA9IGdldFRhYmxlUGF0aChlZGl0b3IpO1xuICAgIGNvbnN0IHRhYmxlID0gdGFibGVQb3NpdGlvbi50YWJsZTtcbiAgICBjb25zdCBvcHRpb25zID0geyAuLi50YWJsZS5vcHRpb25zLCAuLi5uZXdPcHRpb25zIH07XG4gICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhlZGl0b3IsIHsgb3B0aW9ucyB9LCB7IGF0OiB0YWJsZVBhdGggfSk7XG59XG4iXX0=
|