phoenix-ui-components 2.11.4 → 2.12.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 (100) 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/ring-loader/ring-loader.component.d.ts +1 -1
  10. package/dist/components/ui-menu/animate-camera/animate-camera.component.d.ts +1 -1
  11. package/dist/components/ui-menu/animate-event/animate-event.component.d.ts +1 -1
  12. package/dist/components/ui-menu/ar-toggle/ar-toggle.component.d.ts +1 -1
  13. package/dist/components/ui-menu/auto-rotate/auto-rotate.component.d.ts +1 -1
  14. package/dist/components/ui-menu/collections-info/collections-info-overlay/collections-info-overlay.component.d.ts +1 -1
  15. package/dist/components/ui-menu/collections-info/collections-info.component.d.ts +1 -1
  16. package/dist/components/ui-menu/cycle-events/cycle-events.component.d.ts +1 -1
  17. package/dist/components/ui-menu/dark-theme/dark-theme.component.d.ts +1 -1
  18. package/dist/components/ui-menu/event-data-explorer/event-data-explorer-dialog/event-data-explorer-dialog.component.d.ts +3 -2
  19. package/dist/components/ui-menu/event-data-explorer/event-data-explorer.component.d.ts +1 -1
  20. package/dist/components/ui-menu/event-selector/event-selector.component.d.ts +1 -1
  21. package/dist/components/ui-menu/experiment-info/experiment-info.component.d.ts +1 -1
  22. package/dist/components/ui-menu/info-panel/info-panel-overlay/info-panel-overlay.component.d.ts +1 -1
  23. package/dist/components/ui-menu/info-panel/info-panel.component.d.ts +1 -1
  24. package/dist/components/ui-menu/io-options/io-options-dialog/io-options-dialog.component.d.ts +2 -1
  25. package/dist/components/ui-menu/io-options/io-options.component.d.ts +1 -1
  26. package/dist/components/ui-menu/main-view-toggle/main-view-toggle.component.d.ts +1 -1
  27. package/dist/components/ui-menu/menu-toggle/menu-toggle.component.d.ts +1 -1
  28. package/dist/components/ui-menu/object-clipping/object-clipping.component.d.ts +3 -4
  29. package/dist/components/ui-menu/object-selection/object-selection-overlay/object-selection-overlay.component.d.ts +1 -1
  30. package/dist/components/ui-menu/object-selection/object-selection.component.d.ts +1 -1
  31. package/dist/components/ui-menu/overlay/overlay.component.d.ts +1 -1
  32. package/dist/components/ui-menu/overlay-view/overlay-view-window/overlay-view-window.component.d.ts +1 -1
  33. package/dist/components/ui-menu/overlay-view/overlay-view.component.d.ts +1 -1
  34. package/dist/components/ui-menu/performance-toggle/performance-toggle.component.d.ts +1 -1
  35. package/dist/components/ui-menu/share-link/share-link-dialog/share-link-dialog.component.d.ts +1 -1
  36. package/dist/components/ui-menu/share-link/share-link.component.d.ts +1 -1
  37. package/dist/components/ui-menu/ss-mode/ss-mode.component.d.ts +1 -1
  38. package/dist/components/ui-menu/tree-menu/tree-menu-item/tree-menu-item.component.d.ts +1 -1
  39. package/dist/components/ui-menu/tree-menu/tree-menu.component.d.ts +1 -1
  40. package/dist/components/ui-menu/ui-menu-wrapper/ui-menu-wrapper.component.d.ts +1 -1
  41. package/dist/components/ui-menu/ui-menu.component.d.ts +1 -1
  42. package/dist/components/ui-menu/view-options/view-options.component.d.ts +1 -1
  43. package/dist/components/ui-menu/vr-toggle/vr-toggle.component.d.ts +1 -1
  44. package/dist/components/ui-menu/zoom-controls/zoom-controls.component.d.ts +1 -1
  45. package/dist/esm2020/components/embed-menu/embed-menu.component.mjs +11 -7
  46. package/dist/esm2020/components/embed-menu/experiment-link/experiment-link.component.mjs +11 -7
  47. package/dist/esm2020/components/file-explorer/file-explorer.component.mjs +59 -11
  48. package/dist/esm2020/components/loader/loader.component.mjs +53 -11
  49. package/dist/esm2020/components/nav/nav.component.mjs +11 -7
  50. package/dist/esm2020/components/phoenix-menu/config/config-slider/config-slider.component.mjs +42 -22
  51. package/dist/esm2020/components/phoenix-menu/phoenix-menu-item/phoenix-menu-item.component.mjs +281 -12
  52. package/dist/esm2020/components/phoenix-menu/phoenix-menu.component.mjs +16 -9
  53. package/dist/esm2020/components/phoenix-ui.module.mjs +68 -67
  54. package/dist/esm2020/components/ring-loader/ring-loader.component.mjs +11 -7
  55. package/dist/esm2020/components/ui-menu/animate-camera/animate-camera.component.mjs +34 -9
  56. package/dist/esm2020/components/ui-menu/animate-event/animate-event.component.mjs +13 -7
  57. package/dist/esm2020/components/ui-menu/ar-toggle/ar-toggle.component.mjs +41 -7
  58. package/dist/esm2020/components/ui-menu/auto-rotate/auto-rotate.component.mjs +13 -7
  59. package/dist/esm2020/components/ui-menu/collections-info/collections-info-overlay/collections-info-overlay.component.mjs +188 -9
  60. package/dist/esm2020/components/ui-menu/collections-info/collections-info.component.mjs +13 -7
  61. package/dist/esm2020/components/ui-menu/cycle-events/cycle-events.component.mjs +15 -9
  62. package/dist/esm2020/components/ui-menu/dark-theme/dark-theme.component.mjs +13 -7
  63. package/dist/esm2020/components/ui-menu/event-data-explorer/event-data-explorer-dialog/event-data-explorer-dialog.component.mjs +83 -13
  64. package/dist/esm2020/components/ui-menu/event-data-explorer/event-data-explorer.component.mjs +15 -9
  65. package/dist/esm2020/components/ui-menu/event-selector/event-selector.component.mjs +32 -7
  66. package/dist/esm2020/components/ui-menu/experiment-info/experiment-info.component.mjs +81 -13
  67. package/dist/esm2020/components/ui-menu/info-panel/info-panel-overlay/info-panel-overlay.component.mjs +38 -9
  68. package/dist/esm2020/components/ui-menu/info-panel/info-panel.component.mjs +13 -7
  69. package/dist/esm2020/components/ui-menu/io-options/io-options-dialog/io-options-dialog.component.mjs +122 -10
  70. package/dist/esm2020/components/ui-menu/io-options/io-options.component.mjs +15 -9
  71. package/dist/esm2020/components/ui-menu/main-view-toggle/main-view-toggle.component.mjs +13 -7
  72. package/dist/esm2020/components/ui-menu/menu-toggle/menu-toggle.component.mjs +29 -15
  73. package/dist/esm2020/components/ui-menu/object-clipping/object-clipping.component.mjs +42 -11
  74. package/dist/esm2020/components/ui-menu/object-selection/object-selection-overlay/object-selection-overlay.component.mjs +40 -9
  75. package/dist/esm2020/components/ui-menu/object-selection/object-selection.component.mjs +13 -7
  76. package/dist/esm2020/components/ui-menu/overlay/overlay.component.mjs +102 -23
  77. package/dist/esm2020/components/ui-menu/overlay-view/overlay-view-window/overlay-view-window.component.mjs +38 -12
  78. package/dist/esm2020/components/ui-menu/overlay-view/overlay-view.component.mjs +13 -7
  79. package/dist/esm2020/components/ui-menu/performance-toggle/performance-toggle.component.mjs +13 -7
  80. package/dist/esm2020/components/ui-menu/share-link/share-link-dialog/share-link-dialog.component.mjs +94 -10
  81. package/dist/esm2020/components/ui-menu/share-link/share-link.component.mjs +13 -7
  82. package/dist/esm2020/components/ui-menu/ss-mode/ss-mode.component.mjs +13 -7
  83. package/dist/esm2020/components/ui-menu/tree-menu/tree-menu-item/tree-menu-item.component.mjs +69 -12
  84. package/dist/esm2020/components/ui-menu/tree-menu/tree-menu.component.mjs +14 -7
  85. package/dist/esm2020/components/ui-menu/ui-menu-wrapper/ui-menu-wrapper.component.mjs +26 -7
  86. package/dist/esm2020/components/ui-menu/ui-menu.component.mjs +23 -11
  87. package/dist/esm2020/components/ui-menu/view-options/view-options.component.mjs +54 -7
  88. package/dist/esm2020/components/ui-menu/vr-toggle/vr-toggle.component.mjs +13 -7
  89. package/dist/esm2020/components/ui-menu/zoom-controls/zoom-controls.component.mjs +19 -7
  90. package/dist/esm2020/services/error-message-service.mjs +9 -9
  91. package/dist/esm2020/services/event-display.service.mjs +9 -9
  92. package/dist/esm2020/services/extras/attribute.pipe.mjs +9 -9
  93. package/dist/esm2020/services/extras/event-data-import.mjs +2 -1
  94. package/dist/esm2020/services/global-error-handler.mjs +6 -6
  95. package/dist/fesm2015/phoenix-ui-components.mjs +2217 -336
  96. package/dist/fesm2015/phoenix-ui-components.mjs.map +1 -1
  97. package/dist/fesm2020/phoenix-ui-components.mjs +1918 -463
  98. package/dist/fesm2020/phoenix-ui-components.mjs.map +1 -1
  99. package/dist/services/extras/event-data-import.d.ts +1 -0
  100. package/package.json +7 -7
@@ -6,6 +6,250 @@ import * as i3 from "@angular/material/slide-toggle";
6
6
  import * as i4 from "@angular/material/checkbox";
7
7
  import * as i5 from "@rp3e11/ngx-slider";
8
8
  import * as i6 from "../config/config-slider/config-slider.component";
9
+ const _c0 = ["phoenixMenuItem"];
10
+ function PhoenixMenuItemComponent_ng_container_3_ng_container_2_Template(rf, ctx) { if (rf & 1) {
11
+ i0.ɵɵelementContainer(0);
12
+ } }
13
+ function PhoenixMenuItemComponent_ng_container_3_Template(rf, ctx) { if (rf & 1) {
14
+ const _r9 = i0.ɵɵgetCurrentView();
15
+ i0.ɵɵelementContainerStart(0);
16
+ i0.ɵɵelementStart(1, "mat-slide-toggle", 9);
17
+ i0.ɵɵlistener("change", function PhoenixMenuItemComponent_ng_container_3_Template_mat_slide_toggle_change_1_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r8 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r8.currentNode.toggleSelfAndDescendants($event.checked)); });
18
+ i0.ɵɵtemplate(2, PhoenixMenuItemComponent_ng_container_3_ng_container_2_Template, 1, 0, "ng-container", 10);
19
+ i0.ɵɵelementEnd();
20
+ i0.ɵɵelementContainerEnd();
21
+ } if (rf & 2) {
22
+ const ctx_r1 = i0.ɵɵnextContext();
23
+ const _r2 = i0.ɵɵreference(5);
24
+ i0.ɵɵadvance(1);
25
+ i0.ɵɵproperty("checked", ctx_r1.currentNode.toggleState);
26
+ i0.ɵɵadvance(1);
27
+ i0.ɵɵproperty("ngTemplateOutlet", _r2);
28
+ } }
29
+ function PhoenixMenuItemComponent_ng_template_4_span_1_Template(rf, ctx) { if (rf & 1) {
30
+ i0.ɵɵelementStart(0, "span", 14);
31
+ i0.ɵɵnamespaceSVG();
32
+ i0.ɵɵelementStart(1, "svg");
33
+ i0.ɵɵelement(2, "use");
34
+ i0.ɵɵelementEnd()();
35
+ } if (rf & 2) {
36
+ const ctx_r10 = i0.ɵɵnextContext(2);
37
+ i0.ɵɵadvance(2);
38
+ i0.ɵɵattributeInterpolate2("href", "assets/icons/", ctx_r10.currentNode.icon, ".svg#", ctx_r10.currentNode.icon, "");
39
+ } }
40
+ function PhoenixMenuItemComponent_ng_template_4_Template(rf, ctx) { if (rf & 1) {
41
+ i0.ɵɵelementStart(0, "span", 11);
42
+ i0.ɵɵtemplate(1, PhoenixMenuItemComponent_ng_template_4_span_1_Template, 3, 2, "span", 12);
43
+ i0.ɵɵelementStart(2, "span", 13);
44
+ i0.ɵɵtext(3);
45
+ i0.ɵɵelementEnd()();
46
+ } if (rf & 2) {
47
+ const ctx_r3 = i0.ɵɵnextContext();
48
+ i0.ɵɵadvance(1);
49
+ i0.ɵɵproperty("ngIf", ctx_r3.currentNode.icon);
50
+ i0.ɵɵadvance(1);
51
+ i0.ɵɵproperty("title", ctx_r3.currentNode.name);
52
+ i0.ɵɵadvance(1);
53
+ i0.ɵɵtextInterpolate(ctx_r3.currentNode.name);
54
+ } }
55
+ function PhoenixMenuItemComponent_div_7_div_4_Template(rf, ctx) { if (rf & 1) {
56
+ const _r14 = i0.ɵɵgetCurrentView();
57
+ i0.ɵɵnamespaceSVG();
58
+ i0.ɵɵnamespaceHTML();
59
+ i0.ɵɵelementStart(0, "div", 20);
60
+ i0.ɵɵlistener("click", function PhoenixMenuItemComponent_div_7_div_4_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r14); const ctx_r13 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r13.currentNode.configActive = false); });
61
+ i0.ɵɵelementEnd();
62
+ } }
63
+ const _c1 = function (a0) { return { "font-weight-bold w-100": a0 }; };
64
+ function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_span_1_Template(rf, ctx) { if (rf & 1) {
65
+ i0.ɵɵelementStart(0, "span", 26);
66
+ i0.ɵɵtext(1);
67
+ i0.ɵɵelementEnd();
68
+ } if (rf & 2) {
69
+ const config_r15 = i0.ɵɵnextContext(2).$implicit;
70
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c1, config_r15.type === "label"));
71
+ i0.ɵɵadvance(1);
72
+ i0.ɵɵtextInterpolate1(" ", config_r15.label, " ");
73
+ } }
74
+ function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_mat_checkbox_1_Template(rf, ctx) { if (rf & 1) {
75
+ const _r28 = i0.ɵɵgetCurrentView();
76
+ i0.ɵɵelementStart(0, "mat-checkbox", 9);
77
+ i0.ɵɵlistener("change", function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_mat_checkbox_1_Template_mat_checkbox_change_0_listener($event) { i0.ɵɵrestoreView(_r28); const config_r15 = i0.ɵɵnextContext(3).$implicit; config_r15.onChange($event.checked); return i0.ɵɵresetView(config_r15.isChecked = $event.checked); });
78
+ i0.ɵɵelementEnd();
79
+ } if (rf & 2) {
80
+ const config_r15 = i0.ɵɵnextContext(3).$implicit;
81
+ i0.ɵɵproperty("checked", config_r15.isChecked);
82
+ } }
83
+ function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_app_config_slider_2_Template(rf, ctx) { if (rf & 1) {
84
+ const _r32 = i0.ɵɵgetCurrentView();
85
+ i0.ɵɵelementStart(0, "app-config-slider", 34);
86
+ i0.ɵɵlistener("onChange", function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_app_config_slider_2_Template_app_config_slider_onChange_0_listener($event) { i0.ɵɵrestoreView(_r32); const config_r15 = i0.ɵɵnextContext(3).$implicit; config_r15.onChange($event); return i0.ɵɵresetView(config_r15.value = $event); });
87
+ i0.ɵɵelementEnd();
88
+ } if (rf & 2) {
89
+ const config_r15 = i0.ɵɵnextContext(3).$implicit;
90
+ i0.ɵɵproperty("value", config_r15.value)("min", config_r15.min)("max", config_r15.max)("step", config_r15.step)("allowCustomValue", config_r15.allowCustomValue);
91
+ } }
92
+ function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_button_3_Template(rf, ctx) { if (rf & 1) {
93
+ const _r36 = i0.ɵɵgetCurrentView();
94
+ i0.ɵɵelementStart(0, "button", 35);
95
+ i0.ɵɵlistener("click", function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_button_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r36); const config_r15 = i0.ɵɵnextContext(3).$implicit; return i0.ɵɵresetView(config_r15.onClick()); });
96
+ i0.ɵɵtext(1);
97
+ i0.ɵɵelementEnd();
98
+ } if (rf & 2) {
99
+ const config_r15 = i0.ɵɵnextContext(3).$implicit;
100
+ i0.ɵɵadvance(1);
101
+ i0.ɵɵtextInterpolate1(" ", config_r15.label, " ");
102
+ } }
103
+ function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_input_4_Template(rf, ctx) { if (rf & 1) {
104
+ const _r40 = i0.ɵɵgetCurrentView();
105
+ i0.ɵɵelementStart(0, "input", 36);
106
+ i0.ɵɵlistener("input", function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_input_4_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r40); const config_r15 = i0.ɵɵnextContext(3).$implicit; config_r15.onChange($event.target.value); return i0.ɵɵresetView(config_r15.color = $event.target.value); });
107
+ i0.ɵɵelementEnd();
108
+ } if (rf & 2) {
109
+ const config_r15 = i0.ɵɵnextContext(3).$implicit;
110
+ i0.ɵɵproperty("value", config_r15.color);
111
+ } }
112
+ const _c2 = function (a0, a1, a2) { return { floor: a0, ceil: a1, step: a2, animate: false }; };
113
+ function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_div_5_Template(rf, ctx) { if (rf & 1) {
114
+ const _r44 = i0.ɵɵgetCurrentView();
115
+ i0.ɵɵelementStart(0, "div", 37)(1, "div", 38)(2, "input", 39);
116
+ i0.ɵɵlistener("input", function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_div_5_Template_input_input_2_listener($event) { i0.ɵɵrestoreView(_r44); const config_r15 = i0.ɵɵnextContext(3).$implicit; config_r15.value = $event.target.value; return i0.ɵɵresetView(config_r15.onChange(config_r15)); });
117
+ i0.ɵɵelementEnd();
118
+ i0.ɵɵelementStart(3, "input", 40);
119
+ i0.ɵɵlistener("input", function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_div_5_Template_input_input_3_listener($event) { i0.ɵɵrestoreView(_r44); const config_r15 = i0.ɵɵnextContext(3).$implicit; config_r15.highValue = $event.target.value; return i0.ɵɵresetView(config_r15.onChange(config_r15)); });
120
+ i0.ɵɵelementEnd()();
121
+ i0.ɵɵelementStart(4, "ngx-slider", 41);
122
+ i0.ɵɵlistener("valueChange", function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_div_5_Template_ngx_slider_valueChange_4_listener($event) { i0.ɵɵrestoreView(_r44); const config_r15 = i0.ɵɵnextContext(3).$implicit; return i0.ɵɵresetView(config_r15.value = $event); })("highValueChange", function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_div_5_Template_ngx_slider_highValueChange_4_listener($event) { i0.ɵɵrestoreView(_r44); const config_r15 = i0.ɵɵnextContext(3).$implicit; return i0.ɵɵresetView(config_r15.highValue = $event); })("userChange", function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_div_5_Template_ngx_slider_userChange_4_listener($event) { i0.ɵɵrestoreView(_r44); const config_r15 = i0.ɵɵnextContext(3).$implicit; return i0.ɵɵresetView(config_r15.onChange($event)); });
123
+ i0.ɵɵelementEnd()();
124
+ } if (rf & 2) {
125
+ const config_r15 = i0.ɵɵnextContext(3).$implicit;
126
+ i0.ɵɵadvance(2);
127
+ i0.ɵɵproperty("value", config_r15.value);
128
+ i0.ɵɵadvance(1);
129
+ i0.ɵɵproperty("value", config_r15.highValue);
130
+ i0.ɵɵadvance(1);
131
+ i0.ɵɵproperty("value", config_r15.value)("highValue", config_r15.highValue)("options", i0.ɵɵpureFunction3(5, _c2, config_r15.min, config_r15.max, config_r15.step));
132
+ } }
133
+ function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_select_6_option_1_Template(rf, ctx) { if (rf & 1) {
134
+ i0.ɵɵelementStart(0, "option", 44);
135
+ i0.ɵɵtext(1);
136
+ i0.ɵɵelementEnd();
137
+ } if (rf & 2) {
138
+ const singleOption_r55 = ctx.$implicit;
139
+ i0.ɵɵproperty("value", singleOption_r55);
140
+ i0.ɵɵadvance(1);
141
+ i0.ɵɵtextInterpolate1(" ", singleOption_r55, " ");
142
+ } }
143
+ function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_select_6_Template(rf, ctx) { if (rf & 1) {
144
+ const _r58 = i0.ɵɵgetCurrentView();
145
+ i0.ɵɵelementStart(0, "select", 42);
146
+ i0.ɵɵlistener("change", function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_select_6_Template_select_change_0_listener($event) { i0.ɵɵrestoreView(_r58); const config_r15 = i0.ɵɵnextContext(3).$implicit; return i0.ɵɵresetView(config_r15.onChange($event.target.value)); });
147
+ i0.ɵɵtemplate(1, PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_select_6_option_1_Template, 2, 2, "option", 43);
148
+ i0.ɵɵelementEnd();
149
+ } if (rf & 2) {
150
+ const config_r15 = i0.ɵɵnextContext(3).$implicit;
151
+ i0.ɵɵadvance(1);
152
+ i0.ɵɵproperty("ngForOf", config_r15.options);
153
+ } }
154
+ const _c3 = function (a0) { return { "p-0": a0 }; };
155
+ function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_Template(rf, ctx) { if (rf & 1) {
156
+ i0.ɵɵelementStart(0, "div", 27);
157
+ i0.ɵɵtemplate(1, PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_mat_checkbox_1_Template, 1, 1, "mat-checkbox", 28);
158
+ i0.ɵɵtemplate(2, PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_app_config_slider_2_Template, 1, 5, "app-config-slider", 29);
159
+ i0.ɵɵtemplate(3, PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_button_3_Template, 2, 1, "button", 30);
160
+ i0.ɵɵtemplate(4, PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_input_4_Template, 1, 1, "input", 31);
161
+ i0.ɵɵtemplate(5, PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_div_5_Template, 5, 9, "div", 32);
162
+ i0.ɵɵtemplate(6, PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_select_6_Template, 2, 1, "select", 33);
163
+ i0.ɵɵelementEnd();
164
+ } if (rf & 2) {
165
+ const config_r15 = i0.ɵɵnextContext(2).$implicit;
166
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(7, _c3, config_r15.type === "button"));
167
+ i0.ɵɵadvance(1);
168
+ i0.ɵɵproperty("ngSwitchCase", "checkbox");
169
+ i0.ɵɵadvance(1);
170
+ i0.ɵɵproperty("ngSwitchCase", "slider");
171
+ i0.ɵɵadvance(1);
172
+ i0.ɵɵproperty("ngSwitchCase", "button");
173
+ i0.ɵɵadvance(1);
174
+ i0.ɵɵproperty("ngSwitchCase", "color");
175
+ i0.ɵɵadvance(1);
176
+ i0.ɵɵproperty("ngSwitchCase", "rangeSlider");
177
+ i0.ɵɵadvance(1);
178
+ i0.ɵɵproperty("ngSwitchCase", "select");
179
+ } }
180
+ function PhoenixMenuItemComponent_div_7_ng_container_6_label_1_Template(rf, ctx) { if (rf & 1) {
181
+ i0.ɵɵelementStart(0, "label", 23);
182
+ i0.ɵɵtemplate(1, PhoenixMenuItemComponent_div_7_ng_container_6_label_1_span_1_Template, 2, 4, "span", 24);
183
+ i0.ɵɵtemplate(2, PhoenixMenuItemComponent_div_7_ng_container_6_label_1_div_2_Template, 7, 9, "div", 25);
184
+ i0.ɵɵelementEnd();
185
+ } if (rf & 2) {
186
+ const config_r15 = i0.ɵɵnextContext().$implicit;
187
+ i0.ɵɵadvance(1);
188
+ i0.ɵɵproperty("ngIf", config_r15.type !== "button");
189
+ i0.ɵɵadvance(1);
190
+ i0.ɵɵproperty("ngIf", config_r15.type !== "label");
191
+ } }
192
+ function PhoenixMenuItemComponent_div_7_ng_container_6_Template(rf, ctx) { if (rf & 1) {
193
+ i0.ɵɵelementContainerStart(0, 21);
194
+ i0.ɵɵtemplate(1, PhoenixMenuItemComponent_div_7_ng_container_6_label_1_Template, 3, 2, "label", 22);
195
+ i0.ɵɵelementContainerEnd();
196
+ } if (rf & 2) {
197
+ const config_r15 = ctx.$implicit;
198
+ i0.ɵɵproperty("ngSwitch", config_r15.type);
199
+ i0.ɵɵadvance(1);
200
+ i0.ɵɵproperty("ngIf", !config_r15.hidden);
201
+ } }
202
+ const _c4 = function (a0) { return { "top.px": a0 }; };
203
+ function PhoenixMenuItemComponent_div_7_Template(rf, ctx) { if (rf & 1) {
204
+ const _r63 = i0.ɵɵgetCurrentView();
205
+ i0.ɵɵelementStart(0, "div")(1, "button", 15);
206
+ i0.ɵɵlistener("click", function PhoenixMenuItemComponent_div_7_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r63); const ctx_r62 = i0.ɵɵnextContext(); ctx_r62.calculateConfigTop(); return i0.ɵɵresetView(ctx_r62.currentNode.configActive = !ctx_r62.currentNode.configActive); });
207
+ i0.ɵɵnamespaceSVG();
208
+ i0.ɵɵelementStart(2, "svg");
209
+ i0.ɵɵelement(3, "use", 16);
210
+ i0.ɵɵelementEnd()();
211
+ i0.ɵɵtemplate(4, PhoenixMenuItemComponent_div_7_div_4_Template, 1, 0, "div", 17);
212
+ i0.ɵɵnamespaceHTML();
213
+ i0.ɵɵelementStart(5, "div", 18);
214
+ i0.ɵɵtemplate(6, PhoenixMenuItemComponent_div_7_ng_container_6_Template, 2, 2, "ng-container", 19);
215
+ i0.ɵɵelementEnd()();
216
+ } if (rf & 2) {
217
+ const ctx_r4 = i0.ɵɵnextContext();
218
+ i0.ɵɵadvance(4);
219
+ i0.ɵɵproperty("ngIf", ctx_r4.currentNode.configActive);
220
+ i0.ɵɵadvance(1);
221
+ i0.ɵɵproperty("hidden", !ctx_r4.currentNode.configActive)("ngStyle", i0.ɵɵpureFunction1(4, _c4, ctx_r4.configTop));
222
+ i0.ɵɵadvance(1);
223
+ i0.ɵɵproperty("ngForOf", ctx_r4.castConfigsToAny(ctx_r4.currentNode.configs));
224
+ } }
225
+ const _c5 = function (a0) { return { expanded: a0 }; };
226
+ function PhoenixMenuItemComponent_button_8_Template(rf, ctx) { if (rf & 1) {
227
+ const _r65 = i0.ɵɵgetCurrentView();
228
+ i0.ɵɵelementStart(0, "button", 45);
229
+ i0.ɵɵlistener("click", function PhoenixMenuItemComponent_button_8_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r65); const ctx_r64 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r64.currentNode.childrenActive = !ctx_r64.currentNode.childrenActive); });
230
+ i0.ɵɵnamespaceSVG();
231
+ i0.ɵɵelementStart(1, "svg");
232
+ i0.ɵɵelement(2, "use", 46);
233
+ i0.ɵɵelementEnd()();
234
+ } if (rf & 2) {
235
+ const ctx_r5 = i0.ɵɵnextContext();
236
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(1, _c5, ctx_r5.currentNode.childrenActive));
237
+ } }
238
+ function PhoenixMenuItemComponent_div_9_app_phoenix_menu_item_1_Template(rf, ctx) { if (rf & 1) {
239
+ i0.ɵɵelement(0, "app-phoenix-menu-item", 49);
240
+ } if (rf & 2) {
241
+ const childNode_r67 = ctx.$implicit;
242
+ i0.ɵɵproperty("currentNode", childNode_r67);
243
+ } }
244
+ function PhoenixMenuItemComponent_div_9_Template(rf, ctx) { if (rf & 1) {
245
+ i0.ɵɵelementStart(0, "div", 47);
246
+ i0.ɵɵtemplate(1, PhoenixMenuItemComponent_div_9_app_phoenix_menu_item_1_Template, 1, 1, "app-phoenix-menu-item", 48);
247
+ i0.ɵɵelementEnd();
248
+ } if (rf & 2) {
249
+ const ctx_r6 = i0.ɵɵnextContext();
250
+ i0.ɵɵadvance(1);
251
+ i0.ɵɵproperty("ngForOf", ctx_r6.currentNode.children);
252
+ } }
9
253
  export class PhoenixMenuItemComponent {
10
254
  constructor(cdr) {
11
255
  this.cdr = cdr;
@@ -22,15 +266,40 @@ export class PhoenixMenuItemComponent {
22
266
  return configs;
23
267
  }
24
268
  }
25
- PhoenixMenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: PhoenixMenuItemComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
26
- PhoenixMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: PhoenixMenuItemComponent, selector: "app-phoenix-menu-item", inputs: { currentNode: "currentNode" }, viewQueries: [{ propertyName: "phoenixMenuItem", first: true, predicate: ["phoenixMenuItem"], descendants: true }], ngImport: i0, template: "<div class=\"phoenix-menu-item\" #phoenixMenuItem>\n <div class=\"phoenix-menu-item-left align-items-center\">\n <!-- If the item has some toggle function -->\n <ng-container *ngIf=\"currentNode.onToggle; else nodeName\">\n <mat-slide-toggle\n [checked]=\"currentNode.toggleState\"\n (change)=\"currentNode.toggleSelfAndDescendants($event.checked)\"\n >\n <ng-container *ngTemplateOutlet=\"nodeName\"></ng-container>\n </mat-slide-toggle>\n </ng-container>\n <!-- If the item has no toggle function -->\n <ng-template #nodeName>\n <span class=\"d-flex w-100 align-items-center\">\n <span *ngIf=\"currentNode.icon\" class=\"icon-wrapper item-icon\">\n <svg>\n <use\n attr.href=\"assets/icons/{{ currentNode.icon }}.svg#{{\n currentNode.icon\n }}\"\n ></use>\n </svg>\n </span>\n <span class=\"item-name\" [title]=\"currentNode.name\">{{\n currentNode.name\n }}</span>\n </span>\n </ng-template>\n </div>\n <div class=\"phoenix-menu-item-right\">\n <div *ngIf=\"currentNode.configs.length > 0\">\n <button\n class=\"icon-wrapper icon-button btn-blank item-settings\"\n (click)=\"\n calculateConfigTop();\n currentNode.configActive = !currentNode.configActive\n \"\n >\n <svg>\n <use href=\"assets/icons/gear.svg#gear\"></use>\n </svg>\n </button>\n <div\n class=\"item-config-backdrop\"\n *ngIf=\"currentNode.configActive\"\n (click)=\"currentNode.configActive = false\"\n ></div>\n <div\n class=\"item-config\"\n [hidden]=\"!currentNode.configActive\"\n [ngStyle]=\"{ 'top.px': configTop }\"\n >\n <ng-container\n *ngFor=\"let config of castConfigsToAny(currentNode.configs)\"\n [ngSwitch]=\"config.type\"\n >\n <!-- Config types -->\n <label class=\"item-config-single\" *ngIf=\"!config.hidden\">\n <span\n class=\"item-config-label\"\n *ngIf=\"config.type !== 'button'\"\n [ngClass]=\"{ 'font-weight-bold w-100': config.type === 'label' }\"\n >\n {{ config.label }}\n </span>\n <div\n class=\"item-config-data\"\n [ngClass]=\"{ 'p-0': config.type === 'button' }\"\n *ngIf=\"config.type !== 'label'\"\n >\n <mat-checkbox\n *ngSwitchCase=\"'checkbox'\"\n [checked]=\"config.isChecked\"\n (change)=\"\n config.onChange($event.checked);\n config.isChecked = $event.checked\n \"\n ></mat-checkbox>\n\n <app-config-slider\n *ngSwitchCase=\"'slider'\"\n [value]=\"config.value\"\n (onChange)=\"config.onChange($event); config.value = $event\"\n [min]=\"config.min\"\n [max]=\"config.max\"\n [step]=\"config.step\"\n [allowCustomValue]=\"config.allowCustomValue\"\n >\n </app-config-slider>\n\n <button\n *ngSwitchCase=\"'button'\"\n class=\"w-100\"\n (click)=\"config.onClick()\"\n mat-button\n mat-stroked-button\n >\n {{ config.label }}\n </button>\n\n <input\n *ngSwitchCase=\"'color'\"\n type=\"color\"\n [value]=\"config.color\"\n (input)=\"\n config.onChange($event.target.value);\n config.color = $event.target.value\n \"\n />\n\n <div *ngSwitchCase=\"'rangeSlider'\" class=\"range-slider\">\n <div class=\"range-slider-inputs d-flex justify-content-between\">\n <input\n type=\"number\"\n placeholder=\"Min\"\n class=\"form-control form-control-sm\"\n [value]=\"config.value\"\n (input)=\"\n config.value = $event.target.value;\n config.onChange(config)\n \"\n />\n <input\n type=\"number\"\n placeholder=\"Max\"\n class=\"form-control form-control-sm\"\n [value]=\"config.highValue\"\n (input)=\"\n config.highValue = $event.target.value;\n config.onChange(config)\n \"\n />\n </div>\n <ngx-slider\n [(value)]=\"config.value\"\n [(highValue)]=\"config.highValue\"\n (userChange)=\"config.onChange($event)\"\n [options]=\"{\n floor: config.min,\n ceil: config.max,\n step: config.step,\n animate: false\n }\"\n ></ngx-slider>\n </div>\n\n <select\n *ngSwitchCase=\"'select'\"\n class=\"w-100\"\n (change)=\"config.onChange($event.target.value)\"\n >\n <option\n *ngFor=\"let singleOption of config.options\"\n [value]=\"singleOption\"\n >\n {{ singleOption }}\n </option>\n </select>\n </div>\n </label>\n <!-- Config types END -->\n </ng-container>\n </div>\n </div>\n <button\n class=\"icon-wrapper icon-button btn-blank item-expand\"\n *ngIf=\"currentNode.children.length > 0\"\n (click)=\"currentNode.childrenActive = !currentNode.childrenActive\"\n [ngClass]=\"{ expanded: currentNode.childrenActive }\"\n data-testid=\"dropdown\"\n >\n <svg>\n <use href=\"assets/icons/expand.svg#expand\"></use>\n </svg>\n </button>\n </div>\n</div>\n<div class=\"phoenix-menu-children\" *ngIf=\"currentNode.childrenActive\">\n <app-phoenix-menu-item\n *ngFor=\"let childNode of currentNode.children\"\n [currentNode]=\"childNode\"\n >\n </app-phoenix-menu-item>\n</div>\n", styles: [".phoenix-menu-item{width:100%;padding:.6rem;background:var(--phoenix-background-color-secondary);color:var(--phoenix-text-color);font-size:.8rem;transition:all .5s;display:flex;justify-content:space-between;align-items:center}.phoenix-menu-item-left{display:flex;justify-content:flex-start;min-width:0;padding-right:.5rem;overflow:hidden}.phoenix-menu-item-left .item-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phoenix-menu-item-left .item-icon{margin-right:.2rem}.phoenix-menu-item-right{display:flex;justify-content:flex-end}.phoenix-menu-item-right .item-expand.expanded{transform:scaleY(-1)}.phoenix-menu-item-right .item-settings{margin-right:.2rem}.phoenix-menu-item-right .item-config-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:110}.phoenix-menu-item-right .item-config{position:absolute;margin-top:-5rem;right:100%;width:14rem;padding:.5rem;background:var(--phoenix-background-color-secondary);color:var(--phoenix-text-color-secondary);box-shadow:var(--phoenix-box-shadow);display:flex;flex-direction:column;z-index:120}.phoenix-menu-item-right .item-config>*{margin-bottom:.4rem}.phoenix-menu-item-right .item-config>*:last-child{margin-bottom:0}.phoenix-menu-item-right .item-config .item-config-single{display:flex;flex-direction:row}.phoenix-menu-item-right .item-config .item-config-single .item-config-label{width:30%}.phoenix-menu-item-right .item-config .item-config-single .item-config-data{flex-grow:1;padding-left:.5rem}.phoenix-menu-item .icon-wrapper{display:inline-block;width:1.3rem;height:1.3rem;padding:.23rem;transition:all .4s}.phoenix-menu-item .icon-wrapper.icon-button:hover{background:var(--phoenix-options-icon-bg);border-radius:40%;cursor:pointer}.phoenix-menu-item .icon-wrapper svg{width:100%;height:100%;vertical-align:top}.phoenix-menu-item .mat-slide-toggle-bar{width:30px!important}.phoenix-menu-item .mat-slide-toggle-thumb{width:15px!important;height:15px!important;position:absolute;top:2px}.phoenix-menu-item .mat-slider-horizontal{min-width:0;width:100%;height:20px}.phoenix-menu-item .mat-slider-horizontal .mat-slider-wrapper{top:10px}.phoenix-menu-item label.mat-checkbox-layout{margin:0}@media screen and (max-width: 768px){.phoenix-menu-item{font-size:.75rem;padding:.5rem}.phoenix-menu-item .icon-wrapper{width:1rem;height:1rem;padding:.15rem}}.phoenix-menu-children{margin-left:.5rem;border-left:1px solid var(--phoenix-accent)}.range-slider .range-slider-inputs{gap:20%}.range-slider .ngx-slider .ngx-slider-bar{background:var(--phoenix-text-color-secondary);height:.2rem}.range-slider .ngx-slider .ngx-slider-selection{background:var(--phoenix-accent)}.range-slider .ngx-slider .ngx-slider-pointer{width:1rem;height:1rem;top:-.45rem;bottom:0;background-color:var(--phoenix-accent)}.range-slider .ngx-slider .ngx-slider-pointer:after{display:none}.range-slider .ngx-slider .ngx-slider-bubble{color:var(--phoenix-text-color);font-size:.8rem}.range-slider .ngx-slider .ngx-slider-bubble.ngx-slider-limit{color:var(--phoenix-text-color-secondary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.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: i3.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i5.SliderComponent, selector: "ngx-slider", inputs: ["value", "highValue", "options", "manualRefresh", "triggerFocus"], outputs: ["valueChange", "highValueChange", "userChangeStart", "userChange", "userChangeEnd"] }, { kind: "component", type: PhoenixMenuItemComponent, selector: "app-phoenix-menu-item", inputs: ["currentNode"] }, { kind: "component", type: i6.ConfigSliderComponent, selector: "app-config-slider", inputs: ["value", "min", "max", "step", "allowCustomValue"], outputs: ["onChange"] }], encapsulation: i0.ViewEncapsulation.None });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: PhoenixMenuItemComponent, decorators: [{
28
- type: Component,
29
- args: [{ selector: 'app-phoenix-menu-item', encapsulation: ViewEncapsulation.None, template: "<div class=\"phoenix-menu-item\" #phoenixMenuItem>\n <div class=\"phoenix-menu-item-left align-items-center\">\n <!-- If the item has some toggle function -->\n <ng-container *ngIf=\"currentNode.onToggle; else nodeName\">\n <mat-slide-toggle\n [checked]=\"currentNode.toggleState\"\n (change)=\"currentNode.toggleSelfAndDescendants($event.checked)\"\n >\n <ng-container *ngTemplateOutlet=\"nodeName\"></ng-container>\n </mat-slide-toggle>\n </ng-container>\n <!-- If the item has no toggle function -->\n <ng-template #nodeName>\n <span class=\"d-flex w-100 align-items-center\">\n <span *ngIf=\"currentNode.icon\" class=\"icon-wrapper item-icon\">\n <svg>\n <use\n attr.href=\"assets/icons/{{ currentNode.icon }}.svg#{{\n currentNode.icon\n }}\"\n ></use>\n </svg>\n </span>\n <span class=\"item-name\" [title]=\"currentNode.name\">{{\n currentNode.name\n }}</span>\n </span>\n </ng-template>\n </div>\n <div class=\"phoenix-menu-item-right\">\n <div *ngIf=\"currentNode.configs.length > 0\">\n <button\n class=\"icon-wrapper icon-button btn-blank item-settings\"\n (click)=\"\n calculateConfigTop();\n currentNode.configActive = !currentNode.configActive\n \"\n >\n <svg>\n <use href=\"assets/icons/gear.svg#gear\"></use>\n </svg>\n </button>\n <div\n class=\"item-config-backdrop\"\n *ngIf=\"currentNode.configActive\"\n (click)=\"currentNode.configActive = false\"\n ></div>\n <div\n class=\"item-config\"\n [hidden]=\"!currentNode.configActive\"\n [ngStyle]=\"{ 'top.px': configTop }\"\n >\n <ng-container\n *ngFor=\"let config of castConfigsToAny(currentNode.configs)\"\n [ngSwitch]=\"config.type\"\n >\n <!-- Config types -->\n <label class=\"item-config-single\" *ngIf=\"!config.hidden\">\n <span\n class=\"item-config-label\"\n *ngIf=\"config.type !== 'button'\"\n [ngClass]=\"{ 'font-weight-bold w-100': config.type === 'label' }\"\n >\n {{ config.label }}\n </span>\n <div\n class=\"item-config-data\"\n [ngClass]=\"{ 'p-0': config.type === 'button' }\"\n *ngIf=\"config.type !== 'label'\"\n >\n <mat-checkbox\n *ngSwitchCase=\"'checkbox'\"\n [checked]=\"config.isChecked\"\n (change)=\"\n config.onChange($event.checked);\n config.isChecked = $event.checked\n \"\n ></mat-checkbox>\n\n <app-config-slider\n *ngSwitchCase=\"'slider'\"\n [value]=\"config.value\"\n (onChange)=\"config.onChange($event); config.value = $event\"\n [min]=\"config.min\"\n [max]=\"config.max\"\n [step]=\"config.step\"\n [allowCustomValue]=\"config.allowCustomValue\"\n >\n </app-config-slider>\n\n <button\n *ngSwitchCase=\"'button'\"\n class=\"w-100\"\n (click)=\"config.onClick()\"\n mat-button\n mat-stroked-button\n >\n {{ config.label }}\n </button>\n\n <input\n *ngSwitchCase=\"'color'\"\n type=\"color\"\n [value]=\"config.color\"\n (input)=\"\n config.onChange($event.target.value);\n config.color = $event.target.value\n \"\n />\n\n <div *ngSwitchCase=\"'rangeSlider'\" class=\"range-slider\">\n <div class=\"range-slider-inputs d-flex justify-content-between\">\n <input\n type=\"number\"\n placeholder=\"Min\"\n class=\"form-control form-control-sm\"\n [value]=\"config.value\"\n (input)=\"\n config.value = $event.target.value;\n config.onChange(config)\n \"\n />\n <input\n type=\"number\"\n placeholder=\"Max\"\n class=\"form-control form-control-sm\"\n [value]=\"config.highValue\"\n (input)=\"\n config.highValue = $event.target.value;\n config.onChange(config)\n \"\n />\n </div>\n <ngx-slider\n [(value)]=\"config.value\"\n [(highValue)]=\"config.highValue\"\n (userChange)=\"config.onChange($event)\"\n [options]=\"{\n floor: config.min,\n ceil: config.max,\n step: config.step,\n animate: false\n }\"\n ></ngx-slider>\n </div>\n\n <select\n *ngSwitchCase=\"'select'\"\n class=\"w-100\"\n (change)=\"config.onChange($event.target.value)\"\n >\n <option\n *ngFor=\"let singleOption of config.options\"\n [value]=\"singleOption\"\n >\n {{ singleOption }}\n </option>\n </select>\n </div>\n </label>\n <!-- Config types END -->\n </ng-container>\n </div>\n </div>\n <button\n class=\"icon-wrapper icon-button btn-blank item-expand\"\n *ngIf=\"currentNode.children.length > 0\"\n (click)=\"currentNode.childrenActive = !currentNode.childrenActive\"\n [ngClass]=\"{ expanded: currentNode.childrenActive }\"\n data-testid=\"dropdown\"\n >\n <svg>\n <use href=\"assets/icons/expand.svg#expand\"></use>\n </svg>\n </button>\n </div>\n</div>\n<div class=\"phoenix-menu-children\" *ngIf=\"currentNode.childrenActive\">\n <app-phoenix-menu-item\n *ngFor=\"let childNode of currentNode.children\"\n [currentNode]=\"childNode\"\n >\n </app-phoenix-menu-item>\n</div>\n", styles: [".phoenix-menu-item{width:100%;padding:.6rem;background:var(--phoenix-background-color-secondary);color:var(--phoenix-text-color);font-size:.8rem;transition:all .5s;display:flex;justify-content:space-between;align-items:center}.phoenix-menu-item-left{display:flex;justify-content:flex-start;min-width:0;padding-right:.5rem;overflow:hidden}.phoenix-menu-item-left .item-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phoenix-menu-item-left .item-icon{margin-right:.2rem}.phoenix-menu-item-right{display:flex;justify-content:flex-end}.phoenix-menu-item-right .item-expand.expanded{transform:scaleY(-1)}.phoenix-menu-item-right .item-settings{margin-right:.2rem}.phoenix-menu-item-right .item-config-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:110}.phoenix-menu-item-right .item-config{position:absolute;margin-top:-5rem;right:100%;width:14rem;padding:.5rem;background:var(--phoenix-background-color-secondary);color:var(--phoenix-text-color-secondary);box-shadow:var(--phoenix-box-shadow);display:flex;flex-direction:column;z-index:120}.phoenix-menu-item-right .item-config>*{margin-bottom:.4rem}.phoenix-menu-item-right .item-config>*:last-child{margin-bottom:0}.phoenix-menu-item-right .item-config .item-config-single{display:flex;flex-direction:row}.phoenix-menu-item-right .item-config .item-config-single .item-config-label{width:30%}.phoenix-menu-item-right .item-config .item-config-single .item-config-data{flex-grow:1;padding-left:.5rem}.phoenix-menu-item .icon-wrapper{display:inline-block;width:1.3rem;height:1.3rem;padding:.23rem;transition:all .4s}.phoenix-menu-item .icon-wrapper.icon-button:hover{background:var(--phoenix-options-icon-bg);border-radius:40%;cursor:pointer}.phoenix-menu-item .icon-wrapper svg{width:100%;height:100%;vertical-align:top}.phoenix-menu-item .mat-slide-toggle-bar{width:30px!important}.phoenix-menu-item .mat-slide-toggle-thumb{width:15px!important;height:15px!important;position:absolute;top:2px}.phoenix-menu-item .mat-slider-horizontal{min-width:0;width:100%;height:20px}.phoenix-menu-item .mat-slider-horizontal .mat-slider-wrapper{top:10px}.phoenix-menu-item label.mat-checkbox-layout{margin:0}@media screen and (max-width: 768px){.phoenix-menu-item{font-size:.75rem;padding:.5rem}.phoenix-menu-item .icon-wrapper{width:1rem;height:1rem;padding:.15rem}}.phoenix-menu-children{margin-left:.5rem;border-left:1px solid var(--phoenix-accent)}.range-slider .range-slider-inputs{gap:20%}.range-slider .ngx-slider .ngx-slider-bar{background:var(--phoenix-text-color-secondary);height:.2rem}.range-slider .ngx-slider .ngx-slider-selection{background:var(--phoenix-accent)}.range-slider .ngx-slider .ngx-slider-pointer{width:1rem;height:1rem;top:-.45rem;bottom:0;background-color:var(--phoenix-accent)}.range-slider .ngx-slider .ngx-slider-pointer:after{display:none}.range-slider .ngx-slider .ngx-slider-bubble{color:var(--phoenix-text-color);font-size:.8rem}.range-slider .ngx-slider .ngx-slider-bubble.ngx-slider-limit{color:var(--phoenix-text-color-secondary)}\n"] }]
30
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { currentNode: [{
31
- type: Input
32
- }], phoenixMenuItem: [{
33
- type: ViewChild,
34
- args: ['phoenixMenuItem']
35
- }] } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvZW5peC1tZW51LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvcGhvZW5peC1tZW51L3Bob2VuaXgtbWVudS1pdGVtL3Bob2VuaXgtbWVudS1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3Bob2VuaXgtbWVudS9waG9lbml4LW1lbnUtaXRlbS9waG9lbml4LW1lbnUtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULEtBQUssRUFDTCxTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQVN2QixNQUFNLE9BQU8sd0JBQXdCO0lBS25DLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO0lBQUcsQ0FBQztJQUU5QyxrQkFBa0I7UUFDaEIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxTQUFTO2dCQUNaLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUMsR0FBRyxDQUFDO1lBQ2pFLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDMUI7SUFDSCxDQUFDO0lBRUQscUVBQXFFO0lBQ3JFLGdCQUFnQixDQUFDLE9BQW1DO1FBQ2xELE9BQU8sT0FBZ0IsQ0FBQztJQUMxQixDQUFDOztxSEFsQlUsd0JBQXdCO3lHQUF4Qix3QkFBd0IseU5DaEJyQyxpNE1Bd0xBLHdvSkR4S2Esd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBTnBDLFNBQVM7K0JBQ0UsdUJBQXVCLGlCQUdsQixpQkFBaUIsQ0FBQyxJQUFJO3dHQUc1QixXQUFXO3NCQUFuQixLQUFLO2dCQUN3QixlQUFlO3NCQUE1QyxTQUFTO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHsgUGhvZW5peE1lbnVOb2RlIH0gZnJvbSAncGhvZW5peC1ldmVudC1kaXNwbGF5JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXBob2VuaXgtbWVudS1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Bob2VuaXgtbWVudS1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGhvZW5peC1tZW51LWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgUGhvZW5peE1lbnVJdGVtQ29tcG9uZW50IHtcbiAgQElucHV0KCkgY3VycmVudE5vZGU6IFBob2VuaXhNZW51Tm9kZTtcbiAgQFZpZXdDaGlsZCgncGhvZW5peE1lbnVJdGVtJykgcGhvZW5peE1lbnVJdGVtOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgY29uZmlnVG9wOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIGNhbGN1bGF0ZUNvbmZpZ1RvcCgpIHtcbiAgICBpZiAodGhpcy5waG9lbml4TWVudUl0ZW0pIHtcbiAgICAgIHRoaXMuY29uZmlnVG9wID1cbiAgICAgICAgdGhpcy5waG9lbml4TWVudUl0ZW0ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FzdGluZyB0byBgYW55YCBhcyBhIHdvcmthcm91bmQgdG8gYnlwYXNzIHN0cmljdCB0ZW1wbGF0ZSBjaGVja3MuXG4gIGNhc3RDb25maWdzVG9BbnkoY29uZmlnczogUGhvZW5peE1lbnVOb2RlWydjb25maWdzJ10pIHtcbiAgICByZXR1cm4gY29uZmlncyBhcyBhbnlbXTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInBob2VuaXgtbWVudS1pdGVtXCIgI3Bob2VuaXhNZW51SXRlbT5cbiAgPGRpdiBjbGFzcz1cInBob2VuaXgtbWVudS1pdGVtLWxlZnQgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgPCEtLSBJZiB0aGUgaXRlbSBoYXMgc29tZSB0b2dnbGUgZnVuY3Rpb24gLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1cnJlbnROb2RlLm9uVG9nZ2xlOyBlbHNlIG5vZGVOYW1lXCI+XG4gICAgICA8bWF0LXNsaWRlLXRvZ2dsZVxuICAgICAgICBbY2hlY2tlZF09XCJjdXJyZW50Tm9kZS50b2dnbGVTdGF0ZVwiXG4gICAgICAgIChjaGFuZ2UpPVwiY3VycmVudE5vZGUudG9nZ2xlU2VsZkFuZERlc2NlbmRhbnRzKCRldmVudC5jaGVja2VkKVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJub2RlTmFtZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9tYXQtc2xpZGUtdG9nZ2xlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwhLS0gSWYgdGhlIGl0ZW0gaGFzIG5vIHRvZ2dsZSBmdW5jdGlvbiAtLT5cbiAgICA8bmctdGVtcGxhdGUgI25vZGVOYW1lPlxuICAgICAgPHNwYW4gY2xhc3M9XCJkLWZsZXggdy0xMDAgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiY3VycmVudE5vZGUuaWNvblwiIGNsYXNzPVwiaWNvbi13cmFwcGVyIGl0ZW0taWNvblwiPlxuICAgICAgICAgIDxzdmc+XG4gICAgICAgICAgICA8dXNlXG4gICAgICAgICAgICAgIGF0dHIuaHJlZj1cImFzc2V0cy9pY29ucy97eyBjdXJyZW50Tm9kZS5pY29uIH19LnN2ZyN7e1xuICAgICAgICAgICAgICAgIGN1cnJlbnROb2RlLmljb25cbiAgICAgICAgICAgICAgfX1cIlxuICAgICAgICAgICAgPjwvdXNlPlxuICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaXRlbS1uYW1lXCIgW3RpdGxlXT1cImN1cnJlbnROb2RlLm5hbWVcIj57e1xuICAgICAgICAgIGN1cnJlbnROb2RlLm5hbWVcbiAgICAgICAgfX08L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJwaG9lbml4LW1lbnUtaXRlbS1yaWdodFwiPlxuICAgIDxkaXYgKm5nSWY9XCJjdXJyZW50Tm9kZS5jb25maWdzLmxlbmd0aCA+IDBcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJpY29uLXdyYXBwZXIgaWNvbi1idXR0b24gYnRuLWJsYW5rIGl0ZW0tc2V0dGluZ3NcIlxuICAgICAgICAoY2xpY2spPVwiXG4gICAgICAgICAgY2FsY3VsYXRlQ29uZmlnVG9wKCk7XG4gICAgICAgICAgY3VycmVudE5vZGUuY29uZmlnQWN0aXZlID0gIWN1cnJlbnROb2RlLmNvbmZpZ0FjdGl2ZVxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICA8c3ZnPlxuICAgICAgICAgIDx1c2UgaHJlZj1cImFzc2V0cy9pY29ucy9nZWFyLnN2ZyNnZWFyXCI+PC91c2U+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiaXRlbS1jb25maWctYmFja2Ryb3BcIlxuICAgICAgICAqbmdJZj1cImN1cnJlbnROb2RlLmNvbmZpZ0FjdGl2ZVwiXG4gICAgICAgIChjbGljayk9XCJjdXJyZW50Tm9kZS5jb25maWdBY3RpdmUgPSBmYWxzZVwiXG4gICAgICA+PC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiaXRlbS1jb25maWdcIlxuICAgICAgICBbaGlkZGVuXT1cIiFjdXJyZW50Tm9kZS5jb25maWdBY3RpdmVcIlxuICAgICAgICBbbmdTdHlsZV09XCJ7ICd0b3AucHgnOiBjb25maWdUb3AgfVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgY29uZmlnIG9mIGNhc3RDb25maWdzVG9BbnkoY3VycmVudE5vZGUuY29uZmlncylcIlxuICAgICAgICAgIFtuZ1N3aXRjaF09XCJjb25maWcudHlwZVwiXG4gICAgICAgID5cbiAgICAgICAgICA8IS0tIENvbmZpZyB0eXBlcyAtLT5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJpdGVtLWNvbmZpZy1zaW5nbGVcIiAqbmdJZj1cIiFjb25maWcuaGlkZGVuXCI+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICBjbGFzcz1cIml0ZW0tY29uZmlnLWxhYmVsXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJjb25maWcudHlwZSAhPT0gJ2J1dHRvbidcIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdmb250LXdlaWdodC1ib2xkIHctMTAwJzogY29uZmlnLnR5cGUgPT09ICdsYWJlbCcgfVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHt7IGNvbmZpZy5sYWJlbCB9fVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cIml0ZW0tY29uZmlnLWRhdGFcIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdwLTAnOiBjb25maWcudHlwZSA9PT0gJ2J1dHRvbicgfVwiXG4gICAgICAgICAgICAgICpuZ0lmPVwiY29uZmlnLnR5cGUgIT09ICdsYWJlbCdcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8bWF0LWNoZWNrYm94XG4gICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidjaGVja2JveCdcIlxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImNvbmZpZy5pc0NoZWNrZWRcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiXG4gICAgICAgICAgICAgICAgICBjb25maWcub25DaGFuZ2UoJGV2ZW50LmNoZWNrZWQpO1xuICAgICAgICAgICAgICAgICAgY29uZmlnLmlzQ2hlY2tlZCA9ICRldmVudC5jaGVja2VkXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgPjwvbWF0LWNoZWNrYm94PlxuXG4gICAgICAgICAgICAgIDxhcHAtY29uZmlnLXNsaWRlclxuICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInc2xpZGVyJ1wiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cImNvbmZpZy52YWx1ZVwiXG4gICAgICAgICAgICAgICAgKG9uQ2hhbmdlKT1cImNvbmZpZy5vbkNoYW5nZSgkZXZlbnQpOyBjb25maWcudmFsdWUgPSAkZXZlbnRcIlxuICAgICAgICAgICAgICAgIFttaW5dPVwiY29uZmlnLm1pblwiXG4gICAgICAgICAgICAgICAgW21heF09XCJjb25maWcubWF4XCJcbiAgICAgICAgICAgICAgICBbc3RlcF09XCJjb25maWcuc3RlcFwiXG4gICAgICAgICAgICAgICAgW2FsbG93Q3VzdG9tVmFsdWVdPVwiY29uZmlnLmFsbG93Q3VzdG9tVmFsdWVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvYXBwLWNvbmZpZy1zbGlkZXI+XG5cbiAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInYnV0dG9uJ1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ3LTEwMFwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvbmZpZy5vbkNsaWNrKClcIlxuICAgICAgICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICAgICAgICBtYXQtc3Ryb2tlZC1idXR0b25cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGNvbmZpZy5sYWJlbCB9fVxuICAgICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ2NvbG9yJ1wiXG4gICAgICAgICAgICAgICAgdHlwZT1cImNvbG9yXCJcbiAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29uZmlnLmNvbG9yXCJcbiAgICAgICAgICAgICAgICAoaW5wdXQpPVwiXG4gICAgICAgICAgICAgICAgICBjb25maWcub25DaGFuZ2UoJGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICAgICAgICAgICAgICBjb25maWcuY29sb3IgPSAkZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCIncmFuZ2VTbGlkZXInXCIgY2xhc3M9XCJyYW5nZS1zbGlkZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmFuZ2Utc2xpZGVyLWlucHV0cyBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJNaW5cIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc21cIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29uZmlnLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgKGlucHV0KT1cIlxuICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZy52YWx1ZSA9ICRldmVudC50YXJnZXQudmFsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgY29uZmlnLm9uQ2hhbmdlKGNvbmZpZylcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiTWF4XCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtXCJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImNvbmZpZy5oaWdoVmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAoaW5wdXQpPVwiXG4gICAgICAgICAgICAgICAgICAgICAgY29uZmlnLmhpZ2hWYWx1ZSA9ICRldmVudC50YXJnZXQudmFsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgY29uZmlnLm9uQ2hhbmdlKGNvbmZpZylcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPG5neC1zbGlkZXJcbiAgICAgICAgICAgICAgICAgIFsodmFsdWUpXT1cImNvbmZpZy52YWx1ZVwiXG4gICAgICAgICAgICAgICAgICBbKGhpZ2hWYWx1ZSldPVwiY29uZmlnLmhpZ2hWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICAodXNlckNoYW5nZSk9XCJjb25maWcub25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICBbb3B0aW9uc109XCJ7XG4gICAgICAgICAgICAgICAgICAgIGZsb29yOiBjb25maWcubWluLFxuICAgICAgICAgICAgICAgICAgICBjZWlsOiBjb25maWcubWF4LFxuICAgICAgICAgICAgICAgICAgICBzdGVwOiBjb25maWcuc3RlcCxcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0ZTogZmFsc2VcbiAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgID48L25neC1zbGlkZXI+XG4gICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgIDxzZWxlY3RcbiAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ3NlbGVjdCdcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidy0xMDBcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiY29uZmlnLm9uQ2hhbmdlKCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxvcHRpb25cbiAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBzaW5nbGVPcHRpb24gb2YgY29uZmlnLm9wdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInNpbmdsZU9wdGlvblwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgc2luZ2xlT3B0aW9uIH19XG4gICAgICAgICAgICAgICAgPC9vcHRpb24+XG4gICAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8IS0tIENvbmZpZyB0eXBlcyBFTkQgLS0+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJpY29uLXdyYXBwZXIgaWNvbi1idXR0b24gYnRuLWJsYW5rIGl0ZW0tZXhwYW5kXCJcbiAgICAgICpuZ0lmPVwiY3VycmVudE5vZGUuY2hpbGRyZW4ubGVuZ3RoID4gMFwiXG4gICAgICAoY2xpY2spPVwiY3VycmVudE5vZGUuY2hpbGRyZW5BY3RpdmUgPSAhY3VycmVudE5vZGUuY2hpbGRyZW5BY3RpdmVcIlxuICAgICAgW25nQ2xhc3NdPVwieyBleHBhbmRlZDogY3VycmVudE5vZGUuY2hpbGRyZW5BY3RpdmUgfVwiXG4gICAgICBkYXRhLXRlc3RpZD1cImRyb3Bkb3duXCJcbiAgICA+XG4gICAgICA8c3ZnPlxuICAgICAgICA8dXNlIGhyZWY9XCJhc3NldHMvaWNvbnMvZXhwYW5kLnN2ZyNleHBhbmRcIj48L3VzZT5cbiAgICAgIDwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cInBob2VuaXgtbWVudS1jaGlsZHJlblwiICpuZ0lmPVwiY3VycmVudE5vZGUuY2hpbGRyZW5BY3RpdmVcIj5cbiAgPGFwcC1waG9lbml4LW1lbnUtaXRlbVxuICAgICpuZ0Zvcj1cImxldCBjaGlsZE5vZGUgb2YgY3VycmVudE5vZGUuY2hpbGRyZW5cIlxuICAgIFtjdXJyZW50Tm9kZV09XCJjaGlsZE5vZGVcIlxuICA+XG4gIDwvYXBwLXBob2VuaXgtbWVudS1pdGVtPlxuPC9kaXY+XG4iXX0=
269
+ PhoenixMenuItemComponent.ɵfac = function PhoenixMenuItemComponent_Factory(t) { return new (t || PhoenixMenuItemComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
270
+ PhoenixMenuItemComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PhoenixMenuItemComponent, selectors: [["app-phoenix-menu-item"]], viewQuery: function PhoenixMenuItemComponent_Query(rf, ctx) { if (rf & 1) {
271
+ i0.ɵɵviewQuery(_c0, 5);
272
+ } if (rf & 2) {
273
+ let _t;
274
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.phoenixMenuItem = _t.first);
275
+ } }, inputs: { currentNode: "currentNode" }, decls: 10, vars: 5, consts: [[1, "phoenix-menu-item"], ["phoenixMenuItem", ""], [1, "phoenix-menu-item-left", "align-items-center"], [4, "ngIf", "ngIfElse"], ["nodeName", ""], [1, "phoenix-menu-item-right"], [4, "ngIf"], ["class", "icon-wrapper icon-button btn-blank item-expand", "data-testid", "dropdown", 3, "ngClass", "click", 4, "ngIf"], ["class", "phoenix-menu-children", 4, "ngIf"], [3, "checked", "change"], [4, "ngTemplateOutlet"], [1, "d-flex", "w-100", "align-items-center"], ["class", "icon-wrapper item-icon", 4, "ngIf"], [1, "item-name", 3, "title"], [1, "icon-wrapper", "item-icon"], [1, "icon-wrapper", "icon-button", "btn-blank", "item-settings", 3, "click"], ["href", "assets/icons/gear.svg#gear"], ["class", "item-config-backdrop", 3, "click", 4, "ngIf"], [1, "item-config", 3, "hidden", "ngStyle"], [3, "ngSwitch", 4, "ngFor", "ngForOf"], [1, "item-config-backdrop", 3, "click"], [3, "ngSwitch"], ["class", "item-config-single", 4, "ngIf"], [1, "item-config-single"], ["class", "item-config-label", 3, "ngClass", 4, "ngIf"], ["class", "item-config-data", 3, "ngClass", 4, "ngIf"], [1, "item-config-label", 3, "ngClass"], [1, "item-config-data", 3, "ngClass"], [3, "checked", "change", 4, "ngSwitchCase"], [3, "value", "min", "max", "step", "allowCustomValue", "onChange", 4, "ngSwitchCase"], ["class", "w-100", "mat-button", "", "mat-stroked-button", "", 3, "click", 4, "ngSwitchCase"], ["type", "color", 3, "value", "input", 4, "ngSwitchCase"], ["class", "range-slider", 4, "ngSwitchCase"], ["class", "w-100", 3, "change", 4, "ngSwitchCase"], [3, "value", "min", "max", "step", "allowCustomValue", "onChange"], ["mat-button", "", "mat-stroked-button", "", 1, "w-100", 3, "click"], ["type", "color", 3, "value", "input"], [1, "range-slider"], [1, "range-slider-inputs", "d-flex", "justify-content-between"], ["type", "number", "placeholder", "Min", 1, "form-control", "form-control-sm", 3, "value", "input"], ["type", "number", "placeholder", "Max", 1, "form-control", "form-control-sm", 3, "value", "input"], [3, "value", "highValue", "options", "valueChange", "highValueChange", "userChange"], [1, "w-100", 3, "change"], [3, "value", 4, "ngFor", "ngForOf"], [3, "value"], ["data-testid", "dropdown", 1, "icon-wrapper", "icon-button", "btn-blank", "item-expand", 3, "ngClass", "click"], ["href", "assets/icons/expand.svg#expand"], [1, "phoenix-menu-children"], [3, "currentNode", 4, "ngFor", "ngForOf"], [3, "currentNode"]], template: function PhoenixMenuItemComponent_Template(rf, ctx) { if (rf & 1) {
276
+ i0.ɵɵelementStart(0, "div", 0, 1)(2, "div", 2);
277
+ i0.ɵɵtemplate(3, PhoenixMenuItemComponent_ng_container_3_Template, 3, 2, "ng-container", 3);
278
+ i0.ɵɵtemplate(4, PhoenixMenuItemComponent_ng_template_4_Template, 4, 3, "ng-template", null, 4, i0.ɵɵtemplateRefExtractor);
279
+ i0.ɵɵelementEnd();
280
+ i0.ɵɵelementStart(6, "div", 5);
281
+ i0.ɵɵtemplate(7, PhoenixMenuItemComponent_div_7_Template, 7, 6, "div", 6);
282
+ i0.ɵɵtemplate(8, PhoenixMenuItemComponent_button_8_Template, 3, 3, "button", 7);
283
+ i0.ɵɵelementEnd()();
284
+ i0.ɵɵtemplate(9, PhoenixMenuItemComponent_div_9_Template, 2, 1, "div", 8);
285
+ } if (rf & 2) {
286
+ const _r2 = i0.ɵɵreference(5);
287
+ i0.ɵɵadvance(3);
288
+ i0.ɵɵproperty("ngIf", ctx.currentNode.onToggle)("ngIfElse", _r2);
289
+ i0.ɵɵadvance(4);
290
+ i0.ɵɵproperty("ngIf", ctx.currentNode.configs.length > 0);
291
+ i0.ɵɵadvance(1);
292
+ i0.ɵɵproperty("ngIf", ctx.currentNode.children.length > 0);
293
+ i0.ɵɵadvance(1);
294
+ i0.ɵɵproperty("ngIf", ctx.currentNode.childrenActive);
295
+ } }, dependencies: [i1.NgClass, i1.NgForOf, i1.NgIf, i1.NgTemplateOutlet, i1.NgStyle, i1.NgSwitch, i1.NgSwitchCase, i2.MatButton, i3.MatSlideToggle, i4.MatCheckbox, i5.SliderComponent, PhoenixMenuItemComponent, i6.ConfigSliderComponent], styles: [".phoenix-menu-item{width:100%;padding:.6rem;background:var(--phoenix-background-color-secondary);color:var(--phoenix-text-color);font-size:.8rem;transition:all .5s;display:flex;justify-content:space-between;align-items:center}.phoenix-menu-item-left{display:flex;justify-content:flex-start;min-width:0;padding-right:.5rem;overflow:hidden}.phoenix-menu-item-left .item-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phoenix-menu-item-left .item-icon{margin-right:.2rem}.phoenix-menu-item-right{display:flex;justify-content:flex-end}.phoenix-menu-item-right .item-expand.expanded{transform:scaleY(-1)}.phoenix-menu-item-right .item-settings{margin-right:.2rem}.phoenix-menu-item-right .item-config-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:110}.phoenix-menu-item-right .item-config{position:absolute;margin-top:-5rem;right:100%;width:14rem;padding:.5rem;background:var(--phoenix-background-color-secondary);color:var(--phoenix-text-color-secondary);box-shadow:var(--phoenix-box-shadow);display:flex;flex-direction:column;z-index:120}.phoenix-menu-item-right .item-config>*{margin-bottom:.4rem}.phoenix-menu-item-right .item-config>*:last-child{margin-bottom:0}.phoenix-menu-item-right .item-config .item-config-single{display:flex;flex-direction:row}.phoenix-menu-item-right .item-config .item-config-single .item-config-label{width:30%}.phoenix-menu-item-right .item-config .item-config-single .item-config-data{flex-grow:1;padding-left:.5rem}.phoenix-menu-item .icon-wrapper{display:inline-block;width:1.3rem;height:1.3rem;padding:.23rem;transition:all .4s}.phoenix-menu-item .icon-wrapper.icon-button:hover{background:var(--phoenix-options-icon-bg);border-radius:40%;cursor:pointer}.phoenix-menu-item .icon-wrapper svg{width:100%;height:100%;vertical-align:top}.phoenix-menu-item .mat-slide-toggle-bar{width:30px!important}.phoenix-menu-item .mat-slide-toggle-thumb{width:15px!important;height:15px!important;position:absolute;top:2px}.phoenix-menu-item .mat-slider-horizontal{min-width:0;width:100%;height:20px}.phoenix-menu-item .mat-slider-horizontal .mat-slider-wrapper{top:10px}.phoenix-menu-item label.mat-checkbox-layout{margin:0}@media screen and (max-width: 768px){.phoenix-menu-item{font-size:.75rem;padding:.5rem}.phoenix-menu-item .icon-wrapper{width:1rem;height:1rem;padding:.15rem}}.phoenix-menu-children{margin-left:.5rem;border-left:1px solid var(--phoenix-accent)}.range-slider .range-slider-inputs{gap:20%}.range-slider .ngx-slider .ngx-slider-bar{background:var(--phoenix-text-color-secondary);height:.2rem}.range-slider .ngx-slider .ngx-slider-selection{background:var(--phoenix-accent)}.range-slider .ngx-slider .ngx-slider-pointer{width:1rem;height:1rem;top:-.45rem;bottom:0;background-color:var(--phoenix-accent)}.range-slider .ngx-slider .ngx-slider-pointer:after{display:none}.range-slider .ngx-slider .ngx-slider-bubble{color:var(--phoenix-text-color);font-size:.8rem}.range-slider .ngx-slider .ngx-slider-bubble.ngx-slider-limit{color:var(--phoenix-text-color-secondary)}\n"], encapsulation: 2 });
296
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PhoenixMenuItemComponent, [{
297
+ type: Component,
298
+ args: [{ selector: 'app-phoenix-menu-item', encapsulation: ViewEncapsulation.None, template: "<div class=\"phoenix-menu-item\" #phoenixMenuItem>\n <div class=\"phoenix-menu-item-left align-items-center\">\n <!-- If the item has some toggle function -->\n <ng-container *ngIf=\"currentNode.onToggle; else nodeName\">\n <mat-slide-toggle\n [checked]=\"currentNode.toggleState\"\n (change)=\"currentNode.toggleSelfAndDescendants($event.checked)\"\n >\n <ng-container *ngTemplateOutlet=\"nodeName\"></ng-container>\n </mat-slide-toggle>\n </ng-container>\n <!-- If the item has no toggle function -->\n <ng-template #nodeName>\n <span class=\"d-flex w-100 align-items-center\">\n <span *ngIf=\"currentNode.icon\" class=\"icon-wrapper item-icon\">\n <svg>\n <use\n attr.href=\"assets/icons/{{ currentNode.icon }}.svg#{{\n currentNode.icon\n }}\"\n ></use>\n </svg>\n </span>\n <span class=\"item-name\" [title]=\"currentNode.name\">{{\n currentNode.name\n }}</span>\n </span>\n </ng-template>\n </div>\n <div class=\"phoenix-menu-item-right\">\n <div *ngIf=\"currentNode.configs.length > 0\">\n <button\n class=\"icon-wrapper icon-button btn-blank item-settings\"\n (click)=\"\n calculateConfigTop();\n currentNode.configActive = !currentNode.configActive\n \"\n >\n <svg>\n <use href=\"assets/icons/gear.svg#gear\"></use>\n </svg>\n </button>\n <div\n class=\"item-config-backdrop\"\n *ngIf=\"currentNode.configActive\"\n (click)=\"currentNode.configActive = false\"\n ></div>\n <div\n class=\"item-config\"\n [hidden]=\"!currentNode.configActive\"\n [ngStyle]=\"{ 'top.px': configTop }\"\n >\n <ng-container\n *ngFor=\"let config of castConfigsToAny(currentNode.configs)\"\n [ngSwitch]=\"config.type\"\n >\n <!-- Config types -->\n <label class=\"item-config-single\" *ngIf=\"!config.hidden\">\n <span\n class=\"item-config-label\"\n *ngIf=\"config.type !== 'button'\"\n [ngClass]=\"{ 'font-weight-bold w-100': config.type === 'label' }\"\n >\n {{ config.label }}\n </span>\n <div\n class=\"item-config-data\"\n [ngClass]=\"{ 'p-0': config.type === 'button' }\"\n *ngIf=\"config.type !== 'label'\"\n >\n <mat-checkbox\n *ngSwitchCase=\"'checkbox'\"\n [checked]=\"config.isChecked\"\n (change)=\"\n config.onChange($event.checked);\n config.isChecked = $event.checked\n \"\n ></mat-checkbox>\n\n <app-config-slider\n *ngSwitchCase=\"'slider'\"\n [value]=\"config.value\"\n (onChange)=\"config.onChange($event); config.value = $event\"\n [min]=\"config.min\"\n [max]=\"config.max\"\n [step]=\"config.step\"\n [allowCustomValue]=\"config.allowCustomValue\"\n >\n </app-config-slider>\n\n <button\n *ngSwitchCase=\"'button'\"\n class=\"w-100\"\n (click)=\"config.onClick()\"\n mat-button\n mat-stroked-button\n >\n {{ config.label }}\n </button>\n\n <input\n *ngSwitchCase=\"'color'\"\n type=\"color\"\n [value]=\"config.color\"\n (input)=\"\n config.onChange($event.target.value);\n config.color = $event.target.value\n \"\n />\n\n <div *ngSwitchCase=\"'rangeSlider'\" class=\"range-slider\">\n <div class=\"range-slider-inputs d-flex justify-content-between\">\n <input\n type=\"number\"\n placeholder=\"Min\"\n class=\"form-control form-control-sm\"\n [value]=\"config.value\"\n (input)=\"\n config.value = $event.target.value;\n config.onChange(config)\n \"\n />\n <input\n type=\"number\"\n placeholder=\"Max\"\n class=\"form-control form-control-sm\"\n [value]=\"config.highValue\"\n (input)=\"\n config.highValue = $event.target.value;\n config.onChange(config)\n \"\n />\n </div>\n <ngx-slider\n [(value)]=\"config.value\"\n [(highValue)]=\"config.highValue\"\n (userChange)=\"config.onChange($event)\"\n [options]=\"{\n floor: config.min,\n ceil: config.max,\n step: config.step,\n animate: false\n }\"\n ></ngx-slider>\n </div>\n\n <select\n *ngSwitchCase=\"'select'\"\n class=\"w-100\"\n (change)=\"config.onChange($event.target.value)\"\n >\n <option\n *ngFor=\"let singleOption of config.options\"\n [value]=\"singleOption\"\n >\n {{ singleOption }}\n </option>\n </select>\n </div>\n </label>\n <!-- Config types END -->\n </ng-container>\n </div>\n </div>\n <button\n class=\"icon-wrapper icon-button btn-blank item-expand\"\n *ngIf=\"currentNode.children.length > 0\"\n (click)=\"currentNode.childrenActive = !currentNode.childrenActive\"\n [ngClass]=\"{ expanded: currentNode.childrenActive }\"\n data-testid=\"dropdown\"\n >\n <svg>\n <use href=\"assets/icons/expand.svg#expand\"></use>\n </svg>\n </button>\n </div>\n</div>\n<div class=\"phoenix-menu-children\" *ngIf=\"currentNode.childrenActive\">\n <app-phoenix-menu-item\n *ngFor=\"let childNode of currentNode.children\"\n [currentNode]=\"childNode\"\n >\n </app-phoenix-menu-item>\n</div>\n", styles: [".phoenix-menu-item{width:100%;padding:.6rem;background:var(--phoenix-background-color-secondary);color:var(--phoenix-text-color);font-size:.8rem;transition:all .5s;display:flex;justify-content:space-between;align-items:center}.phoenix-menu-item-left{display:flex;justify-content:flex-start;min-width:0;padding-right:.5rem;overflow:hidden}.phoenix-menu-item-left .item-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phoenix-menu-item-left .item-icon{margin-right:.2rem}.phoenix-menu-item-right{display:flex;justify-content:flex-end}.phoenix-menu-item-right .item-expand.expanded{transform:scaleY(-1)}.phoenix-menu-item-right .item-settings{margin-right:.2rem}.phoenix-menu-item-right .item-config-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:110}.phoenix-menu-item-right .item-config{position:absolute;margin-top:-5rem;right:100%;width:14rem;padding:.5rem;background:var(--phoenix-background-color-secondary);color:var(--phoenix-text-color-secondary);box-shadow:var(--phoenix-box-shadow);display:flex;flex-direction:column;z-index:120}.phoenix-menu-item-right .item-config>*{margin-bottom:.4rem}.phoenix-menu-item-right .item-config>*:last-child{margin-bottom:0}.phoenix-menu-item-right .item-config .item-config-single{display:flex;flex-direction:row}.phoenix-menu-item-right .item-config .item-config-single .item-config-label{width:30%}.phoenix-menu-item-right .item-config .item-config-single .item-config-data{flex-grow:1;padding-left:.5rem}.phoenix-menu-item .icon-wrapper{display:inline-block;width:1.3rem;height:1.3rem;padding:.23rem;transition:all .4s}.phoenix-menu-item .icon-wrapper.icon-button:hover{background:var(--phoenix-options-icon-bg);border-radius:40%;cursor:pointer}.phoenix-menu-item .icon-wrapper svg{width:100%;height:100%;vertical-align:top}.phoenix-menu-item .mat-slide-toggle-bar{width:30px!important}.phoenix-menu-item .mat-slide-toggle-thumb{width:15px!important;height:15px!important;position:absolute;top:2px}.phoenix-menu-item .mat-slider-horizontal{min-width:0;width:100%;height:20px}.phoenix-menu-item .mat-slider-horizontal .mat-slider-wrapper{top:10px}.phoenix-menu-item label.mat-checkbox-layout{margin:0}@media screen and (max-width: 768px){.phoenix-menu-item{font-size:.75rem;padding:.5rem}.phoenix-menu-item .icon-wrapper{width:1rem;height:1rem;padding:.15rem}}.phoenix-menu-children{margin-left:.5rem;border-left:1px solid var(--phoenix-accent)}.range-slider .range-slider-inputs{gap:20%}.range-slider .ngx-slider .ngx-slider-bar{background:var(--phoenix-text-color-secondary);height:.2rem}.range-slider .ngx-slider .ngx-slider-selection{background:var(--phoenix-accent)}.range-slider .ngx-slider .ngx-slider-pointer{width:1rem;height:1rem;top:-.45rem;bottom:0;background-color:var(--phoenix-accent)}.range-slider .ngx-slider .ngx-slider-pointer:after{display:none}.range-slider .ngx-slider .ngx-slider-bubble{color:var(--phoenix-text-color);font-size:.8rem}.range-slider .ngx-slider .ngx-slider-bubble.ngx-slider-limit{color:var(--phoenix-text-color-secondary)}\n"] }]
299
+ }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { currentNode: [{
300
+ type: Input
301
+ }], phoenixMenuItem: [{
302
+ type: ViewChild,
303
+ args: ['phoenixMenuItem']
304
+ }] }); })();
305
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvZW5peC1tZW51LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvcGhvZW5peC1tZW51L3Bob2VuaXgtbWVudS1pdGVtL3Bob2VuaXgtbWVudS1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3Bob2VuaXgtbWVudS9waG9lbml4LW1lbnUtaXRlbS9waG9lbml4LW1lbnUtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULEtBQUssRUFDTCxTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7O0lDQ2Ysd0JBQTBEOzs7O0lBTDlELDZCQUEwRDtJQUN4RCwyQ0FHQztJQURDLGdNQUFVLGVBQUEsMkRBQW9ELENBQUEsSUFBQztJQUUvRCwyR0FBMEQ7SUFDNUQsaUJBQW1CO0lBQ3JCLDBCQUFlOzs7O0lBTFgsZUFBbUM7SUFBbkMsd0RBQW1DO0lBR3BCLGVBQTBCO0lBQTFCLHNDQUEwQjs7O0lBTXpDLGdDQUE4RDtJQUM1RCxtQkFBSztJQUFMLDJCQUFLO0lBQ0gsc0JBSU87SUFDVCxpQkFBTSxFQUFBOzs7SUFKRixlQUVHO0lBRkgsb0hBRUc7OztJQU5YLGdDQUE4QztJQUM1QywwRkFRTztJQUNQLGdDQUFtRDtJQUFBLFlBRWpEO0lBQUEsaUJBQU8sRUFBQTs7O0lBWEYsZUFBc0I7SUFBdEIsOENBQXNCO0lBU0wsZUFBMEI7SUFBMUIsK0NBQTBCO0lBQUMsZUFFakQ7SUFGaUQsNkNBRWpEOzs7OztJQWlCSixvQkFJQztJQUpELCtCQUlDO0lBREMsMktBQVMsa0RBQTJCLEtBQUssQ0FBQSxJQUFDO0lBQzNDLGlCQUFNOzs7O0lBWUQsZ0NBSUM7SUFDQyxZQUNGO0lBQUEsaUJBQU87OztJQUhMLGlGQUFpRTtJQUVqRSxlQUNGO0lBREUsaURBQ0Y7Ozs7SUFNRSx1Q0FPQztJQUpDLHdPQUNxQixtQ0FDcEIsU0FBb0IscURBRXJDLElBRGlCO0lBQ0YsaUJBQWU7OztJQUxkLDhDQUE0Qjs7OztJQU85Qiw2Q0FRQztJQUxDLHNQQUFZLDJCQUF1QixTQUFFLHlDQUFxQixJQUFDO0lBTTdELGlCQUFvQjs7O0lBUGxCLHdDQUFzQix1QkFBQSx1QkFBQSx5QkFBQSxpREFBQTs7OztJQVN4QixrQ0FNQztJQUhDLDJOQUFTLGVBQUEsb0JBQWdCLENBQUEsSUFBQztJQUkxQixZQUNGO0lBQUEsaUJBQVM7OztJQURQLGVBQ0Y7SUFERSxpREFDRjs7OztJQUVBLGlDQVFFO0lBSkEsd05BQ3FCLHdDQUNwQixTQUFvQixzREFFckMsSUFEaUI7SUFQSCxpQkFRRTs7O0lBTEEsd0NBQXNCOzs7OztJQU94QiwrQkFBd0QsY0FBQSxnQkFBQTtJQU9sRCxxUUFFeUIsZUFBQSwrQkFFN0MsQ0FBQSxJQURxQjtJQVJILGlCQVNFO0lBQ0YsaUNBU0U7SUFKQSx5UUFFeUIsZUFBQSwrQkFFN0MsQ0FBQSxJQURxQjtJQVJILGlCQVNFLEVBQUE7SUFFSixzQ0FVQztJQVRDLDhPQUFXLHlDQUN2QixJQURvQyx5T0FDVCw2Q0FDM0IsSUFGb0MsK05BRVYsZUFBQSwyQkFBdUIsQ0FBQSxJQUZiO0lBU3pCLGlCQUFhLEVBQUE7OztJQTNCVixlQUFzQjtJQUF0Qix3Q0FBc0I7SUFVdEIsZUFBMEI7SUFBMUIsNENBQTBCO0lBUTVCLGVBQXdCO0lBQXhCLHdDQUF3QixtQ0FBQSx3RkFBQTs7O0lBaUIxQixrQ0FHQztJQUNDLFlBQ0Y7SUFBQSxpQkFBUzs7O0lBSFAsd0NBQXNCO0lBRXRCLGVBQ0Y7SUFERSxpREFDRjs7OztJQVZGLGtDQUlDO0lBREMsbU9BQVUsZUFBQSx3Q0FBb0MsQ0FBQSxJQUFDO0lBRS9DLDRIQUtTO0lBQ1gsaUJBQVM7OztJQUxvQixlQUFpQjtJQUFqQiw0Q0FBaUI7Ozs7SUF2RmhELCtCQUlDO0lBQ0MsK0hBT2dCO0lBRWhCLHlJQVNvQjtJQUVwQixtSEFRUztJQUVULGlIQVFFO0lBRUYsNkdBa0NNO0lBRU4sbUhBV1M7SUFDWCxpQkFBTTs7O0lBM0ZKLGtGQUErQztJQUk1QyxlQUF3QjtJQUF4Qix5Q0FBd0I7SUFTeEIsZUFBc0I7SUFBdEIsdUNBQXNCO0lBV3RCLGVBQXNCO0lBQXRCLHVDQUFzQjtJQVV0QixlQUFxQjtJQUFyQixzQ0FBcUI7SUFTbEIsZUFBMkI7SUFBM0IsNENBQTJCO0lBcUM5QixlQUFzQjtJQUF0Qix1Q0FBc0I7OztJQTFGN0IsaUNBQXlEO0lBQ3ZELHlHQU1PO0lBQ1AsdUdBNkZNO0lBQ1IsaUJBQVE7OztJQW5HSCxlQUE4QjtJQUE5QixtREFBOEI7SUFROUIsZUFBNkI7SUFBN0Isa0RBQTZCOzs7SUFoQnBDLGlDQUdDO0lBRUMsbUdBc0dRO0lBRVYsMEJBQWU7OztJQTNHYiwwQ0FBd0I7SUFHVyxlQUFvQjtJQUFwQix5Q0FBb0I7Ozs7O0lBM0I3RCwyQkFBNEMsaUJBQUE7SUFHeEMsZ0tBQ2EsNEJBQ1osU0FBWSxvRkFFckIsSUFEUztJQUVELG1CQUFLO0lBQUwsMkJBQUs7SUFDSCwwQkFBNkM7SUFDL0MsaUJBQU0sRUFBQTtJQUVSLGdGQUlPO0lBQ1Asb0JBSUM7SUFKRCwrQkFJQztJQUNDLGtHQTZHZTtJQUNqQixpQkFBTSxFQUFBOzs7SUF0SEgsZUFBOEI7SUFBOUIsc0RBQThCO0lBSy9CLGVBQW9DO0lBQXBDLHlEQUFvQyx5REFBQTtJQUlmLGVBQXdDO0lBQXhDLDZFQUF3Qzs7Ozs7SUErR2pFLGtDQU1DO0lBSEMsMEtBQVMsd0ZBQXdELElBQUM7SUFJbEUsbUJBQUs7SUFBTCwyQkFBSztJQUNILDBCQUFpRDtJQUNuRCxpQkFBTSxFQUFBOzs7SUFMTix1RkFBb0Q7OztJQVV4RCw0Q0FJd0I7OztJQUZ0QiwyQ0FBeUI7OztJQUg3QiwrQkFBc0U7SUFDcEUsb0hBSXdCO0lBQzFCLGlCQUFNOzs7SUFKb0IsZUFBdUI7SUFBdkIscURBQXVCOztBRG5LakQsTUFBTSxPQUFPLHdCQUF3QjtJQUtuQyxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUFHLENBQUM7SUFFOUMsa0JBQWtCO1FBQ2hCLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN4QixJQUFJLENBQUMsU0FBUztnQkFDWixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEdBQUcsQ0FBQztZQUNqRSxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUVELHFFQUFxRTtJQUNyRSxnQkFBZ0IsQ0FBQyxPQUFtQztRQUNsRCxPQUFPLE9BQWdCLENBQUM7SUFDMUIsQ0FBQzs7Z0dBbEJVLHdCQUF3QjsyRUFBeEIsd0JBQXdCOzs7Ozs7UUNoQnJDLGlDQUFnRCxhQUFBO1FBRzVDLDJGQU9lO1FBRWYsMEhBZWM7UUFDaEIsaUJBQU07UUFDTiw4QkFBcUM7UUFDbkMseUVBcUlNO1FBQ04sK0VBVVM7UUFDWCxpQkFBTSxFQUFBO1FBRVIseUVBTU07OztRQXBMYSxlQUE0QjtRQUE1QiwrQ0FBNEIsaUJBQUE7UUEyQnJDLGVBQW9DO1FBQXBDLHlEQUFvQztRQXdJdkMsZUFBcUM7UUFBckMsMERBQXFDO1FBV1IsZUFBZ0M7UUFBaEMscURBQWdDOzZMRGpLdkQsd0JBQXdCO3VGQUF4Qix3QkFBd0I7Y0FOcEMsU0FBUzsyQkFDRSx1QkFBdUIsaUJBR2xCLGlCQUFpQixDQUFDLElBQUk7b0VBRzVCLFdBQVc7a0JBQW5CLEtBQUs7WUFDd0IsZUFBZTtrQkFBNUMsU0FBUzttQkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IFBob2VuaXhNZW51Tm9kZSB9IGZyb20gJ3Bob2VuaXgtZXZlbnQtZGlzcGxheSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1waG9lbml4LW1lbnUtaXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9waG9lbml4LW1lbnUtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Bob2VuaXgtbWVudS1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFBob2VuaXhNZW51SXRlbUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGN1cnJlbnROb2RlOiBQaG9lbml4TWVudU5vZGU7XG4gIEBWaWV3Q2hpbGQoJ3Bob2VuaXhNZW51SXRlbScpIHBob2VuaXhNZW51SXRlbTogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gIGNvbmZpZ1RvcDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBjYWxjdWxhdGVDb25maWdUb3AoKSB7XG4gICAgaWYgKHRoaXMucGhvZW5peE1lbnVJdGVtKSB7XG4gICAgICB0aGlzLmNvbmZpZ1RvcCA9XG4gICAgICAgIHRoaXMucGhvZW5peE1lbnVJdGVtLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wO1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENhc3RpbmcgdG8gYGFueWAgYXMgYSB3b3JrYXJvdW5kIHRvIGJ5cGFzcyBzdHJpY3QgdGVtcGxhdGUgY2hlY2tzLlxuICBjYXN0Q29uZmlnc1RvQW55KGNvbmZpZ3M6IFBob2VuaXhNZW51Tm9kZVsnY29uZmlncyddKSB7XG4gICAgcmV0dXJuIGNvbmZpZ3MgYXMgYW55W107XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJwaG9lbml4LW1lbnUtaXRlbVwiICNwaG9lbml4TWVudUl0ZW0+XG4gIDxkaXYgY2xhc3M9XCJwaG9lbml4LW1lbnUtaXRlbS1sZWZ0IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgIDwhLS0gSWYgdGhlIGl0ZW0gaGFzIHNvbWUgdG9nZ2xlIGZ1bmN0aW9uIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXJyZW50Tm9kZS5vblRvZ2dsZTsgZWxzZSBub2RlTmFtZVwiPlxuICAgICAgPG1hdC1zbGlkZS10b2dnbGVcbiAgICAgICAgW2NoZWNrZWRdPVwiY3VycmVudE5vZGUudG9nZ2xlU3RhdGVcIlxuICAgICAgICAoY2hhbmdlKT1cImN1cnJlbnROb2RlLnRvZ2dsZVNlbGZBbmREZXNjZW5kYW50cygkZXZlbnQuY2hlY2tlZClcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibm9kZU5hbWVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbWF0LXNsaWRlLXRvZ2dsZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8IS0tIElmIHRoZSBpdGVtIGhhcyBubyB0b2dnbGUgZnVuY3Rpb24gLS0+XG4gICAgPG5nLXRlbXBsYXRlICNub2RlTmFtZT5cbiAgICAgIDxzcGFuIGNsYXNzPVwiZC1mbGV4IHctMTAwIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICA8c3BhbiAqbmdJZj1cImN1cnJlbnROb2RlLmljb25cIiBjbGFzcz1cImljb24td3JhcHBlciBpdGVtLWljb25cIj5cbiAgICAgICAgICA8c3ZnPlxuICAgICAgICAgICAgPHVzZVxuICAgICAgICAgICAgICBhdHRyLmhyZWY9XCJhc3NldHMvaWNvbnMve3sgY3VycmVudE5vZGUuaWNvbiB9fS5zdmcje3tcbiAgICAgICAgICAgICAgICBjdXJyZW50Tm9kZS5pY29uXG4gICAgICAgICAgICAgIH19XCJcbiAgICAgICAgICAgID48L3VzZT5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0tbmFtZVwiIFt0aXRsZV09XCJjdXJyZW50Tm9kZS5uYW1lXCI+e3tcbiAgICAgICAgICBjdXJyZW50Tm9kZS5uYW1lXG4gICAgICAgIH19PC9zcGFuPlxuICAgICAgPC9zcGFuPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicGhvZW5peC1tZW51LWl0ZW0tcmlnaHRcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiY3VycmVudE5vZGUuY29uZmlncy5sZW5ndGggPiAwXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGNsYXNzPVwiaWNvbi13cmFwcGVyIGljb24tYnV0dG9uIGJ0bi1ibGFuayBpdGVtLXNldHRpbmdzXCJcbiAgICAgICAgKGNsaWNrKT1cIlxuICAgICAgICAgIGNhbGN1bGF0ZUNvbmZpZ1RvcCgpO1xuICAgICAgICAgIGN1cnJlbnROb2RlLmNvbmZpZ0FjdGl2ZSA9ICFjdXJyZW50Tm9kZS5jb25maWdBY3RpdmVcbiAgICAgICAgXCJcbiAgICAgID5cbiAgICAgICAgPHN2Zz5cbiAgICAgICAgICA8dXNlIGhyZWY9XCJhc3NldHMvaWNvbnMvZ2Vhci5zdmcjZ2VhclwiPjwvdXNlPlxuICAgICAgICA8L3N2Zz5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cIml0ZW0tY29uZmlnLWJhY2tkcm9wXCJcbiAgICAgICAgKm5nSWY9XCJjdXJyZW50Tm9kZS5jb25maWdBY3RpdmVcIlxuICAgICAgICAoY2xpY2spPVwiY3VycmVudE5vZGUuY29uZmlnQWN0aXZlID0gZmFsc2VcIlxuICAgICAgPjwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cIml0ZW0tY29uZmlnXCJcbiAgICAgICAgW2hpZGRlbl09XCIhY3VycmVudE5vZGUuY29uZmlnQWN0aXZlXCJcbiAgICAgICAgW25nU3R5bGVdPVwieyAndG9wLnB4JzogY29uZmlnVG9wIH1cIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGNvbmZpZyBvZiBjYXN0Q29uZmlnc1RvQW55KGN1cnJlbnROb2RlLmNvbmZpZ3MpXCJcbiAgICAgICAgICBbbmdTd2l0Y2hdPVwiY29uZmlnLnR5cGVcIlxuICAgICAgICA+XG4gICAgICAgICAgPCEtLSBDb25maWcgdHlwZXMgLS0+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiaXRlbS1jb25maWctc2luZ2xlXCIgKm5nSWY9XCIhY29uZmlnLmhpZGRlblwiPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJpdGVtLWNvbmZpZy1sYWJlbFwiXG4gICAgICAgICAgICAgICpuZ0lmPVwiY29uZmlnLnR5cGUgIT09ICdidXR0b24nXCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnZm9udC13ZWlnaHQtYm9sZCB3LTEwMCc6IGNvbmZpZy50eXBlID09PSAnbGFiZWwnIH1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyBjb25maWcubGFiZWwgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJpdGVtLWNvbmZpZy1kYXRhXCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAncC0wJzogY29uZmlnLnR5cGUgPT09ICdidXR0b24nIH1cIlxuICAgICAgICAgICAgICAqbmdJZj1cImNvbmZpZy50eXBlICE9PSAnbGFiZWwnXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPG1hdC1jaGVja2JveFxuICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInY2hlY2tib3gnXCJcbiAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJjb25maWcuaXNDaGVja2VkXCJcbiAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIlxuICAgICAgICAgICAgICAgICAgY29uZmlnLm9uQ2hhbmdlKCRldmVudC5jaGVja2VkKTtcbiAgICAgICAgICAgICAgICAgIGNvbmZpZy5pc0NoZWNrZWQgPSAkZXZlbnQuY2hlY2tlZFxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgID48L21hdC1jaGVja2JveD5cblxuICAgICAgICAgICAgICA8YXBwLWNvbmZpZy1zbGlkZXJcbiAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ3NsaWRlcidcIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJjb25maWcudmFsdWVcIlxuICAgICAgICAgICAgICAgIChvbkNoYW5nZSk9XCJjb25maWcub25DaGFuZ2UoJGV2ZW50KTsgY29uZmlnLnZhbHVlID0gJGV2ZW50XCJcbiAgICAgICAgICAgICAgICBbbWluXT1cImNvbmZpZy5taW5cIlxuICAgICAgICAgICAgICAgIFttYXhdPVwiY29uZmlnLm1heFwiXG4gICAgICAgICAgICAgICAgW3N0ZXBdPVwiY29uZmlnLnN0ZXBcIlxuICAgICAgICAgICAgICAgIFthbGxvd0N1c3RvbVZhbHVlXT1cImNvbmZpZy5hbGxvd0N1c3RvbVZhbHVlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2FwcC1jb25maWctc2xpZGVyPlxuXG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ2J1dHRvbidcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidy0xMDBcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJjb25maWcub25DbGljaygpXCJcbiAgICAgICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICAgICAgbWF0LXN0cm9rZWQtYnV0dG9uXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBjb25maWcubGFiZWwgfX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidjb2xvcidcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJjb2xvclwiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cImNvbmZpZy5jb2xvclwiXG4gICAgICAgICAgICAgICAgKGlucHV0KT1cIlxuICAgICAgICAgICAgICAgICAgY29uZmlnLm9uQ2hhbmdlKCRldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgICAgICAgICAgICAgY29uZmlnLmNvbG9yID0gJGV2ZW50LnRhcmdldC52YWx1ZVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ3JhbmdlU2xpZGVyJ1wiIGNsYXNzPVwicmFuZ2Utc2xpZGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJhbmdlLXNsaWRlci1pbnB1dHMgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XG4gICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiTWluXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtXCJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImNvbmZpZy52YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIChpbnB1dCk9XCJcbiAgICAgICAgICAgICAgICAgICAgICBjb25maWcudmFsdWUgPSAkZXZlbnQudGFyZ2V0LnZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZy5vbkNoYW5nZShjb25maWcpXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIk1heFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGZvcm0tY29udHJvbC1zbVwiXG4gICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJjb25maWcuaGlnaFZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgKGlucHV0KT1cIlxuICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZy5oaWdoVmFsdWUgPSAkZXZlbnQudGFyZ2V0LnZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZy5vbkNoYW5nZShjb25maWcpXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxuZ3gtc2xpZGVyXG4gICAgICAgICAgICAgICAgICBbKHZhbHVlKV09XCJjb25maWcudmFsdWVcIlxuICAgICAgICAgICAgICAgICAgWyhoaWdoVmFsdWUpXT1cImNvbmZpZy5oaWdoVmFsdWVcIlxuICAgICAgICAgICAgICAgICAgKHVzZXJDaGFuZ2UpPVwiY29uZmlnLm9uQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgW29wdGlvbnNdPVwie1xuICAgICAgICAgICAgICAgICAgICBmbG9vcjogY29uZmlnLm1pbixcbiAgICAgICAgICAgICAgICAgICAgY2VpbDogY29uZmlnLm1heCxcbiAgICAgICAgICAgICAgICAgICAgc3RlcDogY29uZmlnLnN0ZXAsXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGU6IGZhbHNlXG4gICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICA+PC9uZ3gtc2xpZGVyPlxuICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICA8c2VsZWN0XG4gICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidzZWxlY3QnXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInctMTAwXCJcbiAgICAgICAgICAgICAgICAoY2hhbmdlKT1cImNvbmZpZy5vbkNoYW5nZSgkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8b3B0aW9uXG4gICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgc2luZ2xlT3B0aW9uIG9mIGNvbmZpZy5vcHRpb25zXCJcbiAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJzaW5nbGVPcHRpb25cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHt7IHNpbmdsZU9wdGlvbiB9fVxuICAgICAgICAgICAgICAgIDwvb3B0aW9uPlxuICAgICAgICAgICAgICA8L3NlbGVjdD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgPCEtLSBDb25maWcgdHlwZXMgRU5EIC0tPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiaWNvbi13cmFwcGVyIGljb24tYnV0dG9uIGJ0bi1ibGFuayBpdGVtLWV4cGFuZFwiXG4gICAgICAqbmdJZj1cImN1cnJlbnROb2RlLmNoaWxkcmVuLmxlbmd0aCA+IDBcIlxuICAgICAgKGNsaWNrKT1cImN1cnJlbnROb2RlLmNoaWxkcmVuQWN0aXZlID0gIWN1cnJlbnROb2RlLmNoaWxkcmVuQWN0aXZlXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgZXhwYW5kZWQ6IGN1cnJlbnROb2RlLmNoaWxkcmVuQWN0aXZlIH1cIlxuICAgICAgZGF0YS10ZXN0aWQ9XCJkcm9wZG93blwiXG4gICAgPlxuICAgICAgPHN2Zz5cbiAgICAgICAgPHVzZSBocmVmPVwiYXNzZXRzL2ljb25zL2V4cGFuZC5zdmcjZXhwYW5kXCI+PC91c2U+XG4gICAgICA8L3N2Zz5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJwaG9lbml4LW1lbnUtY2hpbGRyZW5cIiAqbmdJZj1cImN1cnJlbnROb2RlLmNoaWxkcmVuQWN0aXZlXCI+XG4gIDxhcHAtcGhvZW5peC1tZW51LWl0ZW1cbiAgICAqbmdGb3I9XCJsZXQgY2hpbGROb2RlIG9mIGN1cnJlbnROb2RlLmNoaWxkcmVuXCJcbiAgICBbY3VycmVudE5vZGVdPVwiY2hpbGROb2RlXCJcbiAgPlxuICA8L2FwcC1waG9lbml4LW1lbnUtaXRlbT5cbjwvZGl2PlxuIl19
@@ -3,12 +3,19 @@ import * as i0 from "@angular/core";
3
3
  import * as i1 from "./phoenix-menu-item/phoenix-menu-item.component";
4
4
  export class PhoenixMenuComponent {
5
5
  }
6
- PhoenixMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: PhoenixMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
- PhoenixMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: PhoenixMenuComponent, selector: "app-phoenix-menu", inputs: { rootNode: "rootNode" }, ngImport: i0, template: "<div id=\"phoenixMenu\">\n <app-phoenix-menu-item [currentNode]=\"rootNode\"></app-phoenix-menu-item>\n</div>\n", styles: [":host{width:15rem;max-width:45%;position:absolute;top:5rem;right:1rem}#phoenixMenu{background:var(--phoenix-background-color-secondary);max-height:75vh;overflow-y:auto;box-shadow:var(--phoenix-box-shadow);z-index:100}@media screen and (max-width: 768px){#phoenixMenu{top:4rem}}\n"], dependencies: [{ kind: "component", type: i1.PhoenixMenuItemComponent, selector: "app-phoenix-menu-item", inputs: ["currentNode"] }] });
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: PhoenixMenuComponent, decorators: [{
9
- type: Component,
10
- args: [{ selector: 'app-phoenix-menu', template: "<div id=\"phoenixMenu\">\n <app-phoenix-menu-item [currentNode]=\"rootNode\"></app-phoenix-menu-item>\n</div>\n", styles: [":host{width:15rem;max-width:45%;position:absolute;top:5rem;right:1rem}#phoenixMenu{background:var(--phoenix-background-color-secondary);max-height:75vh;overflow-y:auto;box-shadow:var(--phoenix-box-shadow);z-index:100}@media screen and (max-width: 768px){#phoenixMenu{top:4rem}}\n"] }]
11
- }], propDecorators: { rootNode: [{
12
- type: Input
13
- }] } });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvZW5peC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3Bob2VuaXgtbWVudS9waG9lbml4LW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvcGhvZW5peC1tZW51L3Bob2VuaXgtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUWpELE1BQU0sT0FBTyxvQkFBb0I7O2lIQUFwQixvQkFBb0I7cUdBQXBCLG9CQUFvQiwwRkNSakMsa0hBR0E7MkZES2Esb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGtCQUFrQjs4QkFLbkIsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHsgUGhvZW5peE1lbnVOb2RlIH0gZnJvbSAncGhvZW5peC1ldmVudC1kaXNwbGF5JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXBob2VuaXgtbWVudScsXG4gIHRlbXBsYXRlVXJsOiAnLi9waG9lbml4LW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9waG9lbml4LW1lbnUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUGhvZW5peE1lbnVDb21wb25lbnQge1xuICBASW5wdXQoKSByb290Tm9kZTogUGhvZW5peE1lbnVOb2RlO1xufVxuIiwiPGRpdiBpZD1cInBob2VuaXhNZW51XCI+XG4gIDxhcHAtcGhvZW5peC1tZW51LWl0ZW0gW2N1cnJlbnROb2RlXT1cInJvb3ROb2RlXCI+PC9hcHAtcGhvZW5peC1tZW51LWl0ZW0+XG48L2Rpdj5cbiJdfQ==
6
+ PhoenixMenuComponent.ɵfac = function PhoenixMenuComponent_Factory(t) { return new (t || PhoenixMenuComponent)(); };
7
+ PhoenixMenuComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PhoenixMenuComponent, selectors: [["app-phoenix-menu"]], inputs: { rootNode: "rootNode" }, decls: 2, vars: 1, consts: [["id", "phoenixMenu"], [3, "currentNode"]], template: function PhoenixMenuComponent_Template(rf, ctx) { if (rf & 1) {
8
+ i0.ɵɵelementStart(0, "div", 0);
9
+ i0.ɵɵelement(1, "app-phoenix-menu-item", 1);
10
+ i0.ɵɵelementEnd();
11
+ } if (rf & 2) {
12
+ i0.ɵɵadvance(1);
13
+ i0.ɵɵproperty("currentNode", ctx.rootNode);
14
+ } }, dependencies: [i1.PhoenixMenuItemComponent], styles: ["[_nghost-%COMP%]{width:15rem;max-width:45%;position:absolute;top:5rem;right:1rem}#phoenixMenu[_ngcontent-%COMP%]{background:var(--phoenix-background-color-secondary);max-height:75vh;overflow-y:auto;box-shadow:var(--phoenix-box-shadow);z-index:100}@media screen and (max-width: 768px){#phoenixMenu[_ngcontent-%COMP%]{top:4rem}}"] });
15
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PhoenixMenuComponent, [{
16
+ type: Component,
17
+ args: [{ selector: 'app-phoenix-menu', template: "<div id=\"phoenixMenu\">\n <app-phoenix-menu-item [currentNode]=\"rootNode\"></app-phoenix-menu-item>\n</div>\n", styles: [":host{width:15rem;max-width:45%;position:absolute;top:5rem;right:1rem}#phoenixMenu{background:var(--phoenix-background-color-secondary);max-height:75vh;overflow-y:auto;box-shadow:var(--phoenix-box-shadow);z-index:100}@media screen and (max-width: 768px){#phoenixMenu{top:4rem}}\n"] }]
18
+ }], null, { rootNode: [{
19
+ type: Input
20
+ }] }); })();
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvZW5peC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9jb21wb25lbnRzL3Bob2VuaXgtbWVudS9waG9lbml4LW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vbGliL2NvbXBvbmVudHMvcGhvZW5peC1tZW51L3Bob2VuaXgtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUWpELE1BQU0sT0FBTyxvQkFBb0I7O3dGQUFwQixvQkFBb0I7dUVBQXBCLG9CQUFvQjtRQ1JqQyw4QkFBc0I7UUFDcEIsMkNBQXdFO1FBQzFFLGlCQUFNOztRQURtQixlQUF3QjtRQUF4QiwwQ0FBd0I7O3VGRE9wQyxvQkFBb0I7Y0FMaEMsU0FBUzsyQkFDRSxrQkFBa0I7Z0JBS25CLFFBQVE7a0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IFBob2VuaXhNZW51Tm9kZSB9IGZyb20gJ3Bob2VuaXgtZXZlbnQtZGlzcGxheSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1waG9lbml4LW1lbnUnLFxuICB0ZW1wbGF0ZVVybDogJy4vcGhvZW5peC1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGhvZW5peC1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFBob2VuaXhNZW51Q29tcG9uZW50IHtcbiAgQElucHV0KCkgcm9vdE5vZGU6IFBob2VuaXhNZW51Tm9kZTtcbn1cbiIsIjxkaXYgaWQ9XCJwaG9lbml4TWVudVwiPlxuICA8YXBwLXBob2VuaXgtbWVudS1pdGVtIFtjdXJyZW50Tm9kZV09XCJyb290Tm9kZVwiPjwvYXBwLXBob2VuaXgtbWVudS1pdGVtPlxuPC9kaXY+XG4iXX0=