@worktile/theia 2.4.4 → 2.4.7

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 (32) hide show
  1. package/bundles/worktile-theia.umd.js +190 -139
  2. package/bundles/worktile-theia.umd.js.map +1 -1
  3. package/esm2015/editor.component.js +2 -3
  4. package/esm2015/interfaces/editor.js +1 -1
  5. package/esm2015/plugins/indent/indent.editor.js +7 -12
  6. package/esm2015/plugins/indent/indent.plugin.js +1 -8
  7. package/esm2015/plugins/index.js +1 -1
  8. package/esm2015/plugins/public-api.js +3 -1
  9. package/esm2015/plugins/quick-insert/quick-insert.plugin.js +14 -4
  10. package/esm2015/plugins/table/components/table.component.js +37 -6
  11. package/esm2015/plugins/todo-item/todo-item.component.js +4 -3
  12. package/esm2015/queries/get-directly-parent.js +12 -0
  13. package/esm2015/queries/index.js +4 -2
  14. package/esm2015/queries/is-types-in-parent.js +16 -0
  15. package/esm2015/transforms/index.js +2 -3
  16. package/esm2015/transforms/insert-element-next.js +24 -3
  17. package/fesm2015/worktile-theia.js +171 -132
  18. package/fesm2015/worktile-theia.js.map +1 -1
  19. package/interfaces/editor.d.ts +1 -3
  20. package/package.json +1 -1
  21. package/plugins/indent/indent.editor.d.ts +1 -0
  22. package/plugins/public-api.d.ts +2 -0
  23. package/plugins/table/components/table.component.d.ts +1 -0
  24. package/plugins/table/components/table.component.scss +7 -2
  25. package/plugins/todo-item/todo-item.component.scss +1 -1
  26. package/queries/get-directly-parent.d.ts +2 -0
  27. package/queries/index.d.ts +3 -1
  28. package/queries/is-types-in-parent.d.ts +2 -0
  29. package/styles/editor.scss +3 -3
  30. package/transforms/index.d.ts +1 -2
  31. package/esm2015/transforms/insert-element-node.js +0 -36
  32. package/transforms/insert-element-node.d.ts +0 -2
@@ -14,7 +14,6 @@ export interface TheEditor extends AngularEditor, HistoryEditor {
14
14
  isContainer: (element: Element) => boolean;
15
15
  extraElementOptions: ElementOptionsInfo[];
16
16
  extraAutoFormatRules: AutoFormatRule[];
17
- extraIndentOptions: IndentOptions;
18
17
  options: TheOptions;
19
18
  disabled: boolean;
20
19
  [key: string]: any;
@@ -71,7 +70,7 @@ export declare enum TheDataMode {
71
70
  html = "html"
72
71
  }
73
72
  export interface TheOptions {
74
- triggerQuickToolbarTypes?: CustomElementKinds[];
73
+ allowContainerOperateTypes?: CustomElementKinds[];
75
74
  mode?: TheDataMode;
76
75
  readonly?: boolean;
77
76
  disabled?: boolean;
@@ -88,7 +87,6 @@ export interface TheOptions {
88
87
  disablePlugins?: string[];
89
88
  extraElementOptions?: ElementOptionsInfo[];
90
89
  extraAutoFormatRules?: AutoFormatRule[];
91
- extraIndentOptions?: IndentOptions;
92
90
  noBindReadonlyPlugins?: (ElementKinds | string)[];
93
91
  }
94
92
  export declare type NodeMatch<T = Node> = Predicate<T>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@worktile/theia",
3
- "version": "2.4.4",
3
+ "version": "2.4.7",
4
4
  "description": "theia editor",
5
5
  "author": "YanDong <nanianqiumo@foxmail.com>",
6
6
  "homepage": "https://github.com/atinc/theia#readme",
@@ -1,6 +1,7 @@
1
1
  import { Editor, Element } from 'slate';
2
2
  import { TheEditor } from '../../interfaces/editor';
3
3
  import { CustomElementKinds } from '../../custom-types';
4
+ export declare const includesIndentTypes: CustomElementKinds[];
4
5
  export declare const IndentEditor: {
5
6
  setIndent(editor: TheEditor): void;
6
7
  cancelIndent(editor: Editor): void;
@@ -12,3 +12,5 @@ export * from './todo-item/todo-item.editor';
12
12
  export * from './vertical-align/vertical-align.editor';
13
13
  export * from './link/link.editor';
14
14
  export * from './quick-insert/quick-insert.editor';
15
+ export * from './indent/indent.editor';
16
+ export * from './indent/toolbar-item.component';
@@ -59,6 +59,7 @@ export declare class TheTableComponent extends TheBaseElementComponent<TableElem
59
59
  cell?: TableCellElement;
60
60
  rowIndex: number;
61
61
  }[], index: number, rowIndex: number, rowspan: number): number;
62
+ resolveImage(): Promise<boolean> | Promise<any[]>;
62
63
  getColControls(): void;
63
64
  onColMouseDown(event: MouseEvent, index: number): void;
64
65
  getIsInTable(): void;
@@ -447,9 +447,14 @@ $control-corner-width: 12px;
447
447
  }
448
448
  }
449
449
 
450
-
451
- .the-temp-editor-readonly{
450
+
451
+ .the-editor-readonly{
452
452
  .the-temp-table-row-controls, .the-temp-table-col-controls{
453
453
  cursor: default;
454
454
  }
455
+ .safari{
456
+ .the-temp-table-row-controls{
457
+ top: 0px;
458
+ }
459
+ }
455
460
  }
@@ -1,4 +1,4 @@
1
- .the-check-item {
1
+ .the-temp-check-item {
2
2
  height: auto;
3
3
  line-height: 24px;
4
4
  padding-left: 2em;
@@ -0,0 +1,2 @@
1
+ import { TheEditor } from '../interfaces/editor';
2
+ export declare const getDirectlyParent: (editor: TheEditor) => import("slate").NodeEntry<import("slate").Ancestor>;
@@ -52,4 +52,6 @@ import { isEmptyParagraphByPath } from './is-empty-paragraph-by-path';
52
52
  import { getSelectionMarks } from './get-selection-marks';
53
53
  import { isContainer } from './is-container-type';
54
54
  import { getContainerBlocks } from './get-container-blocks';
55
- export { getLastNode, getAnchorBlockEntry, getAboveByType, getNodes, getNodesByType, getBlockAbove, getPreviousPath, getNode, getParent, getLastChild, getLastChildPath, getNextSiblingNodes, getAbove, getChildren, getPointBefore, getSelectionNodesByType, getText, getPointFromLocation, getRangeFromBlockStart, getRangeBefore, getBlockCardCenterCursor, getBlockCardAbove, getPlainText, getSelectionMarks, getContainerBlocks, isAncestor, isCollapsed, isEmptyParagraph, isParagraph, isBlockActive, isIncludeTypes, isAncestorEmpty, isBlockAboveEmpty, isNodeTypeIn, isFirstChild, isPointAtRoot, isRangeAtRoot, isBlockTextEmptyAfterSelection, isStart, isRangeAcrossBlocks, isDescendant, isNodeType, isAcrossBlocks, isBlockCardCursor, isEmptyContent, isEmptyParagraphByPath, isContainer, anchorBlock, anchorBlockEntry, anchorInlineEntry, anchorInline, findPath, findNode, findDescendant, someNode };
55
+ import { getDirectlyParent } from './get-directly-parent';
56
+ import { isTypesInParent } from './is-types-in-parent';
57
+ export { getLastNode, getAnchorBlockEntry, getAboveByType, getNodes, getNodesByType, getBlockAbove, getPreviousPath, getNode, getParent, getLastChild, getLastChildPath, getNextSiblingNodes, getAbove, getChildren, getPointBefore, getSelectionNodesByType, getText, getPointFromLocation, getRangeFromBlockStart, getRangeBefore, getBlockCardCenterCursor, getBlockCardAbove, getPlainText, getSelectionMarks, getContainerBlocks, getDirectlyParent, isAncestor, isCollapsed, isEmptyParagraph, isParagraph, isBlockActive, isIncludeTypes, isAncestorEmpty, isBlockAboveEmpty, isNodeTypeIn, isFirstChild, isPointAtRoot, isRangeAtRoot, isBlockTextEmptyAfterSelection, isStart, isRangeAcrossBlocks, isDescendant, isNodeType, isAcrossBlocks, isBlockCardCursor, isEmptyContent, isEmptyParagraphByPath, isContainer, isTypesInParent, anchorBlock, anchorBlockEntry, anchorInlineEntry, anchorInline, findPath, findNode, findDescendant, someNode };
@@ -0,0 +1,2 @@
1
+ import { TheEditor } from '../interfaces/editor';
2
+ export declare const isTypesInParent: (editor: TheEditor, types: string[] | string) => boolean;
@@ -31,7 +31,7 @@ $thy-icon-nav-link-margin-right: 5px;
31
31
  cursor: inherit;
32
32
  }
33
33
  }
34
- .the-check-item {
34
+ .the-temp-check-item {
35
35
  input[type='checkbox'] {
36
36
  cursor: auto;
37
37
  }
@@ -42,7 +42,7 @@ $thy-icon-nav-link-margin-right: 5px;
42
42
  }
43
43
 
44
44
  .the-editor-disabled {
45
- .the-check-item {
45
+ .the-temp-check-item {
46
46
  input[type='checkbox'] {
47
47
  cursor: auto;
48
48
  }
@@ -200,7 +200,7 @@ $thy-icon-nav-link-margin-right: 5px;
200
200
  ul[the-level="#{$i}"] {
201
201
  padding-left: $i * 2em;
202
202
  }
203
- .the-check-item[the-level="#{$i}"] {
203
+ .the-temp-check-item[the-level="#{$i}"] {
204
204
  padding-left: calc(#{$i * 2em} + 2em);
205
205
  }
206
206
  }
@@ -16,5 +16,4 @@ import { setEndSelection } from './set-end-selection';
16
16
  import { closeConversionHint } from './close-conversion-hint';
17
17
  import { handleContinualDeleteBackward } from './handle-continual-delete-backward';
18
18
  import { handleContinualInsertBreak } from './handle-continual-insert-break';
19
- import { insertElementNode } from './insert-element-node';
20
- export { setMarks, clearMarks, insertElement, insertElementNext, insertParagraph, setNode, unwrapNodesByType, onKeyDownResetBlockType, moveChildren, applyDeepToNodes, mergeDeepToNodes, unWrap, splitNode, deleteElement, setEndSelection, closeConversionHint, handleContinualDeleteBackward, handleContinualInsertBreak, insertElementNode };
19
+ export { setMarks, clearMarks, insertElement, insertElementNext, insertParagraph, setNode, unwrapNodesByType, onKeyDownResetBlockType, moveChildren, applyDeepToNodes, mergeDeepToNodes, unWrap, splitNode, deleteElement, setEndSelection, closeConversionHint, handleContinualDeleteBackward, handleContinualInsertBreak };
@@ -1,36 +0,0 @@
1
- import { Editor, Range, Path, Transforms } from 'slate';
2
- import * as TheQueries from '../queries';
3
- export const insertElementNode = (editor, node) => {
4
- if (Range.isExpanded(editor.selection)) {
5
- Editor.deleteFragment(editor);
6
- }
7
- const isBlockCardCursor = TheQueries.isBlockCardCursor(editor);
8
- const containerBlocks = TheQueries.getContainerBlocks(editor);
9
- const isContainer = TheQueries.isNodeTypeIn(editor, containerBlocks, { at: editor.selection });
10
- const [anchorBlock, anchorBlockPath] = TheQueries.anchorBlockEntry(editor);
11
- const isEmpty = Editor.isEmpty(editor, anchorBlock);
12
- if (isContainer && !isBlockCardCursor) {
13
- const [, containerPath] = Editor.above(editor, {
14
- match: n => Editor.isBlock(editor, n) && containerBlocks.includes(n.type),
15
- at: editor.selection
16
- });
17
- Editor.withoutNormalizing(editor, () => {
18
- const containerPathFirstPath = anchorBlockPath.slice(0, containerPath.length + 1);
19
- Transforms.insertNodes(editor, node, { at: Path.next(containerPathFirstPath), select: true });
20
- if (isEmpty) {
21
- Transforms.removeNodes(editor, { at: anchorBlockPath });
22
- }
23
- });
24
- return;
25
- }
26
- const nextPath = Path.next([anchorBlockPath[0]]);
27
- Transforms.insertNodes(editor, node, { at: nextPath });
28
- if (isEmpty && anchorBlockPath.length === 1) {
29
- Transforms.delete(editor, { at: anchorBlockPath });
30
- Transforms.select(editor, Editor.start(editor, anchorBlockPath));
31
- }
32
- else {
33
- Transforms.select(editor, Editor.start(editor, nextPath));
34
- }
35
- };
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWVsZW1lbnQtbm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy90cmFuc2Zvcm1zL2luc2VydC1lbGVtZW50LW5vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBVyxNQUFNLE9BQU8sQ0FBQztBQUNqRSxPQUFPLEtBQUssVUFBVSxNQUFNLFlBQVksQ0FBQztBQUV6QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLE1BQWMsRUFBRSxJQUFhLEVBQUUsRUFBRTtJQUMvRCxJQUFJLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1FBQ3BDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7S0FDakM7SUFFRCxNQUFNLGlCQUFpQixHQUFHLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvRCxNQUFNLGVBQWUsR0FBRyxVQUFVLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUQsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsZUFBZSxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQy9GLE1BQU0sQ0FBQyxXQUFXLEVBQUUsZUFBZSxDQUFDLEdBQUcsVUFBVSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzNFLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBRXBELElBQUksV0FBVyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7UUFDbkMsTUFBTSxDQUFDLEVBQUUsYUFBYSxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDM0MsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ3pFLEVBQUUsRUFBRSxNQUFNLENBQUMsU0FBUztTQUN2QixDQUFDLENBQUM7UUFDSCxNQUFNLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtZQUNuQyxNQUFNLHNCQUFzQixHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbEYsVUFBVSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUM5RixJQUFJLE9BQU8sRUFBRTtnQkFDVCxVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO2FBQzNEO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPO0tBQ1Y7SUFFRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqRCxVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUV2RCxJQUFJLE9BQU8sSUFBSSxlQUFlLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUN6QyxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO1FBQ25ELFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUM7S0FDcEU7U0FBTTtRQUNILFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7S0FDN0Q7QUFDTCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIFJhbmdlLCBQYXRoLCBUcmFuc2Zvcm1zLCBFbGVtZW50IH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0ICogYXMgVGhlUXVlcmllcyBmcm9tICcuLi9xdWVyaWVzJztcblxuZXhwb3J0IGNvbnN0IGluc2VydEVsZW1lbnROb2RlID0gKGVkaXRvcjogRWRpdG9yLCBub2RlOiBFbGVtZW50KSA9PiB7XG4gICAgaWYgKFJhbmdlLmlzRXhwYW5kZWQoZWRpdG9yLnNlbGVjdGlvbikpIHtcbiAgICAgICAgRWRpdG9yLmRlbGV0ZUZyYWdtZW50KGVkaXRvcik7XG4gICAgfVxuXG4gICAgY29uc3QgaXNCbG9ja0NhcmRDdXJzb3IgPSBUaGVRdWVyaWVzLmlzQmxvY2tDYXJkQ3Vyc29yKGVkaXRvcik7XG4gICAgY29uc3QgY29udGFpbmVyQmxvY2tzID0gVGhlUXVlcmllcy5nZXRDb250YWluZXJCbG9ja3MoZWRpdG9yKTtcbiAgICBjb25zdCBpc0NvbnRhaW5lciA9IFRoZVF1ZXJpZXMuaXNOb2RlVHlwZUluKGVkaXRvciwgY29udGFpbmVyQmxvY2tzLCB7IGF0OiBlZGl0b3Iuc2VsZWN0aW9uIH0pO1xuICAgIGNvbnN0IFthbmNob3JCbG9jaywgYW5jaG9yQmxvY2tQYXRoXSA9IFRoZVF1ZXJpZXMuYW5jaG9yQmxvY2tFbnRyeShlZGl0b3IpO1xuICAgIGNvbnN0IGlzRW1wdHkgPSBFZGl0b3IuaXNFbXB0eShlZGl0b3IsIGFuY2hvckJsb2NrKTtcblxuICAgIGlmIChpc0NvbnRhaW5lciAmJiAhaXNCbG9ja0NhcmRDdXJzb3IpIHtcbiAgICAgICAgY29uc3QgWywgY29udGFpbmVyUGF0aF0gPSBFZGl0b3IuYWJvdmUoZWRpdG9yLCB7XG4gICAgICAgICAgICBtYXRjaDogbiA9PiBFZGl0b3IuaXNCbG9jayhlZGl0b3IsIG4pICYmIGNvbnRhaW5lckJsb2Nrcy5pbmNsdWRlcyhuLnR5cGUpLFxuICAgICAgICAgICAgYXQ6IGVkaXRvci5zZWxlY3Rpb25cbiAgICAgICAgfSk7XG4gICAgICAgIEVkaXRvci53aXRob3V0Tm9ybWFsaXppbmcoZWRpdG9yLCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb250YWluZXJQYXRoRmlyc3RQYXRoID0gYW5jaG9yQmxvY2tQYXRoLnNsaWNlKDAsIGNvbnRhaW5lclBhdGgubGVuZ3RoICsgMSk7XG4gICAgICAgICAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGVzKGVkaXRvciwgbm9kZSwgeyBhdDogUGF0aC5uZXh0KGNvbnRhaW5lclBhdGhGaXJzdFBhdGgpLCBzZWxlY3Q6IHRydWUgfSk7XG4gICAgICAgICAgICBpZiAoaXNFbXB0eSkge1xuICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMucmVtb3ZlTm9kZXMoZWRpdG9yLCB7IGF0OiBhbmNob3JCbG9ja1BhdGggfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbmV4dFBhdGggPSBQYXRoLm5leHQoW2FuY2hvckJsb2NrUGF0aFswXV0pO1xuICAgIFRyYW5zZm9ybXMuaW5zZXJ0Tm9kZXMoZWRpdG9yLCBub2RlLCB7IGF0OiBuZXh0UGF0aCB9KTtcblxuICAgIGlmIChpc0VtcHR5ICYmIGFuY2hvckJsb2NrUGF0aC5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgVHJhbnNmb3Jtcy5kZWxldGUoZWRpdG9yLCB7IGF0OiBhbmNob3JCbG9ja1BhdGggfSk7XG4gICAgICAgIFRyYW5zZm9ybXMuc2VsZWN0KGVkaXRvciwgRWRpdG9yLnN0YXJ0KGVkaXRvciwgYW5jaG9yQmxvY2tQYXRoKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgVHJhbnNmb3Jtcy5zZWxlY3QoZWRpdG9yLCBFZGl0b3Iuc3RhcnQoZWRpdG9yLCBuZXh0UGF0aCkpO1xuICAgIH1cbn07XG4iXX0=
@@ -1,2 +0,0 @@
1
- import { Editor, Element } from 'slate';
2
- export declare const insertElementNode: (editor: Editor, node: Element) => void;