ca-components 1.0.2 → 1.0.4

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 (42) hide show
  1. package/esm2022/lib/ca-components.module.mjs +12 -6
  2. package/esm2022/lib/components/ca-dots-menu/ca-dots-menu.component.mjs +33 -0
  3. package/esm2022/lib/components/ca-dropdown/ca-dropdown.component.mjs +3 -3
  4. package/esm2022/lib/components/ca-filters/ca-filter.component.mjs +16 -62
  5. package/esm2022/lib/components/ca-input/components/ca-input-placeholder-icon/ca-input-placeholder-icon.component.mjs +3 -3
  6. package/esm2022/lib/components/ca-logo-change/ca-logo-change.component.mjs +3 -3
  7. package/esm2022/lib/components/ca-map/ca-map.component.mjs +270 -187
  8. package/esm2022/lib/components/ca-map/models/map.model.mjs +1 -1
  9. package/esm2022/lib/components/ca-map/utils/constants/map-info-window-options.constants.mjs +2 -2
  10. package/esm2022/lib/components/ca-map/utils/constants/map-options.constants.mjs +15 -1
  11. package/esm2022/lib/components/ca-map-dropdown/ca-map-dropdown.component.mjs +43 -14
  12. package/esm2022/lib/components/ca-map-dropdown/models/index.mjs +2 -0
  13. package/esm2022/lib/components/ca-map-dropdown/models/map-dropdown-content.model.mjs +2 -0
  14. package/esm2022/lib/components/ca-map-dropdown/pipes/index.mjs +3 -0
  15. package/esm2022/lib/components/ca-map-dropdown/pipes/map-dropdown-cluster-content-type.pipe.mjs +19 -0
  16. package/esm2022/lib/components/ca-map-dropdown/pipes/map-dropdown-content-type.pipe.mjs +19 -0
  17. package/esm2022/lib/components/ca-map-dropdown/utils/svg-routes/map-dropdown-svg-routes.mjs +4 -1
  18. package/esm2022/lib/components/ca-period-content/components/ca-period-content-extra-info/ca-period-content-extra-info.component.mjs +3 -3
  19. package/esm2022/lib/components/ca-period-content/components/ca-period-content-payment/ca-period-content-payment.component.mjs +8 -4
  20. package/esm2022/lib/components/ca-progress-bar/ca-progress-bar.component.mjs +1 -1
  21. package/esm2022/public-api.mjs +2 -1
  22. package/fesm2022/ca-components.mjs +422 -277
  23. package/fesm2022/ca-components.mjs.map +1 -1
  24. package/lib/ca-components.module.d.ts +2 -1
  25. package/lib/components/ca-dots-menu/ca-dots-menu.component.d.ts +12 -0
  26. package/lib/components/ca-filters/ca-filter.component.d.ts +1 -5
  27. package/lib/components/ca-map/ca-map.component.d.ts +48 -16
  28. package/lib/components/ca-map/models/map.model.d.ts +15 -3
  29. package/lib/components/ca-map/utils/constants/map-options.constants.d.ts +18 -0
  30. package/lib/components/ca-map-dropdown/ca-map-dropdown.component.d.ts +13 -6
  31. package/lib/components/ca-map-dropdown/models/index.d.ts +1 -0
  32. package/lib/components/ca-map-dropdown/models/map-dropdown-content.model.d.ts +28 -0
  33. package/lib/components/ca-map-dropdown/pipes/index.d.ts +2 -0
  34. package/lib/components/ca-map-dropdown/pipes/map-dropdown-cluster-content-type.pipe.d.ts +8 -0
  35. package/lib/components/ca-map-dropdown/pipes/map-dropdown-content-type.pipe.d.ts +8 -0
  36. package/lib/components/ca-map-dropdown/utils/svg-routes/map-dropdown-svg-routes.d.ts +3 -0
  37. package/package.json +1 -1
  38. package/public-api.d.ts +1 -0
  39. package/src/assets/ca-components/svg/map/ic_date_checked.svg +1 -0
  40. package/src/assets/ca-components/svg/map/ic_date_deactivated.svg +3 -0
  41. package/src/assets/ca-components/svg/map/ic_favorite.svg +3 -0
  42. package/src/assets/ca-components/svg/map/ic_permanently_closed.svg +4 -0
@@ -36,7 +36,7 @@ export class CaInputPlaceholderIconComponent {
36
36
  this.onPlaceholderIconEventEmitter.emit(event);
37
37
  }
38
38
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaInputPlaceholderIconComponent, deps: [{ token: i1.InputStateService }], target: i0.ɵɵFactoryTarget.Component }); }
39
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CaInputPlaceholderIconComponent, isStandalone: true, selector: "app-ca-input-placeholder-icon", inputs: { inputConfig: "inputConfig", getSuperControl: "getSuperControl", isFocusInput: "isFocusInput", isTouchedInput: "isTouchedInput", selectedDropdownLabelColor: "selectedDropdownLabelColor", isEditInput: "isEditInput", dateTimePopover: "dateTimePopover" }, outputs: { onPopoverShownEmitter: "onPopoverShownEmitter", onPopoverHiddenEmitter: "onPopoverHiddenEmitter", onPlaceholderIconEventEmitter: "onPlaceholderIconEventEmitter" }, viewQueries: [{ propertyName: "t2", first: true, predicate: ["t2"], descendants: true }, { propertyName: "ngbMainPopover", first: true, predicate: NgbPopover, descendants: true }], ngImport: i0, template: "<div\n #t2=\"ngbPopover\"\n [ngbPopover]=\"dateTimePopover\"\n [disablePopover]=\"\n (inputConfig.name !== 'datepicker' &&\n inputConfig.name !== 'timepicker' &&\n inputConfig.name !== 'datepickerBankCard') ||\n inputConfig.isDisabled!\n \"\n [placement]=\"['left', 'left-top']\"\n [popoverClass]=\"'datetimepopovermain'\"\n autoClose=\"outside\"\n [container]=\"'body'\"\n class=\"input-icon {{ inputConfig.customClass }}\"\n [ngClass]=\"\n getSuperControl\n | inputPlaceholderIconClass\n : isFocusInput\n : inputConfig\n : selectedDropdownLabelColor\n : isTouchedInput\n : isEditInput\n : getSuperControl?.value\n \"\n ngbTooltip\n [mainCaTooltip]=\"'Change Color'\"\n [tooltipBackground]=\"'#424242'\"\n [disableTooltip]=\"!isEditInput\"\n position=\"bottom\"\n (shown)=\"onPopoverShown()\"\n (hidden)=\"onPopoverHidden()\"\n (click)=\"onPlaceholderIconEvent($event)\"\n [ngStyle]=\"{ opacity: inputConfig.isIconHidden ? '0' : {} }\"\n>\n <svg-icon\n appHoverSvg\n [stretch]=\"true\"\n [fill]=\"\n inputConfig.dropdownLabel || selectedDropdownLabelColor\n ? selectedDropdownLabelColor?.code || '#b7b7b7'\n : null\n \"\n [fillHover]=\"\n (inputConfig.dropdownLabel || selectedDropdownLabelColor) &&\n isEditInput\n ? selectedDropdownLabelColor?.hoverCode || null\n : null\n \"\n [src]=\"(inputConfig.placeholderIcon! | caSvg: 'input') ?? ''\"\n ></svg-icon>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type:
39
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CaInputPlaceholderIconComponent, isStandalone: true, selector: "app-ca-input-placeholder-icon", inputs: { inputConfig: "inputConfig", getSuperControl: "getSuperControl", isFocusInput: "isFocusInput", isTouchedInput: "isTouchedInput", selectedDropdownLabelColor: "selectedDropdownLabelColor", isEditInput: "isEditInput", dateTimePopover: "dateTimePopover" }, outputs: { onPopoverShownEmitter: "onPopoverShownEmitter", onPopoverHiddenEmitter: "onPopoverHiddenEmitter", onPlaceholderIconEventEmitter: "onPlaceholderIconEventEmitter" }, viewQueries: [{ propertyName: "t2", first: true, predicate: ["t2"], descendants: true }, { propertyName: "ngbMainPopover", first: true, predicate: NgbPopover, descendants: true }], ngImport: i0, template: "<div\n #t2=\"ngbPopover\"\n [ngbPopover]=\"dateTimePopover\"\n [disablePopover]=\"\n (inputConfig.name !== 'datepicker' &&\n inputConfig.name !== 'timepicker' &&\n inputConfig.name !== 'datepickerBankCard') ||\n inputConfig.isDisabled!\n \"\n [placement]=\"['left', 'left-top']\"\n [popoverClass]=\"'datetimepopovermain'\"\n autoClose=\"outside\"\n [container]=\"'body'\"\n class=\"input-icon {{ inputConfig.customClass }}\"\n [ngClass]=\"\n getSuperControl\n | inputPlaceholderIconClass\n : isFocusInput\n : inputConfig\n : selectedDropdownLabelColor\n : isTouchedInput\n : isEditInput\n : getSuperControl?.value\n \"\n ngbTooltip\n [mainCaTooltip]=\"'Change Color'\"\n [tooltipBackground]=\"'#424242'\"\n [disableTooltip]=\"!isEditInput\"\n position=\"bottom\"\n (shown)=\"onPopoverShown()\"\n (hidden)=\"onPopoverHidden()\"\n (click)=\"onPlaceholderIconEvent($event)\"\n [ngStyle]=\"{ opacity: inputConfig.isIconHidden ? '0' : {} }\"\n>\n <svg-icon\n appHoverSvg\n [stretch]=\"true\"\n [fill]=\"\n inputConfig.dropdownLabel || selectedDropdownLabelColor\n ? selectedDropdownLabelColor?.code || '#b7b7b7'\n : null\n \"\n [fillHover]=\"\n (inputConfig.dropdownLabel || selectedDropdownLabelColor) && isEditInput\n ? selectedDropdownLabelColor?.hoverCode || null\n : null\n \"\n [src]=\"(inputConfig.placeholderIcon! | caSvg: 'input') ?? ''\"\n ></svg-icon>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type:
40
40
  // modules
41
41
  CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "component", type: i3.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "ngmodule", type: NgbModule }, { kind: "directive", type: i4.NgbPopover, selector: "[ngbPopover]", inputs: ["animation", "autoClose", "ngbPopover", "popoverTitle", "placement", "popperOptions", "triggers", "positionTarget", "container", "disablePopover", "popoverClass", "popoverContext", "openDelay", "closeDelay"], outputs: ["shown", "hidden"], exportAs: ["ngbPopover"] }, { kind: "directive", type: i4.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "component", type:
42
42
  // components
@@ -60,7 +60,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
60
60
  CaSvgPipe,
61
61
  // directive
62
62
  HoverSvgDirective
63
- ], template: "<div\n #t2=\"ngbPopover\"\n [ngbPopover]=\"dateTimePopover\"\n [disablePopover]=\"\n (inputConfig.name !== 'datepicker' &&\n inputConfig.name !== 'timepicker' &&\n inputConfig.name !== 'datepickerBankCard') ||\n inputConfig.isDisabled!\n \"\n [placement]=\"['left', 'left-top']\"\n [popoverClass]=\"'datetimepopovermain'\"\n autoClose=\"outside\"\n [container]=\"'body'\"\n class=\"input-icon {{ inputConfig.customClass }}\"\n [ngClass]=\"\n getSuperControl\n | inputPlaceholderIconClass\n : isFocusInput\n : inputConfig\n : selectedDropdownLabelColor\n : isTouchedInput\n : isEditInput\n : getSuperControl?.value\n \"\n ngbTooltip\n [mainCaTooltip]=\"'Change Color'\"\n [tooltipBackground]=\"'#424242'\"\n [disableTooltip]=\"!isEditInput\"\n position=\"bottom\"\n (shown)=\"onPopoverShown()\"\n (hidden)=\"onPopoverHidden()\"\n (click)=\"onPlaceholderIconEvent($event)\"\n [ngStyle]=\"{ opacity: inputConfig.isIconHidden ? '0' : {} }\"\n>\n <svg-icon\n appHoverSvg\n [stretch]=\"true\"\n [fill]=\"\n inputConfig.dropdownLabel || selectedDropdownLabelColor\n ? selectedDropdownLabelColor?.code || '#b7b7b7'\n : null\n \"\n [fillHover]=\"\n (inputConfig.dropdownLabel || selectedDropdownLabelColor) &&\n isEditInput\n ? selectedDropdownLabelColor?.hoverCode || null\n : null\n \"\n [src]=\"(inputConfig.placeholderIcon! | caSvg: 'input') ?? ''\"\n ></svg-icon>\n</div>\n" }]
63
+ ], template: "<div\n #t2=\"ngbPopover\"\n [ngbPopover]=\"dateTimePopover\"\n [disablePopover]=\"\n (inputConfig.name !== 'datepicker' &&\n inputConfig.name !== 'timepicker' &&\n inputConfig.name !== 'datepickerBankCard') ||\n inputConfig.isDisabled!\n \"\n [placement]=\"['left', 'left-top']\"\n [popoverClass]=\"'datetimepopovermain'\"\n autoClose=\"outside\"\n [container]=\"'body'\"\n class=\"input-icon {{ inputConfig.customClass }}\"\n [ngClass]=\"\n getSuperControl\n | inputPlaceholderIconClass\n : isFocusInput\n : inputConfig\n : selectedDropdownLabelColor\n : isTouchedInput\n : isEditInput\n : getSuperControl?.value\n \"\n ngbTooltip\n [mainCaTooltip]=\"'Change Color'\"\n [tooltipBackground]=\"'#424242'\"\n [disableTooltip]=\"!isEditInput\"\n position=\"bottom\"\n (shown)=\"onPopoverShown()\"\n (hidden)=\"onPopoverHidden()\"\n (click)=\"onPlaceholderIconEvent($event)\"\n [ngStyle]=\"{ opacity: inputConfig.isIconHidden ? '0' : {} }\"\n>\n <svg-icon\n appHoverSvg\n [stretch]=\"true\"\n [fill]=\"\n inputConfig.dropdownLabel || selectedDropdownLabelColor\n ? selectedDropdownLabelColor?.code || '#b7b7b7'\n : null\n \"\n [fillHover]=\"\n (inputConfig.dropdownLabel || selectedDropdownLabelColor) && isEditInput\n ? selectedDropdownLabelColor?.hoverCode || null\n : null\n \"\n [src]=\"(inputConfig.placeholderIcon! | caSvg: 'input') ?? ''\"\n ></svg-icon>\n</div>\n" }]
64
64
  }], ctorParameters: function () { return [{ type: i1.InputStateService }]; }, propDecorators: { inputConfig: [{
65
65
  type: Input
66
66
  }], getSuperControl: [{
@@ -88,4 +88,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
88
88
  type: ViewChild,
89
89
  args: [NgbPopover]
90
90
  }] } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtaW5wdXQtcGxhY2Vob2xkZXItaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1pbnB1dC9jb21wb25lbnRzL2NhLWlucHV0LXBsYWNlaG9sZGVyLWljb24vY2EtaW5wdXQtcGxhY2Vob2xkZXItaWNvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1pbnB1dC9jb21wb25lbnRzL2NhLWlucHV0LXBsYWNlaG9sZGVyLWljb24vY2EtaW5wdXQtcGxhY2Vob2xkZXItaWNvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFPdkIsVUFBVTtBQUNWLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFbkUsYUFBYTtBQUNiLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRWpHLFFBQVE7QUFDUixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSzVELFlBQVk7QUFDWixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7O0FBd0JoRixNQUFNLE9BQU8sK0JBQStCO0lBZ0IxQyxZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVA5QywwQkFBcUIsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQ3BELDJCQUFzQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFDckQsa0NBQTZCLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztJQUtULENBQUM7SUFFNUQsUUFBUSxLQUFJLENBQUM7SUFFYixlQUFlO1FBQ2IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTSxjQUFjO1FBQ25CLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU0sc0JBQXNCLENBQUMsS0FBWTtRQUN4QyxJQUFJLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pELENBQUM7K0dBbENVLCtCQUErQjttR0FBL0IsK0JBQStCLHlvQkFjL0IsVUFBVSxnREN0RXZCLG0vQ0FtREE7Z0JEWEksVUFBVTtnQkFDVixZQUFZLGlOQUNaLG9CQUFvQixnT0FDcEIsU0FBUztnQkFFVCxhQUFhO2dCQUNiLHVCQUF1QjtnQkFFdkIsUUFBUTtnQkFDUiw2QkFBNkIsNkRBQzdCLFNBQVM7Z0JBRVQsWUFBWTtnQkFDWixpQkFBaUI7OzRGQUdSLCtCQUErQjtrQkF0QjNDLFNBQVM7K0JBQ0UsK0JBQStCLGNBRzdCLElBQUksV0FDUDt3QkFDUCxVQUFVO3dCQUNWLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixTQUFTO3dCQUVULGFBQWE7d0JBQ2IsdUJBQXVCO3dCQUV2QixRQUFRO3dCQUNSLDZCQUE2Qjt3QkFDN0IsU0FBUzt3QkFFVCxZQUFZO3dCQUNaLGlCQUFpQjtxQkFDbEI7d0dBR1EsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRywwQkFBMEI7c0JBQWxDLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVJLHFCQUFxQjtzQkFBOUIsTUFBTTtnQkFDRyxzQkFBc0I7c0JBQS9CLE1BQU07Z0JBQ0csNkJBQTZCO3NCQUF0QyxNQUFNO2dCQUVVLEVBQUU7c0JBQWxCLFNBQVM7dUJBQUMsSUFBSTtnQkFDUSxjQUFjO3NCQUFwQyxTQUFTO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgSUNhSW5wdXQgfSBmcm9tICcuLi8uLi9jb25maWcvY2EtaW5wdXQuY29uZmlnJztcbmltcG9ydCB7IExhYmVsQ29sb3IgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGFiZWwtY29sb3IubW9kZWwnO1xuXG4vLyBtb2R1bGVzXG5pbXBvcnQgeyBBbmd1bGFyU3ZnSWNvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuaW1wb3J0IHsgTmdiTW9kdWxlLCBOZ2JQb3BvdmVyIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuXG4vLyBjb21wb25lbnRzXG5pbXBvcnQgeyBDYUFwcFRvb2x0aXBWMkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NhLWFwcC10b29sdGlwLXYyL2NhLWFwcC10b29sdGlwLXYyLmNvbXBvbmVudCc7XG5cbi8vIHBpcGVzXG5pbXBvcnQgeyBDYVN2Z1BpcGUgfSBmcm9tICcuLi8uLi8uLi8uLi9waXBlcy9jYS1zdmcucGlwZSc7XG5pbXBvcnQgeyBJbnB1dFBsYWNlaG9sZGVySWNvbkNsYXNzUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzJztcblxuLy8gc2VydmljZXNcbmltcG9ydCB7IElucHV0U3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG4vLyBkaXJlY3RpdmVcbmltcG9ydCB7IEhvdmVyU3ZnRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGlyZWN0aXZlcy9ob3Zlci1zdmctZGlyZWN0aXZlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1jYS1pbnB1dC1wbGFjZWhvbGRlci1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhLWlucHV0LXBsYWNlaG9sZGVyLWljb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYS1pbnB1dC1wbGFjZWhvbGRlci1pY29uLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICAvLyBtb2R1bGVzXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEFuZ3VsYXJTdmdJY29uTW9kdWxlLFxuICAgIE5nYk1vZHVsZSxcblxuICAgIC8vIGNvbXBvbmVudHNcbiAgICBDYUFwcFRvb2x0aXBWMkNvbXBvbmVudCxcblxuICAgIC8vIHBpcGVzXG4gICAgSW5wdXRQbGFjZWhvbGRlckljb25DbGFzc1BpcGUsXG4gICAgQ2FTdmdQaXBlLFxuXG4gICAgLy8gZGlyZWN0aXZlXG4gICAgSG92ZXJTdmdEaXJlY3RpdmVcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FJbnB1dFBsYWNlaG9sZGVySWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIGlucHV0Q29uZmlnITogSUNhSW5wdXQ7XG4gIEBJbnB1dCgpIGdldFN1cGVyQ29udHJvbCE6IEFic3RyYWN0Q29udHJvbDxhbnksIGFueT4gfCBudWxsO1xuICBASW5wdXQoKSBpc0ZvY3VzSW5wdXQhOiBib29sZWFuO1xuICBASW5wdXQoKSBpc1RvdWNoZWRJbnB1dCE6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNlbGVjdGVkRHJvcGRvd25MYWJlbENvbG9yITogTGFiZWxDb2xvciB8IG51bGw7XG4gIEBJbnB1dCgpIGlzRWRpdElucHV0ITogYm9vbGVhbjtcbiAgQElucHV0KCkgZGF0ZVRpbWVQb3BvdmVyITogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAT3V0cHV0KCkgb25Qb3BvdmVyU2hvd25FbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCkgb25Qb3BvdmVySGlkZGVuRW1pdHRlciA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQE91dHB1dCgpIG9uUGxhY2Vob2xkZXJJY29uRXZlbnRFbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcblxuICBAVmlld0NoaWxkKCd0MicpIHQyITogTmdiUG9wb3ZlcjtcbiAgQFZpZXdDaGlsZChOZ2JQb3BvdmVyKSBuZ2JNYWluUG9wb3ZlciE6IE5nYlBvcG92ZXI7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbnB1dFN0YXRlU2VydmljZTogSW5wdXRTdGF0ZVNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlucHV0U3RhdGVTZXJ2aWNlLnNldFZpZXdDaGlsZHNQb3BvdmVyKHRoaXMudDIsIHRoaXMubmdiTWFpblBvcG92ZXIpO1xuICB9XG5cbiAgcHVibGljIG9uUG9wb3ZlclNob3duKCk6IHZvaWQge1xuICAgIHRoaXMub25Qb3BvdmVyU2hvd25FbWl0dGVyLmVtaXQodHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgb25Qb3BvdmVySGlkZGVuKCk6IHZvaWQge1xuICAgIHRoaXMub25Qb3BvdmVySGlkZGVuRW1pdHRlci5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9uUGxhY2Vob2xkZXJJY29uRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5vblBsYWNlaG9sZGVySWNvbkV2ZW50RW1pdHRlci5lbWl0KGV2ZW50KTtcbiAgfVxufVxuIiwiPGRpdlxuICAjdDI9XCJuZ2JQb3BvdmVyXCJcbiAgW25nYlBvcG92ZXJdPVwiZGF0ZVRpbWVQb3BvdmVyXCJcbiAgW2Rpc2FibGVQb3BvdmVyXT1cIlxuICAgIChpbnB1dENvbmZpZy5uYW1lICE9PSAnZGF0ZXBpY2tlcicgJiZcbiAgICAgIGlucHV0Q29uZmlnLm5hbWUgIT09ICd0aW1lcGlja2VyJyAmJlxuICAgICAgaW5wdXRDb25maWcubmFtZSAhPT0gJ2RhdGVwaWNrZXJCYW5rQ2FyZCcpIHx8XG4gICAgaW5wdXRDb25maWcuaXNEaXNhYmxlZCFcbiAgXCJcbiAgW3BsYWNlbWVudF09XCJbJ2xlZnQnLCAnbGVmdC10b3AnXVwiXG4gIFtwb3BvdmVyQ2xhc3NdPVwiJ2RhdGV0aW1lcG9wb3Zlcm1haW4nXCJcbiAgYXV0b0Nsb3NlPVwib3V0c2lkZVwiXG4gIFtjb250YWluZXJdPVwiJ2JvZHknXCJcbiAgY2xhc3M9XCJpbnB1dC1pY29uIHt7IGlucHV0Q29uZmlnLmN1c3RvbUNsYXNzIH19XCJcbiAgW25nQ2xhc3NdPVwiXG4gICAgZ2V0U3VwZXJDb250cm9sXG4gICAgICB8IGlucHV0UGxhY2Vob2xkZXJJY29uQ2xhc3NcbiAgICAgICAgOiBpc0ZvY3VzSW5wdXRcbiAgICAgICAgOiBpbnB1dENvbmZpZ1xuICAgICAgICA6IHNlbGVjdGVkRHJvcGRvd25MYWJlbENvbG9yXG4gICAgICAgIDogaXNUb3VjaGVkSW5wdXRcbiAgICAgICAgOiBpc0VkaXRJbnB1dFxuICAgICAgICA6IGdldFN1cGVyQ29udHJvbD8udmFsdWVcbiAgXCJcbiAgbmdiVG9vbHRpcFxuICBbbWFpbkNhVG9vbHRpcF09XCInQ2hhbmdlIENvbG9yJ1wiXG4gIFt0b29sdGlwQmFja2dyb3VuZF09XCInIzQyNDI0MidcIlxuICBbZGlzYWJsZVRvb2x0aXBdPVwiIWlzRWRpdElucHV0XCJcbiAgcG9zaXRpb249XCJib3R0b21cIlxuICAoc2hvd24pPVwib25Qb3BvdmVyU2hvd24oKVwiXG4gIChoaWRkZW4pPVwib25Qb3BvdmVySGlkZGVuKClcIlxuICAoY2xpY2spPVwib25QbGFjZWhvbGRlckljb25FdmVudCgkZXZlbnQpXCJcbiAgW25nU3R5bGVdPVwieyBvcGFjaXR5OiBpbnB1dENvbmZpZy5pc0ljb25IaWRkZW4gPyAnMCcgOiB7fSB9XCJcbj5cbiAgPHN2Zy1pY29uXG4gICAgYXBwSG92ZXJTdmdcbiAgICBbc3RyZXRjaF09XCJ0cnVlXCJcbiAgICBbZmlsbF09XCJcbiAgICAgIGlucHV0Q29uZmlnLmRyb3Bkb3duTGFiZWwgfHwgc2VsZWN0ZWREcm9wZG93bkxhYmVsQ29sb3JcbiAgICAgICAgPyBzZWxlY3RlZERyb3Bkb3duTGFiZWxDb2xvcj8uY29kZSB8fCAnI2I3YjdiNydcbiAgICAgICAgOiBudWxsXG4gICAgXCJcbiAgICBbZmlsbEhvdmVyXT1cIlxuICAgICAgKGlucHV0Q29uZmlnLmRyb3Bkb3duTGFiZWwgfHwgc2VsZWN0ZWREcm9wZG93bkxhYmVsQ29sb3IpICYmXG4gICAgICBpc0VkaXRJbnB1dFxuICAgICAgICA/IHNlbGVjdGVkRHJvcGRvd25MYWJlbENvbG9yPy5ob3ZlckNvZGUgfHwgbnVsbFxuICAgICAgICA6IG51bGxcbiAgICBcIlxuICAgIFtzcmNdPVwiKGlucHV0Q29uZmlnLnBsYWNlaG9sZGVySWNvbiEgfCBjYVN2ZzogJ2lucHV0JykgPz8gJydcIlxuICA+PC9zdmctaWNvbj5cbjwvZGl2PlxuIl19
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtaW5wdXQtcGxhY2Vob2xkZXItaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1pbnB1dC9jb21wb25lbnRzL2NhLWlucHV0LXBsYWNlaG9sZGVyLWljb24vY2EtaW5wdXQtcGxhY2Vob2xkZXItaWNvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1pbnB1dC9jb21wb25lbnRzL2NhLWlucHV0LXBsYWNlaG9sZGVyLWljb24vY2EtaW5wdXQtcGxhY2Vob2xkZXItaWNvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFPdkIsVUFBVTtBQUNWLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFbkUsYUFBYTtBQUNiLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRWpHLFFBQVE7QUFDUixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSzVELFlBQVk7QUFDWixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7O0FBd0JoRixNQUFNLE9BQU8sK0JBQStCO0lBZ0IxQyxZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVA5QywwQkFBcUIsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQ3BELDJCQUFzQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFDckQsa0NBQTZCLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztJQUtULENBQUM7SUFFNUQsUUFBUSxLQUFJLENBQUM7SUFFYixlQUFlO1FBQ2IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTSxjQUFjO1FBQ25CLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU0sc0JBQXNCLENBQUMsS0FBWTtRQUN4QyxJQUFJLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pELENBQUM7K0dBbENVLCtCQUErQjttR0FBL0IsK0JBQStCLHlvQkFjL0IsVUFBVSxnREN0RXZCLDQrQ0FrREE7Z0JEVkksVUFBVTtnQkFDVixZQUFZLGlOQUNaLG9CQUFvQixnT0FDcEIsU0FBUztnQkFFVCxhQUFhO2dCQUNiLHVCQUF1QjtnQkFFdkIsUUFBUTtnQkFDUiw2QkFBNkIsNkRBQzdCLFNBQVM7Z0JBRVQsWUFBWTtnQkFDWixpQkFBaUI7OzRGQUdSLCtCQUErQjtrQkF0QjNDLFNBQVM7K0JBQ0UsK0JBQStCLGNBRzdCLElBQUksV0FDUDt3QkFDUCxVQUFVO3dCQUNWLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixTQUFTO3dCQUVULGFBQWE7d0JBQ2IsdUJBQXVCO3dCQUV2QixRQUFRO3dCQUNSLDZCQUE2Qjt3QkFDN0IsU0FBUzt3QkFFVCxZQUFZO3dCQUNaLGlCQUFpQjtxQkFDbEI7d0dBR1EsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRywwQkFBMEI7c0JBQWxDLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVJLHFCQUFxQjtzQkFBOUIsTUFBTTtnQkFDRyxzQkFBc0I7c0JBQS9CLE1BQU07Z0JBQ0csNkJBQTZCO3NCQUF0QyxNQUFNO2dCQUVVLEVBQUU7c0JBQWxCLFNBQVM7dUJBQUMsSUFBSTtnQkFDUSxjQUFjO3NCQUFwQyxTQUFTO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgSUNhSW5wdXQgfSBmcm9tICcuLi8uLi9jb25maWcvY2EtaW5wdXQuY29uZmlnJztcbmltcG9ydCB7IExhYmVsQ29sb3IgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGFiZWwtY29sb3IubW9kZWwnO1xuXG4vLyBtb2R1bGVzXG5pbXBvcnQgeyBBbmd1bGFyU3ZnSWNvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuaW1wb3J0IHsgTmdiTW9kdWxlLCBOZ2JQb3BvdmVyIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuXG4vLyBjb21wb25lbnRzXG5pbXBvcnQgeyBDYUFwcFRvb2x0aXBWMkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NhLWFwcC10b29sdGlwLXYyL2NhLWFwcC10b29sdGlwLXYyLmNvbXBvbmVudCc7XG5cbi8vIHBpcGVzXG5pbXBvcnQgeyBDYVN2Z1BpcGUgfSBmcm9tICcuLi8uLi8uLi8uLi9waXBlcy9jYS1zdmcucGlwZSc7XG5pbXBvcnQgeyBJbnB1dFBsYWNlaG9sZGVySWNvbkNsYXNzUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzJztcblxuLy8gc2VydmljZXNcbmltcG9ydCB7IElucHV0U3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG4vLyBkaXJlY3RpdmVcbmltcG9ydCB7IEhvdmVyU3ZnRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGlyZWN0aXZlcy9ob3Zlci1zdmctZGlyZWN0aXZlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1jYS1pbnB1dC1wbGFjZWhvbGRlci1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhLWlucHV0LXBsYWNlaG9sZGVyLWljb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYS1pbnB1dC1wbGFjZWhvbGRlci1pY29uLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICAvLyBtb2R1bGVzXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEFuZ3VsYXJTdmdJY29uTW9kdWxlLFxuICAgIE5nYk1vZHVsZSxcblxuICAgIC8vIGNvbXBvbmVudHNcbiAgICBDYUFwcFRvb2x0aXBWMkNvbXBvbmVudCxcblxuICAgIC8vIHBpcGVzXG4gICAgSW5wdXRQbGFjZWhvbGRlckljb25DbGFzc1BpcGUsXG4gICAgQ2FTdmdQaXBlLFxuXG4gICAgLy8gZGlyZWN0aXZlXG4gICAgSG92ZXJTdmdEaXJlY3RpdmVcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FJbnB1dFBsYWNlaG9sZGVySWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIGlucHV0Q29uZmlnITogSUNhSW5wdXQ7XG4gIEBJbnB1dCgpIGdldFN1cGVyQ29udHJvbCE6IEFic3RyYWN0Q29udHJvbDxhbnksIGFueT4gfCBudWxsO1xuICBASW5wdXQoKSBpc0ZvY3VzSW5wdXQhOiBib29sZWFuO1xuICBASW5wdXQoKSBpc1RvdWNoZWRJbnB1dCE6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNlbGVjdGVkRHJvcGRvd25MYWJlbENvbG9yITogTGFiZWxDb2xvciB8IG51bGw7XG4gIEBJbnB1dCgpIGlzRWRpdElucHV0ITogYm9vbGVhbjtcbiAgQElucHV0KCkgZGF0ZVRpbWVQb3BvdmVyITogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAT3V0cHV0KCkgb25Qb3BvdmVyU2hvd25FbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCkgb25Qb3BvdmVySGlkZGVuRW1pdHRlciA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQE91dHB1dCgpIG9uUGxhY2Vob2xkZXJJY29uRXZlbnRFbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcblxuICBAVmlld0NoaWxkKCd0MicpIHQyITogTmdiUG9wb3ZlcjtcbiAgQFZpZXdDaGlsZChOZ2JQb3BvdmVyKSBuZ2JNYWluUG9wb3ZlciE6IE5nYlBvcG92ZXI7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbnB1dFN0YXRlU2VydmljZTogSW5wdXRTdGF0ZVNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlucHV0U3RhdGVTZXJ2aWNlLnNldFZpZXdDaGlsZHNQb3BvdmVyKHRoaXMudDIsIHRoaXMubmdiTWFpblBvcG92ZXIpO1xuICB9XG5cbiAgcHVibGljIG9uUG9wb3ZlclNob3duKCk6IHZvaWQge1xuICAgIHRoaXMub25Qb3BvdmVyU2hvd25FbWl0dGVyLmVtaXQodHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgb25Qb3BvdmVySGlkZGVuKCk6IHZvaWQge1xuICAgIHRoaXMub25Qb3BvdmVySGlkZGVuRW1pdHRlci5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9uUGxhY2Vob2xkZXJJY29uRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5vblBsYWNlaG9sZGVySWNvbkV2ZW50RW1pdHRlci5lbWl0KGV2ZW50KTtcbiAgfVxufVxuIiwiPGRpdlxuICAjdDI9XCJuZ2JQb3BvdmVyXCJcbiAgW25nYlBvcG92ZXJdPVwiZGF0ZVRpbWVQb3BvdmVyXCJcbiAgW2Rpc2FibGVQb3BvdmVyXT1cIlxuICAgIChpbnB1dENvbmZpZy5uYW1lICE9PSAnZGF0ZXBpY2tlcicgJiZcbiAgICAgIGlucHV0Q29uZmlnLm5hbWUgIT09ICd0aW1lcGlja2VyJyAmJlxuICAgICAgaW5wdXRDb25maWcubmFtZSAhPT0gJ2RhdGVwaWNrZXJCYW5rQ2FyZCcpIHx8XG4gICAgaW5wdXRDb25maWcuaXNEaXNhYmxlZCFcbiAgXCJcbiAgW3BsYWNlbWVudF09XCJbJ2xlZnQnLCAnbGVmdC10b3AnXVwiXG4gIFtwb3BvdmVyQ2xhc3NdPVwiJ2RhdGV0aW1lcG9wb3Zlcm1haW4nXCJcbiAgYXV0b0Nsb3NlPVwib3V0c2lkZVwiXG4gIFtjb250YWluZXJdPVwiJ2JvZHknXCJcbiAgY2xhc3M9XCJpbnB1dC1pY29uIHt7IGlucHV0Q29uZmlnLmN1c3RvbUNsYXNzIH19XCJcbiAgW25nQ2xhc3NdPVwiXG4gICAgZ2V0U3VwZXJDb250cm9sXG4gICAgICB8IGlucHV0UGxhY2Vob2xkZXJJY29uQ2xhc3NcbiAgICAgICAgOiBpc0ZvY3VzSW5wdXRcbiAgICAgICAgOiBpbnB1dENvbmZpZ1xuICAgICAgICA6IHNlbGVjdGVkRHJvcGRvd25MYWJlbENvbG9yXG4gICAgICAgIDogaXNUb3VjaGVkSW5wdXRcbiAgICAgICAgOiBpc0VkaXRJbnB1dFxuICAgICAgICA6IGdldFN1cGVyQ29udHJvbD8udmFsdWVcbiAgXCJcbiAgbmdiVG9vbHRpcFxuICBbbWFpbkNhVG9vbHRpcF09XCInQ2hhbmdlIENvbG9yJ1wiXG4gIFt0b29sdGlwQmFja2dyb3VuZF09XCInIzQyNDI0MidcIlxuICBbZGlzYWJsZVRvb2x0aXBdPVwiIWlzRWRpdElucHV0XCJcbiAgcG9zaXRpb249XCJib3R0b21cIlxuICAoc2hvd24pPVwib25Qb3BvdmVyU2hvd24oKVwiXG4gIChoaWRkZW4pPVwib25Qb3BvdmVySGlkZGVuKClcIlxuICAoY2xpY2spPVwib25QbGFjZWhvbGRlckljb25FdmVudCgkZXZlbnQpXCJcbiAgW25nU3R5bGVdPVwieyBvcGFjaXR5OiBpbnB1dENvbmZpZy5pc0ljb25IaWRkZW4gPyAnMCcgOiB7fSB9XCJcbj5cbiAgPHN2Zy1pY29uXG4gICAgYXBwSG92ZXJTdmdcbiAgICBbc3RyZXRjaF09XCJ0cnVlXCJcbiAgICBbZmlsbF09XCJcbiAgICAgIGlucHV0Q29uZmlnLmRyb3Bkb3duTGFiZWwgfHwgc2VsZWN0ZWREcm9wZG93bkxhYmVsQ29sb3JcbiAgICAgICAgPyBzZWxlY3RlZERyb3Bkb3duTGFiZWxDb2xvcj8uY29kZSB8fCAnI2I3YjdiNydcbiAgICAgICAgOiBudWxsXG4gICAgXCJcbiAgICBbZmlsbEhvdmVyXT1cIlxuICAgICAgKGlucHV0Q29uZmlnLmRyb3Bkb3duTGFiZWwgfHwgc2VsZWN0ZWREcm9wZG93bkxhYmVsQ29sb3IpICYmIGlzRWRpdElucHV0XG4gICAgICAgID8gc2VsZWN0ZWREcm9wZG93bkxhYmVsQ29sb3I/LmhvdmVyQ29kZSB8fCBudWxsXG4gICAgICAgIDogbnVsbFxuICAgIFwiXG4gICAgW3NyY109XCIoaW5wdXRDb25maWcucGxhY2Vob2xkZXJJY29uISB8IGNhU3ZnOiAnaW5wdXQnKSA/PyAnJ1wiXG4gID48L3N2Zy1pY29uPlxuPC9kaXY+XG4iXX0=