@softpak/components 18.6.10 → 18.6.12
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/spx-app-update/spx-app-update.component.mjs +2 -2
- package/esm2022/spx-check-digit/spx-check-digit.component.mjs +1 -1
- package/esm2022/spx-form-view/spx-autocomplete-search.component.mjs +1 -1
- package/esm2022/spx-form-view/spx-form-view.component.mjs +2 -2
- package/esm2022/spx-inputs/spx-input-box.component.mjs +30 -4
- package/esm2022/spx-inputs/spx-input.component.mjs +7 -3
- package/esm2022/spx-update/src/spx-update-info.component.mjs +1 -1
- package/fesm2022/softpak-components-spx-app-update.mjs +1 -1
- package/fesm2022/softpak-components-spx-app-update.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-check-digit.mjs +1 -1
- package/fesm2022/softpak-components-spx-check-digit.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-form-view.mjs +2 -2
- package/fesm2022/softpak-components-spx-form-view.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-inputs.mjs +35 -6
- package/fesm2022/softpak-components-spx-inputs.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-update.mjs +1 -1
- package/fesm2022/softpak-components-spx-update.mjs.map +1 -1
- package/package.json +45 -45
- package/spx-inputs/spx-input-box.component.d.ts +4 -1
- package/spx-inputs/spx-input.component.d.ts +3 -1
|
@@ -241,7 +241,7 @@ export class SpxAppUpdateComponent {
|
|
|
241
241
|
}
|
|
242
242
|
</form>
|
|
243
243
|
</div>
|
|
244
|
-
</ion-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i4.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i4.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i4.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i4.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: SpxCapitalizePipe, name: "capitalize" }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutocomplete", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }, { kind: "component", type: SpxProgressBarComponent, selector: "spx-progress-bar", inputs: ["spxPercentage", "spxTitle"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
|
|
244
|
+
</ion-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i4.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i4.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i4.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i4.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: SpxCapitalizePipe, name: "capitalize" }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutocomplete", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxAlertMessageSeverity", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }, { kind: "component", type: SpxProgressBarComponent, selector: "spx-progress-bar", inputs: ["spxPercentage", "spxTitle"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
|
|
245
245
|
}
|
|
246
246
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxAppUpdateComponent, decorators: [{
|
|
247
247
|
type: Component,
|
|
@@ -317,4 +317,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
317
317
|
}], spxAppId: [{
|
|
318
318
|
type: Input
|
|
319
319
|
}] } });
|
|
320
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWFwcC11cGRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1hcHAtdXBkYXRlL3NweC1hcHAtdXBkYXRlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQXFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUF1QyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RyxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLHFCQUFxQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxXQUFXLEVBQWlCLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQUU1RCxNQUFNLHFCQUFxQixHQUFHLHVCQUF1QixDQUFDO0FBQ3RELE1BQU0saUJBQWlCLEdBQUcsbUJBQW1CLENBQUM7QUFDOUMsTUFBTSxxQkFBcUIsR0FBRyx1QkFBdUIsQ0FBQztBQUN0RCxNQUFNLG1CQUFtQixHQUFHLHFCQUFxQixDQUFDO0FBNkNsRCxNQUFNLE9BQU8scUJBQXFCO0lBdUJoQyxZQUNtQixNQUFjLEVBQ2QsY0FBaUMsRUFDakMsY0FBOEIsRUFDOUIsZ0JBQWtDLEVBQ2xDLFdBQXdCLEVBQ3hC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c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvblJlZiwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgU3B4Q2FwaXRhbGl6ZVBpcGUgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1jYXBpdGFsaXplJztcclxuaW1wb3J0IHsgU3B4SW5wdXRDb21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1pbnB1dHMnO1xyXG5pbXBvcnQgeyBTcHhQcm9ncmVzc0JhckNvbXBvbmVudCB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LXByb2dyZXNzLWJhcic7XHJcbmltcG9ydCB7IFNweFN0b3JhZ2UsIFNweFN0b3JhZ2VLZXlFbnVtIH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtc3RvcmFnZSc7XHJcbmltcG9ydCB7IERldmljZSB9IGZyb20gJ0BjYXBhY2l0b3IvZGV2aWNlJztcclxuaW1wb3J0IHsgRGVwbG95IH0gZnJvbSAnY29yZG92YS1wbHVnaW4taW9uaWMvZGlzdC9uZ3gnO1xyXG5pbXBvcnQgeyBnZXRDdXJyZW50U2NvcGUgfSBmcm9tICdAc2VudHJ5L2FuZ3VsYXInO1xyXG5pbXBvcnQgeyBJb25pY01vZHVsZSwgTmF2Q29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcclxuXHJcbmNvbnN0IGN0cmxOZXh0VmVyc2lvbk51bWJlciA9ICdjdHJsTmV4dFZlcnNpb25OdW1iZXInO1xyXG5jb25zdCBjdHJsVmVyc2lvbk51bWJlciA9ICdjdHJsVmVyc2lvbk51bWJlcic7XHJcbmNvbnN0IGN0cmxDb25maWd1cmVkQ2hhbm5lbCA9ICdjdHJsQ29uZmlndXJlZENoYW5uZWwnO1xyXG5jb25zdCBjdHJsQXBwU3RvcmVWZXJzaW9uID0gJ2N0cmxBcHBTdG9yZVZlcnNpb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcHgtYXBwLXVwZGF0ZScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIElvbmljTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIFNweENhcGl0YWxpemVQaXBlLFxyXG4gICAgU3B4SW5wdXRDb21wb25lbnQsXHJcbiAgICBTcHhQcm9ncmVzc0JhckNvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZU1vZHVsZVxyXG5dLFxyXG4gIHRlbXBsYXRlOiBgPGlvbi1oZWFkZXI+XHJcbiAgICA8aW9uLXRvb2xiYXI+XHJcbiAgICAgIDxpb24tdGl0bGU+XHJcbiAgICAgICAge3sgdHh0VXBkYXRlIHwgdHJhbnNsYXRlIHwgY2FwaXRhbGl6ZSB9fVxyXG4gICAgICA8L2lvbi10aXRsZT5cclxuICAgIDwvaW9uLXRvb2xiYXI+XHJcbiAgPC9pb24taGVhZGVyPlxyXG4gIFxyXG4gIDxpb24tY29udGVudCBjbGFzcz1cImlvbi1jb250ZW50LS11cGRcIiBbZnVsbHNjcmVlbl09XCJ0cnVlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaW9uLXBhZGRpbmdcIj5cclxuICAgICAgPHNweC1wcm9ncmVzcy1iYXIgW3NweFBlcmNlbnRhZ2VdPVwiZGVsYXllZFBlcmNlbnRhZ2VcIiBbc3B4VGl0bGVdPVwidXBkYXRlU3RhdHVzIHwgY2FwaXRhbGl6ZVwiPlxyXG4gICAgICA8L3NweC1wcm9ncmVzcy1iYXI+XHJcbiAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwibXQtM1wiPlxyXG4gICAgICAgIEBpZiAoY3RybEFwcFN0b3JlVmVyc2lvbi52YWx1ZSAmJiBjdHJsQXBwU3RvcmVWZXJzaW9uLnZhbHVlLnZhbHVlKSB7XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBncmlkLWNvbHMtMSBtZDpncmlkLWNvbHMtMiB4bDpncmlkLWNvbHMtMyBnYXAtM1wiPlxyXG4gICAgICAgICAgICA8c3B4LWlucHV0IFtmb3JtQ29udHJvbF09XCJjdHJsQXBwU3RvcmVWZXJzaW9uXCIgW3NweExhYmVsXT1cInR4dEFwcFN0b3JlVmVyc2lvbiB8IHRyYW5zbGF0ZSB8IGNhcGl0YWxpemVcIlxyXG4gICAgICAgICAgICBbc3B4UmVhZG9ubHldPVwidHJ1ZVwiPjwvc3B4LWlucHV0PlxyXG4gICAgICAgICAgICA8c3B4LWlucHV0IFtmb3JtQ29udHJvbF09XCJjdHJsQ29uZmlndXJlZENoYW5uZWxcIiBbc3B4TGFiZWxdPVwidHh0Q2hhbm5lbCB8IHRyYW5zbGF0ZSB8IGNhcGl0YWxpemVcIlxyXG4gICAgICAgICAgICBbc3B4UmVhZG9ubHldPVwidHJ1ZVwiPjwvc3B4LWlucHV0PlxyXG4gICAgICAgICAgICA8c3B4LWlucHV0IFtmb3JtQ29udHJvbF09XCJjdHJsVmVyc2lvbk51bWJlclwiIFtzcHhMYWJlbF09XCJ0eHRWZXJzaW9uIHwgdHJhbnNsYXRlIHwgY2FwaXRhbGl6ZVwiXHJcbiAgICAgICAgICAgIFtzcHhSZWFkb25seV09XCJ0cnVlXCI+PC9zcHgtaW5wdXQ+XHJcbiAgICAgICAgICAgIEBpZiAoY3RybE5leHRWZXJzaW9uTnVtYmVyLnZhbHVlICYmIGN0cmxOZXh0VmVyc2lvbk51bWJlci52YWx1ZS52YWx1ZSkge1xyXG4gICAgICAgICAgICAgIDxzcHgtaW5wdXQgW2Zvcm1Db250cm9sXT1cImN0cmxOZXh0VmVyc2lvbk51bWJlclwiIFtzcHhMYWJlbF09XCJ0eHROZXh0VmVyc2lvbiB8IHRyYW5zbGF0ZSB8IGNhcGl0YWxpemVcIlxyXG4gICAgICAgICAgICAgIFtzcHhSZWFkb25seV09XCJ0cnVlXCI+PC9zcHgtaW5wdXQ+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIH1cclxuICAgICAgPC9mb3JtPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9pb24tY29udGVudD5gLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3B4QXBwVXBkYXRlQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBzcHhIb21lVXJsITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNweElzU2lnbmVkSW4hOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHRleHRDaGVja2luZ0ZvclVwZGF0ZXMhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdGV4dERvd25sb2FkaW5nVXBkYXRlITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHRleHRFcnJvcldoaWxlVXBkYXRpbmdBcHAhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdGV4dEZpbmlzaGVkVXBkYXRpbmchOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdGV4dE5vVXBkYXRlc0F2YWlsYWJsZSE6IHN0cmluZztcclxuICBASW5wdXQoKSB0ZXh0VW5leHBlY3RlZEVycm9yITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHR4dEFwcFN0b3JlVmVyc2lvbiE6IHN0cmluZztcclxuICBASW5wdXQoKSB0eHRDaGFubmVsITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHR4dE5leHRWZXJzaW9uITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHR4dFVwZGF0ZSE6IHN0cmluZztcclxuICBASW5wdXQoKSB0eHRWZXJzaW9uITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNweEFwcElkITogc3RyaW5nO1xyXG5cclxuICBmb3JtOiBGb3JtR3JvdXA7XHJcblxyXG4gIGRlbGF5ZWRQZXJjZW50YWdlOiBudW1iZXIgPSAwO1xyXG4gIHBlcmNlbnRhZ2U6IG51bWJlciA9IDA7XHJcbiAgc3luY1RydWNrSW50ZXJ2YWw6IGFueSB8IG51bGwgPSBudWxsO1xyXG4gIHVwZGF0ZVN0YXR1czogc3RyaW5nID0gdGhpcy50ZXh0Q2hlY2tpbmdGb3JVcGRhdGVzO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVwbG95OiBEZXBsb3ksXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBwbGljYXRpb25SZWY6IEFwcGxpY2F0aW9uUmVmLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5hdkNvbnRyb2xsZXI6IE5hdkNvbnRyb2xsZXIsXHJcbiAgKSB7XHJcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcclxuICAgICAgW2N0cmxOZXh0VmVyc2lvbk51bWJlcl06IFtudWxsLCBbXV0sXHJcbiAgICAgIFtjdHJsVmVyc2lvbk51bWJlcl06IFtudWxsLCBbXV0sXHJcbiAgICAgIFtjdHJsQ29uZmlndXJlZENoYW5uZWxdOiBbbnVsbCwgW11dLFxyXG4gICAgICBbY3RybEFwcFN0b3JlVmVyc2lvbl06IFtudWxsLCBbXV0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldCBjdHJsVmVyc2lvbk51bWJlcigpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm0uZ2V0KGN0cmxWZXJzaW9uTnVtYmVyKSBhcyBGb3JtQ29udHJvbDsgfVxyXG4gIGdldCBjdHJsTmV4dFZlcnNpb25OdW1iZXIoKTogRm9ybUNvbnRyb2wgeyByZXR1cm4gdGhpcy5mb3JtLmdldChjdHJsTmV4dFZlcnNpb25OdW1iZXIpIGFzIEZvcm1Db250cm9sOyB9XHJcbiAgZ2V0IGN0cmxDb25maWd1cmVkQ2hhbm5lbCgpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm0uZ2V0KGN0cmxDb25maWd1cmVkQ2hhbm5lbCkgYXMgRm9ybUNvbnRyb2w7IH1cclxuICBnZXQgY3RybEFwcFN0b3JlVmVyc2lvbigpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm0uZ2V0KGN0cmxBcHBTdG9yZVZlcnNpb24pIGFzIEZvcm1Db250cm9sOyB9XHJcblxyXG4gIGluaXQoKSB7XHJcbiAgICB0aGlzLmRlbGF5ZWRQZXJjZW50YWdlID0gMDtcclxuICAgIHRoaXMucGVyY2VudGFnZSA9IDA7XHJcbiAgICB0aGlzLnBlcmZvcm1BdXRvbWF0aWNVcGRhdGUoKS50aGVuKCgpID0+IHsgfSk7XHJcbiAgICB0aGlzLnN0YXJ0TG9hZGVyU3luYygpO1xyXG4gICAgdGhpcy5jaGFuZ2VTdGF0dXMoe1xyXG4gICAgICBwZXJjZW50YWdlOiAwLFxyXG4gICAgICB0ZXh0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCh0aGlzLnRleHRDaGVja2luZ0ZvclVwZGF0ZXMpLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBkZXN0cm95KCkge1xyXG4gICAgdGhpcy5zdG9wTG9hZGVyU3luYygpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgcGVyZm9ybUF1dG9tYXRpY1VwZGF0ZSgpIHtcclxuICAgIGNvbnN0IGRldmljZUluZm8gPSBhd2FpdCBEZXZpY2UuZ2V0SW5mbygpO1xyXG5cclxuICAgIGlmIChkZXZpY2VJbmZvPy5wbGF0Zm9ybSA9PT0gJ3dlYicpIHtcclxuICAgICAgLy8gTG9jYWw/IFNraXAgdGhlIHVwZGF0ZSBwYWdlLlxyXG4gICAgICB0aGlzLmNsb3NlVXBkYXRlU2NyZWVuKCk7XHJcbiAgICB9XHJcbiAgICB0cnkge1xyXG4gICAgICB0aGlzLnVwZGF0ZUluZm8oKTtcclxuXHJcbiAgICAgIC8vIFN0YXJ0IHVwZ3JhZGVcclxuICAgICAgY29uc3QgY3VycmVudFZlcnNpb24gPSBhd2FpdCB0aGlzLmRlcGxveS5nZXRDdXJyZW50VmVyc2lvbigpO1xyXG4gICAgICBpZiAoY3VycmVudFZlcnNpb24/LmJpbmFyeVZlcnNpb25OYW1lKSB7XHJcbiAgICAgICAgY29uc3QgYmluYXJ5R3JvdXAgPSBjdXJyZW50VmVyc2lvbi5iaW5hcnlWZXJzaW9uTmFtZS5zdWJzdHJpbmcoMCwgMyk7IC8vIGUuZy4gXCIxLjRcIlxyXG4gICAgICAgIGNvbnN0IGNoYW5uZWxHcm91cCA9IGN1cnJlbnRWZXJzaW9uLmNoYW5uZWwuc3BsaXQoJy0nKVsxXS5zdWJzdHJpbmcoMCwgMyk7IC8vIGUuZy4gXCIxLjRcIlxyXG4gICAgICAgIGNvbnN0IGNoYW5uZWxUeXBlID0gY3VycmVudFZlcnNpb24uY2hhbm5lbC5zcGxpdCgnLScpWzBdO1xyXG5cclxuICAgICAgICBpZiAoYmluYXJ5R3JvdXAgIT0gY2hhbm5lbEdyb3VwKSB7XHJcbiAgICAgICAgICBhd2FpdCB0aGlzLmRlcGxveS5jb25maWd1cmUoe1xyXG4gICAgICAgICAgICBhcHBJZDogdGhpcy5zcHhBcHBJZCxcclxuICAgICAgICAgICAgY2hhbm5lbDogYCR7Y2hhbm5lbFR5cGV9LSR7YmluYXJ5R3JvdXB9LnhgXHJcbiAgICAgICAgICB9KS50aGVuKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5zeW5jKCkudGhlbigoKSA9PiB7IH0pO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuc3luYygpLnRoZW4oKCkgPT4geyB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zeW5jKCkudGhlbigoKSA9PiB7IH0pO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIEVuZCB1cGdyYWRlXHJcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlU3RhdHVzKHtcclxuICAgICAgICBjbG9zZVNjcmVlbjogdHJ1ZSxcclxuICAgICAgICBlcnJvcixcclxuICAgICAgICBwZXJjZW50YWdlOiAxMDAsXHJcbiAgICAgICAgdGV4dDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQodGhpcy50ZXh0VW5leHBlY3RlZEVycm9yKVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgc3luYygpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIHRoaXMudXBkYXRlSW5mbygpO1xyXG5cclxuICAgICAgY29uc3QgdXBkYXRlQXZhaWxhYmxlSW5mbyA9IGF3YWl0IHRoaXMuZGVwbG95LmNoZWNrRm9yVXBkYXRlKCk7XHJcbiAgICAgIGlmICghdXBkYXRlQXZhaWxhYmxlSW5mby5hdmFpbGFibGUpIHtcclxuICAgICAgICAvLyBObyB1cGRhdGUgYXZhaWxhYmxlXHJcbiAgICAgICAgdGhpcy5jaGFuZ2VTdGF0dXMoe1xyXG4gICAgICAgICAgY2xvc2VTY3JlZW46IHRydWUsXHJcbiAgICAgICAgICBwZXJjZW50YWdlOiAwLFxyXG4gICAgICAgICAgdGV4dDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQodGhpcy50ZXh0Tm9VcGRhdGVzQXZhaWxhYmxlKSxcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAvLyBEb3dubG9hZCB1cGRhdGVcclxuICAgICAgICBhd2FpdCB0aGlzLmRlcGxveS5zeW5jKHsgdXBkYXRlTWV0aG9kOiAnYXV0bycgfSwgKHBlcmNlbnRhZ2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2hhbmdlU3RhdHVzKHtcclxuICAgICAgICAgICAgcGVyY2VudGFnZTogcGVyY2VudGFnZSA/PyAwLFxyXG4gICAgICAgICAgICB0ZXh0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCh0aGlzLnRleHREb3dubG9hZGluZ1VwZGF0ZSwgeyBwZXJjZW50YWdlLCB2ZXJzaW9uOiB1cGRhdGVBdmFpbGFibGVJbmZvLmJ1aWxkIH0pLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmNoYW5nZVN0YXR1cyh7XHJcbiAgICAgICAgICAgIGNsb3NlU2NyZWVuOiB0cnVlLFxyXG4gICAgICAgICAgICBlcnJvcixcclxuICAgICAgICAgICAgcGVyY2VudGFnZTogMTAwLFxyXG4gICAgICAgICAgICB0ZXh0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCh0aGlzLnRleHRFcnJvcldoaWxlVXBkYXRpbmdBcHApLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuY2hhbmdlU3RhdHVzKHtcclxuICAgICAgICAgIGNsb3NlU2NyZWVuOiB0cnVlLFxyXG4gICAgICAgICAgcGVyY2VudGFnZTogMTAwLFxyXG4gICAgICAgICAgdGV4dDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQodGhpcy50ZXh0RmluaXNoZWRVcGRhdGluZywgeyB2ZXJzaW9uOiB1cGRhdGVBdmFpbGFibGVJbmZvLmJ1aWxkIH0pXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcclxuICAgICAgLy8gQ2F0Y2ggdW5leHBlY3RlZCBwbHVnLWluIGVycm9yc1xyXG4gICAgICB0aGlzLmNoYW5nZVN0YXR1cyh7XHJcbiAgICAgICAgY2xvc2VTY3JlZW46IHRydWUsXHJcbiAgICAgICAgZXJyb3IsXHJcbiAgICAgICAgcGVyY2VudGFnZTogMTAwLFxyXG4gICAgICAgIHRleHQ6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KHRoaXMudGV4dFVuZXhwZWN0ZWRFcnJvcilcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIHVwZGF0ZUluZm8oKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCBjdXJyZW50VmVyc2lvbiA9IGF3YWl0IHRoaXMuZGVwbG95LmdldEN1cnJlbnRWZXJzaW9uKCk7XHJcbiAgICBjb25zdCBjb25maWd1cmF0aW9uID0gYXdhaXQgdGhpcy5kZXBsb3kuZ2V0Q29uZmlndXJhdGlvbigpO1xyXG4gICAgY29uc3QgdXBkYXRlQXZhaWxhYmxlSW5mbyA9IGF3YWl0IHRoaXMuZGVwbG95LmNoZWNrRm9yVXBkYXRlKCk7XHJcblxyXG4gICAgaWYgKGN1cnJlbnRWZXJzaW9uKSB7XHJcbiAgICAgIHRoaXMuY3RybFZlcnNpb25OdW1iZXIuc2V0VmFsdWUoe1xyXG4gICAgICAgIHZhbHVlOiBjb25maWd1cmF0aW9uPy5jdXJyZW50QnVpbGRJZCxcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuY3RybE5leHRWZXJzaW9uTnVtYmVyLnNldFZhbHVlKHtcclxuICAgICAgICB2YWx1ZTogdXBkYXRlQXZhaWxhYmxlSW5mbz8uYnVpbGRcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuY3RybENvbmZpZ3VyZWRDaGFubmVsLnNldFZhbHVlKHtcclxuICAgICAgICB2YWx1ZTogY29uZmlndXJhdGlvbiA/IGNvbmZpZ3VyYXRpb24uY2hhbm5lbCA6IG51bGxcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuY3RybEFwcFN0b3JlVmVyc2lvbi5zZXRWYWx1ZSh7XHJcbiAgICAgICAgdmFsdWU6IGNvbmZpZ3VyYXRpb24gPyBjb25maWd1cmF0aW9uLmJpbmFyeVZlcnNpb25OYW1lIDogbnVsbFxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHtcclxuICAgICAgICBjb25zdCBzY29wZSA9IGdldEN1cnJlbnRTY29wZSgpO1xyXG4gICAgICAgIHNjb3BlLnNldFRhZygndmVyc2lvbl9iaW5hcnlfY29kZScsIGN1cnJlbnRWZXJzaW9uPy5iaW5hcnlWZXJzaW9uQ29kZSk7XHJcbiAgICAgICAgc2NvcGUuc2V0VGFnKCd2ZXJzaW9uX2JpbmFyeV9uYW1lJywgY3VycmVudFZlcnNpb24/LmJpbmFyeVZlcnNpb25OYW1lKTtcclxuICAgICAgICBzY29wZS5zZXRUYWcoJ3ZlcnNpb25fYnVpbGRfaWQnLCBjdXJyZW50VmVyc2lvbj8uYnVpbGRJZCk7XHJcbiAgICAgICAgc2NvcGUuc2V0VGFnKCdjaGFubmVsX3R5cGUnLCBjdXJyZW50VmVyc2lvbj8uY2hhbm5lbCk7XHJcbiAgICAgICAgc2NvcGUuc2V0VGFnKCd2ZXJzaW9uX3NuYXBzaG90X2lkJywgY3VycmVudFZlcnNpb24/LnZlcnNpb25JZCk7XHJcbiAgICAgIH07XHJcblxyXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICB0aGlzLmFwcGxpY2F0aW9uUmVmLnRpY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2hhbmdlU3RhdHVzKHN0YXR1czoge1xyXG4gICAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgICBjbG9zZVNjcmVlbj86IGJvb2xlYW47XHJcbiAgICBwZXJjZW50YWdlOiBudW1iZXI7XHJcbiAgfSkge1xyXG4gICAgdGhpcy51cGRhdGVTdGF0dXMgPSBzdGF0dXMudGV4dDtcclxuICAgIHRoaXMucGVyY2VudGFnZSA9IHN0YXR1cy5wZXJjZW50YWdlO1xyXG4gICAgaWYgKHN0YXR1cy5jbG9zZVNjcmVlbikge1xyXG4gICAgICB0aGlzLmNsb3NlVXBkYXRlU2NyZWVuKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoc3RhdHVzLmVycm9yKSB7XHJcbiAgICAgIC8vIHRoaXMuYXBwU3RvcmUuZGlzcGF0Y2goXHJcbiAgICAgIC8vICAgc2hhcmVkVG9hc3RlckFjdGlvbnMuQ1JFQVRFX0VSUk9SKHtcclxuICAgICAgLy8gICAgIG1lc3NhZ2VUZXh0OiBzdGF0dXMuZXJyb3IsXHJcbiAgICAgIC8vICAgfSlcclxuICAgICAgLy8gKTtcclxuICAgIH1cclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XHJcbiAgICB0aGlzLmFwcGxpY2F0aW9uUmVmLnRpY2soKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2xvc2VVcGRhdGVTY3JlZW4oKSB7XHJcbiAgICAvLyBBbGxvd2luZyBzb21lIHRpbWUgdG8gbWFrZSBhIHNjcmVlbnNob3Qgb2YgdmVyc2lvbiBpbmZvXHJcbiAgICBTcHhTdG9yYWdlLmNsZWFyU2V0dGluZzxhbnk+KFNweFN0b3JhZ2VLZXlFbnVtLnVwZGF0ZUluUHJvZ3Jlc3MpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICBTcHhTdG9yYWdlLmdldFNldHRpbmc8YW55PihTcHhTdG9yYWdlS2V5RW51bS5hZnRlclNpZ25JbikgJiZcclxuICAgICAgICB0aGlzLnNweElzU2lnbmVkSW5cclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5uYXZDb250cm9sbGVyLm5hdmlnYXRlUm9vdChbU3B4U3RvcmFnZS5nZXRTZXR0aW5nPGFueT4oU3B4U3RvcmFnZUtleUVudW0uYWZ0ZXJTaWduSW4pXSk7XHJcbiAgICAgICAgU3B4U3RvcmFnZS5jbGVhclNldHRpbmc8YW55PihTcHhTdG9yYWdlS2V5RW51bS5hZnRlclNpZ25JbilcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm5hdkNvbnRyb2xsZXIubmF2aWdhdGVSb290KFt0aGlzLnNweEhvbWVVcmxdKTtcclxuICAgICAgfVxyXG4gICAgfSwgMCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXJ0TG9hZGVyU3luYygpIHtcclxuICAgIFNweFN0b3JhZ2Uuc2V0U2V0dGluZzxhbnk+KFNweFN0b3JhZ2VLZXlFbnVtLnVwZGF0ZUluUHJvZ3Jlc3MsICcxJyk7XHJcbiAgICBpZiAodGhpcy5zeW5jVHJ1Y2tJbnRlcnZhbCA9PT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnN5bmNUcnVja0ludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZGVsYXllZFBlcmNlbnRhZ2UgPSB0aGlzLnBlcmNlbnRhZ2U7XHJcbiAgICAgIH0sIDIwMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0b3BMb2FkZXJTeW5jKCkge1xyXG4gICAgaWYgKHRoaXMuc3luY1RydWNrSW50ZXJ2YWwgIT09IG51bGwpIHtcclxuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLnN5bmNUcnVja0ludGVydmFsKTtcclxuICAgICAgdGhpcy5zeW5jVHJ1Y2tJbnRlcnZhbCA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
320
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWFwcC11cGRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1hcHAtdXBkYXRlL3NweC1hcHAtdXBkYXRlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQXFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUF1QyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RyxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLHFCQUFxQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxXQUFXLEVBQWlCLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQUU1RCxNQUFNLHFCQUFxQixHQUFHLHVCQUF1QixDQUFDO0FBQ3RELE1BQU0saUJBQWlCLEdBQUcsbUJBQW1CLENBQUM7QUFDOUMsTUFBTSxxQkFBcUIsR0FBRyx1QkFBdUIsQ0FBQztBQUN0RCxNQUFNLG1CQUFtQixHQUFHLHFCQUFxQixDQUFDO0FBNkNsRCxNQUFNLE9BQU8scUJBQXFCO0lBdUJoQyxZQUNtQixNQUFjLEVBQ2QsY0FBaUMsRUFDakMsY0FBOEIsRUFDOUIsZ0JBQWtDLEVBQ2xDLFdBQXdCLEVBQ3hC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c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvblJlZiwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgU3B4Q2FwaXRhbGl6ZVBpcGUgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1jYXBpdGFsaXplJztcclxuaW1wb3J0IHsgU3B4SW5wdXRDb21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1pbnB1dHMnO1xyXG5pbXBvcnQgeyBTcHhQcm9ncmVzc0JhckNvbXBvbmVudCB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LXByb2dyZXNzLWJhcic7XHJcbmltcG9ydCB7IFNweFN0b3JhZ2UsIFNweFN0b3JhZ2VLZXlFbnVtIH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtc3RvcmFnZSc7XHJcbmltcG9ydCB7IERldmljZSB9IGZyb20gJ0BjYXBhY2l0b3IvZGV2aWNlJztcclxuaW1wb3J0IHsgRGVwbG95IH0gZnJvbSAnY29yZG92YS1wbHVnaW4taW9uaWMvZGlzdC9uZ3gnO1xyXG5pbXBvcnQgeyBnZXRDdXJyZW50U2NvcGUgfSBmcm9tICdAc2VudHJ5L2FuZ3VsYXInO1xyXG5pbXBvcnQgeyBJb25pY01vZHVsZSwgTmF2Q29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcclxuXHJcbmNvbnN0IGN0cmxOZXh0VmVyc2lvbk51bWJlciA9ICdjdHJsTmV4dFZlcnNpb25OdW1iZXInO1xyXG5jb25zdCBjdHJsVmVyc2lvbk51bWJlciA9ICdjdHJsVmVyc2lvbk51bWJlcic7XHJcbmNvbnN0IGN0cmxDb25maWd1cmVkQ2hhbm5lbCA9ICdjdHJsQ29uZmlndXJlZENoYW5uZWwnO1xyXG5jb25zdCBjdHJsQXBwU3RvcmVWZXJzaW9uID0gJ2N0cmxBcHBTdG9yZVZlcnNpb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcHgtYXBwLXVwZGF0ZScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIElvbmljTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIFNweENhcGl0YWxpemVQaXBlLFxyXG4gICAgU3B4SW5wdXRDb21wb25lbnQsXHJcbiAgICBTcHhQcm9ncmVzc0JhckNvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZU1vZHVsZVxyXG5dLFxyXG4gIHRlbXBsYXRlOiBgPGlvbi1oZWFkZXI+XHJcbiAgICA8aW9uLXRvb2xiYXI+XHJcbiAgICAgIDxpb24tdGl0bGU+XHJcbiAgICAgICAge3sgdHh0VXBkYXRlIHwgdHJhbnNsYXRlIHwgY2FwaXRhbGl6ZSB9fVxyXG4gICAgICA8L2lvbi10aXRsZT5cclxuICAgIDwvaW9uLXRvb2xiYXI+XHJcbiAgPC9pb24taGVhZGVyPlxyXG4gIFxyXG4gIDxpb24tY29udGVudCBjbGFzcz1cImlvbi1jb250ZW50LS11cGRcIiBbZnVsbHNjcmVlbl09XCJ0cnVlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaW9uLXBhZGRpbmdcIj5cclxuICAgICAgPHNweC1wcm9ncmVzcy1iYXIgW3NweFBlcmNlbnRhZ2VdPVwiZGVsYXllZFBlcmNlbnRhZ2VcIiBbc3B4VGl0bGVdPVwidXBkYXRlU3RhdHVzIHwgY2FwaXRhbGl6ZVwiPlxyXG4gICAgICA8L3NweC1wcm9ncmVzcy1iYXI+XHJcbiAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwibXQtM1wiPlxyXG4gICAgICAgIEBpZiAoY3RybEFwcFN0b3JlVmVyc2lvbi52YWx1ZSAmJiBjdHJsQXBwU3RvcmVWZXJzaW9uLnZhbHVlLnZhbHVlKSB7XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBncmlkLWNvbHMtMSBtZDpncmlkLWNvbHMtMiB4bDpncmlkLWNvbHMtMyBnYXAtM1wiPlxyXG4gICAgICAgICAgICA8c3B4LWlucHV0IFtmb3JtQ29udHJvbF09XCJjdHJsQXBwU3RvcmVWZXJzaW9uXCIgW3NweExhYmVsXT1cInR4dEFwcFN0b3JlVmVyc2lvbiB8IHRyYW5zbGF0ZSB8IGNhcGl0YWxpemVcIlxyXG4gICAgICAgICAgICBbc3B4UmVhZG9ubHldPVwidHJ1ZVwiPjwvc3B4LWlucHV0PlxyXG4gICAgICAgICAgICA8c3B4LWlucHV0IFtmb3JtQ29udHJvbF09XCJjdHJsQ29uZmlndXJlZENoYW5uZWxcIiBbc3B4TGFiZWxdPVwidHh0Q2hhbm5lbCB8IHRyYW5zbGF0ZSB8IGNhcGl0YWxpemVcIlxyXG4gICAgICAgICAgICBbc3B4UmVhZG9ubHldPVwidHJ1ZVwiPjwvc3B4LWlucHV0PlxyXG4gICAgICAgICAgICA8c3B4LWlucHV0IFtmb3JtQ29udHJvbF09XCJjdHJsVmVyc2lvbk51bWJlclwiIFtzcHhMYWJlbF09XCJ0eHRWZXJzaW9uIHwgdHJhbnNsYXRlIHwgY2FwaXRhbGl6ZVwiXHJcbiAgICAgICAgICAgIFtzcHhSZWFkb25seV09XCJ0cnVlXCI+PC9zcHgtaW5wdXQ+XHJcbiAgICAgICAgICAgIEBpZiAoY3RybE5leHRWZXJzaW9uTnVtYmVyLnZhbHVlICYmIGN0cmxOZXh0VmVyc2lvbk51bWJlci52YWx1ZS52YWx1ZSkge1xyXG4gICAgICAgICAgICAgIDxzcHgtaW5wdXQgW2Zvcm1Db250cm9sXT1cImN0cmxOZXh0VmVyc2lvbk51bWJlclwiIFtzcHhMYWJlbF09XCJ0eHROZXh0VmVyc2lvbiB8IHRyYW5zbGF0ZSB8IGNhcGl0YWxpemVcIlxyXG4gICAgICAgICAgICAgIFtzcHhSZWFkb25seV09XCJ0cnVlXCI+PC9zcHgtaW5wdXQ+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIH1cclxuICAgICAgPC9mb3JtPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9pb24tY29udGVudD5gLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3B4QXBwVXBkYXRlQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBzcHhIb21lVXJsITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNweElzU2lnbmVkSW4hOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHRleHRDaGVja2luZ0ZvclVwZGF0ZXMhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdGV4dERvd25sb2FkaW5nVXBkYXRlITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHRleHRFcnJvcldoaWxlVXBkYXRpbmdBcHAhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdGV4dEZpbmlzaGVkVXBkYXRpbmchOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdGV4dE5vVXBkYXRlc0F2YWlsYWJsZSE6IHN0cmluZztcclxuICBASW5wdXQoKSB0ZXh0VW5leHBlY3RlZEVycm9yITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHR4dEFwcFN0b3JlVmVyc2lvbiE6IHN0cmluZztcclxuICBASW5wdXQoKSB0eHRDaGFubmVsITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHR4dE5leHRWZXJzaW9uITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHR4dFVwZGF0ZSE6IHN0cmluZztcclxuICBASW5wdXQoKSB0eHRWZXJzaW9uITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNweEFwcElkITogc3RyaW5nO1xyXG5cclxuICBmb3JtOiBGb3JtR3JvdXA7XHJcblxyXG4gIGRlbGF5ZWRQZXJjZW50YWdlOiBudW1iZXIgPSAwO1xyXG4gIHBlcmNlbnRhZ2U6IG51bWJlciA9IDA7XHJcbiAgc3luY1RydWNrSW50ZXJ2YWw6IGFueSB8IG51bGwgPSBudWxsO1xyXG4gIHVwZGF0ZVN0YXR1czogc3RyaW5nID0gdGhpcy50ZXh0Q2hlY2tpbmdGb3JVcGRhdGVzO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVwbG95OiBEZXBsb3ksXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBwbGljYXRpb25SZWY6IEFwcGxpY2F0aW9uUmVmLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5hdkNvbnRyb2xsZXI6IE5hdkNvbnRyb2xsZXIsXHJcbiAgKSB7XHJcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcclxuICAgICAgW2N0cmxOZXh0VmVyc2lvbk51bWJlcl06IFtudWxsLCBbXV0sXHJcbiAgICAgIFtjdHJsVmVyc2lvbk51bWJlcl06IFtudWxsLCBbXV0sXHJcbiAgICAgIFtjdHJsQ29uZmlndXJlZENoYW5uZWxdOiBbbnVsbCwgW11dLFxyXG4gICAgICBbY3RybEFwcFN0b3JlVmVyc2lvbl06IFtudWxsLCBbXV0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldCBjdHJsVmVyc2lvbk51bWJlcigpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm0uZ2V0KGN0cmxWZXJzaW9uTnVtYmVyKSBhcyBGb3JtQ29udHJvbDsgfVxyXG4gIGdldCBjdHJsTmV4dFZlcnNpb25OdW1iZXIoKTogRm9ybUNvbnRyb2wgeyByZXR1cm4gdGhpcy5mb3JtLmdldChjdHJsTmV4dFZlcnNpb25OdW1iZXIpIGFzIEZvcm1Db250cm9sOyB9XHJcbiAgZ2V0IGN0cmxDb25maWd1cmVkQ2hhbm5lbCgpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm0uZ2V0KGN0cmxDb25maWd1cmVkQ2hhbm5lbCkgYXMgRm9ybUNvbnRyb2w7IH1cclxuICBnZXQgY3RybEFwcFN0b3JlVmVyc2lvbigpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm0uZ2V0KGN0cmxBcHBTdG9yZVZlcnNpb24pIGFzIEZvcm1Db250cm9sOyB9XHJcblxyXG4gIGluaXQoKSB7XHJcbiAgICB0aGlzLmRlbGF5ZWRQZXJjZW50YWdlID0gMDtcclxuICAgIHRoaXMucGVyY2VudGFnZSA9IDA7XHJcbiAgICB0aGlzLnBlcmZvcm1BdXRvbWF0aWNVcGRhdGUoKS50aGVuKCgpID0+IHsgfSk7XHJcbiAgICB0aGlzLnN0YXJ0TG9hZGVyU3luYygpO1xyXG4gICAgdGhpcy5jaGFuZ2VTdGF0dXMoe1xyXG4gICAgICBwZXJjZW50YWdlOiAwLFxyXG4gICAgICB0ZXh0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCh0aGlzLnRleHRDaGVja2luZ0ZvclVwZGF0ZXMpLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBkZXN0cm95KCkge1xyXG4gICAgdGhpcy5zdG9wTG9hZGVyU3luYygpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgcGVyZm9ybUF1dG9tYXRpY1VwZGF0ZSgpIHtcclxuICAgIGNvbnN0IGRldmljZUluZm8gPSBhd2FpdCBEZXZpY2UuZ2V0SW5mbygpO1xyXG5cclxuICAgIGlmIChkZXZpY2VJbmZvPy5wbGF0Zm9ybSA9PT0gJ3dlYicpIHtcclxuICAgICAgLy8gTG9jYWw/IFNraXAgdGhlIHVwZGF0ZSBwYWdlLlxyXG4gICAgICB0aGlzLmNsb3NlVXBkYXRlU2NyZWVuKCk7XHJcbiAgICB9XHJcbiAgICB0cnkge1xyXG4gICAgICB0aGlzLnVwZGF0ZUluZm8oKTtcclxuXHJcbiAgICAgIC8vIFN0YXJ0IHVwZ3JhZGVcclxuICAgICAgY29uc3QgY3VycmVudFZlcnNpb24gPSBhd2FpdCB0aGlzLmRlcGxveS5nZXRDdXJyZW50VmVyc2lvbigpO1xyXG4gICAgICBpZiAoY3VycmVudFZlcnNpb24/LmJpbmFyeVZlcnNpb25OYW1lKSB7XHJcbiAgICAgICAgY29uc3QgYmluYXJ5R3JvdXAgPSBjdXJyZW50VmVyc2lvbi5iaW5hcnlWZXJzaW9uTmFtZS5zdWJzdHJpbmcoMCwgMyk7IC8vIGUuZy4gXCIxLjRcIlxyXG4gICAgICAgIGNvbnN0IGNoYW5uZWxHcm91cCA9IGN1cnJlbnRWZXJzaW9uLmNoYW5uZWwuc3BsaXQoJy0nKVsxXS5zdWJzdHJpbmcoMCwgMyk7IC8vIGUuZy4gXCIxLjRcIlxyXG4gICAgICAgIGNvbnN0IGNoYW5uZWxUeXBlID0gY3VycmVudFZlcnNpb24uY2hhbm5lbC5zcGxpdCgnLScpWzBdO1xyXG5cclxuICAgICAgICBpZiAoYmluYXJ5R3JvdXAgIT0gY2hhbm5lbEdyb3VwKSB7XHJcbiAgICAgICAgICBhd2FpdCB0aGlzLmRlcGxveS5jb25maWd1cmUoe1xyXG4gICAgICAgICAgICBhcHBJZDogdGhpcy5zcHhBcHBJZCxcclxuICAgICAgICAgICAgY2hhbm5lbDogYCR7Y2hhbm5lbFR5cGV9LSR7YmluYXJ5R3JvdXB9LnhgXHJcbiAgICAgICAgICB9KS50aGVuKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5zeW5jKCkudGhlbigoKSA9PiB7IH0pO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuc3luYygpLnRoZW4oKCkgPT4geyB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zeW5jKCkudGhlbigoKSA9PiB7IH0pO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIEVuZCB1cGdyYWRlXHJcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlU3RhdHVzKHtcclxuICAgICAgICBjbG9zZVNjcmVlbjogdHJ1ZSxcclxuICAgICAgICBlcnJvcixcclxuICAgICAgICBwZXJjZW50YWdlOiAxMDAsXHJcbiAgICAgICAgdGV4dDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQodGhpcy50ZXh0VW5leHBlY3RlZEVycm9yKVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgc3luYygpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIHRoaXMudXBkYXRlSW5mbygpO1xyXG5cclxuICAgICAgY29uc3QgdXBkYXRlQXZhaWxhYmxlSW5mbyA9IGF3YWl0IHRoaXMuZGVwbG95LmNoZWNrRm9yVXBkYXRlKCk7XHJcbiAgICAgIGlmICghdXBkYXRlQXZhaWxhYmxlSW5mby5hdmFpbGFibGUpIHtcclxuICAgICAgICAvLyBObyB1cGRhdGUgYXZhaWxhYmxlXHJcbiAgICAgICAgdGhpcy5jaGFuZ2VTdGF0dXMoe1xyXG4gICAgICAgICAgY2xvc2VTY3JlZW46IHRydWUsXHJcbiAgICAgICAgICBwZXJjZW50YWdlOiAwLFxyXG4gICAgICAgICAgdGV4dDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQodGhpcy50ZXh0Tm9VcGRhdGVzQXZhaWxhYmxlKSxcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAvLyBEb3dubG9hZCB1cGRhdGVcclxuICAgICAgICBhd2FpdCB0aGlzLmRlcGxveS5zeW5jKHsgdXBkYXRlTWV0aG9kOiAnYXV0bycgfSwgKHBlcmNlbnRhZ2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2hhbmdlU3RhdHVzKHtcclxuICAgICAgICAgICAgcGVyY2VudGFnZTogcGVyY2VudGFnZSA/PyAwLFxyXG4gICAgICAgICAgICB0ZXh0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCh0aGlzLnRleHREb3dubG9hZGluZ1VwZGF0ZSwgeyBwZXJjZW50YWdlLCB2ZXJzaW9uOiB1cGRhdGVBdmFpbGFibGVJbmZvLmJ1aWxkIH0pLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmNoYW5nZVN0YXR1cyh7XHJcbiAgICAgICAgICAgIGNsb3NlU2NyZWVuOiB0cnVlLFxyXG4gICAgICAgICAgICBlcnJvcixcclxuICAgICAgICAgICAgcGVyY2VudGFnZTogMTAwLFxyXG4gICAgICAgICAgICB0ZXh0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCh0aGlzLnRleHRFcnJvcldoaWxlVXBkYXRpbmdBcHApLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuY2hhbmdlU3RhdHVzKHtcclxuICAgICAgICAgIGNsb3NlU2NyZWVuOiB0cnVlLFxyXG4gICAgICAgICAgcGVyY2VudGFnZTogMTAwLFxyXG4gICAgICAgICAgdGV4dDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQodGhpcy50ZXh0RmluaXNoZWRVcGRhdGluZywgeyB2ZXJzaW9uOiB1cGRhdGVBdmFpbGFibGVJbmZvLmJ1aWxkIH0pXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcclxuICAgICAgLy8gQ2F0Y2ggdW5leHBlY3RlZCBwbHVnLWluIGVycm9yc1xyXG4gICAgICB0aGlzLmNoYW5nZVN0YXR1cyh7XHJcbiAgICAgICAgY2xvc2VTY3JlZW46IHRydWUsXHJcbiAgICAgICAgZXJyb3IsXHJcbiAgICAgICAgcGVyY2VudGFnZTogMTAwLFxyXG4gICAgICAgIHRleHQ6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KHRoaXMudGV4dFVuZXhwZWN0ZWRFcnJvcilcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIHVwZGF0ZUluZm8oKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCBjdXJyZW50VmVyc2lvbiA9IGF3YWl0IHRoaXMuZGVwbG95LmdldEN1cnJlbnRWZXJzaW9uKCk7XHJcbiAgICBjb25zdCBjb25maWd1cmF0aW9uID0gYXdhaXQgdGhpcy5kZXBsb3kuZ2V0Q29uZmlndXJhdGlvbigpO1xyXG4gICAgY29uc3QgdXBkYXRlQXZhaWxhYmxlSW5mbyA9IGF3YWl0IHRoaXMuZGVwbG95LmNoZWNrRm9yVXBkYXRlKCk7XHJcblxyXG4gICAgaWYgKGN1cnJlbnRWZXJzaW9uKSB7XHJcbiAgICAgIHRoaXMuY3RybFZlcnNpb25OdW1iZXIuc2V0VmFsdWUoe1xyXG4gICAgICAgIHZhbHVlOiBjb25maWd1cmF0aW9uPy5jdXJyZW50QnVpbGRJZCxcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuY3RybE5leHRWZXJzaW9uTnVtYmVyLnNldFZhbHVlKHtcclxuICAgICAgICB2YWx1ZTogdXBkYXRlQXZhaWxhYmxlSW5mbz8uYnVpbGRcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuY3RybENvbmZpZ3VyZWRDaGFubmVsLnNldFZhbHVlKHtcclxuICAgICAgICB2YWx1ZTogY29uZmlndXJhdGlvbiA/IGNvbmZpZ3VyYXRpb24uY2hhbm5lbCA6IG51bGxcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuY3RybEFwcFN0b3JlVmVyc2lvbi5zZXRWYWx1ZSh7XHJcbiAgICAgICAgdmFsdWU6IGNvbmZpZ3VyYXRpb24gPyBjb25maWd1cmF0aW9uLmJpbmFyeVZlcnNpb25OYW1lIDogbnVsbFxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHtcclxuICAgICAgICBjb25zdCBzY29wZSA9IGdldEN1cnJlbnRTY29wZSgpO1xyXG4gICAgICAgIHNjb3BlLnNldFRhZygndmVyc2lvbl9iaW5hcnlfY29kZScsIGN1cnJlbnRWZXJzaW9uPy5iaW5hcnlWZXJzaW9uQ29kZSk7XHJcbiAgICAgICAgc2NvcGUuc2V0VGFnKCd2ZXJzaW9uX2JpbmFyeV9uYW1lJywgY3VycmVudFZlcnNpb24/LmJpbmFyeVZlcnNpb25OYW1lKTtcclxuICAgICAgICBzY29wZS5zZXRUYWcoJ3ZlcnNpb25fYnVpbGRfaWQnLCBjdXJyZW50VmVyc2lvbj8uYnVpbGRJZCk7XHJcbiAgICAgICAgc2NvcGUuc2V0VGFnKCdjaGFubmVsX3R5cGUnLCBjdXJyZW50VmVyc2lvbj8uY2hhbm5lbCk7XHJcbiAgICAgICAgc2NvcGUuc2V0VGFnKCd2ZXJzaW9uX3NuYXBzaG90X2lkJywgY3VycmVudFZlcnNpb24/LnZlcnNpb25JZCk7XHJcbiAgICAgIH07XHJcblxyXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICB0aGlzLmFwcGxpY2F0aW9uUmVmLnRpY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2hhbmdlU3RhdHVzKHN0YXR1czoge1xyXG4gICAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgICBjbG9zZVNjcmVlbj86IGJvb2xlYW47XHJcbiAgICBwZXJjZW50YWdlOiBudW1iZXI7XHJcbiAgfSkge1xyXG4gICAgdGhpcy51cGRhdGVTdGF0dXMgPSBzdGF0dXMudGV4dDtcclxuICAgIHRoaXMucGVyY2VudGFnZSA9IHN0YXR1cy5wZXJjZW50YWdlO1xyXG4gICAgaWYgKHN0YXR1cy5jbG9zZVNjcmVlbikge1xyXG4gICAgICB0aGlzLmNsb3NlVXBkYXRlU2NyZWVuKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoc3RhdHVzLmVycm9yKSB7XHJcbiAgICAgIC8vIHRoaXMuYXBwU3RvcmUuZGlzcGF0Y2goXHJcbiAgICAgIC8vICAgc2hhcmVkVG9hc3RlckFjdGlvbnMuQ1JFQVRFX0VSUk9SKHtcclxuICAgICAgLy8gICAgIG1lc3NhZ2VUZXh0OiBzdGF0dXMuZXJyb3IsXHJcbiAgICAgIC8vICAgfSlcclxuICAgICAgLy8gKTtcclxuICAgIH1cclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XHJcbiAgICB0aGlzLmFwcGxpY2F0aW9uUmVmLnRpY2soKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2xvc2VVcGRhdGVTY3JlZW4oKSB7XHJcbiAgICAvLyBBbGxvd2luZyBzb21lIHRpbWUgdG8gbWFrZSBhIHNjcmVlbnNob3Qgb2YgdmVyc2lvbiBpbmZvXHJcbiAgICBTcHhTdG9yYWdlLmNsZWFyU2V0dGluZzxhbnk+KFNweFN0b3JhZ2VLZXlFbnVtLnVwZGF0ZUluUHJvZ3Jlc3MpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICBTcHhTdG9yYWdlLmdldFNldHRpbmc8YW55PihTcHhTdG9yYWdlS2V5RW51bS5hZnRlclNpZ25JbikgJiZcclxuICAgICAgICB0aGlzLnNweElzU2lnbmVkSW5cclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5uYXZDb250cm9sbGVyLm5hdmlnYXRlUm9vdChbU3B4U3RvcmFnZS5nZXRTZXR0aW5nPGFueT4oU3B4U3RvcmFnZUtleUVudW0uYWZ0ZXJTaWduSW4pXSk7XHJcbiAgICAgICAgU3B4U3RvcmFnZS5jbGVhclNldHRpbmc8YW55PihTcHhTdG9yYWdlS2V5RW51bS5hZnRlclNpZ25JbilcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm5hdkNvbnRyb2xsZXIubmF2aWdhdGVSb290KFt0aGlzLnNweEhvbWVVcmxdKTtcclxuICAgICAgfVxyXG4gICAgfSwgMCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXJ0TG9hZGVyU3luYygpIHtcclxuICAgIFNweFN0b3JhZ2Uuc2V0U2V0dGluZzxhbnk+KFNweFN0b3JhZ2VLZXlFbnVtLnVwZGF0ZUluUHJvZ3Jlc3MsICcxJyk7XHJcbiAgICBpZiAodGhpcy5zeW5jVHJ1Y2tJbnRlcnZhbCA9PT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnN5bmNUcnVja0ludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZGVsYXllZFBlcmNlbnRhZ2UgPSB0aGlzLnBlcmNlbnRhZ2U7XHJcbiAgICAgIH0sIDIwMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0b3BMb2FkZXJTeW5jKCkge1xyXG4gICAgaWYgKHRoaXMuc3luY1RydWNrSW50ZXJ2YWwgIT09IG51bGwpIHtcclxuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLnN5bmNUcnVja0ludGVydmFsKTtcclxuICAgICAgdGhpcy5zeW5jVHJ1Y2tJbnRlcnZhbCA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -68,7 +68,7 @@ export class SpxCheckDigitComponent {
|
|
|
68
68
|
return formControl._rawValidators;
|
|
69
69
|
}
|
|
70
70
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxCheckDigitComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
71
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxCheckDigitComponent, isStandalone: true, selector: "spx-check-digit", inputs: { txtCheckDigit: "txtCheckDigit", txtContainer: "txtContainer", txtPrefix: "txtPrefix" }, viewQueries: [{ propertyName: "ctrlContainerNumberRef", first: true, predicate: ["ctrlContainerNumberRef"], descendants: true }], ngImport: i0, template: "<form [formGroup]=\"formGroup\" class=\"max-w-lg mx-auto flex flex-col gap-3\">\r\n <spx-input\r\n #ctrlContainerNumberRef\r\n [formControl]=\"ctrlContainerNumber\"\r\n [spxAutofocus]=\"true\"\r\n [spxCapitalize]=\"true\"\r\n [spxLabel]=\"txtContainer\"\r\n [spxPattern]=\"'[0-9]*'\"\r\n [spxRequired]=\"true\"\r\n [spxShowValidationMessages]=\"ctrlContainerNumber && ctrlContainerNumber.errors && ctrlContainerNumber.touched\"\r\n [spxType]=\"inputTypeOverlayNumber\"\r\n [spxValidators]=\"getRawValidators(ctrlContainerNumber)\">\r\n <spx-validate-control [control]=\"ctrlContainerNumber\" [label]=\"txtContainer\"></spx-validate-control>\r\n </spx-input>\r\n <spx-input\r\n [formControl]=\"ctrlContainerPrefix\"\r\n [spxCapitalize]=\"true\"\r\n [spxLabel]=\"txtPrefix\"\r\n [spxRequired]=\"true\"\r\n [spxShowValidationMessages]=\"ctrlContainerPrefix && ctrlContainerPrefix.errors && ctrlContainerPrefix.touched\"\r\n [spxType]=\"inputTypeText\"\r\n [spxValidators]=\"getRawValidators(ctrlContainerPrefix)\">\r\n <spx-validate-control [control]=\"ctrlContainerPrefix\" [label]=\"txtPrefix\"></spx-validate-control>\r\n </spx-input>\r\n @if (ctrlCheckDigit.value) {\r\n <spx-input\r\n [formControl]=\"ctrlCheckDigit\"\r\n [spxLabel]=\"txtCheckDigit\"\r\n [spxReadonly]=\"true\"\r\n [spxType]=\"inputTypeText\">\r\n </spx-input>\r\n }\r\n</form>", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: SpxValidateControlComponent, selector: "spx-validate-control", inputs: ["control", "label", "submitTried"] }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutocomplete", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }] }); }
|
|
71
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxCheckDigitComponent, isStandalone: true, selector: "spx-check-digit", inputs: { txtCheckDigit: "txtCheckDigit", txtContainer: "txtContainer", txtPrefix: "txtPrefix" }, viewQueries: [{ propertyName: "ctrlContainerNumberRef", first: true, predicate: ["ctrlContainerNumberRef"], descendants: true }], ngImport: i0, template: "<form [formGroup]=\"formGroup\" class=\"max-w-lg mx-auto flex flex-col gap-3\">\r\n <spx-input\r\n #ctrlContainerNumberRef\r\n [formControl]=\"ctrlContainerNumber\"\r\n [spxAutofocus]=\"true\"\r\n [spxCapitalize]=\"true\"\r\n [spxLabel]=\"txtContainer\"\r\n [spxPattern]=\"'[0-9]*'\"\r\n [spxRequired]=\"true\"\r\n [spxShowValidationMessages]=\"ctrlContainerNumber && ctrlContainerNumber.errors && ctrlContainerNumber.touched\"\r\n [spxType]=\"inputTypeOverlayNumber\"\r\n [spxValidators]=\"getRawValidators(ctrlContainerNumber)\">\r\n <spx-validate-control [control]=\"ctrlContainerNumber\" [label]=\"txtContainer\"></spx-validate-control>\r\n </spx-input>\r\n <spx-input\r\n [formControl]=\"ctrlContainerPrefix\"\r\n [spxCapitalize]=\"true\"\r\n [spxLabel]=\"txtPrefix\"\r\n [spxRequired]=\"true\"\r\n [spxShowValidationMessages]=\"ctrlContainerPrefix && ctrlContainerPrefix.errors && ctrlContainerPrefix.touched\"\r\n [spxType]=\"inputTypeText\"\r\n [spxValidators]=\"getRawValidators(ctrlContainerPrefix)\">\r\n <spx-validate-control [control]=\"ctrlContainerPrefix\" [label]=\"txtPrefix\"></spx-validate-control>\r\n </spx-input>\r\n @if (ctrlCheckDigit.value) {\r\n <spx-input\r\n [formControl]=\"ctrlCheckDigit\"\r\n [spxLabel]=\"txtCheckDigit\"\r\n [spxReadonly]=\"true\"\r\n [spxType]=\"inputTypeText\">\r\n </spx-input>\r\n }\r\n</form>", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: SpxValidateControlComponent, selector: "spx-validate-control", inputs: ["control", "label", "submitTried"] }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutocomplete", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxAlertMessageSeverity", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }] }); }
|
|
72
72
|
}
|
|
73
73
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxCheckDigitComponent, decorators: [{
|
|
74
74
|
type: Component,
|
|
@@ -84,7 +84,7 @@ export class SpxAutocompleteSearchComponent {
|
|
|
84
84
|
});
|
|
85
85
|
}
|
|
86
86
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxAutocompleteSearchComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
87
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpxAutocompleteSearchComponent, isStandalone: true, selector: "spx-autocomplete-search", inputs: { spxSuggestions: "spxSuggestions", spxField: "spxField", txtOptions: "txtOptions", txtQuery: "txtQuery", txtSubmit: "txtSubmit", spxValuePair: "spxValuePair" }, outputs: { spxCancel: "spxCancel", spxSearch: "spxSearch", spxSubmit: "spxSubmit" }, ngImport: i0, template: "<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\r\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\r\n <div class=\"grow flex flex-col gap-3 overflow-y-auto\">\r\n <spx-input [formControl]=\"ctrlQuery\" [spxLabel]=\"txtQuery\" [spxType]=\"inputTypeText\">\r\n </spx-input>\r\n <spx-input [formControl]=\"ctrlOptions\" [spxLabel]=\"txtOptions\" [spxSuggestions]=\"spxSuggestions\"\r\n [spxType]=\"inputTypeRadio\">\r\n </spx-input>\r\n </div>\r\n <div class=\"py-3 flex flex-col gap-3\">\r\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severitySuccess\">\r\n Save\r\n </spx-button>\r\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severityError\" [spxType]=\"'button'\" (spxClick)=\"onCancel()\">\r\n Cancel\r\n </spx-button>\r\n </div>\r\n </div>\r\n</form>", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutocomplete", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }] }); }
|
|
87
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpxAutocompleteSearchComponent, isStandalone: true, selector: "spx-autocomplete-search", inputs: { spxSuggestions: "spxSuggestions", spxField: "spxField", txtOptions: "txtOptions", txtQuery: "txtQuery", txtSubmit: "txtSubmit", spxValuePair: "spxValuePair" }, outputs: { spxCancel: "spxCancel", spxSearch: "spxSearch", spxSubmit: "spxSubmit" }, ngImport: i0, template: "<form class=\"bg-black fixed pt-16 z-50 top-0 left-0 right-0 bottom-0\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\r\n <div class=\"h-full w-full px-3 flex flex-col gap-3\">\r\n <div class=\"grow flex flex-col gap-3 overflow-y-auto\">\r\n <spx-input [formControl]=\"ctrlQuery\" [spxLabel]=\"txtQuery\" [spxType]=\"inputTypeText\">\r\n </spx-input>\r\n <spx-input [formControl]=\"ctrlOptions\" [spxLabel]=\"txtOptions\" [spxSuggestions]=\"spxSuggestions\"\r\n [spxType]=\"inputTypeRadio\">\r\n </spx-input>\r\n </div>\r\n <div class=\"py-3 flex flex-col gap-3\">\r\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severitySuccess\">\r\n Save\r\n </spx-button>\r\n <spx-button [spxFullWidth]=\"true\" [spxSeverity]=\"severityError\" [spxType]=\"'button'\" (spxClick)=\"onCancel()\">\r\n Cancel\r\n </spx-button>\r\n </div>\r\n </div>\r\n</form>", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutocomplete", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxAlertMessageSeverity", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }] }); }
|
|
88
88
|
}
|
|
89
89
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxAutocompleteSearchComponent, decorators: [{
|
|
90
90
|
type: Component,
|
|
@@ -177,7 +177,7 @@ export class SpxFormViewComponent {
|
|
|
177
177
|
</spx-button>
|
|
178
178
|
}
|
|
179
179
|
</div>
|
|
180
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: SpxAutocompleteSearchComponent, selector: "spx-autocomplete-search", inputs: ["spxSuggestions", "spxField", "txtOptions", "txtQuery", "txtSubmit", "spxValuePair"], outputs: ["spxCancel", "spxSearch", "spxSubmit"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { kind: "pipe", type: SpxCapitalizePipe, name: "capitalize" }, { kind: "component", type: SpxFormSectionComponent, selector: "spx-form-section", inputs: ["spxIndex", "spxIndexSecondary", "spxTitle", "spxShowTitle"] }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutocomplete", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }, { kind: "component", type: SpxValidateControlComponent, selector: "spx-validate-control", inputs: ["control", "label", "submitTried"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
|
|
180
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: SpxAutocompleteSearchComponent, selector: "spx-autocomplete-search", inputs: ["spxSuggestions", "spxField", "txtOptions", "txtQuery", "txtSubmit", "spxValuePair"], outputs: ["spxCancel", "spxSearch", "spxSubmit"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { kind: "pipe", type: SpxCapitalizePipe, name: "capitalize" }, { kind: "component", type: SpxFormSectionComponent, selector: "spx-form-section", inputs: ["spxIndex", "spxIndexSecondary", "spxTitle", "spxShowTitle"] }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutocomplete", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxAlertMessageSeverity", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }, { kind: "component", type: SpxValidateControlComponent, selector: "spx-validate-control", inputs: ["control", "label", "submitTried"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
|
|
181
181
|
}
|
|
182
182
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxFormViewComponent, decorators: [{
|
|
183
183
|
type: Component,
|
|
@@ -294,4 +294,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
294
294
|
type: ViewChildren,
|
|
295
295
|
args: [SpxInputComponent]
|
|
296
296
|
}] } });
|
|
297
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWZvcm0tdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWZvcm0tdmlldy9zcHgtZm9ybS12aWV3LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUF3QixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFnQixNQUFNLGdDQUFnQyxDQUFDO0FBQ25HLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBMkMsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0csT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDckYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDakYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7O0FBb0dwRSxNQUFNLE9BQU8sb0JBQW9CO0lBb0IvQixZQUFZLENBQUMsR0FBVztRQUN0QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDbEUsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFv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cUZOLG9CQUFvQjtrQkFqR2hDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLDhCQUE4Qjt3QkFDOUIsa0JBQWtCO3dCQUNsQixpQkFBaUI7d0JBQ2pCLHVCQUF1Qjt3QkFDdkIsaUJBQWlCO3dCQUNqQiwyQkFBMkI7d0JBQzNCLGVBQWU7cUJBQ2xCO29CQUNDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBaUZYO2lCQUNBO2dGQUVVLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQzBCLFNBQVM7c0JBQXpDLFlBQVk7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSnNvblBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGQsIFZpZXdDaGlsZHJlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTcHhGb3JtU2VjdGlvbkkgfSBmcm9tICcuL3NweC1mb3JtLXNlY3Rpb24uaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgU3B4Rm9ybVNlY3Rpb25Db21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1mb3JtLXNlY3Rpb24nO1xyXG5pbXBvcnQgeyBTcHhJbnB1dENvbXBvbmVudCwgU3B4SW5wdXRUeXBlRW51bSwgU3B4VmFsdWVQYWlyIH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzJztcclxuaW1wb3J0IHsgU3B4Q2FwaXRhbGl6ZVBpcGUgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1jYXBpdGFsaXplJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3B4Rm9ybUZpZWxkSSB9IGZyb20gJy4vc3B4LWZvcm0tZmllbGQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgU3B4QXV0b2NvbXBsZXRlU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi9zcHgtYXV0b2NvbXBsZXRlLXNlYXJjaC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTcHhWYWxpZGF0ZUNvbnRyb2xDb21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC12YWxpZGF0aW9uJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IFNweEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWJ1dHRvbic7XHJcbmltcG9ydCB7IFNweEZvcm1JIH0gZnJvbSAnLi9zcHgtZm9ybS5pbnRlcmZhY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcHgtZm9ybS12aWV3JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIFNweEF1dG9jb21wbGV0ZVNlYXJjaENvbXBvbmVudCxcclxuICAgIFNweEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFNweENhcGl0YWxpemVQaXBlLFxyXG4gICAgU3B4Rm9ybVNlY3Rpb25Db21wb25lbnQsXHJcbiAgICBTcHhJbnB1dENvbXBvbmVudCxcclxuICAgIFNweFZhbGlkYXRlQ29udHJvbENvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZU1vZHVsZVxyXG5dLFxyXG4gIHRlbXBsYXRlOiBgQGlmIChhdXRvY29tcGxldGVGaWVsZCkge1xyXG4gIDxzcHgtYXV0b2NvbXBsZXRlLXNlYXJjaFxyXG4gICAgW3NweEZpZWxkXT1cImF1dG9jb21wbGV0ZUZpZWxkXCJcclxuICAgIFtzcHhTdWdnZXN0aW9uc109XCJ0aGlzLnNweFN1Z2dlc3Rpb25zW2F1dG9jb21wbGV0ZUZpZWxkLmtleV1cIlxyXG4gICAgW3NweFZhbHVlUGFpcl09XCIkYW55KHRoaXMuc3B4Rm9ybUdyb3VwLmdldChhdXRvY29tcGxldGVGaWVsZC5rZXkpKS52YWx1ZVwiXHJcbiAgICBbdHh0T3B0aW9uc109XCInT3B0aW9ucydcIlxyXG4gICAgW3R4dFF1ZXJ5XT1cIidRdWVyeSdcIlxyXG4gICAgW3R4dFN1Ym1pdF09XCInU2F2ZSdcIlxyXG4gICAgKHNweENhbmNlbCk9XCJvbkF1dG9jb21wbGV0ZUNhbmNlbCgpXCJcclxuICAgIChzcHhTZWFyY2gpPVwib25BdXRvY29tcGxldGVTZWFyY2goJGV2ZW50KVwiXHJcbiAgICAoc3B4U3VibWl0KT1cIm9uQXV0b2NvbXBsZXRlU2F2ZSgkZXZlbnQpXCI+XHJcbiAgPC9zcHgtYXV0b2NvbXBsZXRlLXNlYXJjaD5cclxufVxyXG48ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtM1wiPlxyXG4gIEBmb3IgKHNweFNlY3Rpb24gb2Ygc3B4Rm9ybS5zZWN0aW9uczsgdHJhY2sgc3B4U2VjdGlvbjsgbGV0IHNweFNlY3Rpb25JbmRleCA9ICRpbmRleCkge1xyXG4gICAgPHNweC1mb3JtLXNlY3Rpb25cclxuICAgICAgW3NweFNob3dUaXRsZV09XCIhc3B4U2VjdGlvbi5zaG93VGl0bGUgfHwgc3B4U2VjdGlvbi5zaG93VGl0bGUoKVwiXHJcbiAgICAgIFtzcHhJbmRleF09XCJzcHhTZWN0aW9uSW5kZXggKyAxXCJcclxuICAgICAgW3NweFRpdGxlXT1cInNweFNlY3Rpb24udGl0bGUgPyAoc3B4U2VjdGlvbi50aXRsZSgpIHwgdHJhbnNsYXRlIHwgY2FwaXRhbGl6ZSkgOiB1bmRlZmluZWRcIj5cclxuICAgICAgQGZvciAoc3B4RmllbGQgb2Ygc3B4U2VjdGlvbi5maWVsZHM7IHRyYWNrIHNweEZpZWxkOyBsZXQgc3B4RmllbGRJbmRleCA9ICRpbmRleCkge1xyXG4gICAgICAgIEBpZiAoc3B4RmllbGQuc2hvdyA9PT0gdW5kZWZpbmVkIHx8IHNweEZpZWxkLnNob3coKSkge1xyXG4gICAgICAgICAgQGlmIChzcHhGaWVsZC50eXBlKCkgPT09IHR5cGVCdXR0b24pIHtcclxuICAgICAgICAgICAgPHNweC1idXR0b25cclxuICAgICAgICAgICAgICBbc3B4RnVsbFdpZHRoXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIFtzcHhTZXZlcml0eV09XCJzcHhGaWVsZC5zZXZlcml0eSA/IHNweEZpZWxkLnNldmVyaXR5KCkgOiB1bmRlZmluZWRcIlxyXG4gICAgICAgICAgICAgIFtzcHhUeXBlXT1cIididXR0b24nXCJcclxuICAgICAgICAgICAgICAoc3B4Q2xpY2spPVwib25DbGljayhzcHhGaWVsZClcIlxyXG4gICAgICAgICAgICA+e3sgKHNweEZpZWxkLmxhYmVsID8gc3B4RmllbGQubGFiZWwoKSA6IHNweEZpZWxkLmtleSkgfCB0cmFuc2xhdGUgIHwgY2FwaXRhbGl6ZSB9fTwvc3B4LWJ1dHRvbj5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpZiAoc3B4RmllbGQudHlwZSgpID09PSB0eXBlT3ZlcmxheSB8fCBzcHhGaWVsZC50eXBlKCkgPT09IHR5cGVPdmVybGF5TnVtYmVyIHx8IHNweEZpZWxkLnR5cGUoKSA9PT0gdHlwZUZsb2F0IHx8IHNweEZpZWxkLnR5cGUoKSA9PT0gdHlwZU51bWJlciB8fCBzcHhGaWVsZC50eXBlKCkgPT09IHR5cGVUZXh0IHx8IHNweEZpZWxkLnR5cGUoKSA9PT0gdHlwZUF1dG9jb21wbGV0ZSB8fCBzcHhGaWVsZC50eXBlKCkgPT09IHR5cGVOdW1lcmljS2V5Ym9hcmQpIHtcclxuICAgICAgICAgICAgPHNweC1pbnB1dFxyXG4gICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCIkYW55KHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpKVwiXHJcbiAgICAgICAgICAgICAgW3NweEF1dG9mb2N1c109XCJzcHhGaWVsZC5hdXRvZm9jdXMgPyBzcHhGaWVsZC5hdXRvZm9jdXMoKSA6IGZhbHNlXCJcclxuICAgICAgICAgICAgICBbc3B4Q2FwaXRhbGl6ZV09XCJzcHhGaWVsZC5jYXBpdGFsaXplID8gc3B4RmllbGQuY2FwaXRhbGl6ZSgpIDogZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFtzcHhMYWJlbF09XCIoc3B4RmllbGQubGFiZWwgPyBzcHhGaWVsZC5sYWJlbCgpIDogc3B4RmllbGQua2V5KSB8IHRyYW5zbGF0ZSAgfCBjYXBpdGFsaXplXCJcclxuICAgICAgICAgICAgICBbc3B4TmFtZV09XCJzcHhGaWVsZC5rZXlcIlxyXG4gICAgICAgICAgICAgIFtzcHhQYXR0ZXJuXT1cInNweEZpZWxkLnR5cGUoKSA9PT0gdHlwZU51bWVyaWNLZXlib2FyZCA/ICdcXFxcZConIDogdW5kZWZpbmVkXCJcclxuICAgICAgICAgICAgICBbc3B4UmVhZG9ubHldPVwic3B4RmllbGQucmVhZG9ubHkgPyBzcHhGaWVsZC5yZWFkb25seSgpIDogZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFtzcHhSZXF1aXJlZF09XCJoYXNSZXF1aXJlZEZpZWxkKHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpISlcIlxyXG4gICAgICAgICAgICAgIFtzcHhTaG93U2VhcmNoXT1cInNweEZpZWxkLnR5cGUoKSA9PT0gdHlwZUF1dG9jb21wbGV0ZVwiXHJcbiAgICAgICAgICAgICAgW3NweFNob3dIZWxwXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICBbc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlc109XCJ0aGlzLnNweEZvcm1Hcm91cC5nZXQoc3B4RmllbGQua2V5KSEgJiYgdGhpcy5zcHhGb3JtR3JvdXAuZ2V0KHNweEZpZWxkLmtleSkhLmVycm9ycyAmJiB0aGlzLnNweEZvcm1Hcm91cC5nZXQoc3B4RmllbGQua2V5KSEudG91Y2hlZFwiXHJcbiAgICAgICAgICAgICAgW3NweFN0ZXBdPVwic3B4RmllbGQuc3RlcCA/IHNweEZpZWxkLnN0ZXAoKSA6IHVuZGVmaW5lZFwiXHJcbiAgICAgICAgICAgICAgW3NweFR5cGVdPVwic3B4RmllbGQudHlwZSgpXCJcclxuICAgICAgICAgICAgICBbc3B4VmFsaWRhdG9yc109XCJnZXRSYXdWYWxpZGF0b3JzKHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpISlcIlxyXG4gICAgICAgICAgICAgIFtzcHhTdWdnZXN0aW9uc109XCJzcHhGaWVsZC5zdWdnZXN0aW9uc0ZpeGVkID8gc3B4RmllbGQuc3VnZ2VzdGlvbnNGaXhlZCgpIDogdGhpcy5zcHhTdWdnZXN0aW9uc1tzcHhGaWVsZC5rZXldXCJcclxuICAgICAgICAgICAgICAoc3B4Qmx1cik9XCJvbkJsdXIoc3B4RmllbGQpXCJcclxuICAgICAgICAgICAgICAoc3B4U2VhcmNoKT1cIm9uU2VhcmNoKHNweEZpZWxkKVwiPlxyXG4gICAgICAgICAgICAgIDxzcHgtdmFsaWRhdGUtY29udHJvbCBbY29udHJvbF09XCIkYW55KHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpKVwiIFtsYWJlbF09XCIoc3B4RmllbGQubGFiZWwgPyBzcHhGaWVsZC5sYWJlbCgpIDogc3B4RmllbGQua2V5KXwgdHJhbnNsYXRlICB8IGNhcGl0YWxpemVcIj48L3NweC12YWxpZGF0ZS1jb250cm9sPlxyXG4gICAgICAgICAgICA8L3NweC1pbnB1dD5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpZiAoc3B4RmllbGQudHlwZSgpID09PSB0eXBlUmFkaW8pIHtcclxuICAgICAgICAgICAgPHNweC1pbnB1dFxyXG4gICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCIkYW55KHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpKVwiXHJcbiAgICAgICAgICAgICAgW3NweExhYmVsXT1cIihzcHhGaWVsZC5sYWJlbCA/IHNweEZpZWxkLmxhYmVsKCkgOiBzcHhGaWVsZC5rZXkpIHwgdHJhbnNsYXRlIHwgY2FwaXRhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgW3NweE5hbWVdPVwic3B4RmllbGQua2V5XCJcclxuICAgICAgICAgICAgICBbc3B4UmVhZG9ubHldPVwic3B4RmllbGQucmVhZG9ubHkgPyBzcHhGaWVsZC5yZWFkb25seSgpIDogZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFtzcHhSZXF1aXJlZF09XCJoYXNSZXF1aXJlZEZpZWxkKHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpISlcIlxyXG4gICAgICAgICAgICAgIFtzcHhTaG93SGVscF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgW3NweFNob3dWYWxpZGF0aW9uTWVzc2FnZXNdPVwidGhpcy5zcHhGb3JtR3JvdXAuZ2V0KHNweEZpZWxkLmtleSkhICYmIHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpIS5lcnJvcnMgJiYgdGhpcy5zcHhGb3JtR3JvdXAuZ2V0KHNweEZpZWxkLmtleSkhLnRvdWNoZWRcIlxyXG4gICAgICAgICAgICAgIFtzcHhTdWdnZXN0aW9uc109XCJzcHhGaWVsZC5zdWdnZXN0aW9uc0ZpeGVkID8gc3B4RmllbGQuc3VnZ2VzdGlvbnNGaXhlZCgpIDogdGhpcy5zcHhTdWdnZXN0aW9uc1tzcHhGaWVsZC5rZXldXCJcclxuICAgICAgICAgICAgICBbc3B4VHlwZV09XCJ0eXBlUmFkaW9cIlxyXG4gICAgICAgICAgICAgIFtzcHhWYWxpZGF0b3JzXT1cImdldFJhd1ZhbGlkYXRvcnModGhpcy5zcHhGb3JtR3JvdXAuZ2V0KHNweEZpZWxkLmtleSkhKVwiPlxyXG4gICAgICAgICAgICAgIDxzcHgtdmFsaWRhdGUtY29udHJvbCBbY29udHJvbF09XCIkYW55KHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpKVwiIFtsYWJlbF09XCIoc3B4RmllbGQubGFiZWwgPyBzcHhGaWVsZC5sYWJlbCgpIDogc3B4RmllbGQua2V5KSB8IHRyYW5zbGF0ZSB8IGNhcGl0YWxpemVcIj48L3NweC12YWxpZGF0ZS1jb250cm9sPlxyXG4gICAgICAgICAgICA8L3NweC1pbnB1dD5cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIDwvc3B4LWZvcm0tc2VjdGlvbj5cclxuICB9XHJcblxyXG4gIEBmb3IgKHNweEJ1dHRvbiBvZiBzcHhGb3JtLmJ1dHRvbnM7IHRyYWNrIHNweEJ1dHRvbikge1xyXG4gICAgPHNweC1idXR0b25cclxuICAgICAgW3NweEZ1bGxXaWR0aF09XCJ0cnVlXCJcclxuICAgICAgW3NweFNldmVyaXR5XT1cInNweEJ1dHRvbi5zZXZlcml0eVwiXHJcbiAgICAgIFtzcHhUeXBlXT1cInNweEJ1dHRvbi50eXBlXCJcclxuICAgICAgKHNweENsaWNrKT1cInNweEJ1dHRvbi5vbkNsaWNrID8gc3B4QnV0dG9uLm9uQ2xpY2soKSA6IHVuZGVmaW5lZFwiPlxyXG4gICAgICB7eyAoKHNweEJ1dHRvbiAmJiBzcHhCdXR0b24ubGFiZWwpID8gc3B4QnV0dG9uLmxhYmVsKCkgOiAnJykgfCB0cmFuc2xhdGUgfCBjYXBpdGFsaXplIH19XHJcbiAgICA8L3NweC1idXR0b24+XHJcbiAgfVxyXG48L2Rpdj5cclxuYCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNweEZvcm1WaWV3Q29tcG9uZW50IHtcclxuICBASW5wdXQoKSBzcHhGb3JtR3JvdXAhOiBGb3JtR3JvdXA7XHJcbiAgQElucHV0KCkgc3B4Rm9ybSE6IFNweEZvcm1JO1xyXG4gIEBJbnB1dCgpIHNweFN1Z2dlc3Rpb25zITogYW55O1xyXG4gIEBPdXRwdXQoKSBzcHhCbHVyOiBFdmVudEVtaXR0ZXI8eyBmaWVsZDogU3B4Rm9ybUZpZWxkSSwgdmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55PiB9PiA9IG5ldyBFdmVudEVtaXR0ZXI8eyBmaWVsZDogU3B4Rm9ybUZpZWxkSSwgdmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55PiB9PigpO1xyXG4gIEBPdXRwdXQoKSBzcHhDbGljazogRXZlbnRFbWl0dGVyPHsgZmllbGQ6IFNweEZvcm1GaWVsZEkgfT4gPSBuZXcgRXZlbnRFbWl0dGVyPHsgZmllbGQ6IFNweEZvcm1GaWVsZEkgfT4oKTtcclxuICBAT3V0cHV0KCkgc3B4U2VhcmNoOiBFdmVudEVtaXR0ZXI8eyBmaWVsZDogU3B4Rm9ybUZpZWxkSSwgdmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55PiB9PiA9IG5ldyBFdmVudEVtaXR0ZXI8eyBmaWVsZDogU3B4Rm9ybUZpZWxkSSwgdmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55PiB9PigpO1xyXG4gIEBWaWV3Q2hpbGRyZW4oU3B4SW5wdXRDb21wb25lbnQpIHNweElucHV0cyE6IFF1ZXJ5TGlzdDxTcHhJbnB1dENvbXBvbmVudD47XHJcbiAgYXV0b2NvbXBsZXRlRmllbGQ/OiBTcHhGb3JtRmllbGRJO1xyXG5cclxuICB0eXBlQXV0b2NvbXBsZXRlID0gU3B4SW5wdXRUeXBlRW51bS5hdXRvY29tcGxldGU7XHJcbiAgdHlwZUJ1dHRvbiA9IFNweElucHV0VHlwZUVudW0uYnV0dG9uO1xyXG4gIHR5cGVGbG9hdCA9IFNweElucHV0VHlwZUVudW0uZmxvYXQ7XHJcbiAgdHlwZU51bWJlciA9IFNweElucHV0VHlwZUVudW0ubnVtYmVyO1xyXG4gIHR5cGVSYWRpbyA9IFNweElucHV0VHlwZUVudW0ucmFkaW87XHJcbiAgdHlwZVRleHQgPSBTcHhJbnB1dFR5cGVFbnVtLnRleHQ7XHJcbiAgdHlwZU51bWVyaWNLZXlib2FyZCA9IFNweElucHV0VHlwZUVudW0udGV4dE51bWVyaWNLZXlib2FyZDtcclxuICB0eXBlT3ZlcmxheSA9IFNweElucHV0VHlwZUVudW0ub3ZlcmxheTtcclxuICB0eXBlT3ZlcmxheU51bWJlciA9IFNweElucHV0VHlwZUVudW0ub3ZlcmxheU51bWJlcjtcclxuXHJcbiAgc2V0QXV0b2ZvY3VzKGtleTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBmaWVsZCA9IHRoaXMuc3B4SW5wdXRzLmZpbmQoaW5wdXQgPT4gaW5wdXQuc3B4TmFtZSA9PT0ga2V5KTtcclxuICAgIGlmIChmaWVsZCkge1xyXG4gICAgICBmaWVsZC5zZXRGb2N1c0luKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkJsdXIoZmllbGQ6IFNweEZvcm1GaWVsZEkpIHtcclxuICAgIHRoaXMuc3B4Qmx1ci5lbWl0KHtcclxuICAgICAgZmllbGQsXHJcbiAgICAgIHZhbHVlUGFpcjogdGhpcy5zcHhGb3JtR3JvdXAuZ2V0KGZpZWxkLmtleSkhLnZhbHVlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrKGZpZWxkOiBTcHhGb3JtRmllbGRJKSB7XHJcbiAgICB0aGlzLnNweENsaWNrLmVtaXQoe1xyXG4gICAgICBmaWVsZCxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25BdXRvY29tcGxldGVDYW5jZWwoKTogdm9pZCB7XHJcbiAgICB0aGlzLmF1dG9jb21wbGV0ZUZpZWxkID0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgb25BdXRvY29tcGxldGVTZWFyY2godmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55Pik6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYXV0b2NvbXBsZXRlRmllbGQpIHtcclxuICAgICAgdGhpcy5zcHhTZWFyY2guZW1pdCh7XHJcbiAgICAgICAgZmllbGQ6IHRoaXMuYXV0b2NvbXBsZXRlRmllbGQsXHJcbiAgICAgICAgdmFsdWVQYWlyLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQXV0b2NvbXBsZXRlU2F2ZSh2YWx1ZVBhaXI6IFNweFZhbHVlUGFpcjxhbnk+KSB7XHJcbiAgICB0aGlzLnNweEZvcm1Hcm91cC5nZXQodGhpcy5hdXRvY29tcGxldGVGaWVsZCEua2V5KT8uc2V0VmFsdWUodmFsdWVQYWlyKTtcclxuICAgIHRoaXMuYXV0b2NvbXBsZXRlRmllbGQgPSB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBvblNlYXJjaChmaWVsZDogU3B4Rm9ybUZpZWxkSSkge1xyXG4gICAgdGhpcy5hdXRvY29tcGxldGVGaWVsZCA9IGZpZWxkO1xyXG4gIH1cclxuXHJcbiAgZ2V0UmF3VmFsaWRhdG9ycyhmb3JtQ29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5kZXJzY29yZS1kYW5nbGVcclxuICAgIHJldHVybiAoZm9ybUNvbnRyb2wgYXMgYW55KS5fcmF3VmFsaWRhdG9ycztcclxuICB9XHJcblxyXG4gIGhhc1JlcXVpcmVkRmllbGQoYWJzdHJhY3RDb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBib29sZWFuIHtcclxuICAgIGlmIChhYnN0cmFjdENvbnRyb2wudmFsaWRhdG9yKSB7XHJcbiAgICAgIGNvbnN0IHZhbGlkYXRvciA9IGFic3RyYWN0Q29udHJvbC52YWxpZGF0b3Ioe30gYXMgQWJzdHJhY3RDb250cm9sKTtcclxuICAgICAgaWYgKHZhbGlkYXRvciAmJiB2YWxpZGF0b3JbJ3JlcXVpcmVkJ10pIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKChhYnN0cmFjdENvbnRyb2wgYXMgYW55KVsnY29udHJvbHMnXSkge1xyXG4gICAgICBmb3IgKGNvbnN0IGNvbnRyb2xOYW1lIGluIChhYnN0cmFjdENvbnRyb2wgYXMgYW55KVsnY29udHJvbHMnXSkge1xyXG4gICAgICAgIGlmICgoYWJzdHJhY3RDb250cm9sIGFzIGFueSlbJ2NvbnRyb2xzJ11bY29udHJvbE5hbWVdKSB7XHJcbiAgICAgICAgICBpZiAodGhpcy5oYXNSZXF1aXJlZEZpZWxkKChhYnN0cmFjdENvbnRyb2wgYXMgYW55KVsnY29udHJvbHMnXVtjb250cm9sTmFtZV0pKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGluaXRpYWxGb3JtVmFsdWUoc2VjdGlvbnM6IFNweEZvcm1TZWN0aW9uSVtdKSB7XHJcbiAgICBjb25zdCBmb3JtT2JqZWN0OiBhbnkgPSB7fTtcclxuICAgIHNlY3Rpb25zLmZvckVhY2goc2VjdGlvbiA9PiB7XHJcbiAgICAgIHNlY3Rpb24uZmllbGRzLmZvckVhY2goZmllbGQgPT4ge1xyXG4gICAgICAgIGZvcm1PYmplY3RbZmllbGQua2V5XSA9IFtmaWVsZC5kZWZhdWx0VmFsdWUgPyBmaWVsZC5kZWZhdWx0VmFsdWUoKSA6IG51bGwsIGZpZWxkLnZhbGlkYXRvcnMgPyBbLi4uZmllbGQudmFsaWRhdG9ycygpXSA6IFtdXTtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBmb3JtT2JqZWN0O1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGNyZWF0ZUZvcm0oZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLCBzZWN0aW9uczogU3B4Rm9ybVNlY3Rpb25JW10pOiBGb3JtR3JvdXAge1xyXG4gICAgcmV0dXJuIGZvcm1CdWlsZGVyLmdyb3VwKHRoaXMuaW5pdGlhbEZvcm1WYWx1ZShzZWN0aW9ucykpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyKSB7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
297
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWZvcm0tdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWZvcm0tdmlldy9zcHgtZm9ybS12aWV3LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUF3QixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFnQixNQUFNLGdDQUFnQyxDQUFDO0FBQ25HLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBMkMsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0csT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDckYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDakYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7O0FBb0dwRSxNQUFNLE9BQU8sb0JBQW9CO0lBb0IvQixZQUFZLENBQUMsR0FBVztRQUN0QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDbEUsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFv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cUZOLG9CQUFvQjtrQkFqR2hDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLDhCQUE4Qjt3QkFDOUIsa0JBQWtCO3dCQUNsQixpQkFBaUI7d0JBQ2pCLHVCQUF1Qjt3QkFDdkIsaUJBQWlCO3dCQUNqQiwyQkFBMkI7d0JBQzNCLGVBQWU7cUJBQ2xCO29CQUNDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBaUZYO2lCQUNBO2dGQUVVLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQzBCLFNBQVM7c0JBQXpDLFlBQVk7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSnNvblBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGQsIFZpZXdDaGlsZHJlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTcHhGb3JtU2VjdGlvbkkgfSBmcm9tICcuL3NweC1mb3JtLXNlY3Rpb24uaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgU3B4Rm9ybVNlY3Rpb25Db21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1mb3JtLXNlY3Rpb24nO1xyXG5pbXBvcnQgeyBTcHhJbnB1dENvbXBvbmVudCwgU3B4SW5wdXRUeXBlRW51bSwgU3B4VmFsdWVQYWlyIH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzJztcclxuaW1wb3J0IHsgU3B4Q2FwaXRhbGl6ZVBpcGUgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1jYXBpdGFsaXplJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3B4Rm9ybUZpZWxkSSB9IGZyb20gJy4vc3B4LWZvcm0tZmllbGQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgU3B4QXV0b2NvbXBsZXRlU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi9zcHgtYXV0b2NvbXBsZXRlLXNlYXJjaC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTcHhWYWxpZGF0ZUNvbnRyb2xDb21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC12YWxpZGF0aW9uJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IFNweEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWJ1dHRvbic7XHJcbmltcG9ydCB7IFNweEZvcm1JIH0gZnJvbSAnLi9zcHgtZm9ybS5pbnRlcmZhY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcHgtZm9ybS12aWV3JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIFNweEF1dG9jb21wbGV0ZVNlYXJjaENvbXBvbmVudCxcclxuICAgIFNweEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFNweENhcGl0YWxpemVQaXBlLFxyXG4gICAgU3B4Rm9ybVNlY3Rpb25Db21wb25lbnQsXHJcbiAgICBTcHhJbnB1dENvbXBvbmVudCxcclxuICAgIFNweFZhbGlkYXRlQ29udHJvbENvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZU1vZHVsZVxyXG5dLFxyXG4gIHRlbXBsYXRlOiBgQGlmIChhdXRvY29tcGxldGVGaWVsZCkge1xyXG4gIDxzcHgtYXV0b2NvbXBsZXRlLXNlYXJjaFxyXG4gICAgW3NweEZpZWxkXT1cImF1dG9jb21wbGV0ZUZpZWxkXCJcclxuICAgIFtzcHhTdWdnZXN0aW9uc109XCJ0aGlzLnNweFN1Z2dlc3Rpb25zW2F1dG9jb21wbGV0ZUZpZWxkLmtleV1cIlxyXG4gICAgW3NweFZhbHVlUGFpcl09XCIkYW55KHRoaXMuc3B4Rm9ybUdyb3VwLmdldChhdXRvY29tcGxldGVGaWVsZC5rZXkpKS52YWx1ZVwiXHJcbiAgICBbdHh0T3B0aW9uc109XCInT3B0aW9ucydcIlxyXG4gICAgW3R4dFF1ZXJ5XT1cIidRdWVyeSdcIlxyXG4gICAgW3R4dFN1Ym1pdF09XCInU2F2ZSdcIlxyXG4gICAgKHNweENhbmNlbCk9XCJvbkF1dG9jb21wbGV0ZUNhbmNlbCgpXCJcclxuICAgIChzcHhTZWFyY2gpPVwib25BdXRvY29tcGxldGVTZWFyY2goJGV2ZW50KVwiXHJcbiAgICAoc3B4U3VibWl0KT1cIm9uQXV0b2NvbXBsZXRlU2F2ZSgkZXZlbnQpXCI+XHJcbiAgPC9zcHgtYXV0b2NvbXBsZXRlLXNlYXJjaD5cclxufVxyXG48ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtM1wiPlxyXG4gIEBmb3IgKHNweFNlY3Rpb24gb2Ygc3B4Rm9ybS5zZWN0aW9uczsgdHJhY2sgc3B4U2VjdGlvbjsgbGV0IHNweFNlY3Rpb25JbmRleCA9ICRpbmRleCkge1xyXG4gICAgPHNweC1mb3JtLXNlY3Rpb25cclxuICAgICAgW3NweFNob3dUaXRsZV09XCIhc3B4U2VjdGlvbi5zaG93VGl0bGUgfHwgc3B4U2VjdGlvbi5zaG93VGl0bGUoKVwiXHJcbiAgICAgIFtzcHhJbmRleF09XCJzcHhTZWN0aW9uSW5kZXggKyAxXCJcclxuICAgICAgW3NweFRpdGxlXT1cInNweFNlY3Rpb24udGl0bGUgPyAoc3B4U2VjdGlvbi50aXRsZSgpIHwgdHJhbnNsYXRlIHwgY2FwaXRhbGl6ZSkgOiB1bmRlZmluZWRcIj5cclxuICAgICAgQGZvciAoc3B4RmllbGQgb2Ygc3B4U2VjdGlvbi5maWVsZHM7IHRyYWNrIHNweEZpZWxkOyBsZXQgc3B4RmllbGRJbmRleCA9ICRpbmRleCkge1xyXG4gICAgICAgIEBpZiAoc3B4RmllbGQuc2hvdyA9PT0gdW5kZWZpbmVkIHx8IHNweEZpZWxkLnNob3coKSkge1xyXG4gICAgICAgICAgQGlmIChzcHhGaWVsZC50eXBlKCkgPT09IHR5cGVCdXR0b24pIHtcclxuICAgICAgICAgICAgPHNweC1idXR0b25cclxuICAgICAgICAgICAgICBbc3B4RnVsbFdpZHRoXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIFtzcHhTZXZlcml0eV09XCJzcHhGaWVsZC5zZXZlcml0eSA/IHNweEZpZWxkLnNldmVyaXR5KCkgOiB1bmRlZmluZWRcIlxyXG4gICAgICAgICAgICAgIFtzcHhUeXBlXT1cIididXR0b24nXCJcclxuICAgICAgICAgICAgICAoc3B4Q2xpY2spPVwib25DbGljayhzcHhGaWVsZClcIlxyXG4gICAgICAgICAgICA+e3sgKHNweEZpZWxkLmxhYmVsID8gc3B4RmllbGQubGFiZWwoKSA6IHNweEZpZWxkLmtleSkgfCB0cmFuc2xhdGUgIHwgY2FwaXRhbGl6ZSB9fTwvc3B4LWJ1dHRvbj5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpZiAoc3B4RmllbGQudHlwZSgpID09PSB0eXBlT3ZlcmxheSB8fCBzcHhGaWVsZC50eXBlKCkgPT09IHR5cGVPdmVybGF5TnVtYmVyIHx8IHNweEZpZWxkLnR5cGUoKSA9PT0gdHlwZUZsb2F0IHx8IHNweEZpZWxkLnR5cGUoKSA9PT0gdHlwZU51bWJlciB8fCBzcHhGaWVsZC50eXBlKCkgPT09IHR5cGVUZXh0IHx8IHNweEZpZWxkLnR5cGUoKSA9PT0gdHlwZUF1dG9jb21wbGV0ZSB8fCBzcHhGaWVsZC50eXBlKCkgPT09IHR5cGVOdW1lcmljS2V5Ym9hcmQpIHtcclxuICAgICAgICAgICAgPHNweC1pbnB1dFxyXG4gICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCIkYW55KHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpKVwiXHJcbiAgICAgICAgICAgICAgW3NweEF1dG9mb2N1c109XCJzcHhGaWVsZC5hdXRvZm9jdXMgPyBzcHhGaWVsZC5hdXRvZm9jdXMoKSA6IGZhbHNlXCJcclxuICAgICAgICAgICAgICBbc3B4Q2FwaXRhbGl6ZV09XCJzcHhGaWVsZC5jYXBpdGFsaXplID8gc3B4RmllbGQuY2FwaXRhbGl6ZSgpIDogZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFtzcHhMYWJlbF09XCIoc3B4RmllbGQubGFiZWwgPyBzcHhGaWVsZC5sYWJlbCgpIDogc3B4RmllbGQua2V5KSB8IHRyYW5zbGF0ZSAgfCBjYXBpdGFsaXplXCJcclxuICAgICAgICAgICAgICBbc3B4TmFtZV09XCJzcHhGaWVsZC5rZXlcIlxyXG4gICAgICAgICAgICAgIFtzcHhQYXR0ZXJuXT1cInNweEZpZWxkLnR5cGUoKSA9PT0gdHlwZU51bWVyaWNLZXlib2FyZCA/ICdcXFxcZConIDogdW5kZWZpbmVkXCJcclxuICAgICAgICAgICAgICBbc3B4UmVhZG9ubHldPVwic3B4RmllbGQucmVhZG9ubHkgPyBzcHhGaWVsZC5yZWFkb25seSgpIDogZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFtzcHhSZXF1aXJlZF09XCJoYXNSZXF1aXJlZEZpZWxkKHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpISlcIlxyXG4gICAgICAgICAgICAgIFtzcHhTaG93U2VhcmNoXT1cInNweEZpZWxkLnR5cGUoKSA9PT0gdHlwZUF1dG9jb21wbGV0ZVwiXHJcbiAgICAgICAgICAgICAgW3NweFNob3dIZWxwXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICBbc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlc109XCJ0aGlzLnNweEZvcm1Hcm91cC5nZXQoc3B4RmllbGQua2V5KSEgJiYgdGhpcy5zcHhGb3JtR3JvdXAuZ2V0KHNweEZpZWxkLmtleSkhLmVycm9ycyAmJiB0aGlzLnNweEZvcm1Hcm91cC5nZXQoc3B4RmllbGQua2V5KSEudG91Y2hlZFwiXHJcbiAgICAgICAgICAgICAgW3NweFN0ZXBdPVwic3B4RmllbGQuc3RlcCA/IHNweEZpZWxkLnN0ZXAoKSA6IHVuZGVmaW5lZFwiXHJcbiAgICAgICAgICAgICAgW3NweFR5cGVdPVwic3B4RmllbGQudHlwZSgpXCJcclxuICAgICAgICAgICAgICBbc3B4VmFsaWRhdG9yc109XCJnZXRSYXdWYWxpZGF0b3JzKHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpISlcIlxyXG4gICAgICAgICAgICAgIFtzcHhTdWdnZXN0aW9uc109XCJzcHhGaWVsZC5zdWdnZXN0aW9uc0ZpeGVkID8gc3B4RmllbGQuc3VnZ2VzdGlvbnNGaXhlZCgpIDogdGhpcy5zcHhTdWdnZXN0aW9uc1tzcHhGaWVsZC5rZXldXCJcclxuICAgICAgICAgICAgICAoc3B4Qmx1cik9XCJvbkJsdXIoc3B4RmllbGQpXCJcclxuICAgICAgICAgICAgICAoc3B4U2VhcmNoKT1cIm9uU2VhcmNoKHNweEZpZWxkKVwiPlxyXG4gICAgICAgICAgICAgIDxzcHgtdmFsaWRhdGUtY29udHJvbCBbY29udHJvbF09XCIkYW55KHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpKVwiIFtsYWJlbF09XCIoc3B4RmllbGQubGFiZWwgPyBzcHhGaWVsZC5sYWJlbCgpIDogc3B4RmllbGQua2V5KXwgdHJhbnNsYXRlICB8IGNhcGl0YWxpemVcIj48L3NweC12YWxpZGF0ZS1jb250cm9sPlxyXG4gICAgICAgICAgICA8L3NweC1pbnB1dD5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpZiAoc3B4RmllbGQudHlwZSgpID09PSB0eXBlUmFkaW8pIHtcclxuICAgICAgICAgICAgPHNweC1pbnB1dFxyXG4gICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCIkYW55KHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpKVwiXHJcbiAgICAgICAgICAgICAgW3NweExhYmVsXT1cIihzcHhGaWVsZC5sYWJlbCA/IHNweEZpZWxkLmxhYmVsKCkgOiBzcHhGaWVsZC5rZXkpIHwgdHJhbnNsYXRlIHwgY2FwaXRhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgW3NweE5hbWVdPVwic3B4RmllbGQua2V5XCJcclxuICAgICAgICAgICAgICBbc3B4UmVhZG9ubHldPVwic3B4RmllbGQucmVhZG9ubHkgPyBzcHhGaWVsZC5yZWFkb25seSgpIDogZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFtzcHhSZXF1aXJlZF09XCJoYXNSZXF1aXJlZEZpZWxkKHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpISlcIlxyXG4gICAgICAgICAgICAgIFtzcHhTaG93SGVscF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgW3NweFNob3dWYWxpZGF0aW9uTWVzc2FnZXNdPVwidGhpcy5zcHhGb3JtR3JvdXAuZ2V0KHNweEZpZWxkLmtleSkhICYmIHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpIS5lcnJvcnMgJiYgdGhpcy5zcHhGb3JtR3JvdXAuZ2V0KHNweEZpZWxkLmtleSkhLnRvdWNoZWRcIlxyXG4gICAgICAgICAgICAgIFtzcHhTdWdnZXN0aW9uc109XCJzcHhGaWVsZC5zdWdnZXN0aW9uc0ZpeGVkID8gc3B4RmllbGQuc3VnZ2VzdGlvbnNGaXhlZCgpIDogdGhpcy5zcHhTdWdnZXN0aW9uc1tzcHhGaWVsZC5rZXldXCJcclxuICAgICAgICAgICAgICBbc3B4VHlwZV09XCJ0eXBlUmFkaW9cIlxyXG4gICAgICAgICAgICAgIFtzcHhWYWxpZGF0b3JzXT1cImdldFJhd1ZhbGlkYXRvcnModGhpcy5zcHhGb3JtR3JvdXAuZ2V0KHNweEZpZWxkLmtleSkhKVwiPlxyXG4gICAgICAgICAgICAgIDxzcHgtdmFsaWRhdGUtY29udHJvbCBbY29udHJvbF09XCIkYW55KHRoaXMuc3B4Rm9ybUdyb3VwLmdldChzcHhGaWVsZC5rZXkpKVwiIFtsYWJlbF09XCIoc3B4RmllbGQubGFiZWwgPyBzcHhGaWVsZC5sYWJlbCgpIDogc3B4RmllbGQua2V5KSB8IHRyYW5zbGF0ZSB8IGNhcGl0YWxpemVcIj48L3NweC12YWxpZGF0ZS1jb250cm9sPlxyXG4gICAgICAgICAgICA8L3NweC1pbnB1dD5cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIDwvc3B4LWZvcm0tc2VjdGlvbj5cclxuICB9XHJcblxyXG4gIEBmb3IgKHNweEJ1dHRvbiBvZiBzcHhGb3JtLmJ1dHRvbnM7IHRyYWNrIHNweEJ1dHRvbikge1xyXG4gICAgPHNweC1idXR0b25cclxuICAgICAgW3NweEZ1bGxXaWR0aF09XCJ0cnVlXCJcclxuICAgICAgW3NweFNldmVyaXR5XT1cInNweEJ1dHRvbi5zZXZlcml0eVwiXHJcbiAgICAgIFtzcHhUeXBlXT1cInNweEJ1dHRvbi50eXBlXCJcclxuICAgICAgKHNweENsaWNrKT1cInNweEJ1dHRvbi5vbkNsaWNrID8gc3B4QnV0dG9uLm9uQ2xpY2soKSA6IHVuZGVmaW5lZFwiPlxyXG4gICAgICB7eyAoKHNweEJ1dHRvbiAmJiBzcHhCdXR0b24ubGFiZWwpID8gc3B4QnV0dG9uLmxhYmVsKCkgOiAnJykgfCB0cmFuc2xhdGUgfCBjYXBpdGFsaXplIH19XHJcbiAgICA8L3NweC1idXR0b24+XHJcbiAgfVxyXG48L2Rpdj5cclxuYCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNweEZvcm1WaWV3Q29tcG9uZW50IHtcclxuICBASW5wdXQoKSBzcHhGb3JtR3JvdXAhOiBGb3JtR3JvdXA7XHJcbiAgQElucHV0KCkgc3B4Rm9ybSE6IFNweEZvcm1JO1xyXG4gIEBJbnB1dCgpIHNweFN1Z2dlc3Rpb25zITogYW55O1xyXG4gIEBPdXRwdXQoKSBzcHhCbHVyOiBFdmVudEVtaXR0ZXI8eyBmaWVsZDogU3B4Rm9ybUZpZWxkSSwgdmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55PiB9PiA9IG5ldyBFdmVudEVtaXR0ZXI8eyBmaWVsZDogU3B4Rm9ybUZpZWxkSSwgdmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55PiB9PigpO1xyXG4gIEBPdXRwdXQoKSBzcHhDbGljazogRXZlbnRFbWl0dGVyPHsgZmllbGQ6IFNweEZvcm1GaWVsZEkgfT4gPSBuZXcgRXZlbnRFbWl0dGVyPHsgZmllbGQ6IFNweEZvcm1GaWVsZEkgfT4oKTtcclxuICBAT3V0cHV0KCkgc3B4U2VhcmNoOiBFdmVudEVtaXR0ZXI8eyBmaWVsZDogU3B4Rm9ybUZpZWxkSSwgdmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55PiB9PiA9IG5ldyBFdmVudEVtaXR0ZXI8eyBmaWVsZDogU3B4Rm9ybUZpZWxkSSwgdmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55PiB9PigpO1xyXG4gIEBWaWV3Q2hpbGRyZW4oU3B4SW5wdXRDb21wb25lbnQpIHNweElucHV0cyE6IFF1ZXJ5TGlzdDxTcHhJbnB1dENvbXBvbmVudD47XHJcbiAgYXV0b2NvbXBsZXRlRmllbGQ/OiBTcHhGb3JtRmllbGRJO1xyXG5cclxuICB0eXBlQXV0b2NvbXBsZXRlID0gU3B4SW5wdXRUeXBlRW51bS5hdXRvY29tcGxldGU7XHJcbiAgdHlwZUJ1dHRvbiA9IFNweElucHV0VHlwZUVudW0uYnV0dG9uO1xyXG4gIHR5cGVGbG9hdCA9IFNweElucHV0VHlwZUVudW0uZmxvYXQ7XHJcbiAgdHlwZU51bWJlciA9IFNweElucHV0VHlwZUVudW0ubnVtYmVyO1xyXG4gIHR5cGVSYWRpbyA9IFNweElucHV0VHlwZUVudW0ucmFkaW87XHJcbiAgdHlwZVRleHQgPSBTcHhJbnB1dFR5cGVFbnVtLnRleHQ7XHJcbiAgdHlwZU51bWVyaWNLZXlib2FyZCA9IFNweElucHV0VHlwZUVudW0udGV4dE51bWVyaWNLZXlib2FyZDtcclxuICB0eXBlT3ZlcmxheSA9IFNweElucHV0VHlwZUVudW0ub3ZlcmxheTtcclxuICB0eXBlT3ZlcmxheU51bWJlciA9IFNweElucHV0VHlwZUVudW0ub3ZlcmxheU51bWJlcjtcclxuXHJcbiAgc2V0QXV0b2ZvY3VzKGtleTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBmaWVsZCA9IHRoaXMuc3B4SW5wdXRzLmZpbmQoaW5wdXQgPT4gaW5wdXQuc3B4TmFtZSA9PT0ga2V5KTtcclxuICAgIGlmIChmaWVsZCkge1xyXG4gICAgICBmaWVsZC5zZXRGb2N1c0luKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkJsdXIoZmllbGQ6IFNweEZvcm1GaWVsZEkpIHtcclxuICAgIHRoaXMuc3B4Qmx1ci5lbWl0KHtcclxuICAgICAgZmllbGQsXHJcbiAgICAgIHZhbHVlUGFpcjogdGhpcy5zcHhGb3JtR3JvdXAuZ2V0KGZpZWxkLmtleSkhLnZhbHVlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrKGZpZWxkOiBTcHhGb3JtRmllbGRJKSB7XHJcbiAgICB0aGlzLnNweENsaWNrLmVtaXQoe1xyXG4gICAgICBmaWVsZCxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25BdXRvY29tcGxldGVDYW5jZWwoKTogdm9pZCB7XHJcbiAgICB0aGlzLmF1dG9jb21wbGV0ZUZpZWxkID0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgb25BdXRvY29tcGxldGVTZWFyY2godmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55Pik6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYXV0b2NvbXBsZXRlRmllbGQpIHtcclxuICAgICAgdGhpcy5zcHhTZWFyY2guZW1pdCh7XHJcbiAgICAgICAgZmllbGQ6IHRoaXMuYXV0b2NvbXBsZXRlRmllbGQsXHJcbiAgICAgICAgdmFsdWVQYWlyLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQXV0b2NvbXBsZXRlU2F2ZSh2YWx1ZVBhaXI6IFNweFZhbHVlUGFpcjxhbnk+KSB7XHJcbiAgICB0aGlzLnNweEZvcm1Hcm91cC5nZXQodGhpcy5hdXRvY29tcGxldGVGaWVsZCEua2V5KT8uc2V0VmFsdWUodmFsdWVQYWlyKTtcclxuICAgIHRoaXMuYXV0b2NvbXBsZXRlRmllbGQgPSB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBvblNlYXJjaChmaWVsZDogU3B4Rm9ybUZpZWxkSSkge1xyXG4gICAgdGhpcy5hdXRvY29tcGxldGVGaWVsZCA9IGZpZWxkO1xyXG4gIH1cclxuXHJcbiAgZ2V0UmF3VmFsaWRhdG9ycyhmb3JtQ29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5kZXJzY29yZS1kYW5nbGVcclxuICAgIHJldHVybiAoZm9ybUNvbnRyb2wgYXMgYW55KS5fcmF3VmFsaWRhdG9ycztcclxuICB9XHJcblxyXG4gIGhhc1JlcXVpcmVkRmllbGQoYWJzdHJhY3RDb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBib29sZWFuIHtcclxuICAgIGlmIChhYnN0cmFjdENvbnRyb2wudmFsaWRhdG9yKSB7XHJcbiAgICAgIGNvbnN0IHZhbGlkYXRvciA9IGFic3RyYWN0Q29udHJvbC52YWxpZGF0b3Ioe30gYXMgQWJzdHJhY3RDb250cm9sKTtcclxuICAgICAgaWYgKHZhbGlkYXRvciAmJiB2YWxpZGF0b3JbJ3JlcXVpcmVkJ10pIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKChhYnN0cmFjdENvbnRyb2wgYXMgYW55KVsnY29udHJvbHMnXSkge1xyXG4gICAgICBmb3IgKGNvbnN0IGNvbnRyb2xOYW1lIGluIChhYnN0cmFjdENvbnRyb2wgYXMgYW55KVsnY29udHJvbHMnXSkge1xyXG4gICAgICAgIGlmICgoYWJzdHJhY3RDb250cm9sIGFzIGFueSlbJ2NvbnRyb2xzJ11bY29udHJvbE5hbWVdKSB7XHJcbiAgICAgICAgICBpZiAodGhpcy5oYXNSZXF1aXJlZEZpZWxkKChhYnN0cmFjdENvbnRyb2wgYXMgYW55KVsnY29udHJvbHMnXVtjb250cm9sTmFtZV0pKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGluaXRpYWxGb3JtVmFsdWUoc2VjdGlvbnM6IFNweEZvcm1TZWN0aW9uSVtdKSB7XHJcbiAgICBjb25zdCBmb3JtT2JqZWN0OiBhbnkgPSB7fTtcclxuICAgIHNlY3Rpb25zLmZvckVhY2goc2VjdGlvbiA9PiB7XHJcbiAgICAgIHNlY3Rpb24uZmllbGRzLmZvckVhY2goZmllbGQgPT4ge1xyXG4gICAgICAgIGZvcm1PYmplY3RbZmllbGQua2V5XSA9IFtmaWVsZC5kZWZhdWx0VmFsdWUgPyBmaWVsZC5kZWZhdWx0VmFsdWUoKSA6IG51bGwsIGZpZWxkLnZhbGlkYXRvcnMgPyBbLi4uZmllbGQudmFsaWRhdG9ycygpXSA6IFtdXTtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBmb3JtT2JqZWN0O1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGNyZWF0ZUZvcm0oZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLCBzZWN0aW9uczogU3B4Rm9ybVNlY3Rpb25JW10pOiBGb3JtR3JvdXAge1xyXG4gICAgcmV0dXJuIGZvcm1CdWlsZGVyLmdyb3VwKHRoaXMuaW5pdGlhbEZvcm1WYWx1ZShzZWN0aW9ucykpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyKSB7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -2,6 +2,7 @@ import { Component, EventEmitter, HostListener, Input, Output } from '@angular/c
|
|
|
2
2
|
import { SpxButtonComponent } from '@softpak/components/spx-button';
|
|
3
3
|
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
|
|
4
4
|
import { faEdit, faQuestion, faSearch, faTimes } from '@fortawesome/free-solid-svg-icons';
|
|
5
|
+
import { SpxSeverityEnum } from '@softpak/components/spx-helpers';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
import * as i1 from "@fortawesome/angular-fontawesome";
|
|
7
8
|
export class SpxInputBoxComponent {
|
|
@@ -41,6 +42,7 @@ export class SpxInputBoxComponent {
|
|
|
41
42
|
this.faSearch = faSearch;
|
|
42
43
|
this.faQuestion = faQuestion;
|
|
43
44
|
this.faTimes = faTimes;
|
|
45
|
+
this.spxSeverityEnum = SpxSeverityEnum;
|
|
44
46
|
this.spxFocused = false;
|
|
45
47
|
this.spxReadonly = false;
|
|
46
48
|
this.spxShowClear = true;
|
|
@@ -63,7 +65,7 @@ export class SpxInputBoxComponent {
|
|
|
63
65
|
}
|
|
64
66
|
}
|
|
65
67
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxInputBoxComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxInputBoxComponent, isStandalone: true, selector: "spx-input-box", inputs: { spxCompact: "spxCompact", spxFocused: "spxFocused", spxLabel: "spxLabel", spxReadonly: "spxReadonly", spxRequired: "spxRequired", spxShowClear: "spxShowClear", spxShowEdit: "spxShowEdit", spxShowHelp: "spxShowHelp", spxShowLabel: "spxShowLabel", spxShowSearch: "spxShowSearch", spxShowValidationMessages: "spxShowValidationMessages", spxValue: "spxValue" }, outputs: { spxClear: "spxClear", spxSearch: "spxSearch", spxFocus: "spxFocus", spxFocusOut: "spxFocusOut", spxEdit: "spxEdit", spxHelp: "spxHelp" }, host: { listeners: { "focusin": "handleFocusIn($event)", "focusout": "handleFocusOut($event)", "document:click": "handleWindowClick($event)" } }, ngImport: i0, template: `<div class="flex rounded w-full gap-3"
|
|
68
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxInputBoxComponent, isStandalone: true, selector: "spx-input-box", inputs: { spxCompact: "spxCompact", spxFocused: "spxFocused", spxLabel: "spxLabel", spxReadonly: "spxReadonly", spxRequired: "spxRequired", spxShowClear: "spxShowClear", spxShowEdit: "spxShowEdit", spxShowHelp: "spxShowHelp", spxShowLabel: "spxShowLabel", spxShowSearch: "spxShowSearch", spxAlertMessageSeverity: "spxAlertMessageSeverity", spxShowValidationMessages: "spxShowValidationMessages", spxValue: "spxValue" }, outputs: { spxClear: "spxClear", spxSearch: "spxSearch", spxFocus: "spxFocus", spxFocusOut: "spxFocusOut", spxEdit: "spxEdit", spxHelp: "spxHelp" }, host: { listeners: { "focusin": "handleFocusIn($event)", "focusout": "handleFocusOut($event)", "document:click": "handleWindowClick($event)" } }, ngImport: i0, template: `<div class="flex rounded w-full gap-3"
|
|
67
69
|
[class.rounded-none]="this.spxShowValidationMessages"
|
|
68
70
|
[class.rounded-t]="this.spxShowValidationMessages"
|
|
69
71
|
[class.outline-none]="this.spxFocused && !this.spxReadonly"
|
|
@@ -137,7 +139,18 @@ export class SpxInputBoxComponent {
|
|
|
137
139
|
<div class="bg-red-600 rounded-b text-white p-3">
|
|
138
140
|
<ng-content select="[validation-messages]"></ng-content>
|
|
139
141
|
</div>
|
|
140
|
-
}
|
|
142
|
+
}
|
|
143
|
+
@else if(this.spxAlertMessageSeverity) {
|
|
144
|
+
<div [class.bg-red-700]="spxSeverityEnum.error"
|
|
145
|
+
[class.bg-green-700]="spxSeverityEnum.success"
|
|
146
|
+
[class.bg-blue-700]="spxSeverityEnum.info"
|
|
147
|
+
[class.bg-gray-400]="spxSeverityEnum.unknown"
|
|
148
|
+
[class.bg-amber-700]="spxSeverityEnum.warning"
|
|
149
|
+
class="rounded-b text-white p-3">
|
|
150
|
+
<ng-content select="[validation-messages]"></ng-content>
|
|
151
|
+
</div>
|
|
152
|
+
}
|
|
153
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] }); }
|
|
141
154
|
}
|
|
142
155
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxInputBoxComponent, decorators: [{
|
|
143
156
|
type: Component,
|
|
@@ -222,7 +235,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
222
235
|
<div class="bg-red-600 rounded-b text-white p-3">
|
|
223
236
|
<ng-content select="[validation-messages]"></ng-content>
|
|
224
237
|
</div>
|
|
225
|
-
}
|
|
238
|
+
}
|
|
239
|
+
@else if(this.spxAlertMessageSeverity) {
|
|
240
|
+
<div [class.bg-red-700]="spxSeverityEnum.error"
|
|
241
|
+
[class.bg-green-700]="spxSeverityEnum.success"
|
|
242
|
+
[class.bg-blue-700]="spxSeverityEnum.info"
|
|
243
|
+
[class.bg-gray-400]="spxSeverityEnum.unknown"
|
|
244
|
+
[class.bg-amber-700]="spxSeverityEnum.warning"
|
|
245
|
+
class="rounded-b text-white p-3">
|
|
246
|
+
<ng-content select="[validation-messages]"></ng-content>
|
|
247
|
+
</div>
|
|
248
|
+
}
|
|
249
|
+
`,
|
|
226
250
|
}]
|
|
227
251
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { spxCompact: [{
|
|
228
252
|
type: Input
|
|
@@ -244,6 +268,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
244
268
|
type: Input
|
|
245
269
|
}], spxShowSearch: [{
|
|
246
270
|
type: Input
|
|
271
|
+
}], spxAlertMessageSeverity: [{
|
|
272
|
+
type: Input
|
|
247
273
|
}], spxShowValidationMessages: [{
|
|
248
274
|
type: Input
|
|
249
275
|
}], spxValue: [{
|
|
@@ -270,4 +296,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
270
296
|
type: HostListener,
|
|
271
297
|
args: ['document:click', ["$event"]]
|
|
272
298
|
}] } });
|
|
273
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWlucHV0cy9zcHgtaW5wdXQtYm94LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7OztBQXFGMUYsTUFBTSxPQUFPLG9CQUFvQjtJQXVCTSxhQUFhLENBQUMsRUFBUztRQUMxRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUNxQyxjQUFjLENBQUMsRUFBYztRQUNqRSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQTRCLENBQUM7UUFDdkQsTUFBTSxjQUFjLEdBQUcsRUFBRSxDQUFDLGFBQTRCLENBQUM7UUFDdkQsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztZQUN4RCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdEIsQ0FBQztJQUNILENBQUM7SUFDMkMsaUJBQWlCLENBQUMsRUFBUztRQUNyRSxJQUFJLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1lBQ3pELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQixD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aEIsTUFBTTtnQkFDOEIsYUFBYTtzQkFBakQsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBR0csY0FBYztzQkFBbkQsWUFBWTt1QkFBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBT1EsaUJBQWlCO3NCQUE1RCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3B4QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtYnV0dG9uJztcclxuaW1wb3J0IHsgU3B4VmFsdWVQYWlyIH0gZnJvbSAnLi9zcHgtdmFsdWUtaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRm9udEF3ZXNvbWVNb2R1bGUgfSBmcm9tICdAZm9ydGF3ZXNvbWUvYW5ndWxhci1mb250YXdlc29tZSc7XHJcbmltcG9ydCB7IGZhRWRpdCwgZmFRdWVzdGlvbiwgZmFTZWFyY2gsIGZhVGltZXMgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcHgtaW5wdXQtYm94JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIFNweEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIEZvbnRBd2Vzb21lTW9kdWxlXHJcbl0sXHJcbiAgdGVtcGxhdGU6IGA8ZGl2IGNsYXNzPVwiZmxleCByb3VuZGVkIHctZnVsbCBnYXAtM1wiXHJcbiAgICAgIFtjbGFzcy5yb3VuZGVkLW5vbmVdPVwidGhpcy5zcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzXCJcclxuICAgICAgW2NsYXNzLnJvdW5kZWQtdF09XCJ0aGlzLnNweFNob3dWYWxpZGF0aW9uTWVzc2FnZXNcIlxyXG4gICAgICBbY2xhc3Mub3V0bGluZS1ub25lXT1cInRoaXMuc3B4Rm9jdXNlZCAmJiAhdGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgIFtjbGFzcy5yaW5nLTJdPVwidGhpcy5zcHhGb2N1c2VkICYmICF0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgW2NsYXNzLnJpbmctb2Zmc2V0LTJdPVwidGhpcy5zcHhGb2N1c2VkICYmICF0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgW2NsYXNzLnJpbmctYmx1ZS01MDBdPVwidGhpcy5zcHhGb2N1c2VkICYmICF0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgW2NsYXNzLmJnLXdoaXRlXT1cIiF0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgW2NsYXNzLmJnLWdyYXktMzAwXT1cInRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICBbY2xhc3MuY3Vyc29yLW5vdC1hbGxvd2VkXT1cInRoaXMuc3B4UmVhZG9ubHlcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgtYXV0byBwLTNcIlxyXG4gICAgICAgIFtjbGFzcy5wLTBdPVwidGhpcy5zcHhDb21wYWN0XCJcclxuICAgICAgICBbY2xhc3MuZmxleF09XCJ0aGlzLnNweENvbXBhY3RcIlxyXG4gICAgICAgIFtjbGFzcy5pdGVtcy1jZW50ZXJdPVwidGhpcy5zcHhDb21wYWN0XCI+XHJcbiAgICAgICAgQGlmICh0aGlzLnNweFNob3dMYWJlbCkge1xyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZvbnQtYm9sZCB0ZXh0LXNtIG1iLTEgdGV4dC1ncmF5LTgwMFwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5tYi0wXT1cInRoaXMuc3B4Q29tcGFjdFwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5weC0zXT1cInRoaXMuc3B4Q29tcGFjdFwiPlxyXG4gICAgICAgICAgICB7e3RoaXMuc3B4TGFiZWx9fSBAaWYgKHNweFJlcXVpcmVkKSB7XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1yZWQtODAwXCI+Kjwvc3Bhbj5cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgfVxyXG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbY29udHJvbHNdXCI+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LW5vbmUgZ2FwLTEgcC0xXCI+XHJcbiAgICAgIEBpZiAodGhpcy5zcHhTaG93RWRpdCkge1xyXG4gICAgICAgIDxzcHgtYnV0dG9uXHJcbiAgICAgICAgICAoc3B4Q2xpY2spPVwib25FZGl0KClcIlxyXG4gICAgICAgICAgW3NweEZ1bGxIZWlnaHRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICBbc3B4U2l6ZV09XCIneGwnXCJcclxuICAgICAgICAgIFtzcHhUeXBlXT1cIididXR0b24nXCI+XHJcbiAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJmYUVkaXRcIiBjbGFzcz1cImJsb2NrIHRleHQteGxcIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9zcHgtYnV0dG9uPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAodGhpcy5zcHhTaG93SGVscCkge1xyXG4gICAgICAgIDxzcHgtYnV0dG9uXHJcbiAgICAgICAgICAoc3B4Q2xpY2spPVwib25IZWxwKClcIlxyXG4gICAgICAgICAgW3NweEZ1bGxIZWlnaHRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICBbc3B4RGlzYWJsZWRdPVwidGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgICAgICBbc3B4U2l6ZV09XCIneGwnXCJcclxuICAgICAgICAgIFtzcHhUYWJJbmRleF09XCItMVwiXHJcbiAgICAgICAgICBbc3B4VHlwZV09XCInYnV0dG9uJ1wiPlxyXG4gICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiZmFRdWVzdGlvblwiIGNsYXNzPVwiYmxvY2sgdGV4dC14bFwiPjwvZmEtaWNvbj5cclxuICAgICAgICA8L3NweC1idXR0b24+XHJcbiAgICAgIH1cclxuICAgICAgQGlmICh0aGlzLnNweFNob3dTZWFyY2gpIHtcclxuICAgICAgICA8c3B4LWJ1dHRvblxyXG4gICAgICAgICAgKHNweENsaWNrKT1cIm9uU2VhcmNoKClcIlxyXG4gICAgICAgICAgW3NweEZ1bGxIZWlnaHRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICBbc3B4RGlzYWJsZWRdPVwidGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgICAgICBbc3B4U2l6ZV09XCIneGwnXCJcclxuICAgICAgICAgIFtzcHhUYWJJbmRleF09XCItMVwiXHJcbiAgICAgICAgICBbc3B4VHlwZV09XCInYnV0dG9uJ1wiPlxyXG4gICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiZmFTZWFyY2hcIiBjbGFzcz1cImJsb2NrIHRleHQteGxcIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9zcHgtYnV0dG9uPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAodGhpcy5zcHhTaG93Q2xlYXIpIHtcclxuICAgICAgICA8c3B4LWJ1dHRvblxyXG4gICAgICAgICAgKHNweENsaWNrKT1cIm9uQ2xlYXIoKVwiXHJcbiAgICAgICAgICBbc3B4RGlzYWJsZWRdPVwidGhpcy5zcHhSZWFkb25seSB8fCAhdGhpcy5zcHhWYWx1ZT8udmFsdWVcIlxyXG4gICAgICAgICAgW3NweEZ1bGxIZWlnaHRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICBbc3B4U2l6ZV09XCIneGwnXCJcclxuICAgICAgICAgIFtzcHhUYWJJbmRleF09XCItMVwiXHJcbiAgICAgICAgICBbc3B4VHlwZV09XCInYnV0dG9uJ1wiPlxyXG4gICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiZmFUaW1lc1wiIGNsYXNzPVwiYmxvY2sgdGV4dC14bFwiPjwvZmEtaWNvbj5cclxuICAgICAgICA8L3NweC1idXR0b24+XHJcbiAgICAgIH1cclxuICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICBAaWYgKHRoaXMuc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlcykge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwiYmctcmVkLTYwMCByb3VuZGVkLWIgdGV4dC13aGl0ZSBwLTNcIj5cclxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbdmFsaWRhdGlvbi1tZXNzYWdlc11cIj48L25nLWNvbnRlbnQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgfWAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTcHhJbnB1dEJveENvbXBvbmVudCB7XHJcbiAgZmFFZGl0ID0gZmFFZGl0O1xyXG4gIGZhU2VhcmNoID0gZmFTZWFyY2g7XHJcbiAgZmFRdWVzdGlvbiA9IGZhUXVlc3Rpb247XHJcbiAgZmFUaW1lcyA9IGZhVGltZXM7XHJcbiAgQElucHV0KCkgc3B4Q29tcGFjdD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc3B4Rm9jdXNlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweExhYmVsPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNweFJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc3B4UmVxdWlyZWQ/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNweFNob3dDbGVhciA9IHRydWU7XHJcbiAgQElucHV0KCkgc3B4U2hvd0VkaXQ/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNweFNob3dIZWxwPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBzcHhTaG93TGFiZWwgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNweFNob3dTZWFyY2g/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNweFNob3dWYWxpZGF0aW9uTWVzc2FnZXM/OiBib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBzcHhWYWx1ZT86IFNweFZhbHVlUGFpcjxhbnk+O1xyXG4gIEBPdXRwdXQoKSBzcHhDbGVhcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBzcHhTZWFyY2g6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc3B4Rm9jdXM6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc3B4Rm9jdXNPdXQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc3B4RWRpdDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBzcHhIZWxwOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNpbicsIFtcIiRldmVudFwiXSkgaGFuZGxlRm9jdXNJbihldjogRXZlbnQpIHtcclxuICAgIHRoaXMuZW1pdEZvY3VzSW4oKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnLCBbXCIkZXZlbnRcIl0pIGhhbmRsZUZvY3VzT3V0KGV2OiBGb2N1c0V2ZW50KSB7XHJcbiAgICBjb25zdCB0aGlzRWwgPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjb25zdCByZWxhdGVkRWxlbWVudCA9IGV2LnJlbGF0ZWRUYXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBpZiAoIXJlbGF0ZWRFbGVtZW50IHx8ICF0aGlzRWwuY29udGFpbnMocmVsYXRlZEVsZW1lbnQpKSB7XHJcbiAgICAgIHRoaXMuZW1pdEZvY3VzT3V0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgW1wiJGV2ZW50XCJdKSBoYW5kbGVXaW5kb3dDbGljayhldjogRXZlbnQpIHtcclxuICAgIGlmIChldi5jb21wb3NlZFBhdGgoKS5pbmNsdWRlcyh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQpKSB7XHJcbiAgICAgIHRoaXMuZW1pdEZvY3VzSW4oKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZW1pdEZvY3VzT3V0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkNsZWFyKCkge1xyXG4gICAgdGhpcy5zcHhDbGVhci5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvblNlYXJjaCgpIHtcclxuICAgIHRoaXMuc3B4U2VhcmNoLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uRWRpdCgpIHtcclxuICAgIHRoaXMuc3B4RWRpdC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkhlbHAoKSB7XHJcbiAgICB0aGlzLnNweEhlbHAuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbFJlZjogRWxlbWVudFJlZikge1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBlbWl0Rm9jdXNJbigpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5zcHhGb2N1c2VkKSB7XHJcbiAgICAgIHRoaXMuc3B4Rm9jdXMuZW1pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBlbWl0Rm9jdXNPdXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zcHhGb2N1c2VkKSB7XHJcbiAgICAgIHRoaXMuc3B4Rm9jdXNPdXQuZW1pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
299
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWlucHV0cy9zcHgtaW5wdXQtYm94LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFnR2xFLE1BQU0sT0FBTyxvQkFBb0I7SUF5Qk0sYUFBYSxDQUFDLEVBQVM7UUFDMUQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFDcUMsY0FBYyxDQUFDLEVBQWM7UUFDakUsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUE0QixDQUFDO1FBQ3ZELE1BQU0sY0FBYyxHQUFHLEVBQUUsQ0FBQyxhQUE0QixDQUFDO1FBQ3ZELElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7WUFDeEQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RCLENBQUM7SUFDSCxDQUFDO0lBQzJDLGlCQUFpQixDQUFDLEVBQVM7UUFDckUsSUFBSSxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUs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QkFBakIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLE9BQU87c0JBQWhCLE1BQU07Z0JBQzhCLGFBQWE7c0JBQWpELFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQUdHLGNBQWM7c0JBQW5ELFlBQVk7dUJBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU9RLGlCQUFpQjtzQkFBNUQsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNweEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWJ1dHRvbic7XHJcbmltcG9ydCB7IFNweFZhbHVlUGFpciB9IGZyb20gJy4vc3B4LXZhbHVlLWludGVyZmFjZSc7XHJcbmltcG9ydCB7IEZvbnRBd2Vzb21lTW9kdWxlIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2FuZ3VsYXItZm9udGF3ZXNvbWUnO1xyXG5pbXBvcnQgeyBmYUVkaXQsIGZhUXVlc3Rpb24sIGZhU2VhcmNoLCBmYVRpbWVzIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcclxuaW1wb3J0IHsgU3B4U2V2ZXJpdHlFbnVtIH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtaGVscGVycyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NweC1pbnB1dC1ib3gnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgU3B4QnV0dG9uQ29tcG9uZW50LFxyXG4gICAgRm9udEF3ZXNvbWVNb2R1bGVcclxuXSxcclxuICB0ZW1wbGF0ZTogYDxkaXYgY2xhc3M9XCJmbGV4IHJvdW5kZWQgdy1mdWxsIGdhcC0zXCJcclxuICAgICAgW2NsYXNzLnJvdW5kZWQtbm9uZV09XCJ0aGlzLnNweFNob3dWYWxpZGF0aW9uTWVzc2FnZXNcIlxyXG4gICAgICBbY2xhc3Mucm91bmRlZC10XT1cInRoaXMuc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlc1wiXHJcbiAgICAgIFtjbGFzcy5vdXRsaW5lLW5vbmVdPVwidGhpcy5zcHhGb2N1c2VkICYmICF0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgW2NsYXNzLnJpbmctMl09XCJ0aGlzLnNweEZvY3VzZWQgJiYgIXRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICBbY2xhc3MucmluZy1vZmZzZXQtMl09XCJ0aGlzLnNweEZvY3VzZWQgJiYgIXRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICBbY2xhc3MucmluZy1ibHVlLTUwMF09XCJ0aGlzLnNweEZvY3VzZWQgJiYgIXRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICBbY2xhc3MuYmctd2hpdGVdPVwiIXRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICBbY2xhc3MuYmctZ3JheS0zMDBdPVwidGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgIFtjbGFzcy5jdXJzb3Itbm90LWFsbG93ZWRdPVwidGhpcy5zcHhSZWFkb25seVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleC1hdXRvIHAtM1wiXHJcbiAgICAgICAgW2NsYXNzLnAtMF09XCJ0aGlzLnNweENvbXBhY3RcIlxyXG4gICAgICAgIFtjbGFzcy5mbGV4XT1cInRoaXMuc3B4Q29tcGFjdFwiXHJcbiAgICAgICAgW2NsYXNzLml0ZW1zLWNlbnRlcl09XCJ0aGlzLnNweENvbXBhY3RcIj5cclxuICAgICAgICBAaWYgKHRoaXMuc3B4U2hvd0xhYmVsKSB7XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9udC1ib2xkIHRleHQtc20gbWItMSB0ZXh0LWdyYXktODAwXCJcclxuICAgICAgICAgICAgW2NsYXNzLm1iLTBdPVwidGhpcy5zcHhDb21wYWN0XCJcclxuICAgICAgICAgICAgW2NsYXNzLnB4LTNdPVwidGhpcy5zcHhDb21wYWN0XCI+XHJcbiAgICAgICAgICAgIHt7dGhpcy5zcHhMYWJlbH19IEBpZiAoc3B4UmVxdWlyZWQpIHtcclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXJlZC04MDBcIj4qPC9zcGFuPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICB9XHJcbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltjb250cm9sc11cIj48L25nLWNvbnRlbnQ+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtbm9uZSBnYXAtMSBwLTFcIj5cclxuICAgICAgQGlmICh0aGlzLnNweFNob3dFZGl0KSB7XHJcbiAgICAgICAgPHNweC1idXR0b25cclxuICAgICAgICAgIChzcHhDbGljayk9XCJvbkVkaXQoKVwiXHJcbiAgICAgICAgICBbc3B4RnVsbEhlaWdodF09XCJ0cnVlXCJcclxuICAgICAgICAgIFtzcHhTaXplXT1cIid4bCdcIlxyXG4gICAgICAgICAgW3NweFR5cGVdPVwiJ2J1dHRvbidcIj5cclxuICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cImZhRWRpdFwiIGNsYXNzPVwiYmxvY2sgdGV4dC14bFwiPjwvZmEtaWNvbj5cclxuICAgICAgICA8L3NweC1idXR0b24+XHJcbiAgICAgIH1cclxuICAgICAgQGlmICh0aGlzLnNweFNob3dIZWxwKSB7XHJcbiAgICAgICAgPHNweC1idXR0b25cclxuICAgICAgICAgIChzcHhDbGljayk9XCJvbkhlbHAoKVwiXHJcbiAgICAgICAgICBbc3B4RnVsbEhlaWdodF09XCJ0cnVlXCJcclxuICAgICAgICAgIFtzcHhEaXNhYmxlZF09XCJ0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgICAgIFtzcHhTaXplXT1cIid4bCdcIlxyXG4gICAgICAgICAgW3NweFRhYkluZGV4XT1cIi0xXCJcclxuICAgICAgICAgIFtzcHhUeXBlXT1cIididXR0b24nXCI+XHJcbiAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJmYVF1ZXN0aW9uXCIgY2xhc3M9XCJibG9jayB0ZXh0LXhsXCI+PC9mYS1pY29uPlxyXG4gICAgICAgIDwvc3B4LWJ1dHRvbj5cclxuICAgICAgfVxyXG4gICAgICBAaWYgKHRoaXMuc3B4U2hvd1NlYXJjaCkge1xyXG4gICAgICAgIDxzcHgtYnV0dG9uXHJcbiAgICAgICAgICAoc3B4Q2xpY2spPVwib25TZWFyY2goKVwiXHJcbiAgICAgICAgICBbc3B4RnVsbEhlaWdodF09XCJ0cnVlXCJcclxuICAgICAgICAgIFtzcHhEaXNhYmxlZF09XCJ0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgICAgIFtzcHhTaXplXT1cIid4bCdcIlxyXG4gICAgICAgICAgW3NweFRhYkluZGV4XT1cIi0xXCJcclxuICAgICAgICAgIFtzcHhUeXBlXT1cIididXR0b24nXCI+XHJcbiAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJmYVNlYXJjaFwiIGNsYXNzPVwiYmxvY2sgdGV4dC14bFwiPjwvZmEtaWNvbj5cclxuICAgICAgICA8L3NweC1idXR0b24+XHJcbiAgICAgIH1cclxuICAgICAgQGlmICh0aGlzLnNweFNob3dDbGVhcikge1xyXG4gICAgICAgIDxzcHgtYnV0dG9uXHJcbiAgICAgICAgICAoc3B4Q2xpY2spPVwib25DbGVhcigpXCJcclxuICAgICAgICAgIFtzcHhEaXNhYmxlZF09XCJ0aGlzLnNweFJlYWRvbmx5IHx8ICF0aGlzLnNweFZhbHVlPy52YWx1ZVwiXHJcbiAgICAgICAgICBbc3B4RnVsbEhlaWdodF09XCJ0cnVlXCJcclxuICAgICAgICAgIFtzcHhTaXplXT1cIid4bCdcIlxyXG4gICAgICAgICAgW3NweFRhYkluZGV4XT1cIi0xXCJcclxuICAgICAgICAgIFtzcHhUeXBlXT1cIididXR0b24nXCI+XHJcbiAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJmYVRpbWVzXCIgY2xhc3M9XCJibG9jayB0ZXh0LXhsXCI+PC9mYS1pY29uPlxyXG4gICAgICAgIDwvc3B4LWJ1dHRvbj5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIEBpZiAodGhpcy5zcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzKSB7XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJiZy1yZWQtNjAwIHJvdW5kZWQtYiB0ZXh0LXdoaXRlIHAtM1wiPlxyXG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlt2YWxpZGF0aW9uLW1lc3NhZ2VzXVwiPjwvbmctY29udGVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZih0aGlzLnNweEFsZXJ0TWVzc2FnZVNldmVyaXR5KSB7XHJcbiAgICAgIDxkaXYgIFtjbGFzcy5iZy1yZWQtNzAwXT1cInNweFNldmVyaXR5RW51bS5lcnJvclwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5iZy1ncmVlbi03MDBdPVwic3B4U2V2ZXJpdHlFbnVtLnN1Y2Nlc3NcIlxyXG4gICAgICAgICAgICBbY2xhc3MuYmctYmx1ZS03MDBdPVwic3B4U2V2ZXJpdHlFbnVtLmluZm9cIlxyXG4gICAgICAgICAgICBbY2xhc3MuYmctZ3JheS00MDBdPVwic3B4U2V2ZXJpdHlFbnVtLnVua25vd25cIlxyXG4gICAgICAgICAgICBbY2xhc3MuYmctYW1iZXItNzAwXT1cInNweFNldmVyaXR5RW51bS53YXJuaW5nXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJyb3VuZGVkLWIgdGV4dC13aGl0ZSBwLTNcIj5cclxuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlt2YWxpZGF0aW9uLW1lc3NhZ2VzXVwiPjwvbmctY29udGVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICB9XHJcbiAgICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3B4SW5wdXRCb3hDb21wb25lbnQge1xyXG4gIGZhRWRpdCA9IGZhRWRpdDtcclxuICBmYVNlYXJjaCA9IGZhU2VhcmNoO1xyXG4gIGZhUXVlc3Rpb24gPSBmYVF1ZXN0aW9uO1xyXG4gIGZhVGltZXMgPSBmYVRpbWVzO1xyXG4gIHNweFNldmVyaXR5RW51bSA9IFNweFNldmVyaXR5RW51bTtcclxuICBASW5wdXQoKSBzcHhDb21wYWN0PzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBzcHhGb2N1c2VkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc3B4TGFiZWw/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc3B4UmVhZG9ubHkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzcHhSZXF1aXJlZD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc3B4U2hvd0NsZWFyID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzcHhTaG93RWRpdD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc3B4U2hvd0hlbHA/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNweFNob3dMYWJlbCA9IHRydWU7XHJcbiAgQElucHV0KCkgc3B4U2hvd1NlYXJjaD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc3B4QWxlcnRNZXNzYWdlU2V2ZXJpdHk/OiBTcHhTZXZlcml0eUVudW07XHJcbiAgQElucHV0KCkgc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlcz86IGJvb2xlYW4gfCBudWxsIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHNweFZhbHVlPzogU3B4VmFsdWVQYWlyPGFueT47XHJcbiAgQE91dHB1dCgpIHNweENsZWFyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHNweFNlYXJjaDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBzcHhGb2N1czogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBzcHhGb2N1c091dDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBzcHhFZGl0OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHNweEhlbHA6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBASG9zdExpc3RlbmVyKCdmb2N1c2luJywgW1wiJGV2ZW50XCJdKSBoYW5kbGVGb2N1c0luKGV2OiBFdmVudCkge1xyXG4gICAgdGhpcy5lbWl0Rm9jdXNJbigpO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdmb2N1c291dCcsIFtcIiRldmVudFwiXSkgaGFuZGxlRm9jdXNPdXQoZXY6IEZvY3VzRXZlbnQpIHtcclxuICAgIGNvbnN0IHRoaXNFbCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcclxuICAgIGNvbnN0IHJlbGF0ZWRFbGVtZW50ID0gZXYucmVsYXRlZFRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgIGlmICghcmVsYXRlZEVsZW1lbnQgfHwgIXRoaXNFbC5jb250YWlucyhyZWxhdGVkRWxlbWVudCkpIHtcclxuICAgICAgdGhpcy5lbWl0Rm9jdXNPdXQoKTtcclxuICAgIH1cclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbXCIkZXZlbnRcIl0pIGhhbmRsZVdpbmRvd0NsaWNrKGV2OiBFdmVudCkge1xyXG4gICAgaWYgKGV2LmNvbXBvc2VkUGF0aCgpLmluY2x1ZGVzKHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCkpIHtcclxuICAgICAgdGhpcy5lbWl0Rm9jdXNJbigpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5lbWl0Rm9jdXNPdXQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQ2xlYXIoKSB7XHJcbiAgICB0aGlzLnNweENsZWFyLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uU2VhcmNoKCkge1xyXG4gICAgdGhpcy5zcHhTZWFyY2guZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgb25FZGl0KCkge1xyXG4gICAgdGhpcy5zcHhFZGl0LmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uSGVscCgpIHtcclxuICAgIHRoaXMuc3B4SGVscC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsUmVmOiBFbGVtZW50UmVmKSB7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGVtaXRGb2N1c0luKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLnNweEZvY3VzZWQpIHtcclxuICAgICAgdGhpcy5zcHhGb2N1cy5lbWl0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGVtaXRGb2N1c091dCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnNweEZvY3VzZWQpIHtcclxuICAgICAgdGhpcy5zcHhGb2N1c091dC5lbWl0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|