@worktile/theia 15.0.19 → 15.1.0
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/components/action/prevent-default.d.ts +1 -1
- package/components/color-select/color-select.component.d.ts +1 -1
- package/components/column-resize/column-resize.directive.d.ts +1 -1
- package/components/column-resize/overlay-handle.component.d.ts +1 -1
- package/components/contextmenu/contextmenu.component.d.ts +1 -1
- package/components/conversion-hint/conversion-hint.component.d.ts +1 -1
- package/components/element/element.component.d.ts +1 -1
- package/components/inline-toolbar/inline-toolbar.component.d.ts +1 -1
- package/components/listbox/listbox.d.ts +3 -3
- package/components/listbox/listbox.type.d.ts +1 -1
- package/components/plugin-menu/plugin-menu.component.d.ts +1 -1
- package/components/table-select/table-select.component.d.ts +1 -1
- package/components/template/template.component.d.ts +1 -1
- package/components/text/text.component.d.ts +1 -1
- package/components/toolbar/toolbar.component.d.ts +1 -1
- package/components/toolbar-dropdown/toolbar-dropdown.component.d.ts +1 -1
- package/components/toolbar-group/toolbar-group.component.d.ts +1 -1
- package/components/toolbar-item/toolbar-item.component.d.ts +1 -1
- package/constants/color-select.d.ts +1 -1
- package/core/toolbar-item/base-toolbar-item.d.ts +2 -2
- package/custom-types.d.ts +6 -6
- package/editor.component.d.ts +1 -1
- package/esm2020/components/action/prevent-default.mjs +3 -3
- package/esm2020/components/color-select/color-select.component.mjs +9 -9
- package/esm2020/components/column-resize/column-resize-notifier.mjs +3 -3
- package/esm2020/components/column-resize/column-resize.directive.mjs +3 -3
- package/esm2020/components/column-resize/column-resize.module.mjs +8 -8
- package/esm2020/components/column-resize/event-dispatcher.mjs +3 -3
- package/esm2020/components/column-resize/overlay-handle.component.mjs +3 -3
- package/esm2020/components/column-resize/resizing.store.mjs +3 -3
- package/esm2020/components/contextmenu/contextmenu.component.mjs +10 -10
- package/esm2020/components/conversion-hint/conversion-hint.component.mjs +3 -3
- package/esm2020/components/element/element.component.mjs +3 -3
- package/esm2020/components/inline-toolbar/inline-toolbar.component.mjs +3 -3
- package/esm2020/components/listbox/listbox.mjs +16 -16
- package/esm2020/components/plugin-menu/plugin-menu.component.mjs +3 -3
- package/esm2020/components/table-select/table-select.component.mjs +3 -3
- package/esm2020/components/template/template.component.mjs +3 -3
- package/esm2020/components/text/text.component.mjs +3 -3
- package/esm2020/components/toolbar/toolbar.component.mjs +7 -7
- package/esm2020/components/toolbar-dropdown/toolbar-dropdown.component.mjs +14 -14
- package/esm2020/components/toolbar-group/toolbar-group.component.mjs +11 -11
- package/esm2020/components/toolbar-item/toolbar-item.component.mjs +7 -7
- package/esm2020/core/toolbar-item/base-toolbar-item.mjs +6 -6
- package/esm2020/editor.component.mjs +10 -10
- package/esm2020/editor.module.mjs +4 -4
- package/esm2020/interfaces/editor.mjs +1 -1
- package/esm2020/interfaces/plugins/plugin-key.mjs +2 -2
- package/esm2020/interfaces/valid-children-types.mjs +7 -7
- package/esm2020/interfaces/view-base.mjs +3 -3
- package/esm2020/pipes.mjs +6 -6
- package/esm2020/plugins/blockquote/blockquote.component.mjs +3 -3
- package/esm2020/plugins/code/code.component.mjs +10 -10
- package/esm2020/plugins/color/toolbar-item.component.mjs +7 -7
- package/esm2020/plugins/common/insert-data-by-invalid-type.mjs +23 -0
- package/esm2020/plugins/deserialize/deserialize-html.plugin.mjs +53 -0
- package/esm2020/plugins/deserialize/deserialize-md.plugin.mjs +130 -0
- package/esm2020/plugins/hr/hr.component.mjs +3 -3
- package/esm2020/plugins/image/image.component.mjs +13 -13
- package/esm2020/plugins/index.mjs +5 -5
- package/esm2020/plugins/inline-code/inline-code.component.mjs +3 -3
- package/esm2020/plugins/link/edit/link-edit.component.mjs +9 -9
- package/esm2020/plugins/link/hover/link-hover.component.mjs +3 -3
- package/esm2020/plugins/link/link.component.mjs +13 -13
- package/esm2020/plugins/list/components/bulleted-list.component.mjs +7 -7
- package/esm2020/plugins/list/components/list-item.component.mjs +3 -3
- package/esm2020/plugins/list/components/numbered-list.component.mjs +9 -9
- package/esm2020/plugins/mention/mention.plugin.mjs +3 -2
- package/esm2020/plugins/mention/mention.type.mjs +1 -1
- package/esm2020/plugins/mention/suggestion.component.mjs +3 -3
- package/esm2020/plugins/quick-insert/components/quick-insert.component.mjs +8 -8
- package/esm2020/plugins/table/components/insert-mark/insert-mark.component.mjs +7 -7
- package/esm2020/plugins/table/components/row/row.component.mjs +3 -3
- package/esm2020/plugins/table/components/table.component.mjs +28 -28
- package/esm2020/plugins/table/components/td/td.component.mjs +20 -20
- package/esm2020/plugins/table/components/toolbar/table-options.component.mjs +3 -3
- package/esm2020/plugins/table/components/toolbar/table-toolbar.component.mjs +13 -13
- package/esm2020/plugins/table/table.pipe.mjs +6 -6
- package/esm2020/plugins/table/table.service.mjs +7 -7
- package/esm2020/plugins/table/table.store.mjs +7 -7
- package/esm2020/plugins/table/toolbar-item.component.mjs +7 -7
- package/esm2020/plugins/todo-item/todo-item.component.mjs +11 -11
- package/esm2020/plugins/vertical-align/toolbar-item.component.mjs +11 -11
- package/esm2020/services/color-select.service.mjs +7 -7
- package/esm2020/services/context.service.mjs +3 -3
- package/esm2020/services/table-contextmenu.service.mjs +14 -14
- package/esm2020/services/toolbar.service.mjs +3 -3
- package/esm2020/utils/index.mjs +2 -1
- package/esm2020/utils/insert-data-by-invalid-type.mjs +62 -0
- package/esm2020/utils/merge-element-options.mjs +5 -5
- package/fesm2015/worktile-theia.mjs +508 -496
- package/fesm2015/worktile-theia.mjs.map +1 -1
- package/fesm2020/worktile-theia.mjs +503 -491
- package/fesm2020/worktile-theia.mjs.map +1 -1
- package/interfaces/editor.d.ts +2 -2
- package/interfaces/element.d.ts +3 -3
- package/interfaces/plugins/no-infer.d.ts +1 -1
- package/interfaces/plugins/plugin-key.d.ts +2 -2
- package/interfaces/plugins/plugin-menu.d.ts +4 -4
- package/interfaces/plugins/plugins.d.ts +4 -4
- package/interfaces/plugins/with-override.d.ts +1 -1
- package/interfaces/toolbar.d.ts +4 -4
- package/interfaces/utility/nested-structure-by-key.d.ts +1 -1
- package/interfaces/utility/override-by-key.d.ts +1 -1
- package/interfaces/utility/types.d.ts +1 -1
- package/interfaces/valid-children-types.d.ts +1 -1
- package/interfaces/view-base.d.ts +1 -1
- package/package.json +1 -1
- package/plugins/blockquote/blockquote.component.d.ts +1 -1
- package/plugins/code/code.component.d.ts +1 -1
- package/plugins/color/toolbar-item.component.d.ts +1 -1
- package/plugins/common/insert-data-by-invalid-type.d.ts +2 -0
- package/plugins/common/transforms.plugin.d.ts +1 -1
- package/plugins/heading/heading.plugin.d.ts +1 -1
- package/plugins/hr/hr.component.d.ts +1 -1
- package/plugins/image/image.component.d.ts +1 -1
- package/plugins/inline-code/inline-code.component.d.ts +1 -1
- package/plugins/link/edit/link-edit.component.d.ts +1 -1
- package/plugins/link/hover/link-hover.component.d.ts +1 -1
- package/plugins/link/link.component.d.ts +2 -2
- package/plugins/list/components/bulleted-list.component.d.ts +1 -1
- package/plugins/list/components/list-item.component.d.ts +1 -1
- package/plugins/list/components/numbered-list.component.d.ts +1 -1
- package/plugins/list/types.d.ts +1 -1
- package/plugins/mention/mention.type.d.ts +3 -1
- package/plugins/mention/suggestion.component.d.ts +1 -1
- package/plugins/quick-insert/components/quick-insert.component.d.ts +1 -1
- package/plugins/table/components/insert-mark/insert-mark.component.d.ts +1 -1
- package/plugins/table/components/row/row.component.d.ts +1 -1
- package/plugins/table/components/table.component.d.ts +1 -1
- package/plugins/table/components/td/td.component.d.ts +1 -1
- package/plugins/table/components/toolbar/table-options.component.d.ts +1 -1
- package/plugins/table/components/toolbar/table-toolbar.component.d.ts +1 -1
- package/plugins/table/toolbar-item.component.d.ts +1 -1
- package/plugins/todo-item/todo-item.component.d.ts +1 -1
- package/plugins/vertical-align/toolbar-item.component.d.ts +1 -1
- package/queries/find-node.d.ts +1 -1
- package/queries/get-range-before.d.ts +1 -1
- package/utils/index.d.ts +1 -0
- package/utils/insert-data-by-invalid-type.d.ts +1 -0
- package/utils/match.d.ts +3 -3
- package/esm2020/plugins/common/auto-insert-data.mjs +0 -75
- package/esm2020/plugins/deserializers/deserialize-html.plugin.mjs +0 -48
- package/esm2020/plugins/deserializers/deserialize-md.plugin.mjs +0 -130
- package/plugins/common/auto-insert-data.d.ts +0 -2
- /package/plugins/{deserializers → deserialize}/deserialize-html.plugin.d.ts +0 -0
- /package/plugins/{deserializers → deserialize}/deserialize-md.plugin.d.ts +0 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { Editor, Path, Transforms } from 'slate';
|
|
2
|
+
import * as TheQueries from '../queries';
|
|
3
|
+
import { mergeElementOptions } from './merge-element-options';
|
|
4
|
+
import { DefaultElementOptions } from '../interfaces';
|
|
5
|
+
import { getPluginOptions } from '../core';
|
|
6
|
+
import { AngularEditor } from 'slate-angular';
|
|
7
|
+
export function insertDataByInvalidType(editor, fragment) {
|
|
8
|
+
if (fragment) {
|
|
9
|
+
let allElementOptions = DefaultElementOptions;
|
|
10
|
+
if (editor.extraElementOptions?.length) {
|
|
11
|
+
const extraInfo = mergeElementOptions(editor.extraElementOptions);
|
|
12
|
+
allElementOptions = Object.values(extraInfo);
|
|
13
|
+
}
|
|
14
|
+
if (TheQueries.isAcrossBlocks(editor, fragment) || Editor.isVoid(editor, fragment[0])) {
|
|
15
|
+
const { selection } = editor;
|
|
16
|
+
const [start] = Editor.edges(editor, selection);
|
|
17
|
+
// query whether there is a node to be verified
|
|
18
|
+
const tryVerifyNode = allElementOptions.find(item => TheQueries.getAboveByType(editor, item.type, { at: start, mode: 'lowest' }));
|
|
19
|
+
if (tryVerifyNode) {
|
|
20
|
+
// is exist invalid element type in fragment
|
|
21
|
+
const invalidIndex = fragment.findIndex(item => tryVerifyNode.invalidChildrenTypes.includes(item.type));
|
|
22
|
+
if (invalidIndex > -1) {
|
|
23
|
+
const invalidFragmentData = fragment.slice(invalidIndex, fragment.length);
|
|
24
|
+
const allowParentTypes = getPluginOptions(editor, invalidFragmentData[0].type)?.allowParentTypes || [];
|
|
25
|
+
const insertNodePath = TheQueries.getInsertElementsPath(editor, allowParentTypes);
|
|
26
|
+
if (insertNodePath) {
|
|
27
|
+
Editor.withoutNormalizing(editor, () => {
|
|
28
|
+
Transforms.insertNodes(editor, fragment, { at: insertNodePath });
|
|
29
|
+
Transforms.select(editor, Editor.start(editor, insertNodePath));
|
|
30
|
+
});
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
const [, anchorBlockPath] = TheQueries.anchorBlockEntry(editor);
|
|
34
|
+
const nextPath = Path.next([anchorBlockPath[0]]);
|
|
35
|
+
Transforms.insertNodes(editor, fragment, { at: nextPath });
|
|
36
|
+
Transforms.select(editor, Editor.start(editor, nextPath));
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
Editor.withoutNormalizing(editor, () => {
|
|
41
|
+
const isEmptyParagraph = TheQueries.isEmptyParagraph(editor, editor.selection.anchor);
|
|
42
|
+
const emptyPath = Path.parent(editor.selection.anchor.path);
|
|
43
|
+
Transforms.insertNodes(editor, fragment);
|
|
44
|
+
if (isEmptyParagraph) {
|
|
45
|
+
Transforms.delete(editor, { at: emptyPath });
|
|
46
|
+
const lastPath = emptyPath.pop();
|
|
47
|
+
Transforms.select(editor, [...emptyPath, lastPath + fragment.length - 1]);
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
const lastPath = emptyPath.pop();
|
|
51
|
+
Transforms.select(editor, [...emptyPath, lastPath + fragment.length]);
|
|
52
|
+
}
|
|
53
|
+
AngularEditor.focus(editor);
|
|
54
|
+
Transforms.collapse(editor, { edge: 'end' });
|
|
55
|
+
});
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
return true;
|
|
59
|
+
}
|
|
60
|
+
return true;
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWRhdGEtYnktaW52YWxpZC10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3V0aWxzL2luc2VydC1kYXRhLWJ5LWludmFsaWQtdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDakQsT0FBTyxLQUFLLFVBQVUsTUFBTSxZQUFZLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzlDLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxNQUFNLEVBQUUsUUFBUTtJQUNwRCxJQUFJLFFBQVEsRUFBRTtRQUNWLElBQUksaUJBQWlCLEdBQUcscUJBQXFCLENBQUM7UUFDOUMsSUFBSSxNQUFNLENBQUMsbUJBQW1CLEVBQUUsTUFBTSxFQUFFO1lBQ3BDLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQ2xFLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDaEQ7UUFDRCxJQUFJLFVBQVUsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ25GLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQUM7WUFDN0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENB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R0FBRyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQzdFO3FCQUFNO29CQUNILE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDakMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLFNBQVMsRUFBRSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7aUJBQ3pFO2dCQUNELGFBQWEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzVCLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDakQsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUNELE9BQU8sSUFBSSxDQUFDO0tBQ2Y7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBQYXRoLCBUcmFuc2Zvcm1zIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0ICogYXMgVGhlUXVlcmllcyBmcm9tICcuLi9xdWVyaWVzJztcbmltcG9ydCB7IG1lcmdlRWxlbWVudE9wdGlvbnMgfSBmcm9tICcuL21lcmdlLWVsZW1lbnQtb3B0aW9ucyc7XG5pbXBvcnQgeyBEZWZhdWx0RWxlbWVudE9wdGlvbnMgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGdldFBsdWdpbk9wdGlvbnMgfSBmcm9tICcuLi9jb3JlJztcbmltcG9ydCB7IEFuZ3VsYXJFZGl0b3IgfSBmcm9tICdzbGF0ZS1hbmd1bGFyJztcbmltcG9ydCB7IEN1c3RvbUVsZW1lbnRLaW5kcyB9IGZyb20gJy4uL2N1c3RvbS10eXBlcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnNlcnREYXRhQnlJbnZhbGlkVHlwZShlZGl0b3IsIGZyYWdtZW50KSB7XG4gICAgaWYgKGZyYWdtZW50KSB7XG4gICAgICAgIGxldCBhbGxFbGVtZW50T3B0aW9ucyA9IERlZmF1bHRFbGVtZW50T3B0aW9ucztcbiAgICAgICAgaWYgKGVkaXRvci5leHRyYUVsZW1lbnRPcHRpb25zPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNvbnN0IGV4dHJhSW5mbyA9IG1lcmdlRWxlbWVudE9wdGlvbnMoZWRpdG9yLmV4dHJhRWxlbWVudE9wdGlvbnMpO1xuICAgICAgICAgICAgYWxsRWxlbWVudE9wdGlvbnMgPSBPYmplY3QudmFsdWVzKGV4dHJhSW5mbyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKFRoZVF1ZXJpZXMuaXNBY3Jvc3NCbG9ja3MoZWRpdG9yLCBmcmFnbWVudCkgfHwgRWRpdG9yLmlzVm9pZChlZGl0b3IsIGZyYWdtZW50WzBdKSkge1xuICAgICAgICAgICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcbiAgICAgICAgICAgIGNvbnN0IFtzdGFydF0gPSBFZGl0b3IuZWRnZXMoZWRpdG9yLCBzZWxlY3Rpb24pO1xuICAgICAgICAgICAgLy8gcXVlcnkgd2hldGhlciB0aGVyZSBpcyBhIG5vZGUgdG8gYmUgdmVyaWZpZWRcbiAgICAgICAgICAgIGNvbnN0IHRyeVZlcmlmeU5vZGUgPSBhbGxFbGVtZW50T3B0aW9ucy5maW5kKGl0ZW0gPT5cbiAgICAgICAgICAgICAgICBUaGVRdWVyaWVzLmdldEFib3ZlQnlUeXBlKGVkaXRvciwgaXRlbS50eXBlLCB7IGF0OiBzdGFydCwgbW9kZTogJ2xvd2VzdCcgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAodHJ5VmVyaWZ5Tm9kZSkge1xuICAgICAgICAgICAgICAgIC8vIGlzIGV4aXN0IGludmFsaWQgZWxlbWVudCB0eXBlIGluIGZyYWdtZW50XG4gICAgICAgICAgICAgICAgY29uc3QgaW52YWxpZEluZGV4ID0gZnJhZ21lbnQuZmluZEluZGV4KGl0ZW0gPT4gdHJ5VmVyaWZ5Tm9kZS5pbnZhbGlkQ2hpbGRyZW5UeXBlcy5pbmNsdWRlcyhpdGVtLnR5cGUpKTtcbiAgICAgICAgICAgICAgICBpZiAoaW52YWxpZEluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaW52YWxpZEZyYWdtZW50RGF0YSA9IGZyYWdtZW50LnNsaWNlKGludmFsaWRJbmRleCwgZnJhZ21lbnQubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYWxsb3dQYXJlbnRUeXBlcyA9IGdldFBsdWdpbk9wdGlvbnMoZWRpdG9yLCBpbnZhbGlkRnJhZ21lbnREYXRhWzBdLnR5cGUpPy5hbGxvd1BhcmVudFR5cGVzIHx8IFtdO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnNlcnROb2RlUGF0aCA9IFRoZVF1ZXJpZXMuZ2V0SW5zZXJ0RWxlbWVudHNQYXRoKGVkaXRvciwgYWxsb3dQYXJlbnRUeXBlcyBhcyBDdXN0b21FbGVtZW50S2luZHNbXSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpbnNlcnROb2RlUGF0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgRWRpdG9yLndpdGhvdXROb3JtYWxpemluZyhlZGl0b3IsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGVzKGVkaXRvciwgZnJhZ21lbnQsIHsgYXQ6IGluc2VydE5vZGVQYXRoIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2VsZWN0KGVkaXRvciwgRWRpdG9yLnN0YXJ0KGVkaXRvciwgaW5zZXJ0Tm9kZVBhdGgpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IFssIGFuY2hvckJsb2NrUGF0aF0gPSBUaGVRdWVyaWVzLmFuY2hvckJsb2NrRW50cnkoZWRpdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV4dFBhdGggPSBQYXRoLm5leHQoW2FuY2hvckJsb2NrUGF0aFswXV0pO1xuICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLmluc2VydE5vZGVzKGVkaXRvciwgZnJhZ21lbnQsIHsgYXQ6IG5leHRQYXRoIH0pO1xuICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNlbGVjdChlZGl0b3IsIEVkaXRvci5zdGFydChlZGl0b3IsIG5leHRQYXRoKSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBFZGl0b3Iud2l0aG91dE5vcm1hbGl6aW5nKGVkaXRvciwgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzRW1wdHlQYXJhZ3JhcGggPSBUaGVRdWVyaWVzLmlzRW1wdHlQYXJhZ3JhcGgoZWRpdG9yLCBlZGl0b3Iuc2VsZWN0aW9uLmFuY2hvcik7XG4gICAgICAgICAgICAgICAgY29uc3QgZW1wdHlQYXRoID0gUGF0aC5wYXJlbnQoZWRpdG9yLnNlbGVjdGlvbi5hbmNob3IucGF0aCk7XG4gICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIGZyYWdtZW50KTtcbiAgICAgICAgICAgICAgICBpZiAoaXNFbXB0eVBhcmFncmFwaCkge1xuICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLmRlbGV0ZShlZGl0b3IsIHsgYXQ6IGVtcHR5UGF0aCB9KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGFzdFBhdGggPSBlbXB0eVBhdGgucG9wKCk7XG4gICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2VsZWN0KGVkaXRvciwgWy4uLmVtcHR5UGF0aCwgbGFzdFBhdGggKyBmcmFnbWVudC5sZW5ndGggLSAxXSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGFzdFBhdGggPSBlbXB0eVBhdGgucG9wKCk7XG4gICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2VsZWN0KGVkaXRvciwgWy4uLmVtcHR5UGF0aCwgbGFzdFBhdGggKyBmcmFnbWVudC5sZW5ndGhdKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQW5ndWxhckVkaXRvci5mb2N1cyhlZGl0b3IpO1xuICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuY29sbGFwc2UoZWRpdG9yLCB7IGVkZ2U6ICdlbmQnIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xufVxuIl19
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { DefaultElementOptions } from '../interfaces';
|
|
2
2
|
export const mergeElementOptions = (elementOptions) => {
|
|
3
|
-
elementOptions = elementOptions.filter(item => item.
|
|
3
|
+
elementOptions = elementOptions.filter(item => item.invalidChildrenTypes.length > 0);
|
|
4
4
|
const combinationData = [...DefaultElementOptions, ...elementOptions];
|
|
5
5
|
const dataInfo = {};
|
|
6
6
|
combinationData.forEach(item => {
|
|
7
|
-
const { type,
|
|
7
|
+
const { type, invalidChildrenTypes, isSecondaryContainer } = item;
|
|
8
8
|
if (!dataInfo[type]) {
|
|
9
9
|
dataInfo[type] = {
|
|
10
10
|
type,
|
|
11
|
-
|
|
11
|
+
invalidChildrenTypes,
|
|
12
12
|
isSecondaryContainer
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
|
-
dataInfo[type].
|
|
15
|
+
dataInfo[type].invalidChildrenTypes = Array.from(new Set([...invalidChildrenTypes, ...dataInfo[type].inValidChildrenTypes]));
|
|
16
16
|
});
|
|
17
17
|
return dataInfo;
|
|
18
18
|
};
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyZ2UtZWxlbWVudC1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3V0aWxzL21lcmdlLWVsZW1lbnQtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQXNCLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsY0FBb0MsRUFBRSxFQUFFO0lBQ3hFLGNBQWMsR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNyRixNQUFNLGVBQWUsR0FBRyxDQUFDLEdBQUcscUJBQXFCLEVBQUUsR0FBRyxjQUFjLENBQUMsQ0FBQztJQUN0RSxNQUFNLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDcEIsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUMzQixNQUFNLEVBQUUsSUFBSSxFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQ2xFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakIsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHO2dCQUNiLElBQUk7Z0JBQ0osb0JBQW9CO2dCQUNwQixvQkFBb0I7YUFDdkIsQ0FBQztTQUNMO1FBQ0QsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLG9CQUFvQixFQUFFLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pJLENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxRQUFRLENBQUM7QUFDcEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVmYXVsdEVsZW1lbnRPcHRpb25zLCBFbGVtZW50T3B0aW9uc0luZm8gfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNvbnN0IG1lcmdlRWxlbWVudE9wdGlvbnMgPSAoZWxlbWVudE9wdGlvbnM6IEVsZW1lbnRPcHRpb25zSW5mb1tdKSA9PiB7XG4gICAgZWxlbWVudE9wdGlvbnMgPSBlbGVtZW50T3B0aW9ucy5maWx0ZXIoaXRlbSA9PiBpdGVtLmludmFsaWRDaGlsZHJlblR5cGVzLmxlbmd0aCA+IDApO1xuICAgIGNvbnN0IGNvbWJpbmF0aW9uRGF0YSA9IFsuLi5EZWZhdWx0RWxlbWVudE9wdGlvbnMsIC4uLmVsZW1lbnRPcHRpb25zXTtcbiAgICBjb25zdCBkYXRhSW5mbyA9IHt9O1xuICAgIGNvbWJpbmF0aW9uRGF0YS5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICBjb25zdCB7IHR5cGUsIGludmFsaWRDaGlsZHJlblR5cGVzLCBpc1NlY29uZGFyeUNvbnRhaW5lciB9ID0gaXRlbTtcbiAgICAgICAgaWYgKCFkYXRhSW5mb1t0eXBlXSkge1xuICAgICAgICAgICAgZGF0YUluZm9bdHlwZV0gPSB7XG4gICAgICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgICAgICBpbnZhbGlkQ2hpbGRyZW5UeXBlcyxcbiAgICAgICAgICAgICAgICBpc1NlY29uZGFyeUNvbnRhaW5lclxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBkYXRhSW5mb1t0eXBlXS5pbnZhbGlkQ2hpbGRyZW5UeXBlcyA9IEFycmF5LmZyb20obmV3IFNldChbLi4uaW52YWxpZENoaWxkcmVuVHlwZXMsIC4uLmRhdGFJbmZvW3R5cGVdLmluVmFsaWRDaGlsZHJlblR5cGVzXSkpO1xuICAgIH0pO1xuICAgIHJldHVybiBkYXRhSW5mbztcbn07XG4iXX0=
|