@limble/limble-tree 1.0.0-alpha.1 → 1.0.0-beta.1

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 (99) hide show
  1. package/README.md +450 -17
  2. package/esm2020/lib/components/branch/branch.component.mjs +7 -15
  3. package/esm2020/lib/components/dropzone/dropzone.component.mjs +2 -2
  4. package/esm2020/lib/components/root/root.component.mjs +3 -4
  5. package/esm2020/lib/core/branch-options.interface.mjs +1 -1
  6. package/esm2020/lib/core/configuration/configuration.mjs +1 -1
  7. package/esm2020/lib/core/configuration/tree-options.interface.mjs +1 -1
  8. package/esm2020/lib/core/index.mjs +1 -2
  9. package/esm2020/lib/core/relationship.interface.mjs +1 -1
  10. package/esm2020/lib/core/tree-branch/branch-controller.mjs +99 -0
  11. package/esm2020/lib/core/tree-branch/tree-branch.mjs +260 -106
  12. package/esm2020/lib/core/tree-node-base.mjs +10 -9
  13. package/esm2020/lib/core/tree-root/root-controller.mjs +42 -0
  14. package/esm2020/lib/core/tree-root/tree-root.mjs +138 -27
  15. package/esm2020/lib/core/tree-service/tree.service.mjs +7 -1
  16. package/esm2020/lib/events/drag/drag-end-event.mjs +9 -7
  17. package/esm2020/lib/events/drag/drag-start-event.mjs +2 -4
  18. package/esm2020/lib/events/drag/drop-event.mjs +2 -4
  19. package/esm2020/lib/events/general/destruction-event.mjs +10 -0
  20. package/esm2020/lib/events/general/index.mjs +2 -0
  21. package/esm2020/lib/events/index.mjs +2 -1
  22. package/esm2020/lib/events/relational/graft-event.mjs +2 -4
  23. package/esm2020/lib/events/relational/prune-event.mjs +2 -4
  24. package/esm2020/lib/events/relational/relational-tree-event.interface.mjs +1 -1
  25. package/esm2020/lib/extras/collapse/collapse.mjs +2 -2
  26. package/esm2020/lib/extras/collapse/collapse.module.mjs +2 -1
  27. package/esm2020/lib/extras/collapse/collapse.service.mjs +26 -1
  28. package/esm2020/lib/extras/drag-and-drop/drag-and-drop.mjs +6 -10
  29. package/esm2020/lib/extras/drag-and-drop/drag-and-drop.module.mjs +5 -1
  30. package/esm2020/lib/extras/drag-and-drop/drag-and-drop.service.mjs +21 -5
  31. package/esm2020/lib/extras/drag-and-drop/draggable.directive.mjs +7 -7
  32. package/esm2020/lib/extras/drag-and-drop/dragover-no-change-detect.mjs +10 -11
  33. package/esm2020/lib/extras/drag-and-drop/dropzone-renderer.mjs +9 -7
  34. package/esm2020/lib/legacy/legacy-component-obj.interface.mjs +1 -1
  35. package/esm2020/lib/legacy/legacy-tree-data.interface.mjs +1 -1
  36. package/esm2020/lib/legacy/legacy-tree-options.interface.mjs +1 -1
  37. package/esm2020/lib/legacy/legacy-tree.mjs +30 -30
  38. package/esm2020/lib/legacy/limble-tree-root/limble-tree-root.component.mjs +1 -1
  39. package/esm2020/lib/limble-tree.module.mjs +6 -2
  40. package/esm2020/lib/structure/branchable.interface.mjs +1 -1
  41. package/esm2020/lib/structure/component-container.interface.mjs +2 -0
  42. package/esm2020/lib/structure/index.mjs +2 -5
  43. package/esm2020/lib/structure/tree-branch-node.interface.mjs +1 -1
  44. package/esm2020/lib/structure/tree-event.interface.mjs +1 -1
  45. package/esm2020/lib/structure/tree-node.interface.mjs +1 -1
  46. package/esm2020/lib/structure/tree-relationship.interface.mjs +1 -1
  47. package/fesm2015/limble-limble-tree.mjs +821 -376
  48. package/fesm2015/limble-limble-tree.mjs.map +1 -1
  49. package/fesm2020/limble-limble-tree.mjs +819 -372
  50. package/fesm2020/limble-limble-tree.mjs.map +1 -1
  51. package/lib/core/branch-options.interface.d.ts +1 -1
  52. package/lib/core/configuration/configuration.d.ts +2 -2
  53. package/lib/core/configuration/tree-options.interface.d.ts +48 -29
  54. package/lib/core/index.d.ts +0 -1
  55. package/lib/core/relationship.interface.d.ts +2 -3
  56. package/lib/core/tree-branch/branch-controller.d.ts +25 -0
  57. package/lib/core/tree-branch/tree-branch.d.ts +199 -24
  58. package/lib/core/tree-node-base.d.ts +4 -5
  59. package/lib/core/tree-root/root-controller.d.ts +19 -0
  60. package/lib/core/tree-root/tree-root.d.ts +109 -14
  61. package/lib/core/tree-service/tree.service.d.ts +8 -2
  62. package/lib/events/drag/drag-end-event.d.ts +15 -13
  63. package/lib/events/drag/drag-start-event.d.ts +6 -5
  64. package/lib/events/drag/drop-event.d.ts +7 -10
  65. package/lib/events/general/destruction-event.d.ts +8 -0
  66. package/lib/events/general/index.d.ts +1 -0
  67. package/lib/events/index.d.ts +1 -0
  68. package/lib/events/relational/graft-event.d.ts +5 -6
  69. package/lib/events/relational/prune-event.d.ts +5 -6
  70. package/lib/events/relational/relational-tree-event.interface.d.ts +5 -1
  71. package/lib/extras/collapse/collapse.module.d.ts +1 -0
  72. package/lib/extras/collapse/collapse.service.d.ts +25 -0
  73. package/lib/extras/drag-and-drop/drag-and-drop.d.ts +2 -3
  74. package/lib/extras/drag-and-drop/drag-and-drop.module.d.ts +4 -0
  75. package/lib/extras/drag-and-drop/drag-and-drop.service.d.ts +22 -3
  76. package/lib/extras/drag-and-drop/draggable.directive.d.ts +4 -5
  77. package/lib/extras/drag-and-drop/dragover-no-change-detect.d.ts +7 -3
  78. package/lib/legacy/legacy-component-obj.interface.d.ts +1 -1
  79. package/lib/legacy/legacy-tree-data.interface.d.ts +1 -1
  80. package/lib/legacy/legacy-tree-options.interface.d.ts +2 -2
  81. package/lib/legacy/legacy-tree.d.ts +4 -4
  82. package/lib/legacy/limble-tree-root/limble-tree-root.component.d.ts +4 -4
  83. package/lib/limble-tree.module.d.ts +4 -0
  84. package/lib/structure/branchable.interface.d.ts +0 -1
  85. package/lib/structure/component-container.interface.d.ts +8 -0
  86. package/lib/structure/index.d.ts +1 -4
  87. package/lib/structure/tree-branch-node.interface.d.ts +3 -3
  88. package/lib/structure/tree-event.interface.d.ts +3 -3
  89. package/lib/structure/tree-node.interface.d.ts +11 -6
  90. package/lib/structure/tree-relationship.interface.d.ts +2 -2
  91. package/package.json +1 -1
  92. package/esm2020/lib/structure/container-tree-node.interface.mjs +0 -2
  93. package/esm2020/lib/structure/content-container.interface.mjs +0 -2
  94. package/esm2020/lib/structure/event-conduit.interface.mjs +0 -2
  95. package/esm2020/lib/structure/tree-root.node.interface.mjs +0 -2
  96. package/lib/structure/container-tree-node.interface.d.ts +0 -3
  97. package/lib/structure/content-container.interface.d.ts +0 -3
  98. package/lib/structure/event-conduit.interface.d.ts +0 -6
  99. package/lib/structure/tree-root.node.interface.d.ts +0 -2
@@ -20,7 +20,7 @@ class TreeCollapser {
20
20
  branch.graftTo(treeBranch);
21
21
  });
22
22
  this.tempStorage.delete(treeBranch);
23
- treeBranch.getContents().changeDetectorRef.detectChanges();
23
+ treeBranch.detectChanges();
24
24
  }
25
25
  isCollapsed(treeBranch) {
26
26
  return this.tempStorage.has(treeBranch);
@@ -30,4 +30,4 @@ class TreeCollapser {
30
30
  }
31
31
  }
32
32
  export const treeCollapser = new TreeCollapser();
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saW1ibGUtdHJlZS9zcmMvbGliL2V4dHJhcy9jb2xsYXBzZS9jb2xsYXBzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLGFBQWE7SUFHaEI7UUFDRyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVNLFFBQVEsQ0FBSSxVQUF5QjtRQUN6QyxJQUFJLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUFFLE9BQU87UUFDL0MsTUFBTSxRQUFRLEdBQXlCLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDM0MsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3RDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRU0sTUFBTSxDQUFJLFVBQXlCO1FBQ3ZDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xELElBQUksUUFBUSxLQUFLLFNBQVM7WUFBRSxPQUFPO1FBQ25DLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN6QixNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDcEMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzlELENBQUM7SUFFTSxXQUFXLENBQUksVUFBeUI7UUFDNUMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU0scUJBQXFCLENBQ3pCLE1BQXFCLEVBQ3JCLE1BQXFCO1FBRXJCLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUNqQixNQUFNLEVBQ04sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQ3JELENBQUM7SUFDTCxDQUFDO0NBQ0g7QUFFRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyZWVCcmFuY2ggfSBmcm9tIFwiLi4vLi4vY29yZVwiO1xuXG5jbGFzcyBUcmVlQ29sbGFwc2VyIHtcbiAgIHByaXZhdGUgcmVhZG9ubHkgdGVtcFN0b3JhZ2U6IE1hcDxUcmVlQnJhbmNoPGFueT4sIEFycmF5PFRyZWVCcmFuY2g8YW55Pj4+O1xuXG4gICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICB0aGlzLnRlbXBTdG9yYWdlID0gbmV3IE1hcCgpO1xuICAgfVxuXG4gICBwdWJsaWMgY29sbGFwc2U8VD4odHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPik6IHZvaWQge1xuICAgICAgaWYgKHRyZWVCcmFuY2guYnJhbmNoZXMoKS5sZW5ndGggPT09IDApIHJldHVybjtcbiAgICAgIGNvbnN0IGJyYW5jaGVzOiBBcnJheTxUcmVlQnJhbmNoPFQ+PiA9IFtdO1xuICAgICAgdGhpcy50ZW1wU3RvcmFnZS5zZXQodHJlZUJyYW5jaCwgYnJhbmNoZXMpO1xuICAgICAgdHJlZUJyYW5jaC5icmFuY2hlcygpLmZvckVhY2goKGJyYW5jaCkgPT4ge1xuICAgICAgICAgYnJhbmNoLnBydW5lKCk7XG4gICAgICAgICBicmFuY2hlcy5wdXNoKGJyYW5jaCk7XG4gICAgICB9KTtcbiAgIH1cblxuICAgcHVibGljIGV4cGFuZDxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+KTogdm9pZCB7XG4gICAgICBjb25zdCBicmFuY2hlcyA9IHRoaXMudGVtcFN0b3JhZ2UuZ2V0KHRyZWVCcmFuY2gpO1xuICAgICAgaWYgKGJyYW5jaGVzID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgICAgIGJyYW5jaGVzLmZvckVhY2goKGJyYW5jaCkgPT4ge1xuICAgICAgICAgYnJhbmNoLmdyYWZ0VG8odHJlZUJyYW5jaCk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMudGVtcFN0b3JhZ2UuZGVsZXRlKHRyZWVCcmFuY2gpO1xuICAgICAgdHJlZUJyYW5jaC5nZXRDb250ZW50cygpLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgIH1cblxuICAgcHVibGljIGlzQ29sbGFwc2VkPFQ+KHRyZWVCcmFuY2g6IFRyZWVCcmFuY2g8VD4pOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLnRlbXBTdG9yYWdlLmhhcyh0cmVlQnJhbmNoKTtcbiAgIH1cblxuICAgcHVibGljIHN0b3JlUHJlY29sbGFwc2VkTm9kZTxUPihcbiAgICAgIHBhcmVudDogVHJlZUJyYW5jaDxUPixcbiAgICAgIGJyYW5jaDogVHJlZUJyYW5jaDxUPlxuICAgKTogdm9pZCB7XG4gICAgICB0aGlzLnRlbXBTdG9yYWdlLnNldChcbiAgICAgICAgIHBhcmVudCxcbiAgICAgICAgICh0aGlzLnRlbXBTdG9yYWdlLmdldChwYXJlbnQpID8/IFtdKS5jb25jYXQoYnJhbmNoKVxuICAgICAgKTtcbiAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IHRyZWVDb2xsYXBzZXIgPSBuZXcgVHJlZUNvbGxhcHNlcigpO1xuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saW1ibGUtdHJlZS9zcmMvbGliL2V4dHJhcy9jb2xsYXBzZS9jb2xsYXBzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLGFBQWE7SUFHaEI7UUFDRyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVNLFFBQVEsQ0FBSSxVQUF5QjtRQUN6QyxJQUFJLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUFFLE9BQU87UUFDL0MsTUFBTSxRQUFRLEdBQXlCLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDM0MsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3RDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRU0sTUFBTSxDQUFJLFVBQXlCO1FBQ3ZDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xELElBQUksUUFBUSxLQUFLLFNBQVM7WUFBRSxPQUFPO1FBQ25DLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN6QixNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDcEMsVUFBVSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxXQUFXLENBQUksVUFBeUI7UUFDNUMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU0scUJBQXFCLENBQ3pCLE1BQXFCLEVBQ3JCLE1BQXFCO1FBRXJCLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUNqQixNQUFNLEVBQ04sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQ3JELENBQUM7SUFDTCxDQUFDO0NBQ0g7QUFFRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyZWVCcmFuY2ggfSBmcm9tIFwiLi4vLi4vY29yZVwiO1xuXG5jbGFzcyBUcmVlQ29sbGFwc2VyIHtcbiAgIHByaXZhdGUgcmVhZG9ubHkgdGVtcFN0b3JhZ2U6IE1hcDxUcmVlQnJhbmNoPGFueT4sIEFycmF5PFRyZWVCcmFuY2g8YW55Pj4+O1xuXG4gICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICB0aGlzLnRlbXBTdG9yYWdlID0gbmV3IE1hcCgpO1xuICAgfVxuXG4gICBwdWJsaWMgY29sbGFwc2U8VD4odHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPik6IHZvaWQge1xuICAgICAgaWYgKHRyZWVCcmFuY2guYnJhbmNoZXMoKS5sZW5ndGggPT09IDApIHJldHVybjtcbiAgICAgIGNvbnN0IGJyYW5jaGVzOiBBcnJheTxUcmVlQnJhbmNoPFQ+PiA9IFtdO1xuICAgICAgdGhpcy50ZW1wU3RvcmFnZS5zZXQodHJlZUJyYW5jaCwgYnJhbmNoZXMpO1xuICAgICAgdHJlZUJyYW5jaC5icmFuY2hlcygpLmZvckVhY2goKGJyYW5jaCkgPT4ge1xuICAgICAgICAgYnJhbmNoLnBydW5lKCk7XG4gICAgICAgICBicmFuY2hlcy5wdXNoKGJyYW5jaCk7XG4gICAgICB9KTtcbiAgIH1cblxuICAgcHVibGljIGV4cGFuZDxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+KTogdm9pZCB7XG4gICAgICBjb25zdCBicmFuY2hlcyA9IHRoaXMudGVtcFN0b3JhZ2UuZ2V0KHRyZWVCcmFuY2gpO1xuICAgICAgaWYgKGJyYW5jaGVzID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgICAgIGJyYW5jaGVzLmZvckVhY2goKGJyYW5jaCkgPT4ge1xuICAgICAgICAgYnJhbmNoLmdyYWZ0VG8odHJlZUJyYW5jaCk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMudGVtcFN0b3JhZ2UuZGVsZXRlKHRyZWVCcmFuY2gpO1xuICAgICAgdHJlZUJyYW5jaC5kZXRlY3RDaGFuZ2VzKCk7XG4gICB9XG5cbiAgIHB1YmxpYyBpc0NvbGxhcHNlZDxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+KTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy50ZW1wU3RvcmFnZS5oYXModHJlZUJyYW5jaCk7XG4gICB9XG5cbiAgIHB1YmxpYyBzdG9yZVByZWNvbGxhcHNlZE5vZGU8VD4oXG4gICAgICBwYXJlbnQ6IFRyZWVCcmFuY2g8VD4sXG4gICAgICBicmFuY2g6IFRyZWVCcmFuY2g8VD5cbiAgICk6IHZvaWQge1xuICAgICAgdGhpcy50ZW1wU3RvcmFnZS5zZXQoXG4gICAgICAgICBwYXJlbnQsXG4gICAgICAgICAodGhpcy50ZW1wU3RvcmFnZS5nZXQocGFyZW50KSA/PyBbXSkuY29uY2F0KGJyYW5jaClcbiAgICAgICk7XG4gICB9XG59XG5cbmV4cG9ydCBjb25zdCB0cmVlQ29sbGFwc2VyID0gbmV3IFRyZWVDb2xsYXBzZXIoKTtcbiJdfQ==
@@ -1,6 +1,7 @@
1
1
  import { NgModule } from "@angular/core";
2
2
  import { TreeCollapseService } from "./collapse.service";
3
3
  import * as i0 from "@angular/core";
4
+ /** A module containing the entities which provide collapse functionality */
4
5
  export class TreeCollapseModule {
5
6
  }
6
7
  TreeCollapseModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TreeCollapseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -12,4 +13,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
12
13
  providers: [TreeCollapseService]
13
14
  }]
14
15
  }] });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGltYmxlLXRyZWUvc3JjL2xpYi9leHRyYXMvY29sbGFwc2UvY29sbGFwc2UubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBS3pELE1BQU0sT0FBTyxrQkFBa0I7O2dIQUFsQixrQkFBa0I7aUhBQWxCLGtCQUFrQjtpSEFBbEIsa0JBQWtCLGFBRmpCLENBQUMsbUJBQW1CLENBQUM7NEZBRXRCLGtCQUFrQjtrQkFIOUIsUUFBUTttQkFBQztvQkFDUCxTQUFTLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBUcmVlQ29sbGFwc2VTZXJ2aWNlIH0gZnJvbSBcIi4vY29sbGFwc2Uuc2VydmljZVwiO1xuXG5ATmdNb2R1bGUoe1xuICAgcHJvdmlkZXJzOiBbVHJlZUNvbGxhcHNlU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgVHJlZUNvbGxhcHNlTW9kdWxlIHt9XG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGltYmxlLXRyZWUvc3JjL2xpYi9leHRyYXMvY29sbGFwc2UvY29sbGFwc2UubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBRXpELDRFQUE0RTtBQUk1RSxNQUFNLE9BQU8sa0JBQWtCOztnSEFBbEIsa0JBQWtCO2lIQUFsQixrQkFBa0I7aUhBQWxCLGtCQUFrQixhQUZqQixDQUFDLG1CQUFtQixDQUFDOzRGQUV0QixrQkFBa0I7a0JBSDlCLFFBQVE7bUJBQUM7b0JBQ1AsU0FBUyxFQUFFLENBQUMsbUJBQW1CLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVHJlZUNvbGxhcHNlU2VydmljZSB9IGZyb20gXCIuL2NvbGxhcHNlLnNlcnZpY2VcIjtcblxuLyoqIEEgbW9kdWxlIGNvbnRhaW5pbmcgdGhlIGVudGl0aWVzIHdoaWNoIHByb3ZpZGUgY29sbGFwc2UgZnVuY3Rpb25hbGl0eSAqL1xuQE5nTW9kdWxlKHtcbiAgIHByb3ZpZGVyczogW1RyZWVDb2xsYXBzZVNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVDb2xsYXBzZU1vZHVsZSB7fVxuIl19
@@ -1,13 +1,38 @@
1
1
  import { Injectable } from "@angular/core";
2
2
  import { treeCollapser } from "./collapse";
3
3
  import * as i0 from "@angular/core";
4
+ /** A service that collapses and expands tree branches */
4
5
  export class TreeCollapseService {
6
+ /**
7
+ * Causes a TreeBranch to collapse, temporarily pruning all of its children
8
+ * from the tree.
9
+ *
10
+ * @param treeBranch - The branch to collapse.
11
+ */
5
12
  collapse(treeBranch) {
6
13
  treeCollapser.collapse(treeBranch);
7
14
  }
15
+ /**
16
+ * Causes a TreeBranch to expand, restoring all of its children which were
17
+ * previously pruned by a call to `collapse()`.
18
+ *
19
+ * @param treeBranch - The branch to expand.
20
+ */
8
21
  expand(treeBranch) {
9
22
  treeCollapser.expand(treeBranch);
10
23
  }
24
+ /**
25
+ * Determines whether a TreeBranch currently has any children which are
26
+ * pruned from the tree due to a call to the `collapse()` method.
27
+ *
28
+ * @remarks
29
+ * Child branches which are pruned manually from the tree, rather than
30
+ * through the `collapse()` method, will not be considered.
31
+ *
32
+ * @param treeBranch - The branch to check.
33
+ *
34
+ * @returns `true` if the branch is currently collapsed; `false` if it is not.
35
+ */
11
36
  isCollapsed(treeBranch) {
12
37
  return treeCollapser.isCollapsed(treeBranch);
13
38
  }
@@ -17,4 +42,4 @@ TreeCollapseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0",
17
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TreeCollapseService, decorators: [{
18
43
  type: Injectable
19
44
  }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9saWIvZXh0cmFzL2NvbGxhcHNlL2NvbGxhcHNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDOztBQUczQyxNQUFNLE9BQU8sbUJBQW1CO0lBQ3RCLFFBQVEsQ0FBSSxVQUF5QjtRQUN6QyxhQUFhLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTSxNQUFNLENBQUksVUFBeUI7UUFDdkMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU0sV0FBVyxDQUFJLFVBQXlCO1FBQzVDLE9BQU8sYUFBYSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoRCxDQUFDOztpSEFYUyxtQkFBbUI7cUhBQW5CLG1CQUFtQjs0RkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBUcmVlQnJhbmNoIH0gZnJvbSBcIi4uLy4uL2NvcmVcIjtcbmltcG9ydCB7IHRyZWVDb2xsYXBzZXIgfSBmcm9tIFwiLi9jb2xsYXBzZVwiO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVHJlZUNvbGxhcHNlU2VydmljZSB7XG4gICBwdWJsaWMgY29sbGFwc2U8VD4odHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPik6IHZvaWQge1xuICAgICAgdHJlZUNvbGxhcHNlci5jb2xsYXBzZSh0cmVlQnJhbmNoKTtcbiAgIH1cblxuICAgcHVibGljIGV4cGFuZDxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+KTogdm9pZCB7XG4gICAgICB0cmVlQ29sbGFwc2VyLmV4cGFuZCh0cmVlQnJhbmNoKTtcbiAgIH1cblxuICAgcHVibGljIGlzQ29sbGFwc2VkPFQ+KHRyZWVCcmFuY2g6IFRyZWVCcmFuY2g8VD4pOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0cmVlQ29sbGFwc2VyLmlzQ29sbGFwc2VkKHRyZWVCcmFuY2gpO1xuICAgfVxufVxuIl19
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9saWIvZXh0cmFzL2NvbGxhcHNlL2NvbGxhcHNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDOztBQUUzQyx5REFBeUQ7QUFFekQsTUFBTSxPQUFPLG1CQUFtQjtJQUM3Qjs7Ozs7T0FLRztJQUNJLFFBQVEsQ0FBSSxVQUF5QjtRQUN6QyxhQUFhLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBSSxVQUF5QjtRQUN2QyxhQUFhLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7T0FXRztJQUNJLFdBQVcsQ0FBSSxVQUF5QjtRQUM1QyxPQUFPLGFBQWEsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDaEQsQ0FBQzs7aUhBbkNTLG1CQUFtQjtxSEFBbkIsbUJBQW1COzRGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFRyZWVCcmFuY2ggfSBmcm9tIFwiLi4vLi4vY29yZVwiO1xuaW1wb3J0IHsgdHJlZUNvbGxhcHNlciB9IGZyb20gXCIuL2NvbGxhcHNlXCI7XG5cbi8qKiBBIHNlcnZpY2UgdGhhdCBjb2xsYXBzZXMgYW5kIGV4cGFuZHMgdHJlZSBicmFuY2hlcyAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRyZWVDb2xsYXBzZVNlcnZpY2Uge1xuICAgLyoqXG4gICAgKiBDYXVzZXMgYSBUcmVlQnJhbmNoIHRvIGNvbGxhcHNlLCB0ZW1wb3JhcmlseSBwcnVuaW5nIGFsbCBvZiBpdHMgY2hpbGRyZW5cbiAgICAqIGZyb20gdGhlIHRyZWUuXG4gICAgKlxuICAgICogQHBhcmFtIHRyZWVCcmFuY2ggLSBUaGUgYnJhbmNoIHRvIGNvbGxhcHNlLlxuICAgICovXG4gICBwdWJsaWMgY29sbGFwc2U8VD4odHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPik6IHZvaWQge1xuICAgICAgdHJlZUNvbGxhcHNlci5jb2xsYXBzZSh0cmVlQnJhbmNoKTtcbiAgIH1cblxuICAgLyoqXG4gICAgKiBDYXVzZXMgYSBUcmVlQnJhbmNoIHRvIGV4cGFuZCwgcmVzdG9yaW5nIGFsbCBvZiBpdHMgY2hpbGRyZW4gd2hpY2ggd2VyZVxuICAgICogcHJldmlvdXNseSBwcnVuZWQgYnkgYSBjYWxsIHRvIGBjb2xsYXBzZSgpYC5cbiAgICAqXG4gICAgKiBAcGFyYW0gdHJlZUJyYW5jaCAtIFRoZSBicmFuY2ggdG8gZXhwYW5kLlxuICAgICovXG4gICBwdWJsaWMgZXhwYW5kPFQ+KHRyZWVCcmFuY2g6IFRyZWVCcmFuY2g8VD4pOiB2b2lkIHtcbiAgICAgIHRyZWVDb2xsYXBzZXIuZXhwYW5kKHRyZWVCcmFuY2gpO1xuICAgfVxuXG4gICAvKipcbiAgICAqIERldGVybWluZXMgd2hldGhlciBhIFRyZWVCcmFuY2ggY3VycmVudGx5IGhhcyBhbnkgY2hpbGRyZW4gd2hpY2ggYXJlXG4gICAgKiBwcnVuZWQgZnJvbSB0aGUgdHJlZSBkdWUgdG8gYSBjYWxsIHRvICB0aGUgYGNvbGxhcHNlKClgIG1ldGhvZC5cbiAgICAqXG4gICAgKiBAcmVtYXJrc1xuICAgICogQ2hpbGQgYnJhbmNoZXMgd2hpY2ggYXJlIHBydW5lZCBtYW51YWxseSBmcm9tIHRoZSB0cmVlLCByYXRoZXIgdGhhblxuICAgICogdGhyb3VnaCB0aGUgYGNvbGxhcHNlKClgIG1ldGhvZCwgd2lsbCBub3QgYmUgY29uc2lkZXJlZC5cbiAgICAqXG4gICAgKiBAcGFyYW0gdHJlZUJyYW5jaCAtIFRoZSBicmFuY2ggdG8gY2hlY2suXG4gICAgKlxuICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBicmFuY2ggaXMgY3VycmVudGx5IGNvbGxhcHNlZDsgYGZhbHNlYCBpZiBpdCBpcyBub3QuXG4gICAgKi9cbiAgIHB1YmxpYyBpc0NvbGxhcHNlZDxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+KTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdHJlZUNvbGxhcHNlci5pc0NvbGxhcHNlZCh0cmVlQnJhbmNoKTtcbiAgIH1cbn1cbiJdfQ==
@@ -42,19 +42,15 @@ class DragAndDrop {
42
42
  }
43
43
  setDragEffects(treeBranch, event) {
44
44
  const dataTransfer = event.dataTransfer;
45
- if (!(dataTransfer instanceof DataTransfer)) {
46
- throw new Error("bad drag event");
47
- }
48
- const nativeElement = treeBranch.getContents().location.nativeElement;
45
+ assert(dataTransfer instanceof DataTransfer);
46
+ const nativeElement = treeBranch.getNativeElement();
49
47
  const [xOffset, yOffset] = this.getDragImageOffsets(event, nativeElement);
50
48
  dataTransfer.setDragImage(nativeElement, xOffset, yOffset);
51
49
  }
52
50
  watchForDragend(treeBranch, event) {
53
51
  const oldParent = treeBranch.parent();
54
52
  const oldIndex = treeBranch.index();
55
- if (oldParent === undefined || oldIndex === undefined) {
56
- throw new Error("branch must have a parent");
57
- }
53
+ assert(oldParent !== undefined && oldIndex !== undefined);
58
54
  event.target?.addEventListener("dragend", (dragend) => {
59
55
  if (dragState.state() !== DragStates.Dropped) {
60
56
  //The drag ended but a drop never occurred, so put the dragged branch back where it started.
@@ -75,15 +71,15 @@ class DragAndDrop {
75
71
  }, { once: true });
76
72
  }
77
73
  draggingAllowed(treeBranch) {
78
- const allowDragging = config.getConfig(treeBranch.root())?.allowDragging ??
74
+ const allowDragging = config.getConfig(treeBranch.root())?.dragAndDrop?.allowDragging ??
79
75
  (() => true);
80
76
  return allowDragging(treeBranch);
81
77
  }
82
78
  graftDraggedBranch(treeBranch, parent, index) {
83
79
  treeBranch.graftTo(parent, index);
84
- treeBranch.getContents().location.nativeElement.style.display = "block";
80
+ treeBranch.getNativeElement().style.display = "block";
85
81
  dragState.dropped();
86
82
  }
87
83
  }
88
84
  export const dragAndDrop = new DragAndDrop();
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9saWIvZXh0cmFzL2RyYWctYW5kLWRyb3AvZHJhZy1hbmQtZHJvcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRy9CLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFcEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVoRCxNQUFNLFdBQVc7SUFBakI7UUFDbUIsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBYSxDQUFDO0lBMkczRCxDQUFDO0lBekdTLFNBQVMsQ0FBSSxVQUF5QixFQUFFLEtBQWdCO1FBQzVELElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3BDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixPQUFPO1NBQ1Q7UUFDRCxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEMsMEVBQTBF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QyxRQUFRLEtBQUssU0FBUyxDQUFDLENBQUM7WUFDL0IsVUFBVSxDQUFDLFFBQVEsQ0FDaEIsSUFBSSxZQUFZLENBQUMsVUFBVSxFQUFFO2dCQUMxQixTQUFTO2dCQUNULFFBQVE7Z0JBQ1IsU0FBUztnQkFDVCxRQUFRO2FBQ1YsQ0FBQyxDQUNKLENBQUM7UUFDTCxDQUFDLEVBQ0QsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQ2hCLENBQUM7SUFDTCxDQUFDO0lBRU8sZUFBZSxDQUFJLFVBQXlCO1FBQ2pELE1BQU0sYUFBYSxHQUNoQixNQUFNLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLGFBQWE7WUFDbEQsQ0FBQyxHQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixPQUFPLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU8sa0JBQWtCLENBQ3ZCLFVBQXlCLEVBQ3pCLE1BQXFFLEVBQ3JFLEtBQWE7UUFFYixVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUUvQixVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLGFBQ3BDLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDMUIsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3ZCLENBQUM7Q0FDSDtBQUVELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50UmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgTm9kZUNvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL25vZGUtY29tcG9uZW50LmludGVyZmFjZVwiO1xuaW1wb3J0IHsgVHJlZUJyYW5jaCB9IGZyb20gXCIuLi8uLi9jb3JlXCI7XG5pbXBvcnQgeyBjb25maWcgfSBmcm9tIFwiLi4vLi4vY29yZS9jb25maWd1cmF0aW9uL2NvbmZpZ3VyYXRpb25cIjtcbmltcG9ydCB7IFRyZWVFcnJvciB9IGZyb20gXCIuLi8uLi9lcnJvcnNcIjtcbmltcG9ydCB7IERyYWdFbmRFdmVudCB9IGZyb20gXCIuLi8uLi9ldmVudHMvZHJhZy9kcmFnLWVuZC1ldmVudFwiO1xuaW1wb3J0IHsgRHJhZ1N0YXJ0RXZlbnQgfSBmcm9tIFwiLi4vLi4vZXZlbnRzL2RyYWcvZHJhZy1zdGFydC1ldmVudFwiO1xuaW1wb3J0IHsgQ29udGFpbmVyVHJlZU5vZGUgfSBmcm9tIFwiLi4vLi4vc3RydWN0dXJlL2NvbnRhaW5lci10cmVlLW5vZGUuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBkcmFnU3RhdGUsIERyYWdTdGF0ZXMgfSBmcm9tIFwiLi9kcmFnLXN0YXRlXCI7XG5pbXBvcnQgeyBEcm9wRXZlbnQgfSBmcm9tIFwiLi4vLi4vZXZlbnRzL2RyYWcvZHJvcC1ldmVudFwiO1xuaW1wb3J0IHsgYXNzZXJ0IH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9hc3NlcnRcIjtcblxuY2xhc3MgRHJhZ0FuZERyb3Age1xuICAgcHVibGljIHJlYWRvbmx5IGRyYWdBYm9ydGVkJCA9IG5ldyBTdWJqZWN0PERyYWdFdmVudD4oKTtcblxuICAgcHVibGljIGRyYWdTdGFydDxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+LCBldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgICBpZiAoIXRoaXMuZHJhZ2dpbmdBbGxvd2VkKHRyZWVCcmFuY2gpKSB7XG4gICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdHJlZUJyYW5jaC5kaXNwYXRjaChuZXcgRHJhZ1N0YXJ0RXZlbnQodHJlZUJyYW5jaCkpO1xuICAgICAgdGhpcy5zZXREcmFnRWZmZWN0cyh0cmVlQnJhbmNoLCBldmVudCk7XG4gICAgICB0aGlzLndhdGNoRm9yRHJhZ2VuZCh0cmVlQnJhbmNoLCBldmVudCk7XG4gICAgICAvLyBXZSBoYXZlIHRvIGRvIGEgc2V0VGltZW91dCBiZWNhdXNlIERPTSBjaGFuZ2VzIGFyZSBub3QgYWxsb3dlZCBkdXJpbmcgYVxuICAgICAgLy8gZHJhZ3N0YXJ0IGV2ZW50LlxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICBkcmFnU3RhdGUuc3RhcnRpbmcodHJlZUJyYW5jaCk7XG4gICAgICAgICB0cmVlQnJhbmNoLnBydW5lKCk7XG4gICAgICAgICBkcmFnU3RhdGUuZHJhZ2dpbmcoKTtcbiAgICAgIH0pO1xuICAgfVxuXG4gICBwdWJsaWMgZHJvcDxUPihcbiAgICAgIHBhcmVudDogQ29udGFpbmVyVHJlZU5vZGU8Q29tcG9uZW50UmVmPE5vZGVDb21wb25lbnQ+LCBUcmVlQnJhbmNoPFQ+PixcbiAgICAgIGluZGV4OiBudW1iZXJcbiAgICk6IHZvaWQge1xuICAgICAgY29uc3QgdHJlZUJyYW5jaCA9IGRyYWdTdGF0ZS5nZXREcmFnRGF0YTxUPigpO1xuICAgICAgaWYgKHRyZWVCcmFuY2ggPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgdGhyb3cgbmV3IFRyZWVFcnJvcihcIkNhbm5vdCBnZXQgZHJhZ2dlZCBicmFuY2hcIik7XG4gICAgICB9XG4gICAgICB0aGlzLmdyYWZ0RHJhZ2dlZEJyYW5jaCh0cmVlQnJhbmNoLCBwYXJlbnQsIGluZGV4KTtcbiAgICAgIHRyZWVCcmFuY2guZGlzcGF0Y2gobmV3IERyb3BFdmVudCh0cmVlQnJhbmNoLCBwYXJlbnQsIGluZGV4KSk7XG4gICB9XG5cbiAgIHByaXZhdGUgZ2V0RHJhZ0ltYWdlT2Zmc2V0cyhcbiAgICAgIGV2ZW50OiBEcmFnRXZlbnQsXG4gICAgICBlbGVtZW50OiBFbGVtZW50XG4gICApOiBbbnVtYmVyLCBudW1iZXJdIHtcbiAgICAgIGNvbnN0IGJvdW5kcyA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICBjb25zdCB4T2Zmc2V0ID0gZXZlbnQuY2xpZW50WCAtIGJvdW5kcy5sZWZ0O1xuICAgICAgY29uc3QgeU9mZnNldCA9IGV2ZW50LmNsaWVudFkgLSBib3VuZHMudG9wO1xuICAgICAgcmV0dXJuIFt4T2Zmc2V0LCB5T2Zmc2V0XTtcbiAgIH1cblxuICAgcHJpdmF0ZSBzZXREcmFnRWZmZWN0czxUPihcbiAgICAgIHRyZWVCcmFuY2g6IFRyZWVCcmFuY2g8VD4sXG4gICAgICBldmVudDogRHJhZ0V2ZW50XG4gICApOiB2b2lkIHtcbiAgICAgIGNvbnN0IGRhdGFUcmFuc2ZlciA9IGV2ZW50LmRhdGFUcmFuc2ZlcjtcbiAgICAgIGlmICghKGRhdGFUcmFuc2ZlciBpbnN0YW5jZW9mIERhdGFUcmFuc2ZlcikpIHtcbiAgICAgICAgIHRocm93IG5ldyBFcnJvcihcImJhZCBkcmFnIGV2ZW50XCIpO1xuICAgICAgfVxuICAgICAgY29uc3QgbmF0aXZlRWxlbWVudCA9IHRyZWVCcmFuY2guZ2V0Q29udGVudHMoKS5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xuICAgICAgY29uc3QgW3hPZmZzZXQsIHlPZmZzZXRdID0gdGhpcy5nZXREcmFnSW1hZ2VPZmZzZXRzKGV2ZW50LCBuYXRpdmVFbGVtZW50KTtcbiAgICAgIGRhdGFUcmFuc2Zlci5zZXREcmFnSW1hZ2UobmF0aXZlRWxlbWVudCwgeE9mZnNldCwgeU9mZnNldCk7XG4gICB9XG5cbiAgIHByaXZhdGUgd2F0Y2hGb3JEcmFnZW5kPFQ+KFxuICAgICAgdHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPixcbiAgICAgIGV2ZW50OiBEcmFnRXZlbnRcbiAgICk6IHZvaWQge1xuICAgICAgY29uc3Qgb2xkUGFyZW50ID0gdHJlZUJyYW5jaC5wYXJlbnQoKTtcbiAgICAgIGNvbnN0IG9sZEluZGV4ID0gdHJlZUJyYW5jaC5pbmRleCgpO1xuICAgICAgaWYgKG9sZFBhcmVudCA9PT0gdW5kZWZpbmVkIHx8IG9sZEluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgIHRocm93IG5ldyBFcnJvcihcImJyYW5jaCBtdXN0IGhhdmUgYSBwYXJlbnRcIik7XG4gICAgICB9XG4gICAgICBldmVudC50YXJnZXQ/LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgICBcImRyYWdlbmRcIixcbiAgICAgICAgIChkcmFnZW5kKSA9PiB7XG4gICAgICAgICAgICBpZiAoZHJhZ1N0YXRlLnN0YXRlKCkgIT09IERyYWdTdGF0ZXMuRHJvcHBlZCkge1xuICAgICAgICAgICAgICAgLy9UaGUgZHJhZyBlbmRlZCBidXQgYSBkcm9wIG5ldmVyIG9jY3VycmVkLCBzbyBwdXQgdGhlIGRyYWdnZWQgYnJhbmNoIGJhY2sgd2hlcmUgaXQgc3RhcnRlZC5cbiAgICAgICAgICAgICAgIHRoaXMuZHJhZ0Fib3J0ZWQkLm5leHQoZHJhZ2VuZCBhcyBEcmFnRXZlbnQpO1xuICAgICAgICAgICAgICAgdGhpcy5ncmFmdERyYWdnZWRCcmFuY2godHJlZUJyYW5jaCwgb2xkUGFyZW50LCBvbGRJbmRleCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkcmFnU3RhdGUucmVzdGFydCgpO1xuICAgICAgICAgICAgY29uc3QgbmV3UGFyZW50ID0gdHJlZUJyYW5jaC5wYXJlbnQoKTtcbiAgICAgICAgICAgIGFzc2VydChuZXdQYXJlbnQgIT09IHVuZGVmaW5lZCk7XG4gICAgICAgICAgICBjb25zdCBuZXdJbmRleCA9IHRyZWVCcmFuY2guaW5kZXgoKTtcbiAgICAgICAgICAgIGFzc2VydChuZXdJbmRleCAhPT0gdW5kZWZpbmVkKTtcbiAgICAgICAgICAgIHRyZWVCcmFuY2guZGlzcGF0Y2goXG4gICAgICAgICAgICAgICBuZXcgRHJhZ0VuZEV2ZW50KHRyZWVCcmFuY2gsIHtcbiAgICAgICAgICAgICAgICAgIG9sZFBhcmVudCxcbiAgICAgICAgICAgICAgICAgIG9sZEluZGV4LFxuICAgICAgICAgICAgICAgICAgbmV3UGFyZW50LFxuICAgICAgICAgICAgICAgICAgbmV3SW5kZXhcbiAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICAgfSxcbiAgICAgICAgIHsgb25jZTogdHJ1ZSB9XG4gICAgICApO1xuICAgfVxuXG4gICBwcml2YXRlIGRyYWdnaW5nQWxsb3dlZDxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+KTogYm9vbGVhbiB7XG4gICAgICBjb25zdCBhbGxvd0RyYWdnaW5nID1cbiAgICAgICAgIGNvbmZpZy5nZXRDb25maWcodHJlZUJyYW5jaC5yb290KCkpPy5hbGxvd0RyYWdnaW5nID8/XG4gICAgICAgICAoKCk6IHRydWUgPT4gdHJ1ZSk7XG4gICAgICByZXR1cm4gYWxsb3dEcmFnZ2luZyh0cmVlQnJhbmNoKTtcbiAgIH1cblxuICAgcHJpdmF0ZSBncmFmdERyYWdnZWRCcmFuY2g8VD4oXG4gICAgICB0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+LFxuICAgICAgcGFyZW50OiBDb250YWluZXJUcmVlTm9kZTxDb21wb25lbnRSZWY8Tm9kZUNvbXBvbmVudD4sIFRyZWVCcmFuY2g8VD4+LFxuICAgICAgaW5kZXg6IG51bWJlclxuICAgKTogdm9pZCB7XG4gICAgICB0cmVlQnJhbmNoLmdyYWZ0VG8ocGFyZW50LCBpbmRleCk7XG4gICAgICAoXG4gICAgICAgICB0cmVlQnJhbmNoLmdldENvbnRlbnRzKCkubG9jYXRpb24ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudFxuICAgICAgKS5zdHlsZS5kaXNwbGF5ID0gXCJibG9ja1wiO1xuICAgICAgZHJhZ1N0YXRlLmRyb3BwZWQoKTtcbiAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IGRyYWdBbmREcm9wID0gbmV3IERyYWdBbmREcm9wKCk7XG4iXX0=
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9saWIvZXh0cmFzL2RyYWctYW5kLWRyb3AvZHJhZy1hbmQtZHJvcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRy9CLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUdoRCxNQUFNLFdBQVc7SUFBakI7UUFDbUIsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBYSxDQUFDO0lBcUczRCxDQUFDO0lBbkdTLFNBQVMsQ0FBSSxVQUF5QixFQUFFLEtBQWdCO1FBQzVELElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3BDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixPQUFPO1NBQ1Q7UUFDRCxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEMsMEVBQTBFO1FBQzFFLG1CQUFtQjtRQUNuQixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2IsU0FBUyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMvQixVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkIsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVNLElBQUksQ0FDUixNQUE4QyxFQUM5QyxLQUFhO1FBRWIsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLFdBQVcsRUFBSyxDQUFDO1FBQzlDLElBQUksVUFBVSxLQUFLLFNBQVMsRUFBRTtZQUMzQixNQUFNLElBQUksU0FBUyxDQUFDLDJCQUEyQixDQUFDLENBQUM7U0FDbkQ7UUFDRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNuRCxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksU0FBUyxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRU8sbUJBQW1CLENBQ3hCLEtBQWdCLEVBQ2hCLE9BQWdCO1FBRWhCLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQy9DLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUM1QyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFDM0MsT0FBTyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU8sY0FBYyxDQUNuQixVQUF5QixFQUN6QixLQUFnQjtRQUVoQixNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDO1FBQ3hDLE1BQU0sQ0FBQyxZQUFZLFlBQVksWUFBWSxDQUFDLENBQUM7UUFDN0MsTUFBTSxhQUFhLEdBQUcsVUFBVSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDcEQsTUFBTSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQzFFLFlBQVksQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRU8sZUFBZSxDQUNwQixVQUF5QixFQUN6QixLQUFnQjtRQUVoQixNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDdEMsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3BDLE1BQU0sQ0FBQyxTQUFTLEtBQUssU0FBUyxJQUFJLFFBQVEsS0FBSyxTQUFTLENBQUMsQ0FBQztRQUMxRCxLQUFLLENBQUMsTUFBTSxFQUFFLGdCQUFnQixDQUMzQixTQUFTLEVBQ1QsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNULElBQUksU0FBUyxDQUFDLEtBQUssRUFBRSxLQUFLLFVBQVUsQ0FBQyxPQUFPLEVBQUU7Z0JBQzNDLDRGQUE0RjtnQkFDNUYsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBb0IsQ0FBQyxDQUFDO2dCQUM3QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQzthQUMzRDtZQUNELFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdEMsTUFBTSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsQ0FBQztZQUNoQyxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDcEMsTUFBTSxDQUFDLFFBQVEsS0FBSyxTQUFTLENBQUMsQ0FBQztZQUMvQixVQUFVLENBQUMsUUFBUSxDQUNoQixJQUFJLFlBQVksQ0FBQyxVQUFVLEVBQUU7Z0JBQzFCLFNBQVM7Z0JBQ1QsUUFBUTtnQkFDUixTQUFTO2dCQUNULFFBQVE7YUFDVixDQUFDLENBQ0osQ0FBQztRQUNMLENBQUMsRUFDRCxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FDaEIsQ0FBQztJQUNMLENBQUM7SUFFTyxlQUFlLENBQUksVUFBeUI7UUFDakQsTUFBTSxhQUFhLEdBQ2hCLE1BQU0sQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsV0FBVyxFQUFFLGFBQWE7WUFDL0QsQ0FBQyxHQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixPQUFPLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU8sa0JBQWtCLENBQ3ZCLFVBQXlCLEVBQ3pCLE1BQThDLEVBQzlDLEtBQWE7UUFFYixVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNsQyxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN0RCxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdkIsQ0FBQztDQUNIO0FBRUQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IE5vZGVDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9ub2RlLWNvbXBvbmVudC5pbnRlcmZhY2VcIjtcbmltcG9ydCB7IFRyZWVCcmFuY2ggfSBmcm9tIFwiLi4vLi4vY29yZVwiO1xuaW1wb3J0IHsgY29uZmlnIH0gZnJvbSBcIi4uLy4uL2NvcmUvY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uXCI7XG5pbXBvcnQgeyBUcmVlRXJyb3IgfSBmcm9tIFwiLi4vLi4vZXJyb3JzXCI7XG5pbXBvcnQgeyBEcmFnRW5kRXZlbnQgfSBmcm9tIFwiLi4vLi4vZXZlbnRzL2RyYWcvZHJhZy1lbmQtZXZlbnRcIjtcbmltcG9ydCB7IERyYWdTdGFydEV2ZW50IH0gZnJvbSBcIi4uLy4uL2V2ZW50cy9kcmFnL2RyYWctc3RhcnQtZXZlbnRcIjtcbmltcG9ydCB7IGRyYWdTdGF0ZSwgRHJhZ1N0YXRlcyB9IGZyb20gXCIuL2RyYWctc3RhdGVcIjtcbmltcG9ydCB7IERyb3BFdmVudCB9IGZyb20gXCIuLi8uLi9ldmVudHMvZHJhZy9kcm9wLWV2ZW50XCI7XG5pbXBvcnQgeyBhc3NlcnQgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL2Fzc2VydFwiO1xuaW1wb3J0IHsgVHJlZU5vZGUgfSBmcm9tIFwiLi4vLi4vc3RydWN0dXJlXCI7XG5cbmNsYXNzIERyYWdBbmREcm9wIHtcbiAgIHB1YmxpYyByZWFkb25seSBkcmFnQWJvcnRlZCQgPSBuZXcgU3ViamVjdDxEcmFnRXZlbnQ+KCk7XG5cbiAgIHB1YmxpYyBkcmFnU3RhcnQ8VD4odHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPiwgZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgICAgaWYgKCF0aGlzLmRyYWdnaW5nQWxsb3dlZCh0cmVlQnJhbmNoKSkge1xuICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRyZWVCcmFuY2guZGlzcGF0Y2gobmV3IERyYWdTdGFydEV2ZW50KHRyZWVCcmFuY2gpKTtcbiAgICAgIHRoaXMuc2V0RHJhZ0VmZmVjdHModHJlZUJyYW5jaCwgZXZlbnQpO1xuICAgICAgdGhpcy53YXRjaEZvckRyYWdlbmQodHJlZUJyYW5jaCwgZXZlbnQpO1xuICAgICAgLy8gV2UgaGF2ZSB0byBkbyBhIHNldFRpbWVvdXQgYmVjYXVzZSBET00gY2hhbmdlcyBhcmUgbm90IGFsbG93ZWQgZHVyaW5nIGFcbiAgICAgIC8vIGRyYWdzdGFydCBldmVudC5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgZHJhZ1N0YXRlLnN0YXJ0aW5nKHRyZWVCcmFuY2gpO1xuICAgICAgICAgdHJlZUJyYW5jaC5wcnVuZSgpO1xuICAgICAgICAgZHJhZ1N0YXRlLmRyYWdnaW5nKCk7XG4gICAgICB9KTtcbiAgIH1cblxuICAgcHVibGljIGRyb3A8VD4oXG4gICAgICBwYXJlbnQ6IFRyZWVOb2RlPFRyZWVCcmFuY2g8VD4sIE5vZGVDb21wb25lbnQ+LFxuICAgICAgaW5kZXg6IG51bWJlclxuICAgKTogdm9pZCB7XG4gICAgICBjb25zdCB0cmVlQnJhbmNoID0gZHJhZ1N0YXRlLmdldERyYWdEYXRhPFQ+KCk7XG4gICAgICBpZiAodHJlZUJyYW5jaCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICB0aHJvdyBuZXcgVHJlZUVycm9yKFwiQ2Fubm90IGdldCBkcmFnZ2VkIGJyYW5jaFwiKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuZ3JhZnREcmFnZ2VkQnJhbmNoKHRyZWVCcmFuY2gsIHBhcmVudCwgaW5kZXgpO1xuICAgICAgdHJlZUJyYW5jaC5kaXNwYXRjaChuZXcgRHJvcEV2ZW50KHRyZWVCcmFuY2gsIHBhcmVudCwgaW5kZXgpKTtcbiAgIH1cblxuICAgcHJpdmF0ZSBnZXREcmFnSW1hZ2VPZmZzZXRzKFxuICAgICAgZXZlbnQ6IERyYWdFdmVudCxcbiAgICAgIGVsZW1lbnQ6IEVsZW1lbnRcbiAgICk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgICAgY29uc3QgYm91bmRzID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgIGNvbnN0IHhPZmZzZXQgPSBldmVudC5jbGllbnRYIC0gYm91bmRzLmxlZnQ7XG4gICAgICBjb25zdCB5T2Zmc2V0ID0gZXZlbnQuY2xpZW50WSAtIGJvdW5kcy50b3A7XG4gICAgICByZXR1cm4gW3hPZmZzZXQsIHlPZmZzZXRdO1xuICAgfVxuXG4gICBwcml2YXRlIHNldERyYWdFZmZlY3RzPFQ+KFxuICAgICAgdHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPixcbiAgICAgIGV2ZW50OiBEcmFnRXZlbnRcbiAgICk6IHZvaWQge1xuICAgICAgY29uc3QgZGF0YVRyYW5zZmVyID0gZXZlbnQuZGF0YVRyYW5zZmVyO1xuICAgICAgYXNzZXJ0KGRhdGFUcmFuc2ZlciBpbnN0YW5jZW9mIERhdGFUcmFuc2Zlcik7XG4gICAgICBjb25zdCBuYXRpdmVFbGVtZW50ID0gdHJlZUJyYW5jaC5nZXROYXRpdmVFbGVtZW50KCk7XG4gICAgICBjb25zdCBbeE9mZnNldCwgeU9mZnNldF0gPSB0aGlzLmdldERyYWdJbWFnZU9mZnNldHMoZXZlbnQsIG5hdGl2ZUVsZW1lbnQpO1xuICAgICAgZGF0YVRyYW5zZmVyLnNldERyYWdJbWFnZShuYXRpdmVFbGVtZW50LCB4T2Zmc2V0LCB5T2Zmc2V0KTtcbiAgIH1cblxuICAgcHJpdmF0ZSB3YXRjaEZvckRyYWdlbmQ8VD4oXG4gICAgICB0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+LFxuICAgICAgZXZlbnQ6IERyYWdFdmVudFxuICAgKTogdm9pZCB7XG4gICAgICBjb25zdCBvbGRQYXJlbnQgPSB0cmVlQnJhbmNoLnBhcmVudCgpO1xuICAgICAgY29uc3Qgb2xkSW5kZXggPSB0cmVlQnJhbmNoLmluZGV4KCk7XG4gICAgICBhc3NlcnQob2xkUGFyZW50ICE9PSB1bmRlZmluZWQgJiYgb2xkSW5kZXggIT09IHVuZGVmaW5lZCk7XG4gICAgICBldmVudC50YXJnZXQ/LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgICBcImRyYWdlbmRcIixcbiAgICAgICAgIChkcmFnZW5kKSA9PiB7XG4gICAgICAgICAgICBpZiAoZHJhZ1N0YXRlLnN0YXRlKCkgIT09IERyYWdTdGF0ZXMuRHJvcHBlZCkge1xuICAgICAgICAgICAgICAgLy9UaGUgZHJhZyBlbmRlZCBidXQgYSBkcm9wIG5ldmVyIG9jY3VycmVkLCBzbyBwdXQgdGhlIGRyYWdnZWQgYnJhbmNoIGJhY2sgd2hlcmUgaXQgc3RhcnRlZC5cbiAgICAgICAgICAgICAgIHRoaXMuZHJhZ0Fib3J0ZWQkLm5leHQoZHJhZ2VuZCBhcyBEcmFnRXZlbnQpO1xuICAgICAgICAgICAgICAgdGhpcy5ncmFmdERyYWdnZWRCcmFuY2godHJlZUJyYW5jaCwgb2xkUGFyZW50LCBvbGRJbmRleCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkcmFnU3RhdGUucmVzdGFydCgpO1xuICAgICAgICAgICAgY29uc3QgbmV3UGFyZW50ID0gdHJlZUJyYW5jaC5wYXJlbnQoKTtcbiAgICAgICAgICAgIGFzc2VydChuZXdQYXJlbnQgIT09IHVuZGVmaW5lZCk7XG4gICAgICAgICAgICBjb25zdCBuZXdJbmRleCA9IHRyZWVCcmFuY2guaW5kZXgoKTtcbiAgICAgICAgICAgIGFzc2VydChuZXdJbmRleCAhPT0gdW5kZWZpbmVkKTtcbiAgICAgICAgICAgIHRyZWVCcmFuY2guZGlzcGF0Y2goXG4gICAgICAgICAgICAgICBuZXcgRHJhZ0VuZEV2ZW50KHRyZWVCcmFuY2gsIHtcbiAgICAgICAgICAgICAgICAgIG9sZFBhcmVudCxcbiAgICAgICAgICAgICAgICAgIG9sZEluZGV4LFxuICAgICAgICAgICAgICAgICAgbmV3UGFyZW50LFxuICAgICAgICAgICAgICAgICAgbmV3SW5kZXhcbiAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICAgfSxcbiAgICAgICAgIHsgb25jZTogdHJ1ZSB9XG4gICAgICApO1xuICAgfVxuXG4gICBwcml2YXRlIGRyYWdnaW5nQWxsb3dlZDxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+KTogYm9vbGVhbiB7XG4gICAgICBjb25zdCBhbGxvd0RyYWdnaW5nID1cbiAgICAgICAgIGNvbmZpZy5nZXRDb25maWcodHJlZUJyYW5jaC5yb290KCkpPy5kcmFnQW5kRHJvcD8uYWxsb3dEcmFnZ2luZyA/P1xuICAgICAgICAgKCgpOiB0cnVlID0+IHRydWUpO1xuICAgICAgcmV0dXJuIGFsbG93RHJhZ2dpbmcodHJlZUJyYW5jaCk7XG4gICB9XG5cbiAgIHByaXZhdGUgZ3JhZnREcmFnZ2VkQnJhbmNoPFQ+KFxuICAgICAgdHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPixcbiAgICAgIHBhcmVudDogVHJlZU5vZGU8VHJlZUJyYW5jaDxUPiwgTm9kZUNvbXBvbmVudD4sXG4gICAgICBpbmRleDogbnVtYmVyXG4gICApOiB2b2lkIHtcbiAgICAgIHRyZWVCcmFuY2guZ3JhZnRUbyhwYXJlbnQsIGluZGV4KTtcbiAgICAgIHRyZWVCcmFuY2guZ2V0TmF0aXZlRWxlbWVudCgpLnN0eWxlLmRpc3BsYXkgPSBcImJsb2NrXCI7XG4gICAgICBkcmFnU3RhdGUuZHJvcHBlZCgpO1xuICAgfVxufVxuXG5leHBvcnQgY29uc3QgZHJhZ0FuZERyb3AgPSBuZXcgRHJhZ0FuZERyb3AoKTtcbiJdfQ==
@@ -3,6 +3,10 @@ import { TreeDragAndDropService } from "./drag-and-drop.service";
3
3
  import { DraggableDirective } from "./draggable.directive";
4
4
  import { DragoverNoChangeDetectDirective } from "./dragover-no-change-detect";
5
5
  import * as i0 from "@angular/core";
6
+ /**
7
+ * An Angular module containing all of the entities which provide Drag-And-Drop
8
+ * functionality.
9
+ */
6
10
  export class TreeDragAndDropModule {
7
11
  }
8
12
  TreeDragAndDropModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TreeDragAndDropModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -16,4 +20,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
16
20
  exports: [DraggableDirective, DragoverNoChangeDetectDirective]
17
21
  }]
18
22
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saW1ibGUtdHJlZS9zcmMvbGliL2V4dHJhcy9kcmFnLWFuZC1kcm9wL2RyYWctYW5kLWRyb3AubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBTzlFLE1BQU0sT0FBTyxxQkFBcUI7O21IQUFyQixxQkFBcUI7b0hBQXJCLHFCQUFxQixZQUpyQixrQkFBa0IsRUFBRSwrQkFBK0IsYUFFbkQsa0JBQWtCLEVBQUUsK0JBQStCO29IQUVuRCxxQkFBcUIsYUFIcEIsQ0FBQyxzQkFBc0IsQ0FBQzs0RkFHekIscUJBQXFCO2tCQUxqQyxRQUFRO21CQUFDO29CQUNQLE9BQU8sRUFBRSxDQUFDLGtCQUFrQixFQUFFLCtCQUErQixDQUFDO29CQUM5RCxTQUFTLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDbkMsT0FBTyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsK0JBQStCLENBQUM7aUJBQ2hFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVHJlZURyYWdBbmREcm9wU2VydmljZSB9IGZyb20gXCIuL2RyYWctYW5kLWRyb3Auc2VydmljZVwiO1xuaW1wb3J0IHsgRHJhZ2dhYmxlRGlyZWN0aXZlIH0gZnJvbSBcIi4vZHJhZ2dhYmxlLmRpcmVjdGl2ZVwiO1xuaW1wb3J0IHsgRHJhZ292ZXJOb0NoYW5nZURldGVjdERpcmVjdGl2ZSB9IGZyb20gXCIuL2RyYWdvdmVyLW5vLWNoYW5nZS1kZXRlY3RcIjtcblxuQE5nTW9kdWxlKHtcbiAgIGltcG9ydHM6IFtEcmFnZ2FibGVEaXJlY3RpdmUsIERyYWdvdmVyTm9DaGFuZ2VEZXRlY3REaXJlY3RpdmVdLFxuICAgcHJvdmlkZXJzOiBbVHJlZURyYWdBbmREcm9wU2VydmljZV0sXG4gICBleHBvcnRzOiBbRHJhZ2dhYmxlRGlyZWN0aXZlLCBEcmFnb3Zlck5vQ2hhbmdlRGV0ZWN0RGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBUcmVlRHJhZ0FuZERyb3BNb2R1bGUge31cbiJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saW1ibGUtdHJlZS9zcmMvbGliL2V4dHJhcy9kcmFnLWFuZC1kcm9wL2RyYWctYW5kLWRyb3AubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBRTlFOzs7R0FHRztBQU1ILE1BQU0sT0FBTyxxQkFBcUI7O21IQUFyQixxQkFBcUI7b0hBQXJCLHFCQUFxQixZQUpyQixrQkFBa0IsRUFBRSwrQkFBK0IsYUFFbkQsa0JBQWtCLEVBQUUsK0JBQStCO29IQUVuRCxxQkFBcUIsYUFIcEIsQ0FBQyxzQkFBc0IsQ0FBQzs0RkFHekIscUJBQXFCO2tCQUxqQyxRQUFRO21CQUFDO29CQUNQLE9BQU8sRUFBRSxDQUFDLGtCQUFrQixFQUFFLCtCQUErQixDQUFDO29CQUM5RCxTQUFTLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDbkMsT0FBTyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsK0JBQStCLENBQUM7aUJBQ2hFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVHJlZURyYWdBbmREcm9wU2VydmljZSB9IGZyb20gXCIuL2RyYWctYW5kLWRyb3Auc2VydmljZVwiO1xuaW1wb3J0IHsgRHJhZ2dhYmxlRGlyZWN0aXZlIH0gZnJvbSBcIi4vZHJhZ2dhYmxlLmRpcmVjdGl2ZVwiO1xuaW1wb3J0IHsgRHJhZ292ZXJOb0NoYW5nZURldGVjdERpcmVjdGl2ZSB9IGZyb20gXCIuL2RyYWdvdmVyLW5vLWNoYW5nZS1kZXRlY3RcIjtcblxuLyoqXG4gKiBBbiBBbmd1bGFyIG1vZHVsZSBjb250YWluaW5nIGFsbCBvZiB0aGUgZW50aXRpZXMgd2hpY2ggcHJvdmlkZSBEcmFnLUFuZC1Ecm9wXG4gKiBmdW5jdGlvbmFsaXR5LlxuICovXG5ATmdNb2R1bGUoe1xuICAgaW1wb3J0czogW0RyYWdnYWJsZURpcmVjdGl2ZSwgRHJhZ292ZXJOb0NoYW5nZURldGVjdERpcmVjdGl2ZV0sXG4gICBwcm92aWRlcnM6IFtUcmVlRHJhZ0FuZERyb3BTZXJ2aWNlXSxcbiAgIGV4cG9ydHM6IFtEcmFnZ2FibGVEaXJlY3RpdmUsIERyYWdvdmVyTm9DaGFuZ2VEZXRlY3REaXJlY3RpdmVdXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVEcmFnQW5kRHJvcE1vZHVsZSB7fVxuIl19
@@ -1,21 +1,37 @@
1
1
  import { Injectable } from "@angular/core";
2
- import { dragAndDrop } from "./drag-and-drop";
3
2
  import { dragState } from "./drag-state";
4
3
  import { dropzoneRenderer } from "./dropzone-renderer";
5
4
  import * as i0 from "@angular/core";
6
5
  export class TreeDragAndDropService {
6
+ /** Hides all Dropzones */
7
7
  clearDropzones() {
8
8
  dropzoneRenderer.clearCurrentDisplay();
9
9
  }
10
- dragStart(treeBranch, event) {
11
- dragAndDrop.dragStart(treeBranch, event);
12
- }
10
+ /**
11
+ * @returns An object that indicates which dropzones are currently being displayed.
12
+ * If no dropzones are being displayed, then null is returned.
13
+ */
13
14
  getCurrentlyDisplayedDropzoneFamily() {
14
15
  return dropzoneRenderer.getCurrentDisplay();
15
16
  }
17
+ /**
18
+ * Causes the dropzone of the TreeRoot to be displayed.
19
+ *
20
+ * @remarks
21
+ * This is a useful function when you want to show the dropzone of a TreeRoot
22
+ * that has no child branches.
23
+ *
24
+ * @param root - The TreeRoot whose dropzone you want to show.
25
+ */
16
26
  showRootDropzone(root) {
17
27
  dropzoneRenderer.showLowerZones(root);
18
28
  }
29
+ /**
30
+ * @returns An observable that emits a number whenever the drag state changes.
31
+ *
32
+ * @remarks
33
+ * See the `DragStates` enum for a list of possible states.
34
+ */
19
35
  state() {
20
36
  return dragState.events();
21
37
  }
@@ -25,4 +41,4 @@ TreeDragAndDropService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0
25
41
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TreeDragAndDropService, decorators: [{
26
42
  type: Injectable
27
43
  }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGltYmxlLXRyZWUvc3JjL2xpYi9leHRyYXMvZHJhZy1hbmQtZHJvcC9kcmFnLWFuZC1kcm9wLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBYyxNQUFNLGNBQWMsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFHdkQsTUFBTSxPQUFPLHNCQUFzQjtJQUN6QixjQUFjO1FBQ2xCLGdCQUFnQixDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVNLFNBQVMsQ0FBSSxVQUF5QixFQUFFLEtBQWdCO1FBQzVELFdBQVcsQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxtQ0FBbUM7UUFJdkMsT0FBTyxnQkFBZ0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFFTSxnQkFBZ0IsQ0FBSSxJQUFpQjtRQUN6QyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVNLEtBQUs7UUFDVCxPQUFPLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM3QixDQUFDOztvSEF0QlMsc0JBQXNCO3dIQUF0QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBUcmVlQnJhbmNoLCBUcmVlUm9vdCB9IGZyb20gXCIuLi8uLi9jb3JlXCI7XG5pbXBvcnQgeyBkcmFnQW5kRHJvcCB9IGZyb20gXCIuL2RyYWctYW5kLWRyb3BcIjtcbmltcG9ydCB7IGRyYWdTdGF0ZSwgRHJhZ1N0YXRlcyB9IGZyb20gXCIuL2RyYWctc3RhdGVcIjtcbmltcG9ydCB7IGRyb3B6b25lUmVuZGVyZXIgfSBmcm9tIFwiLi9kcm9wem9uZS1yZW5kZXJlclwiO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVHJlZURyYWdBbmREcm9wU2VydmljZSB7XG4gICBwdWJsaWMgY2xlYXJEcm9wem9uZXMoKTogdm9pZCB7XG4gICAgICBkcm9wem9uZVJlbmRlcmVyLmNsZWFyQ3VycmVudERpc3BsYXkoKTtcbiAgIH1cblxuICAgcHVibGljIGRyYWdTdGFydDxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+LCBldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgICBkcmFnQW5kRHJvcC5kcmFnU3RhcnQodHJlZUJyYW5jaCwgZXZlbnQpO1xuICAgfVxuXG4gICBwdWJsaWMgZ2V0Q3VycmVudGx5RGlzcGxheWVkRHJvcHpvbmVGYW1pbHkoKToge1xuICAgICAgdHJlZUJyYW5jaDogVHJlZVJvb3Q8YW55PiB8IFRyZWVCcmFuY2g8YW55PjtcbiAgICAgIGRpcmVjdGlvbjogXCJ1cHBlclwiIHwgXCJsb3dlclwiO1xuICAgfSB8IG51bGwge1xuICAgICAgcmV0dXJuIGRyb3B6b25lUmVuZGVyZXIuZ2V0Q3VycmVudERpc3BsYXkoKTtcbiAgIH1cblxuICAgcHVibGljIHNob3dSb290RHJvcHpvbmU8VD4ocm9vdDogVHJlZVJvb3Q8VD4pOiB2b2lkIHtcbiAgICAgIGRyb3B6b25lUmVuZGVyZXIuc2hvd0xvd2VyWm9uZXMocm9vdCk7XG4gICB9XG5cbiAgIHB1YmxpYyBzdGF0ZSgpOiBPYnNlcnZhYmxlPERyYWdTdGF0ZXM+IHtcbiAgICAgIHJldHVybiBkcmFnU3RhdGUuZXZlbnRzKCk7XG4gICB9XG59XG4iXX0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGltYmxlLXRyZWUvc3JjL2xpYi9leHRyYXMvZHJhZy1hbmQtZHJvcC9kcmFnLWFuZC1kcm9wLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sY0FBYyxDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUd2RCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2hDLDBCQUEwQjtJQUNuQixjQUFjO1FBQ2xCLGdCQUFnQixDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLG1DQUFtQztRQUl2QyxPQUFPLGdCQUFnQixDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ksZ0JBQWdCLENBQUksSUFBaUI7UUFDekMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUs7UUFDVCxPQUFPLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM3QixDQUFDOztvSEF0Q1Msc0JBQXNCO3dIQUF0QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB0eXBlIHsgVHJlZUJyYW5jaCwgVHJlZVJvb3QgfSBmcm9tIFwiLi4vLi4vY29yZVwiO1xuaW1wb3J0IHsgZHJhZ1N0YXRlLCBEcmFnU3RhdGVzIH0gZnJvbSBcIi4vZHJhZy1zdGF0ZVwiO1xuaW1wb3J0IHsgZHJvcHpvbmVSZW5kZXJlciB9IGZyb20gXCIuL2Ryb3B6b25lLXJlbmRlcmVyXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUcmVlRHJhZ0FuZERyb3BTZXJ2aWNlIHtcbiAgIC8qKiBIaWRlcyBhbGwgRHJvcHpvbmVzICovXG4gICBwdWJsaWMgY2xlYXJEcm9wem9uZXMoKTogdm9pZCB7XG4gICAgICBkcm9wem9uZVJlbmRlcmVyLmNsZWFyQ3VycmVudERpc3BsYXkoKTtcbiAgIH1cblxuICAgLyoqXG4gICAgKiBAcmV0dXJucyBBbiBvYmplY3QgdGhhdCBpbmRpY2F0ZXMgd2hpY2ggZHJvcHpvbmVzIGFyZSBjdXJyZW50bHkgYmVpbmcgZGlzcGxheWVkLlxuICAgICogSWYgbm8gZHJvcHpvbmVzIGFyZSBiZWluZyBkaXNwbGF5ZWQsIHRoZW4gbnVsbCBpcyByZXR1cm5lZC5cbiAgICAqL1xuICAgcHVibGljIGdldEN1cnJlbnRseURpc3BsYXllZERyb3B6b25lRmFtaWx5KCk6IHtcbiAgICAgIHRyZWVCcmFuY2g6IFRyZWVSb290PGFueT4gfCBUcmVlQnJhbmNoPGFueT47XG4gICAgICBkaXJlY3Rpb246IFwidXBwZXJcIiB8IFwibG93ZXJcIjtcbiAgIH0gfCBudWxsIHtcbiAgICAgIHJldHVybiBkcm9wem9uZVJlbmRlcmVyLmdldEN1cnJlbnREaXNwbGF5KCk7XG4gICB9XG5cbiAgIC8qKlxuICAgICogQ2F1c2VzIHRoZSBkcm9wem9uZSBvZiB0aGUgVHJlZVJvb3QgdG8gYmUgZGlzcGxheWVkLlxuICAgICpcbiAgICAqIEByZW1hcmtzXG4gICAgKiBUaGlzIGlzIGEgdXNlZnVsIGZ1bmN0aW9uIHdoZW4geW91IHdhbnQgdG8gc2hvdyB0aGUgZHJvcHpvbmUgb2YgYSBUcmVlUm9vdFxuICAgICogdGhhdCBoYXMgbm8gY2hpbGQgYnJhbmNoZXMuXG4gICAgKlxuICAgICogQHBhcmFtIHJvb3QgLSBUaGUgVHJlZVJvb3Qgd2hvc2UgZHJvcHpvbmUgeW91IHdhbnQgdG8gc2hvdy5cbiAgICAqL1xuICAgcHVibGljIHNob3dSb290RHJvcHpvbmU8VD4ocm9vdDogVHJlZVJvb3Q8VD4pOiB2b2lkIHtcbiAgICAgIGRyb3B6b25lUmVuZGVyZXIuc2hvd0xvd2VyWm9uZXMocm9vdCk7XG4gICB9XG5cbiAgIC8qKlxuICAgICogQHJldHVybnMgQW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGEgbnVtYmVyIHdoZW5ldmVyIHRoZSBkcmFnIHN0YXRlIGNoYW5nZXMuXG4gICAgKlxuICAgICogQHJlbWFya3NcbiAgICAqIFNlZSB0aGUgYERyYWdTdGF0ZXNgIGVudW0gZm9yIGEgbGlzdCBvZiBwb3NzaWJsZSBzdGF0ZXMuXG4gICAgKi9cbiAgIHB1YmxpYyBzdGF0ZSgpOiBPYnNlcnZhYmxlPERyYWdTdGF0ZXM+IHtcbiAgICAgIHJldHVybiBkcmFnU3RhdGUuZXZlbnRzKCk7XG4gICB9XG59XG4iXX0=
@@ -1,19 +1,19 @@
1
1
  import { Directive, HostListener, Input } from "@angular/core";
2
+ import { dragAndDrop } from "./drag-and-drop";
2
3
  import * as i0 from "@angular/core";
3
- import * as i1 from "./drag-and-drop.service";
4
+ /** Makes an TreeBranch draggable when the host element is dragged */
4
5
  export class DraggableDirective {
5
- constructor(dragAndDropService, renderer, hostElement) {
6
- this.dragAndDropService = dragAndDropService;
6
+ constructor(renderer, hostElement) {
7
7
  renderer.setAttribute(hostElement.nativeElement, "draggable", "true");
8
8
  renderer.setStyle(hostElement.nativeElement, "cursor", "grab");
9
9
  }
10
10
  onDragstart(event) {
11
11
  if (this.limbleTreeDraggable === undefined)
12
12
  return;
13
- this.dragAndDropService.dragStart(this.limbleTreeDraggable, event);
13
+ dragAndDrop.dragStart(this.limbleTreeDraggable, event);
14
14
  }
15
15
  }
16
- DraggableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DraggableDirective, deps: [{ token: i1.TreeDragAndDropService }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
16
+ DraggableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DraggableDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
17
17
  DraggableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: DraggableDirective, isStandalone: true, selector: "[limbleTreeDraggable]", inputs: { limbleTreeDraggable: "limbleTreeDraggable" }, host: { listeners: { "dragstart": "onDragstart($event)" } }, ngImport: i0 });
18
18
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DraggableDirective, decorators: [{
19
19
  type: Directive,
@@ -21,10 +21,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
21
21
  selector: "[limbleTreeDraggable]",
22
22
  standalone: true
23
23
  }]
24
- }], ctorParameters: function () { return [{ type: i1.TreeDragAndDropService }, { type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { limbleTreeDraggable: [{
24
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { limbleTreeDraggable: [{
25
25
  type: Input
26
26
  }], onDragstart: [{
27
27
  type: HostListener,
28
28
  args: ["dragstart", ["$event"]]
29
29
  }] } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZ2dhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9saWIvZXh0cmFzL2RyYWctYW5kLWRyb3AvZHJhZ2dhYmxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0osU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBRVAsTUFBTSxlQUFlLENBQUM7OztBQVF2QixNQUFNLE9BQU8sa0JBQWtCO0lBRzVCLFlBQ29CLGtCQUEwQyxFQUMzRCxRQUFtQixFQUNuQixXQUFvQztRQUZuQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQXdCO1FBSTNELFFBQVEsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDdEUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRTZDLFdBQVcsQ0FDdEQsS0FBZ0I7UUFFaEIsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEtBQUssU0FBUztZQUFFLE9BQU87UUFDbkQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdEUsQ0FBQzs7Z0hBakJTLGtCQUFrQjtvR0FBbEIsa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBSjlCLFNBQVM7bUJBQUM7b0JBQ1IsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsVUFBVSxFQUFFLElBQUk7aUJBQ2xCOzhKQUVXLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFXd0MsV0FBVztzQkFBeEQsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgRGlyZWN0aXZlLFxuICAgRWxlbWVudFJlZixcbiAgIEhvc3RMaXN0ZW5lcixcbiAgIElucHV0LFxuICAgUmVuZGVyZXIyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBUcmVlQnJhbmNoIH0gZnJvbSBcIi4uLy4uL2NvcmVcIjtcbmltcG9ydCB7IFRyZWVEcmFnQW5kRHJvcFNlcnZpY2UgfSBmcm9tIFwiLi9kcmFnLWFuZC1kcm9wLnNlcnZpY2VcIjtcblxuQERpcmVjdGl2ZSh7XG4gICBzZWxlY3RvcjogXCJbbGltYmxlVHJlZURyYWdnYWJsZV1cIixcbiAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRHJhZ2dhYmxlRGlyZWN0aXZlIHtcbiAgIEBJbnB1dCgpIGxpbWJsZVRyZWVEcmFnZ2FibGU/OiBUcmVlQnJhbmNoPGFueT47XG5cbiAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgcmVhZG9ubHkgZHJhZ0FuZERyb3BTZXJ2aWNlOiBUcmVlRHJhZ0FuZERyb3BTZXJ2aWNlLFxuICAgICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PlxuICAgKSB7XG4gICAgICByZW5kZXJlci5zZXRBdHRyaWJ1dGUoaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgXCJkcmFnZ2FibGVcIiwgXCJ0cnVlXCIpO1xuICAgICAgcmVuZGVyZXIuc2V0U3R5bGUoaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgXCJjdXJzb3JcIiwgXCJncmFiXCIpO1xuICAgfVxuXG4gICBASG9zdExpc3RlbmVyKFwiZHJhZ3N0YXJ0XCIsIFtcIiRldmVudFwiXSkgcHVibGljIG9uRHJhZ3N0YXJ0KFxuICAgICAgZXZlbnQ6IERyYWdFdmVudFxuICAgKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy5saW1ibGVUcmVlRHJhZ2dhYmxlID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgICAgIHRoaXMuZHJhZ0FuZERyb3BTZXJ2aWNlLmRyYWdTdGFydCh0aGlzLmxpbWJsZVRyZWVEcmFnZ2FibGUsIGV2ZW50KTtcbiAgIH1cbn1cbiJdfQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZ2dhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9saWIvZXh0cmFzL2RyYWctYW5kLWRyb3AvZHJhZ2dhYmxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0osU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUU5QyxxRUFBcUU7QUFLckUsTUFBTSxPQUFPLGtCQUFrQjtJQUc1QixZQUNHLFFBQW1CLEVBQ25CLFdBQW9DO1FBRXBDLFFBQVEsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDdEUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRTZDLFdBQVcsQ0FDdEQsS0FBZ0I7UUFFaEIsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEtBQUssU0FBUztZQUFFLE9BQU87UUFDbkQsV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQzs7Z0hBaEJTLGtCQUFrQjtvR0FBbEIsa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBSjlCLFNBQVM7bUJBQUM7b0JBQ1IsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsVUFBVSxFQUFFLElBQUk7aUJBQ2xCO3lIQUVXLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFVd0MsV0FBVztzQkFBeEQsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgRGlyZWN0aXZlLFxuICAgRWxlbWVudFJlZixcbiAgIEhvc3RMaXN0ZW5lcixcbiAgIElucHV0LFxuICAgUmVuZGVyZXIyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgdHlwZSB7IFRyZWVCcmFuY2ggfSBmcm9tIFwiLi4vLi4vY29yZVwiO1xuaW1wb3J0IHsgZHJhZ0FuZERyb3AgfSBmcm9tIFwiLi9kcmFnLWFuZC1kcm9wXCI7XG5cbi8qKiBNYWtlcyBhbiBUcmVlQnJhbmNoIGRyYWdnYWJsZSB3aGVuIHRoZSBob3N0IGVsZW1lbnQgaXMgZHJhZ2dlZCAqL1xuQERpcmVjdGl2ZSh7XG4gICBzZWxlY3RvcjogXCJbbGltYmxlVHJlZURyYWdnYWJsZV1cIixcbiAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRHJhZ2dhYmxlRGlyZWN0aXZlIHtcbiAgIEBJbnB1dCgpIGxpbWJsZVRyZWVEcmFnZ2FibGU/OiBUcmVlQnJhbmNoPGFueT4gfCB1bmRlZmluZWQ7XG5cbiAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICBob3N0RWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgICkge1xuICAgICAgcmVuZGVyZXIuc2V0QXR0cmlidXRlKGhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIFwiZHJhZ2dhYmxlXCIsIFwidHJ1ZVwiKTtcbiAgICAgIHJlbmRlcmVyLnNldFN0eWxlKGhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIFwiY3Vyc29yXCIsIFwiZ3JhYlwiKTtcbiAgIH1cblxuICAgQEhvc3RMaXN0ZW5lcihcImRyYWdzdGFydFwiLCBbXCIkZXZlbnRcIl0pIHB1YmxpYyBvbkRyYWdzdGFydChcbiAgICAgIGV2ZW50OiBEcmFnRXZlbnRcbiAgICk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMubGltYmxlVHJlZURyYWdnYWJsZSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICBkcmFnQW5kRHJvcC5kcmFnU3RhcnQodGhpcy5saW1ibGVUcmVlRHJhZ2dhYmxlLCBldmVudCk7XG4gICB9XG59XG4iXX0=
@@ -1,19 +1,20 @@
1
- import { Directive, EventEmitter, Input, Output } from "@angular/core";
1
+ import { Directive, EventEmitter, Output } from "@angular/core";
2
2
  import { fromEvent } from "rxjs";
3
- import { throttleTime } from "rxjs/operators";
4
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * Works just like Angular's built-in `(dragover)` event binding, but is much
6
+ * more performant. It throttles the event to a configurable rate (default once
7
+ * every 25ms) and runs outside of Angular's change detection.
8
+ */
5
9
  export class DragoverNoChangeDetectDirective {
6
10
  constructor(ngZone, el) {
7
11
  this.ngZone = ngZone;
8
12
  this.el = el;
9
13
  this.dragoverNoChangeDetect = new EventEmitter();
10
- this.dragoverEventThrottle = 25;
11
14
  }
12
15
  ngOnInit() {
13
16
  this.ngZone.runOutsideAngular(() => {
14
- this.eventSubscription = fromEvent(this.el.nativeElement, "dragover")
15
- .pipe(throttleTime(this.dragoverEventThrottle))
16
- .subscribe(($event) => {
17
+ this.eventSubscription = fromEvent(this.el.nativeElement, "dragover").subscribe(($event) => {
17
18
  this.dragoverNoChangeDetect.emit($event);
18
19
  });
19
20
  });
@@ -25,16 +26,14 @@ export class DragoverNoChangeDetectDirective {
25
26
  }
26
27
  }
27
28
  DragoverNoChangeDetectDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DragoverNoChangeDetectDirective, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
28
- DragoverNoChangeDetectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: DragoverNoChangeDetectDirective, isStandalone: true, selector: "[dragoverNoChangeDetect]", inputs: { dragoverEventThrottle: "dragoverEventThrottle" }, outputs: { dragoverNoChangeDetect: "dragoverNoChangeDetect" }, ngImport: i0 });
29
+ DragoverNoChangeDetectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: DragoverNoChangeDetectDirective, isStandalone: true, selector: "[dragoverNoChangeDetect]", outputs: { dragoverNoChangeDetect: "dragoverNoChangeDetect" }, ngImport: i0 });
29
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DragoverNoChangeDetectDirective, decorators: [{
30
31
  type: Directive,
31
32
  args: [{
32
33
  standalone: true,
33
34
  selector: "[dragoverNoChangeDetect]"
34
35
  }]
35
- }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ElementRef }]; }, propDecorators: { dragoverEventThrottle: [{
36
- type: Input
37
- }], dragoverNoChangeDetect: [{
36
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ElementRef }]; }, propDecorators: { dragoverNoChangeDetect: [{
38
37
  type: Output
39
38
  }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZ292ZXItbm8tY2hhbmdlLWRldGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9saWIvZXh0cmFzL2RyYWctYW5kLWRyb3AvZHJhZ292ZXItbm8tY2hhbmdlLWRldGVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0osU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBSUwsTUFBTSxFQUNSLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFNOUMsTUFBTSxPQUFPLCtCQUErQjtJQUt6QyxZQUNvQixNQUFjLEVBQ2QsRUFBdUI7UUFEdkIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLE9BQUUsR0FBRixFQUFFLENBQXFCO1FBRXhDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFDO1FBQzVELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVNLFFBQVE7UUFDWixJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUNoQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUMvQixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFDckIsVUFBVSxDQUNaO2lCQUNHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7aUJBQzlDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUNuQixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzVDLENBQUMsQ0FBQyxDQUFDO1FBQ1QsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRU0sV0FBVztRQUNmLElBQUksSUFBSSxDQUFDLGlCQUFpQixLQUFLLFNBQVMsRUFBRTtZQUN2QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDdkM7SUFDSixDQUFDOzs2SEE5QlMsK0JBQStCO2lIQUEvQiwrQkFBK0I7NEZBQS9CLCtCQUErQjtrQkFKM0MsU0FBUzttQkFBQztvQkFDUixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLDBCQUEwQjtpQkFDdEM7c0hBRVcscUJBQXFCO3NCQUE3QixLQUFLO2dCQUNhLHNCQUFzQjtzQkFBeEMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICBEaXJlY3RpdmUsXG4gICBFbGVtZW50UmVmLFxuICAgRXZlbnRFbWl0dGVyLFxuICAgSW5wdXQsXG4gICBOZ1pvbmUsXG4gICBPbkRlc3Ryb3ksXG4gICBPbkluaXQsXG4gICBPdXRwdXRcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IHRocm90dGxlVGltZSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5ARGlyZWN0aXZlKHtcbiAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICBzZWxlY3RvcjogXCJbZHJhZ292ZXJOb0NoYW5nZURldGVjdF1cIlxufSlcbmV4cG9ydCBjbGFzcyBEcmFnb3Zlck5vQ2hhbmdlRGV0ZWN0RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgQElucHV0KCkgZHJhZ292ZXJFdmVudFRocm90dGxlOiBudW1iZXI7XG4gICBAT3V0cHV0KCkgcmVhZG9ubHkgZHJhZ292ZXJOb0NoYW5nZURldGVjdDogRXZlbnRFbWl0dGVyPERyYWdFdmVudD47XG4gICBwcml2YXRlIGV2ZW50U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUsXG4gICAgICBwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmPEVsZW1lbnQ+XG4gICApIHtcbiAgICAgIHRoaXMuZHJhZ292ZXJOb0NoYW5nZURldGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpO1xuICAgICAgdGhpcy5kcmFnb3ZlckV2ZW50VGhyb3R0bGUgPSAyNTtcbiAgIH1cblxuICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgdGhpcy5ldmVudFN1YnNjcmlwdGlvbiA9IGZyb21FdmVudDxEcmFnRXZlbnQ+KFxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgXCJkcmFnb3ZlclwiXG4gICAgICAgICApXG4gICAgICAgICAgICAucGlwZSh0aHJvdHRsZVRpbWUodGhpcy5kcmFnb3ZlckV2ZW50VGhyb3R0bGUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoJGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICB0aGlzLmRyYWdvdmVyTm9DaGFuZ2VEZXRlY3QuZW1pdCgkZXZlbnQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgIH1cblxuICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuZXZlbnRTdWJzY3JpcHRpb24gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgdGhpcy5ldmVudFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgfVxuICAgfVxufVxuIl19
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZ292ZXItbm8tY2hhbmdlLWRldGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9saWIvZXh0cmFzL2RyYWctYW5kLWRyb3AvZHJhZ292ZXItbm8tY2hhbmdlLWRldGVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0osU0FBUyxFQUVULFlBQVksRUFJWixNQUFNLEVBQ1IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxNQUFNLENBQUM7O0FBRXBEOzs7O0dBSUc7QUFLSCxNQUFNLE9BQU8sK0JBQStCO0lBSXpDLFlBQ29CLE1BQWMsRUFDZCxFQUF1QjtRQUR2QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsT0FBRSxHQUFGLEVBQUUsQ0FBcUI7UUFFeEMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7SUFDL0QsQ0FBQztJQUVNLFFBQVE7UUFDWixJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUNoQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUMvQixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFDckIsVUFBVSxDQUNaLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDNUMsQ0FBQyxDQUFDLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7SUFFTSxXQUFXO1FBQ2YsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEtBQUssU0FBUyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUN2QztJQUNKLENBQUM7OzZIQTFCUywrQkFBK0I7aUhBQS9CLCtCQUErQjs0RkFBL0IsK0JBQStCO2tCQUozQyxTQUFTO21CQUFDO29CQUNSLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsMEJBQTBCO2lCQUN0QztzSEFFcUIsc0JBQXNCO3NCQUF4QyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgIERpcmVjdGl2ZSxcbiAgIEVsZW1lbnRSZWYsXG4gICBFdmVudEVtaXR0ZXIsXG4gICBOZ1pvbmUsXG4gICB0eXBlIE9uRGVzdHJveSxcbiAgIHR5cGUgT25Jbml0LFxuICAgT3V0cHV0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIHR5cGUgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcblxuLyoqXG4gKiBXb3JrcyBqdXN0IGxpa2UgQW5ndWxhcidzIGJ1aWx0LWluIGAoZHJhZ292ZXIpYCBldmVudCBiaW5kaW5nLCBidXQgaXMgbXVjaFxuICogbW9yZSBwZXJmb3JtYW50LiBJdCB0aHJvdHRsZXMgdGhlIGV2ZW50IHRvIGEgY29uZmlndXJhYmxlIHJhdGUgKGRlZmF1bHQgb25jZVxuICogZXZlcnkgMjVtcykgYW5kIHJ1bnMgb3V0c2lkZSBvZiBBbmd1bGFyJ3MgY2hhbmdlIGRldGVjdGlvbi5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICBzdGFuZGFsb25lOiB0cnVlLFxuICAgc2VsZWN0b3I6IFwiW2RyYWdvdmVyTm9DaGFuZ2VEZXRlY3RdXCJcbn0pXG5leHBvcnQgY2xhc3MgRHJhZ292ZXJOb0NoYW5nZURldGVjdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgIEBPdXRwdXQoKSByZWFkb25seSBkcmFnb3Zlck5vQ2hhbmdlRGV0ZWN0OiBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PjtcbiAgIHByaXZhdGUgZXZlbnRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZDtcblxuICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8RWxlbWVudD5cbiAgICkge1xuICAgICAgdGhpcy5kcmFnb3Zlck5vQ2hhbmdlRGV0ZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KCk7XG4gICB9XG5cbiAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgIHRoaXMuZXZlbnRTdWJzY3JpcHRpb24gPSBmcm9tRXZlbnQ8RHJhZ0V2ZW50PihcbiAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIFwiZHJhZ292ZXJcIlxuICAgICAgICAgKS5zdWJzY3JpYmUoKCRldmVudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5kcmFnb3Zlck5vQ2hhbmdlRGV0ZWN0LmVtaXQoJGV2ZW50KTtcbiAgICAgICAgIH0pO1xuICAgICAgfSk7XG4gICB9XG5cbiAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgIGlmICh0aGlzLmV2ZW50U3Vic2NyaXB0aW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgIHRoaXMuZXZlbnRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgIH1cbn1cbiJdfQ==
@@ -39,7 +39,7 @@ class DropzoneRenderer {
39
39
  if (this.currentDisplay === null)
40
40
  return;
41
41
  for (const branch of this.registry.values()) {
42
- const instance = branch.getContents().instance;
42
+ const instance = branch.getComponentInstance();
43
43
  instance.showInnerDropzone = false;
44
44
  if (instance instanceof BranchComponent) {
45
45
  instance.showLateralDropzone = false;
@@ -140,7 +140,7 @@ class DropzoneRenderer {
140
140
  return true;
141
141
  }
142
142
  if (treeNode instanceof TreeBranch) {
143
- const allowNesting = config.getConfig(treeNode.root())?.allowNesting ??
143
+ const allowNesting = config.getConfig(treeNode.root())?.dragAndDrop?.allowNesting ??
144
144
  (() => true);
145
145
  return allowNesting(treeNode);
146
146
  }
@@ -150,11 +150,13 @@ class DropzoneRenderer {
150
150
  const sourceNode = dragState.getDragData();
151
151
  assert(sourceNode instanceof TreeBranch);
152
152
  if (parent instanceof TreeRoot) {
153
- const allowDrop = config.getConfig(parent)?.allowDrop ?? (() => true);
153
+ const allowDrop = config.getConfig(parent)?.dragAndDrop?.allowDrop ??
154
+ (() => true);
154
155
  return allowDrop(sourceNode, parent, index);
155
156
  }
156
157
  if (parent instanceof TreeBranch) {
157
- const allowDrop = config.getConfig(parent.root())?.allowDrop ?? (() => true);
158
+ const allowDrop = config.getConfig(parent.root())?.dragAndDrop?.allowDrop ??
159
+ (() => true);
158
160
  return allowDrop(sourceNode, parent, index);
159
161
  }
160
162
  throw new Error("unsupported treeNode type");
@@ -162,15 +164,15 @@ class DropzoneRenderer {
162
164
  showInnerZone(treeNode) {
163
165
  if (!this.nestingAllowed(treeNode) || !this.dropAllowed(treeNode, 0))
164
166
  return;
165
- treeNode.getContents().instance.showInnerDropzone = true;
167
+ treeNode.getComponentInstance().showInnerDropzone = true;
166
168
  }
167
169
  showLateralZone(treeBranch) {
168
170
  const index = treeBranch.index();
169
171
  assert(index !== undefined);
170
172
  if (!this.dropAllowed(treeBranch.parent(), index + 1))
171
173
  return;
172
- treeBranch.getContents().instance.showLateralDropzone = true;
174
+ treeBranch.getComponentInstance().showLateralDropzone = true;
173
175
  }
174
176
  }
175
177
  export const dropzoneRenderer = new DropzoneRenderer();
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUtcmVuZGVyZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saW1ibGUtdHJlZS9zcmMvbGliL2V4dHJhcy9kcmFnLWFuZC1kcm9wL2Ryb3B6b25lLXJlbmRlcmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFHM0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFMUMsTUFBTSxnQkFBZ0I7SUFVbkI7UUFDRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDM0IsV0FBVyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3JDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsU0FBUzthQUNMLE1BQU0sRUFBRTthQUNSLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7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IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBhc3NlcnQgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL2Fzc2VydFwiO1xuaW1wb3J0IHsgQnJhbmNoQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvYnJhbmNoL2JyYW5jaC5jb21wb25lbnRcIjtcbmltcG9ydCB7IERyb3B6b25lQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvZHJvcHpvbmUvZHJvcHpvbmUuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBOb2RlQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvbm9kZS1jb21wb25lbnQuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBkcmFnQW5kRHJvcCB9IGZyb20gXCIuL2RyYWctYW5kLWRyb3BcIjtcbmltcG9ydCB7IENvbnRhaW5lclRyZWVOb2RlIH0gZnJvbSBcIi4uLy4uL3N0cnVjdHVyZS9jb250YWluZXItdHJlZS1ub2RlLmludGVyZmFjZVwiO1xuaW1wb3J0IHsgVHJlZUJyYW5jaCB9IGZyb20gXCIuLi8uLi9jb3JlL3RyZWUtYnJhbmNoL3RyZWUtYnJhbmNoXCI7XG5pbXBvcnQgeyBUcmVlUm9vdCB9IGZyb20gXCIuLi8uLi9jb3JlL3RyZWUtcm9vdC90cmVlLXJvb3RcIjtcbmltcG9ydCB7IGRyYWdTdGF0ZSwgRHJhZ1N0YXRlcyB9IGZyb20gXCIuL2RyYWctc3RhdGVcIjtcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgY29uZmlnIH0gZnJvbSBcIi4uLy4uL2NvcmUvY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uXCI7XG5pbXBvcnQgeyBQcnVuZUV2ZW50IH0gZnJvbSBcIi4uLy4uL2V2ZW50c1wiO1xuXG5jbGFzcyBEcm9wem9uZVJlbmRlcmVyIHtcbiAgIHByaXZhdGUgY3VycmVudERpc3BsYXk6IHtcbiAgICAgIHRyZWVCcmFuY2g6IFRyZWVCcmFuY2g8YW55PiB8IFRyZWVSb290PGFueT47XG4gICAgICBkaXJlY3Rpb246IFwidXBwZXJcIiB8IFwibG93ZXJcIjtcbiAgIH0gfCBudWxsO1xuICAgcHJpdmF0ZSByZWFkb25seSByZWdpc3RyeTogTWFwPFxuICAgICAgRHJvcHpvbmVDb21wb25lbnQsXG4gICAgICBUcmVlQnJhbmNoPGFueT4gfCBUcmVlUm9vdDxhbnk+XG4gICA+O1xuXG4gICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICB0aGlzLnJlZ2lzdHJ5ID0gbmV3IE1hcCgpO1xuICAgICAgdGhpcy5jdXJyZW50RGlzcGxheSA9IG51bGw7XG4gICAgICBkcmFnQW5kRHJvcC5kcmFnQWJvcnRlZCQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgIHRoaXMuY2xlYXJDdXJyZW50RGlzcGxheSgpO1xuICAgICAgfSk7XG4gICAgICBkcmFnU3RhdGVcbiAgICAgICAgIC5ldmVudHMoKVxuICAgICAgICAgLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgPT09IERyYWdTdGF0ZXMuU3RhcnRpbmcpKVxuICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBicmFuY2ggPSBkcmFnU3RhdGUuZ2V0RHJhZ0RhdGEoKTtcbiAgICAgICAgICAgIGFzc2VydChicmFuY2ggIT09IHVuZGVmaW5lZCk7XG4gICAgICAgICAgICBsZXQgY3Vyc29yID0gYnJhbmNoLnBhcmVudCgpPy5nZXRCcmFuY2goKGJyYW5jaC5pbmRleCgpID8/IDApIC0gMSk7XG4gICAgICAgICAgICBsZXQgZmluYWwgPSBicmFuY2gucGFyZW50KCk7XG4gICAgICAgICAgICB3aGlsZSAoY3Vyc29yICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgIGZpbmFsID0gY3Vyc29yO1xuICAgICAgICAgICAgICAgY3Vyc29yID0gY3Vyc29yLmJyYW5jaGVzKCkuYXQoLTEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJhbmNoXG4gICAgICAgICAgICAgICAuZXZlbnRzKClcbiAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBQcnVuZUV2ZW50KSxcbiAgICAgICAgICAgICAgICAgIGZpcnN0KClcbiAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgYXNzZXJ0KFxuICAgICAgICAgICAgICAgICAgICAgZmluYWwgaW5zdGFuY2VvZiBUcmVlQnJhbmNoIHx8IGZpbmFsIGluc3RhbmNlb2YgVHJlZVJvb3RcbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB0aGlzLnNob3dMb3dlclpvbmVzKGZpbmFsKTtcbiAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgfSk7XG4gICB9XG5cbiAgIHB1YmxpYyBjbGVhckN1cnJlbnREaXNwbGF5KCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuY3VycmVudERpc3BsYXkgPT09IG51bGwpIHJldHVybjtcbiAgICAgIGZvciAoY29uc3QgYnJhbmNoIG9mIHRoaXMucmVnaXN0cnkudmFsdWVzKCkpIHtcbiAgICAgICAgIGNvbnN0IGluc3RhbmNlID0gYnJhbmNoLmdldENvbnRlbnRzKCkuaW5zdGFuY2U7XG4gICAgICAgICBpbnN0YW5jZS5zaG93SW5uZXJEcm9wem9uZSA9IGZhbHNlO1xuICAgICAgICAgaWYgKGluc3RhbmNlIGluc3RhbmNlb2YgQnJhbmNoQ29tcG9uZW50KSB7XG4gICAgICAgICAgICBpbnN0YW5jZS5zaG93TGF0ZXJhbERyb3B6b25lID0gZmFsc2U7XG4gICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLmN1cnJlbnREaXNwbGF5ID0gbnVsbDtcbiAgIH1cblxuICAgcHVibGljIGNsZWFyVHJlZUZyb21SZWdpc3RyeSh0cmVlOiBUcmVlUm9vdDxhbnk+IHwgVHJlZUJyYW5jaDxhbnk+KTogdm9pZCB7XG4gICAgICBjb25zdCBub2RlczogQXJyYXk8XG4gICAgICAgICBDb250YWluZXJUcmVlTm9kZTxDb21wb25lbnRSZWY8Tm9kZUNvbXBvbmVudD4sIFRyZWVCcmFuY2g8YW55Pj5cbiAgICAgID4gPSBbXTtcbiAgICAgIHRyZWUudHJhdmVyc2UoKG5vZGUpID0+IG5vZGVzLnB1c2gobm9kZSkpO1xuICAgICAgZm9yIChjb25zdCBbZHJvcHpvbmVDb21wb25lbnQsIHRyZWVOb2RlXSBvZiB0aGlzLnJlZ2lzdHJ5KSB7XG4gICAgICAgICBpZiAobm9kZXMuaW5jbHVkZXModHJlZU5vZGUpKSB7XG4gICAgICAgICAgICB0aGlzLnJlZ2lzdHJ5LmRlbGV0ZShkcm9wem9uZUNvbXBvbmVudCk7XG4gICAgICAgICB9XG4gICAgICB9XG4gICB9XG5cbiAgIHB1YmxpYyBnZXRDdXJyZW50RGlzcGxheSgpOiB7XG4gICAgICB0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPGFueT4gfCBUcmVlUm9vdDxhbnk+O1xuICAgICAgZGlyZWN0aW9uOiBcInVwcGVyXCIgfCBcImxvd2VyXCI7XG4gICB9IHwgbnVsbCB7XG4gICAgICBpZiAodGhpcy5jdXJyZW50RGlzcGxheSA9PT0gbnVsbCkgcmV0dXJuIG51bGw7XG4gICAgICByZXR1cm4geyAuLi50aGlzLmN1cnJlbnREaXNwbGF5IH07XG4gICB9XG5cbiAgIHB1YmxpYyBnZXREcm9wem9uZUxvY2F0aW9uPFQ+KFxuICAgICAgZHJvcHpvbmU6IERyb3B6b25lQ29tcG9uZW50XG4gICApOiBbVHJlZUJyYW5jaDxUPiB8IFRyZWVSb290PFQ+LCBcImlubmVyXCIgfCBcImxhdGVyYWxcIl0ge1xuICAgICAgY29uc3QgYnJhbmNoID0gdGhpcy5yZWdpc3RyeS5nZXQoZHJvcHpvbmUpO1xuICAgICAgY29uc3QgcGxhY2VtZW50ID0gZHJvcHpvbmUucGxhY2VtZW50O1xuICAgICAgaWYgKGJyYW5jaCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJkcm9wem9uZSBub3QgZm91bmQgaW4gcmVnaXN0cnlcIik7XG4gICAgICB9XG4gICAgICBpZiAocGxhY2VtZW50ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgIHRocm93IG5ldyBFcnJvcihcImRyb3B6b25lIGhhcyBhbiB1bmRlZmluZWQgcGxhY2VtZW50XCIpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFticmFuY2gsIHBsYWNlbWVudF07XG4gICB9XG5cbiAgIHB1YmxpYyBoYW5kbGVEcm9wPFQ+KFxuICAgICAgdHJlZU5vZGU6IFRyZWVCcmFuY2g8VD4gfCBUcmVlUm9vdDxUPixcbiAgICAgIHBsYWNlbWVudDogXCJpbm5lclwiIHwgXCJsYXRlcmFsXCJcbiAgICk6IHZvaWQge1xuICAgICAgaWYgKHBsYWNlbWVudCA9PT0gXCJpbm5lclwiKSB7XG4gICAgICAgICBkcmFnQW5kRHJvcC5kcm9wKHRyZWVOb2RlLCAwKTtcbiAgICAgIH0gZWxzZSBpZiAodHJlZU5vZGUgaW5zdGFuY2VvZiBUcmVlQnJhbmNoICYmIHBsYWNlbWVudCA9PT0gXCJsYXRlcmFsXCIpIHtcbiAgICAgICAgIGNvbnN0IGN1cnJlbnRQYXJlbnQgPSB0cmVlTm9kZS5wYXJlbnQoKTtcbiAgICAgICAgIGNvbnN0IGluZGV4ID0gdHJlZU5vZGUuaW5kZXgoKTtcbiAgICAgICAgIGlmIChjdXJyZW50UGFyZW50ID09PSB1bmRlZmluZWQgfHwgaW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiYnJhbmNoIG11c3QgaGF2ZSBhIHBhcmVudFwiKTtcbiAgICAgICAgIH1cbiAgICAgICAgIGRyYWdBbmREcm9wLmRyb3AoY3VycmVudFBhcmVudCwgaW5kZXggKyAxKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2xlYXJDdXJyZW50RGlzcGxheSgpO1xuICAgfVxuXG4gICBwdWJsaWMgcmVnaXN0ZXJEcm9wem9uZTxUPihcbiAgICAgIGRyb3B6b25lOiBEcm9wem9uZUNvbXBvbmVudCxcbiAgICAgIHRyZWVOb2RlOiBUcmVlQnJhbmNoPFQ+IHwgVHJlZVJvb3Q8VD5cbiAgICk6IHZvaWQge1xuICAgICAgdGhpcy5yZWdpc3RyeS5zZXQoZHJvcHpvbmUsIHRyZWVOb2RlKTtcbiAgIH1cblxuICAgcHVibGljIHJlZ2lzdGVyRHJvcHpvbmVzPFQ+KFxuICAgICAgZHJvcHpvbmVzOiBJdGVyYWJsZTxEcm9wem9uZUNvbXBvbmVudD4sXG4gICAgICB0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+XG4gICApOiB2b2lkIHtcbiAgICAgIGZvciAoY29uc3QgZHJvcHpvbmUgb2YgZHJvcHpvbmVzKSB7XG4gICAgICAgICB0aGlzLnJlZ2lzdHJ5LnNldChkcm9wem9uZSwgdHJlZUJyYW5jaCk7XG4gICAgICB9XG4gICB9XG5cbiAgIHB1YmxpYyBzaG93TG93ZXJab25lczxUPih0cmVlTm9kZTogVHJlZUJyYW5jaDxUPiB8IFRyZWVSb290PFQ+KTogdm9pZCB7XG4gICAgICB0aGlzLmNsZWFyQ3VycmVudERpc3BsYXkoKTtcbiAgICAgIHRoaXMuc2hvd0lubmVyWm9uZSh0cmVlTm9kZSk7XG4gICAgICBpZiAodHJlZU5vZGUuYnJhbmNoZXMoKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgIHRoaXMubG9vcFRocm91Z2hMb3dlclpvbmVzKHRyZWVOb2RlKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY3VycmVudERpc3BsYXkgPSB7IHRyZWVCcmFuY2g6IHRyZWVOb2RlLCBkaXJlY3Rpb246IFwibG93ZXJcIiB9O1xuICAgfVxuXG4gICBwdWJsaWMgc2hvd1VwcGVyWm9uZXM8VD4odHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPik6IHZvaWQge1xuICAgICAgdGhpcy5jbGVhckN1cnJlbnREaXNwbGF5KCk7XG4gICAgICB0aGlzLmxvb3BUaHJvdWdoVXBwZXJab25lcyh0cmVlQnJhbmNoKTtcbiAgICAgIHRoaXMuY3VycmVudERpc3BsYXkgPSB7IHRyZWVCcmFuY2gsIGRpcmVjdGlvbjogXCJ1cHBlclwiIH07XG4gICB9XG5cbiAgIHByaXZhdGUgbG9vcFRocm91Z2hMb3dlclpvbmVzPFQ+KFxuICAgICAgdHJlZU5vZGU6IFRyZWVCcmFuY2g8VD4gfCBUcmVlUm9vdDxUPlxuICAgKTogdm9pZCB7XG4gICAgICBsZXQgY3Vyc29yOlxuICAgICAgICAgfCBDb250YWluZXJUcmVlTm9kZTxDb21wb25lbnRSZWY8Tm9kZUNvbXBvbmVudD4sIFRyZWVCcmFuY2g8VD4+XG4gICAgICAgICB8IHVuZGVmaW5lZCA9IHRyZWVOb2RlO1xuICAgICAgd2hpbGUgKGN1cnNvciBpbnN0YW5jZW9mIFRyZWVCcmFuY2gpIHtcbiAgICAgICAgIHRoaXMuc2hvd0xhdGVyYWxab25lKGN1cnNvcik7XG4gICAgICAgICBjb25zdCBwYXJlbnQgPSBjdXJzb3IucGFyZW50KCk7XG4gICAgICAgICBjb25zdCBpbmRleCA9IGN1cnNvci5pbmRleCgpO1xuICAgICAgICAgYXNzZXJ0KHBhcmVudCAhPT0gdW5kZWZpbmVkICYmIGluZGV4ICE9PSB1bmRlZmluZWQpO1xuICAgICAgICAgaWYgKHBhcmVudC5icmFuY2hlcygpLmxlbmd0aCA+IGluZGV4ICsgMSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgfVxuICAgICAgICAgY3Vyc29yID0gY3Vyc29yLnBhcmVudCgpO1xuICAgICAgfVxuICAgfVxuXG4gICBwcml2YXRlIGxvb3BUaHJvdWdoVXBwZXJab25lczxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+KTogdm9pZCB7XG4gICAgICBsZXQgY3Vyc29yID0gdHJlZUJyYW5jaFxuICAgICAgICAgLnBhcmVudCgpXG4gICAgICAgICA/LmdldEJyYW5jaCgodHJlZUJyYW5jaC5pbmRleCgpID8/IDApIC0gMSk7XG4gICAgICBsZXQgZmluYWwgPSB0cmVlQnJhbmNoLnBhcmVudCgpO1xuICAgICAgd2hpbGUgKGN1cnNvciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICB0aGlzLnNob3dMYXRlcmFsWm9uZShjdXJzb3IpO1xuICAgICAgICAgZmluYWwgPSBjdXJzb3I7XG4gICAgICAgICBjdXJzb3IgPSBjdXJzb3IuYnJhbmNoZXMoKS5hdCgtMSk7XG4gICAgICB9XG4gICAgICBpZiAoXG4gICAgICAgICBmaW5hbCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAoZmluYWwgaW5zdGFuY2VvZiBUcmVlUm9vdCB8fCBmaW5hbCBpbnN0YW5jZW9mIFRyZWVCcmFuY2gpXG4gICAgICApIHtcbiAgICAgICAgIHRoaXMuc2hvd0lubmVyWm9uZShmaW5hbCk7XG4gICAgICB9XG4gICB9XG5cbiAgIHByaXZhdGUgbmVzdGluZ0FsbG93ZWQodHJlZU5vZGU6IHVua25vd24pOiBib29sZWFuIHtcbiAgICAgIGlmICh0cmVlTm9kZSBpbnN0YW5jZW9mIFRyZWVSb290KSB7XG4gICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmICh0cmVlTm9kZSBpbnN0YW5jZW9mIFRyZWVCcmFuY2gpIHtcbiAgICAgICAgIGNvbnN0IGFsbG93TmVzdGluZyA9XG4gICAgICAgICAgICBjb25maWcuZ2V0Q29uZmlnKHRyZWVOb2RlLnJvb3QoKSk/LmFsbG93TmVzdGluZyA/P1xuICAgICAgICAgICAgKCgpOiB0cnVlID0+IHRydWUpO1xuICAgICAgICAgcmV0dXJuIGFsbG93TmVzdGluZyh0cmVlTm9kZSk7XG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1bnN1cHBvcnRlZCB0cmVlTm9kZSB0eXBlXCIpO1xuICAgfVxuXG4gICBwcml2YXRlIGRyb3BBbGxvd2VkKHBhcmVudDogdW5rbm93biwgaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgICAgY29uc3Qgc291cmNlTm9kZSA9IGRyYWdTdGF0ZS5nZXREcmFnRGF0YSgpO1xuICAgICAgYXNzZXJ0KHNvdXJjZU5vZGUgaW5zdGFuY2VvZiBUcmVlQnJhbmNoKTtcbiAgICAgIGlmIChwYXJlbnQgaW5zdGFuY2VvZiBUcmVlUm9vdCkge1xuICAgICAgICAgY29uc3QgYWxsb3dEcm9wID1cbiAgICAgICAgICAgIGNvbmZpZy5nZXRDb25maWcocGFyZW50KT8uYWxsb3dEcm9wID8/ICgoKTogdHJ1ZSA9PiB0cnVlKTtcbiAgICAgICAgIHJldHVybiBhbGxvd0Ryb3Aoc291cmNlTm9kZSwgcGFyZW50LCBpbmRleCk7XG4gICAgICB9XG4gICAgICBpZiAocGFyZW50IGluc3RhbmNlb2YgVHJlZUJyYW5jaCkge1xuICAgICAgICAgY29uc3QgYWxsb3dEcm9wID1cbiAgICAgICAgICAgIGNvbmZpZy5nZXRDb25maWcocGFyZW50LnJvb3QoKSk/LmFsbG93RHJvcCA/PyAoKCk6IHRydWUgPT4gdHJ1ZSk7XG4gICAgICAgICByZXR1cm4gYWxsb3dEcm9wKHNvdXJjZU5vZGUsIHBhcmVudCwgaW5kZXgpO1xuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwidW5zdXBwb3J0ZWQgdHJlZU5vZGUgdHlwZVwiKTtcbiAgIH1cblxuICAgcHJpdmF0ZSBzaG93SW5uZXJab25lPFQ+KHRyZWVOb2RlOiBUcmVlQnJhbmNoPFQ+IHwgVHJlZVJvb3Q8VD4pOiB2b2lkIHtcbiAgICAgIGlmICghdGhpcy5uZXN0aW5nQWxsb3dlZCh0cmVlTm9kZSkgfHwgIXRoaXMuZHJvcEFsbG93ZWQodHJlZU5vZGUsIDApKVxuICAgICAgICAgcmV0dXJuO1xuICAgICAgdHJlZU5vZGUuZ2V0Q29udGVudHMoKS5pbnN0YW5jZS5zaG93SW5uZXJEcm9wem9uZSA9IHRydWU7XG4gICB9XG5cbiAgIHByaXZhdGUgc2hvd0xhdGVyYWxab25lPFQ+KHRyZWVCcmFuY2g6IFRyZWVCcmFuY2g8VD4pOiB2b2lkIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdHJlZUJyYW5jaC5pbmRleCgpO1xuICAgICAgYXNzZXJ0KGluZGV4ICE9PSB1bmRlZmluZWQpO1xuICAgICAgaWYgKCF0aGlzLmRyb3BBbGxvd2VkKHRyZWVCcmFuY2gucGFyZW50KCksIGluZGV4ICsgMSkpIHJldHVybjtcbiAgICAgIHRyZWVCcmFuY2guZ2V0Q29udGVudHMoKS5pbnN0YW5jZS5zaG93TGF0ZXJhbERyb3B6b25lID0gdHJ1ZTtcbiAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IGRyb3B6b25lUmVuZGVyZXIgPSBuZXcgRHJvcHpvbmVSZW5kZXJlcigpO1xuIl19
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUtcmVuZGVyZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saW1ibGUtdHJlZS9zcmMvbGliL2V4dHJhcy9kcmFnLWFuZC1kcm9wL2Ryb3B6b25lLXJlbmRlcmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFHM0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHMUMsTUFBTSxnQkFBZ0I7SUFVbkI7UUFDRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDM0IsV0FBVyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3JDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsU0FBUzthQUNMLE1BQU0sRUFBRTthQUNSLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhc3NlcnQgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL2Fzc2VydFwiO1xuaW1wb3J0IHsgQnJhbmNoQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvYnJhbmNoL2JyYW5jaC5jb21wb25lbnRcIjtcbmltcG9ydCB7IERyb3B6b25lQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvZHJvcHpvbmUvZHJvcHpvbmUuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBOb2RlQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvbm9kZS1jb21wb25lbnQuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBkcmFnQW5kRHJvcCB9IGZyb20gXCIuL2RyYWctYW5kLWRyb3BcIjtcbmltcG9ydCB7IFRyZWVCcmFuY2ggfSBmcm9tIFwiLi4vLi4vY29yZS90cmVlLWJyYW5jaC90cmVlLWJyYW5jaFwiO1xuaW1wb3J0IHsgVHJlZVJvb3QgfSBmcm9tIFwiLi4vLi4vY29yZS90cmVlLXJvb3QvdHJlZS1yb290XCI7XG5pbXBvcnQgeyBkcmFnU3RhdGUsIERyYWdTdGF0ZXMgfSBmcm9tIFwiLi9kcmFnLXN0YXRlXCI7XG5pbXBvcnQgeyBmaWx0ZXIsIGZpcnN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IGNvbmZpZyB9IGZyb20gXCIuLi8uLi9jb3JlL2NvbmZpZ3VyYXRpb24vY29uZmlndXJhdGlvblwiO1xuaW1wb3J0IHsgUHJ1bmVFdmVudCB9IGZyb20gXCIuLi8uLi9ldmVudHNcIjtcbmltcG9ydCB7IFRyZWVOb2RlIH0gZnJvbSBcIi4uLy4uL3N0cnVjdHVyZVwiO1xuXG5jbGFzcyBEcm9wem9uZVJlbmRlcmVyIHtcbiAgIHByaXZhdGUgY3VycmVudERpc3BsYXk6IHtcbiAgICAgIHRyZWVCcmFuY2g6IFRyZWVCcmFuY2g8YW55PiB8IFRyZWVSb290PGFueT47XG4gICAgICBkaXJlY3Rpb246IFwidXBwZXJcIiB8IFwibG93ZXJcIjtcbiAgIH0gfCBudWxsO1xuICAgcHJpdmF0ZSByZWFkb25seSByZWdpc3RyeTogTWFwPFxuICAgICAgRHJvcHpvbmVDb21wb25lbnQsXG4gICAgICBUcmVlQnJhbmNoPGFueT4gfCBUcmVlUm9vdDxhbnk+XG4gICA+O1xuXG4gICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICB0aGlzLnJlZ2lzdHJ5ID0gbmV3IE1hcCgpO1xuICAgICAgdGhpcy5jdXJyZW50RGlzcGxheSA9IG51bGw7XG4gICAgICBkcmFnQW5kRHJvcC5kcmFnQWJvcnRlZCQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgIHRoaXMuY2xlYXJDdXJyZW50RGlzcGxheSgpO1xuICAgICAgfSk7XG4gICAgICBkcmFnU3RhdGVcbiAgICAgICAgIC5ldmVudHMoKVxuICAgICAgICAgLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgPT09IERyYWdTdGF0ZXMuU3RhcnRpbmcpKVxuICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBicmFuY2ggPSBkcmFnU3RhdGUuZ2V0RHJhZ0RhdGEoKTtcbiAgICAgICAgICAgIGFzc2VydChicmFuY2ggIT09IHVuZGVmaW5lZCk7XG4gICAgICAgICAgICBsZXQgY3Vyc29yID0gYnJhbmNoLnBhcmVudCgpPy5nZXRCcmFuY2goKGJyYW5jaC5pbmRleCgpID8/IDApIC0gMSk7XG4gICAgICAgICAgICBsZXQgZmluYWwgPSBicmFuY2gucGFyZW50KCk7XG4gICAgICAgICAgICB3aGlsZSAoY3Vyc29yICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgIGZpbmFsID0gY3Vyc29yO1xuICAgICAgICAgICAgICAgY3Vyc29yID0gY3Vyc29yLmJyYW5jaGVzKCkuYXQoLTEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJhbmNoXG4gICAgICAgICAgICAgICAuZXZlbnRzKClcbiAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBQcnVuZUV2ZW50KSxcbiAgICAgICAgICAgICAgICAgIGZpcnN0KClcbiAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgYXNzZXJ0KFxuICAgICAgICAgICAgICAgICAgICAgZmluYWwgaW5zdGFuY2VvZiBUcmVlQnJhbmNoIHx8IGZpbmFsIGluc3RhbmNlb2YgVHJlZVJvb3RcbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB0aGlzLnNob3dMb3dlclpvbmVzKGZpbmFsKTtcbiAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgfSk7XG4gICB9XG5cbiAgIHB1YmxpYyBjbGVhckN1cnJlbnREaXNwbGF5KCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuY3VycmVudERpc3BsYXkgPT09IG51bGwpIHJldHVybjtcbiAgICAgIGZvciAoY29uc3QgYnJhbmNoIG9mIHRoaXMucmVnaXN0cnkudmFsdWVzKCkpIHtcbiAgICAgICAgIGNvbnN0IGluc3RhbmNlID0gYnJhbmNoLmdldENvbXBvbmVudEluc3RhbmNlKCk7XG4gICAgICAgICBpbnN0YW5jZS5zaG93SW5uZXJEcm9wem9uZSA9IGZhbHNlO1xuICAgICAgICAgaWYgKGluc3RhbmNlIGluc3RhbmNlb2YgQnJhbmNoQ29tcG9uZW50KSB7XG4gICAgICAgICAgICBpbnN0YW5jZS5zaG93TGF0ZXJhbERyb3B6b25lID0gZmFsc2U7XG4gICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLmN1cnJlbnREaXNwbGF5ID0gbnVsbDtcbiAgIH1cblxuICAgcHVibGljIGNsZWFyVHJlZUZyb21SZWdpc3RyeSh0cmVlOiBUcmVlUm9vdDxhbnk+IHwgVHJlZUJyYW5jaDxhbnk+KTogdm9pZCB7XG4gICAgICBjb25zdCBub2RlczogQXJyYXk8VHJlZU5vZGU8VHJlZUJyYW5jaDxhbnk+LCBOb2RlQ29tcG9uZW50Pj4gPSBbXTtcbiAgICAgIHRyZWUudHJhdmVyc2UoKG5vZGUpID0+IG5vZGVzLnB1c2gobm9kZSkpO1xuICAgICAgZm9yIChjb25zdCBbZHJvcHpvbmVDb21wb25lbnQsIHRyZWVOb2RlXSBvZiB0aGlzLnJlZ2lzdHJ5KSB7XG4gICAgICAgICBpZiAobm9kZXMuaW5jbHVkZXModHJlZU5vZGUpKSB7XG4gICAgICAgICAgICB0aGlzLnJlZ2lzdHJ5LmRlbGV0ZShkcm9wem9uZUNvbXBvbmVudCk7XG4gICAgICAgICB9XG4gICAgICB9XG4gICB9XG5cbiAgIHB1YmxpYyBnZXRDdXJyZW50RGlzcGxheSgpOiB7XG4gICAgICB0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPGFueT4gfCBUcmVlUm9vdDxhbnk+O1xuICAgICAgZGlyZWN0aW9uOiBcInVwcGVyXCIgfCBcImxvd2VyXCI7XG4gICB9IHwgbnVsbCB7XG4gICAgICBpZiAodGhpcy5jdXJyZW50RGlzcGxheSA9PT0gbnVsbCkgcmV0dXJuIG51bGw7XG4gICAgICByZXR1cm4geyAuLi50aGlzLmN1cnJlbnREaXNwbGF5IH07XG4gICB9XG5cbiAgIHB1YmxpYyBnZXREcm9wem9uZUxvY2F0aW9uPFQ+KFxuICAgICAgZHJvcHpvbmU6IERyb3B6b25lQ29tcG9uZW50XG4gICApOiBbVHJlZUJyYW5jaDxUPiB8IFRyZWVSb290PFQ+LCBcImlubmVyXCIgfCBcImxhdGVyYWxcIl0ge1xuICAgICAgY29uc3QgYnJhbmNoID0gdGhpcy5yZWdpc3RyeS5nZXQoZHJvcHpvbmUpO1xuICAgICAgY29uc3QgcGxhY2VtZW50ID0gZHJvcHpvbmUucGxhY2VtZW50O1xuICAgICAgaWYgKGJyYW5jaCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJkcm9wem9uZSBub3QgZm91bmQgaW4gcmVnaXN0cnlcIik7XG4gICAgICB9XG4gICAgICBpZiAocGxhY2VtZW50ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgIHRocm93IG5ldyBFcnJvcihcImRyb3B6b25lIGhhcyBhbiB1bmRlZmluZWQgcGxhY2VtZW50XCIpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFticmFuY2gsIHBsYWNlbWVudF07XG4gICB9XG5cbiAgIHB1YmxpYyBoYW5kbGVEcm9wPFQ+KFxuICAgICAgdHJlZU5vZGU6IFRyZWVCcmFuY2g8VD4gfCBUcmVlUm9vdDxUPixcbiAgICAgIHBsYWNlbWVudDogXCJpbm5lclwiIHwgXCJsYXRlcmFsXCJcbiAgICk6IHZvaWQge1xuICAgICAgaWYgKHBsYWNlbWVudCA9PT0gXCJpbm5lclwiKSB7XG4gICAgICAgICBkcmFnQW5kRHJvcC5kcm9wKHRyZWVOb2RlLCAwKTtcbiAgICAgIH0gZWxzZSBpZiAodHJlZU5vZGUgaW5zdGFuY2VvZiBUcmVlQnJhbmNoICYmIHBsYWNlbWVudCA9PT0gXCJsYXRlcmFsXCIpIHtcbiAgICAgICAgIGNvbnN0IGN1cnJlbnRQYXJlbnQgPSB0cmVlTm9kZS5wYXJlbnQoKTtcbiAgICAgICAgIGNvbnN0IGluZGV4ID0gdHJlZU5vZGUuaW5kZXgoKTtcbiAgICAgICAgIGlmIChjdXJyZW50UGFyZW50ID09PSB1bmRlZmluZWQgfHwgaW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiYnJhbmNoIG11c3QgaGF2ZSBhIHBhcmVudFwiKTtcbiAgICAgICAgIH1cbiAgICAgICAgIGRyYWdBbmREcm9wLmRyb3AoY3VycmVudFBhcmVudCwgaW5kZXggKyAxKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2xlYXJDdXJyZW50RGlzcGxheSgpO1xuICAgfVxuXG4gICBwdWJsaWMgcmVnaXN0ZXJEcm9wem9uZTxUPihcbiAgICAgIGRyb3B6b25lOiBEcm9wem9uZUNvbXBvbmVudCxcbiAgICAgIHRyZWVOb2RlOiBUcmVlQnJhbmNoPFQ+IHwgVHJlZVJvb3Q8VD5cbiAgICk6IHZvaWQge1xuICAgICAgdGhpcy5yZWdpc3RyeS5zZXQoZHJvcHpvbmUsIHRyZWVOb2RlKTtcbiAgIH1cblxuICAgcHVibGljIHJlZ2lzdGVyRHJvcHpvbmVzPFQ+KFxuICAgICAgZHJvcHpvbmVzOiBJdGVyYWJsZTxEcm9wem9uZUNvbXBvbmVudD4sXG4gICAgICB0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+XG4gICApOiB2b2lkIHtcbiAgICAgIGZvciAoY29uc3QgZHJvcHpvbmUgb2YgZHJvcHpvbmVzKSB7XG4gICAgICAgICB0aGlzLnJlZ2lzdHJ5LnNldChkcm9wem9uZSwgdHJlZUJyYW5jaCk7XG4gICAgICB9XG4gICB9XG5cbiAgIHB1YmxpYyBzaG93TG93ZXJab25lczxUPih0cmVlTm9kZTogVHJlZUJyYW5jaDxUPiB8IFRyZWVSb290PFQ+KTogdm9pZCB7XG4gICAgICB0aGlzLmNsZWFyQ3VycmVudERpc3BsYXkoKTtcbiAgICAgIHRoaXMuc2hvd0lubmVyWm9uZSh0cmVlTm9kZSk7XG4gICAgICBpZiAodHJlZU5vZGUuYnJhbmNoZXMoKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgIHRoaXMubG9vcFRocm91Z2hMb3dlclpvbmVzKHRyZWVOb2RlKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY3VycmVudERpc3BsYXkgPSB7IHRyZWVCcmFuY2g6IHRyZWVOb2RlLCBkaXJlY3Rpb246IFwibG93ZXJcIiB9O1xuICAgfVxuXG4gICBwdWJsaWMgc2hvd1VwcGVyWm9uZXM8VD4odHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPik6IHZvaWQge1xuICAgICAgdGhpcy5jbGVhckN1cnJlbnREaXNwbGF5KCk7XG4gICAgICB0aGlzLmxvb3BUaHJvdWdoVXBwZXJab25lcyh0cmVlQnJhbmNoKTtcbiAgICAgIHRoaXMuY3VycmVudERpc3BsYXkgPSB7IHRyZWVCcmFuY2gsIGRpcmVjdGlvbjogXCJ1cHBlclwiIH07XG4gICB9XG5cbiAgIHByaXZhdGUgbG9vcFRocm91Z2hMb3dlclpvbmVzPFQ+KFxuICAgICAgdHJlZU5vZGU6IFRyZWVCcmFuY2g8VD4gfCBUcmVlUm9vdDxUPlxuICAgKTogdm9pZCB7XG4gICAgICBsZXQgY3Vyc29yOiBUcmVlTm9kZTxUcmVlQnJhbmNoPFQ+LCBOb2RlQ29tcG9uZW50PiB8IHVuZGVmaW5lZCA9IHRyZWVOb2RlO1xuICAgICAgd2hpbGUgKGN1cnNvciBpbnN0YW5jZW9mIFRyZWVCcmFuY2gpIHtcbiAgICAgICAgIHRoaXMuc2hvd0xhdGVyYWxab25lKGN1cnNvcik7XG4gICAgICAgICBjb25zdCBwYXJlbnQgPSBjdXJzb3IucGFyZW50KCk7XG4gICAgICAgICBjb25zdCBpbmRleCA9IGN1cnNvci5pbmRleCgpO1xuICAgICAgICAgYXNzZXJ0KHBhcmVudCAhPT0gdW5kZWZpbmVkICYmIGluZGV4ICE9PSB1bmRlZmluZWQpO1xuICAgICAgICAgaWYgKHBhcmVudC5icmFuY2hlcygpLmxlbmd0aCA+IGluZGV4ICsgMSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgfVxuICAgICAgICAgY3Vyc29yID0gY3Vyc29yLnBhcmVudCgpO1xuICAgICAgfVxuICAgfVxuXG4gICBwcml2YXRlIGxvb3BUaHJvdWdoVXBwZXJab25lczxUPih0cmVlQnJhbmNoOiBUcmVlQnJhbmNoPFQ+KTogdm9pZCB7XG4gICAgICBsZXQgY3Vyc29yID0gdHJlZUJyYW5jaFxuICAgICAgICAgLnBhcmVudCgpXG4gICAgICAgICA/LmdldEJyYW5jaCgodHJlZUJyYW5jaC5pbmRleCgpID8/IDApIC0gMSk7XG4gICAgICBsZXQgZmluYWwgPSB0cmVlQnJhbmNoLnBhcmVudCgpO1xuICAgICAgd2hpbGUgKGN1cnNvciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICB0aGlzLnNob3dMYXRlcmFsWm9uZShjdXJzb3IpO1xuICAgICAgICAgZmluYWwgPSBjdXJzb3I7XG4gICAgICAgICBjdXJzb3IgPSBjdXJzb3IuYnJhbmNoZXMoKS5hdCgtMSk7XG4gICAgICB9XG4gICAgICBpZiAoXG4gICAgICAgICBmaW5hbCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAoZmluYWwgaW5zdGFuY2VvZiBUcmVlUm9vdCB8fCBmaW5hbCBpbnN0YW5jZW9mIFRyZWVCcmFuY2gpXG4gICAgICApIHtcbiAgICAgICAgIHRoaXMuc2hvd0lubmVyWm9uZShmaW5hbCk7XG4gICAgICB9XG4gICB9XG5cbiAgIHByaXZhdGUgbmVzdGluZ0FsbG93ZWQodHJlZU5vZGU6IHVua25vd24pOiBib29sZWFuIHtcbiAgICAgIGlmICh0cmVlTm9kZSBpbnN0YW5jZW9mIFRyZWVSb290KSB7XG4gICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmICh0cmVlTm9kZSBpbnN0YW5jZW9mIFRyZWVCcmFuY2gpIHtcbiAgICAgICAgIGNvbnN0IGFsbG93TmVzdGluZyA9XG4gICAgICAgICAgICBjb25maWcuZ2V0Q29uZmlnKHRyZWVOb2RlLnJvb3QoKSk/LmRyYWdBbmREcm9wPy5hbGxvd05lc3RpbmcgPz9cbiAgICAgICAgICAgICgoKTogdHJ1ZSA9PiB0cnVlKTtcbiAgICAgICAgIHJldHVybiBhbGxvd05lc3RpbmcodHJlZU5vZGUpO1xuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwidW5zdXBwb3J0ZWQgdHJlZU5vZGUgdHlwZVwiKTtcbiAgIH1cblxuICAgcHJpdmF0ZSBkcm9wQWxsb3dlZChwYXJlbnQ6IHVua25vd24sIGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgIGNvbnN0IHNvdXJjZU5vZGUgPSBkcmFnU3RhdGUuZ2V0RHJhZ0RhdGEoKTtcbiAgICAgIGFzc2VydChzb3VyY2VOb2RlIGluc3RhbmNlb2YgVHJlZUJyYW5jaCk7XG4gICAgICBpZiAocGFyZW50IGluc3RhbmNlb2YgVHJlZVJvb3QpIHtcbiAgICAgICAgIGNvbnN0IGFsbG93RHJvcCA9XG4gICAgICAgICAgICBjb25maWcuZ2V0Q29uZmlnKHBhcmVudCk/LmRyYWdBbmREcm9wPy5hbGxvd0Ryb3AgPz9cbiAgICAgICAgICAgICgoKTogdHJ1ZSA9PiB0cnVlKTtcbiAgICAgICAgIHJldHVybiBhbGxvd0Ryb3Aoc291cmNlTm9kZSwgcGFyZW50LCBpbmRleCk7XG4gICAgICB9XG4gICAgICBpZiAocGFyZW50IGluc3RhbmNlb2YgVHJlZUJyYW5jaCkge1xuICAgICAgICAgY29uc3QgYWxsb3dEcm9wID1cbiAgICAgICAgICAgIGNvbmZpZy5nZXRDb25maWcocGFyZW50LnJvb3QoKSk/LmRyYWdBbmREcm9wPy5hbGxvd0Ryb3AgPz9cbiAgICAgICAgICAgICgoKTogdHJ1ZSA9PiB0cnVlKTtcbiAgICAgICAgIHJldHVybiBhbGxvd0Ryb3Aoc291cmNlTm9kZSwgcGFyZW50LCBpbmRleCk7XG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1bnN1cHBvcnRlZCB0cmVlTm9kZSB0eXBlXCIpO1xuICAgfVxuXG4gICBwcml2YXRlIHNob3dJbm5lclpvbmU8VD4odHJlZU5vZGU6IFRyZWVCcmFuY2g8VD4gfCBUcmVlUm9vdDxUPik6IHZvaWQge1xuICAgICAgaWYgKCF0aGlzLm5lc3RpbmdBbGxvd2VkKHRyZWVOb2RlKSB8fCAhdGhpcy5kcm9wQWxsb3dlZCh0cmVlTm9kZSwgMCkpXG4gICAgICAgICByZXR1cm47XG4gICAgICB0cmVlTm9kZS5nZXRDb21wb25lbnRJbnN0YW5jZSgpLnNob3dJbm5lckRyb3B6b25lID0gdHJ1ZTtcbiAgIH1cblxuICAgcHJpdmF0ZSBzaG93TGF0ZXJhbFpvbmU8VD4odHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPik6IHZvaWQge1xuICAgICAgY29uc3QgaW5kZXggPSB0cmVlQnJhbmNoLmluZGV4KCk7XG4gICAgICBhc3NlcnQoaW5kZXggIT09IHVuZGVmaW5lZCk7XG4gICAgICBpZiAoIXRoaXMuZHJvcEFsbG93ZWQodHJlZUJyYW5jaC5wYXJlbnQoKSwgaW5kZXggKyAxKSkgcmV0dXJuO1xuICAgICAgdHJlZUJyYW5jaC5nZXRDb21wb25lbnRJbnN0YW5jZSgpLnNob3dMYXRlcmFsRHJvcHpvbmUgPSB0cnVlO1xuICAgfVxufVxuXG5leHBvcnQgY29uc3QgZHJvcHpvbmVSZW5kZXJlciA9IG5ldyBEcm9wem9uZVJlbmRlcmVyKCk7XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LWNvbXBvbmVudC1vYmouaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGltYmxlLXRyZWUvc3JjL2xpYi9sZWdhY3kvbGVnYWN5LWNvbXBvbmVudC1vYmouaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUeXBlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuLyoqXG4gKiBBbiBvYmplY3QgdGhhdCByZWZlcmVuY2VzIHRoZSBjb21wb25lbnQgdG8gYmUgcmVuZGVyZWQgYW5kIGl0cyBiaW5kaW5nc1xuICogQGRlcHJlY2F0ZWRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb21wb25lbnRPYmoge1xuICAgLyoqIFRoZSBjb21wb25lbnQgY2xhc3MgKi9cbiAgIGNsYXNzOiBUeXBlPHVua25vd24+O1xuICAgLyoqIFRoZSBiaW5kaW5ncyAoaW5wdXRzIGFuZCBvdXRwdXRzKSBvZiB0aGUgY2xhc3MgKi9cbiAgIGJpbmRpbmdzPzoge1xuICAgICAgW2luZGV4OiBzdHJpbmddOiB1bmtub3duO1xuICAgfTtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LWNvbXBvbmVudC1vYmouaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGltYmxlLXRyZWUvc3JjL2xpYi9sZWdhY3kvbGVnYWN5LWNvbXBvbmVudC1vYmouaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFR5cGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG4vKipcbiAqIEFuIG9iamVjdCB0aGF0IHJlZmVyZW5jZXMgdGhlIGNvbXBvbmVudCB0byBiZSByZW5kZXJlZCBhbmQgaXRzIGJpbmRpbmdzXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbXBvbmVudE9iaiB7XG4gICAvKiogVGhlIGNvbXBvbmVudCBjbGFzcyAqL1xuICAgY2xhc3M6IFR5cGU8dW5rbm93bj47XG4gICAvKiogVGhlIGJpbmRpbmdzIChpbnB1dHMgYW5kIG91dHB1dHMpIG9mIHRoZSBjbGFzcyAqL1xuICAgYmluZGluZ3M/OiB7XG4gICAgICBbaW5kZXg6IHN0cmluZ106IHVua25vd247XG4gICB9O1xufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LXRyZWUtZGF0YS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saW1ibGUtdHJlZS9zcmMvbGliL2xlZ2FjeS9sZWdhY3ktdHJlZS1kYXRhLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50T2JqIH0gZnJvbSBcIi4vbGVnYWN5LWNvbXBvbmVudC1vYmouaW50ZXJmYWNlXCI7XG5cbi8qKlxuICogQW4gb2JqZWN0IGRlc2NyaWJpbmcgYSBub2RlIG9mIHRoZSB0cmVlXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgaW50ZXJmYWNlIExpbWJsZVRyZWVOb2RlIHtcbiAgIC8qKiBBIGxpc3Qgb2Ygbm9kZXMgdG8gYmUgcmVuZGVyZWQgXCJ1bmRlclwiIHRoaXMgb25lLCBvbmUgbGV2ZWwgZGVlcGVyIGluIHRoZSB0cmVlLiAqL1xuICAgbm9kZXM/OiBMaW1ibGVUcmVlRGF0YTtcbiAgIC8qKiBBbiBvYmplY3QgdGhhdCBkZXNjcmliZXMgdGhlIGNvbXBvbmVudCB3aGljaCB3aWxsIHJlcHJlc2VudCB0aGlzIG5vZGUgaW4gdGhlIHZpc3VhbCB0cmVlICovXG4gICBjb21wb25lbnQ/OiBDb21wb25lbnRPYmo7XG4gICBjb2xsYXBzZWQ/OiBib29sZWFuO1xuICAgW2luZGV4OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG4vKipcbiAqIEFuIG9iamVjdCB0aGF0IHRoZSBsaW1ibGUtdHJlZS1yb290IGNvbXBvbmVudCB1c2VzIHRvIGJ1aWxkIHRoZSB0cmVlXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgdHlwZSBMaW1ibGVUcmVlRGF0YSA9IEFycmF5PExpbWJsZVRyZWVOb2RlPjtcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LXRyZWUtZGF0YS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saW1ibGUtdHJlZS9zcmMvbGliL2xlZ2FjeS9sZWdhY3ktdHJlZS1kYXRhLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb21wb25lbnRPYmogfSBmcm9tIFwiLi9sZWdhY3ktY29tcG9uZW50LW9iai5pbnRlcmZhY2VcIjtcblxuLyoqXG4gKiBBbiBvYmplY3QgZGVzY3JpYmluZyBhIG5vZGUgb2YgdGhlIHRyZWVcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGltYmxlVHJlZU5vZGUge1xuICAgLyoqIEEgbGlzdCBvZiBub2RlcyB0byBiZSByZW5kZXJlZCBcInVuZGVyXCIgdGhpcyBvbmUsIG9uZSBsZXZlbCBkZWVwZXIgaW4gdGhlIHRyZWUuICovXG4gICBub2Rlcz86IExpbWJsZVRyZWVEYXRhO1xuICAgLyoqIEFuIG9iamVjdCB0aGF0IGRlc2NyaWJlcyB0aGUgY29tcG9uZW50IHdoaWNoIHdpbGwgcmVwcmVzZW50IHRoaXMgbm9kZSBpbiB0aGUgdmlzdWFsIHRyZWUgKi9cbiAgIGNvbXBvbmVudD86IENvbXBvbmVudE9iajtcbiAgIGNvbGxhcHNlZD86IGJvb2xlYW47XG4gICBbaW5kZXg6IHN0cmluZ106IHVua25vd247XG59XG5cbi8qKlxuICogQW4gb2JqZWN0IHRoYXQgdGhlIGxpbWJsZS10cmVlLXJvb3QgY29tcG9uZW50IHVzZXMgdG8gYnVpbGQgdGhlIHRyZWVcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCB0eXBlIExpbWJsZVRyZWVEYXRhID0gQXJyYXk8TGltYmxlVHJlZU5vZGU+O1xuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LXRyZWUtb3B0aW9ucy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saW1ibGUtdHJlZS9zcmMvbGliL2xlZ2FjeS9sZWdhY3ktdHJlZS1vcHRpb25zLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJlZUJyYW5jaCwgVHJlZVJvb3QgfSBmcm9tIFwiLi4vY29yZVwiO1xuaW1wb3J0IHsgQ29tcG9uZW50T2JqIH0gZnJvbSBcIi4vbGVnYWN5LWNvbXBvbmVudC1vYmouaW50ZXJmYWNlXCI7XG5cbi8qKlxuICogQSBncm91cCBvZiBzZXR0aW5ncyBmb3IgY2hhbmdpbmcgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIHRyZWVcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGltYmxlVHJlZU9wdGlvbnMge1xuICAgLyoqIFRoZSBjb21wb25lbnQgb2JqZWN0IHRvIHVzZSBpZiBvbmUgaXMgbm90IHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIG5vZGUgKi9cbiAgIGRlZmF1bHRDb21wb25lbnQ/OiBDb21wb25lbnRPYmo7XG5cbiAgIC8qKiBUaGUgbnVtYmVyIG9mIHBpeGVscyB0byBpbmRlbnQgZWFjaCBsZXZlbCBvZiB0aGUgdHJlZS4gRGVmYXVsdHMgdG8gNDUgKi9cbiAgIGluZGVudD86IG51bWJlcjtcblxuICAgLyoqXG4gICAgKiBXaGV0aGVyIHRvIGFsbG93IFwibmVzdGluZ1wiIChwbGFjaW5nIGEgbm9kZSBvbmUgbGV2ZWwgZGVlcGVyIHRoYW4gY3VycmVudGx5IGV4aXN0cyBvbiB0aGUgYnJhbmNoKS5cbiAgICAqIFdoZW4gdGhpcyBpcyBhIGJvb2xlYW4sIGl0IGFwcGxpZXMgdG8gYWxsIG5vZGVzLiBXaGVuIHRoaXMgaXMgYSBmdW5jdGlvbiwgdGhlIG5vZGUgaW4gcXVlc3Rpb25cbiAgICAqIGlzIHBhc3NlZCBpbi4gRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICAqL1xuICAgYWxsb3dOZXN0aW5nPzogYm9vbGVhbiB8ICg8VD4odHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPikgPT4gYm9vbGVhbik7XG5cbiAgIC8qKlxuICAgICogV2hldGhlciB0byBhbGxvdyBhIG5vZGUgdG8gYmUgZHJhZ2dlZC4gV2hlbiB0aGlzIGlzIGEgYm9vbGVhbiwgaXQgYXBwbGllcyB0byBhbGwgbm9kZXMuIFdoZW4gdGhpc1xuICAgICogaXMgYSBmdW5jdGlvbiwgdGhlIG5vZGUgaW4gcXVlc3Rpb24gaXMgcGFzc2VkIGluLiBEZWZhdWx0cyB0byB0cnVlLlxuICAgICovXG4gICBhbGxvd0RyYWdnaW5nPzogYm9vbGVhbiB8ICg8VD4odHJlZUJyYW5jaDogVHJlZUJyYW5jaDxUPikgPT4gYm9vbGVhbik7XG5cbiAgIC8qKiBBIGNhbGxiYWNrIHRvIGRldGVybWluZSB3aGV0aGVyIGEgc291cmNlTm9kZSBjYW4gYmUgZHJvcHBlZCBhdCBhIHBhcnRpY3VsYXIgbG9jYXRpb24uICovXG4gICBhbGxvd0Ryb3A/OiA8VD4oXG4gICAgICBzb3VyY2VOb2RlOiBUcmVlQnJhbmNoPFQ+LFxuICAgICAgcHJvcG9zZWRQYXJlbnQ6IFRyZWVCcmFuY2g8VD4gfCBUcmVlUm9vdDxUPixcbiAgICAgIHByb3Bvc2VkSW5kZXg6IG51bWJlclxuICAgKSA9PiBib29sZWFuO1xuXG4gICAvKipcbiAgICAqIFdoZW4gc2V0IHRvIHRydWUsIGxpc3QgbW9kZSB3aWxsIGVuZm9yY2UgYSBmbGF0IHRyZWUgc3RydWN0dXJlLCBtZWFuaW5nIHRoZXJlXG4gICAgKiBjYW4gb25seSBiZSBvbmUgbGV2ZWwgb2YgdGhlIHRyZWUuIGBhbGxvd05lc3RpbmdgIGlzIGF1dG9tYXRpY2FsbHkgc2V0IHRvIGBmYWxzZWAuXG4gICAgKlxuICAgICogVGhpcyBtb2RlIGNhbiBiZSB1c2VkIHdoZW4gdGhlIHNhbWUgZHluYW1pYyBkcmFnIGFuZCBkcm9wIGZ1bmN0aW9uYWxpdHkgb2ZcbiAgICAqIHRoZSB0cmVlIGlzIGRlc2lyZWQsIGJ1dCB0aGUgdHJlZSBzdHJ1Y3R1cmUgaXRzZWxmIGlzIG5vdCBuZWNlc3NhcnkuIFRoaXNcbiAgICAqIGFsc28gb3BlbnMgdXAgdGhlIHBhZ2luYXRpb24gQVBJIG9uIHRoZSBsaW1ibGUtdHJlZS1yb290IGNvbXBvbmVudC5cbiAgICAqL1xuICAgbGlzdE1vZGU/OiBib29sZWFuO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LXRyZWUtb3B0aW9ucy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saW1ibGUtdHJlZS9zcmMvbGliL2xlZ2FjeS9sZWdhY3ktdHJlZS1vcHRpb25zLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBUcmVlQnJhbmNoLCBUcmVlUm9vdCB9IGZyb20gXCIuLi9jb3JlXCI7XG5pbXBvcnQgdHlwZSB7IENvbXBvbmVudE9iaiB9IGZyb20gXCIuL2xlZ2FjeS1jb21wb25lbnQtb2JqLmludGVyZmFjZVwiO1xuXG4vKipcbiAqIEEgZ3JvdXAgb2Ygc2V0dGluZ3MgZm9yIGNoYW5naW5nIHRoZSBmdW5jdGlvbmFsaXR5IG9mIHRoZSB0cmVlXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgaW50ZXJmYWNlIExpbWJsZVRyZWVPcHRpb25zIHtcbiAgIC8qKiBUaGUgY29tcG9uZW50IG9iamVjdCB0byB1c2UgaWYgb25lIGlzIG5vdCBzcGVjaWZpZWQgZm9yIGEgcGFydGljdWxhciBub2RlICovXG4gICBkZWZhdWx0Q29tcG9uZW50PzogQ29tcG9uZW50T2JqO1xuXG4gICAvKiogVGhlIG51bWJlciBvZiBwaXhlbHMgdG8gaW5kZW50IGVhY2ggbGV2ZWwgb2YgdGhlIHRyZWUuIERlZmF1bHRzIHRvIDQ1ICovXG4gICBpbmRlbnQ/OiBudW1iZXI7XG5cbiAgIC8qKlxuICAgICogV2hldGhlciB0byBhbGxvdyBcIm5lc3RpbmdcIiAocGxhY2luZyBhIG5vZGUgb25lIGxldmVsIGRlZXBlciB0aGFuIGN1cnJlbnRseSBleGlzdHMgb24gdGhlIGJyYW5jaCkuXG4gICAgKiBXaGVuIHRoaXMgaXMgYSBib29sZWFuLCBpdCBhcHBsaWVzIHRvIGFsbCBub2Rlcy4gV2hlbiB0aGlzIGlzIGEgZnVuY3Rpb24sIHRoZSBub2RlIGluIHF1ZXN0aW9uXG4gICAgKiBpcyBwYXNzZWQgaW4uIERlZmF1bHRzIHRvIHRydWUuXG4gICAgKi9cbiAgIGFsbG93TmVzdGluZz86IGJvb2xlYW4gfCAoPFQ+KHRyZWVCcmFuY2g6IFRyZWVCcmFuY2g8VD4pID0+IGJvb2xlYW4pO1xuXG4gICAvKipcbiAgICAqIFdoZXRoZXIgdG8gYWxsb3cgYSBub2RlIHRvIGJlIGRyYWdnZWQuIFdoZW4gdGhpcyBpcyBhIGJvb2xlYW4sIGl0IGFwcGxpZXMgdG8gYWxsIG5vZGVzLiBXaGVuIHRoaXNcbiAgICAqIGlzIGEgZnVuY3Rpb24sIHRoZSBub2RlIGluIHF1ZXN0aW9uIGlzIHBhc3NlZCBpbi4gRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICAqL1xuICAgYWxsb3dEcmFnZ2luZz86IGJvb2xlYW4gfCAoPFQ+KHRyZWVCcmFuY2g6IFRyZWVCcmFuY2g8VD4pID0+IGJvb2xlYW4pO1xuXG4gICAvKiogQSBjYWxsYmFjayB0byBkZXRlcm1pbmUgd2hldGhlciBhIHNvdXJjZU5vZGUgY2FuIGJlIGRyb3BwZWQgYXQgYSBwYXJ0aWN1bGFyIGxvY2F0aW9uLiAqL1xuICAgYWxsb3dEcm9wPzogPFQ+KFxuICAgICAgc291cmNlTm9kZTogVHJlZUJyYW5jaDxUPixcbiAgICAgIHByb3Bvc2VkUGFyZW50OiBUcmVlQnJhbmNoPFQ+IHwgVHJlZVJvb3Q8VD4sXG4gICAgICBwcm9wb3NlZEluZGV4OiBudW1iZXJcbiAgICkgPT4gYm9vbGVhbjtcblxuICAgLyoqXG4gICAgKiBXaGVuIHNldCB0byB0cnVlLCBsaXN0IG1vZGUgd2lsbCBlbmZvcmNlIGEgZmxhdCB0cmVlIHN0cnVjdHVyZSwgbWVhbmluZyB0aGVyZVxuICAgICogY2FuIG9ubHkgYmUgb25lIGxldmVsIG9mIHRoZSB0cmVlLiBgYWxsb3dOZXN0aW5nYCBpcyBhdXRvbWF0aWNhbGx5IHNldCB0byBgZmFsc2VgLlxuICAgICpcbiAgICAqIFRoaXMgbW9kZSBjYW4gYmUgdXNlZCB3aGVuIHRoZSBzYW1lIGR5bmFtaWMgZHJhZyBhbmQgZHJvcCBmdW5jdGlvbmFsaXR5IG9mXG4gICAgKiB0aGUgdHJlZSBpcyBkZXNpcmVkLCBidXQgdGhlIHRyZWUgc3RydWN0dXJlIGl0c2VsZiBpcyBub3QgbmVjZXNzYXJ5LiBUaGlzXG4gICAgKiBhbHNvIG9wZW5zIHVwIHRoZSBwYWdpbmF0aW9uIEFQSSBvbiB0aGUgbGltYmxlLXRyZWUtcm9vdCBjb21wb25lbnQuXG4gICAgKi9cbiAgIGxpc3RNb2RlPzogYm9vbGVhbjtcbn1cbiJdfQ==