phoenix-ui-components 2.11.4 → 2.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/dist/components/embed-menu/embed-menu.component.d.ts +1 -1
  2. package/dist/components/embed-menu/experiment-link/experiment-link.component.d.ts +1 -1
  3. package/dist/components/file-explorer/file-explorer.component.d.ts +1 -1
  4. package/dist/components/loader/loader.component.d.ts +1 -1
  5. package/dist/components/nav/nav.component.d.ts +1 -1
  6. package/dist/components/phoenix-menu/config/config-slider/config-slider.component.d.ts +1 -1
  7. package/dist/components/phoenix-menu/phoenix-menu-item/phoenix-menu-item.component.d.ts +1 -1
  8. package/dist/components/phoenix-menu/phoenix-menu.component.d.ts +1 -1
  9. package/dist/components/phoenix-ui.module.d.ts +30 -27
  10. package/dist/components/ring-loader/ring-loader.component.d.ts +1 -1
  11. package/dist/components/ui-menu/animate-camera/animate-camera.component.d.ts +1 -1
  12. package/dist/components/ui-menu/animate-event/animate-event.component.d.ts +1 -1
  13. package/dist/components/ui-menu/ar-toggle/ar-toggle.component.d.ts +1 -1
  14. package/dist/components/ui-menu/auto-rotate/auto-rotate.component.d.ts +1 -1
  15. package/dist/components/ui-menu/collections-info/collections-info-overlay/collections-info-overlay.component.d.ts +1 -1
  16. package/dist/components/ui-menu/collections-info/collections-info.component.d.ts +1 -1
  17. package/dist/components/ui-menu/cycle-events/cycle-events.component.d.ts +1 -1
  18. package/dist/components/ui-menu/dark-theme/dark-theme.component.d.ts +1 -1
  19. package/dist/components/ui-menu/event-data-explorer/event-data-explorer-dialog/event-data-explorer-dialog.component.d.ts +4 -3
  20. package/dist/components/ui-menu/event-data-explorer/event-data-explorer.component.d.ts +2 -2
  21. package/dist/components/ui-menu/event-selector/event-selector.component.d.ts +1 -1
  22. package/dist/components/ui-menu/experiment-info/experiment-info.component.d.ts +1 -1
  23. package/dist/components/ui-menu/index.d.ts +1 -0
  24. package/dist/components/ui-menu/info-panel/info-panel-overlay/info-panel-overlay.component.d.ts +1 -1
  25. package/dist/components/ui-menu/info-panel/info-panel.component.d.ts +1 -1
  26. package/dist/components/ui-menu/io-options/io-options-dialog/io-options-dialog.component.d.ts +2 -1
  27. package/dist/components/ui-menu/io-options/io-options.component.d.ts +1 -1
  28. package/dist/components/ui-menu/main-view-toggle/main-view-toggle.component.d.ts +1 -1
  29. package/dist/components/ui-menu/make-picture/make-picture.component.d.ts +17 -0
  30. package/dist/components/ui-menu/menu-toggle/menu-toggle.component.d.ts +1 -1
  31. package/dist/components/ui-menu/object-clipping/object-clipping.component.d.ts +3 -4
  32. package/dist/components/ui-menu/object-selection/object-selection-overlay/object-selection-overlay.component.d.ts +1 -1
  33. package/dist/components/ui-menu/object-selection/object-selection.component.d.ts +1 -1
  34. package/dist/components/ui-menu/overlay/overlay.component.d.ts +1 -1
  35. package/dist/components/ui-menu/overlay-view/overlay-view-window/overlay-view-window.component.d.ts +1 -1
  36. package/dist/components/ui-menu/overlay-view/overlay-view.component.d.ts +1 -1
  37. package/dist/components/ui-menu/performance-toggle/performance-toggle.component.d.ts +1 -1
  38. package/dist/components/ui-menu/share-link/share-link-dialog/share-link-dialog.component.d.ts +1 -1
  39. package/dist/components/ui-menu/share-link/share-link.component.d.ts +1 -1
  40. package/dist/components/ui-menu/ss-mode/ss-mode.component.d.ts +1 -1
  41. package/dist/components/ui-menu/tree-menu/tree-menu-item/tree-menu-item.component.d.ts +2 -2
  42. package/dist/components/ui-menu/tree-menu/tree-menu.component.d.ts +1 -1
  43. package/dist/components/ui-menu/ui-menu-wrapper/ui-menu-wrapper.component.d.ts +1 -1
  44. package/dist/components/ui-menu/ui-menu.component.d.ts +1 -1
  45. package/dist/components/ui-menu/view-options/view-options.component.d.ts +1 -1
  46. package/dist/components/ui-menu/vr-toggle/vr-toggle.component.d.ts +1 -1
  47. package/dist/components/ui-menu/zoom-controls/zoom-controls.component.d.ts +1 -1
  48. package/dist/esm2020/components/embed-menu/embed-menu.component.mjs +11 -7
  49. package/dist/esm2020/components/embed-menu/experiment-link/experiment-link.component.mjs +11 -7
  50. package/dist/esm2020/components/file-explorer/file-explorer.component.mjs +59 -11
  51. package/dist/esm2020/components/loader/loader.component.mjs +53 -11
  52. package/dist/esm2020/components/nav/nav.component.mjs +11 -7
  53. package/dist/esm2020/components/phoenix-menu/config/config-slider/config-slider.component.mjs +42 -22
  54. package/dist/esm2020/components/phoenix-menu/phoenix-menu-item/phoenix-menu-item.component.mjs +286 -16
  55. package/dist/esm2020/components/phoenix-menu/phoenix-menu.component.mjs +16 -9
  56. package/dist/esm2020/components/phoenix-ui.module.mjs +80 -68
  57. package/dist/esm2020/components/ring-loader/ring-loader.component.mjs +11 -7
  58. package/dist/esm2020/components/ui-menu/animate-camera/animate-camera.component.mjs +34 -9
  59. package/dist/esm2020/components/ui-menu/animate-event/animate-event.component.mjs +13 -7
  60. package/dist/esm2020/components/ui-menu/ar-toggle/ar-toggle.component.mjs +41 -7
  61. package/dist/esm2020/components/ui-menu/auto-rotate/auto-rotate.component.mjs +13 -7
  62. package/dist/esm2020/components/ui-menu/collections-info/collections-info-overlay/collections-info-overlay.component.mjs +191 -11
  63. package/dist/esm2020/components/ui-menu/collections-info/collections-info.component.mjs +13 -7
  64. package/dist/esm2020/components/ui-menu/cycle-events/cycle-events.component.mjs +15 -9
  65. package/dist/esm2020/components/ui-menu/dark-theme/dark-theme.component.mjs +13 -7
  66. package/dist/esm2020/components/ui-menu/event-data-explorer/event-data-explorer-dialog/event-data-explorer-dialog.component.mjs +83 -13
  67. package/dist/esm2020/components/ui-menu/event-data-explorer/event-data-explorer.component.mjs +15 -9
  68. package/dist/esm2020/components/ui-menu/event-selector/event-selector.component.mjs +33 -7
  69. package/dist/esm2020/components/ui-menu/experiment-info/experiment-info.component.mjs +81 -13
  70. package/dist/esm2020/components/ui-menu/index.mjs +2 -1
  71. package/dist/esm2020/components/ui-menu/info-panel/info-panel-overlay/info-panel-overlay.component.mjs +38 -9
  72. package/dist/esm2020/components/ui-menu/info-panel/info-panel.component.mjs +13 -7
  73. package/dist/esm2020/components/ui-menu/io-options/io-options-dialog/io-options-dialog.component.mjs +122 -10
  74. package/dist/esm2020/components/ui-menu/io-options/io-options.component.mjs +15 -9
  75. package/dist/esm2020/components/ui-menu/main-view-toggle/main-view-toggle.component.mjs +13 -7
  76. package/dist/esm2020/components/ui-menu/make-picture/make-picture.component.mjs +88 -0
  77. package/dist/esm2020/components/ui-menu/menu-toggle/menu-toggle.component.mjs +29 -15
  78. package/dist/esm2020/components/ui-menu/object-clipping/object-clipping.component.mjs +42 -11
  79. package/dist/esm2020/components/ui-menu/object-selection/object-selection-overlay/object-selection-overlay.component.mjs +40 -9
  80. package/dist/esm2020/components/ui-menu/object-selection/object-selection.component.mjs +13 -7
  81. package/dist/esm2020/components/ui-menu/overlay/overlay.component.mjs +102 -23
  82. package/dist/esm2020/components/ui-menu/overlay-view/overlay-view-window/overlay-view-window.component.mjs +38 -12
  83. package/dist/esm2020/components/ui-menu/overlay-view/overlay-view.component.mjs +13 -7
  84. package/dist/esm2020/components/ui-menu/performance-toggle/performance-toggle.component.mjs +13 -7
  85. package/dist/esm2020/components/ui-menu/share-link/share-link-dialog/share-link-dialog.component.mjs +96 -11
  86. package/dist/esm2020/components/ui-menu/share-link/share-link.component.mjs +13 -7
  87. package/dist/esm2020/components/ui-menu/ss-mode/ss-mode.component.mjs +13 -7
  88. package/dist/esm2020/components/ui-menu/tree-menu/tree-menu-item/tree-menu-item.component.mjs +69 -12
  89. package/dist/esm2020/components/ui-menu/tree-menu/tree-menu.component.mjs +14 -7
  90. package/dist/esm2020/components/ui-menu/ui-menu-wrapper/ui-menu-wrapper.component.mjs +26 -7
  91. package/dist/esm2020/components/ui-menu/ui-menu.component.mjs +26 -13
  92. package/dist/esm2020/components/ui-menu/view-options/view-options.component.mjs +54 -7
  93. package/dist/esm2020/components/ui-menu/vr-toggle/vr-toggle.component.mjs +13 -7
  94. package/dist/esm2020/components/ui-menu/zoom-controls/zoom-controls.component.mjs +19 -7
  95. package/dist/esm2020/services/error-message-service.mjs +9 -9
  96. package/dist/esm2020/services/event-display.service.mjs +9 -9
  97. package/dist/esm2020/services/extras/attribute.pipe.mjs +9 -9
  98. package/dist/esm2020/services/extras/event-data-import.mjs +2 -1
  99. package/dist/esm2020/services/global-error-handler.mjs +6 -6
  100. package/dist/fesm2015/phoenix-ui-components.mjs +2325 -343
  101. package/dist/fesm2015/phoenix-ui-components.mjs.map +1 -1
  102. package/dist/fesm2020/phoenix-ui-components.mjs +2016 -468
  103. package/dist/fesm2020/phoenix-ui-components.mjs.map +1 -1
  104. package/dist/services/extras/event-data-import.d.ts +2 -1
  105. package/package.json +11 -7
@@ -4,6 +4,54 @@ import * as i1 from "../../../../services/event-display.service";
4
4
  import * as i2 from "@angular/common";
5
5
  import * as i3 from "@angular/material/button";
6
6
  import * as i4 from "@angular/material/icon";
7
+ function TreeMenuItemComponent_ng_container_0_button_2_Template(rf, ctx) { if (rf & 1) {
8
+ const _r4 = i0.ɵɵgetCurrentView();
9
+ i0.ɵɵelementStart(0, "button", 7);
10
+ i0.ɵɵlistener("click", function TreeMenuItemComponent_ng_container_0_button_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.isExpanded = !ctx_r3.isExpanded); });
11
+ i0.ɵɵelementStart(1, "mat-icon", 8);
12
+ i0.ɵɵtext(2);
13
+ i0.ɵɵelementEnd()();
14
+ } if (rf & 2) {
15
+ const ctx_r1 = i0.ɵɵnextContext(2);
16
+ i0.ɵɵadvance(2);
17
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.isExpanded ? "expand_more" : "chevron_right", " ");
18
+ } }
19
+ function TreeMenuItemComponent_ng_container_0_li_7_Template(rf, ctx) { if (rf & 1) {
20
+ i0.ɵɵelementStart(0, "li");
21
+ i0.ɵɵelement(1, "app-tree-menu-item", 9);
22
+ i0.ɵɵelementEnd();
23
+ } if (rf & 2) {
24
+ const node_r5 = ctx.$implicit;
25
+ i0.ɵɵadvance(1);
26
+ i0.ɵɵproperty("node", node_r5);
27
+ } }
28
+ const _c0 = function (a0) { return { visible: a0 }; };
29
+ function TreeMenuItemComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
30
+ const _r7 = i0.ɵɵgetCurrentView();
31
+ i0.ɵɵelementContainerStart(0);
32
+ i0.ɵɵelementStart(1, "div", 1);
33
+ i0.ɵɵtemplate(2, TreeMenuItemComponent_ng_container_0_button_2_Template, 3, 1, "button", 2);
34
+ i0.ɵɵelementStart(3, "div", 3);
35
+ i0.ɵɵlistener("click", function TreeMenuItemComponent_ng_container_0_Template_div_click_3_listener() { i0.ɵɵrestoreView(_r7); const ctx_r6 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r6.toggleVisibility(!ctx_r6.visible)); });
36
+ i0.ɵɵtext(4);
37
+ i0.ɵɵelementEnd()();
38
+ i0.ɵɵelementStart(5, "ul", 4)(6, "div", 5);
39
+ i0.ɵɵtemplate(7, TreeMenuItemComponent_ng_container_0_li_7_Template, 2, 1, "li", 6);
40
+ i0.ɵɵelementEnd()();
41
+ i0.ɵɵelementContainerEnd();
42
+ } if (rf & 2) {
43
+ const ctx_r0 = i0.ɵɵnextContext();
44
+ i0.ɵɵadvance(1);
45
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c0, ctx_r0.visible));
46
+ i0.ɵɵadvance(1);
47
+ i0.ɵɵproperty("ngIf", ctx_r0.node.children);
48
+ i0.ɵɵadvance(2);
49
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.node.name, " ");
50
+ i0.ɵɵadvance(1);
51
+ i0.ɵɵproperty("hidden", !ctx_r0.isExpanded);
52
+ i0.ɵɵadvance(2);
53
+ i0.ɵɵproperty("ngForOf", ctx_r0.node.children);
54
+ } }
7
55
  export class TreeMenuItemComponent {
8
56
  constructor(eventDisplay) {
9
57
  this.eventDisplay = eventDisplay;
@@ -19,15 +67,24 @@ export class TreeMenuItemComponent {
19
67
  this.children.forEach((child) => child.toggleVisibility(visible));
20
68
  }
21
69
  }
22
- TreeMenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: TreeMenuItemComponent, deps: [{ token: i1.EventDisplayService }], target: i0.ɵɵFactoryTarget.Component });
23
- TreeMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: TreeMenuItemComponent, selector: "app-tree-menu-item", inputs: { node: "node" }, viewQueries: [{ propertyName: "children", predicate: TreeMenuItemComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"node\">\n <div class=\"header\" [ngClass]=\"{ visible: visible }\">\n <button\n *ngIf=\"node.children\"\n mat-icon-button\n matTreeNodeToggle\n (click)=\"isExpanded = !isExpanded\"\n >\n <mat-icon class=\"mat-icon-rtl-mirror\">\n {{ isExpanded ? 'expand_more' : 'chevron_right' }}\n </mat-icon>\n </button>\n <div (click)=\"toggleVisibility(!visible)\" class=\"node-name\">\n {{ node.name }}\n </div>\n </div>\n <ul [hidden]=\"!isExpanded\" hid>\n <div class=\"children\">\n <li *ngFor=\"let node of node.children\">\n <app-tree-menu-item [node]=\"node\"></app-tree-menu-item>\n </li>\n </div>\n </ul>\n</ng-container>\n", styles: [".header{cursor:pointer;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;display:flex;flex-direction:row;align-items:center}.header .node-name,.header .mat-icon-rtl-mirror{color:var(--phoenix-text-color-secondary)}.header.visible .node-name,.header.visible .mat-icon-rtl-mirror{color:var(--phoenix-accent)}.children li{list-style-type:none}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: TreeMenuItemComponent, selector: "app-tree-menu-item", inputs: ["node"] }] });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: TreeMenuItemComponent, decorators: [{
25
- type: Component,
26
- args: [{ selector: 'app-tree-menu-item', template: "<ng-container *ngIf=\"node\">\n <div class=\"header\" [ngClass]=\"{ visible: visible }\">\n <button\n *ngIf=\"node.children\"\n mat-icon-button\n matTreeNodeToggle\n (click)=\"isExpanded = !isExpanded\"\n >\n <mat-icon class=\"mat-icon-rtl-mirror\">\n {{ isExpanded ? 'expand_more' : 'chevron_right' }}\n </mat-icon>\n </button>\n <div (click)=\"toggleVisibility(!visible)\" class=\"node-name\">\n {{ node.name }}\n </div>\n </div>\n <ul [hidden]=\"!isExpanded\" hid>\n <div class=\"children\">\n <li *ngFor=\"let node of node.children\">\n <app-tree-menu-item [node]=\"node\"></app-tree-menu-item>\n </li>\n </div>\n </ul>\n</ng-container>\n", styles: [".header{cursor:pointer;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;display:flex;flex-direction:row;align-items:center}.header .node-name,.header .mat-icon-rtl-mirror{color:var(--phoenix-text-color-secondary)}.header.visible .node-name,.header.visible .mat-icon-rtl-mirror{color:var(--phoenix-accent)}.children li{list-style-type:none}\n"] }]
27
- }], ctorParameters: function () { return [{ type: i1.EventDisplayService }]; }, propDecorators: { children: [{
28
- type: ViewChildren,
29
- args: [TreeMenuItemComponent]
30
- }], node: [{
31
- type: Input
32
- }] } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1tZW51LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvdWktbWVudS90cmVlLW1lbnUvdHJlZS1tZW51LWl0ZW0vdHJlZS1tZW51LWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvdWktbWVudS90cmVlLW1lbnUvdHJlZS1tZW51LWl0ZW0vdHJlZS1tZW51LWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFlL0QsTUFBTSxPQUFPLHFCQUFxQjtJQU9oQyxZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFIckQsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixZQUFPLEdBQUcsSUFBSSxDQUFDO0lBRXlDLENBQUM7SUFFbEQsZ0JBQWdCLENBQUMsT0FBZ0I7UUFDdEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsWUFBWTthQUNkLFlBQVksRUFBRTthQUNkLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDOztrSEFoQlUscUJBQXFCO3NHQUFyQixxQkFBcUIsaUhBQ2xCLHFCQUFxQixnRENoQnJDLHd0QkF3QkEsMnRDRFRhLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLG9CQUFvQjswR0FNOUIsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLHFCQUFxQjtnQkFFMUIsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZlbnREaXNwbGF5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2V2ZW50LWRpc3BsYXkuc2VydmljZSc7XG5cbmV4cG9ydCB0eXBlIFRyZWVNZW51Tm9kZSA9IHtcbiAgbmFtZTogc3RyaW5nO1xuICBnZW9tZXRyeUlkOiBzdHJpbmc7XG4gIGNoaWxkcmVuPzogVHJlZU1lbnVOb2RlW107XG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtdHJlZS1tZW51LWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vdHJlZS1tZW51LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90cmVlLW1lbnUtaXRlbS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUcmVlTWVudUl0ZW1Db21wb25lbnQge1xuICBAVmlld0NoaWxkcmVuKFRyZWVNZW51SXRlbUNvbXBvbmVudClcbiAgY2hpbGRyZW4hOiBRdWVyeUxpc3Q8VHJlZU1lbnVJdGVtQ29tcG9uZW50PjtcbiAgQElucHV0KCkgbm9kZTogVHJlZU1lbnVOb2RlO1xuICBpc0V4cGFuZGVkID0gZmFsc2U7XG4gIHZpc2libGUgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZXZlbnREaXNwbGF5OiBFdmVudERpc3BsYXlTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyB0b2dnbGVWaXNpYmlsaXR5KHZpc2libGU6IGJvb2xlYW4pIHtcbiAgICBjb25zb2xlLmxvZyhcImhpISBpdCdzIFwiICsgdGhpcy5ub2RlLm5hbWUpO1xuICAgIHRoaXMuZXZlbnREaXNwbGF5XG4gICAgICAuZ2V0VUlNYW5hZ2VyKClcbiAgICAgIC5nZW9tZXRyeVZpc2liaWxpdHkodGhpcy5ub2RlLmdlb21ldHJ5SWQsIHZpc2libGUpO1xuICAgIHRoaXMudmlzaWJsZSA9IHZpc2libGU7XG4gICAgdGhpcy5jaGlsZHJlbi5mb3JFYWNoKChjaGlsZCkgPT4gY2hpbGQudG9nZ2xlVmlzaWJpbGl0eSh2aXNpYmxlKSk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJub2RlXCI+XG4gIDxkaXYgY2xhc3M9XCJoZWFkZXJcIiBbbmdDbGFzc109XCJ7IHZpc2libGU6IHZpc2libGUgfVwiPlxuICAgIDxidXR0b25cbiAgICAgICpuZ0lmPVwibm9kZS5jaGlsZHJlblwiXG4gICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgIG1hdFRyZWVOb2RlVG9nZ2xlXG4gICAgICAoY2xpY2spPVwiaXNFeHBhbmRlZCA9ICFpc0V4cGFuZGVkXCJcbiAgICA+XG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+XG4gICAgICAgIHt7IGlzRXhwYW5kZWQgPyAnZXhwYW5kX21vcmUnIDogJ2NoZXZyb25fcmlnaHQnIH19XG4gICAgICA8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxkaXYgKGNsaWNrKT1cInRvZ2dsZVZpc2liaWxpdHkoIXZpc2libGUpXCIgY2xhc3M9XCJub2RlLW5hbWVcIj5cbiAgICAgIHt7IG5vZGUubmFtZSB9fVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPHVsIFtoaWRkZW5dPVwiIWlzRXhwYW5kZWRcIiBoaWQ+XG4gICAgPGRpdiBjbGFzcz1cImNoaWxkcmVuXCI+XG4gICAgICA8bGkgKm5nRm9yPVwibGV0IG5vZGUgb2Ygbm9kZS5jaGlsZHJlblwiPlxuICAgICAgICA8YXBwLXRyZWUtbWVudS1pdGVtIFtub2RlXT1cIm5vZGVcIj48L2FwcC10cmVlLW1lbnUtaXRlbT5cbiAgICAgIDwvbGk+XG4gICAgPC9kaXY+XG4gIDwvdWw+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
70
+ TreeMenuItemComponent.ɵfac = function TreeMenuItemComponent_Factory(t) { return new (t || TreeMenuItemComponent)(i0.ɵɵdirectiveInject(i1.EventDisplayService)); };
71
+ TreeMenuItemComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TreeMenuItemComponent, selectors: [["app-tree-menu-item"]], viewQuery: function TreeMenuItemComponent_Query(rf, ctx) { if (rf & 1) {
72
+ i0.ɵɵviewQuery(TreeMenuItemComponent, 5);
73
+ } if (rf & 2) {
74
+ let _t;
75
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.children = _t);
76
+ } }, inputs: { node: "node" }, decls: 1, vars: 1, consts: [[4, "ngIf"], [1, "header", 3, "ngClass"], ["mat-icon-button", "", "matTreeNodeToggle", "", 3, "click", 4, "ngIf"], [1, "node-name", 3, "click"], ["hid", "", 3, "hidden"], [1, "children"], [4, "ngFor", "ngForOf"], ["mat-icon-button", "", "matTreeNodeToggle", "", 3, "click"], [1, "mat-icon-rtl-mirror"], [3, "node"]], template: function TreeMenuItemComponent_Template(rf, ctx) { if (rf & 1) {
77
+ i0.ɵɵtemplate(0, TreeMenuItemComponent_ng_container_0_Template, 8, 7, "ng-container", 0);
78
+ } if (rf & 2) {
79
+ i0.ɵɵproperty("ngIf", ctx.node);
80
+ } }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i3.MatIconButton, i4.MatIcon, TreeMenuItemComponent], styles: [".header[_ngcontent-%COMP%]{cursor:pointer;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;display:flex;flex-direction:row;align-items:center}.header[_ngcontent-%COMP%] .node-name[_ngcontent-%COMP%], .header[_ngcontent-%COMP%] .mat-icon-rtl-mirror[_ngcontent-%COMP%]{color:var(--phoenix-text-color-secondary)}.header.visible[_ngcontent-%COMP%] .node-name[_ngcontent-%COMP%], .header.visible[_ngcontent-%COMP%] .mat-icon-rtl-mirror[_ngcontent-%COMP%]{color:var(--phoenix-accent)}.children[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{list-style-type:none}"] });
81
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TreeMenuItemComponent, [{
82
+ type: Component,
83
+ args: [{ selector: 'app-tree-menu-item', template: "<ng-container *ngIf=\"node\">\n <div class=\"header\" [ngClass]=\"{ visible: visible }\">\n <button\n *ngIf=\"node.children\"\n mat-icon-button\n matTreeNodeToggle\n (click)=\"isExpanded = !isExpanded\"\n >\n <mat-icon class=\"mat-icon-rtl-mirror\">\n {{ isExpanded ? 'expand_more' : 'chevron_right' }}\n </mat-icon>\n </button>\n <div (click)=\"toggleVisibility(!visible)\" class=\"node-name\">\n {{ node.name }}\n </div>\n </div>\n <ul [hidden]=\"!isExpanded\" hid>\n <div class=\"children\">\n <li *ngFor=\"let node of node.children\">\n <app-tree-menu-item [node]=\"node\"></app-tree-menu-item>\n </li>\n </div>\n </ul>\n</ng-container>\n", styles: [".header{cursor:pointer;user-select:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;display:flex;flex-direction:row;align-items:center}.header .node-name,.header .mat-icon-rtl-mirror{color:var(--phoenix-text-color-secondary)}.header.visible .node-name,.header.visible .mat-icon-rtl-mirror{color:var(--phoenix-accent)}.children li{list-style-type:none}\n"] }]
84
+ }], function () { return [{ type: i1.EventDisplayService }]; }, { children: [{
85
+ type: ViewChildren,
86
+ args: [TreeMenuItemComponent]
87
+ }], node: [{
88
+ type: Input
89
+ }] }); })();
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1tZW51LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvdWktbWVudS90cmVlLW1lbnUvdHJlZS1tZW51LWl0ZW0vdHJlZS1tZW51LWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvdWktbWVudS90cmVlLW1lbnUvdHJlZS1tZW51LWl0ZW0vdHJlZS1tZW51LWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztJQ0UzRCxpQ0FLQztJQURDLCtPQUFrQztJQUVsQyxtQ0FBc0M7SUFDcEMsWUFDRjtJQUFBLGlCQUFXLEVBQUE7OztJQURULGVBQ0Y7SUFERSxvRkFDRjs7O0lBUUEsMEJBQXVDO0lBQ3JDLHdDQUF1RDtJQUN6RCxpQkFBSzs7O0lBRGlCLGVBQWE7SUFBYiw4QkFBYTs7Ozs7SUFuQnpDLDZCQUEyQjtJQUN6Qiw4QkFBcUQ7SUFDbkQsMkZBU1M7SUFDVCw4QkFBNEQ7SUFBdkQsd0tBQVMsZUFBQSx3Q0FBMEIsQ0FBQSxJQUFDO0lBQ3ZDLFlBQ0Y7SUFBQSxpQkFBTSxFQUFBO0lBRVIsNkJBQStCLGFBQUE7SUFFM0IsbUZBRUs7SUFDUCxpQkFBTSxFQUFBO0lBRVYsMEJBQWU7OztJQXRCTyxlQUFnQztJQUFoQyxvRUFBZ0M7SUFFL0MsZUFBbUI7SUFBbkIsMkNBQW1CO0lBVXBCLGVBQ0Y7SUFERSxpREFDRjtJQUVFLGVBQXNCO0lBQXRCLDJDQUFzQjtJQUVELGVBQWdCO0lBQWhCLDhDQUFnQjs7QURIM0MsTUFBTSxPQUFPLHFCQUFxQjtJQU9oQyxZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFIckQsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixZQUFPLEdBQUcsSUFBSSxDQUFDO0lBRXlDLENBQUM7SUFFbEQsZ0JBQWdCLENBQUMsT0FBZ0I7UUFDdEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsWUFBWTthQUNkLFlBQVksRUFBRTthQUNkLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDOzswRkFoQlUscUJBQXFCO3dFQUFyQixxQkFBcUI7dUJBQ2xCLHFCQUFxQjs7Ozs7UUNoQnJDLHdGQXVCZTs7UUF2QkEsK0JBQVU7dUZEZVoscUJBQXFCO3VGQUFyQixxQkFBcUI7Y0FMakMsU0FBUzsyQkFDRSxvQkFBb0I7c0VBTTlCLFFBQVE7a0JBRFAsWUFBWTttQkFBQyxxQkFBcUI7WUFFMUIsSUFBSTtrQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZlbnREaXNwbGF5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2V2ZW50LWRpc3BsYXkuc2VydmljZSc7XG5cbmV4cG9ydCB0eXBlIFRyZWVNZW51Tm9kZSA9IHtcbiAgbmFtZTogc3RyaW5nO1xuICBnZW9tZXRyeUlkOiBzdHJpbmc7XG4gIGNoaWxkcmVuPzogVHJlZU1lbnVOb2RlW107XG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtdHJlZS1tZW51LWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vdHJlZS1tZW51LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90cmVlLW1lbnUtaXRlbS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUcmVlTWVudUl0ZW1Db21wb25lbnQge1xuICBAVmlld0NoaWxkcmVuKFRyZWVNZW51SXRlbUNvbXBvbmVudClcbiAgY2hpbGRyZW4hOiBRdWVyeUxpc3Q8VHJlZU1lbnVJdGVtQ29tcG9uZW50PjtcbiAgQElucHV0KCkgbm9kZTogVHJlZU1lbnVOb2RlO1xuICBpc0V4cGFuZGVkID0gZmFsc2U7XG4gIHZpc2libGUgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZXZlbnREaXNwbGF5OiBFdmVudERpc3BsYXlTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyB0b2dnbGVWaXNpYmlsaXR5KHZpc2libGU6IGJvb2xlYW4pIHtcbiAgICBjb25zb2xlLmxvZyhcImhpISBpdCdzIFwiICsgdGhpcy5ub2RlLm5hbWUpO1xuICAgIHRoaXMuZXZlbnREaXNwbGF5XG4gICAgICAuZ2V0VUlNYW5hZ2VyKClcbiAgICAgIC5nZW9tZXRyeVZpc2liaWxpdHkodGhpcy5ub2RlLmdlb21ldHJ5SWQsIHZpc2libGUpO1xuICAgIHRoaXMudmlzaWJsZSA9IHZpc2libGU7XG4gICAgdGhpcy5jaGlsZHJlbi5mb3JFYWNoKChjaGlsZCkgPT4gY2hpbGQudG9nZ2xlVmlzaWJpbGl0eSh2aXNpYmxlKSk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJub2RlXCI+XG4gIDxkaXYgY2xhc3M9XCJoZWFkZXJcIiBbbmdDbGFzc109XCJ7IHZpc2libGU6IHZpc2libGUgfVwiPlxuICAgIDxidXR0b25cbiAgICAgICpuZ0lmPVwibm9kZS5jaGlsZHJlblwiXG4gICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgIG1hdFRyZWVOb2RlVG9nZ2xlXG4gICAgICAoY2xpY2spPVwiaXNFeHBhbmRlZCA9ICFpc0V4cGFuZGVkXCJcbiAgICA+XG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+XG4gICAgICAgIHt7IGlzRXhwYW5kZWQgPyAnZXhwYW5kX21vcmUnIDogJ2NoZXZyb25fcmlnaHQnIH19XG4gICAgICA8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxkaXYgKGNsaWNrKT1cInRvZ2dsZVZpc2liaWxpdHkoIXZpc2libGUpXCIgY2xhc3M9XCJub2RlLW5hbWVcIj5cbiAgICAgIHt7IG5vZGUubmFtZSB9fVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPHVsIFtoaWRkZW5dPVwiIWlzRXhwYW5kZWRcIiBoaWQ+XG4gICAgPGRpdiBjbGFzcz1cImNoaWxkcmVuXCI+XG4gICAgICA8bGkgKm5nRm9yPVwibGV0IG5vZGUgb2Ygbm9kZS5jaGlsZHJlblwiPlxuICAgICAgICA8YXBwLXRyZWUtbWVudS1pdGVtIFtub2RlXT1cIm5vZGVcIj48L2FwcC10cmVlLW1lbnUtaXRlbT5cbiAgICAgIDwvbGk+XG4gICAgPC9kaXY+XG4gIDwvdWw+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -62,10 +62,17 @@ export class TreeMenuComponent {
62
62
  }
63
63
  ngOnInit() { }
64
64
  }
65
- TreeMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: TreeMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
66
- TreeMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: TreeMenuComponent, selector: "app-tree-menu", ngImport: i0, template: "<div class=\"tree-wrapper\">\n <div class=\"tree-menu\">\n <app-tree-menu-item [node]=\"rootNode\"></app-tree-menu-item>\n </div>\n</div>\n", styles: [".tree-wrapper{position:absolute;top:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;align-items:center;align-content:center}.tree-menu{display:flex;flex-direction:column;justify-content:center;align-items:center;align-content:center;max-height:70vh;overflow-y:scroll}.example-tree-invisible{display:none}.example-tree ul,.example-tree li{margin-top:0;margin-bottom:0;list-style-type:none}\n"], dependencies: [{ kind: "component", type: i1.TreeMenuItemComponent, selector: "app-tree-menu-item", inputs: ["node"] }] });
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: TreeMenuComponent, decorators: [{
68
- type: Component,
69
- args: [{ selector: 'app-tree-menu', template: "<div class=\"tree-wrapper\">\n <div class=\"tree-menu\">\n <app-tree-menu-item [node]=\"rootNode\"></app-tree-menu-item>\n </div>\n</div>\n", styles: [".tree-wrapper{position:absolute;top:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;align-items:center;align-content:center}.tree-menu{display:flex;flex-direction:column;justify-content:center;align-items:center;align-content:center;max-height:70vh;overflow-y:scroll}.example-tree-invisible{display:none}.example-tree ul,.example-tree li{margin-top:0;margin-bottom:0;list-style-type:none}\n"] }]
70
- }], ctorParameters: function () { return []; } });
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvdHJlZS1tZW51L3RyZWUtbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3RyZWUtbWVudS90cmVlLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7O0FBUWxELE1BQU0sT0FBTyxpQkFBaUI7SUEwRDVCO1FBekRBLGFBQVEsR0FBaUI7WUFDdkIsSUFBSSxFQUFFLGdCQUFnQjtZQUN0QixVQUFVLEVBQUUsZUFBZTtZQUMzQixRQUFRLEVBQUU7Z0JBQ1I7b0JBQ0UsSUFBSSxFQUFFLGdCQUFnQjtvQkFDdEIsVUFBVSxFQUFFLFdBQVc7b0JBQ3ZCLFFBQVEsRUFBRTt3QkFDUjs0QkFDRSxJQUFJLEVBQUUsU0FBUzs0QkFDZixVQUFVLEVBQUUsU0FBUzt5QkFDdEI7cUJBQ0Y7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLGNBQWM7b0JBQ3BCLFVBQVUsRUFBRSxTQUFTO29CQUNyQixRQUFRLEVBQUU7d0JBQ1I7NEJBQ0UsSUFBSSxFQUFFLFlBQVk7NEJBQ2xCLFVBQVUsRUFBRSxZQUFZO3lCQUN6Qjt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsU0FBUzs0QkFDZixVQUFVLEVBQUUsU0FBUzt5QkFDdEI7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLFNBQVM7NEJBQ2YsVUFBVSxFQUFFLFNBQVM7eUJBQ3RCO3dCQUNEOzRCQUNFLElBQUksRUFBRSxVQUFVOzRCQUNoQixVQUFVLEVBQUUsVUFBVTt5QkFDdkI7cUJBQ0Y7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLGdCQUFnQjtvQkFDdEIsVUFBVSxFQUFFLFVBQVU7b0JBQ3RCLFFBQVEsRUFBRTt3QkFDUjs0QkFDRSxJQUFJLEVBQUUsT0FBTzs0QkFDYixVQUFVLEVBQUUsT0FBTzt5QkFDcEI7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLEtBQUs7NEJBQ1gsVUFBVSxFQUFFLEtBQUs7eUJBQ2xCO3dCQUNEOzRCQUNFLElBQUksRUFBRSxLQUFLOzRCQUNYLFVBQVUsRUFBRSxLQUFLO3lCQUNsQjtxQkFDRjtpQkFDRjthQUNGO1NBQ0YsQ0FBQztJQUVhLENBQUM7SUFFaEIsUUFBUSxLQUFVLENBQUM7OzhHQTVEUixpQkFBaUI7a0dBQWpCLGlCQUFpQixxRENSOUIsa0pBS0E7MkZER2EsaUJBQWlCO2tCQUw3QixTQUFTOytCQUNFLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJlZU1lbnVOb2RlIH0gZnJvbSAnLi90cmVlLW1lbnUtaXRlbS90cmVlLW1lbnUtaXRlbS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtdHJlZS1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtbWVudS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RyZWUtbWVudS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUcmVlTWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHJvb3ROb2RlOiBUcmVlTWVudU5vZGUgPSB7XG4gICAgbmFtZTogJ0F0bGFzIERldGVjdG9yJyxcbiAgICBnZW9tZXRyeUlkOiAnQXRsYXNEZXRlY3RvcicsXG4gICAgY2hpbGRyZW46IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ01hZ25ldCBzeXN0ZW1zJyxcbiAgICAgICAgZ2VvbWV0cnlJZDogJ01hZ25ldFN5cycsXG4gICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ1Rvcm9pZHMnLFxuICAgICAgICAgICAgZ2VvbWV0cnlJZDogJ1Rvcm9pZHMnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnQ2Fsb3JpbWV0ZXJzJyxcbiAgICAgICAgZ2VvbWV0cnlJZDogJ0NhbG9TeXMnLFxuICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdMQXIgQmFycmVsJyxcbiAgICAgICAgICAgIGdlb21ldHJ5SWQ6ICdMQXIgQmFycmVsJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdMQXIgRUMxJyxcbiAgICAgICAgICAgIGdlb21ldHJ5SWQ6ICdMQXIgRUMxJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdMQXIgRUMyJyxcbiAgICAgICAgICAgIGdlb21ldHJ5SWQ6ICdMQXIgRUMyJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdUaWxlIENhbCcsXG4gICAgICAgICAgICBnZW9tZXRyeUlkOiAnVGlsZSBDYWwnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnSW5uZXIgZGV0ZWN0b3InLFxuICAgICAgICBnZW9tZXRyeUlkOiAnSW5EZXRTeXMnLFxuICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdQaXhlbCcsXG4gICAgICAgICAgICBnZW9tZXRyeUlkOiAnUGl4ZWwnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ1NDVCcsXG4gICAgICAgICAgICBnZW9tZXRyeUlkOiAnU0NUJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdUUlQnLFxuICAgICAgICAgICAgZ2VvbWV0cnlJZDogJ1RSVCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxufVxuIiwiPGRpdiBjbGFzcz1cInRyZWUtd3JhcHBlclwiPlxuICA8ZGl2IGNsYXNzPVwidHJlZS1tZW51XCI+XG4gICAgPGFwcC10cmVlLW1lbnUtaXRlbSBbbm9kZV09XCJyb290Tm9kZVwiPjwvYXBwLXRyZWUtbWVudS1pdGVtPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
65
+ TreeMenuComponent.ɵfac = function TreeMenuComponent_Factory(t) { return new (t || TreeMenuComponent)(); };
66
+ TreeMenuComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TreeMenuComponent, selectors: [["app-tree-menu"]], decls: 3, vars: 1, consts: [[1, "tree-wrapper"], [1, "tree-menu"], [3, "node"]], template: function TreeMenuComponent_Template(rf, ctx) { if (rf & 1) {
67
+ i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
68
+ i0.ɵɵelement(2, "app-tree-menu-item", 2);
69
+ i0.ɵɵelementEnd()();
70
+ } if (rf & 2) {
71
+ i0.ɵɵadvance(2);
72
+ i0.ɵɵproperty("node", ctx.rootNode);
73
+ } }, dependencies: [i1.TreeMenuItemComponent], styles: [".tree-wrapper[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;align-items:center;align-content:center}.tree-menu[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;align-items:center;align-content:center;max-height:70vh;overflow-y:scroll}.example-tree-invisible[_ngcontent-%COMP%]{display:none}.example-tree[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .example-tree[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{margin-top:0;margin-bottom:0;list-style-type:none}"] });
74
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TreeMenuComponent, [{
75
+ type: Component,
76
+ args: [{ selector: 'app-tree-menu', template: "<div class=\"tree-wrapper\">\n <div class=\"tree-menu\">\n <app-tree-menu-item [node]=\"rootNode\"></app-tree-menu-item>\n </div>\n</div>\n", styles: [".tree-wrapper{position:absolute;top:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;align-items:center;align-content:center}.tree-menu{display:flex;flex-direction:column;justify-content:center;align-items:center;align-content:center;max-height:70vh;overflow-y:scroll}.example-tree-invisible{display:none}.example-tree ul,.example-tree li{margin-top:0;margin-bottom:0;list-style-type:none}\n"] }]
77
+ }], function () { return []; }, null); })();
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvdHJlZS1tZW51L3RyZWUtbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3RyZWUtbWVudS90cmVlLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7O0FBUWxELE1BQU0sT0FBTyxpQkFBaUI7SUEwRDVCO1FBekRBLGFBQVEsR0FBaUI7WUFDdkIsSUFBSSxFQUFFLGdCQUFnQjtZQUN0QixVQUFVLEVBQUUsZUFBZTtZQUMzQixRQUFRLEVBQUU7Z0JBQ1I7b0JBQ0UsSUFBSSxFQUFFLGdCQUFnQjtvQkFDdEIsVUFBVSxFQUFFLFdBQVc7b0JBQ3ZCLFFBQVEsRUFBRTt3QkFDUjs0QkFDRSxJQUFJLEVBQUUsU0FBUzs0QkFDZixVQUFVLEVBQUUsU0FBUzt5QkFDdEI7cUJBQ0Y7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLGNBQWM7b0JBQ3BCLFVBQVUsRUFBRSxTQUFTO29CQUNyQixRQUFRLEVBQUU7d0JBQ1I7NEJBQ0UsSUFBSSxFQUFFLFlBQVk7NEJBQ2xCLFVBQVUsRUFBRSxZQUFZO3lCQUN6Qjt3QkFDRDs0QkFDRSxJQUFJLEVBQUUsU0FBUzs0QkFDZixVQUFVLEVBQUUsU0FBUzt5QkFDdEI7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLFNBQVM7NEJBQ2YsVUFBVSxFQUFFLFNBQVM7eUJBQ3RCO3dCQUNEOzRCQUNFLElBQUksRUFBRSxVQUFVOzRCQUNoQixVQUFVLEVBQUUsVUFBVTt5QkFDdkI7cUJBQ0Y7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLGdCQUFnQjtvQkFDdEIsVUFBVSxFQUFFLFVBQVU7b0JBQ3RCLFFBQVEsRUFBRTt3QkFDUjs0QkFDRSxJQUFJLEVBQUUsT0FBTzs0QkFDYixVQUFVLEVBQUUsT0FBTzt5QkFDcEI7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLEtBQUs7NEJBQ1gsVUFBVSxFQUFFLEtBQUs7eUJBQ2xCO3dCQUNEOzRCQUNFLElBQUksRUFBRSxLQUFLOzRCQUNYLFVBQVUsRUFBRSxLQUFLO3lCQUNsQjtxQkFDRjtpQkFDRjthQUNGO1NBQ0YsQ0FBQztJQUVhLENBQUM7SUFFaEIsUUFBUSxLQUFVLENBQUM7O2tGQTVEUixpQkFBaUI7b0VBQWpCLGlCQUFpQjtRQ1I5Qiw4QkFBMEIsYUFBQTtRQUV0Qix3Q0FBMkQ7UUFDN0QsaUJBQU0sRUFBQTs7UUFEZ0IsZUFBaUI7UUFBakIsbUNBQWlCOzt1RkRNNUIsaUJBQWlCO2NBTDdCLFNBQVM7MkJBQ0UsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmVlTWVudU5vZGUgfSBmcm9tICcuL3RyZWUtbWVudS1pdGVtL3RyZWUtbWVudS1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC10cmVlLW1lbnUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdHJlZS1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdHJlZS1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVNZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcm9vdE5vZGU6IFRyZWVNZW51Tm9kZSA9IHtcbiAgICBuYW1lOiAnQXRsYXMgRGV0ZWN0b3InLFxuICAgIGdlb21ldHJ5SWQ6ICdBdGxhc0RldGVjdG9yJyxcbiAgICBjaGlsZHJlbjogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnTWFnbmV0IHN5c3RlbXMnLFxuICAgICAgICBnZW9tZXRyeUlkOiAnTWFnbmV0U3lzJyxcbiAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnVG9yb2lkcycsXG4gICAgICAgICAgICBnZW9tZXRyeUlkOiAnVG9yb2lkcycsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdDYWxvcmltZXRlcnMnLFxuICAgICAgICBnZW9tZXRyeUlkOiAnQ2Fsb1N5cycsXG4gICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0xBciBCYXJyZWwnLFxuICAgICAgICAgICAgZ2VvbWV0cnlJZDogJ0xBciBCYXJyZWwnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0xBciBFQzEnLFxuICAgICAgICAgICAgZ2VvbWV0cnlJZDogJ0xBciBFQzEnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0xBciBFQzInLFxuICAgICAgICAgICAgZ2VvbWV0cnlJZDogJ0xBciBFQzInLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ1RpbGUgQ2FsJyxcbiAgICAgICAgICAgIGdlb21ldHJ5SWQ6ICdUaWxlIENhbCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdJbm5lciBkZXRlY3RvcicsXG4gICAgICAgIGdlb21ldHJ5SWQ6ICdJbkRldFN5cycsXG4gICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ1BpeGVsJyxcbiAgICAgICAgICAgIGdlb21ldHJ5SWQ6ICdQaXhlbCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnU0NUJyxcbiAgICAgICAgICAgIGdlb21ldHJ5SWQ6ICdTQ1QnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ1RSVCcsXG4gICAgICAgICAgICBnZW9tZXRyeUlkOiAnVFJUJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICBdLFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG59XG4iLCI8ZGl2IGNsYXNzPVwidHJlZS13cmFwcGVyXCI+XG4gIDxkaXYgY2xhc3M9XCJ0cmVlLW1lbnVcIj5cbiAgICA8YXBwLXRyZWUtbWVudS1pdGVtIFtub2RlXT1cInJvb3ROb2RlXCI+PC9hcHAtdHJlZS1tZW51LWl0ZW0+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -2,15 +2,34 @@ import { Component } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
4
  import * as i2 from "@angular/material/tooltip";
5
+ const _c0 = function (a0) { return { "ui-menu-hidden": a0 }; };
6
+ const _c1 = ["*"];
5
7
  export class UiMenuWrapperComponent {
6
8
  constructor() {
7
9
  this.hideUIMenu = false;
8
10
  }
9
11
  }
10
- UiMenuWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: UiMenuWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
- UiMenuWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: UiMenuWrapperComponent, selector: "app-ui-menu-wrapper", ngImport: i0, template: "<div id=\"uiMenu\">\n <button\n id=\"hideUIMenu\"\n [matTooltip]=\"hideUIMenu ? 'Show toolbar' : 'Hide toolbar'\"\n matTooltipPosition=\"above\"\n (click)=\"hideUIMenu = !hideUIMenu\"\n [ngClass]=\"{ 'ui-menu-hidden': hideUIMenu }\"\n >\n <svg>\n <use href=\"assets/icons/expand.svg#expand\"></use>\n </svg>\n </button>\n <div id=\"optionsPanel\" [hidden]=\"hideUIMenu\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["#uiMenu{position:absolute;bottom:1rem;width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center}#optionsPanel{display:flex;align-items:center;background:var(--phoenix-background-color-secondary);border:1px solid var(--phoenix-background-color-tertiary);box-shadow:var(--phoenix-box-shadow);border-radius:30px;max-width:95%;padding:.3rem 1rem;overflow-x:scroll;z-index:90}#hideUIMenu{background:var(--phoenix-background-color-secondary);height:1.2rem;width:3rem;border:1px solid var(--phoenix-border);border-bottom:none;box-shadow:var(--phoenix-box-shadow);border-top-left-radius:15px;border-top-right-radius:15px;padding:3px}#hideUIMenu svg{height:100%;width:100%;vertical-align:top;transition:all .3s}#hideUIMenu.ui-menu-hidden svg{transform:scaleY(-1);transition:all .3s}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: UiMenuWrapperComponent, decorators: [{
13
- type: Component,
14
- args: [{ selector: 'app-ui-menu-wrapper', template: "<div id=\"uiMenu\">\n <button\n id=\"hideUIMenu\"\n [matTooltip]=\"hideUIMenu ? 'Show toolbar' : 'Hide toolbar'\"\n matTooltipPosition=\"above\"\n (click)=\"hideUIMenu = !hideUIMenu\"\n [ngClass]=\"{ 'ui-menu-hidden': hideUIMenu }\"\n >\n <svg>\n <use href=\"assets/icons/expand.svg#expand\"></use>\n </svg>\n </button>\n <div id=\"optionsPanel\" [hidden]=\"hideUIMenu\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["#uiMenu{position:absolute;bottom:1rem;width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center}#optionsPanel{display:flex;align-items:center;background:var(--phoenix-background-color-secondary);border:1px solid var(--phoenix-background-color-tertiary);box-shadow:var(--phoenix-box-shadow);border-radius:30px;max-width:95%;padding:.3rem 1rem;overflow-x:scroll;z-index:90}#hideUIMenu{background:var(--phoenix-background-color-secondary);height:1.2rem;width:3rem;border:1px solid var(--phoenix-border);border-bottom:none;box-shadow:var(--phoenix-box-shadow);border-top-left-radius:15px;border-top-right-radius:15px;padding:3px}#hideUIMenu svg{height:100%;width:100%;vertical-align:top;transition:all .3s}#hideUIMenu.ui-menu-hidden svg{transform:scaleY(-1);transition:all .3s}\n"] }]
15
- }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbWVudS13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvdWktbWVudS13cmFwcGVyL3VpLW1lbnUtd3JhcHBlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3VpLW1lbnUtd3JhcHBlci91aS1tZW51LXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQU8xQyxNQUFNLE9BQU8sc0JBQXNCO0lBTG5DO1FBTUUsZUFBVSxHQUFZLEtBQUssQ0FBQztLQUM3Qjs7bUhBRlksc0JBQXNCO3VHQUF0QixzQkFBc0IsMkRDUG5DLHNjQWdCQTsyRkRUYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC11aS1tZW51LXdyYXBwZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdWktbWVudS13cmFwcGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdWktbWVudS13cmFwcGVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFVpTWVudVdyYXBwZXJDb21wb25lbnQge1xuICBoaWRlVUlNZW51OiBib29sZWFuID0gZmFsc2U7XG59XG4iLCI8ZGl2IGlkPVwidWlNZW51XCI+XG4gIDxidXR0b25cbiAgICBpZD1cImhpZGVVSU1lbnVcIlxuICAgIFttYXRUb29sdGlwXT1cImhpZGVVSU1lbnUgPyAnU2hvdyB0b29sYmFyJyA6ICdIaWRlIHRvb2xiYXInXCJcbiAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXG4gICAgKGNsaWNrKT1cImhpZGVVSU1lbnUgPSAhaGlkZVVJTWVudVwiXG4gICAgW25nQ2xhc3NdPVwieyAndWktbWVudS1oaWRkZW4nOiBoaWRlVUlNZW51IH1cIlxuICA+XG4gICAgPHN2Zz5cbiAgICAgIDx1c2UgaHJlZj1cImFzc2V0cy9pY29ucy9leHBhbmQuc3ZnI2V4cGFuZFwiPjwvdXNlPlxuICAgIDwvc3ZnPlxuICA8L2J1dHRvbj5cbiAgPGRpdiBpZD1cIm9wdGlvbnNQYW5lbFwiIFtoaWRkZW5dPVwiaGlkZVVJTWVudVwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
12
+ UiMenuWrapperComponent.ɵfac = function UiMenuWrapperComponent_Factory(t) { return new (t || UiMenuWrapperComponent)(); };
13
+ UiMenuWrapperComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UiMenuWrapperComponent, selectors: [["app-ui-menu-wrapper"]], ngContentSelectors: _c1, decls: 6, vars: 5, consts: [["id", "uiMenu"], ["id", "hideUIMenu", "matTooltipPosition", "above", 3, "matTooltip", "ngClass", "click"], ["href", "assets/icons/expand.svg#expand"], ["id", "optionsPanel", 3, "hidden"]], template: function UiMenuWrapperComponent_Template(rf, ctx) { if (rf & 1) {
14
+ i0.ɵɵprojectionDef();
15
+ i0.ɵɵelementStart(0, "div", 0)(1, "button", 1);
16
+ i0.ɵɵlistener("click", function UiMenuWrapperComponent_Template_button_click_1_listener() { return ctx.hideUIMenu = !ctx.hideUIMenu; });
17
+ i0.ɵɵnamespaceSVG();
18
+ i0.ɵɵelementStart(2, "svg");
19
+ i0.ɵɵelement(3, "use", 2);
20
+ i0.ɵɵelementEnd()();
21
+ i0.ɵɵnamespaceHTML();
22
+ i0.ɵɵelementStart(4, "div", 3);
23
+ i0.ɵɵprojection(5);
24
+ i0.ɵɵelementEnd()();
25
+ } if (rf & 2) {
26
+ i0.ɵɵadvance(1);
27
+ i0.ɵɵproperty("matTooltip", ctx.hideUIMenu ? "Show toolbar" : "Hide toolbar")("ngClass", i0.ɵɵpureFunction1(3, _c0, ctx.hideUIMenu));
28
+ i0.ɵɵadvance(3);
29
+ i0.ɵɵproperty("hidden", ctx.hideUIMenu);
30
+ } }, dependencies: [i1.NgClass, i2.MatTooltip], styles: ["#uiMenu[_ngcontent-%COMP%]{position:absolute;bottom:1rem;width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center}#optionsPanel[_ngcontent-%COMP%]{display:flex;align-items:center;background:var(--phoenix-background-color-secondary);border:1px solid var(--phoenix-background-color-tertiary);box-shadow:var(--phoenix-box-shadow);border-radius:30px;max-width:95%;padding:.3rem 1rem;overflow-x:scroll;z-index:90}#hideUIMenu[_ngcontent-%COMP%]{background:var(--phoenix-background-color-secondary);height:1.2rem;width:3rem;border:1px solid var(--phoenix-border);border-bottom:none;box-shadow:var(--phoenix-box-shadow);border-top-left-radius:15px;border-top-right-radius:15px;padding:3px}#hideUIMenu[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{height:100%;width:100%;vertical-align:top;transition:all .3s}#hideUIMenu.ui-menu-hidden[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{transform:scaleY(-1);transition:all .3s}"] });
31
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UiMenuWrapperComponent, [{
32
+ type: Component,
33
+ args: [{ selector: 'app-ui-menu-wrapper', template: "<div id=\"uiMenu\">\n <button\n id=\"hideUIMenu\"\n [matTooltip]=\"hideUIMenu ? 'Show toolbar' : 'Hide toolbar'\"\n matTooltipPosition=\"above\"\n (click)=\"hideUIMenu = !hideUIMenu\"\n [ngClass]=\"{ 'ui-menu-hidden': hideUIMenu }\"\n >\n <svg>\n <use href=\"assets/icons/expand.svg#expand\"></use>\n </svg>\n </button>\n <div id=\"optionsPanel\" [hidden]=\"hideUIMenu\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["#uiMenu{position:absolute;bottom:1rem;width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center}#optionsPanel{display:flex;align-items:center;background:var(--phoenix-background-color-secondary);border:1px solid var(--phoenix-background-color-tertiary);box-shadow:var(--phoenix-box-shadow);border-radius:30px;max-width:95%;padding:.3rem 1rem;overflow-x:scroll;z-index:90}#hideUIMenu{background:var(--phoenix-background-color-secondary);height:1.2rem;width:3rem;border:1px solid var(--phoenix-border);border-bottom:none;box-shadow:var(--phoenix-box-shadow);border-top-left-radius:15px;border-top-right-radius:15px;padding:3px}#hideUIMenu svg{height:100%;width:100%;vertical-align:top;transition:all .3s}#hideUIMenu.ui-menu-hidden svg{transform:scaleY(-1);transition:all .3s}\n"] }]
34
+ }], null, null); })();
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbWVudS13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvdWktbWVudS13cmFwcGVyL3VpLW1lbnUtd3JhcHBlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3VpLW1lbnUtd3JhcHBlci91aS1tZW51LXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBTzFDLE1BQU0sT0FBTyxzQkFBc0I7SUFMbkM7UUFNRSxlQUFVLEdBQVksS0FBSyxDQUFDO0tBQzdCOzs0RkFGWSxzQkFBc0I7eUVBQXRCLHNCQUFzQjs7UUNQbkMsOEJBQWlCLGdCQUFBO1FBS2IsdUlBQWtDO1FBR2xDLG1CQUFLO1FBQUwsMkJBQUs7UUFDSCx5QkFBaUQ7UUFDbkQsaUJBQU0sRUFBQTtRQUVSLG9CQUE2QztRQUE3Qyw4QkFBNkM7UUFDM0Msa0JBQXlCO1FBQzNCLGlCQUFNLEVBQUE7O1FBWEosZUFBMkQ7UUFBM0QsNkVBQTJELHVEQUFBO1FBU3RDLGVBQXFCO1FBQXJCLHVDQUFxQjs7dUZETGpDLHNCQUFzQjtjQUxsQyxTQUFTOzJCQUNFLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtdWktbWVudS13cmFwcGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VpLW1lbnUtd3JhcHBlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3VpLW1lbnUtd3JhcHBlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBVaU1lbnVXcmFwcGVyQ29tcG9uZW50IHtcbiAgaGlkZVVJTWVudTogYm9vbGVhbiA9IGZhbHNlO1xufVxuIiwiPGRpdiBpZD1cInVpTWVudVwiPlxuICA8YnV0dG9uXG4gICAgaWQ9XCJoaWRlVUlNZW51XCJcbiAgICBbbWF0VG9vbHRpcF09XCJoaWRlVUlNZW51ID8gJ1Nob3cgdG9vbGJhcicgOiAnSGlkZSB0b29sYmFyJ1wiXG4gICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIlxuICAgIChjbGljayk9XCJoaWRlVUlNZW51ID0gIWhpZGVVSU1lbnVcIlxuICAgIFtuZ0NsYXNzXT1cInsgJ3VpLW1lbnUtaGlkZGVuJzogaGlkZVVJTWVudSB9XCJcbiAgPlxuICAgIDxzdmc+XG4gICAgICA8dXNlIGhyZWY9XCJhc3NldHMvaWNvbnMvZXhwYW5kLnN2ZyNleHBhbmRcIj48L3VzZT5cbiAgICA8L3N2Zz5cbiAgPC9idXR0b24+XG4gIDxkaXYgaWQ9XCJvcHRpb25zUGFuZWxcIiBbaGlkZGVuXT1cImhpZGVVSU1lbnVcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -20,22 +20,35 @@ import * as i15 from "./animate-event/animate-event.component";
20
20
  import * as i16 from "./vr-toggle/vr-toggle.component";
21
21
  import * as i17 from "./ar-toggle/ar-toggle.component";
22
22
  import * as i18 from "./ss-mode/ss-mode.component";
23
- import * as i19 from "./performance-toggle/performance-toggle.component";
24
- import * as i20 from "./share-link/share-link.component";
23
+ import * as i19 from "./make-picture/make-picture.component";
24
+ import * as i20 from "./performance-toggle/performance-toggle.component";
25
+ import * as i21 from "./share-link/share-link.component";
26
+ const _c0 = ["*"];
25
27
  export class UiMenuComponent {
26
28
  constructor() {
27
29
  this.eventDataImportOptions = Object.values(EventDataFormat);
28
30
  this.animationPresets = defaultAnimationPresets;
29
31
  }
30
32
  }
31
- UiMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: UiMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
32
- UiMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: UiMenuComponent, selector: "app-ui-menu", inputs: { eventDataImportOptions: "eventDataImportOptions", animationPresets: "animationPresets" }, ngImport: i0, template: "<app-ui-menu-wrapper>\n <!-- Event selector -->\n <app-event-selector></app-event-selector>\n\n <!-- Zoom in and zoom out controls -->\n <app-zoom-controls></app-zoom-controls>\n\n <app-view-options></app-view-options>\n\n <app-auto-rotate></app-auto-rotate>\n\n <!-- Dark theme toggle -->\n <app-dark-theme></app-dark-theme>\n\n <!-- Toggle for clipping geometries -->\n <app-object-clipping></app-object-clipping>\n\n <!-- Main view toggle -->\n <app-main-view-toggle></app-main-view-toggle>\n\n <!-- Toggle for overlay panel -->\n <app-overlay-view></app-overlay-view>\n\n <!-- Toggle for selected object panel -->\n <app-object-selection></app-object-selection>\n\n <!-- Info panel -->\n <app-info-panel></app-info-panel>\n\n <!-- Toggle for animating the event data -->\n <app-animate-event></app-animate-event>\n\n <!-- Toggle for animating camera through event -->\n <app-animate-camera\n [animationPresets]=\"animationPresets\"\n ></app-animate-camera>\n\n <!-- Toggle for collections info -->\n <app-collections-info></app-collections-info>\n\n <!-- Toggle for performance -->\n <app-performance-toggle></app-performance-toggle>\n\n <!-- Toggle for VR -->\n <app-vr-toggle></app-vr-toggle>\n\n <!-- Toggle for AR -->\n <app-ar-toggle></app-ar-toggle>\n\n <!-- Toggle for screenshot mode -->\n <app-ss-mode></app-ss-mode>\n\n <!-- Toggle for loading geometries modal-->\n <app-io-options\n [eventDataImportOptions]=\"eventDataImportOptions\"\n ></app-io-options>\n\n <!-- Toggle for shareable link constructor modal-->\n <app-share-link></app-share-link>\n\n <!-- Extra options -->\n <ng-content></ng-content>\n</app-ui-menu-wrapper>\n", styles: [""], dependencies: [{ kind: "component", type: i1.UiMenuWrapperComponent, selector: "app-ui-menu-wrapper" }, { kind: "component", type: i2.CollectionsInfoComponent, selector: "app-collections-info" }, { kind: "component", type: i3.IoOptionsComponent, selector: "app-io-options", inputs: ["eventDataImportOptions"] }, { kind: "component", type: i4.OverlayViewComponent, selector: "app-overlay-view" }, { kind: "component", type: i5.ObjectSelectionComponent, selector: "app-object-selection" }, { kind: "component", type: i6.EventSelectorComponent, selector: "app-event-selector" }, { kind: "component", type: i7.ObjectClippingComponent, selector: "app-object-clipping" }, { kind: "component", type: i8.DarkThemeComponent, selector: "app-dark-theme" }, { kind: "component", type: i9.AutoRotateComponent, selector: "app-auto-rotate" }, { kind: "component", type: i10.ViewOptionsComponent, selector: "app-view-options" }, { kind: "component", type: i11.InfoPanelComponent, selector: "app-info-panel" }, { kind: "component", type: i12.MainViewToggleComponent, selector: "app-main-view-toggle" }, { kind: "component", type: i13.ZoomControlsComponent, selector: "app-zoom-controls" }, { kind: "component", type: i14.AnimateCameraComponent, selector: "app-animate-camera", inputs: ["animationPresets"] }, { kind: "component", type: i15.AnimateEventComponent, selector: "app-animate-event" }, { kind: "component", type: i16.VrToggleComponent, selector: "app-vr-toggle" }, { kind: "component", type: i17.ArToggleComponent, selector: "app-ar-toggle" }, { kind: "component", type: i18.SSModeComponent, selector: "app-ss-mode" }, { kind: "component", type: i19.PerformanceToggleComponent, selector: "app-performance-toggle" }, { kind: "component", type: i20.ShareLinkComponent, selector: "app-share-link" }] });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: UiMenuComponent, decorators: [{
34
- type: Component,
35
- args: [{ selector: 'app-ui-menu', template: "<app-ui-menu-wrapper>\n <!-- Event selector -->\n <app-event-selector></app-event-selector>\n\n <!-- Zoom in and zoom out controls -->\n <app-zoom-controls></app-zoom-controls>\n\n <app-view-options></app-view-options>\n\n <app-auto-rotate></app-auto-rotate>\n\n <!-- Dark theme toggle -->\n <app-dark-theme></app-dark-theme>\n\n <!-- Toggle for clipping geometries -->\n <app-object-clipping></app-object-clipping>\n\n <!-- Main view toggle -->\n <app-main-view-toggle></app-main-view-toggle>\n\n <!-- Toggle for overlay panel -->\n <app-overlay-view></app-overlay-view>\n\n <!-- Toggle for selected object panel -->\n <app-object-selection></app-object-selection>\n\n <!-- Info panel -->\n <app-info-panel></app-info-panel>\n\n <!-- Toggle for animating the event data -->\n <app-animate-event></app-animate-event>\n\n <!-- Toggle for animating camera through event -->\n <app-animate-camera\n [animationPresets]=\"animationPresets\"\n ></app-animate-camera>\n\n <!-- Toggle for collections info -->\n <app-collections-info></app-collections-info>\n\n <!-- Toggle for performance -->\n <app-performance-toggle></app-performance-toggle>\n\n <!-- Toggle for VR -->\n <app-vr-toggle></app-vr-toggle>\n\n <!-- Toggle for AR -->\n <app-ar-toggle></app-ar-toggle>\n\n <!-- Toggle for screenshot mode -->\n <app-ss-mode></app-ss-mode>\n\n <!-- Toggle for loading geometries modal-->\n <app-io-options\n [eventDataImportOptions]=\"eventDataImportOptions\"\n ></app-io-options>\n\n <!-- Toggle for shareable link constructor modal-->\n <app-share-link></app-share-link>\n\n <!-- Extra options -->\n <ng-content></ng-content>\n</app-ui-menu-wrapper>\n" }]
36
- }], propDecorators: { eventDataImportOptions: [{
37
- type: Input
38
- }], animationPresets: [{
39
- type: Input
40
- }] } });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3VpLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvdWktbWVudS91aS1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFDTCxlQUFlLEdBRWhCLE1BQU0seUNBQXlDLENBQUM7QUFDakQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPcEYsTUFBTSxPQUFPLGVBQWU7SUFMNUI7UUFPRSwyQkFBc0IsR0FDcEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUVqQyxxQkFBZ0IsR0FBRyx1QkFBdUIsQ0FBQztLQUM1Qzs7NEdBTlksZUFBZTtnR0FBZixlQUFlLHVKQ1o1QiwycERBK0RBOzJGRG5EYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLGFBQWE7OEJBTXZCLHNCQUFzQjtzQkFEckIsS0FBSztnQkFJTixnQkFBZ0I7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEV2ZW50RGF0YUZvcm1hdCxcbiAgRXZlbnREYXRhSW1wb3J0T3B0aW9uLFxufSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9leHRyYXMvZXZlbnQtZGF0YS1pbXBvcnQnO1xuaW1wb3J0IHsgZGVmYXVsdEFuaW1hdGlvblByZXNldHMgfSBmcm9tICcuL2FuaW1hdGUtY2FtZXJhL2FuaW1hdGUtY2FtZXJhLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC11aS1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VpLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi91aS1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFVpTWVudUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGV2ZW50RGF0YUltcG9ydE9wdGlvbnM6IEV2ZW50RGF0YUltcG9ydE9wdGlvbltdID1cbiAgICBPYmplY3QudmFsdWVzKEV2ZW50RGF0YUZvcm1hdCk7XG4gIEBJbnB1dCgpXG4gIGFuaW1hdGlvblByZXNldHMgPSBkZWZhdWx0QW5pbWF0aW9uUHJlc2V0cztcbn1cbiIsIjxhcHAtdWktbWVudS13cmFwcGVyPlxuICA8IS0tIEV2ZW50IHNlbGVjdG9yIC0tPlxuICA8YXBwLWV2ZW50LXNlbGVjdG9yPjwvYXBwLWV2ZW50LXNlbGVjdG9yPlxuXG4gIDwhLS0gWm9vbSBpbiBhbmQgem9vbSBvdXQgY29udHJvbHMgLS0+XG4gIDxhcHAtem9vbS1jb250cm9scz48L2FwcC16b29tLWNvbnRyb2xzPlxuXG4gIDxhcHAtdmlldy1vcHRpb25zPjwvYXBwLXZpZXctb3B0aW9ucz5cblxuICA8YXBwLWF1dG8tcm90YXRlPjwvYXBwLWF1dG8tcm90YXRlPlxuXG4gIDwhLS0gRGFyayB0aGVtZSB0b2dnbGUgLS0+XG4gIDxhcHAtZGFyay10aGVtZT48L2FwcC1kYXJrLXRoZW1lPlxuXG4gIDwhLS0gVG9nZ2xlIGZvciBjbGlwcGluZyBnZW9tZXRyaWVzIC0tPlxuICA8YXBwLW9iamVjdC1jbGlwcGluZz48L2FwcC1vYmplY3QtY2xpcHBpbmc+XG5cbiAgPCEtLSBNYWluIHZpZXcgdG9nZ2xlIC0tPlxuICA8YXBwLW1haW4tdmlldy10b2dnbGU+PC9hcHAtbWFpbi12aWV3LXRvZ2dsZT5cblxuICA8IS0tIFRvZ2dsZSBmb3Igb3ZlcmxheSBwYW5lbCAtLT5cbiAgPGFwcC1vdmVybGF5LXZpZXc+PC9hcHAtb3ZlcmxheS12aWV3PlxuXG4gIDwhLS0gVG9nZ2xlIGZvciBzZWxlY3RlZCBvYmplY3QgcGFuZWwgLS0+XG4gIDxhcHAtb2JqZWN0LXNlbGVjdGlvbj48L2FwcC1vYmplY3Qtc2VsZWN0aW9uPlxuXG4gIDwhLS0gSW5mbyBwYW5lbCAtLT5cbiAgPGFwcC1pbmZvLXBhbmVsPjwvYXBwLWluZm8tcGFuZWw+XG5cbiAgPCEtLSBUb2dnbGUgZm9yIGFuaW1hdGluZyB0aGUgZXZlbnQgZGF0YSAtLT5cbiAgPGFwcC1hbmltYXRlLWV2ZW50PjwvYXBwLWFuaW1hdGUtZXZlbnQ+XG5cbiAgPCEtLSBUb2dnbGUgZm9yIGFuaW1hdGluZyBjYW1lcmEgdGhyb3VnaCBldmVudCAtLT5cbiAgPGFwcC1hbmltYXRlLWNhbWVyYVxuICAgIFthbmltYXRpb25QcmVzZXRzXT1cImFuaW1hdGlvblByZXNldHNcIlxuICA+PC9hcHAtYW5pbWF0ZS1jYW1lcmE+XG5cbiAgPCEtLSBUb2dnbGUgZm9yIGNvbGxlY3Rpb25zIGluZm8gLS0+XG4gIDxhcHAtY29sbGVjdGlvbnMtaW5mbz48L2FwcC1jb2xsZWN0aW9ucy1pbmZvPlxuXG4gIDwhLS0gVG9nZ2xlIGZvciBwZXJmb3JtYW5jZSAtLT5cbiAgPGFwcC1wZXJmb3JtYW5jZS10b2dnbGU+PC9hcHAtcGVyZm9ybWFuY2UtdG9nZ2xlPlxuXG4gIDwhLS0gVG9nZ2xlIGZvciBWUiAtLT5cbiAgPGFwcC12ci10b2dnbGU+PC9hcHAtdnItdG9nZ2xlPlxuXG4gIDwhLS0gVG9nZ2xlIGZvciBBUiAtLT5cbiAgPGFwcC1hci10b2dnbGU+PC9hcHAtYXItdG9nZ2xlPlxuXG4gIDwhLS0gVG9nZ2xlIGZvciBzY3JlZW5zaG90IG1vZGUgLS0+XG4gIDxhcHAtc3MtbW9kZT48L2FwcC1zcy1tb2RlPlxuXG4gIDwhLS0gVG9nZ2xlIGZvciBsb2FkaW5nIGdlb21ldHJpZXMgbW9kYWwtLT5cbiAgPGFwcC1pby1vcHRpb25zXG4gICAgW2V2ZW50RGF0YUltcG9ydE9wdGlvbnNdPVwiZXZlbnREYXRhSW1wb3J0T3B0aW9uc1wiXG4gID48L2FwcC1pby1vcHRpb25zPlxuXG4gIDwhLS0gVG9nZ2xlIGZvciBzaGFyZWFibGUgbGluayBjb25zdHJ1Y3RvciBtb2RhbC0tPlxuICA8YXBwLXNoYXJlLWxpbms+PC9hcHAtc2hhcmUtbGluaz5cblxuICA8IS0tIEV4dHJhIG9wdGlvbnMgLS0+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvYXBwLXVpLW1lbnUtd3JhcHBlcj5cbiJdfQ==
33
+ UiMenuComponent.ɵfac = function UiMenuComponent_Factory(t) { return new (t || UiMenuComponent)(); };
34
+ UiMenuComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UiMenuComponent, selectors: [["app-ui-menu"]], inputs: { eventDataImportOptions: "eventDataImportOptions", animationPresets: "animationPresets" }, ngContentSelectors: _c0, decls: 22, vars: 2, consts: [[3, "animationPresets"], [3, "eventDataImportOptions"]], template: function UiMenuComponent_Template(rf, ctx) { if (rf & 1) {
35
+ i0.ɵɵprojectionDef();
36
+ i0.ɵɵelementStart(0, "app-ui-menu-wrapper");
37
+ i0.ɵɵelement(1, "app-event-selector")(2, "app-zoom-controls")(3, "app-view-options")(4, "app-auto-rotate")(5, "app-dark-theme")(6, "app-object-clipping")(7, "app-main-view-toggle")(8, "app-overlay-view")(9, "app-object-selection")(10, "app-info-panel")(11, "app-animate-event")(12, "app-animate-camera", 0)(13, "app-collections-info")(14, "app-performance-toggle")(15, "app-vr-toggle")(16, "app-ar-toggle")(17, "app-ss-mode")(18, "app-make-picture")(19, "app-io-options", 1)(20, "app-share-link");
38
+ i0.ɵɵprojection(21);
39
+ i0.ɵɵelementEnd();
40
+ } if (rf & 2) {
41
+ i0.ɵɵadvance(12);
42
+ i0.ɵɵproperty("animationPresets", ctx.animationPresets);
43
+ i0.ɵɵadvance(7);
44
+ i0.ɵɵproperty("eventDataImportOptions", ctx.eventDataImportOptions);
45
+ } }, dependencies: [i1.UiMenuWrapperComponent, i2.CollectionsInfoComponent, i3.IoOptionsComponent, i4.OverlayViewComponent, i5.ObjectSelectionComponent, i6.EventSelectorComponent, i7.ObjectClippingComponent, i8.DarkThemeComponent, i9.AutoRotateComponent, i10.ViewOptionsComponent, i11.InfoPanelComponent, i12.MainViewToggleComponent, i13.ZoomControlsComponent, i14.AnimateCameraComponent, i15.AnimateEventComponent, i16.VrToggleComponent, i17.ArToggleComponent, i18.SSModeComponent, i19.MakePictureComponent, i20.PerformanceToggleComponent, i21.ShareLinkComponent] });
46
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UiMenuComponent, [{
47
+ type: Component,
48
+ args: [{ selector: 'app-ui-menu', template: "<app-ui-menu-wrapper>\n <!-- Event selector -->\n <app-event-selector></app-event-selector>\n\n <!-- Zoom in and zoom out controls -->\n <app-zoom-controls></app-zoom-controls>\n\n <app-view-options></app-view-options>\n\n <app-auto-rotate></app-auto-rotate>\n\n <!-- Dark theme toggle -->\n <app-dark-theme></app-dark-theme>\n\n <!-- Toggle for clipping geometries -->\n <app-object-clipping></app-object-clipping>\n\n <!-- Main view toggle -->\n <app-main-view-toggle></app-main-view-toggle>\n\n <!-- Toggle for overlay panel -->\n <app-overlay-view></app-overlay-view>\n\n <!-- Toggle for selected object panel -->\n <app-object-selection></app-object-selection>\n\n <!-- Info panel -->\n <app-info-panel></app-info-panel>\n\n <!-- Toggle for animating the event data -->\n <app-animate-event></app-animate-event>\n\n <!-- Toggle for animating camera through event -->\n <app-animate-camera\n [animationPresets]=\"animationPresets\"\n ></app-animate-camera>\n\n <!-- Toggle for collections info -->\n <app-collections-info></app-collections-info>\n\n <!-- Toggle for performance -->\n <app-performance-toggle></app-performance-toggle>\n\n <!-- Toggle for VR -->\n <app-vr-toggle></app-vr-toggle>\n\n <!-- Toggle for AR -->\n <app-ar-toggle></app-ar-toggle>\n\n <!-- Toggle for screenshot mode -->\n <app-ss-mode></app-ss-mode>\n\n <!-- Make pictures from scene -->\n <app-make-picture></app-make-picture>\n\n <!-- Toggle for loading geometries modal-->\n <app-io-options\n [eventDataImportOptions]=\"eventDataImportOptions\"\n ></app-io-options>\n\n <!-- Toggle for shareable link constructor modal-->\n <app-share-link></app-share-link>\n\n <!-- Extra options -->\n <ng-content></ng-content>\n</app-ui-menu-wrapper>\n" }]
49
+ }], null, { eventDataImportOptions: [{
50
+ type: Input
51
+ }], animationPresets: [{
52
+ type: Input
53
+ }] }); })();
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3VpLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvdWktbWVudS91aS1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFDTCxlQUFlLEdBRWhCLE1BQU0seUNBQXlDLENBQUM7QUFDakQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU9wRixNQUFNLE9BQU8sZUFBZTtJQUw1QjtRQU9FLDJCQUFzQixHQUNwQixNQUFNLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRWpDLHFCQUFnQixHQUFHLHVCQUF1QixDQUFDO0tBQzVDOzs4RUFOWSxlQUFlO2tFQUFmLGVBQWU7O1FDWjVCLDJDQUFxQjtRQUVuQixxQ0FBeUMsd0JBQUEsdUJBQUEsc0JBQUEscUJBQUEsMEJBQUEsMkJBQUEsdUJBQUEsMkJBQUEsc0JBQUEseUJBQUEsNkJBQUEsNEJBQUEsOEJBQUEscUJBQUEscUJBQUEsbUJBQUEsd0JBQUEseUJBQUEsc0JBQUE7UUE4RHpDLG1CQUF5QjtRQUMzQixpQkFBc0I7O1FBL0JsQixnQkFBcUM7UUFBckMsdURBQXFDO1FBdUJyQyxlQUFpRDtRQUFqRCxtRUFBaUQ7O3VGRDdDeEMsZUFBZTtjQUwzQixTQUFTOzJCQUNFLGFBQWE7Z0JBTXZCLHNCQUFzQjtrQkFEckIsS0FBSztZQUlOLGdCQUFnQjtrQkFEZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgRXZlbnREYXRhRm9ybWF0LFxuICBFdmVudERhdGFJbXBvcnRPcHRpb24sXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzL2V4dHJhcy9ldmVudC1kYXRhLWltcG9ydCc7XG5pbXBvcnQgeyBkZWZhdWx0QW5pbWF0aW9uUHJlc2V0cyB9IGZyb20gJy4vYW5pbWF0ZS1jYW1lcmEvYW5pbWF0ZS1jYW1lcmEuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXVpLW1lbnUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdWktbWVudS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3VpLW1lbnUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgVWlNZW51Q29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgZXZlbnREYXRhSW1wb3J0T3B0aW9uczogRXZlbnREYXRhSW1wb3J0T3B0aW9uW10gPVxuICAgIE9iamVjdC52YWx1ZXMoRXZlbnREYXRhRm9ybWF0KTtcbiAgQElucHV0KClcbiAgYW5pbWF0aW9uUHJlc2V0cyA9IGRlZmF1bHRBbmltYXRpb25QcmVzZXRzO1xufVxuIiwiPGFwcC11aS1tZW51LXdyYXBwZXI+XG4gIDwhLS0gRXZlbnQgc2VsZWN0b3IgLS0+XG4gIDxhcHAtZXZlbnQtc2VsZWN0b3I+PC9hcHAtZXZlbnQtc2VsZWN0b3I+XG5cbiAgPCEtLSBab29tIGluIGFuZCB6b29tIG91dCBjb250cm9scyAtLT5cbiAgPGFwcC16b29tLWNvbnRyb2xzPjwvYXBwLXpvb20tY29udHJvbHM+XG5cbiAgPGFwcC12aWV3LW9wdGlvbnM+PC9hcHAtdmlldy1vcHRpb25zPlxuXG4gIDxhcHAtYXV0by1yb3RhdGU+PC9hcHAtYXV0by1yb3RhdGU+XG5cbiAgPCEtLSBEYXJrIHRoZW1lIHRvZ2dsZSAtLT5cbiAgPGFwcC1kYXJrLXRoZW1lPjwvYXBwLWRhcmstdGhlbWU+XG5cbiAgPCEtLSBUb2dnbGUgZm9yIGNsaXBwaW5nIGdlb21ldHJpZXMgLS0+XG4gIDxhcHAtb2JqZWN0LWNsaXBwaW5nPjwvYXBwLW9iamVjdC1jbGlwcGluZz5cblxuICA8IS0tIE1haW4gdmlldyB0b2dnbGUgLS0+XG4gIDxhcHAtbWFpbi12aWV3LXRvZ2dsZT48L2FwcC1tYWluLXZpZXctdG9nZ2xlPlxuXG4gIDwhLS0gVG9nZ2xlIGZvciBvdmVybGF5IHBhbmVsIC0tPlxuICA8YXBwLW92ZXJsYXktdmlldz48L2FwcC1vdmVybGF5LXZpZXc+XG5cbiAgPCEtLSBUb2dnbGUgZm9yIHNlbGVjdGVkIG9iamVjdCBwYW5lbCAtLT5cbiAgPGFwcC1vYmplY3Qtc2VsZWN0aW9uPjwvYXBwLW9iamVjdC1zZWxlY3Rpb24+XG5cbiAgPCEtLSBJbmZvIHBhbmVsIC0tPlxuICA8YXBwLWluZm8tcGFuZWw+PC9hcHAtaW5mby1wYW5lbD5cblxuICA8IS0tIFRvZ2dsZSBmb3IgYW5pbWF0aW5nIHRoZSBldmVudCBkYXRhIC0tPlxuICA8YXBwLWFuaW1hdGUtZXZlbnQ+PC9hcHAtYW5pbWF0ZS1ldmVudD5cblxuICA8IS0tIFRvZ2dsZSBmb3IgYW5pbWF0aW5nIGNhbWVyYSB0aHJvdWdoIGV2ZW50IC0tPlxuICA8YXBwLWFuaW1hdGUtY2FtZXJhXG4gICAgW2FuaW1hdGlvblByZXNldHNdPVwiYW5pbWF0aW9uUHJlc2V0c1wiXG4gID48L2FwcC1hbmltYXRlLWNhbWVyYT5cblxuICA8IS0tIFRvZ2dsZSBmb3IgY29sbGVjdGlvbnMgaW5mbyAtLT5cbiAgPGFwcC1jb2xsZWN0aW9ucy1pbmZvPjwvYXBwLWNvbGxlY3Rpb25zLWluZm8+XG5cbiAgPCEtLSBUb2dnbGUgZm9yIHBlcmZvcm1hbmNlIC0tPlxuICA8YXBwLXBlcmZvcm1hbmNlLXRvZ2dsZT48L2FwcC1wZXJmb3JtYW5jZS10b2dnbGU+XG5cbiAgPCEtLSBUb2dnbGUgZm9yIFZSIC0tPlxuICA8YXBwLXZyLXRvZ2dsZT48L2FwcC12ci10b2dnbGU+XG5cbiAgPCEtLSBUb2dnbGUgZm9yIEFSIC0tPlxuICA8YXBwLWFyLXRvZ2dsZT48L2FwcC1hci10b2dnbGU+XG5cbiAgPCEtLSBUb2dnbGUgZm9yIHNjcmVlbnNob3QgbW9kZSAtLT5cbiAgPGFwcC1zcy1tb2RlPjwvYXBwLXNzLW1vZGU+XG5cbiAgPCEtLSBNYWtlIHBpY3R1cmVzIGZyb20gc2NlbmUgLS0+XG4gIDxhcHAtbWFrZS1waWN0dXJlPjwvYXBwLW1ha2UtcGljdHVyZT5cblxuICA8IS0tIFRvZ2dsZSBmb3IgbG9hZGluZyBnZW9tZXRyaWVzIG1vZGFsLS0+XG4gIDxhcHAtaW8tb3B0aW9uc1xuICAgIFtldmVudERhdGFJbXBvcnRPcHRpb25zXT1cImV2ZW50RGF0YUltcG9ydE9wdGlvbnNcIlxuICA+PC9hcHAtaW8tb3B0aW9ucz5cblxuICA8IS0tIFRvZ2dsZSBmb3Igc2hhcmVhYmxlIGxpbmsgY29uc3RydWN0b3IgbW9kYWwtLT5cbiAgPGFwcC1zaGFyZS1saW5rPjwvYXBwLXNoYXJlLWxpbms+XG5cbiAgPCEtLSBFeHRyYSBvcHRpb25zIC0tPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2FwcC11aS1tZW51LXdyYXBwZXI+XG4iXX0=
@@ -5,6 +5,30 @@ import * as i2 from "@angular/common";
5
5
  import * as i3 from "@angular/material/menu";
6
6
  import * as i4 from "@angular/material/checkbox";
7
7
  import * as i5 from "../menu-toggle/menu-toggle.component";
8
+ function ViewOptionsComponent_button_10__svg_svg_1_Template(rf, ctx) { if (rf & 1) {
9
+ i0.ɵɵnamespaceSVG();
10
+ i0.ɵɵelementStart(0, "svg", 8);
11
+ i0.ɵɵelement(1, "use");
12
+ i0.ɵɵelementEnd();
13
+ } if (rf & 2) {
14
+ const view_r4 = i0.ɵɵnextContext().$implicit;
15
+ i0.ɵɵadvance(1);
16
+ i0.ɵɵattributeInterpolate2("href", "assets/icons/", view_r4.icon, ".svg#", view_r4.icon, "");
17
+ } }
18
+ function ViewOptionsComponent_button_10_Template(rf, ctx) { if (rf & 1) {
19
+ const _r8 = i0.ɵɵgetCurrentView();
20
+ i0.ɵɵelementStart(0, "button", 1);
21
+ i0.ɵɵlistener("click", function ViewOptionsComponent_button_10_Template_button_click_0_listener($event) { const restoredCtx = i0.ɵɵrestoreView(_r8); const view_r4 = restoredCtx.$implicit; const ctx_r7 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r7.displayView($event, view_r4)); });
22
+ i0.ɵɵtemplate(1, ViewOptionsComponent_button_10__svg_svg_1_Template, 2, 2, "svg", 7);
23
+ i0.ɵɵtext(2);
24
+ i0.ɵɵelementEnd();
25
+ } if (rf & 2) {
26
+ const view_r4 = ctx.$implicit;
27
+ i0.ɵɵadvance(1);
28
+ i0.ɵɵproperty("ngIf", view_r4.icon);
29
+ i0.ɵɵadvance(1);
30
+ i0.ɵɵtextInterpolate1(" ", view_r4.name, " ");
31
+ } }
8
32
  export class ViewOptionsComponent {
9
33
  constructor(eventDisplay) {
10
34
  this.eventDisplay = eventDisplay;
@@ -25,10 +49,33 @@ export class ViewOptionsComponent {
25
49
  this.eventDisplay.getUIManager().setShowGrid(value);
26
50
  }
27
51
  }
28
- ViewOptionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ViewOptionsComponent, deps: [{ token: i1.EventDisplayService }], target: i0.ɵɵFactoryTarget.Component });
29
- ViewOptionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: ViewOptionsComponent, selector: "app-view-options", ngImport: i0, template: "<mat-menu #viewOptions>\n <button\n mat-menu-item\n (click)=\"\n $event.stopPropagation();\n showGridCheckbox._inputElement.nativeElement.click()\n \"\n >\n <mat-checkbox\n #showGridCheckbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"setGrid($event)\"\n >Show Grid\n </mat-checkbox>\n </button>\n <button\n mat-menu-item\n (click)=\"\n $event.stopPropagation();\n showAxisCheckbox._inputElement.nativeElement.click()\n \"\n >\n <mat-checkbox\n #showAxisCheckbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"setAxis($event)\"\n >Show Axis\n </mat-checkbox>\n </button>\n <button\n mat-menu-item\n *ngFor=\"let view of views\"\n (click)=\"displayView($event, view)\"\n >\n <svg class=\"view-icon\" *ngIf=\"view.icon\">\n <use attr.href=\"assets/icons/{{ view.icon }}.svg#{{ view.icon }}\"></use>\n </svg>\n {{ view.name }}\n </button>\n</mat-menu>\n\n<app-menu-toggle\n [matMenuTriggerFor]=\"viewOptions\"\n tooltip=\"View options\"\n icon=\"views\"\n [active]=\"false\"\n>\n</app-menu-toggle>\n", styles: [".view-icon{width:1.2rem;height:1.2rem;margin-right:.5rem}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i3.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i5.MenuToggleComponent, selector: "app-menu-toggle", inputs: ["icon", "active", "tooltip", "disabled"] }] });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ViewOptionsComponent, decorators: [{
31
- type: Component,
32
- args: [{ selector: 'app-view-options', template: "<mat-menu #viewOptions>\n <button\n mat-menu-item\n (click)=\"\n $event.stopPropagation();\n showGridCheckbox._inputElement.nativeElement.click()\n \"\n >\n <mat-checkbox\n #showGridCheckbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"setGrid($event)\"\n >Show Grid\n </mat-checkbox>\n </button>\n <button\n mat-menu-item\n (click)=\"\n $event.stopPropagation();\n showAxisCheckbox._inputElement.nativeElement.click()\n \"\n >\n <mat-checkbox\n #showAxisCheckbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"setAxis($event)\"\n >Show Axis\n </mat-checkbox>\n </button>\n <button\n mat-menu-item\n *ngFor=\"let view of views\"\n (click)=\"displayView($event, view)\"\n >\n <svg class=\"view-icon\" *ngIf=\"view.icon\">\n <use attr.href=\"assets/icons/{{ view.icon }}.svg#{{ view.icon }}\"></use>\n </svg>\n {{ view.name }}\n </button>\n</mat-menu>\n\n<app-menu-toggle\n [matMenuTriggerFor]=\"viewOptions\"\n tooltip=\"View options\"\n icon=\"views\"\n [active]=\"false\"\n>\n</app-menu-toggle>\n", styles: [".view-icon{width:1.2rem;height:1.2rem;margin-right:.5rem}\n"] }]
33
- }], ctorParameters: function () { return [{ type: i1.EventDisplayService }]; } });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy1vcHRpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvdmlldy1vcHRpb25zL3ZpZXctb3B0aW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3ZpZXctb3B0aW9ucy92aWV3LW9wdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQVVsRCxNQUFNLE9BQU8sb0JBQW9CO0lBRy9CLFlBQW9CLFlBQWlDO1FBQWpDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtJQUFHLENBQUM7SUFFekQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQVcsRUFBRSxJQUFnQjtRQUN2QyxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELE9BQU8sQ0FBQyxNQUF5QjtRQUMvQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxPQUFPLENBQUMsTUFBeUI7UUFDL0IsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0RCxDQUFDOztpSEF0QlUsb0JBQW9CO3FHQUFwQixvQkFBb0Isd0RDVmpDLGluQ0FnREE7MkZEdENhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJlc2V0VmlldyB9IGZyb20gJ3Bob2VuaXgtZXZlbnQtZGlzcGxheSc7XG5pbXBvcnQgeyBNYXRDaGVja2JveENoYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcbmltcG9ydCB7IEV2ZW50RGlzcGxheVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9ldmVudC1kaXNwbGF5LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtdmlldy1vcHRpb25zJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3ZpZXctb3B0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3ZpZXctb3B0aW9ucy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBWaWV3T3B0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHZpZXdzOiBQcmVzZXRWaWV3W107XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBldmVudERpc3BsYXk6IEV2ZW50RGlzcGxheVNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy52aWV3cyA9IHRoaXMuZXZlbnREaXNwbGF5LmdldFVJTWFuYWdlcigpLmdldFByZXNldFZpZXdzKCk7XG4gIH1cblxuICBkaXNwbGF5VmlldygkZXZlbnQ6IGFueSwgdmlldzogUHJlc2V0Vmlldykge1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmV2ZW50RGlzcGxheS5nZXRVSU1hbmFnZXIoKS5kaXNwbGF5Vmlldyh2aWV3KTtcbiAgfVxuXG4gIHNldEF4aXMoY2hhbmdlOiBNYXRDaGVja2JveENoYW5nZSkge1xuICAgIGNvbnN0IHZhbHVlID0gY2hhbmdlLmNoZWNrZWQ7XG4gICAgdGhpcy5ldmVudERpc3BsYXkuZ2V0VUlNYW5hZ2VyKCkuc2V0U2hvd0F4aXModmFsdWUpO1xuICB9XG5cbiAgc2V0R3JpZChjaGFuZ2U6IE1hdENoZWNrYm94Q2hhbmdlKSB7XG4gICAgY29uc3QgdmFsdWUgPSBjaGFuZ2UuY2hlY2tlZDtcbiAgICB0aGlzLmV2ZW50RGlzcGxheS5nZXRVSU1hbmFnZXIoKS5zZXRTaG93R3JpZCh2YWx1ZSk7XG4gIH1cbn1cbiIsIjxtYXQtbWVudSAjdmlld09wdGlvbnM+XG4gIDxidXR0b25cbiAgICBtYXQtbWVudS1pdGVtXG4gICAgKGNsaWNrKT1cIlxuICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgc2hvd0dyaWRDaGVja2JveC5faW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKVxuICAgIFwiXG4gID5cbiAgICA8bWF0LWNoZWNrYm94XG4gICAgICAjc2hvd0dyaWRDaGVja2JveFxuICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAoY2hhbmdlKT1cInNldEdyaWQoJGV2ZW50KVwiXG4gICAgICA+U2hvdyBHcmlkXG4gICAgPC9tYXQtY2hlY2tib3g+XG4gIDwvYnV0dG9uPlxuICA8YnV0dG9uXG4gICAgbWF0LW1lbnUtaXRlbVxuICAgIChjbGljayk9XCJcbiAgICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIHNob3dBeGlzQ2hlY2tib3guX2lucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LmNsaWNrKClcbiAgICBcIlxuICA+XG4gICAgPG1hdC1jaGVja2JveFxuICAgICAgI3Nob3dBeGlzQ2hlY2tib3hcbiAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgKGNoYW5nZSk9XCJzZXRBeGlzKCRldmVudClcIlxuICAgICAgPlNob3cgQXhpc1xuICAgIDwvbWF0LWNoZWNrYm94PlxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvblxuICAgIG1hdC1tZW51LWl0ZW1cbiAgICAqbmdGb3I9XCJsZXQgdmlldyBvZiB2aWV3c1wiXG4gICAgKGNsaWNrKT1cImRpc3BsYXlWaWV3KCRldmVudCwgdmlldylcIlxuICA+XG4gICAgPHN2ZyBjbGFzcz1cInZpZXctaWNvblwiICpuZ0lmPVwidmlldy5pY29uXCI+XG4gICAgICA8dXNlIGF0dHIuaHJlZj1cImFzc2V0cy9pY29ucy97eyB2aWV3Lmljb24gfX0uc3ZnI3t7IHZpZXcuaWNvbiB9fVwiPjwvdXNlPlxuICAgIDwvc3ZnPlxuICAgIHt7IHZpZXcubmFtZSB9fVxuICA8L2J1dHRvbj5cbjwvbWF0LW1lbnU+XG5cbjxhcHAtbWVudS10b2dnbGVcbiAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cInZpZXdPcHRpb25zXCJcbiAgdG9vbHRpcD1cIlZpZXcgb3B0aW9uc1wiXG4gIGljb249XCJ2aWV3c1wiXG4gIFthY3RpdmVdPVwiZmFsc2VcIlxuPlxuPC9hcHAtbWVudS10b2dnbGU+XG4iXX0=
52
+ ViewOptionsComponent.ɵfac = function ViewOptionsComponent_Factory(t) { return new (t || ViewOptionsComponent)(i0.ɵɵdirectiveInject(i1.EventDisplayService)); };
53
+ ViewOptionsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ViewOptionsComponent, selectors: [["app-view-options"]], decls: 12, vars: 3, consts: [["viewOptions", ""], ["mat-menu-item", "", 3, "click"], [3, "click", "change"], ["showGridCheckbox", ""], ["showAxisCheckbox", ""], ["mat-menu-item", "", 3, "click", 4, "ngFor", "ngForOf"], ["tooltip", "View options", "icon", "views", 3, "matMenuTriggerFor", "active"], ["class", "view-icon", 4, "ngIf"], [1, "view-icon"]], template: function ViewOptionsComponent_Template(rf, ctx) { if (rf & 1) {
54
+ const _r9 = i0.ɵɵgetCurrentView();
55
+ i0.ɵɵelementStart(0, "mat-menu", null, 0)(2, "button", 1);
56
+ i0.ɵɵlistener("click", function ViewOptionsComponent_Template_button_click_2_listener($event) { i0.ɵɵrestoreView(_r9); const _r1 = i0.ɵɵreference(4); $event.stopPropagation(); return i0.ɵɵresetView(_r1._inputElement.nativeElement.click()); });
57
+ i0.ɵɵelementStart(3, "mat-checkbox", 2, 3);
58
+ i0.ɵɵlistener("click", function ViewOptionsComponent_Template_mat_checkbox_click_3_listener($event) { return $event.stopPropagation(); })("change", function ViewOptionsComponent_Template_mat_checkbox_change_3_listener($event) { return ctx.setGrid($event); });
59
+ i0.ɵɵtext(5, "Show Grid ");
60
+ i0.ɵɵelementEnd()();
61
+ i0.ɵɵelementStart(6, "button", 1);
62
+ i0.ɵɵlistener("click", function ViewOptionsComponent_Template_button_click_6_listener($event) { i0.ɵɵrestoreView(_r9); const _r2 = i0.ɵɵreference(8); $event.stopPropagation(); return i0.ɵɵresetView(_r2._inputElement.nativeElement.click()); });
63
+ i0.ɵɵelementStart(7, "mat-checkbox", 2, 4);
64
+ i0.ɵɵlistener("click", function ViewOptionsComponent_Template_mat_checkbox_click_7_listener($event) { return $event.stopPropagation(); })("change", function ViewOptionsComponent_Template_mat_checkbox_change_7_listener($event) { return ctx.setAxis($event); });
65
+ i0.ɵɵtext(9, "Show Axis ");
66
+ i0.ɵɵelementEnd()();
67
+ i0.ɵɵtemplate(10, ViewOptionsComponent_button_10_Template, 3, 2, "button", 5);
68
+ i0.ɵɵelementEnd();
69
+ i0.ɵɵelement(11, "app-menu-toggle", 6);
70
+ } if (rf & 2) {
71
+ const _r0 = i0.ɵɵreference(1);
72
+ i0.ɵɵadvance(10);
73
+ i0.ɵɵproperty("ngForOf", ctx.views);
74
+ i0.ɵɵadvance(1);
75
+ i0.ɵɵproperty("matMenuTriggerFor", _r0)("active", false);
76
+ } }, dependencies: [i2.NgForOf, i2.NgIf, i3.MatMenu, i3.MatMenuItem, i3.MatMenuTrigger, i4.MatCheckbox, i5.MenuToggleComponent], styles: [".view-icon[_ngcontent-%COMP%]{width:1.2rem;height:1.2rem;margin-right:.5rem}"] });
77
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ViewOptionsComponent, [{
78
+ type: Component,
79
+ args: [{ selector: 'app-view-options', template: "<mat-menu #viewOptions>\n <button\n mat-menu-item\n (click)=\"\n $event.stopPropagation();\n showGridCheckbox._inputElement.nativeElement.click()\n \"\n >\n <mat-checkbox\n #showGridCheckbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"setGrid($event)\"\n >Show Grid\n </mat-checkbox>\n </button>\n <button\n mat-menu-item\n (click)=\"\n $event.stopPropagation();\n showAxisCheckbox._inputElement.nativeElement.click()\n \"\n >\n <mat-checkbox\n #showAxisCheckbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"setAxis($event)\"\n >Show Axis\n </mat-checkbox>\n </button>\n <button\n mat-menu-item\n *ngFor=\"let view of views\"\n (click)=\"displayView($event, view)\"\n >\n <svg class=\"view-icon\" *ngIf=\"view.icon\">\n <use attr.href=\"assets/icons/{{ view.icon }}.svg#{{ view.icon }}\"></use>\n </svg>\n {{ view.name }}\n </button>\n</mat-menu>\n\n<app-menu-toggle\n [matMenuTriggerFor]=\"viewOptions\"\n tooltip=\"View options\"\n icon=\"views\"\n [active]=\"false\"\n>\n</app-menu-toggle>\n", styles: [".view-icon{width:1.2rem;height:1.2rem;margin-right:.5rem}\n"] }]
80
+ }], function () { return [{ type: i1.EventDisplayService }]; }, null); })();
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy1vcHRpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvdmlldy1vcHRpb25zL3ZpZXctb3B0aW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3ZpZXctb3B0aW9ucy92aWV3LW9wdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7SUNrQzlDLG1CQUF5QztJQUF6Qyw4QkFBeUM7SUFDdkMsc0JBQXdFO0lBQzFFLGlCQUFNOzs7SUFEQyxlQUE0RDtJQUE1RCw0RkFBNEQ7Ozs7SUFOckUsaUNBSUM7SUFEQyxzT0FBUyxlQUFBLG1DQUF5QixDQUFBLElBQUM7SUFFbkMsb0ZBRU07SUFDTixZQUNGO0lBQUEsaUJBQVM7OztJQUppQixlQUFlO0lBQWYsbUNBQWU7SUFHdkMsZUFDRjtJQURFLDZDQUNGOztBRDVCRixNQUFNLE9BQU8sb0JBQW9CO0lBRy9CLFlBQW9CLFlBQWlDO1FBQWpDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtJQUFHLENBQUM7SUFFekQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQVcsRUFBRSxJQUFnQjtRQUN2QyxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELE9BQU8sQ0FBQyxNQUF5QjtRQUMvQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxPQUFPLENBQUMsTUFBeUI7UUFDL0IsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0RCxDQUFDOzt3RkF0QlUsb0JBQW9CO3VFQUFwQixvQkFBb0I7O1FDVmpDLHlDQUF1QixnQkFBQTtRQUduQixzSkFDUyx3QkFDUixTQUFRLGVBQUEsdUNBRWIsQ0FBQSxJQURLO1FBRUQsMENBSUc7UUFGRCw2R0FBUyx3QkFBd0IsSUFBQyxrR0FDeEIsbUJBQWUsSUFEUztRQUVqQywwQkFDSDtRQUFBLGlCQUFlLEVBQUE7UUFFakIsaUNBTUM7UUFKQyxzSkFDUyx3QkFDUixTQUFRLGVBQUEsdUNBRWIsQ0FBQSxJQURLO1FBRUQsMENBSUc7UUFGRCw2R0FBUyx3QkFBd0IsSUFBQyxrR0FDeEIsbUJBQWUsSUFEUztRQUVqQywwQkFDSDtRQUFBLGlCQUFlLEVBQUE7UUFFakIsNkVBU1M7UUFDWCxpQkFBVztRQUVYLHNDQU1rQjs7O1FBaEJHLGdCQUFRO1FBQVIsbUNBQVE7UUFXM0IsZUFBaUM7UUFBakMsdUNBQWlDLGlCQUFBOzt1RkRoQ3RCLG9CQUFvQjtjQUxoQyxTQUFTOzJCQUNFLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQcmVzZXRWaWV3IH0gZnJvbSAncGhvZW5peC1ldmVudC1kaXNwbGF5JztcbmltcG9ydCB7IE1hdENoZWNrYm94Q2hhbmdlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgRXZlbnREaXNwbGF5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2V2ZW50LWRpc3BsYXkuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC12aWV3LW9wdGlvbnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vdmlldy1vcHRpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdmlldy1vcHRpb25zLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFZpZXdPcHRpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgdmlld3M6IFByZXNldFZpZXdbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGV2ZW50RGlzcGxheTogRXZlbnREaXNwbGF5U2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnZpZXdzID0gdGhpcy5ldmVudERpc3BsYXkuZ2V0VUlNYW5hZ2VyKCkuZ2V0UHJlc2V0Vmlld3MoKTtcbiAgfVxuXG4gIGRpc3BsYXlWaWV3KCRldmVudDogYW55LCB2aWV3OiBQcmVzZXRWaWV3KSB7XG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuZXZlbnREaXNwbGF5LmdldFVJTWFuYWdlcigpLmRpc3BsYXlWaWV3KHZpZXcpO1xuICB9XG5cbiAgc2V0QXhpcyhjaGFuZ2U6IE1hdENoZWNrYm94Q2hhbmdlKSB7XG4gICAgY29uc3QgdmFsdWUgPSBjaGFuZ2UuY2hlY2tlZDtcbiAgICB0aGlzLmV2ZW50RGlzcGxheS5nZXRVSU1hbmFnZXIoKS5zZXRTaG93QXhpcyh2YWx1ZSk7XG4gIH1cblxuICBzZXRHcmlkKGNoYW5nZTogTWF0Q2hlY2tib3hDaGFuZ2UpIHtcbiAgICBjb25zdCB2YWx1ZSA9IGNoYW5nZS5jaGVja2VkO1xuICAgIHRoaXMuZXZlbnREaXNwbGF5LmdldFVJTWFuYWdlcigpLnNldFNob3dHcmlkKHZhbHVlKTtcbiAgfVxufVxuIiwiPG1hdC1tZW51ICN2aWV3T3B0aW9ucz5cbiAgPGJ1dHRvblxuICAgIG1hdC1tZW51LWl0ZW1cbiAgICAoY2xpY2spPVwiXG4gICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBzaG93R3JpZENoZWNrYm94Ll9pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5jbGljaygpXG4gICAgXCJcbiAgPlxuICAgIDxtYXQtY2hlY2tib3hcbiAgICAgICNzaG93R3JpZENoZWNrYm94XG4gICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgIChjaGFuZ2UpPVwic2V0R3JpZCgkZXZlbnQpXCJcbiAgICAgID5TaG93IEdyaWRcbiAgICA8L21hdC1jaGVja2JveD5cbiAgPC9idXR0b24+XG4gIDxidXR0b25cbiAgICBtYXQtbWVudS1pdGVtXG4gICAgKGNsaWNrKT1cIlxuICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgc2hvd0F4aXNDaGVja2JveC5faW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKVxuICAgIFwiXG4gID5cbiAgICA8bWF0LWNoZWNrYm94XG4gICAgICAjc2hvd0F4aXNDaGVja2JveFxuICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAoY2hhbmdlKT1cInNldEF4aXMoJGV2ZW50KVwiXG4gICAgICA+U2hvdyBBeGlzXG4gICAgPC9tYXQtY2hlY2tib3g+XG4gIDwvYnV0dG9uPlxuICA8YnV0dG9uXG4gICAgbWF0LW1lbnUtaXRlbVxuICAgICpuZ0Zvcj1cImxldCB2aWV3IG9mIHZpZXdzXCJcbiAgICAoY2xpY2spPVwiZGlzcGxheVZpZXcoJGV2ZW50LCB2aWV3KVwiXG4gID5cbiAgICA8c3ZnIGNsYXNzPVwidmlldy1pY29uXCIgKm5nSWY9XCJ2aWV3Lmljb25cIj5cbiAgICAgIDx1c2UgYXR0ci5ocmVmPVwiYXNzZXRzL2ljb25zL3t7IHZpZXcuaWNvbiB9fS5zdmcje3sgdmlldy5pY29uIH19XCI+PC91c2U+XG4gICAgPC9zdmc+XG4gICAge3sgdmlldy5uYW1lIH19XG4gIDwvYnV0dG9uPlxuPC9tYXQtbWVudT5cblxuPGFwcC1tZW51LXRvZ2dsZVxuICBbbWF0TWVudVRyaWdnZXJGb3JdPVwidmlld09wdGlvbnNcIlxuICB0b29sdGlwPVwiVmlldyBvcHRpb25zXCJcbiAgaWNvbj1cInZpZXdzXCJcbiAgW2FjdGl2ZV09XCJmYWxzZVwiXG4+XG48L2FwcC1tZW51LXRvZ2dsZT5cbiJdfQ==
@@ -35,10 +35,16 @@ export class VrToggleComponent {
35
35
  }
36
36
  }
37
37
  }
38
- VrToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: VrToggleComponent, deps: [{ token: i1.EventDisplayService }], target: i0.ɵɵFactoryTarget.Component });
39
- VrToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: VrToggleComponent, selector: "app-vr-toggle", ngImport: i0, template: "<app-menu-toggle\n [disabled]=\"!vrSupported\"\n [active]=\"vrActive\"\n icon=\"vr\"\n (click)=\"vrSupported && toggleVr()\"\n [tooltip]=\"\n vrSupported ? (vrActive ? 'Exit VR' : 'Enter VR') : 'VR not supported'\n \"\n>\n</app-menu-toggle>\n", styles: [""], dependencies: [{ kind: "component", type: i2.MenuToggleComponent, selector: "app-menu-toggle", inputs: ["icon", "active", "tooltip", "disabled"] }] });
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: VrToggleComponent, decorators: [{
41
- type: Component,
42
- args: [{ selector: 'app-vr-toggle', template: "<app-menu-toggle\n [disabled]=\"!vrSupported\"\n [active]=\"vrActive\"\n icon=\"vr\"\n (click)=\"vrSupported && toggleVr()\"\n [tooltip]=\"\n vrSupported ? (vrActive ? 'Exit VR' : 'Enter VR') : 'VR not supported'\n \"\n>\n</app-menu-toggle>\n" }]
43
- }], ctorParameters: function () { return [{ type: i1.EventDisplayService }]; } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnItdG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvdnItdG9nZ2xlL3ZyLXRvZ2dsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3ZyLXRvZ2dsZS92ci10b2dnbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7O0FBT2pFLE1BQU0sT0FBTyxpQkFBaUI7SUFJNUIsWUFBb0IsWUFBaUM7UUFBakMsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBSHJELGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzdCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFHeEIseUNBQXlDO1FBQ3pDLHNKQUFzSjtRQUNySixTQUFpQixFQUFFLEVBQUU7WUFDcEIsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUM7YUFDN0MsSUFBSSxDQUFDLENBQUMsU0FBa0IsRUFBRSxFQUFFO1lBQzNCLElBQUksU0FBUyxFQUFFO2dCQUNiLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxDQUFDO2FBQ0QsS0FBSyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxRQUFRO1FBQ04sb0JBQW9CO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEVBQUUsR0FBRyxFQUFFO2dCQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztnQkFDdEIsZ0RBQWdEO2dCQUNoRCxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDNUMsQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztTQUN0QjthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1NBQ3ZCO0lBQ0gsQ0FBQzs7OEdBOUJVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHFEQ1Q5Qiw2UEFVQTsyRkREYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZlbnREaXNwbGF5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2V2ZW50LWRpc3BsYXkuc2VydmljZSc7XG5pbXBvcnQgeyBWUk1hbmFnZXIsIFhSU2Vzc2lvblR5cGUgfSBmcm9tICdwaG9lbml4LWV2ZW50LWRpc3BsYXknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtdnItdG9nZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3ZyLXRvZ2dsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3ZyLXRvZ2dsZS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBWclRvZ2dsZUNvbXBvbmVudCB7XG4gIHZyU3VwcG9ydGVkOiBib29sZWFuID0gZmFsc2U7XG4gIHZyQWN0aXZlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBldmVudERpc3BsYXk6IEV2ZW50RGlzcGxheVNlcnZpY2UpIHtcbiAgICAvLyBOT1RFOiBXZWJYUiBuZWVkcyBzZWN1cmUgSFRUUFMgY29udGV4dFxuICAgIC8vIFF1ZXJ5IGZvciBwZXJtaXNzaW9ucyBvZiBYUiBiZWZvcmUgdXNpbmcgaXQgKG5vdCBzdXBwb3J0ZWQgYnkgYnJvd3NlcnMgeWV0KS4gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9QZXJtaXNzaW9ucy9xdWVyeVxuICAgIChuYXZpZ2F0b3IgYXMgYW55KT8ueHJcbiAgICAgID8uaXNTZXNzaW9uU3VwcG9ydGVkPy4oVlJNYW5hZ2VyLlNFU1NJT05fVFlQRSlcbiAgICAgIC50aGVuKChzdXBwb3J0ZWQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgaWYgKHN1cHBvcnRlZCkge1xuICAgICAgICAgIHRoaXMudnJTdXBwb3J0ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnI6IGFueSkgPT4gY29uc29sZS53YXJuKCdFcnJvciBpbiBWUicsIGVycikpO1xuICB9XG5cbiAgdG9nZ2xlVnIoKSB7XG4gICAgLy8gSWYgdG9nZ2xpbmcgVlIgb25cbiAgICBpZiAoIXRoaXMudnJBY3RpdmUpIHtcbiAgICAgIHRoaXMuZXZlbnREaXNwbGF5LmluaXRYUihYUlNlc3Npb25UeXBlLlZSLCAoKSA9PiB7XG4gICAgICAgIHRoaXMudnJBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgLy8gRGlzYWJsZSByZW5kZXJlciBYUiBhbmQgcmVtb3ZlIGFuaW1hdGlvbiBsb29wXG4gICAgICAgIHRoaXMuZXZlbnREaXNwbGF5LmVuZFhSKFhSU2Vzc2lvblR5cGUuVlIpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLnZyQWN0aXZlID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5ldmVudERpc3BsYXkuZW5kWFIoWFJTZXNzaW9uVHlwZS5WUik7XG4gICAgICB0aGlzLnZyQWN0aXZlID0gZmFsc2U7XG4gICAgfVxuICB9XG59XG4iLCI8YXBwLW1lbnUtdG9nZ2xlXG4gIFtkaXNhYmxlZF09XCIhdnJTdXBwb3J0ZWRcIlxuICBbYWN0aXZlXT1cInZyQWN0aXZlXCJcbiAgaWNvbj1cInZyXCJcbiAgKGNsaWNrKT1cInZyU3VwcG9ydGVkICYmIHRvZ2dsZVZyKClcIlxuICBbdG9vbHRpcF09XCJcbiAgICB2clN1cHBvcnRlZCA/ICh2ckFjdGl2ZSA/ICdFeGl0IFZSJyA6ICdFbnRlciBWUicpIDogJ1ZSIG5vdCBzdXBwb3J0ZWQnXG4gIFwiXG4+XG48L2FwcC1tZW51LXRvZ2dsZT5cbiJdfQ==
38
+ VrToggleComponent.ɵfac = function VrToggleComponent_Factory(t) { return new (t || VrToggleComponent)(i0.ɵɵdirectiveInject(i1.EventDisplayService)); };
39
+ VrToggleComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: VrToggleComponent, selectors: [["app-vr-toggle"]], decls: 1, vars: 3, consts: [["icon", "vr", 3, "disabled", "active", "tooltip", "click"]], template: function VrToggleComponent_Template(rf, ctx) { if (rf & 1) {
40
+ i0.ɵɵelementStart(0, "app-menu-toggle", 0);
41
+ i0.ɵɵlistener("click", function VrToggleComponent_Template_app_menu_toggle_click_0_listener() { return ctx.vrSupported && ctx.toggleVr(); });
42
+ i0.ɵɵelementEnd();
43
+ } if (rf & 2) {
44
+ i0.ɵɵproperty("disabled", !ctx.vrSupported)("active", ctx.vrActive)("tooltip", ctx.vrSupported ? ctx.vrActive ? "Exit VR" : "Enter VR" : "VR not supported");
45
+ } }, dependencies: [i2.MenuToggleComponent] });
46
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(VrToggleComponent, [{
47
+ type: Component,
48
+ args: [{ selector: 'app-vr-toggle', template: "<app-menu-toggle\n [disabled]=\"!vrSupported\"\n [active]=\"vrActive\"\n icon=\"vr\"\n (click)=\"vrSupported && toggleVr()\"\n [tooltip]=\"\n vrSupported ? (vrActive ? 'Exit VR' : 'Enter VR') : 'VR not supported'\n \"\n>\n</app-menu-toggle>\n" }]
49
+ }], function () { return [{ type: i1.EventDisplayService }]; }, null); })();
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnItdG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvdnItdG9nZ2xlL3ZyLXRvZ2dsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3ZyLXRvZ2dsZS92ci10b2dnbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7O0FBT2pFLE1BQU0sT0FBTyxpQkFBaUI7SUFJNUIsWUFBb0IsWUFBaUM7UUFBakMsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBSHJELGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzdCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFHeEIseUNBQXlDO1FBQ3pDLHNKQUFzSjtRQUNySixTQUFpQixFQUFFLEVBQUU7WUFDcEIsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUM7YUFDN0MsSUFBSSxDQUFDLENBQUMsU0FBa0IsRUFBRSxFQUFFO1lBQzNCLElBQUksU0FBUyxFQUFFO2dCQUNiLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxDQUFDO2FBQ0QsS0FBSyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxRQUFRO1FBQ04sb0JBQW9CO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEVBQUUsR0FBRyxFQUFFO2dCQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztnQkFDdEIsZ0RBQWdEO2dCQUNoRCxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDNUMsQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztTQUN0QjthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1NBQ3ZCO0lBQ0gsQ0FBQzs7a0ZBOUJVLGlCQUFpQjtvRUFBakIsaUJBQWlCO1FDVDlCLDBDQVFDO1FBSkMsMEhBQXdCLGNBQVUsSUFBQztRQUtyQyxpQkFBa0I7O1FBUmhCLDJDQUF5Qix3QkFBQSx5RkFBQTs7dUZEUWQsaUJBQWlCO2NBTDdCLFNBQVM7MkJBQ0UsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZlbnREaXNwbGF5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2V2ZW50LWRpc3BsYXkuc2VydmljZSc7XG5pbXBvcnQgeyBWUk1hbmFnZXIsIFhSU2Vzc2lvblR5cGUgfSBmcm9tICdwaG9lbml4LWV2ZW50LWRpc3BsYXknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtdnItdG9nZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3ZyLXRvZ2dsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3ZyLXRvZ2dsZS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBWclRvZ2dsZUNvbXBvbmVudCB7XG4gIHZyU3VwcG9ydGVkOiBib29sZWFuID0gZmFsc2U7XG4gIHZyQWN0aXZlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBldmVudERpc3BsYXk6IEV2ZW50RGlzcGxheVNlcnZpY2UpIHtcbiAgICAvLyBOT1RFOiBXZWJYUiBuZWVkcyBzZWN1cmUgSFRUUFMgY29udGV4dFxuICAgIC8vIFF1ZXJ5IGZvciBwZXJtaXNzaW9ucyBvZiBYUiBiZWZvcmUgdXNpbmcgaXQgKG5vdCBzdXBwb3J0ZWQgYnkgYnJvd3NlcnMgeWV0KS4gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9QZXJtaXNzaW9ucy9xdWVyeVxuICAgIChuYXZpZ2F0b3IgYXMgYW55KT8ueHJcbiAgICAgID8uaXNTZXNzaW9uU3VwcG9ydGVkPy4oVlJNYW5hZ2VyLlNFU1NJT05fVFlQRSlcbiAgICAgIC50aGVuKChzdXBwb3J0ZWQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgaWYgKHN1cHBvcnRlZCkge1xuICAgICAgICAgIHRoaXMudnJTdXBwb3J0ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnI6IGFueSkgPT4gY29uc29sZS53YXJuKCdFcnJvciBpbiBWUicsIGVycikpO1xuICB9XG5cbiAgdG9nZ2xlVnIoKSB7XG4gICAgLy8gSWYgdG9nZ2xpbmcgVlIgb25cbiAgICBpZiAoIXRoaXMudnJBY3RpdmUpIHtcbiAgICAgIHRoaXMuZXZlbnREaXNwbGF5LmluaXRYUihYUlNlc3Npb25UeXBlLlZSLCAoKSA9PiB7XG4gICAgICAgIHRoaXMudnJBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgLy8gRGlzYWJsZSByZW5kZXJlciBYUiBhbmQgcmVtb3ZlIGFuaW1hdGlvbiBsb29wXG4gICAgICAgIHRoaXMuZXZlbnREaXNwbGF5LmVuZFhSKFhSU2Vzc2lvblR5cGUuVlIpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLnZyQWN0aXZlID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5ldmVudERpc3BsYXkuZW5kWFIoWFJTZXNzaW9uVHlwZS5WUik7XG4gICAgICB0aGlzLnZyQWN0aXZlID0gZmFsc2U7XG4gICAgfVxuICB9XG59XG4iLCI8YXBwLW1lbnUtdG9nZ2xlXG4gIFtkaXNhYmxlZF09XCIhdnJTdXBwb3J0ZWRcIlxuICBbYWN0aXZlXT1cInZyQWN0aXZlXCJcbiAgaWNvbj1cInZyXCJcbiAgKGNsaWNrKT1cInZyU3VwcG9ydGVkICYmIHRvZ2dsZVZyKClcIlxuICBbdG9vbHRpcF09XCJcbiAgICB2clN1cHBvcnRlZCA/ICh2ckFjdGl2ZSA/ICdFeGl0IFZSJyA6ICdFbnRlciBWUicpIDogJ1ZSIG5vdCBzdXBwb3J0ZWQnXG4gIFwiXG4+XG48L2FwcC1tZW51LXRvZ2dsZT5cbiJdfQ==
@@ -52,10 +52,22 @@ export class ZoomControlsComponent {
52
52
  clearTimeout(this.zoomTimeout);
53
53
  }
54
54
  }
55
- ZoomControlsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ZoomControlsComponent, deps: [{ token: i1.EventDisplayService }], target: i0.ɵɵFactoryTarget.Component });
56
- ZoomControlsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: ZoomControlsComponent, selector: "app-zoom-controls", ngImport: i0, template: "<div class=\"d-flex\">\n <app-menu-toggle\n tooltip=\"Zoom out (hold)\"\n icon=\"zoom-out\"\n [active]=\"false\"\n (click)=\"zoomOut(true); clearZoom()\"\n (touchstart)=\"zoomOut(true)\"\n (mousedown)=\"zoomOut($event.button === 0)\"\n (mouseup)=\"clearZoom()\"\n (mouseleave)=\"clearZoom()\"\n (touchend)=\"clearZoom()\"\n (touchcancel)=\"clearZoom()\"\n (touchmove)=\"clearZoom()\"\n >\n </app-menu-toggle>\n <app-menu-toggle\n tooltip=\"Zoom in (hold)\"\n icon=\"zoom-in\"\n [active]=\"false\"\n (click)=\"zoomIn(true); clearZoom()\"\n (touchstart)=\"zoomIn(true)\"\n (mousedown)=\"zoomIn($event.button === 0)\"\n (mouseup)=\"clearZoom()\"\n (mouseleave)=\"clearZoom()\"\n (touchend)=\"clearZoom()\"\n (touchcancel)=\"clearZoom()\"\n (touchmove)=\"clearZoom()\"\n >\n </app-menu-toggle>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: i2.MenuToggleComponent, selector: "app-menu-toggle", inputs: ["icon", "active", "tooltip", "disabled"] }] });
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ZoomControlsComponent, decorators: [{
58
- type: Component,
59
- args: [{ selector: 'app-zoom-controls', template: "<div class=\"d-flex\">\n <app-menu-toggle\n tooltip=\"Zoom out (hold)\"\n icon=\"zoom-out\"\n [active]=\"false\"\n (click)=\"zoomOut(true); clearZoom()\"\n (touchstart)=\"zoomOut(true)\"\n (mousedown)=\"zoomOut($event.button === 0)\"\n (mouseup)=\"clearZoom()\"\n (mouseleave)=\"clearZoom()\"\n (touchend)=\"clearZoom()\"\n (touchcancel)=\"clearZoom()\"\n (touchmove)=\"clearZoom()\"\n >\n </app-menu-toggle>\n <app-menu-toggle\n tooltip=\"Zoom in (hold)\"\n icon=\"zoom-in\"\n [active]=\"false\"\n (click)=\"zoomIn(true); clearZoom()\"\n (touchstart)=\"zoomIn(true)\"\n (mousedown)=\"zoomIn($event.button === 0)\"\n (mouseup)=\"clearZoom()\"\n (mouseleave)=\"clearZoom()\"\n (touchend)=\"clearZoom()\"\n (touchcancel)=\"clearZoom()\"\n (touchmove)=\"clearZoom()\"\n >\n </app-menu-toggle>\n</div>\n" }]
60
- }], ctorParameters: function () { return [{ type: i1.EventDisplayService }]; } });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiem9vbS1jb250cm9scy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3pvb20tY29udHJvbHMvem9vbS1jb250cm9scy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3pvb20tY29udHJvbHMvem9vbS1jb250cm9scy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBRzFDOztHQUVHO0FBTUgsTUFBTSxPQUFPLHFCQUFxQjtJQVVoQyxZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFQckQseUJBQXlCO1FBQ2pCLGVBQVUsR0FBVyxHQUFHLENBQUM7UUFHakMsa0NBQWtDO1FBQzFCLGFBQVEsR0FBVyxHQUFHLENBQUM7SUFFeUIsQ0FBQztJQUV6RDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFVBQWtCO1FBQ3ZCLElBQUksQ0FBQyxRQUFRO1lBQ1gsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUV2RSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXBELElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFCLENBQUMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxTQUFrQjtRQUN2QixJQUFJLFNBQVMsRUFBRTtZQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUNsQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxPQUFPLENBQUMsU0FBa0I7UUFDeEIsSUFBSSxTQUFTLEVBQUU7WUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUM5QjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVM7UUFDUCxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQztRQUNwQixZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7O2tIQXREVSxxQkFBcUI7c0dBQXJCLHFCQUFxQix5RENYbEMseTJCQThCQTsyRkRuQmEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZlbnREaXNwbGF5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2V2ZW50LWRpc3BsYXkuc2VydmljZSc7XG5cbi8qKlxuICogQ29tcG9uZW50IGZvciBhZGRpbmcgem9vbSBjb250cm9scyBmb3IgdGhlIG1haW4gYW5kIG92ZXJsYXkgY2FtZXJhcy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXpvb20tY29udHJvbHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vem9vbS1jb250cm9scy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3pvb20tY29udHJvbHMuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgWm9vbUNvbnRyb2xzQ29tcG9uZW50IHtcbiAgLyoqIEFsbCBjYW1lcmEgYmVpbmcgdXNlZCBieSB0aGUgc2NlbmUuICovXG4gIGFsbENhbWVyYXM6IGFueVtdO1xuICAvKiogRmFjdG9yIHRvIHpvb20gYnkuICovXG4gIHByaXZhdGUgem9vbUZhY3RvcjogbnVtYmVyID0gMS4xO1xuICAvKiogVGltZW91dCBmb3IgY2xlYXJpbmcgbW91c2UgaG9sZC4gKi9cbiAgcHJpdmF0ZSB6b29tVGltZW91dDogYW55O1xuICAvKiogVGhlIHNwZWVkIGFuZCB0aW1lIG9mIHpvb20uICovXG4gIHByaXZhdGUgem9vbVRpbWU6IG51bWJlciA9IDIwMDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGV2ZW50RGlzcGxheTogRXZlbnREaXNwbGF5U2VydmljZSkge31cblxuICAvKipcbiAgICogWm9vbSBhbGwgdGhlIGNhbWVyYXMgYnkgYSBzcGVjaWZpYyB6b29tIGZhY3Rvci5cbiAgICogVGhlIGZhY3RvciBtYXkgZWl0aGVyIGJlIGdyZWF0ZXIgKHpvb20gaW4pIG9yIHNtYWxsZXIgKHpvb20gb3V0KSB0aGFuIDEuXG4gICAqIEBwYXJhbSB6b29tRmFjdG9yIFRoZSBmYWN0b3IgdG8gem9vbSBieS5cbiAgICovXG4gIHpvb21Ubyh6b29tRmFjdG9yOiBudW1iZXIpIHtcbiAgICB0aGlzLnpvb21UaW1lID1cbiAgICAgIHRoaXMuem9vbVRpbWUgPiAzMCA/IE1hdGguZmxvb3IodGhpcy56b29tVGltZSAvIDEuMSkgOiB0aGlzLnpvb21UaW1lO1xuXG4gICAgdGhpcy5ldmVudERpc3BsYXkuem9vbVRvKHpvb21GYWN0b3IsIHRoaXMuem9vbVRpbWUpO1xuXG4gICAgdGhpcy56b29tVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy56b29tVG8oem9vbUZhY3Rvcik7XG4gICAgfSwgdGhpcy56b29tVGltZSk7XG4gIH1cblxuICAvKipcbiAgICogWm9vbSB0aGUgY2FtZXJhIGluLlxuICAgKiBAcGFyYW0gbGVmdENsaWNrIFdoZXRoZXIgdGhlIG1vdXNlIGNsaWNrIGlzIGxlZnQgb3Igbm90LlxuICAgKi9cbiAgem9vbUluKGxlZnRDbGljazogYm9vbGVhbikge1xuICAgIGlmIChsZWZ0Q2xpY2spIHtcbiAgICAgIHRoaXMuem9vbVRvKDEgLyB0aGlzLnpvb21GYWN0b3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBab29tIHRoZSBjYW1lcmEgb3V0LlxuICAgKiBAcGFyYW0gbGVmdENsaWNrIFdoZXRoZXIgdGhlIG1vdXNlIGNsaWNrIGlzIGxlZnQgb3Igbm90LnNcbiAgICovXG4gIHpvb21PdXQobGVmdENsaWNrOiBib29sZWFuKSB7XG4gICAgaWYgKGxlZnRDbGljaykge1xuICAgICAgdGhpcy56b29tVG8odGhpcy56b29tRmFjdG9yKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVzZXQgdGhlIHpvb20gdGltZSB3aGljaCBkZWNyZWFzZXMgdXBvbiBob2xkIGFuZCBjbGVhciB0aGUgem9vbSB0aW1lb3V0LlxuICAgKi9cbiAgY2xlYXJab29tKCkge1xuICAgIHRoaXMuem9vbVRpbWUgPSAyMDA7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuem9vbVRpbWVvdXQpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XG4gIDxhcHAtbWVudS10b2dnbGVcbiAgICB0b29sdGlwPVwiWm9vbSBvdXQgKGhvbGQpXCJcbiAgICBpY29uPVwiem9vbS1vdXRcIlxuICAgIFthY3RpdmVdPVwiZmFsc2VcIlxuICAgIChjbGljayk9XCJ6b29tT3V0KHRydWUpOyBjbGVhclpvb20oKVwiXG4gICAgKHRvdWNoc3RhcnQpPVwiem9vbU91dCh0cnVlKVwiXG4gICAgKG1vdXNlZG93bik9XCJ6b29tT3V0KCRldmVudC5idXR0b24gPT09IDApXCJcbiAgICAobW91c2V1cCk9XCJjbGVhclpvb20oKVwiXG4gICAgKG1vdXNlbGVhdmUpPVwiY2xlYXJab29tKClcIlxuICAgICh0b3VjaGVuZCk9XCJjbGVhclpvb20oKVwiXG4gICAgKHRvdWNoY2FuY2VsKT1cImNsZWFyWm9vbSgpXCJcbiAgICAodG91Y2htb3ZlKT1cImNsZWFyWm9vbSgpXCJcbiAgPlxuICA8L2FwcC1tZW51LXRvZ2dsZT5cbiAgPGFwcC1tZW51LXRvZ2dsZVxuICAgIHRvb2x0aXA9XCJab29tIGluIChob2xkKVwiXG4gICAgaWNvbj1cInpvb20taW5cIlxuICAgIFthY3RpdmVdPVwiZmFsc2VcIlxuICAgIChjbGljayk9XCJ6b29tSW4odHJ1ZSk7IGNsZWFyWm9vbSgpXCJcbiAgICAodG91Y2hzdGFydCk9XCJ6b29tSW4odHJ1ZSlcIlxuICAgIChtb3VzZWRvd24pPVwiem9vbUluKCRldmVudC5idXR0b24gPT09IDApXCJcbiAgICAobW91c2V1cCk9XCJjbGVhclpvb20oKVwiXG4gICAgKG1vdXNlbGVhdmUpPVwiY2xlYXJab29tKClcIlxuICAgICh0b3VjaGVuZCk9XCJjbGVhclpvb20oKVwiXG4gICAgKHRvdWNoY2FuY2VsKT1cImNsZWFyWm9vbSgpXCJcbiAgICAodG91Y2htb3ZlKT1cImNsZWFyWm9vbSgpXCJcbiAgPlxuICA8L2FwcC1tZW51LXRvZ2dsZT5cbjwvZGl2PlxuIl19
55
+ ZoomControlsComponent.ɵfac = function ZoomControlsComponent_Factory(t) { return new (t || ZoomControlsComponent)(i0.ɵɵdirectiveInject(i1.EventDisplayService)); };
56
+ ZoomControlsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ZoomControlsComponent, selectors: [["app-zoom-controls"]], decls: 3, vars: 2, consts: [[1, "d-flex"], ["tooltip", "Zoom out (hold)", "icon", "zoom-out", 3, "active", "click", "touchstart", "mousedown", "mouseup", "mouseleave", "touchend", "touchcancel", "touchmove"], ["tooltip", "Zoom in (hold)", "icon", "zoom-in", 3, "active", "click", "touchstart", "mousedown", "mouseup", "mouseleave", "touchend", "touchcancel", "touchmove"]], template: function ZoomControlsComponent_Template(rf, ctx) { if (rf & 1) {
57
+ i0.ɵɵelementStart(0, "div", 0)(1, "app-menu-toggle", 1);
58
+ i0.ɵɵlistener("click", function ZoomControlsComponent_Template_app_menu_toggle_click_1_listener() { ctx.zoomOut(true); return ctx.clearZoom(); })("touchstart", function ZoomControlsComponent_Template_app_menu_toggle_touchstart_1_listener() { return ctx.zoomOut(true); })("mousedown", function ZoomControlsComponent_Template_app_menu_toggle_mousedown_1_listener($event) { return ctx.zoomOut($event.button === 0); })("mouseup", function ZoomControlsComponent_Template_app_menu_toggle_mouseup_1_listener() { return ctx.clearZoom(); })("mouseleave", function ZoomControlsComponent_Template_app_menu_toggle_mouseleave_1_listener() { return ctx.clearZoom(); })("touchend", function ZoomControlsComponent_Template_app_menu_toggle_touchend_1_listener() { return ctx.clearZoom(); })("touchcancel", function ZoomControlsComponent_Template_app_menu_toggle_touchcancel_1_listener() { return ctx.clearZoom(); })("touchmove", function ZoomControlsComponent_Template_app_menu_toggle_touchmove_1_listener() { return ctx.clearZoom(); });
59
+ i0.ɵɵelementEnd();
60
+ i0.ɵɵelementStart(2, "app-menu-toggle", 2);
61
+ i0.ɵɵlistener("click", function ZoomControlsComponent_Template_app_menu_toggle_click_2_listener() { ctx.zoomIn(true); return ctx.clearZoom(); })("touchstart", function ZoomControlsComponent_Template_app_menu_toggle_touchstart_2_listener() { return ctx.zoomIn(true); })("mousedown", function ZoomControlsComponent_Template_app_menu_toggle_mousedown_2_listener($event) { return ctx.zoomIn($event.button === 0); })("mouseup", function ZoomControlsComponent_Template_app_menu_toggle_mouseup_2_listener() { return ctx.clearZoom(); })("mouseleave", function ZoomControlsComponent_Template_app_menu_toggle_mouseleave_2_listener() { return ctx.clearZoom(); })("touchend", function ZoomControlsComponent_Template_app_menu_toggle_touchend_2_listener() { return ctx.clearZoom(); })("touchcancel", function ZoomControlsComponent_Template_app_menu_toggle_touchcancel_2_listener() { return ctx.clearZoom(); })("touchmove", function ZoomControlsComponent_Template_app_menu_toggle_touchmove_2_listener() { return ctx.clearZoom(); });
62
+ i0.ɵɵelementEnd()();
63
+ } if (rf & 2) {
64
+ i0.ɵɵadvance(1);
65
+ i0.ɵɵproperty("active", false);
66
+ i0.ɵɵadvance(1);
67
+ i0.ɵɵproperty("active", false);
68
+ } }, dependencies: [i2.MenuToggleComponent] });
69
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ZoomControlsComponent, [{
70
+ type: Component,
71
+ args: [{ selector: 'app-zoom-controls', template: "<div class=\"d-flex\">\n <app-menu-toggle\n tooltip=\"Zoom out (hold)\"\n icon=\"zoom-out\"\n [active]=\"false\"\n (click)=\"zoomOut(true); clearZoom()\"\n (touchstart)=\"zoomOut(true)\"\n (mousedown)=\"zoomOut($event.button === 0)\"\n (mouseup)=\"clearZoom()\"\n (mouseleave)=\"clearZoom()\"\n (touchend)=\"clearZoom()\"\n (touchcancel)=\"clearZoom()\"\n (touchmove)=\"clearZoom()\"\n >\n </app-menu-toggle>\n <app-menu-toggle\n tooltip=\"Zoom in (hold)\"\n icon=\"zoom-in\"\n [active]=\"false\"\n (click)=\"zoomIn(true); clearZoom()\"\n (touchstart)=\"zoomIn(true)\"\n (mousedown)=\"zoomIn($event.button === 0)\"\n (mouseup)=\"clearZoom()\"\n (mouseleave)=\"clearZoom()\"\n (touchend)=\"clearZoom()\"\n (touchcancel)=\"clearZoom()\"\n (touchmove)=\"clearZoom()\"\n >\n </app-menu-toggle>\n</div>\n" }]
72
+ }], function () { return [{ type: i1.EventDisplayService }]; }, null); })();
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiem9vbS1jb250cm9scy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3pvb20tY29udHJvbHMvem9vbS1jb250cm9scy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L3pvb20tY29udHJvbHMvem9vbS1jb250cm9scy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBRzFDOztHQUVHO0FBTUgsTUFBTSxPQUFPLHFCQUFxQjtJQVVoQyxZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFQckQseUJBQXlCO1FBQ2pCLGVBQVUsR0FBVyxHQUFHLENBQUM7UUFHakMsa0NBQWtDO1FBQzFCLGFBQVEsR0FBVyxHQUFHLENBQUM7SUFFeUIsQ0FBQztJQUV6RDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFVBQWtCO1FBQ3ZCLElBQUksQ0FBQyxRQUFRO1lBQ1gsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUV2RSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXBELElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFCLENBQUMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxTQUFrQjtRQUN2QixJQUFJLFNBQVMsRUFBRTtZQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUNsQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxPQUFPLENBQUMsU0FBa0I7UUFDeEIsSUFBSSxTQUFTLEVBQUU7WUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUM5QjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVM7UUFDUCxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQztRQUNwQixZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7OzBGQXREVSxxQkFBcUI7d0VBQXJCLHFCQUFxQjtRQ1hsQyw4QkFBb0IseUJBQUE7UUFLaEIsb0dBQVMsWUFBUSxJQUFJLENBQUMsU0FBRSxlQUFXLElBQUMsd0dBQ3RCLFlBQVEsSUFBSSxDQUFDLElBRFMsNEdBRXZCLDhCQUEwQixDQUFDLENBQUMsSUFGTCxrR0FHekIsZUFBVyxJQUhjLHdHQUl0QixlQUFXLElBSlcsb0dBS3hCLGVBQVcsSUFMYSwwR0FNckIsZUFBVyxJQU5VLHNHQU92QixlQUFXLElBUFk7UUFTdEMsaUJBQWtCO1FBQ2xCLDBDQVlDO1FBUkMsb0dBQVMsV0FBTyxJQUFJLENBQUMsU0FBRSxlQUFXLElBQUMsd0dBQ3JCLFdBQU8sSUFBSSxDQUFDLElBRFMsNEdBRXRCLDZCQUF5QixDQUFDLENBQUMsSUFGTCxrR0FHeEIsZUFBVyxJQUhhLHdHQUlyQixlQUFXLElBSlUsb0dBS3ZCLGVBQVcsSUFMWSwwR0FNcEIsZUFBVyxJQU5TLHNHQU90QixlQUFXLElBUFc7UUFTckMsaUJBQWtCLEVBQUE7O1FBeEJoQixlQUFnQjtRQUFoQiw4QkFBZ0I7UUFjaEIsZUFBZ0I7UUFBaEIsOEJBQWdCOzt1RkRQUCxxQkFBcUI7Y0FMakMsU0FBUzsyQkFDRSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV2ZW50RGlzcGxheVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9ldmVudC1kaXNwbGF5LnNlcnZpY2UnO1xuXG4vKipcbiAqIENvbXBvbmVudCBmb3IgYWRkaW5nIHpvb20gY29udHJvbHMgZm9yIHRoZSBtYWluIGFuZCBvdmVybGF5IGNhbWVyYXMuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC16b29tLWNvbnRyb2xzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3pvb20tY29udHJvbHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi96b29tLWNvbnRyb2xzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFpvb21Db250cm9sc0NvbXBvbmVudCB7XG4gIC8qKiBBbGwgY2FtZXJhIGJlaW5nIHVzZWQgYnkgdGhlIHNjZW5lLiAqL1xuICBhbGxDYW1lcmFzOiBhbnlbXTtcbiAgLyoqIEZhY3RvciB0byB6b29tIGJ5LiAqL1xuICBwcml2YXRlIHpvb21GYWN0b3I6IG51bWJlciA9IDEuMTtcbiAgLyoqIFRpbWVvdXQgZm9yIGNsZWFyaW5nIG1vdXNlIGhvbGQuICovXG4gIHByaXZhdGUgem9vbVRpbWVvdXQ6IGFueTtcbiAgLyoqIFRoZSBzcGVlZCBhbmQgdGltZSBvZiB6b29tLiAqL1xuICBwcml2YXRlIHpvb21UaW1lOiBudW1iZXIgPSAyMDA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBldmVudERpc3BsYXk6IEV2ZW50RGlzcGxheVNlcnZpY2UpIHt9XG5cbiAgLyoqXG4gICAqIFpvb20gYWxsIHRoZSBjYW1lcmFzIGJ5IGEgc3BlY2lmaWMgem9vbSBmYWN0b3IuXG4gICAqIFRoZSBmYWN0b3IgbWF5IGVpdGhlciBiZSBncmVhdGVyICh6b29tIGluKSBvciBzbWFsbGVyICh6b29tIG91dCkgdGhhbiAxLlxuICAgKiBAcGFyYW0gem9vbUZhY3RvciBUaGUgZmFjdG9yIHRvIHpvb20gYnkuXG4gICAqL1xuICB6b29tVG8oem9vbUZhY3RvcjogbnVtYmVyKSB7XG4gICAgdGhpcy56b29tVGltZSA9XG4gICAgICB0aGlzLnpvb21UaW1lID4gMzAgPyBNYXRoLmZsb29yKHRoaXMuem9vbVRpbWUgLyAxLjEpIDogdGhpcy56b29tVGltZTtcblxuICAgIHRoaXMuZXZlbnREaXNwbGF5Lnpvb21Ubyh6b29tRmFjdG9yLCB0aGlzLnpvb21UaW1lKTtcblxuICAgIHRoaXMuem9vbVRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuem9vbVRvKHpvb21GYWN0b3IpO1xuICAgIH0sIHRoaXMuem9vbVRpbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFpvb20gdGhlIGNhbWVyYSBpbi5cbiAgICogQHBhcmFtIGxlZnRDbGljayBXaGV0aGVyIHRoZSBtb3VzZSBjbGljayBpcyBsZWZ0IG9yIG5vdC5cbiAgICovXG4gIHpvb21JbihsZWZ0Q2xpY2s6IGJvb2xlYW4pIHtcbiAgICBpZiAobGVmdENsaWNrKSB7XG4gICAgICB0aGlzLnpvb21UbygxIC8gdGhpcy56b29tRmFjdG9yKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogWm9vbSB0aGUgY2FtZXJhIG91dC5cbiAgICogQHBhcmFtIGxlZnRDbGljayBXaGV0aGVyIHRoZSBtb3VzZSBjbGljayBpcyBsZWZ0IG9yIG5vdC5zXG4gICAqL1xuICB6b29tT3V0KGxlZnRDbGljazogYm9vbGVhbikge1xuICAgIGlmIChsZWZ0Q2xpY2spIHtcbiAgICAgIHRoaXMuem9vbVRvKHRoaXMuem9vbUZhY3Rvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0IHRoZSB6b29tIHRpbWUgd2hpY2ggZGVjcmVhc2VzIHVwb24gaG9sZCBhbmQgY2xlYXIgdGhlIHpvb20gdGltZW91dC5cbiAgICovXG4gIGNsZWFyWm9vbSgpIHtcbiAgICB0aGlzLnpvb21UaW1lID0gMjAwO1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnpvb21UaW1lb3V0KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImQtZmxleFwiPlxuICA8YXBwLW1lbnUtdG9nZ2xlXG4gICAgdG9vbHRpcD1cIlpvb20gb3V0IChob2xkKVwiXG4gICAgaWNvbj1cInpvb20tb3V0XCJcbiAgICBbYWN0aXZlXT1cImZhbHNlXCJcbiAgICAoY2xpY2spPVwiem9vbU91dCh0cnVlKTsgY2xlYXJab29tKClcIlxuICAgICh0b3VjaHN0YXJ0KT1cInpvb21PdXQodHJ1ZSlcIlxuICAgIChtb3VzZWRvd24pPVwiem9vbU91dCgkZXZlbnQuYnV0dG9uID09PSAwKVwiXG4gICAgKG1vdXNldXApPVwiY2xlYXJab29tKClcIlxuICAgIChtb3VzZWxlYXZlKT1cImNsZWFyWm9vbSgpXCJcbiAgICAodG91Y2hlbmQpPVwiY2xlYXJab29tKClcIlxuICAgICh0b3VjaGNhbmNlbCk9XCJjbGVhclpvb20oKVwiXG4gICAgKHRvdWNobW92ZSk9XCJjbGVhclpvb20oKVwiXG4gID5cbiAgPC9hcHAtbWVudS10b2dnbGU+XG4gIDxhcHAtbWVudS10b2dnbGVcbiAgICB0b29sdGlwPVwiWm9vbSBpbiAoaG9sZClcIlxuICAgIGljb249XCJ6b29tLWluXCJcbiAgICBbYWN0aXZlXT1cImZhbHNlXCJcbiAgICAoY2xpY2spPVwiem9vbUluKHRydWUpOyBjbGVhclpvb20oKVwiXG4gICAgKHRvdWNoc3RhcnQpPVwiem9vbUluKHRydWUpXCJcbiAgICAobW91c2Vkb3duKT1cInpvb21JbigkZXZlbnQuYnV0dG9uID09PSAwKVwiXG4gICAgKG1vdXNldXApPVwiY2xlYXJab29tKClcIlxuICAgIChtb3VzZWxlYXZlKT1cImNsZWFyWm9vbSgpXCJcbiAgICAodG91Y2hlbmQpPVwiY2xlYXJab29tKClcIlxuICAgICh0b3VjaGNhbmNlbCk9XCJjbGVhclpvb20oKVwiXG4gICAgKHRvdWNobW92ZSk9XCJjbGVhclpvb20oKVwiXG4gID5cbiAgPC9hcHAtbWVudS10b2dnbGU+XG48L2Rpdj5cbiJdfQ==