@wavemaker/app-ng-runtime 11.7.5-next.NULL → 11.7.5-rc.166

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 (99) hide show
  1. app-ng-runtime/build-task/bundles/index.umd.js +13 -1
  2. app-ng-runtime/build-task/esm2022/navigation/menu/menu.build.mjs +14 -2
  3. app-ng-runtime/build-task/fesm2022/index.mjs +13 -1
  4. app-ng-runtime/build-task/fesm2022/index.mjs.map +1 -1
  5. app-ng-runtime/components/basic/default/audio/audio.component.d.ts +1 -0
  6. app-ng-runtime/components/basic/default/bundles/index.umd.js +5 -4
  7. app-ng-runtime/components/basic/default/esm2022/audio/audio.component.mjs +6 -5
  8. app-ng-runtime/components/basic/default/fesm2022/index.mjs +5 -4
  9. app-ng-runtime/components/basic/default/fesm2022/index.mjs.map +1 -1
  10. app-ng-runtime/components/basic/progress/bundles/index.umd.js +5 -4
  11. app-ng-runtime/components/basic/progress/esm2022/progress-bar/progress-bar.component.mjs +3 -3
  12. app-ng-runtime/components/basic/progress/esm2022/progress-circle/progress-circle.component.mjs +4 -3
  13. app-ng-runtime/components/basic/progress/fesm2022/index.mjs +5 -4
  14. app-ng-runtime/components/basic/progress/fesm2022/index.mjs.map +1 -1
  15. app-ng-runtime/components/basic/progress/progress-circle/progress-circle.component.d.ts +1 -0
  16. app-ng-runtime/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +1 -1
  17. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
  18. app-ng-runtime/components/basic/search/bundles/index.umd.js +2 -2
  19. app-ng-runtime/components/basic/search/esm2022/search.component.mjs +3 -3
  20. app-ng-runtime/components/basic/search/fesm2022/index.mjs +2 -2
  21. app-ng-runtime/components/basic/search/fesm2022/index.mjs.map +1 -1
  22. app-ng-runtime/components/data/form/bundles/index.umd.js +5 -4
  23. app-ng-runtime/components/data/form/esm2022/form-field/form-field.directive.mjs +1 -2
  24. app-ng-runtime/components/data/form/esm2022/form.component.mjs +2 -2
  25. app-ng-runtime/components/data/form/esm2022/live-form/live-form.directive.mjs +5 -3
  26. app-ng-runtime/components/data/form/fesm2022/index.mjs +5 -4
  27. app-ng-runtime/components/data/form/fesm2022/index.mjs.map +1 -1
  28. app-ng-runtime/components/dialogs/alert-dialog/bundles/index.umd.js +5 -4
  29. app-ng-runtime/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +5 -5
  30. app-ng-runtime/components/dialogs/alert-dialog/esm2022/alert-dialog.props.mjs +2 -1
  31. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs +5 -4
  32. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
  33. app-ng-runtime/components/dialogs/confirm-dialog/bundles/index.umd.js +5 -4
  34. app-ng-runtime/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +5 -5
  35. app-ng-runtime/components/dialogs/confirm-dialog/esm2022/confirm-dialog.props.mjs +2 -1
  36. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs +5 -4
  37. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
  38. app-ng-runtime/components/dialogs/default/bundles/index.umd.js +163 -30
  39. app-ng-runtime/components/dialogs/default/dialog-header/dialog-header.component.d.ts +2 -1
  40. app-ng-runtime/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +164 -31
  41. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs +163 -30
  42. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  43. app-ng-runtime/components/dialogs/design-dialog/bundles/index.umd.js +5 -4
  44. app-ng-runtime/components/dialogs/design-dialog/esm2022/dialog.component.mjs +5 -5
  45. app-ng-runtime/components/dialogs/design-dialog/esm2022/dialog.props.mjs +2 -1
  46. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs +5 -4
  47. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
  48. app-ng-runtime/components/dialogs/iframe-dialog/bundles/index.umd.js +5 -4
  49. app-ng-runtime/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +5 -5
  50. app-ng-runtime/components/dialogs/iframe-dialog/esm2022/iframe-dialog.props.mjs +2 -1
  51. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs +5 -4
  52. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
  53. app-ng-runtime/components/dialogs/partial-dialog/bundles/index.umd.js +5 -4
  54. app-ng-runtime/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +5 -5
  55. app-ng-runtime/components/dialogs/partial-dialog/esm2022/partial-dialog.props.mjs +2 -1
  56. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs +5 -4
  57. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
  58. app-ng-runtime/components/input/default/bundles/index.umd.js +43 -53
  59. app-ng-runtime/components/input/default/esm2022/caption-position.directive.mjs +2 -3
  60. app-ng-runtime/components/input/default/esm2022/select/select.component.mjs +44 -53
  61. app-ng-runtime/components/input/default/fesm2022/index.mjs +44 -54
  62. app-ng-runtime/components/input/default/fesm2022/index.mjs.map +1 -1
  63. app-ng-runtime/components/input/default/select/select.component.d.ts +1 -2
  64. app-ng-runtime/components/input/epoch/bundles/index.umd.js +212 -50
  65. app-ng-runtime/components/input/epoch/date/date.component.d.ts +7 -0
  66. app-ng-runtime/components/input/epoch/date/imaskUtil.d.ts +92 -0
  67. app-ng-runtime/components/input/epoch/epoch.module.d.ts +2 -1
  68. app-ng-runtime/components/input/epoch/esm2022/base-date-time.component.mjs +5 -4
  69. app-ng-runtime/components/input/epoch/esm2022/date/date.component.mjs +76 -28
  70. app-ng-runtime/components/input/epoch/esm2022/date/date.props.mjs +3 -2
  71. app-ng-runtime/components/input/epoch/esm2022/date/imaskUtil.mjs +112 -0
  72. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time.component.mjs +4 -4
  73. app-ng-runtime/components/input/epoch/esm2022/epoch.module.mjs +8 -4
  74. app-ng-runtime/components/input/epoch/esm2022/time/time.component.mjs +3 -3
  75. app-ng-runtime/components/input/epoch/fesm2022/index.mjs +205 -41
  76. app-ng-runtime/components/input/epoch/fesm2022/index.mjs.map +1 -1
  77. app-ng-runtime/components/navigation/menu/bundles/index.umd.js +1 -1
  78. app-ng-runtime/components/navigation/menu/esm2022/menu.component.mjs +2 -2
  79. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs +1 -1
  80. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  81. app-ng-runtime/components/navigation/popover/bundles/index.umd.js +3 -2
  82. app-ng-runtime/components/navigation/popover/esm2022/popover.component.mjs +4 -3
  83. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs +3 -2
  84. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  85. app-ng-runtime/core/bundles/index.umd.js +0 -1
  86. app-ng-runtime/core/esm2022/utils/expression-parser.mjs +1 -2
  87. app-ng-runtime/core/fesm2022/index.mjs +0 -1
  88. app-ng-runtime/core/fesm2022/index.mjs.map +1 -1
  89. app-ng-runtime/mobile/core/bundles/index.umd.js +5 -0
  90. app-ng-runtime/mobile/core/esm2022/native.xhr.mjs +6 -1
  91. app-ng-runtime/mobile/core/fesm2022/index.mjs +5 -0
  92. app-ng-runtime/mobile/core/fesm2022/index.mjs.map +1 -1
  93. app-ng-runtime/mobile/core/native.xhr.d.ts +1 -0
  94. app-ng-runtime/package.json +1 -1
  95. app-ng-runtime/runtime/base/bundles/index.umd.js +1 -0
  96. app-ng-runtime/runtime/base/esm2022/services/i18n.service.mjs +2 -2
  97. app-ng-runtime/runtime/base/fesm2022/index.mjs +1 -1
  98. app-ng-runtime/runtime/base/fesm2022/index.mjs.map +1 -1
  99. app-ng-runtime/scripts/datatable/datatable.js +4 -3
@@ -121,7 +121,7 @@ export class ProgressBarComponent extends StylableComponent {
121
121
  static { this.ɵfac = function ProgressBarComponent_Factory(t) { return new (t || ProgressBarComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵinjectAttribute('dataset'), i0.ɵɵinjectAttribute('dataset.bind')); }; }
122
122
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProgressBarComponent, selectors: [["", "wmProgressBar", ""]], features: [i0.ɵɵProvidersFeature([
123
123
  provideAsWidgetRef(ProgressBarComponent)
124
- ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 1, vars: 1, consts: [["role", "progressbar", 3, "class", "width", 4, "ngFor", "ngForOf"], ["role", "progressbar"], [1, "app-progress-label"]], template: function ProgressBarComponent_Template(rf, ctx) { if (rf & 1) {
124
+ ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 1, vars: 1, consts: [["role", "progressbar", "tabindex", "1", 3, "class", "width", 4, "ngFor", "ngForOf"], ["role", "progressbar", "tabindex", "1"], [1, "app-progress-label"]], template: function ProgressBarComponent_Template(rf, ctx) { if (rf & 1) {
125
125
  i0.ɵɵtemplate(0, ProgressBarComponent_div_0_Template, 3, 11, "div", 0);
126
126
  } if (rf & 2) {
127
127
  i0.ɵɵproperty("ngForOf", ctx.data);
@@ -131,7 +131,7 @@ export class ProgressBarComponent extends StylableComponent {
131
131
  type: Component,
132
132
  args: [{ selector: '[wmProgressBar]', providers: [
133
133
  provideAsWidgetRef(ProgressBarComponent)
134
- ], template: "<div class=\"multi-bar progress-bar {{bar.cls}}\" *ngFor=\"let bar of data\" [style.width]=\"bar.progressBarWidth\" role=\"progressbar\"\n [attr.aria-valuenow]=\"datavalue\" [attr.aria-valuemin]=\"minvalue\" [attr.aria-valuemax]=\"maxvalue\" [attr.aria-label]=\"hint || 'Progress bar'\">\n <span class=\"app-progress-label\" [attr.data-caption-placement]=\"captionplacement\">{{bar.displayValue}}</span>\n</div>\n" }]
134
+ ], template: "<div class=\"multi-bar progress-bar {{bar.cls}}\" *ngFor=\"let bar of data\" [style.width]=\"bar.progressBarWidth\"\n role=\"progressbar\" [attr.aria-valuenow]=\"datavalue\" [attr.aria-valuemin]=\"minvalue\" [attr.aria-valuemax]=\"maxvalue\"\n [attr.aria-label]=\"hint || 'Progress bar'\" tabindex=\"1\">\n <span class=\"app-progress-label\" [attr.data-caption-placement]=\"captionplacement\">{{bar.displayValue}}</span>\n</div>" }]
135
135
  }], function () { return [{ type: i0.Injector }, { type: undefined, decorators: [{
136
136
  type: Attribute,
137
137
  args: ['dataset']
@@ -139,4 +139,4 @@ export class ProgressBarComponent extends StylableComponent {
139
139
  type: Attribute,
140
140
  args: ['dataset.bind']
141
141
  }] }]; }, null); })();
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9iYXNpYy9wcm9ncmVzcy9zcmMvcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvYmFzaWMvcHJvZ3Jlc3Mvc3JjL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFXLE1BQU0sZUFBZSxDQUFDO0FBRXZFLE9BQU8sRUFBQyxXQUFXLEVBQUUsU0FBUyxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ2hELE9BQU8sRUFBaUIsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFbkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7O0lDTjlELDhCQUNpSixjQUFBO0lBQzNELFlBQW9CO0lBQUEsaUJBQU8sRUFBQTs7OztJQUY1RyxvRUFBMEM7SUFBMEIsZ0RBQW9DO0lBQ3hHLGlEQUFnQyxrQ0FBQSxrQ0FBQSw2Q0FBQTtJQUNBLGVBQWdEO0lBQWhELGlFQUFnRDtJQUFDLGVBQW9CO0lBQXBCLHlDQUFvQjs7QURRMUcsTUFBTSxXQUFXLEdBQUcsdUJBQXVCLENBQUM7QUFDNUMsTUFBTSxhQUFhLEdBQWtCLEVBQUMsVUFBVSxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUMsQ0FBQztBQUU3Rix1Q0FBdUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lB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QUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FFaEQ7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsR0FBVyxFQUFFLEVBQU8sRUFBRSxFQUFRO1FBQzNDLElBQUksR0FBRyxLQUFLLE1BQU0sRUFBRTtZQUNoQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDdkI7YUFBTSxJQUFJLEdBQUcsS0FBSyxVQUFVLElBQUksR0FBRyxLQUFLLFVBQVUsSUFBSSxHQUFHLEtBQUssV0FBVyxJQUFJLEdBQUcsS0FBSyxTQUFTLElBQUksR0FBRyxLQUFLLGVBQWUsRUFBRTtZQUN4SCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDdkI7YUFBTTtZQUNILEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0wsQ0FBQztxRkFwR1Esb0JBQW9CLDBEQXFCUyxTQUFTLHdCQUE4QixjQUFjO29FQXJCbEYsb0JBQW9CLDJFQUpsQjtnQkFDUCxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQzthQUMzQztZQ3hDTCxzRUFHTTs7WUFIMEQsa0NBQU87Ozt1RkQwQzFELG9CQUFvQjtjQVBoQyxTQUFTOzJCQUNJLGlCQUFpQixhQUVoQjtvQkFDUCxrQkFBa0Isc0JBQXNCO2lCQUMzQzs7c0JBdUIyQixTQUFTO3VCQUFDLFNBQVM7O3NCQUFvQixTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0F0dHJpYnV0ZSwgQ29tcG9uZW50LCBJbmplY3RvciwgT3B0aW9uYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge2ZpbmRWYWx1ZU9mLCBpc0RlZmluZWR9IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7IElXaWRnZXRDb25maWcsIHByb3ZpZGVBc1dpZGdldFJlZiwgU3R5bGFibGVDb21wb25lbnQsIHN0eWxlciB9IGZyb20gJ0B3bS9jb21wb25lbnRzL2Jhc2UnO1xuXG5pbXBvcnQgeyByZWdpc3RlclByb3BzIH0gZnJvbSAnLi9wcm9ncmVzcy1iYXIucHJvcHMnO1xuaW1wb3J0IHsgZ2V0RGVjaW1hbENvdW50LCBpc1BlcmNlbnRhZ2VWYWx1ZSB9IGZyb20gJy4uL3V0aWxzJztcblxuZGVjbGFyZSBjb25zdCBfO1xuXG5jb25zdCBERUZBVUxUX0NMUyA9ICdwcm9ncmVzcyBhcHAtcHJvZ3Jlc3MnO1xuY29uc3QgV0lER0VUX0NPTkZJRzogSVdpZGdldENvbmZpZyA9IHt3aWRnZXRUeXBlOiAnd20tcHJvZ3Jlc3MtYmFyJywgaG9zdENsYXNzOiBERUZBVUxUX0NMU307XG5cbi8vIG1hcCBvZiBwcm9ncmVzcy1iYXIgdHlwZSBhbmQgY2xhc3Nlc1xuZXhwb3J0IGNvbnN0IFRZUEVfQ0xBU1NfTUFQID0ge1xuICAgICdkZWZhdWx0JzogJycsXG4gICAgJ2RlZmF1bHQtc3RyaXBlZCc6ICdwcm9ncmVzcy1iYXItc3RyaXBlZCcsXG4gICAgJ3N1Y2Nlc3MnOiAncHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MnLFxuICAgICdzdWNjZXNzLXN0cmlwZWQnOiAncHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MgcHJvZ3Jlc3MtYmFyLXN0cmlwZWQnLFxuICAgICdpbmZvJzogJ3Byb2dyZXNzLWJhci1pbmZvJyxcbiAgICAnaW5mby1zdHJpcGVkJzogJ3Byb2dyZXNzLWJhci1pbmZvIHByb2dyZXNzLWJhci1zdHJpcGVkJyxcbiAgICAnd2FybmluZyc6ICdwcm9ncmVzcy1iYXItd2FybmluZycsXG4gICAgJ3dhcm5pbmctc3RyaXBlZCc6ICdwcm9ncmVzcy1iYXItd2FybmluZyBwcm9ncmVzcy1iYXItc3RyaXBlZCcsXG4gICAgJ2Rhbmdlcic6ICdwcm9ncmVzcy1iYXItZGFuZ2VyJyxcbiAgICAnZGFuZ2VyLXN0cmlwZWQnOiAncHJvZ3Jlc3MtYmFyLWRhbmdlciBwcm9ncmVzcy1iYXItc3RyaXBlZCdcbn07XG5cblxuLy8gaW50ZXJmYWNlIGZvciB0aGUgcHJvZ3Jlc3MtYmFyIGluZm9cbmludGVyZmFjZSBJUHJvZ3Jlc3NJbmZvIHtcbiAgICBjbHM6IHN0cmluZztcbiAgICBwcm9ncmVzc0JhcldpZHRoOiBzdHJpbmc7XG4gICAgZGlzcGxheVZhbHVlOiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnW3dtUHJvZ3Jlc3NCYXJdJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgcHJvdmlkZUFzV2lkZ2V0UmVmKFByb2dyZXNzQmFyQ29tcG9uZW50KVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgUHJvZ3Jlc3NCYXJDb21wb25lbnQgZXh0ZW5kcyBTdHlsYWJsZUNvbXBvbmVudCB7XG4gICAgc3RhdGljIGluaXRpYWxpemVQcm9wcyA9IHJlZ2lzdGVyUHJvcHMoKTtcblxuICAgIHB1YmxpYyBkaXNwbGF5Zm9ybWF0OiBzdHJpbmc7XG4gICAgcHVibGljIGRhdGF2YWx1ZTogc3RyaW5nO1xuICAgIHB1YmxpYyBtaW52YWx1ZTogbnVtYmVyO1xuICAgIHB1YmxpYyBtYXh2YWx1ZTogbnVtYmVyO1xuICAgIHB1YmxpYyB0eXBlOiBzdHJpbmc7XG4gICAgcHVibGljIGRhdGFzZXQ6IEFycmF5PGFueT47XG4gICAgcHVibGljIGhpbnQ6IHN0cmluZztcblxuICAgIHByaXZhdGUgX3ByZXBhcmVEYXRhOiBGdW5jdGlvbjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhhc0RhdGFzZXQ6IGJvb2xlYW47XG5cbiAgICAvLyBwcm9ncmVzcy1iYXIgZGF0YSwgbmdGb3IgaW4gdGhlIHRlbXBsYXRlIGl0ZXJhdGVzIG9uIHRoaXNcbiAgICBwdWJsaWMgZGF0YTogQXJyYXk8SVByb2dyZXNzSW5mbz4gPSBbe1xuICAgICAgICBjbHM6IFRZUEVfQ0xBU1NfTUFQLmRlZmF1bHQsXG4gICAgICAgIHByb2dyZXNzQmFyV2lkdGg6ICcwJScsXG4gICAgICAgIGRpc3BsYXlWYWx1ZTogJzAnXG4gICAgfV07XG5cbiAgICBjb25zdHJ1Y3Rvcihpbmo6IEluamVjdG9yLCBAQXR0cmlidXRlKCdkYXRhc2V0JykgZGF0YXNldDogc3RyaW5nLCBAQXR0cmlidXRlKCdkYXRhc2V0LmJpbmQnKSBib3VuZERhdGFzZXQ6IHN0cmluZykge1xuICAgICAgICBzdXBlcihpbmosIFdJREdFVF9DT05GSUcpO1xuXG4gICAgICAgIC8vIGZsYWcgd2hpY2ggZGV0ZXJtaW5lcyB3aGV0aGVyIGRhdGFzZXQgaXMgcHJvdmlkZWQgb3Igbm90XG4gICAgICAgIHRoaXMuaGFzRGF0YXNldCA9ICEhKGRhdGFzZXQgfHwgYm91bmREYXRhc2V0KTtcblxuICAgICAgICBzdHlsZXIodGhpcy5uYXRpdmVFbGVtZW50LCB0aGlzKTtcblxuICAgICAgICB0aGlzLl9wcmVwYXJlRGF0YSA9IF8uZGVib3VuY2UoKCkgPT4gdGhpcy5wcmVwYXJlRGF0YSgpLCA1MCk7XG4gICAgfVxuXG4gICAgLy8gdXBkYXRlIHRoZSBwcm9wZXIgY2xhc3NlcyB3aGVuIHRoZXJlIGlzIGEgY2hhbmdlIGluIHR5cGVcbiAgICBwcm90ZWN0ZWQgb25UeXBlQ2hhbmdlKCkge1xuICAgICAgICBpZiAoIXRoaXMuaGFzRGF0YXNldCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuZGF0YVswXSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0YVswXS5jbHMgPSBUWVBFX0NMQVNTX01BUFt0aGlzLnR5cGVdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gcmV0dXJucyB0aGUgZm9ybWF0dGVkIGRpc3BsYXkgdmFsdWUgYmFzZWQgb24gdGhlIHByb3ZpZGVkIGRpc3BsYXlmb3JtYXRcbiAgICBwcm90ZWN0ZWQgZ2V0Rm9ybWF0dGVkRGlzcGxheVZhbCh2YWw6IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGZvcm1hdCA9IHRoaXMuZGlzcGxheWZvcm1hdCB8fCAnOSc7XG5cbiAgICAgICAgdmFsID0gcGFyc2VGbG9hdCgnJyArIHZhbCk7XG4gICAgICAgIHZhbCA9ICh2YWwudG9GaXhlZChnZXREZWNpbWFsQ291bnQoZm9ybWF0KSkpO1xuXG4gICAgICAgIGlmIChmb3JtYXQgJiYgZm9ybWF0LmluY2x1ZGVzKCclJykpIHtcbiAgICAgICAgICAgIHZhbCA9IGAke3ZhbH0lYDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBwcmVwYXJlRGF0YSgpIHtcbiAgICAgICAgLy8gd2hlbiB0aGUgZGF0YXNldCBpcyBwcm92aWRlZCwgaXRlcmF0ZSBvdmVyIHRoZSBkYXRhc2V0IHRvIHNldCB0aGUgcHJvcGVyIHZhbHVlcyBpbiB0aGUgZGF0YVxuICAgICAgICBpZiAodGhpcy5kYXRhc2V0ICYmIF8uaXNBcnJheSh0aGlzLmRhdGFzZXQpICYmIHRoaXMudHlwZSAmJiB0aGlzLmRhdGF2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhc2V0Lm1hcCgoZGF0dW0pOiBJUHJvZ3Jlc3NJbmZvID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB2YWw6IHN0cmluZyA9IGZpbmRWYWx1ZU9mKGRhdHVtLCB0aGlzLmRhdGF2YWx1ZSkudG9TdHJpbmcoKTtcbiAgICAgICAgICAgICAgICBsZXQgcGVyY2VudFZhbCA9IHZhbDtcbiAgICAgICAgICAgICAgICBpZiAodmFsICYmICF2YWwuaW5jbHVkZXMoJyUnKSkge1xuICAgICAgICAgICAgICAgICAgICBwZXJjZW50VmFsID0gYCR7dmFsfSVgO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBjbHM6IFRZUEVfQ0xBU1NfTUFQW2ZpbmRWYWx1ZU9mKGRhdHVtLCB0aGlzLnR5cGUpXSxcbiAgICAgICAgICAgICAgICAgICAgcHJvZ3Jlc3NCYXJXaWR0aDogcGVyY2VudFZhbCxcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheVZhbHVlOiB0aGlzLmdldEZvcm1hdHRlZERpc3BsYXlWYWwodmFsKVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIGlmIHRoZSBkYXRhc2V0IGlzIG5vdCBwcm92aWRlZCwgdXBkYXRlIHRoZSB2YWx1ZXMgaW4gdGhlIGRlZmF1bHQgZGF0YVxuICAgICAgICAgICAgbGV0IHdpZHRoOiBzdHJpbmcgfCBudW1iZXIgPSAwO1xuICAgICAgICAgICAgbGV0IGRpc3BsYXlWYWw6IHN0cmluZyB8IG51bWJlciA9IDA7XG4gICAgICAgICAgICBpZiAodGhpcy5kYXRhdmFsdWUpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNQZXJjZW50YWdlVmFsdWUodGhpcy5kYXRhdmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbCA9ICh0aGlzLmRhdGF2YWx1ZSB8fCAnMCUnKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGggPSBkaXNwbGF5VmFsID0gdmFsO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc0RlZmluZWQodGhpcy5kYXRhdmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkZW5vbWluYXRvciA9ICgrdGhpcy5tYXh2YWx1ZSAtICt0aGlzLm1pbnZhbHVlKSB8fCAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdmFsID0gKCgrdGhpcy5kYXRhdmFsdWUgLSArdGhpcy5taW52YWx1ZSkgKiAxMDApIC8gZGVub21pbmF0b3IgKyAnJSc7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCA9IGRpc3BsYXlWYWwgPSB2YWw7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmRhdGFbMF0uZGlzcGxheVZhbHVlID0gdGhpcy5nZXRGb3JtYXR0ZWREaXNwbGF5VmFsKGRpc3BsYXlWYWwgYXMgc3RyaW5nKTtcbiAgICAgICAgICAgIHRoaXMuZGF0YVswXS5wcm9ncmVzc0JhcldpZHRoID0gd2lkdGggYXMgc3RyaW5nO1xuICAgICAgICAgICAgdGhpcy5kYXRhWzBdLmNscyA9IFRZUEVfQ0xBU1NfTUFQW3RoaXMudHlwZV07XG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uUHJvcGVydHlDaGFuZ2Uoa2V5OiBzdHJpbmcsIG52OiBhbnksIG92PzogYW55KSB7XG4gICAgICAgIGlmIChrZXkgPT09ICd0eXBlJykge1xuICAgICAgICAgICAgdGhpcy5vblR5cGVDaGFuZ2UoKTtcbiAgICAgICAgfSBlbHNlIGlmIChrZXkgPT09ICdtaW52YWx1ZScgfHwga2V5ID09PSAnbWF4dmFsdWUnIHx8IGtleSA9PT0gJ2RhdGF2YWx1ZScgfHwga2V5ID09PSAnZGF0YXNldCcgfHwga2V5ID09PSAnZGlzcGxheWZvcm1hdCcpIHtcbiAgICAgICAgICAgIHRoaXMuX3ByZXBhcmVEYXRhKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdXBlci5vblByb3BlcnR5Q2hhbmdlKGtleSwgbnYsIG92KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJtdWx0aS1iYXIgcHJvZ3Jlc3MtYmFyIHt7YmFyLmNsc319XCIgKm5nRm9yPVwibGV0IGJhciBvZiBkYXRhXCIgW3N0eWxlLndpZHRoXT1cImJhci5wcm9ncmVzc0JhcldpZHRoXCIgcm9sZT1cInByb2dyZXNzYmFyXCJcbiAgICAgW2F0dHIuYXJpYS12YWx1ZW5vd109XCJkYXRhdmFsdWVcIiBbYXR0ci5hcmlhLXZhbHVlbWluXT1cIm1pbnZhbHVlXCIgW2F0dHIuYXJpYS12YWx1ZW1heF09XCJtYXh2YWx1ZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiaGludCB8fCAnUHJvZ3Jlc3MgYmFyJ1wiPlxuICAgIDxzcGFuIGNsYXNzPVwiYXBwLXByb2dyZXNzLWxhYmVsXCIgW2F0dHIuZGF0YS1jYXB0aW9uLXBsYWNlbWVudF09XCJjYXB0aW9ucGxhY2VtZW50XCI+e3tiYXIuZGlzcGxheVZhbHVlfX08L3NwYW4+XG48L2Rpdj5cbiJdfQ==
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9iYXNpYy9wcm9ncmVzcy9zcmMvcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvYmFzaWMvcHJvZ3Jlc3Mvc3JjL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFXLE1BQU0sZUFBZSxDQUFDO0FBRXZFLE9BQU8sRUFBQyxXQUFXLEVBQUUsU0FBUyxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ2hELE9BQU8sRUFBaUIsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFbkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7O0lDTjlELDhCQUU0RCxjQUFBO0lBQzBCLFlBQW9CO0lBQUEsaUJBQU8sRUFBQTs7OztJQUg1RyxvRUFBMEM7SUFBMEIsZ0RBQW9DO0lBQ3RGLGlEQUFnQyxrQ0FBQSxrQ0FBQSw2Q0FBQTtJQUVsQixlQUFnRDtJQUFoRCxpRUFBZ0Q7SUFBQyxlQUFvQjtJQUFwQix5Q0FBb0I7O0FETzFHLE1BQU0sV0FBVyxHQUFHLHVCQUF1QixDQUFDO0FBQzVDLE1BQU0sYUFBYSxHQUFrQixFQUFDLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFDLENBQUM7QUFFN0YsdUNBQXVDO0FBQ3ZDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJ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SUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBRWhEO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLEdBQVcsRUFBRSxFQUFPLEVBQUUsRUFBUTtRQUMzQyxJQUFJLEdBQUcsS0FBSyxNQUFNLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3ZCO2FBQU0sSUFBSSxHQUFHLEtBQUssVUFBVSxJQUFJLEdBQUcsS0FBSyxVQUFVLElBQUksR0FBRyxLQUFLLFdBQVcsSUFBSSxHQUFHLEtBQUssU0FBUyxJQUFJLEdBQUcsS0FBSyxlQUFlLEVBQUU7WUFDeEgsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3ZCO2FBQU07WUFDSCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUN2QztJQUNMLENBQUM7cUZBcEdRLG9CQUFvQiwwREFxQlMsU0FBUyx3QkFBOEIsY0FBYztvRUFyQmxGLG9CQUFvQiwyRUFKbEI7Z0JBQ1Asa0JBQWtCLENBQUMsb0JBQW9CLENBQUM7YUFDM0M7WUN4Q0wsc0VBSU07O1lBSjBELGtDQUFPOzs7dUZEMEMxRCxvQkFBb0I7Y0FQaEMsU0FBUzsyQkFDSSxpQkFBaUIsYUFFaEI7b0JBQ1Asa0JBQWtCLHNCQUFzQjtpQkFDM0M7O3NCQXVCMkIsU0FBUzt1QkFBQyxTQUFTOztzQkFBb0IsU0FBUzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBdHRyaWJ1dGUsIENvbXBvbmVudCwgSW5qZWN0b3IsIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtmaW5kVmFsdWVPZiwgaXNEZWZpbmVkfSBmcm9tICdAd20vY29yZSc7XG5pbXBvcnQgeyBJV2lkZ2V0Q29uZmlnLCBwcm92aWRlQXNXaWRnZXRSZWYsIFN0eWxhYmxlQ29tcG9uZW50LCBzdHlsZXIgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcblxuaW1wb3J0IHsgcmVnaXN0ZXJQcm9wcyB9IGZyb20gJy4vcHJvZ3Jlc3MtYmFyLnByb3BzJztcbmltcG9ydCB7IGdldERlY2ltYWxDb3VudCwgaXNQZXJjZW50YWdlVmFsdWUgfSBmcm9tICcuLi91dGlscyc7XG5cbmRlY2xhcmUgY29uc3QgXztcblxuY29uc3QgREVGQVVMVF9DTFMgPSAncHJvZ3Jlc3MgYXBwLXByb2dyZXNzJztcbmNvbnN0IFdJREdFVF9DT05GSUc6IElXaWRnZXRDb25maWcgPSB7d2lkZ2V0VHlwZTogJ3dtLXByb2dyZXNzLWJhcicsIGhvc3RDbGFzczogREVGQVVMVF9DTFN9O1xuXG4vLyBtYXAgb2YgcHJvZ3Jlc3MtYmFyIHR5cGUgYW5kIGNsYXNzZXNcbmV4cG9ydCBjb25zdCBUWVBFX0NMQVNTX01BUCA9IHtcbiAgICAnZGVmYXVsdCc6ICcnLFxuICAgICdkZWZhdWx0LXN0cmlwZWQnOiAncHJvZ3Jlc3MtYmFyLXN0cmlwZWQnLFxuICAgICdzdWNjZXNzJzogJ3Byb2dyZXNzLWJhci1zdWNjZXNzJyxcbiAgICAnc3VjY2Vzcy1zdHJpcGVkJzogJ3Byb2dyZXNzLWJhci1zdWNjZXNzIHByb2dyZXNzLWJhci1zdHJpcGVkJyxcbiAgICAnaW5mbyc6ICdwcm9ncmVzcy1iYXItaW5mbycsXG4gICAgJ2luZm8tc3RyaXBlZCc6ICdwcm9ncmVzcy1iYXItaW5mbyBwcm9ncmVzcy1iYXItc3RyaXBlZCcsXG4gICAgJ3dhcm5pbmcnOiAncHJvZ3Jlc3MtYmFyLXdhcm5pbmcnLFxuICAgICd3YXJuaW5nLXN0cmlwZWQnOiAncHJvZ3Jlc3MtYmFyLXdhcm5pbmcgcHJvZ3Jlc3MtYmFyLXN0cmlwZWQnLFxuICAgICdkYW5nZXInOiAncHJvZ3Jlc3MtYmFyLWRhbmdlcicsXG4gICAgJ2Rhbmdlci1zdHJpcGVkJzogJ3Byb2dyZXNzLWJhci1kYW5nZXIgcHJvZ3Jlc3MtYmFyLXN0cmlwZWQnXG59O1xuXG5cbi8vIGludGVyZmFjZSBmb3IgdGhlIHByb2dyZXNzLWJhciBpbmZvXG5pbnRlcmZhY2UgSVByb2dyZXNzSW5mbyB7XG4gICAgY2xzOiBzdHJpbmc7XG4gICAgcHJvZ3Jlc3NCYXJXaWR0aDogc3RyaW5nO1xuICAgIGRpc3BsYXlWYWx1ZTogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ1t3bVByb2dyZXNzQmFyXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Byb2dyZXNzLWJhci5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHByb3ZpZGVBc1dpZGdldFJlZihQcm9ncmVzc0JhckNvbXBvbmVudClcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFByb2dyZXNzQmFyQ29tcG9uZW50IGV4dGVuZHMgU3R5bGFibGVDb21wb25lbnQge1xuICAgIHN0YXRpYyBpbml0aWFsaXplUHJvcHMgPSByZWdpc3RlclByb3BzKCk7XG5cbiAgICBwdWJsaWMgZGlzcGxheWZvcm1hdDogc3RyaW5nO1xuICAgIHB1YmxpYyBkYXRhdmFsdWU6IHN0cmluZztcbiAgICBwdWJsaWMgbWludmFsdWU6IG51bWJlcjtcbiAgICBwdWJsaWMgbWF4dmFsdWU6IG51bWJlcjtcbiAgICBwdWJsaWMgdHlwZTogc3RyaW5nO1xuICAgIHB1YmxpYyBkYXRhc2V0OiBBcnJheTxhbnk+O1xuICAgIHB1YmxpYyBoaW50OiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIF9wcmVwYXJlRGF0YTogRnVuY3Rpb247XG4gICAgcHJpdmF0ZSByZWFkb25seSBoYXNEYXRhc2V0OiBib29sZWFuO1xuXG4gICAgLy8gcHJvZ3Jlc3MtYmFyIGRhdGEsIG5nRm9yIGluIHRoZSB0ZW1wbGF0ZSBpdGVyYXRlcyBvbiB0aGlzXG4gICAgcHVibGljIGRhdGE6IEFycmF5PElQcm9ncmVzc0luZm8+ID0gW3tcbiAgICAgICAgY2xzOiBUWVBFX0NMQVNTX01BUC5kZWZhdWx0LFxuICAgICAgICBwcm9ncmVzc0JhcldpZHRoOiAnMCUnLFxuICAgICAgICBkaXNwbGF5VmFsdWU6ICcwJ1xuICAgIH1dO1xuXG4gICAgY29uc3RydWN0b3IoaW5qOiBJbmplY3RvciwgQEF0dHJpYnV0ZSgnZGF0YXNldCcpIGRhdGFzZXQ6IHN0cmluZywgQEF0dHJpYnV0ZSgnZGF0YXNldC5iaW5kJykgYm91bmREYXRhc2V0OiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIoaW5qLCBXSURHRVRfQ09ORklHKTtcblxuICAgICAgICAvLyBmbGFnIHdoaWNoIGRldGVybWluZXMgd2hldGhlciBkYXRhc2V0IGlzIHByb3ZpZGVkIG9yIG5vdFxuICAgICAgICB0aGlzLmhhc0RhdGFzZXQgPSAhIShkYXRhc2V0IHx8IGJvdW5kRGF0YXNldCk7XG5cbiAgICAgICAgc3R5bGVyKHRoaXMubmF0aXZlRWxlbWVudCwgdGhpcyk7XG5cbiAgICAgICAgdGhpcy5fcHJlcGFyZURhdGEgPSBfLmRlYm91bmNlKCgpID0+IHRoaXMucHJlcGFyZURhdGEoKSwgNTApO1xuICAgIH1cblxuICAgIC8vIHVwZGF0ZSB0aGUgcHJvcGVyIGNsYXNzZXMgd2hlbiB0aGVyZSBpcyBhIGNoYW5nZSBpbiB0eXBlXG4gICAgcHJvdGVjdGVkIG9uVHlwZUNoYW5nZSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmhhc0RhdGFzZXQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmRhdGFbMF0pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFbMF0uY2xzID0gVFlQRV9DTEFTU19NQVBbdGhpcy50eXBlXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIHJldHVybnMgdGhlIGZvcm1hdHRlZCBkaXNwbGF5IHZhbHVlIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBkaXNwbGF5Zm9ybWF0XG4gICAgcHJvdGVjdGVkIGdldEZvcm1hdHRlZERpc3BsYXlWYWwodmFsOiBzdHJpbmcgfCBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBmb3JtYXQgPSB0aGlzLmRpc3BsYXlmb3JtYXQgfHwgJzknO1xuXG4gICAgICAgIHZhbCA9IHBhcnNlRmxvYXQoJycgKyB2YWwpO1xuICAgICAgICB2YWwgPSAodmFsLnRvRml4ZWQoZ2V0RGVjaW1hbENvdW50KGZvcm1hdCkpKTtcblxuICAgICAgICBpZiAoZm9ybWF0ICYmIGZvcm1hdC5pbmNsdWRlcygnJScpKSB7XG4gICAgICAgICAgICB2YWwgPSBgJHt2YWx9JWA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcHJlcGFyZURhdGEoKSB7XG4gICAgICAgIC8vIHdoZW4gdGhlIGRhdGFzZXQgaXMgcHJvdmlkZWQsIGl0ZXJhdGUgb3ZlciB0aGUgZGF0YXNldCB0byBzZXQgdGhlIHByb3BlciB2YWx1ZXMgaW4gdGhlIGRhdGFcbiAgICAgICAgaWYgKHRoaXMuZGF0YXNldCAmJiBfLmlzQXJyYXkodGhpcy5kYXRhc2V0KSAmJiB0aGlzLnR5cGUgJiYgdGhpcy5kYXRhdmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0YSA9IHRoaXMuZGF0YXNldC5tYXAoKGRhdHVtKTogSVByb2dyZXNzSW5mbyA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdmFsOiBzdHJpbmcgPSBmaW5kVmFsdWVPZihkYXR1bSwgdGhpcy5kYXRhdmFsdWUpLnRvU3RyaW5nKCk7XG4gICAgICAgICAgICAgICAgbGV0IHBlcmNlbnRWYWwgPSB2YWw7XG4gICAgICAgICAgICAgICAgaWYgKHZhbCAmJiAhdmFsLmluY2x1ZGVzKCclJykpIHtcbiAgICAgICAgICAgICAgICAgICAgcGVyY2VudFZhbCA9IGAke3ZhbH0lYDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgY2xzOiBUWVBFX0NMQVNTX01BUFtmaW5kVmFsdWVPZihkYXR1bSwgdGhpcy50eXBlKV0sXG4gICAgICAgICAgICAgICAgICAgIHByb2dyZXNzQmFyV2lkdGg6IHBlcmNlbnRWYWwsXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXlWYWx1ZTogdGhpcy5nZXRGb3JtYXR0ZWREaXNwbGF5VmFsKHZhbClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBpZiB0aGUgZGF0YXNldCBpcyBub3QgcHJvdmlkZWQsIHVwZGF0ZSB0aGUgdmFsdWVzIGluIHRoZSBkZWZhdWx0IGRhdGFcbiAgICAgICAgICAgIGxldCB3aWR0aDogc3RyaW5nIHwgbnVtYmVyID0gMDtcbiAgICAgICAgICAgIGxldCBkaXNwbGF5VmFsOiBzdHJpbmcgfCBudW1iZXIgPSAwO1xuICAgICAgICAgICAgaWYgKHRoaXMuZGF0YXZhbHVlKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzUGVyY2VudGFnZVZhbHVlKHRoaXMuZGF0YXZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWwgPSAodGhpcy5kYXRhdmFsdWUgfHwgJzAlJyk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoID0gZGlzcGxheVZhbCA9IHZhbDtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNEZWZpbmVkKHRoaXMuZGF0YXZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGVub21pbmF0b3IgPSAoK3RoaXMubWF4dmFsdWUgLSArdGhpcy5taW52YWx1ZSkgfHwgMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbCA9ICgoK3RoaXMuZGF0YXZhbHVlIC0gK3RoaXMubWludmFsdWUpICogMTAwKSAvIGRlbm9taW5hdG9yICsgJyUnO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGggPSBkaXNwbGF5VmFsID0gdmFsO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5kYXRhWzBdLmRpc3BsYXlWYWx1ZSA9IHRoaXMuZ2V0Rm9ybWF0dGVkRGlzcGxheVZhbChkaXNwbGF5VmFsIGFzIHN0cmluZyk7XG4gICAgICAgICAgICB0aGlzLmRhdGFbMF0ucHJvZ3Jlc3NCYXJXaWR0aCA9IHdpZHRoIGFzIHN0cmluZztcbiAgICAgICAgICAgIHRoaXMuZGF0YVswXS5jbHMgPSBUWVBFX0NMQVNTX01BUFt0aGlzLnR5cGVdO1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblByb3BlcnR5Q2hhbmdlKGtleTogc3RyaW5nLCBudjogYW55LCBvdj86IGFueSkge1xuICAgICAgICBpZiAoa2V5ID09PSAndHlwZScpIHtcbiAgICAgICAgICAgIHRoaXMub25UeXBlQ2hhbmdlKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAnbWludmFsdWUnIHx8IGtleSA9PT0gJ21heHZhbHVlJyB8fCBrZXkgPT09ICdkYXRhdmFsdWUnIHx8IGtleSA9PT0gJ2RhdGFzZXQnIHx8IGtleSA9PT0gJ2Rpc3BsYXlmb3JtYXQnKSB7XG4gICAgICAgICAgICB0aGlzLl9wcmVwYXJlRGF0YSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3VwZXIub25Qcm9wZXJ0eUNoYW5nZShrZXksIG52LCBvdik7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibXVsdGktYmFyIHByb2dyZXNzLWJhciB7e2Jhci5jbHN9fVwiICpuZ0Zvcj1cImxldCBiYXIgb2YgZGF0YVwiIFtzdHlsZS53aWR0aF09XCJiYXIucHJvZ3Jlc3NCYXJXaWR0aFwiXG4gICAgcm9sZT1cInByb2dyZXNzYmFyXCIgW2F0dHIuYXJpYS12YWx1ZW5vd109XCJkYXRhdmFsdWVcIiBbYXR0ci5hcmlhLXZhbHVlbWluXT1cIm1pbnZhbHVlXCIgW2F0dHIuYXJpYS12YWx1ZW1heF09XCJtYXh2YWx1ZVwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJoaW50IHx8ICdQcm9ncmVzcyBiYXInXCIgdGFiaW5kZXg9XCIxXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJhcHAtcHJvZ3Jlc3MtbGFiZWxcIiBbYXR0ci5kYXRhLWNhcHRpb24tcGxhY2VtZW50XT1cImNhcHRpb25wbGFjZW1lbnRcIj57e2Jhci5kaXNwbGF5VmFsdWV9fTwvc3Bhbj5cbjwvZGl2PiJdfQ==
@@ -102,19 +102,20 @@ export class ProgressCircleComponent extends StylableComponent {
102
102
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.circleRef = _t.first);
103
103
  } }, features: [i0.ɵɵProvidersFeature([
104
104
  provideAsWidgetRef(ProgressCircleComponent)
105
- ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 1, vars: 2, consts: [[3, "percent", "options"]], template: function ProgressCircleComponent_Template(rf, ctx) { if (rf & 1) {
105
+ ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 1, vars: 4, consts: [["tabindex", "1", 3, "percent", "options"]], template: function ProgressCircleComponent_Template(rf, ctx) { if (rf & 1) {
106
106
  i0.ɵɵelement(0, "circle-progress", 0);
107
107
  } if (rf & 2) {
108
108
  i0.ɵɵproperty("percent", ctx.percentagevalue)("options", ctx.options);
109
+ i0.ɵɵattribute("aria-label", ctx.hint || "circle-progress")("hint", ctx.hint);
109
110
  } }, dependencies: [i1.CircleProgressComponent], encapsulation: 2 }); }
110
111
  }
111
112
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ProgressCircleComponent, [{
112
113
  type: Component,
113
114
  args: [{ selector: '[wmProgressCircle]', providers: [
114
115
  provideAsWidgetRef(ProgressCircleComponent)
115
- ], template: "<circle-progress [percent]=\"percentagevalue\" [options]=\"options\"></circle-progress>\n" }]
116
+ ], template: "<circle-progress tabindex=\"1\" [attr.aria-label]=\"hint || 'circle-progress'\" [attr.hint]=\"hint\"\n [percent]=\"percentagevalue\" [options]=\"options\"></circle-progress>" }]
116
117
  }], function () { return [{ type: i0.Injector }]; }, { circleRef: [{
117
118
  type: ViewChild,
118
119
  args: [CircleProgressComponent, { static: true }]
119
120
  }] }); })();
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtY2lyY2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9iYXNpYy9wcm9ncmVzcy9zcmMvcHJvZ3Jlc3MtY2lyY2xlL3Byb2dyZXNzLWNpcmNsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvYmFzaWMvcHJvZ3Jlc3Mvc3JjL3Byb2dyZXNzLWNpcmNsZS9wcm9ncmVzcy1jaXJjbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsUUFBUSxFQUFZLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQUUsdUJBQXVCLEVBQWtDLE1BQU0sb0JBQW9CLENBQUM7QUFHN0YsT0FBTyxFQUFpQixrQkFBa0IsRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7QUFJaEYsTUFBTSxXQUFXLEdBQUcsOEJBQThCLENBQUM7QUFDbkQsTUFBTSxhQUFhLEdBQWtCLEVBQUMsVUFBVSxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUMsQ0FBQztBQUNoRyxNQUFNLGVBQWUsR0FBb0M7SUFDckQsVUFBVSxFQUFFLElBQUk7SUFDaEIsZ0JBQWdCLEVBQUUsRUFBRTtJQUNwQixnQkFBZ0IsRUFBRSxFQUFFO0lBQ3BCLGFBQWEsRUFBRSxJQUFJO0lBQ25CLEtBQUssRUFBRSxDQUFDLEVBQUU7SUFDVixPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxHQUFHO0lB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LFNBQVM7bUJBQUMsdUJBQXVCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEluamVjdG9yLCBPcHRpb25hbCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENpcmNsZVByb2dyZXNzQ29tcG9uZW50LCBDaXJjbGVQcm9ncmVzc09wdGlvbnNJbnRlcmZhY2UgfSBmcm9tICduZy1jaXJjbGUtcHJvZ3Jlc3MnO1xuXG5cbmltcG9ydCB7IElXaWRnZXRDb25maWcsIHByb3ZpZGVBc1dpZGdldFJlZiwgSVJlZHJhd2FibGVDb21wb25lbnQsIFN0eWxhYmxlQ29tcG9uZW50LCBzdHlsZXIgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcbmltcG9ydCB7IHJlZ2lzdGVyUHJvcHMgfSBmcm9tICcuL3Byb2dyZXNzLWNpcmNsZS5wcm9wcyc7XG5pbXBvcnQgeyBjYWxjdWxhdGVQZXJjZW50LCBnZXREZWNpbWFsQ291bnQsIGlzUGVyY2VudGFnZVZhbHVlIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5kZWNsYXJlIGNvbnN0IF87XG5cbmNvbnN0IERFRkFVTFRfQ0xTID0gJ3Byb2dyZXNzIGFwcC1wcm9ncmVzcyBjaXJjbGUnO1xuY29uc3QgV0lER0VUX0NPTkZJRzogSVdpZGdldENvbmZpZyA9IHt3aWRnZXRUeXBlOiAnd20tcHJvZ3Jlc3MtY2lyY2xlJywgaG9zdENsYXNzOiBERUZBVUxUX0NMU307XG5jb25zdCBERUZBVUxUX09QVElPTlM6IENpcmNsZVByb2dyZXNzT3B0aW9uc0ludGVyZmFjZSAgPSB7XG4gICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICBpbm5lclN0cm9rZVdpZHRoOiAxMCxcbiAgICBvdXRlclN0cm9rZVdpZHRoOiAxMCxcbiAgICB1bml0c0ZvbnRTaXplOiAnMTUnLFxuICAgIHNwYWNlOiAtMTAsXG4gICAgdG9GaXhlZDogMCxcbiAgICBtYXhQZXJjZW50OiAxMDAsXG4gICAgc2hvd1N1YnRpdGxlOiBmYWxzZSxcbiAgICBjbG9ja3dpc2U6IHRydWUsXG4gICAgc3RhcnRGcm9tWmVybzogZmFsc2UsXG4gICAgcmVuZGVyT25DbGljazogZmFsc2UsXG4gICAgaW5uZXJTdHJva2VDb2xvcjogJycsXG4gICAgb3V0ZXJTdHJva2VDb2xvcjogJydcbn07XG5cbi8vIG1hcCBvZiBwcm9ncmVzcy1iYXIgdHlwZSBhbmQgY2xhc3Nlc1xuZXhwb3J0IGNvbnN0IFRZUEVfQ0xBU1NfTUFQX1BDID0ge1xuICAgICdkZWZhdWx0JzogJycsXG4gICAgJ3N1Y2Nlc3MnOiAncHJvZ3Jlc3MtY2lyY2xlLXN1Y2Nlc3MnLFxuICAgICdpbmZvJzogJ3Byb2dyZXNzLWNpcmNsZS1pbmZvJyxcbiAgICAnd2FybmluZyc6ICdwcm9ncmVzcy1jaXJjbGUtd2FybmluZycsXG4gICAgJ2Rhbmdlcic6ICdwcm9ncmVzcy1jaXJjbGUtZGFuZ2VyJyxcbn07XG5cblxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ1t3bVByb2dyZXNzQ2lyY2xlXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Byb2dyZXNzLWNpcmNsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHByb3ZpZGVBc1dpZGdldFJlZihQcm9ncmVzc0NpcmNsZUNvbXBvbmVudClcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFByb2dyZXNzQ2lyY2xlQ29tcG9uZW50IGV4dGVuZHMgU3R5bGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBJUmVkcmF3YWJsZUNvbXBvbmVudCB7XG4gICAgc3RhdGljIGluaXRpYWxpemVQcm9wcyA9IHJlZ2lzdGVyUHJvcHMoKTtcblxuICAgIHB1YmxpYyBkaXNwbGF5Zm9ybWF0OiBzdHJpbmc7XG4gICAgcHVibGljIGRhdGF2YWx1ZTogc3RyaW5nO1xuICAgIHB1YmxpYyBtaW52YWx1ZTogbnVtYmVyO1xuICAgIHB1YmxpYyBtYXh2YWx1ZTogbnVtYmVyO1xuICAgIHB1YmxpYyB0eXBlOiBzdHJpbmc7XG4gICAgcHVibGljIHRpdGxlOiBzdHJpbmc7XG4gICAgcHVibGljIHN1YnRpdGxlOiBzdHJpbmc7XG4gICAgcHVibGljIGNhcHRpb25wbGFjZW1lbnQ6IHN0cmluZztcbiAgICBwdWJsaWMgcGVyY2VudGFnZXZhbHVlOiBudW1iZXI7XG4gICAgcHVibGljIHJlZHJhdzogRnVuY3Rpb247XG4gICAgcHVibGljIG9wdGlvbnM6IENpcmNsZVByb2dyZXNzT3B0aW9uc0ludGVyZmFjZTtcblxuICAgIEBWaWV3Q2hpbGQoQ2lyY2xlUHJvZ3Jlc3NDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIGNpcmNsZVJlZjogQ2lyY2xlUHJvZ3Jlc3NDb21wb25lbnQ7XG5cblxuICAgIGNvbnN0cnVjdG9yKGluajogSW5qZWN0b3IpIHtcbiAgICAgICAgc3VwZXIoaW5qLCBXSURHRVRfQ09ORklHKTtcbiAgICAgICAgc3R5bGVyKHRoaXMubmF0aXZlRWxlbWVudCwgdGhpcyk7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IF8uY2xvbmUoREVGQVVMVF9PUFRJT05TKTtcbiAgICAgICAgdGhpcy5yZWRyYXcgPSBfLmRlYm91bmNlKHRoaXMuX3JlZHJhdywgMTAwKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9yZWRyYXcgKCkge1xuICAgICAgICB0aGlzLmNpcmNsZVJlZi5yZW5kZXIoKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICAgICAgICB0aGlzLmludm9rZUV2ZW50Q2FsbGJhY2soJ2JlZm9yZXJlbmRlcicsIHsnJGV2ZW50JyA6IHt9fSk7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IE9iamVjdC5hc3NpZ24odGhpcy5jaXJjbGVSZWYub3B0aW9ucywgdGhpcy5vcHRpb25zKTtcbiAgICB9XG5cbiAgICBnZXREZWZhdWx0T3B0aW9ucygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucztcbiAgICB9XG5cbiAgICBnZXRMaWIoKSB7XG4gICAgICAgIHJldHVybiAnbmctY2lyY2xlLXByb2dyZXNzJztcbiAgICB9XG5cbiAgICBvdmVycmlkZURlZmF1bHRzKG9wdGlvbnMpIHtcbiAgICAgICAgXy5leHRlbmQodGhpcy5vcHRpb25zLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICB1cGRhdGVEaXNwbGF5VmFsdWVGb3JtYXQoKSB7XG4gICAgICAgIC8vIHNob3cgdGl0bGUgYW5kIHN1YnRpdGxlIG9ubHkgd2hlbiBjYXB0aW9ucGxhY2VtZW50IGlzICdpbnNpZGUnXG4gICAgICAgIHRoaXMub3B0aW9ucy5zaG93VGl0bGUgPSB0aGlzLm9wdGlvbnMuc2hvd1N1YnRpdGxlID0gKHRoaXMuY2FwdGlvbnBsYWNlbWVudCA9PT0gJ2luc2lkZScpO1xuXG4gICAgICAgIC8vIHNob3cgdW5pdHMgd2hlbiB0aXRsZSB2YWx1ZSBpcyBlbXB0eSBhbmQgY2FwdGlvbnBsYWNlbWVudCBpcyAnaW5zaWRlJ1xuICAgICAgICB0aGlzLm9wdGlvbnMuc2hvd1VuaXRzID0gIXRoaXMudGl0bGUgJiYgdGhpcy5vcHRpb25zLnNob3dUaXRsZSAmJiBpc1BlcmNlbnRhZ2VWYWx1ZSh0aGlzLmRpc3BsYXlmb3JtYXQpO1xuICAgICAgICB0aGlzLm9wdGlvbnMudG9GaXhlZCA9IGdldERlY2ltYWxDb3VudCh0aGlzLmRpc3BsYXlmb3JtYXQpO1xuXG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnMuc2hvd1RpdGxlKSB7XG4gICAgICAgICAgICB0aGlzLm9wdGlvbnMudGl0bGUgPSB0aGlzLnRpdGxlIHx8ICdhdXRvJztcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5zaG93U3VidGl0bGUgPSAhIXRoaXMuc3VidGl0bGU7XG4gICAgICAgICAgICB0aGlzLm9wdGlvbnMuc3VidGl0bGUgPSB0aGlzLnN1YnRpdGxlIHx8ICcnO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVkcmF3KCk7XG4gICAgfVxuXG4gICAgb25Qcm9wZXJ0eUNoYW5nZShrZXk6IHN0cmluZywgbnY6IGFueSwgb3Y/OiBhbnkpIHtcbiAgICAgICAgc3dpdGNoIChrZXkpIHtcbiAgICAgICAgICAgIGNhc2UgJ3R5cGUnOlxuICAgICAgICAgICAgICAgIHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3MoVFlQRV9DTEFTU19NQVBfUENbb3ZdKTtcbiAgICAgICAgICAgICAgICB0aGlzLiRlbGVtZW50LmFkZENsYXNzKFRZUEVfQ0xBU1NfTUFQX1BDW252XSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdtaW52YWx1ZSc6XG4gICAgICAgICAgICBjYXNlICdtYXh2YWx1ZSc6XG4gICAgICAgICAgICBjYXNlICdkYXRhdmFsdWUnOlxuICAgICAgICAgICAgICAgIGlmIChpc1BlcmNlbnRhZ2VWYWx1ZSh0aGlzLmRhdGF2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wZXJjZW50YWdldmFsdWUgPSBwYXJzZUZsb2F0KHRoaXMuZGF0YXZhbHVlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBlcmNlbnRhZ2V2YWx1ZSA9IGNhbGN1bGF0ZVBlcmNlbnQocGFyc2VGbG9hdCh0aGlzLmRhdGF2YWx1ZSksIHRoaXMubWludmFsdWUsIHRoaXMubWF4dmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2Rpc3BsYXlmb3JtYXQnOlxuICAgICAgICAgICAgY2FzZSAnY2FwdGlvbnBsYWNlbWVudCc6XG4gICAgICAgICAgICBjYXNlICd0aXRsZSc6XG4gICAgICAgICAgICBjYXNlICdzdWJ0aXRsZSc6XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVEaXNwbGF5VmFsdWVGb3JtYXQoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBzdXBlci5vblByb3BlcnR5Q2hhbmdlKGtleSwgbnYsIG92KTtcbiAgICB9XG59XG4iLCI8Y2lyY2xlLXByb2dyZXNzIFtwZXJjZW50XT1cInBlcmNlbnRhZ2V2YWx1ZVwiIFtvcHRpb25zXT1cIm9wdGlvbnNcIj48L2NpcmNsZS1wcm9ncmVzcz5cbiJdfQ==
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtY2lyY2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9iYXNpYy9wcm9ncmVzcy9zcmMvcHJvZ3Jlc3MtY2lyY2xlL3Byb2dyZXNzLWNpcmNsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvYmFzaWMvcHJvZ3Jlc3Mvc3JjL3Byb2dyZXNzLWNpcmNsZS9wcm9ncmVzcy1jaXJjbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsUUFBUSxFQUFZLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQUUsdUJBQXVCLEVBQWtDLE1BQU0sb0JBQW9CLENBQUM7QUFHN0YsT0FBTyxFQUFpQixrQkFBa0IsRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7QUFJaEYsTUFBTSxXQUFXLEdBQUcsOEJBQThCLENBQUM7QUFDbkQsTUFBTSxhQUFhLEdBQWtCLEVBQUMsVUFBVSxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUMsQ0FBQztBQUNoRyxNQUFNLGVBQWUsR0FBb0M7SUFDckQsVUFBVSxFQUFFLElBQUk7SUFDaEIsZ0JBQWdCLEVBQUUsRUFBRTtJQUNwQixnQkFBZ0IsRUFBRSxFQUFFO0lBQ3BCLGFBQWEsRUFBRSxJQUFJO0lBQ25CLEtBQUssRUFBRSxDQUFDLEVBQUU7SUFDVixPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxHQUFHO0lBQ2YsWUFBWSxFQUFFLEtBQUs7SUFDbkIsU0FBUyxFQUFFLElBQUk7SUFDZixhQUFhLEVBQUUsS0FBSztJQUNwQixhQUFhLEVBQUUsS0FBSztJQUNwQixnQkFBZ0IsRUFBRSxFQUFFO0lBQ3BCLGdCQUFnQixFQUFFLEVBQUU7Q0FDdkIsQ0FBQztBQUVGLHVDQUF1QztBQUN2QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRztJQUM3QixTQUFTLEVBQUUsRUFBRTtJQUNiLFNBQVMsRUFBRSx5QkFBeUI7SUFDcEMsTUFBTSxFQUFFLHNCQUFzQjtJQUM5QixTQUFTLEVBQUUseUJBQXlCO0lBQ3BDLFFBQVEsRUFBRSx3QkFBd0I7Q0FDckMsQ0FBQztBQVdGLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxpQkFBaUI7YUFDbkQsb0JBQWUsR0FBRyxhQUFhLEVBQUUsQ0FBQztJQWtCekMsWUFBWSxHQUFhO1FBQ3JCLEtBQUssQ0FBQyxHQUFHLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDMUIsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFTyxPQUFPO1FBQ1gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsZUFBZTtRQUNYLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsbUJBQW1CLENBQUMsY0FBYyxFQUFFLEVBQUMsUUFBUSxFQUFHLEVBQUUsRUFBQyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxNQUFNO1FBQ0YsT0FBTyxvQkFBb0IsQ0FBQztJQUNoQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBTztRQUNwQixDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELHdCQUF3QjtRQUNwQixpRUFBaUU7UUFDakUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEtBQUssUUFBUSxDQUFDLENBQUM7UUFFMUYsd0VBQXdFO1FBQ3hFLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDeEcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUUzRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDO1lBQzFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzVDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDO1NBQy9DO1FBQ0QsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxHQUFXLEVBQUUsRUFBTyxFQUFFLEVBQVE7UUFDM0MsUUFBUSxHQUFHLEVBQUU7WUFDVCxLQUFLLE1BQU07Z0JBQ1AsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDakQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDOUMsTUFBTTtZQUNWLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssV0FBVztnQkFDWixJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtvQkFDbkMsSUFBSSxDQUFDLGVBQWUsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2lCQUNyRDtxQkFBTTtvQkFDSCxJQUFJLENBQUMsZUFBZSxHQUFHLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7aUJBQ3JHO2dCQUNELE1BQU07WUFDVixLQUFLLGVBQWUsQ0FBQztZQUNyQixLQUFLLGtCQUFrQixDQUFDO1lBQ3hCLEtBQUssT0FBTyxDQUFDO1lBQ2IsS0FBSyxVQUFVO2dCQUNYLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO2dCQUNoQyxNQUFNO1NBQ2I7UUFDRCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO3dGQXZGUSx1QkFBdUI7b0VBQXZCLHVCQUF1QjsyQkFnQnJCLHVCQUF1Qjs7Ozs4Q0FwQnZCO2dCQUNQLGtCQUFrQixDQUFDLHVCQUF1QixDQUFDO2FBQzlDO1lDNUNMLHFDQUNzRTs7WUFBbEUsNkNBQTJCLHdCQUFBO1lBREQsMkRBQTZDLGtCQUFBOzs7dUZEOEM5RCx1QkFBdUI7Y0FQbkMsU0FBUzsyQkFDSSxvQkFBb0IsYUFFbkI7b0JBQ1Asa0JBQWtCLHlCQUF5QjtpQkFDOUM7MkRBa0JxRCxTQUFTO2tCQUE5RCxTQUFTO21CQUFDLHVCQUF1QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBJbmplY3RvciwgT3B0aW9uYWwsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDaXJjbGVQcm9ncmVzc0NvbXBvbmVudCwgQ2lyY2xlUHJvZ3Jlc3NPcHRpb25zSW50ZXJmYWNlIH0gZnJvbSAnbmctY2lyY2xlLXByb2dyZXNzJztcblxuXG5pbXBvcnQgeyBJV2lkZ2V0Q29uZmlnLCBwcm92aWRlQXNXaWRnZXRSZWYsIElSZWRyYXdhYmxlQ29tcG9uZW50LCBTdHlsYWJsZUNvbXBvbmVudCwgc3R5bGVyIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvYmFzZSc7XG5pbXBvcnQgeyByZWdpc3RlclByb3BzIH0gZnJvbSAnLi9wcm9ncmVzcy1jaXJjbGUucHJvcHMnO1xuaW1wb3J0IHsgY2FsY3VsYXRlUGVyY2VudCwgZ2V0RGVjaW1hbENvdW50LCBpc1BlcmNlbnRhZ2VWYWx1ZSB9IGZyb20gJy4uL3V0aWxzJztcblxuZGVjbGFyZSBjb25zdCBfO1xuXG5jb25zdCBERUZBVUxUX0NMUyA9ICdwcm9ncmVzcyBhcHAtcHJvZ3Jlc3MgY2lyY2xlJztcbmNvbnN0IFdJREdFVF9DT05GSUc6IElXaWRnZXRDb25maWcgPSB7d2lkZ2V0VHlwZTogJ3dtLXByb2dyZXNzLWNpcmNsZScsIGhvc3RDbGFzczogREVGQVVMVF9DTFN9O1xuY29uc3QgREVGQVVMVF9PUFRJT05TOiBDaXJjbGVQcm9ncmVzc09wdGlvbnNJbnRlcmZhY2UgID0ge1xuICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgaW5uZXJTdHJva2VXaWR0aDogMTAsXG4gICAgb3V0ZXJTdHJva2VXaWR0aDogMTAsXG4gICAgdW5pdHNGb250U2l6ZTogJzE1JyxcbiAgICBzcGFjZTogLTEwLFxuICAgIHRvRml4ZWQ6IDAsXG4gICAgbWF4UGVyY2VudDogMTAwLFxuICAgIHNob3dTdWJ0aXRsZTogZmFsc2UsXG4gICAgY2xvY2t3aXNlOiB0cnVlLFxuICAgIHN0YXJ0RnJvbVplcm86IGZhbHNlLFxuICAgIHJlbmRlck9uQ2xpY2s6IGZhbHNlLFxuICAgIGlubmVyU3Ryb2tlQ29sb3I6ICcnLFxuICAgIG91dGVyU3Ryb2tlQ29sb3I6ICcnXG59O1xuXG4vLyBtYXAgb2YgcHJvZ3Jlc3MtYmFyIHR5cGUgYW5kIGNsYXNzZXNcbmV4cG9ydCBjb25zdCBUWVBFX0NMQVNTX01BUF9QQyA9IHtcbiAgICAnZGVmYXVsdCc6ICcnLFxuICAgICdzdWNjZXNzJzogJ3Byb2dyZXNzLWNpcmNsZS1zdWNjZXNzJyxcbiAgICAnaW5mbyc6ICdwcm9ncmVzcy1jaXJjbGUtaW5mbycsXG4gICAgJ3dhcm5pbmcnOiAncHJvZ3Jlc3MtY2lyY2xlLXdhcm5pbmcnLFxuICAgICdkYW5nZXInOiAncHJvZ3Jlc3MtY2lyY2xlLWRhbmdlcicsXG59O1xuXG5cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdbd21Qcm9ncmVzc0NpcmNsZV0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wcm9ncmVzcy1jaXJjbGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBwcm92aWRlQXNXaWRnZXRSZWYoUHJvZ3Jlc3NDaXJjbGVDb21wb25lbnQpXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBQcm9ncmVzc0NpcmNsZUNvbXBvbmVudCBleHRlbmRzIFN0eWxhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgSVJlZHJhd2FibGVDb21wb25lbnQge1xuICAgIHN0YXRpYyBpbml0aWFsaXplUHJvcHMgPSByZWdpc3RlclByb3BzKCk7XG5cbiAgICBwdWJsaWMgZGlzcGxheWZvcm1hdDogc3RyaW5nO1xuICAgIHB1YmxpYyBkYXRhdmFsdWU6IHN0cmluZztcbiAgICBwdWJsaWMgbWludmFsdWU6IG51bWJlcjtcbiAgICBwdWJsaWMgbWF4dmFsdWU6IG51bWJlcjtcbiAgICBwdWJsaWMgdHlwZTogc3RyaW5nO1xuICAgIHB1YmxpYyB0aXRsZTogc3RyaW5nO1xuICAgIHB1YmxpYyBzdWJ0aXRsZTogc3RyaW5nO1xuICAgIHB1YmxpYyBjYXB0aW9ucGxhY2VtZW50OiBzdHJpbmc7XG4gICAgcHVibGljIHBlcmNlbnRhZ2V2YWx1ZTogbnVtYmVyO1xuICAgIHB1YmxpYyByZWRyYXc6IEZ1bmN0aW9uO1xuICAgIHB1YmxpYyBvcHRpb25zOiBDaXJjbGVQcm9ncmVzc09wdGlvbnNJbnRlcmZhY2U7XG4gICAgcHVibGljIGhpbnQ6IHN0cmluZztcblxuICAgIEBWaWV3Q2hpbGQoQ2lyY2xlUHJvZ3Jlc3NDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIGNpcmNsZVJlZjogQ2lyY2xlUHJvZ3Jlc3NDb21wb25lbnQ7XG5cblxuICAgIGNvbnN0cnVjdG9yKGluajogSW5qZWN0b3IpIHtcbiAgICAgICAgc3VwZXIoaW5qLCBXSURHRVRfQ09ORklHKTtcbiAgICAgICAgc3R5bGVyKHRoaXMubmF0aXZlRWxlbWVudCwgdGhpcyk7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IF8uY2xvbmUoREVGQVVMVF9PUFRJT05TKTtcbiAgICAgICAgdGhpcy5yZWRyYXcgPSBfLmRlYm91bmNlKHRoaXMuX3JlZHJhdywgMTAwKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9yZWRyYXcgKCkge1xuICAgICAgICB0aGlzLmNpcmNsZVJlZi5yZW5kZXIoKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICAgICAgICB0aGlzLmludm9rZUV2ZW50Q2FsbGJhY2soJ2JlZm9yZXJlbmRlcicsIHsnJGV2ZW50JyA6IHt9fSk7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IE9iamVjdC5hc3NpZ24odGhpcy5jaXJjbGVSZWYub3B0aW9ucywgdGhpcy5vcHRpb25zKTtcbiAgICB9XG5cbiAgICBnZXREZWZhdWx0T3B0aW9ucygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucztcbiAgICB9XG5cbiAgICBnZXRMaWIoKSB7XG4gICAgICAgIHJldHVybiAnbmctY2lyY2xlLXByb2dyZXNzJztcbiAgICB9XG5cbiAgICBvdmVycmlkZURlZmF1bHRzKG9wdGlvbnMpIHtcbiAgICAgICAgXy5leHRlbmQodGhpcy5vcHRpb25zLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICB1cGRhdGVEaXNwbGF5VmFsdWVGb3JtYXQoKSB7XG4gICAgICAgIC8vIHNob3cgdGl0bGUgYW5kIHN1YnRpdGxlIG9ubHkgd2hlbiBjYXB0aW9ucGxhY2VtZW50IGlzICdpbnNpZGUnXG4gICAgICAgIHRoaXMub3B0aW9ucy5zaG93VGl0bGUgPSB0aGlzLm9wdGlvbnMuc2hvd1N1YnRpdGxlID0gKHRoaXMuY2FwdGlvbnBsYWNlbWVudCA9PT0gJ2luc2lkZScpO1xuXG4gICAgICAgIC8vIHNob3cgdW5pdHMgd2hlbiB0aXRsZSB2YWx1ZSBpcyBlbXB0eSBhbmQgY2FwdGlvbnBsYWNlbWVudCBpcyAnaW5zaWRlJ1xuICAgICAgICB0aGlzLm9wdGlvbnMuc2hvd1VuaXRzID0gIXRoaXMudGl0bGUgJiYgdGhpcy5vcHRpb25zLnNob3dUaXRsZSAmJiBpc1BlcmNlbnRhZ2VWYWx1ZSh0aGlzLmRpc3BsYXlmb3JtYXQpO1xuICAgICAgICB0aGlzLm9wdGlvbnMudG9GaXhlZCA9IGdldERlY2ltYWxDb3VudCh0aGlzLmRpc3BsYXlmb3JtYXQpO1xuXG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnMuc2hvd1RpdGxlKSB7XG4gICAgICAgICAgICB0aGlzLm9wdGlvbnMudGl0bGUgPSB0aGlzLnRpdGxlIHx8ICdhdXRvJztcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5zaG93U3VidGl0bGUgPSAhIXRoaXMuc3VidGl0bGU7XG4gICAgICAgICAgICB0aGlzLm9wdGlvbnMuc3VidGl0bGUgPSB0aGlzLnN1YnRpdGxlIHx8ICcnO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVkcmF3KCk7XG4gICAgfVxuXG4gICAgb25Qcm9wZXJ0eUNoYW5nZShrZXk6IHN0cmluZywgbnY6IGFueSwgb3Y/OiBhbnkpIHtcbiAgICAgICAgc3dpdGNoIChrZXkpIHtcbiAgICAgICAgICAgIGNhc2UgJ3R5cGUnOlxuICAgICAgICAgICAgICAgIHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3MoVFlQRV9DTEFTU19NQVBfUENbb3ZdKTtcbiAgICAgICAgICAgICAgICB0aGlzLiRlbGVtZW50LmFkZENsYXNzKFRZUEVfQ0xBU1NfTUFQX1BDW252XSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdtaW52YWx1ZSc6XG4gICAgICAgICAgICBjYXNlICdtYXh2YWx1ZSc6XG4gICAgICAgICAgICBjYXNlICdkYXRhdmFsdWUnOlxuICAgICAgICAgICAgICAgIGlmIChpc1BlcmNlbnRhZ2VWYWx1ZSh0aGlzLmRhdGF2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wZXJjZW50YWdldmFsdWUgPSBwYXJzZUZsb2F0KHRoaXMuZGF0YXZhbHVlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBlcmNlbnRhZ2V2YWx1ZSA9IGNhbGN1bGF0ZVBlcmNlbnQocGFyc2VGbG9hdCh0aGlzLmRhdGF2YWx1ZSksIHRoaXMubWludmFsdWUsIHRoaXMubWF4dmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2Rpc3BsYXlmb3JtYXQnOlxuICAgICAgICAgICAgY2FzZSAnY2FwdGlvbnBsYWNlbWVudCc6XG4gICAgICAgICAgICBjYXNlICd0aXRsZSc6XG4gICAgICAgICAgICBjYXNlICdzdWJ0aXRsZSc6XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVEaXNwbGF5VmFsdWVGb3JtYXQoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBzdXBlci5vblByb3BlcnR5Q2hhbmdlKGtleSwgbnYsIG92KTtcbiAgICB9XG59XG4iLCI8Y2lyY2xlLXByb2dyZXNzIHRhYmluZGV4PVwiMVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiaGludCB8fCAnY2lyY2xlLXByb2dyZXNzJ1wiIFthdHRyLmhpbnRdPVwiaGludFwiXG4gICAgW3BlcmNlbnRdPVwicGVyY2VudGFnZXZhbHVlXCIgW29wdGlvbnNdPVwib3B0aW9uc1wiPjwvY2lyY2xlLXByb2dyZXNzPiJdfQ==
@@ -164,7 +164,7 @@ class ProgressBarComponent extends StylableComponent {
164
164
  static { this.ɵfac = function ProgressBarComponent_Factory(t) { return new (t || ProgressBarComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵinjectAttribute('dataset'), i0.ɵɵinjectAttribute('dataset.bind')); }; }
165
165
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProgressBarComponent, selectors: [["", "wmProgressBar", ""]], features: [i0.ɵɵProvidersFeature([
166
166
  provideAsWidgetRef(ProgressBarComponent)
167
- ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0$1, decls: 1, vars: 1, consts: [["role", "progressbar", 3, "class", "width", 4, "ngFor", "ngForOf"], ["role", "progressbar"], [1, "app-progress-label"]], template: function ProgressBarComponent_Template(rf, ctx) { if (rf & 1) {
167
+ ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0$1, decls: 1, vars: 1, consts: [["role", "progressbar", "tabindex", "1", 3, "class", "width", 4, "ngFor", "ngForOf"], ["role", "progressbar", "tabindex", "1"], [1, "app-progress-label"]], template: function ProgressBarComponent_Template(rf, ctx) { if (rf & 1) {
168
168
  i0.ɵɵtemplate(0, ProgressBarComponent_div_0_Template, 3, 11, "div", 0);
169
169
  } if (rf & 2) {
170
170
  i0.ɵɵproperty("ngForOf", ctx.data);
@@ -174,7 +174,7 @@ class ProgressBarComponent extends StylableComponent {
174
174
  type: Component,
175
175
  args: [{ selector: '[wmProgressBar]', providers: [
176
176
  provideAsWidgetRef(ProgressBarComponent)
177
- ], template: "<div class=\"multi-bar progress-bar {{bar.cls}}\" *ngFor=\"let bar of data\" [style.width]=\"bar.progressBarWidth\" role=\"progressbar\"\n [attr.aria-valuenow]=\"datavalue\" [attr.aria-valuemin]=\"minvalue\" [attr.aria-valuemax]=\"maxvalue\" [attr.aria-label]=\"hint || 'Progress bar'\">\n <span class=\"app-progress-label\" [attr.data-caption-placement]=\"captionplacement\">{{bar.displayValue}}</span>\n</div>\n" }]
177
+ ], template: "<div class=\"multi-bar progress-bar {{bar.cls}}\" *ngFor=\"let bar of data\" [style.width]=\"bar.progressBarWidth\"\n role=\"progressbar\" [attr.aria-valuenow]=\"datavalue\" [attr.aria-valuemin]=\"minvalue\" [attr.aria-valuemax]=\"maxvalue\"\n [attr.aria-label]=\"hint || 'Progress bar'\" tabindex=\"1\">\n <span class=\"app-progress-label\" [attr.data-caption-placement]=\"captionplacement\">{{bar.displayValue}}</span>\n</div>" }]
178
178
  }], function () { return [{ type: i0.Injector }, { type: undefined, decorators: [{
179
179
  type: Attribute,
180
180
  args: ['dataset']
@@ -299,17 +299,18 @@ class ProgressCircleComponent extends StylableComponent {
299
299
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.circleRef = _t.first);
300
300
  } }, features: [i0.ɵɵProvidersFeature([
301
301
  provideAsWidgetRef(ProgressCircleComponent)
302
- ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 1, vars: 2, consts: [[3, "percent", "options"]], template: function ProgressCircleComponent_Template(rf, ctx) { if (rf & 1) {
302
+ ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 1, vars: 4, consts: [["tabindex", "1", 3, "percent", "options"]], template: function ProgressCircleComponent_Template(rf, ctx) { if (rf & 1) {
303
303
  i0.ɵɵelement(0, "circle-progress", 0);
304
304
  } if (rf & 2) {
305
305
  i0.ɵɵproperty("percent", ctx.percentagevalue)("options", ctx.options);
306
+ i0.ɵɵattribute("aria-label", ctx.hint || "circle-progress")("hint", ctx.hint);
306
307
  } }, dependencies: [i1$1.CircleProgressComponent], encapsulation: 2 }); }
307
308
  }
308
309
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ProgressCircleComponent, [{
309
310
  type: Component,
310
311
  args: [{ selector: '[wmProgressCircle]', providers: [
311
312
  provideAsWidgetRef(ProgressCircleComponent)
312
- ], template: "<circle-progress [percent]=\"percentagevalue\" [options]=\"options\"></circle-progress>\n" }]
313
+ ], template: "<circle-progress tabindex=\"1\" [attr.aria-label]=\"hint || 'circle-progress'\" [attr.hint]=\"hint\"\n [percent]=\"percentagevalue\" [options]=\"options\"></circle-progress>" }]
313
314
  }], function () { return [{ type: i0.Injector }]; }, { circleRef: [{
314
315
  type: ViewChild,
315
316
  args: [CircleProgressComponent, { static: true }]
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/basic/progress/src/progress-bar/progress-bar.props.ts","../../../../../projects/components/widgets/basic/progress/src/utils.ts","../../../../../projects/components/widgets/basic/progress/src/progress-bar/progress-bar.component.html","../../../../../projects/components/widgets/basic/progress/src/progress-bar/progress-bar.component.ts","../../../../../projects/components/widgets/basic/progress/src/progress-circle/progress-circle.props.ts","../../../../../projects/components/widgets/basic/progress/src/progress-circle/progress-circle.component.ts","../../../../../projects/components/widgets/basic/progress/src/progress-circle/progress-circle.component.html","../../../../../projects/components/widgets/basic/progress/src/progress.module.ts","../../../../../projects/components/widgets/basic/progress/src/index.ts"],"sourcesContent":["import {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-progress-bar',\n new Map(\n [\n ['captionplacement', {value: 'hidden', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['dataset', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['displayformat', PROP_STRING],\n ['hint', PROP_STRING],\n ['maxvalue', {value: 100, ...PROP_NUMBER}],\n ['minvalue', {value: 0, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['type', {value: 'default', ...PROP_STRING}]\n ]\n )\n );\n};\n","import { isString } from '@wm/core';\n\ndeclare const _;\n\n// This function returns the maximum number of decimal digits allowed.\nexport const getDecimalCount = (val: string) => {\n val = val || '9';\n val = val.replace(/\\%$/, '');\n\n const n = val.lastIndexOf('.');\n\n return (n === -1) ? 0 : (val.length - n - 1);\n};\n\n// returns true if the given value contains '%'\nexport const isPercentageValue = (val: string): boolean => {\n if (isString(val)) {\n val = val.trim();\n return val.charAt(val.length - 1) === '%';\n }\n return false;\n};\n\nexport const calculatePercent = (value: number , min: number = 0, max: number = 0): number => {\n const percent: number = ((value - min) / (max - min)) * 100;\n\n if (_.isNaN(percent)) {\n console.warn('Circle Progress Bar: One of the properties Min, Max or datavalue is not a valid number');\n return 0;\n }\n return Math.abs(percent);\n};\n","<div class=\"multi-bar progress-bar {{bar.cls}}\" *ngFor=\"let bar of data\" [style.width]=\"bar.progressBarWidth\" role=\"progressbar\"\n [attr.aria-valuenow]=\"datavalue\" [attr.aria-valuemin]=\"minvalue\" [attr.aria-valuemax]=\"maxvalue\" [attr.aria-label]=\"hint || 'Progress bar'\">\n <span class=\"app-progress-label\" [attr.data-caption-placement]=\"captionplacement\">{{bar.displayValue}}</span>\n</div>\n","import {Attribute, Component, Injector, Optional} from '@angular/core';\n\nimport {findValueOf, isDefined} from '@wm/core';\nimport { IWidgetConfig, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\n\nimport { registerProps } from './progress-bar.props';\nimport { getDecimalCount, isPercentageValue } from '../utils';\n\ndeclare const _;\n\nconst DEFAULT_CLS = 'progress app-progress';\nconst WIDGET_CONFIG: IWidgetConfig = {widgetType: 'wm-progress-bar', hostClass: DEFAULT_CLS};\n\n// map of progress-bar type and classes\nexport const TYPE_CLASS_MAP = {\n 'default': '',\n 'default-striped': 'progress-bar-striped',\n 'success': 'progress-bar-success',\n 'success-striped': 'progress-bar-success progress-bar-striped',\n 'info': 'progress-bar-info',\n 'info-striped': 'progress-bar-info progress-bar-striped',\n 'warning': 'progress-bar-warning',\n 'warning-striped': 'progress-bar-warning progress-bar-striped',\n 'danger': 'progress-bar-danger',\n 'danger-striped': 'progress-bar-danger progress-bar-striped'\n};\n\n\n// interface for the progress-bar info\ninterface IProgressInfo {\n cls: string;\n progressBarWidth: string;\n displayValue: string;\n}\n\n@Component({\n selector: '[wmProgressBar]',\n templateUrl: './progress-bar.component.html',\n providers: [\n provideAsWidgetRef(ProgressBarComponent)\n ]\n})\nexport class ProgressBarComponent extends StylableComponent {\n static initializeProps = registerProps();\n\n public displayformat: string;\n public datavalue: string;\n public minvalue: number;\n public maxvalue: number;\n public type: string;\n public dataset: Array<any>;\n public hint: string;\n\n private _prepareData: Function;\n private readonly hasDataset: boolean;\n\n // progress-bar data, ngFor in the template iterates on this\n public data: Array<IProgressInfo> = [{\n cls: TYPE_CLASS_MAP.default,\n progressBarWidth: '0%',\n displayValue: '0'\n }];\n\n constructor(inj: Injector, @Attribute('dataset') dataset: string, @Attribute('dataset.bind') boundDataset: string) {\n super(inj, WIDGET_CONFIG);\n\n // flag which determines whether dataset is provided or not\n this.hasDataset = !!(dataset || boundDataset);\n\n styler(this.nativeElement, this);\n\n this._prepareData = _.debounce(() => this.prepareData(), 50);\n }\n\n // update the proper classes when there is a change in type\n protected onTypeChange() {\n if (!this.hasDataset) {\n if (this.data[0]) {\n this.data[0].cls = TYPE_CLASS_MAP[this.type];\n }\n }\n }\n\n // returns the formatted display value based on the provided displayformat\n protected getFormattedDisplayVal(val: string | number): string {\n const format = this.displayformat || '9';\n\n val = parseFloat('' + val);\n val = (val.toFixed(getDecimalCount(format)));\n\n if (format && format.includes('%')) {\n val = `${val}%`;\n }\n return val;\n }\n\n protected prepareData() {\n // when the dataset is provided, iterate over the dataset to set the proper values in the data\n if (this.dataset && _.isArray(this.dataset) && this.type && this.datavalue) {\n this.data = this.dataset.map((datum): IProgressInfo => {\n const val: string = findValueOf(datum, this.datavalue).toString();\n let percentVal = val;\n if (val && !val.includes('%')) {\n percentVal = `${val}%`;\n }\n return {\n cls: TYPE_CLASS_MAP[findValueOf(datum, this.type)],\n progressBarWidth: percentVal,\n displayValue: this.getFormattedDisplayVal(val)\n };\n });\n } else {\n // if the dataset is not provided, update the values in the default data\n let width: string | number = 0;\n let displayVal: string | number = 0;\n if (this.datavalue) {\n if (isPercentageValue(this.datavalue)) {\n const val = (this.datavalue || '0%');\n width = displayVal = val;\n } else {\n if (isDefined(this.datavalue)) {\n const denominator = (+this.maxvalue - +this.minvalue) || 1;\n const val = ((+this.datavalue - +this.minvalue) * 100) / denominator + '%';\n width = displayVal = val;\n }\n }\n }\n this.data[0].displayValue = this.getFormattedDisplayVal(displayVal as string);\n this.data[0].progressBarWidth = width as string;\n this.data[0].cls = TYPE_CLASS_MAP[this.type];\n\n }\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'type') {\n this.onTypeChange();\n } else if (key === 'minvalue' || key === 'maxvalue' || key === 'datavalue' || key === 'dataset' || key === 'displayformat') {\n this._prepareData();\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n}\n","import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-progress-circle',\n new Map(\n [\n ['captionplacement', {value: 'inside', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['dataset', PROP_ANY],\n ['datavalue', {value: '30', ...PROP_STRING}],\n ['displayformat', {value: '9%', ...PROP_STRING}],\n ['hint', PROP_STRING],\n ['maxvalue', {value: 100, ...PROP_NUMBER}],\n ['minvalue', {value: 0, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['subtitle', PROP_STRING],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['title', PROP_STRING],\n ['type', {value: 'default', ...PROP_STRING}]\n ]\n )\n );\n};\n","import {AfterViewInit, Component, Injector, Optional, ViewChild} from '@angular/core';\nimport { CircleProgressComponent, CircleProgressOptionsInterface } from 'ng-circle-progress';\n\n\nimport { IWidgetConfig, provideAsWidgetRef, IRedrawableComponent, StylableComponent, styler } from '@wm/components/base';\nimport { registerProps } from './progress-circle.props';\nimport { calculatePercent, getDecimalCount, isPercentageValue } from '../utils';\n\ndeclare const _;\n\nconst DEFAULT_CLS = 'progress app-progress circle';\nconst WIDGET_CONFIG: IWidgetConfig = {widgetType: 'wm-progress-circle', hostClass: DEFAULT_CLS};\nconst DEFAULT_OPTIONS: CircleProgressOptionsInterface = {\n responsive: true,\n innerStrokeWidth: 10,\n outerStrokeWidth: 10,\n unitsFontSize: '15',\n space: -10,\n toFixed: 0,\n maxPercent: 100,\n showSubtitle: false,\n clockwise: true,\n startFromZero: false,\n renderOnClick: false,\n innerStrokeColor: '',\n outerStrokeColor: ''\n};\n\n// map of progress-bar type and classes\nexport const TYPE_CLASS_MAP_PC = {\n 'default': '',\n 'success': 'progress-circle-success',\n 'info': 'progress-circle-info',\n 'warning': 'progress-circle-warning',\n 'danger': 'progress-circle-danger',\n};\n\n\n\n@Component({\n selector: '[wmProgressCircle]',\n templateUrl: './progress-circle.component.html',\n providers: [\n provideAsWidgetRef(ProgressCircleComponent)\n ]\n})\nexport class ProgressCircleComponent extends StylableComponent implements AfterViewInit, IRedrawableComponent {\n static initializeProps = registerProps();\n\n public displayformat: string;\n public datavalue: string;\n public minvalue: number;\n public maxvalue: number;\n public type: string;\n public title: string;\n public subtitle: string;\n public captionplacement: string;\n public percentagevalue: number;\n public redraw: Function;\n public options: CircleProgressOptionsInterface;\n\n @ViewChild(CircleProgressComponent, { static: true }) circleRef: CircleProgressComponent;\n\n\n constructor(inj: Injector) {\n super(inj, WIDGET_CONFIG);\n styler(this.nativeElement, this);\n this.options = _.clone(DEFAULT_OPTIONS);\n this.redraw = _.debounce(this._redraw, 100);\n }\n\n private _redraw () {\n this.circleRef.render();\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n this.invokeEventCallback('beforerender', {'$event' : {}});\n this.options = Object.assign(this.circleRef.options, this.options);\n }\n\n getDefaultOptions() {\n return this.options;\n }\n\n getLib() {\n return 'ng-circle-progress';\n }\n\n overrideDefaults(options) {\n _.extend(this.options, options);\n }\n\n updateDisplayValueFormat() {\n // show title and subtitle only when captionplacement is 'inside'\n this.options.showTitle = this.options.showSubtitle = (this.captionplacement === 'inside');\n\n // show units when title value is empty and captionplacement is 'inside'\n this.options.showUnits = !this.title && this.options.showTitle && isPercentageValue(this.displayformat);\n this.options.toFixed = getDecimalCount(this.displayformat);\n\n if (this.options.showTitle) {\n this.options.title = this.title || 'auto';\n this.options.showSubtitle = !!this.subtitle;\n this.options.subtitle = this.subtitle || '';\n }\n this.redraw();\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n switch (key) {\n case 'type':\n this.$element.removeClass(TYPE_CLASS_MAP_PC[ov]);\n this.$element.addClass(TYPE_CLASS_MAP_PC[nv]);\n break;\n case 'minvalue':\n case 'maxvalue':\n case 'datavalue':\n if (isPercentageValue(this.datavalue)) {\n this.percentagevalue = parseFloat(this.datavalue);\n } else {\n this.percentagevalue = calculatePercent(parseFloat(this.datavalue), this.minvalue, this.maxvalue);\n }\n break;\n case 'displayformat':\n case 'captionplacement':\n case 'title':\n case 'subtitle':\n this.updateDisplayValueFormat();\n break;\n }\n super.onPropertyChange(key, nv, ov);\n }\n}\n","<circle-progress [percent]=\"percentagevalue\" [options]=\"options\"></circle-progress>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { NgCircleProgressModule } from 'ng-circle-progress';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { ProgressBarComponent } from './progress-bar/progress-bar.component';\nimport { ProgressCircleComponent } from './progress-circle/progress-circle.component';\n\nconst components = [\n ProgressBarComponent,\n ProgressCircleComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n NgCircleProgressModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class ProgressModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["registerProps","DEFAULT_CLS","WIDGET_CONFIG","_c0"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/basic/progress/src/progress-bar/progress-bar.props.ts","../../../../../projects/components/widgets/basic/progress/src/utils.ts","../../../../../projects/components/widgets/basic/progress/src/progress-bar/progress-bar.component.html","../../../../../projects/components/widgets/basic/progress/src/progress-bar/progress-bar.component.ts","../../../../../projects/components/widgets/basic/progress/src/progress-circle/progress-circle.props.ts","../../../../../projects/components/widgets/basic/progress/src/progress-circle/progress-circle.component.ts","../../../../../projects/components/widgets/basic/progress/src/progress-circle/progress-circle.component.html","../../../../../projects/components/widgets/basic/progress/src/progress.module.ts","../../../../../projects/components/widgets/basic/progress/src/index.ts"],"sourcesContent":["import {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-progress-bar',\n new Map(\n [\n ['captionplacement', {value: 'hidden', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['dataset', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['displayformat', PROP_STRING],\n ['hint', PROP_STRING],\n ['maxvalue', {value: 100, ...PROP_NUMBER}],\n ['minvalue', {value: 0, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['type', {value: 'default', ...PROP_STRING}]\n ]\n )\n );\n};\n","import { isString } from '@wm/core';\n\ndeclare const _;\n\n// This function returns the maximum number of decimal digits allowed.\nexport const getDecimalCount = (val: string) => {\n val = val || '9';\n val = val.replace(/\\%$/, '');\n\n const n = val.lastIndexOf('.');\n\n return (n === -1) ? 0 : (val.length - n - 1);\n};\n\n// returns true if the given value contains '%'\nexport const isPercentageValue = (val: string): boolean => {\n if (isString(val)) {\n val = val.trim();\n return val.charAt(val.length - 1) === '%';\n }\n return false;\n};\n\nexport const calculatePercent = (value: number , min: number = 0, max: number = 0): number => {\n const percent: number = ((value - min) / (max - min)) * 100;\n\n if (_.isNaN(percent)) {\n console.warn('Circle Progress Bar: One of the properties Min, Max or datavalue is not a valid number');\n return 0;\n }\n return Math.abs(percent);\n};\n","<div class=\"multi-bar progress-bar {{bar.cls}}\" *ngFor=\"let bar of data\" [style.width]=\"bar.progressBarWidth\"\n role=\"progressbar\" [attr.aria-valuenow]=\"datavalue\" [attr.aria-valuemin]=\"minvalue\" [attr.aria-valuemax]=\"maxvalue\"\n [attr.aria-label]=\"hint || 'Progress bar'\" tabindex=\"1\">\n <span class=\"app-progress-label\" [attr.data-caption-placement]=\"captionplacement\">{{bar.displayValue}}</span>\n</div>","import {Attribute, Component, Injector, Optional} from '@angular/core';\n\nimport {findValueOf, isDefined} from '@wm/core';\nimport { IWidgetConfig, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\n\nimport { registerProps } from './progress-bar.props';\nimport { getDecimalCount, isPercentageValue } from '../utils';\n\ndeclare const _;\n\nconst DEFAULT_CLS = 'progress app-progress';\nconst WIDGET_CONFIG: IWidgetConfig = {widgetType: 'wm-progress-bar', hostClass: DEFAULT_CLS};\n\n// map of progress-bar type and classes\nexport const TYPE_CLASS_MAP = {\n 'default': '',\n 'default-striped': 'progress-bar-striped',\n 'success': 'progress-bar-success',\n 'success-striped': 'progress-bar-success progress-bar-striped',\n 'info': 'progress-bar-info',\n 'info-striped': 'progress-bar-info progress-bar-striped',\n 'warning': 'progress-bar-warning',\n 'warning-striped': 'progress-bar-warning progress-bar-striped',\n 'danger': 'progress-bar-danger',\n 'danger-striped': 'progress-bar-danger progress-bar-striped'\n};\n\n\n// interface for the progress-bar info\ninterface IProgressInfo {\n cls: string;\n progressBarWidth: string;\n displayValue: string;\n}\n\n@Component({\n selector: '[wmProgressBar]',\n templateUrl: './progress-bar.component.html',\n providers: [\n provideAsWidgetRef(ProgressBarComponent)\n ]\n})\nexport class ProgressBarComponent extends StylableComponent {\n static initializeProps = registerProps();\n\n public displayformat: string;\n public datavalue: string;\n public minvalue: number;\n public maxvalue: number;\n public type: string;\n public dataset: Array<any>;\n public hint: string;\n\n private _prepareData: Function;\n private readonly hasDataset: boolean;\n\n // progress-bar data, ngFor in the template iterates on this\n public data: Array<IProgressInfo> = [{\n cls: TYPE_CLASS_MAP.default,\n progressBarWidth: '0%',\n displayValue: '0'\n }];\n\n constructor(inj: Injector, @Attribute('dataset') dataset: string, @Attribute('dataset.bind') boundDataset: string) {\n super(inj, WIDGET_CONFIG);\n\n // flag which determines whether dataset is provided or not\n this.hasDataset = !!(dataset || boundDataset);\n\n styler(this.nativeElement, this);\n\n this._prepareData = _.debounce(() => this.prepareData(), 50);\n }\n\n // update the proper classes when there is a change in type\n protected onTypeChange() {\n if (!this.hasDataset) {\n if (this.data[0]) {\n this.data[0].cls = TYPE_CLASS_MAP[this.type];\n }\n }\n }\n\n // returns the formatted display value based on the provided displayformat\n protected getFormattedDisplayVal(val: string | number): string {\n const format = this.displayformat || '9';\n\n val = parseFloat('' + val);\n val = (val.toFixed(getDecimalCount(format)));\n\n if (format && format.includes('%')) {\n val = `${val}%`;\n }\n return val;\n }\n\n protected prepareData() {\n // when the dataset is provided, iterate over the dataset to set the proper values in the data\n if (this.dataset && _.isArray(this.dataset) && this.type && this.datavalue) {\n this.data = this.dataset.map((datum): IProgressInfo => {\n const val: string = findValueOf(datum, this.datavalue).toString();\n let percentVal = val;\n if (val && !val.includes('%')) {\n percentVal = `${val}%`;\n }\n return {\n cls: TYPE_CLASS_MAP[findValueOf(datum, this.type)],\n progressBarWidth: percentVal,\n displayValue: this.getFormattedDisplayVal(val)\n };\n });\n } else {\n // if the dataset is not provided, update the values in the default data\n let width: string | number = 0;\n let displayVal: string | number = 0;\n if (this.datavalue) {\n if (isPercentageValue(this.datavalue)) {\n const val = (this.datavalue || '0%');\n width = displayVal = val;\n } else {\n if (isDefined(this.datavalue)) {\n const denominator = (+this.maxvalue - +this.minvalue) || 1;\n const val = ((+this.datavalue - +this.minvalue) * 100) / denominator + '%';\n width = displayVal = val;\n }\n }\n }\n this.data[0].displayValue = this.getFormattedDisplayVal(displayVal as string);\n this.data[0].progressBarWidth = width as string;\n this.data[0].cls = TYPE_CLASS_MAP[this.type];\n\n }\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'type') {\n this.onTypeChange();\n } else if (key === 'minvalue' || key === 'maxvalue' || key === 'datavalue' || key === 'dataset' || key === 'displayformat') {\n this._prepareData();\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n}\n","import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-progress-circle',\n new Map(\n [\n ['captionplacement', {value: 'inside', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['dataset', PROP_ANY],\n ['datavalue', {value: '30', ...PROP_STRING}],\n ['displayformat', {value: '9%', ...PROP_STRING}],\n ['hint', PROP_STRING],\n ['maxvalue', {value: 100, ...PROP_NUMBER}],\n ['minvalue', {value: 0, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['subtitle', PROP_STRING],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['title', PROP_STRING],\n ['type', {value: 'default', ...PROP_STRING}]\n ]\n )\n );\n};\n","import {AfterViewInit, Component, Injector, Optional, ViewChild} from '@angular/core';\nimport { CircleProgressComponent, CircleProgressOptionsInterface } from 'ng-circle-progress';\n\n\nimport { IWidgetConfig, provideAsWidgetRef, IRedrawableComponent, StylableComponent, styler } from '@wm/components/base';\nimport { registerProps } from './progress-circle.props';\nimport { calculatePercent, getDecimalCount, isPercentageValue } from '../utils';\n\ndeclare const _;\n\nconst DEFAULT_CLS = 'progress app-progress circle';\nconst WIDGET_CONFIG: IWidgetConfig = {widgetType: 'wm-progress-circle', hostClass: DEFAULT_CLS};\nconst DEFAULT_OPTIONS: CircleProgressOptionsInterface = {\n responsive: true,\n innerStrokeWidth: 10,\n outerStrokeWidth: 10,\n unitsFontSize: '15',\n space: -10,\n toFixed: 0,\n maxPercent: 100,\n showSubtitle: false,\n clockwise: true,\n startFromZero: false,\n renderOnClick: false,\n innerStrokeColor: '',\n outerStrokeColor: ''\n};\n\n// map of progress-bar type and classes\nexport const TYPE_CLASS_MAP_PC = {\n 'default': '',\n 'success': 'progress-circle-success',\n 'info': 'progress-circle-info',\n 'warning': 'progress-circle-warning',\n 'danger': 'progress-circle-danger',\n};\n\n\n\n@Component({\n selector: '[wmProgressCircle]',\n templateUrl: './progress-circle.component.html',\n providers: [\n provideAsWidgetRef(ProgressCircleComponent)\n ]\n})\nexport class ProgressCircleComponent extends StylableComponent implements AfterViewInit, IRedrawableComponent {\n static initializeProps = registerProps();\n\n public displayformat: string;\n public datavalue: string;\n public minvalue: number;\n public maxvalue: number;\n public type: string;\n public title: string;\n public subtitle: string;\n public captionplacement: string;\n public percentagevalue: number;\n public redraw: Function;\n public options: CircleProgressOptionsInterface;\n public hint: string;\n\n @ViewChild(CircleProgressComponent, { static: true }) circleRef: CircleProgressComponent;\n\n\n constructor(inj: Injector) {\n super(inj, WIDGET_CONFIG);\n styler(this.nativeElement, this);\n this.options = _.clone(DEFAULT_OPTIONS);\n this.redraw = _.debounce(this._redraw, 100);\n }\n\n private _redraw () {\n this.circleRef.render();\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n this.invokeEventCallback('beforerender', {'$event' : {}});\n this.options = Object.assign(this.circleRef.options, this.options);\n }\n\n getDefaultOptions() {\n return this.options;\n }\n\n getLib() {\n return 'ng-circle-progress';\n }\n\n overrideDefaults(options) {\n _.extend(this.options, options);\n }\n\n updateDisplayValueFormat() {\n // show title and subtitle only when captionplacement is 'inside'\n this.options.showTitle = this.options.showSubtitle = (this.captionplacement === 'inside');\n\n // show units when title value is empty and captionplacement is 'inside'\n this.options.showUnits = !this.title && this.options.showTitle && isPercentageValue(this.displayformat);\n this.options.toFixed = getDecimalCount(this.displayformat);\n\n if (this.options.showTitle) {\n this.options.title = this.title || 'auto';\n this.options.showSubtitle = !!this.subtitle;\n this.options.subtitle = this.subtitle || '';\n }\n this.redraw();\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n switch (key) {\n case 'type':\n this.$element.removeClass(TYPE_CLASS_MAP_PC[ov]);\n this.$element.addClass(TYPE_CLASS_MAP_PC[nv]);\n break;\n case 'minvalue':\n case 'maxvalue':\n case 'datavalue':\n if (isPercentageValue(this.datavalue)) {\n this.percentagevalue = parseFloat(this.datavalue);\n } else {\n this.percentagevalue = calculatePercent(parseFloat(this.datavalue), this.minvalue, this.maxvalue);\n }\n break;\n case 'displayformat':\n case 'captionplacement':\n case 'title':\n case 'subtitle':\n this.updateDisplayValueFormat();\n break;\n }\n super.onPropertyChange(key, nv, ov);\n }\n}\n","<circle-progress tabindex=\"1\" [attr.aria-label]=\"hint || 'circle-progress'\" [attr.hint]=\"hint\"\n [percent]=\"percentagevalue\" [options]=\"options\"></circle-progress>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { NgCircleProgressModule } from 'ng-circle-progress';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { ProgressBarComponent } from './progress-bar/progress-bar.component';\nimport { ProgressCircleComponent } from './progress-circle/progress-circle.component';\n\nconst components = [\n ProgressBarComponent,\n ProgressCircleComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n NgCircleProgressModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class ProgressModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["registerProps","DEFAULT_CLS","WIDGET_CONFIG","_c0"],"mappings":"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"}
@@ -22,6 +22,7 @@ export declare class ProgressCircleComponent extends StylableComponent implement
22
22
  percentagevalue: number;
23
23
  redraw: Function;
24
24
  options: CircleProgressOptionsInterface;
25
+ hint: string;
25
26
  circleRef: CircleProgressComponent;
26
27
  constructor(inj: Injector);
27
28
  private _redraw;
@@ -204,4 +204,4 @@ export class RichTextEditorComponent extends BaseFormCustomComponent {
204
204
  provideAsWidgetRef(RichTextEditorComponent)
205
205
  ], exportAs: 'wmRichTextEditor', template: "<div richTextEditor></div>\n<div [innerHTML]=\"proxyModel\" class=\"ta-preview\" *ngIf=\"showpreview\"></div>\n<input class=\"model-holder\" [disabled]=\"disabled\" hidden>\n" }]
206
206
  }], function () { return [{ type: i0.Injector }, { type: i1.SanitizePipe }, { type: i0.NgZone }]; }, null); })();
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvYmFzaWMvcmljaC10ZXh0LWVkaXRvci9zcmMvcmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvYmFzaWMvcmljaC10ZXh0LWVkaXRvci9zcmMvcmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQStCLGVBQWUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDbEQsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7SUNOekQseUJBQTJFOzs7SUFBdEUsZ0VBQXdCOztBRFE3QixNQUFNLFdBQVcsR0FBRyxFQUFDLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSxTQUFTLEVBQUUsNkJBQTZCLEVBQUMsQ0FBQztBQUVoRyxNQUFNLFlBQVksR0FBRyxHQUFHLEVBQUU7SUFDdEIsSUFBSSxTQUFTLENBQUM7SUFDZCx5RUFBeUU7SUFDekUsSUFBSSxPQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssVUFBVSxFQUFFO1FBQzlCLFNBQVMsR0FBRyxJQUFJ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UUFDdkMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7d0ZBN0pRLHVCQUF1QjtvRUFBdkIsdUJBQXVCLGlIQU5yQjtnQkFDUCxTQUFTLENBQUMsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDO2dCQUMzRCxrQkFBa0IsQ0FBQyx1QkFBdUIsQ0FBQzthQUM5QztZQ3JETCx5QkFBMEI7WUFDMUIsd0VBQTJFO1lBQzNFLDJCQUF5RDs7WUFEUCxlQUFpQjtZQUFqQixzQ0FBaUI7WUFDdkMsZUFBcUI7WUFBckIsdUNBQXFCOzs7dUZEc0RwQyx1QkFBdUI7Y0FUbkMsU0FBUzsyQkFDSSx1QkFBdUIsYUFFdEI7b0JBQ1AsU0FBUywwQkFBMEIsaUJBQWlCLEVBQUUsSUFBSSxDQUFDO29CQUMzRCxrQkFBa0IseUJBQXlCO2lCQUM5QyxZQUNTLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3RvciwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwsIFNlY3VyaXR5Q29udGV4dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtzZXRBdHRyLCBzZXRDU1MsIHNldEh0bWx9IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7QVBQTFlfU1RZTEVTX1RZUEUsIHByb3ZpZGVBcywgcHJvdmlkZUFzV2lkZ2V0UmVmLCBTYW5pdGl6ZVBpcGUsIHN0eWxlcn0gZnJvbSAnQHdtL2NvbXBvbmVudHMvYmFzZSc7XG5pbXBvcnQgeyBCYXNlRm9ybUN1c3RvbUNvbXBvbmVudCB9IGZyb20gJ0B3bS9jb21wb25lbnRzL2lucHV0JztcblxuaW1wb3J0IHsgcmVnaXN0ZXJQcm9wcyB9IGZyb20gJy4vcmljaC10ZXh0LWVkaXRvci5wcm9wcyc7XG5cbmNvbnN0IFdJREdFVF9JTkZPID0ge3dpZGdldFR5cGU6ICd3bS1yaWNodGV4dGVkaXRvcicsIGhvc3RDbGFzczogJ2FwcC1yaWNodGV4dGVkaXRvciBjbGVhcmZpeCd9O1xuXG5jb25zdCBnZXRDaGFuZ2VFdnQgPSAoKSA9PiB7XG4gICAgbGV0IGNoYW5nZUV2dDtcbiAgICAvLyBmb3IgSUUgdGhlIGV2ZW50IGNvbnN0cnVjdG9yIGRvZXNuJ3Qgd29yayBzbyB1c2UgdGhlIGNyZWF0ZUV2ZW50IHByb3RvXG4gICAgaWYgKHR5cGVvZihFdmVudCkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgY2hhbmdlRXZ0ID0gbmV3IEV2ZW50KCdjaGFuZ2UnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBjaGFuZ2VFdnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgnRXZlbnQnKTtcbiAgICAgICAgY2hhbmdlRXZ0LmluaXRFdmVudCgnY2hhbmdlJywgdHJ1ZSwgdHJ1ZSk7XG4gICAgfVxuICAgIHJldHVybiBjaGFuZ2VFdnQ7XG59O1xuXG5kZWNsYXJlIGNvbnN0IF8sICQ7XG5cbmNvbnN0IG92ZXJyaWRlU3VtbWVyTm90ZSA9ICgpID0+IHtcbiAgICBpZiAoISQuc3VtbWVybm90ZS5fX292ZXJpZGRlbikge1xuICAgICAgICAvLyBvdmVycmlkZSBzdW1tZXJub3RlIG1ldGhvZHNcblxuICAgICAgICBjb25zdCBvcmlnRm4gPSAkLnN1bW1lcm5vdGUudWlfdGVtcGxhdGUoKS5idXR0b24uYmluZCgkLnN1bW1lcm5vdGUpO1xuXG4gICAgICAgICQuc3VtbWVybm90ZS51aV90ZW1wbGF0ZS5idXR0b24gPSAoLi4uYXJncykgPT4ge1xuXG4gICAgICAgICAgICBjb25zdCByZXRWYWwgPSBvcmlnRm4oLi4uYXJncyk7XG4gICAgICAgICAgICBjb25zdCBvcmlnQ2FsbGJhY2sgPSByZXRWYWwuY2FsbGJhY2s7XG5cbiAgICAgICAgICAgIHJldFZhbC5jYWxsYmFjayA9ICgkbm9kZSwgb3B0aW9ucykgPT4ge1xuICAgICAgICAgICAgICAgIC8vIGFkZCBiczMgYnRuIGNsYXNzIHRvIHRoZSBidXR0b25zXG4gICAgICAgICAgICAgICAgJG5vZGUuYWRkQ2xhc3MoJ2J0bicpO1xuICAgICAgICAgICAgICAgIHJldHVybiBvcmlnQ2FsbGJhY2soJG5vZGUsIG9wdGlvbnMpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHJldHVybiByZXRWYWw7XG4gICAgICAgIH07XG4gICAgICAgICQuc3VtbWVybm90ZS5fX292ZXJpZGRlbiA9IHRydWU7XG4gICAgfVxufTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkaXZbd21SaWNoVGV4dEVkaXRvcl0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9yaWNoLXRleHQtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgcHJvdmlkZUFzKFJpY2hUZXh0RWRpdG9yQ29tcG9uZW50LCBOR19WQUxVRV9BQ0NFU1NPUiwgdHJ1ZSksXG4gICAgICAgIHByb3ZpZGVBc1dpZGdldFJlZihSaWNoVGV4dEVkaXRvckNvbXBvbmVudClcbiAgICBdLFxuICAgIGV4cG9ydEFzOiAnd21SaWNoVGV4dEVkaXRvcidcbn0pXG5leHBvcnQgY2xhc3MgUmljaFRleHRFZGl0b3JDb21wb25lbnQgZXh0ZW5kcyBCYXNlRm9ybUN1c3RvbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBzdGF0aWMgaW5pdGlhbGl6ZVByb3BzID0gcmVnaXN0ZXJQcm9wcygpO1xuXG4gICAgJHJpY2hUZXh0RWRpdG9yO1xuICAgICRoaWRkZW5JbnB1dEVsZTtcblxuICAgIHByb3h5TW9kZWw7XG4gICAgX29wZXJhdGlvblN0YWNrID0gW107XG4gICAgaXNFZGl0b3JMb2FkZWQgPSBmYWxzZTtcblxuICAgIHB1YmxpYyBzaG93cHJldmlldzogYW55O1xuICAgIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbjtcblxuICAgIEVESVRPUl9ERUZBVUxUX09QVElPTlMgPSB7XG4gICAgICAgIHRvb2xiYXI6IFtcbiAgICAgICAgICAgIC8vIFtncm91cE5hbWUsIFtsaXN0IG9mIGJ1dHRvbl1dXG4gICAgICAgICAgICBbJ21pc2MnLCBbJ3VuZG8nLCAncmVkbyddXSxcbiAgICAgICAgICAgIFsnc3R5bGUnLCBbJ3N0eWxlJ11dLFxuICAgICAgICAgICAgWydmb250bmFtZScsIFsnZm9udG5hbWUnXV0sXG4gICAgICAgICAgICBbJ2ZvbnRzaXplJywgWydmb250c2l6ZSddXSxcbiAgICAgICAgICAgIFsnaGVpZ2h0JywgWydoZWlnaHQnXV0sXG4gICAgICAgICAgICBbJ3N0eWxlJywgWydib2xkJywgJ2l0YWxpYycsICd1bmRlcmxpbmUnLCAnY2xlYXInXV0sXG4gICAgICAgICAgICBbJ2ZvbnQnLCBbJ3N0cmlrZXRocm91Z2gnLCAnc3VwZXJzY3JpcHQnLCAnc3Vic2NyaXB0J11dLFxuICAgICAgICAgICAgWydjb2xvcicsIFsnY29sb3InXV0sXG4gICAgICAgICAgICBbJ2luc2VydCcsIFsndGFibGUnLCAncGljdHVyZScsICdsaW5rJywgJ3ZpZGVvJywgJ2hyJ11dLFxuICAgICAgICAgICAgWydwYXJhJywgWyd1bCcsICdvbCcsICdwYXJhZ3JhcGgnXV0sXG4gICAgICAgICAgICBbJ21pc2MnLCBbJ2NvZGV2aWV3JywgJ2Z1bGxzY3JlZW4nLCAnaGVscCddXVxuICAgICAgICBdLFxuICAgICAgICBjYWxsYmFja3M6IHtcbiAgICAgICAgICAgIG9uSW5pdDogKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNFZGl0b3JMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9vcGVyYXRpb25TdGFjay5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fb3BlcmF0aW9uU3RhY2suZm9yRWFjaChvcGVyYXRpb25QYXJhbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXkgPSBBcnJheS5mcm9tKG9wZXJhdGlvblBhcmFtLmtleXMoKSlbMF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsID0gb3BlcmF0aW9uUGFyYW0uZ2V0KGtleSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBlcmZvcm1FZGl0b3JPcGVyYXRpb24oa2V5LCB2YWwpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fb3BlcmF0aW9uU3RhY2sgPSBbXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgb25DaGFuZ2U6IChjb250ZW50cywgZWRpdGFibGUpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnByb3h5TW9kZWwgPSB0aGlzLnNhbml0aXplUGlwZS50cmFuc2Zvcm0oY29udGVudHMsIFNlY3VyaXR5Q29udGV4dC5IVE1MKTtcbiAgICAgICAgICAgICAgICB0aGlzLmludm9rZU9uQ2hhbmdlKGNvbnRlbnRzLCBnZXRDaGFuZ2VFdnQoKSwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5pbnZva2VPblRvdWNoZWQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZm9udE5hbWVzOiBbJ0FyaWFsJywgJ0FyaWFsIEJsYWNrJywgJ0NvbWljIFNhbnMgTVMnLCAnQ291cmllciBOZXcnLCAnTWVycml3ZWF0aGVyJ10sXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnd3JpdGUgaGVyZS4uLicsXG4gICAgICAgIG1pbkhlaWdodDogMTAwLFxuICAgICAgICBkaXNhYmxlUmVzaXplRWRpdG9yOiB0cnVlXG4gICAgfTtcblxuICAgIGdldCBodG1sY29udGVudCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGVyZm9ybUVkaXRvck9wZXJhdGlvbignY29kZScpO1xuICAgIH1cblxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBnZXQgZGF0YXZhbHVlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5odG1sY29udGVudDtcbiAgICB9XG5cbiAgICAvLyBAdHMtaWdub3JlXG4gICAgc2V0IGRhdGF2YWx1ZShudikge1xuICAgICAgICBpZiAobnYgIT09IHVuZGVmaW5lZCAmJiBudiAhPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy4kaGlkZGVuSW5wdXRFbGUudmFsKG52KTtcbiAgICAgICAgICAgIHRoaXMucGVyZm9ybUVkaXRvck9wZXJhdGlvbigncmVzZXQnKTtcbiAgICAgICAgICAgIHRoaXMucGVyZm9ybUVkaXRvck9wZXJhdGlvbignY29kZScsIG52KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGluajogSW5qZWN0b3IsIHByaXZhdGUgc2FuaXRpemVQaXBlOiBTYW5pdGl6ZVBpcGUsIHByaXZhdGUgbmdab25lOiBOZ1pvbmUpIHtcbiAgICAgICAgc3VwZXIoaW5qLCBXSURHRVRfSU5GTyk7XG4gICAgICAgIHN0eWxlcih0aGlzLm5hdGl2ZUVsZW1lbnQsIHRoaXMsIEFQUExZX1NUWUxFU19UWVBFLkNPTlRBSU5FUiwgWydoZWlnaHQnXSk7XG4gICAgICAgIG92ZXJyaWRlU3VtbWVyTm90ZSgpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLiRyaWNoVGV4dEVkaXRvciA9ICQodGhpcy5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tyaWNoVGV4dEVkaXRvcl0nKSk7XG4gICAgICAgIHRoaXMuJGhpZGRlbklucHV0RWxlID0gJCh0aGlzLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXQubW9kZWwtaG9sZGVyJykpO1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLmluaXRFZGl0b3IoKTtcbiAgICB9XG5cbiAgICBpbml0RWRpdG9yKCkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmludm9rZUV2ZW50Q2FsbGJhY2soJ2JlZm9yZXJlbmRlcicsIHsnJGV2ZW50JyA6IHt9fSk7XG4gICAgICAgICAgICB0aGlzLiRyaWNoVGV4dEVkaXRvci5zdW1tZXJub3RlKHRoaXMuRURJVE9SX0RFRkFVTFRfT1BUSU9OUyk7XG4gICAgICAgIH0pO1xuXG4gICAgfVxuXG4gICAgZ2V0RGVmYXVsdE9wdGlvbnMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLkVESVRPUl9ERUZBVUxUX09QVElPTlM7XG4gICAgfVxuXG4gICAgZ2V0TGliKCkge1xuICAgICAgICByZXR1cm4gJ3N1bW1lcm5vdGUnO1xuICAgIH1cblxuICAgIG92ZXJyaWRlRGVmYXVsdHMob3B0aW9ucykge1xuICAgICAgICBfLmV4dGVuZCh0aGlzLkVESVRPUl9ERUZBVUxUX09QVElPTlMsIG9wdGlvbnMpO1xuICAgIH1cblxuICAgIG9uUHJvcGVydHlDaGFuZ2Uoa2V5OiBzdHJpbmcsIG52OiBhbnksIG92PzogYW55KSB7XG4gICAgICAgIGlmIChrZXkgPT09ICdwbGFjZWhvbGRlcicpIHtcbiAgICAgICAgICAgIHRoaXMucGVyZm9ybUVkaXRvck9wZXJhdGlvbigncGxhY2Vob2xkZXInLCBudik7XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAnZGlzYWJsZWQnIHx8IGtleSA9PT0gJ3JlYWRvbmx5Jykge1xuICAgICAgICAgICAgdGhpcy5wZXJmb3JtRWRpdG9yT3BlcmF0aW9uKG52ID8gJ2Rpc2FibGUnIDogJ2VuYWJsZScpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3VwZXIub25Qcm9wZXJ0eUNoYW5nZShrZXksIG52LCBvdik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblN0eWxlQ2hhbmdlKGtleSwgbnYsIG92KSB7XG4gICAgICAgIGlmIChrZXkgPT09ICdoZWlnaHQnKSB7XG4gICAgICAgICAgICB0aGlzLnBlcmZvcm1FZGl0b3JPcGVyYXRpb24oJ2hlaWdodCcsIG52KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHBlcmZvcm1FZGl0b3JPcGVyYXRpb24oa2V5LCB2YWx1ZT8pIHtcbiAgICAgICAgaWYgKHRoaXMuaXNFZGl0b3JMb2FkZWQpIHtcbiAgICAgICAgICAgIGlmIChrZXkgPT09ICdoZWlnaHQnKSB7XG4gICAgICAgICAgICAgICAgc2V0Q1NTKHRoaXMubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdkaXYubm90ZS1lZGl0YWJsZScpLCBrZXksIHZhbHVlLCB0cnVlKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAncGxhY2Vob2xkZXInKSB7XG4gICAgICAgICAgICAgICAgc2V0QXR0cih0aGlzLm5hdGl2ZUVsZW1lbnQsIGtleSwgdmFsdWUpO1xuICAgICAgICAgICAgICAgIHNldEh0bWwodGhpcy5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2Rpdi5ub3RlLXBsYWNlaG9sZGVyJyksIHZhbHVlLCB0cnVlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgLy8gaWYgZWRpdG9yIGNvbnRlbnQgaXMgZW1wdHkgdGhlbiBzdW1tZXJub3RlKCdjb2RlJykgaXMgcmV0dXJuaW5nIGVtcHR5IHAgdGFncyBsaWtlIDxwPjwvYnI+PC9wPi4gU28gY2hlY2tpbmcgZm9yIGVtcHR5IGFuZCByZXR1cm5pbmcgdW5kZWZpbmVkLlxuICAgICAgICAgICAgICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAxICYmIGtleSA9PT0gJ2NvZGUnICYmIHRoaXMuJHJpY2hUZXh0RWRpdG9yLnN1bW1lcm5vdGUoJ2lzRW1wdHknKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy4kcmljaFRleHRFZGl0b3Iuc3VtbWVybm90ZSgnY29kZScpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gY29udGVudCA9PT0gJycgPyBjb250ZW50IDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy4kcmljaFRleHRFZGl0b3Iuc3VtbWVybm90ZShrZXksIHZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IG9wOiBhbnkgPSBuZXcgTWFwKCk7XG4gICAgICAgICAgICBvcC5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgICAgICAgICB0aGlzLl9vcGVyYXRpb25TdGFjay5wdXNoKG9wKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldEN1cnJlbnRQb3NpdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGVyZm9ybUVkaXRvck9wZXJhdGlvbignY3JlYXRlUmFuZ2UnKTtcbiAgICB9XG5cbiAgICB1bmRvKCkge1xuICAgICAgICB0aGlzLnBlcmZvcm1FZGl0b3JPcGVyYXRpb24oJ3VuZG8nKTtcbiAgICB9XG5cbiAgICBmb2N1cygpIHtcbiAgICAgICAgdGhpcy5wZXJmb3JtRWRpdG9yT3BlcmF0aW9uKCdmb2N1cycpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLnBlcmZvcm1FZGl0b3JPcGVyYXRpb24oJ2Rlc3Ryb3knKTtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG59XG4iLCI8ZGl2IHJpY2hUZXh0RWRpdG9yPjwvZGl2PlxuPGRpdiBbaW5uZXJIVE1MXT1cInByb3h5TW9kZWxcIiBjbGFzcz1cInRhLXByZXZpZXdcIiAqbmdJZj1cInNob3dwcmV2aWV3XCI+PC9kaXY+XG48aW5wdXQgY2xhc3M9XCJtb2RlbC1ob2xkZXJcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBoaWRkZW4+XG4iXX0=
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvYmFzaWMvcmljaC10ZXh0LWVkaXRvci9zcmMvcmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvYmFzaWMvcmljaC10ZXh0LWVkaXRvci9zcmMvcmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQStCLGVBQWUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDbEQsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7SUNOekQseUJBQTJFOzs7SUFBdEUsZ0VBQXdCOztBRFM3QixNQUFNLFdBQVcsR0FBRyxFQUFDLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSxTQUFTLEVBQUUsNkJBQTZCLEVBQUMsQ0FBQztBQUVoRyxNQUFNLFlBQVksR0FBRyxHQUFHLEVBQUU7SUFDdEIsSUFBSSxTQUFTLENBQUM7SUFDZCx5RUFBeUU7SUFDekUsSUFBSSxPQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssVUFBVSxFQUFFO1FBQzlCLFNBQVMsR0FBRyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUNuQztTQUFNO1FBQ0gsU0FBUyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0tBQzdDO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFDckIsQ0FBQyxDQUFDO0FBSUYsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLEVBQUU7SUFDNUIsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFO1FBQzNCLDhCQUE4QjtRQUU5QixNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXBFLENBQUMsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEdBQUcsSUFBSSxFQUFFLEVBQUU7WUFFMUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDL0IsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUVyQyxNQUFNLENBQUMsUUFBUSxHQUFHLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO2dCQUNqQyxtQ0FBbUM7Z0JBQ25DLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3RCLE9BQU8sWUFBWSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztZQUN4QyxDQUFDLENBQUM7WUFDRixPQUFPLE1BQU0sQ0FBQztRQUNsQixDQUFDLENBQUM7UUFDRixDQUFDLENBQUMsVUFBVSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7S0FDbkM7QUFDTCxDQUFDLENBQUM7QUFXRixNQUFNLE9BQU8sdUJBQXdCLFNBQVEsdUJBQXVCO2FBQ3pELG9CQUFlLEdBQUcsYUFBYSxFQUFFLENBQUM7SUFtRHpDLElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxhQUFhO0lBQ2IsSUFBSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFFRCxhQUFhO0lBQ2IsSUFBSSxTQUFTLENBQUMsRUFBRTtRQUNaLElBQUksRUFBRSxLQUFLLFNBQVMsSUFBSSxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzdCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQzNDO0lBQ0wsQ0FBQztJQUVELFlBQVksR0FBYSxFQUFVLFlBQTBCLEVBQVUsTUFBYztRQUNqRixLQUFLLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRE8saUJBQVksR0FBWixZQUFZLENBQWM7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBL0RyRixvQkFBZSxHQUFHLEVBQUUsQ0FBQztRQUNyQixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUt2QiwyQkFBc0IsR0FBRztZQUNyQixPQUFPLEVBQUU7Z0JBQ0wsZ0NBQWdDO2dCQUNoQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDMUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDcEIsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDMUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDMUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDdEIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDbkQsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUN2RCxDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUNwQixDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDdkQsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUNuQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUM7YUFDL0M7WUFDRCxTQUFTLEVBQUU7Z0JBQ1AsTUFBTSxFQUFFLEdBQUcsRUFBRTtvQkFDVCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztvQkFDM0IsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRTt3QkFDN0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLEVBQUU7NEJBQzFDLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzVDLEdBQUcsR0FBRyxjQUFjLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDOzRCQUNsQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO3dCQUMxQyxDQUFDLENBQUMsQ0FBQzt3QkFDSCxJQUFJLENBQUMsZUFBZSxHQUFHLEVBQUUsQ0FBQztxQkFDN0I7Z0JBQ0wsQ0FBQztnQkFDRCxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLEVBQUU7b0JBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDOUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ3BELElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztnQkFDM0IsQ0FBQzthQUNKO1lBQ0QsU0FBUyxFQUFFLENBQUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGNBQWMsQ0FBQztZQUNuRixXQUFXLEVBQUUsZUFBZTtZQUM1QixTQUFTLEVBQUUsR0FBRztZQUNkLG1CQUFtQixFQUFFLElBQUk7U0FDNUIsQ0FBQztRQXNCRSxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLENBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUMxRSxrQkFBa0IsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDO1FBQy9FLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQztRQUNqRixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxVQUFVO1FBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDL0IsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGNBQWMsRUFBRSxFQUFDLFFBQVEsRUFBRyxFQUFFLEVBQUMsQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ2pFLENBQUMsQ0FBQyxDQUFDO0lBRVAsQ0FBQztJQUVELGlCQUFpQjtRQUNiLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDO0lBQ3ZDLENBQUM7SUFFRCxNQUFNO1FBQ0YsT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLE9BQU87UUFDcEIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELGdCQUFnQixDQUFDLEdBQVcsRUFBRSxFQUFPLEVBQUUsRUFBUTtRQUMzQyxJQUFJLEdBQUcsS0FBSyxhQUFhLEVBQUU7WUFDdkIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNsRDthQUFNLElBQUksR0FBRyxLQUFLLFVBQVUsSUFBSSxHQUFHLEtBQUssVUFBVSxFQUFFO1lBQ2pELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDMUQ7YUFBTTtZQUNILEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0wsQ0FBQztJQUVELGFBQWEsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUU7UUFDckIsSUFBSSxHQUFHLEtBQUssUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDN0M7SUFDTCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsR0FBRyxFQUFFLEtBQU07UUFDOUIsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3JCLElBQUksR0FBRyxLQUFLLFFBQVEsRUFBRTtnQkFDbEIsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLG1CQUFtQixDQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQzthQUNuRjtpQkFBTSxJQUFJLEdBQUcsS0FBSyxhQUFhLEVBQUU7Z0JBQzlCLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDeEMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO2FBQ2xGO2lCQUFNO2dCQUNILGlKQUFpSjtnQkFDakosSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssTUFBTSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFO29CQUN4RixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDeEQsT0FBTyxPQUFPLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztpQkFDL0M7Z0JBQ0QsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDdEQ7U0FDSjthQUFNO1lBQ0gsTUFBTSxFQUFFLEdBQVEsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUMxQixFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNuQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUM5QixPQUFPO1NBQ1Y7SUFDTCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELElBQUk7UUFDQSxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7d0ZBN0pRLHVCQUF1QjtvRUFBdkIsdUJBQXVCLGlIQU5yQjtnQkFDUCxTQUFTLENBQUMsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDO2dCQUMzRCxrQkFBa0IsQ0FBQyx1QkFBdUIsQ0FBQzthQUM5QztZQ3RETCx5QkFBMEI7WUFDMUIsd0VBQTJFO1lBQzNFLDJCQUF5RDs7WUFEUCxlQUFpQjtZQUFqQixzQ0FBaUI7WUFDdkMsZUFBcUI7WUFBckIsdUNBQXFCOzs7dUZEdURwQyx1QkFBdUI7Y0FUbkMsU0FBUzsyQkFDSSx1QkFBdUIsYUFFdEI7b0JBQ1AsU0FBUywwQkFBMEIsaUJBQWlCLEVBQUUsSUFBSSxDQUFDO29CQUMzRCxrQkFBa0IseUJBQXlCO2lCQUM5QyxZQUNTLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3RvciwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwsIFNlY3VyaXR5Q29udGV4dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtzZXRBdHRyLCBzZXRDU1MsIHNldEh0bWx9IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7QVBQTFlfU1RZTEVTX1RZUEUsIHByb3ZpZGVBcywgcHJvdmlkZUFzV2lkZ2V0UmVmLCBTYW5pdGl6ZVBpcGUsIHN0eWxlcn0gZnJvbSAnQHdtL2NvbXBvbmVudHMvYmFzZSc7XG5pbXBvcnQgeyBCYXNlRm9ybUN1c3RvbUNvbXBvbmVudCB9IGZyb20gJ0B3bS9jb21wb25lbnRzL2lucHV0JztcblxuaW1wb3J0IHsgcmVnaXN0ZXJQcm9wcyB9IGZyb20gJy4vcmljaC10ZXh0LWVkaXRvci5wcm9wcyc7XG5cblxuY29uc3QgV0lER0VUX0lORk8gPSB7d2lkZ2V0VHlwZTogJ3dtLXJpY2h0ZXh0ZWRpdG9yJywgaG9zdENsYXNzOiAnYXBwLXJpY2h0ZXh0ZWRpdG9yIGNsZWFyZml4J307XG5cbmNvbnN0IGdldENoYW5nZUV2dCA9ICgpID0+IHtcbiAgICBsZXQgY2hhbmdlRXZ0O1xuICAgIC8vIGZvciBJRSB0aGUgZXZlbnQgY29uc3RydWN0b3IgZG9lc24ndCB3b3JrIHNvIHVzZSB0aGUgY3JlYXRlRXZlbnQgcHJvdG9cbiAgICBpZiAodHlwZW9mKEV2ZW50KSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBjaGFuZ2VFdnQgPSBuZXcgRXZlbnQoJ2NoYW5nZScpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGNoYW5nZUV2dCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdFdmVudCcpO1xuICAgICAgICBjaGFuZ2VFdnQuaW5pdEV2ZW50KCdjaGFuZ2UnLCB0cnVlLCB0cnVlKTtcbiAgICB9XG4gICAgcmV0dXJuIGNoYW5nZUV2dDtcbn07XG5cbmRlY2xhcmUgY29uc3QgXywgJDtcblxuY29uc3Qgb3ZlcnJpZGVTdW1tZXJOb3RlID0gKCkgPT4ge1xuICAgIGlmICghJC5zdW1tZXJub3RlLl9fb3ZlcmlkZGVuKSB7XG4gICAgICAgIC8vIG92ZXJyaWRlIHN1bW1lcm5vdGUgbWV0aG9kc1xuXG4gICAgICAgIGNvbnN0IG9yaWdGbiA9ICQuc3VtbWVybm90ZS51aV90ZW1wbGF0ZSgpLmJ1dHRvbi5iaW5kKCQuc3VtbWVybm90ZSk7XG5cbiAgICAgICAgJC5zdW1tZXJub3RlLnVpX3RlbXBsYXRlLmJ1dHRvbiA9ICguLi5hcmdzKSA9PiB7XG5cbiAgICAgICAgICAgIGNvbnN0IHJldFZhbCA9IG9yaWdGbiguLi5hcmdzKTtcbiAgICAgICAgICAgIGNvbnN0IG9yaWdDYWxsYmFjayA9IHJldFZhbC5jYWxsYmFjaztcblxuICAgICAgICAgICAgcmV0VmFsLmNhbGxiYWNrID0gKCRub2RlLCBvcHRpb25zKSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gYWRkIGJzMyBidG4gY2xhc3MgdG8gdGhlIGJ1dHRvbnNcbiAgICAgICAgICAgICAgICAkbm9kZS5hZGRDbGFzcygnYnRuJyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9yaWdDYWxsYmFjaygkbm9kZSwgb3B0aW9ucyk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgcmV0dXJuIHJldFZhbDtcbiAgICAgICAgfTtcbiAgICAgICAgJC5zdW1tZXJub3RlLl9fb3ZlcmlkZGVuID0gdHJ1ZTtcbiAgICB9XG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2Rpdlt3bVJpY2hUZXh0RWRpdG9yXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3JpY2gtdGV4dC1lZGl0b3IuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBwcm92aWRlQXMoUmljaFRleHRFZGl0b3JDb21wb25lbnQsIE5HX1ZBTFVFX0FDQ0VTU09SLCB0cnVlKSxcbiAgICAgICAgcHJvdmlkZUFzV2lkZ2V0UmVmKFJpY2hUZXh0RWRpdG9yQ29tcG9uZW50KVxuICAgIF0sXG4gICAgZXhwb3J0QXM6ICd3bVJpY2hUZXh0RWRpdG9yJ1xufSlcbmV4cG9ydCBjbGFzcyBSaWNoVGV4dEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEJhc2VGb3JtQ3VzdG9tQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIHN0YXRpYyBpbml0aWFsaXplUHJvcHMgPSByZWdpc3RlclByb3BzKCk7XG5cbiAgICAkcmljaFRleHRFZGl0b3I7XG4gICAgJGhpZGRlbklucHV0RWxlO1xuXG4gICAgcHJveHlNb2RlbDtcbiAgICBfb3BlcmF0aW9uU3RhY2sgPSBbXTtcbiAgICBpc0VkaXRvckxvYWRlZCA9IGZhbHNlO1xuXG4gICAgcHVibGljIHNob3dwcmV2aWV3OiBhbnk7XG4gICAgcHVibGljIGRpc2FibGVkOiBib29sZWFuO1xuXG4gICAgRURJVE9SX0RFRkFVTFRfT1BUSU9OUyA9IHtcbiAgICAgICAgdG9vbGJhcjogW1xuICAgICAgICAgICAgLy8gW2dyb3VwTmFtZSwgW2xpc3Qgb2YgYnV0dG9uXV1cbiAgICAgICAgICAgIFsnbWlzYycsIFsndW5kbycsICdyZWRvJ11dLFxuICAgICAgICAgICAgWydzdHlsZScsIFsnc3R5bGUnXV0sXG4gICAgICAgICAgICBbJ2ZvbnRuYW1lJywgWydmb250bmFtZSddXSxcbiAgICAgICAgICAgIFsnZm9udHNpemUnLCBbJ2ZvbnRzaXplJ11dLFxuICAgICAgICAgICAgWydoZWlnaHQnLCBbJ2hlaWdodCddXSxcbiAgICAgICAgICAgIFsnc3R5bGUnLCBbJ2JvbGQnLCAnaXRhbGljJywgJ3VuZGVybGluZScsICdjbGVhciddXSxcbiAgICAgICAgICAgIFsnZm9udCcsIFsnc3RyaWtldGhyb3VnaCcsICdzdXBlcnNjcmlwdCcsICdzdWJzY3JpcHQnXV0sXG4gICAgICAgICAgICBbJ2NvbG9yJywgWydjb2xvciddXSxcbiAgICAgICAgICAgIFsnaW5zZXJ0JywgWyd0YWJsZScsICdwaWN0dXJlJywgJ2xpbmsnLCAndmlkZW8nLCAnaHInXV0sXG4gICAgICAgICAgICBbJ3BhcmEnLCBbJ3VsJywgJ29sJywgJ3BhcmFncmFwaCddXSxcbiAgICAgICAgICAgIFsnbWlzYycsIFsnY29kZXZpZXcnLCAnZnVsbHNjcmVlbicsICdoZWxwJ11dXG4gICAgICAgIF0sXG4gICAgICAgIGNhbGxiYWNrczoge1xuICAgICAgICAgICAgb25Jbml0OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc0VkaXRvckxvYWRlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX29wZXJhdGlvblN0YWNrLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9vcGVyYXRpb25TdGFjay5mb3JFYWNoKG9wZXJhdGlvblBhcmFtID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGtleSA9IEFycmF5LmZyb20ob3BlcmF0aW9uUGFyYW0ua2V5cygpKVswXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWwgPSBvcGVyYXRpb25QYXJhbS5nZXQoa2V5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGVyZm9ybUVkaXRvck9wZXJhdGlvbihrZXksIHZhbCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9vcGVyYXRpb25TdGFjayA9IFtdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvbkNoYW5nZTogKGNvbnRlbnRzLCBlZGl0YWJsZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucHJveHlNb2RlbCA9IHRoaXMuc2FuaXRpemVQaXBlLnRyYW5zZm9ybShjb250ZW50cywgU2VjdXJpdHlDb250ZXh0LkhUTUwpO1xuICAgICAgICAgICAgICAgIHRoaXMuaW52b2tlT25DaGFuZ2UoY29udGVudHMsIGdldENoYW5nZUV2dCgpLCB0cnVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmludm9rZU9uVG91Y2hlZCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBmb250TmFtZXM6IFsnQXJpYWwnLCAnQXJpYWwgQmxhY2snLCAnQ29taWMgU2FucyBNUycsICdDb3VyaWVyIE5ldycsICdNZXJyaXdlYXRoZXInXSxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICd3cml0ZSBoZXJlLi4uJyxcbiAgICAgICAgbWluSGVpZ2h0OiAxMDAsXG4gICAgICAgIGRpc2FibGVSZXNpemVFZGl0b3I6IHRydWVcbiAgICB9O1xuXG4gICAgZ2V0IGh0bWxjb250ZW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wZXJmb3JtRWRpdG9yT3BlcmF0aW9uKCdjb2RlJyk7XG4gICAgfVxuXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGdldCBkYXRhdmFsdWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0bWxjb250ZW50O1xuICAgIH1cblxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBzZXQgZGF0YXZhbHVlKG52KSB7XG4gICAgICAgIGlmIChudiAhPT0gdW5kZWZpbmVkICYmIG52ICE9PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLiRoaWRkZW5JbnB1dEVsZS52YWwobnYpO1xuICAgICAgICAgICAgdGhpcy5wZXJmb3JtRWRpdG9yT3BlcmF0aW9uKCdyZXNldCcpO1xuICAgICAgICAgICAgdGhpcy5wZXJmb3JtRWRpdG9yT3BlcmF0aW9uKCdjb2RlJywgbnYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoaW5qOiBJbmplY3RvciwgcHJpdmF0ZSBzYW5pdGl6ZVBpcGU6IFNhbml0aXplUGlwZSwgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSkge1xuICAgICAgICBzdXBlcihpbmosIFdJREdFVF9JTkZPKTtcbiAgICAgICAgc3R5bGVyKHRoaXMubmF0aXZlRWxlbWVudCwgdGhpcywgQVBQTFlfU1RZTEVTX1RZUEUuQ09OVEFJTkVSLCBbJ2hlaWdodCddKTtcbiAgICAgICAgb3ZlcnJpZGVTdW1tZXJOb3RlKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuJHJpY2hUZXh0RWRpdG9yID0gJCh0aGlzLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignW3JpY2hUZXh0RWRpdG9yXScpKTtcbiAgICAgICAgdGhpcy4kaGlkZGVuSW5wdXRFbGUgPSAkKHRoaXMubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdpbnB1dC5tb2RlbC1ob2xkZXInKSk7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuaW5pdEVkaXRvcigpO1xuICAgIH1cblxuICAgIGluaXRFZGl0b3IoKSB7XG4gICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaW52b2tlRXZlbnRDYWxsYmFjaygnYmVmb3JlcmVuZGVyJywgeyckZXZlbnQnIDoge319KTtcbiAgICAgICAgICAgIHRoaXMuJHJpY2hUZXh0RWRpdG9yLnN1bW1lcm5vdGUodGhpcy5FRElUT1JfREVGQVVMVF9PUFRJT05TKTtcbiAgICAgICAgfSk7XG5cbiAgICB9XG5cbiAgICBnZXREZWZhdWx0T3B0aW9ucygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuRURJVE9SX0RFRkFVTFRfT1BUSU9OUztcbiAgICB9XG5cbiAgICBnZXRMaWIoKSB7XG4gICAgICAgIHJldHVybiAnc3VtbWVybm90ZSc7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGVEZWZhdWx0cyhvcHRpb25zKSB7XG4gICAgICAgIF8uZXh0ZW5kKHRoaXMuRURJVE9SX0RFRkFVTFRfT1BUSU9OUywgb3B0aW9ucyk7XG4gICAgfVxuXG4gICAgb25Qcm9wZXJ0eUNoYW5nZShrZXk6IHN0cmluZywgbnY6IGFueSwgb3Y/OiBhbnkpIHtcbiAgICAgICAgaWYgKGtleSA9PT0gJ3BsYWNlaG9sZGVyJykge1xuICAgICAgICAgICAgdGhpcy5wZXJmb3JtRWRpdG9yT3BlcmF0aW9uKCdwbGFjZWhvbGRlcicsIG52KTtcbiAgICAgICAgfSBlbHNlIGlmIChrZXkgPT09ICdkaXNhYmxlZCcgfHwga2V5ID09PSAncmVhZG9ubHknKSB7XG4gICAgICAgICAgICB0aGlzLnBlcmZvcm1FZGl0b3JPcGVyYXRpb24obnYgPyAnZGlzYWJsZScgOiAnZW5hYmxlJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdXBlci5vblByb3BlcnR5Q2hhbmdlKGtleSwgbnYsIG92KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uU3R5bGVDaGFuZ2Uoa2V5LCBudiwgb3YpIHtcbiAgICAgICAgaWYgKGtleSA9PT0gJ2hlaWdodCcpIHtcbiAgICAgICAgICAgIHRoaXMucGVyZm9ybUVkaXRvck9wZXJhdGlvbignaGVpZ2h0JywgbnYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcGVyZm9ybUVkaXRvck9wZXJhdGlvbihrZXksIHZhbHVlPykge1xuICAgICAgICBpZiAodGhpcy5pc0VkaXRvckxvYWRlZCkge1xuICAgICAgICAgICAgaWYgKGtleSA9PT0gJ2hlaWdodCcpIHtcbiAgICAgICAgICAgICAgICBzZXRDU1ModGhpcy5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2Rpdi5ub3RlLWVkaXRhYmxlJyksIGtleSwgdmFsdWUsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgPT09ICdwbGFjZWhvbGRlcicpIHtcbiAgICAgICAgICAgICAgICBzZXRBdHRyKHRoaXMubmF0aXZlRWxlbWVudCwga2V5LCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgc2V0SHRtbCh0aGlzLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignZGl2Lm5vdGUtcGxhY2Vob2xkZXInKSwgdmFsdWUsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBpZiBlZGl0b3IgY29udGVudCBpcyBlbXB0eSB0aGVuIHN1bW1lcm5vdGUoJ2NvZGUnKSBpcyByZXR1cm5pbmcgZW1wdHkgcCB0YWdzIGxpa2UgPHA+PC9icj48L3A+LiBTbyBjaGVja2luZyBmb3IgZW1wdHkgYW5kIHJldHVybmluZyB1bmRlZmluZWQuXG4gICAgICAgICAgICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEgJiYga2V5ID09PSAnY29kZScgJiYgdGhpcy4kcmljaFRleHRFZGl0b3Iuc3VtbWVybm90ZSgnaXNFbXB0eScpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLiRyaWNoVGV4dEVkaXRvci5zdW1tZXJub3RlKCdjb2RlJyk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjb250ZW50ID09PSAnJyA/IGNvbnRlbnQgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLiRyaWNoVGV4dEVkaXRvci5zdW1tZXJub3RlKGtleSwgdmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3Qgb3A6IGFueSA9IG5ldyBNYXAoKTtcbiAgICAgICAgICAgIG9wLnNldChrZXksIHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMuX29wZXJhdGlvblN0YWNrLnB1c2gob3ApO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0Q3VycmVudFBvc2l0aW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wZXJmb3JtRWRpdG9yT3BlcmF0aW9uKCdjcmVhdGVSYW5nZScpO1xuICAgIH1cblxuICAgIHVuZG8oKSB7XG4gICAgICAgIHRoaXMucGVyZm9ybUVkaXRvck9wZXJhdGlvbigndW5kbycpO1xuICAgIH1cblxuICAgIGZvY3VzKCkge1xuICAgICAgICB0aGlzLnBlcmZvcm1FZGl0b3JPcGVyYXRpb24oJ2ZvY3VzJyk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMucGVyZm9ybUVkaXRvck9wZXJhdGlvbignZGVzdHJveScpO1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIH1cbn1cbiIsIjxkaXYgcmljaFRleHRFZGl0b3I+PC9kaXY+XG48ZGl2IFtpbm5lckhUTUxdPVwicHJveHlNb2RlbFwiIGNsYXNzPVwidGEtcHJldmlld1wiICpuZ0lmPVwic2hvd3ByZXZpZXdcIj48L2Rpdj5cbjxpbnB1dCBjbGFzcz1cIm1vZGVsLWhvbGRlclwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIGhpZGRlbj5cbiJdfQ==
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/basic/rich-text-editor/src/rich-text-editor.props.ts","../../../../../projects/components/widgets/basic/rich-text-editor/src/rich-text-editor.component.html","../../../../../projects/components/widgets/basic/rich-text-editor/src/rich-text-editor.component.ts","../../../../../projects/components/widgets/basic/rich-text-editor/src/rich-text-editor.module.ts","../../../../../projects/components/widgets/basic/rich-text-editor/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget } from '@wm/components/base';\nimport { FormWidgetType } from '@wm/core';\n\nexport const richTextProps = new Map(\n [\n ['class', PROP_STRING],\n ['datavaluesource', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['height', PROP_STRING],\n ['hint', PROP_STRING],\n ['name', PROP_STRING],\n ['placeholder', PROP_STRING],\n ['readonly', PROP_BOOLEAN],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showpreview', {value: false, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}]\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-richtexteditor',\n richTextProps\n );\n registerFormWidget(\n FormWidgetType.RICHTEXT,\n new Map(richTextProps)\n );\n};\n","<div richTextEditor></div>\n<div [innerHTML]=\"proxyModel\" class=\"ta-preview\" *ngIf=\"showpreview\"></div>\n<input class=\"model-holder\" [disabled]=\"disabled\" hidden>\n","import {Component, Injector, NgZone, OnDestroy, OnInit, Optional, SecurityContext} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport {setAttr, setCSS, setHtml} from '@wm/core';\nimport {APPLY_STYLES_TYPE, provideAs, provideAsWidgetRef, SanitizePipe, styler} from '@wm/components/base';\nimport { BaseFormCustomComponent } from '@wm/components/input';\n\nimport { registerProps } from './rich-text-editor.props';\n\nconst WIDGET_INFO = {widgetType: 'wm-richtexteditor', hostClass: 'app-richtexteditor clearfix'};\n\nconst getChangeEvt = () => {\n let changeEvt;\n // for IE the event constructor doesn't work so use the createEvent proto\n if (typeof(Event) === 'function') {\n changeEvt = new Event('change');\n } else {\n changeEvt = document.createEvent('Event');\n changeEvt.initEvent('change', true, true);\n }\n return changeEvt;\n};\n\ndeclare const _, $;\n\nconst overrideSummerNote = () => {\n if (!$.summernote.__overidden) {\n // override summernote methods\n\n const origFn = $.summernote.ui_template().button.bind($.summernote);\n\n $.summernote.ui_template.button = (...args) => {\n\n const retVal = origFn(...args);\n const origCallback = retVal.callback;\n\n retVal.callback = ($node, options) => {\n // add bs3 btn class to the buttons\n $node.addClass('btn');\n return origCallback($node, options);\n };\n return retVal;\n };\n $.summernote.__overidden = true;\n }\n};\n\n@Component({\n selector: 'div[wmRichTextEditor]',\n templateUrl: './rich-text-editor.component.html',\n providers: [\n provideAs(RichTextEditorComponent, NG_VALUE_ACCESSOR, true),\n provideAsWidgetRef(RichTextEditorComponent)\n ],\n exportAs: 'wmRichTextEditor'\n})\nexport class RichTextEditorComponent extends BaseFormCustomComponent implements OnInit, OnDestroy {\n static initializeProps = registerProps();\n\n $richTextEditor;\n $hiddenInputEle;\n\n proxyModel;\n _operationStack = [];\n isEditorLoaded = false;\n\n public showpreview: any;\n public disabled: boolean;\n\n EDITOR_DEFAULT_OPTIONS = {\n toolbar: [\n // [groupName, [list of button]]\n ['misc', ['undo', 'redo']],\n ['style', ['style']],\n ['fontname', ['fontname']],\n ['fontsize', ['fontsize']],\n ['height', ['height']],\n ['style', ['bold', 'italic', 'underline', 'clear']],\n ['font', ['strikethrough', 'superscript', 'subscript']],\n ['color', ['color']],\n ['insert', ['table', 'picture', 'link', 'video', 'hr']],\n ['para', ['ul', 'ol', 'paragraph']],\n ['misc', ['codeview', 'fullscreen', 'help']]\n ],\n callbacks: {\n onInit: () => {\n this.isEditorLoaded = true;\n if (this._operationStack.length) {\n this._operationStack.forEach(operationParam => {\n const key = Array.from(operationParam.keys())[0],\n val = operationParam.get(key);\n this.performEditorOperation(key, val);\n });\n this._operationStack = [];\n }\n },\n onChange: (contents, editable) => {\n this.proxyModel = this.sanitizePipe.transform(contents, SecurityContext.HTML);\n this.invokeOnChange(contents, getChangeEvt(), true);\n this.invokeOnTouched();\n }\n },\n fontNames: ['Arial', 'Arial Black', 'Comic Sans MS', 'Courier New', 'Merriweather'],\n placeholder: 'write here...',\n minHeight: 100,\n disableResizeEditor: true\n };\n\n get htmlcontent() {\n return this.performEditorOperation('code');\n }\n\n // @ts-ignore\n get datavalue() {\n return this.htmlcontent;\n }\n\n // @ts-ignore\n set datavalue(nv) {\n if (nv !== undefined && nv !== null) {\n this.$hiddenInputEle.val(nv);\n this.performEditorOperation('reset');\n this.performEditorOperation('code', nv);\n }\n }\n\n constructor(inj: Injector, private sanitizePipe: SanitizePipe, private ngZone: NgZone) {\n super(inj, WIDGET_INFO);\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER, ['height']);\n overrideSummerNote();\n }\n\n ngOnInit() {\n this.$richTextEditor = $(this.nativeElement.querySelector('[richTextEditor]'));\n this.$hiddenInputEle = $(this.nativeElement.querySelector('input.model-holder'));\n super.ngOnInit();\n this.initEditor();\n }\n\n initEditor() {\n this.ngZone.runOutsideAngular(() => {\n this.invokeEventCallback('beforerender', {'$event' : {}});\n this.$richTextEditor.summernote(this.EDITOR_DEFAULT_OPTIONS);\n });\n\n }\n\n getDefaultOptions() {\n return this.EDITOR_DEFAULT_OPTIONS;\n }\n\n getLib() {\n return 'summernote';\n }\n\n overrideDefaults(options) {\n _.extend(this.EDITOR_DEFAULT_OPTIONS, options);\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'placeholder') {\n this.performEditorOperation('placeholder', nv);\n } else if (key === 'disabled' || key === 'readonly') {\n this.performEditorOperation(nv ? 'disable' : 'enable');\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n onStyleChange(key, nv, ov) {\n if (key === 'height') {\n this.performEditorOperation('height', nv);\n }\n }\n\n performEditorOperation(key, value?) {\n if (this.isEditorLoaded) {\n if (key === 'height') {\n setCSS(this.nativeElement.querySelector('div.note-editable'), key, value, true);\n } else if (key === 'placeholder') {\n setAttr(this.nativeElement, key, value);\n setHtml(this.nativeElement.querySelector('div.note-placeholder'), value, true);\n } else {\n // if editor content is empty then summernote('code') is returning empty p tags like <p></br></p>. So checking for empty and returning undefined.\n if (arguments.length === 1 && key === 'code' && this.$richTextEditor.summernote('isEmpty')) {\n const content = this.$richTextEditor.summernote('code');\n return content === '' ? content : undefined;\n }\n return this.$richTextEditor.summernote(key, value);\n }\n } else {\n const op: any = new Map();\n op.set(key, value);\n this._operationStack.push(op);\n return;\n }\n }\n\n getCurrentPosition() {\n return this.performEditorOperation('createRange');\n }\n\n undo() {\n this.performEditorOperation('undo');\n }\n\n focus() {\n this.performEditorOperation('focus');\n }\n\n ngOnDestroy() {\n this.performEditorOperation('destroy');\n super.ngOnDestroy();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { RichTextEditorComponent } from './rich-text-editor.component';\n\nconst components = [\n RichTextEditorComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class RichTextEditorModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/basic/rich-text-editor/src/rich-text-editor.props.ts","../../../../../projects/components/widgets/basic/rich-text-editor/src/rich-text-editor.component.html","../../../../../projects/components/widgets/basic/rich-text-editor/src/rich-text-editor.component.ts","../../../../../projects/components/widgets/basic/rich-text-editor/src/rich-text-editor.module.ts","../../../../../projects/components/widgets/basic/rich-text-editor/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget } from '@wm/components/base';\nimport { FormWidgetType } from '@wm/core';\n\nexport const richTextProps = new Map(\n [\n ['class', PROP_STRING],\n ['datavaluesource', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['height', PROP_STRING],\n ['hint', PROP_STRING],\n ['name', PROP_STRING],\n ['placeholder', PROP_STRING],\n ['readonly', PROP_BOOLEAN],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showpreview', {value: false, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}]\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-richtexteditor',\n richTextProps\n );\n registerFormWidget(\n FormWidgetType.RICHTEXT,\n new Map(richTextProps)\n );\n};\n","<div richTextEditor></div>\n<div [innerHTML]=\"proxyModel\" class=\"ta-preview\" *ngIf=\"showpreview\"></div>\n<input class=\"model-holder\" [disabled]=\"disabled\" hidden>\n","import {Component, Injector, NgZone, OnDestroy, OnInit, Optional, SecurityContext} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport {setAttr, setCSS, setHtml} from '@wm/core';\nimport {APPLY_STYLES_TYPE, provideAs, provideAsWidgetRef, SanitizePipe, styler} from '@wm/components/base';\nimport { BaseFormCustomComponent } from '@wm/components/input';\n\nimport { registerProps } from './rich-text-editor.props';\n\n\nconst WIDGET_INFO = {widgetType: 'wm-richtexteditor', hostClass: 'app-richtexteditor clearfix'};\n\nconst getChangeEvt = () => {\n let changeEvt;\n // for IE the event constructor doesn't work so use the createEvent proto\n if (typeof(Event) === 'function') {\n changeEvt = new Event('change');\n } else {\n changeEvt = document.createEvent('Event');\n changeEvt.initEvent('change', true, true);\n }\n return changeEvt;\n};\n\ndeclare const _, $;\n\nconst overrideSummerNote = () => {\n if (!$.summernote.__overidden) {\n // override summernote methods\n\n const origFn = $.summernote.ui_template().button.bind($.summernote);\n\n $.summernote.ui_template.button = (...args) => {\n\n const retVal = origFn(...args);\n const origCallback = retVal.callback;\n\n retVal.callback = ($node, options) => {\n // add bs3 btn class to the buttons\n $node.addClass('btn');\n return origCallback($node, options);\n };\n return retVal;\n };\n $.summernote.__overidden = true;\n }\n};\n\n@Component({\n selector: 'div[wmRichTextEditor]',\n templateUrl: './rich-text-editor.component.html',\n providers: [\n provideAs(RichTextEditorComponent, NG_VALUE_ACCESSOR, true),\n provideAsWidgetRef(RichTextEditorComponent)\n ],\n exportAs: 'wmRichTextEditor'\n})\nexport class RichTextEditorComponent extends BaseFormCustomComponent implements OnInit, OnDestroy {\n static initializeProps = registerProps();\n\n $richTextEditor;\n $hiddenInputEle;\n\n proxyModel;\n _operationStack = [];\n isEditorLoaded = false;\n\n public showpreview: any;\n public disabled: boolean;\n\n EDITOR_DEFAULT_OPTIONS = {\n toolbar: [\n // [groupName, [list of button]]\n ['misc', ['undo', 'redo']],\n ['style', ['style']],\n ['fontname', ['fontname']],\n ['fontsize', ['fontsize']],\n ['height', ['height']],\n ['style', ['bold', 'italic', 'underline', 'clear']],\n ['font', ['strikethrough', 'superscript', 'subscript']],\n ['color', ['color']],\n ['insert', ['table', 'picture', 'link', 'video', 'hr']],\n ['para', ['ul', 'ol', 'paragraph']],\n ['misc', ['codeview', 'fullscreen', 'help']]\n ],\n callbacks: {\n onInit: () => {\n this.isEditorLoaded = true;\n if (this._operationStack.length) {\n this._operationStack.forEach(operationParam => {\n const key = Array.from(operationParam.keys())[0],\n val = operationParam.get(key);\n this.performEditorOperation(key, val);\n });\n this._operationStack = [];\n }\n },\n onChange: (contents, editable) => {\n this.proxyModel = this.sanitizePipe.transform(contents, SecurityContext.HTML);\n this.invokeOnChange(contents, getChangeEvt(), true);\n this.invokeOnTouched();\n }\n },\n fontNames: ['Arial', 'Arial Black', 'Comic Sans MS', 'Courier New', 'Merriweather'],\n placeholder: 'write here...',\n minHeight: 100,\n disableResizeEditor: true\n };\n\n get htmlcontent() {\n return this.performEditorOperation('code');\n }\n\n // @ts-ignore\n get datavalue() {\n return this.htmlcontent;\n }\n\n // @ts-ignore\n set datavalue(nv) {\n if (nv !== undefined && nv !== null) {\n this.$hiddenInputEle.val(nv);\n this.performEditorOperation('reset');\n this.performEditorOperation('code', nv);\n }\n }\n\n constructor(inj: Injector, private sanitizePipe: SanitizePipe, private ngZone: NgZone) {\n super(inj, WIDGET_INFO);\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER, ['height']);\n overrideSummerNote();\n }\n\n ngOnInit() {\n this.$richTextEditor = $(this.nativeElement.querySelector('[richTextEditor]'));\n this.$hiddenInputEle = $(this.nativeElement.querySelector('input.model-holder'));\n super.ngOnInit();\n this.initEditor();\n }\n\n initEditor() {\n this.ngZone.runOutsideAngular(() => {\n this.invokeEventCallback('beforerender', {'$event' : {}});\n this.$richTextEditor.summernote(this.EDITOR_DEFAULT_OPTIONS);\n });\n\n }\n\n getDefaultOptions() {\n return this.EDITOR_DEFAULT_OPTIONS;\n }\n\n getLib() {\n return 'summernote';\n }\n\n overrideDefaults(options) {\n _.extend(this.EDITOR_DEFAULT_OPTIONS, options);\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'placeholder') {\n this.performEditorOperation('placeholder', nv);\n } else if (key === 'disabled' || key === 'readonly') {\n this.performEditorOperation(nv ? 'disable' : 'enable');\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n onStyleChange(key, nv, ov) {\n if (key === 'height') {\n this.performEditorOperation('height', nv);\n }\n }\n\n performEditorOperation(key, value?) {\n if (this.isEditorLoaded) {\n if (key === 'height') {\n setCSS(this.nativeElement.querySelector('div.note-editable'), key, value, true);\n } else if (key === 'placeholder') {\n setAttr(this.nativeElement, key, value);\n setHtml(this.nativeElement.querySelector('div.note-placeholder'), value, true);\n } else {\n // if editor content is empty then summernote('code') is returning empty p tags like <p></br></p>. So checking for empty and returning undefined.\n if (arguments.length === 1 && key === 'code' && this.$richTextEditor.summernote('isEmpty')) {\n const content = this.$richTextEditor.summernote('code');\n return content === '' ? content : undefined;\n }\n return this.$richTextEditor.summernote(key, value);\n }\n } else {\n const op: any = new Map();\n op.set(key, value);\n this._operationStack.push(op);\n return;\n }\n }\n\n getCurrentPosition() {\n return this.performEditorOperation('createRange');\n }\n\n undo() {\n this.performEditorOperation('undo');\n }\n\n focus() {\n this.performEditorOperation('focus');\n }\n\n ngOnDestroy() {\n this.performEditorOperation('destroy');\n super.ngOnDestroy();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { RichTextEditorComponent } from './rich-text-editor.component';\n\nconst components = [\n RichTextEditorComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class RichTextEditorModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}