valtech-components 2.0.419 → 2.0.420

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 (107) hide show
  1. package/esm2022/lib/components/atoms/button/button.component.mjs +30 -102
  2. package/esm2022/lib/components/atoms/countdown/countdown.component.mjs +2 -7
  3. package/esm2022/lib/components/atoms/display/display.component.mjs +18 -101
  4. package/esm2022/lib/components/atoms/image/image.component.mjs +2 -5
  5. package/esm2022/lib/components/atoms/price-tag/price-tag.component.mjs +2 -12
  6. package/esm2022/lib/components/atoms/qr-code/qr-code.component.mjs +4 -29
  7. package/esm2022/lib/components/atoms/text/text.component.mjs +49 -171
  8. package/esm2022/lib/components/atoms/title/title.component.mjs +23 -65
  9. package/esm2022/lib/components/atoms/title/types.mjs +7 -19
  10. package/esm2022/lib/components/molecules/accordion/accordion.component.mjs +7 -53
  11. package/esm2022/lib/components/molecules/alert-box/alert-box.component.mjs +7 -26
  12. package/esm2022/lib/components/molecules/breadcrumb/breadcrumb.component.mjs +7 -42
  13. package/esm2022/lib/components/molecules/check-input/check-input.component.mjs +12 -41
  14. package/esm2022/lib/components/molecules/chip-group/chip-group.component.mjs +3 -28
  15. package/esm2022/lib/components/molecules/code-display/code-display.component.mjs +2 -5
  16. package/esm2022/lib/components/molecules/command-display/command-display.component.mjs +3 -6
  17. package/esm2022/lib/components/molecules/comment/comment.component.mjs +5 -31
  18. package/esm2022/lib/components/molecules/currency-input/currency-input.component.mjs +2 -23
  19. package/esm2022/lib/components/molecules/date-range-input/date-range-input.component.mjs +2 -29
  20. package/esm2022/lib/components/molecules/expandable-text/expandable-text.component.mjs +4 -6
  21. package/esm2022/lib/components/molecules/glow-card/glow-card.component.mjs +16 -40
  22. package/esm2022/lib/components/molecules/language-selector/language-selector.component.mjs +25 -125
  23. package/esm2022/lib/components/molecules/multi-select-search/multi-select-search.component.mjs +4 -6
  24. package/esm2022/lib/components/molecules/number-stepper/number-stepper.component.mjs +2 -10
  25. package/esm2022/lib/components/molecules/participant-card/participant-card.component.mjs +2 -4
  26. package/esm2022/lib/components/molecules/phone-input/phone-input.component.mjs +2 -23
  27. package/esm2022/lib/components/molecules/plain-code-box/plain-code-box.component.mjs +3 -6
  28. package/esm2022/lib/components/molecules/popover-selector/popover-selector.component.mjs +9 -12
  29. package/esm2022/lib/components/molecules/raffle-status-card/raffle-status-card.component.mjs +3 -11
  30. package/esm2022/lib/components/molecules/range-input/range-input.component.mjs +4 -25
  31. package/esm2022/lib/components/molecules/segment-control/segment-control.component.mjs +3 -34
  32. package/esm2022/lib/components/molecules/select-input/select-input.component.mjs +11 -20
  33. package/esm2022/lib/components/molecules/select-search/select-search.component.mjs +4 -6
  34. package/esm2022/lib/components/molecules/share-buttons/share-buttons.component.mjs +1 -6
  35. package/esm2022/lib/components/molecules/stepper/stepper.component.mjs +3 -28
  36. package/esm2022/lib/components/molecules/tabs/tabs.component.mjs +7 -41
  37. package/esm2022/lib/components/molecules/textarea-input/textarea-input.component.mjs +2 -27
  38. package/esm2022/lib/components/molecules/ticket-grid/ticket-grid.component.mjs +2 -10
  39. package/esm2022/lib/components/molecules/toggle-input/toggle-input.component.mjs +7 -37
  40. package/esm2022/lib/components/molecules/winner-display/winner-display.component.mjs +1 -12
  41. package/esm2022/lib/components/organisms/comment-section/comment-section.component.mjs +8 -54
  42. package/esm2022/lib/components/organisms/data-table/data-table.component.mjs +1 -3
  43. package/esm2022/lib/components/organisms/wizard/wizard.component.mjs +3 -5
  44. package/esm2022/lib/services/locale.service.mjs +75 -0
  45. package/esm2022/lib/services/types.mjs +5 -3
  46. package/esm2022/public-api.mjs +2 -7
  47. package/fesm2022/valtech-components.mjs +366 -2279
  48. package/fesm2022/valtech-components.mjs.map +1 -1
  49. package/lib/components/atoms/button/button.component.d.ts +12 -37
  50. package/lib/components/atoms/countdown/countdown.component.d.ts +0 -1
  51. package/lib/components/atoms/display/display.component.d.ts +8 -60
  52. package/lib/components/atoms/image/image.component.d.ts +0 -2
  53. package/lib/components/atoms/price-tag/price-tag.component.d.ts +0 -1
  54. package/lib/components/atoms/qr-code/qr-code.component.d.ts +2 -6
  55. package/lib/components/atoms/text/text.component.d.ts +20 -68
  56. package/lib/components/atoms/title/title.component.d.ts +7 -12
  57. package/lib/components/atoms/title/types.d.ts +11 -24
  58. package/lib/components/molecules/accordion/accordion.component.d.ts +2 -9
  59. package/lib/components/molecules/alert-box/alert-box.component.d.ts +3 -8
  60. package/lib/components/molecules/breadcrumb/breadcrumb.component.d.ts +2 -8
  61. package/lib/components/molecules/check-input/check-input.component.d.ts +2 -10
  62. package/lib/components/molecules/chip-group/chip-group.component.d.ts +2 -8
  63. package/lib/components/molecules/code-display/code-display.component.d.ts +0 -2
  64. package/lib/components/molecules/command-display/command-display.component.d.ts +0 -3
  65. package/lib/components/molecules/comment/comment.component.d.ts +2 -6
  66. package/lib/components/molecules/currency-input/currency-input.component.d.ts +0 -3
  67. package/lib/components/molecules/date-range-input/date-range-input.component.d.ts +0 -3
  68. package/lib/components/molecules/expandable-text/expandable-text.component.d.ts +0 -1
  69. package/lib/components/molecules/glow-card/glow-card.component.d.ts +5 -9
  70. package/lib/components/molecules/language-selector/language-selector.component.d.ts +7 -19
  71. package/lib/components/molecules/multi-select-search/multi-select-search.component.d.ts +0 -2
  72. package/lib/components/molecules/number-stepper/number-stepper.component.d.ts +0 -1
  73. package/lib/components/molecules/participant-card/participant-card.component.d.ts +0 -1
  74. package/lib/components/molecules/phone-input/phone-input.component.d.ts +0 -3
  75. package/lib/components/molecules/plain-code-box/plain-code-box.component.d.ts +0 -3
  76. package/lib/components/molecules/popover-selector/popover-selector.component.d.ts +3 -4
  77. package/lib/components/molecules/raffle-status-card/raffle-status-card.component.d.ts +0 -1
  78. package/lib/components/molecules/range-input/range-input.component.d.ts +3 -8
  79. package/lib/components/molecules/segment-control/segment-control.component.d.ts +2 -8
  80. package/lib/components/molecules/select-input/select-input.component.d.ts +2 -3
  81. package/lib/components/molecules/select-search/select-search.component.d.ts +0 -2
  82. package/lib/components/molecules/share-buttons/share-buttons.component.d.ts +0 -1
  83. package/lib/components/molecules/stepper/stepper.component.d.ts +2 -8
  84. package/lib/components/molecules/tabs/tabs.component.d.ts +2 -8
  85. package/lib/components/molecules/textarea-input/textarea-input.component.d.ts +2 -6
  86. package/lib/components/molecules/ticket-grid/ticket-grid.component.d.ts +0 -1
  87. package/lib/components/molecules/toggle-input/toggle-input.component.d.ts +2 -8
  88. package/lib/components/molecules/winner-display/winner-display.component.d.ts +0 -1
  89. package/lib/components/organisms/comment-section/comment-section.component.d.ts +2 -6
  90. package/lib/components/organisms/data-table/data-table.component.d.ts +0 -1
  91. package/lib/components/organisms/wizard/wizard.component.d.ts +0 -2
  92. package/lib/services/locale.service.d.ts +52 -0
  93. package/lib/services/types.d.ts +1 -6
  94. package/package.json +1 -1
  95. package/public-api.d.ts +1 -5
  96. package/esm2022/lib/services/lang-provider/components/lang-settings.mjs +0 -13
  97. package/esm2022/lib/services/lang-provider/content.mjs +0 -156
  98. package/esm2022/lib/services/lang-provider/lang-provider.service.mjs +0 -530
  99. package/esm2022/lib/services/lang-provider/types.mjs +0 -23
  100. package/esm2022/lib/shared/utils/content.mjs +0 -186
  101. package/esm2022/lib/shared/utils/simple-content.mjs +0 -119
  102. package/lib/services/lang-provider/components/lang-settings.d.ts +0 -3
  103. package/lib/services/lang-provider/content.d.ts +0 -17
  104. package/lib/services/lang-provider/lang-provider.service.d.ts +0 -264
  105. package/lib/services/lang-provider/types.d.ts +0 -30
  106. package/lib/shared/utils/content.d.ts +0 -199
  107. package/lib/shared/utils/simple-content.d.ts +0 -120
@@ -3,7 +3,6 @@ import { ChangeDetectorRef, Component, inject, Input, ViewChild, } from '@angula
3
3
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
4
  import { IonicModule } from '@ionic/angular';
5
5
  import { IconService } from '../../../services/icons.service';
6
- import { LangService } from '../../../services/lang-provider/lang-provider.service';
7
6
  import { applyDefaultValueToControl } from '../../../shared/utils/form-defaults';
8
7
  import { replaceSpecialChars } from '../../../shared/utils/text';
9
8
  import { SearchbarComponent } from '../searchbar/searchbar.component';
@@ -23,10 +22,11 @@ import * as i3 from "@angular/forms";
23
22
  */
24
23
  export class SelectSearchComponent {
25
24
  constructor() {
25
+ this.label = 'Seleccionar';
26
26
  this.labelProperty = 'name';
27
27
  this.valueProperty = 'id';
28
28
  this.multiple = false;
29
- this.langService = inject(LangService);
29
+ this.placeholder = 'Seleccione una opción';
30
30
  this.icon = inject(IconService);
31
31
  this.changeDetector = inject(ChangeDetectorRef);
32
32
  this.searchTerm = '';
@@ -35,8 +35,6 @@ export class SelectSearchComponent {
35
35
  this.displayValue = '';
36
36
  this.previousOptions = [];
37
37
  this.isProcessingChanges = false;
38
- this.label = this.langService.getText('_global', 'select', 'Seleccionar');
39
- this.placeholder = this.langService.getText('_global', 'selectOption', 'Seleccione una opción');
40
38
  }
41
39
  ngOnInit() {
42
40
  this.applyDefaultValue();
@@ -368,7 +366,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
368
366
  </ng-template>
369
367
  </ion-modal>
370
368
  `, styles: ["ion-header{padding:8px 8px 0}\n"] }]
371
- }], ctorParameters: () => [], propDecorators: { modal: [{
369
+ }], propDecorators: { modal: [{
372
370
  type: ViewChild,
373
371
  args: ['modal']
374
372
  }], label: [{
@@ -384,4 +382,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
384
382
  }], props: [{
385
383
  type: Input
386
384
  }] } });
387
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXNlYXJjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3NlbGVjdC1zZWFyY2gvc2VsZWN0LXNlYXJjaC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBSUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFZLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNwRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7QUEwRHRFOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sT0FBTyxxQkFBcUI7SUFXaEM7UUFQUyxrQkFBYSxHQUFXLE1BQU0sQ0FBQztRQUMvQixrQkFBYSxHQUFXLElBQUksQ0FBQztRQUM3QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRzNCLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBZ0IxQyxTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFF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Q0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBZ0JHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSW9uaWNNb2R1bGUsIElvbk1vZGFsIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJY29uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ljb25zLnNlcnZpY2UnO1xuaW1wb3J0IHsgTGFuZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9sYW5nLXByb3ZpZGVyL2xhbmctcHJvdmlkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBhcHBseURlZmF1bHRWYWx1ZVRvQ29udHJvbCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC91dGlscy9mb3JtLWRlZmF1bHRzJztcbmltcG9ydCB7IHJlcGxhY2VTcGVjaWFsQ2hhcnMgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvdXRpbHMvdGV4dCc7XG5pbXBvcnQgeyBJbnB1dE1ldGFkYXRhLCBJbnB1dE9wdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IFNlYXJjaGJhckNvbXBvbmVudCB9IGZyb20gJy4uL3NlYXJjaGJhci9zZWFyY2hiYXIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLXNlbGVjdC1zZWFyY2gnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBJb25pY01vZHVsZSwgRm9ybXNNb2R1bGUsIFNlYXJjaGJhckNvbXBvbmVudCwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGlvbi1pbnB1dFxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgW3ZhbHVlXT1cImRpc3BsYXlWYWx1ZVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicHJvcHM/LnBsYWNlaG9sZGVyIHx8IHBsYWNlaG9sZGVyXCJcbiAgICAgIHJlYWRvbmx5XG4gICAgICAobW91c2Vkb3duKT1cInByZXZlbnREZWZhdWx0QmVoYXZpb3IoJGV2ZW50KVwiXG4gICAgLz5cblxuICAgIDxpb24taW5wdXQgc3R5bGU9XCJwb3NpdGlvbjogYWJzb2x1dGU7XCIgW2Zvcm1Db250cm9sXT1cInByb3BzLmNvbnRyb2xcIiB0eXBlPVwiaGlkZGVuXCI+PC9pb24taW5wdXQ+XG5cbiAgICA8aW9uLW1vZGFsXG4gICAgICAjbW9kYWxcbiAgICAgIHRyaWdnZXI9XCJvcGVuLW1vZGFsXCJcbiAgICAgIFtpbml0aWFsQnJlYWtwb2ludF09XCIxXCJcbiAgICAgIFticmVha3BvaW50c109XCJbMCwgMC41LCAwLjc1LCAxXVwiXG4gICAgICAoZGlkRGlzbWlzcyk9XCJjYW5jZWxNb2RhbCgpXCJcbiAgICA+XG4gICAgICA8bmctdGVtcGxhdGU+XG4gICAgICAgIDxpb24taGVhZGVyPlxuICAgICAgICAgIDxpb24tdG9vbGJhcj5cbiAgICAgICAgICAgIDxpb24tdGl0bGU+e3sgbGFiZWwgfX08L2lvbi10aXRsZT5cbiAgICAgICAgICAgIDxpb24tYnV0dG9ucyBzbG90PVwiZW5kXCI+XG4gICAgICAgICAgICAgIDxpb24tYnV0dG9uIChjbGljayk9XCJjYW5jZWxNb2RhbCgpXCI+Q2VycmFyPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgPC9pb24tYnV0dG9ucz5cbiAgICAgICAgICA8L2lvbi10b29sYmFyPlxuICAgICAgICAgIDxpb24tdG9vbGJhcj5cbiAgICAgICAgICAgIDx2YWwtc2VhcmNoYmFyIChmaWx0ZXJFdmVudCk9XCJvbkZpbHRlcigkZXZlbnQpXCIgKGZvY3VzRXZlbnQpPVwib25Gb2N1cygpXCIgKGJsdXJFdmVudCk9XCJvbkJsdXIoKVwiIC8+XG4gICAgICAgICAgPC9pb24tdG9vbGJhcj5cbiAgICAgICAgPC9pb24taGVhZGVyPlxuICAgICAgICA8aW9uLWNvbnRlbnQ+XG4gICAgICAgICAgPGlvbi1saXN0PlxuICAgICAgICAgICAgPGlvbi1pdGVtICpuZ0Zvcj1cImxldCBpdGVtIG9mIGZpbHRlcmVkSXRlbXNcIiBidXR0b24gKGNsaWNrKT1cInNlbGVjdEl0ZW0oaXRlbSlcIiBkZXRhaWw9XCJmYWxzZVwiPlxuICAgICAgICAgICAgICA8aW9uLWxhYmVsPnt7IGl0ZW1bbGFiZWxQcm9wZXJ0eV0gfX08L2lvbi1sYWJlbD5cbiAgICAgICAgICAgICAgPGlvbi1pY29uICpuZ0lmPVwiaXNJdGVtU2VsZWN0ZWQoaXRlbSlcIiBuYW1lPVwiY2hlY2ttYXJrLW91dGxpbmVcIiBzbG90PVwiZW5kXCIgY29sb3I9XCJwcmltYXJ5XCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgIDwvaW9uLWl0ZW0+XG4gICAgICAgICAgICA8aW9uLWl0ZW0gKm5nSWY9XCJmaWx0ZXJlZEl0ZW1zLmxlbmd0aCA9PT0gMFwiIGxpbmVzPVwibm9uZVwiPlxuICAgICAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwiZGFya1wiPk5vIHNlIGVuY29udHJhcm9uIHJlc3VsdGFkb3M8L2lvbi1sYWJlbD5cbiAgICAgICAgICAgIDwvaW9uLWl0ZW0+XG4gICAgICAgICAgPC9pb24tbGlzdD5cbiAgICAgICAgPC9pb24tY29udGVudD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9pb24tbW9kYWw+XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIGlvbi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiA4cHggOHB4IDBweCA4cHg7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbn0pXG4vKipcbiAqIHZhbC1zZWxlY3Qtc2VhcmNoXG4gKlxuICogQSBzZWFyY2hhYmxlIHNlbGVjdC9kcm9wZG93biBpbnB1dCB3aXRoIG1vZGFsIGFuZCBmaWx0ZXJpbmcsIGludGVncmF0ZWQgd2l0aCBBbmd1bGFyIGZvcm1zLlxuICpcbiAqIEBleGFtcGxlXG4gKiA8dmFsLXNlbGVjdC1zZWFyY2ggW3Byb3BzXT1cInsgY29udHJvbDogbXlDb250cm9sLCBsYWJlbDogJ0Nob29zZScsIG9wdGlvbnM6IFt7IGlkOiAnMScsIG5hbWU6ICdPcHRpb24gMScgfV0gfVwiPjwvdmFsLXNlbGVjdC1zZWFyY2g+XG4gKlxuICogQGlucHV0IHByb3BzOiBJbnB1dE1ldGFkYXRhIC0gQ29uZmlndXJhdGlvbiBmb3IgdGhlIHNlbGVjdCBpbnB1dCAoZm9ybSBjb250cm9sLCBsYWJlbCwgb3B0aW9ucywgZXRjLilcbiAqL1xuZXhwb3J0IGNsYXNzIFNlbGVjdFNlYXJjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnbW9kYWwnKSBtb2RhbCE6IElvbk1vZGFsO1xuXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGxhYmVsUHJvcGVydHk6IHN0cmluZyA9ICduYW1lJztcbiAgQElucHV0KCkgdmFsdWVQcm9wZXJ0eTogc3RyaW5nID0gJ2lkJztcbiAgQElucHV0KCkgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZztcblxuICBwcml2YXRlIGxhbmdTZXJ2aWNlID0gaW5qZWN0KExhbmdTZXJ2aWNlKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmxhYmVsID0gdGhpcy5sYW5nU2VydmljZS5nZXRUZXh0KCdfZ2xvYmFsJywgJ3NlbGVjdCcsICdTZWxlY2Npb25hcicpO1xuICAgIHRoaXMucGxhY2Vob2xkZXIgPSB0aGlzLmxhbmdTZXJ2aWNlLmdldFRleHQoJ19nbG9iYWwnLCAnc2VsZWN0T3B0aW9uJywgJ1NlbGVjY2lvbmUgdW5hIG9wY2nDs24nKTtcbiAgfVxuICAvKipcbiAgICogSW5wdXQgY29uZmlndXJhdGlvbiBvYmplY3QuXG4gICAqIEB0eXBlIHtJbnB1dE1ldGFkYXRhfVxuICAgKiBAcHJvcGVydHkgY29udHJvbCAtIFRoZSBBbmd1bGFyIEZvcm1Db250cm9sIGZvciB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcHJvcGVydHkgbGFiZWwgLSBUaGUgbGFiZWwgZm9yIHRoZSBzZWxlY3QuXG4gICAqIEBwcm9wZXJ0eSBvcHRpb25zIC0gVGhlIGF2YWlsYWJsZSBvcHRpb25zIGZvciB0aGUgc2VsZWN0LlxuICAgKiBAcHJvcGVydHkgcGxhY2Vob2xkZXIgLSBUaGUgcGxhY2Vob2xkZXIgdGV4dC5cbiAgICovXG4gIEBJbnB1dCgpIHByb3BzOiBJbnB1dE1ldGFkYXRhO1xuXG4gIGljb24gPSBpbmplY3QoSWNvblNlcnZpY2UpO1xuICBwcml2YXRlIGNoYW5nZURldGVjdG9yID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICBzZWFyY2hUZXJtOiBzdHJpbmcgPSAnJztcbiAgZmlsdGVyZWRJdGVtczogSW5wdXRPcHRpb25bXSA9IFtdO1xuICBzZWxlY3RlZEl0ZW1zOiBJbnB1dE9wdGlvbltdID0gW107XG4gIGRpc3BsYXlWYWx1ZTogc3RyaW5nID0gJyc7XG5cbiAgcHJpdmF0ZSBwcmV2aW91c09wdGlvbnM6IGFueVtdID0gW107XG4gIHByaXZhdGUgaXNQcm9jZXNzaW5nQ2hhbmdlcyA9IGZhbHNlO1xuICBwcml2YXRlIHZhbHVlQ2hhbmdlc1N1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmFwcGx5RGVmYXVsdFZhbHVlKCk7XG4gICAgdGhpcy5pbml0aWFsaXplSXRlbXMoKTtcbiAgICB0aGlzLnN5bmNDb250cm9sVmFsdWVXaXRoU2VsZWN0ZWRJdGVtcygpO1xuICAgIHRoaXMudXBkYXRlRGlzcGxheVZhbHVlKCk7XG4gICAgdGhpcy5zdWJzY3JpYmVUb1ZhbHVlQ2hhbmdlcygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy8gTGltcGlhciBzdXNjcmlwY2lvbmVzIHBhcmEgZXZpdGFyIG1lbW9yeSBsZWFrc1xuICAgIGlmICh0aGlzLnZhbHVlQ2hhbmdlc1N1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy52YWx1ZUNoYW5nZXNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgLy8gRXZpdGFyIGJ1Y2xlcyBpbmZpbml0b3NcbiAgICBpZiAodGhpcy5pc1Byb2Nlc3NpbmdDaGFuZ2VzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gQ3VhbmRvIGNhbWJpYSBwcm9wcyBvIHByb3BzLm9wdGlvbnNcbiAgICBpZiAoY2hhbmdlc1sncHJvcHMnXSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmdDaGFuZ2VzID0gdHJ1ZTtcblxuICAgICAgICAvLyBEZXN1c2NyaWJpcnNlIGRlbCBhbnRpZ3VvIGNvbnRyb2wgc2kgZXhpc3RlXG4gICAgICAgIGlmICh0aGlzLnZhbHVlQ2hhbmdlc1N1YnNjcmlwdGlvbikge1xuICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2VzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5wcm9wcz8ub3B0aW9ucykge1xuICAgICAgICAgIC8vIFZlcmlmaWNhciBzaSBsYXMgb3BjaW9uZXMgaGFuIGNhbWJpYWRvIHJlYWxtZW50ZVxuICAgICAgICAgIGNvbnN0IG9wdGlvbnNDaGFuZ2VkID0gIXRoaXMuYXJlT3B0aW9uc0VxdWFsKHRoaXMucHJldmlvdXNPcHRpb25zLCB0aGlzLnByb3BzLm9wdGlvbnMpO1xuXG4gICAgICAgICAgaWYgKG9wdGlvbnNDaGFuZ2VkKSB7XG4gICAgICAgICAgICB0aGlzLnByZXZpb3VzT3B0aW9ucyA9IFsuLi50aGlzLnByb3BzLm9wdGlvbnNdO1xuICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplSXRlbXMoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTaW5jcm9uaXphciBjb24gZWwgbnVldm8gY29udHJvbCBzaSBleGlzdGVcbiAgICAgICAgdGhpcy5zeW5jQ29udHJvbFZhbHVlV2l0aFNlbGVjdGVkSXRlbXMoKTtcbiAgICAgICAgdGhpcy51cGRhdGVEaXNwbGF5VmFsdWUoKTtcblxuICAgICAgICAvLyBTdXNjcmliaXJzZSBhbCBudWV2byBjb250cm9sXG4gICAgICAgIHRoaXMuc3Vic2NyaWJlVG9WYWx1ZUNoYW5nZXMoKTtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIHRoaXMuaXNQcm9jZXNzaW5nQ2hhbmdlcyA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlvblZpZXdXaWxsRW50ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNQcm9jZXNzaW5nQ2hhbmdlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICB0aGlzLmlzUHJvY2Vzc2luZ0NoYW5nZXMgPSB0cnVlO1xuICAgICAgdGhpcy5pbml0aWFsaXplSXRlbXMoKTtcbiAgICAgIHRoaXMuc3luY0NvbnRyb2xWYWx1ZVdpdGhTZWxlY3RlZEl0ZW1zKCk7XG4gICAgICB0aGlzLnVwZGF0ZURpc3BsYXlWYWx1ZSgpO1xuICAgICAgdGhpcy5zdWJzY3JpYmVUb1ZhbHVlQ2hhbmdlcygpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmlzUHJvY2Vzc2luZ0NoYW5nZXMgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvLyBTdXNjcmliaXJzZSBhIGNhbWJpb3MgZW4gZWwgRm9ybUNvbnRyb2xcbiAgcHJpdmF0ZSBzdWJzY3JpYmVUb1ZhbHVlQ2hhbmdlcygpIHtcbiAgICBpZiAoIXRoaXMucHJvcHM/LmNvbnRyb2wpIHJldHVybjtcblxuICAgIHRoaXMudmFsdWVDaGFuZ2VzU3Vic2NyaXB0aW9uID0gdGhpcy5wcm9wcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgaWYgKHRoaXMuaXNQcm9jZXNzaW5nQ2hhbmdlcykgcmV0dXJuO1xuXG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLmlzUHJvY2Vzc2luZ0NoYW5nZXMgPSB0cnVlO1xuICAgICAgICB0aGlzLnN5bmNDb250cm9sVmFsdWVXaXRoU2VsZWN0ZWRJdGVtcygpO1xuICAgICAgICB0aGlzLnVwZGF0ZURpc3BsYXlWYWx1ZSgpO1xuICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmdDaGFuZ2VzID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvLyBDb21wYXJhIHNpIGRvcyBhcnJheXMgZGUgb3BjaW9uZXMgc29uIGlndWFsZXNcbiAgcHJpdmF0ZSBhcmVPcHRpb25zRXF1YWwocHJldk9wdGlvbnM6IGFueVtdLCBuZXdPcHRpb25zOiBhbnlbXSk6IGJvb2xlYW4ge1xuICAgIC8vIFBFUkY6IFVzZSByZWZlcmVuY2UgZXF1YWxpdHkgZmlyc3QgZm9yIGZhc3QgcGF0aFxuICAgIGlmIChwcmV2T3B0aW9ucyA9PT0gbmV3T3B0aW9ucykgcmV0dXJuIHRydWU7XG4gICAgaWYgKCFwcmV2T3B0aW9ucyB8fCAhbmV3T3B0aW9ucykgcmV0dXJuIHByZXZPcHRpb25zID09PSBuZXdPcHRpb25zO1xuICAgIGlmIChwcmV2T3B0aW9ucy5sZW5ndGggIT09IG5ld09wdGlvbnMubGVuZ3RoKSByZXR1cm4gZmFsc2U7XG4gICAgLy8gT25seSBjb21wYXJlIHZhbHVlUHJvcGVydHkgZm9yIGVxdWFsaXR5XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwcmV2T3B0aW9ucy5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKHByZXZPcHRpb25zW2ldW3RoaXMudmFsdWVQcm9wZXJ0eV0gIT09IG5ld09wdGlvbnNbaV1bdGhpcy52YWx1ZVByb3BlcnR5XSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplSXRlbXMoKTogdm9pZCB7XG4gICAgLy8gUEVSRjogQXZvaWQgdW5uZWNlc3NhcnkgYXJyYXkgY29waWVzXG4gICAgdGhpcy5maWx0ZXJlZEl0ZW1zID0gdGhpcy5wcm9wcz8ub3B0aW9ucyB8fCBbXTtcbiAgfVxuXG4gIHByaXZhdGUgc3luY0NvbnRyb2xWYWx1ZVdpdGhTZWxlY3RlZEl0ZW1zKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5wcm9wcz8uY29udHJvbCkge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gW107XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGNvbnRyb2xWYWx1ZSA9IHRoaXMucHJvcHMuY29udHJvbC52YWx1ZTtcbiAgICBpZiAoY29udHJvbFZhbHVlID09PSBudWxsIHx8IGNvbnRyb2xWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gUEVSRjogVXNlIGEgTWFwIGZvciBmYXN0ZXIgbG9va3VwIGlmIG9wdGlvbnMgYXJlIGxhcmdlXG4gICAgaWYgKHRoaXMucHJvcHMub3B0aW9ucyAmJiB0aGlzLnByb3BzLm9wdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgbWFwID0gbmV3IE1hcCh0aGlzLnByb3BzLm9wdGlvbnMubWFwKG9wdCA9PiBbb3B0W3RoaXMudmFsdWVQcm9wZXJ0eV0sIG9wdF0pKTtcbiAgICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gbWFwLmdldChjb250cm9sVmFsdWUpO1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gc2VsZWN0ZWRPcHRpb24gPyBbc2VsZWN0ZWRPcHRpb25dIDogW107XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlEZWZhdWx0VmFsdWUoKTogdm9pZCB7XG4gICAgYXBwbHlEZWZhdWx0VmFsdWVUb0NvbnRyb2wodGhpcy5wcm9wcyk7XG4gIH1cblxuICBvbkZpbHRlcihldmVudCkge1xuICAgIC8vIElmIG5vIHNlYXJjaCB0ZXJtLCBzaG93IGFsbCBvcHRpb25zXG4gICAgaWYgKCFldmVudCB8fCBldmVudC50cmltKCkgPT09ICcnKSB7XG4gICAgICB0aGlzLmZpbHRlcmVkSXRlbXMgPSB0aGlzLnByb3BzPy5vcHRpb25zID8gWy4uLnRoaXMucHJvcHMub3B0aW9uc10gOiBbXTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIElmIG5vIG9wdGlvbnMsIG5vdGhpbmcgdG8gZmlsdGVyXG4gICAgaWYgKCF0aGlzLnByb3BzPy5vcHRpb25zIHx8IHRoaXMucHJvcHMub3B0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuZmlsdGVyZWRJdGVtcyA9IFtdO1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gUEVSRjogQXZvaWQgcmVwZWF0ZWQgcmVwbGFjZVNwZWNpYWxDaGFycyBhbmQgdG9Mb3dlckNhc2UgZm9yIGVhY2ggb3B0aW9uXG4gICAgY29uc3Qgc2VhcmNoID0gcmVwbGFjZVNwZWNpYWxDaGFycyhldmVudC50b0xvd2VyQ2FzZSgpKTtcbiAgICB0aGlzLmZpbHRlcmVkSXRlbXMgPSB0aGlzLnByb3BzLm9wdGlvbnMuZmlsdGVyKGVsZW1lbnQgPT4ge1xuICAgICAgLy8gT25seSB1c2UgbGFiZWxQcm9wZXJ0eSBhbmQgdmFsdWVQcm9wZXJ0eSBmb3IgZmlsdGVyaW5nIChmYXN0ZXIpXG4gICAgICBjb25zdCBsYWJlbCA9IGVsZW1lbnRbdGhpcy5sYWJlbFByb3BlcnR5XVxuICAgICAgICA/IHJlcGxhY2VTcGVjaWFsQ2hhcnMoU3RyaW5nKGVsZW1lbnRbdGhpcy5sYWJlbFByb3BlcnR5XSkudG9Mb3dlckNhc2UoKSlcbiAgICAgICAgOiAnJztcbiAgICAgIGNvbnN0IHZhbHVlID0gZWxlbWVudFt0aGlzLnZhbHVlUHJvcGVydHldXG4gICAgICAgID8gcmVwbGFjZVNwZWNpYWxDaGFycyhTdHJpbmcoZWxlbWVudFt0aGlzLnZhbHVlUHJvcGVydHldKS50b0xvd2VyQ2FzZSgpKVxuICAgICAgICA6ICcnO1xuICAgICAgcmV0dXJuIGxhYmVsLmluY2x1ZGVzKHNlYXJjaCkgfHwgdmFsdWUuaW5jbHVkZXMoc2VhcmNoKTtcbiAgICB9KTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG9uRm9jdXMoKSB7XG4gICAgY29uc29sZS5sb2coJ29uRm9jdXMnKTtcbiAgfVxuXG4gIG9uQmx1cigpIHtcbiAgICBjb25zb2xlLmxvZygnb25CbHVyJyk7XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgaWYgKHRoaXMubW9kYWwpIHtcbiAgICAgIHRoaXMubW9kYWwucHJlc2VudCgpO1xuICAgIH1cbiAgfVxuXG4gIHByZXZlbnREZWZhdWx0QmVoYXZpb3IoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMub3Blbk1vZGFsKCk7XG4gIH1cblxuICBjYW5jZWxNb2RhbCgpIHtcbiAgICAvLyBSZXNldCBmaWx0ZXIgYW5kIHNob3cgYWxsIG9wdGlvbnMgd2hlbiBjbG9zaW5nIG1vZGFsXG4gICAgdGhpcy5zZWFyY2hUZXJtID0gJyc7XG4gICAgdGhpcy5maWx0ZXJlZEl0ZW1zID0gdGhpcy5wcm9wcz8ub3B0aW9ucyA/IFsuLi50aGlzLnByb3BzLm9wdGlvbnNdIDogW107XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgaWYgKHRoaXMubW9kYWwpIHtcbiAgICAgIHRoaXMubW9kYWwuZGlzbWlzcygpO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdEl0ZW0oaXRlbTogYW55KSB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmZpbmRJbmRleChcbiAgICAgICAgc2VsZWN0ZWRJdGVtID0+IHNlbGVjdGVkSXRlbVt0aGlzLnZhbHVlUHJvcGVydHldID09PSBpdGVtW3RoaXMudmFsdWVQcm9wZXJ0eV1cbiAgICAgICk7XG5cbiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zLnB1c2goaXRlbSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gW2l0ZW1dO1xuICAgICAgdGhpcy5jYW5jZWxNb2RhbCgpO1xuICAgIH1cblxuICAgIHRoaXMudXBkYXRlRGlzcGxheVZhbHVlKCk7XG4gICAgdGhpcy5hcHBseUNoYW5nZXMoKTtcbiAgfVxuXG4gIGlzSXRlbVNlbGVjdGVkKGl0ZW06IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkSXRlbXMuc29tZShzZWxlY3RlZEl0ZW0gPT4gc2VsZWN0ZWRJdGVtW3RoaXMudmFsdWVQcm9wZXJ0eV0gPT09IGl0ZW1bdGhpcy52YWx1ZVByb3BlcnR5XSk7XG4gIH1cblxuICB1cGRhdGVEaXNwbGF5VmFsdWUoKSB7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gJyc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gdGhpcy5zZWxlY3RlZEl0ZW1zWzBdW3RoaXMubGFiZWxQcm9wZXJ0eV07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9IGAke3RoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGh9IGVsZW1lbnRvcyBzZWxlY2Npb25hZG9zYDtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSB0aGlzLnNlbGVjdGVkSXRlbXNbMF1bdGhpcy5sYWJlbFByb3BlcnR5XTtcbiAgICB9XG4gIH1cblxuICBhcHBseUNoYW5nZXMoKSB7XG4gICAgaWYgKCF0aGlzLnByb3BzPy5jb250cm9sKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuaXNQcm9jZXNzaW5nQ2hhbmdlcyA9IHRydWU7XG5cbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLnByb3BzLmNvbnRyb2wuc2V0VmFsdWUodGhpcy5zZWxlY3RlZEl0ZW1zWzBdW3RoaXMudmFsdWVQcm9wZXJ0eV0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5wcm9wcy5jb250cm9sLnNldFZhbHVlKG51bGwpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnByb3BzLmNvbnRyb2wubWFya0FzRGlydHkoKTtcbiAgICAgIHRoaXMucHJvcHMuY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNQcm9jZXNzaW5nQ2hhbmdlcyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8vIE3DqXRvZG8gcMO6YmxpY28gcGFyYSByZWluaWNpYXIgZWwgY29tcG9uZW50ZVxuICByZXNldCgpIHtcbiAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9ICcnO1xuICAgIGlmICh0aGlzLnByb3BzPy5jb250cm9sKSB7XG4gICAgICB0aGlzLnByb3BzLmNvbnRyb2wuc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG59XG4iXX0=
385
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXNlYXJjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3NlbGVjdC1zZWFyY2gvc2VsZWN0LXNlYXJjaC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBSUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFZLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7OztBQTBEdEU7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxPQUFPLHFCQUFxQjtJQWxFbEM7UUFxRVcsVUFBSyxHQUFXLGFBQWEsQ0FBQztRQUM5QixrQkFBYSxHQUFXLE1BQU0sQ0FBQztRQUMvQixrQkFBYSxHQUFXLElBQUksQ0FBQztRQUM3QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGdCQUFXLEdBQVcsdUJBQXVCLENBQUM7UUFXdkQsU0FBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixtQkFBYyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRW5ELGVBQVUsR0FBVyxFQUFFLENBQUM7UUFDeEIs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Q25DLENBQUM7SUFDSCxDQUFDO0lBRUQsOENBQThDO0lBQzlDLEtBQUs7UUFDSCxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztRQUN2QixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFDRCxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RDLENBQUM7K0dBbFNVLHFCQUFxQjttR0FBckIscUJBQXFCLGdXQTlEdEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQ1Qsd0dBNUNTLFlBQVksK1BBQUUsV0FBVyx5bkVBQUUsV0FBVyx1SUFBRSxrQkFBa0Isb0lBQUUsbUJBQW1COzs0RkErRDlFLHFCQUFxQjtrQkFsRWpDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFLG1CQUFtQixDQUFDLFlBQ2hGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMkNUOzhCQW9CbUIsS0FBSztzQkFBeEIsU0FBUzt1QkFBQyxPQUFPO2dCQUVULEtBQUs7c0JBQWIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQVNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSW9uaWNNb2R1bGUsIElvbk1vZGFsIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJY29uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ljb25zLnNlcnZpY2UnO1xuaW1wb3J0IHsgYXBwbHlEZWZhdWx0VmFsdWVUb0NvbnRyb2wgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvdXRpbHMvZm9ybS1kZWZhdWx0cyc7XG5pbXBvcnQgeyByZXBsYWNlU3BlY2lhbENoYXJzIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3V0aWxzL3RleHQnO1xuaW1wb3J0IHsgSW5wdXRNZXRhZGF0YSwgSW5wdXRPcHRpb24gfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBTZWFyY2hiYXJDb21wb25lbnQgfSBmcm9tICcuLi9zZWFyY2hiYXIvc2VhcmNoYmFyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1zZWxlY3Qtc2VhcmNoJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSW9uaWNNb2R1bGUsIEZvcm1zTW9kdWxlLCBTZWFyY2hiYXJDb21wb25lbnQsIFJlYWN0aXZlRm9ybXNNb2R1bGVdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxpb24taW5wdXRcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIFt2YWx1ZV09XCJkaXNwbGF5VmFsdWVcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInByb3BzPy5wbGFjZWhvbGRlciB8fCBwbGFjZWhvbGRlclwiXG4gICAgICByZWFkb25seVxuICAgICAgKG1vdXNlZG93bik9XCJwcmV2ZW50RGVmYXVsdEJlaGF2aW9yKCRldmVudClcIlxuICAgIC8+XG5cbiAgICA8aW9uLWlucHV0IHN0eWxlPVwicG9zaXRpb246IGFic29sdXRlO1wiIFtmb3JtQ29udHJvbF09XCJwcm9wcy5jb250cm9sXCIgdHlwZT1cImhpZGRlblwiPjwvaW9uLWlucHV0PlxuXG4gICAgPGlvbi1tb2RhbFxuICAgICAgI21vZGFsXG4gICAgICB0cmlnZ2VyPVwib3Blbi1tb2RhbFwiXG4gICAgICBbaW5pdGlhbEJyZWFrcG9pbnRdPVwiMVwiXG4gICAgICBbYnJlYWtwb2ludHNdPVwiWzAsIDAuNSwgMC43NSwgMV1cIlxuICAgICAgKGRpZERpc21pc3MpPVwiY2FuY2VsTW9kYWwoKVwiXG4gICAgPlxuICAgICAgPG5nLXRlbXBsYXRlPlxuICAgICAgICA8aW9uLWhlYWRlcj5cbiAgICAgICAgICA8aW9uLXRvb2xiYXI+XG4gICAgICAgICAgICA8aW9uLXRpdGxlPnt7IGxhYmVsIH19PC9pb24tdGl0bGU+XG4gICAgICAgICAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cImVuZFwiPlxuICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwiY2FuY2VsTW9kYWwoKVwiPkNlcnJhcjwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbnM+XG4gICAgICAgICAgPC9pb24tdG9vbGJhcj5cbiAgICAgICAgICA8aW9uLXRvb2xiYXI+XG4gICAgICAgICAgICA8dmFsLXNlYXJjaGJhciAoZmlsdGVyRXZlbnQpPVwib25GaWx0ZXIoJGV2ZW50KVwiIChmb2N1c0V2ZW50KT1cIm9uRm9jdXMoKVwiIChibHVyRXZlbnQpPVwib25CbHVyKClcIiAvPlxuICAgICAgICAgIDwvaW9uLXRvb2xiYXI+XG4gICAgICAgIDwvaW9uLWhlYWRlcj5cbiAgICAgICAgPGlvbi1jb250ZW50PlxuICAgICAgICAgIDxpb24tbGlzdD5cbiAgICAgICAgICAgIDxpb24taXRlbSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWx0ZXJlZEl0ZW1zXCIgYnV0dG9uIChjbGljayk9XCJzZWxlY3RJdGVtKGl0ZW0pXCIgZGV0YWlsPVwiZmFsc2VcIj5cbiAgICAgICAgICAgICAgPGlvbi1sYWJlbD57eyBpdGVtW2xhYmVsUHJvcGVydHldIH19PC9pb24tbGFiZWw+XG4gICAgICAgICAgICAgIDxpb24taWNvbiAqbmdJZj1cImlzSXRlbVNlbGVjdGVkKGl0ZW0pXCIgbmFtZT1cImNoZWNrbWFyay1vdXRsaW5lXCIgc2xvdD1cImVuZFwiIGNvbG9yPVwicHJpbWFyeVwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICA8L2lvbi1pdGVtPlxuICAgICAgICAgICAgPGlvbi1pdGVtICpuZ0lmPVwiZmlsdGVyZWRJdGVtcy5sZW5ndGggPT09IDBcIiBsaW5lcz1cIm5vbmVcIj5cbiAgICAgICAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cImRhcmtcIj5ObyBzZSBlbmNvbnRyYXJvbiByZXN1bHRhZG9zPC9pb24tbGFiZWw+XG4gICAgICAgICAgICA8L2lvbi1pdGVtPlxuICAgICAgICAgIDwvaW9uLWxpc3Q+XG4gICAgICAgIDwvaW9uLWNvbnRlbnQ+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvaW9uLW1vZGFsPlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICBpb24taGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDhweCAwcHggOHB4O1xuICAgICAgfVxuICAgIGAsXG4gIF0sXG59KVxuLyoqXG4gKiB2YWwtc2VsZWN0LXNlYXJjaFxuICpcbiAqIEEgc2VhcmNoYWJsZSBzZWxlY3QvZHJvcGRvd24gaW5wdXQgd2l0aCBtb2RhbCBhbmQgZmlsdGVyaW5nLCBpbnRlZ3JhdGVkIHdpdGggQW5ndWxhciBmb3Jtcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogPHZhbC1zZWxlY3Qtc2VhcmNoIFtwcm9wc109XCJ7IGNvbnRyb2w6IG15Q29udHJvbCwgbGFiZWw6ICdDaG9vc2UnLCBvcHRpb25zOiBbeyBpZDogJzEnLCBuYW1lOiAnT3B0aW9uIDEnIH1dIH1cIj48L3ZhbC1zZWxlY3Qtc2VhcmNoPlxuICpcbiAqIEBpbnB1dCBwcm9wczogSW5wdXRNZXRhZGF0YSAtIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBzZWxlY3QgaW5wdXQgKGZvcm0gY29udHJvbCwgbGFiZWwsIG9wdGlvbnMsIGV0Yy4pXG4gKi9cbmV4cG9ydCBjbGFzcyBTZWxlY3RTZWFyY2hDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIEBWaWV3Q2hpbGQoJ21vZGFsJykgbW9kYWwhOiBJb25Nb2RhbDtcblxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJ1NlbGVjY2lvbmFyJztcbiAgQElucHV0KCkgbGFiZWxQcm9wZXJ0eTogc3RyaW5nID0gJ25hbWUnO1xuICBASW5wdXQoKSB2YWx1ZVByb3BlcnR5OiBzdHJpbmcgPSAnaWQnO1xuICBASW5wdXQoKSBtdWx0aXBsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJ1NlbGVjY2lvbmUgdW5hIG9wY2nDs24nO1xuICAvKipcbiAgICogSW5wdXQgY29uZmlndXJhdGlvbiBvYmplY3QuXG4gICAqIEB0eXBlIHtJbnB1dE1ldGFkYXRhfVxuICAgKiBAcHJvcGVydHkgY29udHJvbCAtIFRoZSBBbmd1bGFyIEZvcm1Db250cm9sIGZvciB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcHJvcGVydHkgbGFiZWwgLSBUaGUgbGFiZWwgZm9yIHRoZSBzZWxlY3QuXG4gICAqIEBwcm9wZXJ0eSBvcHRpb25zIC0gVGhlIGF2YWlsYWJsZSBvcHRpb25zIGZvciB0aGUgc2VsZWN0LlxuICAgKiBAcHJvcGVydHkgcGxhY2Vob2xkZXIgLSBUaGUgcGxhY2Vob2xkZXIgdGV4dC5cbiAgICovXG4gIEBJbnB1dCgpIHByb3BzOiBJbnB1dE1ldGFkYXRhO1xuXG4gIGljb24gPSBpbmplY3QoSWNvblNlcnZpY2UpO1xuICBwcml2YXRlIGNoYW5nZURldGVjdG9yID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICBzZWFyY2hUZXJtOiBzdHJpbmcgPSAnJztcbiAgZmlsdGVyZWRJdGVtczogSW5wdXRPcHRpb25bXSA9IFtdO1xuICBzZWxlY3RlZEl0ZW1zOiBJbnB1dE9wdGlvbltdID0gW107XG4gIGRpc3BsYXlWYWx1ZTogc3RyaW5nID0gJyc7XG5cbiAgcHJpdmF0ZSBwcmV2aW91c09wdGlvbnM6IGFueVtdID0gW107XG4gIHByaXZhdGUgaXNQcm9jZXNzaW5nQ2hhbmdlcyA9IGZhbHNlO1xuICBwcml2YXRlIHZhbHVlQ2hhbmdlc1N1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmFwcGx5RGVmYXVsdFZhbHVlKCk7XG4gICAgdGhpcy5pbml0aWFsaXplSXRlbXMoKTtcbiAgICB0aGlzLnN5bmNDb250cm9sVmFsdWVXaXRoU2VsZWN0ZWRJdGVtcygpO1xuICAgIHRoaXMudXBkYXRlRGlzcGxheVZhbHVlKCk7XG4gICAgdGhpcy5zdWJzY3JpYmVUb1ZhbHVlQ2hhbmdlcygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy8gTGltcGlhciBzdXNjcmlwY2lvbmVzIHBhcmEgZXZpdGFyIG1lbW9yeSBsZWFrc1xuICAgIGlmICh0aGlzLnZhbHVlQ2hhbmdlc1N1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy52YWx1ZUNoYW5nZXNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgLy8gRXZpdGFyIGJ1Y2xlcyBpbmZpbml0b3NcbiAgICBpZiAodGhpcy5pc1Byb2Nlc3NpbmdDaGFuZ2VzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gQ3VhbmRvIGNhbWJpYSBwcm9wcyBvIHByb3BzLm9wdGlvbnNcbiAgICBpZiAoY2hhbmdlc1sncHJvcHMnXSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmdDaGFuZ2VzID0gdHJ1ZTtcblxuICAgICAgICAvLyBEZXN1c2NyaWJpcnNlIGRlbCBhbnRpZ3VvIGNvbnRyb2wgc2kgZXhpc3RlXG4gICAgICAgIGlmICh0aGlzLnZhbHVlQ2hhbmdlc1N1YnNjcmlwdGlvbikge1xuICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2VzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5wcm9wcz8ub3B0aW9ucykge1xuICAgICAgICAgIC8vIFZlcmlmaWNhciBzaSBsYXMgb3BjaW9uZXMgaGFuIGNhbWJpYWRvIHJlYWxtZW50ZVxuICAgICAgICAgIGNvbnN0IG9wdGlvbnNDaGFuZ2VkID0gIXRoaXMuYXJlT3B0aW9uc0VxdWFsKHRoaXMucHJldmlvdXNPcHRpb25zLCB0aGlzLnByb3BzLm9wdGlvbnMpO1xuXG4gICAgICAgICAgaWYgKG9wdGlvbnNDaGFuZ2VkKSB7XG4gICAgICAgICAgICB0aGlzLnByZXZpb3VzT3B0aW9ucyA9IFsuLi50aGlzLnByb3BzLm9wdGlvbnNdO1xuICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplSXRlbXMoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTaW5jcm9uaXphciBjb24gZWwgbnVldm8gY29udHJvbCBzaSBleGlzdGVcbiAgICAgICAgdGhpcy5zeW5jQ29udHJvbFZhbHVlV2l0aFNlbGVjdGVkSXRlbXMoKTtcbiAgICAgICAgdGhpcy51cGRhdGVEaXNwbGF5VmFsdWUoKTtcblxuICAgICAgICAvLyBTdXNjcmliaXJzZSBhbCBudWV2byBjb250cm9sXG4gICAgICAgIHRoaXMuc3Vic2NyaWJlVG9WYWx1ZUNoYW5nZXMoKTtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIHRoaXMuaXNQcm9jZXNzaW5nQ2hhbmdlcyA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlvblZpZXdXaWxsRW50ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNQcm9jZXNzaW5nQ2hhbmdlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICB0aGlzLmlzUHJvY2Vzc2luZ0NoYW5nZXMgPSB0cnVlO1xuICAgICAgdGhpcy5pbml0aWFsaXplSXRlbXMoKTtcbiAgICAgIHRoaXMuc3luY0NvbnRyb2xWYWx1ZVdpdGhTZWxlY3RlZEl0ZW1zKCk7XG4gICAgICB0aGlzLnVwZGF0ZURpc3BsYXlWYWx1ZSgpO1xuICAgICAgdGhpcy5zdWJzY3JpYmVUb1ZhbHVlQ2hhbmdlcygpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmlzUHJvY2Vzc2luZ0NoYW5nZXMgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvLyBTdXNjcmliaXJzZSBhIGNhbWJpb3MgZW4gZWwgRm9ybUNvbnRyb2xcbiAgcHJpdmF0ZSBzdWJzY3JpYmVUb1ZhbHVlQ2hhbmdlcygpIHtcbiAgICBpZiAoIXRoaXMucHJvcHM/LmNvbnRyb2wpIHJldHVybjtcblxuICAgIHRoaXMudmFsdWVDaGFuZ2VzU3Vic2NyaXB0aW9uID0gdGhpcy5wcm9wcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgaWYgKHRoaXMuaXNQcm9jZXNzaW5nQ2hhbmdlcykgcmV0dXJuO1xuXG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLmlzUHJvY2Vzc2luZ0NoYW5nZXMgPSB0cnVlO1xuICAgICAgICB0aGlzLnN5bmNDb250cm9sVmFsdWVXaXRoU2VsZWN0ZWRJdGVtcygpO1xuICAgICAgICB0aGlzLnVwZGF0ZURpc3BsYXlWYWx1ZSgpO1xuICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmdDaGFuZ2VzID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvLyBDb21wYXJhIHNpIGRvcyBhcnJheXMgZGUgb3BjaW9uZXMgc29uIGlndWFsZXNcbiAgcHJpdmF0ZSBhcmVPcHRpb25zRXF1YWwocHJldk9wdGlvbnM6IGFueVtdLCBuZXdPcHRpb25zOiBhbnlbXSk6IGJvb2xlYW4ge1xuICAgIC8vIFBFUkY6IFVzZSByZWZlcmVuY2UgZXF1YWxpdHkgZmlyc3QgZm9yIGZhc3QgcGF0aFxuICAgIGlmIChwcmV2T3B0aW9ucyA9PT0gbmV3T3B0aW9ucykgcmV0dXJuIHRydWU7XG4gICAgaWYgKCFwcmV2T3B0aW9ucyB8fCAhbmV3T3B0aW9ucykgcmV0dXJuIHByZXZPcHRpb25zID09PSBuZXdPcHRpb25zO1xuICAgIGlmIChwcmV2T3B0aW9ucy5sZW5ndGggIT09IG5ld09wdGlvbnMubGVuZ3RoKSByZXR1cm4gZmFsc2U7XG4gICAgLy8gT25seSBjb21wYXJlIHZhbHVlUHJvcGVydHkgZm9yIGVxdWFsaXR5XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwcmV2T3B0aW9ucy5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKHByZXZPcHRpb25zW2ldW3RoaXMudmFsdWVQcm9wZXJ0eV0gIT09IG5ld09wdGlvbnNbaV1bdGhpcy52YWx1ZVByb3BlcnR5XSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplSXRlbXMoKTogdm9pZCB7XG4gICAgLy8gUEVSRjogQXZvaWQgdW5uZWNlc3NhcnkgYXJyYXkgY29waWVzXG4gICAgdGhpcy5maWx0ZXJlZEl0ZW1zID0gdGhpcy5wcm9wcz8ub3B0aW9ucyB8fCBbXTtcbiAgfVxuXG4gIHByaXZhdGUgc3luY0NvbnRyb2xWYWx1ZVdpdGhTZWxlY3RlZEl0ZW1zKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5wcm9wcz8uY29udHJvbCkge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gW107XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGNvbnRyb2xWYWx1ZSA9IHRoaXMucHJvcHMuY29udHJvbC52YWx1ZTtcbiAgICBpZiAoY29udHJvbFZhbHVlID09PSBudWxsIHx8IGNvbnRyb2xWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gUEVSRjogVXNlIGEgTWFwIGZvciBmYXN0ZXIgbG9va3VwIGlmIG9wdGlvbnMgYXJlIGxhcmdlXG4gICAgaWYgKHRoaXMucHJvcHMub3B0aW9ucyAmJiB0aGlzLnByb3BzLm9wdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgbWFwID0gbmV3IE1hcCh0aGlzLnByb3BzLm9wdGlvbnMubWFwKG9wdCA9PiBbb3B0W3RoaXMudmFsdWVQcm9wZXJ0eV0sIG9wdF0pKTtcbiAgICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gbWFwLmdldChjb250cm9sVmFsdWUpO1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gc2VsZWN0ZWRPcHRpb24gPyBbc2VsZWN0ZWRPcHRpb25dIDogW107XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlEZWZhdWx0VmFsdWUoKTogdm9pZCB7XG4gICAgYXBwbHlEZWZhdWx0VmFsdWVUb0NvbnRyb2wodGhpcy5wcm9wcyk7XG4gIH1cblxuICBvbkZpbHRlcihldmVudCkge1xuICAgIC8vIElmIG5vIHNlYXJjaCB0ZXJtLCBzaG93IGFsbCBvcHRpb25zXG4gICAgaWYgKCFldmVudCB8fCBldmVudC50cmltKCkgPT09ICcnKSB7XG4gICAgICB0aGlzLmZpbHRlcmVkSXRlbXMgPSB0aGlzLnByb3BzPy5vcHRpb25zID8gWy4uLnRoaXMucHJvcHMub3B0aW9uc10gOiBbXTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIElmIG5vIG9wdGlvbnMsIG5vdGhpbmcgdG8gZmlsdGVyXG4gICAgaWYgKCF0aGlzLnByb3BzPy5vcHRpb25zIHx8IHRoaXMucHJvcHMub3B0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuZmlsdGVyZWRJdGVtcyA9IFtdO1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gUEVSRjogQXZvaWQgcmVwZWF0ZWQgcmVwbGFjZVNwZWNpYWxDaGFycyBhbmQgdG9Mb3dlckNhc2UgZm9yIGVhY2ggb3B0aW9uXG4gICAgY29uc3Qgc2VhcmNoID0gcmVwbGFjZVNwZWNpYWxDaGFycyhldmVudC50b0xvd2VyQ2FzZSgpKTtcbiAgICB0aGlzLmZpbHRlcmVkSXRlbXMgPSB0aGlzLnByb3BzLm9wdGlvbnMuZmlsdGVyKGVsZW1lbnQgPT4ge1xuICAgICAgLy8gT25seSB1c2UgbGFiZWxQcm9wZXJ0eSBhbmQgdmFsdWVQcm9wZXJ0eSBmb3IgZmlsdGVyaW5nIChmYXN0ZXIpXG4gICAgICBjb25zdCBsYWJlbCA9IGVsZW1lbnRbdGhpcy5sYWJlbFByb3BlcnR5XVxuICAgICAgICA/IHJlcGxhY2VTcGVjaWFsQ2hhcnMoU3RyaW5nKGVsZW1lbnRbdGhpcy5sYWJlbFByb3BlcnR5XSkudG9Mb3dlckNhc2UoKSlcbiAgICAgICAgOiAnJztcbiAgICAgIGNvbnN0IHZhbHVlID0gZWxlbWVudFt0aGlzLnZhbHVlUHJvcGVydHldXG4gICAgICAgID8gcmVwbGFjZVNwZWNpYWxDaGFycyhTdHJpbmcoZWxlbWVudFt0aGlzLnZhbHVlUHJvcGVydHldKS50b0xvd2VyQ2FzZSgpKVxuICAgICAgICA6ICcnO1xuICAgICAgcmV0dXJuIGxhYmVsLmluY2x1ZGVzKHNlYXJjaCkgfHwgdmFsdWUuaW5jbHVkZXMoc2VhcmNoKTtcbiAgICB9KTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG9uRm9jdXMoKSB7XG4gICAgY29uc29sZS5sb2coJ29uRm9jdXMnKTtcbiAgfVxuXG4gIG9uQmx1cigpIHtcbiAgICBjb25zb2xlLmxvZygnb25CbHVyJyk7XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgaWYgKHRoaXMubW9kYWwpIHtcbiAgICAgIHRoaXMubW9kYWwucHJlc2VudCgpO1xuICAgIH1cbiAgfVxuXG4gIHByZXZlbnREZWZhdWx0QmVoYXZpb3IoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMub3Blbk1vZGFsKCk7XG4gIH1cblxuICBjYW5jZWxNb2RhbCgpIHtcbiAgICAvLyBSZXNldCBmaWx0ZXIgYW5kIHNob3cgYWxsIG9wdGlvbnMgd2hlbiBjbG9zaW5nIG1vZGFsXG4gICAgdGhpcy5zZWFyY2hUZXJtID0gJyc7XG4gICAgdGhpcy5maWx0ZXJlZEl0ZW1zID0gdGhpcy5wcm9wcz8ub3B0aW9ucyA/IFsuLi50aGlzLnByb3BzLm9wdGlvbnNdIDogW107XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgaWYgKHRoaXMubW9kYWwpIHtcbiAgICAgIHRoaXMubW9kYWwuZGlzbWlzcygpO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdEl0ZW0oaXRlbTogYW55KSB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmZpbmRJbmRleChcbiAgICAgICAgc2VsZWN0ZWRJdGVtID0+IHNlbGVjdGVkSXRlbVt0aGlzLnZhbHVlUHJvcGVydHldID09PSBpdGVtW3RoaXMudmFsdWVQcm9wZXJ0eV1cbiAgICAgICk7XG5cbiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zLnB1c2goaXRlbSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gW2l0ZW1dO1xuICAgICAgdGhpcy5jYW5jZWxNb2RhbCgpO1xuICAgIH1cblxuICAgIHRoaXMudXBkYXRlRGlzcGxheVZhbHVlKCk7XG4gICAgdGhpcy5hcHBseUNoYW5nZXMoKTtcbiAgfVxuXG4gIGlzSXRlbVNlbGVjdGVkKGl0ZW06IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkSXRlbXMuc29tZShzZWxlY3RlZEl0ZW0gPT4gc2VsZWN0ZWRJdGVtW3RoaXMudmFsdWVQcm9wZXJ0eV0gPT09IGl0ZW1bdGhpcy52YWx1ZVByb3BlcnR5XSk7XG4gIH1cblxuICB1cGRhdGVEaXNwbGF5VmFsdWUoKSB7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gJyc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gdGhpcy5zZWxlY3RlZEl0ZW1zWzBdW3RoaXMubGFiZWxQcm9wZXJ0eV07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9IGAke3RoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGh9IGVsZW1lbnRvcyBzZWxlY2Npb25hZG9zYDtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSB0aGlzLnNlbGVjdGVkSXRlbXNbMF1bdGhpcy5sYWJlbFByb3BlcnR5XTtcbiAgICB9XG4gIH1cblxuICBhcHBseUNoYW5nZXMoKSB7XG4gICAgaWYgKCF0aGlzLnByb3BzPy5jb250cm9sKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuaXNQcm9jZXNzaW5nQ2hhbmdlcyA9IHRydWU7XG5cbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLnByb3BzLmNvbnRyb2wuc2V0VmFsdWUodGhpcy5zZWxlY3RlZEl0ZW1zWzBdW3RoaXMudmFsdWVQcm9wZXJ0eV0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5wcm9wcy5jb250cm9sLnNldFZhbHVlKG51bGwpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnByb3BzLmNvbnRyb2wubWFya0FzRGlydHkoKTtcbiAgICAgIHRoaXMucHJvcHMuY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNQcm9jZXNzaW5nQ2hhbmdlcyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8vIE3DqXRvZG8gcMO6YmxpY28gcGFyYSByZWluaWNpYXIgZWwgY29tcG9uZW50ZVxuICByZXNldCgpIHtcbiAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9ICcnO1xuICAgIGlmICh0aGlzLnByb3BzPy5jb250cm9sKSB7XG4gICAgICB0aGlzLnByb3BzLmNvbnRyb2wuc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG59XG4iXX0=
@@ -3,7 +3,6 @@ import { Component, Input, Output, EventEmitter, inject } from '@angular/core';
3
3
  import { IonButton, IonIcon, ToastController } from '@ionic/angular/standalone';
4
4
  import { addIcons } from 'ionicons';
5
5
  import { logoWhatsapp, logoFacebook, logoTwitter, logoLinkedin, paperPlaneOutline, mailOutline, copyOutline, shareOutline, } from 'ionicons/icons';
6
- import { LangService } from '../../../services/lang-provider/lang-provider.service';
7
6
  import { PLATFORM_CONFIGS, DEFAULT_PLATFORMS, } from './types';
8
7
  import * as i0 from "@angular/core";
9
8
  addIcons({
@@ -67,7 +66,6 @@ export class ShareButtonsComponent {
67
66
  constructor() {
68
67
  this.shareComplete = new EventEmitter();
69
68
  this.toastController = inject(ToastController);
70
- this.langService = inject(LangService);
71
69
  }
72
70
  getButtons() {
73
71
  if (this.props.buttons?.length) {
@@ -181,9 +179,6 @@ export class ShareButtonsComponent {
181
179
  }
182
180
  }
183
181
  getCopySuccessMessage() {
184
- if (this.props.copySuccessMessageContentKey && this.props.contentClass) {
185
- return this.langService.getText(this.props.contentClass, this.props.copySuccessMessageContentKey, this.props.copySuccessMessage || '¡Enlace copiado!');
186
- }
187
182
  return this.props.copySuccessMessage || '¡Enlace copiado!';
188
183
  }
189
184
  isNativeShareSupported() {
@@ -274,4 +269,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
274
269
  }], shareComplete: [{
275
270
  type: Output
276
271
  }] } });
277
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtYnV0dG9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3NoYXJlLWJ1dHRvbnMvc2hhcmUtYnV0dG9ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUNMLFlBQVksRUFDWixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixpQkFBaUIsRUFDakIsV0FBVyxFQUNYLFdBQVcsRUFDWCxZQUFZLEdBQ2IsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDcEYsT0FBTyxFQUtMLGdCQUFnQixFQUNoQixpQkFBaUIsR0FDbEIsTUFBTSxTQUFTLENBQUM7O0FBRWpCLFFBQVEsQ0FBQztJQUNQLFlBQVk7SUFDWixZQUFZO0lBQ1osV0FBVztJQUNYLFlBQVk7SUFDWixpQkFBaUI7SUFDakIsV0FBVztJQUNYLFdBQVc7SUFDWCxZQUFZO0NBQ2IsQ0FBQyxDQUFDO0FBOENIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBOENHO0FBQ0gsTUFBTSxPQUFPLHFCQUFxQjtJQTNGbEM7UUE4Rlksa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRWpELG9CQUFlLEdBQUcsTUFBTSxDQUFD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QUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsRUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsSUFBSSxrQkFBa0IsQ0FDcEQsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLElBQUksa0JBQWtCLENBQUM7SUFDN0QsQ0FBQztJQUVPLHNCQUFzQjtRQUM1QixPQUFPLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztJQUMvRCxDQUFDOytHQXBKVSxxQkFBcUI7bUdBQXJCLHFCQUFxQixzSkF2RnRCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUNULHF1RUF0Q1MsWUFBWSwrQkFBRSxTQUFTLG9QQUFFLE9BQU87OzRGQXdGL0IscUJBQXFCO2tCQTNGakMsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsWUFDakM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQ1Q7OEJBbURRLEtBQUs7c0JBQWIsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElvbkJ1dHRvbiwgSW9uSWNvbiwgVG9hc3RDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBhZGRJY29ucyB9IGZyb20gJ2lvbmljb25zJztcbmltcG9ydCB7XG4gIGxvZ29XaGF0c2FwcCxcbiAgbG9nb0ZhY2Vib29rLFxuICBsb2dvVHdpdHRlcixcbiAgbG9nb0xpbmtlZGluLFxuICBwYXBlclBsYW5lT3V0bGluZSxcbiAgbWFpbE91dGxpbmUsXG4gIGNvcHlPdXRsaW5lLFxuICBzaGFyZU91dGxpbmUsXG59IGZyb20gJ2lvbmljb25zL2ljb25zJztcbmltcG9ydCB7IExhbmdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbGFuZy1wcm92aWRlci9sYW5nLXByb3ZpZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgU2hhcmVCdXR0b25zTWV0YWRhdGEsXG4gIFNoYXJlRXZlbnQsXG4gIFNoYXJlUGxhdGZvcm0sXG4gIFNoYXJlQnV0dG9uQ29uZmlnLFxuICBQTEFURk9STV9DT05GSUdTLFxuICBERUZBVUxUX1BMQVRGT1JNUyxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmFkZEljb25zKHtcbiAgbG9nb1doYXRzYXBwLFxuICBsb2dvRmFjZWJvb2ssXG4gIGxvZ29Ud2l0dGVyLFxuICBsb2dvTGlua2VkaW4sXG4gIHBhcGVyUGxhbmVPdXRsaW5lLFxuICBtYWlsT3V0bGluZSxcbiAgY29weU91dGxpbmUsXG4gIHNoYXJlT3V0bGluZSxcbn0pO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtc2hhcmUtYnV0dG9ucycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElvbkJ1dHRvbiwgSW9uSWNvbl0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJzaGFyZS1idXR0b25zLWNvbnRhaW5lclwiXG4gICAgICBbY2xhc3NdPVwicHJvcHMuY3NzQ2xhc3NcIlxuICAgICAgW2NsYXNzLmxheW91dC1ob3Jpem9udGFsXT1cInByb3BzLmxheW91dCAhPT0gJ3ZlcnRpY2FsJ1wiXG4gICAgICBbY2xhc3MubGF5b3V0LXZlcnRpY2FsXT1cInByb3BzLmxheW91dCA9PT0gJ3ZlcnRpY2FsJ1wiXG4gICAgICBbY2xhc3Muc2l6ZS1zbWFsbF09XCJwcm9wcy5zaXplID09PSAnc21hbGwnXCJcbiAgICAgIFtjbGFzcy5zaXplLW1lZGl1bV09XCJwcm9wcy5zaXplID09PSAnbWVkaXVtJyB8fCAhcHJvcHMuc2l6ZVwiXG4gICAgICBbY2xhc3Muc2l6ZS1sYXJnZV09XCJwcm9wcy5zaXplID09PSAnbGFyZ2UnXCJcbiAgICAgIFtjbGFzcy52YXJpYW50LXNvbGlkXT1cInByb3BzLnZhcmlhbnQgPT09ICdzb2xpZCcgfHwgIXByb3BzLnZhcmlhbnRcIlxuICAgICAgW2NsYXNzLnZhcmlhbnQtb3V0bGluZV09XCJwcm9wcy52YXJpYW50ID09PSAnb3V0bGluZSdcIlxuICAgICAgW2NsYXNzLnZhcmlhbnQtaWNvbi1vbmx5XT1cInByb3BzLnZhcmlhbnQgPT09ICdpY29uLW9ubHknXCJcbiAgICAgIFtzdHlsZS4tLXNoYXJlLWdhcF09XCIocHJvcHMuZ2FwIHx8IDgpICsgJ3B4J1wiXG4gICAgPlxuICAgICAgQGZvciAoYnV0dG9uIG9mIGdldEJ1dHRvbnMoKTsgdHJhY2sgYnV0dG9uLnBsYXRmb3JtKSB7XG4gICAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJzaGFyZS1idXR0b25cIlxuICAgICAgICAgIFtjbGFzc109XCIncGxhdGZvcm0tJyArIGJ1dHRvbi5wbGF0Zm9ybVwiXG4gICAgICAgICAgW2ZpbGxdPVwiZ2V0QnV0dG9uRmlsbCgpXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiYnV0dG9uLmRpc2FibGVkXCJcbiAgICAgICAgICBbc3R5bGUuLS1iYWNrZ3JvdW5kXT1cImdldEJ1dHRvbkNvbG9yKGJ1dHRvbilcIlxuICAgICAgICAgIFtzdHlsZS4tLWJhY2tncm91bmQtaG92ZXJdPVwiZ2V0QnV0dG9uQ29sb3IoYnV0dG9uKVwiXG4gICAgICAgICAgW3N0eWxlLi0tYm9yZGVyLWNvbG9yXT1cImdldEJ1dHRvbkNvbG9yKGJ1dHRvbilcIlxuICAgICAgICAgIFtzdHlsZS4tLWNvbG9yXT1cInByb3BzLnZhcmlhbnQgPT09ICdvdXRsaW5lJyA/IGdldEJ1dHRvbkNvbG9yKGJ1dHRvbikgOiBudWxsXCJcbiAgICAgICAgICAoY2xpY2spPVwic2hhcmUoYnV0dG9uLnBsYXRmb3JtKVwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJnZXRCdXR0b25MYWJlbChidXR0b24pXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgW3Nsb3RdPVwicHJvcHMuc2hvd0xhYmVscyA9PT0gZmFsc2UgfHwgcHJvcHMudmFyaWFudCA9PT0gJ2ljb24tb25seScgPyAnaWNvbi1vbmx5JyA6ICdzdGFydCdcIlxuICAgICAgICAgICAgW25hbWVdPVwiZ2V0QnV0dG9uSWNvbihidXR0b24pXCJcbiAgICAgICAgICA+PC9pb24taWNvbj5cbiAgICAgICAgICBAaWYgKHByb3BzLnNob3dMYWJlbHMgIT09IGZhbHNlICYmIHByb3BzLnZhcmlhbnQgIT09ICdpY29uLW9ubHknKSB7XG4gICAgICAgICAgICB7eyBnZXRCdXR0b25MYWJlbChidXR0b24pIH19XG4gICAgICAgICAgfVxuICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL3NoYXJlLWJ1dHRvbnMuY29tcG9uZW50LnNjc3MnXSxcbn0pXG4vKipcbiAqIHZhbC1zaGFyZS1idXR0b25zXG4gKlxuICogQSBjb21wb25lbnQgZm9yIHNoYXJpbmcgY29udGVudCB0byB2YXJpb3VzIHNvY2lhbCBtZWRpYSBwbGF0Zm9ybXMuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2VcbiAqIGBgYGh0bWxcbiAqIDx2YWwtc2hhcmUtYnV0dG9uc1xuICogICBbcHJvcHNdPVwie1xuICogICAgIHNoYXJlRGF0YToge1xuICogICAgICAgdGl0bGU6ICdDaGVjayB0aGlzIG91dCEnLFxuICogICAgICAgdGV4dDogJ0FtYXppbmcgY29udGVudCBoZXJlJyxcbiAqICAgICAgIHVybDogJ2h0dHBzOi8vZXhhbXBsZS5jb20nXG4gKiAgICAgfVxuICogICB9XCJcbiAqID48L3ZhbC1zaGFyZS1idXR0b25zPlxuICogYGBgXG4gKlxuICogQGV4YW1wbGUgV2l0aCBzcGVjaWZpYyBwbGF0Zm9ybXNcbiAqIGBgYGh0bWxcbiAqIDx2YWwtc2hhcmUtYnV0dG9uc1xuICogICBbcHJvcHNdPVwie1xuICogICAgIHNoYXJlRGF0YToge1xuICogICAgICAgdGl0bGU6ICdKb2luIG15IHJhZmZsZSEnLFxuICogICAgICAgdGV4dDogJ1dpbiBhbWF6aW5nIHByaXplcycsXG4gKiAgICAgICB1cmw6ICdodHRwczovL3JhZmZsZS5leGFtcGxlLmNvbS8xMjMnXG4gKiAgICAgfSxcbiAqICAgICBwbGF0Zm9ybXM6IFsnd2hhdHNhcHAnLCAnZmFjZWJvb2snLCAndHdpdHRlcicsICdjb3B5J10sXG4gKiAgICAgdmFyaWFudDogJ2ljb24tb25seScsXG4gKiAgICAgdXNlUGxhdGZvcm1Db2xvcnM6IHRydWVcbiAqICAgfVwiXG4gKiAgIChzaGFyZUNvbXBsZXRlKT1cIm9uU2hhcmUoJGV2ZW50KVwiXG4gKiA+PC92YWwtc2hhcmUtYnV0dG9ucz5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFZlcnRpY2FsIGxheW91dFxuICogYGBgaHRtbFxuICogPHZhbC1zaGFyZS1idXR0b25zXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgc2hhcmVEYXRhOiBzaGFyZURhdGEsXG4gKiAgICAgbGF5b3V0OiAndmVydGljYWwnLFxuICogICAgIHNob3dMYWJlbHM6IHRydWUsXG4gKiAgICAgc2l6ZTogJ2xhcmdlJ1xuICogICB9XCJcbiAqID48L3ZhbC1zaGFyZS1idXR0b25zPlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBTaGFyZUJ1dHRvbnNDb21wb25lbnQge1xuICBASW5wdXQoKSBwcm9wczogU2hhcmVCdXR0b25zTWV0YWRhdGE7XG5cbiAgQE91dHB1dCgpIHNoYXJlQ29tcGxldGUgPSBuZXcgRXZlbnRFbWl0dGVyPFNoYXJlRXZlbnQ+KCk7XG5cbiAgcHJpdmF0ZSB0b2FzdENvbnRyb2xsZXIgPSBpbmplY3QoVG9hc3RDb250cm9sbGVyKTtcbiAgcHJpdmF0ZSBsYW5nU2VydmljZSA9IGluamVjdChMYW5nU2VydmljZSk7XG5cbiAgZ2V0QnV0dG9ucygpOiBTaGFyZUJ1dHRvbkNvbmZpZ1tdIHtcbiAgICBpZiAodGhpcy5wcm9wcy5idXR0b25zPy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLmJ1dHRvbnM7XG4gICAgfVxuXG4gICAgY29uc3QgcGxhdGZvcm1zID0gdGhpcy5wcm9wcy5wbGF0Zm9ybXMgfHwgREVGQVVMVF9QTEFURk9STVM7XG5cbiAgICAvLyBGaWx0ZXIgb3V0IG5hdGl2ZSBzaGFyZSBpZiBub3Qgc3VwcG9ydGVkXG4gICAgY29uc3QgZmlsdGVyZWRQbGF0Zm9ybXMgPSBwbGF0Zm9ybXMuZmlsdGVyKHAgPT4ge1xuICAgICAgaWYgKHAgPT09ICduYXRpdmUnICYmICF0aGlzLmlzTmF0aXZlU2hhcmVTdXBwb3J0ZWQoKSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9KTtcblxuICAgIHJldHVybiBmaWx0ZXJlZFBsYXRmb3Jtcy5tYXAocGxhdGZvcm0gPT4gKHsgcGxhdGZvcm0gfSkpO1xuICB9XG5cbiAgZ2V0QnV0dG9uRmlsbCgpOiAnc29saWQnIHwgJ291dGxpbmUnIHwgJ2NsZWFyJyB7XG4gICAgaWYgKHRoaXMucHJvcHMudmFyaWFudCA9PT0gJ291dGxpbmUnKSByZXR1cm4gJ291dGxpbmUnO1xuICAgIGlmICh0aGlzLnByb3BzLnZhcmlhbnQgPT09ICdpY29uLW9ubHknKSByZXR1cm4gJ2NsZWFyJztcbiAgICByZXR1cm4gJ3NvbGlkJztcbiAgfVxuXG4gIGdldEJ1dHRvbkljb24oYnV0dG9uOiBTaGFyZUJ1dHRvbkNvbmZpZyk6IHN0cmluZyB7XG4gICAgaWYgKGJ1dHRvbi5pY29uKSByZXR1cm4gYnV0dG9uLmljb247XG4gICAgcmV0dXJuIFBMQVRGT1JNX0NPTkZJR1NbYnV0dG9uLnBsYXRmb3JtXT8uaWNvbiB8fCAnc2hhcmUtb3V0bGluZSc7XG4gIH1cblxuICBnZXRCdXR0b25MYWJlbChidXR0b246IFNoYXJlQnV0dG9uQ29uZmlnKTogc3RyaW5nIHtcbiAgICBpZiAoYnV0dG9uLmxhYmVsKSByZXR1cm4gYnV0dG9uLmxhYmVsO1xuICAgIHJldHVybiBQTEFURk9STV9DT05GSUdTW2J1dHRvbi5wbGF0Zm9ybV0/Lm5hbWUgfHwgYnV0dG9uLnBsYXRmb3JtO1xuICB9XG5cbiAgZ2V0QnV0dG9uQ29sb3IoYnV0dG9uOiBTaGFyZUJ1dHRvbkNvbmZpZyk6IHN0cmluZyB7XG4gICAgaWYgKGJ1dHRvbi5jb2xvcikge1xuICAgICAgaWYgKHR5cGVvZiBidXR0b24uY29sb3IgPT09ICdzdHJpbmcnICYmIGJ1dHRvbi5jb2xvci5zdGFydHNXaXRoKCcjJykpIHtcbiAgICAgICAgcmV0dXJuIGJ1dHRvbi5jb2xvcjtcbiAgICAgIH1cbiAgICAgIHJldHVybiBgdmFyKC0taW9uLWNvbG9yLSR7YnV0dG9uLmNvbG9yfSlgO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnByb3BzLnVzZVBsYXRmb3JtQ29sb3JzICE9PSBmYWxzZSkge1xuICAgICAgcmV0dXJuIFBMQVRGT1JNX0NPTkZJR1NbYnV0dG9uLnBsYXRmb3JtXT8uY29sb3IgfHwgJ3ZhcigtLWlvbi1jb2xvci1wcmltYXJ5KSc7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucHJvcHMuY29sb3IpIHtcbiAgICAgIHJldHVybiBgdmFyKC0taW9uLWNvbG9yLSR7dGhpcy5wcm9wcy5jb2xvcn0pYDtcbiAgICB9XG5cbiAgICByZXR1cm4gJ3ZhcigtLWlvbi1jb2xvci1wcmltYXJ5KSc7XG4gIH1cblxuICBhc3luYyBzaGFyZShwbGF0Zm9ybTogU2hhcmVQbGF0Zm9ybSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHNoYXJlRGF0YSA9IHRoaXMucHJvcHMuc2hhcmVEYXRhO1xuXG4gICAgdHJ5IHtcbiAgICAgIHN3aXRjaCAocGxhdGZvcm0pIHtcbiAgICAgICAgY2FzZSAnbmF0aXZlJzpcbiAgICAgICAgICBhd2FpdCB0aGlzLm5hdGl2ZVNoYXJlKCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2NvcHknOlxuICAgICAgICAgIGF3YWl0IHRoaXMuY29weVRvQ2xpcGJvYXJkKCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhpcy5vcGVuU2hhcmVVcmwocGxhdGZvcm0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNoYXJlQ29tcGxldGUuZW1pdCh7XG4gICAgICAgIHBsYXRmb3JtLFxuICAgICAgICBzdWNjZXNzOiB0cnVlLFxuICAgICAgICBzaGFyZURhdGEsXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy5zaGFyZUNvbXBsZXRlLmVtaXQoe1xuICAgICAgICBwbGF0Zm9ybSxcbiAgICAgICAgc3VjY2VzczogZmFsc2UsXG4gICAgICAgIGVycm9yOiBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6ICdVbmtub3duIGVycm9yJyxcbiAgICAgICAgc2hhcmVEYXRhLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvcGVuU2hhcmVVcmwocGxhdGZvcm06IFNoYXJlUGxhdGZvcm0pOiB2b2lkIHtcbiAgICBjb25zdCBjb25maWcgPSBQTEFURk9STV9DT05GSUdTW3BsYXRmb3JtXTtcbiAgICBpZiAoIWNvbmZpZykgcmV0dXJuO1xuXG4gICAgY29uc3QgdXJsID0gY29uZmlnLmdldFVybCh0aGlzLnByb3BzLnNoYXJlRGF0YSk7XG4gICAgaWYgKHVybCkge1xuICAgICAgd2luZG93Lm9wZW4odXJsLCAnX2JsYW5rJywgJ25vb3BlbmVyLG5vcmVmZXJyZXInKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIG5hdGl2ZVNoYXJlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghdGhpcy5pc05hdGl2ZVNoYXJlU3VwcG9ydGVkKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTmF0aXZlIHNoYXJlIG5vdCBzdXBwb3J0ZWQnKTtcbiAgICB9XG5cbiAgICBjb25zdCBkYXRhOiBTaGFyZURhdGEgPSB7XG4gICAgICB0aXRsZTogdGhpcy5wcm9wcy5zaGFyZURhdGEudGl0bGUsXG4gICAgICB0ZXh0OiB0aGlzLnByb3BzLnNoYXJlRGF0YS50ZXh0LFxuICAgICAgdXJsOiB0aGlzLnByb3BzLnNoYXJlRGF0YS51cmwsXG4gICAgfTtcblxuICAgIGF3YWl0IG5hdmlnYXRvci5zaGFyZShkYXRhIGFzIGdsb2JhbFRoaXMuU2hhcmVEYXRhKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgY29weVRvQ2xpcGJvYXJkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHRleHRUb0NvcHkgPSB0aGlzLnByb3BzLnNoYXJlRGF0YS51cmwgfHxcbiAgICAgIGAke3RoaXMucHJvcHMuc2hhcmVEYXRhLnRleHQgfHwgJyd9ICR7dGhpcy5wcm9wcy5zaGFyZURhdGEudXJsIHx8ICcnfWAudHJpbSgpO1xuXG4gICAgYXdhaXQgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQodGV4dFRvQ29weSk7XG5cbiAgICBpZiAodGhpcy5wcm9wcy5zaG93Q29weVRvYXN0ICE9PSBmYWxzZSkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IHRoaXMuZ2V0Q29weVN1Y2Nlc3NNZXNzYWdlKCk7XG4gICAgICBjb25zdCB0b2FzdCA9IGF3YWl0IHRoaXMudG9hc3RDb250cm9sbGVyLmNyZWF0ZSh7XG4gICAgICAgIG1lc3NhZ2UsXG4gICAgICAgIGR1cmF0aW9uOiAyMDAwLFxuICAgICAgICBwb3NpdGlvbjogJ2JvdHRvbScsXG4gICAgICAgIGNvbG9yOiAnc3VjY2VzcycsXG4gICAgICAgIGljb246ICdjaGVja21hcmstY2lyY2xlLW91dGxpbmUnLFxuICAgICAgfSk7XG4gICAgICBhd2FpdCB0b2FzdC5wcmVzZW50KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb3B5U3VjY2Vzc01lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5wcm9wcy5jb3B5U3VjY2Vzc01lc3NhZ2VDb250ZW50S2V5ICYmIHRoaXMucHJvcHMuY29udGVudENsYXNzKSB7XG4gICAgICByZXR1cm4gdGhpcy5sYW5nU2VydmljZS5nZXRUZXh0KFxuICAgICAgICB0aGlzLnByb3BzLmNvbnRlbnRDbGFzcyxcbiAgICAgICAgdGhpcy5wcm9wcy5jb3B5U3VjY2Vzc01lc3NhZ2VDb250ZW50S2V5LFxuICAgICAgICB0aGlzLnByb3BzLmNvcHlTdWNjZXNzTWVzc2FnZSB8fCAnwqFFbmxhY2UgY29waWFkbyEnXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5wcm9wcy5jb3B5U3VjY2Vzc01lc3NhZ2UgfHwgJ8KhRW5sYWNlIGNvcGlhZG8hJztcbiAgfVxuXG4gIHByaXZhdGUgaXNOYXRpdmVTaGFyZVN1cHBvcnRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHlwZW9mIG5hdmlnYXRvciAhPT0gJ3VuZGVmaW5lZCcgJiYgISFuYXZpZ2F0b3Iuc2hhcmU7XG4gIH1cbn1cbiJdfQ==
272
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtYnV0dG9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3NoYXJlLWJ1dHRvbnMvc2hhcmUtYnV0dG9ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUNMLFlBQVksRUFDWixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixpQkFBaUIsRUFDakIsV0FBVyxFQUNYLFdBQVcsRUFDWCxZQUFZLEdBQ2IsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBS0wsZ0JBQWdCLEVBQ2hCLGlCQUFpQixHQUNsQixNQUFNLFNBQVMsQ0FBQzs7QUFFakIsUUFBUSxDQUFDO0lBQ1AsWUFBWTtJQUNaLFlBQVk7SUFDWixXQUFXO0lBQ1gsWUFBWTtJQUNaLGlCQUFpQjtJQUNqQixXQUFXO0lBQ1gsV0FBVztJQUNYLFlBQVk7Q0FDYixDQUFDLENBQUM7QUE4Q0g7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Q0c7QUFDSCxNQUFNLE9BQU8scUJBQXFCO0lBM0ZsQztRQThGWSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7UUFFakQsb0JBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7S0F3SW5EO0lBdElDLFVBQVU7UUFDUixJQUFJ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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQ1QscXVFQXRDUyxZQUFZLCtCQUFFLFNBQVMsb1BBQUUsT0FBTzs7NEZBd0YvQixxQkFBcUI7a0JBM0ZqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxZQUNqQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFDVDs4QkFtRFEsS0FBSztzQkFBYixLQUFLO2dCQUVJLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW9uQnV0dG9uLCBJb25JY29uLCBUb2FzdENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IGFkZEljb25zIH0gZnJvbSAnaW9uaWNvbnMnO1xuaW1wb3J0IHtcbiAgbG9nb1doYXRzYXBwLFxuICBsb2dvRmFjZWJvb2ssXG4gIGxvZ29Ud2l0dGVyLFxuICBsb2dvTGlua2VkaW4sXG4gIHBhcGVyUGxhbmVPdXRsaW5lLFxuICBtYWlsT3V0bGluZSxcbiAgY29weU91dGxpbmUsXG4gIHNoYXJlT3V0bGluZSxcbn0gZnJvbSAnaW9uaWNvbnMvaWNvbnMnO1xuaW1wb3J0IHtcbiAgU2hhcmVCdXR0b25zTWV0YWRhdGEsXG4gIFNoYXJlRXZlbnQsXG4gIFNoYXJlUGxhdGZvcm0sXG4gIFNoYXJlQnV0dG9uQ29uZmlnLFxuICBQTEFURk9STV9DT05GSUdTLFxuICBERUZBVUxUX1BMQVRGT1JNUyxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmFkZEljb25zKHtcbiAgbG9nb1doYXRzYXBwLFxuICBsb2dvRmFjZWJvb2ssXG4gIGxvZ29Ud2l0dGVyLFxuICBsb2dvTGlua2VkaW4sXG4gIHBhcGVyUGxhbmVPdXRsaW5lLFxuICBtYWlsT3V0bGluZSxcbiAgY29weU91dGxpbmUsXG4gIHNoYXJlT3V0bGluZSxcbn0pO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtc2hhcmUtYnV0dG9ucycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElvbkJ1dHRvbiwgSW9uSWNvbl0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJzaGFyZS1idXR0b25zLWNvbnRhaW5lclwiXG4gICAgICBbY2xhc3NdPVwicHJvcHMuY3NzQ2xhc3NcIlxuICAgICAgW2NsYXNzLmxheW91dC1ob3Jpem9udGFsXT1cInByb3BzLmxheW91dCAhPT0gJ3ZlcnRpY2FsJ1wiXG4gICAgICBbY2xhc3MubGF5b3V0LXZlcnRpY2FsXT1cInByb3BzLmxheW91dCA9PT0gJ3ZlcnRpY2FsJ1wiXG4gICAgICBbY2xhc3Muc2l6ZS1zbWFsbF09XCJwcm9wcy5zaXplID09PSAnc21hbGwnXCJcbiAgICAgIFtjbGFzcy5zaXplLW1lZGl1bV09XCJwcm9wcy5zaXplID09PSAnbWVkaXVtJyB8fCAhcHJvcHMuc2l6ZVwiXG4gICAgICBbY2xhc3Muc2l6ZS1sYXJnZV09XCJwcm9wcy5zaXplID09PSAnbGFyZ2UnXCJcbiAgICAgIFtjbGFzcy52YXJpYW50LXNvbGlkXT1cInByb3BzLnZhcmlhbnQgPT09ICdzb2xpZCcgfHwgIXByb3BzLnZhcmlhbnRcIlxuICAgICAgW2NsYXNzLnZhcmlhbnQtb3V0bGluZV09XCJwcm9wcy52YXJpYW50ID09PSAnb3V0bGluZSdcIlxuICAgICAgW2NsYXNzLnZhcmlhbnQtaWNvbi1vbmx5XT1cInByb3BzLnZhcmlhbnQgPT09ICdpY29uLW9ubHknXCJcbiAgICAgIFtzdHlsZS4tLXNoYXJlLWdhcF09XCIocHJvcHMuZ2FwIHx8IDgpICsgJ3B4J1wiXG4gICAgPlxuICAgICAgQGZvciAoYnV0dG9uIG9mIGdldEJ1dHRvbnMoKTsgdHJhY2sgYnV0dG9uLnBsYXRmb3JtKSB7XG4gICAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJzaGFyZS1idXR0b25cIlxuICAgICAgICAgIFtjbGFzc109XCIncGxhdGZvcm0tJyArIGJ1dHRvbi5wbGF0Zm9ybVwiXG4gICAgICAgICAgW2ZpbGxdPVwiZ2V0QnV0dG9uRmlsbCgpXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiYnV0dG9uLmRpc2FibGVkXCJcbiAgICAgICAgICBbc3R5bGUuLS1iYWNrZ3JvdW5kXT1cImdldEJ1dHRvbkNvbG9yKGJ1dHRvbilcIlxuICAgICAgICAgIFtzdHlsZS4tLWJhY2tncm91bmQtaG92ZXJdPVwiZ2V0QnV0dG9uQ29sb3IoYnV0dG9uKVwiXG4gICAgICAgICAgW3N0eWxlLi0tYm9yZGVyLWNvbG9yXT1cImdldEJ1dHRvbkNvbG9yKGJ1dHRvbilcIlxuICAgICAgICAgIFtzdHlsZS4tLWNvbG9yXT1cInByb3BzLnZhcmlhbnQgPT09ICdvdXRsaW5lJyA/IGdldEJ1dHRvbkNvbG9yKGJ1dHRvbikgOiBudWxsXCJcbiAgICAgICAgICAoY2xpY2spPVwic2hhcmUoYnV0dG9uLnBsYXRmb3JtKVwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJnZXRCdXR0b25MYWJlbChidXR0b24pXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgW3Nsb3RdPVwicHJvcHMuc2hvd0xhYmVscyA9PT0gZmFsc2UgfHwgcHJvcHMudmFyaWFudCA9PT0gJ2ljb24tb25seScgPyAnaWNvbi1vbmx5JyA6ICdzdGFydCdcIlxuICAgICAgICAgICAgW25hbWVdPVwiZ2V0QnV0dG9uSWNvbihidXR0b24pXCJcbiAgICAgICAgICA+PC9pb24taWNvbj5cbiAgICAgICAgICBAaWYgKHByb3BzLnNob3dMYWJlbHMgIT09IGZhbHNlICYmIHByb3BzLnZhcmlhbnQgIT09ICdpY29uLW9ubHknKSB7XG4gICAgICAgICAgICB7eyBnZXRCdXR0b25MYWJlbChidXR0b24pIH19XG4gICAgICAgICAgfVxuICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL3NoYXJlLWJ1dHRvbnMuY29tcG9uZW50LnNjc3MnXSxcbn0pXG4vKipcbiAqIHZhbC1zaGFyZS1idXR0b25zXG4gKlxuICogQSBjb21wb25lbnQgZm9yIHNoYXJpbmcgY29udGVudCB0byB2YXJpb3VzIHNvY2lhbCBtZWRpYSBwbGF0Zm9ybXMuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2VcbiAqIGBgYGh0bWxcbiAqIDx2YWwtc2hhcmUtYnV0dG9uc1xuICogICBbcHJvcHNdPVwie1xuICogICAgIHNoYXJlRGF0YToge1xuICogICAgICAgdGl0bGU6ICdDaGVjayB0aGlzIG91dCEnLFxuICogICAgICAgdGV4dDogJ0FtYXppbmcgY29udGVudCBoZXJlJyxcbiAqICAgICAgIHVybDogJ2h0dHBzOi8vZXhhbXBsZS5jb20nXG4gKiAgICAgfVxuICogICB9XCJcbiAqID48L3ZhbC1zaGFyZS1idXR0b25zPlxuICogYGBgXG4gKlxuICogQGV4YW1wbGUgV2l0aCBzcGVjaWZpYyBwbGF0Zm9ybXNcbiAqIGBgYGh0bWxcbiAqIDx2YWwtc2hhcmUtYnV0dG9uc1xuICogICBbcHJvcHNdPVwie1xuICogICAgIHNoYXJlRGF0YToge1xuICogICAgICAgdGl0bGU6ICdKb2luIG15IHJhZmZsZSEnLFxuICogICAgICAgdGV4dDogJ1dpbiBhbWF6aW5nIHByaXplcycsXG4gKiAgICAgICB1cmw6ICdodHRwczovL3JhZmZsZS5leGFtcGxlLmNvbS8xMjMnXG4gKiAgICAgfSxcbiAqICAgICBwbGF0Zm9ybXM6IFsnd2hhdHNhcHAnLCAnZmFjZWJvb2snLCAndHdpdHRlcicsICdjb3B5J10sXG4gKiAgICAgdmFyaWFudDogJ2ljb24tb25seScsXG4gKiAgICAgdXNlUGxhdGZvcm1Db2xvcnM6IHRydWVcbiAqICAgfVwiXG4gKiAgIChzaGFyZUNvbXBsZXRlKT1cIm9uU2hhcmUoJGV2ZW50KVwiXG4gKiA+PC92YWwtc2hhcmUtYnV0dG9ucz5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFZlcnRpY2FsIGxheW91dFxuICogYGBgaHRtbFxuICogPHZhbC1zaGFyZS1idXR0b25zXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgc2hhcmVEYXRhOiBzaGFyZURhdGEsXG4gKiAgICAgbGF5b3V0OiAndmVydGljYWwnLFxuICogICAgIHNob3dMYWJlbHM6IHRydWUsXG4gKiAgICAgc2l6ZTogJ2xhcmdlJ1xuICogICB9XCJcbiAqID48L3ZhbC1zaGFyZS1idXR0b25zPlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBTaGFyZUJ1dHRvbnNDb21wb25lbnQge1xuICBASW5wdXQoKSBwcm9wczogU2hhcmVCdXR0b25zTWV0YWRhdGE7XG5cbiAgQE91dHB1dCgpIHNoYXJlQ29tcGxldGUgPSBuZXcgRXZlbnRFbWl0dGVyPFNoYXJlRXZlbnQ+KCk7XG5cbiAgcHJpdmF0ZSB0b2FzdENvbnRyb2xsZXIgPSBpbmplY3QoVG9hc3RDb250cm9sbGVyKTtcblxuICBnZXRCdXR0b25zKCk6IFNoYXJlQnV0dG9uQ29uZmlnW10ge1xuICAgIGlmICh0aGlzLnByb3BzLmJ1dHRvbnM/Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMuYnV0dG9ucztcbiAgICB9XG5cbiAgICBjb25zdCBwbGF0Zm9ybXMgPSB0aGlzLnByb3BzLnBsYXRmb3JtcyB8fCBERUZBVUxUX1BMQVRGT1JNUztcblxuICAgIC8vIEZpbHRlciBvdXQgbmF0aXZlIHNoYXJlIGlmIG5vdCBzdXBwb3J0ZWRcbiAgICBjb25zdCBmaWx0ZXJlZFBsYXRmb3JtcyA9IHBsYXRmb3Jtcy5maWx0ZXIocCA9PiB7XG4gICAgICBpZiAocCA9PT0gJ25hdGl2ZScgJiYgIXRoaXMuaXNOYXRpdmVTaGFyZVN1cHBvcnRlZCgpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGZpbHRlcmVkUGxhdGZvcm1zLm1hcChwbGF0Zm9ybSA9PiAoeyBwbGF0Zm9ybSB9KSk7XG4gIH1cblxuICBnZXRCdXR0b25GaWxsKCk6ICdzb2xpZCcgfCAnb3V0bGluZScgfCAnY2xlYXInIHtcbiAgICBpZiAodGhpcy5wcm9wcy52YXJpYW50ID09PSAnb3V0bGluZScpIHJldHVybiAnb3V0bGluZSc7XG4gICAgaWYgKHRoaXMucHJvcHMudmFyaWFudCA9PT0gJ2ljb24tb25seScpIHJldHVybiAnY2xlYXInO1xuICAgIHJldHVybiAnc29saWQnO1xuICB9XG5cbiAgZ2V0QnV0dG9uSWNvbihidXR0b246IFNoYXJlQnV0dG9uQ29uZmlnKTogc3RyaW5nIHtcbiAgICBpZiAoYnV0dG9uLmljb24pIHJldHVybiBidXR0b24uaWNvbjtcbiAgICByZXR1cm4gUExBVEZPUk1fQ09ORklHU1tidXR0b24ucGxhdGZvcm1dPy5pY29uIHx8ICdzaGFyZS1vdXRsaW5lJztcbiAgfVxuXG4gIGdldEJ1dHRvbkxhYmVsKGJ1dHRvbjogU2hhcmVCdXR0b25Db25maWcpOiBzdHJpbmcge1xuICAgIGlmIChidXR0b24ubGFiZWwpIHJldHVybiBidXR0b24ubGFiZWw7XG4gICAgcmV0dXJuIFBMQVRGT1JNX0NPTkZJR1NbYnV0dG9uLnBsYXRmb3JtXT8ubmFtZSB8fCBidXR0b24ucGxhdGZvcm07XG4gIH1cblxuICBnZXRCdXR0b25Db2xvcihidXR0b246IFNoYXJlQnV0dG9uQ29uZmlnKTogc3RyaW5nIHtcbiAgICBpZiAoYnV0dG9uLmNvbG9yKSB7XG4gICAgICBpZiAodHlwZW9mIGJ1dHRvbi5jb2xvciA9PT0gJ3N0cmluZycgJiYgYnV0dG9uLmNvbG9yLnN0YXJ0c1dpdGgoJyMnKSkge1xuICAgICAgICByZXR1cm4gYnV0dG9uLmNvbG9yO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGB2YXIoLS1pb24tY29sb3ItJHtidXR0b24uY29sb3J9KWA7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucHJvcHMudXNlUGxhdGZvcm1Db2xvcnMgIT09IGZhbHNlKSB7XG4gICAgICByZXR1cm4gUExBVEZPUk1fQ09ORklHU1tidXR0b24ucGxhdGZvcm1dPy5jb2xvciB8fCAndmFyKC0taW9uLWNvbG9yLXByaW1hcnkpJztcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wcm9wcy5jb2xvcikge1xuICAgICAgcmV0dXJuIGB2YXIoLS1pb24tY29sb3ItJHt0aGlzLnByb3BzLmNvbG9yfSlgO1xuICAgIH1cblxuICAgIHJldHVybiAndmFyKC0taW9uLWNvbG9yLXByaW1hcnkpJztcbiAgfVxuXG4gIGFzeW5jIHNoYXJlKHBsYXRmb3JtOiBTaGFyZVBsYXRmb3JtKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc2hhcmVEYXRhID0gdGhpcy5wcm9wcy5zaGFyZURhdGE7XG5cbiAgICB0cnkge1xuICAgICAgc3dpdGNoIChwbGF0Zm9ybSkge1xuICAgICAgICBjYXNlICduYXRpdmUnOlxuICAgICAgICAgIGF3YWl0IHRoaXMubmF0aXZlU2hhcmUoKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnY29weSc6XG4gICAgICAgICAgYXdhaXQgdGhpcy5jb3B5VG9DbGlwYm9hcmQoKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aGlzLm9wZW5TaGFyZVVybChwbGF0Zm9ybSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2hhcmVDb21wbGV0ZS5lbWl0KHtcbiAgICAgICAgcGxhdGZvcm0sXG4gICAgICAgIHN1Y2Nlc3M6IHRydWUsXG4gICAgICAgIHNoYXJlRGF0YSxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLnNoYXJlQ29tcGxldGUuZW1pdCh7XG4gICAgICAgIHBsYXRmb3JtLFxuICAgICAgICBzdWNjZXNzOiBmYWxzZSxcbiAgICAgICAgZXJyb3I6IGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ1Vua25vd24gZXJyb3InLFxuICAgICAgICBzaGFyZURhdGEsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9wZW5TaGFyZVVybChwbGF0Zm9ybTogU2hhcmVQbGF0Zm9ybSk6IHZvaWQge1xuICAgIGNvbnN0IGNvbmZpZyA9IFBMQVRGT1JNX0NPTkZJR1NbcGxhdGZvcm1dO1xuICAgIGlmICghY29uZmlnKSByZXR1cm47XG5cbiAgICBjb25zdCB1cmwgPSBjb25maWcuZ2V0VXJsKHRoaXMucHJvcHMuc2hhcmVEYXRhKTtcbiAgICBpZiAodXJsKSB7XG4gICAgICB3aW5kb3cub3Blbih1cmwsICdfYmxhbmsnLCAnbm9vcGVuZXIsbm9yZWZlcnJlcicpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbmF0aXZlU2hhcmUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLmlzTmF0aXZlU2hhcmVTdXBwb3J0ZWQoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOYXRpdmUgc2hhcmUgbm90IHN1cHBvcnRlZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IGRhdGE6IFNoYXJlRGF0YSA9IHtcbiAgICAgIHRpdGxlOiB0aGlzLnByb3BzLnNoYXJlRGF0YS50aXRsZSxcbiAgICAgIHRleHQ6IHRoaXMucHJvcHMuc2hhcmVEYXRhLnRleHQsXG4gICAgICB1cmw6IHRoaXMucHJvcHMuc2hhcmVEYXRhLnVybCxcbiAgICB9O1xuXG4gICAgYXdhaXQgbmF2aWdhdG9yLnNoYXJlKGRhdGEgYXMgZ2xvYmFsVGhpcy5TaGFyZURhdGEpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBjb3B5VG9DbGlwYm9hcmQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgdGV4dFRvQ29weSA9IHRoaXMucHJvcHMuc2hhcmVEYXRhLnVybCB8fFxuICAgICAgYCR7dGhpcy5wcm9wcy5zaGFyZURhdGEudGV4dCB8fCAnJ30gJHt0aGlzLnByb3BzLnNoYXJlRGF0YS51cmwgfHwgJyd9YC50cmltKCk7XG5cbiAgICBhd2FpdCBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dCh0ZXh0VG9Db3B5KTtcblxuICAgIGlmICh0aGlzLnByb3BzLnNob3dDb3B5VG9hc3QgIT09IGZhbHNlKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gdGhpcy5nZXRDb3B5U3VjY2Vzc01lc3NhZ2UoKTtcbiAgICAgIGNvbnN0IHRvYXN0ID0gYXdhaXQgdGhpcy50b2FzdENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgZHVyYXRpb246IDIwMDAsXG4gICAgICAgIHBvc2l0aW9uOiAnYm90dG9tJyxcbiAgICAgICAgY29sb3I6ICdzdWNjZXNzJyxcbiAgICAgICAgaWNvbjogJ2NoZWNrbWFyay1jaXJjbGUtb3V0bGluZScsXG4gICAgICB9KTtcbiAgICAgIGF3YWl0IHRvYXN0LnByZXNlbnQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldENvcHlTdWNjZXNzTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmNvcHlTdWNjZXNzTWVzc2FnZSB8fCAnwqFFbmxhY2UgY29waWFkbyEnO1xuICB9XG5cbiAgcHJpdmF0ZSBpc05hdGl2ZVNoYXJlU3VwcG9ydGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0eXBlb2YgbmF2aWdhdG9yICE9PSAndW5kZWZpbmVkJyAmJiAhIW5hdmlnYXRvci5zaGFyZTtcbiAgfVxufVxuIl19
@@ -1,7 +1,6 @@
1
- import { Component, Input, inject, Output, EventEmitter } from '@angular/core';
1
+ import { Component, Input, Output, EventEmitter } from '@angular/core';
2
2
  import { IonIcon } from '@ionic/angular/standalone';
3
3
  import { CommonModule } from '@angular/common';
4
- import { LangService } from '../../../services/lang-provider/lang-provider.service';
5
4
  import { addIcons } from 'ionicons';
6
5
  import { checkmark, close, ellipse } from 'ionicons/icons';
7
6
  import * as i0 from "@angular/core";
@@ -39,15 +38,6 @@ addIcons({ checkmark, close, ellipse });
39
38
  export class StepperComponent {
40
39
  constructor() {
41
40
  this.stepChange = new EventEmitter();
42
- this.langService = inject(LangService);
43
- this.subscriptions = [];
44
- this.stepLabels = new Map();
45
- }
46
- ngOnInit() {
47
- this.setupLabels();
48
- }
49
- ngOnDestroy() {
50
- this.subscriptions.forEach((sub) => sub.unsubscribe());
51
41
  }
52
42
  getCurrentIndex() {
53
43
  if (this.props.currentIndex !== undefined) {
@@ -104,22 +94,7 @@ export class StepperComponent {
104
94
  });
105
95
  }
106
96
  getStepLabel(step) {
107
- if (step.label)
108
- return step.label;
109
- return this.stepLabels.get(step.value) || step.contentFallback || '';
110
- }
111
- setupLabels() {
112
- this.props.steps.forEach((step) => {
113
- if (step.label) {
114
- this.stepLabels.set(step.value, step.label);
115
- }
116
- else if (step.contentKey && step.contentClass) {
117
- const sub = this.langService
118
- .getContent(step.contentClass, step.contentKey, step.contentFallback)
119
- .subscribe((content) => this.stepLabels.set(step.value, content));
120
- this.subscriptions.push(sub);
121
- }
122
- });
97
+ return step.label || step.contentFallback || '';
123
98
  }
124
99
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
125
100
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: StepperComponent, isStandalone: true, selector: "val-stepper", inputs: { props: "props" }, outputs: { stepChange: "stepChange" }, ngImport: i0, template: `
@@ -236,4 +211,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
236
211
  }], stepChange: [{
237
212
  type: Output
238
213
  }] } });
239
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRTNELFFBQVEsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztBQTZEeEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkJHO0FBQ0gsTUFBTSxPQUFPLGdCQUFnQjtJQXpGN0I7UUE0RlksZUFBVSxHQUFHLElBQUksWUFBWSxFQUFtQixDQUFDO1FBRW5ELGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQUNuQyxlQUFVLEdBQXdCLElBQUksR0FBRyxFQUFFLENBQUM7S0FvRnJEO0lBbEZDLFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxD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LCBpbmplY3QsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25JY29uIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdGVwcGVyTWV0YWRhdGEsIFN0ZXBNZXRhZGF0YSwgU3RlcENoYW5nZUV2ZW50LCBTdGVwU3RhdHVzIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBMYW5nU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2xhbmctcHJvdmlkZXIvbGFuZy1wcm92aWRlci5zZXJ2aWNlJztcbmltcG9ydCB7IGFkZEljb25zIH0gZnJvbSAnaW9uaWNvbnMnO1xuaW1wb3J0IHsgY2hlY2ttYXJrLCBjbG9zZSwgZWxsaXBzZSB9IGZyb20gJ2lvbmljb25zL2ljb25zJztcblxuYWRkSWNvbnMoeyBjaGVja21hcmssIGNsb3NlLCBlbGxpcHNlIH0pO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtc3RlcHBlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElvbkljb25dLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwic3RlcHBlci1jb250YWluZXJcIlxuICAgICAgW2NsYXNzLmhvcml6b250YWxdPVwicHJvcHMub3JpZW50YXRpb24gIT09ICd2ZXJ0aWNhbCdcIlxuICAgICAgW2NsYXNzLnZlcnRpY2FsXT1cInByb3BzLm9yaWVudGF0aW9uID09PSAndmVydGljYWwnXCJcbiAgICA+XG4gICAgICBAZm9yIChzdGVwIG9mIHByb3BzLnN0ZXBzOyB0cmFjayBzdGVwLnZhbHVlOyBsZXQgaSA9ICRpbmRleDsgbGV0IGlzTGFzdCA9ICRsYXN0KSB7XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInN0ZXBcIlxuICAgICAgICAgIFtjbGFzcy5jdXJyZW50XT1cImdldFN0ZXBTdGF0dXMoc3RlcCwgaSkgPT09ICdjdXJyZW50J1wiXG4gICAgICAgICAgW2NsYXNzLmNvbXBsZXRlZF09XCJnZXRTdGVwU3RhdHVzKHN0ZXAsIGkpID09PSAnY29tcGxldGVkJ1wiXG4gICAgICAgICAgW2NsYXNzLmVycm9yXT1cImdldFN0ZXBTdGF0dXMoc3RlcCwgaSkgPT09ICdlcnJvcidcIlxuICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJzdGVwLmRpc2FibGVkXCJcbiAgICAgICAgICBbY2xhc3MuY2xpY2thYmxlXT1cImlzU3RlcENsaWNrYWJsZShzdGVwLCBpKVwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uU3RlcENsaWNrKHN0ZXAsIGkpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGVwLWluZGljYXRvclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0ZXAtY2lyY2xlXCIgW3N0eWxlLi0tc3RlcC1jb2xvcl09XCJnZXRTdGVwQ29sb3Ioc3RlcCwgaSlcIj5cbiAgICAgICAgICAgICAgQGlmIChnZXRTdGVwU3RhdHVzKHN0ZXAsIGkpID09PSAnY29tcGxldGVkJykge1xuICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiY2hlY2ttYXJrXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgICAgfSBAZWxzZSBpZiAoZ2V0U3RlcFN0YXR1cyhzdGVwLCBpKSA9PT0gJ2Vycm9yJykge1xuICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiY2xvc2VcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgICB9IEBlbHNlIGlmIChzdGVwLmljb24pIHtcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gW25hbWVdPVwic3RlcC5pY29uXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgICAgfSBAZWxzZSBpZiAocHJvcHMuc2hvd051bWJlcnMgIT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdGVwLW51bWJlclwiPnt7IGkgKyAxIH19PC9zcGFuPlxuICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImVsbGlwc2VcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIEBpZiAoIWlzTGFzdCAmJiBwcm9wcy5jb25uZWN0b3JTdHlsZSAhPT0gJ25vbmUnKSB7XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cInN0ZXAtY29ubmVjdG9yXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZGFzaGVkXT1cInByb3BzLmNvbm5lY3RvclN0eWxlID09PSAnZGFzaGVkJ1wiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmNvbXBsZXRlZF09XCJnZXRTdGVwU3RhdHVzKHN0ZXAsIGkpID09PSAnY29tcGxldGVkJ1wiXG4gICAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcC1jb250ZW50XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcC1sYWJlbFwiPlxuICAgICAgICAgICAgICB7eyBnZXRTdGVwTGFiZWwoc3RlcCkgfX1cbiAgICAgICAgICAgICAgQGlmIChzdGVwLm9wdGlvbmFsKSB7XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJvcHRpb25hbC10ZXh0XCI+KE9wdGlvbmFsKTwvc3Bhbj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBAaWYgKHN0ZXAuZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0ZXAtZGVzY3JpcHRpb25cIj57eyBzdGVwLmRlc2NyaXB0aW9uIH19PC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9zdGVwcGVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuLyoqXG4gKiB2YWwtc3RlcHBlclxuICpcbiAqIEEgc3RlcHBlciBjb21wb25lbnQgZm9yIG11bHRpLXN0ZXAgcHJvY2Vzc2VzLlxuICogU3VwcG9ydHMgaG9yaXpvbnRhbCBhbmQgdmVydGljYWwgb3JpZW50YXRpb25zLlxuICpcbiAqIEBleGFtcGxlIEJhc2ljIHVzYWdlXG4gKiA8dmFsLXN0ZXBwZXIgW3Byb3BzXT1cIntcbiAqICAgc3RlcHM6IFtcbiAqICAgICB7IHZhbHVlOiAnaW5mbycsIGxhYmVsOiAnUGVyc29uYWwgSW5mbycgfSxcbiAqICAgICB7IHZhbHVlOiAnYWRkcmVzcycsIGxhYmVsOiAnQWRkcmVzcycgfSxcbiAqICAgICB7IHZhbHVlOiAncGF5bWVudCcsIGxhYmVsOiAnUGF5bWVudCcgfSxcbiAqICAgICB7IHZhbHVlOiAnY29uZmlybScsIGxhYmVsOiAnQ29uZmlybScgfVxuICogICBdLFxuICogICBjdXJyZW50SW5kZXg6IDFcbiAqIH1cIiAoc3RlcENoYW5nZSk9XCJvblN0ZXBDaGFuZ2UoJGV2ZW50KVwiPjwvdmFsLXN0ZXBwZXI+XG4gKlxuICogQGV4YW1wbGUgVmVydGljYWwgd2l0aCBkZXNjcmlwdGlvbnNcbiAqIDx2YWwtc3RlcHBlciBbcHJvcHNdPVwie1xuICogICBzdGVwczogW1xuICogICAgIHsgdmFsdWU6ICdzdGVwMScsIGxhYmVsOiAnU3RlcCAxJywgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbiBoZXJlJyB9LFxuICogICAgIHsgdmFsdWU6ICdzdGVwMicsIGxhYmVsOiAnU3RlcCAyJywgb3B0aW9uYWw6IHRydWUgfVxuICogICBdLFxuICogICBvcmllbnRhdGlvbjogJ3ZlcnRpY2FsJyxcbiAqICAgY3VycmVudEluZGV4OiAwXG4gKiB9XCI+PC92YWwtc3RlcHBlcj5cbiAqXG4gKiBAaW5wdXQgcHJvcHM6IFN0ZXBwZXJNZXRhZGF0YSAtIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBzdGVwcGVyXG4gKiBAb3V0cHV0IHN0ZXBDaGFuZ2U6IFN0ZXBDaGFuZ2VFdmVudCAtIEVtaXRzIHdoZW4gc3RlcCBjaGFuZ2VzXG4gKi9cbmV4cG9ydCBjbGFzcyBTdGVwcGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBwcm9wczogU3RlcHBlck1ldGFkYXRhO1xuXG4gIEBPdXRwdXQoKSBzdGVwQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxTdGVwQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgcHJpdmF0ZSBsYW5nU2VydmljZSA9IGluamVjdChMYW5nU2VydmljZSk7XG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcHJpdmF0ZSBzdGVwTGFiZWxzOiBNYXA8c3RyaW5nLCBzdHJpbmc+ID0gbmV3IE1hcCgpO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2V0dXBMYWJlbHMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKChzdWIpID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgfVxuXG4gIGdldEN1cnJlbnRJbmRleCgpOiBudW1iZXIge1xuICAgIGlmICh0aGlzLnByb3BzLmN1cnJlbnRJbmRleCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5jdXJyZW50SW5kZXg7XG4gICAgfVxuICAgIGlmICh0aGlzLnByb3BzLmN1cnJlbnRTdGVwKSB7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5zdGVwcy5maW5kSW5kZXgoKHMpID0+IHMudmFsdWUgPT09IHRoaXMucHJvcHMuY3VycmVudFN0ZXApO1xuICAgIH1cbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIGdldFN0ZXBTdGF0dXMoc3RlcDogU3RlcE1ldGFkYXRhLCBpbmRleDogbnVtYmVyKTogU3RlcFN0YXR1cyB7XG4gICAgaWYgKHN0ZXAuc3RhdHVzKSByZXR1cm4gc3RlcC5zdGF0dXM7XG5cbiAgICBjb25zdCBjdXJyZW50SW5kZXggPSB0aGlzLmdldEN1cnJlbnRJbmRleCgpO1xuICAgIGlmIChpbmRleCA8IGN1cnJlbnRJbmRleCkgcmV0dXJuICdjb21wbGV0ZWQnO1xuICAgIGlmIChpbmRleCA9PT0gY3VycmVudEluZGV4KSByZXR1cm4gJ2N1cnJlbnQnO1xuICAgIHJldHVybiAncGVuZGluZyc7XG4gIH1cblxuICBnZXRTdGVwQ29sb3Ioc3RlcDogU3RlcE1ldGFkYXRhLCBpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCBzdGF0dXMgPSB0aGlzLmdldFN0ZXBTdGF0dXMoc3RlcCwgaW5kZXgpO1xuICAgIGNvbnN0IGNvbG9yID0gdGhpcy5wcm9wcy5jb2xvciB8fCAncHJpbWFyeSc7XG5cbiAgICBzd2l0Y2ggKHN0YXR1cykge1xuICAgICAgY2FzZSAnY29tcGxldGVkJzpcbiAgICAgICAgcmV0dXJuIGB2YXIoLS1pb24tY29sb3ItJHtjb2xvcn0pYDtcbiAgICAgIGNhc2UgJ2N1cnJlbnQnOlxuICAgICAgICByZXR1cm4gYHZhcigtLWlvbi1jb2xvci0ke2NvbG9yfSlgO1xuICAgICAgY2FzZSAnZXJyb3InOlxuICAgICAgICByZXR1cm4gJ3ZhcigtLWlvbi1jb2xvci1kYW5nZXIpJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAndmFyKC0taW9uLWNvbG9yLW1lZGl1bSknO1xuICAgIH1cbiAgfVxuXG4gIGlzU3RlcENsaWNrYWJsZShzdGVwOiBTdGVwTWV0YWRhdGEsIGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBpZiAoc3RlcC5kaXNhYmxlZCkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICghdGhpcy5wcm9wcy5saW5lYXIpIHJldHVybiB0cnVlO1xuXG4gICAgY29uc3QgY3VycmVudEluZGV4ID0gdGhpcy5nZXRDdXJyZW50SW5kZXgoKTtcbiAgICAvLyBJbiBsaW5lYXIgbW9kZSwgY2FuIG9ubHkgZ28gdG8gY29tcGxldGVkIHN0ZXBzIG9yIG5leHQgc3RlcFxuICAgIHJldHVybiBpbmRleCA8PSBjdXJyZW50SW5kZXggfHwgKHN0ZXAuZWRpdGFibGUgJiYgaW5kZXggPCBjdXJyZW50SW5kZXgpO1xuICB9XG5cbiAgb25TdGVwQ2xpY2soc3RlcDogU3RlcE1ldGFkYXRhLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlzU3RlcENsaWNrYWJsZShzdGVwLCBpbmRleCkpIHJldHVybjtcblxuICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9IHRoaXMuZ2V0Q3VycmVudEluZGV4KCk7XG4gICAgaWYgKGluZGV4ID09PSBjdXJyZW50SW5kZXgpIHJldHVybjtcblxuICAgIHRoaXMuc3RlcENoYW5nZS5lbWl0KHtcbiAgICAgIHN0ZXAsXG4gICAgICBpbmRleCxcbiAgICAgIHByZXZpb3VzSW5kZXg6IGN1cnJlbnRJbmRleCxcbiAgICB9KTtcbiAgfVxuXG4gIGdldFN0ZXBMYWJlbChzdGVwOiBTdGVwTWV0YWRhdGEpOiBzdHJpbmcge1xuICAgIGlmIChzdGVwLmxhYmVsKSByZXR1cm4gc3RlcC5sYWJlbDtcbiAgICByZXR1cm4gdGhpcy5zdGVwTGFiZWxzLmdldChzdGVwLnZhbHVlKSB8fCBzdGVwLmNvbnRlbnRGYWxsYmFjayB8fCAnJztcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBMYWJlbHMoKTogdm9pZCB7XG4gICAgdGhpcy5wcm9wcy5zdGVwcy5mb3JFYWNoKChzdGVwKSA9PiB7XG4gICAgICBpZiAoc3RlcC5sYWJlbCkge1xuICAgICAgICB0aGlzLnN0ZXBMYWJlbHMuc2V0KHN0ZXAudmFsdWUsIHN0ZXAubGFiZWwpO1xuICAgICAgfSBlbHNlIGlmIChzdGVwLmNvbnRlbnRLZXkgJiYgc3RlcC5jb250ZW50Q2xhc3MpIHtcbiAgICAgICAgY29uc3Qgc3ViID0gdGhpcy5sYW5nU2VydmljZVxuICAgICAgICAgIC5nZXRDb250ZW50KHN0ZXAuY29udGVudENsYXNzLCBzdGVwLmNvbnRlbnRLZXksIHN0ZXAuY29udGVudEZhbGxiYWNrKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbnRlbnQpID0+IHRoaXMuc3RlcExhYmVscy5zZXQoc3RlcC52YWx1ZSwgY29udGVudCkpO1xuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChzdWIpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRTNELFFBQVEsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztBQTZEeEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkJHO0FBQ0gsTUFBTSxPQUFPLGdCQUFnQjtJQXpGN0I7UUE0RlksZUFBVSxHQUFHLElBQUksWUFBWSxFQUFtQixDQUFDO0tBOEQ1RDtJQTVEQyxlQUFlO1FBQ2IsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMxQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDO1FBQ2pDLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDM0IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMvRSxDQUFDO1FBQ0QsT0FBTyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQWtCLEVBQUUsS0FBYTtRQUM3QyxJQUFJLElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBRXBDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUM1QyxJQUFJLEtBQUssR0FBRyxZQUFZO1lBQUUsT0FBTyxXQUFXLENBQUM7UUFDN0MsSUFBSSxLQUFLLEtBQUssWUFBWTtZQUFFLE9BQU8sU0FBUyxDQUFDO1FBQzdDLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBa0IsRUFBRSxLQUFhO1FBQzVDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQy9DLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLFNBQVMsQ0FBQztRQUU1QyxRQUFRLE1BQU0sRUFBRSxDQUFDO1lBQ2YsS0FBSyxXQUFXO2dCQUNkLE9BQU8sbUJBQW1CLEtBQUssR0FBRyxDQUFDO1lBQ3JDLEtBQUssU0FBUztnQkFDWixPQUFPLG1CQUFtQixLQUFLLEdBQUcsQ0FBQztZQUNyQyxLQUFLLE9BQU87Z0JBQ1YsT0FBTyx5QkFBeUIsQ0FBQztZQUNuQztnQkFDRSxPQUFPLHlCQUF5QixDQUFDO1FBQ3JDLENBQUM7SUFDSCxDQUFDO0lBRUQsZUFBZSxDQUFDLElBQWtCLEVBQUUsS0FBYTtRQUMvQyxJQUFJLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXBDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUM1Qyw4REFBOEQ7UUFDOUQsT0FBTyxLQUFLLElBQUksWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxLQUFLLEdBQUcsWUFBWSxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFrQixFQUFFLEtBQWE7UUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQztZQUFFLE9BQU87UUFFL0MsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzVDLElBQUksS0FBSyxLQUFLLFlBQVk7WUFBRSxPQUFPO1FBRW5DLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQ25CLElBQUk7WUFDSixLQUFLO1lBQ0wsYUFBYSxFQUFFLFlBQVk7U0FDNUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFrQjtRQUM3QixPQUFPLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxFQUFFLENBQUM7SUFDbEQsQ0FBQzsrR0FoRVUsZ0JBQWdCO21HQUFoQixnQkFBZ0IsMElBckZqQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9EVCxtdUVBckRTLFlBQVksK0JBQUUsT0FBTzs7NEZBc0ZwQixnQkFBZ0I7a0JBekY1QixTQUFTOytCQUNFLGFBQWEsY0FDWCxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQ3RCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0RUOzhCQWtDUSxLQUFLO3NCQUFiLEtBQUs7Z0JBRUksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25JY29uIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU3RlcHBlck1ldGFkYXRhLCBTdGVwTWV0YWRhdGEsIFN0ZXBDaGFuZ2VFdmVudCwgU3RlcFN0YXR1cyB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgYWRkSWNvbnMgfSBmcm9tICdpb25pY29ucyc7XG5pbXBvcnQgeyBjaGVja21hcmssIGNsb3NlLCBlbGxpcHNlIH0gZnJvbSAnaW9uaWNvbnMvaWNvbnMnO1xuXG5hZGRJY29ucyh7IGNoZWNrbWFyaywgY2xvc2UsIGVsbGlwc2UgfSk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1zdGVwcGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSW9uSWNvbl0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJzdGVwcGVyLWNvbnRhaW5lclwiXG4gICAgICBbY2xhc3MuaG9yaXpvbnRhbF09XCJwcm9wcy5vcmllbnRhdGlvbiAhPT0gJ3ZlcnRpY2FsJ1wiXG4gICAgICBbY2xhc3MudmVydGljYWxdPVwicHJvcHMub3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCdcIlxuICAgID5cbiAgICAgIEBmb3IgKHN0ZXAgb2YgcHJvcHMuc3RlcHM7IHRyYWNrIHN0ZXAudmFsdWU7IGxldCBpID0gJGluZGV4OyBsZXQgaXNMYXN0ID0gJGxhc3QpIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwic3RlcFwiXG4gICAgICAgICAgW2NsYXNzLmN1cnJlbnRdPVwiZ2V0U3RlcFN0YXR1cyhzdGVwLCBpKSA9PT0gJ2N1cnJlbnQnXCJcbiAgICAgICAgICBbY2xhc3MuY29tcGxldGVkXT1cImdldFN0ZXBTdGF0dXMoc3RlcCwgaSkgPT09ICdjb21wbGV0ZWQnXCJcbiAgICAgICAgICBbY2xhc3MuZXJyb3JdPVwiZ2V0U3RlcFN0YXR1cyhzdGVwLCBpKSA9PT0gJ2Vycm9yJ1wiXG4gICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cInN0ZXAuZGlzYWJsZWRcIlxuICAgICAgICAgIFtjbGFzcy5jbGlja2FibGVdPVwiaXNTdGVwQ2xpY2thYmxlKHN0ZXAsIGkpXCJcbiAgICAgICAgICAoY2xpY2spPVwib25TdGVwQ2xpY2soc3RlcCwgaSlcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInN0ZXAtaW5kaWNhdG9yXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcC1jaXJjbGVcIiBbc3R5bGUuLS1zdGVwLWNvbG9yXT1cImdldFN0ZXBDb2xvcihzdGVwLCBpKVwiPlxuICAgICAgICAgICAgICBAaWYgKGdldFN0ZXBTdGF0dXMoc3RlcCwgaSkgPT09ICdjb21wbGV0ZWQnKSB7XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJjaGVja21hcmtcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgICB9IEBlbHNlIGlmIChnZXRTdGVwU3RhdHVzKHN0ZXAsIGkpID09PSAnZXJyb3InKSB7XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJjbG9zZVwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgIH0gQGVsc2UgaWYgKHN0ZXAuaWNvbikge1xuICAgICAgICAgICAgICAgIDxpb24taWNvbiBbbmFtZV09XCJzdGVwLmljb25cIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgICB9IEBlbHNlIGlmIChwcm9wcy5zaG93TnVtYmVycyAhPT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN0ZXAtbnVtYmVyXCI+e3sgaSArIDEgfX08L3NwYW4+XG4gICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiZWxsaXBzZVwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgQGlmICghaXNMYXN0ICYmIHByb3BzLmNvbm5lY3RvclN0eWxlICE9PSAnbm9uZScpIHtcbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic3RlcC1jb25uZWN0b3JcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5kYXNoZWRdPVwicHJvcHMuY29ubmVjdG9yU3R5bGUgPT09ICdkYXNoZWQnXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuY29tcGxldGVkXT1cImdldFN0ZXBTdGF0dXMoc3RlcCwgaSkgPT09ICdjb21wbGV0ZWQnXCJcbiAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGVwLWNvbnRlbnRcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGVwLWxhYmVsXCI+XG4gICAgICAgICAgICAgIHt7IGdldFN0ZXBMYWJlbChzdGVwKSB9fVxuICAgICAgICAgICAgICBAaWYgKHN0ZXAub3B0aW9uYWwpIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm9wdGlvbmFsLXRleHRcIj4oT3B0aW9uYWwpPC9zcGFuPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIEBpZiAoc3RlcC5kZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcC1kZXNjcmlwdGlvblwiPnt7IHN0ZXAuZGVzY3JpcHRpb24gfX08L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL3N0ZXBwZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG4vKipcbiAqIHZhbC1zdGVwcGVyXG4gKlxuICogQSBzdGVwcGVyIGNvbXBvbmVudCBmb3IgbXVsdGktc3RlcCBwcm9jZXNzZXMuXG4gKiBTdXBwb3J0cyBob3Jpem9udGFsIGFuZCB2ZXJ0aWNhbCBvcmllbnRhdGlvbnMuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2VcbiAqIDx2YWwtc3RlcHBlciBbcHJvcHNdPVwie1xuICogICBzdGVwczogW1xuICogICAgIHsgdmFsdWU6ICdpbmZvJywgbGFiZWw6ICdQZXJzb25hbCBJbmZvJyB9LFxuICogICAgIHsgdmFsdWU6ICdhZGRyZXNzJywgbGFiZWw6ICdBZGRyZXNzJyB9LFxuICogICAgIHsgdmFsdWU6ICdwYXltZW50JywgbGFiZWw6ICdQYXltZW50JyB9LFxuICogICAgIHsgdmFsdWU6ICdjb25maXJtJywgbGFiZWw6ICdDb25maXJtJyB9XG4gKiAgIF0sXG4gKiAgIGN1cnJlbnRJbmRleDogMVxuICogfVwiIChzdGVwQ2hhbmdlKT1cIm9uU3RlcENoYW5nZSgkZXZlbnQpXCI+PC92YWwtc3RlcHBlcj5cbiAqXG4gKiBAZXhhbXBsZSBWZXJ0aWNhbCB3aXRoIGRlc2NyaXB0aW9uc1xuICogPHZhbC1zdGVwcGVyIFtwcm9wc109XCJ7XG4gKiAgIHN0ZXBzOiBbXG4gKiAgICAgeyB2YWx1ZTogJ3N0ZXAxJywgbGFiZWw6ICdTdGVwIDEnLCBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uIGhlcmUnIH0sXG4gKiAgICAgeyB2YWx1ZTogJ3N0ZXAyJywgbGFiZWw6ICdTdGVwIDInLCBvcHRpb25hbDogdHJ1ZSB9XG4gKiAgIF0sXG4gKiAgIG9yaWVudGF0aW9uOiAndmVydGljYWwnLFxuICogICBjdXJyZW50SW5kZXg6IDBcbiAqIH1cIj48L3ZhbC1zdGVwcGVyPlxuICpcbiAqIEBpbnB1dCBwcm9wczogU3RlcHBlck1ldGFkYXRhIC0gQ29uZmlndXJhdGlvbiBmb3IgdGhlIHN0ZXBwZXJcbiAqIEBvdXRwdXQgc3RlcENoYW5nZTogU3RlcENoYW5nZUV2ZW50IC0gRW1pdHMgd2hlbiBzdGVwIGNoYW5nZXNcbiAqL1xuZXhwb3J0IGNsYXNzIFN0ZXBwZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBwcm9wczogU3RlcHBlck1ldGFkYXRhO1xuXG4gIEBPdXRwdXQoKSBzdGVwQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxTdGVwQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgZ2V0Q3VycmVudEluZGV4KCk6IG51bWJlciB7XG4gICAgaWYgKHRoaXMucHJvcHMuY3VycmVudEluZGV4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLmN1cnJlbnRJbmRleDtcbiAgICB9XG4gICAgaWYgKHRoaXMucHJvcHMuY3VycmVudFN0ZXApIHtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLnN0ZXBzLmZpbmRJbmRleCgocykgPT4gcy52YWx1ZSA9PT0gdGhpcy5wcm9wcy5jdXJyZW50U3RlcCk7XG4gICAgfVxuICAgIHJldHVybiAwO1xuICB9XG5cbiAgZ2V0U3RlcFN0YXR1cyhzdGVwOiBTdGVwTWV0YWRhdGEsIGluZGV4OiBudW1iZXIpOiBTdGVwU3RhdHVzIHtcbiAgICBpZiAoc3RlcC5zdGF0dXMpIHJldHVybiBzdGVwLnN0YXR1cztcblxuICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9IHRoaXMuZ2V0Q3VycmVudEluZGV4KCk7XG4gICAgaWYgKGluZGV4IDwgY3VycmVudEluZGV4KSByZXR1cm4gJ2NvbXBsZXRlZCc7XG4gICAgaWYgKGluZGV4ID09PSBjdXJyZW50SW5kZXgpIHJldHVybiAnY3VycmVudCc7XG4gICAgcmV0dXJuICdwZW5kaW5nJztcbiAgfVxuXG4gIGdldFN0ZXBDb2xvcihzdGVwOiBTdGVwTWV0YWRhdGEsIGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGNvbnN0IHN0YXR1cyA9IHRoaXMuZ2V0U3RlcFN0YXR1cyhzdGVwLCBpbmRleCk7XG4gICAgY29uc3QgY29sb3IgPSB0aGlzLnByb3BzLmNvbG9yIHx8ICdwcmltYXJ5JztcblxuICAgIHN3aXRjaCAoc3RhdHVzKSB7XG4gICAgICBjYXNlICdjb21wbGV0ZWQnOlxuICAgICAgICByZXR1cm4gYHZhcigtLWlvbi1jb2xvci0ke2NvbG9yfSlgO1xuICAgICAgY2FzZSAnY3VycmVudCc6XG4gICAgICAgIHJldHVybiBgdmFyKC0taW9uLWNvbG9yLSR7Y29sb3J9KWA7XG4gICAgICBjYXNlICdlcnJvcic6XG4gICAgICAgIHJldHVybiAndmFyKC0taW9uLWNvbG9yLWRhbmdlciknO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICd2YXIoLS1pb24tY29sb3ItbWVkaXVtKSc7XG4gICAgfVxuICB9XG5cbiAgaXNTdGVwQ2xpY2thYmxlKHN0ZXA6IFN0ZXBNZXRhZGF0YSwgaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGlmIChzdGVwLmRpc2FibGVkKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKCF0aGlzLnByb3BzLmxpbmVhcikgcmV0dXJuIHRydWU7XG5cbiAgICBjb25zdCBjdXJyZW50SW5kZXggPSB0aGlzLmdldEN1cnJlbnRJbmRleCgpO1xuICAgIC8vIEluIGxpbmVhciBtb2RlLCBjYW4gb25seSBnbyB0byBjb21wbGV0ZWQgc3RlcHMgb3IgbmV4dCBzdGVwXG4gICAgcmV0dXJuIGluZGV4IDw9IGN1cnJlbnRJbmRleCB8fCAoc3RlcC5lZGl0YWJsZSAmJiBpbmRleCA8IGN1cnJlbnRJbmRleCk7XG4gIH1cblxuICBvblN0ZXBDbGljayhzdGVwOiBTdGVwTWV0YWRhdGEsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaXNTdGVwQ2xpY2thYmxlKHN0ZXAsIGluZGV4KSkgcmV0dXJuO1xuXG4gICAgY29uc3QgY3VycmVudEluZGV4ID0gdGhpcy5nZXRDdXJyZW50SW5kZXgoKTtcbiAgICBpZiAoaW5kZXggPT09IGN1cnJlbnRJbmRleCkgcmV0dXJuO1xuXG4gICAgdGhpcy5zdGVwQ2hhbmdlLmVtaXQoe1xuICAgICAgc3RlcCxcbiAgICAgIGluZGV4LFxuICAgICAgcHJldmlvdXNJbmRleDogY3VycmVudEluZGV4LFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0U3RlcExhYmVsKHN0ZXA6IFN0ZXBNZXRhZGF0YSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHN0ZXAubGFiZWwgfHwgc3RlcC5jb250ZW50RmFsbGJhY2sgfHwgJyc7XG4gIH1cbn1cbiJdfQ==
@@ -1,7 +1,6 @@
1
- import { Component, Input, inject, Output, EventEmitter } from '@angular/core';
1
+ import { Component, Input, Output, EventEmitter } from '@angular/core';
2
2
  import { IonTabBar, IonTabButton, IonIcon, IonLabel, IonBadge } from '@ionic/angular/standalone';
3
3
  import { CommonModule } from '@angular/common';
4
- import { LangService } from '../../../services/lang-provider/lang-provider.service';
5
4
  import { addIcons } from 'ionicons';
6
5
  import { home, settings, person, search, heart, star, notifications, mail, calendar, folder } from 'ionicons/icons';
7
6
  import * as i0 from "@angular/core";
@@ -10,41 +9,23 @@ addIcons({ home, settings, person, search, heart, star, notifications, mail, cal
10
9
  * val-tabs
11
10
  *
12
11
  * A tab bar component for navigation between views.
13
- * Can be positioned at top or bottom of the screen.
14
12
  *
15
- * @example Basic usage
13
+ * @example
16
14
  * <val-tabs [props]="{
17
15
  * tabs: [
18
- * { value: 'home', label: 'Home', icon: 'home' },
19
- * { value: 'search', label: 'Search', icon: 'search' },
20
- * { value: 'profile', label: 'Profile', icon: 'person' }
16
+ * { value: 'home', label: 'Inicio', icon: 'home' },
17
+ * { value: 'search', label: 'Buscar', icon: 'search' },
18
+ * { value: 'profile', label: 'Perfil', icon: 'person' }
21
19
  * ],
22
20
  * selectedTab: 'home'
23
21
  * }" (tabChange)="onTabChange($event)"></val-tabs>
24
22
  *
25
- * @example With badges
26
- * <val-tabs [props]="{
27
- * tabs: [
28
- * { value: 'inbox', label: 'Inbox', icon: 'mail', badge: 5 },
29
- * { value: 'notifications', label: 'Alerts', icon: 'notifications', badge: '99+' }
30
- * ]
31
- * }"></val-tabs>
32
- *
33
23
  * @input props: TabsMetadata - Configuration for the tabs
34
24
  * @output tabChange: TabMetadata - Emits when a tab is selected
35
25
  */
36
26
  export class TabsComponent {
37
27
  constructor() {
38
28
  this.tabChange = new EventEmitter();
39
- this.langService = inject(LangService);
40
- this.subscriptions = [];
41
- this.tabLabels = new Map();
42
- }
43
- ngOnInit() {
44
- this.setupLabels();
45
- }
46
- ngOnDestroy() {
47
- this.subscriptions.forEach((sub) => sub.unsubscribe());
48
29
  }
49
30
  onTabClick(tab) {
50
31
  if (!tab.disabled) {
@@ -52,22 +33,7 @@ export class TabsComponent {
52
33
  }
53
34
  }
54
35
  getTabLabel(tab) {
55
- if (tab.label)
56
- return tab.label;
57
- return this.tabLabels.get(tab.value) || tab.contentFallback || '';
58
- }
59
- setupLabels() {
60
- this.props.tabs.forEach((tab) => {
61
- if (tab.label) {
62
- this.tabLabels.set(tab.value, tab.label);
63
- }
64
- else if (tab.contentKey && tab.contentClass) {
65
- const sub = this.langService
66
- .getContent(tab.contentClass, tab.contentKey, tab.contentFallback)
67
- .subscribe((content) => this.tabLabels.set(tab.value, content));
68
- this.subscriptions.push(sub);
69
- }
70
- });
36
+ return tab.label || tab.contentFallback || '';
71
37
  }
72
38
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
73
39
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: TabsComponent, isStandalone: true, selector: "val-tabs", inputs: { props: "props" }, outputs: { tabChange: "tabChange" }, ngImport: i0, template: `
@@ -132,4 +98,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
132
98
  }], tabChange: [{
133
99
  type: Output
134
100
  }] } });
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RhYnMvdGFicy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNwRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFcEgsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztBQW1Dakc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMEJHO0FBQ0gsTUFBTSxPQUFPLGFBQWE7SUE1RDFCO1FBK0RZLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO1FBRTlDLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQUNuQyxjQUFTLEdBQXdCLElBQUksR0FBRyxFQUFFLENBQUM7S0FpQ3BEO0lBL0JDLFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELFVBQVUsQ0FBQyxHQUFnQjtRQUN6QixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLEdBQWdCO1FBQzFCLElBQUksR0FBRyxDQUFDLEtBQUs7WUFBRSxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUM7UUFDaEMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLGVBQWUsSUFBSSxFQUFFLENBQUM7SUFDcEUsQ0FBQztJQUVPLFdBQVc7UUFDakIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDOUIsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0MsQ0FBQztpQkFBTSxJQUFJLEdBQUcsQ0FBQyxVQUFVLElBQUksR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUM5QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVztxQkFDekIsVUFBVSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsZUFBZSxDQUFDO3FCQUNqRSxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDbEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDL0IsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0F2Q1UsYUFBYTttR0FBYixhQUFhLHFJQXhEZDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwQlQscWtCQTNCUyxZQUFZLCtCQUFFLFNBQVMsaUhBQUUsWUFBWSwySkFBRSxPQUFPLDJKQUFFLFFBQVEsNkZBQUUsUUFBUTs7NEZBeURqRSxhQUFhO2tCQTVEekIsU0FBUzsrQkFDRSxVQUFVLGNBQ1IsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLENBQUMsWUFDbkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMEJUOzhCQStCUSxLQUFLO3NCQUFiLEtBQUs7Z0JBRUksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT25EZXN0cm95LCBpbmplY3QsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25UYWJCYXIsIElvblRhYkJ1dHRvbiwgSW9uSWNvbiwgSW9uTGFiZWwsIElvbkJhZGdlIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUYWJzTWV0YWRhdGEsIFRhYk1ldGFkYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBMYW5nU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2xhbmctcHJvdmlkZXIvbGFuZy1wcm92aWRlci5zZXJ2aWNlJztcbmltcG9ydCB7IGFkZEljb25zIH0gZnJvbSAnaW9uaWNvbnMnO1xuaW1wb3J0IHsgaG9tZSwgc2V0dGluZ3MsIHBlcnNvbiwgc2VhcmNoLCBoZWFydCwgc3Rhciwgbm90aWZpY2F0aW9ucywgbWFpbCwgY2FsZW5kYXIsIGZvbGRlciB9IGZyb20gJ2lvbmljb25zL2ljb25zJztcblxuYWRkSWNvbnMoeyBob21lLCBzZXR0aW5ncywgcGVyc29uLCBzZWFyY2gsIGhlYXJ0LCBzdGFyLCBub3RpZmljYXRpb25zLCBtYWlsLCBjYWxlbmRhciwgZm9sZGVyIH0pO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtdGFicycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElvblRhYkJhciwgSW9uVGFiQnV0dG9uLCBJb25JY29uLCBJb25MYWJlbCwgSW9uQmFkZ2VdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxpb24tdGFiLWJhclxuICAgICAgW2NvbG9yXT1cInByb3BzLmNvbG9yXCJcbiAgICAgIFttb2RlXT1cInByb3BzLm1vZGVcIlxuICAgICAgW3RyYW5zbHVjZW50XT1cInByb3BzLnRyYW5zbHVjZW50ID8/IGZhbHNlXCJcbiAgICAgIFtzZWxlY3RlZFRhYl09XCJwcm9wcy5zZWxlY3RlZFRhYiB8fCBwcm9wcy50YWJzWzBdPy52YWx1ZVwiXG4gICAgPlxuICAgICAgQGZvciAodGFiIG9mIHByb3BzLnRhYnM7IHRyYWNrIHRhYi52YWx1ZSkge1xuICAgICAgICA8aW9uLXRhYi1idXR0b25cbiAgICAgICAgICBbdGFiXT1cInRhYi52YWx1ZVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cInRhYi5kaXNhYmxlZFwiXG4gICAgICAgICAgW2xheW91dF09XCJwcm9wcy5sYXlvdXQgfHwgJ2ljb24tdG9wJ1wiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uVGFiQ2xpY2sodGFiKVwiXG4gICAgICAgID5cbiAgICAgICAgICBAaWYgKHRhYi5pY29uICYmIHByb3BzLmxheW91dCAhPT0gJ2ljb24taGlkZScpIHtcbiAgICAgICAgICAgIDxpb24taWNvbiBbbmFtZV09XCJ0YWIuaWNvblwiPjwvaW9uLWljb24+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiAoZ2V0VGFiTGFiZWwodGFiKSAmJiBwcm9wcy5sYXlvdXQgIT09ICdsYWJlbC1oaWRlJykge1xuICAgICAgICAgICAgPGlvbi1sYWJlbD57eyBnZXRUYWJMYWJlbCh0YWIpIH19PC9pb24tbGFiZWw+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiAodGFiLmJhZGdlKSB7XG4gICAgICAgICAgICA8aW9uLWJhZGdlIFtjb2xvcl09XCJ0YWIuYmFkZ2VDb2xvciB8fCAnZGFuZ2VyJ1wiPnt7IHRhYi5iYWRnZSB9fTwvaW9uLWJhZGdlPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9pb24tdGFiLWJ1dHRvbj5cbiAgICAgIH1cbiAgICA8L2lvbi10YWItYmFyPlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi90YWJzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuLyoqXG4gKiB2YWwtdGFic1xuICpcbiAqIEEgdGFiIGJhciBjb21wb25lbnQgZm9yIG5hdmlnYXRpb24gYmV0d2VlbiB2aWV3cy5cbiAqIENhbiBiZSBwb3NpdGlvbmVkIGF0IHRvcCBvciBib3R0b20gb2YgdGhlIHNjcmVlbi5cbiAqXG4gKiBAZXhhbXBsZSBCYXNpYyB1c2FnZVxuICogPHZhbC10YWJzIFtwcm9wc109XCJ7XG4gKiAgIHRhYnM6IFtcbiAqICAgICB7IHZhbHVlOiAnaG9tZScsIGxhYmVsOiAnSG9tZScsIGljb246ICdob21lJyB9LFxuICogICAgIHsgdmFsdWU6ICdzZWFyY2gnLCBsYWJlbDogJ1NlYXJjaCcsIGljb246ICdzZWFyY2gnIH0sXG4gKiAgICAgeyB2YWx1ZTogJ3Byb2ZpbGUnLCBsYWJlbDogJ1Byb2ZpbGUnLCBpY29uOiAncGVyc29uJyB9XG4gKiAgIF0sXG4gKiAgIHNlbGVjdGVkVGFiOiAnaG9tZSdcbiAqIH1cIiAodGFiQ2hhbmdlKT1cIm9uVGFiQ2hhbmdlKCRldmVudClcIj48L3ZhbC10YWJzPlxuICpcbiAqIEBleGFtcGxlIFdpdGggYmFkZ2VzXG4gKiA8dmFsLXRhYnMgW3Byb3BzXT1cIntcbiAqICAgdGFiczogW1xuICogICAgIHsgdmFsdWU6ICdpbmJveCcsIGxhYmVsOiAnSW5ib3gnLCBpY29uOiAnbWFpbCcsIGJhZGdlOiA1IH0sXG4gKiAgICAgeyB2YWx1ZTogJ25vdGlmaWNhdGlvbnMnLCBsYWJlbDogJ0FsZXJ0cycsIGljb246ICdub3RpZmljYXRpb25zJywgYmFkZ2U6ICc5OSsnIH1cbiAqICAgXVxuICogfVwiPjwvdmFsLXRhYnM+XG4gKlxuICogQGlucHV0IHByb3BzOiBUYWJzTWV0YWRhdGEgLSBDb25maWd1cmF0aW9uIGZvciB0aGUgdGFic1xuICogQG91dHB1dCB0YWJDaGFuZ2U6IFRhYk1ldGFkYXRhIC0gRW1pdHMgd2hlbiBhIHRhYiBpcyBzZWxlY3RlZFxuICovXG5leHBvcnQgY2xhc3MgVGFic0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgcHJvcHM6IFRhYnNNZXRhZGF0YTtcblxuICBAT3V0cHV0KCkgdGFiQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUYWJNZXRhZGF0YT4oKTtcblxuICBwcml2YXRlIGxhbmdTZXJ2aWNlID0gaW5qZWN0KExhbmdTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICBwcml2YXRlIHRhYkxhYmVsczogTWFwPHN0cmluZywgc3RyaW5nPiA9IG5ldyBNYXAoKTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldHVwTGFiZWxzKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaCgoc3ViKSA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICBvblRhYkNsaWNrKHRhYjogVGFiTWV0YWRhdGEpOiB2b2lkIHtcbiAgICBpZiAoIXRhYi5kaXNhYmxlZCkge1xuICAgICAgdGhpcy50YWJDaGFuZ2UuZW1pdCh0YWIpO1xuICAgIH1cbiAgfVxuXG4gIGdldFRhYkxhYmVsKHRhYjogVGFiTWV0YWRhdGEpOiBzdHJpbmcge1xuICAgIGlmICh0YWIubGFiZWwpIHJldHVybiB0YWIubGFiZWw7XG4gICAgcmV0dXJuIHRoaXMudGFiTGFiZWxzLmdldCh0YWIudmFsdWUpIHx8IHRhYi5jb250ZW50RmFsbGJhY2sgfHwgJyc7XG4gIH1cblxuICBwcml2YXRlIHNldHVwTGFiZWxzKCk6IHZvaWQge1xuICAgIHRoaXMucHJvcHMudGFicy5mb3JFYWNoKCh0YWIpID0+IHtcbiAgICAgIGlmICh0YWIubGFiZWwpIHtcbiAgICAgICAgdGhpcy50YWJMYWJlbHMuc2V0KHRhYi52YWx1ZSwgdGFiLmxhYmVsKTtcbiAgICAgIH0gZWxzZSBpZiAodGFiLmNvbnRlbnRLZXkgJiYgdGFiLmNvbnRlbnRDbGFzcykge1xuICAgICAgICBjb25zdCBzdWIgPSB0aGlzLmxhbmdTZXJ2aWNlXG4gICAgICAgICAgLmdldENvbnRlbnQodGFiLmNvbnRlbnRDbGFzcywgdGFiLmNvbnRlbnRLZXksIHRhYi5jb250ZW50RmFsbGJhY2spXG4gICAgICAgICAgLnN1YnNjcmliZSgoY29udGVudCkgPT4gdGhpcy50YWJMYWJlbHMuc2V0KHRhYi52YWx1ZSwgY29udGVudCkpO1xuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChzdWIpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3RhYnMvdGFicy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFcEgsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztBQW1Dakc7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJHO0FBQ0gsTUFBTSxPQUFPLGFBQWE7SUFuRDFCO1FBc0RZLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO0tBV3ZEO0lBVEMsVUFBVSxDQUFDLEdBQWdCO1FBQ3pCLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0IsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsR0FBZ0I7UUFDMUIsT0FBTyxHQUFHLENBQUMsS0FBSyxJQUFJLEdBQUcsQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFDO0lBQ2hELENBQUM7K0dBYlUsYUFBYTttR0FBYixhQUFhLHFJQS9DZDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwQlQscWtCQTNCUyxZQUFZLCtCQUFFLFNBQVMsaUhBQUUsWUFBWSwySkFBRSxPQUFPLDJKQUFFLFFBQVEsNkZBQUUsUUFBUTs7NEZBZ0RqRSxhQUFhO2tCQW5EekIsU0FBUzsrQkFDRSxVQUFVLGNBQ1IsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLENBQUMsWUFDbkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMEJUOzhCQXNCUSxLQUFLO3NCQUFiLEtBQUs7Z0JBRUksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25UYWJCYXIsIElvblRhYkJ1dHRvbiwgSW9uSWNvbiwgSW9uTGFiZWwsIElvbkJhZGdlIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVGFic01ldGFkYXRhLCBUYWJNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgYWRkSWNvbnMgfSBmcm9tICdpb25pY29ucyc7XG5pbXBvcnQgeyBob21lLCBzZXR0aW5ncywgcGVyc29uLCBzZWFyY2gsIGhlYXJ0LCBzdGFyLCBub3RpZmljYXRpb25zLCBtYWlsLCBjYWxlbmRhciwgZm9sZGVyIH0gZnJvbSAnaW9uaWNvbnMvaWNvbnMnO1xuXG5hZGRJY29ucyh7IGhvbWUsIHNldHRpbmdzLCBwZXJzb24sIHNlYXJjaCwgaGVhcnQsIHN0YXIsIG5vdGlmaWNhdGlvbnMsIG1haWwsIGNhbGVuZGFyLCBmb2xkZXIgfSk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC10YWJzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSW9uVGFiQmFyLCBJb25UYWJCdXR0b24sIElvbkljb24sIElvbkxhYmVsLCBJb25CYWRnZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGlvbi10YWItYmFyXG4gICAgICBbY29sb3JdPVwicHJvcHMuY29sb3JcIlxuICAgICAgW21vZGVdPVwicHJvcHMubW9kZVwiXG4gICAgICBbdHJhbnNsdWNlbnRdPVwicHJvcHMudHJhbnNsdWNlbnQgPz8gZmFsc2VcIlxuICAgICAgW3NlbGVjdGVkVGFiXT1cInByb3BzLnNlbGVjdGVkVGFiIHx8IHByb3BzLnRhYnNbMF0/LnZhbHVlXCJcbiAgICA+XG4gICAgICBAZm9yICh0YWIgb2YgcHJvcHMudGFiczsgdHJhY2sgdGFiLnZhbHVlKSB7XG4gICAgICAgIDxpb24tdGFiLWJ1dHRvblxuICAgICAgICAgIFt0YWJdPVwidGFiLnZhbHVlXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwidGFiLmRpc2FibGVkXCJcbiAgICAgICAgICBbbGF5b3V0XT1cInByb3BzLmxheW91dCB8fCAnaWNvbi10b3AnXCJcbiAgICAgICAgICAoY2xpY2spPVwib25UYWJDbGljayh0YWIpXCJcbiAgICAgICAgPlxuICAgICAgICAgIEBpZiAodGFiLmljb24gJiYgcHJvcHMubGF5b3V0ICE9PSAnaWNvbi1oaWRlJykge1xuICAgICAgICAgICAgPGlvbi1pY29uIFtuYW1lXT1cInRhYi5pY29uXCI+PC9pb24taWNvbj5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIChnZXRUYWJMYWJlbCh0YWIpICYmIHByb3BzLmxheW91dCAhPT0gJ2xhYmVsLWhpZGUnKSB7XG4gICAgICAgICAgICA8aW9uLWxhYmVsPnt7IGdldFRhYkxhYmVsKHRhYikgfX08L2lvbi1sYWJlbD5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmICh0YWIuYmFkZ2UpIHtcbiAgICAgICAgICAgIDxpb24tYmFkZ2UgW2NvbG9yXT1cInRhYi5iYWRnZUNvbG9yIHx8ICdkYW5nZXInXCI+e3sgdGFiLmJhZGdlIH19PC9pb24tYmFkZ2U+XG4gICAgICAgICAgfVxuICAgICAgICA8L2lvbi10YWItYnV0dG9uPlxuICAgICAgfVxuICAgIDwvaW9uLXRhYi1iYXI+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL3RhYnMuY29tcG9uZW50LnNjc3MnXSxcbn0pXG4vKipcbiAqIHZhbC10YWJzXG4gKlxuICogQSB0YWIgYmFyIGNvbXBvbmVudCBmb3IgbmF2aWdhdGlvbiBiZXR3ZWVuIHZpZXdzLlxuICpcbiAqIEBleGFtcGxlXG4gKiA8dmFsLXRhYnMgW3Byb3BzXT1cIntcbiAqICAgdGFiczogW1xuICogICAgIHsgdmFsdWU6ICdob21lJywgbGFiZWw6ICdJbmljaW8nLCBpY29uOiAnaG9tZScgfSxcbiAqICAgICB7IHZhbHVlOiAnc2VhcmNoJywgbGFiZWw6ICdCdXNjYXInLCBpY29uOiAnc2VhcmNoJyB9LFxuICogICAgIHsgdmFsdWU6ICdwcm9maWxlJywgbGFiZWw6ICdQZXJmaWwnLCBpY29uOiAncGVyc29uJyB9XG4gKiAgIF0sXG4gKiAgIHNlbGVjdGVkVGFiOiAnaG9tZSdcbiAqIH1cIiAodGFiQ2hhbmdlKT1cIm9uVGFiQ2hhbmdlKCRldmVudClcIj48L3ZhbC10YWJzPlxuICpcbiAqIEBpbnB1dCBwcm9wczogVGFic01ldGFkYXRhIC0gQ29uZmlndXJhdGlvbiBmb3IgdGhlIHRhYnNcbiAqIEBvdXRwdXQgdGFiQ2hhbmdlOiBUYWJNZXRhZGF0YSAtIEVtaXRzIHdoZW4gYSB0YWIgaXMgc2VsZWN0ZWRcbiAqL1xuZXhwb3J0IGNsYXNzIFRhYnNDb21wb25lbnQge1xuICBASW5wdXQoKSBwcm9wczogVGFic01ldGFkYXRhO1xuXG4gIEBPdXRwdXQoKSB0YWJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFRhYk1ldGFkYXRhPigpO1xuXG4gIG9uVGFiQ2xpY2sodGFiOiBUYWJNZXRhZGF0YSk6IHZvaWQge1xuICAgIGlmICghdGFiLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLnRhYkNoYW5nZS5lbWl0KHRhYik7XG4gICAgfVxuICB9XG5cbiAgZ2V0VGFiTGFiZWwodGFiOiBUYWJNZXRhZGF0YSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRhYi5sYWJlbCB8fCB0YWIuY29udGVudEZhbGxiYWNrIHx8ICcnO1xuICB9XG59XG4iXX0=
@@ -1,8 +1,7 @@
1
1
  import { CommonModule } from '@angular/common';
2
- import { Component, Input, inject } from '@angular/core';
2
+ import { Component, Input } from '@angular/core';
3
3
  import { ReactiveFormsModule } from '@angular/forms';
4
4
  import { IonTextarea, IonNote } from '@ionic/angular/standalone';
5
- import { LangService } from '../../../services/lang-provider/lang-provider.service';
6
5
  import { ComponentStates } from '../../types';
7
6
  import * as i0 from "@angular/core";
8
7
  import * as i1 from "@angular/forms";
@@ -42,8 +41,6 @@ import * as i1 from "@angular/forms";
42
41
  export class TextareaInputComponent {
43
42
  constructor() {
44
43
  this.states = ComponentStates;
45
- this.langSubscription = null;
46
- this.langService = inject(LangService);
47
44
  // Counter formatter for Ionic's built-in counter
48
45
  this.counterFormatter = (inputLength, maxLength) => {
49
46
  return `${inputLength}/${maxLength}`;
@@ -57,36 +54,14 @@ export class TextareaInputComponent {
57
54
  this.props.control.setValue(defaultValue);
58
55
  }
59
56
  }
60
- // Subscribe to language changes for reactive content
61
- if (this.hasReactiveContent()) {
62
- this.langSubscription = this.langService.currentLang$.subscribe(() => {
63
- // Trigger change detection for labels
64
- });
65
- }
66
- }
67
- ngOnDestroy() {
68
- this.langSubscription?.unsubscribe();
69
- }
70
- hasReactiveContent() {
71
- return !!(this.props.contentClass &&
72
- (this.props.labelContentKey || this.props.placeholderContentKey || this.props.hintContentKey));
73
57
  }
74
58
  getLabel() {
75
- if (this.props.labelContentKey && this.props.contentClass) {
76
- return this.langService.getText(this.props.contentClass, this.props.labelContentKey, this.props.label || '');
77
- }
78
59
  return this.props.label || '';
79
60
  }
80
61
  getPlaceholder() {
81
- if (this.props.placeholderContentKey && this.props.contentClass) {
82
- return this.langService.getText(this.props.contentClass, this.props.placeholderContentKey, this.props.placeholder || '');
83
- }
84
62
  return this.props.placeholder || '';
85
63
  }
86
64
  getHint() {
87
- if (this.props.hintContentKey && this.props.contentClass) {
88
- return this.langService.getText(this.props.contentClass, this.props.hintContentKey, this.props.hint || '');
89
- }
90
65
  return this.props.hint || '';
91
66
  }
92
67
  get hasError() {
@@ -201,4 +176,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
201
176
  }], propDecorators: { props: [{
202
177
  type: Input
203
178
  }] } });
204
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90ZXh0YXJlYS1pbnB1dC90ZXh0YXJlYS1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDcEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBa0Q5Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQ0c7QUFDSCxNQUFNLE9BQU8sc0JBQXNCO0lBaEZuQztRQW1GRSxXQUFNLEdBQUcsZUFBZSxDQUFDO1FBRWpCLHFCQUFnQixHQUF3QixJQUFJLENBQUM7UUFDN0MsZ0JBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFxRjFDLGlEQUFpRDtRQUNqRCxxQkFBZ0IsR0FBRyxDQUFDLFdBQW1CLEVBQUUsU0FBaUIsRUFBVSxFQUFFO1lBQ3BFLE9BQU8sR0FBRyxXQUFXLElBQUksU0FBUyxFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDO0tBQ0g7SUF2RkMsUUFBUTtRQUNOLG9DQUFvQztRQUNwQyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDakQsTUFBTSxZQUFZLEdBQ2hC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RmxDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsT0FBTyxDQUFDLFlBQ3hEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NUOzhCQXFDUSxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBPbkRlc3Ryb3ksIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElvblRleHRhcmVhLCBJb25Ob3RlIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExhbmdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbGFuZy1wcm92aWRlci9sYW5nLXByb3ZpZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tcG9uZW50U3RhdGVzIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgVGV4dGFyZWFJbnB1dE1ldGFkYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC10ZXh0YXJlYS1pbnB1dCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIElvblRleHRhcmVhLCBJb25Ob3RlXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwidGV4dGFyZWEtY29udGFpbmVyXCIgW2NsYXNzXT1cInByb3BzLmNzc0NsYXNzXCIgW2NsYXNzLmhhcy1lcnJvcl09XCJoYXNFcnJvclwiPlxuICAgICAgPGlvbi10ZXh0YXJlYVxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwicHJvcHMuY29udHJvbFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCJcbiAgICAgICAgW2xhYmVsXT1cImdldExhYmVsKClcIlxuICAgICAgICBbbGFiZWxQbGFjZW1lbnRdPVwicHJvcHMubGFiZWxQbGFjZW1lbnQgfHwgJ3N0YWNrZWQnXCJcbiAgICAgICAgW2ZpbGxdPVwicHJvcHMuZmlsbCB8fCAnb3V0bGluZSdcIlxuICAgICAgICBbY29sb3JdPVwiaGFzRXJyb3IgPyAnZGFuZ2VyJyA6IHByb3BzLmNvbG9yXCJcbiAgICAgICAgW3Jvd3NdPVwicHJvcHMucm93cyB8fCA0XCJcbiAgICAgICAgW2F1dG9Hcm93XT1cInByb3BzLmF1dG9Hcm93ID8/IGZhbHNlXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJwcm9wcy5tYXhMZW5ndGhcIlxuICAgICAgICBbbWlubGVuZ3RoXT1cInByb3BzLm1pbkxlbmd0aFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJwcm9wcy5zdGF0ZSA9PT0gc3RhdGVzLkRJU0FCTEVEXCJcbiAgICAgICAgW3JlYWRvbmx5XT1cInByb3BzLnN0YXRlID09PSBzdGF0ZXMuV09SS0lOR1wiXG4gICAgICAgIFtzcGVsbGNoZWNrXT1cInByb3BzLnNwZWxsY2hlY2sgPz8gdHJ1ZVwiXG4gICAgICAgIFthdXRvY2FwaXRhbGl6ZV09XCJwcm9wcy5hdXRvY2FwaXRhbGl6ZSB8fCAnc2VudGVuY2VzJ1wiXG4gICAgICAgIFtpbnB1dG1vZGVdPVwicHJvcHMuaW5wdXRNb2RlIHx8ICd0ZXh0J1wiXG4gICAgICAgIFt3cmFwXT1cInByb3BzLndyYXAgfHwgJ3NvZnQnXCJcbiAgICAgICAgW2NvdW50ZXJdPVwicHJvcHMuc2hvd0NvdW50ZXIgJiYgISFwcm9wcy5tYXhMZW5ndGhcIlxuICAgICAgICBbY291bnRlckZvcm1hdHRlcl09XCJjb3VudGVyRm9ybWF0dGVyXCJcbiAgICAgICAgW2NsYXNzLm5vLXJlc2l6ZV09XCJwcm9wcy5kaXNhYmxlUmVzaXplXCJcbiAgICAgID48L2lvbi10ZXh0YXJlYT5cblxuICAgICAgQGlmIChwcm9wcy5zaG93Q291bnRlciAmJiBwcm9wcy5tYXhMZW5ndGggJiYgcHJvcHMuY291bnRlckZvcm1hdCA9PT0gJ3JlbWFpbmluZycpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImNoYXItY291bnRlciByZW1haW5pbmdcIj5cbiAgICAgICAgICB7eyBnZXRSZW1haW5pbmdDaGFycygpIH19IHt7IGdldFJlbWFpbmluZ0xhYmVsKCkgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG5cbiAgICAgIEBpZiAocHJvcHMuaGludCAmJiAhaGFzRXJyb3IpIHtcbiAgICAgICAgPGlvbi1ub3RlIGNsYXNzPVwiaGludFwiPnt7IGdldEhpbnQoKSB9fTwvaW9uLW5vdGU+XG4gICAgICB9XG5cbiAgICAgIEBpZiAoaGFzRXJyb3IgJiYgcHJvcHMuc2hvd0Vycm9ycykge1xuICAgICAgICA8aW9uLW5vdGUgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCIgY29sb3I9XCJkYW5nZXJcIj5cbiAgICAgICAgICB7eyBnZXRFcnJvck1lc3NhZ2UoKSB9fVxuICAgICAgICA8L2lvbi1ub3RlPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi90ZXh0YXJlYS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxufSlcbi8qKlxuICogdmFsLXRleHRhcmVhLWlucHV0XG4gKlxuICogQSB0ZXh0YXJlYSBpbnB1dCBmaWVsZCB3aXRoIGNoYXJhY3RlciBjb3VudGVyLCBhdXRvLWdyb3csIGFuZCB2YWxpZGF0aW9uIHN1cHBvcnQuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2VcbiAqIGBgYGh0bWxcbiAqIDx2YWwtdGV4dGFyZWEtaW5wdXRcbiAqICAgW3Byb3BzXT1cIntcbiAqICAgICBjb250cm9sOiBtZXNzYWdlQ29udHJvbCxcbiAqICAgICBwbGFjZWhvbGRlcjogJ0VudGVyIHlvdXIgbWVzc2FnZScsXG4gKiAgICAgcm93czogNFxuICogICB9XCJcbiAqID48L3ZhbC10ZXh0YXJlYS1pbnB1dD5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFdpdGggY291bnRlciBhbmQgdmFsaWRhdGlvblxuICogYGBgaHRtbFxuICogPHZhbC10ZXh0YXJlYS1pbnB1dFxuICogICBbcHJvcHNdPVwie1xuICogICAgIGNvbnRyb2w6IGJpb0NvbnRyb2wsXG4gKiAgICAgbGFiZWw6ICdCaW8nLFxuICogICAgIHBsYWNlaG9sZGVyOiAnVGVsbCB1cyBhYm91dCB5b3Vyc2VsZicsXG4gKiAgICAgbWF4TGVuZ3RoOiA1MDAsXG4gKiAgICAgc2hvd0NvdW50ZXI6IHRydWUsXG4gKiAgICAgY291bnRlckZvcm1hdDogJ3JlbWFpbmluZycsXG4gKiAgICAgYXV0b0dyb3c6IHRydWUsXG4gKiAgICAgc2hvd0Vycm9yczogdHJ1ZSxcbiAqICAgICBlcnJvcnM6IHsgbWF4bGVuZ3RoOiAnQmlvIGlzIHRvbyBsb25nJyB9XG4gKiAgIH1cIlxuICogPjwvdmFsLXRleHRhcmVhLWlucHV0PlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBUZXh0YXJlYUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBwcm9wczogVGV4dGFyZWFJbnB1dE1ldGFkYXRhO1xuXG4gIHN0YXRlcyA9IENvbXBvbmVudFN0YXRlcztcblxuICBwcml2YXRlIGxhbmdTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGxhbmdTZXJ2aWNlID0gaW5qZWN0KExhbmdTZXJ2aWNlKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBBcHBseSBkZWZhdWx0IHZhbHVlIGlmIGNvbmZpZ3VyZWRcbiAgICBpZiAodGhpcy5wcm9wcz8ud2l0aERlZmF1bHQgfHwgdGhpcy5wcm9wcz8udmFsdWUpIHtcbiAgICAgIGNvbnN0IGRlZmF1bHRWYWx1ZSA9XG4gICAgICAgIHR5cGVvZiB0aGlzLnByb3BzLndpdGhEZWZhdWx0ID09PSAnc3RyaW5nJyA/IHRoaXMucHJvcHMud2l0aERlZmF1bHQgOiB0aGlzLnByb3BzLnZhbHVlIHx8ICcnO1xuICAgICAgaWYgKHRoaXMucHJvcHMuY29udHJvbCAmJiAhdGhpcy5wcm9wcy5jb250cm9sLnZhbHVlKSB7XG4gICAgICAgIHRoaXMucHJvcHMuY29udHJvbC5zZXRWYWx1ZShkZWZhdWx0VmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN1YnNjcmliZSB0byBsYW5ndWFnZSBjaGFuZ2VzIGZvciByZWFjdGl2ZSBjb250ZW50XG4gICAgaWYgKHRoaXMuaGFzUmVhY3RpdmVDb250ZW50KCkpIHtcbiAgICAgIHRoaXMubGFuZ1N1YnNjcmlwdGlvbiA9IHRoaXMubGFuZ1NlcnZpY2UuY3VycmVudExhbmckLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIC8vIFRyaWdnZXIgY2hhbmdlIGRldGVjdGlvbiBmb3IgbGFiZWxzXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmxhbmdTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGhhc1JlYWN0aXZlQ29udGVudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEoXG4gICAgICB0aGlzLnByb3BzLmNvbnRlbnRDbGFzcyAmJlxuICAgICAgKHRoaXMucHJvcHMubGFiZWxDb250ZW50S2V5IHx8IHRoaXMucHJvcHMucGxhY2Vob2xkZXJDb250ZW50S2V5IHx8IHRoaXMucHJvcHMuaGludENvbnRlbnRLZXkpXG4gICAgKTtcbiAgfVxuXG4gIGdldExhYmVsKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMucHJvcHMubGFiZWxDb250ZW50S2V5ICYmIHRoaXMucHJvcHMuY29udGVudENsYXNzKSB7XG4gICAgICByZXR1cm4gdGhpcy5sYW5nU2VydmljZS5nZXRUZXh0KHRoaXMucHJvcHMuY29udGVudENsYXNzLCB0aGlzLnByb3BzLmxhYmVsQ29udGVudEtleSwgdGhpcy5wcm9wcy5sYWJlbCB8fCAnJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnByb3BzLmxhYmVsIHx8ICcnO1xuICB9XG5cbiAgZ2V0UGxhY2Vob2xkZXIoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5wcm9wcy5wbGFjZWhvbGRlckNvbnRlbnRLZXkgJiYgdGhpcy5wcm9wcy5jb250ZW50Q2xhc3MpIHtcbiAgICAgIHJldHVybiB0aGlzLmxhbmdTZXJ2aWNlLmdldFRleHQoXG4gICAgICAgIHRoaXMucHJvcHMuY29udGVudENsYXNzLFxuICAgICAgICB0aGlzLnByb3BzLnBsYWNlaG9sZGVyQ29udGVudEtleSxcbiAgICAgICAgdGhpcy5wcm9wcy5wbGFjZWhvbGRlciB8fCAnJ1xuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucHJvcHMucGxhY2Vob2xkZXIgfHwgJyc7XG4gIH1cblxuICBnZXRIaW50KCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMucHJvcHMuaGludENvbnRlbnRLZXkgJiYgdGhpcy5wcm9wcy5jb250ZW50Q2xhc3MpIHtcbiAgICAgIHJldHVybiB0aGlzLmxhbmdTZXJ2aWNlLmdldFRleHQodGhpcy5wcm9wcy5jb250ZW50Q2xhc3MsIHRoaXMucHJvcHMuaGludENvbnRlbnRLZXksIHRoaXMucHJvcHMuaGludCB8fCAnJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnByb3BzLmhpbnQgfHwgJyc7XG4gIH1cblxuICBnZXQgaGFzRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKHRoaXMucHJvcHMuY29udHJvbD8udG91Y2hlZCAmJiB0aGlzLnByb3BzLmNvbnRyb2w/LmludmFsaWQpO1xuICB9XG5cbiAgZ2V0RXJyb3JNZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLnByb3BzLmNvbnRyb2w/LmVycm9ycyB8fCAhdGhpcy5wcm9wcy5lcnJvcnMpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBjb25zdCBlcnJvcktleXMgPSBPYmplY3Qua2V5cyh0aGlzLnByb3BzLmNvbnRyb2wuZXJyb3JzKTtcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBlcnJvcktleXMpIHtcbiAgICAgIGlmICh0aGlzLnByb3BzLmVycm9yc1trZXldKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnByb3BzLmVycm9yc1trZXldO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldFJlbWFpbmluZ0NoYXJzKCk6IG51bWJlciB7XG4gICAgY29uc3QgY3VycmVudExlbmd0aCA9IHRoaXMucHJvcHMuY29udHJvbD8udmFsdWU/Lmxlbmd0aCB8fCAwO1xuICAgIHJldHVybiAodGhpcy5wcm9wcy5tYXhMZW5ndGggfHwgMCkgLSBjdXJyZW50TGVuZ3RoO1xuICB9XG5cbiAgZ2V0UmVtYWluaW5nTGFiZWwoKTogc3RyaW5nIHtcbiAgICBjb25zdCByZW1haW5pbmcgPSB0aGlzLmdldFJlbWFpbmluZ0NoYXJzKCk7XG4gICAgcmV0dXJuIHJlbWFpbmluZyA9PT0gMSA/ICdjaGFyYWN0ZXIgcmVtYWluaW5nJyA6ICdjaGFyYWN0ZXJzIHJlbWFpbmluZyc7XG4gIH1cblxuICAvLyBDb3VudGVyIGZvcm1hdHRlciBmb3IgSW9uaWMncyBidWlsdC1pbiBjb3VudGVyXG4gIGNvdW50ZXJGb3JtYXR0ZXIgPSAoaW5wdXRMZW5ndGg6IG51bWJlciwgbWF4TGVuZ3RoOiBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIHJldHVybiBgJHtpbnB1dExlbmd0aH0vJHttYXhMZW5ndGh9YDtcbiAgfTtcbn1cbiJdfQ==
179
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90ZXh0YXJlYS1pbnB1dC90ZXh0YXJlYS1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBa0Q5Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQ0c7QUFDSCxNQUFNLE9BQU8sc0JBQXNCO0lBaEZuQztRQW1GRSxXQUFNLEdBQUcsZUFBZSxDQUFDO1FBc0R6QixpREFBaUQ7UUFDakQscUJBQWdCLEdBQUcsQ0FBQyxXQUFtQixFQUFFLFNBQWlCLEVBQVUsRUFBRTtZQUNwRSxPQUFPLEdBQUcsV0FBVyxJQUFJLFNBQVMsRUFBRSxDQUFDO1FBQ3ZDLENBQUMsQ0FBQztLQUNIO0lBeERDLFFBQVE7UUFDTixvQ0FBb0M7UUFDcEMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVcsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ2pELE1BQU0sWUFBWSxHQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUMvRixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ3BELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUM1QyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3RELE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztRQUVELE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekQsS0FBSyxNQUFNLEdBQUcsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUM1QixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQzNCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDaEMsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxpQkFBaUI7UUFDZixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQztRQUM3RCxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLEdBQUcsYUFBYSxDQUFDO0lBQ3JELENBQUM7SUFFRCxpQkFBaUI7UUFDZixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUMzQyxPQUFPLFNBQVMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQztJQUMxRSxDQUFDOytHQXZEVSxzQkFBc0I7bUdBQXRCLHNCQUFzQiwwR0E1RXZCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NULDY1QkF6Q1MsWUFBWSw4QkFBRSxtQkFBbUIsZ29CQUFFLFdBQVcsaWFBQUUsT0FBTzs7NEZBNkV0RCxzQkFBc0I7a0JBaEZsQyxTQUFTOytCQUNFLG9CQUFvQixjQUNsQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxZQUN4RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdDVDs4QkFxQ1EsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElvblRleHRhcmVhLCBJb25Ob3RlIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBDb21wb25lbnRTdGF0ZXMgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBUZXh0YXJlYUlucHV0TWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLXRleHRhcmVhLWlucHV0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgSW9uVGV4dGFyZWEsIElvbk5vdGVdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0YXJlYS1jb250YWluZXJcIiBbY2xhc3NdPVwicHJvcHMuY3NzQ2xhc3NcIiBbY2xhc3MuaGFzLWVycm9yXT1cImhhc0Vycm9yXCI+XG4gICAgICA8aW9uLXRleHRhcmVhXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJwcm9wcy5jb250cm9sXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImdldFBsYWNlaG9sZGVyKClcIlxuICAgICAgICBbbGFiZWxdPVwiZ2V0TGFiZWwoKVwiXG4gICAgICAgIFtsYWJlbFBsYWNlbWVudF09XCJwcm9wcy5sYWJlbFBsYWNlbWVudCB8fCAnc3RhY2tlZCdcIlxuICAgICAgICBbZmlsbF09XCJwcm9wcy5maWxsIHx8ICdvdXRsaW5lJ1wiXG4gICAgICAgIFtjb2xvcl09XCJoYXNFcnJvciA/ICdkYW5nZXInIDogcHJvcHMuY29sb3JcIlxuICAgICAgICBbcm93c109XCJwcm9wcy5yb3dzIHx8IDRcIlxuICAgICAgICBbYXV0b0dyb3ddPVwicHJvcHMuYXV0b0dyb3cgPz8gZmFsc2VcIlxuICAgICAgICBbbWF4bGVuZ3RoXT1cInByb3BzLm1heExlbmd0aFwiXG4gICAgICAgIFttaW5sZW5ndGhdPVwicHJvcHMubWluTGVuZ3RoXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInByb3BzLnN0YXRlID09PSBzdGF0ZXMuRElTQUJMRURcIlxuICAgICAgICBbcmVhZG9ubHldPVwicHJvcHMuc3RhdGUgPT09IHN0YXRlcy5XT1JLSU5HXCJcbiAgICAgICAgW3NwZWxsY2hlY2tdPVwicHJvcHMuc3BlbGxjaGVjayA/PyB0cnVlXCJcbiAgICAgICAgW2F1dG9jYXBpdGFsaXplXT1cInByb3BzLmF1dG9jYXBpdGFsaXplIHx8ICdzZW50ZW5jZXMnXCJcbiAgICAgICAgW2lucHV0bW9kZV09XCJwcm9wcy5pbnB1dE1vZGUgfHwgJ3RleHQnXCJcbiAgICAgICAgW3dyYXBdPVwicHJvcHMud3JhcCB8fCAnc29mdCdcIlxuICAgICAgICBbY291bnRlcl09XCJwcm9wcy5zaG93Q291bnRlciAmJiAhIXByb3BzLm1heExlbmd0aFwiXG4gICAgICAgIFtjb3VudGVyRm9ybWF0dGVyXT1cImNvdW50ZXJGb3JtYXR0ZXJcIlxuICAgICAgICBbY2xhc3Mubm8tcmVzaXplXT1cInByb3BzLmRpc2FibGVSZXNpemVcIlxuICAgICAgPjwvaW9uLXRleHRhcmVhPlxuXG4gICAgICBAaWYgKHByb3BzLnNob3dDb3VudGVyICYmIHByb3BzLm1heExlbmd0aCAmJiBwcm9wcy5jb3VudGVyRm9ybWF0ID09PSAncmVtYWluaW5nJykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiY2hhci1jb3VudGVyIHJlbWFpbmluZ1wiPlxuICAgICAgICAgIHt7IGdldFJlbWFpbmluZ0NoYXJzKCkgfX0ge3sgZ2V0UmVtYWluaW5nTGFiZWwoKSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cblxuICAgICAgQGlmIChwcm9wcy5oaW50ICYmICFoYXNFcnJvcikge1xuICAgICAgICA8aW9uLW5vdGUgY2xhc3M9XCJoaW50XCI+e3sgZ2V0SGludCgpIH19PC9pb24tbm90ZT5cbiAgICAgIH1cblxuICAgICAgQGlmIChoYXNFcnJvciAmJiBwcm9wcy5zaG93RXJyb3JzKSB7XG4gICAgICAgIDxpb24tbm90ZSBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIiBjb2xvcj1cImRhbmdlclwiPlxuICAgICAgICAgIHt7IGdldEVycm9yTWVzc2FnZSgpIH19XG4gICAgICAgIDwvaW9uLW5vdGU+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL3RleHRhcmVhLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuLyoqXG4gKiB2YWwtdGV4dGFyZWEtaW5wdXRcbiAqXG4gKiBBIHRleHRhcmVhIGlucHV0IGZpZWxkIHdpdGggY2hhcmFjdGVyIGNvdW50ZXIsIGF1dG8tZ3JvdywgYW5kIHZhbGlkYXRpb24gc3VwcG9ydC5cbiAqXG4gKiBAZXhhbXBsZSBCYXNpYyB1c2FnZVxuICogYGBgaHRtbFxuICogPHZhbC10ZXh0YXJlYS1pbnB1dFxuICogICBbcHJvcHNdPVwie1xuICogICAgIGNvbnRyb2w6IG1lc3NhZ2VDb250cm9sLFxuICogICAgIHBsYWNlaG9sZGVyOiAnRW50ZXIgeW91ciBtZXNzYWdlJyxcbiAqICAgICByb3dzOiA0XG4gKiAgIH1cIlxuICogPjwvdmFsLXRleHRhcmVhLWlucHV0PlxuICogYGBgXG4gKlxuICogQGV4YW1wbGUgV2l0aCBjb3VudGVyIGFuZCB2YWxpZGF0aW9uXG4gKiBgYGBodG1sXG4gKiA8dmFsLXRleHRhcmVhLWlucHV0XG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgY29udHJvbDogYmlvQ29udHJvbCxcbiAqICAgICBsYWJlbDogJ0JpbycsXG4gKiAgICAgcGxhY2Vob2xkZXI6ICdUZWxsIHVzIGFib3V0IHlvdXJzZWxmJyxcbiAqICAgICBtYXhMZW5ndGg6IDUwMCxcbiAqICAgICBzaG93Q291bnRlcjogdHJ1ZSxcbiAqICAgICBjb3VudGVyRm9ybWF0OiAncmVtYWluaW5nJyxcbiAqICAgICBhdXRvR3JvdzogdHJ1ZSxcbiAqICAgICBzaG93RXJyb3JzOiB0cnVlLFxuICogICAgIGVycm9yczogeyBtYXhsZW5ndGg6ICdCaW8gaXMgdG9vIGxvbmcnIH1cbiAqICAgfVwiXG4gKiA+PC92YWwtdGV4dGFyZWEtaW5wdXQ+XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFRleHRhcmVhSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBwcm9wczogVGV4dGFyZWFJbnB1dE1ldGFkYXRhO1xuXG4gIHN0YXRlcyA9IENvbXBvbmVudFN0YXRlcztcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBBcHBseSBkZWZhdWx0IHZhbHVlIGlmIGNvbmZpZ3VyZWRcbiAgICBpZiAodGhpcy5wcm9wcz8ud2l0aERlZmF1bHQgfHwgdGhpcy5wcm9wcz8udmFsdWUpIHtcbiAgICAgIGNvbnN0IGRlZmF1bHRWYWx1ZSA9XG4gICAgICAgIHR5cGVvZiB0aGlzLnByb3BzLndpdGhEZWZhdWx0ID09PSAnc3RyaW5nJyA/IHRoaXMucHJvcHMud2l0aERlZmF1bHQgOiB0aGlzLnByb3BzLnZhbHVlIHx8ICcnO1xuICAgICAgaWYgKHRoaXMucHJvcHMuY29udHJvbCAmJiAhdGhpcy5wcm9wcy5jb250cm9sLnZhbHVlKSB7XG4gICAgICAgIHRoaXMucHJvcHMuY29udHJvbC5zZXRWYWx1ZShkZWZhdWx0VmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldExhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMubGFiZWwgfHwgJyc7XG4gIH1cblxuICBnZXRQbGFjZWhvbGRlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnBsYWNlaG9sZGVyIHx8ICcnO1xuICB9XG5cbiAgZ2V0SGludCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmhpbnQgfHwgJyc7XG4gIH1cblxuICBnZXQgaGFzRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKHRoaXMucHJvcHMuY29udHJvbD8udG91Y2hlZCAmJiB0aGlzLnByb3BzLmNvbnRyb2w/LmludmFsaWQpO1xuICB9XG5cbiAgZ2V0RXJyb3JNZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLnByb3BzLmNvbnRyb2w/LmVycm9ycyB8fCAhdGhpcy5wcm9wcy5lcnJvcnMpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBjb25zdCBlcnJvcktleXMgPSBPYmplY3Qua2V5cyh0aGlzLnByb3BzLmNvbnRyb2wuZXJyb3JzKTtcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBlcnJvcktleXMpIHtcbiAgICAgIGlmICh0aGlzLnByb3BzLmVycm9yc1trZXldKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnByb3BzLmVycm9yc1trZXldO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldFJlbWFpbmluZ0NoYXJzKCk6IG51bWJlciB7XG4gICAgY29uc3QgY3VycmVudExlbmd0aCA9IHRoaXMucHJvcHMuY29udHJvbD8udmFsdWU/Lmxlbmd0aCB8fCAwO1xuICAgIHJldHVybiAodGhpcy5wcm9wcy5tYXhMZW5ndGggfHwgMCkgLSBjdXJyZW50TGVuZ3RoO1xuICB9XG5cbiAgZ2V0UmVtYWluaW5nTGFiZWwoKTogc3RyaW5nIHtcbiAgICBjb25zdCByZW1haW5pbmcgPSB0aGlzLmdldFJlbWFpbmluZ0NoYXJzKCk7XG4gICAgcmV0dXJuIHJlbWFpbmluZyA9PT0gMSA/ICdjaGFyYWN0ZXIgcmVtYWluaW5nJyA6ICdjaGFyYWN0ZXJzIHJlbWFpbmluZyc7XG4gIH1cblxuICAvLyBDb3VudGVyIGZvcm1hdHRlciBmb3IgSW9uaWMncyBidWlsdC1pbiBjb3VudGVyXG4gIGNvdW50ZXJGb3JtYXR0ZXIgPSAoaW5wdXRMZW5ndGg6IG51bWJlciwgbWF4TGVuZ3RoOiBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIHJldHVybiBgJHtpbnB1dExlbmd0aH0vJHttYXhMZW5ndGh9YDtcbiAgfTtcbn1cbiJdfQ==