@sarasanalytics-com/design-system 0.0.190 → 0.0.191
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.
- package/esm2022/lib/dialog/dialog.component.mjs +2 -2
- package/esm2022/lib/message-banner-v2/message-banner-v2.component.mjs +20 -3
- package/fesm2022/sarasanalytics-com-design-system.mjs +20 -3
- package/fesm2022/sarasanalytics-com-design-system.mjs.map +1 -1
- package/lib/message-banner-v2/message-banner-v2.component.d.ts +9 -1
- package/package.json +1 -1
|
@@ -90,7 +90,7 @@ export class DialogComponent {
|
|
|
90
90
|
this.dialogButtonClick.emit({ type: 'form-reset' });
|
|
91
91
|
}
|
|
92
92
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: DialogComponent, deps: [{ token: i1.MatDialogRef, optional: true }, { token: MAT_DIALOG_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
93
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: DialogComponent, isStandalone: true, selector: "sa-dialog", inputs: { dialogData: "dialogData" }, outputs: { dialogButtonClick: "dialogButtonClick" }, ngImport: i0, template: "<div class=\"dialog-container {{ dialogData?.className }}\">\n <!-- top banner region -->\n <div class=\"top-container\">\n @if (!!dialogData?.topMessageBanners) {\n <div class=\"top-message-container\">\n @for (\n messageBanner of dialogData?.topMessageBanners;\n track messageBanner.content\n ) {\n <sa-message-banner\n [type]=\"messageBanner?.type\"\n [bannerIcon]=\"messageBanner?.bannerIcon\"\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\n [button]=\"messageBanner?.button\"\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\n [style]=\"messageBanner?.style || 'width:39.438rem'\"\n >\n <div class=\"{{ messageBanner?.className }} message-content-style\">\n {{ messageBanner?.content }}\n </div>\n </sa-message-banner>\n }\n </div>\n }\n @if(!!dialogData?.topRegionIcon){\n <div class=\"top-icon-container\">\n <sa-icon\n [icon]=\"dialogData?.topRegionIcon\"\n class=\"d-flex\"\n size=\"{{ dialogData?.topRegionIconSize }}\"\n ></sa-icon>\n </div>\n }\n @if (!!dialogData?.closeButton || dialogData?.showCloseButton) {\n <div class=\"cross-btn\" (click)=\"onCloseButtonClick($event)\">\n <sa-icon\n [icon]=\"dialogData?.closeButton || 'closeOutlined'\"\n class=\"d-flex\"\n size=\"{{ dialogData?.closeButtonSize || '20' }}\"\n ></sa-icon>\n </div>\n }\n </div>\n <!-- middle region -->\n @if (!!dialogData?.middleRegion) {\n <ng-container *ngIf=\"dialogData?.middleRegion as middleRegion\">\n <div class=\"image-description-container {{ middleRegion?.className }}\">\n <sa-message-banner-v2\n [messageType]=\"middleRegion?.messageType || 'default'\"\n [messageIcon]=\"middleRegion?.messageIcon\"\n [messageIconSize]=\"middleRegion?.messageIconSize\"\n [title]=\"middleRegion?.title\"\n [description]=\"middleRegion?.description\"\n [buttons]=\"middleRegion?.buttons\"\n [formConfig]=\"middleRegion?.content?.formConfig\"\n (onFormEvent)=\"onUnifiedFormEvent($event)\"\n (buttonClick)=\"middleRegion?.buttons ? onButtonClick($event) : ''\"\n >\n </sa-message-banner-v2>\n </div>\n </ng-container>\n }\n <!-- lower message banner region -->\n @if (!!dialogData?.lowerMessageBanners) {\n <div class=\"lower-message-container\">\n @for (\n messageBanner of dialogData?.lowerMessageBanners;\n track messageBanner.content\n ) {\n <sa-message-banner\n [type]=\"messageBanner?.type\"\n [bannerIcon]=\"messageBanner?.bannerIcon\"\n [buttonIcon]=\"messageBanner?.buttonIcon\"\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\n [button]=\"messageBanner?.button\"\n [style]=\"messageBanner?.style || 'width:-webkit-fill-available'\"\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\n >\n <div\n class=\"{{ messageBanner?.className }} message-content-style\"\n ></div>\n {{ messageBanner?.content }}\n </sa-message-banner>\n }\n </div>\n }\n <!-- button region -->\n @if (!!dialogData?.buttons) {\n <div class=\"button-group-container\">\n @for (button of dialogData?.buttons; track button.text) {\n <sa-button\n [text]=\"button.text\"\n [icon]=\"button.icon\"\n [size]=\"button.size\"\n [type]=\"button.type\"\n [state]=\"button.state\"\n [iconPosition]=\"button.iconPosition\"\n [buttonIconSize]=\"button.buttonIconSize\"\n (onClickEvent)=\"onButtonClick(button, $event)\"\n role=\"button\"\n [attr.aria-label]=\"button.text\"\n >\n </sa-button>\n }\n </div>\n }\n @if (!!dialogData?.buttonsWithType) {\n <div class=\"buttonWithType-group-container\">\n @for (button of dialogData?.buttonsWithType; track button.text) {\n @if (button?.type === \"checkbox\") {\n <div class=\"checkbox-container {{ button.className }}\">\n <mat-checkbox [id]=\"button.id\" (change)=\"onButtonClick(button)\" class=\"checkbox-style\">{{\n button.text\n }}</mat-checkbox>\n </div>\n }\n }\n </div>\n }\n</div>\n", styles: [".dialog-container{display:flex;flex-direction:column;gap:var(--medium-28px);align-items:center;position:relative;overflow-y:auto;overflow-x:hidden}.dialog-container.common-action-dialog{align-items:normal}::ng-deep .dialog-container.common-action-dialog .error-page{justify-content:flex-start}::ng-deep .dialog-container.common-action-dialog .title-description{align-items:flex-start}.dialog-container.common-action-dialog .button-group-container{justify-content:flex-end}.top-message-container,.lower-message-container{display:flex;align-items:center;flex-direction:column;gap:var(--medium-28px)}.lower-message-container{width:-webkit-fill-available}::ng-deep .lower-message-container .content{justify-content:center;align-items:center;gap:var(--small-4px)}::ng-deep .image-description-container .image-container{margin-bottom:0}::ng-deep .image-description-container .content-container{gap:var(--medium-28px)}::ng-deep .image-description-container .title-class{font-size:var(--medium-22px);font-weight:500;line-height:var(--medium-28px)}::ng-deep .image-description-container .description{color:var(--text-mediumemphasis, #6D6979);font-size:var(--small-16px);line-height:var(--medium-24px);letter-spacing:.5px}.top-message-container .message-content-style{display:flex;justify-content:center;flex:1;color:var(--text-primary, #825CEE)}.lower-message-container .message-content-style{display:flex;align-items:center}::ng-deep .image-description-container .title-description{display:flex;flex-direction:column;gap:var(--small-8px)}.button-group-container{display:flex;gap:var(--small-12px);justify-content:center}::ng-deep .checkboxButton .mdc-checkbox__background{width:var(--small-16px);height:var(--small-16px);border:1.5px solid currentColor}::ng-deep .checkboxButton .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#757575}::ng-deep .checkboxButton .mdc-checkbox{padding:calc((var(--mdc-checkbox-state-layer-size) - 21px) / 2)}::ng-deep .checkboxButton .mdc-form-field{display:flex;align-items:center}::ng-deep .checkboxButton .mdc-label{color:var(--text-mediumemphasis, #6D6979);text-align:center;font-family:var(--font);font-size:var(--small-14px);font-style:normal;font-weight:400;line-height:var(--medium-20px);letter-spacing:.25px}.dialog-container .cross-btn{position:absolute;top:0;right:0;cursor:pointer}.dialog-container.common-action-dialog .cross-btn{position:relative;top:0;right:0;cursor:pointer;align-items:center;display:flex}.dialog-container.common-action-dialog .top-container{display:flex;justify-content:space-between}::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style.mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mdc-checkbox__ripple,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mdc-checkbox__ripple{border-color:var(--primary-500);background-color:var(--primary-500)}.image-description-container{width:100%;display:flex;flex-direction:column}\n"], dependencies: [{ kind: "component", type: MessageBannerComponent, selector: "sa-message-banner", inputs: ["type", "actionText", "content", "bannerIcon", "bannerIconSize", "buttonIcon", "buttonType", "buttonIconPosition", "buttonSize", "buttonIconSize", "button", "onAction"], outputs: ["actionClick"] }, { kind: "component", type: MessageBannerV2Component, selector: "sa-message-banner-v2", inputs: ["messageType", "contactUrl", "spacingBetweenImageAndDescription", "contentGap", "titleClass", "descriptionClass", "banner", "formConfig", "prebuiltFormFields", "messageIcon", "messageIconSize", "title", "description", "buttons"], outputs: ["onFormEvent", "buttonClick"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "sa-button", inputs: ["id", "type", "state", "size", "text", "ImagePath", "icon", "iconPosition", "href", "hrefTarget", "width", "isSubmit", "buttonIconSize", "showSpinner"], outputs: ["onClickEvent", "onMouseInEvent", "onMouseOutEvent"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: IconComponent, selector: "sa-icon", inputs: ["img", "imgWidth", "imgHeight", "icon", "size", "color", "iconPath", "iconUrl", "customClass", "href", "hrefTarget", "iconPosition"], outputs: ["onClickEvent"] }, { kind: "ngmodule", type: MatDialogModule }] }); }
|
|
93
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: DialogComponent, isStandalone: true, selector: "sa-dialog", inputs: { dialogData: "dialogData" }, outputs: { dialogButtonClick: "dialogButtonClick" }, ngImport: i0, template: "<div class=\"dialog-container {{ dialogData?.className }}\">\n <!-- top banner region -->\n <div class=\"top-container\">\n @if (!!dialogData?.topMessageBanners) {\n <div class=\"top-message-container\">\n @for (\n messageBanner of dialogData?.topMessageBanners;\n track messageBanner.content\n ) {\n <sa-message-banner\n [type]=\"messageBanner?.type\"\n [bannerIcon]=\"messageBanner?.bannerIcon\"\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\n [button]=\"messageBanner?.button\"\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\n [style]=\"messageBanner?.style || 'width:39.438rem'\"\n >\n <div class=\"{{ messageBanner?.className }} message-content-style\">\n {{ messageBanner?.content }}\n </div>\n </sa-message-banner>\n }\n </div>\n }\n @if(!!dialogData?.topRegionIcon){\n <div class=\"top-icon-container\">\n <sa-icon\n [icon]=\"dialogData?.topRegionIcon\"\n class=\"d-flex\"\n size=\"{{ dialogData?.topRegionIconSize }}\"\n ></sa-icon>\n </div>\n }\n @if (!!dialogData?.closeButton || dialogData?.showCloseButton) {\n <div class=\"cross-btn\" (click)=\"onCloseButtonClick($event)\">\n <sa-icon\n [icon]=\"dialogData?.closeButton || 'closeOutlined'\"\n class=\"d-flex\"\n size=\"{{ dialogData?.closeButtonSize || '20' }}\"\n ></sa-icon>\n </div>\n }\n </div>\n <!-- middle region -->\n @if (!!dialogData?.middleRegion) {\n <ng-container *ngIf=\"dialogData?.middleRegion as middleRegion\">\n <div class=\"image-description-container {{ middleRegion?.className }}\">\n <sa-message-banner-v2\n [messageType]=\"middleRegion?.messageType || 'default'\"\n [messageIcon]=\"middleRegion?.messageIcon\"\n [messageIconSize]=\"middleRegion?.messageIconSize\"\n [title]=\"middleRegion?.title\"\n [description]=\"middleRegion?.description\"\n [buttons]=\"middleRegion?.buttons\"\n [formConfig]=\"middleRegion?.content?.formConfig\"\n (onFormEvent)=\"onUnifiedFormEvent($event)\"\n (buttonClick)=\"middleRegion?.buttons ? onButtonClick($event) : ''\"\n >\n </sa-message-banner-v2>\n </div>\n </ng-container>\n }\n <!-- lower message banner region -->\n @if (!!dialogData?.lowerMessageBanners) {\n <div class=\"lower-message-container\">\n @for (\n messageBanner of dialogData?.lowerMessageBanners;\n track messageBanner.content\n ) {\n <sa-message-banner\n [type]=\"messageBanner?.type\"\n [bannerIcon]=\"messageBanner?.bannerIcon\"\n [buttonIcon]=\"messageBanner?.buttonIcon\"\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\n [button]=\"messageBanner?.button\"\n [style]=\"messageBanner?.style || 'width:-webkit-fill-available'\"\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\n >\n <div\n class=\"{{ messageBanner?.className }} message-content-style\"\n ></div>\n {{ messageBanner?.content }}\n </sa-message-banner>\n }\n </div>\n }\n <!-- button region -->\n @if (!!dialogData?.buttons) {\n <div class=\"button-group-container\">\n @for (button of dialogData?.buttons; track button.text) {\n <sa-button\n [text]=\"button.text\"\n [icon]=\"button.icon\"\n [size]=\"button.size\"\n [type]=\"button.type\"\n [state]=\"button.state\"\n [iconPosition]=\"button.iconPosition\"\n [buttonIconSize]=\"button.buttonIconSize\"\n (onClickEvent)=\"onButtonClick(button, $event)\"\n role=\"button\"\n [attr.aria-label]=\"button.text\"\n >\n </sa-button>\n }\n </div>\n }\n @if (!!dialogData?.buttonsWithType) {\n <div class=\"buttonWithType-group-container\">\n @for (button of dialogData?.buttonsWithType; track button.text) {\n @if (button?.type === \"checkbox\") {\n <div class=\"checkbox-container {{ button.className }}\">\n <mat-checkbox [id]=\"button.id\" (change)=\"onButtonClick(button)\" class=\"checkbox-style\">{{\n button.text\n }}</mat-checkbox>\n </div>\n }\n }\n </div>\n }\n</div>\n", styles: [".dialog-container{display:flex;flex-direction:column;gap:var(--medium-28px);align-items:center;position:relative;overflow-y:auto;overflow-x:hidden}.dialog-container.common-action-dialog{align-items:normal}::ng-deep .dialog-container.common-action-dialog .error-page{justify-content:flex-start}::ng-deep .dialog-container.common-action-dialog .title-description{align-items:flex-start}.dialog-container.common-action-dialog .button-group-container{justify-content:flex-end}.top-message-container,.lower-message-container{display:flex;align-items:center;flex-direction:column;gap:var(--medium-28px)}.lower-message-container{width:-webkit-fill-available}::ng-deep .lower-message-container .content{justify-content:center;align-items:center;gap:var(--small-4px)}::ng-deep .image-description-container .image-container{margin-bottom:0}::ng-deep .image-description-container .content-container{gap:var(--medium-28px)}::ng-deep .image-description-container .title-class{font-size:var(--medium-22px);font-weight:500;line-height:var(--medium-28px)}::ng-deep .image-description-container .description{color:var(--text-mediumemphasis, #6D6979);font-size:var(--small-16px);line-height:var(--medium-24px);letter-spacing:.5px}.top-message-container .message-content-style{display:flex;justify-content:center;flex:1;color:var(--text-primary, #825CEE)}.lower-message-container .message-content-style{display:flex;align-items:center}::ng-deep .image-description-container .title-description{display:flex;flex-direction:column;gap:var(--small-8px)}.button-group-container{display:flex;gap:var(--small-12px);justify-content:center}::ng-deep .checkboxButton .mdc-checkbox__background{width:var(--small-16px);height:var(--small-16px);border:1.5px solid currentColor}::ng-deep .checkboxButton .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#757575}::ng-deep .checkboxButton .mdc-checkbox{padding:calc((var(--mdc-checkbox-state-layer-size) - 21px) / 2)}::ng-deep .checkboxButton .mdc-form-field{display:flex;align-items:center}::ng-deep .checkboxButton .mdc-label{color:var(--text-mediumemphasis, #6D6979);text-align:center;font-family:var(--font);font-size:var(--small-14px);font-style:normal;font-weight:400;line-height:var(--medium-20px);letter-spacing:.25px}.dialog-container .cross-btn{position:absolute;top:0;right:0;cursor:pointer}.dialog-container.common-action-dialog .cross-btn{position:relative;top:0;right:0;cursor:pointer;align-items:center;display:flex}.dialog-container.common-action-dialog .top-container{display:flex;justify-content:space-between}::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style.mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mdc-checkbox__ripple,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mdc-checkbox__ripple{border-color:var(--primary-500);background-color:var(--primary-500)}.image-description-container{width:100%;display:flex;flex-direction:column}\n"], dependencies: [{ kind: "component", type: MessageBannerComponent, selector: "sa-message-banner", inputs: ["type", "actionText", "content", "bannerIcon", "bannerIconSize", "buttonIcon", "buttonType", "buttonIconPosition", "buttonSize", "buttonIconSize", "button", "onAction"], outputs: ["actionClick"] }, { kind: "component", type: MessageBannerV2Component, selector: "sa-message-banner-v2", inputs: ["messageType", "contactUrl", "spacingBetweenImageAndDescription", "contentGap", "titleClass", "descriptionClass", "banner", "formConfig", "prebuiltFormFields", "messageIcon", "messageIconSize", "title", "description", "buttons"], outputs: ["onContactUsClick", "onFormEvent", "buttonClick"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "sa-button", inputs: ["id", "type", "state", "size", "text", "ImagePath", "icon", "iconPosition", "href", "hrefTarget", "width", "isSubmit", "buttonIconSize", "showSpinner"], outputs: ["onClickEvent", "onMouseInEvent", "onMouseOutEvent"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: IconComponent, selector: "sa-icon", inputs: ["img", "imgWidth", "imgHeight", "icon", "size", "color", "iconPath", "iconUrl", "customClass", "href", "hrefTarget", "iconPosition"], outputs: ["onClickEvent"] }, { kind: "ngmodule", type: MatDialogModule }] }); }
|
|
94
94
|
}
|
|
95
95
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: DialogComponent, decorators: [{
|
|
96
96
|
type: Component,
|
|
@@ -107,4 +107,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
107
107
|
}], dialogButtonClick: [{
|
|
108
108
|
type: Output
|
|
109
109
|
}] } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXBGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7Ozs7O0FBU2pDLE1BQU0sT0FBTyxlQUFlO0lBa0IxQixZQUNxQixTQUF3QyxFQUNmLElBQVM7UUFEbEMsY0FBUyxHQUFULFNBQVMsQ0FBK0I7UUFDZixTQUFJLEdBQUosSUFBSSxDQUFLO1FBbkJ2RCxlQUFVLEdBQTJCLEVBQUUsQ0FBQztRQWU5QixzQkFBaUIsR0FBRyxJ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V0FDUCxDQUFDLHNCQUFzQixFQUFFLHdCQUF3QixFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQzs7MEJBdUI5SixRQUFROzswQkFDUixRQUFROzswQkFBSSxNQUFNOzJCQUFDLGVBQWU7eUNBbEI1QixVQUFVO3NCQUFsQixLQUFLO2dCQWNJLGlCQUFpQjtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE9wdGlvbmFsLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1lc3NhZ2VCYW5uZXJDb21wb25lbnQgfSBmcm9tICcuLi9tZXNzYWdlLWJhbm5lci9tZXNzYWdlLWJhbm5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uQ2xpY2tFdmVudCwgQnV0dG9uSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9idXR0b24taW50ZXJmYWNlJztcbmltcG9ydCB7IE1lc3NhZ2VCYW5uZXJWMkNvbXBvbmVudCB9IGZyb20gJy4uL21lc3NhZ2UtYmFubmVyLXYyL21lc3NhZ2UtYmFubmVyLXYyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vaWNvbi9pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ01vZHVsZSwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IEZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0taW5wdXQvZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgaXNBcnJheSB9IGZyb20gJ2xvZGFzaCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NhLWRpYWxvZycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtNZXNzYWdlQmFubmVyQ29tcG9uZW50LCBNZXNzYWdlQmFubmVyVjJDb21wb25lbnQsIENvbW1vbk1vZHVsZSwgQnV0dG9uQ29tcG9uZW50LCBNYXRDaGVja2JveE1vZHVsZSwgSWNvbkNvbXBvbmVudCwgTWF0RGlhbG9nTW9kdWxlLCBGb3JtSW5wdXRDb21wb25lbnRdLFxuICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGlhbG9nLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBEaWFsb2dDb21wb25lbnQge1xuICBmb3JtVmFsdWVzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XG4gIEBJbnB1dCgpIGRpYWxvZ0RhdGE6IHtcbiAgICB0b3BNZXNzYWdlQmFubmVycz86IGFueVtdO1xuICAgIHRvcFJlZ2lvbkljb25TaXplPzogc3RyaW5nO1xuICAgIGNsYXNzTmFtZT86IHN0cmluZztcbiAgICBjbG9zZUJ1dHRvblNpemU/OiBzdHJpbmc7XG4gICAgbWlkZGxlUmVnaW9uPzogYW55O1xuICAgIHRvcFJlZ2lvbkljb24/OiBzdHJpbmc7XG4gICAgbG93ZXJNZXNzYWdlQmFubmVycz86IGFueVtdO1xuICAgIGJ1dHRvbnM/OiBCdXR0b25JbnRlcmZhY2VbXTtcbiAgICBidXR0b25zV2l0aFR5cGU/OiBhbnlbXTtcbiAgICBjbG9zZUJ1dHRvbj86IHN0cmluZztcbiAgICBzaG93Q2xvc2VCdXR0b24/OiBib29sZWFuO1xuICB9O1xuXG4gIEBPdXRwdXQoKSBkaWFsb2dCdXR0b25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RGlhbG9nQ29tcG9uZW50PixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IGFueVxuICApIHtcbiAgICBpZiAodGhpcy5kYXRhKSB7XG4gICAgICB0aGlzLmRpYWxvZ0RhdGEgPSB0aGlzLmRhdGE7XG4gICAgfVxuICB9XG5cbiAgb25CdXR0b25DbGljayhidXR0b246IGFueSwgZXZlbnQ/OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQ/LmV2dCkge1xuICAgICAgZXZlbnQ/LmV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgZXZlbnQ/LmV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gICAgdGhpcy5kaWFsb2dCdXR0b25DbGljay5lbWl0KHtldmVudCwgYnV0dG9ufSk7XG4gIH1cbiAgb25NaWRkbGVSZWdpb25CdXR0b25DbGljayhldmVudDoge2J1dHRvbjogYW55LCBkYXRhPzogYW55fSk6IHZvaWQge1xuICAgIC8vIFBhc3MgdGhlIGV2ZW50IHVwIHRvIHRoZSBwYXJlbnQgY29tcG9uZW50XG4gICAgdGhpcy5kYXRhLm9uTWlkZGxlUmVnaW9uQnV0dG9uQ2xpY2s/LihldmVudCk7XG4gIH1cbiAgaGFuZGxlQnV0dG9uQ2xpY2soZXZlbnQ6IEJ1dHRvbkNsaWNrRXZlbnQpIHtcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoe2V2ZW50fSk7XG4gIH1cblxuICBvbkNsb3NlQnV0dG9uQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5kaWFsb2dEYXRhPy5taWRkbGVSZWdpb24/LmNvbnRlbnQ/LmZvcm1Db25maWc/LmZpZWxkcz8uZm9yRWFjaCgoaW5wdXQ6IGFueSkgPT4ge1xuICAgICAgaW5wdXQudmFsdWUgPSAnJztcbiAgICB9KTtcbiAgICBpZiAodGhpcy5kaWFsb2dEYXRhPy5taWRkbGVSZWdpb24/LmNvbnRlbnQ/LmZvcm1Db25maWcpIHtcbiAgICAgIHRoaXMuZGlhbG9nRGF0YS5taWRkbGVSZWdpb24uY29udGVudC5mb3JtQ29uZmlnLmNoaXBzID0gW107XG4gICAgfSAgICBcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyBldmVudDogZXZlbnQsIHR5cGU6ICdjbG9zZScgfSk7XG4gIH1cbi8vIGFsbCBmb3JtIHJlbGF0ZWQgZXZlbnRzXG4gIG9uVW5pZmllZEZvcm1FdmVudChldmVudDoge3R5cGU6IHN0cmluZywgZGF0YTogYW55fSk6IHZvaWQge1xuICAgIHN3aXRjaChldmVudC50eXBlKSB7XG4gICAgICBjYXNlICdmb3JtLWlucHV0LWNoYW5nZSc6XG4gICAgICAgIHRoaXMub25Gb3JtSW5wdXRDaGFuZ2UoZXZlbnQuZGF0YSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZm9ybS1tb2RlbC1jaGFuZ2UnOlxuICAgICAgICAvLyBTdG9yZSB0aGUgZm9ybSBtb2RlbCBmb3IgZXh0ZXJuYWwgYWNjZXNzXG4gICAgICAgIHRoaXMuZm9ybVZhbHVlcyA9IHsgLi4udGhpcy5mb3JtVmFsdWVzLCAuLi5ldmVudC5kYXRhIH07XG4gICAgICAgIHRoaXMuZGlhbG9nQnV0dG9uQ2xpY2suZW1pdCh7IGV2ZW50OiBldmVudC5kYXRhLCB0eXBlOiAnZm9ybS1tb2RlbC1jaGFuZ2UnIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2N1c3RvbS1idXR0b24tY2xpY2snOlxuICAgICAgICAvLyBTdG9yZSBmb3JtIG1vZGVsIGRhdGEgaWYgcHJvdmlkZWRcbiAgICAgICAgaWYgKGV2ZW50LmRhdGE/LmZvcm1Nb2RlbCkge1xuICAgICAgICAgIHRoaXMuZm9ybVZhbHVlcyA9IHsgLi4udGhpcy5mb3JtVmFsdWVzLCAuLi5ldmVudC5kYXRhLmZvcm1Nb2RlbCB9O1xuICAgICAgICB9XG4gICAgICAgIHRoaXMub25CdXR0b25DbGljayhldmVudC5kYXRhKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdjaGlwLXJlbW92ZSc6XG4gICAgICAgIHRoaXMub25SZW1vdmVVc2VyKGV2ZW50LmRhdGEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGNvbnNvbGUud2FybignVW5rbm93biBmb3JtIGV2ZW50IHR5cGU6JywgZXZlbnQudHlwZSk7XG4gICAgfVxuICB9XG4gIG9uRm9ybUlucHV0Q2hhbmdlKGV2ZW50OiBhbnkpIHtcbiAgICBsZXQgcHJvY2Vzc2VkVmFsdWUgPSBldmVudC52YWx1ZTsgXG4gICAgaWYgKGlzQXJyYXkoZXZlbnQudmFsdWUpKSB7XG4gICAgICBwcm9jZXNzZWRWYWx1ZSA9IGV2ZW50LnZhbHVlLm1hcCgoY2hpcDogYW55KSA9PiBjaGlwLnZhbHVlIHx8IGNoaXAubGFiZWwgfHwgY2hpcCk7XG4gICAgfVxuICAgIHRoaXMuZm9ybVZhbHVlc1tldmVudC5sYWJlbF0gPSBwcm9jZXNzZWRWYWx1ZTtcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyBldmVudCwgdHlwZTogJ2Zvcm0taW5wdXQtY2hhbmdlJyB9KTtcbiAgfVxuXG4gIG9uUmVtb3ZlVXNlcihjaGlwOiBhbnkpIHtcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyBldmVudDogY2hpcCwgdHlwZTogJ2NoaXAtcmVtb3ZlJyB9KTtcbiAgfVxuXG4gIC8vIE1ldGhvZCB0byByZXNldCB0aGUgZm9ybSB0aHJvdWdoIG1lc3NhZ2UtYmFubmVyLXYyIGNvbXBvbmVudFxuICByZXNldEZvcm0oKTogdm9pZCB7XG4gICAgLy8gRW1pdCBmb3JtIHJlc2V0IGV2ZW50IHRvIG1lc3NhZ2UtYmFubmVyLXYyXG4gICAgdGhpcy5mb3JtVmFsdWVzID0ge307XG4gICAgLy8gVGhlIG1lc3NhZ2UtYmFubmVyLXYyIGNvbXBvbmVudCB3aWxsIGhhbmRsZSB0aGUgYWN0dWFsIGZvcm0gcmVzZXRcbiAgICAvLyB3aGVuIGl0IHJlY2VpdmVzIHRoaXMgZXZlbnRcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyB0eXBlOiAnZm9ybS1yZXNldCcgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkaWFsb2ctY29udGFpbmVyIHt7IGRpYWxvZ0RhdGE/LmNsYXNzTmFtZSB9fVwiPlxuICA8IS0tIHRvcCBiYW5uZXIgcmVnaW9uIC0tPlxuICA8ZGl2IGNsYXNzPVwidG9wLWNvbnRhaW5lclwiPlxuICAgIEBpZiAoISFkaWFsb2dEYXRhPy50b3BNZXNzYWdlQmFubmVycykge1xuICAgICAgPGRpdiBjbGFzcz1cInRvcC1tZXNzYWdlLWNvbnRhaW5lclwiPlxuICAgICAgICBAZm9yIChcbiAgICAgICAgICBtZXNzYWdlQmFubmVyIG9mIGRpYWxvZ0RhdGE/LnRvcE1lc3NhZ2VCYW5uZXJzO1xuICAgICAgICAgIHRyYWNrIG1lc3NhZ2VCYW5uZXIuY29udGVudFxuICAgICAgICApIHtcbiAgICAgICAgICA8c2EtbWVzc2FnZS1iYW5uZXJcbiAgICAgICAgICAgIFt0eXBlXT1cIm1lc3NhZ2VCYW5uZXI/LnR5cGVcIlxuICAgICAgICAgICAgW2Jhbm5lckljb25dPVwibWVzc2FnZUJhbm5lcj8uYmFubmVySWNvblwiXG4gICAgICAgICAgICBbYmFubmVySWNvblNpemVdPVwibWVzc2FnZUJhbm5lcj8uYmFubmVySWNvblNpemUgfHwgJzI0J1wiXG4gICAgICAgICAgICBbYnV0dG9uXT1cIm1lc3NhZ2VCYW5uZXI/LmJ1dHRvblwiXG4gICAgICAgICAgICAoYWN0aW9uQ2xpY2spPVwib25CdXR0b25DbGljayhtZXNzYWdlQmFubmVyPy5idXR0b24sICRldmVudClcIlxuICAgICAgICAgICAgW3N0eWxlXT1cIm1lc3NhZ2VCYW5uZXI/LnN0eWxlIHx8ICd3aWR0aDozOS40MzhyZW0nXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwie3sgbWVzc2FnZUJhbm5lcj8uY2xhc3NOYW1lIH19IG1lc3NhZ2UtY29udGVudC1zdHlsZVwiPlxuICAgICAgICAgICAgICB7eyBtZXNzYWdlQmFubmVyPy5jb250ZW50IH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3NhLW1lc3NhZ2UtYmFubmVyPlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gICAgQGlmKCEhZGlhbG9nRGF0YT8udG9wUmVnaW9uSWNvbil7XG4gICAgICA8ZGl2IGNsYXNzPVwidG9wLWljb24tY29udGFpbmVyXCI+XG4gICAgICAgIDxzYS1pY29uXG4gICAgICAgICAgW2ljb25dPVwiZGlhbG9nRGF0YT8udG9wUmVnaW9uSWNvblwiXG4gICAgICAgICAgY2xhc3M9XCJkLWZsZXhcIlxuICAgICAgICAgIHNpemU9XCJ7eyBkaWFsb2dEYXRhPy50b3BSZWdpb25JY29uU2l6ZSB9fVwiXG4gICAgICAgID48L3NhLWljb24+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gICAgQGlmICghIWRpYWxvZ0RhdGE/LmNsb3NlQnV0dG9uIHx8IGRpYWxvZ0RhdGE/LnNob3dDbG9zZUJ1dHRvbikge1xuICAgICAgPGRpdiBjbGFzcz1cImNyb3NzLWJ0blwiIChjbGljayk9XCJvbkNsb3NlQnV0dG9uQ2xpY2soJGV2ZW50KVwiPlxuICAgICAgICA8c2EtaWNvblxuICAgICAgICAgIFtpY29uXT1cImRpYWxvZ0RhdGE/LmNsb3NlQnV0dG9uIHx8ICdjbG9zZU91dGxpbmVkJ1wiXG4gICAgICAgICAgY2xhc3M9XCJkLWZsZXhcIlxuICAgICAgICAgIHNpemU9XCJ7eyBkaWFsb2dEYXRhPy5jbG9zZUJ1dHRvblNpemUgfHwgJzIwJyB9fVwiXG4gICAgICAgID48L3NhLWljb24+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuICA8IS0tIG1pZGRsZSByZWdpb24gLS0+XG4gIEBpZiAoISFkaWFsb2dEYXRhPy5taWRkbGVSZWdpb24pIHtcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGlhbG9nRGF0YT8ubWlkZGxlUmVnaW9uIGFzIG1pZGRsZVJlZ2lvblwiPlxuICAgICAgPGRpdiBjbGFzcz1cImltYWdlLWRlc2NyaXB0aW9uLWNvbnRhaW5lciB7eyBtaWRkbGVSZWdpb24/LmNsYXNzTmFtZSB9fVwiPlxuICAgICAgICA8c2EtbWVzc2FnZS1iYW5uZXItdjJcbiAgICAgICAgW21lc3NhZ2VUeXBlXT1cIm1pZGRsZVJlZ2lvbj8ubWVzc2FnZVR5cGUgfHwgJ2RlZmF1bHQnXCJcbiAgICAgICAgW21lc3NhZ2VJY29uXT1cIm1pZGRsZVJlZ2lvbj8ubWVzc2FnZUljb25cIlxuICAgICAgICBbbWVzc2FnZUljb25TaXplXT1cIm1pZGRsZVJlZ2lvbj8ubWVzc2FnZUljb25TaXplXCJcbiAgICAgICAgW3RpdGxlXT1cIm1pZGRsZVJlZ2lvbj8udGl0bGVcIlxuICAgICAgICBbZGVzY3JpcHRpb25dPVwibWlkZGxlUmVnaW9uPy5kZXNjcmlwdGlvblwiXG4gICAgICAgIFtidXR0b25zXT1cIm1pZGRsZVJlZ2lvbj8uYnV0dG9uc1wiXG4gICAgICAgIFtmb3JtQ29uZmlnXT1cIm1pZGRsZVJlZ2lvbj8uY29udGVudD8uZm9ybUNvbmZpZ1wiXG4gICAgICAgIChvbkZvcm1FdmVudCk9XCJvblVuaWZpZWRGb3JtRXZlbnQoJGV2ZW50KVwiXG4gICAgICAgIChidXR0b25DbGljayk9XCJtaWRkbGVSZWdpb24/LmJ1dHRvbnMgPyBvbkJ1dHRvbkNsaWNrKCRldmVudCkgOiAnJ1wiXG4gICAgICA+XG4gICAgICA8L3NhLW1lc3NhZ2UtYmFubmVyLXYyPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIH1cbiAgPCEtLSBsb3dlciBtZXNzYWdlIGJhbm5lciByZWdpb24gLS0+XG4gIEBpZiAoISFkaWFsb2dEYXRhPy5sb3dlck1lc3NhZ2VCYW5uZXJzKSB7XG4gICAgPGRpdiBjbGFzcz1cImxvd2VyLW1lc3NhZ2UtY29udGFpbmVyXCI+XG4gICAgICBAZm9yIChcbiAgICAgICAgbWVzc2FnZUJhbm5lciBvZiBkaWFsb2dEYXRhPy5sb3dlck1lc3NhZ2VCYW5uZXJzO1xuICAgICAgICB0cmFjayBtZXNzYWdlQmFubmVyLmNvbnRlbnRcbiAgICAgICkge1xuICAgICAgICA8c2EtbWVzc2FnZS1iYW5uZXJcbiAgICAgICAgICBbdHlwZV09XCJtZXNzYWdlQmFubmVyPy50eXBlXCJcbiAgICAgICAgICBbYmFubmVySWNvbl09XCJtZXNzYWdlQmFubmVyPy5iYW5uZXJJY29uXCJcbiAgICAgICAgICBbYnV0dG9uSWNvbl09XCJtZXNzYWdlQmFubmVyPy5idXR0b25JY29uXCJcbiAgICAgICAgICBbYmFubmVySWNvblNpemVdPVwibWVzc2FnZUJhbm5lcj8uYmFubmVySWNvblNpemUgfHwgJzI0J1wiXG4gICAgICAgICAgW2J1dHRvbl09XCJtZXNzYWdlQmFubmVyPy5idXR0b25cIlxuICAgICAgICAgIFtzdHlsZV09XCJtZXNzYWdlQmFubmVyPy5zdHlsZSB8fCAnd2lkdGg6LXdlYmtpdC1maWxsLWF2YWlsYWJsZSdcIlxuICAgICAgICAgIChhY3Rpb25DbGljayk9XCJvbkJ1dHRvbkNsaWNrKG1lc3NhZ2VCYW5uZXI/LmJ1dHRvbiwgJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInt7IG1lc3NhZ2VCYW5uZXI/LmNsYXNzTmFtZSB9fSBtZXNzYWdlLWNvbnRlbnQtc3R5bGVcIlxuICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICB7eyBtZXNzYWdlQmFubmVyPy5jb250ZW50IH19XG4gICAgICAgIDwvc2EtbWVzc2FnZS1iYW5uZXI+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH1cbiAgPCEtLSBidXR0b24gcmVnaW9uIC0tPlxuICBAaWYgKCEhZGlhbG9nRGF0YT8uYnV0dG9ucykge1xuICAgIDxkaXYgY2xhc3M9XCJidXR0b24tZ3JvdXAtY29udGFpbmVyXCI+XG4gICAgICBAZm9yIChidXR0b24gb2YgZGlhbG9nRGF0YT8uYnV0dG9uczsgdHJhY2sgYnV0dG9uLnRleHQpIHtcbiAgICAgICAgPHNhLWJ1dHRvblxuICAgICAgICAgIFt0ZXh0XT1cImJ1dHRvbi50ZXh0XCJcbiAgICAgICAgICBbaWNvbl09XCJidXR0b24uaWNvblwiXG4gICAgICAgICAgW3NpemVdPVwiYnV0dG9uLnNpemVcIlxuICAgICAgICAgIFt0eXBlXT1cImJ1dHRvbi50eXBlXCJcbiAgICAgICAgICBbc3RhdGVdPVwiYnV0dG9uLnN0YXRlXCJcbiAgICAgICAgICBbaWNvblBvc2l0aW9uXT1cImJ1dHRvbi5pY29uUG9zaXRpb25cIlxuICAgICAgICAgIFtidXR0b25JY29uU2l6ZV09XCJidXR0b24uYnV0dG9uSWNvblNpemVcIlxuICAgICAgICAgIChvbkNsaWNrRXZlbnQpPVwib25CdXR0b25DbGljayhidXR0b24sICRldmVudClcIlxuICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYnV0dG9uLnRleHRcIlxuICAgICAgICA+XG4gICAgICAgIDwvc2EtYnV0dG9uPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICB9XG4gIEBpZiAoISFkaWFsb2dEYXRhPy5idXR0b25zV2l0aFR5cGUpIHtcbiAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uV2l0aFR5cGUtZ3JvdXAtY29udGFpbmVyXCI+XG4gICAgICBAZm9yIChidXR0b24gb2YgZGlhbG9nRGF0YT8uYnV0dG9uc1dpdGhUeXBlOyB0cmFjayBidXR0b24udGV4dCkge1xuICAgICAgICBAaWYgKGJ1dHRvbj8udHlwZSA9PT0gXCJjaGVja2JveFwiKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNoZWNrYm94LWNvbnRhaW5lciB7eyBidXR0b24uY2xhc3NOYW1lIH19XCI+XG4gICAgICAgICAgICA8bWF0LWNoZWNrYm94IFtpZF09XCJidXR0b24uaWRcIiAoY2hhbmdlKT1cIm9uQnV0dG9uQ2xpY2soYnV0dG9uKVwiIGNsYXNzPVwiY2hlY2tib3gtc3R5bGVcIj57e1xuICAgICAgICAgICAgICBidXR0b24udGV4dFxuICAgICAgICAgICAgfX08L21hdC1jaGVja2JveD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIDwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ==
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXBGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7Ozs7O0FBU2pDLE1BQU0sT0FBTyxlQUFlO0lBa0IxQixZQUNxQixTQUF3QyxFQUNmLElBQVM7UUFEbEMsY0FBUyxHQUFULFNBQVMsQ0FBK0I7UUFDZixTQUFJLEdBQUosSUFBSSxDQUFLO1FBbkJ2RCxlQUFVLEdBQTJCLEVBQUUsQ0FBQztRQWU5QixzQkFBaUIsR0FBRyxJ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V0FDUCxDQUFDLHNCQUFzQixFQUFFLHdCQUF3QixFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQzs7MEJBdUI5SixRQUFROzswQkFDUixRQUFROzswQkFBSSxNQUFNOzJCQUFDLGVBQWU7eUNBbEI1QixVQUFVO3NCQUFsQixLQUFLO2dCQWNJLGlCQUFpQjtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE9wdGlvbmFsLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1lc3NhZ2VCYW5uZXJDb21wb25lbnQgfSBmcm9tICcuLi9tZXNzYWdlLWJhbm5lci9tZXNzYWdlLWJhbm5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uQ2xpY2tFdmVudCwgQnV0dG9uSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9idXR0b24taW50ZXJmYWNlJztcbmltcG9ydCB7IE1lc3NhZ2VCYW5uZXJWMkNvbXBvbmVudCB9IGZyb20gJy4uL21lc3NhZ2UtYmFubmVyLXYyL21lc3NhZ2UtYmFubmVyLXYyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vaWNvbi9pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ01vZHVsZSwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IEZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0taW5wdXQvZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgaXNBcnJheSB9IGZyb20gJ2xvZGFzaCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NhLWRpYWxvZycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtNZXNzYWdlQmFubmVyQ29tcG9uZW50LCBNZXNzYWdlQmFubmVyVjJDb21wb25lbnQsIENvbW1vbk1vZHVsZSwgQnV0dG9uQ29tcG9uZW50LCBNYXRDaGVja2JveE1vZHVsZSwgSWNvbkNvbXBvbmVudCwgTWF0RGlhbG9nTW9kdWxlLCBGb3JtSW5wdXRDb21wb25lbnRdLFxuICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGlhbG9nLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBEaWFsb2dDb21wb25lbnQge1xuICBmb3JtVmFsdWVzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XG4gIEBJbnB1dCgpIGRpYWxvZ0RhdGE6IHtcbiAgICB0b3BNZXNzYWdlQmFubmVycz86IGFueVtdO1xuICAgIHRvcFJlZ2lvbkljb25TaXplPzogc3RyaW5nO1xuICAgIGNsYXNzTmFtZT86IHN0cmluZztcbiAgICBjbG9zZUJ1dHRvblNpemU/OiBzdHJpbmc7XG4gICAgbWlkZGxlUmVnaW9uPzogYW55O1xuICAgIHRvcFJlZ2lvbkljb24/OiBzdHJpbmc7XG4gICAgbG93ZXJNZXNzYWdlQmFubmVycz86IGFueVtdO1xuICAgIGJ1dHRvbnM/OiBCdXR0b25JbnRlcmZhY2VbXTtcbiAgICBidXR0b25zV2l0aFR5cGU/OiBhbnlbXTtcbiAgICBjbG9zZUJ1dHRvbj86IHN0cmluZztcbiAgICBzaG93Q2xvc2VCdXR0b24/OiBib29sZWFuO1xuICB9O1xuXG4gIEBPdXRwdXQoKSBkaWFsb2dCdXR0b25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RGlhbG9nQ29tcG9uZW50PixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IGFueVxuICApIHtcbiAgICBpZiAodGhpcy5kYXRhKSB7XG4gICAgICB0aGlzLmRpYWxvZ0RhdGEgPSB0aGlzLmRhdGE7XG4gICAgfVxuICB9XG5cbiAgb25CdXR0b25DbGljayhidXR0b246IGFueSwgZXZlbnQ/OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQ/LmV2dCkge1xuICAgICAgZXZlbnQ/LmV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgZXZlbnQ/LmV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gICAgdGhpcy5kaWFsb2dCdXR0b25DbGljay5lbWl0KHtldmVudCwgYnV0dG9ufSk7XG4gIH1cbiAgb25NaWRkbGVSZWdpb25CdXR0b25DbGljayhldmVudDoge2J1dHRvbjogYW55LCBkYXRhPzogYW55fSk6IHZvaWQge1xuICAgIC8vIFBhc3MgdGhlIGV2ZW50IHVwIHRvIHRoZSBwYXJlbnQgY29tcG9uZW50XG4gICAgdGhpcy5kYXRhLm9uTWlkZGxlUmVnaW9uQnV0dG9uQ2xpY2s/LihldmVudCk7XG4gIH1cbiAgaGFuZGxlQnV0dG9uQ2xpY2soZXZlbnQ6IEJ1dHRvbkNsaWNrRXZlbnQpIHtcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoe2V2ZW50fSk7XG4gIH1cblxuICBvbkNsb3NlQnV0dG9uQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5kaWFsb2dEYXRhPy5taWRkbGVSZWdpb24/LmNvbnRlbnQ/LmZvcm1Db25maWc/LmZpZWxkcz8uZm9yRWFjaCgoaW5wdXQ6IGFueSkgPT4ge1xuICAgICAgaW5wdXQudmFsdWUgPSAnJztcbiAgICB9KTtcbiAgICBpZiAodGhpcy5kaWFsb2dEYXRhPy5taWRkbGVSZWdpb24/LmNvbnRlbnQ/LmZvcm1Db25maWcpIHtcbiAgICAgIHRoaXMuZGlhbG9nRGF0YS5taWRkbGVSZWdpb24uY29udGVudC5mb3JtQ29uZmlnLmNoaXBzID0gW107XG4gICAgfSAgICBcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyBldmVudDogZXZlbnQsIHR5cGU6ICdjbG9zZScgfSk7XG4gIH1cbi8vIGFsbCBmb3JtIHJlbGF0ZWQgZXZlbnRzXG4gIG9uVW5pZmllZEZvcm1FdmVudChldmVudDoge3R5cGU6IHN0cmluZywgZGF0YTogYW55fSk6IHZvaWQge1xuICAgIHN3aXRjaChldmVudC50eXBlKSB7XG4gICAgICBjYXNlICdmb3JtLWlucHV0LWNoYW5nZSc6XG4gICAgICAgIHRoaXMub25Gb3JtSW5wdXRDaGFuZ2UoZXZlbnQuZGF0YSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZm9ybS1tb2RlbC1jaGFuZ2UnOlxuICAgICAgICAvLyBTdG9yZSB0aGUgZm9ybSBtb2RlbCBmb3IgZXh0ZXJuYWwgYWNjZXNzXG4gICAgICAgIHRoaXMuZm9ybVZhbHVlcyA9IHsgLi4udGhpcy5mb3JtVmFsdWVzLCAuLi5ldmVudC5kYXRhIH07XG4gICAgICAgIHRoaXMuZGlhbG9nQnV0dG9uQ2xpY2suZW1pdCh7IGV2ZW50OiBldmVudC5kYXRhLCB0eXBlOiAnZm9ybS1tb2RlbC1jaGFuZ2UnIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2N1c3RvbS1idXR0b24tY2xpY2snOlxuICAgICAgICAvLyBTdG9yZSBmb3JtIG1vZGVsIGRhdGEgaWYgcHJvdmlkZWRcbiAgICAgICAgaWYgKGV2ZW50LmRhdGE/LmZvcm1Nb2RlbCkge1xuICAgICAgICAgIHRoaXMuZm9ybVZhbHVlcyA9IHsgLi4udGhpcy5mb3JtVmFsdWVzLCAuLi5ldmVudC5kYXRhLmZvcm1Nb2RlbCB9O1xuICAgICAgICB9XG4gICAgICAgIHRoaXMub25CdXR0b25DbGljayhldmVudC5kYXRhKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdjaGlwLXJlbW92ZSc6XG4gICAgICAgIHRoaXMub25SZW1vdmVVc2VyKGV2ZW50LmRhdGEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGNvbnNvbGUud2FybignVW5rbm93biBmb3JtIGV2ZW50IHR5cGU6JywgZXZlbnQudHlwZSk7XG4gICAgfVxuICB9XG4gIG9uRm9ybUlucHV0Q2hhbmdlKGV2ZW50OiBhbnkpIHtcbiAgICBsZXQgcHJvY2Vzc2VkVmFsdWUgPSBldmVudC52YWx1ZTsgXG4gICAgaWYgKGlzQXJyYXkoZXZlbnQudmFsdWUpKSB7XG4gICAgICBwcm9jZXNzZWRWYWx1ZSA9IGV2ZW50LnZhbHVlLm1hcCgoY2hpcDogYW55KSA9PiBjaGlwLnZhbHVlIHx8IGNoaXAubGFiZWwgfHwgY2hpcCk7XG4gICAgfVxuICAgIHRoaXMuZm9ybVZhbHVlc1tldmVudC5sYWJlbF0gPSBwcm9jZXNzZWRWYWx1ZTtcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyBldmVudCwgdHlwZTogJ2Zvcm0taW5wdXQtY2hhbmdlJyB9KTtcbiAgfVxuXG4gIG9uUmVtb3ZlVXNlcihjaGlwOiBhbnkpIHtcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyBldmVudDogY2hpcCwgdHlwZTogJ2NoaXAtcmVtb3ZlJyB9KTtcbiAgfVxuXG4gIC8vIE1ldGhvZCB0byByZXNldCB0aGUgZm9ybSB0aHJvdWdoIG1lc3NhZ2UtYmFubmVyLXYyIGNvbXBvbmVudFxuICByZXNldEZvcm0oKTogdm9pZCB7XG4gICAgLy8gRW1pdCBmb3JtIHJlc2V0IGV2ZW50IHRvIG1lc3NhZ2UtYmFubmVyLXYyXG4gICAgdGhpcy5mb3JtVmFsdWVzID0ge307XG4gICAgLy8gVGhlIG1lc3NhZ2UtYmFubmVyLXYyIGNvbXBvbmVudCB3aWxsIGhhbmRsZSB0aGUgYWN0dWFsIGZvcm0gcmVzZXRcbiAgICAvLyB3aGVuIGl0IHJlY2VpdmVzIHRoaXMgZXZlbnRcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyB0eXBlOiAnZm9ybS1yZXNldCcgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkaWFsb2ctY29udGFpbmVyIHt7IGRpYWxvZ0RhdGE/LmNsYXNzTmFtZSB9fVwiPlxuICA8IS0tIHRvcCBiYW5uZXIgcmVnaW9uIC0tPlxuICA8ZGl2IGNsYXNzPVwidG9wLWNvbnRhaW5lclwiPlxuICAgIEBpZiAoISFkaWFsb2dEYXRhPy50b3BNZXNzYWdlQmFubmVycykge1xuICAgICAgPGRpdiBjbGFzcz1cInRvcC1tZXNzYWdlLWNvbnRhaW5lclwiPlxuICAgICAgICBAZm9yIChcbiAgICAgICAgICBtZXNzYWdlQmFubmVyIG9mIGRpYWxvZ0RhdGE/LnRvcE1lc3NhZ2VCYW5uZXJzO1xuICAgICAgICAgIHRyYWNrIG1lc3NhZ2VCYW5uZXIuY29udGVudFxuICAgICAgICApIHtcbiAgICAgICAgICA8c2EtbWVzc2FnZS1iYW5uZXJcbiAgICAgICAgICAgIFt0eXBlXT1cIm1lc3NhZ2VCYW5uZXI/LnR5cGVcIlxuICAgICAgICAgICAgW2Jhbm5lckljb25dPVwibWVzc2FnZUJhbm5lcj8uYmFubmVySWNvblwiXG4gICAgICAgICAgICBbYmFubmVySWNvblNpemVdPVwibWVzc2FnZUJhbm5lcj8uYmFubmVySWNvblNpemUgfHwgJzI0J1wiXG4gICAgICAgICAgICBbYnV0dG9uXT1cIm1lc3NhZ2VCYW5uZXI/LmJ1dHRvblwiXG4gICAgICAgICAgICAoYWN0aW9uQ2xpY2spPVwib25CdXR0b25DbGljayhtZXNzYWdlQmFubmVyPy5idXR0b24sICRldmVudClcIlxuICAgICAgICAgICAgW3N0eWxlXT1cIm1lc3NhZ2VCYW5uZXI/LnN0eWxlIHx8ICd3aWR0aDozOS40MzhyZW0nXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwie3sgbWVzc2FnZUJhbm5lcj8uY2xhc3NOYW1lIH19IG1lc3NhZ2UtY29udGVudC1zdHlsZVwiPlxuICAgICAgICAgICAgICB7eyBtZXNzYWdlQmFubmVyPy5jb250ZW50IH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3NhLW1lc3NhZ2UtYmFubmVyPlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gICAgQGlmKCEhZGlhbG9nRGF0YT8udG9wUmVnaW9uSWNvbil7XG4gICAgICA8ZGl2IGNsYXNzPVwidG9wLWljb24tY29udGFpbmVyXCI+XG4gICAgICAgIDxzYS1pY29uXG4gICAgICAgICAgW2ljb25dPVwiZGlhbG9nRGF0YT8udG9wUmVnaW9uSWNvblwiXG4gICAgICAgICAgY2xhc3M9XCJkLWZsZXhcIlxuICAgICAgICAgIHNpemU9XCJ7eyBkaWFsb2dEYXRhPy50b3BSZWdpb25JY29uU2l6ZSB9fVwiXG4gICAgICAgID48L3NhLWljb24+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gICAgQGlmICghIWRpYWxvZ0RhdGE/LmNsb3NlQnV0dG9uIHx8IGRpYWxvZ0RhdGE/LnNob3dDbG9zZUJ1dHRvbikge1xuICAgICAgPGRpdiBjbGFzcz1cImNyb3NzLWJ0blwiIChjbGljayk9XCJvbkNsb3NlQnV0dG9uQ2xpY2soJGV2ZW50KVwiPlxuICAgICAgICA8c2EtaWNvblxuICAgICAgICAgIFtpY29uXT1cImRpYWxvZ0RhdGE/LmNsb3NlQnV0dG9uIHx8ICdjbG9zZU91dGxpbmVkJ1wiXG4gICAgICAgICAgY2xhc3M9XCJkLWZsZXhcIlxuICAgICAgICAgIHNpemU9XCJ7eyBkaWFsb2dEYXRhPy5jbG9zZUJ1dHRvblNpemUgfHwgJzIwJyB9fVwiXG4gICAgICAgID48L3NhLWljb24+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuICA8IS0tIG1pZGRsZSByZWdpb24gLS0+XG4gIEBpZiAoISFkaWFsb2dEYXRhPy5taWRkbGVSZWdpb24pIHtcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGlhbG9nRGF0YT8ubWlkZGxlUmVnaW9uIGFzIG1pZGRsZVJlZ2lvblwiPlxuICAgICAgPGRpdiBjbGFzcz1cImltYWdlLWRlc2NyaXB0aW9uLWNvbnRhaW5lciB7eyBtaWRkbGVSZWdpb24/LmNsYXNzTmFtZSB9fVwiPlxuICAgICAgICA8c2EtbWVzc2FnZS1iYW5uZXItdjJcbiAgICAgICAgW21lc3NhZ2VUeXBlXT1cIm1pZGRsZVJlZ2lvbj8ubWVzc2FnZVR5cGUgfHwgJ2RlZmF1bHQnXCJcbiAgICAgICAgW21lc3NhZ2VJY29uXT1cIm1pZGRsZVJlZ2lvbj8ubWVzc2FnZUljb25cIlxuICAgICAgICBbbWVzc2FnZUljb25TaXplXT1cIm1pZGRsZVJlZ2lvbj8ubWVzc2FnZUljb25TaXplXCJcbiAgICAgICAgW3RpdGxlXT1cIm1pZGRsZVJlZ2lvbj8udGl0bGVcIlxuICAgICAgICBbZGVzY3JpcHRpb25dPVwibWlkZGxlUmVnaW9uPy5kZXNjcmlwdGlvblwiXG4gICAgICAgIFtidXR0b25zXT1cIm1pZGRsZVJlZ2lvbj8uYnV0dG9uc1wiXG4gICAgICAgIFtmb3JtQ29uZmlnXT1cIm1pZGRsZVJlZ2lvbj8uY29udGVudD8uZm9ybUNvbmZpZ1wiXG4gICAgICAgIChvbkZvcm1FdmVudCk9XCJvblVuaWZpZWRGb3JtRXZlbnQoJGV2ZW50KVwiXG4gICAgICAgIChidXR0b25DbGljayk9XCJtaWRkbGVSZWdpb24/LmJ1dHRvbnMgPyBvbkJ1dHRvbkNsaWNrKCRldmVudCkgOiAnJ1wiXG4gICAgICA+XG4gICAgICA8L3NhLW1lc3NhZ2UtYmFubmVyLXYyPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIH1cbiAgPCEtLSBsb3dlciBtZXNzYWdlIGJhbm5lciByZWdpb24gLS0+XG4gIEBpZiAoISFkaWFsb2dEYXRhPy5sb3dlck1lc3NhZ2VCYW5uZXJzKSB7XG4gICAgPGRpdiBjbGFzcz1cImxvd2VyLW1lc3NhZ2UtY29udGFpbmVyXCI+XG4gICAgICBAZm9yIChcbiAgICAgICAgbWVzc2FnZUJhbm5lciBvZiBkaWFsb2dEYXRhPy5sb3dlck1lc3NhZ2VCYW5uZXJzO1xuICAgICAgICB0cmFjayBtZXNzYWdlQmFubmVyLmNvbnRlbnRcbiAgICAgICkge1xuICAgICAgICA8c2EtbWVzc2FnZS1iYW5uZXJcbiAgICAgICAgICBbdHlwZV09XCJtZXNzYWdlQmFubmVyPy50eXBlXCJcbiAgICAgICAgICBbYmFubmVySWNvbl09XCJtZXNzYWdlQmFubmVyPy5iYW5uZXJJY29uXCJcbiAgICAgICAgICBbYnV0dG9uSWNvbl09XCJtZXNzYWdlQmFubmVyPy5idXR0b25JY29uXCJcbiAgICAgICAgICBbYmFubmVySWNvblNpemVdPVwibWVzc2FnZUJhbm5lcj8uYmFubmVySWNvblNpemUgfHwgJzI0J1wiXG4gICAgICAgICAgW2J1dHRvbl09XCJtZXNzYWdlQmFubmVyPy5idXR0b25cIlxuICAgICAgICAgIFtzdHlsZV09XCJtZXNzYWdlQmFubmVyPy5zdHlsZSB8fCAnd2lkdGg6LXdlYmtpdC1maWxsLWF2YWlsYWJsZSdcIlxuICAgICAgICAgIChhY3Rpb25DbGljayk9XCJvbkJ1dHRvbkNsaWNrKG1lc3NhZ2VCYW5uZXI/LmJ1dHRvbiwgJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInt7IG1lc3NhZ2VCYW5uZXI/LmNsYXNzTmFtZSB9fSBtZXNzYWdlLWNvbnRlbnQtc3R5bGVcIlxuICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICB7eyBtZXNzYWdlQmFubmVyPy5jb250ZW50IH19XG4gICAgICAgIDwvc2EtbWVzc2FnZS1iYW5uZXI+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH1cbiAgPCEtLSBidXR0b24gcmVnaW9uIC0tPlxuICBAaWYgKCEhZGlhbG9nRGF0YT8uYnV0dG9ucykge1xuICAgIDxkaXYgY2xhc3M9XCJidXR0b24tZ3JvdXAtY29udGFpbmVyXCI+XG4gICAgICBAZm9yIChidXR0b24gb2YgZGlhbG9nRGF0YT8uYnV0dG9uczsgdHJhY2sgYnV0dG9uLnRleHQpIHtcbiAgICAgICAgPHNhLWJ1dHRvblxuICAgICAgICAgIFt0ZXh0XT1cImJ1dHRvbi50ZXh0XCJcbiAgICAgICAgICBbaWNvbl09XCJidXR0b24uaWNvblwiXG4gICAgICAgICAgW3NpemVdPVwiYnV0dG9uLnNpemVcIlxuICAgICAgICAgIFt0eXBlXT1cImJ1dHRvbi50eXBlXCJcbiAgICAgICAgICBbc3RhdGVdPVwiYnV0dG9uLnN0YXRlXCJcbiAgICAgICAgICBbaWNvblBvc2l0aW9uXT1cImJ1dHRvbi5pY29uUG9zaXRpb25cIlxuICAgICAgICAgIFtidXR0b25JY29uU2l6ZV09XCJidXR0b24uYnV0dG9uSWNvblNpemVcIlxuICAgICAgICAgIChvbkNsaWNrRXZlbnQpPVwib25CdXR0b25DbGljayhidXR0b24sICRldmVudClcIlxuICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYnV0dG9uLnRleHRcIlxuICAgICAgICA+XG4gICAgICAgIDwvc2EtYnV0dG9uPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICB9XG4gIEBpZiAoISFkaWFsb2dEYXRhPy5idXR0b25zV2l0aFR5cGUpIHtcbiAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uV2l0aFR5cGUtZ3JvdXAtY29udGFpbmVyXCI+XG4gICAgICBAZm9yIChidXR0b24gb2YgZGlhbG9nRGF0YT8uYnV0dG9uc1dpdGhUeXBlOyB0cmFjayBidXR0b24udGV4dCkge1xuICAgICAgICBAaWYgKGJ1dHRvbj8udHlwZSA9PT0gXCJjaGVja2JveFwiKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNoZWNrYm94LWNvbnRhaW5lciB7eyBidXR0b24uY2xhc3NOYW1lIH19XCI+XG4gICAgICAgICAgICA8bWF0LWNoZWNrYm94IFtpZF09XCJidXR0b24uaWRcIiAoY2hhbmdlKT1cIm9uQnV0dG9uQ2xpY2soYnV0dG9uKVwiIGNsYXNzPVwiY2hlY2tib3gtc3R5bGVcIj57e1xuICAgICAgICAgICAgICBidXR0b24udGV4dFxuICAgICAgICAgICAgfX08L21hdC1jaGVja2JveD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIDwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ==
|