phoenix-ui-components 3.0.4 → 3.0.6

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 (123) hide show
  1. package/dist/fesm2022/phoenix-ui-components.mjs +2262 -473
  2. package/dist/fesm2022/phoenix-ui-components.mjs.map +1 -1
  3. package/dist/index.d.ts +1109 -3
  4. package/package.json +10 -19
  5. package/dist/components/embed-menu/embed-menu.component.d.ts +0 -5
  6. package/dist/components/embed-menu/experiment-link/experiment-link.component.d.ts +0 -9
  7. package/dist/components/file-explorer/file-explorer.component.d.ts +0 -35
  8. package/dist/components/loader/loader.component.d.ts +0 -11
  9. package/dist/components/nav/nav.component.d.ts +0 -8
  10. package/dist/components/phoenix-menu/config/config-slider/config-slider.component.d.ts +0 -18
  11. package/dist/components/phoenix-menu/index.d.ts +0 -3
  12. package/dist/components/phoenix-menu/phoenix-menu-item/phoenix-menu-item.component.d.ts +0 -14
  13. package/dist/components/phoenix-menu/phoenix-menu.component.d.ts +0 -7
  14. package/dist/components/phoenix-ui.module.d.ts +0 -71
  15. package/dist/components/ring-loader/ring-loader.component.d.ts +0 -5
  16. package/dist/components/ui-menu/animate-camera/animate-camera.component.d.ts +0 -20
  17. package/dist/components/ui-menu/animate-event/animate-event.component.d.ts +0 -10
  18. package/dist/components/ui-menu/ar-toggle/ar-toggle.component.d.ts +0 -11
  19. package/dist/components/ui-menu/auto-rotate/auto-rotate.component.d.ts +0 -10
  20. package/dist/components/ui-menu/collections-info/collections-info-overlay/collections-info-overlay.component.d.ts +0 -29
  21. package/dist/components/ui-menu/collections-info/collections-info.component.d.ts +0 -15
  22. package/dist/components/ui-menu/cycle-events/cycle-events.component.d.ts +0 -21
  23. package/dist/components/ui-menu/dark-theme/dark-theme.component.d.ts +0 -12
  24. package/dist/components/ui-menu/event-data-explorer/event-data-explorer-dialog/event-data-explorer-dialog.component.d.ts +0 -28
  25. package/dist/components/ui-menu/event-data-explorer/event-data-explorer.component.d.ts +0 -13
  26. package/dist/components/ui-menu/event-selector/event-selector.component.d.ts +0 -12
  27. package/dist/components/ui-menu/experiment-info/experiment-info.component.d.ts +0 -14
  28. package/dist/components/ui-menu/geometry-browser/geometry-browser-overlay/geometry-browser-overlay.component.d.ts +0 -22
  29. package/dist/components/ui-menu/geometry-browser/geometry-browser.component.d.ts +0 -15
  30. package/dist/components/ui-menu/index.d.ts +0 -39
  31. package/dist/components/ui-menu/info-panel/info-panel-overlay/info-panel-overlay.component.d.ts +0 -26
  32. package/dist/components/ui-menu/info-panel/info-panel.component.d.ts +0 -33
  33. package/dist/components/ui-menu/io-options/io-options-dialog/io-options-dialog.component.d.ts +0 -34
  34. package/dist/components/ui-menu/io-options/io-options.component.d.ts +0 -11
  35. package/dist/components/ui-menu/main-view-toggle/main-view-toggle.component.d.ts +0 -10
  36. package/dist/components/ui-menu/make-picture/make-picture.component.d.ts +0 -20
  37. package/dist/components/ui-menu/menu-toggle/menu-toggle.component.d.ts +0 -9
  38. package/dist/components/ui-menu/object-clipping/object-clipping.component.d.ts +0 -15
  39. package/dist/components/ui-menu/object-selection/object-selection-overlay/object-selection-overlay.component.d.ts +0 -15
  40. package/dist/components/ui-menu/object-selection/object-selection.component.d.ts +0 -17
  41. package/dist/components/ui-menu/overlay/overlay.component.d.ts +0 -52
  42. package/dist/components/ui-menu/overlay-view/overlay-view-window/overlay-view-window.component.d.ts +0 -20
  43. package/dist/components/ui-menu/overlay-view/overlay-view.component.d.ts +0 -15
  44. package/dist/components/ui-menu/performance-toggle/performance-toggle.component.d.ts +0 -10
  45. package/dist/components/ui-menu/share-link/share-link-dialog/share-link-dialog.component.d.ts +0 -28
  46. package/dist/components/ui-menu/share-link/share-link.component.d.ts +0 -9
  47. package/dist/components/ui-menu/ss-mode/ss-mode.component.d.ts +0 -10
  48. package/dist/components/ui-menu/tree-menu/tree-menu-item/tree-menu-item.component.d.ts +0 -19
  49. package/dist/components/ui-menu/tree-menu/tree-menu.component.d.ts +0 -10
  50. package/dist/components/ui-menu/ui-menu-wrapper/ui-menu-wrapper.component.d.ts +0 -6
  51. package/dist/components/ui-menu/ui-menu.component.d.ts +0 -10
  52. package/dist/components/ui-menu/view-options/cartesian-grid-config/cartesian-grid-config.component.d.ts +0 -51
  53. package/dist/components/ui-menu/view-options/view-options.component.d.ts +0 -33
  54. package/dist/components/ui-menu/vr-toggle/vr-toggle.component.d.ts +0 -11
  55. package/dist/components/ui-menu/zoom-controls/zoom-controls.component.d.ts +0 -39
  56. package/dist/esm2022/components/embed-menu/embed-menu.component.mjs +0 -22
  57. package/dist/esm2022/components/embed-menu/experiment-link/experiment-link.component.mjs +0 -27
  58. package/dist/esm2022/components/file-explorer/file-explorer.component.mjs +0 -109
  59. package/dist/esm2022/components/loader/loader.component.mjs +0 -71
  60. package/dist/esm2022/components/nav/nav.component.mjs +0 -19
  61. package/dist/esm2022/components/phoenix-menu/config/config-slider/config-slider.component.mjs +0 -82
  62. package/dist/esm2022/components/phoenix-menu/index.mjs +0 -4
  63. package/dist/esm2022/components/phoenix-menu/phoenix-menu-item/phoenix-menu-item.component.mjs +0 -308
  64. package/dist/esm2022/components/phoenix-menu/phoenix-menu.component.mjs +0 -23
  65. package/dist/esm2022/components/phoenix-ui.module.mjs +0 -257
  66. package/dist/esm2022/components/ring-loader/ring-loader.component.mjs +0 -16
  67. package/dist/esm2022/components/ui-menu/animate-camera/animate-camera.component.mjs +0 -120
  68. package/dist/esm2022/components/ui-menu/animate-event/animate-event.component.mjs +0 -33
  69. package/dist/esm2022/components/ui-menu/ar-toggle/ar-toggle.component.mjs +0 -83
  70. package/dist/esm2022/components/ui-menu/auto-rotate/auto-rotate.component.mjs +0 -29
  71. package/dist/esm2022/components/ui-menu/collections-info/collections-info-overlay/collections-info-overlay.component.mjs +0 -274
  72. package/dist/esm2022/components/ui-menu/collections-info/collections-info.component.mjs +0 -47
  73. package/dist/esm2022/components/ui-menu/cycle-events/cycle-events.component.mjs +0 -90
  74. package/dist/esm2022/components/ui-menu/dark-theme/dark-theme.component.mjs +0 -32
  75. package/dist/esm2022/components/ui-menu/event-data-explorer/event-data-explorer-dialog/event-data-explorer-dialog.component.mjs +0 -128
  76. package/dist/esm2022/components/ui-menu/event-data-explorer/event-data-explorer.component.mjs +0 -35
  77. package/dist/esm2022/components/ui-menu/event-selector/event-selector.component.mjs +0 -54
  78. package/dist/esm2022/components/ui-menu/experiment-info/experiment-info.component.mjs +0 -100
  79. package/dist/esm2022/components/ui-menu/geometry-browser/geometry-browser-overlay/geometry-browser-overlay.component.mjs +0 -172
  80. package/dist/esm2022/components/ui-menu/geometry-browser/geometry-browser.component.mjs +0 -45
  81. package/dist/esm2022/components/ui-menu/index.mjs +0 -40
  82. package/dist/esm2022/components/ui-menu/info-panel/info-panel-overlay/info-panel-overlay.component.mjs +0 -69
  83. package/dist/esm2022/components/ui-menu/info-panel/info-panel.component.mjs +0 -59
  84. package/dist/esm2022/components/ui-menu/io-options/io-options-dialog/io-options-dialog.component.mjs +0 -304
  85. package/dist/esm2022/components/ui-menu/io-options/io-options.component.mjs +0 -36
  86. package/dist/esm2022/components/ui-menu/main-view-toggle/main-view-toggle.component.mjs +0 -32
  87. package/dist/esm2022/components/ui-menu/make-picture/make-picture.component.mjs +0 -109
  88. package/dist/esm2022/components/ui-menu/menu-toggle/menu-toggle.component.mjs +0 -40
  89. package/dist/esm2022/components/ui-menu/object-clipping/object-clipping.component.mjs +0 -72
  90. package/dist/esm2022/components/ui-menu/object-selection/object-selection-overlay/object-selection-overlay.component.mjs +0 -59
  91. package/dist/esm2022/components/ui-menu/object-selection/object-selection.component.mjs +0 -46
  92. package/dist/esm2022/components/ui-menu/overlay/overlay.component.mjs +0 -197
  93. package/dist/esm2022/components/ui-menu/overlay-view/overlay-view-window/overlay-view-window.component.mjs +0 -83
  94. package/dist/esm2022/components/ui-menu/overlay-view/overlay-view.component.mjs +0 -41
  95. package/dist/esm2022/components/ui-menu/performance-toggle/performance-toggle.component.mjs +0 -29
  96. package/dist/esm2022/components/ui-menu/share-link/share-link-dialog/share-link-dialog.component.mjs +0 -165
  97. package/dist/esm2022/components/ui-menu/share-link/share-link.component.mjs +0 -28
  98. package/dist/esm2022/components/ui-menu/ss-mode/ss-mode.component.mjs +0 -46
  99. package/dist/esm2022/components/ui-menu/tree-menu/tree-menu-item/tree-menu-item.component.mjs +0 -94
  100. package/dist/esm2022/components/ui-menu/tree-menu/tree-menu.component.mjs +0 -78
  101. package/dist/esm2022/components/ui-menu/ui-menu-wrapper/ui-menu-wrapper.component.mjs +0 -34
  102. package/dist/esm2022/components/ui-menu/ui-menu.component.mjs +0 -54
  103. package/dist/esm2022/components/ui-menu/view-options/cartesian-grid-config/cartesian-grid-config.component.mjs +0 -247
  104. package/dist/esm2022/components/ui-menu/view-options/view-options.component.mjs +0 -170
  105. package/dist/esm2022/components/ui-menu/vr-toggle/vr-toggle.component.mjs +0 -52
  106. package/dist/esm2022/components/ui-menu/zoom-controls/zoom-controls.component.mjs +0 -79
  107. package/dist/esm2022/phoenix-ui-components.mjs +0 -5
  108. package/dist/esm2022/public_api.mjs +0 -11
  109. package/dist/esm2022/services/error-message-service.mjs +0 -30
  110. package/dist/esm2022/services/event-display.service.mjs +0 -23
  111. package/dist/esm2022/services/extras/attribute.pipe.mjs +0 -33
  112. package/dist/esm2022/services/extras/event-data-import.mjs +0 -21
  113. package/dist/esm2022/services/file-loader.service.mjs +0 -93
  114. package/dist/esm2022/services/global-error-handler.mjs +0 -30
  115. package/dist/esm2022/services/index.mjs +0 -4
  116. package/dist/public_api.d.ts +0 -10
  117. package/dist/services/error-message-service.d.ts +0 -17
  118. package/dist/services/event-display.service.d.ts +0 -13
  119. package/dist/services/extras/attribute.pipe.d.ts +0 -16
  120. package/dist/services/extras/event-data-import.d.ts +0 -15
  121. package/dist/services/file-loader.service.d.ts +0 -17
  122. package/dist/services/global-error-handler.d.ts +0 -20
  123. package/dist/services/index.d.ts +0 -3
@@ -1,40 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "@angular/material/tooltip";
5
- const _c0 = a0 => ({ disabled: a0 });
6
- const _c1 = a0 => ({ "active-icon": a0 });
7
- export class MenuToggleComponent {
8
- icon;
9
- active;
10
- tooltip;
11
- disabled = false;
12
- static ɵfac = function MenuToggleComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MenuToggleComponent)(); };
13
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuToggleComponent, selectors: [["app-menu-toggle"]], inputs: { icon: "icon", active: "active", tooltip: "tooltip", disabled: "disabled" }, decls: 3, vars: 10, consts: [["matTooltipPosition", "above", "matTooltipTouchGestures", "off", 1, "menu-toggle", 3, "ngClass", "matTooltip"], [1, "menu-toggle-icon", 3, "ngClass"]], template: function MenuToggleComponent_Template(rf, ctx) { if (rf & 1) {
14
- i0.ɵɵelementStart(0, "button", 0);
15
- i0.ɵɵnamespaceSVG();
16
- i0.ɵɵelementStart(1, "svg", 1);
17
- i0.ɵɵelement(2, "use");
18
- i0.ɵɵelementEnd()();
19
- } if (rf & 2) {
20
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(6, _c0, ctx.disabled))("matTooltip", ctx.tooltip);
21
- i0.ɵɵadvance();
22
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(8, _c1, ctx.active));
23
- i0.ɵɵadvance();
24
- i0.ɵɵattributeInterpolate2("href", "assets/icons/", ctx.icon, ".svg#", ctx.icon, "");
25
- } }, dependencies: [i1.NgClass, i2.MatTooltip], styles: ["[_nghost-%COMP%]{display:flex;margin:0 .6rem}[_nghost-%COMP%] .menu-toggle[_ngcontent-%COMP%]{display:flex;background:unset;border:none;height:2.5rem;width:2.5rem;min-height:2.5rem;min-width:2.5rem;padding:.65rem;cursor:pointer;align-self:center;transition:all .4s}[_nghost-%COMP%] .menu-toggle-icon[_ngcontent-%COMP%]{width:100%;height:100%}[_nghost-%COMP%] .menu-toggle-icon.active-icon[_ngcontent-%COMP%]{--phoenix-options-icon-path: #00bcd4}[_nghost-%COMP%] .menu-toggle[_ngcontent-%COMP%]:hover{background-color:var(--phoenix-options-icon-bg);border-radius:40%;transition:all .4s}[_nghost-%COMP%] .menu-toggle.disabled[_ngcontent-%COMP%]{cursor:not-allowed;opacity:.4}"] });
26
- }
27
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuToggleComponent, [{
28
- type: Component,
29
- args: [{ selector: 'app-menu-toggle', template: "<button\n class=\"menu-toggle\"\n [ngClass]=\"{ disabled: disabled }\"\n [matTooltip]=\"tooltip\"\n matTooltipPosition=\"above\"\n matTooltipTouchGestures=\"off\"\n>\n <svg class=\"menu-toggle-icon\" [ngClass]=\"{ 'active-icon': active }\">\n <use attr.href=\"assets/icons/{{ icon }}.svg#{{ icon }}\"></use>\n </svg>\n</button>\n", styles: [":host{display:flex;margin:0 .6rem}:host .menu-toggle{display:flex;background:unset;border:none;height:2.5rem;width:2.5rem;min-height:2.5rem;min-width:2.5rem;padding:.65rem;cursor:pointer;align-self:center;transition:all .4s}:host .menu-toggle-icon{width:100%;height:100%}:host .menu-toggle-icon.active-icon{--phoenix-options-icon-path: #00bcd4}:host .menu-toggle:hover{background-color:var(--phoenix-options-icon-bg);border-radius:40%;transition:all .4s}:host .menu-toggle.disabled{cursor:not-allowed;opacity:.4}\n"] }]
30
- }], null, { icon: [{
31
- type: Input
32
- }], active: [{
33
- type: Input
34
- }], tooltip: [{
35
- type: Input
36
- }], disabled: [{
37
- type: Input
38
- }] }); })();
39
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MenuToggleComponent, { className: "MenuToggleComponent", filePath: "components/ui-menu/menu-toggle/menu-toggle.component.ts", lineNumber: 8 }); })();
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS10b2dnbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvdWktbWVudS9tZW51LXRvZ2dsZS9tZW51LXRvZ2dsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L21lbnUtdG9nZ2xlL21lbnUtdG9nZ2xlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFPakQsTUFBTSxPQUFPLG1CQUFtQjtJQUNyQixJQUFJLENBQVM7SUFDYixNQUFNLENBQVU7SUFDaEIsT0FBTyxDQUFTO0lBQ2hCLFFBQVEsR0FBWSxLQUFLLENBQUM7NkdBSnhCLG1CQUFtQjs2REFBbkIsbUJBQW1CO1lDUGhDLGlDQU1DOztZQUNDLDhCQUFvRTtZQUNsRSxzQkFBOEQ7WUFFbEUsQUFERSxpQkFBTSxFQUNDOztZQVBQLEFBREEsa0VBQWtDLDJCQUNaO1lBSVEsY0FBcUM7WUFBckMsZ0VBQXFDO1lBQzVELGNBQWtEO1lBQWxELG9GQUFrRDs7O2lGREQ5QyxtQkFBbUI7Y0FML0IsU0FBUzsyQkFDRSxpQkFBaUI7Z0JBS2xCLElBQUk7a0JBQVosS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSztZQUNHLE9BQU87a0JBQWYsS0FBSztZQUNHLFFBQVE7a0JBQWhCLEtBQUs7O2tGQUpLLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLW1lbnUtdG9nZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21lbnUtdG9nZ2xlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS10b2dnbGUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTWVudVRvZ2dsZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGljb246IHN0cmluZztcbiAgQElucHV0KCkgYWN0aXZlOiBib29sZWFuO1xuICBASW5wdXQoKSB0b29sdGlwOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG59XG4iLCI8YnV0dG9uXG4gIGNsYXNzPVwibWVudS10b2dnbGVcIlxuICBbbmdDbGFzc109XCJ7IGRpc2FibGVkOiBkaXNhYmxlZCB9XCJcbiAgW21hdFRvb2x0aXBdPVwidG9vbHRpcFwiXG4gIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCJcbiAgbWF0VG9vbHRpcFRvdWNoR2VzdHVyZXM9XCJvZmZcIlxuPlxuICA8c3ZnIGNsYXNzPVwibWVudS10b2dnbGUtaWNvblwiIFtuZ0NsYXNzXT1cInsgJ2FjdGl2ZS1pY29uJzogYWN0aXZlIH1cIj5cbiAgICA8dXNlIGF0dHIuaHJlZj1cImFzc2V0cy9pY29ucy97eyBpY29uIH19LnN2ZyN7eyBpY29uIH19XCI+PC91c2U+XG4gIDwvc3ZnPlxuPC9idXR0b24+XG4iXX0=
@@ -1,72 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../../../services/event-display.service";
4
- import * as i2 from "@angular/material/menu";
5
- import * as i3 from "@angular/material/slider";
6
- import * as i4 from "@angular/material/checkbox";
7
- import * as i5 from "../menu-toggle/menu-toggle.component";
8
- export class ObjectClippingComponent {
9
- eventDisplay;
10
- clippingEnabled;
11
- startClippingAngle;
12
- openingClippingAngle;
13
- constructor(eventDisplay) {
14
- this.eventDisplay = eventDisplay;
15
- const stateManager = this.eventDisplay.getStateManager();
16
- stateManager.clippingEnabled.onUpdate((clippingValue) => (this.clippingEnabled = clippingValue));
17
- stateManager.startClippingAngle.onUpdate((value) => (this.startClippingAngle = value));
18
- stateManager.openingClippingAngle.onUpdate((value) => (this.openingClippingAngle = value));
19
- }
20
- changeStartClippingAngle(startingAngle) {
21
- this.eventDisplay.getUIManager().rotateStartAngleClipping(startingAngle);
22
- }
23
- changeOpeningClippingAngle(openingAngle) {
24
- this.eventDisplay.getUIManager().rotateOpeningAngleClipping(openingAngle);
25
- }
26
- toggleClipping(change) {
27
- const value = change.checked;
28
- this.eventDisplay.getUIManager().setClipping(value);
29
- this.clippingEnabled = value;
30
- }
31
- static ɵfac = function ObjectClippingComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ObjectClippingComponent)(i0.ɵɵdirectiveInject(i1.EventDisplayService)); };
32
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ObjectClippingComponent, selectors: [["app-object-clipping"]], decls: 17, vars: 5, consts: [["menu", ""], ["clippingCheckbox", ""], ["startingAngleSlider", ""], ["openingAngleSlider", ""], [1, "mat-menu"], ["mat-menu-item", "", 3, "click"], [3, "click", "change", "checked"], ["mat-menu-item", "", 1, "slider-btn", 3, "focus"], ["min", "0", "max", "360", "step", "1", "thumbLabel", ""], ["matSliderThumb", "", 3, "valueChange", "value"], ["tooltip", "Geometry clipping", "icon", "clipping", 3, "matMenuTriggerFor", "active"]], template: function ObjectClippingComponent_Template(rf, ctx) { if (rf & 1) {
33
- const _r1 = i0.ɵɵgetCurrentView();
34
- i0.ɵɵelementStart(0, "mat-menu", 4, 0)(2, "button", 5);
35
- i0.ɵɵlistener("click", function ObjectClippingComponent_Template_button_click_2_listener($event) { i0.ɵɵrestoreView(_r1); const clippingCheckbox_r2 = i0.ɵɵreference(4); $event.stopPropagation(); return i0.ɵɵresetView(clippingCheckbox_r2._inputElement.nativeElement.click()); });
36
- i0.ɵɵelementStart(3, "mat-checkbox", 6, 1);
37
- i0.ɵɵlistener("click", function ObjectClippingComponent_Template_mat_checkbox_click_3_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView($event.stopPropagation()); })("change", function ObjectClippingComponent_Template_mat_checkbox_change_3_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleClipping($event)); });
38
- i0.ɵɵtext(5, " Clipping ");
39
- i0.ɵɵelementEnd()();
40
- i0.ɵɵelementStart(6, "button", 7);
41
- i0.ɵɵlistener("focus", function ObjectClippingComponent_Template_button_focus_6_listener() { i0.ɵɵrestoreView(_r1); const startingAngleSlider_r3 = i0.ɵɵreference(9); return i0.ɵɵresetView(startingAngleSlider_r3.focus()); });
42
- i0.ɵɵelementStart(7, "mat-slider", 8)(8, "input", 9, 2);
43
- i0.ɵɵlistener("valueChange", function ObjectClippingComponent_Template_input_valueChange_8_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.changeStartClippingAngle($event)); });
44
- i0.ɵɵelementEnd()();
45
- i0.ɵɵtext(10, " Start Angle ");
46
- i0.ɵɵelementEnd();
47
- i0.ɵɵelementStart(11, "button", 7);
48
- i0.ɵɵlistener("focus", function ObjectClippingComponent_Template_button_focus_11_listener() { i0.ɵɵrestoreView(_r1); const openingAngleSlider_r4 = i0.ɵɵreference(14); return i0.ɵɵresetView(openingAngleSlider_r4.focus()); });
49
- i0.ɵɵelementStart(12, "mat-slider", 8)(13, "input", 9, 3);
50
- i0.ɵɵlistener("valueChange", function ObjectClippingComponent_Template_input_valueChange_13_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.changeOpeningClippingAngle($event)); });
51
- i0.ɵɵelementEnd()();
52
- i0.ɵɵtext(15, " Opening Angle ");
53
- i0.ɵɵelementEnd()();
54
- i0.ɵɵelement(16, "app-menu-toggle", 10);
55
- } if (rf & 2) {
56
- const menu_r5 = i0.ɵɵreference(1);
57
- i0.ɵɵadvance(3);
58
- i0.ɵɵproperty("checked", ctx.clippingEnabled);
59
- i0.ɵɵadvance(5);
60
- i0.ɵɵproperty("value", ctx.startClippingAngle);
61
- i0.ɵɵadvance(5);
62
- i0.ɵɵproperty("value", ctx.openingClippingAngle);
63
- i0.ɵɵadvance(3);
64
- i0.ɵɵproperty("matMenuTriggerFor", menu_r5)("active", ctx.clippingEnabled);
65
- } }, dependencies: [i2.MatMenu, i2.MatMenuItem, i2.MatMenuTrigger, i3.MatSlider, i3.MatSliderThumb, i4.MatCheckbox, i5.MenuToggleComponent], styles: [".slider-btn[_ngcontent-%COMP%]{overflow:visible}mat-slider[_ngcontent-%COMP%]{margin-left:.75rem;margin-right:.75rem}"] });
66
- }
67
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ObjectClippingComponent, [{
68
- type: Component,
69
- args: [{ selector: 'app-object-clipping', template: "<mat-menu class=\"mat-menu\" #menu>\n <button\n mat-menu-item\n (click)=\"\n $event.stopPropagation();\n clippingCheckbox._inputElement.nativeElement.click()\n \"\n >\n <mat-checkbox\n #clippingCheckbox\n [checked]=\"clippingEnabled\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"toggleClipping($event)\"\n >\n Clipping\n </mat-checkbox>\n </button>\n <button\n class=\"slider-btn\"\n mat-menu-item\n (focus)=\"startingAngleSlider.focus()\"\n >\n <mat-slider min=\"0\" max=\"360\" step=\"1\" thumbLabel>\n <input\n #startingAngleSlider\n matSliderThumb\n [value]=\"startClippingAngle\"\n (valueChange)=\"changeStartClippingAngle($event)\"\n />\n </mat-slider>\n Start Angle\n </button>\n <button class=\"slider-btn\" mat-menu-item (focus)=\"openingAngleSlider.focus()\">\n <mat-slider min=\"0\" max=\"360\" step=\"1\" thumbLabel>\n <input\n #openingAngleSlider\n matSliderThumb\n [value]=\"openingClippingAngle\"\n (valueChange)=\"changeOpeningClippingAngle($event)\"\n />\n </mat-slider>\n Opening Angle\n </button>\n</mat-menu>\n\n<app-menu-toggle\n [matMenuTriggerFor]=\"menu\"\n tooltip=\"Geometry clipping\"\n icon=\"clipping\"\n [active]=\"clippingEnabled\"\n>\n</app-menu-toggle>\n", styles: [".slider-btn{overflow:visible}mat-slider{margin-left:.75rem;margin-right:.75rem}\n"] }]
70
- }], () => [{ type: i1.EventDisplayService }], null); })();
71
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ObjectClippingComponent, { className: "ObjectClippingComponent", filePath: "components/ui-menu/object-clipping/object-clipping.component.ts", lineNumber: 10 }); })();
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LWNsaXBwaW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvb2JqZWN0LWNsaXBwaW5nL29iamVjdC1jbGlwcGluZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L29iamVjdC1jbGlwcGluZy9vYmplY3QtY2xpcHBpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQVMxQyxNQUFNLE9BQU8sdUJBQXVCO0lBS2Q7SUFKcEIsZUFBZSxDQUFVO0lBQ3pCLGtCQUFrQixDQUFTO0lBQzNCLG9CQUFvQixDQUFTO0lBRTdCLFlBQW9CLFlBQWlDO1FBQWpDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQUNuRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3pELFlBQVksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUNuQyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxHQUFHLGFBQWEsQ0FBQyxDQUMxRCxDQUFDO1FBQ0YsWUFBWSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FDdEMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxDQUM3QyxDQUFDO1FBQ0YsWUFBWSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FDeEMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQyxDQUMvQyxDQUFDO0lBQ0osQ0FBQztJQUVELHdCQUF3QixDQUFDLGFBQXFCO1FBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUMsd0JBQXdCLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELDBCQUEwQixDQUFDLFlBQW9CO1FBQzdDLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUMsMEJBQTBCLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUF5QjtRQUN0QyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQy9CLENBQUM7aUhBOUJVLHVCQUF1Qjs2REFBdkIsdUJBQXVCOztZQ1JsQyxBQURGLHNDQUFpQyxnQkFPOUI7WUFKQyx5S0FDUyx3QkFDUix3QkFBUSx1REFFYixLQURLO1lBRUQsMENBS0M7WUFEQyxBQURBLHNKQUFTLHdCQUF3QixLQUFDLDJJQUN4QiwwQkFBc0IsS0FBQztZQUVqQywwQkFDRjtZQUNGLEFBREUsaUJBQWUsRUFDUjtZQUNULGlDQUlDO1lBREMsNExBQVMsOEJBQTJCLEtBQUM7WUFHbkMsQUFERixxQ0FBa0Qsa0JBTTlDO1lBREEsMkpBQWUsb0NBQWdDLEtBQUM7WUFFcEQsQUFORSxpQkFLRSxFQUNTO1lBQ2IsOEJBQ0Y7WUFBQSxpQkFBUztZQUNULGtDQUE4RTtZQUFyQyw2TEFBUyw2QkFBMEIsS0FBQztZQUV6RSxBQURGLHNDQUFrRCxtQkFNOUM7WUFEQSw0SkFBZSxzQ0FBa0MsS0FBQztZQUV0RCxBQU5FLGlCQUtFLEVBQ1M7WUFDYixnQ0FDRjtZQUNGLEFBREUsaUJBQVMsRUFDQTtZQUVYLHVDQU1rQjs7O1lBekNaLGVBQTJCO1lBQTNCLDZDQUEyQjtZQWdCekIsZUFBNEI7WUFBNUIsOENBQTRCO1lBVzVCLGVBQThCO1lBQTlCLGdEQUE4QjtZQVNwQyxlQUEwQjtZQUcxQixBQUhBLDJDQUEwQiwrQkFHQTs7O2lGRHhDZix1QkFBdUI7Y0FMbkMsU0FBUzsyQkFDRSxxQkFBcUI7O2tGQUlwQix1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdENoZWNrYm94Q2hhbmdlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgRXZlbnREaXNwbGF5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2V2ZW50LWRpc3BsYXkuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1vYmplY3QtY2xpcHBpbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vb2JqZWN0LWNsaXBwaW5nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb2JqZWN0LWNsaXBwaW5nLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE9iamVjdENsaXBwaW5nQ29tcG9uZW50IHtcbiAgY2xpcHBpbmdFbmFibGVkOiBib29sZWFuO1xuICBzdGFydENsaXBwaW5nQW5nbGU6IG51bWJlcjtcbiAgb3BlbmluZ0NsaXBwaW5nQW5nbGU6IG51bWJlcjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGV2ZW50RGlzcGxheTogRXZlbnREaXNwbGF5U2VydmljZSkge1xuICAgIGNvbnN0IHN0YXRlTWFuYWdlciA9IHRoaXMuZXZlbnREaXNwbGF5LmdldFN0YXRlTWFuYWdlcigpO1xuICAgIHN0YXRlTWFuYWdlci5jbGlwcGluZ0VuYWJsZWQub25VcGRhdGUoXG4gICAgICAoY2xpcHBpbmdWYWx1ZSkgPT4gKHRoaXMuY2xpcHBpbmdFbmFibGVkID0gY2xpcHBpbmdWYWx1ZSksXG4gICAgKTtcbiAgICBzdGF0ZU1hbmFnZXIuc3RhcnRDbGlwcGluZ0FuZ2xlLm9uVXBkYXRlKFxuICAgICAgKHZhbHVlKSA9PiAodGhpcy5zdGFydENsaXBwaW5nQW5nbGUgPSB2YWx1ZSksXG4gICAgKTtcbiAgICBzdGF0ZU1hbmFnZXIub3BlbmluZ0NsaXBwaW5nQW5nbGUub25VcGRhdGUoXG4gICAgICAodmFsdWUpID0+ICh0aGlzLm9wZW5pbmdDbGlwcGluZ0FuZ2xlID0gdmFsdWUpLFxuICAgICk7XG4gIH1cblxuICBjaGFuZ2VTdGFydENsaXBwaW5nQW5nbGUoc3RhcnRpbmdBbmdsZTogbnVtYmVyKSB7XG4gICAgdGhpcy5ldmVudERpc3BsYXkuZ2V0VUlNYW5hZ2VyKCkucm90YXRlU3RhcnRBbmdsZUNsaXBwaW5nKHN0YXJ0aW5nQW5nbGUpO1xuICB9XG5cbiAgY2hhbmdlT3BlbmluZ0NsaXBwaW5nQW5nbGUob3BlbmluZ0FuZ2xlOiBudW1iZXIpIHtcbiAgICB0aGlzLmV2ZW50RGlzcGxheS5nZXRVSU1hbmFnZXIoKS5yb3RhdGVPcGVuaW5nQW5nbGVDbGlwcGluZyhvcGVuaW5nQW5nbGUpO1xuICB9XG5cbiAgdG9nZ2xlQ2xpcHBpbmcoY2hhbmdlOiBNYXRDaGVja2JveENoYW5nZSkge1xuICAgIGNvbnN0IHZhbHVlID0gY2hhbmdlLmNoZWNrZWQ7XG4gICAgdGhpcy5ldmVudERpc3BsYXkuZ2V0VUlNYW5hZ2VyKCkuc2V0Q2xpcHBpbmcodmFsdWUpO1xuICAgIHRoaXMuY2xpcHBpbmdFbmFibGVkID0gdmFsdWU7XG4gIH1cbn1cbiIsIjxtYXQtbWVudSBjbGFzcz1cIm1hdC1tZW51XCIgI21lbnU+XG4gIDxidXR0b25cbiAgICBtYXQtbWVudS1pdGVtXG4gICAgKGNsaWNrKT1cIlxuICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgY2xpcHBpbmdDaGVja2JveC5faW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKVxuICAgIFwiXG4gID5cbiAgICA8bWF0LWNoZWNrYm94XG4gICAgICAjY2xpcHBpbmdDaGVja2JveFxuICAgICAgW2NoZWNrZWRdPVwiY2xpcHBpbmdFbmFibGVkXCJcbiAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgKGNoYW5nZSk9XCJ0b2dnbGVDbGlwcGluZygkZXZlbnQpXCJcbiAgICA+XG4gICAgICBDbGlwcGluZ1xuICAgIDwvbWF0LWNoZWNrYm94PlxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwic2xpZGVyLWJ0blwiXG4gICAgbWF0LW1lbnUtaXRlbVxuICAgIChmb2N1cyk9XCJzdGFydGluZ0FuZ2xlU2xpZGVyLmZvY3VzKClcIlxuICA+XG4gICAgPG1hdC1zbGlkZXIgbWluPVwiMFwiIG1heD1cIjM2MFwiIHN0ZXA9XCIxXCIgdGh1bWJMYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICAjc3RhcnRpbmdBbmdsZVNsaWRlclxuICAgICAgICBtYXRTbGlkZXJUaHVtYlxuICAgICAgICBbdmFsdWVdPVwic3RhcnRDbGlwcGluZ0FuZ2xlXCJcbiAgICAgICAgKHZhbHVlQ2hhbmdlKT1cImNoYW5nZVN0YXJ0Q2xpcHBpbmdBbmdsZSgkZXZlbnQpXCJcbiAgICAgIC8+XG4gICAgPC9tYXQtc2xpZGVyPlxuICAgIFN0YXJ0IEFuZ2xlXG4gIDwvYnV0dG9uPlxuICA8YnV0dG9uIGNsYXNzPVwic2xpZGVyLWJ0blwiIG1hdC1tZW51LWl0ZW0gKGZvY3VzKT1cIm9wZW5pbmdBbmdsZVNsaWRlci5mb2N1cygpXCI+XG4gICAgPG1hdC1zbGlkZXIgbWluPVwiMFwiIG1heD1cIjM2MFwiIHN0ZXA9XCIxXCIgdGh1bWJMYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICAjb3BlbmluZ0FuZ2xlU2xpZGVyXG4gICAgICAgIG1hdFNsaWRlclRodW1iXG4gICAgICAgIFt2YWx1ZV09XCJvcGVuaW5nQ2xpcHBpbmdBbmdsZVwiXG4gICAgICAgICh2YWx1ZUNoYW5nZSk9XCJjaGFuZ2VPcGVuaW5nQ2xpcHBpbmdBbmdsZSgkZXZlbnQpXCJcbiAgICAgIC8+XG4gICAgPC9tYXQtc2xpZGVyPlxuICAgIE9wZW5pbmcgQW5nbGVcbiAgPC9idXR0b24+XG48L21hdC1tZW51PlxuXG48YXBwLW1lbnUtdG9nZ2xlXG4gIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcbiAgdG9vbHRpcD1cIkdlb21ldHJ5IGNsaXBwaW5nXCJcbiAgaWNvbj1cImNsaXBwaW5nXCJcbiAgW2FjdGl2ZV09XCJjbGlwcGluZ0VuYWJsZWRcIlxuPlxuPC9hcHAtbWVudS10b2dnbGU+XG4iXX0=
@@ -1,59 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../../../../services/event-display.service";
4
- import * as i2 from "@angular/common";
5
- import * as i3 from "../../overlay/overlay.component";
6
- import * as i4 from "../../../../services/extras/attribute.pipe";
7
- function ObjectSelectionOverlayComponent_div_1_div_1_Template(rf, ctx) { if (rf & 1) {
8
- i0.ɵɵelementStart(0, "div", 4)(1, "strong");
9
- i0.ɵɵtext(2);
10
- i0.ɵɵelementEnd();
11
- i0.ɵɵtext(3);
12
- i0.ɵɵpipe(4, "attributePipe");
13
- i0.ɵɵelementEnd();
14
- } if (rf & 2) {
15
- const attribute_r1 = ctx.$implicit;
16
- i0.ɵɵadvance(2);
17
- i0.ɵɵtextInterpolate(attribute_r1.attributeName);
18
- i0.ɵɵadvance();
19
- i0.ɵɵtextInterpolate1(" : ", i0.ɵɵpipeBind1(4, 2, attribute_r1.attributeValue), " ");
20
- } }
21
- function ObjectSelectionOverlayComponent_div_1_Template(rf, ctx) { if (rf & 1) {
22
- i0.ɵɵelementStart(0, "div", 2);
23
- i0.ɵɵtemplate(1, ObjectSelectionOverlayComponent_div_1_div_1_Template, 5, 4, "div", 3);
24
- i0.ɵɵelementEnd();
25
- } if (rf & 2) {
26
- const ctx_r1 = i0.ɵɵnextContext();
27
- i0.ɵɵadvance();
28
- i0.ɵɵproperty("ngForOf", ctx_r1.selectedObject.attributes);
29
- } }
30
- export class ObjectSelectionOverlayComponent {
31
- eventDisplay;
32
- // Attributes for displaying the information of selected objects
33
- hiddenSelectedInfo;
34
- selectedObject = { name: 'Object', attributes: [] };
35
- constructor(eventDisplay) {
36
- this.eventDisplay = eventDisplay;
37
- }
38
- ngOnInit() {
39
- this.eventDisplay.allowSelection(this.selectedObject);
40
- }
41
- static ɵfac = function ObjectSelectionOverlayComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ObjectSelectionOverlayComponent)(i0.ɵɵdirectiveInject(i1.EventDisplayService)); };
42
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ObjectSelectionOverlayComponent, selectors: [["app-object-selection-overlay"]], inputs: { hiddenSelectedInfo: "hiddenSelectedInfo" }, decls: 2, vars: 3, consts: [["icon", "cursor", 3, "overlayTitle", "active"], ["id", "selectedObjectPanelBody", "class", "m-1", 4, "ngIf"], ["id", "selectedObjectPanelBody", 1, "m-1"], ["class", "attributeField", 4, "ngFor", "ngForOf"], [1, "attributeField"]], template: function ObjectSelectionOverlayComponent_Template(rf, ctx) { if (rf & 1) {
43
- i0.ɵɵelementStart(0, "app-overlay", 0);
44
- i0.ɵɵtemplate(1, ObjectSelectionOverlayComponent_div_1_Template, 2, 1, "div", 1);
45
- i0.ɵɵelementEnd();
46
- } if (rf & 2) {
47
- i0.ɵɵproperty("overlayTitle", ctx.selectedObject.name)("active", !ctx.hiddenSelectedInfo);
48
- i0.ɵɵadvance();
49
- i0.ɵɵproperty("ngIf", ctx.selectedObject.attributes.length > 0);
50
- } }, dependencies: [i2.NgForOf, i2.NgIf, i3.OverlayComponent, i4.AttributePipe], styles: ["#selectedObjectPanelBody[_ngcontent-%COMP%]{padding:0 .8em;overflow:auto;max-width:300px;max-height:16rem;min-width:7rem}"] });
51
- }
52
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ObjectSelectionOverlayComponent, [{
53
- type: Component,
54
- args: [{ selector: 'app-object-selection-overlay', template: "<app-overlay\n icon=\"cursor\"\n [overlayTitle]=\"selectedObject.name\"\n [active]=\"!hiddenSelectedInfo\"\n>\n <div\n id=\"selectedObjectPanelBody\"\n class=\"m-1\"\n *ngIf=\"selectedObject.attributes.length > 0\"\n >\n <div\n *ngFor=\"let attribute of selectedObject.attributes\"\n class=\"attributeField\"\n >\n <strong>{{ attribute.attributeName }}</strong>\n : {{ attribute.attributeValue | attributePipe }}\n </div>\n </div>\n</app-overlay>\n", styles: ["#selectedObjectPanelBody{padding:0 .8em;overflow:auto;max-width:300px;max-height:16rem;min-width:7rem}\n"] }]
55
- }], () => [{ type: i1.EventDisplayService }], { hiddenSelectedInfo: [{
56
- type: Input
57
- }] }); })();
58
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ObjectSelectionOverlayComponent, { className: "ObjectSelectionOverlayComponent", filePath: "components/ui-menu/object-selection/object-selection-overlay/object-selection-overlay.component.ts", lineNumber: 9 }); })();
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LXNlbGVjdGlvbi1vdmVybGF5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvb2JqZWN0LXNlbGVjdGlvbi9vYmplY3Qtc2VsZWN0aW9uLW92ZXJsYXkvb2JqZWN0LXNlbGVjdGlvbi1vdmVybGF5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3VpLW1lbnUvb2JqZWN0LXNlbGVjdGlvbi9vYmplY3Qtc2VsZWN0aW9uLW92ZXJsYXkvb2JqZWN0LXNlbGVjdGlvbi1vdmVybGF5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0lDY3hELEFBSkYsOEJBR0MsYUFDUztJQUFBLFlBQTZCO0lBQUEsaUJBQVM7SUFDOUMsWUFDRjs7SUFBQSxpQkFBTTs7O0lBRkksZUFBNkI7SUFBN0IsZ0RBQTZCO0lBQ3JDLGNBQ0Y7SUFERSxvRkFDRjs7O0lBWEYsOEJBSUM7SUFDQyxzRkFHQztJQUlILGlCQUFNOzs7SUFOb0IsY0FBNEI7SUFBNUIsMERBQTRCOztBREh4RCxNQUFNLE9BQU8sK0JBQStCO0lBS3RCO0lBSnBCLGdFQUFnRTtJQUN2RCxrQkFBa0IsQ0FBVTtJQUNyQyxjQUFjLEdBQUcsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUVwRCxZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7SUFBRyxDQUFDO0lBRXpELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDeEQsQ0FBQzt5SEFUVSwrQkFBK0I7NkRBQS9CLCtCQUErQjtZQ1I1QyxzQ0FJQztZQUNDLGdGQUlDO1lBU0gsaUJBQWM7O1lBZlosQUFEQSxzREFBb0MsbUNBQ047WUFLM0IsY0FBMEM7WUFBMUMsK0RBQTBDOzs7aUZEQWxDLCtCQUErQjtjQUwzQyxTQUFTOzJCQUNFLDhCQUE4QjtvREFNL0Isa0JBQWtCO2tCQUExQixLQUFLOztrRkFGSywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIHR5cGUgT25Jbml0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZlbnREaXNwbGF5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2V2ZW50LWRpc3BsYXkuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1vYmplY3Qtc2VsZWN0aW9uLW92ZXJsYXknLFxuICB0ZW1wbGF0ZVVybDogJy4vb2JqZWN0LXNlbGVjdGlvbi1vdmVybGF5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb2JqZWN0LXNlbGVjdGlvbi1vdmVybGF5LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE9iamVjdFNlbGVjdGlvbk92ZXJsYXlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAvLyBBdHRyaWJ1dGVzIGZvciBkaXNwbGF5aW5nIHRoZSBpbmZvcm1hdGlvbiBvZiBzZWxlY3RlZCBvYmplY3RzXG4gIEBJbnB1dCgpIGhpZGRlblNlbGVjdGVkSW5mbzogYm9vbGVhbjtcbiAgc2VsZWN0ZWRPYmplY3QgPSB7IG5hbWU6ICdPYmplY3QnLCBhdHRyaWJ1dGVzOiBbXSB9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZXZlbnREaXNwbGF5OiBFdmVudERpc3BsYXlTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZXZlbnREaXNwbGF5LmFsbG93U2VsZWN0aW9uKHRoaXMuc2VsZWN0ZWRPYmplY3QpO1xuICB9XG59XG4iLCI8YXBwLW92ZXJsYXlcbiAgaWNvbj1cImN1cnNvclwiXG4gIFtvdmVybGF5VGl0bGVdPVwic2VsZWN0ZWRPYmplY3QubmFtZVwiXG4gIFthY3RpdmVdPVwiIWhpZGRlblNlbGVjdGVkSW5mb1wiXG4+XG4gIDxkaXZcbiAgICBpZD1cInNlbGVjdGVkT2JqZWN0UGFuZWxCb2R5XCJcbiAgICBjbGFzcz1cIm0tMVwiXG4gICAgKm5nSWY9XCJzZWxlY3RlZE9iamVjdC5hdHRyaWJ1dGVzLmxlbmd0aCA+IDBcIlxuICA+XG4gICAgPGRpdlxuICAgICAgKm5nRm9yPVwibGV0IGF0dHJpYnV0ZSBvZiBzZWxlY3RlZE9iamVjdC5hdHRyaWJ1dGVzXCJcbiAgICAgIGNsYXNzPVwiYXR0cmlidXRlRmllbGRcIlxuICAgID5cbiAgICAgIDxzdHJvbmc+e3sgYXR0cmlidXRlLmF0dHJpYnV0ZU5hbWUgfX08L3N0cm9uZz5cbiAgICAgIDoge3sgYXR0cmlidXRlLmF0dHJpYnV0ZVZhbHVlIHwgYXR0cmlidXRlUGlwZSB9fVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYXBwLW92ZXJsYXk+XG4iXX0=
@@ -1,46 +0,0 @@
1
- import { Component, } from '@angular/core';
2
- import { ComponentPortal } from '@angular/cdk/portal';
3
- import { ObjectSelectionOverlayComponent } from './object-selection-overlay/object-selection-overlay.component';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/cdk/overlay";
6
- import * as i2 from "../../../services/event-display.service";
7
- import * as i3 from "../menu-toggle/menu-toggle.component";
8
- export class ObjectSelectionComponent {
9
- overlay;
10
- eventDisplay;
11
- // Attributes for displaying the information of selected objects
12
- hiddenSelectedInfo = true;
13
- overlayWindow;
14
- constructor(overlay, eventDisplay) {
15
- this.overlay = overlay;
16
- this.eventDisplay = eventDisplay;
17
- }
18
- ngOnInit() {
19
- const overlayRef = this.overlay.create();
20
- const overlayPortal = new ComponentPortal(ObjectSelectionOverlayComponent);
21
- this.overlayWindow = overlayRef.attach(overlayPortal);
22
- this.overlayWindow.instance.hiddenSelectedInfo = this.hiddenSelectedInfo;
23
- }
24
- ngOnDestroy() {
25
- this.overlayWindow.destroy();
26
- }
27
- toggleOverlay() {
28
- this.hiddenSelectedInfo = !this.hiddenSelectedInfo;
29
- this.overlayWindow.instance.hiddenSelectedInfo = this.hiddenSelectedInfo;
30
- this.eventDisplay.enableSelecting(!this.hiddenSelectedInfo);
31
- }
32
- static ɵfac = function ObjectSelectionComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ObjectSelectionComponent)(i0.ɵɵdirectiveInject(i1.Overlay), i0.ɵɵdirectiveInject(i2.EventDisplayService)); };
33
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ObjectSelectionComponent, selectors: [["app-object-selection"]], decls: 1, vars: 1, consts: [["tooltip", "Object selection", "icon", "cursor", 3, "click", "active"]], template: function ObjectSelectionComponent_Template(rf, ctx) { if (rf & 1) {
34
- i0.ɵɵelementStart(0, "app-menu-toggle", 0);
35
- i0.ɵɵlistener("click", function ObjectSelectionComponent_Template_app_menu_toggle_click_0_listener() { return ctx.toggleOverlay(); });
36
- i0.ɵɵelementEnd();
37
- } if (rf & 2) {
38
- i0.ɵɵproperty("active", !ctx.hiddenSelectedInfo);
39
- } }, dependencies: [i3.MenuToggleComponent] });
40
- }
41
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ObjectSelectionComponent, [{
42
- type: Component,
43
- args: [{ selector: 'app-object-selection', template: "<app-menu-toggle\n tooltip=\"Object selection\"\n icon=\"cursor\"\n [active]=\"!hiddenSelectedInfo\"\n (click)=\"toggleOverlay()\"\n>\n</app-menu-toggle>\n" }]
44
- }], () => [{ type: i1.Overlay }, { type: i2.EventDisplayService }], null); })();
45
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ObjectSelectionComponent, { className: "ObjectSelectionComponent", filePath: "components/ui-menu/object-selection/object-selection.component.ts", lineNumber: 17 }); })();
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LXNlbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L29iamVjdC1zZWxlY3Rpb24vb2JqZWN0LXNlbGVjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L29iamVjdC1zZWxlY3Rpb24vb2JqZWN0LXNlbGVjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxHQUlWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQzs7Ozs7QUFRaEgsTUFBTSxPQUFPLHdCQUF3QjtJQU16QjtJQUNBO0lBTlYsZ0VBQWdFO0lBQ2hFLGtCQUFrQixHQUFHLElBQUksQ0FBQztJQUMxQixhQUFhLENBQWdEO0lBRTdELFlBQ1UsT0FBZ0IsRUFDaEIsWUFBaUM7UUFEakMsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7SUFDeEMsQ0FBQztJQUVKLFFBQVE7UUFDTixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3pDLE1BQU0sYUFBYSxHQUFHLElBQUksZUFBZSxDQUFDLCtCQUErQixDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLGFBQWEsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztJQUMzRSxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUM7UUFDbkQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1FBQ3pFLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDOUQsQ0FBQztrSEF6QlUsd0JBQXdCOzZEQUF4Qix3QkFBd0I7WUNoQnJDLDBDQUtDO1lBREMsOEdBQVMsbUJBQWUsSUFBQztZQUUzQixpQkFBa0I7O1lBSGhCLGdEQUE4Qjs7O2lGRGFuQix3QkFBd0I7Y0FMcEMsU0FBUzsyQkFDRSxzQkFBc0I7O2tGQUlyQix3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIHR5cGUgT25Jbml0LFxuICBDb21wb25lbnRSZWYsXG4gIHR5cGUgT25EZXN0cm95LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IE9iamVjdFNlbGVjdGlvbk92ZXJsYXlDb21wb25lbnQgfSBmcm9tICcuL29iamVjdC1zZWxlY3Rpb24tb3ZlcmxheS9vYmplY3Qtc2VsZWN0aW9uLW92ZXJsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEV2ZW50RGlzcGxheVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9ldmVudC1kaXNwbGF5LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtb2JqZWN0LXNlbGVjdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9vYmplY3Qtc2VsZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb2JqZWN0LXNlbGVjdGlvbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBPYmplY3RTZWxlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8vIEF0dHJpYnV0ZXMgZm9yIGRpc3BsYXlpbmcgdGhlIGluZm9ybWF0aW9uIG9mIHNlbGVjdGVkIG9iamVjdHNcbiAgaGlkZGVuU2VsZWN0ZWRJbmZvID0gdHJ1ZTtcbiAgb3ZlcmxheVdpbmRvdzogQ29tcG9uZW50UmVmPE9iamVjdFNlbGVjdGlvbk92ZXJsYXlDb21wb25lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIGV2ZW50RGlzcGxheTogRXZlbnREaXNwbGF5U2VydmljZSxcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXkuY3JlYXRlKCk7XG4gICAgY29uc3Qgb3ZlcmxheVBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoT2JqZWN0U2VsZWN0aW9uT3ZlcmxheUNvbXBvbmVudCk7XG4gICAgdGhpcy5vdmVybGF5V2luZG93ID0gb3ZlcmxheVJlZi5hdHRhY2gob3ZlcmxheVBvcnRhbCk7XG4gICAgdGhpcy5vdmVybGF5V2luZG93Lmluc3RhbmNlLmhpZGRlblNlbGVjdGVkSW5mbyA9IHRoaXMuaGlkZGVuU2VsZWN0ZWRJbmZvO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5vdmVybGF5V2luZG93LmRlc3Ryb3koKTtcbiAgfVxuXG4gIHRvZ2dsZU92ZXJsYXkoKSB7XG4gICAgdGhpcy5oaWRkZW5TZWxlY3RlZEluZm8gPSAhdGhpcy5oaWRkZW5TZWxlY3RlZEluZm87XG4gICAgdGhpcy5vdmVybGF5V2luZG93Lmluc3RhbmNlLmhpZGRlblNlbGVjdGVkSW5mbyA9IHRoaXMuaGlkZGVuU2VsZWN0ZWRJbmZvO1xuICAgIHRoaXMuZXZlbnREaXNwbGF5LmVuYWJsZVNlbGVjdGluZyghdGhpcy5oaWRkZW5TZWxlY3RlZEluZm8pO1xuICB9XG59XG4iLCI8YXBwLW1lbnUtdG9nZ2xlXG4gIHRvb2x0aXA9XCJPYmplY3Qgc2VsZWN0aW9uXCJcbiAgaWNvbj1cImN1cnNvclwiXG4gIFthY3RpdmVdPVwiIWhpZGRlblNlbGVjdGVkSW5mb1wiXG4gIChjbGljayk9XCJ0b2dnbGVPdmVybGF5KClcIlxuPlxuPC9hcHAtbWVudS10b2dnbGU+XG4iXX0=
@@ -1,197 +0,0 @@
1
- import { Component, Input, ViewChild, ViewEncapsulation, } from '@angular/core';
2
- import { ResizeSensor } from 'css-element-queries';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "@angular/cdk/drag-drop";
6
- import * as i3 from "@angular/material/tooltip";
7
- const _c0 = ["overlayCard"];
8
- const _c1 = ["resizeHandleCorner"];
9
- const _c2 = ["*"];
10
- const _c3 = a0 => ({ "with-body": a0 });
11
- const _c4 = a0 => ({ expand: a0 });
12
- const _c5 = a0 => ({ "transparent-bg": a0 });
13
- function OverlayComponent_div_2_div_1_Template(rf, ctx) { if (rf & 1) {
14
- i0.ɵɵelementStart(0, "div", 11);
15
- i0.ɵɵnamespaceSVG();
16
- i0.ɵɵelementStart(1, "svg");
17
- i0.ɵɵelement(2, "use");
18
- i0.ɵɵelementEnd()();
19
- } if (rf & 2) {
20
- const ctx_r1 = i0.ɵɵnextContext(2);
21
- i0.ɵɵadvance(2);
22
- i0.ɵɵattributeInterpolate2("href", "assets/icons/", ctx_r1.icon, ".svg#", ctx_r1.icon, "");
23
- } }
24
- function OverlayComponent_div_2_Template(rf, ctx) { if (rf & 1) {
25
- const _r1 = i0.ɵɵgetCurrentView();
26
- i0.ɵɵelementStart(0, "div", 6);
27
- i0.ɵɵtemplate(1, OverlayComponent_div_2_div_1_Template, 3, 3, "div", 7);
28
- i0.ɵɵelementStart(2, "h5", 8);
29
- i0.ɵɵtext(3);
30
- i0.ɵɵelementEnd();
31
- i0.ɵɵelementStart(4, "button", 9);
32
- i0.ɵɵlistener("click", function OverlayComponent_div_2_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.showBody = !ctx_r1.showBody); });
33
- i0.ɵɵnamespaceSVG();
34
- i0.ɵɵelementStart(5, "svg");
35
- i0.ɵɵelement(6, "use", 10);
36
- i0.ɵɵelementEnd()()();
37
- } if (rf & 2) {
38
- const ctx_r1 = i0.ɵɵnextContext();
39
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(4, _c3, ctx_r1.showBody));
40
- i0.ɵɵadvance();
41
- i0.ɵɵproperty("ngIf", ctx_r1.icon);
42
- i0.ɵɵadvance(2);
43
- i0.ɵɵtextInterpolate(ctx_r1.overlayTitle);
44
- i0.ɵɵadvance();
45
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(6, _c4, ctx_r1.showBody));
46
- } }
47
- function OverlayComponent_div_3_Template(rf, ctx) { if (rf & 1) {
48
- i0.ɵɵelementStart(0, "div", 12);
49
- i0.ɵɵprojection(1);
50
- i0.ɵɵelementEnd();
51
- } if (rf & 2) {
52
- const ctx_r1 = i0.ɵɵnextContext();
53
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(1, _c5, ctx_r1.transparentBody));
54
- } }
55
- function OverlayComponent_span_4_Template(rf, ctx) { if (rf & 1) {
56
- const _r3 = i0.ɵɵgetCurrentView();
57
- i0.ɵɵelementStart(0, "span", 13, 1);
58
- i0.ɵɵlistener("cdkDragMoved", function OverlayComponent_span_4_Template_span_cdkDragMoved_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onResize()); });
59
- i0.ɵɵelementEnd();
60
- } if (rf & 2) {
61
- const ctx_r1 = i0.ɵɵnextContext();
62
- i0.ɵɵproperty("hidden", !ctx_r1.showBody);
63
- } }
64
- /**
65
- * Component for overlay panel.
66
- */
67
- export class OverlayComponent {
68
- /** Title of the overlay. */
69
- overlayTitle;
70
- /** If the overlay is open or not. */
71
- active = false;
72
- /** Icon of the overlay header. */
73
- icon;
74
- /** If the overlay is resizable. */
75
- resizable = false;
76
- /** If the overlay body is transparent or not. */
77
- transparentBody = false;
78
- /** If the aspect ratio is kept fixed or not. */
79
- keepAspectRatioFixed = false;
80
- /** If the overlay body is visible or not. */
81
- showBody = true;
82
- /** Aspect ratio of the overlay view. */
83
- aspectRatio = window.innerWidth / window.innerHeight;
84
- // ********************************************************************************
85
- // * Below code is specific to the overlay resize feature. (LOOK INTO CSS RESIZE) *
86
- // ********************************************************************************
87
- /** Complete overlay card containing both header and body. */
88
- overlayCard;
89
- /** Handle for resizing the overlay. */
90
- resizeHandleCorner;
91
- /** Minimum resizable width. */
92
- MIN_RES_WIDTH = 300;
93
- /** Minimum resizable height */
94
- MIN_RES_HEIGHT = 100;
95
- /**
96
- * Move the resizable handle to the bottom right after the component is created.
97
- */
98
- ngAfterViewInit() {
99
- if (this.resizable) {
100
- const resizeHandleElement = this.resizeHandleCorner.nativeElement;
101
- resizeHandleElement.style.bottom = '0';
102
- resizeHandleElement.style.right = '0';
103
- new ResizeSensor(this.overlayCard.nativeElement, () => {
104
- this.resetHandlePosition();
105
- });
106
- window.addEventListener('resize', () => {
107
- this.resetHandlePosition();
108
- });
109
- }
110
- }
111
- /**
112
- * Resize the overlay card when the resize handle is dragged.
113
- */
114
- onResize() {
115
- const resizeHandleElement = this.resizeHandleCorner.nativeElement;
116
- const overlayCardElement = this.overlayCard.nativeElement;
117
- const dragRect = resizeHandleElement.getBoundingClientRect();
118
- const overlayRect = overlayCardElement.getBoundingClientRect();
119
- const width = dragRect.left - overlayRect.left + dragRect.width;
120
- const height = dragRect.top - overlayRect.top + dragRect.height;
121
- this.setHandleTransform(overlayRect, dragRect);
122
- if (width > this.MIN_RES_WIDTH && height > this.MIN_RES_HEIGHT) {
123
- overlayCardElement.style.width = width + 'px';
124
- if (this.keepAspectRatioFixed) {
125
- overlayCardElement.style.height = width / this.aspectRatio + 30 + 'px';
126
- }
127
- else {
128
- overlayCardElement.style.height = height + 'px';
129
- }
130
- }
131
- }
132
- /**
133
- * Reset resize handle position.
134
- */
135
- resetHandlePosition() {
136
- const resizeHandleElement = this.resizeHandleCorner.nativeElement;
137
- this.setHandleTransform(this.overlayCard.nativeElement.getBoundingClientRect(), resizeHandleElement.getBoundingClientRect());
138
- resizeHandleElement.style.bottom = null;
139
- resizeHandleElement.style.right = null;
140
- }
141
- /**
142
- * Set the position of the resize handle using transform3d.
143
- * @param overlayRect Bounding client rectangle of the overlay card.
144
- * @param dragRect Bounding client rectangle of the resize handle.
145
- */
146
- setHandleTransform(overlayRect, dragRect) {
147
- const translateX = overlayRect.width - dragRect.width;
148
- const translateY = overlayRect.height - dragRect.height;
149
- this.resizeHandleCorner.nativeElement.style.transform = `translate3d(${translateX}px, ${translateY}px, 0)`;
150
- }
151
- static ɵfac = function OverlayComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || OverlayComponent)(); };
152
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: OverlayComponent, selectors: [["app-overlay"]], viewQuery: function OverlayComponent_Query(rf, ctx) { if (rf & 1) {
153
- i0.ɵɵviewQuery(_c0, 5);
154
- i0.ɵɵviewQuery(_c1, 5);
155
- } if (rf & 2) {
156
- let _t;
157
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.overlayCard = _t.first);
158
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.resizeHandleCorner = _t.first);
159
- } }, inputs: { overlayTitle: "overlayTitle", active: "active", icon: "icon", resizable: "resizable", transparentBody: "transparentBody", keepAspectRatioFixed: "keepAspectRatioFixed" }, ngContentSelectors: _c2, decls: 5, vars: 4, consts: [["overlayCard", ""], ["resizeHandleCorner", ""], ["cdkDrag", "", "cdkDragBoundary", "body", 1, "overlay-card", "card", 3, "hidden"], ["class", "card-header d-flex justify-content-between", "cdkDragHandle", "", 3, "ngClass", 4, "ngIf"], ["class", "overlay-card-content", 3, "ngClass", 4, "ngIf"], ["class", "resize-handle corner", "cdkDrag", "", 3, "hidden", "cdkDragMoved", 4, "ngIf"], ["cdkDragHandle", "", 1, "card-header", "d-flex", "justify-content-between", 3, "ngClass"], ["class", "align-self-center card-icon", 4, "ngIf"], [1, "align-self-center", "m-0", "px-2"], ["matTooltip", "Expand / Collapse", "matTooltipPosition", "right", 1, "align-self-center", "card-icon", "btn-blank", "expandCollapse", 3, "click", "ngClass"], ["href", "assets/icons/expand.svg#expand"], [1, "align-self-center", "card-icon"], [1, "overlay-card-content", 3, "ngClass"], ["cdkDrag", "", 1, "resize-handle", "corner", 3, "cdkDragMoved", "hidden"]], template: function OverlayComponent_Template(rf, ctx) { if (rf & 1) {
160
- i0.ɵɵprojectionDef();
161
- i0.ɵɵelementStart(0, "div", 2, 0);
162
- i0.ɵɵtemplate(2, OverlayComponent_div_2_Template, 7, 8, "div", 3)(3, OverlayComponent_div_3_Template, 2, 3, "div", 4)(4, OverlayComponent_span_4_Template, 2, 1, "span", 5);
163
- i0.ɵɵelementEnd();
164
- } if (rf & 2) {
165
- i0.ɵɵproperty("hidden", !ctx.active);
166
- i0.ɵɵadvance(2);
167
- i0.ɵɵproperty("ngIf", ctx.overlayTitle);
168
- i0.ɵɵadvance();
169
- i0.ɵɵproperty("ngIf", ctx.showBody);
170
- i0.ɵɵadvance();
171
- i0.ɵɵproperty("ngIf", ctx.resizable);
172
- } }, dependencies: [i1.NgClass, i1.NgIf, i2.CdkDrag, i2.CdkDragHandle, i3.MatTooltip], styles: [".overlay-card.card{color:var(--phoenix-text-color);background:none;max-width:100vw;font-size:12px;min-width:300px;height:100%;max-height:70vh;box-shadow:none;border:none;position:relative;z-index:200}.overlay-card.card .card-header{width:12rem;background:var(--phoenix-background-color-secondary);box-shadow:var(--phoenix-box-shadow);padding:.4rem .8rem;border-radius:10px;border:none;cursor:move;text-align:center;transition:all .2s}.overlay-card.card .card-header.with-body{border-bottom-left-radius:0;border-bottom-right-radius:0}.overlay-card.card .card-header .card-icon{display:flex;height:.7rem;width:.7rem}.overlay-card.card .card-header h5{font-size:.9rem}.overlay-card.card .card-header .expandCollapse{cursor:pointer;transition:all .2s}.overlay-card.card .card-header .expandCollapse.expand{transform:scaleY(-1)}.overlay-card.card .card-header .expandCollapse svg{width:100%;height:100%}.overlay-card.card .overlay-card-content{background:var(--phoenix-background-color-secondary);box-shadow:var(--phoenix-box-shadow);border-radius:0 10px 10px;overflow:auto;height:100%}.overlay-card.card .overlay-card-content.transparent-bg{background:none}.overlay-card.card .list-group{color:var(--phoenix-text-color-secondary);background:var(--phoenix-background-color-secondary);max-height:40vh;overflow:auto}.overlay-card.card .list-group .list-group-item{background-color:var(--phoenix-background-color-secondary);border-color:var(--phoenix-border)}.overlay-card.card .resize-handle{width:1rem;height:1rem;cursor:nwse-resize;position:absolute}.overlay-card.card .resize-handle.corner{border-right:.2rem solid var(--phoenix-text-color);border-bottom:.2rem solid var(--phoenix-text-color)}\n"], encapsulation: 2 });
173
- }
174
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OverlayComponent, [{
175
- type: Component,
176
- args: [{ selector: 'app-overlay', encapsulation: ViewEncapsulation.None, template: "<div\n #overlayCard\n class=\"overlay-card card\"\n [hidden]=\"!active\"\n cdkDrag\n cdkDragBoundary=\"body\"\n>\n <div\n class=\"card-header d-flex justify-content-between\"\n [ngClass]=\"{ 'with-body': showBody }\"\n cdkDragHandle\n *ngIf=\"overlayTitle\"\n >\n <div class=\"align-self-center card-icon\" *ngIf=\"icon\">\n <svg>\n <use attr.href=\"assets/icons/{{ icon }}.svg#{{ icon }}\"></use>\n </svg>\n </div>\n <h5 class=\"align-self-center m-0 px-2\">{{ overlayTitle }}</h5>\n <button\n class=\"align-self-center card-icon btn-blank expandCollapse\"\n matTooltip=\"Expand / Collapse\"\n matTooltipPosition=\"right\"\n [ngClass]=\"{ expand: showBody }\"\n (click)=\"showBody = !showBody\"\n >\n <svg>\n <use href=\"assets/icons/expand.svg#expand\"></use>\n </svg>\n </button>\n </div>\n <div\n class=\"overlay-card-content\"\n *ngIf=\"showBody\"\n [ngClass]=\"{ 'transparent-bg': transparentBody }\"\n >\n <ng-content></ng-content>\n </div>\n <!-- Making the overlay resizable -->\n <span\n #resizeHandleCorner\n class=\"resize-handle corner\"\n *ngIf=\"resizable\"\n [hidden]=\"!showBody\"\n cdkDrag\n (cdkDragMoved)=\"onResize()\"\n ></span>\n</div>\n", styles: [".overlay-card.card{color:var(--phoenix-text-color);background:none;max-width:100vw;font-size:12px;min-width:300px;height:100%;max-height:70vh;box-shadow:none;border:none;position:relative;z-index:200}.overlay-card.card .card-header{width:12rem;background:var(--phoenix-background-color-secondary);box-shadow:var(--phoenix-box-shadow);padding:.4rem .8rem;border-radius:10px;border:none;cursor:move;text-align:center;transition:all .2s}.overlay-card.card .card-header.with-body{border-bottom-left-radius:0;border-bottom-right-radius:0}.overlay-card.card .card-header .card-icon{display:flex;height:.7rem;width:.7rem}.overlay-card.card .card-header h5{font-size:.9rem}.overlay-card.card .card-header .expandCollapse{cursor:pointer;transition:all .2s}.overlay-card.card .card-header .expandCollapse.expand{transform:scaleY(-1)}.overlay-card.card .card-header .expandCollapse svg{width:100%;height:100%}.overlay-card.card .overlay-card-content{background:var(--phoenix-background-color-secondary);box-shadow:var(--phoenix-box-shadow);border-radius:0 10px 10px;overflow:auto;height:100%}.overlay-card.card .overlay-card-content.transparent-bg{background:none}.overlay-card.card .list-group{color:var(--phoenix-text-color-secondary);background:var(--phoenix-background-color-secondary);max-height:40vh;overflow:auto}.overlay-card.card .list-group .list-group-item{background-color:var(--phoenix-background-color-secondary);border-color:var(--phoenix-border)}.overlay-card.card .resize-handle{width:1rem;height:1rem;cursor:nwse-resize;position:absolute}.overlay-card.card .resize-handle.corner{border-right:.2rem solid var(--phoenix-text-color);border-bottom:.2rem solid var(--phoenix-text-color)}\n"] }]
177
- }], null, { overlayTitle: [{
178
- type: Input
179
- }], active: [{
180
- type: Input
181
- }], icon: [{
182
- type: Input
183
- }], resizable: [{
184
- type: Input
185
- }], transparentBody: [{
186
- type: Input
187
- }], keepAspectRatioFixed: [{
188
- type: Input
189
- }], overlayCard: [{
190
- type: ViewChild,
191
- args: ['overlayCard']
192
- }], resizeHandleCorner: [{
193
- type: ViewChild,
194
- args: ['resizeHandleCorner']
195
- }] }); })();
196
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(OverlayComponent, { className: "OverlayComponent", filePath: "components/ui-menu/overlay/overlay.component.ts", lineNumber: 20 }); })();
197
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L292ZXJsYXkvb3ZlcmxheS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L292ZXJsYXkvb3ZlcmxheS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCxTQUFTLEVBRVQsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7Ozs7O0lDSy9DLCtCQUFzRDs7SUFDcEQsMkJBQUs7SUFDSCxzQkFBOEQ7SUFFbEUsQUFERSxpQkFBTSxFQUNGOzs7SUFGRyxlQUFrRDtJQUFsRCwwRkFBa0Q7Ozs7SUFSN0QsOEJBS0M7SUFDQyx1RUFBc0Q7SUFLdEQsNkJBQXVDO0lBQUEsWUFBa0I7SUFBQSxpQkFBSztJQUM5RCxpQ0FNQztJQURDLG1OQUE4Qjs7SUFFOUIsMkJBQUs7SUFDSCwwQkFBaUQ7SUFHdkQsQUFERSxBQURFLGlCQUFNLEVBQ0MsRUFDTDs7O0lBckJKLHFFQUFxQztJQUlLLGNBQVU7SUFBVixrQ0FBVTtJQUtiLGVBQWtCO0lBQWxCLHlDQUFrQjtJQUt2RCxjQUFnQztJQUFoQyxxRUFBZ0M7OztJQVFwQywrQkFJQztJQUNDLGtCQUF5QjtJQUMzQixpQkFBTTs7O0lBSEosNEVBQWlEOzs7O0lBS25ELG1DQU9DO0lBREMseUxBQWdCLGlCQUFVLEtBQUM7SUFDNUIsaUJBQU87OztJQUhOLHlDQUFvQjs7QURqQ3hCOztHQUVHO0FBT0gsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQiw0QkFBNEI7SUFDbkIsWUFBWSxDQUFTO0lBQzlCLHFDQUFxQztJQUM1QixNQUFNLEdBQVksS0FBSyxDQUFDO0lBQ2pD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QnBCLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIFZpZXdDaGlsZCxcbiAgdHlwZSBBZnRlclZpZXdJbml0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlc2l6ZVNlbnNvciB9IGZyb20gJ2Nzcy1lbGVtZW50LXF1ZXJpZXMnO1xuXG4vKipcbiAqIENvbXBvbmVudCBmb3Igb3ZlcmxheSBwYW5lbC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLW92ZXJsYXknLFxuICB0ZW1wbGF0ZVVybDogJy4vb3ZlcmxheS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL292ZXJsYXkuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgT3ZlcmxheUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAvKiogVGl0bGUgb2YgdGhlIG92ZXJsYXkuICovXG4gIEBJbnB1dCgpIG92ZXJsYXlUaXRsZTogc3RyaW5nO1xuICAvKiogSWYgdGhlIG92ZXJsYXkgaXMgb3BlbiBvciBub3QuICovXG4gIEBJbnB1dCgpIGFjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xuICAvKiogSWNvbiBvZiB0aGUgb3ZlcmxheSBoZWFkZXIuICovXG4gIEBJbnB1dCgpIGljb246IHN0cmluZztcbiAgLyoqIElmIHRoZSBvdmVybGF5IGlzIHJlc2l6YWJsZS4gKi9cbiAgQElucHV0KCkgcmVzaXphYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIC8qKiBJZiB0aGUgb3ZlcmxheSBib2R5IGlzIHRyYW5zcGFyZW50IG9yIG5vdC4gKi9cbiAgQElucHV0KCkgdHJhbnNwYXJlbnRCb2R5OiBib29sZWFuID0gZmFsc2U7XG4gIC8qKiBJZiB0aGUgYXNwZWN0IHJhdGlvIGlzIGtlcHQgZml4ZWQgb3Igbm90LiAqL1xuICBASW5wdXQoKSBrZWVwQXNwZWN0UmF0aW9GaXhlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAvKiogSWYgdGhlIG92ZXJsYXkgYm9keSBpcyB2aXNpYmxlIG9yIG5vdC4gKi9cbiAgc2hvd0JvZHk6IGJvb2xlYW4gPSB0cnVlO1xuICAvKiogQXNwZWN0IHJhdGlvIG9mIHRoZSBvdmVybGF5IHZpZXcuICovXG4gIGFzcGVjdFJhdGlvOiBudW1iZXIgPSB3aW5kb3cuaW5uZXJXaWR0aCAvIHdpbmRvdy5pbm5lckhlaWdodDtcblxuICAvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAvLyAqIEJlbG93IGNvZGUgaXMgc3BlY2lmaWMgdG8gdGhlIG92ZXJsYXkgcmVzaXplIGZlYXR1cmUuIChMT09LIElOVE8gQ1NTIFJFU0laRSkgKlxuICAvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4gIC8qKiBDb21wbGV0ZSBvdmVybGF5IGNhcmQgY29udGFpbmluZyBib3RoIGhlYWRlciBhbmQgYm9keS4gKi9cbiAgQFZpZXdDaGlsZCgnb3ZlcmxheUNhcmQnKSBvdmVybGF5Q2FyZDogRWxlbWVudFJlZjtcbiAgLyoqIEhhbmRsZSBmb3IgcmVzaXppbmcgdGhlIG92ZXJsYXkuICovXG4gIEBWaWV3Q2hpbGQoJ3Jlc2l6ZUhhbmRsZUNvcm5lcicpIHJlc2l6ZUhhbmRsZUNvcm5lcjogRWxlbWVudFJlZjtcbiAgLyoqIE1pbmltdW0gcmVzaXphYmxlIHdpZHRoLiAqL1xuICBwcml2YXRlIE1JTl9SRVNfV0lEVEg6IG51bWJlciA9IDMwMDtcbiAgLyoqIE1pbmltdW0gcmVzaXphYmxlIGhlaWdodCAqL1xuICBwcml2YXRlIE1JTl9SRVNfSEVJR0hUOiBudW1iZXIgPSAxMDA7XG5cbiAgLyoqXG4gICAqIE1vdmUgdGhlIHJlc2l6YWJsZSBoYW5kbGUgdG8gdGhlIGJvdHRvbSByaWdodCBhZnRlciB0aGUgY29tcG9uZW50IGlzIGNyZWF0ZWQuXG4gICAqL1xuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMucmVzaXphYmxlKSB7XG4gICAgICBjb25zdCByZXNpemVIYW5kbGVFbGVtZW50ID0gdGhpcy5yZXNpemVIYW5kbGVDb3JuZXIubmF0aXZlRWxlbWVudDtcbiAgICAgIHJlc2l6ZUhhbmRsZUVsZW1lbnQuc3R5bGUuYm90dG9tID0gJzAnO1xuICAgICAgcmVzaXplSGFuZGxlRWxlbWVudC5zdHlsZS5yaWdodCA9ICcwJztcblxuICAgICAgbmV3IFJlc2l6ZVNlbnNvcih0aGlzLm92ZXJsYXlDYXJkLm5hdGl2ZUVsZW1lbnQsICgpID0+IHtcbiAgICAgICAgdGhpcy5yZXNldEhhbmRsZVBvc2l0aW9uKCk7XG4gICAgICB9KTtcblxuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsICgpID0+IHtcbiAgICAgICAgdGhpcy5yZXNldEhhbmRsZVBvc2l0aW9uKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVzaXplIHRoZSBvdmVybGF5IGNhcmQgd2hlbiB0aGUgcmVzaXplIGhhbmRsZSBpcyBkcmFnZ2VkLlxuICAgKi9cbiAgb25SZXNpemUoKSB7XG4gICAgY29uc3QgcmVzaXplSGFuZGxlRWxlbWVudCA9IHRoaXMucmVzaXplSGFuZGxlQ29ybmVyLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3Qgb3ZlcmxheUNhcmRFbGVtZW50ID0gdGhpcy5vdmVybGF5Q2FyZC5uYXRpdmVFbGVtZW50O1xuXG4gICAgY29uc3QgZHJhZ1JlY3QgPSByZXNpemVIYW5kbGVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IG92ZXJsYXlSZWN0ID0gb3ZlcmxheUNhcmRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgY29uc3Qgd2lkdGggPSBkcmFnUmVjdC5sZWZ0IC0gb3ZlcmxheVJlY3QubGVmdCArIGRyYWdSZWN0LndpZHRoO1xuICAgIGNvbnN0IGhlaWdodCA9IGRyYWdSZWN0LnRvcCAtIG92ZXJsYXlSZWN0LnRvcCArIGRyYWdSZWN0LmhlaWdodDtcblxuICAgIHRoaXMuc2V0SGFuZGxlVHJhbnNmb3JtKG92ZXJsYXlSZWN0LCBkcmFnUmVjdCk7XG5cbiAgICBpZiAod2lkdGggPiB0aGlzLk1JTl9SRVNfV0lEVEggJiYgaGVpZ2h0ID4gdGhpcy5NSU5fUkVTX0hFSUdIVCkge1xuICAgICAgb3ZlcmxheUNhcmRFbGVtZW50LnN0eWxlLndpZHRoID0gd2lkdGggKyAncHgnO1xuICAgICAgaWYgKHRoaXMua2VlcEFzcGVjdFJhdGlvRml4ZWQpIHtcbiAgICAgICAgb3ZlcmxheUNhcmRFbGVtZW50LnN0eWxlLmhlaWdodCA9IHdpZHRoIC8gdGhpcy5hc3BlY3RSYXRpbyArIDMwICsgJ3B4JztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG92ZXJsYXlDYXJkRWxlbWVudC5zdHlsZS5oZWlnaHQgPSBoZWlnaHQgKyAncHgnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCByZXNpemUgaGFuZGxlIHBvc2l0aW9uLlxuICAgKi9cbiAgcmVzZXRIYW5kbGVQb3NpdGlvbigpIHtcbiAgICBjb25zdCByZXNpemVIYW5kbGVFbGVtZW50ID0gdGhpcy5yZXNpemVIYW5kbGVDb3JuZXIubmF0aXZlRWxlbWVudDtcblxuICAgIHRoaXMuc2V0SGFuZGxlVHJhbnNmb3JtKFxuICAgICAgdGhpcy5vdmVybGF5Q2FyZC5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLFxuICAgICAgcmVzaXplSGFuZGxlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxcbiAgICApO1xuXG4gICAgcmVzaXplSGFuZGxlRWxlbWVudC5zdHlsZS5ib3R0b20gPSBudWxsO1xuICAgIHJlc2l6ZUhhbmRsZUVsZW1lbnQuc3R5bGUucmlnaHQgPSBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgcG9zaXRpb24gb2YgdGhlIHJlc2l6ZSBoYW5kbGUgdXNpbmcgdHJhbnNmb3JtM2QuXG4gICAqIEBwYXJhbSBvdmVybGF5UmVjdCBCb3VuZGluZyBjbGllbnQgcmVjdGFuZ2xlIG9mIHRoZSBvdmVybGF5IGNhcmQuXG4gICAqIEBwYXJhbSBkcmFnUmVjdCBCb3VuZGluZyBjbGllbnQgcmVjdGFuZ2xlIG9mIHRoZSByZXNpemUgaGFuZGxlLlxuICAgKi9cbiAgcHJpdmF0ZSBzZXRIYW5kbGVUcmFuc2Zvcm0ob3ZlcmxheVJlY3Q6IGFueSwgZHJhZ1JlY3Q6IGFueSkge1xuICAgIGNvbnN0IHRyYW5zbGF0ZVggPSBvdmVybGF5UmVjdC53aWR0aCAtIGRyYWdSZWN0LndpZHRoO1xuICAgIGNvbnN0IHRyYW5zbGF0ZVkgPSBvdmVybGF5UmVjdC5oZWlnaHQgLSBkcmFnUmVjdC5oZWlnaHQ7XG4gICAgdGhpcy5yZXNpemVIYW5kbGVDb3JuZXIubmF0aXZlRWxlbWVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlM2QoJHt0cmFuc2xhdGVYfXB4LCAke3RyYW5zbGF0ZVl9cHgsIDApYDtcbiAgfVxufVxuIiwiPGRpdlxuICAjb3ZlcmxheUNhcmRcbiAgY2xhc3M9XCJvdmVybGF5LWNhcmQgY2FyZFwiXG4gIFtoaWRkZW5dPVwiIWFjdGl2ZVwiXG4gIGNka0RyYWdcbiAgY2RrRHJhZ0JvdW5kYXJ5PVwiYm9keVwiXG4+XG4gIDxkaXZcbiAgICBjbGFzcz1cImNhcmQtaGVhZGVyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiXG4gICAgW25nQ2xhc3NdPVwieyAnd2l0aC1ib2R5Jzogc2hvd0JvZHkgfVwiXG4gICAgY2RrRHJhZ0hhbmRsZVxuICAgICpuZ0lmPVwib3ZlcmxheVRpdGxlXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJhbGlnbi1zZWxmLWNlbnRlciBjYXJkLWljb25cIiAqbmdJZj1cImljb25cIj5cbiAgICAgIDxzdmc+XG4gICAgICAgIDx1c2UgYXR0ci5ocmVmPVwiYXNzZXRzL2ljb25zL3t7IGljb24gfX0uc3ZnI3t7IGljb24gfX1cIj48L3VzZT5cbiAgICAgIDwvc3ZnPlxuICAgIDwvZGl2PlxuICAgIDxoNSBjbGFzcz1cImFsaWduLXNlbGYtY2VudGVyIG0tMCBweC0yXCI+e3sgb3ZlcmxheVRpdGxlIH19PC9oNT5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImFsaWduLXNlbGYtY2VudGVyIGNhcmQtaWNvbiBidG4tYmxhbmsgZXhwYW5kQ29sbGFwc2VcIlxuICAgICAgbWF0VG9vbHRpcD1cIkV4cGFuZCAvIENvbGxhcHNlXCJcbiAgICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cInJpZ2h0XCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgZXhwYW5kOiBzaG93Qm9keSB9XCJcbiAgICAgIChjbGljayk9XCJzaG93Qm9keSA9ICFzaG93Qm9keVwiXG4gICAgPlxuICAgICAgPHN2Zz5cbiAgICAgICAgPHVzZSBocmVmPVwiYXNzZXRzL2ljb25zL2V4cGFuZC5zdmcjZXhwYW5kXCI+PC91c2U+XG4gICAgICA8L3N2Zz5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cIm92ZXJsYXktY2FyZC1jb250ZW50XCJcbiAgICAqbmdJZj1cInNob3dCb2R5XCJcbiAgICBbbmdDbGFzc109XCJ7ICd0cmFuc3BhcmVudC1iZyc6IHRyYW5zcGFyZW50Qm9keSB9XCJcbiAgPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIDwhLS0gTWFraW5nIHRoZSBvdmVybGF5IHJlc2l6YWJsZSAtLT5cbiAgPHNwYW5cbiAgICAjcmVzaXplSGFuZGxlQ29ybmVyXG4gICAgY2xhc3M9XCJyZXNpemUtaGFuZGxlIGNvcm5lclwiXG4gICAgKm5nSWY9XCJyZXNpemFibGVcIlxuICAgIFtoaWRkZW5dPVwiIXNob3dCb2R5XCJcbiAgICBjZGtEcmFnXG4gICAgKGNka0RyYWdNb3ZlZCk9XCJvblJlc2l6ZSgpXCJcbiAgPjwvc3Bhbj5cbjwvZGl2PlxuIl19
@@ -1,83 +0,0 @@
1
- import { Component, ViewChild, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../../../../services/event-display.service";
4
- import * as i2 from "@angular/material/tooltip";
5
- import * as i3 from "../../menu-toggle/menu-toggle.component";
6
- import * as i4 from "../../overlay/overlay.component";
7
- const _c0 = ["overlayWindow"];
8
- export class OverlayViewWindowComponent {
9
- eventDisplay;
10
- showOverlay = true;
11
- transparentBody = false;
12
- orthographicView = false;
13
- overlayViewFixed = false;
14
- overlayWindow;
15
- constructor(eventDisplay) {
16
- this.eventDisplay = eventDisplay;
17
- }
18
- ngAfterViewInit() {
19
- const canvas = this.initializeCanvas(this.overlayWindow.nativeElement);
20
- this.eventDisplay.setOverlayRenderer(canvas);
21
- }
22
- initializeCanvas(canvas) {
23
- const width = window.innerWidth / 2.5;
24
- const height = window.innerHeight / 2.5;
25
- canvas.width = width;
26
- canvas.height = height;
27
- canvas.style.width = width.toString() + ' px';
28
- canvas.style.height = height.toString() + ' px';
29
- return canvas;
30
- }
31
- switchOverlayView() {
32
- this.orthographicView = !this.orthographicView;
33
- this.eventDisplay
34
- .getUIManager()
35
- .toggleOrthographicView(this.orthographicView);
36
- }
37
- fixOverlayView() {
38
- this.overlayViewFixed = !this.overlayViewFixed;
39
- this.eventDisplay.fixOverlayView(this.overlayViewFixed);
40
- }
41
- toggleBgTransparency() {
42
- this.transparentBody = !this.transparentBody;
43
- }
44
- static ɵfac = function OverlayViewWindowComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || OverlayViewWindowComponent)(i0.ɵɵdirectiveInject(i1.EventDisplayService)); };
45
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: OverlayViewWindowComponent, selectors: [["app-overlay-view-window"]], viewQuery: function OverlayViewWindowComponent_Query(rf, ctx) { if (rf & 1) {
46
- i0.ɵɵviewQuery(_c0, 5);
47
- } if (rf & 2) {
48
- let _t;
49
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.overlayWindow = _t.first);
50
- } }, inputs: { showOverlay: "showOverlay" }, decls: 8, vars: 9, consts: [["overlayWindow", ""], ["overlayTitle", "Overlay View", "icon", "overlay", 3, "resizable", "transparentBody", "active", "keepAspectRatioFixed"], [1, "overlay-view-wrapper"], ["id", "overlay-canvas", 3, "hidden"], [1, "overlay-view-controls", "position-absolute", "d-flex", "flex-row"], ["icon", "transparent", "matTooltip", "Toggle background transparency", 1, "overlay-view-control", 3, "click"], ["icon", "move-lock", 1, "overlay-view-control", 3, "click", "matTooltip", "active"], [1, "overlay-view-control", 3, "click", "icon", "matTooltip"]], template: function OverlayViewWindowComponent_Template(rf, ctx) { if (rf & 1) {
51
- const _r1 = i0.ɵɵgetCurrentView();
52
- i0.ɵɵelementStart(0, "app-overlay", 1)(1, "div", 2);
53
- i0.ɵɵelement(2, "canvas", 3, 0);
54
- i0.ɵɵelementStart(4, "div", 4)(5, "app-menu-toggle", 5);
55
- i0.ɵɵlistener("click", function OverlayViewWindowComponent_Template_app_menu_toggle_click_5_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleBgTransparency()); });
56
- i0.ɵɵelementEnd();
57
- i0.ɵɵelementStart(6, "app-menu-toggle", 6);
58
- i0.ɵɵlistener("click", function OverlayViewWindowComponent_Template_app_menu_toggle_click_6_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.fixOverlayView()); });
59
- i0.ɵɵelementEnd();
60
- i0.ɵɵelementStart(7, "app-menu-toggle", 7);
61
- i0.ɵɵlistener("click", function OverlayViewWindowComponent_Template_app_menu_toggle_click_7_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.switchOverlayView()); });
62
- i0.ɵɵelementEnd()()()();
63
- } if (rf & 2) {
64
- i0.ɵɵproperty("resizable", true)("transparentBody", ctx.transparentBody)("active", ctx.showOverlay)("keepAspectRatioFixed", true);
65
- i0.ɵɵadvance(2);
66
- i0.ɵɵproperty("hidden", !ctx.showOverlay);
67
- i0.ɵɵadvance(4);
68
- i0.ɵɵproperty("matTooltip", (ctx.overlayViewFixed ? "Restore" : "Fix") + " overlay view")("active", ctx.overlayViewFixed);
69
- i0.ɵɵadvance();
70
- i0.ɵɵproperty("icon", ctx.orthographicView ? "orthographic" : "perspective")("matTooltip", "Switch to " + (ctx.orthographicView ? "orthographic" : "perspective") + " view");
71
- } }, dependencies: [i2.MatTooltip, i3.MenuToggleComponent, i4.OverlayComponent], styles: ["#overlay-canvas[_ngcontent-%COMP%]{background-color:#0000001a;width:100%}.overlay-view-controls[_ngcontent-%COMP%]{bottom:1em;right:1em;opacity:0;transition:opacity .2s}.overlay-view-controls[_ngcontent-%COMP%] .overlay-view-control[_ngcontent-%COMP%]{background:var(--phoenix-background-color-secondary);box-shadow:var(--phoenix-box-shadow);overflow:hidden;width:2.5rem;height:2.5rem;border-radius:50%;display:flex;justify-content:center;align-items:center}.overlay-view-wrapper[_ngcontent-%COMP%]:hover .overlay-view-controls[_ngcontent-%COMP%]{opacity:1;transition:opacity .2s}"] });
72
- }
73
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OverlayViewWindowComponent, [{
74
- type: Component,
75
- args: [{ selector: 'app-overlay-view-window', template: "<app-overlay\n overlayTitle=\"Overlay View\"\n icon=\"overlay\"\n [resizable]=\"true\"\n [transparentBody]=\"transparentBody\"\n [active]=\"showOverlay\"\n [keepAspectRatioFixed]=\"true\"\n>\n <div class=\"overlay-view-wrapper\">\n <canvas #overlayWindow id=\"overlay-canvas\" [hidden]=\"!showOverlay\">\n </canvas>\n <div class=\"overlay-view-controls position-absolute d-flex flex-row\">\n <app-menu-toggle\n class=\"overlay-view-control\"\n icon=\"transparent\"\n matTooltip=\"Toggle background transparency\"\n (click)=\"toggleBgTransparency()\"\n >\n </app-menu-toggle>\n <app-menu-toggle\n class=\"overlay-view-control\"\n icon=\"move-lock\"\n [matTooltip]=\"(overlayViewFixed ? 'Restore' : 'Fix') + ' overlay view'\"\n [active]=\"overlayViewFixed\"\n (click)=\"fixOverlayView()\"\n >\n </app-menu-toggle>\n <app-menu-toggle\n class=\"overlay-view-control\"\n [icon]=\"orthographicView ? 'orthographic' : 'perspective'\"\n [matTooltip]=\"\n 'Switch to ' +\n (orthographicView ? 'orthographic' : 'perspective') +\n ' view'\n \"\n (click)=\"switchOverlayView()\"\n >\n </app-menu-toggle>\n </div>\n </div>\n</app-overlay>\n", styles: ["#overlay-canvas{background-color:#0000001a;width:100%}.overlay-view-controls{bottom:1em;right:1em;opacity:0;transition:opacity .2s}.overlay-view-controls .overlay-view-control{background:var(--phoenix-background-color-secondary);box-shadow:var(--phoenix-box-shadow);overflow:hidden;width:2.5rem;height:2.5rem;border-radius:50%;display:flex;justify-content:center;align-items:center}.overlay-view-wrapper:hover .overlay-view-controls{opacity:1;transition:opacity .2s}\n"] }]
76
- }], () => [{ type: i1.EventDisplayService }], { showOverlay: [{
77
- type: Input
78
- }], overlayWindow: [{
79
- type: ViewChild,
80
- args: ['overlayWindow']
81
- }] }); })();
82
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(OverlayViewWindowComponent, { className: "OverlayViewWindowComponent", filePath: "components/ui-menu/overlay-view/overlay-view-window/overlay-view-window.component.ts", lineNumber: 10 }); })();
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS12aWV3LXdpbmRvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29tcG9uZW50cy91aS1tZW51L292ZXJsYXktdmlldy9vdmVybGF5LXZpZXctd2luZG93L292ZXJsYXktdmlldy13aW5kb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvdWktbWVudS9vdmVybGF5LXZpZXcvb3ZlcmxheS12aWV3LXdpbmRvdy9vdmVybGF5LXZpZXctd2luZG93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFzQixLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFTaEYsTUFBTSxPQUFPLDBCQUEwQjtJQU9qQjtJQU5YLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDNUIsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUN4QixnQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFDekIsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO0lBQ0csYUFBYSxDQUFnQztJQUV6RSxZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7SUFBRyxDQUFDO0lBRXpELGVBQWU7UUFDYixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxNQUF5QjtRQUN4QyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQztRQUN0QyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQztRQUN4QyxNQUFNLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNyQixNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUN2QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQzlDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxRQUFRLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFDaEQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUMvQyxJQUFJLENBQUMsWUFBWTthQUNkLFlBQVksRUFBRTthQUNkLHNCQUFzQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQy9DLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDL0MsQ0FBQztvSEF0Q1UsMEJBQTBCOzZEQUExQiwwQkFBMEI7Ozs7Ozs7WUNEckMsQUFSRixzQ0FPQyxhQUNtQztZQUNoQywrQkFDUztZQUVQLEFBREYsOEJBQXFFLHlCQU1sRTtZQURDLHNKQUFTLDBCQUFzQixLQUFDO1lBRWxDLGlCQUFrQjtZQUNsQiwwQ0FNQztZQURDLHNKQUFTLG9CQUFnQixLQUFDO1lBRTVCLGlCQUFrQjtZQUNsQiwwQ0FTQztZQURDLHNKQUFTLHVCQUFtQixLQUFDO1lBS3JDLEFBREUsQUFERSxBQURFLGlCQUFrQixFQUNkLEVBQ0YsRUFDTTs7WUFsQ1osQUFEQSxBQURBLEFBREEsZ0NBQWtCLHdDQUNpQiwyQkFDYiw4QkFDTztZQUdnQixlQUF1QjtZQUF2Qix5Q0FBdUI7WUFhOUQsZUFBdUU7WUFDdkUsQUFEQSx5RkFBdUUsZ0NBQzVDO1lBTTNCLGNBQTBEO1lBQzFELEFBREEsNEVBQTBELGdHQUt6RDs7O2lGRHpCSSwwQkFBMEI7Y0FMdEMsU0FBUzsyQkFDRSx5QkFBeUI7b0RBSzFCLFdBQVc7a0JBQW5CLEtBQUs7WUFJc0IsYUFBYTtrQkFBeEMsU0FBUzttQkFBQyxlQUFlOztrRkFMZiwwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDaGlsZCwgdHlwZSBBZnRlclZpZXdJbml0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFdmVudERpc3BsYXlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvZXZlbnQtZGlzcGxheS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLW92ZXJsYXktdmlldy13aW5kb3cnLFxuICB0ZW1wbGF0ZVVybDogJy4vb3ZlcmxheS12aWV3LXdpbmRvdy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL292ZXJsYXktdmlldy13aW5kb3cuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgT3ZlcmxheVZpZXdXaW5kb3dDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgc2hvd092ZXJsYXkgPSB0cnVlO1xuICB0cmFuc3BhcmVudEJvZHkgPSBmYWxzZTtcbiAgb3J0aG9ncmFwaGljVmlldyA9IGZhbHNlO1xuICBvdmVybGF5Vmlld0ZpeGVkID0gZmFsc2U7XG4gIEBWaWV3Q2hpbGQoJ292ZXJsYXlXaW5kb3cnKSBvdmVybGF5V2luZG93OiBFbGVtZW50UmVmPEhUTUxDYW52YXNFbGVtZW50PjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGV2ZW50RGlzcGxheTogRXZlbnREaXNwbGF5U2VydmljZSkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY2FudmFzID0gdGhpcy5pbml0aWFsaXplQ2FudmFzKHRoaXMub3ZlcmxheVdpbmRvdy5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLmV2ZW50RGlzcGxheS5zZXRPdmVybGF5UmVuZGVyZXIoY2FudmFzKTtcbiAgfVxuXG4gIGluaXRpYWxpemVDYW52YXMoY2FudmFzOiBIVE1MQ2FudmFzRWxlbWVudCk6IEhUTUxDYW52YXNFbGVtZW50IHtcbiAgICBjb25zdCB3aWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoIC8gMi41O1xuICAgIGNvbnN0IGhlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodCAvIDIuNTtcbiAgICBjYW52YXMud2lkdGggPSB3aWR0aDtcbiAgICBjYW52YXMuaGVpZ2h0ID0gaGVpZ2h0O1xuICAgIGNhbnZhcy5zdHlsZS53aWR0aCA9IHdpZHRoLnRvU3RyaW5nKCkgKyAnIHB4JztcbiAgICBjYW52YXMuc3R5bGUuaGVpZ2h0ID0gaGVpZ2h0LnRvU3RyaW5nKCkgKyAnIHB4JztcbiAgICByZXR1cm4gY2FudmFzO1xuICB9XG5cbiAgc3dpdGNoT3ZlcmxheVZpZXcoKSB7XG4gICAgdGhpcy5vcnRob2dyYXBoaWNWaWV3ID0gIXRoaXMub3J0aG9ncmFwaGljVmlldztcbiAgICB0aGlzLmV2ZW50RGlzcGxheVxuICAgICAgLmdldFVJTWFuYWdlcigpXG4gICAgICAudG9nZ2xlT3J0aG9ncmFwaGljVmlldyh0aGlzLm9ydGhvZ3JhcGhpY1ZpZXcpO1xuICB9XG5cbiAgZml4T3ZlcmxheVZpZXcoKSB7XG4gICAgdGhpcy5vdmVybGF5Vmlld0ZpeGVkID0gIXRoaXMub3ZlcmxheVZpZXdGaXhlZDtcbiAgICB0aGlzLmV2ZW50RGlzcGxheS5maXhPdmVybGF5Vmlldyh0aGlzLm92ZXJsYXlWaWV3Rml4ZWQpO1xuICB9XG5cbiAgdG9nZ2xlQmdUcmFuc3BhcmVuY3koKSB7XG4gICAgdGhpcy50cmFuc3BhcmVudEJvZHkgPSAhdGhpcy50cmFuc3BhcmVudEJvZHk7XG4gIH1cbn1cbiIsIjxhcHAtb3ZlcmxheVxuICBvdmVybGF5VGl0bGU9XCJPdmVybGF5IFZpZXdcIlxuICBpY29uPVwib3ZlcmxheVwiXG4gIFtyZXNpemFibGVdPVwidHJ1ZVwiXG4gIFt0cmFuc3BhcmVudEJvZHldPVwidHJhbnNwYXJlbnRCb2R5XCJcbiAgW2FjdGl2ZV09XCJzaG93T3ZlcmxheVwiXG4gIFtrZWVwQXNwZWN0UmF0aW9GaXhlZF09XCJ0cnVlXCJcbj5cbiAgPGRpdiBjbGFzcz1cIm92ZXJsYXktdmlldy13cmFwcGVyXCI+XG4gICAgPGNhbnZhcyAjb3ZlcmxheVdpbmRvdyBpZD1cIm92ZXJsYXktY2FudmFzXCIgW2hpZGRlbl09XCIhc2hvd092ZXJsYXlcIj5cbiAgICA8L2NhbnZhcz5cbiAgICA8ZGl2IGNsYXNzPVwib3ZlcmxheS12aWV3LWNvbnRyb2xzIHBvc2l0aW9uLWFic29sdXRlIGQtZmxleCBmbGV4LXJvd1wiPlxuICAgICAgPGFwcC1tZW51LXRvZ2dsZVxuICAgICAgICBjbGFzcz1cIm92ZXJsYXktdmlldy1jb250cm9sXCJcbiAgICAgICAgaWNvbj1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgbWF0VG9vbHRpcD1cIlRvZ2dsZSBiYWNrZ3JvdW5kIHRyYW5zcGFyZW5jeVwiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVCZ1RyYW5zcGFyZW5jeSgpXCJcbiAgICAgID5cbiAgICAgIDwvYXBwLW1lbnUtdG9nZ2xlPlxuICAgICAgPGFwcC1tZW51LXRvZ2dsZVxuICAgICAgICBjbGFzcz1cIm92ZXJsYXktdmlldy1jb250cm9sXCJcbiAgICAgICAgaWNvbj1cIm1vdmUtbG9ja1wiXG4gICAgICAgIFttYXRUb29sdGlwXT1cIihvdmVybGF5Vmlld0ZpeGVkID8gJ1Jlc3RvcmUnIDogJ0ZpeCcpICsgJyBvdmVybGF5IHZpZXcnXCJcbiAgICAgICAgW2FjdGl2ZV09XCJvdmVybGF5Vmlld0ZpeGVkXCJcbiAgICAgICAgKGNsaWNrKT1cImZpeE92ZXJsYXlWaWV3KClcIlxuICAgICAgPlxuICAgICAgPC9hcHAtbWVudS10b2dnbGU+XG4gICAgICA8YXBwLW1lbnUtdG9nZ2xlXG4gICAgICAgIGNsYXNzPVwib3ZlcmxheS12aWV3LWNvbnRyb2xcIlxuICAgICAgICBbaWNvbl09XCJvcnRob2dyYXBoaWNWaWV3ID8gJ29ydGhvZ3JhcGhpYycgOiAncGVyc3BlY3RpdmUnXCJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiXG4gICAgICAgICAgJ1N3aXRjaCB0byAnICtcbiAgICAgICAgICAob3J0aG9ncmFwaGljVmlldyA/ICdvcnRob2dyYXBoaWMnIDogJ3BlcnNwZWN0aXZlJykgK1xuICAgICAgICAgICcgdmlldydcbiAgICAgICAgXCJcbiAgICAgICAgKGNsaWNrKT1cInN3aXRjaE92ZXJsYXlWaWV3KClcIlxuICAgICAgPlxuICAgICAgPC9hcHAtbWVudS10b2dnbGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9hcHAtb3ZlcmxheT5cbiJdfQ==