@worktile/theia 2.4.1 → 2.4.4

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 (42) hide show
  1. package/bundles/worktile-theia.umd.js +1117 -1034
  2. package/bundles/worktile-theia.umd.js.map +1 -1
  3. package/constants/auto-format-rules.d.ts +1 -1
  4. package/editor.module.d.ts +2 -1
  5. package/esm2015/constants/auto-format-rules.js +3 -2
  6. package/esm2015/editor.component.js +5 -2
  7. package/esm2015/interfaces/auto-format.js +1 -1
  8. package/esm2015/interfaces/editor.js +1 -1
  9. package/esm2015/plugins/autoformat/autoformat.plugin.js +23 -6
  10. package/esm2015/plugins/indent/indent.editor.js +11 -13
  11. package/esm2015/plugins/indent/indent.plugin.js +15 -2
  12. package/esm2015/plugins/indent/on-keydown-indent.js +3 -5
  13. package/esm2015/plugins/index.js +2 -3
  14. package/esm2015/plugins/quick-insert/components/quick-insert.component.js +6 -2
  15. package/esm2015/plugins/quick-insert/components/quick-toolbar/quick-toolbar.component.js +14 -15
  16. package/esm2015/plugins/quick-insert/quick-insert.editor.js +18 -27
  17. package/esm2015/plugins/quick-insert/quick-insert.plugin.js +33 -15
  18. package/esm2015/plugins/table/components/insert-mark/insert-mark.component.js +4 -4
  19. package/esm2015/plugins/table/components/table.component.js +2 -2
  20. package/esm2015/plugins/table/components/td/td.component.js +5 -7
  21. package/esm2015/plugins/table/table.service.js +6 -6
  22. package/esm2015/plugins/todo-item/todo-item.component.js +15 -7
  23. package/esm2015/transforms/index.js +3 -2
  24. package/esm2015/transforms/insert-element-next.js +1 -1
  25. package/esm2015/transforms/insert-element-node.js +36 -0
  26. package/esm2015/utils/is-clean-empty-paragraph.js +4 -1
  27. package/fesm2015/worktile-theia.js +1054 -969
  28. package/fesm2015/worktile-theia.js.map +1 -1
  29. package/interfaces/auto-format.d.ts +1 -0
  30. package/interfaces/editor.d.ts +14 -1
  31. package/package.json +1 -1
  32. package/plugins/autoformat/autoformat.plugin.d.ts +1 -2
  33. package/plugins/indent/indent.plugin.d.ts +1 -0
  34. package/plugins/indent/on-keydown-indent.d.ts +1 -1
  35. package/plugins/quick-insert/components/quick-toolbar/quick-toolbar.component.d.ts +3 -4
  36. package/plugins/quick-insert/quick-insert.editor.d.ts +3 -4
  37. package/plugins/quick-insert/quick-insert.plugin.d.ts +2 -0
  38. package/plugins/table/components/table.component.scss +43 -42
  39. package/plugins/todo-item/todo-item.component.d.ts +3 -1
  40. package/transforms/index.d.ts +2 -1
  41. package/transforms/insert-element-node.d.ts +2 -0
  42. package/utils/is-clean-empty-paragraph.d.ts +2 -1
@@ -0,0 +1,36 @@
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=
@@ -13,6 +13,9 @@ export const isCleanEmptyParagraph = (editor) => {
13
13
  return false;
14
14
  }
15
15
  const block = Node.ancestor(editor, [editor.selection.anchor.path[0]]);
16
+ return isPureEmptyParagraph(editor, block);
17
+ };
18
+ export const isPureEmptyParagraph = (editor, block) => {
16
19
  const textIndent = 'textIndent';
17
20
  const align = 'align';
18
21
  const hasTextIndent = block[textIndent];
@@ -31,4 +34,4 @@ export const isCleanEmptyParagraph = (editor) => {
31
34
  }
32
35
  return false;
33
36
  };
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY2xlYW4tZW1wdHktcGFyYWdyYXBoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3V0aWxzL2lzLWNsZWFuLWVtcHR5LXBhcmFncmFwaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUMzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbEU7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLE1BQWMsRUFBRSxFQUFFO0lBQ3BELE1BQU0saUJBQWlCLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRWpILElBQUksQ0FBQyxpQkFBaUIsRUFBRTtRQUNwQixPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQVksQ0FBQztJQUNsRixNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUM7SUFDaEMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDO0lBQ3RCLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN4QyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUU3QyxJQUNJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRTtRQUN6QixPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztRQUN4QixLQUFLLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxTQUFTO1FBQ3JDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDO1FBQzdCLENBQUMsU0FBUztRQUNWLENBQUMsYUFBYTtRQUNkLENBQUMsQ0FBQyxVQUFVLElBQUksVUFBVSxLQUFLLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDaEQ7UUFDRSxPQUFPLElBQUksQ0FBQztLQUNmO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBOb2RlLCBUZXh0LCBFbGVtZW50LCBSYW5nZSB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFRoZUVkaXRvciB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgQWxpZ25tZW50LCBFbGVtZW50S2luZHMgfSBmcm9tICcuLi9jb25zdGFudHMvbm9kZS10eXBlcyc7XG5cbi8qKlxuICogd2hldGhlciB0aGUgY3VycmVudCBub2RlIGlzIGEgY2xlYW4gcGFyYWdyYXBoXG4gKiBAcGFyYW0gZWRpdG9yXG4gKiBAcGFyYW0gdGV4dFxuICogQHJldHVybnMgYm9vbGVhblxuICovXG5leHBvcnQgY29uc3QgaXNDbGVhbkVtcHR5UGFyYWdyYXBoID0gKGVkaXRvcjogRWRpdG9yKSA9PiB7XG4gICAgY29uc3QgaXNDb2xsYXBzZWRDdXJzb3IgPSBUaGVFZGl0b3IuaXNGb2N1c2VkKGVkaXRvcikgJiYgZWRpdG9yLnNlbGVjdGlvbiAmJiBSYW5nZS5pc0NvbGxhcHNlZChlZGl0b3Iuc2VsZWN0aW9uKTtcblxuICAgIGlmICghaXNDb2xsYXBzZWRDdXJzb3IpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IGJsb2NrID0gTm9kZS5hbmNlc3RvcihlZGl0b3IsIFtlZGl0b3Iuc2VsZWN0aW9uLmFuY2hvci5wYXRoWzBdXSkgYXMgRWxlbWVudDtcbiAgICBjb25zdCB0ZXh0SW5kZW50ID0gJ3RleHRJbmRlbnQnO1xuICAgIGNvbnN0IGFsaWduID0gJ2FsaWduJztcbiAgICBjb25zdCBoYXNUZXh0SW5kZW50ID0gYmxvY2tbdGV4dEluZGVudF07XG4gICAgY29uc3QgYWxpZ25WYWx1ZSA9IGJsb2NrW2FsaWduXTtcbiAgICBjb25zdCBoYXNJbmRlbnQgPSBibG9ja1tFbGVtZW50S2luZHMuaW5kZW50XTtcblxuICAgIGlmIChcbiAgICAgICAgTm9kZS5zdHJpbmcoYmxvY2spID09PSAnJyAmJlxuICAgICAgICBFbGVtZW50LmlzRWxlbWVudChibG9jaykgJiZcbiAgICAgICAgYmxvY2sudHlwZSA9PT0gRWxlbWVudEtpbmRzLnBhcmFncmFwaCAmJlxuICAgICAgICBibG9jay5jaGlsZHJlbi5sZW5ndGggPT09IDEgJiZcbiAgICAgICAgVGV4dC5pc1RleHQoYmxvY2suY2hpbGRyZW5bMF0pICYmXG4gICAgICAgICFFZGl0b3IuaXNWb2lkKGVkaXRvciwgYmxvY2spICYmXG4gICAgICAgICFoYXNJbmRlbnQgJiZcbiAgICAgICAgIWhhc1RleHRJbmRlbnQgJiZcbiAgICAgICAgKCFhbGlnblZhbHVlIHx8IGFsaWduVmFsdWUgPT09IEFsaWdubWVudC5sZWZ0KVxuICAgICkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufTtcbiJdfQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY2xlYW4tZW1wdHktcGFyYWdyYXBoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3V0aWxzL2lzLWNsZWFuLWVtcHR5LXBhcmFncmFwaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUMzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbEU7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLE1BQWMsRUFBRSxFQUFFO0lBQ3BELE1BQU0saUJBQWlCLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRWpILElBQUksQ0FBQyxpQkFBaUIsRUFBRTtRQUNwQixPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQVksQ0FBQztJQUVsRixPQUFPLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztBQUMvQyxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLE1BQWMsRUFBRSxLQUFXLEVBQUUsRUFBRTtJQUNoRSxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUM7SUFDaEMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDO0lBQ3RCLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN4QyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUU3QyxJQUNJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRTtRQUN6QixPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztRQUN4QixLQUFLLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxTQUFTO1FBQ3JDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDO1FBQzdCLENBQUMsU0FBUztRQUNWLENBQUMsYUFBYTtRQUNkLENBQUMsQ0FBQyxVQUFVLElBQUksVUFBVSxLQUFLLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDaEQ7UUFDRSxPQUFPLElBQUksQ0FBQztLQUNmO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBOb2RlLCBUZXh0LCBFbGVtZW50LCBSYW5nZSB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFRoZUVkaXRvciB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgQWxpZ25tZW50LCBFbGVtZW50S2luZHMgfSBmcm9tICcuLi9jb25zdGFudHMvbm9kZS10eXBlcyc7XG5cbi8qKlxuICogd2hldGhlciB0aGUgY3VycmVudCBub2RlIGlzIGEgY2xlYW4gcGFyYWdyYXBoXG4gKiBAcGFyYW0gZWRpdG9yXG4gKiBAcGFyYW0gdGV4dFxuICogQHJldHVybnMgYm9vbGVhblxuICovXG5leHBvcnQgY29uc3QgaXNDbGVhbkVtcHR5UGFyYWdyYXBoID0gKGVkaXRvcjogRWRpdG9yKSA9PiB7XG4gICAgY29uc3QgaXNDb2xsYXBzZWRDdXJzb3IgPSBUaGVFZGl0b3IuaXNGb2N1c2VkKGVkaXRvcikgJiYgZWRpdG9yLnNlbGVjdGlvbiAmJiBSYW5nZS5pc0NvbGxhcHNlZChlZGl0b3Iuc2VsZWN0aW9uKTtcblxuICAgIGlmICghaXNDb2xsYXBzZWRDdXJzb3IpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IGJsb2NrID0gTm9kZS5hbmNlc3RvcihlZGl0b3IsIFtlZGl0b3Iuc2VsZWN0aW9uLmFuY2hvci5wYXRoWzBdXSkgYXMgRWxlbWVudDtcbiAgICBcbiAgICByZXR1cm4gaXNQdXJlRW1wdHlQYXJhZ3JhcGgoZWRpdG9yLCBibG9jayk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNQdXJlRW1wdHlQYXJhZ3JhcGggPSAoZWRpdG9yOiBFZGl0b3IsIGJsb2NrOiBOb2RlKSA9PiB7XG4gICAgY29uc3QgdGV4dEluZGVudCA9ICd0ZXh0SW5kZW50JztcbiAgICBjb25zdCBhbGlnbiA9ICdhbGlnbic7XG4gICAgY29uc3QgaGFzVGV4dEluZGVudCA9IGJsb2NrW3RleHRJbmRlbnRdO1xuICAgIGNvbnN0IGFsaWduVmFsdWUgPSBibG9ja1thbGlnbl07XG4gICAgY29uc3QgaGFzSW5kZW50ID0gYmxvY2tbRWxlbWVudEtpbmRzLmluZGVudF07XG5cbiAgICBpZiAoXG4gICAgICAgIE5vZGUuc3RyaW5nKGJsb2NrKSA9PT0gJycgJiZcbiAgICAgICAgRWxlbWVudC5pc0VsZW1lbnQoYmxvY2spICYmXG4gICAgICAgIGJsb2NrLnR5cGUgPT09IEVsZW1lbnRLaW5kcy5wYXJhZ3JhcGggJiZcbiAgICAgICAgYmxvY2suY2hpbGRyZW4ubGVuZ3RoID09PSAxICYmXG4gICAgICAgIFRleHQuaXNUZXh0KGJsb2NrLmNoaWxkcmVuWzBdKSAmJlxuICAgICAgICAhRWRpdG9yLmlzVm9pZChlZGl0b3IsIGJsb2NrKSAmJlxuICAgICAgICAhaGFzSW5kZW50ICYmXG4gICAgICAgICFoYXNUZXh0SW5kZW50ICYmXG4gICAgICAgICghYWxpZ25WYWx1ZSB8fCBhbGlnblZhbHVlID09PSBBbGlnbm1lbnQubGVmdClcbiAgICApIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xufTtcbiJdfQ==