@alfresco/adf-process-services-cloud 7.0.0-alpha.2-10770710285 → 7.0.0-alpha.2-10773483075
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/esm2020/lib/form/components/form-cloud.component.mjs +3 -3
- package/esm2020/lib/form/components/widgets/radio-buttons/radio-buttons-cloud.schema.mjs +11 -11
- package/fesm2015/adf-process-services-cloud.mjs +13 -13
- package/fesm2015/adf-process-services-cloud.mjs.map +1 -1
- package/fesm2020/adf-process-services-cloud.mjs +13 -13
- package/fesm2020/adf-process-services-cloud.mjs.map +1 -1
- package/lib/form/components/widgets/radio-buttons/radio-buttons-cloud.schema.d.ts +2 -2
- package/package.json +4 -4
|
@@ -331,10 +331,10 @@ export class FormCloudComponent extends FormBaseComponent {
|
|
|
331
331
|
}
|
|
332
332
|
}
|
|
333
333
|
FormCloudComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormCloudComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
334
|
-
FormCloudComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormCloudComponent, selector: "adf-cloud-form", inputs: { appName: "appName", appVersion: "appVersion", formId: "formId", processInstanceId: "processInstanceId", form: "form", taskId: "taskId", data: "data", fieldValidators: "fieldValidators", displayModeConfigurations: "displayModeConfigurations" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", formLoaded: "formLoaded", formDataRefreshed: "formDataRefreshed", formContentClicked: "formContentClicked", displayModeOn: "displayModeOn", displayModeOff: "displayModeOff" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\">\n </ng-content>\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-cloud-form-container adf-cloud-form-{{displayMode?.toLowerCase() || 'inline'}}-container\" [style]=\"form.theme | adfFormStyle\">\n <div class=\"adf-cloud-form-content\"\n [cdkTrapFocus]=\"displayMode === 'fullScreen'\"\n cdkTrapFocusAutoCapture>\n\n <adf-toolbar class=\"adf-cloud-form-toolbar\" *ngIf=\"displayMode === 'fullScreen' && findDisplayConfiguration('fullScreen')?.options?.displayToolbar\">\n <div class=\"adf-cloud-form__form-title\">\n <span class=\"adf-cloud-form__display-name\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </div>\n\n <adf-toolbar-divider></adf-toolbar-divider>\n <button class=\"adf-cloud-form-close-button\"\n data-automation-id=\"adf-toolbar-right-back\"\n [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n [attr.data-automation-id]=\"'adf-cloud-form-close-button'\"\n [title]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n mat-icon-button\n title=\"{{ 'ADF_VIEWER.ACTIONS.CLOSE' | translate }}\"\n (click)=\"switchToDisplayMode()\">\n <mat-icon>close</mat-icon>\n </button>\n </adf-toolbar>\n\n <mat-card appearance=\"outlined\" [class.adf-cloud-form-content-card]=\"displayMode === 'fullScreen'\">\n <div class=\"adf-cloud-form-content-card-container\">\n <mat-card-header *ngIf=\"showTitle || showRefreshButton || showValidationIcon\">\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"displayMode !== 'fullScreen' && findDisplayConfiguration('fullScreen')\" class=\"adf-cloud-form-fullscreen-button\">\n <button mat-icon-button (click)=\"switchToDisplayMode('fullScreen')\" [attr.data-automation-id]=\"'adf-cloud-form-fullscreen-button'\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-cloud-form-reload-button\" [title]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <button mat-icon-button (click)=\"onRefreshClicked()\" [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-cloud-form-title\" [title]=\"form.taskName\"
|
|
334
|
+
FormCloudComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormCloudComponent, selector: "adf-cloud-form", inputs: { appName: "appName", appVersion: "appVersion", formId: "formId", processInstanceId: "processInstanceId", form: "form", taskId: "taskId", data: "data", fieldValidators: "fieldValidators", displayModeConfigurations: "displayModeConfigurations" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", formLoaded: "formLoaded", formDataRefreshed: "formDataRefreshed", formContentClicked: "formContentClicked", displayModeOn: "displayModeOn", displayModeOff: "displayModeOff" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\">\n </ng-content>\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-cloud-form-container adf-cloud-form-{{displayMode?.toLowerCase() || 'inline'}}-container\" [style]=\"form.theme | adfFormStyle\">\n <div class=\"adf-cloud-form-content\"\n [cdkTrapFocus]=\"displayMode === 'fullScreen'\"\n cdkTrapFocusAutoCapture>\n\n <adf-toolbar class=\"adf-cloud-form-toolbar\" *ngIf=\"displayMode === 'fullScreen' && findDisplayConfiguration('fullScreen')?.options?.displayToolbar\">\n <div class=\"adf-cloud-form__form-title\">\n <span class=\"adf-cloud-form__display-name\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </div>\n\n <adf-toolbar-divider></adf-toolbar-divider>\n <button class=\"adf-cloud-form-close-button\"\n data-automation-id=\"adf-toolbar-right-back\"\n [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n [attr.data-automation-id]=\"'adf-cloud-form-close-button'\"\n [title]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n mat-icon-button\n title=\"{{ 'ADF_VIEWER.ACTIONS.CLOSE' | translate }}\"\n (click)=\"switchToDisplayMode()\">\n <mat-icon>close</mat-icon>\n </button>\n </adf-toolbar>\n\n <mat-card appearance=\"outlined\" [class.adf-cloud-form-content-card]=\"displayMode === 'fullScreen'\">\n <div class=\"adf-cloud-form-content-card-container\">\n <mat-card-header *ngIf=\"showTitle || showRefreshButton || showValidationIcon\">\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"displayMode !== 'fullScreen' && findDisplayConfiguration('fullScreen')\" class=\"adf-cloud-form-fullscreen-button\">\n <button mat-icon-button (click)=\"switchToDisplayMode('fullScreen')\" [attr.data-automation-id]=\"'adf-cloud-form-fullscreen-button'\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-cloud-form-reload-button\" [title]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <button mat-icon-button (click)=\"onRefreshClicked()\" [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-cloud-form-title\" [title]=\"form.taskName\"\n >{{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </h4>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content class=\"adf-form-container-card-content\">\n <adf-form-renderer\n [formDefinition]=\"form\"\n [readOnly]=\"readOnly\"\n >\n </adf-form-renderer>\n </mat-card-content>\n <mat-card-actions *ngIf=\"form.hasOutcomes()\" class=\"adf-form-mat-card-actions\" align=\"end\">\n <ng-content select=\"adf-cloud-form-custom-outcomes\"></ng-content>\n <ng-container *ngFor=\"let outcome of form.outcomes\">\n <button\n *ngIf=\"outcome.isVisible\"\n [id]=\"'adf-form-'+ outcome.name | formatSpace\"\n [color]=\"getColorForOutcome(outcome.name)\"\n mat-button\n [disabled]=\"!isOutcomeButtonEnabled(outcome)\"\n [class.adf-form-hide-button]=\"!isOutcomeButtonVisible(outcome, form.readOnly)\"\n (click)=\"onOutcomeClicked(outcome)\"\n >\n {{outcome.name | translate | uppercase }}\n </button>\n </ng-container>\n </mat-card-actions>\n </div>\n </mat-card>\n </div>\n</div>\n", styles: [".adf-full-screen,.adf-cloud-form-inline-container,.adf-cloud-form-container .adf-cloud-form-content{width:100%;height:100%;background-color:var(--adf-theme-background-card-color)}.adf-cloud-form-container .adf-cloud-form-content{flex:1;flex-direction:column;display:flex}.adf-cloud-form-fullscreen-container .adf-cloud-form-content{position:fixed;top:0;left:0;z-index:100000}.adf-cloud-form-toolbar .mat-toolbar{background-color:var(--adf-theme-background-card-color-087)}.adf-cloud-form-fullscreen-button{position:absolute;right:70px;top:30px}.adf-cloud-form__display-name{font-size:var(--theme-subheading-2-font-size);opacity:.87;line-height:1.5;letter-spacing:-.4px;font-weight:400;font-style:normal;font-stretch:normal;max-width:400px;text-overflow:ellipsis;overflow:hidden;display:inline-block;vertical-align:middle;color:var(--adf-theme-foreground-text-color)}.adf-cloud-form__form-title{text-align:center;flex:1 1 auto}.adf-cloud-form-content-card{padding:0;height:100%;width:100%}.adf-cloud-form-content-card .adf-cloud-form-content-card-container{display:flex;flex-direction:column;height:100%}.adf-cloud-form-content-card .adf-cloud-form-content-card-container .mat-mdc-card-content{height:100%;overflow:hidden auto}.adf-cloud-form-sidebars{display:flex;flex:1 1 auto}.adf-cloud-form-sidebars adf-viewer-render{order:1;flex:1 1 auto;display:flex}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i3.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i3.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i3.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.ToolbarComponent, selector: "adf-toolbar", inputs: ["title", "color"] }, { kind: "component", type: i5.ToolbarDividerComponent, selector: "adf-toolbar-divider" }, { kind: "component", type: i5.FormRendererComponent, selector: "adf-form-renderer", inputs: ["showDebugButton", "formDefinition", "readOnly"] }, { kind: "directive", type: i6.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i5.FormatSpacePipe, name: "formatSpace" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }, { kind: "pipe", type: i5.FormStylePipe, name: "adfFormStyle" }] });
|
|
335
335
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormCloudComponent, decorators: [{
|
|
336
336
|
type: Component,
|
|
337
|
-
args: [{ selector: 'adf-cloud-form', template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\">\n </ng-content>\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-cloud-form-container adf-cloud-form-{{displayMode?.toLowerCase() || 'inline'}}-container\" [style]=\"form.theme | adfFormStyle\">\n <div class=\"adf-cloud-form-content\"\n [cdkTrapFocus]=\"displayMode === 'fullScreen'\"\n cdkTrapFocusAutoCapture>\n\n <adf-toolbar class=\"adf-cloud-form-toolbar\" *ngIf=\"displayMode === 'fullScreen' && findDisplayConfiguration('fullScreen')?.options?.displayToolbar\">\n <div class=\"adf-cloud-form__form-title\">\n <span class=\"adf-cloud-form__display-name\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </div>\n\n <adf-toolbar-divider></adf-toolbar-divider>\n <button class=\"adf-cloud-form-close-button\"\n data-automation-id=\"adf-toolbar-right-back\"\n [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n [attr.data-automation-id]=\"'adf-cloud-form-close-button'\"\n [title]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n mat-icon-button\n title=\"{{ 'ADF_VIEWER.ACTIONS.CLOSE' | translate }}\"\n (click)=\"switchToDisplayMode()\">\n <mat-icon>close</mat-icon>\n </button>\n </adf-toolbar>\n\n <mat-card appearance=\"outlined\" [class.adf-cloud-form-content-card]=\"displayMode === 'fullScreen'\">\n <div class=\"adf-cloud-form-content-card-container\">\n <mat-card-header *ngIf=\"showTitle || showRefreshButton || showValidationIcon\">\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"displayMode !== 'fullScreen' && findDisplayConfiguration('fullScreen')\" class=\"adf-cloud-form-fullscreen-button\">\n <button mat-icon-button (click)=\"switchToDisplayMode('fullScreen')\" [attr.data-automation-id]=\"'adf-cloud-form-fullscreen-button'\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-cloud-form-reload-button\" [title]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <button mat-icon-button (click)=\"onRefreshClicked()\" [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-cloud-form-title\" [title]=\"form.taskName\"
|
|
337
|
+
args: [{ selector: 'adf-cloud-form', template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\">\n </ng-content>\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-cloud-form-container adf-cloud-form-{{displayMode?.toLowerCase() || 'inline'}}-container\" [style]=\"form.theme | adfFormStyle\">\n <div class=\"adf-cloud-form-content\"\n [cdkTrapFocus]=\"displayMode === 'fullScreen'\"\n cdkTrapFocusAutoCapture>\n\n <adf-toolbar class=\"adf-cloud-form-toolbar\" *ngIf=\"displayMode === 'fullScreen' && findDisplayConfiguration('fullScreen')?.options?.displayToolbar\">\n <div class=\"adf-cloud-form__form-title\">\n <span class=\"adf-cloud-form__display-name\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </div>\n\n <adf-toolbar-divider></adf-toolbar-divider>\n <button class=\"adf-cloud-form-close-button\"\n data-automation-id=\"adf-toolbar-right-back\"\n [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n [attr.data-automation-id]=\"'adf-cloud-form-close-button'\"\n [title]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n mat-icon-button\n title=\"{{ 'ADF_VIEWER.ACTIONS.CLOSE' | translate }}\"\n (click)=\"switchToDisplayMode()\">\n <mat-icon>close</mat-icon>\n </button>\n </adf-toolbar>\n\n <mat-card appearance=\"outlined\" [class.adf-cloud-form-content-card]=\"displayMode === 'fullScreen'\">\n <div class=\"adf-cloud-form-content-card-container\">\n <mat-card-header *ngIf=\"showTitle || showRefreshButton || showValidationIcon\">\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"displayMode !== 'fullScreen' && findDisplayConfiguration('fullScreen')\" class=\"adf-cloud-form-fullscreen-button\">\n <button mat-icon-button (click)=\"switchToDisplayMode('fullScreen')\" [attr.data-automation-id]=\"'adf-cloud-form-fullscreen-button'\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-cloud-form-reload-button\" [title]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <button mat-icon-button (click)=\"onRefreshClicked()\" [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-cloud-form-title\" [title]=\"form.taskName\"\n >{{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </h4>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content class=\"adf-form-container-card-content\">\n <adf-form-renderer\n [formDefinition]=\"form\"\n [readOnly]=\"readOnly\"\n >\n </adf-form-renderer>\n </mat-card-content>\n <mat-card-actions *ngIf=\"form.hasOutcomes()\" class=\"adf-form-mat-card-actions\" align=\"end\">\n <ng-content select=\"adf-cloud-form-custom-outcomes\"></ng-content>\n <ng-container *ngFor=\"let outcome of form.outcomes\">\n <button\n *ngIf=\"outcome.isVisible\"\n [id]=\"'adf-form-'+ outcome.name | formatSpace\"\n [color]=\"getColorForOutcome(outcome.name)\"\n mat-button\n [disabled]=\"!isOutcomeButtonEnabled(outcome)\"\n [class.adf-form-hide-button]=\"!isOutcomeButtonVisible(outcome, form.readOnly)\"\n (click)=\"onOutcomeClicked(outcome)\"\n >\n {{outcome.name | translate | uppercase }}\n </button>\n </ng-container>\n </mat-card-actions>\n </div>\n </mat-card>\n </div>\n</div>\n", styles: [".adf-full-screen,.adf-cloud-form-inline-container,.adf-cloud-form-container .adf-cloud-form-content{width:100%;height:100%;background-color:var(--adf-theme-background-card-color)}.adf-cloud-form-container .adf-cloud-form-content{flex:1;flex-direction:column;display:flex}.adf-cloud-form-fullscreen-container .adf-cloud-form-content{position:fixed;top:0;left:0;z-index:100000}.adf-cloud-form-toolbar .mat-toolbar{background-color:var(--adf-theme-background-card-color-087)}.adf-cloud-form-fullscreen-button{position:absolute;right:70px;top:30px}.adf-cloud-form__display-name{font-size:var(--theme-subheading-2-font-size);opacity:.87;line-height:1.5;letter-spacing:-.4px;font-weight:400;font-style:normal;font-stretch:normal;max-width:400px;text-overflow:ellipsis;overflow:hidden;display:inline-block;vertical-align:middle;color:var(--adf-theme-foreground-text-color)}.adf-cloud-form__form-title{text-align:center;flex:1 1 auto}.adf-cloud-form-content-card{padding:0;height:100%;width:100%}.adf-cloud-form-content-card .adf-cloud-form-content-card-container{display:flex;flex-direction:column;height:100%}.adf-cloud-form-content-card .adf-cloud-form-content-card-container .mat-mdc-card-content{height:100%;overflow:hidden auto}.adf-cloud-form-sidebars{display:flex;flex:1 1 auto}.adf-cloud-form-sidebars adf-viewer-render{order:1;flex:1 1 auto;display:flex}\n"] }]
|
|
338
338
|
}], ctorParameters: function () { return []; }, propDecorators: { appName: [{
|
|
339
339
|
type: Input
|
|
340
340
|
}], appVersion: [{
|
|
@@ -371,4 +371,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
371
371
|
type: HostListener,
|
|
372
372
|
args: ['keydown', ['$event']]
|
|
373
373
|
}] } });
|
|
374
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jbG91ZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy1jbG91ZC9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy9mb3JtLWNsb3VkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzLWNsb3VkL3NyYy9saWIvZm9ybS9jb21wb25lbnRzL2Zvcm0tY2xvdWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUNILFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFHTixZQUFZLEVBRVosaUJBQWlCLEVBQ2pCLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWMsRUFBRSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRSxPQUFPLEVBQ0gsaUJBQWlCLEVBRWpCLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFdBQVcsRUFDWCxxQkFBcUIsRUFHckIsU0FBUyxFQUVULDRCQUE0QixFQUM1QixTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3pCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxFQUFFLElBQUksY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBcUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNo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QztJQUVELG1CQUFtQixDQUFDLGNBQXVCO1FBQ3ZDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLG9CQUFvQixDQUFDLGNBQWMsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDakosQ0FBQztJQUVELHdCQUF3QixDQUFDLFdBQW9CO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQ3hILENBQUM7O2dIQXhhUSxrQkFBa0I7b0dBQWxCLGtCQUFrQiw0b0JDOUQvQiwrbktBMkZBOzRGRDdCYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0ksZ0JBQWdCOzBFQU8xQixPQUFPO3NCQUROLEtBQUs7Z0JBS04sVUFBVTtzQkFEVCxLQUFLO2dCQUtOLE1BQU07c0JBREwsS0FBSztnQkFLTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBS04sSUFBSTtzQkFESCxLQUFLO2dCQUtOLE1BQU07c0JBREwsS0FBSztnQkFLTixJQUFJO3NCQURILEtBQUs7Z0JBS04sZUFBZTtzQkFEZCxLQUFLO2dCQU9OLHlCQUF5QjtzQkFEeEIsS0FBSztnQkFLTixTQUFTO3NCQURSLE1BQU07Z0JBS1AsYUFBYTtzQkFEWixNQUFNO2dCQUtQLFVBQVU7c0JBRFQsTUFBTTtnQkFLUCxpQkFBaUI7c0JBRGhCLE1BQU07Z0JBS1Asa0JBQWtCO3NCQURqQixNQUFNO2dCQUtQLGFBQWE7c0JBRFosTUFBTTtnQkFLUCxjQUFjO3NCQURiLE1BQU07Z0JBbURQLFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBPbkluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgaW5qZWN0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIGZvcmtKb2luLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFrZVVudGlsLCBtYXAsIGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7XG4gICAgRm9ybUJhc2VDb21wb25lbnQsXG4gICAgRm9ybUZpZWxkTW9kZWwsXG4gICAgRm9ybU91dGNvbWVFdmVudCxcbiAgICBGb3JtT3V0Y29tZU1vZGVsLFxuICAgIFdpZGdldFZpc2liaWxpdHlTZXJ2aWNlLFxuICAgIEZvcm1TZXJ2aWNlLFxuICAgIEZPUk1fRklFTERfVkFMSURBVE9SUyxcbiAgICBGb3JtRmllbGRWYWxpZGF0b3IsXG4gICAgRm9ybVZhbHVlcyxcbiAgICBGb3JtTW9kZWwsXG4gICAgQ29udGVudExpbmtNb2RlbCxcbiAgICBVcGxvYWRXaWRnZXRDb250ZW50TGlua01vZGVsLFxuICAgIEZvcm1FdmVudCxcbiAgICBDb25maXJtRGlhbG9nQ29tcG9uZW50XG59IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBGb3JtQ2xvdWRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZm9ybS1jbG91ZC5zZXJ2aWNlJztcbmltcG9ydCB7IFRhc2tWYXJpYWJsZUNsb3VkIH0gZnJvbSAnLi4vbW9kZWxzL3Rhc2stdmFyaWFibGUtY2xvdWQubW9kZWwnO1xuaW1wb3J0IHsgVGFza0RldGFpbHNDbG91ZE1vZGVsIH0gZnJvbSAnLi4vLi4vdGFzay9zdGFydC10YXNrL21vZGVscy90YXNrLWRldGFpbHMtY2xvdWQubW9kZWwnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IHY0IGFzIHV1aWRHZW5lcmF0aW9uIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBGb3JtQ2xvdWREaXNwbGF5TW9kZSwgRm9ybUNsb3VkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZm9ybS1maWVsZHMuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBGb3JtQ2xvdWRTcGlubmVyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3NwaW5uZXIvZm9ybS1jbG91ZC1zcGlubmVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGlzcGxheU1vZGVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZGlzcGxheS1tb2RlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi1jbG91ZC1mb3JtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1jbG91ZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZm9ybS1jbG91ZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1DbG91ZENvbXBvbmVudCBleHRlbmRzIEZvcm1CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgLyoqIEFwcCBuYW1lIHRvIGZldGNoIGNvcnJlc3BvbmRpbmcgZm9ybSBhbmQgdmFsdWVzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXBwTmFtZTogc3RyaW5nID0gJyc7XG5cbiAgICAvKiogVGhlIGFwcGxpY2F0aW9uIHZlcnNpb24gdG8gdXNlIHdoZW4gZmV0Y2hpbmcgZGF0YSAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXBwVmVyc2lvbj86IG51bWJlcjtcblxuICAgIC8qKiBUYXNrIGlkIHRvIGZldGNoIGNvcnJlc3BvbmRpbmcgZm9ybSBhbmQgdmFsdWVzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZm9ybUlkOiBzdHJpbmc7XG5cbiAgICAvKiogUHJvY2Vzc0luc3RhbmNlSWQgaWQgdG8gZmV0Y2ggY29ycmVzcG9uZGluZyBmb3JtIGFuZCB2YWx1ZXMuICovXG4gICAgQElucHV0KClcbiAgICBwcm9jZXNzSW5zdGFuY2VJZDogc3RyaW5nO1xuXG4gICAgLyoqIFVuZGVybHlpbmcgZm9ybSBtb2RlbCBpbnN0YW5jZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGZvcm06IEZvcm1Nb2RlbDtcblxuICAgIC8qKiBUYXNrIGlkIHRvIGZldGNoIGNvcnJlc3BvbmRpbmcgZm9ybSBhbmQgdmFsdWVzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGFza0lkOiBzdHJpbmc7XG5cbiAgICAvKiogQ3VzdG9tIGZvcm0gdmFsdWVzIG1hcCB0byBiZSB1c2VkIHdpdGggdGhlIHJlbmRlcmVkIGZvcm0uICovXG4gICAgQElucHV0KClcbiAgICBkYXRhOiBUYXNrVmFyaWFibGVDbG91ZFtdO1xuXG4gICAgLyoqIEZvcm1GaWVsZFZhbGlkYXRvciBhbGxvdyB0byBvdmVycmlkZSB0aGUgZm9ybSBmaWVsZCB2YWxpZGF0b3JzIHByb3ZpZGVkLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZmllbGRWYWxpZGF0b3JzOiBGb3JtRmllbGRWYWxpZGF0b3JbXSA9IFsuLi5GT1JNX0ZJRUxEX1ZBTElEQVRPUlNdO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGF2YWlsYWJsZSBkaXNwbGF5IGNvbmZpZ3VyYXRpb25zIGZvciB0aGUgZm9ybVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheU1vZGVDb25maWd1cmF0aW9uczogRm9ybUNsb3VkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uW107XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHRoZSBmb3JtIGlzIHN1Ym1pdHRlZCB3aXRoIHRoZSBgU2F2ZWAgb3IgY3VzdG9tIG91dGNvbWVzLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvcm1TYXZlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybU1vZGVsPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgZm9ybSBpcyBzdWJtaXR0ZWQgd2l0aCB0aGUgYENvbXBsZXRlYCBvdXRjb21lLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvcm1Db21wbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1Nb2RlbD4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGZvcm0gaXMgbG9hZGVkIG9yIHJlbG9hZGVkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvcm1Mb2FkZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1Nb2RlbD4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gZm9ybSB2YWx1ZXMgYXJlIHJlZnJlc2hlZCBkdWUgdG8gYSBkYXRhIHByb3BlcnR5IGNoYW5nZS4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBmb3JtRGF0YVJlZnJlc2hlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybU1vZGVsPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBmb3JtIGNvbnRlbnQgaXMgY2xpY2tlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBmb3JtQ29udGVudENsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPENvbnRlbnRMaW5rTW9kZWw+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIGEgZGlzcGxheSBtb2RlIGNvbmZpZ3VyYXRpb24gaXMgdHVybmVkIG9uLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGRpc3BsYXlNb2RlT24gPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1DbG91ZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbj4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gYSBkaXNwbGF5IG1vZGUgY29uZmlndXJhdGlvbiBpcyB0dXJuZWQgb2ZmLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGRpc3BsYXlNb2RlT2ZmID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtQ2xvdWREaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb24+KCk7XG5cbiAgICBwcm90ZWN0ZWQgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgICBub2RlSWQ6IHN0cmluZztcbiAgICBmb3JtQ2xvdWRSZXByZXNlbnRhdGlvbkpTT046IGFueTtcblxuICAgIHByb3RlY3RlZCBvbkRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICAgIHJlYWRvbmx5IGlkOiBzdHJpbmc7XG4gICAgZGlzcGxheU1vZGU6IEZvcm1DbG91ZERpc3BsYXlNb2RlO1xuICAgIHN0eWxlOiBzdHJpbmcgPSAnJztcblxuICAgIHByb3RlY3RlZCBmb3JtQ2xvdWRTZXJ2aWNlID0gaW5qZWN0KEZvcm1DbG91ZFNlcnZpY2UpO1xuICAgIHByb3RlY3RlZCBmb3JtU2VydmljZSA9IGluamVjdChGb3JtU2VydmljZSk7XG4gICAgcHJvdGVjdGVkIHZpc2liaWxpdHlTZXJ2aWNlID0gaW5qZWN0KFdpZGdldFZpc2liaWxpdHlTZXJ2aWNlKTtcbiAgICBwcm90ZWN0ZWQgZGlhbG9nID0gaW5qZWN0KE1hdERpYWxvZyk7XG4gICAgcHJvdGVjdGVkIHNwaW5uZXJTZXJ2aWNlID0gaW5qZWN0KEZvcm1DbG91ZFNwaW5uZXJTZXJ2aWNlKTtcbiAgICBwcm90ZWN0ZWQgZGlzcGxheU1vZGVTZXJ2aWNlID0gaW5qZWN0KERpc3BsYXlNb2RlU2VydmljZSk7XG4gICAgcHJvdGVjdGVkIGNoYW5nZURldGVjdG9yID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIHRoaXMuc3Bpbm5lclNlcnZpY2UuaW5pdFNwaW5uZXJIYW5kbGluZyh0aGlzLm9uRGVzdHJveSQpO1xuXG4gICAgICAgIHRoaXMuaWQgPSB1dWlkR2VuZXJhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuZm9ybVNlcnZpY2UuZm9ybUNvbnRlbnRDbGlja2VkLnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpLnN1YnNjcmliZSgoY29udGVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbnRlbnQgaW5zdGFuY2VvZiBVcGxvYWRXaWRnZXRDb250ZW50TGlua01vZGVsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtLnNldE5vZGVJZFZhbHVlRm9yVmlld2Vyc0xpbmtlZFRvVXBsb2FkV2lkZ2V0KGNvbnRlbnQpO1xuICAgICAgICAgICAgICAgIHRoaXMub25Gb3JtRGF0YVJlZnJlc2hlZCh0aGlzLmZvcm0pO1xuICAgICAgICAgICAgICAgIHRoaXMuZm9ybVNlcnZpY2UuZm9ybURhdGFSZWZyZXNoZWQubmV4dChuZXcgRm9ybUV2ZW50KHRoaXMuZm9ybSkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1Db250ZW50Q2xpY2tlZC5lbWl0KGNvbnRlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLnVwZGF0ZUZvcm1WYWx1ZXNSZXF1ZXN0ZWQucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCh2YWx1ZXNUb1NldElmTm90UHJlc2VudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5mb3JtLmFkZFZhbHVlc05vdFByZXNlbnQodmFsdWVzVG9TZXRJZk5vdFByZXNlbnQpO1xuICAgICAgICAgICAgdGhpcy5vbkZvcm1EYXRhUmVmcmVzaGVkKHRoaXMuZm9ybSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZm9ybVNlcnZpY2UuZm9ybUZpZWxkVmFsdWVDaGFuZ2VkLnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5kaXNhYmxlU2F2ZUJ1dHRvbikge1xuICAgICAgICAgICAgICAgIHRoaXMuZGlzYWJsZVNhdmVCdXR0b24gPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gICAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgY29uc3QgYXBwTmFtZSA9IGNoYW5nZXNbJ2FwcE5hbWUnXTtcblxuICAgICAgICBpZiAoYXBwTmFtZT8uY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICBpZiAodGhpcy50YXNrSWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmdldEZvcm1CeVRhc2tJZChhcHBOYW1lLmN1cnJlbnRWYWx1ZSwgdGhpcy50YXNrSWQsIHRoaXMuYXBwVmVyc2lvbik7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZm9ybUlkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRGb3JtQnlJZChhcHBOYW1lLmN1cnJlbnRWYWx1ZSwgdGhpcy5mb3JtSWQsIHRoaXMuYXBwVmVyc2lvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmb3JtSWQgPSBjaGFuZ2VzWydmb3JtSWQnXTtcbiAgICAgICAgaWYgKGZvcm1JZD8uY3VycmVudFZhbHVlICYmIHRoaXMuYXBwTmFtZSkge1xuICAgICAgICAgICAgdGhpcy5nZXRGb3JtQnlJZCh0aGlzLmFwcE5hbWUsIGZvcm1JZC5jdXJyZW50VmFsdWUsIHRoaXMuYXBwVmVyc2lvbik7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0YXNrSWQgPSBjaGFuZ2VzWyd0YXNrSWQnXTtcbiAgICAgICAgaWYgKHRhc2tJZD8uY3VycmVudFZhbHVlICYmIHRoaXMuYXBwTmFtZSkge1xuICAgICAgICAgICAgdGhpcy5nZXRGb3JtQnlUYXNrSWQodGhpcy5hcHBOYW1lLCB0YXNrSWQuY3VycmVudFZhbHVlLCB0aGlzLmFwcFZlcnNpb24pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGF0YSA9IGNoYW5nZXNbJ2RhdGEnXTtcbiAgICAgICAgaWYgKGRhdGE/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoRm9ybURhdGEoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZvcm1SZXByZXNlbnRhdGlvbiA9IGNoYW5nZXNbJ2Zvcm0nXTtcbiAgICAgICAgaWYgKGZvcm1SZXByZXNlbnRhdGlvbj8uY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm0gPSBmb3JtUmVwcmVzZW50YXRpb24uY3VycmVudFZhbHVlO1xuICAgICAgICAgICAgdGhpcy5vbkZvcm1Mb2FkZWQodGhpcy5mb3JtKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBEaXNwbGF5TW9kZVNlcnZpY2UuZGlzcGxheU1vZGUkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKGNoYW5nZSkgPT4gY2hhbmdlLmlkID09PSB0aGlzLmlkKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZGlzcGxheU1vZGVDaGFuZ2UpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBvbGREaXNwbGF5TW9kZSA9IHRoaXMuZGlzcGxheU1vZGU7XG4gICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5TW9kZSA9IGRpc3BsYXlNb2RlQ2hhbmdlLmRpc3BsYXlNb2RlO1xuXG4gICAgICAgICAgICAgICAgY29uc3Qgb2xkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uID0gdGhpcy5kaXNwbGF5TW9kZVNlcnZpY2UuZmluZENvbmZpZ3VyYXRpb24ob2xkRGlzcGxheU1vZGUsIHRoaXMuZGlzcGxheU1vZGVDb25maWd1cmF0aW9ucyk7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV3RGlzcGxheU1vZGVDb25maWd1cmF0aW9uID0gdGhpcy5kaXNwbGF5TW9kZVNlcnZpY2UuZmluZENvbmZpZ3VyYXRpb24oXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXlNb2RlQ2hhbmdlLmRpc3BsYXlNb2RlLFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbnNcbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgaWYgKG9sZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbj8uZGlzcGxheU1vZGUgIT09IG5ld0Rpc3BsYXlNb2RlQ29uZmlndXJhdGlvbj8uZGlzcGxheU1vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9sZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5TW9kZU9mZi5lbWl0KG9sZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKG5ld0Rpc3BsYXlNb2RlQ29uZmlndXJhdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5TW9kZU9uLmVtaXQobmV3RGlzcGxheU1vZGVDb25maWd1cmF0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEludm9rZWQgd2hlbiB1c2VyIGNsaWNrcyBmb3JtIHJlZnJlc2ggYnV0dG9uLlxuICAgICAqL1xuICAgIG9uUmVmcmVzaENsaWNrZWQoKSB7XG4gICAgICAgIHRoaXMubG9hZEZvcm0oKTtcbiAgICB9XG5cbiAgICBsb2FkRm9ybSgpIHtcbiAgICAgICAgaWYgKHRoaXMuYXBwTmFtZSAmJiB0aGlzLnRhc2tJZCkge1xuICAgICAgICAgICAgdGhpcy5nZXRGb3JtQnlUYXNrSWQodGhpcy5hcHBOYW1lLCB0aGlzLnRhc2tJZCwgdGhpcy5hcHBWZXJzaW9uKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmFwcE5hbWUgJiYgdGhpcy5mb3JtSWQpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0Rm9ybUJ5SWQodGhpcy5hcHBOYW1lLCB0aGlzLmZvcm1JZCwgdGhpcy5hcHBWZXJzaW9uKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZpbmRQcm9jZXNzVmFyaWFibGVzQnlUYXNrSWQoYXBwTmFtZTogc3RyaW5nLCB0YXNrSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8VGFza1ZhcmlhYmxlQ2xvdWRbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtQ2xvdWRTZXJ2aWNlLmdldFRhc2soYXBwTmFtZSwgdGFza0lkKS5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCh0YXNrKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNBUHJvY2Vzc1Rhc2sodGFzaykpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUNsb3VkU2VydmljZS5nZXRUYXNrVmFyaWFibGVzKGFwcE5hbWUsIHRhc2tJZCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKFtdKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlzQVByb2Nlc3NUYXNrKHRhc2tSZXByZXNlbnRhdGlvbjogVGFza0RldGFpbHNDbG91ZE1vZGVsKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0YXNrUmVwcmVzZW50YXRpb24ucHJvY2Vzc0RlZmluaXRpb25JZCAmJiB0YXNrUmVwcmVzZW50YXRpb24ucHJvY2Vzc0RlZmluaXRpb25EZXBsb3ltZW50SWQgIT09ICdudWxsJztcbiAgICB9XG5cbiAgICBnZXRGb3JtQnlUYXNrSWQoYXBwTmFtZTogc3RyaW5nLCB0YXNrSWQ6IHN0cmluZywgdmVyc2lvbj86IG51bWJlcik6IFByb21pc2U8Rm9ybU1vZGVsPiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxGb3JtTW9kZWw+KChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICBmb3JrSm9pbih0aGlzLmZvcm1DbG91ZFNlcnZpY2UuZ2V0VGFza0Zvcm0oYXBwTmFtZSwgdGFza0lkLCB2ZXJzaW9uKSwgdGhpcy5mb3JtQ2xvdWRTZXJ2aWNlLmdldFRhc2tWYXJpYWJsZXMoYXBwTmFtZSwgdGFza0lkKSlcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgICAgICAoZGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtQ2xvdWRSZXByZXNlbnRhdGlvbkpTT04gPSBkYXRhWzBdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1DbG91ZFJlcHJlc2VudGF0aW9uSlNPTi5wcm9jZXNzVmFyaWFibGVzID0gZGF0YVsxXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YSA9IGRhdGFbMV07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcnNlZEZvcm0gPSB0aGlzLnBhcnNlRm9ybSh0aGlzLmZvcm1DbG91ZFJlcHJlc2VudGF0aW9uSlNPTik7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZpc2liaWxpdHlTZXJ2aWNlLnJlZnJlc2hWaXNpYmlsaXR5KHBhcnNlZEZvcm0sIHRoaXMuZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJzZWRGb3JtLnZhbGlkYXRlRm9ybSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtID0gcGFyc2VkRm9ybTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5ub2RlSWQgPSAnLW15LSc7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRm9ybUxvYWRlZCh0aGlzLmZvcm0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLmZvcm0pO1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldEZvcm1CeUlkKGFwcE5hbWU6IHN0cmluZywgZm9ybUlkOiBzdHJpbmcsIGFwcFZlcnNpb24/OiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5mb3JtQ2xvdWRTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0Rm9ybShhcHBOYW1lLCBmb3JtSWQsIGFwcFZlcnNpb24pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKGZvcm0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmxhdHRlbkZvcm0gPSB7IC4uLmZvcm0uZm9ybVJlcHJlc2VudGF0aW9uLCAuLi5mb3JtLmZvcm1SZXByZXNlbnRhdGlvbi5mb3JtRGVmaW5pdGlvbiB9O1xuICAgICAgICAgICAgICAgICAgICBkZWxldGUgZmxhdHRlbkZvcm0uZm9ybURlZmluaXRpb247XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmbGF0dGVuRm9ybTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAoZm9ybSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1DbG91ZFJlcHJlc2VudGF0aW9uSlNPTiA9IGZvcm07XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUNsb3VkUmVwcmVzZW50YXRpb25KU09OLnByb2Nlc3NWYXJpYWJsZXMgPSB0aGlzLmRhdGEgfHwgW107XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcnNlZEZvcm0gPSB0aGlzLnBhcnNlRm9ybShmb3JtKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52aXNpYmlsaXR5U2VydmljZS5yZWZyZXNoVmlzaWJpbGl0eShwYXJzZWRGb3JtKTtcbiAgICAgICAgICAgICAgICAgICAgcGFyc2VkRm9ybT8udmFsaWRhdGVGb3JtKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybSA9IHBhcnNlZEZvcm07XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5ub2RlSWQgPSAnLW15LSc7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Gb3JtTG9hZGVkKHRoaXMuZm9ybSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBzYXZlVGFza0Zvcm0oKSB7XG4gICAgICAgIGlmICh0aGlzLmZvcm0gJiYgdGhpcy5hcHBOYW1lICYmIHRoaXMudGFza0lkKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1DbG91ZFNlcnZpY2VcbiAgICAgICAgICAgICAgICAuc2F2ZVRhc2tGb3JtKHRoaXMuYXBwTmFtZSwgdGhpcy50YXNrSWQsIHRoaXMucHJvY2Vzc0luc3RhbmNlSWQsIGAke3RoaXMuZm9ybS5pZH1gLCB0aGlzLmZvcm0udmFsdWVzKVxuICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25UYXNrU2F2ZWQodGhpcy5mb3JtKTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKGVycm9yKSA9PiB0aGlzLm9uVGFza1NhdmVkRXJyb3IoZXJyb3IpXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheU1vZGVTZXJ2aWNlLm9uU2F2ZVRhc2sodGhpcy5pZCwgdGhpcy5kaXNwbGF5TW9kZSwgdGhpcy5kaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb25zKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBsZXRlVGFza0Zvcm0ob3V0Y29tZT86IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5mb3JtPy5jb25maXJtTWVzc2FnZT8uc2hvdyA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihDb25maXJtRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiB0aGlzLmZvcm0uY29uZmlybU1lc3NhZ2UubWVzc2FnZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgbWluV2lkdGg6ICc0NTBweCdcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb21wbGV0ZUZvcm0ob3V0Y29tZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmNvbXBsZXRlRm9ybShvdXRjb21lKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRpc3BsYXlNb2RlU2VydmljZS5vbkNvbXBsZXRlVGFzayh0aGlzLmlkLCB0aGlzLmRpc3BsYXlNb2RlLCB0aGlzLmRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbnMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY29tcGxldGVGb3JtKG91dGNvbWU/OiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybSAmJiB0aGlzLmFwcE5hbWUgJiYgdGhpcy50YXNrSWQpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybUNsb3VkU2VydmljZVxuICAgICAgICAgICAgICAgIC5jb21wbGV0ZVRhc2tGb3JtKHRoaXMuYXBwTmFtZSwgdGhpcy50YXNrSWQsIHRoaXMucHJvY2Vzc0luc3RhbmNlSWQsIGAke3RoaXMuZm9ybS5pZH1gLCB0aGlzLmZvcm0udmFsdWVzLCBvdXRjb21lLCB0aGlzLmFwcFZlcnNpb24pXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vblRhc2tDb21wbGV0ZWQodGhpcy5mb3JtKTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKGVycm9yKSA9PiB0aGlzLm9uVGFza0NvbXBsZXRlZEVycm9yKGVycm9yKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwYXJzZUZvcm0oZm9ybUNsb3VkUmVwcmVzZW50YXRpb25KU09OPzogYW55KTogRm9ybU1vZGVsIHwgbnVsbCB7XG4gICAgICAgIGlmIChmb3JtQ2xvdWRSZXByZXNlbnRhdGlvbkpTT04pIHtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1WYWx1ZXM6IEZvcm1WYWx1ZXMgPSB7fTtcbiAgICAgICAgICAgICh0aGlzLmRhdGEgfHwgW10pLmZvckVhY2goKHZhcmlhYmxlKSA9PiB7XG4gICAgICAgICAgICAgICAgZm9ybVZhbHVlc1t2YXJpYWJsZS5uYW1lXSA9IHZhcmlhYmxlLnZhbHVlO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGZvcm0gPSBuZXcgRm9ybU1vZGVsKGZvcm1DbG91ZFJlcHJlc2VudGF0aW9uSlNPTiwgZm9ybVZhbHVlcywgdGhpcy5yZWFkT25seSwgdGhpcy5mb3JtU2VydmljZSk7XG4gICAgICAgICAgICBpZiAoIWZvcm0pIHtcbiAgICAgICAgICAgICAgICBmb3JtLm91dGNvbWVzID0gdGhpcy5nZXRGb3JtRGVmaW5pdGlvbk91dGNvbWVzKGZvcm0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGRWYWxpZGF0b3JzICYmIHRoaXMuZmllbGRWYWxpZGF0b3JzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBmb3JtLmZpZWxkVmFsaWRhdG9ycyA9IHRoaXMuZmllbGRWYWxpZGF0b3JzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGZvcm07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgY3VzdG9tIHNldCBvZiBvdXRjb21lcyBmb3IgYSBGb3JtIERlZmluaXRpb24uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZm9ybSBGb3JtIGRlZmluaXRpb24gbW9kZWwuXG4gICAgICogQHJldHVybnMgbGlzdCBvZiBmb3JtIG91dGNvbWVzXG4gICAgICovXG4gICAgZ2V0Rm9ybURlZmluaXRpb25PdXRjb21lcyhmb3JtOiBGb3JtTW9kZWwpOiBGb3JtT3V0Y29tZU1vZGVsW10ge1xuICAgICAgICByZXR1cm4gW25ldyBGb3JtT3V0Y29tZU1vZGVsKGZvcm0sIHsgaWQ6ICckc2F2ZScsIG5hbWU6IEZvcm1PdXRjb21lTW9kZWwuU0FWRV9BQ1RJT04sIGlzU3lzdGVtOiB0cnVlIH0pXTtcbiAgICB9XG5cbiAgICBjaGVja1Zpc2liaWxpdHkoZmllbGQ6IEZvcm1GaWVsZE1vZGVsKSB7XG4gICAgICAgIGlmIChmaWVsZD8uZm9ybSkge1xuICAgICAgICAgICAgdGhpcy52aXNpYmlsaXR5U2VydmljZS5yZWZyZXNoVmlzaWJpbGl0eShmaWVsZC5mb3JtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcmVmcmVzaEZvcm1EYXRhKCkge1xuICAgICAgICB0aGlzLmZvcm0gPSB0aGlzLnBhcnNlRm9ybSh0aGlzLmZvcm1DbG91ZFJlcHJlc2VudGF0aW9uSlNPTik7XG4gICAgICAgIGlmICh0aGlzLmZvcm0pIHtcbiAgICAgICAgICAgIHRoaXMub25Gb3JtTG9hZGVkKHRoaXMuZm9ybSk7XG4gICAgICAgICAgICB0aGlzLm9uRm9ybURhdGFSZWZyZXNoZWQodGhpcy5mb3JtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkZvcm1Mb2FkZWQoZm9ybTogRm9ybU1vZGVsKSB7XG4gICAgICAgIGlmIChmb3JtKSB7XG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbnMgPSB0aGlzLmRpc3BsYXlNb2RlU2VydmljZS5nZXREaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb25zKHRoaXMuZGlzcGxheU1vZGVDb25maWd1cmF0aW9ucyk7XG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlNb2RlID0gdGhpcy5kaXNwbGF5TW9kZVNlcnZpY2Uuc3dpdGNoVG9EaXNwbGF5TW9kZShcbiAgICAgICAgICAgICAgICB0aGlzLmlkLFxuICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5qc29uLmRpc3BsYXlNb2RlLFxuICAgICAgICAgICAgICAgIHRoaXMuZGlzcGxheU1vZGUsXG4gICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb25zXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlNb2RlT24uZW1pdCh0aGlzLmRpc3BsYXlNb2RlU2VydmljZS5maW5kQ29uZmlndXJhdGlvbih0aGlzLmRpc3BsYXlNb2RlLCB0aGlzLmRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbnMpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB0aGlzLmZvcm1Mb2FkZWQuZW1pdChmb3JtKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Gb3JtRGF0YVJlZnJlc2hlZChmb3JtOiBGb3JtTW9kZWwpIHtcbiAgICAgICAgdGhpcy5mb3JtRGF0YVJlZnJlc2hlZC5lbWl0KGZvcm0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRhc2tTYXZlZChmb3JtOiBGb3JtTW9kZWwpIHtcbiAgICAgICAgdGhpcy5mb3JtU2F2ZWQuZW1pdChmb3JtKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25UYXNrU2F2ZWRFcnJvcihlcnJvcjogYW55KSB7XG4gICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRhc2tDb21wbGV0ZWQoZm9ybTogRm9ybU1vZGVsKSB7XG4gICAgICAgIHRoaXMuZm9ybUNvbXBsZXRlZC5lbWl0KGZvcm0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRhc2tDb21wbGV0ZWRFcnJvcihlcnJvcjogYW55KSB7XG4gICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkV4ZWN1dGVPdXRjb21lKG91dGNvbWU6IEZvcm1PdXRjb21lTW9kZWwpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgYXJncyA9IG5ldyBGb3JtT3V0Y29tZUV2ZW50KG91dGNvbWUpO1xuXG4gICAgICAgIGlmIChhcmdzLmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZXhlY3V0ZU91dGNvbWUuZW1pdChhcmdzKTtcbiAgICAgICAgcmV0dXJuICFhcmdzLmRlZmF1bHRQcmV2ZW50ZWQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHN0b3JlRm9ybUFzTWV0YWRhdGEoKSB7fVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMub25EZXN0cm95JC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLm9uRGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBzd2l0Y2hUb0Rpc3BsYXlNb2RlKG5ld0Rpc3BsYXlNb2RlPzogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZGlzcGxheU1vZGVTZXJ2aWNlLnN3aXRjaFRvRGlzcGxheU1vZGUodGhpcy5pZCwgRm9ybUNsb3VkRGlzcGxheU1vZGVbbmV3RGlzcGxheU1vZGVdLCB0aGlzLmRpc3BsYXlNb2RlLCB0aGlzLmRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbnMpO1xuICAgIH1cblxuICAgIGZpbmREaXNwbGF5Q29uZmlndXJhdGlvbihkaXNwbGF5TW9kZT86IHN0cmluZyk6IEZvcm1DbG91ZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpc3BsYXlNb2RlU2VydmljZS5maW5kQ29uZmlndXJhdGlvbihGb3JtQ2xvdWREaXNwbGF5TW9kZVtkaXNwbGF5TW9kZV0sIHRoaXMuZGlzcGxheU1vZGVDb25maWd1cmF0aW9ucyk7XG4gICAgfVxufVxuIiwiPGRpdiAqbmdJZj1cIiFoYXNGb3JtKClcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZW1wdHktZm9ybV1cIj5cbiAgICA8L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuPGRpdiAqbmdJZj1cImhhc0Zvcm0oKVwiIGNsYXNzPVwiYWRmLWNsb3VkLWZvcm0tY29udGFpbmVyIGFkZi1jbG91ZC1mb3JtLXt7ZGlzcGxheU1vZGU/LnRvTG93ZXJDYXNlKCkgfHwgJ2lubGluZSd9fS1jb250YWluZXJcIiBbc3R5bGVdPVwiZm9ybS50aGVtZSB8IGFkZkZvcm1TdHlsZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJhZGYtY2xvdWQtZm9ybS1jb250ZW50XCJcbiAgICAgICAgW2Nka1RyYXBGb2N1c109XCJkaXNwbGF5TW9kZSA9PT0gJ2Z1bGxTY3JlZW4nXCJcbiAgICAgICAgY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmU+XG5cbiAgICAgICAgPGFkZi10b29sYmFyIGNsYXNzPVwiYWRmLWNsb3VkLWZvcm0tdG9vbGJhclwiICpuZ0lmPVwiZGlzcGxheU1vZGUgPT09ICdmdWxsU2NyZWVuJyAmJiBmaW5kRGlzcGxheUNvbmZpZ3VyYXRpb24oJ2Z1bGxTY3JlZW4nKT8ub3B0aW9ucz8uZGlzcGxheVRvb2xiYXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtY2xvdWQtZm9ybV9fZm9ybS10aXRsZVwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWRmLWNsb3VkLWZvcm1fX2Rpc3BsYXktbmFtZVwiIFt0aXRsZV09XCJmb3JtLnRhc2tOYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7Zm9ybS50YXNrTmFtZX19XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZm9ybS50YXNrTmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3snRk9STS5GT1JNX1JFTkRFUkVSLk5BTUVMRVNTX1RBU0snIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxhZGYtdG9vbGJhci1kaXZpZGVyPjwvYWRmLXRvb2xiYXItZGl2aWRlcj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWRmLWNsb3VkLWZvcm0tY2xvc2UtYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cImFkZi10b29sYmFyLXJpZ2h0LWJhY2tcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInQURGX1ZJRVdFUi5BQ1RJT05TLkNMT1NFJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2FkZi1jbG91ZC1mb3JtLWNsb3NlLWJ1dHRvbidcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidBREZfVklFV0VSLkFDVElPTlMuQ0xPU0UnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9XCJ7eyAnQURGX1ZJRVdFUi5BQ1RJT05TLkNMT1NFJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3dpdGNoVG9EaXNwbGF5TW9kZSgpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvYWRmLXRvb2xiYXI+XG5cbiAgICAgICAgPG1hdC1jYXJkIGFwcGVhcmFuY2U9XCJvdXRsaW5lZFwiIFtjbGFzcy5hZGYtY2xvdWQtZm9ybS1jb250ZW50LWNhcmRdPVwiZGlzcGxheU1vZGUgPT09ICdmdWxsU2NyZWVuJ1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1jbG91ZC1mb3JtLWNvbnRlbnQtY2FyZC1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxtYXQtY2FyZC1oZWFkZXIgKm5nSWY9XCJzaG93VGl0bGUgfHwgc2hvd1JlZnJlc2hCdXR0b24gfHwgc2hvd1ZhbGlkYXRpb25JY29uXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1jYXJkLXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICA8aDQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd1ZhbGlkYXRpb25JY29uXCIgY2xhc3M9XCJhZGYtZm9ybS12YWxpZGF0aW9uLWJ1dHRvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGlkPVwiYWRmLXZhbGlkLWZvcm0taWNvblwiIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvcm0uaXNWYWxpZDsgZWxzZSBub192YWxpZF9mb3JtXCI+Y2hlY2tfY2lyY2xlPC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9fdmFsaWRfZm9ybT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgaWQ9XCJhZGYtaW52YWxpZC1mb3JtLWljb25cIiBjbGFzcz1cIm1hdGVyaWFsLWljb25zIGFkZi1pbnZhbGlkLWNvbG9yXCI+ZXJyb3I8L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImRpc3BsYXlNb2RlICE9PSAnZnVsbFNjcmVlbicgJiYgZmluZERpc3BsYXlDb25maWd1cmF0aW9uKCdmdWxsU2NyZWVuJylcIiBjbGFzcz1cImFkZi1jbG91ZC1mb3JtLWZ1bGxzY3JlZW4tYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInN3aXRjaFRvRGlzcGxheU1vZGUoJ2Z1bGxTY3JlZW4nKVwiIFthdHRyLmRhdGEtYXV0b21hdGlvbi1pZF09XCInYWRmLWNsb3VkLWZvcm0tZnVsbHNjcmVlbi1idXR0b24nXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5mdWxsc2NyZWVuPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dSZWZyZXNoQnV0dG9uXCIgY2xhc3M9XCJhZGYtY2xvdWQtZm9ybS1yZWxvYWQtYnV0dG9uXCIgW3RpdGxlXT1cIidBREZfVklFV0VSLkFDVElPTlMuRlVMTFNDUkVFTicgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwib25SZWZyZXNoQ2xpY2tlZCgpXCIgW2F0dHIuYXJpYS1sYWJlbF09XCInQURGX1ZJRVdFUi5BQ1RJT05TLkZVTExTQ1JFRU4nIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5yZWZyZXNoPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc1RpdGxlRW5hYmxlZCgpXCIgY2xhc3M9XCJhZGYtY2xvdWQtZm9ybS10aXRsZVwiIFt0aXRsZV09XCJmb3JtLnRhc2tOYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3tmb3JtLnRhc2tOYW1lfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWZvcm0udGFza05hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3snRk9STS5GT1JNX1JFTkRFUkVSLk5BTUVMRVNTX1RBU0snIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9oND5cbiAgICAgICAgICAgICAgICA8L21hdC1jYXJkLXRpdGxlPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1oZWFkZXI+XG4gICAgICAgICAgICA8bWF0LWNhcmQtY29udGVudCBjbGFzcz1cImFkZi1mb3JtLWNvbnRhaW5lci1jYXJkLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8YWRmLWZvcm0tcmVuZGVyZXJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1EZWZpbml0aW9uXT1cImZvcm1cIlxuICAgICAgICAgICAgICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8L2FkZi1mb3JtLXJlbmRlcmVyPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1jb250ZW50PlxuICAgICAgICAgICAgPG1hdC1jYXJkLWFjdGlvbnMgKm5nSWY9XCJmb3JtLmhhc091dGNvbWVzKClcIiBjbGFzcz1cImFkZi1mb3JtLW1hdC1jYXJkLWFjdGlvbnNcIiBhbGlnbj1cImVuZFwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImFkZi1jbG91ZC1mb3JtLWN1c3RvbS1vdXRjb21lc1wiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvdXRjb21lIG9mIGZvcm0ub3V0Y29tZXNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJvdXRjb21lLmlzVmlzaWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2FkZi1mb3JtLScrIG91dGNvbWUubmFtZSAgfCBmb3JtYXRTcGFjZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiZ2V0Q29sb3JGb3JPdXRjb21lKG91dGNvbWUubmFtZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFpc091dGNvbWVCdXR0b25FbmFibGVkKG91dGNvbWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hZGYtZm9ybS1oaWRlLWJ1dHRvbl09XCIhaXNPdXRjb21lQnV0dG9uVmlzaWJsZShvdXRjb21lLCBmb3JtLnJlYWRPbmx5KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25PdXRjb21lQ2xpY2tlZChvdXRjb21lKVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7b3V0Y29tZS5uYW1lIHwgdHJhbnNsYXRlIHwgdXBwZXJjYXNlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbWF0LWNhcmQ+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
374
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jbG91ZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy1jbG91ZC9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy9mb3JtLWNsb3VkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzLWNsb3VkL3NyYy9saWIvZm9ybS9jb21wb25lbnRzL2Zvcm0tY2xvdWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUNILFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFHTixZQUFZLEVBRVosaUJBQWlCLEVBQ2pCLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWMsRUFBRSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRSxPQUFPLEVBQ0gsaUJBQWlCLEVBRWpCLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFdBQVcsRUFDWCxxQkFBcUIsRUFHckIsU0FBUyxFQUVULDRCQUE0QixFQUM1QixTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3pCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxFQUFFLElBQUksY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBcUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNo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QztJQUVELG1CQUFtQixDQUFDLGNBQXVCO1FBQ3ZDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLG9CQUFvQixDQUFDLGNBQWMsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDakosQ0FBQztJQUVELHdCQUF3QixDQUFDLFdBQW9CO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQ3hILENBQUM7O2dIQXhhUSxrQkFBa0I7b0dBQWxCLGtCQUFrQiw0b0JDOUQvQiwrbktBMkZBOzRGRDdCYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0ksZ0JBQWdCOzBFQU8xQixPQUFPO3NCQUROLEtBQUs7Z0JBS04sVUFBVTtzQkFEVCxLQUFLO2dCQUtOLE1BQU07c0JBREwsS0FBSztnQkFLTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBS04sSUFBSTtzQkFESCxLQUFLO2dCQUtOLE1BQU07c0JBREwsS0FBSztnQkFLTixJQUFJO3NCQURILEtBQUs7Z0JBS04sZUFBZTtzQkFEZCxLQUFLO2dCQU9OLHlCQUF5QjtzQkFEeEIsS0FBSztnQkFLTixTQUFTO3NCQURSLE1BQU07Z0JBS1AsYUFBYTtzQkFEWixNQUFNO2dCQUtQLFVBQVU7c0JBRFQsTUFBTTtnQkFLUCxpQkFBaUI7c0JBRGhCLE1BQU07Z0JBS1Asa0JBQWtCO3NCQURqQixNQUFNO2dCQUtQLGFBQWE7c0JBRFosTUFBTTtnQkFLUCxjQUFjO3NCQURiLE1BQU07Z0JBbURQLFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBPbkluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgaW5qZWN0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIGZvcmtKb2luLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFrZVVudGlsLCBtYXAsIGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7XG4gICAgRm9ybUJhc2VDb21wb25lbnQsXG4gICAgRm9ybUZpZWxkTW9kZWwsXG4gICAgRm9ybU91dGNvbWVFdmVudCxcbiAgICBGb3JtT3V0Y29tZU1vZGVsLFxuICAgIFdpZGdldFZpc2liaWxpdHlTZXJ2aWNlLFxuICAgIEZvcm1TZXJ2aWNlLFxuICAgIEZPUk1fRklFTERfVkFMSURBVE9SUyxcbiAgICBGb3JtRmllbGRWYWxpZGF0b3IsXG4gICAgRm9ybVZhbHVlcyxcbiAgICBGb3JtTW9kZWwsXG4gICAgQ29udGVudExpbmtNb2RlbCxcbiAgICBVcGxvYWRXaWRnZXRDb250ZW50TGlua01vZGVsLFxuICAgIEZvcm1FdmVudCxcbiAgICBDb25maXJtRGlhbG9nQ29tcG9uZW50XG59IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBGb3JtQ2xvdWRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZm9ybS1jbG91ZC5zZXJ2aWNlJztcbmltcG9ydCB7IFRhc2tWYXJpYWJsZUNsb3VkIH0gZnJvbSAnLi4vbW9kZWxzL3Rhc2stdmFyaWFibGUtY2xvdWQubW9kZWwnO1xuaW1wb3J0IHsgVGFza0RldGFpbHNDbG91ZE1vZGVsIH0gZnJvbSAnLi4vLi4vdGFzay9zdGFydC10YXNrL21vZGVscy90YXNrLWRldGFpbHMtY2xvdWQubW9kZWwnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IHY0IGFzIHV1aWRHZW5lcmF0aW9uIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBGb3JtQ2xvdWREaXNwbGF5TW9kZSwgRm9ybUNsb3VkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZm9ybS1maWVsZHMuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBGb3JtQ2xvdWRTcGlubmVyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3NwaW5uZXIvZm9ybS1jbG91ZC1zcGlubmVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGlzcGxheU1vZGVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZGlzcGxheS1tb2RlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi1jbG91ZC1mb3JtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1jbG91ZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZm9ybS1jbG91ZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1DbG91ZENvbXBvbmVudCBleHRlbmRzIEZvcm1CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgLyoqIEFwcCBuYW1lIHRvIGZldGNoIGNvcnJlc3BvbmRpbmcgZm9ybSBhbmQgdmFsdWVzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXBwTmFtZTogc3RyaW5nID0gJyc7XG5cbiAgICAvKiogVGhlIGFwcGxpY2F0aW9uIHZlcnNpb24gdG8gdXNlIHdoZW4gZmV0Y2hpbmcgZGF0YSAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXBwVmVyc2lvbj86IG51bWJlcjtcblxuICAgIC8qKiBUYXNrIGlkIHRvIGZldGNoIGNvcnJlc3BvbmRpbmcgZm9ybSBhbmQgdmFsdWVzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZm9ybUlkOiBzdHJpbmc7XG5cbiAgICAvKiogUHJvY2Vzc0luc3RhbmNlSWQgaWQgdG8gZmV0Y2ggY29ycmVzcG9uZGluZyBmb3JtIGFuZCB2YWx1ZXMuICovXG4gICAgQElucHV0KClcbiAgICBwcm9jZXNzSW5zdGFuY2VJZDogc3RyaW5nO1xuXG4gICAgLyoqIFVuZGVybHlpbmcgZm9ybSBtb2RlbCBpbnN0YW5jZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGZvcm06IEZvcm1Nb2RlbDtcblxuICAgIC8qKiBUYXNrIGlkIHRvIGZldGNoIGNvcnJlc3BvbmRpbmcgZm9ybSBhbmQgdmFsdWVzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGFza0lkOiBzdHJpbmc7XG5cbiAgICAvKiogQ3VzdG9tIGZvcm0gdmFsdWVzIG1hcCB0byBiZSB1c2VkIHdpdGggdGhlIHJlbmRlcmVkIGZvcm0uICovXG4gICAgQElucHV0KClcbiAgICBkYXRhOiBUYXNrVmFyaWFibGVDbG91ZFtdO1xuXG4gICAgLyoqIEZvcm1GaWVsZFZhbGlkYXRvciBhbGxvdyB0byBvdmVycmlkZSB0aGUgZm9ybSBmaWVsZCB2YWxpZGF0b3JzIHByb3ZpZGVkLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZmllbGRWYWxpZGF0b3JzOiBGb3JtRmllbGRWYWxpZGF0b3JbXSA9IFsuLi5GT1JNX0ZJRUxEX1ZBTElEQVRPUlNdO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGF2YWlsYWJsZSBkaXNwbGF5IGNvbmZpZ3VyYXRpb25zIGZvciB0aGUgZm9ybVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheU1vZGVDb25maWd1cmF0aW9uczogRm9ybUNsb3VkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uW107XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHRoZSBmb3JtIGlzIHN1Ym1pdHRlZCB3aXRoIHRoZSBgU2F2ZWAgb3IgY3VzdG9tIG91dGNvbWVzLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvcm1TYXZlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybU1vZGVsPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgZm9ybSBpcyBzdWJtaXR0ZWQgd2l0aCB0aGUgYENvbXBsZXRlYCBvdXRjb21lLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvcm1Db21wbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1Nb2RlbD4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGZvcm0gaXMgbG9hZGVkIG9yIHJlbG9hZGVkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvcm1Mb2FkZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1Nb2RlbD4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gZm9ybSB2YWx1ZXMgYXJlIHJlZnJlc2hlZCBkdWUgdG8gYSBkYXRhIHByb3BlcnR5IGNoYW5nZS4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBmb3JtRGF0YVJlZnJlc2hlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybU1vZGVsPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBmb3JtIGNvbnRlbnQgaXMgY2xpY2tlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBmb3JtQ29udGVudENsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPENvbnRlbnRMaW5rTW9kZWw+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIGEgZGlzcGxheSBtb2RlIGNvbmZpZ3VyYXRpb24gaXMgdHVybmVkIG9uLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGRpc3BsYXlNb2RlT24gPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1DbG91ZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbj4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gYSBkaXNwbGF5IG1vZGUgY29uZmlndXJhdGlvbiBpcyB0dXJuZWQgb2ZmLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGRpc3BsYXlNb2RlT2ZmID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtQ2xvdWREaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb24+KCk7XG5cbiAgICBwcm90ZWN0ZWQgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgICBub2RlSWQ6IHN0cmluZztcbiAgICBmb3JtQ2xvdWRSZXByZXNlbnRhdGlvbkpTT046IGFueTtcblxuICAgIHByb3RlY3RlZCBvbkRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICAgIHJlYWRvbmx5IGlkOiBzdHJpbmc7XG4gICAgZGlzcGxheU1vZGU6IEZvcm1DbG91ZERpc3BsYXlNb2RlO1xuICAgIHN0eWxlOiBzdHJpbmcgPSAnJztcblxuICAgIHByb3RlY3RlZCBmb3JtQ2xvdWRTZXJ2aWNlID0gaW5qZWN0KEZvcm1DbG91ZFNlcnZpY2UpO1xuICAgIHByb3RlY3RlZCBmb3JtU2VydmljZSA9IGluamVjdChGb3JtU2VydmljZSk7XG4gICAgcHJvdGVjdGVkIHZpc2liaWxpdHlTZXJ2aWNlID0gaW5qZWN0KFdpZGdldFZpc2liaWxpdHlTZXJ2aWNlKTtcbiAgICBwcm90ZWN0ZWQgZGlhbG9nID0gaW5qZWN0KE1hdERpYWxvZyk7XG4gICAgcHJvdGVjdGVkIHNwaW5uZXJTZXJ2aWNlID0gaW5qZWN0KEZvcm1DbG91ZFNwaW5uZXJTZXJ2aWNlKTtcbiAgICBwcm90ZWN0ZWQgZGlzcGxheU1vZGVTZXJ2aWNlID0gaW5qZWN0KERpc3BsYXlNb2RlU2VydmljZSk7XG4gICAgcHJvdGVjdGVkIGNoYW5nZURldGVjdG9yID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIHRoaXMuc3Bpbm5lclNlcnZpY2UuaW5pdFNwaW5uZXJIYW5kbGluZyh0aGlzLm9uRGVzdHJveSQpO1xuXG4gICAgICAgIHRoaXMuaWQgPSB1dWlkR2VuZXJhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuZm9ybVNlcnZpY2UuZm9ybUNvbnRlbnRDbGlja2VkLnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpLnN1YnNjcmliZSgoY29udGVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbnRlbnQgaW5zdGFuY2VvZiBVcGxvYWRXaWRnZXRDb250ZW50TGlua01vZGVsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtLnNldE5vZGVJZFZhbHVlRm9yVmlld2Vyc0xpbmtlZFRvVXBsb2FkV2lkZ2V0KGNvbnRlbnQpO1xuICAgICAgICAgICAgICAgIHRoaXMub25Gb3JtRGF0YVJlZnJlc2hlZCh0aGlzLmZvcm0pO1xuICAgICAgICAgICAgICAgIHRoaXMuZm9ybVNlcnZpY2UuZm9ybURhdGFSZWZyZXNoZWQubmV4dChuZXcgRm9ybUV2ZW50KHRoaXMuZm9ybSkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1Db250ZW50Q2xpY2tlZC5lbWl0KGNvbnRlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLnVwZGF0ZUZvcm1WYWx1ZXNSZXF1ZXN0ZWQucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCh2YWx1ZXNUb1NldElmTm90UHJlc2VudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5mb3JtLmFkZFZhbHVlc05vdFByZXNlbnQodmFsdWVzVG9TZXRJZk5vdFByZXNlbnQpO1xuICAgICAgICAgICAgdGhpcy5vbkZvcm1EYXRhUmVmcmVzaGVkKHRoaXMuZm9ybSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZm9ybVNlcnZpY2UuZm9ybUZpZWxkVmFsdWVDaGFuZ2VkLnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5kaXNhYmxlU2F2ZUJ1dHRvbikge1xuICAgICAgICAgICAgICAgIHRoaXMuZGlzYWJsZVNhdmVCdXR0b24gPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gICAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgY29uc3QgYXBwTmFtZSA9IGNoYW5nZXNbJ2FwcE5hbWUnXTtcblxuICAgICAgICBpZiAoYXBwTmFtZT8uY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICBpZiAodGhpcy50YXNrSWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmdldEZvcm1CeVRhc2tJZChhcHBOYW1lLmN1cnJlbnRWYWx1ZSwgdGhpcy50YXNrSWQsIHRoaXMuYXBwVmVyc2lvbik7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZm9ybUlkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRGb3JtQnlJZChhcHBOYW1lLmN1cnJlbnRWYWx1ZSwgdGhpcy5mb3JtSWQsIHRoaXMuYXBwVmVyc2lvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmb3JtSWQgPSBjaGFuZ2VzWydmb3JtSWQnXTtcbiAgICAgICAgaWYgKGZvcm1JZD8uY3VycmVudFZhbHVlICYmIHRoaXMuYXBwTmFtZSkge1xuICAgICAgICAgICAgdGhpcy5nZXRGb3JtQnlJZCh0aGlzLmFwcE5hbWUsIGZvcm1JZC5jdXJyZW50VmFsdWUsIHRoaXMuYXBwVmVyc2lvbik7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0YXNrSWQgPSBjaGFuZ2VzWyd0YXNrSWQnXTtcbiAgICAgICAgaWYgKHRhc2tJZD8uY3VycmVudFZhbHVlICYmIHRoaXMuYXBwTmFtZSkge1xuICAgICAgICAgICAgdGhpcy5nZXRGb3JtQnlUYXNrSWQodGhpcy5hcHBOYW1lLCB0YXNrSWQuY3VycmVudFZhbHVlLCB0aGlzLmFwcFZlcnNpb24pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGF0YSA9IGNoYW5nZXNbJ2RhdGEnXTtcbiAgICAgICAgaWYgKGRhdGE/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoRm9ybURhdGEoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZvcm1SZXByZXNlbnRhdGlvbiA9IGNoYW5nZXNbJ2Zvcm0nXTtcbiAgICAgICAgaWYgKGZvcm1SZXByZXNlbnRhdGlvbj8uY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm0gPSBmb3JtUmVwcmVzZW50YXRpb24uY3VycmVudFZhbHVlO1xuICAgICAgICAgICAgdGhpcy5vbkZvcm1Mb2FkZWQodGhpcy5mb3JtKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBEaXNwbGF5TW9kZVNlcnZpY2UuZGlzcGxheU1vZGUkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKGNoYW5nZSkgPT4gY2hhbmdlLmlkID09PSB0aGlzLmlkKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZGlzcGxheU1vZGVDaGFuZ2UpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBvbGREaXNwbGF5TW9kZSA9IHRoaXMuZGlzcGxheU1vZGU7XG4gICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5TW9kZSA9IGRpc3BsYXlNb2RlQ2hhbmdlLmRpc3BsYXlNb2RlO1xuXG4gICAgICAgICAgICAgICAgY29uc3Qgb2xkRGlzcGxheU1vZGVDb25maWd1cmF0aW9uID0gdGhpcy5kaXNwbGF5TW9kZVNlcnZpY2UuZmluZENvbmZpZ3VyYXRpb24ob2xkRGlzcGxheU1vZGUsIHRoaXMuZGlzcGxheU1vZGVDb25maWd1cmF0aW9ucyk7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV3RGlzcGxheU1vZGVDb25maWd1cmF0aW9uID0gdGhpcy5kaXNwbGF5TW9kZVNlcnZpY2UuZmluZENvbmZpZ3VyYXRpb24oXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXlNb2RlQ2hhbmdlLmRpc3BsYXlNb2RlLFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbnNcbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgaWYgKG9sZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbj8uZGlzcGxheU1vZGUgIT09IG5ld0Rpc3BsYXlNb2RlQ29uZmlndXJhdGlvbj8uZGlzcGxheU1vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9sZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5TW9kZU9mZi5lbWl0KG9sZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKG5ld0Rpc3BsYXlNb2RlQ29uZmlndXJhdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5TW9kZU9uLmVtaXQobmV3RGlzcGxheU1vZGVDb25maWd1cmF0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEludm9rZWQgd2hlbiB1c2VyIGNsaWNrcyBmb3JtIHJlZnJlc2ggYnV0dG9uLlxuICAgICAqL1xuICAgIG9uUmVmcmVzaENsaWNrZWQoKSB7XG4gICAgICAgIHRoaXMubG9hZEZvcm0oKTtcbiAgICB9XG5cbiAgICBsb2FkRm9ybSgpIHtcbiAgICAgICAgaWYgKHRoaXMuYXBwTmFtZSAmJiB0aGlzLnRhc2tJZCkge1xuICAgICAgICAgICAgdGhpcy5nZXRGb3JtQnlUYXNrSWQodGhpcy5hcHBOYW1lLCB0aGlzLnRhc2tJZCwgdGhpcy5hcHBWZXJzaW9uKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmFwcE5hbWUgJiYgdGhpcy5mb3JtSWQpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0Rm9ybUJ5SWQodGhpcy5hcHBOYW1lLCB0aGlzLmZvcm1JZCwgdGhpcy5hcHBWZXJzaW9uKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZpbmRQcm9jZXNzVmFyaWFibGVzQnlUYXNrSWQoYXBwTmFtZTogc3RyaW5nLCB0YXNrSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8VGFza1ZhcmlhYmxlQ2xvdWRbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtQ2xvdWRTZXJ2aWNlLmdldFRhc2soYXBwTmFtZSwgdGFza0lkKS5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCh0YXNrKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNBUHJvY2Vzc1Rhc2sodGFzaykpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUNsb3VkU2VydmljZS5nZXRUYXNrVmFyaWFibGVzKGFwcE5hbWUsIHRhc2tJZCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKFtdKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlzQVByb2Nlc3NUYXNrKHRhc2tSZXByZXNlbnRhdGlvbjogVGFza0RldGFpbHNDbG91ZE1vZGVsKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0YXNrUmVwcmVzZW50YXRpb24ucHJvY2Vzc0RlZmluaXRpb25JZCAmJiB0YXNrUmVwcmVzZW50YXRpb24ucHJvY2Vzc0RlZmluaXRpb25EZXBsb3ltZW50SWQgIT09ICdudWxsJztcbiAgICB9XG5cbiAgICBnZXRGb3JtQnlUYXNrSWQoYXBwTmFtZTogc3RyaW5nLCB0YXNrSWQ6IHN0cmluZywgdmVyc2lvbj86IG51bWJlcik6IFByb21pc2U8Rm9ybU1vZGVsPiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxGb3JtTW9kZWw+KChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICBmb3JrSm9pbih0aGlzLmZvcm1DbG91ZFNlcnZpY2UuZ2V0VGFza0Zvcm0oYXBwTmFtZSwgdGFza0lkLCB2ZXJzaW9uKSwgdGhpcy5mb3JtQ2xvdWRTZXJ2aWNlLmdldFRhc2tWYXJpYWJsZXMoYXBwTmFtZSwgdGFza0lkKSlcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgICAgICAoZGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtQ2xvdWRSZXByZXNlbnRhdGlvbkpTT04gPSBkYXRhWzBdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1DbG91ZFJlcHJlc2VudGF0aW9uSlNPTi5wcm9jZXNzVmFyaWFibGVzID0gZGF0YVsxXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YSA9IGRhdGFbMV07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcnNlZEZvcm0gPSB0aGlzLnBhcnNlRm9ybSh0aGlzLmZvcm1DbG91ZFJlcHJlc2VudGF0aW9uSlNPTik7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZpc2liaWxpdHlTZXJ2aWNlLnJlZnJlc2hWaXNpYmlsaXR5KHBhcnNlZEZvcm0sIHRoaXMuZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJzZWRGb3JtLnZhbGlkYXRlRm9ybSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtID0gcGFyc2VkRm9ybTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5ub2RlSWQgPSAnLW15LSc7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRm9ybUxvYWRlZCh0aGlzLmZvcm0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLmZvcm0pO1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldEZvcm1CeUlkKGFwcE5hbWU6IHN0cmluZywgZm9ybUlkOiBzdHJpbmcsIGFwcFZlcnNpb24/OiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5mb3JtQ2xvdWRTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0Rm9ybShhcHBOYW1lLCBmb3JtSWQsIGFwcFZlcnNpb24pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKGZvcm0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmxhdHRlbkZvcm0gPSB7IC4uLmZvcm0uZm9ybVJlcHJlc2VudGF0aW9uLCAuLi5mb3JtLmZvcm1SZXByZXNlbnRhdGlvbi5mb3JtRGVmaW5pdGlvbiB9O1xuICAgICAgICAgICAgICAgICAgICBkZWxldGUgZmxhdHRlbkZvcm0uZm9ybURlZmluaXRpb247XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmbGF0dGVuRm9ybTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAoZm9ybSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1DbG91ZFJlcHJlc2VudGF0aW9uSlNPTiA9IGZvcm07XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUNsb3VkUmVwcmVzZW50YXRpb25KU09OLnByb2Nlc3NWYXJpYWJsZXMgPSB0aGlzLmRhdGEgfHwgW107XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcnNlZEZvcm0gPSB0aGlzLnBhcnNlRm9ybShmb3JtKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52aXNpYmlsaXR5U2VydmljZS5yZWZyZXNoVmlzaWJpbGl0eShwYXJzZWRGb3JtKTtcbiAgICAgICAgICAgICAgICAgICAgcGFyc2VkRm9ybT8udmFsaWRhdGVGb3JtKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybSA9IHBhcnNlZEZvcm07XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5ub2RlSWQgPSAnLW15LSc7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Gb3JtTG9hZGVkKHRoaXMuZm9ybSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBzYXZlVGFza0Zvcm0oKSB7XG4gICAgICAgIGlmICh0aGlzLmZvcm0gJiYgdGhpcy5hcHBOYW1lICYmIHRoaXMudGFza0lkKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1DbG91ZFNlcnZpY2VcbiAgICAgICAgICAgICAgICAuc2F2ZVRhc2tGb3JtKHRoaXMuYXBwTmFtZSwgdGhpcy50YXNrSWQsIHRoaXMucHJvY2Vzc0luc3RhbmNlSWQsIGAke3RoaXMuZm9ybS5pZH1gLCB0aGlzLmZvcm0udmFsdWVzKVxuICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25UYXNrU2F2ZWQodGhpcy5mb3JtKTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKGVycm9yKSA9PiB0aGlzLm9uVGFza1NhdmVkRXJyb3IoZXJyb3IpXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheU1vZGVTZXJ2aWNlLm9uU2F2ZVRhc2sodGhpcy5pZCwgdGhpcy5kaXNwbGF5TW9kZSwgdGhpcy5kaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb25zKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBsZXRlVGFza0Zvcm0ob3V0Y29tZT86IHN0cmluZykge1xuICAgICAgICBpZiAodGhpcy5mb3JtPy5jb25maXJtTWVzc2FnZT8uc2hvdyA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihDb25maXJtRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiB0aGlzLmZvcm0uY29uZmlybU1lc3NhZ2UubWVzc2FnZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgbWluV2lkdGg6ICc0NTBweCdcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb21wbGV0ZUZvcm0ob3V0Y29tZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmNvbXBsZXRlRm9ybShvdXRjb21lKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRpc3BsYXlNb2RlU2VydmljZS5vbkNvbXBsZXRlVGFzayh0aGlzLmlkLCB0aGlzLmRpc3BsYXlNb2RlLCB0aGlzLmRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbnMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY29tcGxldGVGb3JtKG91dGNvbWU/OiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybSAmJiB0aGlzLmFwcE5hbWUgJiYgdGhpcy50YXNrSWQpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybUNsb3VkU2VydmljZVxuICAgICAgICAgICAgICAgIC5jb21wbGV0ZVRhc2tGb3JtKHRoaXMuYXBwTmFtZSwgdGhpcy50YXNrSWQsIHRoaXMucHJvY2Vzc0luc3RhbmNlSWQsIGAke3RoaXMuZm9ybS5pZH1gLCB0aGlzLmZvcm0udmFsdWVzLCBvdXRjb21lLCB0aGlzLmFwcFZlcnNpb24pXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vblRhc2tDb21wbGV0ZWQodGhpcy5mb3JtKTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKGVycm9yKSA9PiB0aGlzLm9uVGFza0NvbXBsZXRlZEVycm9yKGVycm9yKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwYXJzZUZvcm0oZm9ybUNsb3VkUmVwcmVzZW50YXRpb25KU09OPzogYW55KTogRm9ybU1vZGVsIHwgbnVsbCB7XG4gICAgICAgIGlmIChmb3JtQ2xvdWRSZXByZXNlbnRhdGlvbkpTT04pIHtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1WYWx1ZXM6IEZvcm1WYWx1ZXMgPSB7fTtcbiAgICAgICAgICAgICh0aGlzLmRhdGEgfHwgW10pLmZvckVhY2goKHZhcmlhYmxlKSA9PiB7XG4gICAgICAgICAgICAgICAgZm9ybVZhbHVlc1t2YXJpYWJsZS5uYW1lXSA9IHZhcmlhYmxlLnZhbHVlO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGZvcm0gPSBuZXcgRm9ybU1vZGVsKGZvcm1DbG91ZFJlcHJlc2VudGF0aW9uSlNPTiwgZm9ybVZhbHVlcywgdGhpcy5yZWFkT25seSwgdGhpcy5mb3JtU2VydmljZSk7XG4gICAgICAgICAgICBpZiAoIWZvcm0pIHtcbiAgICAgICAgICAgICAgICBmb3JtLm91dGNvbWVzID0gdGhpcy5nZXRGb3JtRGVmaW5pdGlvbk91dGNvbWVzKGZvcm0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGRWYWxpZGF0b3JzICYmIHRoaXMuZmllbGRWYWxpZGF0b3JzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBmb3JtLmZpZWxkVmFsaWRhdG9ycyA9IHRoaXMuZmllbGRWYWxpZGF0b3JzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGZvcm07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgY3VzdG9tIHNldCBvZiBvdXRjb21lcyBmb3IgYSBGb3JtIERlZmluaXRpb24uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZm9ybSBGb3JtIGRlZmluaXRpb24gbW9kZWwuXG4gICAgICogQHJldHVybnMgbGlzdCBvZiBmb3JtIG91dGNvbWVzXG4gICAgICovXG4gICAgZ2V0Rm9ybURlZmluaXRpb25PdXRjb21lcyhmb3JtOiBGb3JtTW9kZWwpOiBGb3JtT3V0Y29tZU1vZGVsW10ge1xuICAgICAgICByZXR1cm4gW25ldyBGb3JtT3V0Y29tZU1vZGVsKGZvcm0sIHsgaWQ6ICckc2F2ZScsIG5hbWU6IEZvcm1PdXRjb21lTW9kZWwuU0FWRV9BQ1RJT04sIGlzU3lzdGVtOiB0cnVlIH0pXTtcbiAgICB9XG5cbiAgICBjaGVja1Zpc2liaWxpdHkoZmllbGQ6IEZvcm1GaWVsZE1vZGVsKSB7XG4gICAgICAgIGlmIChmaWVsZD8uZm9ybSkge1xuICAgICAgICAgICAgdGhpcy52aXNpYmlsaXR5U2VydmljZS5yZWZyZXNoVmlzaWJpbGl0eShmaWVsZC5mb3JtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcmVmcmVzaEZvcm1EYXRhKCkge1xuICAgICAgICB0aGlzLmZvcm0gPSB0aGlzLnBhcnNlRm9ybSh0aGlzLmZvcm1DbG91ZFJlcHJlc2VudGF0aW9uSlNPTik7XG4gICAgICAgIGlmICh0aGlzLmZvcm0pIHtcbiAgICAgICAgICAgIHRoaXMub25Gb3JtTG9hZGVkKHRoaXMuZm9ybSk7XG4gICAgICAgICAgICB0aGlzLm9uRm9ybURhdGFSZWZyZXNoZWQodGhpcy5mb3JtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkZvcm1Mb2FkZWQoZm9ybTogRm9ybU1vZGVsKSB7XG4gICAgICAgIGlmIChmb3JtKSB7XG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbnMgPSB0aGlzLmRpc3BsYXlNb2RlU2VydmljZS5nZXREaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb25zKHRoaXMuZGlzcGxheU1vZGVDb25maWd1cmF0aW9ucyk7XG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlNb2RlID0gdGhpcy5kaXNwbGF5TW9kZVNlcnZpY2Uuc3dpdGNoVG9EaXNwbGF5TW9kZShcbiAgICAgICAgICAgICAgICB0aGlzLmlkLFxuICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5qc29uLmRpc3BsYXlNb2RlLFxuICAgICAgICAgICAgICAgIHRoaXMuZGlzcGxheU1vZGUsXG4gICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5TW9kZUNvbmZpZ3VyYXRpb25zXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlNb2RlT24uZW1pdCh0aGlzLmRpc3BsYXlNb2RlU2VydmljZS5maW5kQ29uZmlndXJhdGlvbih0aGlzLmRpc3BsYXlNb2RlLCB0aGlzLmRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbnMpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB0aGlzLmZvcm1Mb2FkZWQuZW1pdChmb3JtKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Gb3JtRGF0YVJlZnJlc2hlZChmb3JtOiBGb3JtTW9kZWwpIHtcbiAgICAgICAgdGhpcy5mb3JtRGF0YVJlZnJlc2hlZC5lbWl0KGZvcm0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRhc2tTYXZlZChmb3JtOiBGb3JtTW9kZWwpIHtcbiAgICAgICAgdGhpcy5mb3JtU2F2ZWQuZW1pdChmb3JtKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25UYXNrU2F2ZWRFcnJvcihlcnJvcjogYW55KSB7XG4gICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRhc2tDb21wbGV0ZWQoZm9ybTogRm9ybU1vZGVsKSB7XG4gICAgICAgIHRoaXMuZm9ybUNvbXBsZXRlZC5lbWl0KGZvcm0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRhc2tDb21wbGV0ZWRFcnJvcihlcnJvcjogYW55KSB7XG4gICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkV4ZWN1dGVPdXRjb21lKG91dGNvbWU6IEZvcm1PdXRjb21lTW9kZWwpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgYXJncyA9IG5ldyBGb3JtT3V0Y29tZUV2ZW50KG91dGNvbWUpO1xuXG4gICAgICAgIGlmIChhcmdzLmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZXhlY3V0ZU91dGNvbWUuZW1pdChhcmdzKTtcbiAgICAgICAgcmV0dXJuICFhcmdzLmRlZmF1bHRQcmV2ZW50ZWQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHN0b3JlRm9ybUFzTWV0YWRhdGEoKSB7fVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMub25EZXN0cm95JC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLm9uRGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBzd2l0Y2hUb0Rpc3BsYXlNb2RlKG5ld0Rpc3BsYXlNb2RlPzogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZGlzcGxheU1vZGVTZXJ2aWNlLnN3aXRjaFRvRGlzcGxheU1vZGUodGhpcy5pZCwgRm9ybUNsb3VkRGlzcGxheU1vZGVbbmV3RGlzcGxheU1vZGVdLCB0aGlzLmRpc3BsYXlNb2RlLCB0aGlzLmRpc3BsYXlNb2RlQ29uZmlndXJhdGlvbnMpO1xuICAgIH1cblxuICAgIGZpbmREaXNwbGF5Q29uZmlndXJhdGlvbihkaXNwbGF5TW9kZT86IHN0cmluZyk6IEZvcm1DbG91ZERpc3BsYXlNb2RlQ29uZmlndXJhdGlvbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpc3BsYXlNb2RlU2VydmljZS5maW5kQ29uZmlndXJhdGlvbihGb3JtQ2xvdWREaXNwbGF5TW9kZVtkaXNwbGF5TW9kZV0sIHRoaXMuZGlzcGxheU1vZGVDb25maWd1cmF0aW9ucyk7XG4gICAgfVxufVxuIiwiPGRpdiAqbmdJZj1cIiFoYXNGb3JtKClcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZW1wdHktZm9ybV1cIj5cbiAgICA8L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuPGRpdiAqbmdJZj1cImhhc0Zvcm0oKVwiIGNsYXNzPVwiYWRmLWNsb3VkLWZvcm0tY29udGFpbmVyIGFkZi1jbG91ZC1mb3JtLXt7ZGlzcGxheU1vZGU/LnRvTG93ZXJDYXNlKCkgfHwgJ2lubGluZSd9fS1jb250YWluZXJcIiBbc3R5bGVdPVwiZm9ybS50aGVtZSB8IGFkZkZvcm1TdHlsZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJhZGYtY2xvdWQtZm9ybS1jb250ZW50XCJcbiAgICAgICAgW2Nka1RyYXBGb2N1c109XCJkaXNwbGF5TW9kZSA9PT0gJ2Z1bGxTY3JlZW4nXCJcbiAgICAgICAgY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmU+XG5cbiAgICAgICAgPGFkZi10b29sYmFyIGNsYXNzPVwiYWRmLWNsb3VkLWZvcm0tdG9vbGJhclwiICpuZ0lmPVwiZGlzcGxheU1vZGUgPT09ICdmdWxsU2NyZWVuJyAmJiBmaW5kRGlzcGxheUNvbmZpZ3VyYXRpb24oJ2Z1bGxTY3JlZW4nKT8ub3B0aW9ucz8uZGlzcGxheVRvb2xiYXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtY2xvdWQtZm9ybV9fZm9ybS10aXRsZVwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWRmLWNsb3VkLWZvcm1fX2Rpc3BsYXktbmFtZVwiIFt0aXRsZV09XCJmb3JtLnRhc2tOYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7Zm9ybS50YXNrTmFtZX19XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZm9ybS50YXNrTmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3snRk9STS5GT1JNX1JFTkRFUkVSLk5BTUVMRVNTX1RBU0snIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxhZGYtdG9vbGJhci1kaXZpZGVyPjwvYWRmLXRvb2xiYXItZGl2aWRlcj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWRmLWNsb3VkLWZvcm0tY2xvc2UtYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cImFkZi10b29sYmFyLXJpZ2h0LWJhY2tcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInQURGX1ZJRVdFUi5BQ1RJT05TLkNMT1NFJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2FkZi1jbG91ZC1mb3JtLWNsb3NlLWJ1dHRvbidcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidBREZfVklFV0VSLkFDVElPTlMuQ0xPU0UnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9XCJ7eyAnQURGX1ZJRVdFUi5BQ1RJT05TLkNMT1NFJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3dpdGNoVG9EaXNwbGF5TW9kZSgpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvYWRmLXRvb2xiYXI+XG5cbiAgICAgICAgPG1hdC1jYXJkIGFwcGVhcmFuY2U9XCJvdXRsaW5lZFwiIFtjbGFzcy5hZGYtY2xvdWQtZm9ybS1jb250ZW50LWNhcmRdPVwiZGlzcGxheU1vZGUgPT09ICdmdWxsU2NyZWVuJ1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1jbG91ZC1mb3JtLWNvbnRlbnQtY2FyZC1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxtYXQtY2FyZC1oZWFkZXIgKm5nSWY9XCJzaG93VGl0bGUgfHwgc2hvd1JlZnJlc2hCdXR0b24gfHwgc2hvd1ZhbGlkYXRpb25JY29uXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1jYXJkLXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICA8aDQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd1ZhbGlkYXRpb25JY29uXCIgY2xhc3M9XCJhZGYtZm9ybS12YWxpZGF0aW9uLWJ1dHRvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGlkPVwiYWRmLXZhbGlkLWZvcm0taWNvblwiIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZvcm0uaXNWYWxpZDsgZWxzZSBub192YWxpZF9mb3JtXCI+Y2hlY2tfY2lyY2xlPC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9fdmFsaWRfZm9ybT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgaWQ9XCJhZGYtaW52YWxpZC1mb3JtLWljb25cIiBjbGFzcz1cIm1hdGVyaWFsLWljb25zIGFkZi1pbnZhbGlkLWNvbG9yXCI+ZXJyb3I8L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImRpc3BsYXlNb2RlICE9PSAnZnVsbFNjcmVlbicgJiYgZmluZERpc3BsYXlDb25maWd1cmF0aW9uKCdmdWxsU2NyZWVuJylcIiBjbGFzcz1cImFkZi1jbG91ZC1mb3JtLWZ1bGxzY3JlZW4tYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInN3aXRjaFRvRGlzcGxheU1vZGUoJ2Z1bGxTY3JlZW4nKVwiIFthdHRyLmRhdGEtYXV0b21hdGlvbi1pZF09XCInYWRmLWNsb3VkLWZvcm0tZnVsbHNjcmVlbi1idXR0b24nXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5mdWxsc2NyZWVuPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dSZWZyZXNoQnV0dG9uXCIgY2xhc3M9XCJhZGYtY2xvdWQtZm9ybS1yZWxvYWQtYnV0dG9uXCIgW3RpdGxlXT1cIidBREZfVklFV0VSLkFDVElPTlMuRlVMTFNDUkVFTicgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwib25SZWZyZXNoQ2xpY2tlZCgpXCIgW2F0dHIuYXJpYS1sYWJlbF09XCInQURGX1ZJRVdFUi5BQ1RJT05TLkZVTExTQ1JFRU4nIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5yZWZyZXNoPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc1RpdGxlRW5hYmxlZCgpXCIgY2xhc3M9XCJhZGYtY2xvdWQtZm9ybS10aXRsZVwiIFt0aXRsZV09XCJmb3JtLnRhc2tOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3tmb3JtLnRhc2tOYW1lfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWZvcm0udGFza05hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3snRk9STS5GT1JNX1JFTkRFUkVSLk5BTUVMRVNTX1RBU0snIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9oND5cbiAgICAgICAgICAgICAgICA8L21hdC1jYXJkLXRpdGxlPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1oZWFkZXI+XG4gICAgICAgICAgICA8bWF0LWNhcmQtY29udGVudCBjbGFzcz1cImFkZi1mb3JtLWNvbnRhaW5lci1jYXJkLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8YWRmLWZvcm0tcmVuZGVyZXJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1EZWZpbml0aW9uXT1cImZvcm1cIlxuICAgICAgICAgICAgICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8L2FkZi1mb3JtLXJlbmRlcmVyPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1jb250ZW50PlxuICAgICAgICAgICAgPG1hdC1jYXJkLWFjdGlvbnMgKm5nSWY9XCJmb3JtLmhhc091dGNvbWVzKClcIiBjbGFzcz1cImFkZi1mb3JtLW1hdC1jYXJkLWFjdGlvbnNcIiBhbGlnbj1cImVuZFwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImFkZi1jbG91ZC1mb3JtLWN1c3RvbS1vdXRjb21lc1wiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvdXRjb21lIG9mIGZvcm0ub3V0Y29tZXNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJvdXRjb21lLmlzVmlzaWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ2FkZi1mb3JtLScrIG91dGNvbWUubmFtZSAgfCBmb3JtYXRTcGFjZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiZ2V0Q29sb3JGb3JPdXRjb21lKG91dGNvbWUubmFtZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFpc091dGNvbWVCdXR0b25FbmFibGVkKG91dGNvbWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hZGYtZm9ybS1oaWRlLWJ1dHRvbl09XCIhaXNPdXRjb21lQnV0dG9uVmlzaWJsZShvdXRjb21lLCBmb3JtLnJlYWRPbmx5KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25PdXRjb21lQ2xpY2tlZChvdXRjb21lKVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7b3V0Y29tZS5uYW1lIHwgdHJhbnNsYXRlIHwgdXBwZXJjYXNlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbWF0LWNhcmQ+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
-
export const
|
|
17
|
+
export const radioButtonsSchema = {
|
|
18
18
|
themeProperties: [
|
|
19
19
|
{
|
|
20
20
|
name: 'FORM.FIELD_STYLE.FONT_SIZE',
|
|
@@ -33,11 +33,11 @@ export const displayTextSchema = {
|
|
|
33
33
|
type: 'options',
|
|
34
34
|
options: [
|
|
35
35
|
{
|
|
36
|
-
name: 'FORM.FIELD_STYLE.REGULAR',
|
|
36
|
+
name: 'FORM.FIELD_STYLE.FONT_WEIGHTS.REGULAR',
|
|
37
37
|
value: 'normal'
|
|
38
38
|
},
|
|
39
39
|
{
|
|
40
|
-
name: 'FORM.FIELD_STYLE.BOLD',
|
|
40
|
+
name: 'FORM.FIELD_STYLE.FONT_WEIGHTS.BOLD',
|
|
41
41
|
value: 'bold'
|
|
42
42
|
}
|
|
43
43
|
],
|
|
@@ -51,31 +51,31 @@ export const displayTextSchema = {
|
|
|
51
51
|
type: 'colorOptions',
|
|
52
52
|
options: [
|
|
53
53
|
{
|
|
54
|
-
name: 'FORM.FIELD_STYLE.SYSTEM_COLOR',
|
|
54
|
+
name: 'FORM.FIELD_STYLE.COLORS.SYSTEM_COLOR',
|
|
55
55
|
value: 'inherit'
|
|
56
56
|
},
|
|
57
57
|
{
|
|
58
|
-
name: 'FORM.FIELD_STYLE.BLACK',
|
|
58
|
+
name: 'FORM.FIELD_STYLE.COLORS.BLACK',
|
|
59
59
|
value: '#000000'
|
|
60
60
|
},
|
|
61
61
|
{
|
|
62
|
-
name: 'FORM.FIELD_STYLE.GREY',
|
|
62
|
+
name: 'FORM.FIELD_STYLE.COLORS.GREY',
|
|
63
63
|
value: '#9CA3AF'
|
|
64
64
|
},
|
|
65
65
|
{
|
|
66
|
-
name: 'FORM.FIELD_STYLE.RED',
|
|
66
|
+
name: 'FORM.FIELD_STYLE.COLORS.RED',
|
|
67
67
|
value: '#DA1500'
|
|
68
68
|
},
|
|
69
69
|
{
|
|
70
|
-
name: 'FORM.FIELD_STYLE.GREEN',
|
|
70
|
+
name: 'FORM.FIELD_STYLE.COLORS.GREEN',
|
|
71
71
|
value: '#04A003'
|
|
72
72
|
},
|
|
73
73
|
{
|
|
74
|
-
name: 'FORM.FIELD_STYLE.BLUE',
|
|
74
|
+
name: 'FORM.FIELD_STYLE.COLORS.BLUE',
|
|
75
75
|
value: '#0A60CE'
|
|
76
76
|
},
|
|
77
77
|
{
|
|
78
|
-
name: 'FORM.FIELD_STYLE.YELLOW',
|
|
78
|
+
name: 'FORM.FIELD_STYLE.COLORS.YELLOW',
|
|
79
79
|
value: '#FACC15'
|
|
80
80
|
}
|
|
81
81
|
],
|
|
@@ -83,4 +83,4 @@ export const displayTextSchema = {
|
|
|
83
83
|
}
|
|
84
84
|
]
|
|
85
85
|
};
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9ucy1jbG91ZC5zY2hlbWEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy1jbG91ZC9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL3JhZGlvLWJ1dHRvbnMvcmFkaW8tYnV0dG9ucy1jbG91ZC5zY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBSUgsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQWlEO0lBQzVFLGVBQWUsRUFBRTtRQUNiO1lBQ0ksSUFBSSxFQUFFLDRCQUE0QjtZQUNsQyxlQUFlLEVBQUUsV0FBVztZQUM1QixpQkFBaUIsRUFBRSwrQkFBK0I7WUFDbEQsZ0JBQWdCLEVBQUUsNEJBQTRCO1lBQzlDLElBQUksRUFBRSxRQUFRO1lBQ2QsSUFBSSxFQUFFLElBQUk7WUFDVixZQUFZLEVBQUUsTUFBTTtTQUN2QjtRQUNEO1lBQ0ksSUFBSSxFQUFFLDhCQUE4QjtZQUNwQyxlQUFlLEVBQUUsYUFBYTtZQUM5QixpQkFBaUIsRUFBRSxpQ0FBaUM7WUFDcEQsZ0JBQWdCLEVBQUUsOEJBQThCO1lBQ2hELElBQUksRUFBRSxTQUFTO1lBQ2YsT0FBTyxFQUFFO2dCQUNMO29CQUNJLElBQUksRUFBRSx1Q0FBdUM7b0JBQzdDLEtBQUssRUFBRSxRQUFRO2lCQUNsQjtnQkFDRDtvQkFDSSxJQUFJLEVBQUUsb0NBQW9DO29CQUMxQyxLQUFLLEVBQUUsTUFBTTtpQkFDaEI7YUFDSjtZQUNELFlBQVksRUFBRSxRQUFRO1NBQ3pCO1FBQ0Q7WUFDSSxJQUFJLEVBQUUsNkJBQTZCO1lBQ25DLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLGlCQUFpQixFQUFFLDJCQUEyQjtZQUM5QyxnQkFBZ0IsRUFBRSx3QkFBd0I7WUFDMUMsSUFBSSxFQUFFLGNBQWM7WUFDcEIsT0FBTyxFQUFFO2dCQUNMO29CQUNJLElBQUksRUFBRSxzQ0FBc0M7b0JBQzVDLEtBQUssRUFBRSxTQUFTO2lCQUNuQjtnQkFDRDtvQkFDSSxJQUFJLEVBQUUsK0JBQStCO29CQUNyQyxLQUFLLEVBQUUsU0FBUztpQkFDbkI7Z0JBQ0Q7b0JBQ0ksSUFBSSxFQUFFLDhCQUE4QjtvQkFDcEMsS0FBSyxFQUFFLFNBQVM7aUJBQ25CO2dCQUNEO29CQUNJLElBQUksRUFBRSw2QkFBNkI7b0JBQ25DLEtBQUssRUFBRSxTQUFTO2lCQUNuQjtnQkFDRDtvQkFDSSxJQUFJLEVBQUUsK0JBQStCO29CQUNyQyxLQUFLLEVBQUUsU0FBUztpQkFDbkI7Z0JBQ0Q7b0JBQ0ksSUFBSSxFQUFFLDhCQUE4QjtvQkFDcEMsS0FBSyxFQUFFLFNBQVM7aUJBQ25CO2dCQUNEO29CQUNJLElBQUksRUFBRSxnQ0FBZ0M7b0JBQ3RDLEtBQUssRUFBRSxTQUFTO2lCQUNuQjthQUNKO1lBQ0QsWUFBWSxFQUFFLFNBQVM7U0FDMUI7S0FDSjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IFJhZGlvQnV0dG9uc1RoZW1lVmFyaWFibGUsIFdpZGdldFNjaGVtYU1vZGVsIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcblxuZXhwb3J0IGNvbnN0IHJhZGlvQnV0dG9uc1NjaGVtYTogV2lkZ2V0U2NoZW1hTW9kZWw8UmFkaW9CdXR0b25zVGhlbWVWYXJpYWJsZT4gPSB7XG4gICAgdGhlbWVQcm9wZXJ0aWVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdGT1JNLkZJRUxEX1NUWUxFLkZPTlRfU0laRScsXG4gICAgICAgICAgICBjc3NQcm9wZXJ0eU5hbWU6ICdmb250LXNpemUnLFxuICAgICAgICAgICAgZmllbGRWYXJpYWJsZU5hbWU6ICctLWFkZi1yYWRpby1idXR0b25zLWZvbnQtc2l6ZScsXG4gICAgICAgICAgICBmb3JtVmFyaWFibGVOYW1lOiAnLS1hZGYtZm9ybS1sYWJlbC1mb250LXNpemUnLFxuICAgICAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgICAgICB1bml0OiAncHgnLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiAnMTZweCdcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0ZPUk0uRklFTERfU1RZTEUuRk9OVF9XRUlHSFQnLFxuICAgICAgICAgICAgY3NzUHJvcGVydHlOYW1lOiAnZm9udC13ZWlnaHQnLFxuICAgICAgICAgICAgZmllbGRWYXJpYWJsZU5hbWU6ICctLWFkZi1yYWRpby1idXR0b25zLWZvbnQtd2VpZ2h0JyxcbiAgICAgICAgICAgIGZvcm1WYXJpYWJsZU5hbWU6ICctLWFkZi1mb3JtLWxhYmVsLWZvbnQtd2VpZ2h0JyxcbiAgICAgICAgICAgIHR5cGU6ICdvcHRpb25zJyxcbiAgICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdGT1JNLkZJRUxEX1NUWUxFLkZPTlRfV0VJR0hUUy5SRUdVTEFSJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICdub3JtYWwnXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdGT1JNLkZJRUxEX1NUWUxFLkZPTlRfV0VJR0hUUy5CT0xEJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICdib2xkJ1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6ICdub3JtYWwnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdGT1JNLkZJRUxEX1NUWUxFLkZPTlRfQ09MT1InLFxuICAgICAgICAgICAgY3NzUHJvcGVydHlOYW1lOiAnY29sb3InLFxuICAgICAgICAgICAgZmllbGRWYXJpYWJsZU5hbWU6ICctLWFkZi1yYWRpby1idXR0b25zLWNvbG9yJyxcbiAgICAgICAgICAgIGZvcm1WYXJpYWJsZU5hbWU6ICctLWFkZi1mb3JtLWxhYmVsLWNvbG9yJyxcbiAgICAgICAgICAgIHR5cGU6ICdjb2xvck9wdGlvbnMnLFxuICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0ZPUk0uRklFTERfU1RZTEUuQ09MT1JTLlNZU1RFTV9DT0xPUicsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiAnaW5oZXJpdCdcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0ZPUk0uRklFTERfU1RZTEUuQ09MT1JTLkJMQUNLJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICcjMDAwMDAwJ1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnRk9STS5GSUVMRF9TVFlMRS5DT0xPUlMuR1JFWScsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiAnIzlDQTNBRidcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0ZPUk0uRklFTERfU1RZTEUuQ09MT1JTLlJFRCcsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiAnI0RBMTUwMCdcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0ZPUk0uRklFTERfU1RZTEUuQ09MT1JTLkdSRUVOJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICcjMDRBMDAzJ1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnRk9STS5GSUVMRF9TVFlMRS5DT0xPUlMuQkxVRScsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiAnIzBBNjBDRSdcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0ZPUk0uRklFTERfU1RZTEUuQ09MT1JTLllFTExPVycsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiAnI0ZBQ0MxNSdcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiAnaW5oZXJpdCdcbiAgICAgICAgfVxuICAgIF1cbn07XG4iXX0=
|
|
@@ -7198,10 +7198,10 @@ class FormCloudComponent extends FormBaseComponent {
|
|
|
7198
7198
|
}
|
|
7199
7199
|
}
|
|
7200
7200
|
FormCloudComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormCloudComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7201
|
-
FormCloudComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormCloudComponent, selector: "adf-cloud-form", inputs: { appName: "appName", appVersion: "appVersion", formId: "formId", processInstanceId: "processInstanceId", form: "form", taskId: "taskId", data: "data", fieldValidators: "fieldValidators", displayModeConfigurations: "displayModeConfigurations" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", formLoaded: "formLoaded", formDataRefreshed: "formDataRefreshed", formContentClicked: "formContentClicked", displayModeOn: "displayModeOn", displayModeOff: "displayModeOff" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\">\n </ng-content>\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-cloud-form-container adf-cloud-form-{{displayMode?.toLowerCase() || 'inline'}}-container\" [style]=\"form.theme | adfFormStyle\">\n <div class=\"adf-cloud-form-content\"\n [cdkTrapFocus]=\"displayMode === 'fullScreen'\"\n cdkTrapFocusAutoCapture>\n\n <adf-toolbar class=\"adf-cloud-form-toolbar\" *ngIf=\"displayMode === 'fullScreen' && findDisplayConfiguration('fullScreen')?.options?.displayToolbar\">\n <div class=\"adf-cloud-form__form-title\">\n <span class=\"adf-cloud-form__display-name\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </div>\n\n <adf-toolbar-divider></adf-toolbar-divider>\n <button class=\"adf-cloud-form-close-button\"\n data-automation-id=\"adf-toolbar-right-back\"\n [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n [attr.data-automation-id]=\"'adf-cloud-form-close-button'\"\n [title]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n mat-icon-button\n title=\"{{ 'ADF_VIEWER.ACTIONS.CLOSE' | translate }}\"\n (click)=\"switchToDisplayMode()\">\n <mat-icon>close</mat-icon>\n </button>\n </adf-toolbar>\n\n <mat-card appearance=\"outlined\" [class.adf-cloud-form-content-card]=\"displayMode === 'fullScreen'\">\n <div class=\"adf-cloud-form-content-card-container\">\n <mat-card-header *ngIf=\"showTitle || showRefreshButton || showValidationIcon\">\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"displayMode !== 'fullScreen' && findDisplayConfiguration('fullScreen')\" class=\"adf-cloud-form-fullscreen-button\">\n <button mat-icon-button (click)=\"switchToDisplayMode('fullScreen')\" [attr.data-automation-id]=\"'adf-cloud-form-fullscreen-button'\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-cloud-form-reload-button\" [title]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <button mat-icon-button (click)=\"onRefreshClicked()\" [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-cloud-form-title\" [title]=\"form.taskName\"
|
|
7201
|
+
FormCloudComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormCloudComponent, selector: "adf-cloud-form", inputs: { appName: "appName", appVersion: "appVersion", formId: "formId", processInstanceId: "processInstanceId", form: "form", taskId: "taskId", data: "data", fieldValidators: "fieldValidators", displayModeConfigurations: "displayModeConfigurations" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", formLoaded: "formLoaded", formDataRefreshed: "formDataRefreshed", formContentClicked: "formContentClicked", displayModeOn: "displayModeOn", displayModeOff: "displayModeOff" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\">\n </ng-content>\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-cloud-form-container adf-cloud-form-{{displayMode?.toLowerCase() || 'inline'}}-container\" [style]=\"form.theme | adfFormStyle\">\n <div class=\"adf-cloud-form-content\"\n [cdkTrapFocus]=\"displayMode === 'fullScreen'\"\n cdkTrapFocusAutoCapture>\n\n <adf-toolbar class=\"adf-cloud-form-toolbar\" *ngIf=\"displayMode === 'fullScreen' && findDisplayConfiguration('fullScreen')?.options?.displayToolbar\">\n <div class=\"adf-cloud-form__form-title\">\n <span class=\"adf-cloud-form__display-name\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </div>\n\n <adf-toolbar-divider></adf-toolbar-divider>\n <button class=\"adf-cloud-form-close-button\"\n data-automation-id=\"adf-toolbar-right-back\"\n [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n [attr.data-automation-id]=\"'adf-cloud-form-close-button'\"\n [title]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n mat-icon-button\n title=\"{{ 'ADF_VIEWER.ACTIONS.CLOSE' | translate }}\"\n (click)=\"switchToDisplayMode()\">\n <mat-icon>close</mat-icon>\n </button>\n </adf-toolbar>\n\n <mat-card appearance=\"outlined\" [class.adf-cloud-form-content-card]=\"displayMode === 'fullScreen'\">\n <div class=\"adf-cloud-form-content-card-container\">\n <mat-card-header *ngIf=\"showTitle || showRefreshButton || showValidationIcon\">\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"displayMode !== 'fullScreen' && findDisplayConfiguration('fullScreen')\" class=\"adf-cloud-form-fullscreen-button\">\n <button mat-icon-button (click)=\"switchToDisplayMode('fullScreen')\" [attr.data-automation-id]=\"'adf-cloud-form-fullscreen-button'\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-cloud-form-reload-button\" [title]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <button mat-icon-button (click)=\"onRefreshClicked()\" [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-cloud-form-title\" [title]=\"form.taskName\"\n >{{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </h4>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content class=\"adf-form-container-card-content\">\n <adf-form-renderer\n [formDefinition]=\"form\"\n [readOnly]=\"readOnly\"\n >\n </adf-form-renderer>\n </mat-card-content>\n <mat-card-actions *ngIf=\"form.hasOutcomes()\" class=\"adf-form-mat-card-actions\" align=\"end\">\n <ng-content select=\"adf-cloud-form-custom-outcomes\"></ng-content>\n <ng-container *ngFor=\"let outcome of form.outcomes\">\n <button\n *ngIf=\"outcome.isVisible\"\n [id]=\"'adf-form-'+ outcome.name | formatSpace\"\n [color]=\"getColorForOutcome(outcome.name)\"\n mat-button\n [disabled]=\"!isOutcomeButtonEnabled(outcome)\"\n [class.adf-form-hide-button]=\"!isOutcomeButtonVisible(outcome, form.readOnly)\"\n (click)=\"onOutcomeClicked(outcome)\"\n >\n {{outcome.name | translate | uppercase }}\n </button>\n </ng-container>\n </mat-card-actions>\n </div>\n </mat-card>\n </div>\n</div>\n", styles: [".adf-full-screen,.adf-cloud-form-inline-container,.adf-cloud-form-container .adf-cloud-form-content{width:100%;height:100%;background-color:var(--adf-theme-background-card-color)}.adf-cloud-form-container .adf-cloud-form-content{flex:1;flex-direction:column;display:flex}.adf-cloud-form-fullscreen-container .adf-cloud-form-content{position:fixed;top:0;left:0;z-index:100000}.adf-cloud-form-toolbar .mat-toolbar{background-color:var(--adf-theme-background-card-color-087)}.adf-cloud-form-fullscreen-button{position:absolute;right:70px;top:30px}.adf-cloud-form__display-name{font-size:var(--theme-subheading-2-font-size);opacity:.87;line-height:1.5;letter-spacing:-.4px;font-weight:400;font-style:normal;font-stretch:normal;max-width:400px;text-overflow:ellipsis;overflow:hidden;display:inline-block;vertical-align:middle;color:var(--adf-theme-foreground-text-color)}.adf-cloud-form__form-title{text-align:center;flex:1 1 auto}.adf-cloud-form-content-card{padding:0;height:100%;width:100%}.adf-cloud-form-content-card .adf-cloud-form-content-card-container{display:flex;flex-direction:column;height:100%}.adf-cloud-form-content-card .adf-cloud-form-content-card-container .mat-mdc-card-content{height:100%;overflow:hidden auto}.adf-cloud-form-sidebars{display:flex;flex:1 1 auto}.adf-cloud-form-sidebars adf-viewer-render{order:1;flex:1 1 auto;display:flex}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i3.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i3.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i3.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1$2.ToolbarComponent, selector: "adf-toolbar", inputs: ["title", "color"] }, { kind: "component", type: i1$2.ToolbarDividerComponent, selector: "adf-toolbar-divider" }, { kind: "component", type: i1$2.FormRendererComponent, selector: "adf-form-renderer", inputs: ["showDebugButton", "formDefinition", "readOnly"] }, { kind: "directive", type: i6$1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i1$2.FormatSpacePipe, name: "formatSpace" }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i1$2.FormStylePipe, name: "adfFormStyle" }] });
|
|
7202
7202
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormCloudComponent, decorators: [{
|
|
7203
7203
|
type: Component,
|
|
7204
|
-
args: [{ selector: 'adf-cloud-form', template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\">\n </ng-content>\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-cloud-form-container adf-cloud-form-{{displayMode?.toLowerCase() || 'inline'}}-container\" [style]=\"form.theme | adfFormStyle\">\n <div class=\"adf-cloud-form-content\"\n [cdkTrapFocus]=\"displayMode === 'fullScreen'\"\n cdkTrapFocusAutoCapture>\n\n <adf-toolbar class=\"adf-cloud-form-toolbar\" *ngIf=\"displayMode === 'fullScreen' && findDisplayConfiguration('fullScreen')?.options?.displayToolbar\">\n <div class=\"adf-cloud-form__form-title\">\n <span class=\"adf-cloud-form__display-name\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </div>\n\n <adf-toolbar-divider></adf-toolbar-divider>\n <button class=\"adf-cloud-form-close-button\"\n data-automation-id=\"adf-toolbar-right-back\"\n [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n [attr.data-automation-id]=\"'adf-cloud-form-close-button'\"\n [title]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n mat-icon-button\n title=\"{{ 'ADF_VIEWER.ACTIONS.CLOSE' | translate }}\"\n (click)=\"switchToDisplayMode()\">\n <mat-icon>close</mat-icon>\n </button>\n </adf-toolbar>\n\n <mat-card appearance=\"outlined\" [class.adf-cloud-form-content-card]=\"displayMode === 'fullScreen'\">\n <div class=\"adf-cloud-form-content-card-container\">\n <mat-card-header *ngIf=\"showTitle || showRefreshButton || showValidationIcon\">\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"displayMode !== 'fullScreen' && findDisplayConfiguration('fullScreen')\" class=\"adf-cloud-form-fullscreen-button\">\n <button mat-icon-button (click)=\"switchToDisplayMode('fullScreen')\" [attr.data-automation-id]=\"'adf-cloud-form-fullscreen-button'\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-cloud-form-reload-button\" [title]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <button mat-icon-button (click)=\"onRefreshClicked()\" [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-cloud-form-title\" [title]=\"form.taskName\"
|
|
7204
|
+
args: [{ selector: 'adf-cloud-form', template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\">\n </ng-content>\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-cloud-form-container adf-cloud-form-{{displayMode?.toLowerCase() || 'inline'}}-container\" [style]=\"form.theme | adfFormStyle\">\n <div class=\"adf-cloud-form-content\"\n [cdkTrapFocus]=\"displayMode === 'fullScreen'\"\n cdkTrapFocusAutoCapture>\n\n <adf-toolbar class=\"adf-cloud-form-toolbar\" *ngIf=\"displayMode === 'fullScreen' && findDisplayConfiguration('fullScreen')?.options?.displayToolbar\">\n <div class=\"adf-cloud-form__form-title\">\n <span class=\"adf-cloud-form__display-name\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </div>\n\n <adf-toolbar-divider></adf-toolbar-divider>\n <button class=\"adf-cloud-form-close-button\"\n data-automation-id=\"adf-toolbar-right-back\"\n [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n [attr.data-automation-id]=\"'adf-cloud-form-close-button'\"\n [title]=\"'ADF_VIEWER.ACTIONS.CLOSE' | translate\"\n mat-icon-button\n title=\"{{ 'ADF_VIEWER.ACTIONS.CLOSE' | translate }}\"\n (click)=\"switchToDisplayMode()\">\n <mat-icon>close</mat-icon>\n </button>\n </adf-toolbar>\n\n <mat-card appearance=\"outlined\" [class.adf-cloud-form-content-card]=\"displayMode === 'fullScreen'\">\n <div class=\"adf-cloud-form-content-card-container\">\n <mat-card-header *ngIf=\"showTitle || showRefreshButton || showValidationIcon\">\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"displayMode !== 'fullScreen' && findDisplayConfiguration('fullScreen')\" class=\"adf-cloud-form-fullscreen-button\">\n <button mat-icon-button (click)=\"switchToDisplayMode('fullScreen')\" [attr.data-automation-id]=\"'adf-cloud-form-fullscreen-button'\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-cloud-form-reload-button\" [title]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <button mat-icon-button (click)=\"onRefreshClicked()\" [attr.aria-label]=\"'ADF_VIEWER.ACTIONS.FULLSCREEN' | translate\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-cloud-form-title\" [title]=\"form.taskName\"\n >{{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </h4>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content class=\"adf-form-container-card-content\">\n <adf-form-renderer\n [formDefinition]=\"form\"\n [readOnly]=\"readOnly\"\n >\n </adf-form-renderer>\n </mat-card-content>\n <mat-card-actions *ngIf=\"form.hasOutcomes()\" class=\"adf-form-mat-card-actions\" align=\"end\">\n <ng-content select=\"adf-cloud-form-custom-outcomes\"></ng-content>\n <ng-container *ngFor=\"let outcome of form.outcomes\">\n <button\n *ngIf=\"outcome.isVisible\"\n [id]=\"'adf-form-'+ outcome.name | formatSpace\"\n [color]=\"getColorForOutcome(outcome.name)\"\n mat-button\n [disabled]=\"!isOutcomeButtonEnabled(outcome)\"\n [class.adf-form-hide-button]=\"!isOutcomeButtonVisible(outcome, form.readOnly)\"\n (click)=\"onOutcomeClicked(outcome)\"\n >\n {{outcome.name | translate | uppercase }}\n </button>\n </ng-container>\n </mat-card-actions>\n </div>\n </mat-card>\n </div>\n</div>\n", styles: [".adf-full-screen,.adf-cloud-form-inline-container,.adf-cloud-form-container .adf-cloud-form-content{width:100%;height:100%;background-color:var(--adf-theme-background-card-color)}.adf-cloud-form-container .adf-cloud-form-content{flex:1;flex-direction:column;display:flex}.adf-cloud-form-fullscreen-container .adf-cloud-form-content{position:fixed;top:0;left:0;z-index:100000}.adf-cloud-form-toolbar .mat-toolbar{background-color:var(--adf-theme-background-card-color-087)}.adf-cloud-form-fullscreen-button{position:absolute;right:70px;top:30px}.adf-cloud-form__display-name{font-size:var(--theme-subheading-2-font-size);opacity:.87;line-height:1.5;letter-spacing:-.4px;font-weight:400;font-style:normal;font-stretch:normal;max-width:400px;text-overflow:ellipsis;overflow:hidden;display:inline-block;vertical-align:middle;color:var(--adf-theme-foreground-text-color)}.adf-cloud-form__form-title{text-align:center;flex:1 1 auto}.adf-cloud-form-content-card{padding:0;height:100%;width:100%}.adf-cloud-form-content-card .adf-cloud-form-content-card-container{display:flex;flex-direction:column;height:100%}.adf-cloud-form-content-card .adf-cloud-form-content-card-container .mat-mdc-card-content{height:100%;overflow:hidden auto}.adf-cloud-form-sidebars{display:flex;flex:1 1 auto}.adf-cloud-form-sidebars adf-viewer-render{order:1;flex:1 1 auto;display:flex}\n"] }]
|
|
7205
7205
|
}], ctorParameters: function () { return []; }, propDecorators: { appName: [{
|
|
7206
7206
|
type: Input
|
|
7207
7207
|
}], appVersion: [{
|
|
@@ -14631,7 +14631,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
14631
14631
|
* See the License for the specific language governing permissions and
|
|
14632
14632
|
* limitations under the License.
|
|
14633
14633
|
*/
|
|
14634
|
-
const
|
|
14634
|
+
const radioButtonsSchema = {
|
|
14635
14635
|
themeProperties: [
|
|
14636
14636
|
{
|
|
14637
14637
|
name: 'FORM.FIELD_STYLE.FONT_SIZE',
|
|
@@ -14650,11 +14650,11 @@ const displayTextSchema = {
|
|
|
14650
14650
|
type: 'options',
|
|
14651
14651
|
options: [
|
|
14652
14652
|
{
|
|
14653
|
-
name: 'FORM.FIELD_STYLE.REGULAR',
|
|
14653
|
+
name: 'FORM.FIELD_STYLE.FONT_WEIGHTS.REGULAR',
|
|
14654
14654
|
value: 'normal'
|
|
14655
14655
|
},
|
|
14656
14656
|
{
|
|
14657
|
-
name: 'FORM.FIELD_STYLE.BOLD',
|
|
14657
|
+
name: 'FORM.FIELD_STYLE.FONT_WEIGHTS.BOLD',
|
|
14658
14658
|
value: 'bold'
|
|
14659
14659
|
}
|
|
14660
14660
|
],
|
|
@@ -14668,31 +14668,31 @@ const displayTextSchema = {
|
|
|
14668
14668
|
type: 'colorOptions',
|
|
14669
14669
|
options: [
|
|
14670
14670
|
{
|
|
14671
|
-
name: 'FORM.FIELD_STYLE.SYSTEM_COLOR',
|
|
14671
|
+
name: 'FORM.FIELD_STYLE.COLORS.SYSTEM_COLOR',
|
|
14672
14672
|
value: 'inherit'
|
|
14673
14673
|
},
|
|
14674
14674
|
{
|
|
14675
|
-
name: 'FORM.FIELD_STYLE.BLACK',
|
|
14675
|
+
name: 'FORM.FIELD_STYLE.COLORS.BLACK',
|
|
14676
14676
|
value: '#000000'
|
|
14677
14677
|
},
|
|
14678
14678
|
{
|
|
14679
|
-
name: 'FORM.FIELD_STYLE.GREY',
|
|
14679
|
+
name: 'FORM.FIELD_STYLE.COLORS.GREY',
|
|
14680
14680
|
value: '#9CA3AF'
|
|
14681
14681
|
},
|
|
14682
14682
|
{
|
|
14683
|
-
name: 'FORM.FIELD_STYLE.RED',
|
|
14683
|
+
name: 'FORM.FIELD_STYLE.COLORS.RED',
|
|
14684
14684
|
value: '#DA1500'
|
|
14685
14685
|
},
|
|
14686
14686
|
{
|
|
14687
|
-
name: 'FORM.FIELD_STYLE.GREEN',
|
|
14687
|
+
name: 'FORM.FIELD_STYLE.COLORS.GREEN',
|
|
14688
14688
|
value: '#04A003'
|
|
14689
14689
|
},
|
|
14690
14690
|
{
|
|
14691
|
-
name: 'FORM.FIELD_STYLE.BLUE',
|
|
14691
|
+
name: 'FORM.FIELD_STYLE.COLORS.BLUE',
|
|
14692
14692
|
value: '#0A60CE'
|
|
14693
14693
|
},
|
|
14694
14694
|
{
|
|
14695
|
-
name: 'FORM.FIELD_STYLE.YELLOW',
|
|
14695
|
+
name: 'FORM.FIELD_STYLE.COLORS.YELLOW',
|
|
14696
14696
|
value: '#FACC15'
|
|
14697
14697
|
}
|
|
14698
14698
|
],
|
|
@@ -14886,5 +14886,5 @@ const DATE_FORMAT_CLOUD = 'YYYY-MM-DD';
|
|
|
14886
14886
|
* Generated bundle index. Do not edit.
|
|
14887
14887
|
*/
|
|
14888
14888
|
|
|
14889
|
-
export { ALIAS_ROOT_FOLDER, ALIAS_USER_FOLDER, APP_NAME, AppDetailsCloudComponent, AppListCloudComponent, AppListCloudModule, ApplicationVersionModel, ApplicationVersionResponseModel, AppsProcessCloudService, AssignmentType, AttachFileCloudWidgetComponent, BaseCloudService, CancelProcessDirective, ClaimTaskCloudDirective, ClaimTaskEnum, CloudFormRenderingService, CompleteTaskDirective, ContentCloudNodeSelectorService, DATE_FORMAT_CLOUD, DATE_TIME_IDENTIFIER_REG_EXP, DEFAULT_APP_INSTANCE_ICON, DEFAULT_APP_INSTANCE_THEME, DEFAULT_OPTION, DEFAULT_TASK_PRIORITIES, DateCloudFilterType, DateCloudWidgetComponent, DescriptorCustomUIAuthFlowType, DisplayModeService, DisplayRichTextWidgetComponent, DropdownCloudWidgetComponent, EditProcessFilterCloudComponent, EditServiceTaskFilterCloudComponent, EditTaskFilterCloudComponent, FileViewerWidgetComponent, FormCloudComponent, FormCloudDisplayMode, FormCloudModule, FormCloudService, FormCustomOutcomesComponent, FormDefinitionSelectorCloudComponent, FormDefinitionSelectorCloudService, FormFieldType, GroupCloudComponent, GroupCloudModule, GroupCloudWidgetComponent, HIDE_FILTER_LIMIT, IDENTITY_GROUP_SERVICE_TOKEN, IDENTITY_USER_SERVICE_TOKEN, IdentityGroupService, IdentityUserService, InitialGroupNamePipe, LAYOUT_GRID, LAYOUT_LIST, LocalPreferenceCloudService, NotificationCloudService, PROCESS_DEFINITION_IDENTIFIER_REG_EXP, PROCESS_FILTERS_SERVICE_TOKEN, PROCESS_FILTER_ACTION_DELETE, PROCESS_FILTER_ACTION_RESTORE, PROCESS_FILTER_ACTION_SAVE, PROCESS_FILTER_ACTION_SAVE_AS, PROCESS_FILTER_ACTION_SAVE_DEFAULT, PROCESS_LISTS_PREFERENCES_SERVICE_TOKEN, PeopleCloudComponent, PeopleCloudModule, PeopleCloudWidgetComponent, PeopleModeOptions, ProcessCloudContentService, ProcessCloudModule, ProcessCloudService, ProcessDefinitionCloud, ProcessDirectiveModule, ProcessFilterCloudModel, ProcessFilterCloudService, ProcessFilterDialogCloudComponent, ProcessFiltersCloudComponent, ProcessFiltersCloudModule, ProcessHeaderCloudComponent, ProcessHeaderCloudModule, ProcessListCloudComponent, ProcessListCloudModule, ProcessListCloudPreferences, ProcessListCloudService, ProcessListCloudSortingModel, ProcessNameCloudPipe, ProcessPayloadCloud, ProcessQueryCloudRequestModel, ProcessServicesCloudModule, ProcessServicesCloudPipeModule, ProcessTaskListCloudService, PropertiesViewerWidgetComponent, RETRIEVE_METADATA_OPTION, RUNNING_STATUS, RadioButtonsCloudWidgetComponent, RichTextEditorComponent, RichTextEditorModule, ServiceTaskFilterCloudService, ServiceTaskFiltersCloudComponent, ServiceTaskListCloudComponent, ServiceTaskListCloudService, StartProcessCloudComponent, StartProcessCloudModule, StartProcessCloudService, StartTaskCloudComponent, StartTaskCloudModule, StartTaskCloudService, TASK_ASSIGNED_STATE, TASK_CANCELLED_STATE, TASK_CLAIM_PERMISSION, TASK_COMPLETED_STATE, TASK_CREATED_STATE, TASK_FILTERS_SERVICE_TOKEN, TASK_LIST_CLOUD_TOKEN, TASK_LIST_PREFERENCES_SERVICE_TOKEN, TASK_RELEASE_PERMISSION, TASK_SUSPENDED_STATE, TASK_UPDATE_PERMISSION, TASK_VIEW_PERMISSION, TaskCloudEntryModel, TaskCloudModule, TaskCloudNodePaging, TaskCloudPagingList, TaskCloudService, TaskDirectiveModule, TaskFilterCloudModel, TaskFilterCloudService, TaskFiltersCloudComponent, TaskFiltersCloudModule, TaskFormCloudComponent, TaskFormModule, TaskHeaderCloudComponent, TaskHeaderCloudModule, TaskListCloudComponent, TaskListCloudModule, TaskListCloudService, TaskListCloudSortingModel, TaskQueryCloudRequestModel, TaskStatusFilter, TaskVariableCloud, TasksListCloudPreferences, UnClaimTaskCloudDirective, UploadCloudWidgetComponent, UserPreferenceCloudService, VALID_ALIAS, VariableMapperService,
|
|
14889
|
+
export { ALIAS_ROOT_FOLDER, ALIAS_USER_FOLDER, APP_NAME, AppDetailsCloudComponent, AppListCloudComponent, AppListCloudModule, ApplicationVersionModel, ApplicationVersionResponseModel, AppsProcessCloudService, AssignmentType, AttachFileCloudWidgetComponent, BaseCloudService, CancelProcessDirective, ClaimTaskCloudDirective, ClaimTaskEnum, CloudFormRenderingService, CompleteTaskDirective, ContentCloudNodeSelectorService, DATE_FORMAT_CLOUD, DATE_TIME_IDENTIFIER_REG_EXP, DEFAULT_APP_INSTANCE_ICON, DEFAULT_APP_INSTANCE_THEME, DEFAULT_OPTION, DEFAULT_TASK_PRIORITIES, DateCloudFilterType, DateCloudWidgetComponent, DescriptorCustomUIAuthFlowType, DisplayModeService, DisplayRichTextWidgetComponent, DropdownCloudWidgetComponent, EditProcessFilterCloudComponent, EditServiceTaskFilterCloudComponent, EditTaskFilterCloudComponent, FileViewerWidgetComponent, FormCloudComponent, FormCloudDisplayMode, FormCloudModule, FormCloudService, FormCustomOutcomesComponent, FormDefinitionSelectorCloudComponent, FormDefinitionSelectorCloudService, FormFieldType, GroupCloudComponent, GroupCloudModule, GroupCloudWidgetComponent, HIDE_FILTER_LIMIT, IDENTITY_GROUP_SERVICE_TOKEN, IDENTITY_USER_SERVICE_TOKEN, IdentityGroupService, IdentityUserService, InitialGroupNamePipe, LAYOUT_GRID, LAYOUT_LIST, LocalPreferenceCloudService, NotificationCloudService, PROCESS_DEFINITION_IDENTIFIER_REG_EXP, PROCESS_FILTERS_SERVICE_TOKEN, PROCESS_FILTER_ACTION_DELETE, PROCESS_FILTER_ACTION_RESTORE, PROCESS_FILTER_ACTION_SAVE, PROCESS_FILTER_ACTION_SAVE_AS, PROCESS_FILTER_ACTION_SAVE_DEFAULT, PROCESS_LISTS_PREFERENCES_SERVICE_TOKEN, PeopleCloudComponent, PeopleCloudModule, PeopleCloudWidgetComponent, PeopleModeOptions, ProcessCloudContentService, ProcessCloudModule, ProcessCloudService, ProcessDefinitionCloud, ProcessDirectiveModule, ProcessFilterCloudModel, ProcessFilterCloudService, ProcessFilterDialogCloudComponent, ProcessFiltersCloudComponent, ProcessFiltersCloudModule, ProcessHeaderCloudComponent, ProcessHeaderCloudModule, ProcessListCloudComponent, ProcessListCloudModule, ProcessListCloudPreferences, ProcessListCloudService, ProcessListCloudSortingModel, ProcessNameCloudPipe, ProcessPayloadCloud, ProcessQueryCloudRequestModel, ProcessServicesCloudModule, ProcessServicesCloudPipeModule, ProcessTaskListCloudService, PropertiesViewerWidgetComponent, RETRIEVE_METADATA_OPTION, RUNNING_STATUS, RadioButtonsCloudWidgetComponent, RichTextEditorComponent, RichTextEditorModule, ServiceTaskFilterCloudService, ServiceTaskFiltersCloudComponent, ServiceTaskListCloudComponent, ServiceTaskListCloudService, StartProcessCloudComponent, StartProcessCloudModule, StartProcessCloudService, StartTaskCloudComponent, StartTaskCloudModule, StartTaskCloudService, TASK_ASSIGNED_STATE, TASK_CANCELLED_STATE, TASK_CLAIM_PERMISSION, TASK_COMPLETED_STATE, TASK_CREATED_STATE, TASK_FILTERS_SERVICE_TOKEN, TASK_LIST_CLOUD_TOKEN, TASK_LIST_PREFERENCES_SERVICE_TOKEN, TASK_RELEASE_PERMISSION, TASK_SUSPENDED_STATE, TASK_UPDATE_PERMISSION, TASK_VIEW_PERMISSION, TaskCloudEntryModel, TaskCloudModule, TaskCloudNodePaging, TaskCloudPagingList, TaskCloudService, TaskDirectiveModule, TaskFilterCloudModel, TaskFilterCloudService, TaskFiltersCloudComponent, TaskFiltersCloudModule, TaskFormCloudComponent, TaskFormModule, TaskHeaderCloudComponent, TaskHeaderCloudModule, TaskListCloudComponent, TaskListCloudModule, TaskListCloudService, TaskListCloudSortingModel, TaskQueryCloudRequestModel, TaskStatusFilter, TaskVariableCloud, TasksListCloudPreferences, UnClaimTaskCloudDirective, UploadCloudWidgetComponent, UserPreferenceCloudService, VALID_ALIAS, VariableMapperService, processCloudPresetsDefaultModel, radioButtonsSchema, serviceTaskPresetsCloudDefaultModel, taskPresetsCloudDefaultModel };
|
|
14890
14890
|
//# sourceMappingURL=adf-process-services-cloud.mjs.map
|