bpm-core 0.0.59 → 0.0.60
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/components/app-component-sections/main-request-details/main-request-details.component.mjs +3 -3
- package/esm2022/lib/components/app-component-sections/service-header/service-header.component.mjs +3 -3
- package/esm2022/lib/components/app-component-sections/workflow-section/workflow-section.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/add-attachment-section/add-attachment-section.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/attachment-section/attachment-section.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/checkbox/checkbox.component.mjs +14 -7
- package/esm2022/lib/components/shared-components/form-field/control-value-accessor.directive.mjs +6 -4
- package/esm2022/lib/components/shared-components/form-field/custom-searchable-autocomplete/custom-searchable.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/date-picker/date-picker.component.mjs +4 -3
- package/esm2022/lib/components/shared-components/form-field/date-range-picker/date-range-picker.component.mjs +8 -4
- package/esm2022/lib/components/shared-components/form-field/doc-uploader/docs-uploader.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/form-label/form-label.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/input/input.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/input-currency/input-currency.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/input-email/input-email.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/input-mask/input-mask.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/input-number/input-number.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/input-telephone/input-telephone.component.mjs +23 -8
- package/esm2022/lib/components/shared-components/form-field/radio/radio.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/search-employee/search-employee.component.mjs +22 -17
- package/esm2022/lib/components/shared-components/form-field/textarea/textarea.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/toggle-button/toggle-button.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/validation-errors/validation-errors.component.mjs +1 -2
- package/esm2022/lib/testComponent/request-details-section/request-details-section.component.mjs +27 -4
- package/fesm2022/bpm-core.mjs +142 -87
- package/fesm2022/bpm-core.mjs.map +1 -1
- package/lib/components/shared-components/form-field/checkbox/checkbox.component.d.ts +3 -2
- package/lib/components/shared-components/form-field/control-value-accessor.directive.d.ts +2 -1
- package/lib/components/shared-components/form-field/input-telephone/input-telephone.component.d.ts +7 -1
- package/lib/components/shared-components/form-field/shared-imports.d.ts +2 -2
- package/lib/testComponent/request-details-section/request-details-section.component.d.ts +3 -1
- package/package.json +1 -1
- package/src/lib/assets/scss/_general.scss +64 -152
- package/src/lib/assets/scss/_upgrade.scss +6 -0
- package/src/lib/assets/scss/base.scss +21 -16
|
@@ -123,7 +123,7 @@ export class WorkflowSectionComponent {
|
|
|
123
123
|
});
|
|
124
124
|
}
|
|
125
125
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: WorkflowSectionComponent, deps: [{ token: i1.CoreI18nService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
126
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: WorkflowSectionComponent, isStandalone: true, selector: "app-workflow-section", inputs: { sections: "sections", isReadOnly: "isReadOnly", isLoading: "isLoading", form: "form", contentClass: "contentClass", sectionsController: "sectionsController", segmentDynamicLoaderService: "segmentDynamicLoaderService", sectionFormComponent: "sectionFormComponent", sectionName: "sectionName" }, outputs: { sectionSubmitted: "sectionSubmitted" }, viewQueries: [{ propertyName: "formStateObject", first: true, predicate: ["f"], descendants: true }], ngImport: i0, template: "<form #f=\"ngForm\" autocomplete=\"off\">\r\n <div *ngIf=\"form?.header?.status?.key !== 'NEW' \" class=\"mt-n3\" id=\"accordion\" role=\"tablist\"\r\n aria-multiselectable=\"true\">\r\n <app-main-request-details [lov]=\"form?.lovs\" [form]=\"form\" [section]=\"form?.sections[0]\">\r\n <ng-container *ngTemplateOutlet=\"contentReqDet\"></ng-container>\r\n </app-main-request-details>\r\n <header class=\"header-line fs-12 fw-medium fc-dark-gray mt-sm-5 mt-4 mb-4\" *ngIf=\"form?.sections.length > 1\">\r\n {{i18n.translate('Approvals')}}\r\n </header>\r\n <mat-accordion class=\"primary-accordion main-approval\">\r\n <ng-container *ngFor=\"let section of form?.sections; let i = index\">\r\n <app-form-section *ngIf=\"i !== 0\" class=\"app-form-section\" [segmentDynamicLoaderService]=\"segmentDynamicLoaderService\" [section]=section [lov]=\"form?.lovs\"\r\n [isReadOnly]=\"section.header.readOnly\" [form]=\"form\" [controllers]=\"sectionsController\">\r\n </app-form-section>\r\n </ng-container>\r\n </mat-accordion>\r\n </div>\r\n\r\n <section *ngIf=\"form?.header?.status?.key === 'NEW' \" class=\"default-box box-shadow p-4\">\r\n <ng-container *ngTemplateOutlet=\"contentReqDet\"></ng-container>\r\n </section>\r\n\r\n</form>\r\n\r\n\r\n<ng-template #contentReqDet><ng-content></ng-content></ng-template>\r\n", styles: ["@charset \"UTF-8\";.primary-accordion{--accordion-height: auto;--indicator-bc: transparent;--indicator-bc-active: transparent;--indicator-icon: \"\\e9bc\";--indicator-icon-active: \"\\ea34\";--indicator-color: var(--coral);--indicator-color-active: var(--dark-gray);--accordion-radius: 4px;--accordion-border-active: 1px solid var(--gray);--accordion-shadow: 0 7px 10px 0 rgba(var(--rgb-black), 3%);--accordion-shadow-active: none;--panel-padding: 1.5rem;--panel-body-padding: 0 1.5rem 1.5rem}@media (max-width: 576px){.primary-accordion{--accordion-height: 110px;--panel-padding: 1.5rem 1rem;--panel-body-padding: 0 1rem 1rem}}.primary-accordion.main-approval{position:relative}.primary-accordion.main-approval:before{content:\"\";position:absolute;top:0;bottom:0;margin:2rem;width:1px;height:calc(100% - 2rem);background-color:var(--dark-gray);z-index:0}@media (max-width: 576px){.workflow-all-btns ds-button::part(base){--btn-padding: 0 .5rem;--btn-fs: .75rem;--btn-height: var(--default-size-sm);--btn-min-width: var(--default-size-sm)}}\n"], dependencies: [{ kind: "directive", type: MatAccordion, selector: "mat-accordion", inputs: ["hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FormSectionComponent, selector: "app-form-section", inputs: ["requestDetails", "section", "form", "lov", "isReadOnly", "controllers", "segmentDynamicLoaderService", "sectionFormComponent", "sectionName"] }, { kind: "component", type: MainRequestDetailsComponent, selector: "app-main-request-details", inputs: ["section", "lov", "form"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
|
|
126
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: WorkflowSectionComponent, isStandalone: true, selector: "app-workflow-section", inputs: { sections: "sections", isReadOnly: "isReadOnly", isLoading: "isLoading", form: "form", contentClass: "contentClass", sectionsController: "sectionsController", segmentDynamicLoaderService: "segmentDynamicLoaderService", sectionFormComponent: "sectionFormComponent", sectionName: "sectionName" }, outputs: { sectionSubmitted: "sectionSubmitted" }, viewQueries: [{ propertyName: "formStateObject", first: true, predicate: ["f"], descendants: true }], ngImport: i0, template: "<form #f=\"ngForm\" autocomplete=\"off\">\r\n <div *ngIf=\"form?.header?.status?.key !== 'NEW' \" class=\"mt-n3\" id=\"accordion\" role=\"tablist\"\r\n aria-multiselectable=\"true\">\r\n <app-main-request-details [lov]=\"form?.lovs\" [form]=\"form\" [section]=\"form?.sections[0]\">\r\n <ng-container *ngTemplateOutlet=\"contentReqDet\"></ng-container>\r\n </app-main-request-details>\r\n <header class=\"header-line fs-12 fw-medium fc-dark-gray mt-sm-5 mt-4 mb-4\" *ngIf=\"form?.sections.length > 1\">\r\n {{i18n.translate('Approvals')}}\r\n </header>\r\n <mat-accordion class=\"primary-accordion main-approval\">\r\n <ng-container *ngFor=\"let section of form?.sections; let i = index\">\r\n <app-form-section *ngIf=\"i !== 0\" class=\"app-form-section\" [segmentDynamicLoaderService]=\"segmentDynamicLoaderService\" [section]=section [lov]=\"form?.lovs\"\r\n [isReadOnly]=\"section.header.readOnly\" [form]=\"form\" [controllers]=\"sectionsController\">\r\n </app-form-section>\r\n </ng-container>\r\n </mat-accordion>\r\n </div>\r\n\r\n <section *ngIf=\"form?.header?.status?.key === 'NEW' \" class=\"default-box box-shadow p-4 rounded-4\">\r\n <ng-container *ngTemplateOutlet=\"contentReqDet\"></ng-container>\r\n </section>\r\n\r\n</form>\r\n\r\n\r\n<ng-template #contentReqDet><ng-content></ng-content></ng-template>\r\n", styles: ["@charset \"UTF-8\";.primary-accordion{--accordion-height: auto;--indicator-bc: transparent;--indicator-bc-active: transparent;--indicator-icon: \"\\e9bc\";--indicator-icon-active: \"\\ea34\";--indicator-color: var(--coral);--indicator-color-active: var(--dark-gray);--accordion-radius: 4px;--accordion-border-active: 1px solid var(--gray);--accordion-shadow: 0 7px 10px 0 rgba(var(--rgb-black), 3%);--accordion-shadow-active: none;--panel-padding: 1.5rem;--panel-body-padding: 0 1.5rem 1.5rem}@media (max-width: 576px){.primary-accordion{--accordion-height: 110px;--panel-padding: 1.5rem 1rem;--panel-body-padding: 0 1rem 1rem}}.primary-accordion.main-approval{position:relative}.primary-accordion.main-approval:before{content:\"\";position:absolute;top:0;bottom:0;margin:2rem;width:1px;height:calc(100% - 2rem);background-color:var(--dark-gray);z-index:0}@media (max-width: 576px){.workflow-all-btns ds-button::part(base){--btn-padding: 0 .5rem;--btn-fs: .75rem;--btn-height: var(--default-size-sm);--btn-min-width: var(--default-size-sm)}}\n"], dependencies: [{ kind: "directive", type: MatAccordion, selector: "mat-accordion", inputs: ["hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FormSectionComponent, selector: "app-form-section", inputs: ["requestDetails", "section", "form", "lov", "isReadOnly", "controllers", "segmentDynamicLoaderService", "sectionFormComponent", "sectionName"] }, { kind: "component", type: MainRequestDetailsComponent, selector: "app-main-request-details", inputs: ["section", "lov", "form"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
|
|
127
127
|
}
|
|
128
128
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: WorkflowSectionComponent, decorators: [{
|
|
129
129
|
type: Component,
|
|
@@ -136,7 +136,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
136
136
|
MainRequestDetailsComponent,
|
|
137
137
|
NgForOf,
|
|
138
138
|
FormsModule
|
|
139
|
-
], standalone: true, template: "<form #f=\"ngForm\" autocomplete=\"off\">\r\n <div *ngIf=\"form?.header?.status?.key !== 'NEW' \" class=\"mt-n3\" id=\"accordion\" role=\"tablist\"\r\n aria-multiselectable=\"true\">\r\n <app-main-request-details [lov]=\"form?.lovs\" [form]=\"form\" [section]=\"form?.sections[0]\">\r\n <ng-container *ngTemplateOutlet=\"contentReqDet\"></ng-container>\r\n </app-main-request-details>\r\n <header class=\"header-line fs-12 fw-medium fc-dark-gray mt-sm-5 mt-4 mb-4\" *ngIf=\"form?.sections.length > 1\">\r\n {{i18n.translate('Approvals')}}\r\n </header>\r\n <mat-accordion class=\"primary-accordion main-approval\">\r\n <ng-container *ngFor=\"let section of form?.sections; let i = index\">\r\n <app-form-section *ngIf=\"i !== 0\" class=\"app-form-section\" [segmentDynamicLoaderService]=\"segmentDynamicLoaderService\" [section]=section [lov]=\"form?.lovs\"\r\n [isReadOnly]=\"section.header.readOnly\" [form]=\"form\" [controllers]=\"sectionsController\">\r\n </app-form-section>\r\n </ng-container>\r\n </mat-accordion>\r\n </div>\r\n\r\n <section *ngIf=\"form?.header?.status?.key === 'NEW' \" class=\"default-box box-shadow p-4\">\r\n <ng-container *ngTemplateOutlet=\"contentReqDet\"></ng-container>\r\n </section>\r\n\r\n</form>\r\n\r\n\r\n<ng-template #contentReqDet><ng-content></ng-content></ng-template>\r\n", styles: ["@charset \"UTF-8\";.primary-accordion{--accordion-height: auto;--indicator-bc: transparent;--indicator-bc-active: transparent;--indicator-icon: \"\\e9bc\";--indicator-icon-active: \"\\ea34\";--indicator-color: var(--coral);--indicator-color-active: var(--dark-gray);--accordion-radius: 4px;--accordion-border-active: 1px solid var(--gray);--accordion-shadow: 0 7px 10px 0 rgba(var(--rgb-black), 3%);--accordion-shadow-active: none;--panel-padding: 1.5rem;--panel-body-padding: 0 1.5rem 1.5rem}@media (max-width: 576px){.primary-accordion{--accordion-height: 110px;--panel-padding: 1.5rem 1rem;--panel-body-padding: 0 1rem 1rem}}.primary-accordion.main-approval{position:relative}.primary-accordion.main-approval:before{content:\"\";position:absolute;top:0;bottom:0;margin:2rem;width:1px;height:calc(100% - 2rem);background-color:var(--dark-gray);z-index:0}@media (max-width: 576px){.workflow-all-btns ds-button::part(base){--btn-padding: 0 .5rem;--btn-fs: .75rem;--btn-height: var(--default-size-sm);--btn-min-width: var(--default-size-sm)}}\n"] }]
|
|
139
|
+
], standalone: true, template: "<form #f=\"ngForm\" autocomplete=\"off\">\r\n <div *ngIf=\"form?.header?.status?.key !== 'NEW' \" class=\"mt-n3\" id=\"accordion\" role=\"tablist\"\r\n aria-multiselectable=\"true\">\r\n <app-main-request-details [lov]=\"form?.lovs\" [form]=\"form\" [section]=\"form?.sections[0]\">\r\n <ng-container *ngTemplateOutlet=\"contentReqDet\"></ng-container>\r\n </app-main-request-details>\r\n <header class=\"header-line fs-12 fw-medium fc-dark-gray mt-sm-5 mt-4 mb-4\" *ngIf=\"form?.sections.length > 1\">\r\n {{i18n.translate('Approvals')}}\r\n </header>\r\n <mat-accordion class=\"primary-accordion main-approval\">\r\n <ng-container *ngFor=\"let section of form?.sections; let i = index\">\r\n <app-form-section *ngIf=\"i !== 0\" class=\"app-form-section\" [segmentDynamicLoaderService]=\"segmentDynamicLoaderService\" [section]=section [lov]=\"form?.lovs\"\r\n [isReadOnly]=\"section.header.readOnly\" [form]=\"form\" [controllers]=\"sectionsController\">\r\n </app-form-section>\r\n </ng-container>\r\n </mat-accordion>\r\n </div>\r\n\r\n <section *ngIf=\"form?.header?.status?.key === 'NEW' \" class=\"default-box box-shadow p-4 rounded-4\">\r\n <ng-container *ngTemplateOutlet=\"contentReqDet\"></ng-container>\r\n </section>\r\n\r\n</form>\r\n\r\n\r\n<ng-template #contentReqDet><ng-content></ng-content></ng-template>\r\n", styles: ["@charset \"UTF-8\";.primary-accordion{--accordion-height: auto;--indicator-bc: transparent;--indicator-bc-active: transparent;--indicator-icon: \"\\e9bc\";--indicator-icon-active: \"\\ea34\";--indicator-color: var(--coral);--indicator-color-active: var(--dark-gray);--accordion-radius: 4px;--accordion-border-active: 1px solid var(--gray);--accordion-shadow: 0 7px 10px 0 rgba(var(--rgb-black), 3%);--accordion-shadow-active: none;--panel-padding: 1.5rem;--panel-body-padding: 0 1.5rem 1.5rem}@media (max-width: 576px){.primary-accordion{--accordion-height: 110px;--panel-padding: 1.5rem 1rem;--panel-body-padding: 0 1rem 1rem}}.primary-accordion.main-approval{position:relative}.primary-accordion.main-approval:before{content:\"\";position:absolute;top:0;bottom:0;margin:2rem;width:1px;height:calc(100% - 2rem);background-color:var(--dark-gray);z-index:0}@media (max-width: 576px){.workflow-all-btns ds-button::part(base){--btn-padding: 0 .5rem;--btn-fs: .75rem;--btn-height: var(--default-size-sm);--btn-min-width: var(--default-size-sm)}}\n"] }]
|
|
140
140
|
}], ctorParameters: () => [{ type: i1.CoreI18nService }, { type: i0.ChangeDetectorRef }], propDecorators: { formStateObject: [{
|
|
141
141
|
type: ViewChild,
|
|
142
142
|
args: ['f']
|
|
@@ -161,4 +161,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
161
161
|
}], sectionName: [{
|
|
162
162
|
type: Input
|
|
163
163
|
}] } });
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9icG0tY29yZS9zcmMvbGliL2NvbXBvbmVudHMvYXBwLWNvbXBvbmVudC1zZWN0aW9ucy93b3JrZmxvdy1zZWN0aW9uL3dvcmtmbG93LXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvd29ya2Zsb3ctc2VjdGlvbi93b3JrZmxvdy1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLHNCQUFzQixFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9JLE9BQU8sS0FBSyxTQUFTLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFDLFdBQVcsRUFBUyxNQUFNLGdCQUFnQixDQUFDO0FBR25ELE9BQU8sRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNuRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQW1CaEUsTUFBTSxPQUFPLHdCQUF3QjtJQWtCMUI7SUFDQztJQWxCYSxlQUFlLENBQVM7SUFDckMsZ0JBQWdCLEdBQXNCLElBQUksWUFBWSxFQUFF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LEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIERlc3Ryb3lSZWYsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzJztcclxuaW1wb3J0IHtGb3Jtc01vZHVsZSwgTmdGb3JtfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7Rm9ybSwgU2VjdGlvbn0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7Q29yZUkxOG5TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7TmdDbGFzcywgTmdGb3JPZiwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtNYXRBY2NvcmRpb259IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2V4cGFuc2lvbic7XHJcbmltcG9ydCB7Rm9ybVNlY3Rpb25Db21wb25lbnR9IGZyb20gJy4uL2Zvcm0tc2VjdGlvbi9mb3JtLXNlY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHtNYWluUmVxdWVzdERldGFpbHNDb21wb25lbnR9IGZyb20gJy4uL21haW4tcmVxdWVzdC1kZXRhaWxzL21haW4tcmVxdWVzdC1kZXRhaWxzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXdvcmtmbG93LXNlY3Rpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi93b3JrZmxvdy1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi93b3JrZmxvdy1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nQ2xhc3MsXHJcbiAgICBNYXRBY2NvcmRpb24sXHJcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxyXG4gICAgTmdJZixcclxuICAgIEZvcm1TZWN0aW9uQ29tcG9uZW50LFxyXG4gICAgTWFpblJlcXVlc3REZXRhaWxzQ29tcG9uZW50LFxyXG4gICAgTmdGb3JPZixcclxuICAgIEZvcm1zTW9kdWxlXHJcbiAgXSxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXb3JrZmxvd1NlY3Rpb25Db21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ2YnKSBwdWJsaWMgZm9ybVN0YXRlT2JqZWN0OiBOZ0Zvcm07XHJcbiAgQE91dHB1dCgpIHNlY3Rpb25TdWJtaXR0ZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb25zOiBTZWN0aW9uW107XHJcbiAgQElucHV0KCkgaXNSZWFkT25seTogYm9vbGVhbjtcclxuICBASW5wdXQoKSBpc0xvYWRpbmc6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZm9ybTogRm9ybTtcclxuICBASW5wdXQoKSBjb250ZW50Q2xhc3MgPSAnZGVmYXVsdC1ib3ggYm94LXNoYWRvdyBwLTQnO1xyXG4gIHN0YXJ0ZWRMaXN0ZW5lciA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb25zQ29udHJvbGxlcjogYW55O1xyXG4gIHNob3dCdXR0b25NZW51ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2VnbWVudER5bmFtaWNMb2FkZXJTZXJ2aWNlID0gbnVsbDtcclxuICBASW5wdXQoKSBzZWN0aW9uRm9ybUNvbXBvbmVudCA9IG51bGw7XHJcbiAgQElucHV0KCkgc2VjdGlvbk5hbWUgPSBjb25zdGFudHMuU0VDVElPTl9JRF9SRVFVRVNUX0RFVEFJTFM7XHJcbiAgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGkxOG46IENvcmVJMThuU2VydmljZSxcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICkge1xyXG4vKiAgICBfbGlzdGVuZXJTZXJ2aWNlLmxpc3RlbigpLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlc3VsdD8uZnVuY3Rpb24gPT0gJ3Jlc2V0Rm9ybScpIHtcclxuICAgICAgICB0aGlzLnJlc2V0Rm9ybSgpO1xyXG4gICAgICB9IGVsc2UgaWYgKHJlc3VsdD8uZnVuY3Rpb24gPT0gJ29uU3VibWl0Jykge1xyXG4gICAgICAgIGNvbnN0IHNlY3Rpb25TaXplID0gdGhpcy5zZWN0aW9ucy5sZW5ndGggLSAxO1xyXG4gICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLnNlY3Rpb25zW3NlY3Rpb25TaXplXTtcclxuICAgICAgICBjb25zdCBkYXRhID0gcmVzdWx0LmRhdGEgPyByZXN1bHQuZGF0YSA6IHNlY3Rpb247XHJcbiAgICAgICAgdGhpcy5vblN1Ym1pdChyZXN1bHQ/LmFjdGlvbiwgZGF0YSk7XHJcbiAgICAgIH1cclxuICAgIH0pOyovXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtU3RhdGVPYmplY3QgJiYgdGhpcy5mb3JtICYmICF0aGlzLnN0YXJ0ZWRMaXN0ZW5lcikge1xyXG4gICAgICB0aGlzLmZvcm1TdGF0ZU9iamVjdC52YWx1ZUNoYW5nZXMucGlwZShcclxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKVxyXG4gICAgICApLnN1YnNjcmliZShcclxuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAgKi9cclxuICAgICAgICAoZm9ybSkgPT4ge1xyXG4gICAgICAgICAgT2JqZWN0LmtleXMoZm9ybSkuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICB0aGlzLnNlY3Rpb25zW3RoaXMuc2VjdGlvbnMubGVuZ3RoIC0gMV0uYm9keS5kZXRhaWxzW2tleV0gIT09XHJcbiAgICAgICAgICAgICAgZm9ybVtrZXldICYmXHJcbiAgICAgICAgICAgICAgZm9ybVtrZXldICE9PSB1bmRlZmluZWRcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgIHRoaXMuc2VjdGlvbnNbdGhpcy5zZWN0aW9ucy5sZW5ndGggLSAxXS5ib2R5LmRldGFpbHNba2V5XSA9XHJcbiAgICAgICAgICAgICAgICBmb3JtW2tleV07XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuc2VjdGlvbnNDb250cm9sbGVyID0gdGhpcy5mb3JtU3RhdGVPYmplY3QuY29udHJvbHM7XHJcbiAgICAgIHRoaXMuc3RhcnRlZExpc3RlbmVyID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMuY2hlY2tCdXR0b25zKCk7XHJcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4vKiAgaXNTdWJtaXR0aW5nID0ge307XHJcbiAgZGlzYWJsZUJ1dHRvbnMgPSBmYWxzZTsqL1xyXG5cclxuLyogIG9uU3VibWl0KGFjdGlvbjogYW55LCBzZWN0aW9uOiBhbnkpIHtcclxuICAgIGNvbnN0IHNlY3Rpb25TaXplID0gdGhpcy5zZWN0aW9ucy5sZW5ndGggLSAxO1xyXG4gICAgbGV0IHNlY3Rpb25EZWNpc2lvbiA9IHRoaXMuc2VjdGlvbnNbc2VjdGlvblNpemVdLmJvZHkuZGV0YWlscy5kZWNpc2lvbjtcclxuICAgIGlmIChzZWN0aW9uRGVjaXNpb24gJiYgYWN0aW9uID09PSAnU1VCTUlUJykge1xyXG4gICAgICBzZWN0aW9uRGVjaXNpb24gPSB7IGtleTogYWN0aW9uIH07XHJcbiAgICB9XHJcbiAgICBpZiAoc2VjdGlvbkRlY2lzaW9uICYmIGFjdGlvbiAhPT0gJ1NVQk1JVCcpIHtcclxuICAgICAgc2VjdGlvbkRlY2lzaW9uID0geyBrZXk6IGFjdGlvbiB9O1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZWN0aW9uc1tzZWN0aW9uU2l6ZV0uYm9keS5kZXRhaWxzLmRlY2lzaW9uID0gc2VjdGlvbkRlY2lzaW9uO1xyXG4gICAgdGhpcy5wcm9maWxlUmVxdWVzdGVyU2VydmljZS5pc1N1Ym1pdHRpbmdbYWN0aW9uXSA9IHRydWU7XHJcbiAgICB0aGlzLnByb2ZpbGVSZXF1ZXN0ZXJTZXJ2aWNlLmRpc2FibGVCdXR0b25zID0gdHJ1ZTtcclxuICAgIHRoaXMuc3RhdGVNYWNoaW5lU2VydmljZVxyXG4gICAgICAuZGlzcGF0Y2goXHJcbiAgICAgICAgY29uc3RhbnRzLlNUQVRFX01BQ0hJTkVfQUNUSU9OX1NVQk1JVF9GT1JNLFxyXG4gICAgICAgIHNlY3Rpb24sXHJcbiAgICAgICAgYWN0aW9uXHJcbiAgICAgIClcclxuICAgICAgLnRoZW4oKGZvcm06IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMucHJvZmlsZVJlcXVlc3RlclNlcnZpY2UuaXNTdWJtaXR0aW5nW2FjdGlvbl0gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMucHJvZmlsZVJlcXVlc3RlclNlcnZpY2UuZGlzYWJsZUJ1dHRvbnMgPSB0cnVlO1xyXG4gICAgICAgIGNvbnN0IG9iaiA9IHtcclxuICAgICAgICAgIGZvcm06IGZvcm0sXHJcbiAgICAgICAgICBhY3Rpb246IGFjdGlvblxyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5zZWN0aW9uU3VibWl0dGVkLmVtaXQob2JqKTtcclxuICAgICAgfSk7XHJcbiAgfSovXHJcblxyXG4vKiAgcmVzZXRGb3JtKCkge1xyXG4gICAgdGhpcy5mb3JtU3RhdGVPYmplY3QucmVzZXQoKTtcclxuICAgIHRoaXMucmVzZXRQcm9wYWdhdG9yLnByb3BhZ2F0ZSgpO1xyXG4gIH0qL1xyXG5cclxuICBnZXQgaXNFeHBhbmRhYmxlRnJvbUJhY2tlbmQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtPy5zZWN0aW9ucz8ubGVuZ3RoICYmIHRoaXMuZm9ybS5zZWN0aW9ucy5zb21lKHNlY3Rpb24gPT4gJ2V4cGFuZFN0YWdlJyBpbiBzZWN0aW9uPy5ib2R5Py5kZXRhaWxzKTtcclxuICB9XHJcblxyXG4gIGJ1dHRvblR5cGVzKHR5cGUpIHtcclxuICAgIHN3aXRjaCAodHlwZSkge1xyXG4gICAgICBjYXNlICdBUFBST1ZFJzpcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIGNhc2UgJ1NFTkRCQUNLJzpcclxuICAgICAgICByZXR1cm4gJ3JlZCc7XHJcbiAgICAgIGNhc2UgJ1JFSkVDVCc6XHJcbiAgICAgICAgcmV0dXJuICdyZWQnO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNoZWNrQnV0dG9ucygpIHtcclxuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLmZvcm0/LmxvdnM/LmRlY2lzaW9uPy5vcHRpb25zO1xyXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KG9wdGlvbnMpKSByZXR1cm47XHJcbiAgICBvcHRpb25zLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdBUFBST1ZFJyAmJlxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdSRUpFQ1QnICYmXHJcbiAgICAgICAgaXRlbT8udmFsdWUgIT0gJ1NFTkRCQUNLJyAmJlxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdTVUJNSVQnICYmXHJcbiAgICAgICAgaXRlbT8udmFsdWUgIT0gJ0NBTkNFTCdcclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5zaG93QnV0dG9uTWVudSA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSAjZj1cIm5nRm9ybVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiPlxyXG4gIDxkaXYgKm5nSWY9XCJmb3JtPy5oZWFkZXI/LnN0YXR1cz8ua2V5ICE9PSAnTkVXJyBcIiBjbGFzcz1cIm10LW4zXCIgaWQ9XCJhY2NvcmRpb25cIiByb2xlPVwidGFibGlzdFwiXHJcbiAgICBhcmlhLW11bHRpc2VsZWN0YWJsZT1cInRydWVcIj5cclxuICAgIDxhcHAtbWFpbi1yZXF1ZXN0LWRldGFpbHMgW2xvdl09XCJmb3JtPy5sb3ZzXCIgW2Zvcm1dPVwiZm9ybVwiIFtzZWN0aW9uXT1cImZvcm0/LnNlY3Rpb25zWzBdXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50UmVxRGV0XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2FwcC1tYWluLXJlcXVlc3QtZGV0YWlscz5cclxuICAgIDxoZWFkZXIgY2xhc3M9XCJoZWFkZXItbGluZSBmcy0xMiBmdy1tZWRpdW0gZmMtZGFyay1ncmF5IG10LXNtLTUgbXQtNCBtYi00XCIgKm5nSWY9XCJmb3JtPy5zZWN0aW9ucy5sZW5ndGggPiAxXCI+XHJcbiAgICAgIHt7aTE4bi50cmFuc2xhdGUoJ0FwcHJvdmFscycpfX1cclxuICAgIDwvaGVhZGVyPlxyXG4gICAgPG1hdC1hY2NvcmRpb24gY2xhc3M9XCJwcmltYXJ5LWFjY29yZGlvbiBtYWluLWFwcHJvdmFsXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHNlY3Rpb24gb2YgZm9ybT8uc2VjdGlvbnM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICA8YXBwLWZvcm0tc2VjdGlvbiAqbmdJZj1cImkgIT09IDBcIiBjbGFzcz1cImFwcC1mb3JtLXNlY3Rpb25cIiBbc2VnbWVudER5bmFtaWNMb2FkZXJTZXJ2aWNlXT1cInNlZ21lbnREeW5hbWljTG9hZGVyU2VydmljZVwiIFtzZWN0aW9uXT1zZWN0aW9uIFtsb3ZdPVwiZm9ybT8ubG92c1wiXHJcbiAgICAgICAgICBbaXNSZWFkT25seV09XCJzZWN0aW9uLmhlYWRlci5yZWFkT25seVwiIFtmb3JtXT1cImZvcm1cIiBbY29udHJvbGxlcnNdPVwic2VjdGlvbnNDb250cm9sbGVyXCI+XHJcbiAgICAgICAgPC9hcHAtZm9ybS1zZWN0aW9uPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbWF0LWFjY29yZGlvbj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPHNlY3Rpb24gKm5nSWY9XCJmb3JtPy5oZWFkZXI/LnN0YXR1cz8ua2V5ID09PSAnTkVXJyBcIiBjbGFzcz1cImRlZmF1bHQtYm94IGJveC1zaGFkb3cgcC00XCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFJlcURldFwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvc2VjdGlvbj5cclxuXHJcbjwvZm9ybT5cclxuXHJcblxyXG48bmctdGVtcGxhdGUgI2NvbnRlbnRSZXFEZXQ+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9icG0tY29yZS9zcmMvbGliL2NvbXBvbmVudHMvYXBwLWNvbXBvbmVudC1zZWN0aW9ucy93b3JrZmxvdy1zZWN0aW9uL3dvcmtmbG93LXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvd29ya2Zsb3ctc2VjdGlvbi93b3JrZmxvdy1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLHNCQUFzQixFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9JLE9BQU8sS0FBSyxTQUFTLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFDLFdBQVcsRUFBUyxNQUFNLGdCQUFnQixDQUFDO0FBR25ELE9BQU8sRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNuRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQW1CaEUsTUFBTSxPQUFPLHdCQUF3QjtJQWtCMUI7SUFDQztJQWxCYSxlQUFlLENBQVM7SUFDckMsZ0JBQWdCLEdBQXNCLElBQUksWUFBWSxFQUFF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LEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIERlc3Ryb3lSZWYsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzJztcclxuaW1wb3J0IHtGb3Jtc01vZHVsZSwgTmdGb3JtfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7Rm9ybSwgU2VjdGlvbn0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7Q29yZUkxOG5TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7TmdDbGFzcywgTmdGb3JPZiwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtNYXRBY2NvcmRpb259IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2V4cGFuc2lvbic7XHJcbmltcG9ydCB7Rm9ybVNlY3Rpb25Db21wb25lbnR9IGZyb20gJy4uL2Zvcm0tc2VjdGlvbi9mb3JtLXNlY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHtNYWluUmVxdWVzdERldGFpbHNDb21wb25lbnR9IGZyb20gJy4uL21haW4tcmVxdWVzdC1kZXRhaWxzL21haW4tcmVxdWVzdC1kZXRhaWxzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXdvcmtmbG93LXNlY3Rpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi93b3JrZmxvdy1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi93b3JrZmxvdy1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nQ2xhc3MsXHJcbiAgICBNYXRBY2NvcmRpb24sXHJcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxyXG4gICAgTmdJZixcclxuICAgIEZvcm1TZWN0aW9uQ29tcG9uZW50LFxyXG4gICAgTWFpblJlcXVlc3REZXRhaWxzQ29tcG9uZW50LFxyXG4gICAgTmdGb3JPZixcclxuICAgIEZvcm1zTW9kdWxlXHJcbiAgXSxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXb3JrZmxvd1NlY3Rpb25Db21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ2YnKSBwdWJsaWMgZm9ybVN0YXRlT2JqZWN0OiBOZ0Zvcm07XHJcbiAgQE91dHB1dCgpIHNlY3Rpb25TdWJtaXR0ZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb25zOiBTZWN0aW9uW107XHJcbiAgQElucHV0KCkgaXNSZWFkT25seTogYm9vbGVhbjtcclxuICBASW5wdXQoKSBpc0xvYWRpbmc6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZm9ybTogRm9ybTtcclxuICBASW5wdXQoKSBjb250ZW50Q2xhc3MgPSAnZGVmYXVsdC1ib3ggYm94LXNoYWRvdyBwLTQnO1xyXG4gIHN0YXJ0ZWRMaXN0ZW5lciA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb25zQ29udHJvbGxlcjogYW55O1xyXG4gIHNob3dCdXR0b25NZW51ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2VnbWVudER5bmFtaWNMb2FkZXJTZXJ2aWNlID0gbnVsbDtcclxuICBASW5wdXQoKSBzZWN0aW9uRm9ybUNvbXBvbmVudCA9IG51bGw7XHJcbiAgQElucHV0KCkgc2VjdGlvbk5hbWUgPSBjb25zdGFudHMuU0VDVElPTl9JRF9SRVFVRVNUX0RFVEFJTFM7XHJcbiAgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGkxOG46IENvcmVJMThuU2VydmljZSxcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICkge1xyXG4vKiAgICBfbGlzdGVuZXJTZXJ2aWNlLmxpc3RlbigpLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlc3VsdD8uZnVuY3Rpb24gPT0gJ3Jlc2V0Rm9ybScpIHtcclxuICAgICAgICB0aGlzLnJlc2V0Rm9ybSgpO1xyXG4gICAgICB9IGVsc2UgaWYgKHJlc3VsdD8uZnVuY3Rpb24gPT0gJ29uU3VibWl0Jykge1xyXG4gICAgICAgIGNvbnN0IHNlY3Rpb25TaXplID0gdGhpcy5zZWN0aW9ucy5sZW5ndGggLSAxO1xyXG4gICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLnNlY3Rpb25zW3NlY3Rpb25TaXplXTtcclxuICAgICAgICBjb25zdCBkYXRhID0gcmVzdWx0LmRhdGEgPyByZXN1bHQuZGF0YSA6IHNlY3Rpb247XHJcbiAgICAgICAgdGhpcy5vblN1Ym1pdChyZXN1bHQ/LmFjdGlvbiwgZGF0YSk7XHJcbiAgICAgIH1cclxuICAgIH0pOyovXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtU3RhdGVPYmplY3QgJiYgdGhpcy5mb3JtICYmICF0aGlzLnN0YXJ0ZWRMaXN0ZW5lcikge1xyXG4gICAgICB0aGlzLmZvcm1TdGF0ZU9iamVjdC52YWx1ZUNoYW5nZXMucGlwZShcclxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKVxyXG4gICAgICApLnN1YnNjcmliZShcclxuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAgKi9cclxuICAgICAgICAoZm9ybSkgPT4ge1xyXG4gICAgICAgICAgT2JqZWN0LmtleXMoZm9ybSkuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICB0aGlzLnNlY3Rpb25zW3RoaXMuc2VjdGlvbnMubGVuZ3RoIC0gMV0uYm9keS5kZXRhaWxzW2tleV0gIT09XHJcbiAgICAgICAgICAgICAgZm9ybVtrZXldICYmXHJcbiAgICAgICAgICAgICAgZm9ybVtrZXldICE9PSB1bmRlZmluZWRcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgIHRoaXMuc2VjdGlvbnNbdGhpcy5zZWN0aW9ucy5sZW5ndGggLSAxXS5ib2R5LmRldGFpbHNba2V5XSA9XHJcbiAgICAgICAgICAgICAgICBmb3JtW2tleV07XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuc2VjdGlvbnNDb250cm9sbGVyID0gdGhpcy5mb3JtU3RhdGVPYmplY3QuY29udHJvbHM7XHJcbiAgICAgIHRoaXMuc3RhcnRlZExpc3RlbmVyID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMuY2hlY2tCdXR0b25zKCk7XHJcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4vKiAgaXNTdWJtaXR0aW5nID0ge307XHJcbiAgZGlzYWJsZUJ1dHRvbnMgPSBmYWxzZTsqL1xyXG5cclxuLyogIG9uU3VibWl0KGFjdGlvbjogYW55LCBzZWN0aW9uOiBhbnkpIHtcclxuICAgIGNvbnN0IHNlY3Rpb25TaXplID0gdGhpcy5zZWN0aW9ucy5sZW5ndGggLSAxO1xyXG4gICAgbGV0IHNlY3Rpb25EZWNpc2lvbiA9IHRoaXMuc2VjdGlvbnNbc2VjdGlvblNpemVdLmJvZHkuZGV0YWlscy5kZWNpc2lvbjtcclxuICAgIGlmIChzZWN0aW9uRGVjaXNpb24gJiYgYWN0aW9uID09PSAnU1VCTUlUJykge1xyXG4gICAgICBzZWN0aW9uRGVjaXNpb24gPSB7IGtleTogYWN0aW9uIH07XHJcbiAgICB9XHJcbiAgICBpZiAoc2VjdGlvbkRlY2lzaW9uICYmIGFjdGlvbiAhPT0gJ1NVQk1JVCcpIHtcclxuICAgICAgc2VjdGlvbkRlY2lzaW9uID0geyBrZXk6IGFjdGlvbiB9O1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZWN0aW9uc1tzZWN0aW9uU2l6ZV0uYm9keS5kZXRhaWxzLmRlY2lzaW9uID0gc2VjdGlvbkRlY2lzaW9uO1xyXG4gICAgdGhpcy5wcm9maWxlUmVxdWVzdGVyU2VydmljZS5pc1N1Ym1pdHRpbmdbYWN0aW9uXSA9IHRydWU7XHJcbiAgICB0aGlzLnByb2ZpbGVSZXF1ZXN0ZXJTZXJ2aWNlLmRpc2FibGVCdXR0b25zID0gdHJ1ZTtcclxuICAgIHRoaXMuc3RhdGVNYWNoaW5lU2VydmljZVxyXG4gICAgICAuZGlzcGF0Y2goXHJcbiAgICAgICAgY29uc3RhbnRzLlNUQVRFX01BQ0hJTkVfQUNUSU9OX1NVQk1JVF9GT1JNLFxyXG4gICAgICAgIHNlY3Rpb24sXHJcbiAgICAgICAgYWN0aW9uXHJcbiAgICAgIClcclxuICAgICAgLnRoZW4oKGZvcm06IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMucHJvZmlsZVJlcXVlc3RlclNlcnZpY2UuaXNTdWJtaXR0aW5nW2FjdGlvbl0gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMucHJvZmlsZVJlcXVlc3RlclNlcnZpY2UuZGlzYWJsZUJ1dHRvbnMgPSB0cnVlO1xyXG4gICAgICAgIGNvbnN0IG9iaiA9IHtcclxuICAgICAgICAgIGZvcm06IGZvcm0sXHJcbiAgICAgICAgICBhY3Rpb246IGFjdGlvblxyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5zZWN0aW9uU3VibWl0dGVkLmVtaXQob2JqKTtcclxuICAgICAgfSk7XHJcbiAgfSovXHJcblxyXG4vKiAgcmVzZXRGb3JtKCkge1xyXG4gICAgdGhpcy5mb3JtU3RhdGVPYmplY3QucmVzZXQoKTtcclxuICAgIHRoaXMucmVzZXRQcm9wYWdhdG9yLnByb3BhZ2F0ZSgpO1xyXG4gIH0qL1xyXG5cclxuICBnZXQgaXNFeHBhbmRhYmxlRnJvbUJhY2tlbmQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtPy5zZWN0aW9ucz8ubGVuZ3RoICYmIHRoaXMuZm9ybS5zZWN0aW9ucy5zb21lKHNlY3Rpb24gPT4gJ2V4cGFuZFN0YWdlJyBpbiBzZWN0aW9uPy5ib2R5Py5kZXRhaWxzKTtcclxuICB9XHJcblxyXG4gIGJ1dHRvblR5cGVzKHR5cGUpIHtcclxuICAgIHN3aXRjaCAodHlwZSkge1xyXG4gICAgICBjYXNlICdBUFBST1ZFJzpcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIGNhc2UgJ1NFTkRCQUNLJzpcclxuICAgICAgICByZXR1cm4gJ3JlZCc7XHJcbiAgICAgIGNhc2UgJ1JFSkVDVCc6XHJcbiAgICAgICAgcmV0dXJuICdyZWQnO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNoZWNrQnV0dG9ucygpIHtcclxuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLmZvcm0/LmxvdnM/LmRlY2lzaW9uPy5vcHRpb25zO1xyXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KG9wdGlvbnMpKSByZXR1cm47XHJcbiAgICBvcHRpb25zLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdBUFBST1ZFJyAmJlxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdSRUpFQ1QnICYmXHJcbiAgICAgICAgaXRlbT8udmFsdWUgIT0gJ1NFTkRCQUNLJyAmJlxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdTVUJNSVQnICYmXHJcbiAgICAgICAgaXRlbT8udmFsdWUgIT0gJ0NBTkNFTCdcclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5zaG93QnV0dG9uTWVudSA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSAjZj1cIm5nRm9ybVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiPlxyXG4gIDxkaXYgKm5nSWY9XCJmb3JtPy5oZWFkZXI/LnN0YXR1cz8ua2V5ICE9PSAnTkVXJyBcIiBjbGFzcz1cIm10LW4zXCIgaWQ9XCJhY2NvcmRpb25cIiByb2xlPVwidGFibGlzdFwiXHJcbiAgICBhcmlhLW11bHRpc2VsZWN0YWJsZT1cInRydWVcIj5cclxuICAgIDxhcHAtbWFpbi1yZXF1ZXN0LWRldGFpbHMgW2xvdl09XCJmb3JtPy5sb3ZzXCIgW2Zvcm1dPVwiZm9ybVwiIFtzZWN0aW9uXT1cImZvcm0/LnNlY3Rpb25zWzBdXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50UmVxRGV0XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2FwcC1tYWluLXJlcXVlc3QtZGV0YWlscz5cclxuICAgIDxoZWFkZXIgY2xhc3M9XCJoZWFkZXItbGluZSBmcy0xMiBmdy1tZWRpdW0gZmMtZGFyay1ncmF5IG10LXNtLTUgbXQtNCBtYi00XCIgKm5nSWY9XCJmb3JtPy5zZWN0aW9ucy5sZW5ndGggPiAxXCI+XHJcbiAgICAgIHt7aTE4bi50cmFuc2xhdGUoJ0FwcHJvdmFscycpfX1cclxuICAgIDwvaGVhZGVyPlxyXG4gICAgPG1hdC1hY2NvcmRpb24gY2xhc3M9XCJwcmltYXJ5LWFjY29yZGlvbiBtYWluLWFwcHJvdmFsXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHNlY3Rpb24gb2YgZm9ybT8uc2VjdGlvbnM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICA8YXBwLWZvcm0tc2VjdGlvbiAqbmdJZj1cImkgIT09IDBcIiBjbGFzcz1cImFwcC1mb3JtLXNlY3Rpb25cIiBbc2VnbWVudER5bmFtaWNMb2FkZXJTZXJ2aWNlXT1cInNlZ21lbnREeW5hbWljTG9hZGVyU2VydmljZVwiIFtzZWN0aW9uXT1zZWN0aW9uIFtsb3ZdPVwiZm9ybT8ubG92c1wiXHJcbiAgICAgICAgICBbaXNSZWFkT25seV09XCJzZWN0aW9uLmhlYWRlci5yZWFkT25seVwiIFtmb3JtXT1cImZvcm1cIiBbY29udHJvbGxlcnNdPVwic2VjdGlvbnNDb250cm9sbGVyXCI+XHJcbiAgICAgICAgPC9hcHAtZm9ybS1zZWN0aW9uPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbWF0LWFjY29yZGlvbj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPHNlY3Rpb24gKm5nSWY9XCJmb3JtPy5oZWFkZXI/LnN0YXR1cz8ua2V5ID09PSAnTkVXJyBcIiBjbGFzcz1cImRlZmF1bHQtYm94IGJveC1zaGFkb3cgcC00IHJvdW5kZWQtNFwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRSZXFEZXRcIj48L25nLWNvbnRhaW5lcj5cclxuICA8L3NlY3Rpb24+XHJcblxyXG48L2Zvcm0+XHJcblxyXG5cclxuPG5nLXRlbXBsYXRlICNjb250ZW50UmVxRGV0PjxuZy1jb250ZW50PjwvbmctY29udGVudD48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
@@ -96,7 +96,7 @@ export class AttachmentSectionDataComponent extends ControlValueAccessorDirectiv
|
|
|
96
96
|
useExisting: forwardRef(() => AttachmentSectionDataComponent),
|
|
97
97
|
multi: true,
|
|
98
98
|
},
|
|
99
|
-
], usesInheritance: true, ngImport: i0, template: "<div class=\"popup-container\">\r\n <div class=\"d-flex align-items-center justify-content-end\" mat-dialog-title>\r\n <h3 class=\"mb-0 font-16 fw-medium\">{{ 'addAttachments' | translate }}</h3>\r\n <ds-button icon matDialogClose>\r\n <ds-icon icon=\"close\" class=\"fs-20 fc-black\"></ds-icon>\r\n </ds-button>\r\n </div>\r\n <mat-dialog-content>\r\n <div class=\"px-md-4 mt-3\">\r\n <form [formGroup]=\"formGroup\">\r\n <app-file-uploader class=\"section-item full\" [field]=\"popupData\" name=\"file\" [attachments]=\"dialogData?.attachments\"\r\n [labelTextReadMode]=\"'Attachment' | translate\" [labelTextWriteMode]=\"'Attachment' | translate\"\r\n [hasColumnBreak]=\"false\" [label]=\"'Attachment' | translate\" [required]=\"true\" [multiple]=\"false\" \r\n [allowedExtensions]=\"dialogData?.data\"\r\n [isReadOnly]=\"section?.header?.readOnly\" [showActions]=\"false\"\r\n formControlName=\"file\">\r\n </app-file-uploader>\r\n\r\n <app-textarea class=\"section-item d-block mt-4 mb-4\" [section]=\"section\" [field]=\"popupData?.fileDescription\" name=\"fileDescription\"\r\n [labelTextReadMode]=\"'description' | translate\" [labelTextWriteMode]=\"'description' | translate\"\r\n [hasColumnBreak]=\"false\" (emitedValue)=\"handleEmitValue($event,'fileDescription')\"\r\n [label]=\"'description' | translate\" [required]=\"dialogData?.isRequired\" [minLength]='1' [maxLength]='500'\r\n [isReadOnly]=\"section?.header?.readOnly\" [errorMessage]=\"'lenghtMin1Max500' | translate\"\r\n formControlName=\"description\">\r\n </app-textarea>\r\n\r\n <app-textarea class=\"section-item\" [section]=\"section\" [field]=\"popupData?.attachmentcomment\" name=\"attachmentcomment\"\r\n [labelTextReadMode]=\"'comments' | translate\" [labelTextWriteMode]=\"'comments' | translate\"\r\n [hasColumnBreak]=\"false\" (emitedValue)=\"handleEmitValue($event,'attachmentcomment')\" \r\n [label]=\"'comments' | translate\" [required]=\"false\" [minLength]='1' [maxLength]='500' \r\n [isReadOnly]=\"section?.header?.readOnly\" [errorMessage]=\"'lenghtMin1Max500' | translate\"\r\n formControlName=\"comments\">\r\n </app-textarea>\r\n </form>\r\n </div>\r\n </mat-dialog-content>\r\n <mat-dialog-actions class=\"default-footer justify-content-end gap-3\">\r\n <ds-button shape=\"outline\" matDialogClose [disabled]=\"uploading\">{{ 'cancel' | translate }}</ds-button>\r\n <ds-button (click)=\"addAttachments()\" [loading]=\"uploading\"\r\n [disabled]=\"(!(formGroup?.value?.file?.fileContents || formGroup?.value?.file?.attachmentId ) || (dialogData?.isRequired && !formGroup?.value?.description) || uploading || !formGroup.valid)\">\r\n <ng-container *ngIf=\"!editMode; else editTemplate\">\r\n <span>{{ 'add' | translate }}</span>\r\n </ng-container>\r\n <ng-template #editTemplate>\r\n <span>{{ 'edit' | translate }}</span>\r\n </ng-template>\r\n </ds-button>\r\n </mat-dialog-actions>\r\n</div>", styles: ["::ng-deep .add-attachment-dialog{--popup-max-width: 500px !important;--popup-width: 100% !important}::ng-deep .default-footer ds-button::part(base){--btn-min-width: 90px
|
|
99
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"popup-container\">\r\n <div class=\"d-flex align-items-center justify-content-end\" mat-dialog-title>\r\n <h3 class=\"mb-0 font-16 fw-medium\">{{ 'addAttachments' | translate }}</h3>\r\n <ds-button icon matDialogClose>\r\n <ds-icon icon=\"close\" class=\"fs-20 fc-black\"></ds-icon>\r\n </ds-button>\r\n </div>\r\n <mat-dialog-content>\r\n <div class=\"px-md-4 mt-3\">\r\n <form [formGroup]=\"formGroup\">\r\n <app-file-uploader class=\"section-item full\" [field]=\"popupData\" name=\"file\" [attachments]=\"dialogData?.attachments\"\r\n [labelTextReadMode]=\"'Attachment' | translate\" [labelTextWriteMode]=\"'Attachment' | translate\"\r\n [hasColumnBreak]=\"false\" [label]=\"'Attachment' | translate\" [required]=\"true\" [multiple]=\"false\" \r\n [allowedExtensions]=\"dialogData?.data\"\r\n [isReadOnly]=\"section?.header?.readOnly\" [showActions]=\"false\"\r\n formControlName=\"file\">\r\n </app-file-uploader>\r\n\r\n <app-textarea class=\"section-item d-block mt-4 mb-4\" [section]=\"section\" [field]=\"popupData?.fileDescription\" name=\"fileDescription\"\r\n [labelTextReadMode]=\"'description' | translate\" [labelTextWriteMode]=\"'description' | translate\"\r\n [hasColumnBreak]=\"false\" (emitedValue)=\"handleEmitValue($event,'fileDescription')\"\r\n [label]=\"'description' | translate\" [required]=\"dialogData?.isRequired\" [minLength]='1' [maxLength]='500'\r\n [isReadOnly]=\"section?.header?.readOnly\" [errorMessage]=\"'lenghtMin1Max500' | translate\"\r\n formControlName=\"description\">\r\n </app-textarea>\r\n\r\n <app-textarea class=\"section-item\" [section]=\"section\" [field]=\"popupData?.attachmentcomment\" name=\"attachmentcomment\"\r\n [labelTextReadMode]=\"'comments' | translate\" [labelTextWriteMode]=\"'comments' | translate\"\r\n [hasColumnBreak]=\"false\" (emitedValue)=\"handleEmitValue($event,'attachmentcomment')\" \r\n [label]=\"'comments' | translate\" [required]=\"false\" [minLength]='1' [maxLength]='500' \r\n [isReadOnly]=\"section?.header?.readOnly\" [errorMessage]=\"'lenghtMin1Max500' | translate\"\r\n formControlName=\"comments\">\r\n </app-textarea>\r\n </form>\r\n </div>\r\n </mat-dialog-content>\r\n <mat-dialog-actions class=\"default-footer justify-content-end gap-3\">\r\n <ds-button shape=\"outline\" matDialogClose [disabled]=\"uploading\">{{ 'cancel' | translate }}</ds-button>\r\n <ds-button (click)=\"addAttachments()\" [loading]=\"uploading\"\r\n [disabled]=\"(!(formGroup?.value?.file?.fileContents || formGroup?.value?.file?.attachmentId ) || (dialogData?.isRequired && !formGroup?.value?.description) || uploading || !formGroup.valid)\">\r\n <ng-container *ngIf=\"!editMode; else editTemplate\">\r\n <span>{{ 'add' | translate }}</span>\r\n </ng-container>\r\n <ng-template #editTemplate>\r\n <span>{{ 'edit' | translate }}</span>\r\n </ng-template>\r\n </ds-button>\r\n </mat-dialog-actions>\r\n</div>", styles: ["::ng-deep .add-attachment-dialog{--popup-max-width: 500px !important;--popup-width: 100% !important}::ng-deep .default-footer ds-button::part(base){--btn-min-width: 90px}\n"], dependencies: [{ kind: "component", type: TextareaComponent, selector: "app-textarea", inputs: ["className", "preventSpecailChar"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: DocsUploaderComponent, selector: "app-file-uploader", inputs: ["useCrop", "formKey", "showLabel", "downloadLink", "showActions", "styleHeight", "fileInputHeight", "styleWidth", "hints", "allowedExtensions", "callApi", "display", "attachType", "error", "displayedFiles", "getDataFromTemplate", "allowFileContentsWithMultiAttachments", "accept", "signType", "showSignButton", "printType", "showPrintButton", "downloadType", "showDownloadButton", "preventFileContents", "maxSize"], outputs: ["selectedTemplateAttachment", "addSignatureClicked", "printActionClicked", "emitedValue", "downloadActionClicked"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i5.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i5.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] });
|
|
100
100
|
}
|
|
101
101
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AttachmentSectionDataComponent, decorators: [{
|
|
102
102
|
type: Component,
|
|
@@ -116,7 +116,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
116
116
|
useExisting: forwardRef(() => AttachmentSectionDataComponent),
|
|
117
117
|
multi: true,
|
|
118
118
|
},
|
|
119
|
-
], template: "<div class=\"popup-container\">\r\n <div class=\"d-flex align-items-center justify-content-end\" mat-dialog-title>\r\n <h3 class=\"mb-0 font-16 fw-medium\">{{ 'addAttachments' | translate }}</h3>\r\n <ds-button icon matDialogClose>\r\n <ds-icon icon=\"close\" class=\"fs-20 fc-black\"></ds-icon>\r\n </ds-button>\r\n </div>\r\n <mat-dialog-content>\r\n <div class=\"px-md-4 mt-3\">\r\n <form [formGroup]=\"formGroup\">\r\n <app-file-uploader class=\"section-item full\" [field]=\"popupData\" name=\"file\" [attachments]=\"dialogData?.attachments\"\r\n [labelTextReadMode]=\"'Attachment' | translate\" [labelTextWriteMode]=\"'Attachment' | translate\"\r\n [hasColumnBreak]=\"false\" [label]=\"'Attachment' | translate\" [required]=\"true\" [multiple]=\"false\" \r\n [allowedExtensions]=\"dialogData?.data\"\r\n [isReadOnly]=\"section?.header?.readOnly\" [showActions]=\"false\"\r\n formControlName=\"file\">\r\n </app-file-uploader>\r\n\r\n <app-textarea class=\"section-item d-block mt-4 mb-4\" [section]=\"section\" [field]=\"popupData?.fileDescription\" name=\"fileDescription\"\r\n [labelTextReadMode]=\"'description' | translate\" [labelTextWriteMode]=\"'description' | translate\"\r\n [hasColumnBreak]=\"false\" (emitedValue)=\"handleEmitValue($event,'fileDescription')\"\r\n [label]=\"'description' | translate\" [required]=\"dialogData?.isRequired\" [minLength]='1' [maxLength]='500'\r\n [isReadOnly]=\"section?.header?.readOnly\" [errorMessage]=\"'lenghtMin1Max500' | translate\"\r\n formControlName=\"description\">\r\n </app-textarea>\r\n\r\n <app-textarea class=\"section-item\" [section]=\"section\" [field]=\"popupData?.attachmentcomment\" name=\"attachmentcomment\"\r\n [labelTextReadMode]=\"'comments' | translate\" [labelTextWriteMode]=\"'comments' | translate\"\r\n [hasColumnBreak]=\"false\" (emitedValue)=\"handleEmitValue($event,'attachmentcomment')\" \r\n [label]=\"'comments' | translate\" [required]=\"false\" [minLength]='1' [maxLength]='500' \r\n [isReadOnly]=\"section?.header?.readOnly\" [errorMessage]=\"'lenghtMin1Max500' | translate\"\r\n formControlName=\"comments\">\r\n </app-textarea>\r\n </form>\r\n </div>\r\n </mat-dialog-content>\r\n <mat-dialog-actions class=\"default-footer justify-content-end gap-3\">\r\n <ds-button shape=\"outline\" matDialogClose [disabled]=\"uploading\">{{ 'cancel' | translate }}</ds-button>\r\n <ds-button (click)=\"addAttachments()\" [loading]=\"uploading\"\r\n [disabled]=\"(!(formGroup?.value?.file?.fileContents || formGroup?.value?.file?.attachmentId ) || (dialogData?.isRequired && !formGroup?.value?.description) || uploading || !formGroup.valid)\">\r\n <ng-container *ngIf=\"!editMode; else editTemplate\">\r\n <span>{{ 'add' | translate }}</span>\r\n </ng-container>\r\n <ng-template #editTemplate>\r\n <span>{{ 'edit' | translate }}</span>\r\n </ng-template>\r\n </ds-button>\r\n </mat-dialog-actions>\r\n</div>", styles: ["::ng-deep .add-attachment-dialog{--popup-max-width: 500px !important;--popup-width: 100% !important}::ng-deep .default-footer ds-button::part(base){--btn-min-width: 90px
|
|
119
|
+
], template: "<div class=\"popup-container\">\r\n <div class=\"d-flex align-items-center justify-content-end\" mat-dialog-title>\r\n <h3 class=\"mb-0 font-16 fw-medium\">{{ 'addAttachments' | translate }}</h3>\r\n <ds-button icon matDialogClose>\r\n <ds-icon icon=\"close\" class=\"fs-20 fc-black\"></ds-icon>\r\n </ds-button>\r\n </div>\r\n <mat-dialog-content>\r\n <div class=\"px-md-4 mt-3\">\r\n <form [formGroup]=\"formGroup\">\r\n <app-file-uploader class=\"section-item full\" [field]=\"popupData\" name=\"file\" [attachments]=\"dialogData?.attachments\"\r\n [labelTextReadMode]=\"'Attachment' | translate\" [labelTextWriteMode]=\"'Attachment' | translate\"\r\n [hasColumnBreak]=\"false\" [label]=\"'Attachment' | translate\" [required]=\"true\" [multiple]=\"false\" \r\n [allowedExtensions]=\"dialogData?.data\"\r\n [isReadOnly]=\"section?.header?.readOnly\" [showActions]=\"false\"\r\n formControlName=\"file\">\r\n </app-file-uploader>\r\n\r\n <app-textarea class=\"section-item d-block mt-4 mb-4\" [section]=\"section\" [field]=\"popupData?.fileDescription\" name=\"fileDescription\"\r\n [labelTextReadMode]=\"'description' | translate\" [labelTextWriteMode]=\"'description' | translate\"\r\n [hasColumnBreak]=\"false\" (emitedValue)=\"handleEmitValue($event,'fileDescription')\"\r\n [label]=\"'description' | translate\" [required]=\"dialogData?.isRequired\" [minLength]='1' [maxLength]='500'\r\n [isReadOnly]=\"section?.header?.readOnly\" [errorMessage]=\"'lenghtMin1Max500' | translate\"\r\n formControlName=\"description\">\r\n </app-textarea>\r\n\r\n <app-textarea class=\"section-item\" [section]=\"section\" [field]=\"popupData?.attachmentcomment\" name=\"attachmentcomment\"\r\n [labelTextReadMode]=\"'comments' | translate\" [labelTextWriteMode]=\"'comments' | translate\"\r\n [hasColumnBreak]=\"false\" (emitedValue)=\"handleEmitValue($event,'attachmentcomment')\" \r\n [label]=\"'comments' | translate\" [required]=\"false\" [minLength]='1' [maxLength]='500' \r\n [isReadOnly]=\"section?.header?.readOnly\" [errorMessage]=\"'lenghtMin1Max500' | translate\"\r\n formControlName=\"comments\">\r\n </app-textarea>\r\n </form>\r\n </div>\r\n </mat-dialog-content>\r\n <mat-dialog-actions class=\"default-footer justify-content-end gap-3\">\r\n <ds-button shape=\"outline\" matDialogClose [disabled]=\"uploading\">{{ 'cancel' | translate }}</ds-button>\r\n <ds-button (click)=\"addAttachments()\" [loading]=\"uploading\"\r\n [disabled]=\"(!(formGroup?.value?.file?.fileContents || formGroup?.value?.file?.attachmentId ) || (dialogData?.isRequired && !formGroup?.value?.description) || uploading || !formGroup.valid)\">\r\n <ng-container *ngIf=\"!editMode; else editTemplate\">\r\n <span>{{ 'add' | translate }}</span>\r\n </ng-container>\r\n <ng-template #editTemplate>\r\n <span>{{ 'edit' | translate }}</span>\r\n </ng-template>\r\n </ds-button>\r\n </mat-dialog-actions>\r\n</div>", styles: ["::ng-deep .add-attachment-dialog{--popup-max-width: 500px !important;--popup-width: 100% !important}::ng-deep .default-footer ds-button::part(base){--btn-min-width: 90px}\n"] }]
|
|
120
120
|
}], ctorParameters: () => [{ type: i0.Injector }, { type: i1.CoreI18nService }, { type: i2.ToastrService }, { type: i1.CoreService }, { type: i3.DomSanitizer }, { type: i4.FormBuilder }, { type: i5.MatDialogRef }, { type: undefined, decorators: [{
|
|
121
121
|
type: Inject,
|
|
122
122
|
args: [MAT_DIALOG_DATA]
|
|
@@ -125,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
125
125
|
}], section: [{
|
|
126
126
|
type: Input
|
|
127
127
|
}] } });
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWF0dGFjaG1lbnQtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9icG0tY29yZS9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkLWNvbXBvbmVudHMvZm9ybS1maWVsZC9hZGQtYXR0YWNobWVudC1zZWN0aW9uL2FkZC1hdHRhY2htZW50LXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC1jb21wb25lbnRzL2Zvcm0tZmllbGQvYWRkLWF0dGFjaG1lbnQtc2VjdGlvbi9hZGQtYXR0YWNobWVudC1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLE1BQU0sRUFFTixLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUNMLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixlQUFlLEdBRWhCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXBGLE9BQU8sRUFFTCxXQUFXLEVBRVgsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQixVQUFVLEdBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUloRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFB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QkFBZ0I7d0JBQ2hCLHFCQUFxQjt3QkFDckIsZ0JBQWdCO3dCQUNoQixJQUFJO3dCQUNKLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLGFBQWE7cUJBQ2QsYUFDVTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwrQkFBK0IsQ0FBQzs0QkFDN0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OzBCQXVCRSxNQUFNOzJCQUFDLGVBQWU7eUNBZGhCLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSxcclxuICBEZXN0cm95UmVmLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgaW5qZWN0LFxyXG4gIEluamVjdCxcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuLi90ZXh0YXJlYS90ZXh0YXJlYS5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIE1BVF9ESUFMT0dfREFUQSxcclxuICBNYXREaWFsb2dBY3Rpb25zLFxyXG4gIE1hdERpYWxvZ0Nsb3NlLFxyXG4gIE1hdERpYWxvZ0NvbnRlbnQsXHJcbiAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gIE1hdERpYWxvZ1JlZixcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3JEaXJlY3RpdmUgfSBmcm9tICcuLi9jb250cm9sLXZhbHVlLWFjY2Vzc29yLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtcclxuICBGb3JtQnVpbGRlcixcclxuICBGb3JtQ29udHJvbCxcclxuICBGb3JtR3JvdXAsXHJcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICBWYWxpZGF0b3JzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRG9jc1VwbG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vZG9jLXVwbG9hZGVyL2RvY3MtdXBsb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHtDb3JlSTE4blNlcnZpY2UsIENvcmVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2VydmljZXNcIjtcclxuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xyXG5pbXBvcnQge1RyYW5zbGF0ZVBpcGV9IGZyb20gXCIuLi8uLi8uLi8uLi9waXBlcy90cmFuc2xhdGUucGlwZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtYWRkLWF0dGFjaG1lbnQtc2VjdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1hdHRhY2htZW50LXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2FkZC1hdHRhY2htZW50LXNlY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBUZXh0YXJlYUNvbXBvbmVudCxcclxuICAgIE1hdERpYWxvZ0NvbnRlbnQsXHJcbiAgICBEb2NzVXBsb2FkZXJDb21wb25lbnQsXHJcbiAgICBNYXREaWFsb2dBY3Rpb25zLFxyXG4gICAgTmdJZixcclxuICAgIE1hdERpYWxvZ01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBNYXREaWFsb2dDbG9zZSxcclxuICAgIFRyYW5zbGF0ZVBpcGVcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQXR0YWNobWVudFNlY3Rpb25EYXRhQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdHRhY2htZW50U2VjdGlvbkRhdGFDb21wb25lbnQ8XHJcbiAgVHlwZVxyXG4+IGV4dGVuZHMgQ29udHJvbFZhbHVlQWNjZXNzb3JEaXJlY3RpdmU8VHlwZT4ge1xyXG4gIHBvcHVwRGF0YTogYW55ID0ge307XHJcbiAgcG9wdXBEYXRhT3JnOiBhbnkgPSB7fTtcclxuICB1cGxvYWRpbmc6IGJvb2xlYW47XHJcbiAgZWRpdE1vZGU6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaGFzQ29sdW1uQnJlYWs6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc2VjdGlvbjogU2VjdGlvbjtcclxuICBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcclxuICBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBpMThuOiBDb3JlSTE4blNlcnZpY2UsXHJcbiAgICB0b2FzdGVyU2VydmljZTogVG9hc3RyU2VydmljZSxcclxuICAgIGNvcmVTZXJ2aWNlOiBDb3JlU2VydmljZSxcclxuICAgIHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxyXG4gICAgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPGFueT4sXHJcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRpYWxvZ0RhdGE6IGFueVxyXG4gICkge1xyXG4gICAgc3VwZXIoaW5qZWN0b3IsIGkxOG4sIHRvYXN0ZXJTZXJ2aWNlLCBjb3JlU2VydmljZSwgc2FuaXRpemVyLCBmYik7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpIHtcclxuICAgIC8vIHN1cGVyLm5nT25Jbml0KClcclxuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xyXG4gICAgaWYgKHRoaXMuZGlhbG9nRGF0YT8uYXR0YWNobWVudExpc3REYXRhKSB7XHJcbiAgICAgIHRoaXMucG9wdXBEYXRhID0gdGhpcy5kaWFsb2dEYXRhLmF0dGFjaG1lbnRMaXN0RGF0YTtcclxuICAgICAgdGhpcy5wb3B1cERhdGFPcmcgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLnBvcHVwRGF0YSk7XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10uc2V0VmFsdWUoXHJcbiAgICAgICAgdGhpcy5kaWFsb2dEYXRhLmF0dGFjaG1lbnRMaXN0RGF0YVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZGVzY3JpcHRpb24nXS5zZXRWYWx1ZShcclxuICAgICAgICB0aGlzLmRpYWxvZ0RhdGEuYXR0YWNobWVudExpc3REYXRhLmZpbGVEZXNjcmlwdGlvblxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snY29tbWVudHMnXS5zZXRWYWx1ZShcclxuICAgICAgICB0aGlzLmRpYWxvZ0RhdGEuYXR0YWNobWVudExpc3REYXRhLmZpbGVDb21tZW50c1xyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmVkaXRNb2RlID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgY3JlYXRlRm9ybSgpIHtcclxuICAgIHRoaXMuZm9ybUdyb3VwID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgIGZpbGU6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgICAgZGVzY3JpcHRpb246IG5ldyBGb3JtQ29udHJvbChudWxsLHRoaXMuZGlhbG9nRGF0YS5kZXNjcmlwdGlvblJlcXVpcmVkID8gVmFsaWRhdG9ycy5yZXF1aXJlZDogbnVsbCksXHJcbiAgICAgIGNvbW1lbnRzOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgdGhpcy5kaWFsb2dEYXRhLmNvbW1lbnRzUmVxdWlyZWQgPyBWYWxpZGF0b3JzLnJlcXVpcmVkOiBudWxsKSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0aGlzLnBvcHVwRGF0YU9yZyk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVFbWl0VmFsdWUoZGF0YTogYW55LCBmaWVsZE5hbWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5wb3B1cERhdGFbZmllbGROYW1lXSA9IGRhdGE7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVBdHRhY2htZW50RW1pdFZhbHVlKGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy5wb3B1cERhdGEgPSB7XHJcbiAgICAgIGZpbGVDb250ZW50czogZGF0YT8uZmlsZUNvbnRlbnRzLFxyXG4gICAgICBmaWxlTmFtZTogZGF0YT8uZmlsZU5hbWUsXHJcbiAgICAgIG1pbWVUeXBlOiBkYXRhPy5taW1lVHlwZSxcclxuICAgICAgZmlsZURlc2NyaXB0aW9uOiB0aGlzLnBvcHVwRGF0YT8uZmlsZURlc2NyaXB0aW9uLFxyXG4gICAgICBhdHRhY2htZW50Y29tbWVudDogdGhpcy5wb3B1cERhdGE/LmF0dGFjaG1lbnRjb21tZW50LFxyXG4gICAgICBmaWxlQ29tbWVudHM6IHRoaXMucG9wdXBEYXRhPy5hdHRhY2htZW50Y29tbWVudCxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBhZGRBdHRhY2htZW50cygpIHtcclxuICAgIGNvbnN0IGRhdGEgPSB7XHJcbiAgICAgIGZpbGVEZXNjcmlwdGlvbjogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2Rlc2NyaXB0aW9uJ10udmFsdWUsXHJcbiAgICAgIGF0dGFjaG1lbnRjb21tZW50OiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snY29tbWVudHMnXS52YWx1ZSxcclxuICAgICAgZmlsZUNvbW1lbnRzOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snY29tbWVudHMnXS52YWx1ZSxcclxuICAgICAgZmlsZU5hbWU6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUuZmlsZU5hbWUsXHJcbiAgICAgIG1pbWVUeXBlOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZmlsZSddLnZhbHVlLm1pbWVUeXBlLFxyXG4gICAgICBmaWxlQ29udGVudHM6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUuZmlsZUNvbnRlbnRzLFxyXG4gICAgfTtcclxuICAgIHRoaXMudXBsb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuY29yZVNlcnZpY2UuZ2V0QXR0YWNobWVudHMoZGF0YSkucGlwZShcclxuICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZilcclxuICAgICkuc3Vic2NyaWJlKChSZXNwb25zZTogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMudXBsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIGlmIChSZXNwb25zZSkge1xyXG4gICAgICAgIGNvbnN0IG5ld09iaiA9IHtcclxuICAgICAgICAgIGZpbGVEZXNjcmlwdGlvbjogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2Rlc2NyaXB0aW9uJ10udmFsdWUsXHJcbiAgICAgICAgICBhdHRhY2htZW50Y29tbWVudDogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2NvbW1lbnRzJ10udmFsdWUsXHJcbiAgICAgICAgICBmaWxlQ29tbWVudHM6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydjb21tZW50cyddLnZhbHVlLFxyXG4gICAgICAgICAgZmlsZU5hbWU6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUuZmlsZU5hbWUsXHJcbiAgICAgICAgICBhdHRhY2htZW50SWQ6IFJlc3BvbnNlLmF0dGFjaG1lbnQuYXR0YWNobWVudElkLFxyXG4gICAgICAgICAgbWltZVR5cGU6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUubWltZVR5cGUsXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShuZXdPYmopO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInBvcHVwLWNvbnRhaW5lclwiPlxyXG4gIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1lbmRcIiBtYXQtZGlhbG9nLXRpdGxlPlxyXG4gICAgPGgzIGNsYXNzPVwibWItMCBmb250LTE2IGZ3LW1lZGl1bVwiPnt7ICdhZGRBdHRhY2htZW50cycgfCB0cmFuc2xhdGUgfX08L2gzPlxyXG4gICAgPGRzLWJ1dHRvbiBpY29uIG1hdERpYWxvZ0Nsb3NlPlxyXG4gICAgICA8ZHMtaWNvbiBpY29uPVwiY2xvc2VcIiBjbGFzcz1cImZzLTIwIGZjLWJsYWNrXCI+PC9kcy1pY29uPlxyXG4gICAgPC9kcy1idXR0b24+XHJcbiAgPC9kaXY+XHJcbiAgPG1hdC1kaWFsb2ctY29udGVudD5cclxuICAgIDxkaXYgY2xhc3M9XCJweC1tZC00IG10LTNcIj5cclxuICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cclxuICAgICAgICA8YXBwLWZpbGUtdXBsb2FkZXIgY2xhc3M9XCJzZWN0aW9uLWl0ZW0gZnVsbFwiIFtmaWVsZF09XCJwb3B1cERhdGFcIiBuYW1lPVwiZmlsZVwiIFthdHRhY2htZW50c109XCJkaWFsb2dEYXRhPy5hdHRhY2htZW50c1wiXHJcbiAgICAgICAgICBbbGFiZWxUZXh0UmVhZE1vZGVdPVwiJ0F0dGFjaG1lbnQnIHwgdHJhbnNsYXRlXCIgW2xhYmVsVGV4dFdyaXRlTW9kZV09XCInQXR0YWNobWVudCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgW2hhc0NvbHVtbkJyZWFrXT1cImZhbHNlXCIgW2xhYmVsXT1cIidBdHRhY2htZW50JyB8IHRyYW5zbGF0ZVwiIFtyZXF1aXJlZF09XCJ0cnVlXCIgW211bHRpcGxlXT1cImZhbHNlXCIgXHJcbiAgICAgICAgICBbYWxsb3dlZEV4dGVuc2lvbnNdPVwiZGlhbG9nRGF0YT8uZGF0YVwiXHJcbiAgICAgICAgICBbaXNSZWFkT25seV09XCJzZWN0aW9uPy5oZWFkZXI/LnJlYWRPbmx5XCIgW3Nob3dBY3Rpb25zXT1cImZhbHNlXCJcclxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImZpbGVcIj5cclxuICAgICAgICA8L2FwcC1maWxlLXVwbG9hZGVyPlxyXG5cclxuICAgICAgICA8YXBwLXRleHRhcmVhIGNsYXNzPVwic2VjdGlvbi1pdGVtIGQtYmxvY2sgbXQtNCBtYi00XCIgW3NlY3Rpb25dPVwic2VjdGlvblwiIFtmaWVsZF09XCJwb3B1cERhdGE/LmZpbGVEZXNjcmlwdGlvblwiIG5hbWU9XCJmaWxlRGVzY3JpcHRpb25cIlxyXG4gICAgICAgICAgW2xhYmVsVGV4dFJlYWRNb2RlXT1cIidkZXNjcmlwdGlvbicgfCB0cmFuc2xhdGVcIiBbbGFiZWxUZXh0V3JpdGVNb2RlXT1cIidkZXNjcmlwdGlvbicgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgW2hhc0NvbHVtbkJyZWFrXT1cImZhbHNlXCIgKGVtaXRlZFZhbHVlKT1cImhhbmRsZUVtaXRWYWx1ZSgkZXZlbnQsJ2ZpbGVEZXNjcmlwdGlvbicpXCJcclxuICAgICAgICAgIFtsYWJlbF09XCInZGVzY3JpcHRpb24nIHwgdHJhbnNsYXRlXCIgW3JlcXVpcmVkXT1cImRpYWxvZ0RhdGE/LmlzUmVxdWlyZWRcIiBbbWluTGVuZ3RoXT0nMScgW21heExlbmd0aF09JzUwMCdcclxuICAgICAgICAgIFtpc1JlYWRPbmx5XT1cInNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHlcIiBbZXJyb3JNZXNzYWdlXT1cIidsZW5naHRNaW4xTWF4NTAwJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJkZXNjcmlwdGlvblwiPlxyXG4gICAgICAgIDwvYXBwLXRleHRhcmVhPlxyXG5cclxuICAgICAgICA8YXBwLXRleHRhcmVhIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgW3NlY3Rpb25dPVwic2VjdGlvblwiIFtmaWVsZF09XCJwb3B1cERhdGE/LmF0dGFjaG1lbnRjb21tZW50XCIgbmFtZT1cImF0dGFjaG1lbnRjb21tZW50XCJcclxuICAgICAgICAgIFtsYWJlbFRleHRSZWFkTW9kZV09XCInY29tbWVudHMnIHwgdHJhbnNsYXRlXCIgW2xhYmVsVGV4dFdyaXRlTW9kZV09XCInY29tbWVudHMnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgIFtoYXNDb2x1bW5CcmVha109XCJmYWxzZVwiIChlbWl0ZWRWYWx1ZSk9XCJoYW5kbGVFbWl0VmFsdWUoJGV2ZW50LCdhdHRhY2htZW50Y29tbWVudCcpXCIgXHJcbiAgICAgICAgICBbbGFiZWxdPVwiJ2NvbW1lbnRzJyB8IHRyYW5zbGF0ZVwiIFtyZXF1aXJlZF09XCJmYWxzZVwiIFttaW5MZW5ndGhdPScxJyBbbWF4TGVuZ3RoXT0nNTAwJyBcclxuICAgICAgICAgIFtpc1JlYWRPbmx5XT1cInNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHlcIiBbZXJyb3JNZXNzYWdlXT1cIidsZW5naHRNaW4xTWF4NTAwJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJjb21tZW50c1wiPlxyXG4gICAgICAgIDwvYXBwLXRleHRhcmVhPlxyXG4gICAgICA8L2Zvcm0+XHJcbiAgICA8L2Rpdj5cclxuICA8L21hdC1kaWFsb2ctY29udGVudD5cclxuICA8bWF0LWRpYWxvZy1hY3Rpb25zIGNsYXNzPVwiZGVmYXVsdC1mb290ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtM1wiPlxyXG4gICAgPGRzLWJ1dHRvbiBzaGFwZT1cIm91dGxpbmVcIiBtYXREaWFsb2dDbG9zZSBbZGlzYWJsZWRdPVwidXBsb2FkaW5nXCI+e3sgJ2NhbmNlbCcgfCB0cmFuc2xhdGUgfX08L2RzLWJ1dHRvbj5cclxuICAgIDxkcy1idXR0b24gKGNsaWNrKT1cImFkZEF0dGFjaG1lbnRzKClcIiBbbG9hZGluZ109XCJ1cGxvYWRpbmdcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiKCEoZm9ybUdyb3VwPy52YWx1ZT8uZmlsZT8uZmlsZUNvbnRlbnRzIHx8IGZvcm1Hcm91cD8udmFsdWU/LmZpbGU/LmF0dGFjaG1lbnRJZCApIHx8IChkaWFsb2dEYXRhPy5pc1JlcXVpcmVkICYmICFmb3JtR3JvdXA/LnZhbHVlPy5kZXNjcmlwdGlvbikgfHwgdXBsb2FkaW5nIHx8ICFmb3JtR3JvdXAudmFsaWQpXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZWRpdE1vZGU7IGVsc2UgZWRpdFRlbXBsYXRlXCI+XHJcbiAgICAgICAgPHNwYW4+e3sgJ2FkZCcgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2VkaXRUZW1wbGF0ZT5cclxuICAgICAgICA8c3Bhbj57eyAnZWRpdCcgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L2RzLWJ1dHRvbj5cclxuICA8L21hdC1kaWFsb2ctYWN0aW9ucz5cclxuPC9kaXY+Il19
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWF0dGFjaG1lbnQtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9icG0tY29yZS9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkLWNvbXBvbmVudHMvZm9ybS1maWVsZC9hZGQtYXR0YWNobWVudC1zZWN0aW9uL2FkZC1hdHRhY2htZW50LXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC1jb21wb25lbnRzL2Zvcm0tZmllbGQvYWRkLWF0dGFjaG1lbnQtc2VjdGlvbi9hZGQtYXR0YWNobWVudC1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLE1BQU0sRUFFTixLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUNMLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixlQUFlLEdBRWhCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXBGLE9BQU8sRUFFTCxXQUFXLEVBRVgsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQixVQUFVLEdBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUloRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFB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QkFBZ0I7d0JBQ2hCLHFCQUFxQjt3QkFDckIsZ0JBQWdCO3dCQUNoQixJQUFJO3dCQUNKLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLGFBQWE7cUJBQ2QsYUFDVTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwrQkFBK0IsQ0FBQzs0QkFDN0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OzBCQXVCRSxNQUFNOzJCQUFDLGVBQWU7eUNBZGhCLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSxcclxuICBEZXN0cm95UmVmLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgaW5qZWN0LFxyXG4gIEluamVjdCxcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuLi90ZXh0YXJlYS90ZXh0YXJlYS5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIE1BVF9ESUFMT0dfREFUQSxcclxuICBNYXREaWFsb2dBY3Rpb25zLFxyXG4gIE1hdERpYWxvZ0Nsb3NlLFxyXG4gIE1hdERpYWxvZ0NvbnRlbnQsXHJcbiAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gIE1hdERpYWxvZ1JlZixcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3JEaXJlY3RpdmUgfSBmcm9tICcuLi9jb250cm9sLXZhbHVlLWFjY2Vzc29yLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtcclxuICBGb3JtQnVpbGRlcixcclxuICBGb3JtQ29udHJvbCxcclxuICBGb3JtR3JvdXAsXHJcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICBWYWxpZGF0b3JzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRG9jc1VwbG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vZG9jLXVwbG9hZGVyL2RvY3MtdXBsb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHtDb3JlSTE4blNlcnZpY2UsIENvcmVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2VydmljZXNcIjtcclxuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xyXG5pbXBvcnQge1RyYW5zbGF0ZVBpcGV9IGZyb20gXCIuLi8uLi8uLi8uLi9waXBlcy90cmFuc2xhdGUucGlwZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtYWRkLWF0dGFjaG1lbnQtc2VjdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1hdHRhY2htZW50LXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2FkZC1hdHRhY2htZW50LXNlY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBUZXh0YXJlYUNvbXBvbmVudCxcclxuICAgIE1hdERpYWxvZ0NvbnRlbnQsXHJcbiAgICBEb2NzVXBsb2FkZXJDb21wb25lbnQsXHJcbiAgICBNYXREaWFsb2dBY3Rpb25zLFxyXG4gICAgTmdJZixcclxuICAgIE1hdERpYWxvZ01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBNYXREaWFsb2dDbG9zZSxcclxuICAgIFRyYW5zbGF0ZVBpcGVcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQXR0YWNobWVudFNlY3Rpb25EYXRhQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdHRhY2htZW50U2VjdGlvbkRhdGFDb21wb25lbnQ8XHJcbiAgVHlwZVxyXG4+IGV4dGVuZHMgQ29udHJvbFZhbHVlQWNjZXNzb3JEaXJlY3RpdmU8VHlwZT4ge1xyXG4gIHBvcHVwRGF0YTogYW55ID0ge307XHJcbiAgcG9wdXBEYXRhT3JnOiBhbnkgPSB7fTtcclxuICB1cGxvYWRpbmc6IGJvb2xlYW47XHJcbiAgZWRpdE1vZGU6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaGFzQ29sdW1uQnJlYWs6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc2VjdGlvbjogU2VjdGlvbjtcclxuICBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcclxuICBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBpMThuOiBDb3JlSTE4blNlcnZpY2UsXHJcbiAgICB0b2FzdGVyU2VydmljZTogVG9hc3RyU2VydmljZSxcclxuICAgIGNvcmVTZXJ2aWNlOiBDb3JlU2VydmljZSxcclxuICAgIHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxyXG4gICAgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPGFueT4sXHJcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRpYWxvZ0RhdGE6IGFueVxyXG4gICkge1xyXG4gICAgc3VwZXIoaW5qZWN0b3IsIGkxOG4sIHRvYXN0ZXJTZXJ2aWNlLCBjb3JlU2VydmljZSwgc2FuaXRpemVyLCBmYik7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpIHtcclxuICAgIC8vIHN1cGVyLm5nT25Jbml0KClcclxuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xyXG4gICAgaWYgKHRoaXMuZGlhbG9nRGF0YT8uYXR0YWNobWVudExpc3REYXRhKSB7XHJcbiAgICAgIHRoaXMucG9wdXBEYXRhID0gdGhpcy5kaWFsb2dEYXRhLmF0dGFjaG1lbnRMaXN0RGF0YTtcclxuICAgICAgdGhpcy5wb3B1cERhdGFPcmcgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLnBvcHVwRGF0YSk7XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10uc2V0VmFsdWUoXHJcbiAgICAgICAgdGhpcy5kaWFsb2dEYXRhLmF0dGFjaG1lbnRMaXN0RGF0YVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZGVzY3JpcHRpb24nXS5zZXRWYWx1ZShcclxuICAgICAgICB0aGlzLmRpYWxvZ0RhdGEuYXR0YWNobWVudExpc3REYXRhLmZpbGVEZXNjcmlwdGlvblxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snY29tbWVudHMnXS5zZXRWYWx1ZShcclxuICAgICAgICB0aGlzLmRpYWxvZ0RhdGEuYXR0YWNobWVudExpc3REYXRhLmZpbGVDb21tZW50c1xyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmVkaXRNb2RlID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgY3JlYXRlRm9ybSgpIHtcclxuICAgIHRoaXMuZm9ybUdyb3VwID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgIGZpbGU6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgICAgZGVzY3JpcHRpb246IG5ldyBGb3JtQ29udHJvbChudWxsLHRoaXMuZGlhbG9nRGF0YS5kZXNjcmlwdGlvblJlcXVpcmVkID8gVmFsaWRhdG9ycy5yZXF1aXJlZDogbnVsbCksXHJcbiAgICAgIGNvbW1lbnRzOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgdGhpcy5kaWFsb2dEYXRhLmNvbW1lbnRzUmVxdWlyZWQgPyBWYWxpZGF0b3JzLnJlcXVpcmVkOiBudWxsKSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0aGlzLnBvcHVwRGF0YU9yZyk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVFbWl0VmFsdWUoZGF0YTogYW55LCBmaWVsZE5hbWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5wb3B1cERhdGFbZmllbGROYW1lXSA9IGRhdGE7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVBdHRhY2htZW50RW1pdFZhbHVlKGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy5wb3B1cERhdGEgPSB7XHJcbiAgICAgIGZpbGVDb250ZW50czogZGF0YT8uZmlsZUNvbnRlbnRzLFxyXG4gICAgICBmaWxlTmFtZTogZGF0YT8uZmlsZU5hbWUsXHJcbiAgICAgIG1pbWVUeXBlOiBkYXRhPy5taW1lVHlwZSxcclxuICAgICAgZmlsZURlc2NyaXB0aW9uOiB0aGlzLnBvcHVwRGF0YT8uZmlsZURlc2NyaXB0aW9uLFxyXG4gICAgICBhdHRhY2htZW50Y29tbWVudDogdGhpcy5wb3B1cERhdGE/LmF0dGFjaG1lbnRjb21tZW50LFxyXG4gICAgICBmaWxlQ29tbWVudHM6IHRoaXMucG9wdXBEYXRhPy5hdHRhY2htZW50Y29tbWVudCxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBhZGRBdHRhY2htZW50cygpIHtcclxuICAgIGNvbnN0IGRhdGEgPSB7XHJcbiAgICAgIGZpbGVEZXNjcmlwdGlvbjogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2Rlc2NyaXB0aW9uJ10udmFsdWUsXHJcbiAgICAgIGF0dGFjaG1lbnRjb21tZW50OiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snY29tbWVudHMnXS52YWx1ZSxcclxuICAgICAgZmlsZUNvbW1lbnRzOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snY29tbWVudHMnXS52YWx1ZSxcclxuICAgICAgZmlsZU5hbWU6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUuZmlsZU5hbWUsXHJcbiAgICAgIG1pbWVUeXBlOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZmlsZSddLnZhbHVlLm1pbWVUeXBlLFxyXG4gICAgICBmaWxlQ29udGVudHM6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUuZmlsZUNvbnRlbnRzLFxyXG4gICAgfTtcclxuICAgIHRoaXMudXBsb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuY29yZVNlcnZpY2UuZ2V0QXR0YWNobWVudHMoZGF0YSkucGlwZShcclxuICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZilcclxuICAgICkuc3Vic2NyaWJlKChSZXNwb25zZTogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMudXBsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIGlmIChSZXNwb25zZSkge1xyXG4gICAgICAgIGNvbnN0IG5ld09iaiA9IHtcclxuICAgICAgICAgIGZpbGVEZXNjcmlwdGlvbjogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2Rlc2NyaXB0aW9uJ10udmFsdWUsXHJcbiAgICAgICAgICBhdHRhY2htZW50Y29tbWVudDogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2NvbW1lbnRzJ10udmFsdWUsXHJcbiAgICAgICAgICBmaWxlQ29tbWVudHM6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydjb21tZW50cyddLnZhbHVlLFxyXG4gICAgICAgICAgZmlsZU5hbWU6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUuZmlsZU5hbWUsXHJcbiAgICAgICAgICBhdHRhY2htZW50SWQ6IFJlc3BvbnNlLmF0dGFjaG1lbnQuYXR0YWNobWVudElkLFxyXG4gICAgICAgICAgbWltZVR5cGU6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUubWltZVR5cGUsXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShuZXdPYmopO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInBvcHVwLWNvbnRhaW5lclwiPlxyXG4gIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1lbmRcIiBtYXQtZGlhbG9nLXRpdGxlPlxyXG4gICAgPGgzIGNsYXNzPVwibWItMCBmb250LTE2IGZ3LW1lZGl1bVwiPnt7ICdhZGRBdHRhY2htZW50cycgfCB0cmFuc2xhdGUgfX08L2gzPlxyXG4gICAgPGRzLWJ1dHRvbiBpY29uIG1hdERpYWxvZ0Nsb3NlPlxyXG4gICAgICA8ZHMtaWNvbiBpY29uPVwiY2xvc2VcIiBjbGFzcz1cImZzLTIwIGZjLWJsYWNrXCI+PC9kcy1pY29uPlxyXG4gICAgPC9kcy1idXR0b24+XHJcbiAgPC9kaXY+XHJcbiAgPG1hdC1kaWFsb2ctY29udGVudD5cclxuICAgIDxkaXYgY2xhc3M9XCJweC1tZC00IG10LTNcIj5cclxuICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cclxuICAgICAgICA8YXBwLWZpbGUtdXBsb2FkZXIgY2xhc3M9XCJzZWN0aW9uLWl0ZW0gZnVsbFwiIFtmaWVsZF09XCJwb3B1cERhdGFcIiBuYW1lPVwiZmlsZVwiIFthdHRhY2htZW50c109XCJkaWFsb2dEYXRhPy5hdHRhY2htZW50c1wiXHJcbiAgICAgICAgICBbbGFiZWxUZXh0UmVhZE1vZGVdPVwiJ0F0dGFjaG1lbnQnIHwgdHJhbnNsYXRlXCIgW2xhYmVsVGV4dFdyaXRlTW9kZV09XCInQXR0YWNobWVudCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgW2hhc0NvbHVtbkJyZWFrXT1cImZhbHNlXCIgW2xhYmVsXT1cIidBdHRhY2htZW50JyB8IHRyYW5zbGF0ZVwiIFtyZXF1aXJlZF09XCJ0cnVlXCIgW211bHRpcGxlXT1cImZhbHNlXCIgXHJcbiAgICAgICAgICBbYWxsb3dlZEV4dGVuc2lvbnNdPVwiZGlhbG9nRGF0YT8uZGF0YVwiXHJcbiAgICAgICAgICBbaXNSZWFkT25seV09XCJzZWN0aW9uPy5oZWFkZXI/LnJlYWRPbmx5XCIgW3Nob3dBY3Rpb25zXT1cImZhbHNlXCJcclxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImZpbGVcIj5cclxuICAgICAgICA8L2FwcC1maWxlLXVwbG9hZGVyPlxyXG5cclxuICAgICAgICA8YXBwLXRleHRhcmVhIGNsYXNzPVwic2VjdGlvbi1pdGVtIGQtYmxvY2sgbXQtNCBtYi00XCIgW3NlY3Rpb25dPVwic2VjdGlvblwiIFtmaWVsZF09XCJwb3B1cERhdGE/LmZpbGVEZXNjcmlwdGlvblwiIG5hbWU9XCJmaWxlRGVzY3JpcHRpb25cIlxyXG4gICAgICAgICAgW2xhYmVsVGV4dFJlYWRNb2RlXT1cIidkZXNjcmlwdGlvbicgfCB0cmFuc2xhdGVcIiBbbGFiZWxUZXh0V3JpdGVNb2RlXT1cIidkZXNjcmlwdGlvbicgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgW2hhc0NvbHVtbkJyZWFrXT1cImZhbHNlXCIgKGVtaXRlZFZhbHVlKT1cImhhbmRsZUVtaXRWYWx1ZSgkZXZlbnQsJ2ZpbGVEZXNjcmlwdGlvbicpXCJcclxuICAgICAgICAgIFtsYWJlbF09XCInZGVzY3JpcHRpb24nIHwgdHJhbnNsYXRlXCIgW3JlcXVpcmVkXT1cImRpYWxvZ0RhdGE/LmlzUmVxdWlyZWRcIiBbbWluTGVuZ3RoXT0nMScgW21heExlbmd0aF09JzUwMCdcclxuICAgICAgICAgIFtpc1JlYWRPbmx5XT1cInNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHlcIiBbZXJyb3JNZXNzYWdlXT1cIidsZW5naHRNaW4xTWF4NTAwJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJkZXNjcmlwdGlvblwiPlxyXG4gICAgICAgIDwvYXBwLXRleHRhcmVhPlxyXG5cclxuICAgICAgICA8YXBwLXRleHRhcmVhIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgW3NlY3Rpb25dPVwic2VjdGlvblwiIFtmaWVsZF09XCJwb3B1cERhdGE/LmF0dGFjaG1lbnRjb21tZW50XCIgbmFtZT1cImF0dGFjaG1lbnRjb21tZW50XCJcclxuICAgICAgICAgIFtsYWJlbFRleHRSZWFkTW9kZV09XCInY29tbWVudHMnIHwgdHJhbnNsYXRlXCIgW2xhYmVsVGV4dFdyaXRlTW9kZV09XCInY29tbWVudHMnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgIFtoYXNDb2x1bW5CcmVha109XCJmYWxzZVwiIChlbWl0ZWRWYWx1ZSk9XCJoYW5kbGVFbWl0VmFsdWUoJGV2ZW50LCdhdHRhY2htZW50Y29tbWVudCcpXCIgXHJcbiAgICAgICAgICBbbGFiZWxdPVwiJ2NvbW1lbnRzJyB8IHRyYW5zbGF0ZVwiIFtyZXF1aXJlZF09XCJmYWxzZVwiIFttaW5MZW5ndGhdPScxJyBbbWF4TGVuZ3RoXT0nNTAwJyBcclxuICAgICAgICAgIFtpc1JlYWRPbmx5XT1cInNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHlcIiBbZXJyb3JNZXNzYWdlXT1cIidsZW5naHRNaW4xTWF4NTAwJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJjb21tZW50c1wiPlxyXG4gICAgICAgIDwvYXBwLXRleHRhcmVhPlxyXG4gICAgICA8L2Zvcm0+XHJcbiAgICA8L2Rpdj5cclxuICA8L21hdC1kaWFsb2ctY29udGVudD5cclxuICA8bWF0LWRpYWxvZy1hY3Rpb25zIGNsYXNzPVwiZGVmYXVsdC1mb290ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtM1wiPlxyXG4gICAgPGRzLWJ1dHRvbiBzaGFwZT1cIm91dGxpbmVcIiBtYXREaWFsb2dDbG9zZSBbZGlzYWJsZWRdPVwidXBsb2FkaW5nXCI+e3sgJ2NhbmNlbCcgfCB0cmFuc2xhdGUgfX08L2RzLWJ1dHRvbj5cclxuICAgIDxkcy1idXR0b24gKGNsaWNrKT1cImFkZEF0dGFjaG1lbnRzKClcIiBbbG9hZGluZ109XCJ1cGxvYWRpbmdcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiKCEoZm9ybUdyb3VwPy52YWx1ZT8uZmlsZT8uZmlsZUNvbnRlbnRzIHx8IGZvcm1Hcm91cD8udmFsdWU/LmZpbGU/LmF0dGFjaG1lbnRJZCApIHx8IChkaWFsb2dEYXRhPy5pc1JlcXVpcmVkICYmICFmb3JtR3JvdXA/LnZhbHVlPy5kZXNjcmlwdGlvbikgfHwgdXBsb2FkaW5nIHx8ICFmb3JtR3JvdXAudmFsaWQpXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZWRpdE1vZGU7IGVsc2UgZWRpdFRlbXBsYXRlXCI+XHJcbiAgICAgICAgPHNwYW4+e3sgJ2FkZCcgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2VkaXRUZW1wbGF0ZT5cclxuICAgICAgICA8c3Bhbj57eyAnZWRpdCcgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L2RzLWJ1dHRvbj5cclxuICA8L21hdC1kaWFsb2ctYWN0aW9ucz5cclxuPC9kaXY+Il19
|