@rocketshow/designer 1.40.0 → 1.44.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 (191) hide show
  1. package/fesm2022/rocketshow-designer.mjs +1389 -1148
  2. package/fesm2022/rocketshow-designer.mjs.map +1 -1
  3. package/index.d.ts +1676 -5
  4. package/package.json +2 -4
  5. package/rocketshow-designer-1.44.0.tgz +0 -0
  6. package/esm2022/lib/array-sort-pipe.mjs +0 -30
  7. package/esm2022/lib/designer.component.mjs +0 -672
  8. package/esm2022/lib/designer.module.mjs +0 -186
  9. package/esm2022/lib/designer.service.mjs +0 -14
  10. package/esm2022/lib/dropzone/dropzone.component.mjs +0 -93
  11. package/esm2022/lib/effect/effect-curve/effect-curve.component.mjs +0 -577
  12. package/esm2022/lib/effect/effect-pan-tilt/effect-pan-tilt.component.mjs +0 -36
  13. package/esm2022/lib/effect/effect.component.mjs +0 -174
  14. package/esm2022/lib/error-dialog/error-dialog.component.mjs +0 -75
  15. package/esm2022/lib/fixture/fixture-capability/fixture-capability-channel/fixture-capability-channel.component.mjs +0 -370
  16. package/esm2022/lib/fixture/fixture-capability/fixture-capability-color/fixture-capability-color.component.mjs +0 -147
  17. package/esm2022/lib/fixture/fixture-capability/fixture-capability-color-wheel/fixture-capability-color-wheel.component.mjs +0 -213
  18. package/esm2022/lib/fixture/fixture-capability/fixture-capability-dimmer/fixture-capability-dimmer.component.mjs +0 -78
  19. package/esm2022/lib/fixture/fixture-capability/fixture-capability-pan-tilt/fixture-capability-pan-tilt.component.mjs +0 -119
  20. package/esm2022/lib/fixture/fixture-capability/fixture-capability.component.mjs +0 -191
  21. package/esm2022/lib/fixture/fixture-channel/fixture-channel.component.mjs +0 -162
  22. package/esm2022/lib/fixture/fixture-settings/fixture-settings-position/fixture-settings-position.component.mjs +0 -365
  23. package/esm2022/lib/fixture/fixture-settings/fixture-settings-stage/fixture-settings-stage.component.mjs +0 -151
  24. package/esm2022/lib/fixture/fixture-settings/fixture-settings.component.mjs +0 -46
  25. package/esm2022/lib/fixture/fixture.component.mjs +0 -148
  26. package/esm2022/lib/fixture-pool/fixture-pool-create-from-file/fixture-pool-create-from-file.component.mjs +0 -145
  27. package/esm2022/lib/fixture-pool/fixture-pool.component.mjs +0 -641
  28. package/esm2022/lib/intro/intro.component.mjs +0 -95
  29. package/esm2022/lib/master-dimmer/master-dimmer.component.mjs +0 -66
  30. package/esm2022/lib/models/cached-fixture-capability.mjs +0 -9
  31. package/esm2022/lib/models/cached-fixture-channel.mjs +0 -7
  32. package/esm2022/lib/models/cached-fixture.mjs +0 -6
  33. package/esm2022/lib/models/color.mjs +0 -8
  34. package/esm2022/lib/models/composition.mjs +0 -46
  35. package/esm2022/lib/models/effect-curve-profile-channel.mjs +0 -15
  36. package/esm2022/lib/models/effect-curve.mjs +0 -69
  37. package/esm2022/lib/models/effect-pan-tilt.mjs +0 -19
  38. package/esm2022/lib/models/effect.mjs +0 -12
  39. package/esm2022/lib/models/fixture-capability-value.mjs +0 -15
  40. package/esm2022/lib/models/fixture-capability.mjs +0 -127
  41. package/esm2022/lib/models/fixture-channel-value.mjs +0 -11
  42. package/esm2022/lib/models/fixture-channel.mjs +0 -24
  43. package/esm2022/lib/models/fixture-matrix-pixel-group-constraints.mjs +0 -27
  44. package/esm2022/lib/models/fixture-matrix-pixel-group.mjs +0 -12
  45. package/esm2022/lib/models/fixture-matrix.mjs +0 -25
  46. package/esm2022/lib/models/fixture-mode-channel.mjs +0 -26
  47. package/esm2022/lib/models/fixture-mode.mjs +0 -17
  48. package/esm2022/lib/models/fixture-physical.mjs +0 -14
  49. package/esm2022/lib/models/fixture-profile.mjs +0 -85
  50. package/esm2022/lib/models/fixture-wheel-slot.mjs +0 -26
  51. package/esm2022/lib/models/fixture-wheel.mjs +0 -15
  52. package/esm2022/lib/models/fixture.mjs +0 -40
  53. package/esm2022/lib/models/preset-fixture.mjs +0 -10
  54. package/esm2022/lib/models/preset-region-scene.mjs +0 -8
  55. package/esm2022/lib/models/preset.mjs +0 -65
  56. package/esm2022/lib/models/project.mjs +0 -78
  57. package/esm2022/lib/models/scene-playback-region.mjs +0 -11
  58. package/esm2022/lib/models/scene.mjs +0 -27
  59. package/esm2022/lib/preset/preset-settings/preset-settings.component.mjs +0 -194
  60. package/esm2022/lib/preset/preset.component.mjs +0 -131
  61. package/esm2022/lib/preview/models/color-changer-3d.mjs +0 -52
  62. package/esm2022/lib/preview/models/fixture-3d.mjs +0 -260
  63. package/esm2022/lib/preview/models/moving-head-3d.mjs +0 -115
  64. package/esm2022/lib/preview/preview.component.mjs +0 -216
  65. package/esm2022/lib/project/project-browser/project-browser.component.mjs +0 -143
  66. package/esm2022/lib/project/project-import/project-import.component.mjs +0 -107
  67. package/esm2022/lib/project/project-save/project-save.component.mjs +0 -178
  68. package/esm2022/lib/project/project-share/project-share.component.mjs +0 -71
  69. package/esm2022/lib/scene/scene-settings/scene-settings.component.mjs +0 -146
  70. package/esm2022/lib/scene/scene.component.mjs +0 -110
  71. package/esm2022/lib/services/animation.service.mjs +0 -16
  72. package/esm2022/lib/services/config.service.mjs +0 -28
  73. package/esm2022/lib/services/effect.service.mjs +0 -14
  74. package/esm2022/lib/services/error-dialog.service.mjs +0 -39
  75. package/esm2022/lib/services/fixture-pool.service.mjs +0 -30
  76. package/esm2022/lib/services/fixture.service.mjs +0 -699
  77. package/esm2022/lib/services/hotkey-target-exclude.service.mjs +0 -24
  78. package/esm2022/lib/services/intro.service.mjs +0 -140
  79. package/esm2022/lib/services/preset.service.mjs +0 -450
  80. package/esm2022/lib/services/preview-mesh.service.mjs +0 -57
  81. package/esm2022/lib/services/preview.service.mjs +0 -481
  82. package/esm2022/lib/services/project-load.service.mjs +0 -206
  83. package/esm2022/lib/services/project.service.mjs +0 -93
  84. package/esm2022/lib/services/scene.service.mjs +0 -164
  85. package/esm2022/lib/services/timeline.service.mjs +0 -726
  86. package/esm2022/lib/services/user-ensure-login.service.mjs +0 -38
  87. package/esm2022/lib/services/user.service.mjs +0 -89
  88. package/esm2022/lib/services/uuid.service.mjs +0 -23
  89. package/esm2022/lib/services/warning-dialog.service.mjs +0 -38
  90. package/esm2022/lib/timeline/composition-settings/composition-settings.component.mjs +0 -304
  91. package/esm2022/lib/timeline/timeline-grid/timeline-grid.component.mjs +0 -216
  92. package/esm2022/lib/timeline/timeline.component.mjs +0 -418
  93. package/esm2022/lib/user/user-login/user-login.component.mjs +0 -144
  94. package/esm2022/lib/user/user-register/user-register.component.mjs +0 -220
  95. package/esm2022/lib/wait-dialog/wait-dialog.component.mjs +0 -26
  96. package/esm2022/lib/warning-dialog/warning-dialog.component.mjs +0 -68
  97. package/esm2022/public_api.mjs +0 -7
  98. package/esm2022/rocketshow-designer.mjs +0 -5
  99. package/lib/array-sort-pipe.d.ts +0 -7
  100. package/lib/designer.component.d.ts +0 -73
  101. package/lib/designer.module.d.ts +0 -57
  102. package/lib/designer.service.d.ts +0 -6
  103. package/lib/dropzone/dropzone.component.d.ts +0 -24
  104. package/lib/effect/effect-curve/effect-curve.component.d.ts +0 -59
  105. package/lib/effect/effect-pan-tilt/effect-pan-tilt.component.d.ts +0 -15
  106. package/lib/effect/effect.component.d.ts +0 -22
  107. package/lib/error-dialog/error-dialog.component.d.ts +0 -17
  108. package/lib/fixture/fixture-capability/fixture-capability-channel/fixture-capability-channel.component.d.ts +0 -41
  109. package/lib/fixture/fixture-capability/fixture-capability-color/fixture-capability-color.component.d.ts +0 -26
  110. package/lib/fixture/fixture-capability/fixture-capability-color-wheel/fixture-capability-color-wheel.component.d.ts +0 -34
  111. package/lib/fixture/fixture-capability/fixture-capability-dimmer/fixture-capability-dimmer.component.d.ts +0 -15
  112. package/lib/fixture/fixture-capability/fixture-capability-pan-tilt/fixture-capability-pan-tilt.component.d.ts +0 -18
  113. package/lib/fixture/fixture-capability/fixture-capability.component.d.ts +0 -31
  114. package/lib/fixture/fixture-channel/fixture-channel.component.d.ts +0 -25
  115. package/lib/fixture/fixture-settings/fixture-settings-position/fixture-settings-position.component.d.ts +0 -32
  116. package/lib/fixture/fixture-settings/fixture-settings-stage/fixture-settings-stage.component.d.ts +0 -14
  117. package/lib/fixture/fixture-settings/fixture-settings.component.d.ts +0 -14
  118. package/lib/fixture/fixture.component.d.ts +0 -25
  119. package/lib/fixture-pool/fixture-pool-create-from-file/fixture-pool-create-from-file.component.d.ts +0 -28
  120. package/lib/fixture-pool/fixture-pool.component.d.ts +0 -62
  121. package/lib/intro/intro.component.d.ts +0 -11
  122. package/lib/master-dimmer/master-dimmer.component.d.ts +0 -15
  123. package/lib/models/cached-fixture-capability.d.ts +0 -11
  124. package/lib/models/cached-fixture-channel.d.ts +0 -11
  125. package/lib/models/cached-fixture.d.ts +0 -11
  126. package/lib/models/color.d.ts +0 -6
  127. package/lib/models/composition.d.ts +0 -19
  128. package/lib/models/effect-curve-profile-channel.d.ts +0 -5
  129. package/lib/models/effect-curve.d.ts +0 -15
  130. package/lib/models/effect-pan-tilt.d.ts +0 -6
  131. package/lib/models/effect.d.ts +0 -6
  132. package/lib/models/fixture-capability-value.d.ts +0 -10
  133. package/lib/models/fixture-capability.d.ts +0 -117
  134. package/lib/models/fixture-channel-value.d.ts +0 -6
  135. package/lib/models/fixture-channel.d.ts +0 -9
  136. package/lib/models/fixture-matrix-pixel-group-constraints.d.ts +0 -8
  137. package/lib/models/fixture-matrix-pixel-group.d.ts +0 -6
  138. package/lib/models/fixture-matrix.d.ts +0 -6
  139. package/lib/models/fixture-mode-channel.d.ts +0 -8
  140. package/lib/models/fixture-mode.d.ts +0 -8
  141. package/lib/models/fixture-physical.d.ts +0 -4
  142. package/lib/models/fixture-profile.d.ts +0 -39
  143. package/lib/models/fixture-wheel-slot.d.ts +0 -17
  144. package/lib/models/fixture-wheel.d.ts +0 -5
  145. package/lib/models/fixture.d.ts +0 -23
  146. package/lib/models/preset-fixture.d.ts +0 -5
  147. package/lib/models/preset-region-scene.d.ts +0 -9
  148. package/lib/models/preset.d.ts +0 -20
  149. package/lib/models/project.d.ts +0 -31
  150. package/lib/models/scene-playback-region.d.ts +0 -6
  151. package/lib/models/scene.d.ts +0 -11
  152. package/lib/preset/preset-settings/preset-settings.component.d.ts +0 -22
  153. package/lib/preset/preset.component.d.ts +0 -25
  154. package/lib/preview/models/color-changer-3d.d.ts +0 -16
  155. package/lib/preview/models/fixture-3d.d.ts +0 -38
  156. package/lib/preview/models/moving-head-3d.d.ts +0 -23
  157. package/lib/preview/preview.component.d.ts +0 -38
  158. package/lib/project/project-browser/project-browser.component.d.ts +0 -27
  159. package/lib/project/project-import/project-import.component.d.ts +0 -23
  160. package/lib/project/project-save/project-save.component.d.ts +0 -28
  161. package/lib/project/project-share/project-share.component.d.ts +0 -16
  162. package/lib/scene/scene-settings/scene-settings.component.d.ts +0 -20
  163. package/lib/scene/scene.component.d.ts +0 -22
  164. package/lib/services/animation.service.d.ts +0 -7
  165. package/lib/services/config.service.d.ts +0 -20
  166. package/lib/services/effect.service.d.ts +0 -8
  167. package/lib/services/error-dialog.service.d.ts +0 -12
  168. package/lib/services/fixture-pool.service.d.ts +0 -10
  169. package/lib/services/fixture.service.d.ts +0 -70
  170. package/lib/services/hotkey-target-exclude.service.d.ts +0 -7
  171. package/lib/services/intro.service.d.ts +0 -21
  172. package/lib/services/preset.service.d.ts +0 -64
  173. package/lib/services/preview-mesh.service.d.ts +0 -14
  174. package/lib/services/preview.service.d.ts +0 -42
  175. package/lib/services/project-load.service.d.ts +0 -36
  176. package/lib/services/project.service.d.ts +0 -26
  177. package/lib/services/scene.service.d.ts +0 -30
  178. package/lib/services/timeline.service.d.ts +0 -70
  179. package/lib/services/user-ensure-login.service.d.ts +0 -14
  180. package/lib/services/user.service.d.ts +0 -22
  181. package/lib/services/uuid.service.d.ts +0 -7
  182. package/lib/services/warning-dialog.service.d.ts +0 -12
  183. package/lib/timeline/composition-settings/composition-settings.component.d.ts +0 -48
  184. package/lib/timeline/timeline-grid/timeline-grid.component.d.ts +0 -22
  185. package/lib/timeline/timeline.component.d.ts +0 -50
  186. package/lib/user/user-login/user-login.component.d.ts +0 -21
  187. package/lib/user/user-register/user-register.component.d.ts +0 -26
  188. package/lib/wait-dialog/wait-dialog.component.d.ts +0 -8
  189. package/lib/warning-dialog/warning-dialog.component.d.ts +0 -16
  190. package/public_api.d.ts +0 -3
  191. package/rocketshow-designer-1.40.0.tgz +0 -0
@@ -1,36 +0,0 @@
1
- import { Component, ElementRef, ViewChild } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- const _c0 = ["panTiltGrid"];
4
- export class EffectPanTiltComponent {
5
- constructor() {
6
- this.points = [
7
- [0, 500],
8
- [500, 0],
9
- [1000, 500],
10
- [500, 1000],
11
- ];
12
- this.dragged = null;
13
- this.selected = this.points[0];
14
- }
15
- redraw() { }
16
- ngOnInit() { }
17
- static { this.ɵfac = function EffectPanTiltComponent_Factory(t) { return new (t || EffectPanTiltComponent)(); }; }
18
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EffectPanTiltComponent, selectors: [["lib-app-effect-pan-tilt"]], viewQuery: function EffectPanTiltComponent_Query(rf, ctx) { if (rf & 1) {
19
- i0.ɵɵviewQuery(_c0, 5);
20
- } if (rf & 2) {
21
- let _t;
22
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.panTiltGrid = _t.first);
23
- } }, decls: 2, vars: 0, consts: [["panTiltGrid", ""], ["width", "150", "height", "150", "viewBox", "-100 -100 1200 1200", 1, "pan-tilt-grid", 2, "border", "1px solid white"]], template: function EffectPanTiltComponent_Template(rf, ctx) { if (rf & 1) {
24
- i0.ɵɵnamespaceSVG();
25
- i0.ɵɵelement(0, "svg", 1, 0);
26
- } } }); }
27
- }
28
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EffectPanTiltComponent, [{
29
- type: Component,
30
- args: [{ selector: 'lib-app-effect-pan-tilt', template: "<svg #panTiltGrid class=\"pan-tilt-grid\" width=\"150\" height=\"150\" viewBox=\"-100 -100 1200 1200\" style=\"border: 1px solid white\"></svg>\n" }]
31
- }], () => [], { panTiltGrid: [{
32
- type: ViewChild,
33
- args: ['panTiltGrid']
34
- }] }); })();
35
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EffectPanTiltComponent, { className: "EffectPanTiltComponent" }); })();
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWZmZWN0LXBhbi10aWx0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbmVyL3NyYy9saWIvZWZmZWN0L2VmZmVjdC1wYW4tdGlsdC9lZmZlY3QtcGFuLXRpbHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduZXIvc3JjL2xpYi9lZmZlY3QvZWZmZWN0LXBhbi10aWx0L2VmZmVjdC1wYW4tdGlsdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU96RSxNQUFNLE9BQU8sc0JBQXNCO0lBaUJqQztRQVZRLFdBQU0sR0FBRztZQUNmLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztZQUNSLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNSLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQztZQUNYLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQztTQUNaLENBQUM7UUFFTSxZQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ2YsYUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFbkIsQ0FBQztJQUVSLE1BQU0sS0FBSSxDQUFDO0lBRW5CLFFBQVEsS0FBSSxDQUFDO3VGQXJCRixzQkFBc0I7b0VBQXRCLHNCQUFzQjs7Ozs7OztZQ1BuQyw0QkFBcUk7OztpRkRPeEgsc0JBQXNCO2NBTGxDLFNBQVM7MkJBQ0UseUJBQXlCO29CQUtULFdBQVc7a0JBQXBDLFNBQVM7bUJBQUMsYUFBYTs7a0ZBRGIsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYXBwLWVmZmVjdC1wYW4tdGlsdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9lZmZlY3QtcGFuLXRpbHQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lZmZlY3QtcGFuLXRpbHQuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBFZmZlY3RQYW5UaWx0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQFZpZXdDaGlsZCgncGFuVGlsdEdyaWQnKSBwYW5UaWx0R3JpZDogRWxlbWVudFJlZjtcblxuICAvLyBwcml2YXRlIGxpbmUgPSBkMy5saW5lKCk7XG4gIHByaXZhdGUgc3ZnO1xuICBwcml2YXRlIHBhdGg7XG5cbiAgcHJpdmF0ZSBwb2ludHMgPSBbXG4gICAgWzAsIDUwMF0sXG4gICAgWzUwMCwgMF0sXG4gICAgWzEwMDAsIDUwMF0sXG4gICAgWzUwMCwgMTAwMF0sXG4gIF07XG5cbiAgcHJpdmF0ZSBkcmFnZ2VkID0gbnVsbDtcbiAgcHJpdmF0ZSBzZWxlY3RlZCA9IHRoaXMucG9pbnRzWzBdO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBwcml2YXRlIHJlZHJhdygpIHt9XG5cbiAgbmdPbkluaXQoKSB7fVxufVxuIiwiPHN2ZyAjcGFuVGlsdEdyaWQgY2xhc3M9XCJwYW4tdGlsdC1ncmlkXCIgd2lkdGg9XCIxNTBcIiBoZWlnaHQ9XCIxNTBcIiB2aWV3Qm94PVwiLTEwMCAtMTAwIDEyMDAgMTIwMFwiIHN0eWxlPVwiYm9yZGVyOiAxcHggc29saWQgd2hpdGVcIj48L3N2Zz5cbiJdfQ==
@@ -1,174 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { map } from 'rxjs/operators';
3
- import { EffectCurve } from '../models/effect-curve';
4
- import { EffectPanTilt } from '../models/effect-pan-tilt';
5
- import { EffectService } from '../services/effect.service';
6
- import { PresetService } from '../services/preset.service';
7
- import { UuidService } from '../services/uuid.service';
8
- import { WarningDialogService } from '../services/warning-dialog.service';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "../services/uuid.service";
11
- import * as i2 from "../services/preset.service";
12
- import * as i3 from "../services/effect.service";
13
- import * as i4 from "../services/warning-dialog.service";
14
- import * as i5 from "@angular/common";
15
- import * as i6 from "ngx-bootstrap/accordion";
16
- import * as i7 from "./effect-curve/effect-curve.component";
17
- import * as i8 from "./effect-pan-tilt/effect-pan-tilt.component";
18
- import * as i9 from "@ngx-translate/core";
19
- function EffectComponent_div_1_accordion_group_3_i_3_Template(rf, ctx) { if (rf & 1) {
20
- i0.ɵɵelement(0, "i", 27);
21
- } }
22
- function EffectComponent_div_1_accordion_group_3_i_4_Template(rf, ctx) { if (rf & 1) {
23
- i0.ɵɵelement(0, "i", 28);
24
- } }
25
- function EffectComponent_div_1_accordion_group_3_i_13_Template(rf, ctx) { if (rf & 1) {
26
- i0.ɵɵelement(0, "i", 29);
27
- } }
28
- function EffectComponent_div_1_accordion_group_3_i_14_Template(rf, ctx) { if (rf & 1) {
29
- i0.ɵɵelement(0, "i", 30);
30
- } }
31
- function EffectComponent_div_1_accordion_group_3_div_15_Template(rf, ctx) { if (rf & 1) {
32
- i0.ɵɵelementStart(0, "div", 31);
33
- i0.ɵɵelement(1, "lib-app-effect-curve", 32);
34
- i0.ɵɵelementEnd();
35
- } if (rf & 2) {
36
- const item_r3 = i0.ɵɵnextContext().$implicit;
37
- const ctx_r3 = i0.ɵɵnextContext(2);
38
- i0.ɵɵadvance();
39
- i0.ɵɵproperty("curve", item_r3)("isSelected", item_r3 == ctx_r3.effectService.selectedEffect);
40
- } }
41
- function EffectComponent_div_1_accordion_group_3_div_16_Template(rf, ctx) { if (rf & 1) {
42
- i0.ɵɵelementStart(0, "div", 33);
43
- i0.ɵɵelement(1, "lib-app-effect-pan-tilt");
44
- i0.ɵɵelementEnd();
45
- } }
46
- function EffectComponent_div_1_accordion_group_3_Template(rf, ctx) { if (rf & 1) {
47
- const _r2 = i0.ɵɵgetCurrentView();
48
- i0.ɵɵelementStart(0, "accordion-group", 13);
49
- i0.ɵɵlistener("isOpenChange", function EffectComponent_div_1_accordion_group_3_Template_accordion_group_isOpenChange_0_listener($event) { const item_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.openEffect(item_r3, $event)); });
50
- i0.ɵɵelementStart(1, "button", 14)(2, "div", 15);
51
- i0.ɵɵtemplate(3, EffectComponent_div_1_accordion_group_3_i_3_Template, 1, 0, "i", 16)(4, EffectComponent_div_1_accordion_group_3_i_4_Template, 1, 0, "i", 17);
52
- i0.ɵɵelementStart(5, "span", 18);
53
- i0.ɵɵtext(6);
54
- i0.ɵɵpipe(7, "translate");
55
- i0.ɵɵelementEnd();
56
- i0.ɵɵelementStart(8, "div", 19)(9, "i", 20);
57
- i0.ɵɵlistener("click", function EffectComponent_div_1_accordion_group_3_Template_i_click_9_listener($event) { const item_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(2); item_r3.visible = !item_r3.visible; ctx_r3.presetService.previewLive(); return i0.ɵɵresetView($event.stopPropagation()); });
58
- i0.ɵɵelementEnd()();
59
- i0.ɵɵelementStart(10, "div", 21)(11, "i", 22);
60
- i0.ɵɵlistener("click", function EffectComponent_div_1_accordion_group_3_Template_i_click_11_listener($event) { const item_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(2); ctx_r3.deleteEffect(item_r3); return i0.ɵɵresetView($event.stopPropagation()); });
61
- i0.ɵɵelementEnd()();
62
- i0.ɵɵelementStart(12, "div", 21);
63
- i0.ɵɵtemplate(13, EffectComponent_div_1_accordion_group_3_i_13_Template, 1, 0, "i", 23)(14, EffectComponent_div_1_accordion_group_3_i_14_Template, 1, 0, "i", 24);
64
- i0.ɵɵelementEnd()()();
65
- i0.ɵɵtemplate(15, EffectComponent_div_1_accordion_group_3_div_15_Template, 2, 2, "div", 25)(16, EffectComponent_div_1_accordion_group_3_div_16_Template, 2, 0, "div", 26);
66
- i0.ɵɵelementEnd();
67
- } if (rf & 2) {
68
- const item_r3 = ctx.$implicit;
69
- const ctx_r3 = i0.ɵɵnextContext(2);
70
- i0.ɵɵproperty("isOpen", ctx_r3.effectService.selectedEffect == item_r3);
71
- i0.ɵɵadvance(3);
72
- i0.ɵɵproperty("ngIf", item_r3.type == "curve");
73
- i0.ɵɵadvance();
74
- i0.ɵɵproperty("ngIf", item_r3.type == "pan-tilt");
75
- i0.ɵɵadvance(2);
76
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(7, 10, "designer.effect.type-" + item_r3.type));
77
- i0.ɵɵadvance(3);
78
- i0.ɵɵclassProp("text-primary", item_r3.visible);
79
- i0.ɵɵadvance(4);
80
- i0.ɵɵproperty("ngIf", item_r3 == ctx_r3.effectService.selectedEffect);
81
- i0.ɵɵadvance();
82
- i0.ɵɵproperty("ngIf", item_r3 != ctx_r3.effectService.selectedEffect);
83
- i0.ɵɵadvance();
84
- i0.ɵɵproperty("ngIf", item_r3.type == "curve");
85
- i0.ɵɵadvance();
86
- i0.ɵɵproperty("ngIf", item_r3.type == "pan-tilt");
87
- } }
88
- function EffectComponent_div_1_Template(rf, ctx) { if (rf & 1) {
89
- const _r1 = i0.ɵɵgetCurrentView();
90
- i0.ɵɵelementStart(0, "div", 2)(1, "div", 3)(2, "accordion", 4);
91
- i0.ɵɵtemplate(3, EffectComponent_div_1_accordion_group_3_Template, 17, 12, "accordion-group", 5);
92
- i0.ɵɵelementEnd();
93
- i0.ɵɵelementStart(4, "div", 6)(5, "div", 7)(6, "a", 8);
94
- i0.ɵɵelement(7, "i", 9);
95
- i0.ɵɵtext(8);
96
- i0.ɵɵpipe(9, "translate");
97
- i0.ɵɵelementEnd();
98
- i0.ɵɵelementStart(10, "div", 10)(11, "a", 11);
99
- i0.ɵɵlistener("click", function EffectComponent_div_1_Template_a_click_11_listener() { i0.ɵɵrestoreView(_r1); const ctx_r3 = i0.ɵɵnextContext(); ctx_r3.addCurveEffect(); return i0.ɵɵresetView(false); });
100
- i0.ɵɵelement(12, "i", 12);
101
- i0.ɵɵtext(13);
102
- i0.ɵɵpipe(14, "translate");
103
- i0.ɵɵelementEnd()()()()()();
104
- } if (rf & 2) {
105
- const ctx_r3 = i0.ɵɵnextContext();
106
- i0.ɵɵadvance(2);
107
- i0.ɵɵproperty("closeOthers", true);
108
- i0.ɵɵadvance();
109
- i0.ɵɵproperty("ngForOf", ctx_r3.presetService.selectedPreset.effects);
110
- i0.ɵɵadvance(5);
111
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(9, 4, "designer.effect.add-new"), " ");
112
- i0.ɵɵadvance(5);
113
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(14, 6, "designer.effect.curve"), "");
114
- } }
115
- export class EffectComponent {
116
- constructor(uuidService, presetService, effectService, warningDialogService) {
117
- this.uuidService = uuidService;
118
- this.presetService = presetService;
119
- this.effectService = effectService;
120
- this.warningDialogService = warningDialogService;
121
- }
122
- ngOnInit() { }
123
- addEffect(effect) {
124
- this.effectService.selectedEffect = effect;
125
- if (this.presetService.selectedPreset) {
126
- this.presetService.selectedPreset.effects.push(effect);
127
- }
128
- }
129
- addCurveEffect() {
130
- const effect = new EffectCurve();
131
- effect.uuid = this.uuidService.getUuid();
132
- this.addEffect(effect);
133
- this.presetService.previewLive();
134
- }
135
- addPanTiltEffect() {
136
- this.addEffect(new EffectPanTilt());
137
- }
138
- openEffect(effect, event) {
139
- if (event) {
140
- this.effectService.selectedEffect = effect;
141
- }
142
- else {
143
- if (this.effectService.selectedEffect === effect) {
144
- this.effectService.selectedEffect = undefined;
145
- }
146
- }
147
- }
148
- deleteEffect(effect) {
149
- this.warningDialogService
150
- .show('designer.effect.delete-warning')
151
- .pipe(map((result) => {
152
- if (result) {
153
- this.presetService.selectedPreset.effects.splice(this.presetService.selectedPreset.effects.indexOf(effect), 1);
154
- this.presetService.previewLive();
155
- }
156
- }))
157
- .subscribe();
158
- }
159
- static { this.ɵfac = function EffectComponent_Factory(t) { return new (t || EffectComponent)(i0.ɵɵdirectiveInject(i1.UuidService), i0.ɵɵdirectiveInject(i2.PresetService), i0.ɵɵdirectiveInject(i3.EffectService), i0.ɵɵdirectiveInject(i4.WarningDialogService)); }; }
160
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EffectComponent, selectors: [["lib-app-effect"]], decls: 2, vars: 1, consts: [[1, "card", "border-secondary", "panel", "h-100"], ["class", "card-body capability-container", 4, "ngIf"], [1, "card-body", "capability-container"], [1, "m-3"], [3, "closeOthers"], ["style", "margin-top: 1px", 3, "isOpen", "isOpenChange", 4, "ngFor", "ngForOf"], [1, "d-flex", "mx-auto", "mt-3"], [1, "dropdown", "d-flex"], ["href", "#", "role", "button", "id", "dropdownMenuLink", "data-toggle", "dropdown", "aria-haspopup", "true", "aria-expanded", "false", 1, "btn", "btn-secondary", "dropdown-toggle"], ["aria-hidden", "true", 1, "fa", "fa-plus"], ["aria-labelledby", "dropdownMenuLink", 1, "dropdown-menu"], ["href", "#", 1, "dropdown-item", 3, "click"], ["aria-hidden", "true", 1, "fa", "fa-area-chart", "fa-fw"], [2, "margin-top", "1px", 3, "isOpenChange", "isOpen"], ["accordion-heading", "", 1, "btn", "btn-link", "btn-block", "clearfix"], [1, "pull-left", "float-left", "d-flex", "w-100"], ["class", "fa fa-area-chart fa-fw my-auto", "aria-hidden", "true", 4, "ngIf"], ["class", "fa fa-arrows-alt fa-fw my-auto", "aria-hidden", "true", 4, "ngIf"], [1, "ml-2"], [1, "ml-auto", "mr-2"], ["aria-hidden", "true", 1, "fa", "fa-eye", "fa-fw", 3, "click"], [1, "mr-2"], ["aria-hidden", "true", 1, "fa", "fa-trash", "fa-fw", 3, "click"], ["class", "fa fa-caret-down fa-fw", "aria-hidden", "true", 4, "ngIf"], ["class", "fa fa-caret-right fa-fw", "aria-hidden", "true", 4, "ngIf"], ["style", "min-width: 670px", 4, "ngIf"], ["style", "min-width: 500px", 4, "ngIf"], ["aria-hidden", "true", 1, "fa", "fa-area-chart", "fa-fw", "my-auto"], ["aria-hidden", "true", 1, "fa", "fa-arrows-alt", "fa-fw", "my-auto"], ["aria-hidden", "true", 1, "fa", "fa-caret-down", "fa-fw"], ["aria-hidden", "true", 1, "fa", "fa-caret-right", "fa-fw"], [2, "min-width", "670px"], [3, "curve", "isSelected"], [2, "min-width", "500px"]], template: function EffectComponent_Template(rf, ctx) { if (rf & 1) {
161
- i0.ɵɵelementStart(0, "div", 0);
162
- i0.ɵɵtemplate(1, EffectComponent_div_1_Template, 15, 8, "div", 1);
163
- i0.ɵɵelementEnd();
164
- } if (rf & 2) {
165
- i0.ɵɵadvance();
166
- i0.ɵɵproperty("ngIf", ctx.presetService.selectedPreset);
167
- } }, dependencies: [i5.NgForOf, i5.NgIf, i6.AccordionComponent, i6.AccordionPanelComponent, i7.EffectCurveComponent, i8.EffectPanTiltComponent, i9.TranslatePipe] }); }
168
- }
169
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EffectComponent, [{
170
- type: Component,
171
- args: [{ selector: 'lib-app-effect', template: "<div class=\"card border-secondary panel h-100\">\n <div class=\"card-body capability-container\" *ngIf=\"presetService.selectedPreset\">\n <div class=\"m-3\">\n <accordion [closeOthers]=\"true\">\n <accordion-group\n *ngFor=\"let item of presetService.selectedPreset.effects; let i = index\"\n [isOpen]=\"effectService.selectedEffect == item\"\n (isOpenChange)=\"openEffect(item, $event)\"\n style=\"margin-top: 1px\"\n >\n <button class=\"btn btn-link btn-block clearfix\" accordion-heading>\n <div class=\"pull-left float-left d-flex w-100\">\n <i *ngIf=\"item.type == 'curve'\" class=\"fa fa-area-chart fa-fw my-auto\" aria-hidden=\"true\"></i>\n <i *ngIf=\"item.type == 'pan-tilt'\" class=\"fa fa-arrows-alt fa-fw my-auto\" aria-hidden=\"true\"></i>\n <span class=\"ml-2\">{{ 'designer.effect.type-' + item.type | translate }}</span>\n <div class=\"ml-auto mr-2\">\n <i\n (click)=\"item.visible = !item.visible; presetService.previewLive(); $event.stopPropagation()\"\n class=\"fa fa-eye fa-fw\"\n [class.text-primary]=\"item.visible\"\n aria-hidden=\"true\"\n ></i>\n </div>\n <div class=\"mr-2\">\n <i (click)=\"this.deleteEffect(item); $event.stopPropagation()\" class=\"fa fa-trash fa-fw\" aria-hidden=\"true\"></i>\n </div>\n <div class=\"mr-2\">\n <i *ngIf=\"item == effectService.selectedEffect\" class=\"fa fa-caret-down fa-fw\" aria-hidden=\"true\"></i>\n <i *ngIf=\"item != effectService.selectedEffect\" class=\"fa fa-caret-right fa-fw\" aria-hidden=\"true\"></i>\n </div>\n </div>\n </button>\n\n <div *ngIf=\"item.type == 'curve'\" style=\"min-width: 670px\">\n <lib-app-effect-curve [curve]=\"item\" [isSelected]=\"item == effectService.selectedEffect\"></lib-app-effect-curve>\n </div>\n\n <div *ngIf=\"item.type == 'pan-tilt'\" style=\"min-width: 500px\">\n <lib-app-effect-pan-tilt></lib-app-effect-pan-tilt>\n </div>\n </accordion-group>\n </accordion>\n\n <div class=\"d-flex mx-auto mt-3\">\n <div class=\"dropdown d-flex\">\n <a\n class=\"btn btn-secondary dropdown-toggle\"\n href=\"#\"\n role=\"button\"\n id=\"dropdownMenuLink\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n >\n <i class=\"fa fa-plus\" aria-hidden=\"true\"></i> {{ 'designer.effect.add-new' | translate }}\n </a>\n\n <div class=\"dropdown-menu\" aria-labelledby=\"dropdownMenuLink\">\n <a class=\"dropdown-item\" href=\"#\" (click)=\"addCurveEffect(); (false)\">\n <i class=\"fa fa-area-chart fa-fw\" aria-hidden=\"true\"></i> {{ 'designer.effect.curve' | translate }}</a\n >\n <!-- <a class=\"dropdown-item\" href=\"#\" (click)=\"addPanTiltEffect()\">\n <i class=\"fa fa-arrows-alt fa-fw\" aria-hidden=\"true\"></i> Pan/Tilt</a> -->\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n" }]
172
- }], () => [{ type: i1.UuidService }, { type: i2.PresetService }, { type: i3.EffectService }, { type: i4.WarningDialogService }], null); })();
173
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EffectComponent, { className: "EffectComponent" }); })();
174
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWZmZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbmVyL3NyYy9saWIvZWZmZWN0L2VmZmVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ25lci9zcmMvbGliL2VmZmVjdC9lZmZlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7Ozs7Ozs7O0lDSTVELHdCQUE4Rjs7O0lBQzlGLHdCQUFpRzs7O0lBYy9GLHdCQUFzRzs7O0lBQ3RHLHdCQUF1Rzs7O0lBSzdHLCtCQUEyRDtJQUN6RCwyQ0FBZ0g7SUFDbEgsaUJBQU07Ozs7SUFEa0IsY0FBYztJQUFDLEFBQWYsK0JBQWMsOERBQW9EOzs7SUFHMUYsK0JBQThEO0lBQzVELDBDQUFtRDtJQUNyRCxpQkFBTTs7OztJQW5DUiwyQ0FLQztJQUZDLHFQQUFnQixrQ0FBd0IsS0FBQztJQUl2QyxBQURGLGtDQUFrRSxjQUNqQjtJQUU3QyxBQURBLHFGQUEwRix3RUFDRztJQUM3RixnQ0FBbUI7SUFBQSxZQUFxRDs7SUFBQSxpQkFBTztJQUU3RSxBQURGLCtC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SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQWM7UUFDekIsSUFBSSxDQUFDLG9CQUFvQjthQUN0QixJQUFJLENBQUMsZ0NBQWdDLENBQUM7YUFDdEMsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2IsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQy9HLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUNIO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztnRkFuRFUsZUFBZTtvRUFBZixlQUFlO1lDZjVCLDhCQUErQztZQUM3QyxpRUFBaUY7WUFtRW5GLGlCQUFNOztZQW5FeUMsY0FBa0M7WUFBbEMsdURBQWtDOzs7aUZEY3BFLGVBQWU7Y0FMM0IsU0FBUzsyQkFDRSxnQkFBZ0I7O2tGQUlmLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAnLi4vbW9kZWxzL2VmZmVjdCc7XG5pbXBvcnQgeyBFZmZlY3RDdXJ2ZSB9IGZyb20gJy4uL21vZGVscy9lZmZlY3QtY3VydmUnO1xuaW1wb3J0IHsgRWZmZWN0UGFuVGlsdCB9IGZyb20gJy4uL21vZGVscy9lZmZlY3QtcGFuLXRpbHQnO1xuaW1wb3J0IHsgRWZmZWN0U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2VmZmVjdC5zZXJ2aWNlJztcbmltcG9ydCB7IFByZXNldFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wcmVzZXQuc2VydmljZSc7XG5pbXBvcnQgeyBVdWlkU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3V1aWQuc2VydmljZSc7XG5pbXBvcnQgeyBXYXJuaW5nRGlhbG9nU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3dhcm5pbmctZGlhbG9nLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYXBwLWVmZmVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9lZmZlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lZmZlY3QuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBFZmZlY3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHV1aWRTZXJ2aWNlOiBVdWlkU2VydmljZSxcbiAgICBwdWJsaWMgcHJlc2V0U2VydmljZTogUHJlc2V0U2VydmljZSxcbiAgICBwdWJsaWMgZWZmZWN0U2VydmljZTogRWZmZWN0U2VydmljZSxcbiAgICBwcml2YXRlIHdhcm5pbmdEaWFsb2dTZXJ2aWNlOiBXYXJuaW5nRGlhbG9nU2VydmljZVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7fVxuXG4gIHByaXZhdGUgYWRkRWZmZWN0KGVmZmVjdDogRWZmZWN0KSB7XG4gICAgdGhpcy5lZmZlY3RTZXJ2aWNlLnNlbGVjdGVkRWZmZWN0ID0gZWZmZWN0O1xuXG4gICAgaWYgKHRoaXMucHJlc2V0U2VydmljZS5zZWxlY3RlZFByZXNldCkge1xuICAgICAgdGhpcy5wcmVzZXRTZXJ2aWNlLnNlbGVjdGVkUHJlc2V0LmVmZmVjdHMucHVzaChlZmZlY3QpO1xuICAgIH1cbiAgfVxuXG4gIGFkZEN1cnZlRWZmZWN0KCkge1xuICAgIGNvbnN0IGVmZmVjdCA9IG5ldyBFZmZlY3RDdXJ2ZSgpO1xuICAgIGVmZmVjdC51dWlkID0gdGhpcy51dWlkU2VydmljZS5nZXRVdWlkKCk7XG4gICAgdGhpcy5hZGRFZmZlY3QoZWZmZWN0KTtcbiAgICB0aGlzLnByZXNldFNlcnZpY2UucHJldmlld0xpdmUoKTtcbiAgfVxuXG4gIGFkZFBhblRpbHRFZmZlY3QoKSB7XG4gICAgdGhpcy5hZGRFZmZlY3QobmV3IEVmZmVjdFBhblRpbHQoKSk7XG4gIH1cblxuICBvcGVuRWZmZWN0KGVmZmVjdDogRWZmZWN0LCBldmVudDogYW55KSB7XG4gICAgaWYgKGV2ZW50KSB7XG4gICAgICB0aGlzLmVmZmVjdFNlcnZpY2Uuc2VsZWN0ZWRFZmZlY3QgPSBlZmZlY3Q7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmVmZmVjdFNlcnZpY2Uuc2VsZWN0ZWRFZmZlY3QgPT09IGVmZmVjdCkge1xuICAgICAgICB0aGlzLmVmZmVjdFNlcnZpY2Uuc2VsZWN0ZWRFZmZlY3QgPSB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZGVsZXRlRWZmZWN0KGVmZmVjdDogRWZmZWN0KSB7XG4gICAgdGhpcy53YXJuaW5nRGlhbG9nU2VydmljZVxuICAgICAgLnNob3coJ2Rlc2lnbmVyLmVmZmVjdC5kZWxldGUtd2FybmluZycpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXN1bHQpID0+IHtcbiAgICAgICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICB0aGlzLnByZXNldFNlcnZpY2Uuc2VsZWN0ZWRQcmVzZXQuZWZmZWN0cy5zcGxpY2UodGhpcy5wcmVzZXRTZXJ2aWNlLnNlbGVjdGVkUHJlc2V0LmVmZmVjdHMuaW5kZXhPZihlZmZlY3QpLCAxKTtcbiAgICAgICAgICAgIHRoaXMucHJlc2V0U2VydmljZS5wcmV2aWV3TGl2ZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNhcmQgYm9yZGVyLXNlY29uZGFyeSBwYW5lbCBoLTEwMFwiPlxuICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IGNhcGFiaWxpdHktY29udGFpbmVyXCIgKm5nSWY9XCJwcmVzZXRTZXJ2aWNlLnNlbGVjdGVkUHJlc2V0XCI+XG4gICAgPGRpdiBjbGFzcz1cIm0tM1wiPlxuICAgICAgPGFjY29yZGlvbiBbY2xvc2VPdGhlcnNdPVwidHJ1ZVwiPlxuICAgICAgICA8YWNjb3JkaW9uLWdyb3VwXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgcHJlc2V0U2VydmljZS5zZWxlY3RlZFByZXNldC5lZmZlY3RzOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICBbaXNPcGVuXT1cImVmZmVjdFNlcnZpY2Uuc2VsZWN0ZWRFZmZlY3QgPT0gaXRlbVwiXG4gICAgICAgICAgKGlzT3BlbkNoYW5nZSk9XCJvcGVuRWZmZWN0KGl0ZW0sICRldmVudClcIlxuICAgICAgICAgIHN0eWxlPVwibWFyZ2luLXRvcDogMXB4XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWxpbmsgYnRuLWJsb2NrIGNsZWFyZml4XCIgYWNjb3JkaW9uLWhlYWRpbmc+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHVsbC1sZWZ0IGZsb2F0LWxlZnQgZC1mbGV4IHctMTAwXCI+XG4gICAgICAgICAgICAgIDxpICpuZ0lmPVwiaXRlbS50eXBlID09ICdjdXJ2ZSdcIiBjbGFzcz1cImZhIGZhLWFyZWEtY2hhcnQgZmEtZncgbXktYXV0b1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgICAgICAgICAgICAgPGkgKm5nSWY9XCJpdGVtLnR5cGUgPT0gJ3Bhbi10aWx0J1wiIGNsYXNzPVwiZmEgZmEtYXJyb3dzLWFsdCBmYS1mdyBteS1hdXRvXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sLTJcIj57eyAnZGVzaWduZXIuZWZmZWN0LnR5cGUtJyArIGl0ZW0udHlwZSB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1sLWF1dG8gbXItMlwiPlxuICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaXRlbS52aXNpYmxlID0gIWl0ZW0udmlzaWJsZTsgcHJlc2V0U2VydmljZS5wcmV2aWV3TGl2ZSgpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmYSBmYS1leWUgZmEtZndcIlxuICAgICAgICAgICAgICAgICAgW2NsYXNzLnRleHQtcHJpbWFyeV09XCJpdGVtLnZpc2libGVcIlxuICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICA+PC9pPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLTJcIj5cbiAgICAgICAgICAgICAgICA8aSAoY2xpY2spPVwidGhpcy5kZWxldGVFZmZlY3QoaXRlbSk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiIGNsYXNzPVwiZmEgZmEtdHJhc2ggZmEtZndcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItMlwiPlxuICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwiaXRlbSA9PSBlZmZlY3RTZXJ2aWNlLnNlbGVjdGVkRWZmZWN0XCIgY2xhc3M9XCJmYSBmYS1jYXJldC1kb3duIGZhLWZ3XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwiaXRlbSAhPSBlZmZlY3RTZXJ2aWNlLnNlbGVjdGVkRWZmZWN0XCIgY2xhc3M9XCJmYSBmYS1jYXJldC1yaWdodCBmYS1md1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnR5cGUgPT0gJ2N1cnZlJ1wiIHN0eWxlPVwibWluLXdpZHRoOiA2NzBweFwiPlxuICAgICAgICAgICAgPGxpYi1hcHAtZWZmZWN0LWN1cnZlIFtjdXJ2ZV09XCJpdGVtXCIgW2lzU2VsZWN0ZWRdPVwiaXRlbSA9PSBlZmZlY3RTZXJ2aWNlLnNlbGVjdGVkRWZmZWN0XCI+PC9saWItYXBwLWVmZmVjdC1jdXJ2ZT5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnR5cGUgPT0gJ3Bhbi10aWx0J1wiIHN0eWxlPVwibWluLXdpZHRoOiA1MDBweFwiPlxuICAgICAgICAgICAgPGxpYi1hcHAtZWZmZWN0LXBhbi10aWx0PjwvbGliLWFwcC1lZmZlY3QtcGFuLXRpbHQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvYWNjb3JkaW9uLWdyb3VwPlxuICAgICAgPC9hY2NvcmRpb24+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggbXgtYXV0byBtdC0zXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93biBkLWZsZXhcIj5cbiAgICAgICAgICA8YVxuICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeSBkcm9wZG93bi10b2dnbGVcIlxuICAgICAgICAgICAgaHJlZj1cIiNcIlxuICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBpZD1cImRyb3Bkb3duTWVudUxpbmtcIlxuICAgICAgICAgICAgZGF0YS10b2dnbGU9XCJkcm9wZG93blwiXG4gICAgICAgICAgICBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiXG4gICAgICAgICAgICBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtcGx1c1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT4ge3sgJ2Rlc2lnbmVyLmVmZmVjdC5hZGQtbmV3JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvYT5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1tZW51XCIgYXJpYS1sYWJlbGxlZGJ5PVwiZHJvcGRvd25NZW51TGlua1wiPlxuICAgICAgICAgICAgPGEgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgaHJlZj1cIiNcIiAoY2xpY2spPVwiYWRkQ3VydmVFZmZlY3QoKTsgKGZhbHNlKVwiPlxuICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWFyZWEtY2hhcnQgZmEtZndcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+IHt7ICdkZXNpZ25lci5lZmZlY3QuY3VydmUnIHwgdHJhbnNsYXRlIH19PC9hXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8IS0tIDxhIGNsYXNzPVwiZHJvcGRvd24taXRlbVwiIGhyZWY9XCIjXCIgKGNsaWNrKT1cImFkZFBhblRpbHRFZmZlY3QoKVwiPlxuICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWFycm93cy1hbHQgZmEtZndcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+IFBhbi9UaWx0PC9hPiAtLT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,75 +0,0 @@
1
- import { Component, HostListener } from '@angular/core';
2
- import { BsModalRef } from 'ngx-bootstrap/modal';
3
- import { Subject } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "ngx-bootstrap/modal";
6
- import * as i2 from "@angular/common";
7
- import * as i3 from "@ngx-translate/core";
8
- function ErrorDialogComponent_p_13_Template(rf, ctx) { if (rf & 1) {
9
- i0.ɵɵelementStart(0, "p", 13);
10
- i0.ɵɵtext(1);
11
- i0.ɵɵelementEnd();
12
- } if (rf & 2) {
13
- const ctx_r0 = i0.ɵɵnextContext();
14
- i0.ɵɵadvance();
15
- i0.ɵɵtextInterpolate1("(", ctx_r0.details, ")");
16
- } }
17
- export class ErrorDialogComponent {
18
- constructor(bsModalRef) {
19
- this.bsModalRef = bsModalRef;
20
- }
21
- ngOnInit() {
22
- this.onClose = new Subject();
23
- }
24
- ok() {
25
- this.onClose.next(1);
26
- this.bsModalRef.hide();
27
- }
28
- cancel() {
29
- this.onClose.next(2);
30
- this.bsModalRef.hide();
31
- }
32
- handleKeyboardEvent(event) {
33
- this.ok();
34
- }
35
- static { this.ɵfac = function ErrorDialogComponent_Factory(t) { return new (t || ErrorDialogComponent)(i0.ɵɵdirectiveInject(i1.BsModalRef)); }; }
36
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ErrorDialogComponent, selectors: [["lib-error-dialog"]], hostBindings: function ErrorDialogComponent_HostBindings(rf, ctx) { if (rf & 1) {
37
- i0.ɵɵlistener("keydown.enter", function ErrorDialogComponent_keydown_enter_HostBindingHandler($event) { return ctx.handleKeyboardEvent($event); }, false, i0.ɵɵresolveDocument);
38
- } }, decls: 19, vars: 8, consts: [[1, "card-modal"], [1, "card"], [1, "card-header"], [1, "card-body"], [1, "row"], [1, "col-auto"], [1, "mb-0"], ["aria-hidden", "true", 1, "fa", "fa-exclamation-circle", "text-danger"], [1, "col", "pl-0"], ["class", "mt-1 mb-0", 4, "ngIf"], [1, "card-footer"], [1, "d-flex", "float-right"], ["type", "button", 1, "btn", "btn-primary", 3, "click"], [1, "mt-1", "mb-0"]], template: function ErrorDialogComponent_Template(rf, ctx) { if (rf & 1) {
39
- i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
40
- i0.ɵɵtext(3);
41
- i0.ɵɵpipe(4, "translate");
42
- i0.ɵɵelementEnd();
43
- i0.ɵɵelementStart(5, "div", 3)(6, "div", 4)(7, "div", 5)(8, "h2", 6);
44
- i0.ɵɵelement(9, "i", 7);
45
- i0.ɵɵelementEnd()();
46
- i0.ɵɵelementStart(10, "div", 8)(11, "p", 6);
47
- i0.ɵɵtext(12);
48
- i0.ɵɵelementEnd();
49
- i0.ɵɵtemplate(13, ErrorDialogComponent_p_13_Template, 2, 1, "p", 9);
50
- i0.ɵɵelementEnd()()();
51
- i0.ɵɵelementStart(14, "div", 10)(15, "div", 11)(16, "button", 12);
52
- i0.ɵɵlistener("click", function ErrorDialogComponent_Template_button_click_16_listener() { ctx.ok(); return false; });
53
- i0.ɵɵtext(17);
54
- i0.ɵɵpipe(18, "translate");
55
- i0.ɵɵelementEnd()()()()();
56
- } if (rf & 2) {
57
- i0.ɵɵadvance(3);
58
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(4, 4, "designer.misc.error"), " ");
59
- i0.ɵɵadvance(9);
60
- i0.ɵɵtextInterpolate(ctx.message);
61
- i0.ɵɵadvance();
62
- i0.ɵɵproperty("ngIf", ctx.details);
63
- i0.ɵɵadvance(4);
64
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(18, 6, "designer.misc.ok"), " ");
65
- } }, dependencies: [i2.NgIf, i3.TranslatePipe] }); }
66
- }
67
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ErrorDialogComponent, [{
68
- type: Component,
69
- args: [{ selector: 'lib-error-dialog', template: "<div class=\"card-modal\">\n <div class=\"card\">\n <div class=\"card-header\">\n {{ 'designer.misc.error' | translate }}\n </div>\n\n <div class=\"card-body\">\n <div class=\"row\">\n <div class=\"col-auto\">\n <h2 class=\"mb-0\">\n <i class=\"fa fa-exclamation-circle text-danger\" aria-hidden=\"true\"></i>\n </h2>\n </div>\n <div class=\"col pl-0\">\n <p class=\"mb-0\">{{ message }}</p>\n <p *ngIf=\"details\" class=\"mt-1 mb-0\">({{ details }})</p>\n </div>\n </div>\n </div>\n\n <div class=\"card-footer\">\n <div class=\"d-flex float-right\">\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"ok(); (false)\">\n {{ 'designer.misc.ok' | translate }}\n </button>\n </div>\n </div>\n </div>\n</div>\n" }]
70
- }], () => [{ type: i1.BsModalRef }], { handleKeyboardEvent: [{
71
- type: HostListener,
72
- args: ['document:keydown.enter', ['$event']]
73
- }] }); })();
74
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ErrorDialogComponent, { className: "ErrorDialogComponent" }); })();
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbmVyL3NyYy9saWIvZXJyb3ItZGlhbG9nL2Vycm9yLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ25lci9zcmMvbGliL2Vycm9yLWRpYWxvZy9lcnJvci1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7OztJQ2FyQiw2QkFBcUM7SUFBQSxZQUFlO0lBQUEsaUJBQUk7OztJQUFuQixjQUFlO0lBQWYsK0NBQWU7O0FETjlELE1BQU0sT0FBTyxvQkFBb0I7SUFNL0IsWUFBb0IsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFHLENBQUM7SUFFOUMsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRU0sRUFBRTtRQUNQLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFHRCxtQkFBbUIsQ0FBQyxLQUFVO1FBQzVCLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUNaLENBQUM7cUZBekJVLG9CQUFvQjtvRUFBcEIsb0JBQW9CO1lBQXBCLCtHQUFBLCtCQUEyQixpQ0FBUDs7WUNQN0IsQUFERixBQURGLDhCQUF3QixhQUNKLGFBQ1M7WUFDdkIsWUFDRjs7WUFBQSxpQkFBTTtZQUtBLEFBREYsQUFERixBQURGLDhCQUF1QixhQUNKLGFBQ08sWUFDSDtZQUNmLHVCQUF1RTtZQUUzRSxBQURFLGlCQUFLLEVBQ0Q7WUFFSixBQURGLCtCQUFzQixZQUNKO1lBQUEsYUFBYTtZQUFBLGlCQUFJO1lBQ2pDLG1FQUFxQztZQUczQyxBQURFLEFBREUsaUJBQU0sRUFDRixFQUNGO1lBSUYsQUFERixBQURGLGdDQUF5QixlQUNTLGtCQUN3QztZQUF4QiwyRkFBUyxRQUFJLFNBQUcsS0FBSyxJQUFFO1lBQ25FLGFBQ0Y7O1lBSVIsQUFERSxBQURFLEFBREUsQUFERSxpQkFBUyxFQUNMLEVBQ0YsRUFDRixFQUNGOztZQXpCQSxlQUNGO1lBREUsNEVBQ0Y7WUFVc0IsZUFBYTtZQUFiLGlDQUFhO1lBQ3pCLGNBQWE7WUFBYixrQ0FBYTtZQVFqQixlQUNGO1lBREUsMEVBQ0Y7OztpRkRmSyxvQkFBb0I7Y0FMaEMsU0FBUzsyQkFDRSxrQkFBa0I7MkNBMkI1QixtQkFBbUI7a0JBRGxCLFlBQVk7bUJBQUMsd0JBQXdCLEVBQUUsQ0FBQyxRQUFRLENBQUM7O2tGQXRCdkMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnNNb2RhbFJlZiB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItZXJyb3ItZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Vycm9yLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Vycm9yLWRpYWxvZy5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEVycm9yRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgb25DbG9zZTogU3ViamVjdDxudW1iZXI+O1xuXG4gIG1lc3NhZ2U6IHN0cmluZztcbiAgZGV0YWlsczogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYnNNb2RhbFJlZjogQnNNb2RhbFJlZikge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm9uQ2xvc2UgPSBuZXcgU3ViamVjdCgpO1xuICB9XG5cbiAgcHVibGljIG9rKCk6IHZvaWQge1xuICAgIHRoaXMub25DbG9zZS5uZXh0KDEpO1xuICAgIHRoaXMuYnNNb2RhbFJlZi5oaWRlKCk7XG4gIH1cblxuICBwdWJsaWMgY2FuY2VsKCk6IHZvaWQge1xuICAgIHRoaXMub25DbG9zZS5uZXh0KDIpO1xuICAgIHRoaXMuYnNNb2RhbFJlZi5oaWRlKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVudGVyJywgWyckZXZlbnQnXSlcbiAgaGFuZGxlS2V5Ym9hcmRFdmVudChldmVudDogYW55KSB7XG4gICAgdGhpcy5vaygpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY2FyZC1tb2RhbFwiPlxuICA8ZGl2IGNsYXNzPVwiY2FyZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlclwiPlxuICAgICAge3sgJ2Rlc2lnbmVyLm1pc2MuZXJyb3InIHwgdHJhbnNsYXRlIH19XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtYXV0b1wiPlxuICAgICAgICAgIDxoMiBjbGFzcz1cIm1iLTBcIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtZXhjbGFtYXRpb24tY2lyY2xlIHRleHQtZGFuZ2VyXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuICAgICAgICAgIDwvaDI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sIHBsLTBcIj5cbiAgICAgICAgICA8cCBjbGFzcz1cIm1iLTBcIj57eyBtZXNzYWdlIH19PC9wPlxuICAgICAgICAgIDxwICpuZ0lmPVwiZGV0YWlsc1wiIGNsYXNzPVwibXQtMSBtYi0wXCI+KHt7IGRldGFpbHMgfX0pPC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsb2F0LXJpZ2h0XCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cIm9rKCk7IChmYWxzZSlcIj5cbiAgICAgICAgICB7eyAnZGVzaWduZXIubWlzYy5vaycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==