@worktile/theia 2.4.4 → 2.4.5
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/bundles/worktile-theia.umd.js +60 -40
- package/bundles/worktile-theia.umd.js.map +1 -1
- package/esm2015/interfaces/editor.js +1 -1
- package/esm2015/plugins/index.js +1 -1
- package/esm2015/plugins/quick-insert/quick-insert.plugin.js +14 -4
- package/esm2015/queries/get-directly-parent.js +12 -0
- package/esm2015/queries/index.js +4 -2
- package/esm2015/queries/is-types-in-parent.js +16 -0
- package/esm2015/transforms/index.js +2 -3
- package/esm2015/transforms/insert-element-next.js +24 -3
- package/fesm2015/worktile-theia.js +61 -41
- package/fesm2015/worktile-theia.js.map +1 -1
- package/interfaces/editor.d.ts +1 -1
- package/package.json +1 -1
- package/queries/get-directly-parent.d.ts +2 -0
- package/queries/index.d.ts +3 -1
- package/queries/is-types-in-parent.d.ts +2 -0
- package/transforms/index.d.ts +1 -2
- package/esm2015/transforms/insert-element-node.js +0 -36
- package/transforms/insert-element-node.d.ts +0 -2
package/interfaces/editor.d.ts
CHANGED
|
@@ -71,7 +71,7 @@ export declare enum TheDataMode {
|
|
|
71
71
|
html = "html"
|
|
72
72
|
}
|
|
73
73
|
export interface TheOptions {
|
|
74
|
-
|
|
74
|
+
allowContainerOperateTypes?: CustomElementKinds[];
|
|
75
75
|
mode?: TheDataMode;
|
|
76
76
|
readonly?: boolean;
|
|
77
77
|
disabled?: boolean;
|
package/package.json
CHANGED
package/queries/index.d.ts
CHANGED
|
@@ -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
|
-
|
|
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 };
|
package/transforms/index.d.ts
CHANGED
|
@@ -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
|
-
|
|
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=
|