ngx-tethys 18.1.0 → 18.2.0-next.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 (155) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/alert/styles/mixin.scss +1 -1
  3. package/anchor/style/anchor.scss +4 -2
  4. package/avatar/styles/avatar.scss +1 -1
  5. package/back-top/styles/back-top.scss +3 -3
  6. package/button/styles/button-group.scss +9 -9
  7. package/button/styles/button.scss +2 -6
  8. package/button/styles/mixin.scss +6 -53
  9. package/calendar/styles/calendar.scss +3 -11
  10. package/card/styles/card.scss +3 -3
  11. package/carousel/styles/carousel.scss +10 -10
  12. package/cascader/styles/cascader.scss +3 -2
  13. package/collapse/styles/collapse.scss +4 -2
  14. package/color-picker/styles/alpha.scss +1 -1
  15. package/color-picker/styles/color-picker-panel.scss +1 -1
  16. package/color-picker/styles/hue.scss +1 -1
  17. package/color-picker/styles/saturation.scss +1 -1
  18. package/comment/styles/mixin.scss +1 -1
  19. package/core/index.d.ts +1 -0
  20. package/core/overlay/abstract-overlay.config.d.ts +5 -0
  21. package/core/theme/index.d.ts +2 -0
  22. package/core/theme/store.d.ts +11 -0
  23. package/core/theme/theme.d.ts +5 -0
  24. package/date-picker/styles/calendar.scss +1 -1
  25. package/date-picker/styles/decade-panel.scss +1 -1
  26. package/date-picker/styles/picker.scss +1 -1
  27. package/date-picker/styles/range-picker.scss +3 -3
  28. package/date-picker/styles/year-panel.scss +2 -2
  29. package/dialog/styles/dialog.scss +6 -6
  30. package/drag-drop/drag-content.directive.d.ts +1 -0
  31. package/drag-drop/drag-drop.service.d.ts +1 -0
  32. package/drag-drop/drag-handle.directive.d.ts +1 -0
  33. package/drag-drop/drag.directive.d.ts +1 -0
  34. package/drag-drop/drop-container.directive.d.ts +2 -5
  35. package/drag-drop/module.d.ts +4 -0
  36. package/dropdown/styles/dropdown.scss +3 -3
  37. package/empty/styles/empty.scss +22 -2
  38. package/esm2022/carousel/carousel.component.mjs +3 -3
  39. package/esm2022/core/index.mjs +2 -1
  40. package/esm2022/core/overlay/abstract-overlay.config.mjs +1 -1
  41. package/esm2022/core/overlay/abstract-overlay.service.mjs +2 -2
  42. package/esm2022/core/theme/index.mjs +3 -0
  43. package/esm2022/core/theme/store.mjs +42 -0
  44. package/esm2022/core/theme/theme.mjs +2 -0
  45. package/esm2022/dialog/dialog-container.component.mjs +2 -2
  46. package/esm2022/drag-drop/drag-content.directive.mjs +2 -1
  47. package/esm2022/drag-drop/drag-drop.service.mjs +2 -1
  48. package/esm2022/drag-drop/drag-handle.directive.mjs +2 -1
  49. package/esm2022/drag-drop/drag.directive.mjs +2 -1
  50. package/esm2022/drag-drop/drop-container.directive.mjs +2 -1
  51. package/esm2022/drag-drop/module.mjs +9 -2
  52. package/esm2022/empty/svgs.mjs +103 -8
  53. package/esm2022/guider/guider-hint/guider-hint.component.mjs +3 -3
  54. package/esm2022/notify/notify.component.mjs +3 -3
  55. package/esm2022/result/result.component.mjs +3 -3
  56. package/esm2022/table/table-skeleton.component.mjs +3 -3
  57. package/esm2022/version.mjs +2 -2
  58. package/esm2022/watermark/config.mjs +2 -2
  59. package/esm2022/watermark/watermark.directive.mjs +18 -10
  60. package/fesm2022/ngx-tethys-carousel.mjs +2 -2
  61. package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
  62. package/fesm2022/ngx-tethys-core.mjs +43 -3
  63. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  64. package/fesm2022/ngx-tethys-dialog.mjs +1 -1
  65. package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
  66. package/fesm2022/ngx-tethys-drag-drop.mjs +13 -2
  67. package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
  68. package/fesm2022/ngx-tethys-empty.mjs +102 -7
  69. package/fesm2022/ngx-tethys-empty.mjs.map +1 -1
  70. package/fesm2022/ngx-tethys-guider.mjs +2 -2
  71. package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
  72. package/fesm2022/ngx-tethys-notify.mjs +2 -2
  73. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  74. package/fesm2022/ngx-tethys-result.mjs +2 -2
  75. package/fesm2022/ngx-tethys-result.mjs.map +1 -1
  76. package/fesm2022/ngx-tethys-table.mjs +2 -2
  77. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  78. package/fesm2022/ngx-tethys-watermark.mjs +18 -10
  79. package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
  80. package/fesm2022/ngx-tethys.mjs +1 -1
  81. package/fesm2022/ngx-tethys.mjs.map +1 -1
  82. package/form/styles/form-check.scss +1 -1
  83. package/form/styles/forms.scss +2 -3
  84. package/form/styles/mixin.scss +6 -5
  85. package/guider/styles/guider-tip.scss +2 -1
  86. package/icon/examples/all/all.component.scss +3 -1
  87. package/image/styles/image.scss +15 -11
  88. package/input/styles/input-group.scss +1 -1
  89. package/input/styles/input.scss +2 -2
  90. package/layout/examples/sidebar/sidebar.component.scss +1 -1
  91. package/layout/styles/layout.scss +3 -3
  92. package/menu/examples/theme/theme.component.scss +0 -8
  93. package/menu/styles/theme.scss +4 -4
  94. package/message/styles/message.scss +1 -1
  95. package/nav/examples/basic/basic.component.scss +1 -1
  96. package/nav/examples/extra/extra.component.scss +1 -1
  97. package/nav/examples/fill/fill.component.scss +1 -1
  98. package/nav/examples/lite/lite.component.scss +1 -1
  99. package/nav/examples/pills/pills.component.scss +1 -1
  100. package/nav/examples/responsive/responsive.component.scss +1 -1
  101. package/nav/examples/size/size.component.scss +1 -1
  102. package/nav/examples/tabs/tabs.component.scss +1 -1
  103. package/nav/examples/type/type.component.scss +1 -1
  104. package/nav/examples/vertical/vertical.component.scss +1 -1
  105. package/notify/styles/notify.scss +4 -4
  106. package/package.json +1 -1
  107. package/pagination/styles/pagination.scss +2 -2
  108. package/popover/styles.scss +3 -3
  109. package/property/styles/properties.scss +1 -1
  110. package/resizable/examples/line/line.component.scss +3 -1
  111. package/resizable/examples/style.scss +7 -5
  112. package/result/styles/result.scss +25 -1
  113. package/schematics/version.d.ts +1 -1
  114. package/schematics/version.js +1 -1
  115. package/segment/styles/mixin.scss +2 -3
  116. package/segment/styles/segment.scss +1 -1
  117. package/select/styles/select.scss +1 -1
  118. package/shared/option/styles/option.mixin.scss +1 -1
  119. package/shared/select/styles/select.mixin.scss +2 -2
  120. package/slide/examples/drawer-container/drawer-container.component.scss +1 -1
  121. package/slide/examples/layout/layout.component.scss +4 -2
  122. package/slide/styles/slide.scss +3 -2
  123. package/slider/slider.scss +2 -2
  124. package/stepper/examples/basic/basic.component.scss +3 -1
  125. package/stepper/examples/icon/icon.component.scss +3 -1
  126. package/stepper/styles/stepper.scss +7 -3
  127. package/styles/bootstrap/_variables.scss +14 -876
  128. package/styles/bootstrap/utilities/_background.scss +27 -5
  129. package/styles/bootstrap/utilities/_text.scss +29 -31
  130. package/styles/index.scss +2 -1
  131. package/styles/mixins/background-variant.scss +2 -10
  132. package/styles/mixins/utilities.scss +2 -11
  133. package/styles/modules/cdk/drag-drop.scss +6 -8
  134. package/styles/modules/close.scss +1 -1
  135. package/styles/modules/reboot.scss +1 -1
  136. package/styles/modules/tables.scss +1 -1
  137. package/styles/modules/utils.scss +0 -17
  138. package/styles/theme/dark.scss +70 -0
  139. package/styles/theme/default.scss +70 -0
  140. package/styles/theme/index.scss +2 -0
  141. package/styles/variables.scss +114 -76
  142. package/switch/styles/mixin.scss +0 -13
  143. package/table/styles/table.scss +7 -19
  144. package/tabs/styles/tabs.scss +1 -1
  145. package/tag/styles/mixin.scss +7 -42
  146. package/tag/styles/tag.scss +2 -2
  147. package/time-picker/styles/time-panel.scss +1 -1
  148. package/timeline/styles/timeline.scss +2 -2
  149. package/tooltip/styles.scss +4 -4
  150. package/transfer/styles/transfer.scss +2 -2
  151. package/tree/styles/tree.scss +3 -5
  152. package/watermark/config.d.ts +1 -1
  153. package/watermark/watermark.directive.d.ts +23 -2
  154. package/carousel/styles/index.scss +0 -1
  155. package/carousel/styles/variables.scss +0 -5
@@ -6,7 +6,7 @@
6
6
  padding: variables.$dropdown-menu-padding-y 0;
7
7
  display: block;
8
8
  width: 100%;
9
- background: variables.$dropdown-menu-bg;
9
+ background: variables.$bg-panel;
10
10
  border-radius: variables.$border-radius;
11
11
 
12
12
  .dropdown-menu-group {
@@ -96,7 +96,7 @@
96
96
  z-index: 1;
97
97
  padding: 8px 0;
98
98
  width: 100%;
99
- background: variables.$dropdown-menu-bg;
99
+ background: variables.$bg-panel;
100
100
  border-radius: variables.$border-radius;
101
101
  @include shadow.section-box-shadow();
102
102
  }
@@ -199,7 +199,7 @@
199
199
  margin-left: -15px;
200
200
  padding-right: 10px;
201
201
  color: variables.$dropdown-menu-divider-title-color;
202
- background: variables.$white;
202
+ background: variables.$bg-default;
203
203
  transform: translateY(-50%);
204
204
  }
205
205
  }
@@ -1,5 +1,5 @@
1
- @use "../../styles/variables";
2
- @use "mixin";
1
+ @use '../../styles/variables';
2
+ @use 'mixin';
3
3
 
4
4
  .thy-empty-state {
5
5
  display: block;
@@ -48,3 +48,23 @@
48
48
  );
49
49
  }
50
50
  }
51
+
52
+ .thy-empty-svg-default,
53
+ .thy-empty-svg-light-default {
54
+ display: inline-block;
55
+ }
56
+ .thy-empty-svg-dark,
57
+ .thy-empty-svg-light-dark {
58
+ display: none;
59
+ }
60
+
61
+ :root[theme='dark'] {
62
+ .thy-empty-svg-default,
63
+ .thy-empty-svg-light-default {
64
+ display: none;
65
+ }
66
+ .thy-empty-svg-dark,
67
+ .thy-empty-svg-light-dark {
68
+ display: inline-block;
69
+ }
70
+ }
@@ -242,13 +242,13 @@ export class ThyCarousel {
242
242
  this._destroy$.complete();
243
243
  }
244
244
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCarousel, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
245
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyCarousel, isStandalone: true, selector: "thy-carousel", inputs: { thyAutoPlay: ["thyAutoPlay", "thyAutoPlay", coerceBooleanProperty], thyAutoPlayInterval: ["thyAutoPlayInterval", "thyAutoPlayInterval", numberAttribute], thyEffect: "thyEffect", thyIndicators: ["thyIndicators", "thyIndicators", coerceBooleanProperty], thyIndicatorRender: "thyIndicatorRender", thyControls: ["thyControls", "thyControls", coerceBooleanProperty], thyControlPrev: "thyControlPrev", thyControlNext: "thyControlNext", thyTouchable: ["thyTouchable", "thyTouchable", coerceBooleanProperty], thyTrigger: "thyTrigger", thyPause: "thyPause" }, outputs: { thyBeforeChange: "thyBeforeChange", thyAfterChange: "thyAfterChange" }, host: { classAttribute: "thy-carousel" }, queries: [{ propertyName: "carouselItems", predicate: ThyCarouselItemDirective }], viewQueries: [{ propertyName: "carouselWrapper", first: true, predicate: ["carouselWrapper"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"thy-carousel thy-carousel-initialized thy-carousel-point-events\">\n <div #carouselWrapper class=\"thy-carousel-wrapper\" (mousedown)=\"onDrag($event)\" (touchstart)=\"onDrag($event)\">\n <ng-content></ng-content>\n </div>\n @if (thyControls && carouselItems.length > 1) {\n <div class=\"thy-carousel-control-pre-wrapper\" (click)=\"pre()\">\n <ng-container *ngTemplateOutlet=\"thyControlPrev || defaultControlPrev\"></ng-container>\n </div>\n <div class=\"thy-carousel-control-next-wrapper\" (click)=\"next()\">\n <ng-container *ngTemplateOutlet=\"thyControlNext || defaultControlNext\"></ng-container>\n </div>\n }\n @if (thyIndicators) {\n <div class=\"thy-carousel-indicators\">\n @for (content of carouselItems; track $index; let i = $index) {\n <span\n class=\"thy-carousel-indicator\"\n (mouseenter)=\"indicatorHandleTrigger(i)\"\n (mouseleave)=\"indicatorHandleLeave()\"\n (click)=\"indicatorHandleClick(i)\">\n <ng-template\n [ngTemplateOutlet]=\"thyIndicatorRender || defaultIndicatorRender\"\n [ngTemplateOutletContext]=\"{ $implicit: i === activeIndex }\"></ng-template>\n </span>\n }\n </div>\n }\n</div>\n\n<ng-template #defaultIndicatorRender let-active>\n <thy-dot thyColor=\"#fff\" [class.active]=\"active\"></thy-dot>\n</ng-template>\n\n<ng-template #defaultControlPrev>\n <div class=\"thy-carousel-control thy-carousel-control-pre\">\n <thy-icon thyIconName=\"angle-left-bold\"></thy-icon>\n </div>\n</ng-template>\n\n<ng-template #defaultControlNext>\n <div class=\"thy-carousel-control thy-carousel-control-next\">\n <thy-icon thyIconName=\"angle-right-bold\"></thy-icon>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ThyDot, selector: "thy-dot,[thy-dot],[thyDot]", inputs: ["thyColor", "thySize", "thyTheme", "thyShape"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
245
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: ThyCarousel, isStandalone: true, selector: "thy-carousel", inputs: { thyAutoPlay: ["thyAutoPlay", "thyAutoPlay", coerceBooleanProperty], thyAutoPlayInterval: ["thyAutoPlayInterval", "thyAutoPlayInterval", numberAttribute], thyEffect: "thyEffect", thyIndicators: ["thyIndicators", "thyIndicators", coerceBooleanProperty], thyIndicatorRender: "thyIndicatorRender", thyControls: ["thyControls", "thyControls", coerceBooleanProperty], thyControlPrev: "thyControlPrev", thyControlNext: "thyControlNext", thyTouchable: ["thyTouchable", "thyTouchable", coerceBooleanProperty], thyTrigger: "thyTrigger", thyPause: "thyPause" }, outputs: { thyBeforeChange: "thyBeforeChange", thyAfterChange: "thyAfterChange" }, host: { classAttribute: "thy-carousel" }, queries: [{ propertyName: "carouselItems", predicate: ThyCarouselItemDirective }], viewQueries: [{ propertyName: "carouselWrapper", first: true, predicate: ["carouselWrapper"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"thy-carousel thy-carousel-initialized thy-carousel-point-events\">\n <div #carouselWrapper class=\"thy-carousel-wrapper\" (mousedown)=\"onDrag($event)\" (touchstart)=\"onDrag($event)\">\n <ng-content></ng-content>\n </div>\n @if (thyControls && carouselItems.length > 1) {\n <div class=\"thy-carousel-control-pre-wrapper\" (click)=\"pre()\">\n <ng-container *ngTemplateOutlet=\"thyControlPrev || defaultControlPrev\"></ng-container>\n </div>\n <div class=\"thy-carousel-control-next-wrapper\" (click)=\"next()\">\n <ng-container *ngTemplateOutlet=\"thyControlNext || defaultControlNext\"></ng-container>\n </div>\n }\n @if (thyIndicators) {\n <div class=\"thy-carousel-indicators\">\n @for (content of carouselItems; track $index; let i = $index) {\n <span\n class=\"thy-carousel-indicator\"\n (mouseenter)=\"indicatorHandleTrigger(i)\"\n (mouseleave)=\"indicatorHandleLeave()\"\n (click)=\"indicatorHandleClick(i)\">\n <ng-template\n [ngTemplateOutlet]=\"thyIndicatorRender || defaultIndicatorRender\"\n [ngTemplateOutletContext]=\"{ $implicit: i === activeIndex }\"></ng-template>\n </span>\n }\n </div>\n }\n</div>\n\n<ng-template #defaultIndicatorRender let-active>\n <thy-dot [class.active]=\"active\"></thy-dot>\n</ng-template>\n\n<ng-template #defaultControlPrev>\n <div class=\"thy-carousel-control thy-carousel-control-pre\">\n <thy-icon thyIconName=\"angle-left-bold\"></thy-icon>\n </div>\n</ng-template>\n\n<ng-template #defaultControlNext>\n <div class=\"thy-carousel-control thy-carousel-control-next\">\n <thy-icon thyIconName=\"angle-right-bold\"></thy-icon>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ThyDot, selector: "thy-dot,[thy-dot],[thyDot]", inputs: ["thyColor", "thySize", "thyTheme", "thyShape"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
246
246
  }
247
247
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyCarousel, decorators: [{
248
248
  type: Component,
249
249
  args: [{ selector: 'thy-carousel', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, host: {
250
250
  class: 'thy-carousel'
251
- }, standalone: true, imports: [NgTemplateOutlet, ThyDot, ThyIcon], template: "<div class=\"thy-carousel thy-carousel-initialized thy-carousel-point-events\">\n <div #carouselWrapper class=\"thy-carousel-wrapper\" (mousedown)=\"onDrag($event)\" (touchstart)=\"onDrag($event)\">\n <ng-content></ng-content>\n </div>\n @if (thyControls && carouselItems.length > 1) {\n <div class=\"thy-carousel-control-pre-wrapper\" (click)=\"pre()\">\n <ng-container *ngTemplateOutlet=\"thyControlPrev || defaultControlPrev\"></ng-container>\n </div>\n <div class=\"thy-carousel-control-next-wrapper\" (click)=\"next()\">\n <ng-container *ngTemplateOutlet=\"thyControlNext || defaultControlNext\"></ng-container>\n </div>\n }\n @if (thyIndicators) {\n <div class=\"thy-carousel-indicators\">\n @for (content of carouselItems; track $index; let i = $index) {\n <span\n class=\"thy-carousel-indicator\"\n (mouseenter)=\"indicatorHandleTrigger(i)\"\n (mouseleave)=\"indicatorHandleLeave()\"\n (click)=\"indicatorHandleClick(i)\">\n <ng-template\n [ngTemplateOutlet]=\"thyIndicatorRender || defaultIndicatorRender\"\n [ngTemplateOutletContext]=\"{ $implicit: i === activeIndex }\"></ng-template>\n </span>\n }\n </div>\n }\n</div>\n\n<ng-template #defaultIndicatorRender let-active>\n <thy-dot thyColor=\"#fff\" [class.active]=\"active\"></thy-dot>\n</ng-template>\n\n<ng-template #defaultControlPrev>\n <div class=\"thy-carousel-control thy-carousel-control-pre\">\n <thy-icon thyIconName=\"angle-left-bold\"></thy-icon>\n </div>\n</ng-template>\n\n<ng-template #defaultControlNext>\n <div class=\"thy-carousel-control thy-carousel-control-next\">\n <thy-icon thyIconName=\"angle-right-bold\"></thy-icon>\n </div>\n</ng-template>\n" }]
251
+ }, standalone: true, imports: [NgTemplateOutlet, ThyDot, ThyIcon], template: "<div class=\"thy-carousel thy-carousel-initialized thy-carousel-point-events\">\n <div #carouselWrapper class=\"thy-carousel-wrapper\" (mousedown)=\"onDrag($event)\" (touchstart)=\"onDrag($event)\">\n <ng-content></ng-content>\n </div>\n @if (thyControls && carouselItems.length > 1) {\n <div class=\"thy-carousel-control-pre-wrapper\" (click)=\"pre()\">\n <ng-container *ngTemplateOutlet=\"thyControlPrev || defaultControlPrev\"></ng-container>\n </div>\n <div class=\"thy-carousel-control-next-wrapper\" (click)=\"next()\">\n <ng-container *ngTemplateOutlet=\"thyControlNext || defaultControlNext\"></ng-container>\n </div>\n }\n @if (thyIndicators) {\n <div class=\"thy-carousel-indicators\">\n @for (content of carouselItems; track $index; let i = $index) {\n <span\n class=\"thy-carousel-indicator\"\n (mouseenter)=\"indicatorHandleTrigger(i)\"\n (mouseleave)=\"indicatorHandleLeave()\"\n (click)=\"indicatorHandleClick(i)\">\n <ng-template\n [ngTemplateOutlet]=\"thyIndicatorRender || defaultIndicatorRender\"\n [ngTemplateOutletContext]=\"{ $implicit: i === activeIndex }\"></ng-template>\n </span>\n }\n </div>\n }\n</div>\n\n<ng-template #defaultIndicatorRender let-active>\n <thy-dot [class.active]=\"active\"></thy-dot>\n</ng-template>\n\n<ng-template #defaultControlPrev>\n <div class=\"thy-carousel-control thy-carousel-control-pre\">\n <thy-icon thyIconName=\"angle-left-bold\"></thy-icon>\n </div>\n</ng-template>\n\n<ng-template #defaultControlNext>\n <div class=\"thy-carousel-control thy-carousel-control-next\">\n <thy-icon thyIconName=\"angle-right-bold\"></thy-icon>\n </div>\n</ng-template>\n" }]
252
252
  }], propDecorators: { carouselItems: [{
253
253
  type: ContentChildren,
254
254
  args: [ThyCarouselItemDirective]
@@ -287,4 +287,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
287
287
  }], thyAfterChange: [{
288
288
  type: Output
289
289
  }] } });
290
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Nhcm91c2VsL2Nhcm91c2VsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jYXJvdXNlbC9jYXJvdXNlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULFNBQVMsRUFDVCxXQUFXLEVBQ1gsaUJBQWlCLEVBSWpCLE1BQU0sRUFFTixlQUFlLEVBQ2YsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQVNyRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDaEcsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFbEU7OztHQUdHO0FB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QUUsTUFBTSxnSUFBRSxPQUFPOzsyRkFFbEMsV0FBVztrQkFadkIsU0FBUzsrQkFDSSxjQUFjLG1CQUVQLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksdUJBQ2hCLEtBQUssUUFDcEI7d0JBQ0YsS0FBSyxFQUFFLGNBQWM7cUJBQ3hCLGNBQ1csSUFBSSxXQUNQLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQzs4QkFZRCxhQUFhO3NCQUF2RCxlQUFlO3VCQUFDLHdCQUF3QjtnQkFLTyxlQUFlO3NCQUE5RCxTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFLRCxXQUFXO3NCQUF2RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQUtKLG1CQUFtQjtzQkFBekQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7Z0JBTTVCLFNBQVM7c0JBQWpCLEtBQUs7Z0JBS3VDLGFBQWE7c0JBQXpELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBS2xDLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFLdUMsV0FBVztzQkFBdkQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFLbEMsY0FBYztzQkFBdEIsS0FBSztnQkFLRyxjQUFjO3NCQUF0QixLQUFLO2dCQUt1QyxZQUFZO3NCQUF4RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQU1sQyxVQUFVO3NCQUFsQixLQUFLO2dCQU1HLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS2EsZUFBZTtzQkFBakMsTUFBTTtnQkFLWSxjQUFjO3NCQUFoQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdDaGlsZCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIE5nWm9uZSxcbiAgICBPbkRlc3Ryb3ksXG4gICAgbnVtYmVyQXR0cmlidXRlLFxuICAgIGluamVjdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BsYXRmb3JtJztcbmltcG9ydCB7IFRoeUNhcm91c2VsSXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vY2Fyb3VzZWwtaXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgICBUaHlDYXJvdXNlbEVuZ2luZSxcbiAgICBUaHlEaXN0YW5jZVZlY3RvcixcbiAgICBUaHlDYXJvdXNlbFN3aXRjaERhdGEsXG4gICAgVGh5Q2Fyb3VzZWxFZmZlY3QsXG4gICAgVGh5Q2Fyb3VzZWxUcmlnZ2VyLFxuICAgIFRoeUNhcm91c2VsUGF1c2Vcbn0gZnJvbSAnLi90eXBpbmdzJztcbmltcG9ydCB7IFRoeUNhcm91c2VsU2xpZGVFbmdpbmUsIFRoeUNhcm91c2VsTm9vcEVuZ2luZSwgVGh5Q2Fyb3VzZWxGYWRlRW5naW5lIH0gZnJvbSAnLi9lbmdpbmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRoeUNhcm91c2VsU2VydmljZSB9IGZyb20gJy4vY2Fyb3VzZWwuc2VydmljZSc7XG5pbXBvcnQgeyBUaHlJY29uIH0gZnJvbSAnbmd4LXRldGh5cy9pY29uJztcbmltcG9ydCB7IFRoeURvdCB9IGZyb20gJ25neC10ZXRoeXMvZG90JztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBpc051bWJlciB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5cbi8qKlxuICog6LWw6ams54Gv57uE5Lu2XG4gKiBAbmFtZSB0aHktY2Fyb3VzZWxcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktY2Fyb3VzZWwnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jYXJvdXNlbC5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LWNhcm91c2VsJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTmdUZW1wbGF0ZU91dGxldCwgVGh5RG90LCBUaHlJY29uXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlDYXJvdXNlbCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQWZ0ZXJDb250ZW50SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAgIHByb3RlY3RlZCByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuICAgIHByaXZhdGUgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIG5nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2Fyb3VzZWxTZXJ2aWNlID0gaW5qZWN0KFRoeUNhcm91c2VsU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBwbGF0Zm9ybSA9IGluamVjdChQbGF0Zm9ybSk7XG5cbiAgICAvKipcbiAgICAgKiBAcHJpdmF0ZVxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oVGh5Q2Fyb3VzZWxJdGVtRGlyZWN0aXZlKSBjYXJvdXNlbEl0ZW1zITogUXVlcnlMaXN0PFRoeUNhcm91c2VsSXRlbURpcmVjdGl2ZT47XG5cbiAgICAvKipcbiAgICAgKiBAcHJpdmF0ZVxuICAgICAqL1xuICAgIEBWaWV3Q2hpbGQoJ2Nhcm91c2VsV3JhcHBlcicsIHsgc3RhdGljOiB0cnVlIH0pIGNhcm91c2VsV3JhcHBlcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKboh6rliqjliIfmjaLvvIzpu5jorqQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlBdXRvUGxheTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICog6Ieq5Yqo5YiH5o2i5pe26Ze06Ze06ZqUKOavq+enkilcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSB0aHlBdXRvUGxheUludGVydmFsOiBudW1iZXIgPSAzMDAwO1xuXG4gICAgLyoqXG4gICAgICog5YiH5o2i5Yqo55S75qC35byPXG4gICAgICogQHR5cGUgc2xpZGUgfCBmYWRlIHwgbm9vcFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUVmZmVjdDogVGh5Q2Fyb3VzZWxFZmZlY3QgPSAnc2xpZGUnO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5pi+56S65YiH5o2i5oyH56S65ZmoXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSkgdGh5SW5kaWNhdG9ycyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiDmjIfnpLrlmaggSXRlbSDnmoTmuLLmn5PmqKHmnb9cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlJbmRpY2F0b3JSZW5kZXI/OiBUZW1wbGF0ZVJlZjx7ICRpbXBsaWNpdDogYm9vbGVhbiB9PjtcblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuaYvuekuuW3puWPs+WIh+aNolxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeUNvbnRyb2xzID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIOS4iuS4gOS4quaOp+WItuWZqOa4suafk+aooeadv1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUNvbnRyb2xQcmV2PzogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIC8qKlxuICAgICAqIOS4i+S4gOS4quaOp+WItuWZqOa4suafk+aooeadv1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUNvbnRyb2xOZXh0PzogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuaUr+aMgeaJi+WKv+a7keWKqFxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeVRvdWNoYWJsZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiDmjIfnpLrngrnliIfmjaLnmoTop6blj5HmnaHku7ZcbiAgICAgKiBAdHlwZSBjbGljayB8IGhvdmVyXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5VHJpZ2dlcjogVGh5Q2Fyb3VzZWxUcmlnZ2VyID0gJ2NsaWNrJztcblxuICAgIC8qKlxuICAgICAqIOm8oOagh+enu+WKqOWIsOaMh+ekuuWZqOaXtuaYr+WQpuaaguWBnOaSreaUvlxuICAgICAqIEB0eXBlIGZhbHNlIHwgaG92ZXJcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlQYXVzZTogVGh5Q2Fyb3VzZWxQYXVzZSA9ICdob3Zlcic7XG5cbiAgICAvKipcbiAgICAgKiDop6blj5HliIfmjaLluKfkuYvliY3vvIzov5Tlm54gYHtmcm9tOiBudW1iZXIsIHRvOiBudW1iZXJ9YFxuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB0aHlCZWZvcmVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFRoeUNhcm91c2VsU3dpdGNoRGF0YT4oKTtcblxuICAgIC8qKlxuICAgICAqIOWIh+aNouW4p+S5i+WQjueahOWbnuiwg++8jOi/lOWbnuW9k+WJjeW4p+e0ouW8lVxuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB0aHlBZnRlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgcHJpdmF0ZSBpc0RyYWdnaW5nID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIGlzVHJhbnNpdGlvbmluZyA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBwb2ludGVyVmVjdG9yOiBUaHlEaXN0YW5jZVZlY3RvciA9IHsgeDogMCwgeTogMCB9O1xuXG4gICAgcHJpdmF0ZSBlbmdpbmU6IFRoeUNhcm91c2VsRW5naW5lO1xuXG4gICAgcHJpdmF0ZSBfdHJpZ2dlciQgPSBuZXcgU3ViamVjdDxudW1iZXIgfCBudWxsPigpO1xuXG4gICAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgd3JhcHBlckRvbVJlY3Q6IERPTVJlY3Q7XG5cbiAgICBhY3RpdmVJbmRleCA9IDA7XG5cbiAgICB3cmFwcGVyRWw6IEhUTUxFbGVtZW50O1xuXG4gICAgdHJhbnNpdGlvblRpbWVyOiBhbnkgPSBudWxsO1xuXG4gICAgcGxheVRpbWU6IG51bWJlciA9IDQwMDtcblxuICAgIGlzUGF1c2U6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByaXZhdGUgbW92ZVRvKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY2Fyb3VzZWxJdGVtcyAmJiB0aGlzLmNhcm91c2VsSXRlbXMubGVuZ3RoICYmICF0aGlzLmlzVHJhbnNpdGlvbmluZykge1xuICAgICAgICAgICAgdGhpcy5zZXRJbml0aWFsVmFsdWUoKTtcbiAgICAgICAgICAgIGNvbnN0IGxlbiA9IHRoaXMuY2Fyb3VzZWxJdGVtcy5sZW5ndGg7XG4gICAgICAgICAgICBjb25zdCBmcm9tID0gdGhpcy5hY3RpdmVJbmRleDtcbiAgICAgICAgICAgIGNvbnN0IHRvID0gKGluZGV4ICsgbGVuKSAlIGxlbjtcbiAgICAgICAgICAgIHRoaXMudGh5QmVmb3JlQ2hhbmdlLmVtaXQoeyBmcm9tLCB0byB9KTtcbiAgICAgICAgICAgIHRoaXMuaXNUcmFuc2l0aW9uaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuZW5naW5lPy5zd2l0Y2goaW5kZXgsIHRoaXMuYWN0aXZlSW5kZXgpLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWN0aXZlSW5kZXggPSB0bztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tYXJrQ29udGVudEFjdGl2ZSh0aGlzLmFjdGl2ZUluZGV4KTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsZU5leHRUcmFuc2l0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGh5QWZ0ZXJDaGFuZ2UuZW1pdCh0aGlzLmFjdGl2ZUluZGV4KTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc1RyYW5zaXRpb25pbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHN3aXRjaEVuZ2luZSgpOiB2b2lkIHtcbiAgICAgICAgc3dpdGNoICh0aGlzLnRoeUVmZmVjdCkge1xuICAgICAgICAgICAgY2FzZSAnc2xpZGUnOlxuICAgICAgICAgICAgICAgIHRoaXMuZW5naW5lID0gbmV3IFRoeUNhcm91c2VsU2xpZGVFbmdpbmUodGhpcywgdGhpcy5jZHIsIHRoaXMucmVuZGVyZXIsIHRoaXMucGxhdGZvcm0pO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnZmFkZSc6XG4gICAgICAgICAgICAgICAgdGhpcy5lbmdpbmUgPSBuZXcgVGh5Q2Fyb3VzZWxGYWRlRW5naW5lKHRoaXMsIHRoaXMuY2RyLCB0aGlzLnJlbmRlcmVyLCB0aGlzLnBsYXRmb3JtKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdGhpcy5lbmdpbmUgPSBuZXcgVGh5Q2Fyb3VzZWxOb29wRW5naW5lKHRoaXMsIHRoaXMuY2RyLCB0aGlzLnJlbmRlcmVyLCB0aGlzLnBsYXRmb3JtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgbWFya0NvbnRlbnRBY3RpdmUoaW5kZXg6IG51bWJlcikge1xuICAgICAgICB0aGlzLmFjdGl2ZUluZGV4ID0gaW5kZXg7XG4gICAgICAgIHRoaXMuY2Fyb3VzZWxJdGVtcy5mb3JFYWNoKChjYXJvdXNlbENvbnRlbnQ6IFRoeUNhcm91c2VsSXRlbURpcmVjdGl2ZSwgaTogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgICBjYXJvdXNlbENvbnRlbnQuaXNBY3RpdmUgPSBpbmRleCA9PT0gaTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEluaXRpYWxWYWx1ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZW5naW5lKSB7XG4gICAgICAgICAgICB0aGlzLmVuZ2luZS5pbml0aWFsaXplQ2Fyb3VzZWxDb250ZW50cyh0aGlzLmNhcm91c2VsSXRlbXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzY2hlZHVsZU5leHRUcmFuc2l0aW9uKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsZWFyU2NoZWR1bGVkVHJhbnNpdGlvbigpO1xuICAgICAgICBpZiAodGhpcy50aHlBdXRvUGxheSAmJiAhdGhpcy5pc1BhdXNlKSB7XG4gICAgICAgICAgICB0aGlzLnRyYW5zaXRpb25UaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubW92ZVRvKHRoaXMuYWN0aXZlSW5kZXggKyAxKTtcbiAgICAgICAgICAgIH0sIHRoaXMudGh5QXV0b1BsYXlJbnRlcnZhbCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNsZWFyU2NoZWR1bGVkVHJhbnNpdGlvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMudHJhbnNpdGlvblRpbWVyKSB7XG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy50cmFuc2l0aW9uVGltZXIpO1xuICAgICAgICAgICAgdGhpcy50cmFuc2l0aW9uVGltZXIgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25EcmFnKGV2ZW50OiBUb3VjaEV2ZW50IHwgTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuaXNEcmFnZ2luZyAmJiAhdGhpcy5pc1RyYW5zaXRpb25pbmcgJiYgdGhpcy50aHlUb3VjaGFibGUpIHtcbiAgICAgICAgICAgIGNvbnN0IG1vdXNlRG93blRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICAgICAgICAgIGxldCBtb3VzZVVwVGltZTogbnVtYmVyO1xuICAgICAgICAgICAgdGhpcy5jbGVhclNjaGVkdWxlZFRyYW5zaXRpb24oKTtcbiAgICAgICAgICAgIHRoaXMud3JhcHBlckRvbVJlY3QgPSB0aGlzLndyYXBwZXJFbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIHRoaXMuY2Fyb3VzZWxTZXJ2aWNlLnJlZ2lzdGVyRHJhZyhldmVudCkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIHBvaW50ZXJWZWN0b3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMud3JhcHBlckVsLCAnY3Vyc29yJywgJ2dyYWJiaW5nJyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucG9pbnRlclZlY3RvciA9IHBvaW50ZXJWZWN0b3I7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNEcmFnZ2luZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZW5naW5lPy5kcmFnZ2luZyh0aGlzLnBvaW50ZXJWZWN0b3IsIHRoaXMud3JhcHBlckRvbVJlY3QpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKCkgPT4ge30sXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc0RyYWdnaW5nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtb3VzZVVwVGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaG9sZERvd25UaW1lID0gbW91c2VVcFRpbWUgLSBtb3VzZURvd25UaW1lO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRmFzdCBlbm91Z2ggdG8gc3dpdGNoIHRvIHRoZSBuZXh0IGZyYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBvclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlIHBvaW50ZXJWZWN0b3IgaXMgbW9yZSB0aGFuIG9uZSB0aGlyZCBzd2l0Y2ggdG8gdGhlIG5leHQgZnJhbWVcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBNYXRoLmFicyh0aGlzLnBvaW50ZXJWZWN0b3IueCkgPiB0aGlzLndyYXBwZXJEb21SZWN0LndpZHRoIC8gMyB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hdGguYWJzKHRoaXMucG9pbnRlclZlY3Rvci54KSAvIGhvbGREb3duVGltZSA+PSAxXG4gICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVUbyh0aGlzLnBvaW50ZXJWZWN0b3IueCA+IDAgPyB0aGlzLmFjdGl2ZUluZGV4IC0gMSA6IHRoaXMuYWN0aXZlSW5kZXggKyAxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlVG8odGhpcy5hY3RpdmVJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0RyYWdnaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy53cmFwcGVyRWwsICdjdXJzb3InLCAnZ3JhYicpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbmRpY2F0b3JIYW5kbGVDbGljayhpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnRoeVRyaWdnZXIgPT09ICdjbGljaycpIHtcbiAgICAgICAgICAgIHRoaXMubW92ZVRvKGluZGV4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGluZGljYXRvckhhbmRsZVRyaWdnZXIoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy50aHlQYXVzZSA9PT0gJ2hvdmVyJykge1xuICAgICAgICAgICAgdGhpcy5pc1BhdXNlID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuY2xlYXJTY2hlZHVsZWRUcmFuc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudGh5VHJpZ2dlciA9PT0gJ2hvdmVyJykge1xuICAgICAgICAgICAgdGhpcy5fdHJpZ2dlciQubmV4dChpbmRleCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbmRpY2F0b3JIYW5kbGVMZWF2ZSgpIHtcbiAgICAgICAgaWYgKHRoaXMudGh5UGF1c2UgPT09ICdob3ZlcicpIHtcbiAgICAgICAgICAgIHRoaXMuaXNQYXVzZSA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5zY2hlZHVsZU5leHRUcmFuc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZXh0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdmVUbyh0aGlzLmFjdGl2ZUluZGV4ICsgMSk7XG4gICAgfVxuXG4gICAgcHJlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdmVUbyh0aGlzLmFjdGl2ZUluZGV4IC0gMSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMud3JhcHBlckVsID0gdGhpcy5jYXJvdXNlbFdyYXBwZXIhLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKVxuICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksIGRlYm91bmNlVGltZSgxMDApKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVuZ2luZT8uY29ycmVjdGlvbk9mZnNldCgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBjb25zdCB7IHRoeUVmZmVjdCwgdGh5VG91Y2hhYmxlIH0gPSBjaGFuZ2VzO1xuICAgICAgICBpZiAodGh5RWZmZWN0ICYmICF0aHlFZmZlY3QuaXNGaXJzdENoYW5nZSgpKSB7XG4gICAgICAgICAgICB0aGlzLnN3aXRjaEVuZ2luZSgpO1xuICAgICAgICAgICAgdGhpcy5tYXJrQ29udGVudEFjdGl2ZSgwKTtcbiAgICAgICAgICAgIHRoaXMuc2V0SW5pdGlhbFZhbHVlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGh5VG91Y2hhYmxlICYmICF0aHlUb3VjaGFibGUuaXNGaXJzdENoYW5nZSgpKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMud3JhcHBlckVsLCAnY3Vyc29yJywgdGh5VG91Y2hhYmxlLmN1cnJlbnRWYWx1ZSA/ICdncmFiJyA6ICdkZWZhdWx0Jyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMudGh5QXV0b1BsYXkgfHwgIXRoaXMudGh5QXV0b1BsYXlJbnRlcnZhbCkge1xuICAgICAgICAgICAgdGhpcy5jbGVhclNjaGVkdWxlZFRyYW5zaXRpb24oKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2NoZWR1bGVOZXh0VHJhbnNpdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNhcm91c2VsSXRlbXMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5tYXJrQ29udGVudEFjdGl2ZSgwKTtcbiAgICAgICAgICAgIHRoaXMuc2V0SW5pdGlhbFZhbHVlKCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnN3aXRjaEVuZ2luZSgpO1xuICAgICAgICB0aGlzLm1hcmtDb250ZW50QWN0aXZlKDApO1xuICAgICAgICB0aGlzLnNldEluaXRpYWxWYWx1ZSgpO1xuXG4gICAgICAgIGlmICghdGhpcy50aHlUb3VjaGFibGUpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy53cmFwcGVyRWwsICdjdXJzb3InLCAnZGVmYXVsdCcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLl90cmlnZ2VyJC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksIGRlYm91bmNlVGltZSh0aGlzLnBsYXlUaW1lKSkuc3Vic2NyaWJlKGluZGV4ID0+IHtcbiAgICAgICAgICAgIGlmIChpc051bWJlcihpbmRleCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVUbyhpbmRleCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmNsZWFyU2NoZWR1bGVkVHJhbnNpdGlvbigpO1xuICAgICAgICB0aGlzLl90cmlnZ2VyJC5uZXh0KG51bGwpO1xuICAgICAgICB0aGlzLl90cmlnZ2VyJC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRoeS1jYXJvdXNlbCB0aHktY2Fyb3VzZWwtaW5pdGlhbGl6ZWQgdGh5LWNhcm91c2VsLXBvaW50LWV2ZW50c1wiPlxuICA8ZGl2ICNjYXJvdXNlbFdyYXBwZXIgY2xhc3M9XCJ0aHktY2Fyb3VzZWwtd3JhcHBlclwiIChtb3VzZWRvd24pPVwib25EcmFnKCRldmVudClcIiAodG91Y2hzdGFydCk9XCJvbkRyYWcoJGV2ZW50KVwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIEBpZiAodGh5Q29udHJvbHMgJiYgY2Fyb3VzZWxJdGVtcy5sZW5ndGggPiAxKSB7XG4gICAgPGRpdiBjbGFzcz1cInRoeS1jYXJvdXNlbC1jb250cm9sLXByZS13cmFwcGVyXCIgKGNsaWNrKT1cInByZSgpXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGh5Q29udHJvbFByZXYgfHwgZGVmYXVsdENvbnRyb2xQcmV2XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInRoeS1jYXJvdXNlbC1jb250cm9sLW5leHQtd3JhcHBlclwiIChjbGljayk9XCJuZXh0KClcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0aHlDb250cm9sTmV4dCB8fCBkZWZhdWx0Q29udHJvbE5leHRcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgfVxuICBAaWYgKHRoeUluZGljYXRvcnMpIHtcbiAgICA8ZGl2IGNsYXNzPVwidGh5LWNhcm91c2VsLWluZGljYXRvcnNcIj5cbiAgICAgIEBmb3IgKGNvbnRlbnQgb2YgY2Fyb3VzZWxJdGVtczsgdHJhY2sgJGluZGV4OyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzPVwidGh5LWNhcm91c2VsLWluZGljYXRvclwiXG4gICAgICAgICAgKG1vdXNlZW50ZXIpPVwiaW5kaWNhdG9ySGFuZGxlVHJpZ2dlcihpKVwiXG4gICAgICAgICAgKG1vdXNlbGVhdmUpPVwiaW5kaWNhdG9ySGFuZGxlTGVhdmUoKVwiXG4gICAgICAgICAgKGNsaWNrKT1cImluZGljYXRvckhhbmRsZUNsaWNrKGkpXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0aHlJbmRpY2F0b3JSZW5kZXIgfHwgZGVmYXVsdEluZGljYXRvclJlbmRlclwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGkgPT09IGFjdGl2ZUluZGV4IH1cIj48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3NwYW4+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH1cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRJbmRpY2F0b3JSZW5kZXIgbGV0LWFjdGl2ZT5cbiAgPHRoeS1kb3QgdGh5Q29sb3I9XCIjZmZmXCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVcIj48L3RoeS1kb3Q+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRDb250cm9sUHJldj5cbiAgPGRpdiBjbGFzcz1cInRoeS1jYXJvdXNlbC1jb250cm9sIHRoeS1jYXJvdXNlbC1jb250cm9sLXByZVwiPlxuICAgIDx0aHktaWNvbiB0aHlJY29uTmFtZT1cImFuZ2xlLWxlZnQtYm9sZFwiPjwvdGh5LWljb24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNkZWZhdWx0Q29udHJvbE5leHQ+XG4gIDxkaXYgY2xhc3M9XCJ0aHktY2Fyb3VzZWwtY29udHJvbCB0aHktY2Fyb3VzZWwtY29udHJvbC1uZXh0XCI+XG4gICAgPHRoeS1pY29uIHRoeUljb25OYW1lPVwiYW5nbGUtcmlnaHQtYm9sZFwiPjwvdGh5LWljb24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
290
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Nhcm91c2VsL2Nhcm91c2VsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jYXJvdXNlbC9jYXJvdXNlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULFNBQVMsRUFDVCxXQUFXLEVBQ1gsaUJBQWlCLEVBSWpCLE1BQU0sRUFFTixlQUFlLEVBQ2YsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQVNyRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDaEcsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFbEU7OztHQUdHO0FB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QUUsTUFBTSxnSUFBRSxPQUFPOzsyRkFFbEMsV0FBVztrQkFadkIsU0FBUzsrQkFDSSxjQUFjLG1CQUVQLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksdUJBQ2hCLEtBQUssUUFDcEI7d0JBQ0YsS0FBSyxFQUFFLGNBQWM7cUJBQ3hCLGNBQ1csSUFBSSxXQUNQLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQzs4QkFZRCxhQUFhO3NCQUF2RCxlQUFlO3VCQUFDLHdCQUF3QjtnQkFLTyxlQUFlO3NCQUE5RCxTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFLRCxXQUFXO3NCQUF2RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQUtKLG1CQUFtQjtzQkFBekQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7Z0JBTTVCLFNBQVM7c0JBQWpCLEtBQUs7Z0JBS3VDLGFBQWE7c0JBQXpELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBS2xDLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFLdUMsV0FBVztzQkFBdkQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFLbEMsY0FBYztzQkFBdEIsS0FBSztnQkFLRyxjQUFjO3NCQUF0QixLQUFLO2dCQUt1QyxZQUFZO3NCQUF4RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQU1sQyxVQUFVO3NCQUFsQixLQUFLO2dCQU1HLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS2EsZUFBZTtzQkFBakMsTUFBTTtnQkFLWSxjQUFjO3NCQUFoQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdDaGlsZCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIE5nWm9uZSxcbiAgICBPbkRlc3Ryb3ksXG4gICAgbnVtYmVyQXR0cmlidXRlLFxuICAgIGluamVjdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BsYXRmb3JtJztcbmltcG9ydCB7IFRoeUNhcm91c2VsSXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vY2Fyb3VzZWwtaXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgICBUaHlDYXJvdXNlbEVuZ2luZSxcbiAgICBUaHlEaXN0YW5jZVZlY3RvcixcbiAgICBUaHlDYXJvdXNlbFN3aXRjaERhdGEsXG4gICAgVGh5Q2Fyb3VzZWxFZmZlY3QsXG4gICAgVGh5Q2Fyb3VzZWxUcmlnZ2VyLFxuICAgIFRoeUNhcm91c2VsUGF1c2Vcbn0gZnJvbSAnLi90eXBpbmdzJztcbmltcG9ydCB7IFRoeUNhcm91c2VsU2xpZGVFbmdpbmUsIFRoeUNhcm91c2VsTm9vcEVuZ2luZSwgVGh5Q2Fyb3VzZWxGYWRlRW5naW5lIH0gZnJvbSAnLi9lbmdpbmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRoeUNhcm91c2VsU2VydmljZSB9IGZyb20gJy4vY2Fyb3VzZWwuc2VydmljZSc7XG5pbXBvcnQgeyBUaHlJY29uIH0gZnJvbSAnbmd4LXRldGh5cy9pY29uJztcbmltcG9ydCB7IFRoeURvdCB9IGZyb20gJ25neC10ZXRoeXMvZG90JztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBpc051bWJlciB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5cbi8qKlxuICog6LWw6ams54Gv57uE5Lu2XG4gKiBAbmFtZSB0aHktY2Fyb3VzZWxcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktY2Fyb3VzZWwnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jYXJvdXNlbC5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LWNhcm91c2VsJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTmdUZW1wbGF0ZU91dGxldCwgVGh5RG90LCBUaHlJY29uXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlDYXJvdXNlbCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQWZ0ZXJDb250ZW50SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAgIHByb3RlY3RlZCByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuICAgIHByaXZhdGUgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIG5nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2Fyb3VzZWxTZXJ2aWNlID0gaW5qZWN0KFRoeUNhcm91c2VsU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBwbGF0Zm9ybSA9IGluamVjdChQbGF0Zm9ybSk7XG5cbiAgICAvKipcbiAgICAgKiBAcHJpdmF0ZVxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oVGh5Q2Fyb3VzZWxJdGVtRGlyZWN0aXZlKSBjYXJvdXNlbEl0ZW1zITogUXVlcnlMaXN0PFRoeUNhcm91c2VsSXRlbURpcmVjdGl2ZT47XG5cbiAgICAvKipcbiAgICAgKiBAcHJpdmF0ZVxuICAgICAqL1xuICAgIEBWaWV3Q2hpbGQoJ2Nhcm91c2VsV3JhcHBlcicsIHsgc3RhdGljOiB0cnVlIH0pIGNhcm91c2VsV3JhcHBlcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKboh6rliqjliIfmjaLvvIzpu5jorqQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlBdXRvUGxheTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICog6Ieq5Yqo5YiH5o2i5pe26Ze06Ze06ZqUKOavq+enkilcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSB0aHlBdXRvUGxheUludGVydmFsOiBudW1iZXIgPSAzMDAwO1xuXG4gICAgLyoqXG4gICAgICog5YiH5o2i5Yqo55S75qC35byPXG4gICAgICogQHR5cGUgc2xpZGUgfCBmYWRlIHwgbm9vcFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUVmZmVjdDogVGh5Q2Fyb3VzZWxFZmZlY3QgPSAnc2xpZGUnO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5pi+56S65YiH5o2i5oyH56S65ZmoXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSkgdGh5SW5kaWNhdG9ycyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiDmjIfnpLrlmaggSXRlbSDnmoTmuLLmn5PmqKHmnb9cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlJbmRpY2F0b3JSZW5kZXI/OiBUZW1wbGF0ZVJlZjx7ICRpbXBsaWNpdDogYm9vbGVhbiB9PjtcblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuaYvuekuuW3puWPs+WIh+aNolxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeUNvbnRyb2xzID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIOS4iuS4gOS4quaOp+WItuWZqOa4suafk+aooeadv1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUNvbnRyb2xQcmV2PzogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIC8qKlxuICAgICAqIOS4i+S4gOS4quaOp+WItuWZqOa4suafk+aooeadv1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeUNvbnRyb2xOZXh0PzogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuaUr+aMgeaJi+WKv+a7keWKqFxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeVRvdWNoYWJsZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiDmjIfnpLrngrnliIfmjaLnmoTop6blj5HmnaHku7ZcbiAgICAgKiBAdHlwZSBjbGljayB8IGhvdmVyXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5VHJpZ2dlcjogVGh5Q2Fyb3VzZWxUcmlnZ2VyID0gJ2NsaWNrJztcblxuICAgIC8qKlxuICAgICAqIOm8oOagh+enu+WKqOWIsOaMh+ekuuWZqOaXtuaYr+WQpuaaguWBnOaSreaUvlxuICAgICAqIEB0eXBlIGZhbHNlIHwgaG92ZXJcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlQYXVzZTogVGh5Q2Fyb3VzZWxQYXVzZSA9ICdob3Zlcic7XG5cbiAgICAvKipcbiAgICAgKiDop6blj5HliIfmjaLluKfkuYvliY3vvIzov5Tlm54gYHtmcm9tOiBudW1iZXIsIHRvOiBudW1iZXJ9YFxuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB0aHlCZWZvcmVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFRoeUNhcm91c2VsU3dpdGNoRGF0YT4oKTtcblxuICAgIC8qKlxuICAgICAqIOWIh+aNouW4p+S5i+WQjueahOWbnuiwg++8jOi/lOWbnuW9k+WJjeW4p+e0ouW8lVxuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB0aHlBZnRlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgcHJpdmF0ZSBpc0RyYWdnaW5nID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIGlzVHJhbnNpdGlvbmluZyA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBwb2ludGVyVmVjdG9yOiBUaHlEaXN0YW5jZVZlY3RvciA9IHsgeDogMCwgeTogMCB9O1xuXG4gICAgcHJpdmF0ZSBlbmdpbmU6IFRoeUNhcm91c2VsRW5naW5lO1xuXG4gICAgcHJpdmF0ZSBfdHJpZ2dlciQgPSBuZXcgU3ViamVjdDxudW1iZXIgfCBudWxsPigpO1xuXG4gICAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgd3JhcHBlckRvbVJlY3Q6IERPTVJlY3Q7XG5cbiAgICBhY3RpdmVJbmRleCA9IDA7XG5cbiAgICB3cmFwcGVyRWw6IEhUTUxFbGVtZW50O1xuXG4gICAgdHJhbnNpdGlvblRpbWVyOiBhbnkgPSBudWxsO1xuXG4gICAgcGxheVRpbWU6IG51bWJlciA9IDQwMDtcblxuICAgIGlzUGF1c2U6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByaXZhdGUgbW92ZVRvKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY2Fyb3VzZWxJdGVtcyAmJiB0aGlzLmNhcm91c2VsSXRlbXMubGVuZ3RoICYmICF0aGlzLmlzVHJhbnNpdGlvbmluZykge1xuICAgICAgICAgICAgdGhpcy5zZXRJbml0aWFsVmFsdWUoKTtcbiAgICAgICAgICAgIGNvbnN0IGxlbiA9IHRoaXMuY2Fyb3VzZWxJdGVtcy5sZW5ndGg7XG4gICAgICAgICAgICBjb25zdCBmcm9tID0gdGhpcy5hY3RpdmVJbmRleDtcbiAgICAgICAgICAgIGNvbnN0IHRvID0gKGluZGV4ICsgbGVuKSAlIGxlbjtcbiAgICAgICAgICAgIHRoaXMudGh5QmVmb3JlQ2hhbmdlLmVtaXQoeyBmcm9tLCB0byB9KTtcbiAgICAgICAgICAgIHRoaXMuaXNUcmFuc2l0aW9uaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuZW5naW5lPy5zd2l0Y2goaW5kZXgsIHRoaXMuYWN0aXZlSW5kZXgpLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWN0aXZlSW5kZXggPSB0bztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tYXJrQ29udGVudEFjdGl2ZSh0aGlzLmFjdGl2ZUluZGV4KTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsZU5leHRUcmFuc2l0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGh5QWZ0ZXJDaGFuZ2UuZW1pdCh0aGlzLmFjdGl2ZUluZGV4KTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc1RyYW5zaXRpb25pbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHN3aXRjaEVuZ2luZSgpOiB2b2lkIHtcbiAgICAgICAgc3dpdGNoICh0aGlzLnRoeUVmZmVjdCkge1xuICAgICAgICAgICAgY2FzZSAnc2xpZGUnOlxuICAgICAgICAgICAgICAgIHRoaXMuZW5naW5lID0gbmV3IFRoeUNhcm91c2VsU2xpZGVFbmdpbmUodGhpcywgdGhpcy5jZHIsIHRoaXMucmVuZGVyZXIsIHRoaXMucGxhdGZvcm0pO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnZmFkZSc6XG4gICAgICAgICAgICAgICAgdGhpcy5lbmdpbmUgPSBuZXcgVGh5Q2Fyb3VzZWxGYWRlRW5naW5lKHRoaXMsIHRoaXMuY2RyLCB0aGlzLnJlbmRlcmVyLCB0aGlzLnBsYXRmb3JtKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdGhpcy5lbmdpbmUgPSBuZXcgVGh5Q2Fyb3VzZWxOb29wRW5naW5lKHRoaXMsIHRoaXMuY2RyLCB0aGlzLnJlbmRlcmVyLCB0aGlzLnBsYXRmb3JtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgbWFya0NvbnRlbnRBY3RpdmUoaW5kZXg6IG51bWJlcikge1xuICAgICAgICB0aGlzLmFjdGl2ZUluZGV4ID0gaW5kZXg7XG4gICAgICAgIHRoaXMuY2Fyb3VzZWxJdGVtcy5mb3JFYWNoKChjYXJvdXNlbENvbnRlbnQ6IFRoeUNhcm91c2VsSXRlbURpcmVjdGl2ZSwgaTogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgICBjYXJvdXNlbENvbnRlbnQuaXNBY3RpdmUgPSBpbmRleCA9PT0gaTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEluaXRpYWxWYWx1ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZW5naW5lKSB7XG4gICAgICAgICAgICB0aGlzLmVuZ2luZS5pbml0aWFsaXplQ2Fyb3VzZWxDb250ZW50cyh0aGlzLmNhcm91c2VsSXRlbXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzY2hlZHVsZU5leHRUcmFuc2l0aW9uKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsZWFyU2NoZWR1bGVkVHJhbnNpdGlvbigpO1xuICAgICAgICBpZiAodGhpcy50aHlBdXRvUGxheSAmJiAhdGhpcy5pc1BhdXNlKSB7XG4gICAgICAgICAgICB0aGlzLnRyYW5zaXRpb25UaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubW92ZVRvKHRoaXMuYWN0aXZlSW5kZXggKyAxKTtcbiAgICAgICAgICAgIH0sIHRoaXMudGh5QXV0b1BsYXlJbnRlcnZhbCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNsZWFyU2NoZWR1bGVkVHJhbnNpdGlvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMudHJhbnNpdGlvblRpbWVyKSB7XG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy50cmFuc2l0aW9uVGltZXIpO1xuICAgICAgICAgICAgdGhpcy50cmFuc2l0aW9uVGltZXIgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25EcmFnKGV2ZW50OiBUb3VjaEV2ZW50IHwgTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuaXNEcmFnZ2luZyAmJiAhdGhpcy5pc1RyYW5zaXRpb25pbmcgJiYgdGhpcy50aHlUb3VjaGFibGUpIHtcbiAgICAgICAgICAgIGNvbnN0IG1vdXNlRG93blRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICAgICAgICAgIGxldCBtb3VzZVVwVGltZTogbnVtYmVyO1xuICAgICAgICAgICAgdGhpcy5jbGVhclNjaGVkdWxlZFRyYW5zaXRpb24oKTtcbiAgICAgICAgICAgIHRoaXMud3JhcHBlckRvbVJlY3QgPSB0aGlzLndyYXBwZXJFbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIHRoaXMuY2Fyb3VzZWxTZXJ2aWNlLnJlZ2lzdGVyRHJhZyhldmVudCkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIHBvaW50ZXJWZWN0b3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMud3JhcHBlckVsLCAnY3Vyc29yJywgJ2dyYWJiaW5nJyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucG9pbnRlclZlY3RvciA9IHBvaW50ZXJWZWN0b3I7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNEcmFnZ2luZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZW5naW5lPy5kcmFnZ2luZyh0aGlzLnBvaW50ZXJWZWN0b3IsIHRoaXMud3JhcHBlckRvbVJlY3QpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKCkgPT4ge30sXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc0RyYWdnaW5nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtb3VzZVVwVGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaG9sZERvd25UaW1lID0gbW91c2VVcFRpbWUgLSBtb3VzZURvd25UaW1lO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRmFzdCBlbm91Z2ggdG8gc3dpdGNoIHRvIHRoZSBuZXh0IGZyYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBvclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlIHBvaW50ZXJWZWN0b3IgaXMgbW9yZSB0aGFuIG9uZSB0aGlyZCBzd2l0Y2ggdG8gdGhlIG5leHQgZnJhbWVcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBNYXRoLmFicyh0aGlzLnBvaW50ZXJWZWN0b3IueCkgPiB0aGlzLndyYXBwZXJEb21SZWN0LndpZHRoIC8gMyB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hdGguYWJzKHRoaXMucG9pbnRlclZlY3Rvci54KSAvIGhvbGREb3duVGltZSA+PSAxXG4gICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVUbyh0aGlzLnBvaW50ZXJWZWN0b3IueCA+IDAgPyB0aGlzLmFjdGl2ZUluZGV4IC0gMSA6IHRoaXMuYWN0aXZlSW5kZXggKyAxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlVG8odGhpcy5hY3RpdmVJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0RyYWdnaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy53cmFwcGVyRWwsICdjdXJzb3InLCAnZ3JhYicpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbmRpY2F0b3JIYW5kbGVDbGljayhpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnRoeVRyaWdnZXIgPT09ICdjbGljaycpIHtcbiAgICAgICAgICAgIHRoaXMubW92ZVRvKGluZGV4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGluZGljYXRvckhhbmRsZVRyaWdnZXIoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy50aHlQYXVzZSA9PT0gJ2hvdmVyJykge1xuICAgICAgICAgICAgdGhpcy5pc1BhdXNlID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuY2xlYXJTY2hlZHVsZWRUcmFuc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudGh5VHJpZ2dlciA9PT0gJ2hvdmVyJykge1xuICAgICAgICAgICAgdGhpcy5fdHJpZ2dlciQubmV4dChpbmRleCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbmRpY2F0b3JIYW5kbGVMZWF2ZSgpIHtcbiAgICAgICAgaWYgKHRoaXMudGh5UGF1c2UgPT09ICdob3ZlcicpIHtcbiAgICAgICAgICAgIHRoaXMuaXNQYXVzZSA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5zY2hlZHVsZU5leHRUcmFuc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZXh0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdmVUbyh0aGlzLmFjdGl2ZUluZGV4ICsgMSk7XG4gICAgfVxuXG4gICAgcHJlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdmVUbyh0aGlzLmFjdGl2ZUluZGV4IC0gMSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMud3JhcHBlckVsID0gdGhpcy5jYXJvdXNlbFdyYXBwZXIhLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKVxuICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksIGRlYm91bmNlVGltZSgxMDApKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVuZ2luZT8uY29ycmVjdGlvbk9mZnNldCgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBjb25zdCB7IHRoeUVmZmVjdCwgdGh5VG91Y2hhYmxlIH0gPSBjaGFuZ2VzO1xuICAgICAgICBpZiAodGh5RWZmZWN0ICYmICF0aHlFZmZlY3QuaXNGaXJzdENoYW5nZSgpKSB7XG4gICAgICAgICAgICB0aGlzLnN3aXRjaEVuZ2luZSgpO1xuICAgICAgICAgICAgdGhpcy5tYXJrQ29udGVudEFjdGl2ZSgwKTtcbiAgICAgICAgICAgIHRoaXMuc2V0SW5pdGlhbFZhbHVlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGh5VG91Y2hhYmxlICYmICF0aHlUb3VjaGFibGUuaXNGaXJzdENoYW5nZSgpKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMud3JhcHBlckVsLCAnY3Vyc29yJywgdGh5VG91Y2hhYmxlLmN1cnJlbnRWYWx1ZSA/ICdncmFiJyA6ICdkZWZhdWx0Jyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMudGh5QXV0b1BsYXkgfHwgIXRoaXMudGh5QXV0b1BsYXlJbnRlcnZhbCkge1xuICAgICAgICAgICAgdGhpcy5jbGVhclNjaGVkdWxlZFRyYW5zaXRpb24oKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2NoZWR1bGVOZXh0VHJhbnNpdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNhcm91c2VsSXRlbXMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5tYXJrQ29udGVudEFjdGl2ZSgwKTtcbiAgICAgICAgICAgIHRoaXMuc2V0SW5pdGlhbFZhbHVlKCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnN3aXRjaEVuZ2luZSgpO1xuICAgICAgICB0aGlzLm1hcmtDb250ZW50QWN0aXZlKDApO1xuICAgICAgICB0aGlzLnNldEluaXRpYWxWYWx1ZSgpO1xuXG4gICAgICAgIGlmICghdGhpcy50aHlUb3VjaGFibGUpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy53cmFwcGVyRWwsICdjdXJzb3InLCAnZGVmYXVsdCcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLl90cmlnZ2VyJC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksIGRlYm91bmNlVGltZSh0aGlzLnBsYXlUaW1lKSkuc3Vic2NyaWJlKGluZGV4ID0+IHtcbiAgICAgICAgICAgIGlmIChpc051bWJlcihpbmRleCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVUbyhpbmRleCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmNsZWFyU2NoZWR1bGVkVHJhbnNpdGlvbigpO1xuICAgICAgICB0aGlzLl90cmlnZ2VyJC5uZXh0KG51bGwpO1xuICAgICAgICB0aGlzLl90cmlnZ2VyJC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRoeS1jYXJvdXNlbCB0aHktY2Fyb3VzZWwtaW5pdGlhbGl6ZWQgdGh5LWNhcm91c2VsLXBvaW50LWV2ZW50c1wiPlxuICA8ZGl2ICNjYXJvdXNlbFdyYXBwZXIgY2xhc3M9XCJ0aHktY2Fyb3VzZWwtd3JhcHBlclwiIChtb3VzZWRvd24pPVwib25EcmFnKCRldmVudClcIiAodG91Y2hzdGFydCk9XCJvbkRyYWcoJGV2ZW50KVwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIEBpZiAodGh5Q29udHJvbHMgJiYgY2Fyb3VzZWxJdGVtcy5sZW5ndGggPiAxKSB7XG4gICAgPGRpdiBjbGFzcz1cInRoeS1jYXJvdXNlbC1jb250cm9sLXByZS13cmFwcGVyXCIgKGNsaWNrKT1cInByZSgpXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGh5Q29udHJvbFByZXYgfHwgZGVmYXVsdENvbnRyb2xQcmV2XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInRoeS1jYXJvdXNlbC1jb250cm9sLW5leHQtd3JhcHBlclwiIChjbGljayk9XCJuZXh0KClcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0aHlDb250cm9sTmV4dCB8fCBkZWZhdWx0Q29udHJvbE5leHRcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgfVxuICBAaWYgKHRoeUluZGljYXRvcnMpIHtcbiAgICA8ZGl2IGNsYXNzPVwidGh5LWNhcm91c2VsLWluZGljYXRvcnNcIj5cbiAgICAgIEBmb3IgKGNvbnRlbnQgb2YgY2Fyb3VzZWxJdGVtczsgdHJhY2sgJGluZGV4OyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzPVwidGh5LWNhcm91c2VsLWluZGljYXRvclwiXG4gICAgICAgICAgKG1vdXNlZW50ZXIpPVwiaW5kaWNhdG9ySGFuZGxlVHJpZ2dlcihpKVwiXG4gICAgICAgICAgKG1vdXNlbGVhdmUpPVwiaW5kaWNhdG9ySGFuZGxlTGVhdmUoKVwiXG4gICAgICAgICAgKGNsaWNrKT1cImluZGljYXRvckhhbmRsZUNsaWNrKGkpXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0aHlJbmRpY2F0b3JSZW5kZXIgfHwgZGVmYXVsdEluZGljYXRvclJlbmRlclwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGkgPT09IGFjdGl2ZUluZGV4IH1cIj48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3NwYW4+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH1cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRJbmRpY2F0b3JSZW5kZXIgbGV0LWFjdGl2ZT5cbiAgPHRoeS1kb3QgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVcIj48L3RoeS1kb3Q+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRDb250cm9sUHJldj5cbiAgPGRpdiBjbGFzcz1cInRoeS1jYXJvdXNlbC1jb250cm9sIHRoeS1jYXJvdXNlbC1jb250cm9sLXByZVwiPlxuICAgIDx0aHktaWNvbiB0aHlJY29uTmFtZT1cImFuZ2xlLWxlZnQtYm9sZFwiPjwvdGh5LWljb24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNkZWZhdWx0Q29udHJvbE5leHQ+XG4gIDxkaXYgY2xhc3M9XCJ0aHktY2Fyb3VzZWwtY29udHJvbCB0aHktY2Fyb3VzZWwtY29udHJvbC1uZXh0XCI+XG4gICAgPHRoeS1pY29uIHRoeUljb25OYW1lPVwiYW5nbGUtcmlnaHQtYm9sZFwiPjwvdGh5LWljb24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -5,6 +5,7 @@ export * from './event-dispatchers/index';
5
5
  export * from './request-animation';
6
6
  export * from './scroll';
7
7
  export * from './animation';
8
+ export * from './theme';
8
9
  export * from './overlay/index';
9
10
  export * from './update-host-class.service';
10
11
  export * from './translate';
@@ -12,4 +13,4 @@ export * from './store';
12
13
  export * from './color';
13
14
  export * from './spacing';
14
15
  export * from './debounce-time';
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iZWhhdmlvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY3JvbGwtdG8uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NsaWNrLXBvc2l0aW9uZXInO1xuZXhwb3J0ICogZnJvbSAnLi9ldmVudC1kaXNwYXRjaGVycy9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QtYW5pbWF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vc2Nyb2xsJztcbmV4cG9ydCAqIGZyb20gJy4vYW5pbWF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vb3ZlcmxheS9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL3VwZGF0ZS1ob3N0LWNsYXNzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi90cmFuc2xhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbG9yJztcbmV4cG9ydCAqIGZyb20gJy4vc3BhY2luZyc7XG5leHBvcnQgKiBmcm9tICcuL2RlYm91bmNlLXRpbWUnO1xuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iZWhhdmlvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY3JvbGwtdG8uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NsaWNrLXBvc2l0aW9uZXInO1xuZXhwb3J0ICogZnJvbSAnLi9ldmVudC1kaXNwYXRjaGVycy9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QtYW5pbWF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vc2Nyb2xsJztcbmV4cG9ydCAqIGZyb20gJy4vYW5pbWF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vdGhlbWUnO1xuZXhwb3J0ICogZnJvbSAnLi9vdmVybGF5L2luZGV4JztcbmV4cG9ydCAqIGZyb20gJy4vdXBkYXRlLWhvc3QtY2xhc3Muc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3RyYW5zbGF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL3N0b3JlJztcbmV4cG9ydCAqIGZyb20gJy4vY29sb3InO1xuZXhwb3J0ICogZnJvbSAnLi9zcGFjaW5nJztcbmV4cG9ydCAqIGZyb20gJy4vZGVib3VuY2UtdGltZSc7XG4iXX0=
@@ -67,4 +67,4 @@ export class ThyAbstractOverlayConfig {
67
67
  this.canPush = true;
68
68
  }
69
69
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3Qtb3ZlcmxheS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29yZS9vdmVybGF5L2Fic3RyYWN0LW92ZXJsYXkuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlCQSxNQUFNLE9BQU8sd0JBQXdCO0lBQXJDO1FBYUk7OztXQUdHO1FBQ0gsZUFBVSxHQUF1QixFQUFFLENBQUM7UUFLcEM7OztXQUdHO1FBQ0gsZ0JBQVcsR0FBSSxJQUFJLENBQUM7UUFFcEI7OztXQUdHO1FBQ0gsa0JBQWEsR0FBdUIsRUFBRSxDQUFDO1FBRXZDOzs7V0FHRztRQUNILHFCQUFnQixHQUFJLElBQUksQ0FBQztRQUV6Qix3RkFBd0Y7UUFDeEYsaUJBQVksR0FBSSxLQUFLLENBQUM7UUFFdEI7Ozs7V0FJRztRQUNILFVBQUssR0FBSSxFQUFFLENBQUM7UUFFWjs7OztXQUlHO1FBQ0gsV0FBTSxHQUFJLEVBQUUsQ0FBQztRQTJCYjs7O1dBR0c7UUFDSCxpQkFBWSxHQUFrQixJQUFJLENBQUM7UUFLbkMsb0RBQW9EO1FBQ3BELG9CQUFlLEdBQW1CLElBQUksQ0FBQztRQUV2QyxrREFBa0Q7UUFDbEQsY0FBUyxHQUFtQixJQUFJLENBQUM7UUFFakMsNEVBQTRFO1FBQzVFLGNBQVMsR0FBSSxJQUFJLENBQUM7UUFFbEI7OztXQUdHO1FBQ0gsaUJBQVksR0FBSSxJQUFJLENBQUM7UUFFckI7O1dBRUc7UUFDSCx3QkFBbUIsR0FBa0IsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFFN0Q7OztXQUdHO1FBQ0gsc0JBQWlCLEdBQUksSUFBSSxDQUFDO1FBTzFCOzs7O1dBSUc7UUFDSCxZQUFPLEdBQUksSUFBSSxDQUFDO0lBQ3BCLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcbmltcG9ydCB7IFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBUaHlBYnN0cmFjdE92ZXJsYXlQb3NpdGlvbiB7XG4gICAgLyoqIE92ZXJyaWRlIGZvciB0aGUgb3ZlcmxheSdzIHRvcCBwb3NpdGlvbi4gKi9cbiAgICB0b3A/OiBzdHJpbmc7XG5cbiAgICAvKiogT3ZlcnJpZGUgZm9yIHRoZSBvdmVybGF5J3MgYm90dG9tIHBvc2l0aW9uLiAqL1xuICAgIGJvdHRvbT86IHN0cmluZztcblxuICAgIC8qKiBPdmVycmlkZSBmb3IgdGhlIG92ZXJsYXkncyBsZWZ0IHBvc2l0aW9uLiAqL1xuICAgIGxlZnQ/OiBzdHJpbmc7XG5cbiAgICAvKiogT3ZlcnJpZGUgZm9yIHRoZSBvdmVybGF5J3MgcmlnaHQgcG9zaXRpb24uICovXG4gICAgcmlnaHQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBUaHlBYnN0cmFjdE92ZXJsYXlDb25maWc8VERhdGEgPSB1bmtub3duPiB7XG4gICAgLyoqXG4gICAgICog5b2T5YmN55qE57uE5Lu255qEIHZpZXdDb250YWluZXJSZWbvvIzmjIflrprlkI7lvLnlh7rnmoTnu4Tku7bnmoTniLbms6jlhaXlmajkuLrlvZPliY3nu4Tku7bnmoTms6jlhaXlmahcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgV2hlcmUgdGhlIGF0dGFjaGVkIGNvbXBvbmVudCBzaG91bGQgbGl2ZSBpbiBBbmd1bGFyJ3MgKmxvZ2ljYWwqIGNvbXBvbmVudCB0cmVlLlRoaXMgYWZmZWN0cyB3aGF0IGlzIGF2YWlsYWJsZSBmb3IgaW5qZWN0aW9uIGFuZCB0aGUgY2hhbmdlIGRldGVjdGlvbiBvcmRlciBmb3IgdGhlIGNvbXBvbmVudCBpbnN0YW50aWF0ZWQgaW5zaWRlIG9mIHRoZSBvdmVybGF5LiBUaGlzIGRvZXMgbm90IGFmZmVjdCB3aGVyZSB0aGUgb3ZlcmxheSBjb250ZW50IHdpbGwgYmUgcmVuZGVyZWQuXG4gICAgICovXG4gICAgdmlld0NvbnRhaW5lclJlZj86IFZpZXdDb250YWluZXJSZWY7XG5cbiAgICAvKipcbiAgICAgKiDlvLnlh7rmoYbnmoTllK/kuIDmoIfor4ZcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgSUQgZm9yIHRoZSBvdmVybGF5LiBJZiBvbWl0dGVkLCBhIHVuaXF1ZSBvbmUgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gICAgICovXG4gICAgaWQ/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBvdmVybGF5IHBhbmVsIOexu+WQjVxuICAgICAqIEBkZXNjcmlwdGlvbi5lbi11cyBDdXN0b20gY2xhc3MgZm9yIHRoZSBvdmVybGF5IHBhbmUuXG4gICAgICovXG4gICAgcGFuZWxDbGFzcz86IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XG5cbiAgICAvKiogQ3VzdG9tIGNsYXNzIGZvciB0aGUgb3ZlcmxheSBjb21wb25lbnQncyBob3N0IGVsZW1lbnQuICovXG4gICAgaG9zdENsYXNzPzogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKbmnInluZXluINcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgV2hldGhlciB0aGUgb3ZlcmxheSBoYXMgYSBiYWNrZHJvcC5cbiAgICAgKi9cbiAgICBoYXNCYWNrZHJvcD8gPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog6Ieq5a6a5LmJ5bmV5biD55qE5qC35byPXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIEN1c3RvbSBjbGFzcyBmb3IgdGhlIGJhY2tkcm9wLlxuICAgICAqL1xuICAgIGJhY2tkcm9wQ2xhc3M/OiBzdHJpbmcgfCBzdHJpbmdbXSA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIOeCueWHu+W5leW4g+aIluiAheaMiUVTQ+mUruaYr+WQpuiHquWKqOWFs+mXreW8ueWHuuahhu+8jGhhc0JhY2tkcm9wPXRydWUg5pe26K+l5Y+C5pWw6LW35L2c55SoXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIFdoZXRoZXIgdGhlIHVzZXIgY2FuIHVzZSBlc2NhcGUgb3IgY2xpY2tpbmcgb24gdGhlIGJhY2tkcm9wIHRvIGNsb3NlIHRoZSBvdmVybGF5LlxuICAgICAqL1xuICAgIGJhY2tkcm9wQ2xvc2FibGU/ID0gdHJ1ZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSB1c2VyIGNhbiB1c2UgZXNjYXBlIG9yIGNsaWNraW5nIG9uIHRoZSBiYWNrZHJvcCB0byBjbG9zZSB0aGUgb3ZlcmxheS4gKi9cbiAgICBkaXNhYmxlQ2xvc2U/ID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiDoh6rlrprkuYnlvLnlh7rmoYbnmoTlrr3luqZcbiAgICAgKiBAZGVmYXVsdCA2NjBweFxuICAgICAqIEBkZXNjcmlwdGlvbi5lbi11cyBXaWR0aCBvZiB0aGUgb3ZlcmxheS5cbiAgICAgKi9cbiAgICB3aWR0aD8gPSAnJztcblxuICAgIC8qKlxuICAgICAqIOiHquWumuS5ieW8ueWHuuahhueahOmrmOW6plxuICAgICAqIEBkZWZhdWx0IDg1dmhcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgSGVpZ2h0IG9mIHRoZSBvdmVybGF5LlxuICAgICAqL1xuICAgIGhlaWdodD8gPSAnJztcblxuICAgIC8qKlxuICAgICAqIOW8ueWHuuahhuacgOWwj+WuveW6plxuICAgICAqIEBkZXNjcmlwdGlvbi5lbi11cyBNaW4td2lkdGggb2YgdGhlIG92ZXJsYXkuIElmIGEgbnVtYmVyIGlzIHByb3ZpZGVkLCBwaXhlbCB1bml0cyBhcmUgYXNzdW1lZC5cbiAgICAgKi9cbiAgICBtaW5XaWR0aD86IG51bWJlciB8IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIOW8ueWHuuahhuacgOWwj+mrmOW6plxuICAgICAqIEBkZXNjcmlwdGlvbi5lbi11cyBNaW4taGVpZ2h0IG9mIHRoZSBvdmVybGF5LiBJZiBhIG51bWJlciBpcyBwcm92aWRlZCwgcGl4ZWwgdW5pdHMgYXJlIGFzc3VtZWQuXG4gICAgICovXG4gICAgbWluSGVpZ2h0PzogbnVtYmVyIHwgc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog5by55Ye65qGG5pyA5aSn5a695bqmXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIE1heC13aWR0aCBvZiB0aGUgb3ZlcmxheS4gSWYgYSBudW1iZXIgaXMgcHJvdmlkZWQsIHBpeGVsIHVuaXRzIGFyZSBhc3N1bWVkLiBEZWZhdWx0cyB0byA4MHZ3XG4gICAgICovXG4gICAgbWF4V2lkdGg/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDlvLnlh7rmoYbmnIDlpKfpq5jluqZcbiAgICAgKiBAZGVmYXVsdCA4NXZoXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIE1heC1oZWlnaHQgb2YgdGhlIG92ZXJsYXkuIElmIGEgbnVtYmVyIGlzIHByb3ZpZGVkLCBwaXhlbCB1bml0cyBhcmUgYXNzdW1lZC5cbiAgICAgKi9cbiAgICBtYXhIZWlnaHQ/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDkvKDlhaXnmoTliJ3lp4vljJbnirbmgIHvvIzlvLnlh7rnu4Tku7bnmoTlj5jph4/kvJroh6rliqjotYvlgLzvvIzlnKggbmdPbkluaXQg55Sf5ZG95ZGo5pyf6ZKp5a2Q5Y+v5Lul6I635Y+W5Yiw77yM5p6E6YCg5Ye95pWw6I635Y+W5LiN5YiwXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIERhdGEgYmVpbmcgaW5qZWN0ZWQgaW50byB0aGUgY2hpbGQgY29tcG9uZW50LlxuICAgICAqL1xuICAgIGluaXRpYWxTdGF0ZT86IFREYXRhIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKiogTGF5b3V0IGRpcmVjdGlvbiBmb3IgdGhlIG92ZXJsYXkncyBjb250ZW50LiAqL1xuICAgIGRpcmVjdGlvbj86IERpcmVjdGlvbjtcblxuICAgIC8qKiBJRCBvZiB0aGUgZWxlbWVudCB0aGF0IGRlc2NyaWJlcyB0aGUgb3ZlcmxheS4gKi9cbiAgICBhcmlhRGVzY3JpYmVkQnk/OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKiBBcmlhIGxhYmVsIHRvIGFzc2lnbiB0byB0aGUgb3ZlcmxheSBlbGVtZW50ICovXG4gICAgYXJpYUxhYmVsPzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKiogV2hldGhlciB0aGUgb3ZlcmxheSBzaG91bGQgZm9jdXMgdGhlIGZpcnN0IGZvY3VzYWJsZSBlbGVtZW50IG9uIG9wZW4uICovXG4gICAgYXV0b0ZvY3VzPyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBvdmVybGF5IHNob3VsZCByZXN0b3JlIGZvY3VzIHRvIHRoZVxuICAgICAqIHByZXZpb3VzbHktZm9jdXNlZCBlbGVtZW50LCBhZnRlciBpdCdzIGNsb3NlZC5cbiAgICAgKi9cbiAgICByZXN0b3JlRm9jdXM/ID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIENvbnRyb2wgdGhlIHByZXZpb3VzbHktZm9jdXNlZCBlbGVtZW50IGZvY3VzaW5nIHByb2Nlc3MuXG4gICAgICovXG4gICAgcmVzdG9yZUZvY3VzT3B0aW9ucz86IEZvY3VzT3B0aW9ucyA9IHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9O1xuXG4gICAgLyoqXG4gICAgICog5YiH5o2i5rWP6KeI5Zmo5a+86Iiq5piv5ZCm6Ieq5Yqo5YWz6Zet5by55Ye65qGGXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIFdoZXRoZXIgdGhlIG92ZXJsYXkgc2hvdWxkIGNsb3NlIHdoZW4gdGhlIHVzZXIgZ29lcyBiYWNrd2FyZHMvZm9yd2FyZHMgaW4gaGlzdG9yeS5Ob3RlIHRoYXQgdGhpcyB1c3VhbGx5IGRvZXNuJ3QgaW5jbHVkZSBjbGlja2luZyBvbiBsaW5rcyAodW5sZXNzIHRoZSB1c2VyIGlzIHVzaW5nIHRoZSBgSGFzaExvY2F0aW9uU3RyYXRlZ3lgKS5cbiAgICAgKi9cbiAgICBjbG9zZU9uTmF2aWdhdGlvbj8gPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog5YWz6Zet5by556qX5YmN55qE5Zue6LCD5Ye95pWw77yM6L+U5ZueIGZhbHNlIOWPr+mYu+atouWFs+mXreW8ueeql1xuICAgICAqL1xuICAgIGNhbkNsb3NlPzogKHJlc3VsdD86IHVua25vd24pID0+IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiDorr7nva7lvZPmj5DkvpvnmoTkvY3nva7lnYfkuI3pgILlkIjml7bmmK/lkKblj6/ku6XlsIbopobnm5blsYLmjqjliLDlsY/luZXkuIpcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgU2V0cyB3aGV0aGVyIHRoZSBvdmVybGF5IGNhbiBiZSBwdXNoZWQgb24tc2NyZWVuIGlmIG5vbmUgb2YgdGhlIHByb3ZpZGVkIHBvc2l0aW9ucyBmaXRcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgY2FuUHVzaD8gPSB0cnVlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRoeUFic3RyYWN0T3ZlcmxheU9wdGlvbnMge1xuICAgIC8qKiBjb21wb25lbnQgbmFtZSwgZS5nLiBkaWFsb2cgfCBwb3BvdmVyIHwgc2xpZGUgKi9cbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgLyoqIFdoZXRoZXIgZW5hYmxlIGFuaW1hdGlvbiAqL1xuICAgIGFuaW1hdGlvbkVuYWJsZWQ6IGJvb2xlYW47XG4gICAgLyoqIFdoZXRoZXIgZGlzcG9zZSBjZGsgb3ZlcmxheSByZWYgd2hlbiBjbG9zZSB1cHBlciBvdmVybGF5ICovXG4gICAgZGlzcG9zZVdoZW5DbG9zZTogYm9vbGVhbjtcbn1cbiJdfQ==
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3Qtb3ZlcmxheS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29yZS9vdmVybGF5L2Fic3RyYWN0LW92ZXJsYXkuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlCQSxNQUFNLE9BQU8sd0JBQXdCO0lBQXJDO1FBYUk7OztXQUdHO1FBQ0gsZUFBVSxHQUF1QixFQUFFLENBQUM7UUFLcEM7OztXQUdHO1FBQ0gsZ0JBQVcsR0FBSSxJQUFJLENBQUM7UUFFcEI7OztXQUdHO1FBQ0gsa0JBQWEsR0FBdUIsRUFBRSxDQUFDO1FBRXZDOzs7V0FHRztRQUNILHFCQUFnQixHQUFJLElBQUksQ0FBQztRQUV6Qix3RkFBd0Y7UUFDeEYsaUJBQVksR0FBSSxLQUFLLENBQUM7UUFFdEI7Ozs7V0FJRztRQUNILFVBQUssR0FBSSxFQUFFLENBQUM7UUFFWjs7OztXQUlHO1FBQ0gsV0FBTSxHQUFJLEVBQUUsQ0FBQztRQTJCYjs7O1dBR0c7UUFDSCxpQkFBWSxHQUFrQixJQUFJLENBQUM7UUFLbkMsb0RBQW9EO1FBQ3BELG9CQUFlLEdBQW1CLElBQUksQ0FBQztRQUV2QyxrREFBa0Q7UUFDbEQsY0FBUyxHQUFtQixJQUFJLENBQUM7UUFFakMsNEVBQTRFO1FBQzVFLGNBQVMsR0FBSSxJQUFJLENBQUM7UUFFbEI7OztXQUdHO1FBQ0gsaUJBQVksR0FBSSxJQUFJLENBQUM7UUFFckI7O1dBRUc7UUFDSCx3QkFBbUIsR0FBa0IsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFFN0Q7OztXQUdHO1FBQ0gsc0JBQWlCLEdBQUksSUFBSSxDQUFDO1FBTzFCOzs7O1dBSUc7UUFDSCxZQUFPLEdBQUksSUFBSSxDQUFDO0lBT3BCLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcbmltcG9ydCB7IFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBUaHlBYnN0cmFjdE92ZXJsYXlQb3NpdGlvbiB7XG4gICAgLyoqIE92ZXJyaWRlIGZvciB0aGUgb3ZlcmxheSdzIHRvcCBwb3NpdGlvbi4gKi9cbiAgICB0b3A/OiBzdHJpbmc7XG5cbiAgICAvKiogT3ZlcnJpZGUgZm9yIHRoZSBvdmVybGF5J3MgYm90dG9tIHBvc2l0aW9uLiAqL1xuICAgIGJvdHRvbT86IHN0cmluZztcblxuICAgIC8qKiBPdmVycmlkZSBmb3IgdGhlIG92ZXJsYXkncyBsZWZ0IHBvc2l0aW9uLiAqL1xuICAgIGxlZnQ/OiBzdHJpbmc7XG5cbiAgICAvKiogT3ZlcnJpZGUgZm9yIHRoZSBvdmVybGF5J3MgcmlnaHQgcG9zaXRpb24uICovXG4gICAgcmlnaHQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBUaHlBYnN0cmFjdE92ZXJsYXlDb25maWc8VERhdGEgPSB1bmtub3duPiB7XG4gICAgLyoqXG4gICAgICog5b2T5YmN55qE57uE5Lu255qEIHZpZXdDb250YWluZXJSZWbvvIzmjIflrprlkI7lvLnlh7rnmoTnu4Tku7bnmoTniLbms6jlhaXlmajkuLrlvZPliY3nu4Tku7bnmoTms6jlhaXlmahcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgV2hlcmUgdGhlIGF0dGFjaGVkIGNvbXBvbmVudCBzaG91bGQgbGl2ZSBpbiBBbmd1bGFyJ3MgKmxvZ2ljYWwqIGNvbXBvbmVudCB0cmVlLlRoaXMgYWZmZWN0cyB3aGF0IGlzIGF2YWlsYWJsZSBmb3IgaW5qZWN0aW9uIGFuZCB0aGUgY2hhbmdlIGRldGVjdGlvbiBvcmRlciBmb3IgdGhlIGNvbXBvbmVudCBpbnN0YW50aWF0ZWQgaW5zaWRlIG9mIHRoZSBvdmVybGF5LiBUaGlzIGRvZXMgbm90IGFmZmVjdCB3aGVyZSB0aGUgb3ZlcmxheSBjb250ZW50IHdpbGwgYmUgcmVuZGVyZWQuXG4gICAgICovXG4gICAgdmlld0NvbnRhaW5lclJlZj86IFZpZXdDb250YWluZXJSZWY7XG5cbiAgICAvKipcbiAgICAgKiDlvLnlh7rmoYbnmoTllK/kuIDmoIfor4ZcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgSUQgZm9yIHRoZSBvdmVybGF5LiBJZiBvbWl0dGVkLCBhIHVuaXF1ZSBvbmUgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gICAgICovXG4gICAgaWQ/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBvdmVybGF5IHBhbmVsIOexu+WQjVxuICAgICAqIEBkZXNjcmlwdGlvbi5lbi11cyBDdXN0b20gY2xhc3MgZm9yIHRoZSBvdmVybGF5IHBhbmUuXG4gICAgICovXG4gICAgcGFuZWxDbGFzcz86IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XG5cbiAgICAvKiogQ3VzdG9tIGNsYXNzIGZvciB0aGUgb3ZlcmxheSBjb21wb25lbnQncyBob3N0IGVsZW1lbnQuICovXG4gICAgaG9zdENsYXNzPzogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKbmnInluZXluINcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgV2hldGhlciB0aGUgb3ZlcmxheSBoYXMgYSBiYWNrZHJvcC5cbiAgICAgKi9cbiAgICBoYXNCYWNrZHJvcD8gPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog6Ieq5a6a5LmJ5bmV5biD55qE5qC35byPXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIEN1c3RvbSBjbGFzcyBmb3IgdGhlIGJhY2tkcm9wLlxuICAgICAqL1xuICAgIGJhY2tkcm9wQ2xhc3M/OiBzdHJpbmcgfCBzdHJpbmdbXSA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIOeCueWHu+W5leW4g+aIluiAheaMiUVTQ+mUruaYr+WQpuiHquWKqOWFs+mXreW8ueWHuuahhu+8jGhhc0JhY2tkcm9wPXRydWUg5pe26K+l5Y+C5pWw6LW35L2c55SoXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIFdoZXRoZXIgdGhlIHVzZXIgY2FuIHVzZSBlc2NhcGUgb3IgY2xpY2tpbmcgb24gdGhlIGJhY2tkcm9wIHRvIGNsb3NlIHRoZSBvdmVybGF5LlxuICAgICAqL1xuICAgIGJhY2tkcm9wQ2xvc2FibGU/ID0gdHJ1ZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSB1c2VyIGNhbiB1c2UgZXNjYXBlIG9yIGNsaWNraW5nIG9uIHRoZSBiYWNrZHJvcCB0byBjbG9zZSB0aGUgb3ZlcmxheS4gKi9cbiAgICBkaXNhYmxlQ2xvc2U/ID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiDoh6rlrprkuYnlvLnlh7rmoYbnmoTlrr3luqZcbiAgICAgKiBAZGVmYXVsdCA2NjBweFxuICAgICAqIEBkZXNjcmlwdGlvbi5lbi11cyBXaWR0aCBvZiB0aGUgb3ZlcmxheS5cbiAgICAgKi9cbiAgICB3aWR0aD8gPSAnJztcblxuICAgIC8qKlxuICAgICAqIOiHquWumuS5ieW8ueWHuuahhueahOmrmOW6plxuICAgICAqIEBkZWZhdWx0IDg1dmhcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgSGVpZ2h0IG9mIHRoZSBvdmVybGF5LlxuICAgICAqL1xuICAgIGhlaWdodD8gPSAnJztcblxuICAgIC8qKlxuICAgICAqIOW8ueWHuuahhuacgOWwj+WuveW6plxuICAgICAqIEBkZXNjcmlwdGlvbi5lbi11cyBNaW4td2lkdGggb2YgdGhlIG92ZXJsYXkuIElmIGEgbnVtYmVyIGlzIHByb3ZpZGVkLCBwaXhlbCB1bml0cyBhcmUgYXNzdW1lZC5cbiAgICAgKi9cbiAgICBtaW5XaWR0aD86IG51bWJlciB8IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIOW8ueWHuuahhuacgOWwj+mrmOW6plxuICAgICAqIEBkZXNjcmlwdGlvbi5lbi11cyBNaW4taGVpZ2h0IG9mIHRoZSBvdmVybGF5LiBJZiBhIG51bWJlciBpcyBwcm92aWRlZCwgcGl4ZWwgdW5pdHMgYXJlIGFzc3VtZWQuXG4gICAgICovXG4gICAgbWluSGVpZ2h0PzogbnVtYmVyIHwgc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog5by55Ye65qGG5pyA5aSn5a695bqmXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIE1heC13aWR0aCBvZiB0aGUgb3ZlcmxheS4gSWYgYSBudW1iZXIgaXMgcHJvdmlkZWQsIHBpeGVsIHVuaXRzIGFyZSBhc3N1bWVkLiBEZWZhdWx0cyB0byA4MHZ3XG4gICAgICovXG4gICAgbWF4V2lkdGg/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDlvLnlh7rmoYbmnIDlpKfpq5jluqZcbiAgICAgKiBAZGVmYXVsdCA4NXZoXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIE1heC1oZWlnaHQgb2YgdGhlIG92ZXJsYXkuIElmIGEgbnVtYmVyIGlzIHByb3ZpZGVkLCBwaXhlbCB1bml0cyBhcmUgYXNzdW1lZC5cbiAgICAgKi9cbiAgICBtYXhIZWlnaHQ/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDkvKDlhaXnmoTliJ3lp4vljJbnirbmgIHvvIzlvLnlh7rnu4Tku7bnmoTlj5jph4/kvJroh6rliqjotYvlgLzvvIzlnKggbmdPbkluaXQg55Sf5ZG95ZGo5pyf6ZKp5a2Q5Y+v5Lul6I635Y+W5Yiw77yM5p6E6YCg5Ye95pWw6I635Y+W5LiN5YiwXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIERhdGEgYmVpbmcgaW5qZWN0ZWQgaW50byB0aGUgY2hpbGQgY29tcG9uZW50LlxuICAgICAqL1xuICAgIGluaXRpYWxTdGF0ZT86IFREYXRhIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKiogTGF5b3V0IGRpcmVjdGlvbiBmb3IgdGhlIG92ZXJsYXkncyBjb250ZW50LiAqL1xuICAgIGRpcmVjdGlvbj86IERpcmVjdGlvbjtcblxuICAgIC8qKiBJRCBvZiB0aGUgZWxlbWVudCB0aGF0IGRlc2NyaWJlcyB0aGUgb3ZlcmxheS4gKi9cbiAgICBhcmlhRGVzY3JpYmVkQnk/OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKiBBcmlhIGxhYmVsIHRvIGFzc2lnbiB0byB0aGUgb3ZlcmxheSBlbGVtZW50ICovXG4gICAgYXJpYUxhYmVsPzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKiogV2hldGhlciB0aGUgb3ZlcmxheSBzaG91bGQgZm9jdXMgdGhlIGZpcnN0IGZvY3VzYWJsZSBlbGVtZW50IG9uIG9wZW4uICovXG4gICAgYXV0b0ZvY3VzPyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBvdmVybGF5IHNob3VsZCByZXN0b3JlIGZvY3VzIHRvIHRoZVxuICAgICAqIHByZXZpb3VzbHktZm9jdXNlZCBlbGVtZW50LCBhZnRlciBpdCdzIGNsb3NlZC5cbiAgICAgKi9cbiAgICByZXN0b3JlRm9jdXM/ID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIENvbnRyb2wgdGhlIHByZXZpb3VzbHktZm9jdXNlZCBlbGVtZW50IGZvY3VzaW5nIHByb2Nlc3MuXG4gICAgICovXG4gICAgcmVzdG9yZUZvY3VzT3B0aW9ucz86IEZvY3VzT3B0aW9ucyA9IHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9O1xuXG4gICAgLyoqXG4gICAgICog5YiH5o2i5rWP6KeI5Zmo5a+86Iiq5piv5ZCm6Ieq5Yqo5YWz6Zet5by55Ye65qGGXG4gICAgICogQGRlc2NyaXB0aW9uLmVuLXVzIFdoZXRoZXIgdGhlIG92ZXJsYXkgc2hvdWxkIGNsb3NlIHdoZW4gdGhlIHVzZXIgZ29lcyBiYWNrd2FyZHMvZm9yd2FyZHMgaW4gaGlzdG9yeS5Ob3RlIHRoYXQgdGhpcyB1c3VhbGx5IGRvZXNuJ3QgaW5jbHVkZSBjbGlja2luZyBvbiBsaW5rcyAodW5sZXNzIHRoZSB1c2VyIGlzIHVzaW5nIHRoZSBgSGFzaExvY2F0aW9uU3RyYXRlZ3lgKS5cbiAgICAgKi9cbiAgICBjbG9zZU9uTmF2aWdhdGlvbj8gPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog5YWz6Zet5by556qX5YmN55qE5Zue6LCD5Ye95pWw77yM6L+U5ZueIGZhbHNlIOWPr+mYu+atouWFs+mXreW8ueeql1xuICAgICAqL1xuICAgIGNhbkNsb3NlPzogKHJlc3VsdD86IHVua25vd24pID0+IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiDorr7nva7lvZPmj5DkvpvnmoTkvY3nva7lnYfkuI3pgILlkIjml7bmmK/lkKblj6/ku6XlsIbopobnm5blsYLmjqjliLDlsY/luZXkuIpcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgU2V0cyB3aGV0aGVyIHRoZSBvdmVybGF5IGNhbiBiZSBwdXNoZWQgb24tc2NyZWVuIGlmIG5vbmUgb2YgdGhlIHByb3ZpZGVkIHBvc2l0aW9ucyBmaXRcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgY2FuUHVzaD8gPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogUHJvamVjdGFibGUgbm9kZXMgb2YgdGh5IGFic3RyYWN0IG92ZXJsYXkgY29uZmlnLCBvbmx5IGZvciBjb21wb25lbnRcbiAgICAgKiBAdHlwZSBOb2RlW11bXVxuICAgICAqL1xuICAgIHByb2plY3RhYmxlTm9kZXM/OiBOb2RlW11bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUaHlBYnN0cmFjdE92ZXJsYXlPcHRpb25zIHtcbiAgICAvKiogY29tcG9uZW50IG5hbWUsIGUuZy4gZGlhbG9nIHwgcG9wb3ZlciB8IHNsaWRlICovXG4gICAgbmFtZTogc3RyaW5nO1xuICAgIC8qKiBXaGV0aGVyIGVuYWJsZSBhbmltYXRpb24gKi9cbiAgICBhbmltYXRpb25FbmFibGVkOiBib29sZWFuO1xuICAgIC8qKiBXaGV0aGVyIGRpc3Bvc2UgY2RrIG92ZXJsYXkgcmVmIHdoZW4gY2xvc2UgdXBwZXIgb3ZlcmxheSAqL1xuICAgIGRpc3Bvc2VXaGVuQ2xvc2U6IGJvb2xlYW47XG59XG4iXX0=
@@ -37,7 +37,7 @@ export class ThyAbstractOverlayService {
37
37
  }
38
38
  else {
39
39
  const injector = this.createInjector(config, abstractOverlayRef, containerInstance);
40
- const contentRef = containerInstance.attachComponentPortal(new ComponentPortal(componentOrTemplateRef, config.viewContainerRef, injector));
40
+ const contentRef = containerInstance.attachComponentPortal(new ComponentPortal(componentOrTemplateRef, config.viewContainerRef, injector, undefined, config.projectableNodes));
41
41
  if (config.initialState) {
42
42
  const metadata = reflectComponentType(componentOrTemplateRef);
43
43
  const inputsByTemplateName = keyBy(metadata.inputs, 'templateName');
@@ -155,4 +155,4 @@ export class ThyAbstractOverlayService {
155
155
  this._afterOpened.complete();
156
156
  }
157
157
  }
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3Qtb3ZlcmxheS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvcmUvb3ZlcmxheS9hYnN0cmFjdC1vdmVybGF5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQWdCLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsT0FBTyxFQUEwQixhQUFhLEVBQThCLE1BQU0sc0JBQXNCLENBQUM7QUFDekcsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQVksV0FBVyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUzVFLE1BQU0sT0FBZ0IseUJBQXlCO0lBTzNDLFlBQ2MsT0FBa0MsRUFBRSxnREFBZ0Q7SUFDcEYsT0FBZ0IsRUFDaEIsUUFBa0IsRUFDbEIsYUFBc0IsRUFDekIsY0FBNkM7UUFKMUMsWUFBTyxHQUFQLE9BQU8sQ0FBMkI7UUFDbEMsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGtCQUFhLEdBQWIsYUFBYSxDQUFTO1FBQ3pCLG1CQUFjLEdBQWQsY0FBYyxDQUErQjtRQVhoRCxtQkFBYyxHQUFpRCxFQUFFLENBQUM7UUFFekQsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXRDLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQTBDLENBQUM7SUFRbkYsQ0FBQztJQXNCSiw0REFBNEQ7SUFDbEQsb0JBQW9CLENBQzFCLHNCQUFxRCxFQUNyRCxpQkFBNkIsRUFDN0IsVUFBc0IsRUFDdEIsTUFBZTtRQUVmLHNGQUFzRjtRQUN0RiwwQkFBMEI7UUFDMUIsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUMs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UHJvcCwga2V5QnkgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDb21wb25lbnRUeXBlLCBPdmVybGF5LCBPdmVybGF5Q29uZmlnLCBPdmVybGF5UmVmLCBTY3JvbGxTdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCwgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IEluamVjdG9yLCBUZW1wbGF0ZVJlZiwgcmVmbGVjdENvbXBvbmVudFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgVGh5QWJzdHJhY3RPdmVybGF5Q29udGFpbmVyIH0gZnJvbSAnLi9hYnN0cmFjdC1vdmVybGF5LWNvbnRhaW5lcic7XG5pbXBvcnQgeyBUaHlBYnN0cmFjdE92ZXJsYXlSZWYgfSBmcm9tICcuL2Fic3RyYWN0LW92ZXJsYXktcmVmJztcbmltcG9ydCB7IFRoeUFic3RyYWN0T3ZlcmxheUNvbmZpZywgVGh5QWJzdHJhY3RPdmVybGF5T3B0aW9ucyB9IGZyb20gJy4vYWJzdHJhY3Qtb3ZlcmxheS5jb25maWcnO1xuaW1wb3J0IHsgU2FmZUFueSB9IGZyb20gJ25neC10ZXRoeXMvdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBDb21wb25lbnRUeXBlT3JUZW1wbGF0ZVJlZjxUPiA9IENvbXBvbmVudFR5cGU8VD4gfCBUZW1wbGF0ZVJlZjxUPjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRoeUFic3RyYWN0T3ZlcmxheVNlcnZpY2U8VENvbmZpZyBleHRlbmRzIFRoeUFic3RyYWN0T3ZlcmxheUNvbmZpZywgVENvbnRhaW5lciBleHRlbmRzIFRoeUFic3RyYWN0T3ZlcmxheUNvbnRhaW5lcj4ge1xuICAgIHByaXZhdGUgb3BlbmVkT3ZlcmxheXM6IFRoeUFic3RyYWN0T3ZlcmxheVJlZjx1bmtub3duLCBUQ29udGFpbmVyPltdID0gW107XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9hZnRlckFsbENsb3NlZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9hZnRlck9wZW5lZCA9IG5ldyBTdWJqZWN0PFRoeUFic3RyYWN0T3ZlcmxheVJlZjxhbnksIFRDb250YWluZXI+PigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBvcHRpb25zOiBUaHlBYnN0cmFjdE92ZXJsYXlPcHRpb25zLCAvLyBjb21wb25lbnQgbmFtZSwgZS5nOiBkaWFsb2cgfCBwb3BvdmVyIHwgc2xpZGVcbiAgICAgICAgcHJvdGVjdGVkIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByb3RlY3RlZCBkZWZhdWx0Q29uZmlnOiBUQ29uZmlnLFxuICAgICAgICBwdWJsaWMgc2Nyb2xsU3RyYXRlZ3k/OiBGdW5jdGlvblByb3A8U2Nyb2xsU3RyYXRlZ3k+XG4gICAgKSB7fVxuXG4gICAgLyoqIEJ1aWxkIGNkayBvdmVybGF5IGNvbmZpZyBieSBjb25maWcgKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgYnVpbGRPdmVybGF5Q29uZmlnKGNvbmZpZzogVENvbmZpZyk6IE92ZXJsYXlDb25maWc7XG5cbiAgICAvKiogQXR0YWNoIG92ZXJsYXkgY29udGFpbmVyIHRvIG92ZXJsYXkqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBhdHRhY2hPdmVybGF5Q29udGFpbmVyKG92ZXJsYXk6IE92ZXJsYXlSZWYsIGNvbmZpZzogVENvbmZpZyk6IFRDb250YWluZXI7XG5cbiAgICAvKiogQ3JlYXRlIGFic3RyYWN0IG92ZXJsYXkgcmVmIGJ5IGNkayBvdmVybGF5LCBjb250YWluZXIgYW5kIGNvbmZpZyAgKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgY3JlYXRlQWJzdHJhY3RPdmVybGF5UmVmPFQsIFRSZXN1bHQ+KFxuICAgICAgICBvdmVybGF5UmVmOiBPdmVybGF5UmVmLFxuICAgICAgICBjb250YWluZXJJbnN0YW5jZTogVENvbnRhaW5lcixcbiAgICAgICAgY29uZmlnOiBUQ29uZmlnXG4gICAgKTogVGh5QWJzdHJhY3RPdmVybGF5UmVmPFQsIFRDb250YWluZXIsIFRSZXN1bHQ+O1xuXG4gICAgLyoqIENyZWF0ZSBpbmplY3RvciBmb3IgY29tcG9uZW50IGNvbnRlbnQgKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgY3JlYXRlSW5qZWN0b3I8VD4oXG4gICAgICAgIGNvbmZpZzogVENvbmZpZyxcbiAgICAgICAgb3ZlcmxheVJlZjogVGh5QWJzdHJhY3RPdmVybGF5UmVmPFQsIFRDb250YWluZXI+LFxuICAgICAgICBjb250YWluZXJJbnN0YW5jZTogVENvbnRhaW5lclxuICAgICk6IEluamVjdG9yO1xuXG4gICAgLyoqIEF0dGFjaCBjb21wb25lbnQgb3IgdGVtcGxhdGUgcmVmIHRvIG92ZXJsYXkgY29udGFpbmVyICovXG4gICAgcHJvdGVjdGVkIGF0dGFjaE92ZXJsYXlDb250ZW50PFQsIFRSZXN1bHQ+KFxuICAgICAgICBjb21wb25lbnRPclRlbXBsYXRlUmVmOiBDb21wb25lbnRUeXBlT3JUZW1wbGF0ZVJlZjxUPixcbiAgICAgICAgY29udGFpbmVySW5zdGFuY2U6IFRDb250YWluZXIsXG4gICAgICAgIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsXG4gICAgICAgIGNvbmZpZzogVENvbmZpZ1xuICAgICk6IFRoeUFic3RyYWN0T3ZlcmxheVJlZjxULCBUQ29udGFpbmVyLCBUUmVzdWx0PiB7XG4gICAgICAgIC8vIENyZWF0ZSBhIHJlZmVyZW5jZSB0byB0aGUgb3ZlcmxheSB3ZSdyZSBjcmVhdGluZyBpbiBvcmRlciB0byBnaXZlIHRoZSB1c2VyIGEgaGFuZGxlXG4gICAgICAgIC8vIHRvIG1vZGlmeSBhbmQgY2xvc2UgaXQuXG4gICAgICAgIGNvbnN0IGFic3RyYWN0T3ZlcmxheVJlZiA9IHRoaXMuY3JlYXRlQWJzdHJhY3RPdmVybGF5UmVmPFQsIFRSZXN1bHQ+KG92ZXJsYXlSZWYsIGNvbnRhaW5lckluc3RhbmNlLCBjb25maWcpO1xuXG4gICAgICAgIC8vIFdoZW4gdGhlIGJhY2tkcm9wIGlzIGNsaWNrZWQsIHdlIHdhbnQgdG8gY2xvc2UgaXQuXG4gICAgICAgIGlmIChjb25maWcuaGFzQmFja2Ryb3ApIHtcbiAgICAgICAgICAgIG92ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAoYWJzdHJhY3RPdmVybGF5UmVmLmRpc2FibGVDbG9zZSAhPT0gdW5kZWZpbmVkICYmICFhYnN0cmFjdE92ZXJsYXlSZWYuZGlzYWJsZUNsb3NlKSB8fFxuICAgICAgICAgICAgICAgICAgICBhYnN0cmFjdE92ZXJsYXlSZWYuYmFja2Ryb3BDbG9zYWJsZVxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29tcG9uZW50T3JUZW1wbGF0ZVJlZiBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKSB7XG4gICAgICAgICAgICBjb250YWluZXJJbnN0YW5jZS5hdHRhY2hUZW1wbGF0ZVBvcnRhbChcbiAgICAgICAgICAgICAgICBuZXcgVGVtcGxhdGVQb3J0YWw8VD4oY29tcG9uZW50T3JUZW1wbGF0ZVJlZiwgbnVsbCwgPGFueT57XG4gICAgICAgICAgICAgICAgICAgICRpbXBsaWNpdDogY29uZmlnLmluaXRpYWxTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgW2Ake3RoaXMub3B0aW9ucy5uYW1lfVJlZmBdOiBhYnN0cmFjdE92ZXJsYXlSZWZcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGluamVjdG9yID0gdGhpcy5jcmVhdGVJbmplY3RvcjxUPihjb25maWcsIGFic3RyYWN0T3ZlcmxheVJlZiwgY29udGFpbmVySW5zdGFuY2UpO1xuICAgICAgICAgICAgY29uc3QgY29udGVudFJlZiA9IGNvbnRhaW5lckluc3RhbmNlLmF0dGFjaENvbXBvbmVudFBvcnRhbDxUPihcbiAgICAgICAgICAgICAgICBuZXcgQ29tcG9uZW50UG9ydGFsKGNvbXBvbmVudE9yVGVtcGxhdGVSZWYsIGNvbmZpZy52aWV3Q29udGFpbmVyUmVmLCBpbmplY3RvcilcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoY29uZmlnLmluaXRpYWxTdGF0ZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1ldGFkYXRhID0gcmVmbGVjdENvbXBvbmVudFR5cGUoY29tcG9uZW50T3JUZW1wbGF0ZVJlZik7XG4gICAgICAgICAgICAgICAgY29uc3QgaW5wdXRzQnlUZW1wbGF0ZU5hbWUgPSBrZXlCeShtZXRhZGF0YS5pbnB1dHMgYXMgU2FmZUFueSwgJ3RlbXBsYXRlTmFtZScpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGlucHV0c0J5UHJvcE5hbWUgPSBrZXlCeShtZXRhZGF0YS5pbnB1dHMgYXMgU2FmZUFueSwgJ3Byb3BOYW1lJyk7XG4gICAgICAgICAgICAgICAgT2JqZWN0LmtleXMoY29uZmlnLmluaXRpYWxTdGF0ZSkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IChjb25maWcuaW5pdGlhbFN0YXRlIGFzIFNhZmVBbnkpW2tleV07XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGlucHV0OiB7IHRlbXBsYXRlTmFtZT86IHN0cmluZzsgcHJvcE5hbWU/OiBzdHJpbmcgfSA9IGlucHV0c0J5VGVtcGxhdGVOYW1lW2tleV0gfHwgaW5wdXRzQnlQcm9wTmFtZVtrZXldO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaW5wdXQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRSZWYuc2V0SW5wdXQoaW5wdXQudGVtcGxhdGVOYW1lLCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAoY29udGVudFJlZi5pbnN0YW5jZSBhcyBTYWZlQW55KVtrZXldID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChjb25maWcuaG9zdENsYXNzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaG9zdENsYXNzID0gY29lcmNlQXJyYXkoY29uZmlnLmhvc3RDbGFzcyk7XG4gICAgICAgICAgICAgICAgY29udGVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoLi4uaG9zdENsYXNzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGFic3RyYWN0T3ZlcmxheVJlZi5jb21wb25lbnRJbnN0YW5jZSA9IGNvbnRlbnRSZWYuaW5zdGFuY2U7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYWJzdHJhY3RPdmVybGF5UmVmO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCByZW1vdmVPcGVuZWRPdmVybGF5KG92ZXJsYXlSZWY6IFRoeUFic3RyYWN0T3ZlcmxheVJlZjxhbnksIFRDb250YWluZXI+KSB7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5vcGVuZWRPdmVybGF5cy5pbmRleE9mKG92ZXJsYXlSZWYpO1xuXG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgICB0aGlzLm9wZW5lZE92ZXJsYXlzLnNwbGljZShpbmRleCwgMSk7XG5cbiAgICAgICAgICAgIGlmICghdGhpcy5vcGVuZWRPdmVybGF5cy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9hZnRlckFsbENsb3NlZC5uZXh0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0QWJzdHJhY3RPdmVybGF5QnlJZChpZDogc3RyaW5nKTogVGh5QWJzdHJhY3RPdmVybGF5UmVmPGFueSwgVENvbnRhaW5lcj4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5vcGVuZWRPdmVybGF5cy5maW5kKG92ZXJsYXkgPT4gb3ZlcmxheS5pZCA9PT0gaWQpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXRBYnN0cmFjdE92ZXJsYXlzKCk6IFRoeUFic3RyYWN0T3ZlcmxheVJlZjxhbnksIFRDb250YWluZXI+W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcGVuZWRPdmVybGF5cztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYnVpbGRCYXNlT3ZlcmxheUNvbmZpZyhjb25maWc6IFRDb25maWcsIGRlZmF1bHRQYW5lbENsYXNzPzogc3RyaW5nIHwgc3RyaW5nW10pOiBPdmVybGF5Q29uZmlnIHtcbiAgICAgICAgY29uc3Qgb3ZlcmxheUNvbmZpZyA9IG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgICAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGNvbmZpZy5oYXNCYWNrZHJvcCxcbiAgICAgICAgICAgIGRpcmVjdGlvbjogY29uZmlnLmRpcmVjdGlvbixcbiAgICAgICAgICAgIHdpZHRoOiBjb25maWcud2lkdGgsXG4gICAgICAgICAgICBoZWlnaHQ6IGNvbmZpZy5oZWlnaHQsXG4gICAgICAgICAgICBtaW5XaWR0aDogY29uZmlnLm1pbldpZHRoLFxuICAgICAgICAgICAgbWluSGVpZ2h0OiBjb25maWcubWluSGVpZ2h0LFxuICAgICAgICAgICAgbWF4V2lkdGg6IGNvbmZpZy5tYXhXaWR0aCxcbiAgICAgICAgICAgIG1heEhlaWdodDogY29uZmlnLm1heEhlaWdodCxcbiAgICAgICAgICAgIGRpc3Bvc2VPbk5hdmlnYXRpb246IGNvbmZpZy5jbG9zZU9uTmF2aWdhdGlvblxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoY29uZmlnLmJhY2tkcm9wQ2xhc3MpIHtcbiAgICAgICAgICAgIG92ZXJsYXlDb25maWcuYmFja2Ryb3BDbGFzcyA9IGNvbmZpZy5iYWNrZHJvcENsYXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgb3ZlcmxheUNvbmZpZy5wYW5lbENsYXNzID0gY29uY2F0QXJyYXkoY29uZmlnLnBhbmVsQ2xhc3MsIGRlZmF1bHRQYW5lbENsYXNzKTtcblxuICAgICAgICByZXR1cm4gb3ZlcmxheUNvbmZpZztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3Blbk92ZXJsYXk8VCwgVFJlc3VsdCA9IHVua25vd24+KFxuICAgICAgICBjb21wb25lbnRPclRlbXBsYXRlUmVmOiBDb21wb25lbnRUeXBlT3JUZW1wbGF0ZVJlZjxUPixcbiAgICAgICAgY29uZmlnPzogVENvbmZpZ1xuICAgICk6IFRoeUFic3RyYWN0T3ZlcmxheVJlZjxULCBUQ29udGFpbmVyLCBUUmVzdWx0PiB7XG4gICAgICAgIGNvbmZpZyA9IHsgLi4udGhpcy5kZWZhdWx0Q29uZmlnLCAuLi5jb25maWcgfTtcbiAgICAgICAgaWYgKGNvbmZpZy5pZCAmJiB0aGlzLmdldEFic3RyYWN0T3ZlcmxheUJ5SWQoY29uZmlnLmlkKSkge1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoYCR7dGhpcy5vcHRpb25zLm5hbWV9IHdpdGggaWQgJHtjb25maWcuaWR9IGV4aXN0cyBhbHJlYWR5LiBUaGUgJHt0aGlzLm9wdGlvbnMubmFtZX0gaWQgbXVzdCBiZSB1bmlxdWUuYCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgb3ZlcmxheUNvbmZpZzogT3ZlcmxheUNvbmZpZyA9IHRoaXMuYnVpbGRPdmVybGF5Q29uZmlnKGNvbmZpZyk7XG4gICAgICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXkuY3JlYXRlKG92ZXJsYXlDb25maWcpO1xuXG4gICAgICAgIGNvbnN0IG92ZXJsYXlDb250YWluZXIgPSB0aGlzLmF0dGFjaE92ZXJsYXlDb250YWluZXIob3ZlcmxheVJlZiwgY29uZmlnKTtcbiAgICAgICAgY29uc3QgYWJzdHJhY3RPdmVybGF5UmVmID0gdGhpcy5hdHRhY2hPdmVybGF5Q29udGVudDxULCBUUmVzdWx0Pihjb21wb25lbnRPclRlbXBsYXRlUmVmLCBvdmVybGF5Q29udGFpbmVyLCBvdmVybGF5UmVmLCBjb25maWcpO1xuXG4gICAgICAgIHRoaXMub3BlbmVkT3ZlcmxheXMucHVzaChhYnN0cmFjdE92ZXJsYXlSZWYpO1xuICAgICAgICBhYnN0cmFjdE92ZXJsYXlSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZW1vdmVPcGVuZWRPdmVybGF5KGFic3RyYWN0T3ZlcmxheVJlZik7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9hZnRlck9wZW5lZC5uZXh0KGFic3RyYWN0T3ZlcmxheVJlZik7XG5cbiAgICAgICAgcmV0dXJuIGFic3RyYWN0T3ZlcmxheVJlZjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmiYDmnInlvLnlh7rmoYblrozlhajlhbPpl63lkI7nmoTlm57osINcbiAgICAgKiBAcmV0dXJuc1xuICAgICAqL1xuICAgIGFmdGVyQWxsQ2xvc2VkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fYWZ0ZXJBbGxDbG9zZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5omT5byA5by55Ye65qGG5LmL5ZCO55qE5Zue6LCDXG4gICAgICogQHJldHVybnNcbiAgICAgKi9cbiAgICBhZnRlck9wZW5lZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FmdGVyT3BlbmVkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWFs+mXreW8ueWHuuahhu+8jOiLpWZvcmNl5Li6dHJ1Ze+8jOWImWNhbkNsb3Nl5peg5pWI77yM5by65Yi25YWz6ZetXG4gICAgICogQHBhcmFtIHJlc3VsdFxuICAgICAqIEBwYXJhbSBmb3JjZVxuICAgICAqL1xuICAgIGNsb3NlPFQ+KHJlc3VsdD86IFQsIGZvcmNlPzogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5vcGVuZWRPdmVybGF5cy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBsYXN0T3ZlcmxheVJlZiA9IHRoaXMub3BlbmVkT3ZlcmxheXNbdGhpcy5vcGVuZWRPdmVybGF5cy5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgIGlmIChsYXN0T3ZlcmxheVJlZikge1xuICAgICAgICAgICAgICAgIGxhc3RPdmVybGF5UmVmLmNsb3NlKHJlc3VsdCwgZm9yY2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5YWz6Zet5omA5pyJ5omT5byA55qE5by55Ye65qGGXG4gICAgICovXG4gICAgY2xvc2VBbGwoKSB7XG4gICAgICAgIGxldCBpID0gdGhpcy5vcGVuZWRPdmVybGF5cy5sZW5ndGg7XG4gICAgICAgIHdoaWxlIChpLS0pIHtcbiAgICAgICAgICAgIC8vIOS4jemcgOimgeaTjeS9nCBvcGVuZWRPdmVybGF5cywg5Zug5Li6IGNsb3NlIOS8muinpuWPkSBhZnRlckNsb3NlZCDnmoTorqLpmIVcbiAgICAgICAgICAgIC8vIOinpuWPkeiuoumYheWQjuS8muiHquWKqOS7jiBvcGVuZWRPdmVybGF5cyDkuK3np7vpmaRcbiAgICAgICAgICAgIHRoaXMub3BlbmVkT3ZlcmxheXNbaV0uY2xvc2UoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGRpc3Bvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2xvc2VBbGwoKTtcbiAgICAgICAgdGhpcy5fYWZ0ZXJBbGxDbG9zZWQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fYWZ0ZXJPcGVuZWQuY29tcGxldGUoKTtcbiAgICB9XG59XG4iXX0=
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3Qtb3ZlcmxheS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvcmUvb3ZlcmxheS9hYnN0cmFjdC1vdmVybGF5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQWdCLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsT0FBTyxFQUEwQixhQUFhLEVBQThCLE1BQU0sc0JBQXNCLENBQUM7QUFDekcsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQVksV0FBVyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUzVFLE1BQU0sT0FBZ0IseUJBQXlCO0lBTzNDLFlBQ2MsT0FBa0MsRUFBRSxnREFBZ0Q7SUFDcEYsT0FBZ0IsRUFDaEIsUUFBa0IsRUFDbEIsYUFBc0IsRUFDekIsY0FBNkM7UUFKMUMsWUFBTyxHQUFQLE9BQU8sQ0FBMkI7UUFDbEMsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGtCQUFhLEdBQWIsYUFBYSxDQUFTO1FBQ3pCLG1CQUFjLEdBQWQsY0FBYyxDQUErQjtRQVhoRCxtQkFBYyxHQUFpRCxFQUFFLENBQUM7UUFFekQsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXRDLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQTBDLENBQUM7SUFRbkYsQ0FBQztJQXNCSiw0REFBNEQ7SUFDbEQsb0JBQW9CLENBQzFCLHNCQUFxRCxFQUNyRCxpQkFBNkIsRUFDN0IsVUFBc0IsRUFDdEIsTUFBZTtRQUVmLHNGQUFzRjtRQUN0RiwwQkFBMEI7UUFDMUIsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUMs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ZXJjZUFycmF5LCBjb25jYXRBcnJheSwgRnVuY3Rpb25Qcm9wLCBrZXlCeSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IENvbXBvbmVudFR5cGUsIE92ZXJsYXksIE92ZXJsYXlDb25maWcsIE92ZXJsYXlSZWYsIFNjcm9sbFN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsLCBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgSW5qZWN0b3IsIFRlbXBsYXRlUmVmLCByZWZsZWN0Q29tcG9uZW50VHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBUaHlBYnN0cmFjdE92ZXJsYXlDb250YWluZXIgfSBmcm9tICcuL2Fic3RyYWN0LW92ZXJsYXktY29udGFpbmVyJztcbmltcG9ydCB7IFRoeUFic3RyYWN0T3ZlcmxheVJlZiB9IGZyb20gJy4vYWJzdHJhY3Qtb3ZlcmxheS1yZWYnO1xuaW1wb3J0IHsgVGh5QWJzdHJhY3RPdmVybGF5Q29uZmlnLCBUaHlBYnN0cmFjdE92ZXJsYXlPcHRpb25zIH0gZnJvbSAnLi9hYnN0cmFjdC1vdmVybGF5LmNvbmZpZyc7XG5pbXBvcnQgeyBTYWZlQW55IH0gZnJvbSAnbmd4LXRldGh5cy90eXBlcyc7XG5cbmV4cG9ydCB0eXBlIENvbXBvbmVudFR5cGVPclRlbXBsYXRlUmVmPFQ+ID0gQ29tcG9uZW50VHlwZTxUPiB8IFRlbXBsYXRlUmVmPFQ+O1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVGh5QWJzdHJhY3RPdmVybGF5U2VydmljZTxUQ29uZmlnIGV4dGVuZHMgVGh5QWJzdHJhY3RPdmVybGF5Q29uZmlnLCBUQ29udGFpbmVyIGV4dGVuZHMgVGh5QWJzdHJhY3RPdmVybGF5Q29udGFpbmVyPiB7XG4gICAgcHJpdmF0ZSBvcGVuZWRPdmVybGF5czogVGh5QWJzdHJhY3RPdmVybGF5UmVmPHVua25vd24sIFRDb250YWluZXI+W10gPSBbXTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2FmdGVyQWxsQ2xvc2VkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2FmdGVyT3BlbmVkID0gbmV3IFN1YmplY3Q8VGh5QWJzdHJhY3RPdmVybGF5UmVmPGFueSwgVENvbnRhaW5lcj4+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIG9wdGlvbnM6IFRoeUFic3RyYWN0T3ZlcmxheU9wdGlvbnMsIC8vIGNvbXBvbmVudCBuYW1lLCBlLmc6IGRpYWxvZyB8IHBvcG92ZXIgfCBzbGlkZVxuICAgICAgICBwcm90ZWN0ZWQgb3ZlcmxheTogT3ZlcmxheSxcbiAgICAgICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJvdGVjdGVkIGRlZmF1bHRDb25maWc6IFRDb25maWcsXG4gICAgICAgIHB1YmxpYyBzY3JvbGxTdHJhdGVneT86IEZ1bmN0aW9uUHJvcDxTY3JvbGxTdHJhdGVneT5cbiAgICApIHt9XG5cbiAgICAvKiogQnVpbGQgY2RrIG92ZXJsYXkgY29uZmlnIGJ5IGNvbmZpZyAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBidWlsZE92ZXJsYXlDb25maWcoY29uZmlnOiBUQ29uZmlnKTogT3ZlcmxheUNvbmZpZztcblxuICAgIC8qKiBBdHRhY2ggb3ZlcmxheSBjb250YWluZXIgdG8gb3ZlcmxheSovXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IGF0dGFjaE92ZXJsYXlDb250YWluZXIob3ZlcmxheTogT3ZlcmxheVJlZiwgY29uZmlnOiBUQ29uZmlnKTogVENvbnRhaW5lcjtcblxuICAgIC8qKiBDcmVhdGUgYWJzdHJhY3Qgb3ZlcmxheSByZWYgYnkgY2RrIG92ZXJsYXksIGNvbnRhaW5lciBhbmQgY29uZmlnICAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBjcmVhdGVBYnN0cmFjdE92ZXJsYXlSZWY8VCwgVFJlc3VsdD4oXG4gICAgICAgIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsXG4gICAgICAgIGNvbnRhaW5lckluc3RhbmNlOiBUQ29udGFpbmVyLFxuICAgICAgICBjb25maWc6IFRDb25maWdcbiAgICApOiBUaHlBYnN0cmFjdE92ZXJsYXlSZWY8VCwgVENvbnRhaW5lciwgVFJlc3VsdD47XG5cbiAgICAvKiogQ3JlYXRlIGluamVjdG9yIGZvciBjb21wb25lbnQgY29udGVudCAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBjcmVhdGVJbmplY3RvcjxUPihcbiAgICAgICAgY29uZmlnOiBUQ29uZmlnLFxuICAgICAgICBvdmVybGF5UmVmOiBUaHlBYnN0cmFjdE92ZXJsYXlSZWY8VCwgVENvbnRhaW5lcj4sXG4gICAgICAgIGNvbnRhaW5lckluc3RhbmNlOiBUQ29udGFpbmVyXG4gICAgKTogSW5qZWN0b3I7XG5cbiAgICAvKiogQXR0YWNoIGNvbXBvbmVudCBvciB0ZW1wbGF0ZSByZWYgdG8gb3ZlcmxheSBjb250YWluZXIgKi9cbiAgICBwcm90ZWN0ZWQgYXR0YWNoT3ZlcmxheUNvbnRlbnQ8VCwgVFJlc3VsdD4oXG4gICAgICAgIGNvbXBvbmVudE9yVGVtcGxhdGVSZWY6IENvbXBvbmVudFR5cGVPclRlbXBsYXRlUmVmPFQ+LFxuICAgICAgICBjb250YWluZXJJbnN0YW5jZTogVENvbnRhaW5lcixcbiAgICAgICAgb3ZlcmxheVJlZjogT3ZlcmxheVJlZixcbiAgICAgICAgY29uZmlnOiBUQ29uZmlnXG4gICAgKTogVGh5QWJzdHJhY3RPdmVybGF5UmVmPFQsIFRDb250YWluZXIsIFRSZXN1bHQ+IHtcbiAgICAgICAgLy8gQ3JlYXRlIGEgcmVmZXJlbmNlIHRvIHRoZSBvdmVybGF5IHdlJ3JlIGNyZWF0aW5nIGluIG9yZGVyIHRvIGdpdmUgdGhlIHVzZXIgYSBoYW5kbGVcbiAgICAgICAgLy8gdG8gbW9kaWZ5IGFuZCBjbG9zZSBpdC5cbiAgICAgICAgY29uc3QgYWJzdHJhY3RPdmVybGF5UmVmID0gdGhpcy5jcmVhdGVBYnN0cmFjdE92ZXJsYXlSZWY8VCwgVFJlc3VsdD4ob3ZlcmxheVJlZiwgY29udGFpbmVySW5zdGFuY2UsIGNvbmZpZyk7XG5cbiAgICAgICAgLy8gV2hlbiB0aGUgYmFja2Ryb3AgaXMgY2xpY2tlZCwgd2Ugd2FudCB0byBjbG9zZSBpdC5cbiAgICAgICAgaWYgKGNvbmZpZy5oYXNCYWNrZHJvcCkge1xuICAgICAgICAgICAgb3ZlcmxheVJlZi5iYWNrZHJvcENsaWNrKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIChhYnN0cmFjdE92ZXJsYXlSZWYuZGlzYWJsZUNsb3NlICE9PSB1bmRlZmluZWQgJiYgIWFic3RyYWN0T3ZlcmxheVJlZi5kaXNhYmxlQ2xvc2UpIHx8XG4gICAgICAgICAgICAgICAgICAgIGFic3RyYWN0T3ZlcmxheVJlZi5iYWNrZHJvcENsb3NhYmxlXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb21wb25lbnRPclRlbXBsYXRlUmVmIGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpIHtcbiAgICAgICAgICAgIGNvbnRhaW5lckluc3RhbmNlLmF0dGFjaFRlbXBsYXRlUG9ydGFsKFxuICAgICAgICAgICAgICAgIG5ldyBUZW1wbGF0ZVBvcnRhbDxUPihjb21wb25lbnRPclRlbXBsYXRlUmVmLCBudWxsLCA8YW55PntcbiAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBjb25maWcuaW5pdGlhbFN0YXRlLFxuICAgICAgICAgICAgICAgICAgICBbYCR7dGhpcy5vcHRpb25zLm5hbWV9UmVmYF06IGFic3RyYWN0T3ZlcmxheVJlZlxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaW5qZWN0b3IgPSB0aGlzLmNyZWF0ZUluamVjdG9yPFQ+KGNvbmZpZywgYWJzdHJhY3RPdmVybGF5UmVmLCBjb250YWluZXJJbnN0YW5jZSk7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50UmVmID0gY29udGFpbmVySW5zdGFuY2UuYXR0YWNoQ29tcG9uZW50UG9ydGFsPFQ+KFxuICAgICAgICAgICAgICAgIG5ldyBDb21wb25lbnRQb3J0YWwoY29tcG9uZW50T3JUZW1wbGF0ZVJlZiwgY29uZmlnLnZpZXdDb250YWluZXJSZWYsIGluamVjdG9yLCB1bmRlZmluZWQsIGNvbmZpZy5wcm9qZWN0YWJsZU5vZGVzKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGlmIChjb25maWcuaW5pdGlhbFN0YXRlKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWV0YWRhdGEgPSByZWZsZWN0Q29tcG9uZW50VHlwZShjb21wb25lbnRPclRlbXBsYXRlUmVmKTtcbiAgICAgICAgICAgICAgICBjb25zdCBpbnB1dHNCeVRlbXBsYXRlTmFtZSA9IGtleUJ5KG1ldGFkYXRhLmlucHV0cyBhcyBTYWZlQW55LCAndGVtcGxhdGVOYW1lJyk7XG4gICAgICAgICAgICAgICAgY29uc3QgaW5wdXRzQnlQcm9wTmFtZSA9IGtleUJ5KG1ldGFkYXRhLmlucHV0cyBhcyBTYWZlQW55LCAncHJvcE5hbWUnKTtcbiAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyhjb25maWcuaW5pdGlhbFN0YXRlKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gKGNvbmZpZy5pbml0aWFsU3RhdGUgYXMgU2FmZUFueSlba2V5XTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5wdXQ6IHsgdGVtcGxhdGVOYW1lPzogc3RyaW5nOyBwcm9wTmFtZT86IHN0cmluZyB9ID0gaW5wdXRzQnlUZW1wbGF0ZU5hbWVba2V5XSB8fCBpbnB1dHNCeVByb3BOYW1lW2tleV07XG4gICAgICAgICAgICAgICAgICAgIGlmIChpbnB1dCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudFJlZi5zZXRJbnB1dChpbnB1dC50ZW1wbGF0ZU5hbWUsIHZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb250ZW50UmVmLmluc3RhbmNlIGFzIFNhZmVBbnkpW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGNvbmZpZy5ob3N0Q2xhc3MpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBob3N0Q2xhc3MgPSBjb2VyY2VBcnJheShjb25maWcuaG9zdENsYXNzKTtcbiAgICAgICAgICAgICAgICBjb250ZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZCguLi5ob3N0Q2xhc3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYWJzdHJhY3RPdmVybGF5UmVmLmNvbXBvbmVudEluc3RhbmNlID0gY29udGVudFJlZi5pbnN0YW5jZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBhYnN0cmFjdE92ZXJsYXlSZWY7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlbW92ZU9wZW5lZE92ZXJsYXkob3ZlcmxheVJlZjogVGh5QWJzdHJhY3RPdmVybGF5UmVmPGFueSwgVENvbnRhaW5lcj4pIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLm9wZW5lZE92ZXJsYXlzLmluZGV4T2Yob3ZlcmxheVJlZik7XG5cbiAgICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgIHRoaXMub3BlbmVkT3ZlcmxheXMuc3BsaWNlKGluZGV4LCAxKTtcblxuICAgICAgICAgICAgaWYgKCF0aGlzLm9wZW5lZE92ZXJsYXlzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2FmdGVyQWxsQ2xvc2VkLm5leHQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXRBYnN0cmFjdE92ZXJsYXlCeUlkKGlkOiBzdHJpbmcpOiBUaHlBYnN0cmFjdE92ZXJsYXlSZWY8YW55LCBUQ29udGFpbmVyPiB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wZW5lZE92ZXJsYXlzLmZpbmQob3ZlcmxheSA9PiBvdmVybGF5LmlkID09PSBpZCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEFic3RyYWN0T3ZlcmxheXMoKTogVGh5QWJzdHJhY3RPdmVybGF5UmVmPGFueSwgVENvbnRhaW5lcj5bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wZW5lZE92ZXJsYXlzO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBidWlsZEJhc2VPdmVybGF5Q29uZmlnKGNvbmZpZzogVENvbmZpZywgZGVmYXVsdFBhbmVsQ2xhc3M/OiBzdHJpbmcgfCBzdHJpbmdbXSk6IE92ZXJsYXlDb25maWcge1xuICAgICAgICBjb25zdCBvdmVybGF5Q29uZmlnID0gbmV3IE92ZXJsYXlDb25maWcoe1xuICAgICAgICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5vdmVybGF5LnBvc2l0aW9uKCkuZ2xvYmFsKCksXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogY29uZmlnLmhhc0JhY2tkcm9wLFxuICAgICAgICAgICAgZGlyZWN0aW9uOiBjb25maWcuZGlyZWN0aW9uLFxuICAgICAgICAgICAgd2lkdGg6IGNvbmZpZy53aWR0aCxcbiAgICAgICAgICAgIGhlaWdodDogY29uZmlnLmhlaWdodCxcbiAgICAgICAgICAgIG1pbldpZHRoOiBjb25maWcubWluV2lkdGgsXG4gICAgICAgICAgICBtaW5IZWlnaHQ6IGNvbmZpZy5taW5IZWlnaHQsXG4gICAgICAgICAgICBtYXhXaWR0aDogY29uZmlnLm1heFdpZHRoLFxuICAgICAgICAgICAgbWF4SGVpZ2h0OiBjb25maWcubWF4SGVpZ2h0LFxuICAgICAgICAgICAgZGlzcG9zZU9uTmF2aWdhdGlvbjogY29uZmlnLmNsb3NlT25OYXZpZ2F0aW9uXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChjb25maWcuYmFja2Ryb3BDbGFzcykge1xuICAgICAgICAgICAgb3ZlcmxheUNvbmZpZy5iYWNrZHJvcENsYXNzID0gY29uZmlnLmJhY2tkcm9wQ2xhc3M7XG4gICAgICAgIH1cblxuICAgICAgICBvdmVybGF5Q29uZmlnLnBhbmVsQ2xhc3MgPSBjb25jYXRBcnJheShjb25maWcucGFuZWxDbGFzcywgZGVmYXVsdFBhbmVsQ2xhc3MpO1xuXG4gICAgICAgIHJldHVybiBvdmVybGF5Q29uZmlnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvcGVuT3ZlcmxheTxULCBUUmVzdWx0ID0gdW5rbm93bj4oXG4gICAgICAgIGNvbXBvbmVudE9yVGVtcGxhdGVSZWY6IENvbXBvbmVudFR5cGVPclRlbXBsYXRlUmVmPFQ+LFxuICAgICAgICBjb25maWc/OiBUQ29uZmlnXG4gICAgKTogVGh5QWJzdHJhY3RPdmVybGF5UmVmPFQsIFRDb250YWluZXIsIFRSZXN1bHQ+IHtcbiAgICAgICAgY29uZmlnID0geyAuLi50aGlzLmRlZmF1bHRDb25maWcsIC4uLmNvbmZpZyB9O1xuICAgICAgICBpZiAoY29uZmlnLmlkICYmIHRoaXMuZ2V0QWJzdHJhY3RPdmVybGF5QnlJZChjb25maWcuaWQpKSB7XG4gICAgICAgICAgICB0aHJvdyBFcnJvcihgJHt0aGlzLm9wdGlvbnMubmFtZX0gd2l0aCBpZCAke2NvbmZpZy5pZH0gZXhpc3RzIGFscmVhZHkuIFRoZSAke3RoaXMub3B0aW9ucy5uYW1lfSBpZCBtdXN0IGJlIHVuaXF1ZS5gKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBvdmVybGF5Q29uZmlnOiBPdmVybGF5Q29uZmlnID0gdGhpcy5idWlsZE92ZXJsYXlDb25maWcoY29uZmlnKTtcbiAgICAgICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUob3ZlcmxheUNvbmZpZyk7XG5cbiAgICAgICAgY29uc3Qgb3ZlcmxheUNvbnRhaW5lciA9IHRoaXMuYXR0YWNoT3ZlcmxheUNvbnRhaW5lcihvdmVybGF5UmVmLCBjb25maWcpO1xuICAgICAgICBjb25zdCBhYnN0cmFjdE92ZXJsYXlSZWYgPSB0aGlzLmF0dGFjaE92ZXJsYXlDb250ZW50PFQsIFRSZXN1bHQ+KGNvbXBvbmVudE9yVGVtcGxhdGVSZWYsIG92ZXJsYXlDb250YWluZXIsIG92ZXJsYXlSZWYsIGNvbmZpZyk7XG5cbiAgICAgICAgdGhpcy5vcGVuZWRPdmVybGF5cy5wdXNoKGFic3RyYWN0T3ZlcmxheVJlZik7XG4gICAgICAgIGFic3RyYWN0T3ZlcmxheVJlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZU9wZW5lZE92ZXJsYXkoYWJzdHJhY3RPdmVybGF5UmVmKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX2FmdGVyT3BlbmVkLm5leHQoYWJzdHJhY3RPdmVybGF5UmVmKTtcblxuICAgICAgICByZXR1cm4gYWJzdHJhY3RPdmVybGF5UmVmO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOaJgOacieW8ueWHuuahhuWujOWFqOWFs+mXreWQjueahOWbnuiwg1xuICAgICAqIEByZXR1cm5zXG4gICAgICovXG4gICAgYWZ0ZXJBbGxDbG9zZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hZnRlckFsbENsb3NlZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmiZPlvIDlvLnlh7rmoYbkuYvlkI7nmoTlm57osINcbiAgICAgKiBAcmV0dXJuc1xuICAgICAqL1xuICAgIGFmdGVyT3BlbmVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fYWZ0ZXJPcGVuZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5YWz6Zet5by55Ye65qGG77yM6IulZm9yY2XkuLp0cnVl77yM5YiZY2FuQ2xvc2Xml6DmlYjvvIzlvLrliLblhbPpl61cbiAgICAgKiBAcGFyYW0gcmVzdWx0XG4gICAgICogQHBhcmFtIGZvcmNlXG4gICAgICovXG4gICAgY2xvc2U8VD4ocmVzdWx0PzogVCwgZm9yY2U/OiBib29sZWFuKSB7XG4gICAgICAgIGlmICh0aGlzLm9wZW5lZE92ZXJsYXlzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGxhc3RPdmVybGF5UmVmID0gdGhpcy5vcGVuZWRPdmVybGF5c1t0aGlzLm9wZW5lZE92ZXJsYXlzLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgaWYgKGxhc3RPdmVybGF5UmVmKSB7XG4gICAgICAgICAgICAgICAgbGFzdE92ZXJsYXlSZWYuY2xvc2UocmVzdWx0LCBmb3JjZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlhbPpl63miYDmnInmiZPlvIDnmoTlvLnlh7rmoYZcbiAgICAgKi9cbiAgICBjbG9zZUFsbCgpIHtcbiAgICAgICAgbGV0IGkgPSB0aGlzLm9wZW5lZE92ZXJsYXlzLmxlbmd0aDtcbiAgICAgICAgd2hpbGUgKGktLSkge1xuICAgICAgICAgICAgLy8g5LiN6ZyA6KaB5pON5L2cIG9wZW5lZE92ZXJsYXlzLCDlm6DkuLogY2xvc2Ug5Lya6Kem5Y+RIGFmdGVyQ2xvc2VkIOeahOiuoumYhVxuICAgICAgICAgICAgLy8g6Kem5Y+R6K6i6ZiF5ZCO5Lya6Ieq5Yqo5LuOIG9wZW5lZE92ZXJsYXlzIOS4reenu+mZpFxuICAgICAgICAgICAgdGhpcy5vcGVuZWRPdmVybGF5c1tpXS5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGlzcG9zZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbG9zZUFsbCgpO1xuICAgICAgICB0aGlzLl9hZnRlckFsbENsb3NlZC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl9hZnRlck9wZW5lZC5jb21wbGV0ZSgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './theme';
2
+ export * from './store';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29yZS90aGVtZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdGhlbWUnO1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yZSc7XG4iXX0=
@@ -0,0 +1,42 @@
1
+ import { Injectable, signal } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ThyThemeStore {
4
+ constructor() {
5
+ this.theme = signal("light" /* ThyTheme.light */);
6
+ }
7
+ setTheme(theme) {
8
+ this.theme.set(theme);
9
+ }
10
+ normalizeColor(color) {
11
+ if (typeof color === 'string') {
12
+ return color;
13
+ }
14
+ if (Array.isArray(color)) {
15
+ if (color.length === 1) {
16
+ return color[0];
17
+ }
18
+ if (color.length > 1) {
19
+ if (this.isDark()) {
20
+ return color[1];
21
+ }
22
+ else {
23
+ return color[0];
24
+ }
25
+ }
26
+ }
27
+ }
28
+ isDark() {
29
+ const theme = this.theme();
30
+ return (theme === "dark" /* ThyTheme.dark */ ||
31
+ (theme === "system" /* ThyTheme.system */ && window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches));
32
+ }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyThemeStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
34
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyThemeStore, providedIn: 'root' }); }
35
+ }
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyThemeStore, decorators: [{
37
+ type: Injectable,
38
+ args: [{
39
+ providedIn: 'root'
40
+ }]
41
+ }], ctorParameters: () => [] });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29yZS90aGVtZS9zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNbkQsTUFBTSxPQUFPLGFBQWE7SUFHdEI7UUFGUyxVQUFLLEdBQUcsTUFBTSw4QkFBMEIsQ0FBQztJQUVuQyxDQUFDO0lBRWhCLFFBQVEsQ0FBQyxLQUFlO1FBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBd0I7UUFDbkMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM1QixPQUFPLEtBQUssQ0FBQztRQUNqQixDQUFDO1FBQ0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkIsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNyQixPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNwQixDQUFDO1lBRUQsSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNuQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO29CQUNoQixPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDcEIsQ0FBQztxQkFBTSxDQUFDO29CQUNKLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNwQixDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTTtRQUNGLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixPQUFPLENBQ0gsS0FBSywrQkFBa0I7WUFDdkIsQ0FBQyxLQUFLLG1DQUFvQixJQUFJLE1BQU0sQ0FBQyxVQUFVLElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUNoSCxDQUFDO0lBQ04sQ0FBQzs4R0FsQ1EsYUFBYTtrSEFBYixhQUFhLGNBRlYsTUFBTTs7MkZBRVQsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeVRoZW1lIH0gZnJvbSAnLi90aGVtZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgVGh5VGhlbWVTdG9yZSB7XG4gICAgcmVhZG9ubHkgdGhlbWUgPSBzaWduYWw8VGh5VGhlbWU+KFRoeVRoZW1lLmxpZ2h0KTtcblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIHNldFRoZW1lKHRoZW1lOiBUaHlUaGVtZSkge1xuICAgICAgICB0aGlzLnRoZW1lLnNldCh0aGVtZSk7XG4gICAgfVxuXG4gICAgbm9ybWFsaXplQ29sb3IoY29sb3I6IHN0cmluZyB8IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHR5cGVvZiBjb2xvciA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiBjb2xvcjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjb2xvcikpIHtcbiAgICAgICAgICAgIGlmIChjb2xvci5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY29sb3JbMF07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChjb2xvci5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNEYXJrKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbG9yWzFdO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjb2xvclswXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc0RhcmsoKSB7XG4gICAgICAgIGNvbnN0IHRoZW1lID0gdGhpcy50aGVtZSgpO1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhlbWUgPT09IFRoeVRoZW1lLmRhcmsgfHxcbiAgICAgICAgICAgICh0aGVtZSA9PT0gVGh5VGhlbWUuc3lzdGVtICYmIHdpbmRvdy5tYXRjaE1lZGlhICYmIHdpbmRvdy5tYXRjaE1lZGlhKCcocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspJykubWF0Y2hlcylcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29yZS90aGVtZS90aGVtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVudW0gVGh5VGhlbWUge1xuICAgIGxpZ2h0ID0gJ2xpZ2h0JyxcbiAgICBkYXJrID0gJ2RhcmsnLFxuICAgIHN5c3RlbSA9ICdzeXN0ZW0nXG59XG4iXX0=
@@ -70,7 +70,7 @@ export class ThyDialogContainer extends ThyAbstractOverlayContainer {
70
70
  if (lastPosition) {
71
71
  const containerElement = this.elementRef.nativeElement;
72
72
  const transformOrigin = `${lastPosition.x - containerElement.offsetLeft}px ${lastPosition.y - containerElement.offsetTop}px 0px`;
73
- containerElement.style['transform-origin'] = transformOrigin;
73
+ containerElement.style.transformOrigin = transformOrigin;
74
74
  // 手动修改动画状态为从 void 到 enter, 开启动画
75
75
  }
76
76
  this.animationState = 'enter';
@@ -166,4 +166,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
166
166
  type: HostBinding,
167
167
  args: [`attr.id`]
168
168
  }] } });
169
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGlhbG9nL2RpYWxvZy1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsMkJBQTJCLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFakgsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3hDLE9BQU8sRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sRUFFTixTQUFTLEVBQ1QsU0FBUyxFQUNULE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBRWhFOztHQUVHO0FBd0JILE1BQU0sT0FBTyxrQkFBbUIsU0FBUSwyQkFBMkI7SUFpQ3ZELDRCQUE0QjtRQUNoQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsbUNBQW1DLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUE0QixDQUFDO1lBRXRGLG1FQUFtRTtZQUNuRSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUN0QyxnR0FBZ0c7Z0JBQ2hHLDRCQUE0QjtnQkFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7Z0JBQy9CLHdGQUF3RjtnQkFDeEYsb0ZBQW9GO2dCQUNwRixvQ0FBb0M7Z0JBRXBDLDhGQUE4RjtnQkFDOUYsdUVBQXVFO2dCQUN2RSw4RkFBOEY7Z0JBQzlGLGdFQUFnRTtnQkFDaEUsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQzVELENBQUM7WUFDTixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFRCw2Q0FBNkM7SUFDckMsU0FBUztRQUNiLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBRTlDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzNELENBQUM7UUFFRCw4RkFBOEY7UUFDOUYsMkZBQTJGO1FBQzNGLDRDQUE0QztRQUM1QyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO1FBQ2xELENBQUM7YUFBTSxDQUFDO1lBQ0osTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFFbEQseUZBQXlGO1lBQ3pGLDJFQUEyRTtZQUMzRSx3RkFBd0Y7WUFDeEYsd0ZBQXdGO1lBQ3hGLDREQUE0RDtZQUM1RCxJQUFJLGFBQWEsS0FBSyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7Z0JBQ2hFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNwQixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFTyxZQUFZO1FBQ2hCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQztRQUV6RCx5RkFBeUY7UUFDekYsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksSUFBSSxPQUFPLElBQUksT0FBTyxPQUFPLENBQUMsS0FBSyxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQzdFLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ25ELENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzdCLENBQUM7SUFDTCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3RCLElBQUksQ0FBQyxlQUFlLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDdkQsSUFBSSxZQUFZLEVBQUUsQ0FBQztnQkFDZixNQUFNLGdCQUFnQixHQUFnQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztnQkFDcEUsTUFBTSxlQUFlLEdBQUcsR0FBRyxZQUFZLENBQUMsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFVBQVUsTUFDbkUsWUFBWSxDQUFDLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxTQUN0QyxRQUFRLENBQUM7Z0JBQ1QsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsZUFBZSxDQUFDO2dCQUM3RCxnQ0FBZ0M7WUFDcEMsQ0FBQztZQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDO1lBQzlCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMxQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDtRQUNJLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFcEQsS0FBSyxDQUFDLDRCQUE0QixFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFqSG5ELGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNwQyxXQUFNLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3pCLG9CQUFlLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDN0MscUJBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUMsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QixhQUFRLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBV3JDLHFDQUFxQztRQUNyQyxtQkFBYyxHQUE4QixNQUFNLENBQUM7UUFFbkQsNkNBQTZDO1FBQzdDLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO1FBRTNELHlFQUF5RTtRQUN6RSxtQkFBYyxHQUFrQixJQUFJLENBQUM7UUFFckMsOEZBQThGO1FBQ3RGLHdDQUFtQyxHQUF1QixJQUFJLENBQUM7UUF1Rm5FLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUN2RCxNQUFNLENBQUMsQ0FBQyxLQUFxQixFQUFFLEVBQUU7WUFDN0IsT0FBTyxLQUFLLENBQUMsU0FBUyxLQUFLLE1BQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLE1BQU0sQ0FBQztRQUNsRSxDQUFDLENBQUMsQ0FDTCxDQUFDO1FBQ0YsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQ3ZELE1BQU0sQ0FBQyxDQUFDLEtBQXFCLEVBQUUsRUFBRTtZQUM3QixPQUFPLEtBQUssQ0FBQyxTQUFTLEtBQUssTUFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssTUFBTSxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxDQUNMLENBQUM7UUFDRixxRkFBcUY7UUFDckYsSUFBSSxDQUFDLHFCQUFxQjthQUNyQixJQUFJLENBQ0QsTUFBTSxDQUFDLENBQUMsS0FBcUIsRUFBRSxFQUFFO1lBQzdCLE9BQU8sS0FBSyxDQUFDLFNBQVMsS0FBSyxPQUFPLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxNQUFNLENBQUM7UUFDbkUsQ0FBQyxDQUFDLENBQ0w7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDcEYsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELHFFQUFxRTtJQUNyRSxlQUFlLENBQUMsS0FBcUI7UUFDakMsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNyQixDQUFDO2FBQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN4QixDQUFDO1FBQ0QsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsOERBQThEO0lBQzlELGdCQUFnQixDQUFDLEtBQXFCO1FBQ2xDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELFdBQVc7UUFDUCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDcEIsQ0FBQzs4R0EvSlEsa0JBQWtCO2tHQUFsQixrQkFBa0IsK21CQVloQixlQUFlLHFGQWpDaEIsK0NBQStDLDJEQW1CL0MsWUFBWSwrQkFBRSxlQUFlLDRHQWYzQixDQUFDLG1CQUFtQixDQUFDLGVBQWUsQ0FBQzs7MkZBaUJ4QyxrQkFBa0I7a0JBdkI5QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFFBQVEsRUFBRSwrQ0FBK0M7b0JBQ3pELGdHQUFnRztvQkFDaEcseUNBQXlDO29CQUN6QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsT0FBTztvQkFDaEQsVUFBVSxFQUFFLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDO29CQUNqRCxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLHNCQUFzQjt3QkFDN0IsUUFBUSxFQUFFLElBQUk7d0JBQ2QsWUFBWSxFQUFFLE1BQU07d0JBQ3BCLFdBQVcsRUFBRSxJQUFJO3dCQUNqQixhQUFhLEVBQUUsYUFBYTt3QkFDNUIsd0JBQXdCLEVBQUUsMENBQTBDO3dCQUNwRSxtQkFBbUIsRUFBRSxrQkFBa0I7d0JBQ3ZDLHlCQUF5QixFQUFFLGdDQUFnQzt3QkFDM0Qsb0JBQW9CLEVBQUUsZ0JBQWdCO3dCQUN0QywwQkFBMEIsRUFBRSwwQkFBMEI7d0JBQ3RELHlCQUF5QixFQUFFLHlCQUF5QjtxQkFDdkQ7b0JBQ0QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUM7aUJBQzNDO3dEQWNHLFlBQVk7c0JBRFgsU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUk1QyxFQUFFO3NCQURELFdBQVc7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlcUFuaW1GcmFtZSwgVGh5QWJzdHJhY3RPdmVybGF5Q29udGFpbmVyLCBUaHlDbGlja1Bvc2l0aW9uZXIsIFRoeVBvcnRhbE91dGxldCB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEFuaW1hdGlvbkV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBGb2N1c1RyYXAsIEZvY3VzVHJhcEZhY3RvcnkgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIE5nWm9uZSxcbiAgICBPbkRlc3Ryb3ksXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdDaGlsZCxcbiAgICBpbmplY3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IHRoeURpYWxvZ0FuaW1hdGlvbnMgfSBmcm9tICcuL2RpYWxvZy1hbmltYXRpb25zJztcbmltcG9ydCB7IFRoeURpYWxvZ0NvbmZpZyB9IGZyb20gJy4vZGlhbG9nLmNvbmZpZyc7XG5pbXBvcnQgeyBkaWFsb2dBYnN0cmFjdE92ZXJsYXlPcHRpb25zIH0gZnJvbSAnLi9kaWFsb2cub3B0aW9ucyc7XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktZGlhbG9nLWNvbnRhaW5lcicsXG4gICAgdGVtcGxhdGU6IGAgPG5nLXRlbXBsYXRlIHRoeVBvcnRhbE91dGxldD48L25nLXRlbXBsYXRlPiBgLFxuICAgIC8vIFVzaW5nIE9uUHVzaCBmb3IgZGlhbG9ncyBjYXVzZWQgc29tZSBzeW5jIGlzc3VlcywgZS5nLiBjdXN0b20gbmdNb2RlbCBjYW4ndCB0byBkZXRlY3QgY2hhbmdlc1xuICAgIC8vIERpc2FibGVkIHVudGlsIHdlIGNhbiB0cmFjayB0aGVtIGRvd24uXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIGFuaW1hdGlvbnM6IFt0aHlEaWFsb2dBbmltYXRpb25zLmRpYWxvZ0NvbnRhaW5lcl0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RoeS1kaWFsb2ctY29udGFpbmVyJyxcbiAgICAgICAgdGFiaW5kZXg6ICctMScsXG4gICAgICAgICdhcmlhLW1vZGFsJzogJ3RydWUnLFxuICAgICAgICAnW2F0dHIuaWRdJzogJ2lkJyxcbiAgICAgICAgJ1thdHRyLnJvbGVdJzogJ2NvbmZpZy5yb2xlJyxcbiAgICAgICAgJ1thdHRyLmFyaWEtbGFiZWxsZWRieV0nOiAnY29uZmlnLmFyaWFMYWJlbCA/IG51bGwgOiBhcmlhTGFiZWxsZWRCeScsXG4gICAgICAgICdbYXR0ci5hcmlhLWxhYmVsXSc6ICdjb25maWcuYXJpYUxhYmVsJyxcbiAgICAgICAgJ1thdHRyLmFyaWEtZGVzY3JpYmVkYnldJzogJ2NvbmZpZy5hcmlhRGVzY3JpYmVkQnkgfHwgbnVsbCcsXG4gICAgICAgICdbQGRpYWxvZ0NvbnRhaW5lcl0nOiAnYW5pbWF0aW9uU3RhdGUnLFxuICAgICAgICAnKEBkaWFsb2dDb250YWluZXIuc3RhcnQpJzogJ29uQW5pbWF0aW9uU3RhcnQoJGV2ZW50KScsXG4gICAgICAgICcoQGRpYWxvZ0NvbnRhaW5lci5kb25lKSc6ICdvbkFuaW1hdGlvbkRvbmUoJGV2ZW50KSdcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1BvcnRhbE1vZHVsZSwgVGh5UG9ydGFsT3V0bGV0XVxufSlcbmV4cG9ydCBjbGFzcyBUaHlEaWFsb2dDb250YWluZXIgZXh0ZW5kcyBUaHlBYnN0cmFjdE92ZXJsYXlDb250YWluZXIgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgICBwcml2YXRlIGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgICBjb25maWcgPSBpbmplY3QoVGh5RGlhbG9nQ29uZmlnKTtcbiAgICBwcml2YXRlIGNsaWNrUG9zaXRpb25lciA9IGluamVjdChUaHlDbGlja1Bvc2l0aW9uZXIpO1xuICAgIHByaXZhdGUgZm9jdXNUcmFwRmFjdG9yeSA9IGluamVjdChGb2N1c1RyYXBGYWN0b3J5KTtcbiAgICBwcml2YXRlIG5nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuICAgIHByaXZhdGUgcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcblxuICAgIGFuaW1hdGlvbk9wZW5pbmdEb25lOiBPYnNlcnZhYmxlPEFuaW1hdGlvbkV2ZW50PjtcbiAgICBhbmltYXRpb25DbG9zaW5nRG9uZTogT2JzZXJ2YWJsZTxBbmltYXRpb25FdmVudD47XG5cbiAgICBAVmlld0NoaWxkKFRoeVBvcnRhbE91dGxldCwgeyBzdGF0aWM6IHRydWUgfSlcbiAgICBwb3J0YWxPdXRsZXQ6IFRoeVBvcnRhbE91dGxldDtcblxuICAgIEBIb3N0QmluZGluZyhgYXR0ci5pZGApXG4gICAgaWQ6IHN0cmluZztcblxuICAgIC8qKiBTdGF0ZSBvZiB0aGUgZGlhbG9nIGFuaW1hdGlvbi4gKi9cbiAgICBhbmltYXRpb25TdGF0ZTogJ3ZvaWQnIHwgJ2VudGVyJyB8ICdleGl0JyA9ICd2b2lkJztcblxuICAgIC8qKiBFbWl0cyB3aGVuIGFuIGFuaW1hdGlvbiBzdGF0ZSBjaGFuZ2VzLiAqL1xuICAgIGFuaW1hdGlvblN0YXRlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8QW5pbWF0aW9uRXZlbnQ+KCk7XG5cbiAgICAvKiogSUQgb2YgdGhlIGVsZW1lbnQgdGhhdCBzaG91bGQgYmUgY29uc2lkZXJlZCBhcyB0aGUgZGlhbG9nJ3MgbGFiZWwuICovXG4gICAgYXJpYUxhYmVsbGVkQnk6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqIEVsZW1lbnQgdGhhdCB3YXMgZm9jdXNlZCBiZWZvcmUgdGhlIGRpYWxvZyB3YXMgb3BlbmVkLiBTYXZlIHRoaXMgdG8gcmVzdG9yZSB1cG9uIGNsb3NlLiAqL1xuICAgIHByaXZhdGUgZWxlbWVudEZvY3VzZWRCZWZvcmVEaWFsb2dXYXNPcGVuZWQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKiogVGhlIGNsYXNzIHRoYXQgdHJhcHMgYW5kIG1hbmFnZXMgZm9jdXMgd2l0aGluIHRoZSBkaWFsb2cuICovXG4gICAgcHJpdmF0ZSBmb2N1c1RyYXA6IEZvY3VzVHJhcDtcblxuICAgIHByaXZhdGUgc2F2ZVByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCgpIHtcbiAgICAgICAgaWYgKHRoaXMuZG9jdW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudEZvY3VzZWRCZWZvcmVEaWFsb2dXYXNPcGVuZWQgPSB0aGlzLmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgICAgIC8vIE5vdGUgdGhhdCB0aGVyZSBpcyBubyBmb2N1cyBtZXRob2Qgd2hlbiByZW5kZXJpbmcgb24gdGhlIHNlcnZlci5cbiAgICAgICAgICAgIGlmICh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cykge1xuICAgICAgICAgICAgICAgIC8vIE5vdGU6IHRoaXMgaXMgYmVpbmcgcnVuIG91dHNpZGUgb2YgdGhlIEFuZ3VsYXIgem9uZSBiZWNhdXNlIGBlbGVtZW50LmZvY3VzKClgIGRvZXNuJ3QgcmVxdWlyZVxuICAgICAgICAgICAgICAgIC8vIHJ1bm5pbmcgY2hhbmdlIGRldGVjdGlvbi5cbiAgICAgICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PlxuICAgICAgICAgICAgICAgICAgICAvLyBNb3ZlIGZvY3VzIG9udG8gdGhlIGRpYWxvZyBpbW1lZGlhdGVseSBpbiBvcmRlciB0byBwcmV2ZW50IHRoZSB1c2VyIGZyb20gYWNjaWRlbnRhbGx5XG4gICAgICAgICAgICAgICAgICAgIC8vIG9wZW5pbmcgbXVsdGlwbGUgZGlhbG9ncyBhdCB0aGUgc2FtZSB0aW1lLiBOZWVkcyB0byBiZSBhc3luYywgYmVjYXVzZSB0aGUgZWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAvLyBtYXkgbm90IGJlIGZvY3VzYWJsZSBpbW1lZGlhdGVseS5cblxuICAgICAgICAgICAgICAgICAgICAvLyBOb3RlOiBgZWxlbWVudC5mb2N1cygpYCBjYXVzZXMgcmUtbGF5b3V0IGFuZCB0aGlzIG1heSBsZWFkIHRvIGZyYW1lIGRyb3Agb24gc2xvd2VyIGRldmljZXMuXG4gICAgICAgICAgICAgICAgICAgIC8vIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL3BhdWxpcmlzaC81ZDUyZmIwODFiMzU3MGM4MWUzYSNzZXR0aW5nLWZvY3VzXG4gICAgICAgICAgICAgICAgICAgIC8vIGBzZXRUaW1lb3V0YCBpcyBhIG1hY3JvdGFzayBhbmQgbWFjcm90YXNrcyBhcmUgZXhlY3V0ZWQgd2l0aGluIHRoZSBjdXJyZW50IHJlbmRlcmluZyBmcmFtZS5cbiAgICAgICAgICAgICAgICAgICAgLy8gQW5pbWF0aW9uIHRhc2tzIGFyZSBleGVjdXRlZCB3aXRoaW4gdGhlIG5leHQgcmVuZGVyaW5nIGZyYW1lLlxuICAgICAgICAgICAgICAgICAgICByZXFBbmltRnJhbWUoKCkgPT4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKSlcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIE1vdmVzIHRoZSBmb2N1cyBpbnNpZGUgdGhlIGZvY3VzIHRyYXAuICovXG4gICAgcHJpdmF0ZSB0cmFwRm9jdXMoKSB7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgICAgICBpZiAoIXRoaXMuZm9jdXNUcmFwKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzVHJhcCA9IHRoaXMuZm9jdXNUcmFwRmFjdG9yeS5jcmVhdGUoZWxlbWVudCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiB3ZSB3ZXJlIHRvIGF0dGVtcHQgdG8gZm9jdXMgaW1tZWRpYXRlbHksIHRoZW4gdGhlIGNvbnRlbnQgb2YgdGhlIGRpYWxvZyB3b3VsZCBub3QgeWV0IGJlXG4gICAgICAgIC8vIHJlYWR5IGluIGluc3RhbmNlcyB3aGVyZSBjaGFuZ2UgZGV0ZWN0aW9uIGhhcyB0byBydW4gZmlyc3QuIFRvIGRlYWwgd2l0aCB0aGlzLCB3ZSBzaW1wbHlcbiAgICAgICAgLy8gd2FpdCBmb3IgdGhlIG1pY3JvdGFzayBxdWV1ZSB0byBiZSBlbXB0eS5cbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLmF1dG9Gb2N1cykge1xuICAgICAgICAgICAgdGhpcy5mb2N1c1RyYXAuZm9jdXNJbml0aWFsRWxlbWVudFdoZW5SZWFkeSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IHRoaXMuZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcblxuICAgICAgICAgICAgLy8gT3RoZXJ3aXNlIGVuc3VyZSB0aGF0IGZvY3VzIGlzIG9uIHRoZSBkaWFsb2cgY29udGFpbmVyLiBJdCdzIHBvc3NpYmxlIHRoYXQgYSBkaWZmZXJlbnRcbiAgICAgICAgICAgIC8vIGNvbXBvbmVudCB0cmllZCB0byBtb3ZlIGZvY3VzIHdoaWxlIHRoZSBvcGVuIGFuaW1hdGlvbiB3YXMgcnVubmluZy4gU2VlOlxuICAgICAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9pc3N1ZXMvMTYyMTUuIE5vdGUgdGhhdCB3ZSBvbmx5IHdhbnQgdG8gZG8gdGhpc1xuICAgICAgICAgICAgLy8gaWYgdGhlIGZvY3VzIGlzbid0IGluc2lkZSB0aGUgZGlhbG9nIGFscmVhZHksIGJlY2F1c2UgaXQncyBwb3NzaWJsZSB0aGF0IHRoZSBjb25zdW1lclxuICAgICAgICAgICAgLy8gdHVybmVkIG9mZiBgYXV0b0ZvY3VzYCBpbiBvcmRlciB0byBtb3ZlIGZvY3VzIHRoZW1zZWx2ZXMuXG4gICAgICAgICAgICBpZiAoYWN0aXZlRWxlbWVudCAhPT0gZWxlbWVudCAmJiAhZWxlbWVudC5jb250YWlucyhhY3RpdmVFbGVtZW50KSkge1xuICAgICAgICAgICAgICAgIGVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcmVzdG9yZUZvY3VzKCkge1xuICAgICAgICBjb25zdCB0b0ZvY3VzID0gdGhpcy5lbGVtZW50Rm9jdXNlZEJlZm9yZURpYWxvZ1dhc09wZW5lZDtcblxuICAgICAgICAvLyBXZSBuZWVkIHRoZSBleHRyYSBjaGVjaywgYmVjYXVzZSBJRSBjYW4gc2V0IHRoZSBgYWN0aXZlRWxlbWVudGAgdG8gbnVsbCBpbiBzb21lIGNhc2VzLlxuICAgICAgICBpZiAodGhpcy5jb25maWcucmVzdG9yZUZvY3VzICYmIHRvRm9jdXMgJiYgdHlwZW9mIHRvRm9jdXMuZm9jdXMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRvRm9jdXMuZm9jdXModGhpcy5jb25maWcucmVzdG9yZUZvY3VzT3B0aW9ucyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5mb2N1c1RyYXApIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNUcmFwLmRlc3Ryb3koKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc2V0VHJhbnNmb3JtT3JpZ2luKCkge1xuICAgICAgICB0aGlzLmNsaWNrUG9zaXRpb25lci5ydW5UYXNrVXNlTGFzdFBvc2l0aW9uKGxhc3RQb3NpdGlvbiA9PiB7XG4gICAgICAgICAgICBpZiAobGFzdFBvc2l0aW9uKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY29udGFpbmVyRWxlbWVudDogSFRNTEVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgICAgICAgICBjb25zdCB0cmFuc2Zvcm1PcmlnaW4gPSBgJHtsYXN0UG9zaXRpb24ueCAtIGNvbnRhaW5lckVsZW1lbnQub2Zmc2V0TGVmdH1weCAke1xuICAgICAgICAgICAgICAgICAgICBsYXN0UG9zaXRpb24ueSAtIGNvbnRhaW5lckVsZW1lbnQub2Zmc2V0VG9wXG4gICAgICAgICAgICAgICAgfXB4IDBweGA7XG4gICAgICAgICAgICAgICAgY29udGFpbmVyRWxlbWVudC5zdHlsZVsndHJhbnNmb3JtLW9yaWdpbiddID0gdHJhbnNmb3JtT3JpZ2luO1xuICAgICAgICAgICAgICAgIC8vIOaJi+WKqOS/ruaUueWKqOeUu+eKtuaAgeS4uuS7jiB2b2lkIOWIsCBlbnRlciwg5byA5ZCv5Yqo55S7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmFuaW1hdGlvblN0YXRlID0gJ2VudGVyJztcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBjb25zdCBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICAgICAgc3VwZXIoZGlhbG9nQWJzdHJhY3RPdmVybGF5T3B0aW9ucywgY2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgICAgICB0aGlzLmFuaW1hdGlvbk9wZW5pbmdEb25lID0gdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWQucGlwZShcbiAgICAgICAgICAgIGZpbHRlcigoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50LnBoYXNlTmFtZSA9PT0gJ2RvbmUnICYmIGV2ZW50LnRvU3RhdGUgPT09ICd2b2lkJztcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuYW5pbWF0aW9uQ2xvc2luZ0RvbmUgPSB0aGlzLmFuaW1hdGlvblN0YXRlQ2hhbmdlZC5waXBlKFxuICAgICAgICAgICAgZmlsdGVyKChldmVudDogQW5pbWF0aW9uRXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZXZlbnQucGhhc2VOYW1lID09PSAnZG9uZScgJiYgZXZlbnQudG9TdGF0ZSA9PT0gJ2V4aXQnO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgLyogUHJvaGliaXQgb3BlcmF0aW9ucyBvbiBlbGVtZW50cyBpbnNpZGUgdGhlIGNvbnRhaW5lciBkdXJpbmcgYW5pbWF0aW9uIGV4ZWN1dGlvbiAqL1xuICAgICAgICB0aGlzLmFuaW1hdGlvblN0YXRlQ2hhbmdlZFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKChldmVudDogQW5pbWF0aW9uRXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50LnBoYXNlTmFtZSA9PT0gJ3N0YXJ0JyAmJiBldmVudC50b1N0YXRlID09PSAnZXhpdCc7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdwb2ludGVyLWV2ZW50cycsICdub25lJyk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBiZWZvcmVBdHRhY2hQb3J0YWwoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0VHJhbnNmb3JtT3JpZ2luKCk7XG4gICAgICAgIHRoaXMuc2F2ZVByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCgpO1xuICAgIH1cblxuICAgIC8qKiBDYWxsYmFjaywgaW52b2tlZCB3aGVuZXZlciBhbiBhbmltYXRpb24gb24gdGhlIGhvc3QgY29tcGxldGVzLiAqL1xuICAgIG9uQW5pbWF0aW9uRG9uZShldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcbiAgICAgICAgaWYgKGV2ZW50LnRvU3RhdGUgPT09ICd2b2lkJykge1xuICAgICAgICAgICAgdGhpcy50cmFwRm9jdXMoKTtcbiAgICAgICAgfSBlbHNlIGlmIChldmVudC50b1N0YXRlID09PSAnZXhpdCcpIHtcbiAgICAgICAgICAgIHRoaXMucmVzdG9yZUZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWQuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgLyoqIENhbGxiYWNrLCBpbnZva2VkIHdoZW4gYW4gYW5pbWF0aW9uIG9uIHRoZSBob3N0IHN0YXJ0cy4gKi9cbiAgICBvbkFuaW1hdGlvblN0YXJ0KGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xuICAgICAgICB0aGlzLmFuaW1hdGlvblN0YXRlQ2hhbmdlZC5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIuZGVzdHJveSgpO1xuICAgIH1cbn1cbiJdfQ==
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGlhbG9nL2RpYWxvZy1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsMkJBQTJCLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFakgsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3hDLE9BQU8sRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sRUFFTixTQUFTLEVBQ1QsU0FBUyxFQUNULE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBRWhFOztHQUVHO0FBd0JILE1BQU0sT0FBTyxrQkFBbUIsU0FBUSwyQkFBMkI7SUFpQ3ZELDRCQUE0QjtRQUNoQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsbUNBQW1DLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUE0QixDQUFDO1lBRXRGLG1FQUFtRTtZQUNuRSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxD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b0JBQ1AsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFLCtDQUErQztvQkFDekQsZ0dBQWdHO29CQUNoRyx5Q0FBeUM7b0JBQ3pDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxPQUFPO29CQUNoRCxVQUFVLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUM7b0JBQ2pELElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsc0JBQXNCO3dCQUM3QixRQUFRLEVBQUUsSUFBSTt3QkFDZCxZQUFZLEVBQUUsTUFBTTt3QkFDcEIsV0FBVyxFQUFFLElBQUk7d0JBQ2pCLGFBQWEsRUFBRSxhQUFhO3dCQUM1Qix3QkFBd0IsRUFBRSwwQ0FBMEM7d0JBQ3BFLG1CQUFtQixFQUFFLGtCQUFrQjt3QkFDdkMseUJBQXlCLEVBQUUsZ0NBQWdDO3dCQUMzRCxvQkFBb0IsRUFBRSxnQkFBZ0I7d0JBQ3RDLDBCQUEwQixFQUFFLDBCQUEwQjt3QkFDdEQseUJBQXlCLEVBQUUseUJBQXlCO3FCQUN2RDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQztpQkFDM0M7d0RBY0csWUFBWTtzQkFEWCxTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTVDLEVBQUU7c0JBREQsV0FBVzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVxQW5pbUZyYW1lLCBUaHlBYnN0cmFjdE92ZXJsYXlDb250YWluZXIsIFRoeUNsaWNrUG9zaXRpb25lciwgVGh5UG9ydGFsT3V0bGV0IH0gZnJvbSAnbmd4LXRldGh5cy9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQW5pbWF0aW9uRXZlbnQgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IEZvY3VzVHJhcCwgRm9jdXNUcmFwRmFjdG9yeSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgTmdab25lLFxuICAgIE9uRGVzdHJveSxcbiAgICBSZW5kZXJlcjIsXG4gICAgVmlld0NoaWxkLFxuICAgIGluamVjdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgdGh5RGlhbG9nQW5pbWF0aW9ucyB9IGZyb20gJy4vZGlhbG9nLWFuaW1hdGlvbnMnO1xuaW1wb3J0IHsgVGh5RGlhbG9nQ29uZmlnIH0gZnJvbSAnLi9kaWFsb2cuY29uZmlnJztcbmltcG9ydCB7IGRpYWxvZ0Fic3RyYWN0T3ZlcmxheU9wdGlvbnMgfSBmcm9tICcuL2RpYWxvZy5vcHRpb25zJztcblxuLyoqXG4gKiBAcHJpdmF0ZVxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoeS1kaWFsb2ctY29udGFpbmVyJyxcbiAgICB0ZW1wbGF0ZTogYCA8bmctdGVtcGxhdGUgdGh5UG9ydGFsT3V0bGV0PjwvbmctdGVtcGxhdGU+IGAsXG4gICAgLy8gVXNpbmcgT25QdXNoIGZvciBkaWFsb2dzIGNhdXNlZCBzb21lIHN5bmMgaXNzdWVzLCBlLmcuIGN1c3RvbSBuZ01vZGVsIGNhbid0IHRvIGRldGVjdCBjaGFuZ2VzXG4gICAgLy8gRGlzYWJsZWQgdW50aWwgd2UgY2FuIHRyYWNrIHRoZW0gZG93bi5cbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gICAgYW5pbWF0aW9uczogW3RoeURpYWxvZ0FuaW1hdGlvbnMuZGlhbG9nQ29udGFpbmVyXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LWRpYWxvZy1jb250YWluZXInLFxuICAgICAgICB0YWJpbmRleDogJy0xJyxcbiAgICAgICAgJ2FyaWEtbW9kYWwnOiAndHJ1ZScsXG4gICAgICAgICdbYXR0ci5pZF0nOiAnaWQnLFxuICAgICAgICAnW2F0dHIucm9sZV0nOiAnY29uZmlnLnJvbGUnLFxuICAgICAgICAnW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XSc6ICdjb25maWcuYXJpYUxhYmVsID8gbnVsbCA6IGFyaWFMYWJlbGxlZEJ5JyxcbiAgICAgICAgJ1thdHRyLmFyaWEtbGFiZWxdJzogJ2NvbmZpZy5hcmlhTGFiZWwnLFxuICAgICAgICAnW2F0dHIuYXJpYS1kZXNjcmliZWRieV0nOiAnY29uZmlnLmFyaWFEZXNjcmliZWRCeSB8fCBudWxsJyxcbiAgICAgICAgJ1tAZGlhbG9nQ29udGFpbmVyXSc6ICdhbmltYXRpb25TdGF0ZScsXG4gICAgICAgICcoQGRpYWxvZ0NvbnRhaW5lci5zdGFydCknOiAnb25BbmltYXRpb25TdGFydCgkZXZlbnQpJyxcbiAgICAgICAgJyhAZGlhbG9nQ29udGFpbmVyLmRvbmUpJzogJ29uQW5pbWF0aW9uRG9uZSgkZXZlbnQpJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbUG9ydGFsTW9kdWxlLCBUaHlQb3J0YWxPdXRsZXRdXG59KVxuZXhwb3J0IGNsYXNzIFRoeURpYWxvZ0NvbnRhaW5lciBleHRlbmRzIFRoeUFic3RyYWN0T3ZlcmxheUNvbnRhaW5lciBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICAgIHByaXZhdGUgZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuICAgIGNvbmZpZyA9IGluamVjdChUaHlEaWFsb2dDb25maWcpO1xuICAgIHByaXZhdGUgY2xpY2tQb3NpdGlvbmVyID0gaW5qZWN0KFRoeUNsaWNrUG9zaXRpb25lcik7XG4gICAgcHJpdmF0ZSBmb2N1c1RyYXBGYWN0b3J5ID0gaW5qZWN0KEZvY3VzVHJhcEZhY3RvcnkpO1xuICAgIHByaXZhdGUgbmdab25lID0gaW5qZWN0KE5nWm9uZSk7XG4gICAgcHJpdmF0ZSByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuXG4gICAgYW5pbWF0aW9uT3BlbmluZ0RvbmU6IE9ic2VydmFibGU8QW5pbWF0aW9uRXZlbnQ+O1xuICAgIGFuaW1hdGlvbkNsb3NpbmdEb25lOiBPYnNlcnZhYmxlPEFuaW1hdGlvbkV2ZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVGh5UG9ydGFsT3V0bGV0LCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIHBvcnRhbE91dGxldDogVGh5UG9ydGFsT3V0bGV0O1xuXG4gICAgQEhvc3RCaW5kaW5nKGBhdHRyLmlkYClcbiAgICBpZDogc3RyaW5nO1xuXG4gICAgLyoqIFN0YXRlIG9mIHRoZSBkaWFsb2cgYW5pbWF0aW9uLiAqL1xuICAgIGFuaW1hdGlvblN0YXRlOiAndm9pZCcgfCAnZW50ZXInIHwgJ2V4aXQnID0gJ3ZvaWQnO1xuXG4gICAgLyoqIEVtaXRzIHdoZW4gYW4gYW5pbWF0aW9uIHN0YXRlIGNoYW5nZXMuICovXG4gICAgYW5pbWF0aW9uU3RhdGVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxBbmltYXRpb25FdmVudD4oKTtcblxuICAgIC8qKiBJRCBvZiB0aGUgZWxlbWVudCB0aGF0IHNob3VsZCBiZSBjb25zaWRlcmVkIGFzIHRoZSBkaWFsb2cncyBsYWJlbC4gKi9cbiAgICBhcmlhTGFiZWxsZWRCeTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKiogRWxlbWVudCB0aGF0IHdhcyBmb2N1c2VkIGJlZm9yZSB0aGUgZGlhbG9nIHdhcyBvcGVuZWQuIFNhdmUgdGhpcyB0byByZXN0b3JlIHVwb24gY2xvc2UuICovXG4gICAgcHJpdmF0ZSBlbGVtZW50Rm9jdXNlZEJlZm9yZURpYWxvZ1dhc09wZW5lZDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKiBUaGUgY2xhc3MgdGhhdCB0cmFwcyBhbmQgbWFuYWdlcyBmb2N1cyB3aXRoaW4gdGhlIGRpYWxvZy4gKi9cbiAgICBwcml2YXRlIGZvY3VzVHJhcDogRm9jdXNUcmFwO1xuXG4gICAgcHJpdmF0ZSBzYXZlUHJldmlvdXNseUZvY3VzZWRFbGVtZW50KCkge1xuICAgICAgICBpZiAodGhpcy5kb2N1bWVudCkge1xuICAgICAgICAgICAgdGhpcy5lbGVtZW50Rm9jdXNlZEJlZm9yZURpYWxvZ1dhc09wZW5lZCA9IHRoaXMuZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcblxuICAgICAgICAgICAgLy8gTm90ZSB0aGF0IHRoZXJlIGlzIG5vIGZvY3VzIG1ldGhvZCB3aGVuIHJlbmRlcmluZyBvbiB0aGUgc2VydmVyLlxuICAgICAgICAgICAgaWYgKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKSB7XG4gICAgICAgICAgICAgICAgLy8gTm90ZTogdGhpcyBpcyBiZWluZyBydW4gb3V0c2lkZSBvZiB0aGUgQW5ndWxhciB6b25lIGJlY2F1c2UgYGVsZW1lbnQuZm9jdXMoKWAgZG9lc24ndCByZXF1aXJlXG4gICAgICAgICAgICAgICAgLy8gcnVubmluZyBjaGFuZ2UgZGV0ZWN0aW9uLlxuICAgICAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+XG4gICAgICAgICAgICAgICAgICAgIC8vIE1vdmUgZm9jdXMgb250byB0aGUgZGlhbG9nIGltbWVkaWF0ZWx5IGluIG9yZGVyIHRvIHByZXZlbnQgdGhlIHVzZXIgZnJvbSBhY2NpZGVudGFsbHlcbiAgICAgICAgICAgICAgICAgICAgLy8gb3BlbmluZyBtdWx0aXBsZSBkaWFsb2dzIGF0IHRoZSBzYW1lIHRpbWUuIE5lZWRzIHRvIGJlIGFzeW5jLCBiZWNhdXNlIHRoZSBlbGVtZW50XG4gICAgICAgICAgICAgICAgICAgIC8vIG1heSBub3QgYmUgZm9jdXNhYmxlIGltbWVkaWF0ZWx5LlxuXG4gICAgICAgICAgICAgICAgICAgIC8vIE5vdGU6IGBlbGVtZW50LmZvY3VzKClgIGNhdXNlcyByZS1sYXlvdXQgYW5kIHRoaXMgbWF5IGxlYWQgdG8gZnJhbWUgZHJvcCBvbiBzbG93ZXIgZGV2aWNlcy5cbiAgICAgICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vcGF1bGlyaXNoLzVkNTJmYjA4MWIzNTcwYzgxZTNhI3NldHRpbmctZm9jdXNcbiAgICAgICAgICAgICAgICAgICAgLy8gYHNldFRpbWVvdXRgIGlzIGEgbWFjcm90YXNrIGFuZCBtYWNyb3Rhc2tzIGFyZSBleGVjdXRlZCB3aXRoaW4gdGhlIGN1cnJlbnQgcmVuZGVyaW5nIGZyYW1lLlxuICAgICAgICAgICAgICAgICAgICAvLyBBbmltYXRpb24gdGFza3MgYXJlIGV4ZWN1dGVkIHdpdGhpbiB0aGUgbmV4dCByZW5kZXJpbmcgZnJhbWUuXG4gICAgICAgICAgICAgICAgICAgIHJlcUFuaW1GcmFtZSgoKSA9PiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogTW92ZXMgdGhlIGZvY3VzIGluc2lkZSB0aGUgZm9jdXMgdHJhcC4gKi9cbiAgICBwcml2YXRlIHRyYXBGb2N1cygpIHtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIGlmICghdGhpcy5mb2N1c1RyYXApIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNUcmFwID0gdGhpcy5mb2N1c1RyYXBGYWN0b3J5LmNyZWF0ZShlbGVtZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIHdlIHdlcmUgdG8gYXR0ZW1wdCB0byBmb2N1cyBpbW1lZGlhdGVseSwgdGhlbiB0aGUgY29udGVudCBvZiB0aGUgZGlhbG9nIHdvdWxkIG5vdCB5ZXQgYmVcbiAgICAgICAgLy8gcmVhZHkgaW4gaW5zdGFuY2VzIHdoZXJlIGNoYW5nZSBkZXRlY3Rpb24gaGFzIHRvIHJ1biBmaXJzdC4gVG8gZGVhbCB3aXRoIHRoaXMsIHdlIHNpbXBseVxuICAgICAgICAvLyB3YWl0IGZvciB0aGUgbWljcm90YXNrIHF1ZXVlIHRvIGJlIGVtcHR5LlxuICAgICAgICBpZiAodGhpcy5jb25maWcuYXV0b0ZvY3VzKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzVHJhcC5mb2N1c0luaXRpYWxFbGVtZW50V2hlblJlYWR5KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBhY3RpdmVFbGVtZW50ID0gdGhpcy5kb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuXG4gICAgICAgICAgICAvLyBPdGhlcndpc2UgZW5zdXJlIHRoYXQgZm9jdXMgaXMgb24gdGhlIGRpYWxvZyBjb250YWluZXIuIEl0J3MgcG9zc2libGUgdGhhdCBhIGRpZmZlcmVudFxuICAgICAgICAgICAgLy8gY29tcG9uZW50IHRyaWVkIHRvIG1vdmUgZm9jdXMgd2hpbGUgdGhlIG9wZW4gYW5pbWF0aW9uIHdhcyBydW5uaW5nLiBTZWU6XG4gICAgICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2lzc3Vlcy8xNjIxNS4gTm90ZSB0aGF0IHdlIG9ubHkgd2FudCB0byBkbyB0aGlzXG4gICAgICAgICAgICAvLyBpZiB0aGUgZm9jdXMgaXNuJ3QgaW5zaWRlIHRoZSBkaWFsb2cgYWxyZWFkeSwgYmVjYXVzZSBpdCdzIHBvc3NpYmxlIHRoYXQgdGhlIGNvbnN1bWVyXG4gICAgICAgICAgICAvLyB0dXJuZWQgb2ZmIGBhdXRvRm9jdXNgIGluIG9yZGVyIHRvIG1vdmUgZm9jdXMgdGhlbXNlbHZlcy5cbiAgICAgICAgICAgIGlmIChhY3RpdmVFbGVtZW50ICE9PSBlbGVtZW50ICYmICFlbGVtZW50LmNvbnRhaW5zKGFjdGl2ZUVsZW1lbnQpKSB7XG4gICAgICAgICAgICAgICAgZWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZXN0b3JlRm9jdXMoKSB7XG4gICAgICAgIGNvbnN0IHRvRm9jdXMgPSB0aGlzLmVsZW1lbnRGb2N1c2VkQmVmb3JlRGlhbG9nV2FzT3BlbmVkO1xuXG4gICAgICAgIC8vIFdlIG5lZWQgdGhlIGV4dHJhIGNoZWNrLCBiZWNhdXNlIElFIGNhbiBzZXQgdGhlIGBhY3RpdmVFbGVtZW50YCB0byBudWxsIGluIHNvbWUgY2FzZXMuXG4gICAgICAgIGlmICh0aGlzLmNvbmZpZy5yZXN0b3JlRm9jdXMgJiYgdG9Gb2N1cyAmJiB0eXBlb2YgdG9Gb2N1cy5mb2N1cyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgdG9Gb2N1cy5mb2N1cyh0aGlzLmNvbmZpZy5yZXN0b3JlRm9jdXNPcHRpb25zKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmZvY3VzVHJhcCkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c1RyYXAuZGVzdHJveSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRUcmFuc2Zvcm1PcmlnaW4oKSB7XG4gICAgICAgIHRoaXMuY2xpY2tQb3NpdGlvbmVyLnJ1blRhc2tVc2VMYXN0UG9zaXRpb24obGFzdFBvc2l0aW9uID0+IHtcbiAgICAgICAgICAgIGlmIChsYXN0UG9zaXRpb24pIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb250YWluZXJFbGVtZW50OiBIVE1MRWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybU9yaWdpbiA9IGAke2xhc3RQb3NpdGlvbi54IC0gY29udGFpbmVyRWxlbWVudC5vZmZzZXRMZWZ0fXB4ICR7XG4gICAgICAgICAgICAgICAgICAgIGxhc3RQb3NpdGlvbi55IC0gY29udGFpbmVyRWxlbWVudC5vZmZzZXRUb3BcbiAgICAgICAgICAgICAgICB9cHggMHB4YDtcbiAgICAgICAgICAgICAgICBjb250YWluZXJFbGVtZW50LnN0eWxlLnRyYW5zZm9ybU9yaWdpbiA9IHRyYW5zZm9ybU9yaWdpbjtcbiAgICAgICAgICAgICAgICAvLyDmiYvliqjkv67mlLnliqjnlLvnirbmgIHkuLrku44gdm9pZCDliLAgZW50ZXIsIOW8gOWQr+WKqOeUu1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZSA9ICdlbnRlcic7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgY29uc3QgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gICAgICAgIHN1cGVyKGRpYWxvZ0Fic3RyYWN0T3ZlcmxheU9wdGlvbnMsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICAgICAgdGhpcy5hbmltYXRpb25PcGVuaW5nRG9uZSA9IHRoaXMuYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKGV2ZW50OiBBbmltYXRpb25FdmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBldmVudC5waGFzZU5hbWUgPT09ICdkb25lJyAmJiBldmVudC50b1N0YXRlID09PSAndm9pZCc7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICB0aGlzLmFuaW1hdGlvbkNsb3NpbmdEb25lID0gdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWQucGlwZShcbiAgICAgICAgICAgIGZpbHRlcigoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50LnBoYXNlTmFtZSA9PT0gJ2RvbmUnICYmIGV2ZW50LnRvU3RhdGUgPT09ICdleGl0JztcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICAgIC8qIFByb2hpYml0IG9wZXJhdGlvbnMgb24gZWxlbWVudHMgaW5zaWRlIHRoZSBjb250YWluZXIgZHVyaW5nIGFuaW1hdGlvbiBleGVjdXRpb24gKi9cbiAgICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGZpbHRlcigoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBldmVudC5waGFzZU5hbWUgPT09ICdzdGFydCcgJiYgZXZlbnQudG9TdGF0ZSA9PT0gJ2V4aXQnO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAncG9pbnRlci1ldmVudHMnLCAnbm9uZScpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgYmVmb3JlQXR0YWNoUG9ydGFsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldFRyYW5zZm9ybU9yaWdpbigpO1xuICAgICAgICB0aGlzLnNhdmVQcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQoKTtcbiAgICB9XG5cbiAgICAvKiogQ2FsbGJhY2ssIGludm9rZWQgd2hlbmV2ZXIgYW4gYW5pbWF0aW9uIG9uIHRoZSBob3N0IGNvbXBsZXRlcy4gKi9cbiAgICBvbkFuaW1hdGlvbkRvbmUoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudC50b1N0YXRlID09PSAndm9pZCcpIHtcbiAgICAgICAgICAgIHRoaXMudHJhcEZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoZXZlbnQudG9TdGF0ZSA9PT0gJ2V4aXQnKSB7XG4gICAgICAgICAgICB0aGlzLnJlc3RvcmVGb2N1cygpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLmVtaXQoZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKiBDYWxsYmFjaywgaW52b2tlZCB3aGVuIGFuIGFuaW1hdGlvbiBvbiB0aGUgaG9zdCBzdGFydHMuICovXG4gICAgb25BbmltYXRpb25TdGFydChldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcbiAgICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWQuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHN1cGVyLmRlc3Ryb3koKTtcbiAgICB9XG59XG4iXX0=
@@ -5,6 +5,7 @@ import * as i0 from "@angular/core";
5
5
  * 自定义拖拽时可经过,拖拽结束时可放置的区域内容
6
6
  * @name thy-drag-content,[thyDragContent]
7
7
  * @order 25
8
+ * @deprecated please use @angular/cdk/drag-drop
8
9
  */
9
10
  export class ThyDragContentDirective {
10
11
  constructor() {
@@ -28,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
28
29
  type: HostBinding,
29
30
  args: ['class.thy-drag-content']
30
31
  }] } });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1jb250ZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kcmFnLWRyb3AvZHJhZy1jb250ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUVwRDs7OztHQUlHO0FBS0gsTUFBTSxPQUFPLHVCQUF1QjtJQUtoQztRQUpBLFlBQU8sR0FBRyxNQUFNLENBQTBCLFVBQVUsQ0FBQyxDQUFDO1FBRWYsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFHdkQsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFFLENBQUM7UUFFM0QsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNQLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELENBQUM7SUFDTCxDQUFDOzhHQVhRLHVCQUF1QjtrR0FBdkIsdUJBQXVCOzsyRkFBdkIsdUJBQXVCO2tCQUpuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxtQ0FBbUM7b0JBQzdDLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjt3REFJMEMsWUFBWTtzQkFBbEQsV0FBVzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeURyYWdEaXJlY3RpdmUgfSBmcm9tICcuL2RyYWcuZGlyZWN0aXZlJztcblxuLyoqXG4gKiDoh6rlrprkuYnmi5bmi73ml7blj6/nu4/ov4fvvIzmi5bmi73nu5PmnZ/ml7blj6/mlL7nva7nmoTljLrln5/lhoXlrrlcbiAqIEBuYW1lIHRoeS1kcmFnLWNvbnRlbnQsW3RoeURyYWdDb250ZW50XVxuICogQG9yZGVyIDI1XG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAndGh5LWRyYWctY29udGVudCxbdGh5RHJhZ0NvbnRlbnRdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRoeURyYWdDb250ZW50RGlyZWN0aXZlIHtcbiAgICBlbGVtZW50ID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MudGh5LWRyYWctY29udGVudCcpIGNvbnRlbnRDbGFzcyA9IHRydWU7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgY29uc3QgZHJhZyA9IGluamVjdChUaHlEcmFnRGlyZWN0aXZlLCB7IG9wdGlvbmFsOiB0cnVlIH0pITtcblxuICAgICAgICBpZiAoZHJhZykge1xuICAgICAgICAgICAgZHJhZy5kcmFnUmVmLndpdGhDb250ZW50RWxlbWVudCh0aGlzLmVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1jb250ZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kcmFnLWRyb3AvZHJhZy1jb250ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUVwRDs7Ozs7R0FLRztBQUtILE1BQU0sT0FBTyx1QkFBdUI7SUFLaEM7UUFKQSxZQUFPLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztRQUVmLGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBR3ZELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBRSxDQUFDO1FBRTNELElBQUksSUFBSSxFQUFFLENBQUM7WUFDUCxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsRCxDQUFDO0lBQ0wsQ0FBQzs4R0FYUSx1QkFBdUI7a0dBQXZCLHVCQUF1Qjs7MkZBQXZCLHVCQUF1QjtrQkFKbkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsbUNBQW1DO29CQUM3QyxVQUFVLEVBQUUsSUFBSTtpQkFDbkI7d0RBSTBDLFlBQVk7c0JBQWxELFdBQVc7dUJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaHlEcmFnRGlyZWN0aXZlIH0gZnJvbSAnLi9kcmFnLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICog6Ieq5a6a5LmJ5ouW5ou95pe25Y+v57uP6L+H77yM5ouW5ou957uT5p2f5pe25Y+v5pS+572u55qE5Yy65Z+f5YaF5a65XG4gKiBAbmFtZSB0aHktZHJhZy1jb250ZW50LFt0aHlEcmFnQ29udGVudF1cbiAqIEBvcmRlciAyNVxuICogQGRlcHJlY2F0ZWQgcGxlYXNlIHVzZSBAYW5ndWxhci9jZGsvZHJhZy1kcm9wXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAndGh5LWRyYWctY29udGVudCxbdGh5RHJhZ0NvbnRlbnRdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRoeURyYWdDb250ZW50RGlyZWN0aXZlIHtcbiAgICBlbGVtZW50ID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MudGh5LWRyYWctY29udGVudCcpIGNvbnRlbnRDbGFzcyA9IHRydWU7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgY29uc3QgZHJhZyA9IGluamVjdChUaHlEcmFnRGlyZWN0aXZlLCB7IG9wdGlvbmFsOiB0cnVlIH0pITtcblxuICAgICAgICBpZiAoZHJhZykge1xuICAgICAgICAgICAgZHJhZy5kcmFnUmVmLndpdGhDb250ZW50RWxlbWVudCh0aGlzLmVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19