@alfresco/adf-process-services 8.1.0-14701637708 → 8.1.0-14714093103
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/app-list/apps-list.component.mjs +4 -4
- package/esm2022/lib/app-list/select-apps-dialog/select-apps-dialog.component.mjs +4 -4
- package/esm2022/lib/attachment/create-process-attachment/create-process-attachment.component.mjs +4 -4
- package/esm2022/lib/attachment/create-task-attachment/create-task-attachment.component.mjs +4 -4
- package/esm2022/lib/attachment/process-attachment-list/process-attachment-list.component.mjs +4 -4
- package/esm2022/lib/attachment/task-attachment-list/task-attachment-list.component.mjs +4 -4
- package/esm2022/lib/form/form-custom-outcomes.component.mjs +4 -4
- package/esm2022/lib/form/form-list/form-list.component.mjs +4 -4
- package/esm2022/lib/form/form.component.mjs +4 -4
- package/esm2022/lib/form/process-form-rendering.service.mjs +4 -4
- package/esm2022/lib/form/services/activiti-alfresco.service.mjs +4 -4
- package/esm2022/lib/form/services/ecm-model.service.mjs +4 -4
- package/esm2022/lib/form/services/editor.service.mjs +4 -4
- package/esm2022/lib/form/services/external-alfresco-api.service.mjs +4 -4
- package/esm2022/lib/form/services/model.service.mjs +4 -4
- package/esm2022/lib/form/services/process-content.service.mjs +4 -4
- package/esm2022/lib/form/services/process-definition.service.mjs +4 -4
- package/esm2022/lib/form/services/task-form.service.mjs +4 -4
- package/esm2022/lib/form/services/task.service.mjs +4 -4
- package/esm2022/lib/form/start-form/start-form.component.mjs +4 -4
- package/esm2022/lib/form/widgets/content-widget/attach-file-widget-dialog.component.mjs +4 -4
- package/esm2022/lib/form/widgets/content-widget/attach-file-widget-dialog.service.mjs +4 -4
- package/esm2022/lib/form/widgets/content-widget/attach-file-widget.component.mjs +4 -4
- package/esm2022/lib/form/widgets/content-widget/attach-folder-widget.component.mjs +4 -4
- package/esm2022/lib/form/widgets/document/content.widget.mjs +4 -4
- package/esm2022/lib/form/widgets/document/document.widget.mjs +4 -4
- package/esm2022/lib/form/widgets/dropdown/dropdown.widget.mjs +4 -4
- package/esm2022/lib/form/widgets/dynamic-table/dynamic-table.widget.mjs +4 -4
- package/esm2022/lib/form/widgets/dynamic-table/editors/amount/amount.editor.mjs +4 -4
- package/esm2022/lib/form/widgets/dynamic-table/editors/boolean/boolean.editor.mjs +4 -4
- package/esm2022/lib/form/widgets/dynamic-table/editors/date/date.editor.mjs +4 -4
- package/esm2022/lib/form/widgets/dynamic-table/editors/datetime/datetime.editor.mjs +4 -4
- package/esm2022/lib/form/widgets/dynamic-table/editors/dropdown/dropdown.editor.mjs +4 -4
- package/esm2022/lib/form/widgets/dynamic-table/editors/row-editor/row.editor.mjs +4 -4
- package/esm2022/lib/form/widgets/dynamic-table/editors/text/text.editor.mjs +4 -4
- package/esm2022/lib/form/widgets/file-viewer/file-viewer.widget.mjs +4 -4
- package/esm2022/lib/form/widgets/functional-group/functional-group.widget.mjs +4 -4
- package/esm2022/lib/form/widgets/people/people.widget.mjs +4 -4
- package/esm2022/lib/form/widgets/radio-buttons/radio-buttons.widget.mjs +4 -4
- package/esm2022/lib/form/widgets/typeahead/typeahead.widget.mjs +4 -4
- package/esm2022/lib/form/widgets/upload/upload.widget.mjs +4 -4
- package/esm2022/lib/people/components/people/people.component.mjs +4 -4
- package/esm2022/lib/people/components/people-list/people-list.component.mjs +4 -4
- package/esm2022/lib/people/components/people-search/people-search.component.mjs +4 -4
- package/esm2022/lib/people/components/people-search-field/people-search-field.component.mjs +4 -4
- package/esm2022/lib/people/components/people-selector/people-selector.component.mjs +4 -4
- package/esm2022/lib/process-comments/process-comments.component.mjs +4 -4
- package/esm2022/lib/process-comments/services/comment-process.service.mjs +4 -4
- package/esm2022/lib/process-list/components/process-audit/process-audit.directive.mjs +4 -4
- package/esm2022/lib/process-list/components/process-filters/process-filters.component.mjs +4 -4
- package/esm2022/lib/process-list/components/process-instance-details/process-instance-details.component.mjs +4 -4
- package/esm2022/lib/process-list/components/process-instance-header/process-instance-header.component.mjs +4 -4
- package/esm2022/lib/process-list/components/process-instance-tasks/process-instance-tasks.component.mjs +4 -4
- package/esm2022/lib/process-list/components/process-list/process-list.component.mjs +4 -4
- package/esm2022/lib/process-list/components/start-process/start-process.component.mjs +5 -5
- package/esm2022/lib/process-list/services/process-filter.service.mjs +4 -4
- package/esm2022/lib/process-list/services/process.service.mjs +4 -4
- package/esm2022/lib/process.module.mjs +5 -5
- package/esm2022/lib/services/apps-process.service.mjs +4 -4
- package/esm2022/lib/services/people-process.service.mjs +4 -4
- package/esm2022/lib/services/task-comments.service.mjs +4 -4
- package/esm2022/lib/task-comments/task-comments.component.mjs +4 -4
- package/esm2022/lib/task-list/components/attach-form/attach-form.component.mjs +4 -4
- package/esm2022/lib/task-list/components/checklist/checklist.component.mjs +4 -4
- package/esm2022/lib/task-list/components/start-task/start-task.component.mjs +4 -4
- package/esm2022/lib/task-list/components/task-details/task-details.component.mjs +4 -4
- package/esm2022/lib/task-list/components/task-filters/task-filters.component.mjs +4 -4
- package/esm2022/lib/task-list/components/task-form/claim-task.directive.mjs +4 -4
- package/esm2022/lib/task-list/components/task-form/task-form.component.mjs +4 -4
- package/esm2022/lib/task-list/components/task-form/unclaim-task.directive.mjs +4 -4
- package/esm2022/lib/task-list/components/task-header/task-header.component.mjs +4 -4
- package/esm2022/lib/task-list/components/task-list/task-list.component.mjs +4 -4
- package/esm2022/lib/task-list/components/task-standalone/task-standalone.component.mjs +4 -4
- package/esm2022/lib/task-list/services/process-upload.service.mjs +4 -4
- package/esm2022/lib/task-list/services/task-filter.service.mjs +4 -4
- package/esm2022/lib/task-list/services/task-upload.service.mjs +4 -4
- package/esm2022/lib/task-list/services/tasklist.service.mjs +4 -4
- package/fesm2022/adf-process-services.mjs +237 -237
- package/fesm2022/adf-process-services.mjs.map +1 -1
- package/lib/app-list/apps-list.component.scss +51 -23
- package/lib/attachment/process-attachment-list/process-attachment-list.component.scss +2 -2
- package/lib/attachment/task-attachment-list/task-attachment-list.component.scss +3 -3
- package/lib/form/start-form/start-form.component.scss +59 -60
- package/lib/form/widgets/content-widget/attach-file-widget-dialog.component.scss +3 -4
- package/lib/form/widgets/content-widget/attach-folder-widget.component.scss +3 -3
- package/lib/form/widgets/dropdown/dropdown.widget.scss +2 -2
- package/lib/form/widgets/people/people.widget.scss +2 -2
- package/lib/form/widgets/upload/upload.widget.scss +2 -2
- package/lib/people/components/people/people.component.scss +2 -2
- package/lib/process-list/components/start-process/start-process.component.scss +12 -12
- package/lib/styles/flex.scss +81 -0
- package/lib/styles/mat-selectors.scss +25 -0
- package/lib/task-list/components/attach-form/attach-form.component.scss +2 -2
- package/lib/task-list/components/checklist/checklist.component.scss +2 -2
- package/lib/task-list/components/start-task/start-task.component.scss +11 -11
- package/lib/task-list/components/task-details/task-details.component.scss +5 -5
- package/lib/task-list/components/task-form/task-form.component.scss +3 -3
- package/lib/task-list/components/task-header/task-header.component.scss +2 -2
- package/lib/task-list/components/task-standalone/task-standalone.component.scss +2 -2
- package/package.json +4 -4
|
@@ -337,10 +337,10 @@ export class TaskHeaderComponent {
|
|
|
337
337
|
isValidSelection(filteredProperties, cardItem) {
|
|
338
338
|
return filteredProperties ? filteredProperties.indexOf(cardItem.key) >= 0 : true;
|
|
339
339
|
}
|
|
340
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
341
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
340
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TaskHeaderComponent, deps: [{ token: i1.PeopleProcessService }, { token: i2.TranslationService }, { token: i2.AppConfigService }, { token: i2.CardViewUpdateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
341
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: TaskHeaderComponent, isStandalone: true, selector: "adf-task-header", inputs: { formName: "formName", taskDetails: "taskDetails", showClaimRelease: "showClaimRelease", readOnly: "readOnly", resetChanges: "resetChanges" }, outputs: { claim: "claim", unclaim: "unclaim" }, usesOnChanges: true, ngImport: i0, template: "<mat-card appearance=\"outlined\" *ngIf=\"taskDetails\" class=\"adf-card-container\">\n <mat-card-content>\n <adf-card-view [properties]=\"properties\" [editable]=\"!readOnly && !isCompleted()\" [displayClearAction]=\"displayDateClearAction\"/>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-controls\" *ngIf=\"showClaimRelease\">\n <button *ngIf=\"isTaskClaimedByCandidateMember()\"\n mat-button\n data-automation-id=\"header-unclaim-button\"\n id=\"unclaim-task\"\n class=\"adf-claim-controls\"\n adf-unclaim-task\n [taskId]=\"taskDetails.id\"\n (success)=\"onUnclaimTask($event)\">\n {{ 'ADF_TASK_LIST.DETAILS.BUTTON.UNCLAIM' | translate }}\n </button>\n <button *ngIf=\"isTaskClaimable()\"\n mat-button\n data-automation-id=\"header-claim-button\"\n id=\"claim-task\"\n class=\"adf-claim-controls\"\n adf-claim-task\n [taskId]=\"taskDetails.id\"\n (success)=\"onClaimTask($event)\">\n {{ 'ADF_TASK_LIST.DETAILS.BUTTON.CLAIM' | translate }}\n </button>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-controls{display:flex;justify-content:space-between}.adf-edit-controls{display:flex;justify-content:flex-end;margin-left:auto}.adf-switch-to-edit-mode,.adf-save-edit-mode{color:var(--theme-primary-color)}.adf-cancel-edit-mode,.adf-claim-controls{color:#838383}.adf-card-container{font-family:inherit}@media (max-width: 959.9px){adf-card-view .adf-property-value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i4.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i4.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i4.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: UnclaimTaskDirective, selector: "[adf-unclaim-task]", inputs: ["taskId"], outputs: ["success", "error"] }, { kind: "directive", type: ClaimTaskDirective, selector: "[adf-claim-task]", inputs: ["taskId"], outputs: ["success", "error"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }, { kind: "component", type: CardViewComponent, selector: "adf-card-view", inputs: ["properties", "editable", "displayEmpty", "displayNoneOption", "displayClearAction", "copyToClipboardAction", "useChipsForMultiValueProperty", "multiValueSeparator", "displayLabelForChips"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
342
342
|
}
|
|
343
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
343
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TaskHeaderComponent, decorators: [{
|
|
344
344
|
type: Component,
|
|
345
345
|
args: [{ selector: 'adf-task-header', standalone: true, imports: [CommonModule, MatCardModule, MatButtonModule, UnclaimTaskDirective, ClaimTaskDirective, TranslateModule, CardViewComponent], encapsulation: ViewEncapsulation.None, template: "<mat-card appearance=\"outlined\" *ngIf=\"taskDetails\" class=\"adf-card-container\">\n <mat-card-content>\n <adf-card-view [properties]=\"properties\" [editable]=\"!readOnly && !isCompleted()\" [displayClearAction]=\"displayDateClearAction\"/>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-controls\" *ngIf=\"showClaimRelease\">\n <button *ngIf=\"isTaskClaimedByCandidateMember()\"\n mat-button\n data-automation-id=\"header-unclaim-button\"\n id=\"unclaim-task\"\n class=\"adf-claim-controls\"\n adf-unclaim-task\n [taskId]=\"taskDetails.id\"\n (success)=\"onUnclaimTask($event)\">\n {{ 'ADF_TASK_LIST.DETAILS.BUTTON.UNCLAIM' | translate }}\n </button>\n <button *ngIf=\"isTaskClaimable()\"\n mat-button\n data-automation-id=\"header-claim-button\"\n id=\"claim-task\"\n class=\"adf-claim-controls\"\n adf-claim-task\n [taskId]=\"taskDetails.id\"\n (success)=\"onClaimTask($event)\">\n {{ 'ADF_TASK_LIST.DETAILS.BUTTON.CLAIM' | translate }}\n </button>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-controls{display:flex;justify-content:space-between}.adf-edit-controls{display:flex;justify-content:flex-end;margin-left:auto}.adf-switch-to-edit-mode,.adf-save-edit-mode{color:var(--theme-primary-color)}.adf-cancel-edit-mode,.adf-claim-controls{color:#838383}.adf-card-container{font-family:inherit}@media (max-width: 959.9px){adf-card-view .adf-property-value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}}\n"] }]
|
|
346
346
|
}], ctorParameters: () => [{ type: i1.PeopleProcessService }, { type: i2.TranslationService }, { type: i2.AppConfigService }, { type: i2.CardViewUpdateService }], propDecorators: { formName: [{
|
|
@@ -359,4 +359,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
359
359
|
}], unclaim: [{
|
|
360
360
|
type: Output
|
|
361
361
|
}] } });
|
|
362
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL3Byb2Nlc3Mtc2VydmljZXMvc3JjL2xpYi90YXNrLWxpc3QvY29tcG9uZW50cy90YXNrLWhlYWRlci90YXNrLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy9zcmMvbGliL3Rhc2stbGlzdC9jb21wb25lbnRzL3Rhc2staGVhZGVyL3Rhc2staGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hKLE9BQU8sRUFDSCxnQkFBZ0IsRUFFaEIsaUJBQWlCLEVBQ2pCLHFCQUFxQixFQUNyQixvQkFBb0IsRUFDcEIsMkJBQTJCLEVBQzNCLG9CQUFvQixFQUNwQix1QkFBdUIsRUFFdkIscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQixrQkFBa0IsRUFDckIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN2RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7OztBQVVoRSxNQUFNLE9BQU8sbUJBQW1CO0lBNEM1QixZQUNZLG9CQUEwQyxFQUMxQyxrQkFBc0MsRUFDN0IsU0FBMkIsRUFDM0IscUJBQTRDO1FBSHJELHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUM3QixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBL0NqRSw0QkFBNEI7UUFFNUIsYUFBUSxHQUFXLElBQUksQ0FBQztRQU14QixtREFBbUQ7UUFFbkQscUJBQWdCLEdBQUcsSUFBSSxDQUFDO1FBRXhCOztXQUVHO1FBRUgsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVqQjs7V0FFRztRQUVILGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVuQyx3Q0FBd0M7UUFFeEMsVUFBSyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRW5ELHdEQUF3RDtRQUV4RCxZQUFPLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFFckQsZUFBVSxHQUFVLEVBQUUsQ0FBQztRQUN2QiwyQkFBc0IsR0FBRyxLQUFLLENBQUM7UUFLZCxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFxQyxFQUFFLENBQUMsQ0FBQztRQUM3RixXQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUUxQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBUTdDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsOEJBQThCLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLDhCQUE4QixDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsb0JBQW9CO2FBQ3BCLGtCQUFrQixFQUFFO2FBQ3BCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDekMsU0FBUyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDZixJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDMUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxDQUFDO1FBRVAsSUFBSSxDQUFDLHFCQUFxQixDQUFDLHVCQUF1QjthQUM3QyxJQUFJLENBQ0QsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUMvQixZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUN0QyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQ3RDO2FBQ0EsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7UUFFUCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3ZFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsTUFBTSxpQkFBaUIsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakQsSUFDSSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsRUFBRSxLQUFLLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxFQUFFO1lBQzVFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsRUFBRSxLQUFLLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUNsRyxDQUFDO1lBQ0MsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3BCLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3ZCLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzNDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3BFLE1BQU0sa0JBQWtCLEdBQWEsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsb0NBQW9DLENBQUMsQ0FBQztZQUM5RixJQUFJLENBQUMsVUFBVSxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDbEgsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDUCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDL0MsSUFBSSxRQUFRLENBQUMsR0FBRyxLQUFLLFVBQVUsSUFBSSxRQUFRLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDbEUsT0FBTyxJQUFJLHFCQUFxQixDQUFDO29CQUM3QixLQUFLLEVBQUUsb0NBQW9DO29CQUMzQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVE7b0JBQ3BCLEdBQUcsRUFBRSxVQUFVO29CQUNmLE9BQU8sRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLDRDQUE0QyxDQUFDO29CQUN0RixTQUFTLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRTtvQkFDakMsSUFBSSxFQUFFLFFBQVE7aUJBQ2pCLENBQUMsQ0FBQztZQUNQLENBQUM7aUJBQU0sQ0FBQztnQkFDSixPQUFPLFFBQVEsQ0FBQztZQUNwQixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLGFBQWE7UUFDakIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUMvRSxPQUFPLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkcsQ0FBQztRQUNELE9BQU8sSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVc7UUFDUCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxZQUFZLENBQUMsTUFBYztRQUN2QixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2hGLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsdUJBQXVCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsaUJBQWlCO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLHVCQUF1QixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsc0JBQXNCLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBQztJQUMxSSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGVBQWU7UUFDWCxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsOEJBQThCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksSUFBSSxDQUFDLHVCQUF1QixFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDN0YsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxhQUFhO1FBQ1QsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNyRSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxNQUFjO1FBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsYUFBYSxDQUFDLE1BQWM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxXQUFXO1FBQ1AsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxlQUFlO1FBQ1gsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGVBQWU7UUFDWCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM5RSxDQUFDO0lBRU8sUUFBUSxDQUFDLFdBQW1CO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQzFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ1YsS0FBSzthQUNBLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsYUFBYSxDQUFDO2FBQ2hELEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLFNBQVMsR0FBRyxFQUFFLEVBQUUsUUFBUSxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzdDLEdBQUcsRUFBRSxFQUFFO1lBQ1AsS0FBSyxFQUFFLEdBQUcsU0FBUyxJQUFJLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRTtTQUMzQyxDQUFDLENBQUMsQ0FDVixDQUNKLENBQUM7SUFDTixDQUFDO0lBRU8scUJBQXFCLENBQUMsYUFBa0M7UUFDNUQsT0FBTztZQUNILElBQUksdUJBQXVCLENBQUM7Z0JBQ3hCLEtBQUssRUFBRSxtQ0FBbUM7Z0JBQzFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRTtvQkFDakMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFO29CQUNoQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQywyQ0FBMkMsQ0FBQztnQkFDbEYsR0FBRyxFQUFFLFVBQVU7Z0JBQ2YsUUFBUSxFQUFFLElBQUksQ0FBQyx1QkFBdUIsRUFBRTtnQkFDeEMsaUJBQWlCLEVBQUUsSUFBSTtnQkFDdkIsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNO2FBQ3hCLENBQUM7WUFDRixJQUFJLHFCQUFxQixDQUFDO2dCQUN0QixLQUFLLEVBQUUsaUNBQWlDO2dCQUN4QyxLQUFLLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRTtnQkFDM0IsR0FBRyxFQUFFLFFBQVE7YUFDaEIsQ0FBQztZQUNGLElBQUksb0JBQW9CLENBQUM7Z0JBQ3JCLEtBQUssRUFBRSxtQ0FBbUM7Z0JBQzFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVE7Z0JBQ2hDLEdBQUcsRUFBRSxVQUFVO2dCQUNmLFFBQVEsRUFBRSxJQUFJO2dCQUNkLFVBQVUsRUFBRSxDQUFDLElBQUksMkJBQTJCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQ3ZELENBQUM7WUFDRixJQUFJLHFCQUFxQixDQUFDO2dCQUN0QixLQUFLLEVBQUUsbUNBQW1DO2dCQUMxQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPO2dCQUMvQixHQUFHLEVBQUUsU0FBUztnQkFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQywyQ0FBMkMsQ0FBQztnQkFDckYsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVO2dCQUN2QixNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVU7YUFDMUIsQ0FBQztZQUNGLElBQUkscUJBQXFCLENBQUM7Z0JBQ3RCLEtBQUssRUFBRSxtQ0FBbUM7Z0JBQzFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVE7Z0JBQ2hDLEdBQUcsRUFBRSxVQUFVO2dCQUNmLE9BQU8sRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLDJDQUEyQyxDQUFDO2FBQ3hGLENBQUM7WUFDRixJQUFJLG9CQUFvQixDQUFDO2dCQUNyQixLQUFLLEVBQUUsc0NBQXNDO2dCQUM3QyxLQUFLLEVBQUUsYUFBYTtnQkFDcEIsR0FBRyxFQUFFLFlBQVk7Z0JBQ2pCLE9BQU8sRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLDhDQUE4QyxDQUFDO2dCQUN4RixTQUFTLEVBQUUsSUFBSTthQUNsQixDQUFDO1lBQ0YsSUFBSSxxQkFBcUIsQ0FBQztnQkFDdEIsS0FBSyxFQUFFLGtDQUFrQztnQkFDekMsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTztnQkFDL0IsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVO2dCQUN2QixNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVU7YUFDMUIsQ0FBQztZQUNGLElBQUkscUJBQXFCLENBQUM7Z0JBQ3RCLEtBQUssRUFBRSxtQ0FBbUM7Z0JBQzFDLEtBQUssRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFO2dCQUM3QixHQUFHLEVBQUUsVUFBVTthQUNsQixDQUFDO1lBQ0YsSUFBSSxxQkFBcUIsQ0FBQztnQkFDdEIsS0FBSyxFQUFFLHlDQUF5QztnQkFDaEQsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWTtnQkFDcEMsR0FBRyxFQUFFLGNBQWM7YUFDdEIsQ0FBQztZQUNGLElBQUkscUJBQXFCLENBQUM7Z0JBQ3RCLEtBQUssRUFBRSxtQ0FBbUM7Z0JBQzFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU87Z0JBQy9CLEdBQUcsRUFBRSxTQUFTO2dCQUNkLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVTtnQkFDdkIsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVO2FBQzFCLENBQUM7WUFDRixJQUFJLHFCQUFxQixDQUFDO2dCQUN0QixLQUFLLEVBQUUsNkJBQTZCO2dCQUNwQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFO2dCQUMxQixHQUFHLEVBQUUsSUFBSTthQUNaLENBQUM7WUFDRixJQUFJLHFCQUFxQixDQUFDO2dCQUN0QixLQUFLLEVBQUUsc0NBQXNDO2dCQUM3QyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXO2dCQUNuQyxHQUFHLEVBQUUsYUFBYTtnQkFDbEIsT0FBTyxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsOENBQThDLENBQUM7Z0JBQ3hGLFNBQVMsRUFBRSxJQUFJO2dCQUNmLFFBQVEsRUFBRSxJQUFJO2dCQUNkLFVBQVUsRUFBRSxDQUFDLElBQUksd0JBQXdCLEVBQUUsQ0FBQzthQUMvQyxDQUFDO1lBQ0YsSUFBSSxxQkFBcUIsQ0FBQztnQkFDdEIsS0FBSyxFQUFFLG9DQUFvQztnQkFDM0MsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRO2dCQUNwQixHQUFHLEVBQUUsVUFBVTtnQkFDZixPQUFPLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyw0Q0FBNEMsQ0FBQztnQkFDdEYsU0FBUyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQ2pDLElBQUksRUFBRSxRQUFRO2FBQ2pCLENBQUM7U0FDTCxDQUFDO0lBQ04sQ0FBQztJQUVPLGdCQUFnQixDQUFDLGtCQUE0QixFQUFFLFFBQStCO1FBQ2xGLE9BQU8sa0JBQWtCLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDckYsQ0FBQzsrR0FuV1EsbUJBQW1CO21HQUFuQixtQkFBbUIseVNDckRoQywwc0NBNEJBLHFlRG9CYyxZQUFZLGtJQUFFLGFBQWEseVZBQUUsZUFBZSw0TkFBRSxvQkFBb0Isa0hBQUUsa0JBQWtCLCtHQUFFLGVBQWUsNEZBQUUsaUJBQWlCOzs0RkFLM0gsbUJBQW1CO2tCQVIvQixTQUFTOytCQUNJLGlCQUFpQixjQUNmLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxpQkFBaUIsQ0FBQyxpQkFHdEgsaUJBQWlCLENBQUMsSUFBSTs2TEFLckMsUUFBUTtzQkFEUCxLQUFLO2dCQUtOLFdBQVc7c0JBRFYsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBS3pCLGdCQUFnQjtzQkFEZixLQUFLO2dCQU9OLFFBQVE7c0JBRFAsS0FBSztnQkFPTixZQUFZO3NCQURYLEtBQUs7Z0JBS04sS0FBSztzQkFESixNQUFNO2dCQUtQLE9BQU87c0JBRE4sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBEZXN0cm95UmVmLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFwcENvbmZpZ1NlcnZpY2UsXG4gICAgQ2FyZFZpZXdCYXNlSXRlbU1vZGVsLFxuICAgIENhcmRWaWV3Q29tcG9uZW50LFxuICAgIENhcmRWaWV3RGF0ZUl0ZW1Nb2RlbCxcbiAgICBDYXJkVmlld0ludEl0ZW1Nb2RlbCxcbiAgICBDYXJkVmlld0l0ZW1MZW5ndGhWYWxpZGF0b3IsXG4gICAgQ2FyZFZpZXdNYXBJdGVtTW9kZWwsXG4gICAgQ2FyZFZpZXdTZWxlY3RJdGVtTW9kZWwsXG4gICAgQ2FyZFZpZXdTZWxlY3RJdGVtT3B0aW9uLFxuICAgIENhcmRWaWV3VGV4dEl0ZW1Nb2RlbCxcbiAgICBDYXJkVmlld1VwZGF0ZVNlcnZpY2UsXG4gICAgVHJhbnNsYXRpb25TZXJ2aWNlXG59IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBQZW9wbGVQcm9jZXNzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3Blb3BsZS1wcm9jZXNzLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGFza0Rlc2NyaXB0aW9uVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vdmFsaWRhdG9ycy90YXNrLWRlc2NyaXB0aW9uLnZhbGlkYXRvcic7XG5pbXBvcnQgeyBUYXNrUmVwcmVzZW50YXRpb24gfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2FyZCc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgVW5jbGFpbVRhc2tEaXJlY3RpdmUgfSBmcm9tICcuLi90YXNrLWZvcm0vdW5jbGFpbS10YXNrLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDbGFpbVRhc2tEaXJlY3RpdmUgfSBmcm9tICcuLi90YXNrLWZvcm0vY2xhaW0tdGFzay5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhZGYtdGFzay1oZWFkZXInLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0Q2FyZE1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBVbmNsYWltVGFza0RpcmVjdGl2ZSwgQ2xhaW1UYXNrRGlyZWN0aXZlLCBUcmFuc2xhdGVNb2R1bGUsIENhcmRWaWV3Q29tcG9uZW50XSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGFzay1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Rhc2staGVhZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBUYXNrSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuICAgIC8qKiBUaGUgbmFtZSBvZiB0aGUgZm9ybS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGZvcm1OYW1lOiBzdHJpbmcgPSBudWxsO1xuXG4gICAgLyoqIChyZXF1aXJlZCkgRGV0YWlscyByZWxhdGVkIHRvIHRoZSB0YXNrLiAqL1xuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gICAgdGFza0RldGFpbHM6IFRhc2tSZXByZXNlbnRhdGlvbjtcblxuICAgIC8qKiBUb2dnbGVzIGRpc3BsYXkgb2YgdGhlIGNsYWltL3JlbGVhc2UgYnV0dG9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd0NsYWltUmVsZWFzZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiAob3B0aW9uYWwpIFRoaXMgZmxhZyBzZXRzIHJlYWQtb25seSBtb2RlLCBwcmV2ZW50aW5nIGNoYW5nZXMuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICByZWFkT25seSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogIFJlZnJlc2hlcyB0aGUgY2FyZCBkYXRhIHdoZW4gYW4gZXZlbnQgZW1pdHRlZC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHJlc2V0Q2hhbmdlcyA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHRoZSB0YXNrIGlzIGNsYWltZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgY2xhaW06IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHRoZSB0YXNrIGlzIHVuY2xhaW1lZCAoaWUsIHJlcXVldWUpLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHVuY2xhaW06IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBwcm9wZXJ0aWVzOiBhbnlbXSA9IFtdO1xuICAgIGRpc3BsYXlEYXRlQ2xlYXJBY3Rpb24gPSBmYWxzZTtcbiAgICBkYXRlRm9ybWF0OiBzdHJpbmc7XG4gICAgZGF0ZUxvY2FsZTogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBjdXJyZW50VXNlcklkOiBudW1iZXI7XG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2Vyc1N1YmplY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDYXJkVmlld1NlbGVjdEl0ZW1PcHRpb248bnVtYmVyPltdPihbXSk7XG4gICAgdXNlcnMkID0gdGhpcy51c2Vyc1N1YmplY3QkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcGVvcGxlUHJvY2Vzc1NlcnZpY2U6IFBlb3BsZVByb2Nlc3NTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGFwcENvbmZpZzogQXBwQ29uZmlnU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjYXJkVmlld1VwZGF0ZVNlcnZpY2U6IENhcmRWaWV3VXBkYXRlU2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLmRhdGVGb3JtYXQgPSB0aGlzLmFwcENvbmZpZy5nZXQoJ2RhdGVWYWx1ZXMuZGVmYXVsdERhdGVGb3JtYXQnKTtcbiAgICAgICAgdGhpcy5kYXRlTG9jYWxlID0gdGhpcy5hcHBDb25maWcuZ2V0KCdkYXRlVmFsdWVzLmRlZmF1bHREYXRlTG9jYWxlJyk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMucGVvcGxlUHJvY2Vzc1NlcnZpY2VcbiAgICAgICAgICAgIC5nZXRDdXJyZW50VXNlckluZm8oKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRVc2VySWQgPSByZXMgPyArcmVzLmlkIDogbnVsbDtcbiAgICAgICAgICAgICAgICB0aGlzLmluaXREYXRhKCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmNhcmRWaWV3VXBkYXRlU2VydmljZS5hdXRvY29tcGxldGVJbnB1dFZhbHVlJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKChyZXMpID0+IHJlcy5sZW5ndGggPiAwKSxcbiAgICAgICAgICAgICAgICBkZWJvdW5jZVRpbWUoMzAwKSxcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKHJlcykgPT4gdGhpcy5nZXRVc2VycyhyZXMpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgodXNlcnMpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXJzU3ViamVjdCQubmV4dCh1c2Vycyk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnJlc2V0Q2hhbmdlcy5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pbml0RGF0YSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGNvbnN0IHRhc2tEZXRhaWxzQ2hhbmdlID0gY2hhbmdlc1sndGFza0RldGFpbHMnXTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGFza0RldGFpbHNDaGFuZ2U/LmN1cnJlbnRWYWx1ZT8uaWQgIT09IHRhc2tEZXRhaWxzQ2hhbmdlPy5wcmV2aW91c1ZhbHVlPy5pZCB8fFxuICAgICAgICAgICAgdGFza0RldGFpbHNDaGFuZ2U/LmN1cnJlbnRWYWx1ZT8uYXNzaWduZWU/LmlkICE9PSB0YXNrRGV0YWlsc0NoYW5nZT8ucHJldmlvdXNWYWx1ZT8uYXNzaWduZWU/LmlkXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5pbml0RGF0YSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoRGF0YSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVmcmVzaCB0aGUgY2FyZCBkYXRhXG4gICAgICovXG4gICAgaW5pdERhdGEoKSB7XG4gICAgICAgIGlmICh0aGlzLnRhc2tEZXRhaWxzKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJlbnRJbmZvTWFwID0gdGhpcy5nZXRQYXJlbnRJbmZvKCk7XG4gICAgICAgICAgICBjb25zdCBkZWZhdWx0UHJvcGVydGllcyA9IHRoaXMuaW5pdERlZmF1bHRQcm9wZXJ0aWVzKHBhcmVudEluZm9NYXApO1xuICAgICAgICAgICAgY29uc3QgZmlsdGVyZWRQcm9wZXJ0aWVzOiBzdHJpbmdbXSA9IHRoaXMuYXBwQ29uZmlnLmdldCgnYWRmLXRhc2staGVhZGVyLnByZXNldHMucHJvcGVydGllcycpO1xuICAgICAgICAgICAgdGhpcy5wcm9wZXJ0aWVzID0gZGVmYXVsdFByb3BlcnRpZXMuZmlsdGVyKChjYXJkSXRlbSkgPT4gdGhpcy5pc1ZhbGlkU2VsZWN0aW9uKGZpbHRlcmVkUHJvcGVydGllcywgY2FyZEl0ZW0pKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlZnJlc2ggdGhlIGNhcmQgZGF0YVxuICAgICAqL1xuICAgIHJlZnJlc2hEYXRhKCkge1xuICAgICAgICB0aGlzLnByb3BlcnRpZXMgPSB0aGlzLnByb3BlcnRpZXMubWFwKChjYXJkSXRlbSkgPT4ge1xuICAgICAgICAgICAgaWYgKGNhcmRJdGVtLmtleSA9PT0gJ2Zvcm1OYW1lJyAmJiBjYXJkSXRlbS52YWx1ZSAhPT0gdGhpcy5mb3JtTmFtZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ2FyZFZpZXdUZXh0SXRlbU1vZGVsKHtcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuRk9STV9OQU1FJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRoaXMuZm9ybU5hbWUsXG4gICAgICAgICAgICAgICAgICAgIGtleTogJ2Zvcm1OYW1lJyxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDogdGhpcy50cmFuc2xhdGlvblNlcnZpY2UuaW5zdGFudCgnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkZPUk1fTkFNRV9ERUZBVUxUJyksXG4gICAgICAgICAgICAgICAgICAgIGNsaWNrYWJsZTogdGhpcy5pc0Zvcm1DbGlja2FibGUoKSxcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2NyZWF0ZSdcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhcmRJdGVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHByb2Nlc3MgcGFyZW50IGluZm9ybWF0aW9uXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBhIG1hcCBvZiBwcm9jZXNzIGluc3RhbmNlIGFuZCBkZWZpbml0aW9uXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRQYXJlbnRJbmZvKCk6IE1hcDxzdHJpbmcsIHN0cmluZz4ge1xuICAgICAgICBpZiAodGhpcy50YXNrRGV0YWlscy5wcm9jZXNzSW5zdGFuY2VJZCAmJiB0aGlzLnRhc2tEZXRhaWxzLnByb2Nlc3NEZWZpbml0aW9uTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBNYXAoW1t0aGlzLnRhc2tEZXRhaWxzLnByb2Nlc3NJbnN0YW5jZUlkLCB0aGlzLnRhc2tEZXRhaWxzLnByb2Nlc3NEZWZpbml0aW9uTmFtZV1dKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV3IE1hcCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIHRoZSB0YXNrIGhhcyBhbiBhc3NpZ25lZVxuICAgICAqXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB0YXNrIGhhcyBhbiBhc3NpZ25lZSwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBoYXNBc3NpZ25lZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy50YXNrRGV0YWlscy5hc3NpZ25lZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiB0aGUgdGFzayBpcyBhc3NpZ25lZCB0byBhIHVzZXJcbiAgICAgKlxuICAgICAqIEBwYXJhbSB1c2VySWQgdGhlIGlkIG9mIHRoZSB1c2VyIHRvIGNoZWNrXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB0YXNrIGFzc2lnbmVkIHRvIGEgdXNlciwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBpc0Fzc2lnbmVkVG8odXNlcklkOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzQXNzaWduZWUoKSA/IHRoaXMudGFza0RldGFpbHMuYXNzaWduZWUuaWQgPT09IHVzZXJJZCA6IGZhbHNlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIHRoZSB0YXNrIGlzIGFzc2lnbmVkIHRvIHRoZSBjdXJyZW50IHVzZXJcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgdGFzayBhc3NpZ25lZCB0byBjdXJyZW50IHVzZXIsIG90aGVyd2lzZSBgZmFsc2VgXG4gICAgICovXG4gICAgaXNBc3NpZ25lZFRvQ3VycmVudFVzZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc0Fzc2lnbmVlKCkgJiYgdGhpcy5pc0Fzc2lnbmVkVG8odGhpcy5jdXJyZW50VXNlcklkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiB0aGUgdXNlciBpcyBhIGNhbmRpZGF0ZSBtZW1iZXJcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB1c2VyIGlzIGEgY2FuZGlkYXRlIG1lbWJlciwgb3RoZXJ3aXNlIGZhbHNlXG4gICAgICovXG4gICAgaXNDYW5kaWRhdGVNZW1iZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhc2tEZXRhaWxzLm1hbmFnZXJPZkNhbmRpZGF0ZUdyb3VwIHx8IHRoaXMudGFza0RldGFpbHMubWVtYmVyT2ZDYW5kaWRhdGVHcm91cCB8fCB0aGlzLnRhc2tEZXRhaWxzLm1lbWJlck9mQ2FuZGlkYXRlVXNlcnM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgdGhlIHRhc2sgaXMgY2xhaW1hYmxlXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGFzayBjYW4gYmUgY2xhaW1lZCwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBpc1Rhc2tDbGFpbWFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5oYXNBc3NpZ25lZSgpICYmIHRoaXMuaXNDYW5kaWRhdGVNZW1iZXIoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gdHJ1ZSBpZiB0aGUgdGFzayBjbGFpbWVkIGJ5IGNhbmRpZGF0ZSBtZW1iZXIuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHRhc2sgaXMgY2xhaW1lZCwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBpc1Rhc2tDbGFpbWVkQnlDYW5kaWRhdGVNZW1iZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzQ2FuZGlkYXRlTWVtYmVyKCkgJiYgdGhpcy5pc0Fzc2lnbmVkVG9DdXJyZW50VXNlcigpICYmICF0aGlzLmlzQ29tcGxldGVkKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHRoZSBzdGF0dXMgb2YgdGhlIHRhc2tcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIGBDb21wbGV0ZWRgIG9yIGBSdW5uaW5nYFxuICAgICAqL1xuICAgIGdldFRhc2tTdGF0dXMoKTogJ0NvbXBsZXRlZCcgfCAnUnVubmluZycge1xuICAgICAgICByZXR1cm4gdGhpcy50YXNrRGV0YWlscz8uaXNDb21wbGV0ZWQoKSA/ICdDb21wbGV0ZWQnIDogJ1J1bm5pbmcnO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVtaXQgdGhlIGNsYWltIGV2ZW50XG4gICAgICpcbiAgICAgKiBAcGFyYW0gdGFza0lkIHRoZSBpZCBvZiB0aGUgdGFzayB0byBjbGFpbVxuICAgICAqL1xuICAgIG9uQ2xhaW1UYXNrKHRhc2tJZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuY2xhaW0uZW1pdCh0YXNrSWQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVtaXQgdGhlIHVuY2xhaW0gZXZlbnRcbiAgICAgKlxuICAgICAqIEBwYXJhbSB0YXNrSWQgdGhlIGlkIG9mIHRoZSB0YXNrIHRvIHVuY2xhaW1cbiAgICAgKi9cbiAgICBvblVuY2xhaW1UYXNrKHRhc2tJZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMudW5jbGFpbS5lbWl0KHRhc2tJZCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgdGFzayBjb21wbGV0aW9uIHN0YXRlXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHRhc2sgaXMgY29tcGxldGVkLCBvdGhlcndpc2UgYGZhbHNlYFxuICAgICAqL1xuICAgIGlzQ29tcGxldGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnRhc2tEZXRhaWxzPy5lbmREYXRlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIHRoZSBmb3JtIGlzIGNsaWNrYWJsZVxuICAgICAqXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBmb3JtIGlzIGNsaWNrYWJsZSwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBpc0Zvcm1DbGlja2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuZm9ybU5hbWUgJiYgIXRoaXMuaXNDb21wbGV0ZWQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHRhc2sgZHVyYXRpb25cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHRoZSB0YXNrIGR1cmF0aW9uIGluIG1pbGxpc2Vjb25kc1xuICAgICAqL1xuICAgIGdldFRhc2tEdXJhdGlvbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy50YXNrRGV0YWlscy5kdXJhdGlvbiA/IGAke3RoaXMudGFza0RldGFpbHMuZHVyYXRpb259IG1zYCA6ICcnO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VXNlcnMoc2VhcmNoUXVlcnk6IHN0cmluZyk6IE9ic2VydmFibGU8Q2FyZFZpZXdTZWxlY3RJdGVtT3B0aW9uPG51bWJlcj5bXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wZW9wbGVQcm9jZXNzU2VydmljZS5nZXRXb3JrZmxvd1VzZXJzKHVuZGVmaW5lZCwgc2VhcmNoUXVlcnkpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHVzZXJzKSA9PlxuICAgICAgICAgICAgICAgIHVzZXJzXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoKHVzZXIpID0+IHVzZXIuaWQgIT09IHRoaXMuY3VycmVudFVzZXJJZClcbiAgICAgICAgICAgICAgICAgICAgLm1hcCgoeyBpZCwgZmlyc3ROYW1lID0gJycsIGxhc3ROYW1lID0gJycgfSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleTogaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogYCR7Zmlyc3ROYW1lfSAke2xhc3ROYW1lfWAudHJpbSgpXG4gICAgICAgICAgICAgICAgICAgIH0pKVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERlZmF1bHRQcm9wZXJ0aWVzKHBhcmVudEluZm9NYXA6IE1hcDxzdHJpbmcsIHN0cmluZz4pOiBhbnlbXSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdTZWxlY3RJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkFTU0lHTkVFJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5nZXRGdWxsTmFtZSgpXG4gICAgICAgICAgICAgICAgICAgID8gdGhpcy50YXNrRGV0YWlscy5nZXRGdWxsTmFtZSgpXG4gICAgICAgICAgICAgICAgICAgIDogdGhpcy50cmFuc2xhdGlvblNlcnZpY2UuaW5zdGFudCgnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkFTU0lHTkVFX0RFRkFVTFQnKSxcbiAgICAgICAgICAgICAgICBrZXk6ICdhc3NpZ25lZScsXG4gICAgICAgICAgICAgICAgZWRpdGFibGU6IHRoaXMuaXNBc3NpZ25lZFRvQ3VycmVudFVzZXIoKSxcbiAgICAgICAgICAgICAgICBhdXRvY29tcGxldGVCYXNlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpY29uOiAnY3JlYXRlJyxcbiAgICAgICAgICAgICAgICBvcHRpb25zJDogdGhpcy51c2VycyRcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENhcmRWaWV3VGV4dEl0ZW1Nb2RlbCh7XG4gICAgICAgICAgICAgICAgbGFiZWw6ICdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuU1RBVFVTJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy5nZXRUYXNrU3RhdHVzKCksXG4gICAgICAgICAgICAgICAga2V5OiAnc3RhdHVzJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdJbnRJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLlBSSU9SSVRZJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5wcmlvcml0eSxcbiAgICAgICAgICAgICAgICBrZXk6ICdwcmlvcml0eScsXG4gICAgICAgICAgICAgICAgZWRpdGFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgdmFsaWRhdG9yczogW25ldyBDYXJkVmlld0l0ZW1MZW5ndGhWYWxpZGF0b3IoMSwgMTApXVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdEYXRlSXRlbU1vZGVsKHtcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0FERl9UQVNLX0xJU1QuUFJPUEVSVElFUy5EVUVfREFURScsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHRoaXMudGFza0RldGFpbHMuZHVlRGF0ZSxcbiAgICAgICAgICAgICAgICBrZXk6ICdkdWVEYXRlJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KCdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuRFVFX0RBVEVfREVGQVVMVCcpLFxuICAgICAgICAgICAgICAgIGVkaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGZvcm1hdDogdGhpcy5kYXRlRm9ybWF0LFxuICAgICAgICAgICAgICAgIGxvY2FsZTogdGhpcy5kYXRlTG9jYWxlXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDYXJkVmlld1RleHRJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkNBVEVHT1JZJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5jYXRlZ29yeSxcbiAgICAgICAgICAgICAgICBrZXk6ICdjYXRlZ29yeScsXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogdGhpcy50cmFuc2xhdGlvblNlcnZpY2UuaW5zdGFudCgnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkNBVEVHT1JZX0RFRkFVTFQnKVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdNYXBJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLlBBUkVOVF9OQU1FJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogcGFyZW50SW5mb01hcCxcbiAgICAgICAgICAgICAgICBrZXk6ICdwYXJlbnROYW1lJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KCdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuUEFSRU5UX05BTUVfREVGQVVMVCcpLFxuICAgICAgICAgICAgICAgIGNsaWNrYWJsZTogdHJ1ZVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdEYXRlSXRlbU1vZGVsKHtcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0FERl9UQVNLX0xJU1QuUFJPUEVSVElFUy5DUkVBVEVEJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5jcmVhdGVkLFxuICAgICAgICAgICAgICAgIGtleTogJ2NyZWF0ZWQnLFxuICAgICAgICAgICAgICAgIGZvcm1hdDogdGhpcy5kYXRlRm9ybWF0LFxuICAgICAgICAgICAgICAgIGxvY2FsZTogdGhpcy5kYXRlTG9jYWxlXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDYXJkVmlld1RleHRJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkRVUkFUSU9OJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy5nZXRUYXNrRHVyYXRpb24oKSxcbiAgICAgICAgICAgICAgICBrZXk6ICdkdXJhdGlvbidcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENhcmRWaWV3VGV4dEl0ZW1Nb2RlbCh7XG4gICAgICAgICAgICAgICAgbGFiZWw6ICdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuUEFSRU5UX1RBU0tfSUQnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiB0aGlzLnRhc2tEZXRhaWxzLnBhcmVudFRhc2tJZCxcbiAgICAgICAgICAgICAgICBrZXk6ICdwYXJlbnRUYXNrSWQnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDYXJkVmlld0RhdGVJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkVORF9EQVRFJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5lbmREYXRlLFxuICAgICAgICAgICAgICAgIGtleTogJ2VuZERhdGUnLFxuICAgICAgICAgICAgICAgIGZvcm1hdDogdGhpcy5kYXRlRm9ybWF0LFxuICAgICAgICAgICAgICAgIGxvY2FsZTogdGhpcy5kYXRlTG9jYWxlXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDYXJkVmlld1RleHRJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLklEJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5pZCxcbiAgICAgICAgICAgICAgICBrZXk6ICdpZCdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENhcmRWaWV3VGV4dEl0ZW1Nb2RlbCh7XG4gICAgICAgICAgICAgICAgbGFiZWw6ICdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuREVTQ1JJUFRJT04nLFxuICAgICAgICAgICAgICAgIHZhbHVlOiB0aGlzLnRhc2tEZXRhaWxzLmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIGtleTogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KCdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuREVTQ1JJUFRJT05fREVGQVVMVCcpLFxuICAgICAgICAgICAgICAgIG11bHRpbGluZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBlZGl0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICB2YWxpZGF0b3JzOiBbbmV3IFRhc2tEZXNjcmlwdGlvblZhbGlkYXRvcigpXVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdUZXh0SXRlbU1vZGVsKHtcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0FERl9UQVNLX0xJU1QuUFJPUEVSVElFUy5GT1JNX05BTUUnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiB0aGlzLmZvcm1OYW1lLFxuICAgICAgICAgICAgICAgIGtleTogJ2Zvcm1OYW1lJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KCdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuRk9STV9OQU1FX0RFRkFVTFQnKSxcbiAgICAgICAgICAgICAgICBjbGlja2FibGU6IHRoaXMuaXNGb3JtQ2xpY2thYmxlKCksXG4gICAgICAgICAgICAgICAgaWNvbjogJ2NyZWF0ZSdcbiAgICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc1ZhbGlkU2VsZWN0aW9uKGZpbHRlcmVkUHJvcGVydGllczogc3RyaW5nW10sIGNhcmRJdGVtOiBDYXJkVmlld0Jhc2VJdGVtTW9kZWwpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGZpbHRlcmVkUHJvcGVydGllcyA/IGZpbHRlcmVkUHJvcGVydGllcy5pbmRleE9mKGNhcmRJdGVtLmtleSkgPj0gMCA6IHRydWU7XG4gICAgfVxufVxuIiwiPG1hdC1jYXJkIGFwcGVhcmFuY2U9XCJvdXRsaW5lZFwiICpuZ0lmPVwidGFza0RldGFpbHNcIiBjbGFzcz1cImFkZi1jYXJkLWNvbnRhaW5lclwiPlxuICAgIDxtYXQtY2FyZC1jb250ZW50PlxuICAgICAgICA8YWRmLWNhcmQtdmlldyBbcHJvcGVydGllc109XCJwcm9wZXJ0aWVzXCIgW2VkaXRhYmxlXT1cIiFyZWFkT25seSAmJiAhaXNDb21wbGV0ZWQoKVwiIFtkaXNwbGF5Q2xlYXJBY3Rpb25dPVwiZGlzcGxheURhdGVDbGVhckFjdGlvblwiLz5cbiAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XG5cbiAgICA8bWF0LWNhcmQtYWN0aW9ucyBjbGFzcz1cImFkZi1jb250cm9sc1wiICpuZ0lmPVwic2hvd0NsYWltUmVsZWFzZVwiPlxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwiaXNUYXNrQ2xhaW1lZEJ5Q2FuZGlkYXRlTWVtYmVyKClcIlxuICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwiaGVhZGVyLXVuY2xhaW0tYnV0dG9uXCJcbiAgICAgICAgICAgIGlkPVwidW5jbGFpbS10YXNrXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYWRmLWNsYWltLWNvbnRyb2xzXCJcbiAgICAgICAgICAgIGFkZi11bmNsYWltLXRhc2tcbiAgICAgICAgICAgIFt0YXNrSWRdPVwidGFza0RldGFpbHMuaWRcIlxuICAgICAgICAgICAgKHN1Y2Nlc3MpPVwib25VbmNsYWltVGFzaygkZXZlbnQpXCI+XG4gICAgICAgICAgICB7eyAnQURGX1RBU0tfTElTVC5ERVRBSUxTLkJVVFRPTi5VTkNMQUlNJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImlzVGFza0NsYWltYWJsZSgpXCJcbiAgICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cImhlYWRlci1jbGFpbS1idXR0b25cIlxuICAgICAgICAgICAgaWQ9XCJjbGFpbS10YXNrXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYWRmLWNsYWltLWNvbnRyb2xzXCJcbiAgICAgICAgICAgIGFkZi1jbGFpbS10YXNrXG4gICAgICAgICAgICBbdGFza0lkXT1cInRhc2tEZXRhaWxzLmlkXCJcbiAgICAgICAgICAgIChzdWNjZXNzKT1cIm9uQ2xhaW1UYXNrKCRldmVudClcIj5cbiAgICAgICAgICAgIHt7ICdBREZfVEFTS19MSVNULkRFVEFJTFMuQlVUVE9OLkNMQUlNJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L21hdC1jYXJkLWFjdGlvbnM+XG48L21hdC1jYXJkPlxuIl19
|
|
362
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL3Byb2Nlc3Mtc2VydmljZXMvc3JjL2xpYi90YXNrLWxpc3QvY29tcG9uZW50cy90YXNrLWhlYWRlci90YXNrLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy9zcmMvbGliL3Rhc2stbGlzdC9jb21wb25lbnRzL3Rhc2staGVhZGVyL3Rhc2staGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hKLE9BQU8sRUFDSCxnQkFBZ0IsRUFFaEIsaUJBQWlCLEVBQ2pCLHFCQUFxQixFQUNyQixvQkFBb0IsRUFDcEIsMkJBQTJCLEVBQzNCLG9CQUFvQixFQUNwQix1QkFBdUIsRUFFdkIscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQixrQkFBa0IsRUFDckIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN2RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsb0JB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O2tCQVIvQixTQUFTOytCQUNJLGlCQUFpQixjQUNmLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxpQkFBaUIsQ0FBQyxpQkFHdEgsaUJBQWlCLENBQUMsSUFBSTs2TEFLckMsUUFBUTtzQkFEUCxLQUFLO2dCQUtOLFdBQVc7c0JBRFYsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBS3pCLGdCQUFnQjtzQkFEZixLQUFLO2dCQU9OLFFBQVE7c0JBRFAsS0FBSztnQkFPTixZQUFZO3NCQURYLEtBQUs7Z0JBS04sS0FBSztzQkFESixNQUFNO2dCQUtQLE9BQU87c0JBRE4sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBEZXN0cm95UmVmLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFwcENvbmZpZ1NlcnZpY2UsXG4gICAgQ2FyZFZpZXdCYXNlSXRlbU1vZGVsLFxuICAgIENhcmRWaWV3Q29tcG9uZW50LFxuICAgIENhcmRWaWV3RGF0ZUl0ZW1Nb2RlbCxcbiAgICBDYXJkVmlld0ludEl0ZW1Nb2RlbCxcbiAgICBDYXJkVmlld0l0ZW1MZW5ndGhWYWxpZGF0b3IsXG4gICAgQ2FyZFZpZXdNYXBJdGVtTW9kZWwsXG4gICAgQ2FyZFZpZXdTZWxlY3RJdGVtTW9kZWwsXG4gICAgQ2FyZFZpZXdTZWxlY3RJdGVtT3B0aW9uLFxuICAgIENhcmRWaWV3VGV4dEl0ZW1Nb2RlbCxcbiAgICBDYXJkVmlld1VwZGF0ZVNlcnZpY2UsXG4gICAgVHJhbnNsYXRpb25TZXJ2aWNlXG59IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBQZW9wbGVQcm9jZXNzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3Blb3BsZS1wcm9jZXNzLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGFza0Rlc2NyaXB0aW9uVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vdmFsaWRhdG9ycy90YXNrLWRlc2NyaXB0aW9uLnZhbGlkYXRvcic7XG5pbXBvcnQgeyBUYXNrUmVwcmVzZW50YXRpb24gfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2FyZCc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgVW5jbGFpbVRhc2tEaXJlY3RpdmUgfSBmcm9tICcuLi90YXNrLWZvcm0vdW5jbGFpbS10YXNrLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDbGFpbVRhc2tEaXJlY3RpdmUgfSBmcm9tICcuLi90YXNrLWZvcm0vY2xhaW0tdGFzay5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhZGYtdGFzay1oZWFkZXInLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0Q2FyZE1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBVbmNsYWltVGFza0RpcmVjdGl2ZSwgQ2xhaW1UYXNrRGlyZWN0aXZlLCBUcmFuc2xhdGVNb2R1bGUsIENhcmRWaWV3Q29tcG9uZW50XSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGFzay1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Rhc2staGVhZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBUYXNrSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuICAgIC8qKiBUaGUgbmFtZSBvZiB0aGUgZm9ybS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGZvcm1OYW1lOiBzdHJpbmcgPSBudWxsO1xuXG4gICAgLyoqIChyZXF1aXJlZCkgRGV0YWlscyByZWxhdGVkIHRvIHRoZSB0YXNrLiAqL1xuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gICAgdGFza0RldGFpbHM6IFRhc2tSZXByZXNlbnRhdGlvbjtcblxuICAgIC8qKiBUb2dnbGVzIGRpc3BsYXkgb2YgdGhlIGNsYWltL3JlbGVhc2UgYnV0dG9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd0NsYWltUmVsZWFzZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiAob3B0aW9uYWwpIFRoaXMgZmxhZyBzZXRzIHJlYWQtb25seSBtb2RlLCBwcmV2ZW50aW5nIGNoYW5nZXMuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICByZWFkT25seSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogIFJlZnJlc2hlcyB0aGUgY2FyZCBkYXRhIHdoZW4gYW4gZXZlbnQgZW1pdHRlZC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHJlc2V0Q2hhbmdlcyA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHRoZSB0YXNrIGlzIGNsYWltZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgY2xhaW06IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHRoZSB0YXNrIGlzIHVuY2xhaW1lZCAoaWUsIHJlcXVldWUpLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHVuY2xhaW06IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBwcm9wZXJ0aWVzOiBhbnlbXSA9IFtdO1xuICAgIGRpc3BsYXlEYXRlQ2xlYXJBY3Rpb24gPSBmYWxzZTtcbiAgICBkYXRlRm9ybWF0OiBzdHJpbmc7XG4gICAgZGF0ZUxvY2FsZTogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBjdXJyZW50VXNlcklkOiBudW1iZXI7XG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2Vyc1N1YmplY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDYXJkVmlld1NlbGVjdEl0ZW1PcHRpb248bnVtYmVyPltdPihbXSk7XG4gICAgdXNlcnMkID0gdGhpcy51c2Vyc1N1YmplY3QkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcGVvcGxlUHJvY2Vzc1NlcnZpY2U6IFBlb3BsZVByb2Nlc3NTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGFwcENvbmZpZzogQXBwQ29uZmlnU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjYXJkVmlld1VwZGF0ZVNlcnZpY2U6IENhcmRWaWV3VXBkYXRlU2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLmRhdGVGb3JtYXQgPSB0aGlzLmFwcENvbmZpZy5nZXQoJ2RhdGVWYWx1ZXMuZGVmYXVsdERhdGVGb3JtYXQnKTtcbiAgICAgICAgdGhpcy5kYXRlTG9jYWxlID0gdGhpcy5hcHBDb25maWcuZ2V0KCdkYXRlVmFsdWVzLmRlZmF1bHREYXRlTG9jYWxlJyk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMucGVvcGxlUHJvY2Vzc1NlcnZpY2VcbiAgICAgICAgICAgIC5nZXRDdXJyZW50VXNlckluZm8oKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRVc2VySWQgPSByZXMgPyArcmVzLmlkIDogbnVsbDtcbiAgICAgICAgICAgICAgICB0aGlzLmluaXREYXRhKCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmNhcmRWaWV3VXBkYXRlU2VydmljZS5hdXRvY29tcGxldGVJbnB1dFZhbHVlJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKChyZXMpID0+IHJlcy5sZW5ndGggPiAwKSxcbiAgICAgICAgICAgICAgICBkZWJvdW5jZVRpbWUoMzAwKSxcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKHJlcykgPT4gdGhpcy5nZXRVc2VycyhyZXMpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgodXNlcnMpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXJzU3ViamVjdCQubmV4dCh1c2Vycyk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnJlc2V0Q2hhbmdlcy5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pbml0RGF0YSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGNvbnN0IHRhc2tEZXRhaWxzQ2hhbmdlID0gY2hhbmdlc1sndGFza0RldGFpbHMnXTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGFza0RldGFpbHNDaGFuZ2U/LmN1cnJlbnRWYWx1ZT8uaWQgIT09IHRhc2tEZXRhaWxzQ2hhbmdlPy5wcmV2aW91c1ZhbHVlPy5pZCB8fFxuICAgICAgICAgICAgdGFza0RldGFpbHNDaGFuZ2U/LmN1cnJlbnRWYWx1ZT8uYXNzaWduZWU/LmlkICE9PSB0YXNrRGV0YWlsc0NoYW5nZT8ucHJldmlvdXNWYWx1ZT8uYXNzaWduZWU/LmlkXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5pbml0RGF0YSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoRGF0YSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVmcmVzaCB0aGUgY2FyZCBkYXRhXG4gICAgICovXG4gICAgaW5pdERhdGEoKSB7XG4gICAgICAgIGlmICh0aGlzLnRhc2tEZXRhaWxzKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJlbnRJbmZvTWFwID0gdGhpcy5nZXRQYXJlbnRJbmZvKCk7XG4gICAgICAgICAgICBjb25zdCBkZWZhdWx0UHJvcGVydGllcyA9IHRoaXMuaW5pdERlZmF1bHRQcm9wZXJ0aWVzKHBhcmVudEluZm9NYXApO1xuICAgICAgICAgICAgY29uc3QgZmlsdGVyZWRQcm9wZXJ0aWVzOiBzdHJpbmdbXSA9IHRoaXMuYXBwQ29uZmlnLmdldCgnYWRmLXRhc2staGVhZGVyLnByZXNldHMucHJvcGVydGllcycpO1xuICAgICAgICAgICAgdGhpcy5wcm9wZXJ0aWVzID0gZGVmYXVsdFByb3BlcnRpZXMuZmlsdGVyKChjYXJkSXRlbSkgPT4gdGhpcy5pc1ZhbGlkU2VsZWN0aW9uKGZpbHRlcmVkUHJvcGVydGllcywgY2FyZEl0ZW0pKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlZnJlc2ggdGhlIGNhcmQgZGF0YVxuICAgICAqL1xuICAgIHJlZnJlc2hEYXRhKCkge1xuICAgICAgICB0aGlzLnByb3BlcnRpZXMgPSB0aGlzLnByb3BlcnRpZXMubWFwKChjYXJkSXRlbSkgPT4ge1xuICAgICAgICAgICAgaWYgKGNhcmRJdGVtLmtleSA9PT0gJ2Zvcm1OYW1lJyAmJiBjYXJkSXRlbS52YWx1ZSAhPT0gdGhpcy5mb3JtTmFtZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ2FyZFZpZXdUZXh0SXRlbU1vZGVsKHtcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuRk9STV9OQU1FJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRoaXMuZm9ybU5hbWUsXG4gICAgICAgICAgICAgICAgICAgIGtleTogJ2Zvcm1OYW1lJyxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDogdGhpcy50cmFuc2xhdGlvblNlcnZpY2UuaW5zdGFudCgnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkZPUk1fTkFNRV9ERUZBVUxUJyksXG4gICAgICAgICAgICAgICAgICAgIGNsaWNrYWJsZTogdGhpcy5pc0Zvcm1DbGlja2FibGUoKSxcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2NyZWF0ZSdcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhcmRJdGVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHByb2Nlc3MgcGFyZW50IGluZm9ybWF0aW9uXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBhIG1hcCBvZiBwcm9jZXNzIGluc3RhbmNlIGFuZCBkZWZpbml0aW9uXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRQYXJlbnRJbmZvKCk6IE1hcDxzdHJpbmcsIHN0cmluZz4ge1xuICAgICAgICBpZiAodGhpcy50YXNrRGV0YWlscy5wcm9jZXNzSW5zdGFuY2VJZCAmJiB0aGlzLnRhc2tEZXRhaWxzLnByb2Nlc3NEZWZpbml0aW9uTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBNYXAoW1t0aGlzLnRhc2tEZXRhaWxzLnByb2Nlc3NJbnN0YW5jZUlkLCB0aGlzLnRhc2tEZXRhaWxzLnByb2Nlc3NEZWZpbml0aW9uTmFtZV1dKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV3IE1hcCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIHRoZSB0YXNrIGhhcyBhbiBhc3NpZ25lZVxuICAgICAqXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB0YXNrIGhhcyBhbiBhc3NpZ25lZSwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBoYXNBc3NpZ25lZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy50YXNrRGV0YWlscy5hc3NpZ25lZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiB0aGUgdGFzayBpcyBhc3NpZ25lZCB0byBhIHVzZXJcbiAgICAgKlxuICAgICAqIEBwYXJhbSB1c2VySWQgdGhlIGlkIG9mIHRoZSB1c2VyIHRvIGNoZWNrXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB0YXNrIGFzc2lnbmVkIHRvIGEgdXNlciwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBpc0Fzc2lnbmVkVG8odXNlcklkOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzQXNzaWduZWUoKSA/IHRoaXMudGFza0RldGFpbHMuYXNzaWduZWUuaWQgPT09IHVzZXJJZCA6IGZhbHNlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIHRoZSB0YXNrIGlzIGFzc2lnbmVkIHRvIHRoZSBjdXJyZW50IHVzZXJcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgdGFzayBhc3NpZ25lZCB0byBjdXJyZW50IHVzZXIsIG90aGVyd2lzZSBgZmFsc2VgXG4gICAgICovXG4gICAgaXNBc3NpZ25lZFRvQ3VycmVudFVzZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc0Fzc2lnbmVlKCkgJiYgdGhpcy5pc0Fzc2lnbmVkVG8odGhpcy5jdXJyZW50VXNlcklkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiB0aGUgdXNlciBpcyBhIGNhbmRpZGF0ZSBtZW1iZXJcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB1c2VyIGlzIGEgY2FuZGlkYXRlIG1lbWJlciwgb3RoZXJ3aXNlIGZhbHNlXG4gICAgICovXG4gICAgaXNDYW5kaWRhdGVNZW1iZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhc2tEZXRhaWxzLm1hbmFnZXJPZkNhbmRpZGF0ZUdyb3VwIHx8IHRoaXMudGFza0RldGFpbHMubWVtYmVyT2ZDYW5kaWRhdGVHcm91cCB8fCB0aGlzLnRhc2tEZXRhaWxzLm1lbWJlck9mQ2FuZGlkYXRlVXNlcnM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgdGhlIHRhc2sgaXMgY2xhaW1hYmxlXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGFzayBjYW4gYmUgY2xhaW1lZCwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBpc1Rhc2tDbGFpbWFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5oYXNBc3NpZ25lZSgpICYmIHRoaXMuaXNDYW5kaWRhdGVNZW1iZXIoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gdHJ1ZSBpZiB0aGUgdGFzayBjbGFpbWVkIGJ5IGNhbmRpZGF0ZSBtZW1iZXIuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHRhc2sgaXMgY2xhaW1lZCwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBpc1Rhc2tDbGFpbWVkQnlDYW5kaWRhdGVNZW1iZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzQ2FuZGlkYXRlTWVtYmVyKCkgJiYgdGhpcy5pc0Fzc2lnbmVkVG9DdXJyZW50VXNlcigpICYmICF0aGlzLmlzQ29tcGxldGVkKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHRoZSBzdGF0dXMgb2YgdGhlIHRhc2tcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIGBDb21wbGV0ZWRgIG9yIGBSdW5uaW5nYFxuICAgICAqL1xuICAgIGdldFRhc2tTdGF0dXMoKTogJ0NvbXBsZXRlZCcgfCAnUnVubmluZycge1xuICAgICAgICByZXR1cm4gdGhpcy50YXNrRGV0YWlscz8uaXNDb21wbGV0ZWQoKSA/ICdDb21wbGV0ZWQnIDogJ1J1bm5pbmcnO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVtaXQgdGhlIGNsYWltIGV2ZW50XG4gICAgICpcbiAgICAgKiBAcGFyYW0gdGFza0lkIHRoZSBpZCBvZiB0aGUgdGFzayB0byBjbGFpbVxuICAgICAqL1xuICAgIG9uQ2xhaW1UYXNrKHRhc2tJZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuY2xhaW0uZW1pdCh0YXNrSWQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVtaXQgdGhlIHVuY2xhaW0gZXZlbnRcbiAgICAgKlxuICAgICAqIEBwYXJhbSB0YXNrSWQgdGhlIGlkIG9mIHRoZSB0YXNrIHRvIHVuY2xhaW1cbiAgICAgKi9cbiAgICBvblVuY2xhaW1UYXNrKHRhc2tJZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMudW5jbGFpbS5lbWl0KHRhc2tJZCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgdGFzayBjb21wbGV0aW9uIHN0YXRlXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHRhc2sgaXMgY29tcGxldGVkLCBvdGhlcndpc2UgYGZhbHNlYFxuICAgICAqL1xuICAgIGlzQ29tcGxldGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnRhc2tEZXRhaWxzPy5lbmREYXRlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIHRoZSBmb3JtIGlzIGNsaWNrYWJsZVxuICAgICAqXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBmb3JtIGlzIGNsaWNrYWJsZSwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBpc0Zvcm1DbGlja2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuZm9ybU5hbWUgJiYgIXRoaXMuaXNDb21wbGV0ZWQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHRhc2sgZHVyYXRpb25cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHRoZSB0YXNrIGR1cmF0aW9uIGluIG1pbGxpc2Vjb25kc1xuICAgICAqL1xuICAgIGdldFRhc2tEdXJhdGlvbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy50YXNrRGV0YWlscy5kdXJhdGlvbiA/IGAke3RoaXMudGFza0RldGFpbHMuZHVyYXRpb259IG1zYCA6ICcnO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VXNlcnMoc2VhcmNoUXVlcnk6IHN0cmluZyk6IE9ic2VydmFibGU8Q2FyZFZpZXdTZWxlY3RJdGVtT3B0aW9uPG51bWJlcj5bXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wZW9wbGVQcm9jZXNzU2VydmljZS5nZXRXb3JrZmxvd1VzZXJzKHVuZGVmaW5lZCwgc2VhcmNoUXVlcnkpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHVzZXJzKSA9PlxuICAgICAgICAgICAgICAgIHVzZXJzXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoKHVzZXIpID0+IHVzZXIuaWQgIT09IHRoaXMuY3VycmVudFVzZXJJZClcbiAgICAgICAgICAgICAgICAgICAgLm1hcCgoeyBpZCwgZmlyc3ROYW1lID0gJycsIGxhc3ROYW1lID0gJycgfSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleTogaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogYCR7Zmlyc3ROYW1lfSAke2xhc3ROYW1lfWAudHJpbSgpXG4gICAgICAgICAgICAgICAgICAgIH0pKVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERlZmF1bHRQcm9wZXJ0aWVzKHBhcmVudEluZm9NYXA6IE1hcDxzdHJpbmcsIHN0cmluZz4pOiBhbnlbXSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdTZWxlY3RJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkFTU0lHTkVFJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5nZXRGdWxsTmFtZSgpXG4gICAgICAgICAgICAgICAgICAgID8gdGhpcy50YXNrRGV0YWlscy5nZXRGdWxsTmFtZSgpXG4gICAgICAgICAgICAgICAgICAgIDogdGhpcy50cmFuc2xhdGlvblNlcnZpY2UuaW5zdGFudCgnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkFTU0lHTkVFX0RFRkFVTFQnKSxcbiAgICAgICAgICAgICAgICBrZXk6ICdhc3NpZ25lZScsXG4gICAgICAgICAgICAgICAgZWRpdGFibGU6IHRoaXMuaXNBc3NpZ25lZFRvQ3VycmVudFVzZXIoKSxcbiAgICAgICAgICAgICAgICBhdXRvY29tcGxldGVCYXNlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpY29uOiAnY3JlYXRlJyxcbiAgICAgICAgICAgICAgICBvcHRpb25zJDogdGhpcy51c2VycyRcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENhcmRWaWV3VGV4dEl0ZW1Nb2RlbCh7XG4gICAgICAgICAgICAgICAgbGFiZWw6ICdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuU1RBVFVTJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy5nZXRUYXNrU3RhdHVzKCksXG4gICAgICAgICAgICAgICAga2V5OiAnc3RhdHVzJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdJbnRJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLlBSSU9SSVRZJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5wcmlvcml0eSxcbiAgICAgICAgICAgICAgICBrZXk6ICdwcmlvcml0eScsXG4gICAgICAgICAgICAgICAgZWRpdGFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgdmFsaWRhdG9yczogW25ldyBDYXJkVmlld0l0ZW1MZW5ndGhWYWxpZGF0b3IoMSwgMTApXVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdEYXRlSXRlbU1vZGVsKHtcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0FERl9UQVNLX0xJU1QuUFJPUEVSVElFUy5EVUVfREFURScsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHRoaXMudGFza0RldGFpbHMuZHVlRGF0ZSxcbiAgICAgICAgICAgICAgICBrZXk6ICdkdWVEYXRlJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KCdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuRFVFX0RBVEVfREVGQVVMVCcpLFxuICAgICAgICAgICAgICAgIGVkaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGZvcm1hdDogdGhpcy5kYXRlRm9ybWF0LFxuICAgICAgICAgICAgICAgIGxvY2FsZTogdGhpcy5kYXRlTG9jYWxlXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDYXJkVmlld1RleHRJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkNBVEVHT1JZJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5jYXRlZ29yeSxcbiAgICAgICAgICAgICAgICBrZXk6ICdjYXRlZ29yeScsXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogdGhpcy50cmFuc2xhdGlvblNlcnZpY2UuaW5zdGFudCgnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkNBVEVHT1JZX0RFRkFVTFQnKVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdNYXBJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLlBBUkVOVF9OQU1FJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogcGFyZW50SW5mb01hcCxcbiAgICAgICAgICAgICAgICBrZXk6ICdwYXJlbnROYW1lJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KCdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuUEFSRU5UX05BTUVfREVGQVVMVCcpLFxuICAgICAgICAgICAgICAgIGNsaWNrYWJsZTogdHJ1ZVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdEYXRlSXRlbU1vZGVsKHtcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0FERl9UQVNLX0xJU1QuUFJPUEVSVElFUy5DUkVBVEVEJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5jcmVhdGVkLFxuICAgICAgICAgICAgICAgIGtleTogJ2NyZWF0ZWQnLFxuICAgICAgICAgICAgICAgIGZvcm1hdDogdGhpcy5kYXRlRm9ybWF0LFxuICAgICAgICAgICAgICAgIGxvY2FsZTogdGhpcy5kYXRlTG9jYWxlXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDYXJkVmlld1RleHRJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkRVUkFUSU9OJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy5nZXRUYXNrRHVyYXRpb24oKSxcbiAgICAgICAgICAgICAgICBrZXk6ICdkdXJhdGlvbidcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENhcmRWaWV3VGV4dEl0ZW1Nb2RlbCh7XG4gICAgICAgICAgICAgICAgbGFiZWw6ICdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuUEFSRU5UX1RBU0tfSUQnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiB0aGlzLnRhc2tEZXRhaWxzLnBhcmVudFRhc2tJZCxcbiAgICAgICAgICAgICAgICBrZXk6ICdwYXJlbnRUYXNrSWQnXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDYXJkVmlld0RhdGVJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLkVORF9EQVRFJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5lbmREYXRlLFxuICAgICAgICAgICAgICAgIGtleTogJ2VuZERhdGUnLFxuICAgICAgICAgICAgICAgIGZvcm1hdDogdGhpcy5kYXRlRm9ybWF0LFxuICAgICAgICAgICAgICAgIGxvY2FsZTogdGhpcy5kYXRlTG9jYWxlXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG5ldyBDYXJkVmlld1RleHRJdGVtTW9kZWwoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnQURGX1RBU0tfTElTVC5QUk9QRVJUSUVTLklEJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50YXNrRGV0YWlscy5pZCxcbiAgICAgICAgICAgICAgICBrZXk6ICdpZCdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IENhcmRWaWV3VGV4dEl0ZW1Nb2RlbCh7XG4gICAgICAgICAgICAgICAgbGFiZWw6ICdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuREVTQ1JJUFRJT04nLFxuICAgICAgICAgICAgICAgIHZhbHVlOiB0aGlzLnRhc2tEZXRhaWxzLmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIGtleTogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KCdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuREVTQ1JJUFRJT05fREVGQVVMVCcpLFxuICAgICAgICAgICAgICAgIG11bHRpbGluZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBlZGl0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICB2YWxpZGF0b3JzOiBbbmV3IFRhc2tEZXNjcmlwdGlvblZhbGlkYXRvcigpXVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgQ2FyZFZpZXdUZXh0SXRlbU1vZGVsKHtcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0FERl9UQVNLX0xJU1QuUFJPUEVSVElFUy5GT1JNX05BTUUnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiB0aGlzLmZvcm1OYW1lLFxuICAgICAgICAgICAgICAgIGtleTogJ2Zvcm1OYW1lJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KCdBREZfVEFTS19MSVNULlBST1BFUlRJRVMuRk9STV9OQU1FX0RFRkFVTFQnKSxcbiAgICAgICAgICAgICAgICBjbGlja2FibGU6IHRoaXMuaXNGb3JtQ2xpY2thYmxlKCksXG4gICAgICAgICAgICAgICAgaWNvbjogJ2NyZWF0ZSdcbiAgICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc1ZhbGlkU2VsZWN0aW9uKGZpbHRlcmVkUHJvcGVydGllczogc3RyaW5nW10sIGNhcmRJdGVtOiBDYXJkVmlld0Jhc2VJdGVtTW9kZWwpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGZpbHRlcmVkUHJvcGVydGllcyA/IGZpbHRlcmVkUHJvcGVydGllcy5pbmRleE9mKGNhcmRJdGVtLmtleSkgPj0gMCA6IHRydWU7XG4gICAgfVxufVxuIiwiPG1hdC1jYXJkIGFwcGVhcmFuY2U9XCJvdXRsaW5lZFwiICpuZ0lmPVwidGFza0RldGFpbHNcIiBjbGFzcz1cImFkZi1jYXJkLWNvbnRhaW5lclwiPlxuICAgIDxtYXQtY2FyZC1jb250ZW50PlxuICAgICAgICA8YWRmLWNhcmQtdmlldyBbcHJvcGVydGllc109XCJwcm9wZXJ0aWVzXCIgW2VkaXRhYmxlXT1cIiFyZWFkT25seSAmJiAhaXNDb21wbGV0ZWQoKVwiIFtkaXNwbGF5Q2xlYXJBY3Rpb25dPVwiZGlzcGxheURhdGVDbGVhckFjdGlvblwiLz5cbiAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XG5cbiAgICA8bWF0LWNhcmQtYWN0aW9ucyBjbGFzcz1cImFkZi1jb250cm9sc1wiICpuZ0lmPVwic2hvd0NsYWltUmVsZWFzZVwiPlxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwiaXNUYXNrQ2xhaW1lZEJ5Q2FuZGlkYXRlTWVtYmVyKClcIlxuICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwiaGVhZGVyLXVuY2xhaW0tYnV0dG9uXCJcbiAgICAgICAgICAgIGlkPVwidW5jbGFpbS10YXNrXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYWRmLWNsYWltLWNvbnRyb2xzXCJcbiAgICAgICAgICAgIGFkZi11bmNsYWltLXRhc2tcbiAgICAgICAgICAgIFt0YXNrSWRdPVwidGFza0RldGFpbHMuaWRcIlxuICAgICAgICAgICAgKHN1Y2Nlc3MpPVwib25VbmNsYWltVGFzaygkZXZlbnQpXCI+XG4gICAgICAgICAgICB7eyAnQURGX1RBU0tfTElTVC5ERVRBSUxTLkJVVFRPTi5VTkNMQUlNJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImlzVGFza0NsYWltYWJsZSgpXCJcbiAgICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cImhlYWRlci1jbGFpbS1idXR0b25cIlxuICAgICAgICAgICAgaWQ9XCJjbGFpbS10YXNrXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYWRmLWNsYWltLWNvbnRyb2xzXCJcbiAgICAgICAgICAgIGFkZi1jbGFpbS10YXNrXG4gICAgICAgICAgICBbdGFza0lkXT1cInRhc2tEZXRhaWxzLmlkXCJcbiAgICAgICAgICAgIChzdWNjZXNzKT1cIm9uQ2xhaW1UYXNrKCRldmVudClcIj5cbiAgICAgICAgICAgIHt7ICdBREZfVEFTS19MSVNULkRFVEFJTFMuQlVUVE9OLkNMQUlNJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L21hdC1jYXJkLWFjdGlvbnM+XG48L21hdC1jYXJkPlxuIl19
|
|
@@ -280,10 +280,10 @@ export class TaskListComponent extends DataTableSchema {
|
|
|
280
280
|
includeProcessInstance: this.includeProcessInstance
|
|
281
281
|
});
|
|
282
282
|
}
|
|
283
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
284
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
283
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TaskListComponent, deps: [{ token: i1.TaskListService }, { token: i2.AppConfigService }, { token: i2.UserPreferencesService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
284
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: TaskListComponent, isStandalone: true, selector: "adf-tasklist", inputs: { appId: "appId", processInstanceId: "processInstanceId", processDefinitionId: "processDefinitionId", state: "state", assignment: "assignment", sort: "sort", name: "name", landingTaskId: "landingTaskId", data: "data", selectionMode: "selectionMode", multiselect: "multiselect", selectFirstRow: "selectFirstRow", taskId: "taskId", includeProcessInstance: "includeProcessInstance", start: "start", showContextMenu: "showContextMenu", stickyHeader: "stickyHeader", isResizingEnabled: "isResizingEnabled", blurOnResize: "blurOnResize", page: "page", size: "size", dueAfter: "dueAfter", dueBefore: "dueBefore" }, outputs: { showRowContextMenu: "showRowContextMenu", rowClick: "rowClick", rowsSelected: "rowsSelected", success: "success", error: "error" }, queries: [{ propertyName: "customEmptyContent", first: true, predicate: CustomEmptyContentTemplateDirective, descendants: true }, { propertyName: "customLoadingContent", first: true, predicate: CustomLoadingContentTemplateDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<adf-datatable\n *ngIf=\"requestNode; else noMessagesTemplate\"\n [data]=\"data\"\n [rows]=\"rows\"\n [columns]=\"columns\"\n [sorting]=\"sorting\"\n [loading]=\"isLoading\"\n [isResizingEnabled]=\"isResizingEnabled\"\n [blurOnResize]=\"blurOnResize\"\n [stickyHeader]=\"stickyHeader\"\n [multiselect]=\"multiselect\"\n [selectionMode]=\"selectionMode\"\n [contextMenu]=\"showContextMenu\"\n (showRowContextMenu)=\"onShowRowContextMenu($event)\"\n (row-select)=\"onRowSelect($any($event))\"\n (row-unselect)=\"onRowUnselect($any($event))\"\n (rowClick)=\"onRowClick($any($event))\"\n (row-keyup)=\"onRowKeyUp($any($event))\"\n>\n <adf-loading-content-template>\n <ng-template>\n <!--Add your custom loading template here-->\n <mat-progress-spinner *ngIf=\"!customLoadingContent\" class=\"adf-task-list-loading-margin\" color=\"primary\" mode=\"indeterminate\" />\n <ng-content select=\"adf-custom-loading-content-template\" />\n </ng-template>\n </adf-loading-content-template>\n <adf-no-content-template>\n <ng-template>\n <adf-empty-content\n *ngIf=\"!customEmptyContent\"\n icon=\"assignment\"\n [title]=\"'ADF_TASK_LIST.LIST.MESSAGES.TITLE' | translate\"\n [subtitle]=\"'ADF_TASK_LIST.LIST.MESSAGES.SUBTITLE' | translate\"\n />\n <ng-content select=\"adf-custom-empty-content-template\" />\n </ng-template>\n </adf-no-content-template>\n</adf-datatable>\n\n<ng-template #noMessagesTemplate>\n <div>{{ 'ADF_TASK_LIST.FILTERS.MESSAGES.NONE' | translate }}</div>\n</ng-template>\n", styles: [".adf-task-list-loading-margin{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "directive", type: LoadingContentTemplateDirective, selector: "adf-loading-content-template, loading-content-template" }, { kind: "directive", type: NoContentTemplateDirective, selector: "adf-no-content-template, no-content-template" }] }); }
|
|
285
285
|
}
|
|
286
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
286
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TaskListComponent, decorators: [{
|
|
287
287
|
type: Component,
|
|
288
288
|
args: [{ selector: 'adf-tasklist', standalone: true, imports: [
|
|
289
289
|
CommonModule,
|
|
@@ -357,4 +357,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
357
357
|
}], dueBefore: [{
|
|
358
358
|
type: Input
|
|
359
359
|
}] } });
|
|
360
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzL3NyYy9saWIvdGFzay1saXN0L2NvbXBvbmVudHMvdGFzay1saXN0L3Rhc2stbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy9zcmMvbGliL3Rhc2stbGlzdC9jb21wb25lbnRzL3Rhc2stbGlzdC90YXNrLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUNILGdCQUFnQixFQUNoQixtQ0FBbUMsRUFDbkMscUNBQXFDLEVBSXJDLGtCQUFrQixFQUNsQixlQUFlLEVBQ2Ysa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQiwrQkFBK0IsRUFDL0IsMEJBQTBCLEVBRzFCLHNCQUFzQixFQUN0QixvQkFBb0IsRUFDdkIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBRUgsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBR0wsTUFBTSxFQUVULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQXNCLE1BQU0sa0JBQWtCLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx3QkFBd0IsRUFB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QUk7c0JBREgsS0FBSztnQkFLTixRQUFRO3NCQURQLEtBQUs7Z0JBS04sU0FBUztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge1xuICAgIEFwcENvbmZpZ1NlcnZpY2UsXG4gICAgQ3VzdG9tRW1wdHlDb250ZW50VGVtcGxhdGVEaXJlY3RpdmUsXG4gICAgQ3VzdG9tTG9hZGluZ0NvbnRlbnRUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgICBEYXRhQ2VsbEV2ZW50LFxuICAgIERhdGFSb3dFdmVudCxcbiAgICBEYXRhVGFibGVBZGFwdGVyLFxuICAgIERhdGFUYWJsZUNvbXBvbmVudCxcbiAgICBEYXRhVGFibGVTY2hlbWEsXG4gICAgREVGQVVMVF9QQUdJTkFUSU9OLFxuICAgIEVtcHR5Q29udGVudENvbXBvbmVudCxcbiAgICBMb2FkaW5nQ29udGVudFRlbXBsYXRlRGlyZWN0aXZlLFxuICAgIE5vQ29udGVudFRlbXBsYXRlRGlyZWN0aXZlLFxuICAgIFBhZ2luYXRlZENvbXBvbmVudCxcbiAgICBQYWdpbmF0aW9uTW9kZWwsXG4gICAgVXNlclByZWZlcmVuY2VzU2VydmljZSxcbiAgICBVc2VyUHJlZmVyZW5jZVZhbHVlc1xufSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRGVzdHJveVJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRhc2tQcmVzZXRzRGVmYXVsdE1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Rhc2stcHJlc2V0Lm1vZGVsJztcbmltcG9ydCB7IFRhc2tMaXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Rhc2tsaXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgZmluYWxpemUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUYXNrUXVlcnlSZXByZXNlbnRhdGlvbiwgVGFza1JlcHJlc2VudGF0aW9uIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuZXhwb3J0IGNvbnN0IFBSRVNFVF9LRVkgPSAnYWRmLXRhc2stbGlzdC5wcmVzZXRzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhZGYtdGFza2xpc3QnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICAgICAgRW1wdHlDb250ZW50Q29tcG9uZW50LFxuICAgICAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgICAgIERhdGFUYWJsZUNvbXBvbmVudCxcbiAgICAgICAgTG9hZGluZ0NvbnRlbnRUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgICAgICAgTm9Db250ZW50VGVtcGxhdGVEaXJlY3RpdmVcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YXNrLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Rhc2stbGlzdC5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVGFza0xpc3RDb21wb25lbnQgZXh0ZW5kcyBEYXRhVGFibGVTY2hlbWEgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyQ29udGVudEluaXQsIFBhZ2luYXRlZENvbXBvbmVudCwgT25Jbml0IHtcbiAgICBAQ29udGVudENoaWxkKEN1c3RvbUVtcHR5Q29udGVudFRlbXBsYXRlRGlyZWN0aXZlKVxuICAgIGN1c3RvbUVtcHR5Q29udGVudDogQ3VzdG9tRW1wdHlDb250ZW50VGVtcGxhdGVEaXJlY3RpdmU7XG5cbiAgICBAQ29udGVudENoaWxkKEN1c3RvbUxvYWRpbmdDb250ZW50VGVtcGxhdGVEaXJlY3RpdmUpXG4gICAgY3VzdG9tTG9hZGluZ0NvbnRlbnQ6IEN1c3RvbUxvYWRpbmdDb250ZW50VGVtcGxhdGVEaXJlY3RpdmU7XG5cbiAgICAvKiogVGhlIGlkIG9mIHRoZSBhcHAuICovXG4gICAgQElucHV0KClcbiAgICBhcHBJZDogbnVtYmVyO1xuXG4gICAgLyoqIFRoZSBJbnN0YW5jZSBJZCBvZiB0aGUgcHJvY2Vzcy4gKi9cbiAgICBASW5wdXQoKVxuICAgIHByb2Nlc3NJbnN0YW5jZUlkOiBzdHJpbmc7XG5cbiAgICAvKiogVGhlIERlZmluaXRpb24gSWQgb2YgdGhlIHByb2Nlc3MuICovXG4gICAgQElucHV0KClcbiAgICBwcm9jZXNzRGVmaW5pdGlvbklkOiBzdHJpbmc7XG5cbiAgICAvKiogQ3VycmVudCBzdGF0ZSBvZiB0aGUgcHJvY2Vzcy4gUG9zc2libGUgdmFsdWVzIGFyZTogYGNvbXBsZXRlZGAsIGBhY3RpdmVgLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc3RhdGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBhc3NpZ25tZW50IG9mIHRoZSBwcm9jZXNzLiBQb3NzaWJsZSB2YWx1ZXMgYXJlOiBcImFzc2lnbmVlXCIgKHRoZSBjdXJyZW50IHVzZXJcbiAgICAgKiBpcyB0aGUgYXNzaWduZWUpLCBcImNhbmRpZGF0ZVwiICh0aGUgY3VycmVudCB1c2VyIGlzIGEgdGFzayBjYW5kaWRhdGUsIFwiZ3JvdXBfeFwiICh0aGUgdGFza1xuICAgICAqIGlzIGFzc2lnbmVkIHRvIGEgZ3JvdXAgd2hlcmUgdGhlIGN1cnJlbnQgdXNlciBpcyBhIG1lbWJlcixcbiAgICAgKiBubyB2YWx1ZSAodGhlIGN1cnJlbnQgdXNlciBpcyBpbnZvbHZlZCkuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBhc3NpZ25tZW50OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmUgdGhlIHNvcnQgb3JkZXIgb2YgdGhlIHRhc2tzLiBQb3NzaWJsZSB2YWx1ZXMgYXJlIDogYGNyZWF0ZWQtZGVzY2AsXG4gICAgICogYGNyZWF0ZWQtYXNjYCwgYGR1ZS1kZXNjYCwgYGR1ZS1hc2NgXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzb3J0OiBzdHJpbmc7XG5cbiAgICAvKiogTmFtZSBvZiB0aGUgdGFza2xpc3QuICovXG4gICAgQElucHV0KClcbiAgICBuYW1lOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmUgd2hpY2ggdGFzayBpZCBzaG91bGQgYmUgc2VsZWN0ZWQgYWZ0ZXIgcmVsb2FkaW5nLiBJZiB0aGUgdGFzayBpZCBkb2Vzbid0XG4gICAgICogZXhpc3Qgb3Igbm90aGluZyBpcyBwYXNzZWQgdGhlbiB0aGUgZmlyc3QgdGFzayB3aWxsIGJlIHNlbGVjdGVkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgbGFuZGluZ1Rhc2tJZDogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogRGF0YSBzb3VyY2Ugb2JqZWN0IHRoYXQgcmVwcmVzZW50cyB0aGUgbnVtYmVyIGFuZCB0aGUgdHlwZSBvZiB0aGUgY29sdW1ucyB0aGF0XG4gICAgICogeW91IHdhbnQgdG8gc2hvdy5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGRhdGE6IERhdGFUYWJsZUFkYXB0ZXI7XG5cbiAgICAvKipcbiAgICAgKiBSb3cgc2VsZWN0aW9uIG1vZGUuIENhbiBiZSBub25lLCBgc2luZ2xlYCBvciBgbXVsdGlwbGVgLiBGb3IgYG11bHRpcGxlYCBtb2RlLFxuICAgICAqIHlvdSBjYW4gdXNlIENtZCAobWFjT1MpIG9yIEN0cmwgKFdpbikgbW9kaWZpZXIga2V5IHRvIHRvZ2dsZSBzZWxlY3Rpb24gZm9yXG4gICAgICogbXVsdGlwbGUgcm93cy5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNlbGVjdGlvbk1vZGU6IHN0cmluZyA9ICdzaW5nbGUnOyAvLyBub25lfHNpbmdsZXxtdWx0aXBsZVxuXG4gICAgLyoqIFRvZ2dsZXMgbXVsdGlwbGUgcm93IHNlbGVjdGlvbiwgcmVuZGVycyBjaGVja2JveGVzIGF0IHRoZSBiZWdpbm5pbmcgb2YgZWFjaCByb3cgKi9cbiAgICBASW5wdXQoKVxuICAgIG11bHRpc2VsZWN0OiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKiogVG9nZ2xlcyBkZWZhdWx0IHNlbGVjdGlvbiBvZiB0aGUgZmlyc3Qgcm93ICovXG4gICAgQElucHV0KClcbiAgICBzZWxlY3RGaXJzdFJvdzogYm9vbGVhbiA9IHRydWU7XG5cbiAgICAvKiogVGhlIGlkIG9mIGEgdGFzayAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGFza0lkOiBzdHJpbmc7XG5cbiAgICAvKiogVG9nZ2xlcyBpbmNsdXNpb24gb2YgUHJvY2VzcyBJbnN0YW5jZXMgKi9cbiAgICBASW5wdXQoKVxuICAgIGluY2x1ZGVQcm9jZXNzSW5zdGFuY2U6IGJvb2xlYW47XG5cbiAgICAvKiogU3RhcnRpbmcgcG9pbnQgb2YgdGhlIGxpc3Qgd2l0aGluIHRoZSBmdWxsIHNldCBvZiB0YXNrcy4gKi9cbiAgICBASW5wdXQoKVxuICAgIHN0YXJ0OiBudW1iZXI7XG5cbiAgICAvKiogVG9nZ2xlcyBjdXN0b20gY29udGV4dCBtZW51IGZvciB0aGUgY29tcG9uZW50LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd0NvbnRleHRNZW51OiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKiogVG9nZ2xlcyB0aGUgc3RpY2t5IGhlYWRlciBtb2RlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc3RpY2t5SGVhZGVyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKiogRW5hYmxlcyBjb2x1bW4gcmVzaXppbmcgZm9yIGRhdGF0YWJsZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgaXNSZXNpemluZ0VuYWJsZWQgPSBmYWxzZTtcblxuICAgIC8qKiBFbmFibGVzIGJsdXIgd2hlbiByZXNpemluZyBkYXRhdGFibGUgY29sdW1ucyAqL1xuICAgIEBJbnB1dCgpXG4gICAgYmx1ck9uUmVzaXplID0gdHJ1ZTtcblxuICAgIC8qKiBFbWl0dGVkIGJlZm9yZSB0aGUgY29udGV4dCBtZW51IGlzIGRpc3BsYXllZCBmb3IgYSByb3cuICovXG4gICAgQE91dHB1dCgpXG4gICAgc2hvd1Jvd0NvbnRleHRNZW51ID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRhQ2VsbEV2ZW50PigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBhIHRhc2sgaW4gdGhlIGxpc3QgaXMgY2xpY2tlZCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJvd0NsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHJvd3MgYXJlIHNlbGVjdGVkL3Vuc2VsZWN0ZWQgKi9cbiAgICBAT3V0cHV0KClcbiAgICByb3dzU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgdGFzayBsaXN0IGlzIGxvYWRlZCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHN1Y2Nlc3MgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gYW4gZXJyb3Igb2NjdXJzLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGVycm9yID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICAvKiogVGhlIHBhZ2UgbnVtYmVyIG9mIHRoZSB0YXNrcyB0byBmZXRjaC4gKi9cbiAgICBASW5wdXQoKVxuICAgIHBhZ2U6IG51bWJlciA9IDA7XG5cbiAgICAvKiogVGhlIG51bWJlciBvZiB0YXNrcyB0byBmZXRjaC4gRGVmYXVsdCB2YWx1ZTogMjUuICovXG4gICAgQElucHV0KClcbiAgICBzaXplOiBudW1iZXIgPSBERUZBVUxUX1BBR0lOQVRJT04ubWF4SXRlbXM7XG5cbiAgICAvKiogRmlsdGVyIHRoZSB0YXNrcy4gRGlzcGxheSBvbmx5IHRhc2tzIHdpdGggYGNyZWF0ZWRfZGF0ZWAgYWZ0ZXIgYGR1ZUFmdGVyYC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGR1ZUFmdGVyOiBzdHJpbmc7XG5cbiAgICAvKiogRmlsdGVyIHRoZSB0YXNrcy4gRGlzcGxheSBvbmx5IHRhc2tzIHdpdGggYGNyZWF0ZWRfZGF0ZWAgYmVmb3JlIGBkdWVCZWZvcmVgLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZHVlQmVmb3JlOiBzdHJpbmc7XG5cbiAgICByZXF1ZXN0Tm9kZTogVGFza1F1ZXJ5UmVwcmVzZW50YXRpb247XG4gICAgY3VycmVudEluc3RhbmNlSWQ6IHN0cmluZztcbiAgICBzZWxlY3RlZEluc3RhbmNlczogYW55W107XG4gICAgcGFnaW5hdGlvbjogQmVoYXZpb3JTdWJqZWN0PFBhZ2luYXRpb25Nb2RlbD47XG4gICAgcm93czogYW55W10gPSBbXTtcbiAgICBpc0xvYWRpbmc6IGJvb2xlYW4gPSB0cnVlO1xuICAgIHNvcnRpbmc6IGFueVtdID0gWydjcmVhdGVkJywgJ2Rlc2MnXTtcblxuICAgIC8qKlxuICAgICAqIFRvZ2dsZXMgY3VzdG9tIGRhdGEgc291cmNlIG1vZGUuXG4gICAgICogV2hlbiBlbmFibGVkIHRoZSBjb21wb25lbnQgcmVsb2FkcyBkYXRhIGZyb20gaXQncyBjdXJyZW50IHNvdXJjZSBpbnN0ZWFkIG9mIHRoZSBzZXJ2ZXIgc2lkZS5cbiAgICAgKiBUaGlzIGFsbG93cyBnZW5lcmF0aW5nIGFuZCBkaXNwbGF5aW5nIGN1c3RvbSBkYXRhIHNldHMgKGkuZS4gZmlsdGVyZWQgb3V0IGNvbnRlbnQpLlxuICAgICAqL1xuICAgIGhhc0N1c3RvbURhdGFTb3VyY2U6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdGFza0xpc3RTZXJ2aWNlOiBUYXNrTGlzdFNlcnZpY2UsIGFwcENvbmZpZ1NlcnZpY2U6IEFwcENvbmZpZ1NlcnZpY2UsIHByaXZhdGUgdXNlclByZWZlcmVuY2VzOiBVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKGFwcENvbmZpZ1NlcnZpY2UsIFBSRVNFVF9LRVksIHRhc2tQcmVzZXRzRGVmYXVsdE1vZGVsKTtcblxuICAgICAgICB0aGlzLnBhZ2luYXRpb24gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFBhZ2luYXRpb25Nb2RlbD4oe1xuICAgICAgICAgICAgbWF4SXRlbXM6IHRoaXMuc2l6ZSxcbiAgICAgICAgICAgIHNraXBDb3VudDogMCxcbiAgICAgICAgICAgIHRvdGFsSXRlbXM6IDBcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLmNyZWF0ZURhdGF0YWJsZVNjaGVtYSgpO1xuICAgICAgICBpZiAodGhpcy5kYXRhICYmIHRoaXMuZGF0YS5nZXRDb2x1bW5zKCkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGEuc2V0Q29sdW1ucyh0aGlzLmNvbHVtbnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYXBwSWQpIHtcbiAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy51c2VyUHJlZmVyZW5jZXNcbiAgICAgICAgICAgIC5zZWxlY3QoVXNlclByZWZlcmVuY2VWYWx1ZXMuUGFnaW5hdGlvblNpemUpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHBhZ2VTaXplKSA9PiAodGhpcy5zaXplID0gcGFnZVNpemUpKTtcbiAgICB9XG5cbiAgICBzZXRDdXN0b21EYXRhU291cmNlKHJvd3M6IGFueVtdKTogdm9pZCB7XG4gICAgICAgIGlmIChyb3dzKSB7XG4gICAgICAgICAgICB0aGlzLnJvd3MgPSByb3dzO1xuICAgICAgICAgICAgdGhpcy5oYXNDdXN0b21EYXRhU291cmNlID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNQcm9wZXJ0eUNoYW5nZWQoY2hhbmdlcykpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzU29ydENoYW5nZWQoY2hhbmdlcykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNvcnRpbmcgPSB0aGlzLnNvcnQgPyB0aGlzLnNvcnQuc3BsaXQoJy0nKSA6IHRoaXMuc29ydGluZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwcmVzZXRDb2x1bW5DaGFuZ2VzID0gY2hhbmdlc1sncHJlc2V0Q29sdW1uJ107XG4gICAgICAgIGlmIChwcmVzZXRDb2x1bW5DaGFuZ2VzICYmICFwcmVzZXRDb2x1bW5DaGFuZ2VzLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgICAgICB0aGlzLmNvbHVtbnMgPSB0aGlzLm1lcmdlSnNvbkFuZEh0bWxTY2hlbWEoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlbG9hZCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmhhc0N1c3RvbURhdGFTb3VyY2UpIHtcbiAgICAgICAgICAgIHRoaXMucmVxdWVzdE5vZGUgPSB0aGlzLmNyZWF0ZVJlcXVlc3ROb2RlKCk7XG4gICAgICAgICAgICB0aGlzLmxvYWQoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZWxlY3QgdGhlIHRhc2sgZ2l2ZW4gaW4gaW5wdXQgaWYgcHJlc2VudFxuICAgICAqXG4gICAgICogQHBhcmFtIHRhc2tJZFNlbGVjdGVkIHNlbGVjdGVkIHRhc2sgaWRcbiAgICAgKi9cbiAgICBzZWxlY3RUYXNrKHRhc2tJZFNlbGVjdGVkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzTGlzdEVtcHR5KCkpIHtcbiAgICAgICAgICAgIGxldCBkYXRhUm93ID0gbnVsbDtcblxuICAgICAgICAgICAgaWYgKHRhc2tJZFNlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgZGF0YVJvdyA9IHRoaXMucm93cy5maW5kKChjdXJyZW50Um93OiBhbnkpID0+IGN1cnJlbnRSb3dbJ2lkJ10gPT09IHRhc2tJZFNlbGVjdGVkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFkYXRhUm93ICYmIHRoaXMuc2VsZWN0Rmlyc3RSb3cpIHtcbiAgICAgICAgICAgICAgICBkYXRhUm93ID0gdGhpcy5yb3dzWzBdO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoZGF0YVJvdykge1xuICAgICAgICAgICAgICAgIGRhdGFSb3cuaXNTZWxlY3RlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50SW5zdGFuY2VJZCA9IGRhdGFSb3dbJ2lkJ107XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRJbnN0YW5jZUlkID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybiB0aGUgY3VycmVudCBpbnN0YW5jZSBpZFxuICAgICAqXG4gICAgICogQHJldHVybnMgdGhlIGN1cnJlbnQgaW5zdGFuY2UgaWRcbiAgICAgKi9cbiAgICBnZXRDdXJyZW50SWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudEluc3RhbmNlSWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgdGhlIHRhc2tJZCBpcyB0aGUgc2FtZSBvZiB0aGUgc2VsZWN0ZWQgdGFza1xuICAgICAqXG4gICAgICogQHBhcmFtIHRhc2tJZCB0YXNrIGlkXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIGN1cnJlbnQgaW5zdGFuY2UgaWQgaXMgdGhlIHNhbWUgYXMgdGFzayBpZCwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBpc0VxdWFsVG9DdXJyZW50SWQodGFza0lkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudEluc3RhbmNlSWQgPT09IHRhc2tJZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiB0aGUgbGlzdCBpcyBlbXB0eVxuICAgICAqXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIGxpc3QgaXMgZW1wdHksIG90aGVyd2lzZSBgZmFsc2VgXG4gICAgICovXG4gICAgaXNMaXN0RW1wdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5yb3dzIHx8IHRoaXMucm93cy5sZW5ndGggPT09IDA7XG4gICAgfVxuXG4gICAgb25Sb3dDbGljayhpdGVtOiBEYXRhUm93RXZlbnQpIHtcbiAgICAgICAgdGhpcy5jdXJyZW50SW5zdGFuY2VJZCA9IGl0ZW0udmFsdWUuZ2V0VmFsdWUoJ2lkJyk7XG4gICAgICAgIHRoaXMucm93Q2xpY2suZW1pdCh0aGlzLmN1cnJlbnRJbnN0YW5jZUlkKTtcbiAgICB9XG5cbiAgICBvblJvd1NlbGVjdChldmVudDogQ3VzdG9tRXZlbnQpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluc3RhbmNlcyA9IFsuLi5ldmVudC5kZXRhaWwuc2VsZWN0aW9uXTtcbiAgICAgICAgdGhpcy5yb3dzU2VsZWN0ZWQuZW1pdCh0aGlzLnNlbGVjdGVkSW5zdGFuY2VzKTtcbiAgICB9XG5cbiAgICBvblJvd1Vuc2VsZWN0KGV2ZW50OiBDdXN0b21FdmVudCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSW5zdGFuY2VzID0gWy4uLmV2ZW50LmRldGFpbC5zZWxlY3Rpb25dO1xuICAgICAgICB0aGlzLnJvd3NTZWxlY3RlZC5lbWl0KHRoaXMuc2VsZWN0ZWRJbnN0YW5jZXMpO1xuICAgIH1cblxuICAgIG9uUm93S2V5VXAoZXZlbnQ6IEN1c3RvbUV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudC5kZXRhaWwua2V5Ym9hcmRFdmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgICAgIHRoaXMuY3VycmVudEluc3RhbmNlSWQgPSBldmVudC5kZXRhaWwucm93LmdldFZhbHVlKCdpZCcpO1xuICAgICAgICAgICAgdGhpcy5yb3dDbGljay5lbWl0KHRoaXMuY3VycmVudEluc3RhbmNlSWQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25TaG93Um93Q29udGV4dE1lbnUoZXZlbnQ6IERhdGFDZWxsRXZlbnQpIHtcbiAgICAgICAgdGhpcy5zaG93Um93Q29udGV4dE1lbnUuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgdXBkYXRlUGFnaW5hdGlvbihwYXJhbXM6IFBhZ2luYXRpb25Nb2RlbCkge1xuICAgICAgICBjb25zdCBuZWVkc1JlbG9hZCA9IHBhcmFtcy5tYXhJdGVtcyB8fCBwYXJhbXMuc2tpcENvdW50O1xuXG4gICAgICAgIHRoaXMuc2l6ZSA9IHBhcmFtcy5tYXhJdGVtcztcbiAgICAgICAgdGhpcy5wYWdlID0gdGhpcy5jdXJyZW50UGFnZShwYXJhbXMuc2tpcENvdW50LCBwYXJhbXMubWF4SXRlbXMpO1xuXG4gICAgICAgIGlmIChuZWVkc1JlbG9hZCkge1xuICAgICAgICAgICAgdGhpcy5yZWxvYWQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGN1cnJlbnRQYWdlKHNraXBDb3VudDogbnVtYmVyLCBtYXhJdGVtczogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHNraXBDb3VudCAmJiBtYXhJdGVtcyA/IE1hdGguZmxvb3Ioc2tpcENvdW50IC8gbWF4SXRlbXMpIDogMDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGlzU29ydENoYW5nZWQoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBhY3R1YWxTb3J0ID0gY2hhbmdlc1snc29ydCddO1xuICAgICAgICByZXR1cm4gYWN0dWFsU29ydD8uY3VycmVudFZhbHVlICYmIGFjdHVhbFNvcnQuY3VycmVudFZhbHVlICE9PSBhY3R1YWxTb3J0LnByZXZpb3VzVmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc1Byb3BlcnR5Q2hhbmdlZChjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogYm9vbGVhbiB7XG4gICAgICAgIGxldCBjaGFuZ2VkOiBib29sZWFuID0gdHJ1ZTtcblxuICAgICAgICBjb25zdCBsYW5kaW5nVGFza0lkID0gY2hhbmdlc1snbGFuZGluZ1Rhc2tJZCddO1xuICAgICAgICBjb25zdCBwYWdlID0gY2hhbmdlc1sncGFnZSddO1xuICAgICAgICBjb25zdCBzaXplID0gY2hhbmdlc1snc2l6ZSddO1xuICAgICAgICBpZiAobGFuZGluZ1Rhc2tJZD8uY3VycmVudFZhbHVlICYmIHRoaXMuaXNFcXVhbFRvQ3VycmVudElkKGxhbmRpbmdUYXNrSWQuY3VycmVudFZhbHVlKSkge1xuICAgICAgICAgICAgY2hhbmdlZCA9IGZhbHNlO1xuICAgICAgICB9IGVsc2UgaWYgKHBhZ2UgJiYgcGFnZS5jdXJyZW50VmFsdWUgIT09IHBhZ2UucHJldmlvdXNWYWx1ZSkge1xuICAgICAgICAgICAgY2hhbmdlZCA9IHRydWU7XG4gICAgICAgIH0gZWxzZSBpZiAoc2l6ZSAmJiBzaXplLmN1cnJlbnRWYWx1ZSAhPT0gc2l6ZS5wcmV2aW91c1ZhbHVlKSB7XG4gICAgICAgICAgICBjaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjaGFuZ2VkO1xuICAgIH1cblxuICAgIHByaXZhdGUgbG9hZCgpIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuXG4gICAgICAgIHRoaXMudGFza0xpc3RTZXJ2aWNlXG4gICAgICAgICAgICAuZmluZFRhc2tzQnlTdGF0ZSh0aGlzLnJlcXVlc3ROb2RlKVxuICAgICAgICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gKHRoaXMuaXNMb2FkaW5nID0gZmFsc2UpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgKHRhc2tzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm93cyA9IHRoaXMub3B0aW1pemVUYXNrRGV0YWlscyh0YXNrcy5kYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RUYXNrKHRoaXMubGFuZGluZ1Rhc2tJZCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3VjY2Vzcy5lbWl0KHRhc2tzKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYWdpbmF0aW9uLm5leHQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgY291bnQ6IHRhc2tzLmRhdGEubGVuZ3RoLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4SXRlbXM6IHRoaXMuc2l6ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNraXBDb3VudDogdGhpcy5wYWdlICogdGhpcy5zaXplLFxuICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxJdGVtczogdGFza3MudG90YWxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lcnJvci5lbWl0KGVycm9yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE9wdGltaXplIG5hbWUgZmllbGRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBpbnN0YW5jZXMgdGFzayBkZXRhaWwgbW9kZWxzXG4gICAgICogQHJldHVybnMgbGlzdCBvZiB0YXNrIGRldGFpbCBtb2RlbHNcbiAgICAgKi9cbiAgICBwcml2YXRlIG9wdGltaXplVGFza0RldGFpbHMoaW5zdGFuY2VzOiBUYXNrUmVwcmVzZW50YXRpb25bXSk6IFRhc2tSZXByZXNlbnRhdGlvbltdIHtcbiAgICAgICAgaW5zdGFuY2VzID0gaW5zdGFuY2VzLm1hcCgodGFzaykgPT4ge1xuICAgICAgICAgICAgaWYgKCF0YXNrLm5hbWUpIHtcbiAgICAgICAgICAgICAgICB0YXNrLm5hbWUgPSAnTm8gbmFtZSc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdGFzaztcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBpbnN0YW5jZXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVSZXF1ZXN0Tm9kZSgpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUYXNrUXVlcnlSZXByZXNlbnRhdGlvbih7XG4gICAgICAgICAgICBhcHBEZWZpbml0aW9uSWQ6IHRoaXMuYXBwSWQsXG4gICAgICAgICAgICBkdWVBZnRlcjogdGhpcy5kdWVBZnRlciA/IG5ldyBEYXRlKHRoaXMuZHVlQWZ0ZXIpIDogbnVsbCxcbiAgICAgICAgICAgIGR1ZUJlZm9yZTogdGhpcy5kdWVCZWZvcmUgPyBuZXcgRGF0ZSh0aGlzLmR1ZUJlZm9yZSkgOiBudWxsLFxuICAgICAgICAgICAgcHJvY2Vzc0luc3RhbmNlSWQ6IHRoaXMucHJvY2Vzc0luc3RhbmNlSWQsXG4gICAgICAgICAgICBwcm9jZXNzRGVmaW5pdGlvbklkOiB0aGlzLnByb2Nlc3NEZWZpbml0aW9uSWQsXG4gICAgICAgICAgICB0ZXh0OiB0aGlzLm5hbWUsXG4gICAgICAgICAgICBhc3NpZ25tZW50OiB0aGlzLmFzc2lnbm1lbnQsXG4gICAgICAgICAgICBzdGF0ZTogdGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIHNvcnQ6IHRoaXMuc29ydCxcbiAgICAgICAgICAgIHBhZ2U6IHRoaXMucGFnZSxcbiAgICAgICAgICAgIHNpemU6IHRoaXMuc2l6ZSxcbiAgICAgICAgICAgIHN0YXJ0OiB0aGlzLnN0YXJ0LFxuICAgICAgICAgICAgdGFza0lkOiB0aGlzLnRhc2tJZCxcbiAgICAgICAgICAgIGluY2x1ZGVQcm9jZXNzSW5zdGFuY2U6IHRoaXMuaW5jbHVkZVByb2Nlc3NJbnN0YW5jZVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8YWRmLWRhdGF0YWJsZVxuICAgICpuZ0lmPVwicmVxdWVzdE5vZGU7IGVsc2Ugbm9NZXNzYWdlc1RlbXBsYXRlXCJcbiAgICBbZGF0YV09XCJkYXRhXCJcbiAgICBbcm93c109XCJyb3dzXCJcbiAgICBbY29sdW1uc109XCJjb2x1bW5zXCJcbiAgICBbc29ydGluZ109XCJzb3J0aW5nXCJcbiAgICBbbG9hZGluZ109XCJpc0xvYWRpbmdcIlxuICAgIFtpc1Jlc2l6aW5nRW5hYmxlZF09XCJpc1Jlc2l6aW5nRW5hYmxlZFwiXG4gICAgW2JsdXJPblJlc2l6ZV09XCJibHVyT25SZXNpemVcIlxuICAgIFtzdGlja3lIZWFkZXJdPVwic3RpY2t5SGVhZGVyXCJcbiAgICBbbXVsdGlzZWxlY3RdPVwibXVsdGlzZWxlY3RcIlxuICAgIFtzZWxlY3Rpb25Nb2RlXT1cInNlbGVjdGlvbk1vZGVcIlxuICAgIFtjb250ZXh0TWVudV09XCJzaG93Q29udGV4dE1lbnVcIlxuICAgIChzaG93Um93Q29udGV4dE1lbnUpPVwib25TaG93Um93Q29udGV4dE1lbnUoJGV2ZW50KVwiXG4gICAgKHJvdy1zZWxlY3QpPVwib25Sb3dTZWxlY3QoJGFueSgkZXZlbnQpKVwiXG4gICAgKHJvdy11bnNlbGVjdCk9XCJvblJvd1Vuc2VsZWN0KCRhbnkoJGV2ZW50KSlcIlxuICAgIChyb3dDbGljayk9XCJvblJvd0NsaWNrKCRhbnkoJGV2ZW50KSlcIlxuICAgIChyb3cta2V5dXApPVwib25Sb3dLZXlVcCgkYW55KCRldmVudCkpXCJcbj5cbiAgICA8YWRmLWxvYWRpbmctY29udGVudC10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPCEtLUFkZCB5b3VyIGN1c3RvbSBsb2FkaW5nIHRlbXBsYXRlIGhlcmUtLT5cbiAgICAgICAgICAgIDxtYXQtcHJvZ3Jlc3Mtc3Bpbm5lciAqbmdJZj1cIiFjdXN0b21Mb2FkaW5nQ29udGVudFwiIGNsYXNzPVwiYWRmLXRhc2stbGlzdC1sb2FkaW5nLW1hcmdpblwiIGNvbG9yPVwicHJpbWFyeVwiIG1vZGU9XCJpbmRldGVybWluYXRlXCIgLz5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImFkZi1jdXN0b20tbG9hZGluZy1jb250ZW50LXRlbXBsYXRlXCIgLz5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2FkZi1sb2FkaW5nLWNvbnRlbnQtdGVtcGxhdGU+XG4gICAgPGFkZi1uby1jb250ZW50LXRlbXBsYXRlPlxuICAgICAgICA8bmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8YWRmLWVtcHR5LWNvbnRlbnRcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiFjdXN0b21FbXB0eUNvbnRlbnRcIlxuICAgICAgICAgICAgICAgIGljb249XCJhc3NpZ25tZW50XCJcbiAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ0FERl9UQVNLX0xJU1QuTElTVC5NRVNTQUdFUy5USVRMRScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgIFtzdWJ0aXRsZV09XCInQURGX1RBU0tfTElTVC5MSVNULk1FU1NBR0VTLlNVQlRJVExFJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYWRmLWN1c3RvbS1lbXB0eS1jb250ZW50LXRlbXBsYXRlXCIgLz5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2FkZi1uby1jb250ZW50LXRlbXBsYXRlPlxuPC9hZGYtZGF0YXRhYmxlPlxuXG48bmctdGVtcGxhdGUgI25vTWVzc2FnZXNUZW1wbGF0ZT5cbiAgICA8ZGl2Pnt7ICdBREZfVEFTS19MSVNULkZJTFRFUlMuTUVTU0FHRVMuTk9ORScgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
360
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzL3NyYy9saWIvdGFzay1saXN0L2NvbXBvbmVudHMvdGFzay1saXN0L3Rhc2stbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy9zcmMvbGliL3Rhc2stbGlzdC9jb21wb25lbnRzL3Rhc2stbGlzdC90YXNrLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUNILGdCQUFnQixFQUNoQixtQ0FBbUMsRUFDbkMscUNBQXFDLEVBSXJDLGtCQUFrQixFQUNsQixlQUFlLEVBQ2Ysa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQiwrQkFBK0IsRUFDL0IsMEJBQTBCLEVBRzFCLHNCQUFzQixFQUN0QixvQkFBb0IsRUFDdkIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBRUgsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBR0wsTUFBTSxFQUVULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQXNCLE1BQU0sa0JBQWtCLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx3QkFBd0IsRUFB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QUk7c0JBREgsS0FBSztnQkFLTixRQUFRO3NCQURQLEtBQUs7Z0JBS04sU0FBUztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge1xuICAgIEFwcENvbmZpZ1NlcnZpY2UsXG4gICAgQ3VzdG9tRW1wdHlDb250ZW50VGVtcGxhdGVEaXJlY3RpdmUsXG4gICAgQ3VzdG9tTG9hZGluZ0NvbnRlbnRUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgICBEYXRhQ2VsbEV2ZW50LFxuICAgIERhdGFSb3dFdmVudCxcbiAgICBEYXRhVGFibGVBZGFwdGVyLFxuICAgIERhdGFUYWJsZUNvbXBvbmVudCxcbiAgICBEYXRhVGFibGVTY2hlbWEsXG4gICAgREVGQVVMVF9QQUdJTkFUSU9OLFxuICAgIEVtcHR5Q29udGVudENvbXBvbmVudCxcbiAgICBMb2FkaW5nQ29udGVudFRlbXBsYXRlRGlyZWN0aXZlLFxuICAgIE5vQ29udGVudFRlbXBsYXRlRGlyZWN0aXZlLFxuICAgIFBhZ2luYXRlZENvbXBvbmVudCxcbiAgICBQYWdpbmF0aW9uTW9kZWwsXG4gICAgVXNlclByZWZlcmVuY2VzU2VydmljZSxcbiAgICBVc2VyUHJlZmVyZW5jZVZhbHVlc1xufSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRGVzdHJveVJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRhc2tQcmVzZXRzRGVmYXVsdE1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Rhc2stcHJlc2V0Lm1vZGVsJztcbmltcG9ydCB7IFRhc2tMaXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Rhc2tsaXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgZmluYWxpemUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUYXNrUXVlcnlSZXByZXNlbnRhdGlvbiwgVGFza1JlcHJlc2VudGF0aW9uIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuZXhwb3J0IGNvbnN0IFBSRVNFVF9LRVkgPSAnYWRmLXRhc2stbGlzdC5wcmVzZXRzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhZGYtdGFza2xpc3QnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICAgICAgRW1wdHlDb250ZW50Q29tcG9uZW50LFxuICAgICAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgICAgIERhdGFUYWJsZUNvbXBvbmVudCxcbiAgICAgICAgTG9hZGluZ0NvbnRlbnRUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgICAgICAgTm9Db250ZW50VGVtcGxhdGVEaXJlY3RpdmVcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YXNrLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Rhc2stbGlzdC5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVGFza0xpc3RDb21wb25lbnQgZXh0ZW5kcyBEYXRhVGFibGVTY2hlbWEgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyQ29udGVudEluaXQsIFBhZ2luYXRlZENvbXBvbmVudCwgT25Jbml0IHtcbiAgICBAQ29udGVudENoaWxkKEN1c3RvbUVtcHR5Q29udGVudFRlbXBsYXRlRGlyZWN0aXZlKVxuICAgIGN1c3RvbUVtcHR5Q29udGVudDogQ3VzdG9tRW1wdHlDb250ZW50VGVtcGxhdGVEaXJlY3RpdmU7XG5cbiAgICBAQ29udGVudENoaWxkKEN1c3RvbUxvYWRpbmdDb250ZW50VGVtcGxhdGVEaXJlY3RpdmUpXG4gICAgY3VzdG9tTG9hZGluZ0NvbnRlbnQ6IEN1c3RvbUxvYWRpbmdDb250ZW50VGVtcGxhdGVEaXJlY3RpdmU7XG5cbiAgICAvKiogVGhlIGlkIG9mIHRoZSBhcHAuICovXG4gICAgQElucHV0KClcbiAgICBhcHBJZDogbnVtYmVyO1xuXG4gICAgLyoqIFRoZSBJbnN0YW5jZSBJZCBvZiB0aGUgcHJvY2Vzcy4gKi9cbiAgICBASW5wdXQoKVxuICAgIHByb2Nlc3NJbnN0YW5jZUlkOiBzdHJpbmc7XG5cbiAgICAvKiogVGhlIERlZmluaXRpb24gSWQgb2YgdGhlIHByb2Nlc3MuICovXG4gICAgQElucHV0KClcbiAgICBwcm9jZXNzRGVmaW5pdGlvbklkOiBzdHJpbmc7XG5cbiAgICAvKiogQ3VycmVudCBzdGF0ZSBvZiB0aGUgcHJvY2Vzcy4gUG9zc2libGUgdmFsdWVzIGFyZTogYGNvbXBsZXRlZGAsIGBhY3RpdmVgLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc3RhdGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBhc3NpZ25tZW50IG9mIHRoZSBwcm9jZXNzLiBQb3NzaWJsZSB2YWx1ZXMgYXJlOiBcImFzc2lnbmVlXCIgKHRoZSBjdXJyZW50IHVzZXJcbiAgICAgKiBpcyB0aGUgYXNzaWduZWUpLCBcImNhbmRpZGF0ZVwiICh0aGUgY3VycmVudCB1c2VyIGlzIGEgdGFzayBjYW5kaWRhdGUsIFwiZ3JvdXBfeFwiICh0aGUgdGFza1xuICAgICAqIGlzIGFzc2lnbmVkIHRvIGEgZ3JvdXAgd2hlcmUgdGhlIGN1cnJlbnQgdXNlciBpcyBhIG1lbWJlcixcbiAgICAgKiBubyB2YWx1ZSAodGhlIGN1cnJlbnQgdXNlciBpcyBpbnZvbHZlZCkuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBhc3NpZ25tZW50OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmUgdGhlIHNvcnQgb3JkZXIgb2YgdGhlIHRhc2tzLiBQb3NzaWJsZSB2YWx1ZXMgYXJlIDogYGNyZWF0ZWQtZGVzY2AsXG4gICAgICogYGNyZWF0ZWQtYXNjYCwgYGR1ZS1kZXNjYCwgYGR1ZS1hc2NgXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzb3J0OiBzdHJpbmc7XG5cbiAgICAvKiogTmFtZSBvZiB0aGUgdGFza2xpc3QuICovXG4gICAgQElucHV0KClcbiAgICBuYW1lOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmUgd2hpY2ggdGFzayBpZCBzaG91bGQgYmUgc2VsZWN0ZWQgYWZ0ZXIgcmVsb2FkaW5nLiBJZiB0aGUgdGFzayBpZCBkb2Vzbid0XG4gICAgICogZXhpc3Qgb3Igbm90aGluZyBpcyBwYXNzZWQgdGhlbiB0aGUgZmlyc3QgdGFzayB3aWxsIGJlIHNlbGVjdGVkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgbGFuZGluZ1Rhc2tJZDogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogRGF0YSBzb3VyY2Ugb2JqZWN0IHRoYXQgcmVwcmVzZW50cyB0aGUgbnVtYmVyIGFuZCB0aGUgdHlwZSBvZiB0aGUgY29sdW1ucyB0aGF0XG4gICAgICogeW91IHdhbnQgdG8gc2hvdy5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGRhdGE6IERhdGFUYWJsZUFkYXB0ZXI7XG5cbiAgICAvKipcbiAgICAgKiBSb3cgc2VsZWN0aW9uIG1vZGUuIENhbiBiZSBub25lLCBgc2luZ2xlYCBvciBgbXVsdGlwbGVgLiBGb3IgYG11bHRpcGxlYCBtb2RlLFxuICAgICAqIHlvdSBjYW4gdXNlIENtZCAobWFjT1MpIG9yIEN0cmwgKFdpbikgbW9kaWZpZXIga2V5IHRvIHRvZ2dsZSBzZWxlY3Rpb24gZm9yXG4gICAgICogbXVsdGlwbGUgcm93cy5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNlbGVjdGlvbk1vZGU6IHN0cmluZyA9ICdzaW5nbGUnOyAvLyBub25lfHNpbmdsZXxtdWx0aXBsZVxuXG4gICAgLyoqIFRvZ2dsZXMgbXVsdGlwbGUgcm93IHNlbGVjdGlvbiwgcmVuZGVycyBjaGVja2JveGVzIGF0IHRoZSBiZWdpbm5pbmcgb2YgZWFjaCByb3cgKi9cbiAgICBASW5wdXQoKVxuICAgIG11bHRpc2VsZWN0OiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKiogVG9nZ2xlcyBkZWZhdWx0IHNlbGVjdGlvbiBvZiB0aGUgZmlyc3Qgcm93ICovXG4gICAgQElucHV0KClcbiAgICBzZWxlY3RGaXJzdFJvdzogYm9vbGVhbiA9IHRydWU7XG5cbiAgICAvKiogVGhlIGlkIG9mIGEgdGFzayAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGFza0lkOiBzdHJpbmc7XG5cbiAgICAvKiogVG9nZ2xlcyBpbmNsdXNpb24gb2YgUHJvY2VzcyBJbnN0YW5jZXMgKi9cbiAgICBASW5wdXQoKVxuICAgIGluY2x1ZGVQcm9jZXNzSW5zdGFuY2U6IGJvb2xlYW47XG5cbiAgICAvKiogU3RhcnRpbmcgcG9pbnQgb2YgdGhlIGxpc3Qgd2l0aGluIHRoZSBmdWxsIHNldCBvZiB0YXNrcy4gKi9cbiAgICBASW5wdXQoKVxuICAgIHN0YXJ0OiBudW1iZXI7XG5cbiAgICAvKiogVG9nZ2xlcyBjdXN0b20gY29udGV4dCBtZW51IGZvciB0aGUgY29tcG9uZW50LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd0NvbnRleHRNZW51OiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKiogVG9nZ2xlcyB0aGUgc3RpY2t5IGhlYWRlciBtb2RlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc3RpY2t5SGVhZGVyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKiogRW5hYmxlcyBjb2x1bW4gcmVzaXppbmcgZm9yIGRhdGF0YWJsZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgaXNSZXNpemluZ0VuYWJsZWQgPSBmYWxzZTtcblxuICAgIC8qKiBFbmFibGVzIGJsdXIgd2hlbiByZXNpemluZyBkYXRhdGFibGUgY29sdW1ucyAqL1xuICAgIEBJbnB1dCgpXG4gICAgYmx1ck9uUmVzaXplID0gdHJ1ZTtcblxuICAgIC8qKiBFbWl0dGVkIGJlZm9yZSB0aGUgY29udGV4dCBtZW51IGlzIGRpc3BsYXllZCBmb3IgYSByb3cuICovXG4gICAgQE91dHB1dCgpXG4gICAgc2hvd1Jvd0NvbnRleHRNZW51ID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRhQ2VsbEV2ZW50PigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBhIHRhc2sgaW4gdGhlIGxpc3QgaXMgY2xpY2tlZCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJvd0NsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIHJvd3MgYXJlIHNlbGVjdGVkL3Vuc2VsZWN0ZWQgKi9cbiAgICBAT3V0cHV0KClcbiAgICByb3dzU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgdGFzayBsaXN0IGlzIGxvYWRlZCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHN1Y2Nlc3MgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gYW4gZXJyb3Igb2NjdXJzLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGVycm9yID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICAvKiogVGhlIHBhZ2UgbnVtYmVyIG9mIHRoZSB0YXNrcyB0byBmZXRjaC4gKi9cbiAgICBASW5wdXQoKVxuICAgIHBhZ2U6IG51bWJlciA9IDA7XG5cbiAgICAvKiogVGhlIG51bWJlciBvZiB0YXNrcyB0byBmZXRjaC4gRGVmYXVsdCB2YWx1ZTogMjUuICovXG4gICAgQElucHV0KClcbiAgICBzaXplOiBudW1iZXIgPSBERUZBVUxUX1BBR0lOQVRJT04ubWF4SXRlbXM7XG5cbiAgICAvKiogRmlsdGVyIHRoZSB0YXNrcy4gRGlzcGxheSBvbmx5IHRhc2tzIHdpdGggYGNyZWF0ZWRfZGF0ZWAgYWZ0ZXIgYGR1ZUFmdGVyYC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGR1ZUFmdGVyOiBzdHJpbmc7XG5cbiAgICAvKiogRmlsdGVyIHRoZSB0YXNrcy4gRGlzcGxheSBvbmx5IHRhc2tzIHdpdGggYGNyZWF0ZWRfZGF0ZWAgYmVmb3JlIGBkdWVCZWZvcmVgLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZHVlQmVmb3JlOiBzdHJpbmc7XG5cbiAgICByZXF1ZXN0Tm9kZTogVGFza1F1ZXJ5UmVwcmVzZW50YXRpb247XG4gICAgY3VycmVudEluc3RhbmNlSWQ6IHN0cmluZztcbiAgICBzZWxlY3RlZEluc3RhbmNlczogYW55W107XG4gICAgcGFnaW5hdGlvbjogQmVoYXZpb3JTdWJqZWN0PFBhZ2luYXRpb25Nb2RlbD47XG4gICAgcm93czogYW55W10gPSBbXTtcbiAgICBpc0xvYWRpbmc6IGJvb2xlYW4gPSB0cnVlO1xuICAgIHNvcnRpbmc6IGFueVtdID0gWydjcmVhdGVkJywgJ2Rlc2MnXTtcblxuICAgIC8qKlxuICAgICAqIFRvZ2dsZXMgY3VzdG9tIGRhdGEgc291cmNlIG1vZGUuXG4gICAgICogV2hlbiBlbmFibGVkIHRoZSBjb21wb25lbnQgcmVsb2FkcyBkYXRhIGZyb20gaXQncyBjdXJyZW50IHNvdXJjZSBpbnN0ZWFkIG9mIHRoZSBzZXJ2ZXIgc2lkZS5cbiAgICAgKiBUaGlzIGFsbG93cyBnZW5lcmF0aW5nIGFuZCBkaXNwbGF5aW5nIGN1c3RvbSBkYXRhIHNldHMgKGkuZS4gZmlsdGVyZWQgb3V0IGNvbnRlbnQpLlxuICAgICAqL1xuICAgIGhhc0N1c3RvbURhdGFTb3VyY2U6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdGFza0xpc3RTZXJ2aWNlOiBUYXNrTGlzdFNlcnZpY2UsIGFwcENvbmZpZ1NlcnZpY2U6IEFwcENvbmZpZ1NlcnZpY2UsIHByaXZhdGUgdXNlclByZWZlcmVuY2VzOiBVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKGFwcENvbmZpZ1NlcnZpY2UsIFBSRVNFVF9LRVksIHRhc2tQcmVzZXRzRGVmYXVsdE1vZGVsKTtcblxuICAgICAgICB0aGlzLnBhZ2luYXRpb24gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFBhZ2luYXRpb25Nb2RlbD4oe1xuICAgICAgICAgICAgbWF4SXRlbXM6IHRoaXMuc2l6ZSxcbiAgICAgICAgICAgIHNraXBDb3VudDogMCxcbiAgICAgICAgICAgIHRvdGFsSXRlbXM6IDBcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLmNyZWF0ZURhdGF0YWJsZVNjaGVtYSgpO1xuICAgICAgICBpZiAodGhpcy5kYXRhICYmIHRoaXMuZGF0YS5nZXRDb2x1bW5zKCkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGEuc2V0Q29sdW1ucyh0aGlzLmNvbHVtbnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYXBwSWQpIHtcbiAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy51c2VyUHJlZmVyZW5jZXNcbiAgICAgICAgICAgIC5zZWxlY3QoVXNlclByZWZlcmVuY2VWYWx1ZXMuUGFnaW5hdGlvblNpemUpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHBhZ2VTaXplKSA9PiAodGhpcy5zaXplID0gcGFnZVNpemUpKTtcbiAgICB9XG5cbiAgICBzZXRDdXN0b21EYXRhU291cmNlKHJvd3M6IGFueVtdKTogdm9pZCB7XG4gICAgICAgIGlmIChyb3dzKSB7XG4gICAgICAgICAgICB0aGlzLnJvd3MgPSByb3dzO1xuICAgICAgICAgICAgdGhpcy5oYXNDdXN0b21EYXRhU291cmNlID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNQcm9wZXJ0eUNoYW5nZWQoY2hhbmdlcykpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzU29ydENoYW5nZWQoY2hhbmdlcykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNvcnRpbmcgPSB0aGlzLnNvcnQgPyB0aGlzLnNvcnQuc3BsaXQoJy0nKSA6IHRoaXMuc29ydGluZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMucmVsb2FkKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwcmVzZXRDb2x1bW5DaGFuZ2VzID0gY2hhbmdlc1sncHJlc2V0Q29sdW1uJ107XG4gICAgICAgIGlmIChwcmVzZXRDb2x1bW5DaGFuZ2VzICYmICFwcmVzZXRDb2x1bW5DaGFuZ2VzLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgICAgICB0aGlzLmNvbHVtbnMgPSB0aGlzLm1lcmdlSnNvbkFuZEh0bWxTY2hlbWEoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlbG9hZCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmhhc0N1c3RvbURhdGFTb3VyY2UpIHtcbiAgICAgICAgICAgIHRoaXMucmVxdWVzdE5vZGUgPSB0aGlzLmNyZWF0ZVJlcXVlc3ROb2RlKCk7XG4gICAgICAgICAgICB0aGlzLmxvYWQoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZWxlY3QgdGhlIHRhc2sgZ2l2ZW4gaW4gaW5wdXQgaWYgcHJlc2VudFxuICAgICAqXG4gICAgICogQHBhcmFtIHRhc2tJZFNlbGVjdGVkIHNlbGVjdGVkIHRhc2sgaWRcbiAgICAgKi9cbiAgICBzZWxlY3RUYXNrKHRhc2tJZFNlbGVjdGVkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzTGlzdEVtcHR5KCkpIHtcbiAgICAgICAgICAgIGxldCBkYXRhUm93ID0gbnVsbDtcblxuICAgICAgICAgICAgaWYgKHRhc2tJZFNlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgZGF0YVJvdyA9IHRoaXMucm93cy5maW5kKChjdXJyZW50Um93OiBhbnkpID0+IGN1cnJlbnRSb3dbJ2lkJ10gPT09IHRhc2tJZFNlbGVjdGVkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFkYXRhUm93ICYmIHRoaXMuc2VsZWN0Rmlyc3RSb3cpIHtcbiAgICAgICAgICAgICAgICBkYXRhUm93ID0gdGhpcy5yb3dzWzBdO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoZGF0YVJvdykge1xuICAgICAgICAgICAgICAgIGRhdGFSb3cuaXNTZWxlY3RlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50SW5zdGFuY2VJZCA9IGRhdGFSb3dbJ2lkJ107XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRJbnN0YW5jZUlkID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybiB0aGUgY3VycmVudCBpbnN0YW5jZSBpZFxuICAgICAqXG4gICAgICogQHJldHVybnMgdGhlIGN1cnJlbnQgaW5zdGFuY2UgaWRcbiAgICAgKi9cbiAgICBnZXRDdXJyZW50SWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudEluc3RhbmNlSWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgdGhlIHRhc2tJZCBpcyB0aGUgc2FtZSBvZiB0aGUgc2VsZWN0ZWQgdGFza1xuICAgICAqXG4gICAgICogQHBhcmFtIHRhc2tJZCB0YXNrIGlkXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIGN1cnJlbnQgaW5zdGFuY2UgaWQgaXMgdGhlIHNhbWUgYXMgdGFzayBpZCwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAgICAgKi9cbiAgICBpc0VxdWFsVG9DdXJyZW50SWQodGFza0lkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudEluc3RhbmNlSWQgPT09IHRhc2tJZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiB0aGUgbGlzdCBpcyBlbXB0eVxuICAgICAqXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIGxpc3QgaXMgZW1wdHksIG90aGVyd2lzZSBgZmFsc2VgXG4gICAgICovXG4gICAgaXNMaXN0RW1wdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5yb3dzIHx8IHRoaXMucm93cy5sZW5ndGggPT09IDA7XG4gICAgfVxuXG4gICAgb25Sb3dDbGljayhpdGVtOiBEYXRhUm93RXZlbnQpIHtcbiAgICAgICAgdGhpcy5jdXJyZW50SW5zdGFuY2VJZCA9IGl0ZW0udmFsdWUuZ2V0VmFsdWUoJ2lkJyk7XG4gICAgICAgIHRoaXMucm93Q2xpY2suZW1pdCh0aGlzLmN1cnJlbnRJbnN0YW5jZUlkKTtcbiAgICB9XG5cbiAgICBvblJvd1NlbGVjdChldmVudDogQ3VzdG9tRXZlbnQpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluc3RhbmNlcyA9IFsuLi5ldmVudC5kZXRhaWwuc2VsZWN0aW9uXTtcbiAgICAgICAgdGhpcy5yb3dzU2VsZWN0ZWQuZW1pdCh0aGlzLnNlbGVjdGVkSW5zdGFuY2VzKTtcbiAgICB9XG5cbiAgICBvblJvd1Vuc2VsZWN0KGV2ZW50OiBDdXN0b21FdmVudCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSW5zdGFuY2VzID0gWy4uLmV2ZW50LmRldGFpbC5zZWxlY3Rpb25dO1xuICAgICAgICB0aGlzLnJvd3NTZWxlY3RlZC5lbWl0KHRoaXMuc2VsZWN0ZWRJbnN0YW5jZXMpO1xuICAgIH1cblxuICAgIG9uUm93S2V5VXAoZXZlbnQ6IEN1c3RvbUV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudC5kZXRhaWwua2V5Ym9hcmRFdmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgICAgIHRoaXMuY3VycmVudEluc3RhbmNlSWQgPSBldmVudC5kZXRhaWwucm93LmdldFZhbHVlKCdpZCcpO1xuICAgICAgICAgICAgdGhpcy5yb3dDbGljay5lbWl0KHRoaXMuY3VycmVudEluc3RhbmNlSWQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25TaG93Um93Q29udGV4dE1lbnUoZXZlbnQ6IERhdGFDZWxsRXZlbnQpIHtcbiAgICAgICAgdGhpcy5zaG93Um93Q29udGV4dE1lbnUuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgdXBkYXRlUGFnaW5hdGlvbihwYXJhbXM6IFBhZ2luYXRpb25Nb2RlbCkge1xuICAgICAgICBjb25zdCBuZWVkc1JlbG9hZCA9IHBhcmFtcy5tYXhJdGVtcyB8fCBwYXJhbXMuc2tpcENvdW50O1xuXG4gICAgICAgIHRoaXMuc2l6ZSA9IHBhcmFtcy5tYXhJdGVtcztcbiAgICAgICAgdGhpcy5wYWdlID0gdGhpcy5jdXJyZW50UGFnZShwYXJhbXMuc2tpcENvdW50LCBwYXJhbXMubWF4SXRlbXMpO1xuXG4gICAgICAgIGlmIChuZWVkc1JlbG9hZCkge1xuICAgICAgICAgICAgdGhpcy5yZWxvYWQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGN1cnJlbnRQYWdlKHNraXBDb3VudDogbnVtYmVyLCBtYXhJdGVtczogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHNraXBDb3VudCAmJiBtYXhJdGVtcyA/IE1hdGguZmxvb3Ioc2tpcENvdW50IC8gbWF4SXRlbXMpIDogMDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGlzU29ydENoYW5nZWQoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBhY3R1YWxTb3J0ID0gY2hhbmdlc1snc29ydCddO1xuICAgICAgICByZXR1cm4gYWN0dWFsU29ydD8uY3VycmVudFZhbHVlICYmIGFjdHVhbFNvcnQuY3VycmVudFZhbHVlICE9PSBhY3R1YWxTb3J0LnByZXZpb3VzVmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc1Byb3BlcnR5Q2hhbmdlZChjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogYm9vbGVhbiB7XG4gICAgICAgIGxldCBjaGFuZ2VkOiBib29sZWFuID0gdHJ1ZTtcblxuICAgICAgICBjb25zdCBsYW5kaW5nVGFza0lkID0gY2hhbmdlc1snbGFuZGluZ1Rhc2tJZCddO1xuICAgICAgICBjb25zdCBwYWdlID0gY2hhbmdlc1sncGFnZSddO1xuICAgICAgICBjb25zdCBzaXplID0gY2hhbmdlc1snc2l6ZSddO1xuICAgICAgICBpZiAobGFuZGluZ1Rhc2tJZD8uY3VycmVudFZhbHVlICYmIHRoaXMuaXNFcXVhbFRvQ3VycmVudElkKGxhbmRpbmdUYXNrSWQuY3VycmVudFZhbHVlKSkge1xuICAgICAgICAgICAgY2hhbmdlZCA9IGZhbHNlO1xuICAgICAgICB9IGVsc2UgaWYgKHBhZ2UgJiYgcGFnZS5jdXJyZW50VmFsdWUgIT09IHBhZ2UucHJldmlvdXNWYWx1ZSkge1xuICAgICAgICAgICAgY2hhbmdlZCA9IHRydWU7XG4gICAgICAgIH0gZWxzZSBpZiAoc2l6ZSAmJiBzaXplLmN1cnJlbnRWYWx1ZSAhPT0gc2l6ZS5wcmV2aW91c1ZhbHVlKSB7XG4gICAgICAgICAgICBjaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjaGFuZ2VkO1xuICAgIH1cblxuICAgIHByaXZhdGUgbG9hZCgpIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuXG4gICAgICAgIHRoaXMudGFza0xpc3RTZXJ2aWNlXG4gICAgICAgICAgICAuZmluZFRhc2tzQnlTdGF0ZSh0aGlzLnJlcXVlc3ROb2RlKVxuICAgICAgICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gKHRoaXMuaXNMb2FkaW5nID0gZmFsc2UpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgKHRhc2tzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm93cyA9IHRoaXMub3B0aW1pemVUYXNrRGV0YWlscyh0YXNrcy5kYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RUYXNrKHRoaXMubGFuZGluZ1Rhc2tJZCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3VjY2Vzcy5lbWl0KHRhc2tzKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYWdpbmF0aW9uLm5leHQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgY291bnQ6IHRhc2tzLmRhdGEubGVuZ3RoLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4SXRlbXM6IHRoaXMuc2l6ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNraXBDb3VudDogdGhpcy5wYWdlICogdGhpcy5zaXplLFxuICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxJdGVtczogdGFza3MudG90YWxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lcnJvci5lbWl0KGVycm9yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE9wdGltaXplIG5hbWUgZmllbGRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBpbnN0YW5jZXMgdGFzayBkZXRhaWwgbW9kZWxzXG4gICAgICogQHJldHVybnMgbGlzdCBvZiB0YXNrIGRldGFpbCBtb2RlbHNcbiAgICAgKi9cbiAgICBwcml2YXRlIG9wdGltaXplVGFza0RldGFpbHMoaW5zdGFuY2VzOiBUYXNrUmVwcmVzZW50YXRpb25bXSk6IFRhc2tSZXByZXNlbnRhdGlvbltdIHtcbiAgICAgICAgaW5zdGFuY2VzID0gaW5zdGFuY2VzLm1hcCgodGFzaykgPT4ge1xuICAgICAgICAgICAgaWYgKCF0YXNrLm5hbWUpIHtcbiAgICAgICAgICAgICAgICB0YXNrLm5hbWUgPSAnTm8gbmFtZSc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdGFzaztcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBpbnN0YW5jZXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVSZXF1ZXN0Tm9kZSgpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUYXNrUXVlcnlSZXByZXNlbnRhdGlvbih7XG4gICAgICAgICAgICBhcHBEZWZpbml0aW9uSWQ6IHRoaXMuYXBwSWQsXG4gICAgICAgICAgICBkdWVBZnRlcjogdGhpcy5kdWVBZnRlciA/IG5ldyBEYXRlKHRoaXMuZHVlQWZ0ZXIpIDogbnVsbCxcbiAgICAgICAgICAgIGR1ZUJlZm9yZTogdGhpcy5kdWVCZWZvcmUgPyBuZXcgRGF0ZSh0aGlzLmR1ZUJlZm9yZSkgOiBudWxsLFxuICAgICAgICAgICAgcHJvY2Vzc0luc3RhbmNlSWQ6IHRoaXMucHJvY2Vzc0luc3RhbmNlSWQsXG4gICAgICAgICAgICBwcm9jZXNzRGVmaW5pdGlvbklkOiB0aGlzLnByb2Nlc3NEZWZpbml0aW9uSWQsXG4gICAgICAgICAgICB0ZXh0OiB0aGlzLm5hbWUsXG4gICAgICAgICAgICBhc3NpZ25tZW50OiB0aGlzLmFzc2lnbm1lbnQsXG4gICAgICAgICAgICBzdGF0ZTogdGhpcy5zdGF0ZSxcbiAgICAgICAgICAgIHNvcnQ6IHRoaXMuc29ydCxcbiAgICAgICAgICAgIHBhZ2U6IHRoaXMucGFnZSxcbiAgICAgICAgICAgIHNpemU6IHRoaXMuc2l6ZSxcbiAgICAgICAgICAgIHN0YXJ0OiB0aGlzLnN0YXJ0LFxuICAgICAgICAgICAgdGFza0lkOiB0aGlzLnRhc2tJZCxcbiAgICAgICAgICAgIGluY2x1ZGVQcm9jZXNzSW5zdGFuY2U6IHRoaXMuaW5jbHVkZVByb2Nlc3NJbnN0YW5jZVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8YWRmLWRhdGF0YWJsZVxuICAgICpuZ0lmPVwicmVxdWVzdE5vZGU7IGVsc2Ugbm9NZXNzYWdlc1RlbXBsYXRlXCJcbiAgICBbZGF0YV09XCJkYXRhXCJcbiAgICBbcm93c109XCJyb3dzXCJcbiAgICBbY29sdW1uc109XCJjb2x1bW5zXCJcbiAgICBbc29ydGluZ109XCJzb3J0aW5nXCJcbiAgICBbbG9hZGluZ109XCJpc0xvYWRpbmdcIlxuICAgIFtpc1Jlc2l6aW5nRW5hYmxlZF09XCJpc1Jlc2l6aW5nRW5hYmxlZFwiXG4gICAgW2JsdXJPblJlc2l6ZV09XCJibHVyT25SZXNpemVcIlxuICAgIFtzdGlja3lIZWFkZXJdPVwic3RpY2t5SGVhZGVyXCJcbiAgICBbbXVsdGlzZWxlY3RdPVwibXVsdGlzZWxlY3RcIlxuICAgIFtzZWxlY3Rpb25Nb2RlXT1cInNlbGVjdGlvbk1vZGVcIlxuICAgIFtjb250ZXh0TWVudV09XCJzaG93Q29udGV4dE1lbnVcIlxuICAgIChzaG93Um93Q29udGV4dE1lbnUpPVwib25TaG93Um93Q29udGV4dE1lbnUoJGV2ZW50KVwiXG4gICAgKHJvdy1zZWxlY3QpPVwib25Sb3dTZWxlY3QoJGFueSgkZXZlbnQpKVwiXG4gICAgKHJvdy11bnNlbGVjdCk9XCJvblJvd1Vuc2VsZWN0KCRhbnkoJGV2ZW50KSlcIlxuICAgIChyb3dDbGljayk9XCJvblJvd0NsaWNrKCRhbnkoJGV2ZW50KSlcIlxuICAgIChyb3cta2V5dXApPVwib25Sb3dLZXlVcCgkYW55KCRldmVudCkpXCJcbj5cbiAgICA8YWRmLWxvYWRpbmctY29udGVudC10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPCEtLUFkZCB5b3VyIGN1c3RvbSBsb2FkaW5nIHRlbXBsYXRlIGhlcmUtLT5cbiAgICAgICAgICAgIDxtYXQtcHJvZ3Jlc3Mtc3Bpbm5lciAqbmdJZj1cIiFjdXN0b21Mb2FkaW5nQ29udGVudFwiIGNsYXNzPVwiYWRmLXRhc2stbGlzdC1sb2FkaW5nLW1hcmdpblwiIGNvbG9yPVwicHJpbWFyeVwiIG1vZGU9XCJpbmRldGVybWluYXRlXCIgLz5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImFkZi1jdXN0b20tbG9hZGluZy1jb250ZW50LXRlbXBsYXRlXCIgLz5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2FkZi1sb2FkaW5nLWNvbnRlbnQtdGVtcGxhdGU+XG4gICAgPGFkZi1uby1jb250ZW50LXRlbXBsYXRlPlxuICAgICAgICA8bmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8YWRmLWVtcHR5LWNvbnRlbnRcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiFjdXN0b21FbXB0eUNvbnRlbnRcIlxuICAgICAgICAgICAgICAgIGljb249XCJhc3NpZ25tZW50XCJcbiAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ0FERl9UQVNLX0xJU1QuTElTVC5NRVNTQUdFUy5USVRMRScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgIFtzdWJ0aXRsZV09XCInQURGX1RBU0tfTElTVC5MSVNULk1FU1NBR0VTLlNVQlRJVExFJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYWRmLWN1c3RvbS1lbXB0eS1jb250ZW50LXRlbXBsYXRlXCIgLz5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2FkZi1uby1jb250ZW50LXRlbXBsYXRlPlxuPC9hZGYtZGF0YXRhYmxlPlxuXG48bmctdGVtcGxhdGUgI25vTWVzc2FnZXNUZW1wbGF0ZT5cbiAgICA8ZGl2Pnt7ICdBREZfVEFTS19MSVNULkZJTFRFUlMuTUVTU0FHRVMuTk9ORScgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -57,10 +57,10 @@ export class TaskStandaloneComponent {
|
|
|
57
57
|
onShowAttachForm() {
|
|
58
58
|
this.showAttachForm.emit();
|
|
59
59
|
}
|
|
60
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
61
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
60
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TaskStandaloneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
61
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: TaskStandaloneComponent, isStandalone: true, selector: "adf-task-standalone", inputs: { taskName: "taskName", taskId: "taskId", isCompleted: "isCompleted", hasCompletePermission: "hasCompletePermission", hideCancelButton: "hideCancelButton" }, outputs: { cancel: "cancel", complete: "complete", showAttachForm: "showAttachForm" }, ngImport: i0, template: "<mat-card appearance=\"raised\" class=\"adf-message-card\">\n <mat-card-content>\n <div class=\"adf-no-form-message-container\">\n <div class=\"adf-no-form-message-list\">\n <div *ngIf=\"!isCompleted; else completedMessage\" class=\"adf-no-form-message\">\n <span id=\"adf-no-form-message\">{{'ADF_TASK_LIST.STANDALONE_TASK.NO_FORM_MESSAGE' | translate}}</span>\n </div>\n <ng-template #completedMessage>\n <div id=\"adf-completed-form-message\" class=\"adf-no-form-message\">\n <p>{{'ADF_TASK_LIST.STANDALONE_TASK.COMPLETE_TASK_MESSAGE' | translate : {taskName : taskName} }}</p>\n </div>\n <div class=\"adf-no-form-submessage\">\n {{'ADF_TASK_LIST.STANDALONE_TASK.COMPLETE_TASK_SUB_MESSAGE' | translate}}\n </div>\n </ng-template>\n </div>\n </div>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-no-form-mat-card-actions\">\n <button mat-button *ngIf=\"hasAttachFormButton()\" id=\"adf-no-form-attach-form-button\" (click)=\"onShowAttachForm()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.LABEL.ATTACHFORM' | translate }}</button>\n <div class=\"adf-no-form-mat-card-actions-container\">\n <button mat-button *ngIf=\"hasCancelButton()\" id=\"adf-no-form-cancel-button\" (click)=\"onCancelButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}</button>\n <button mat-button *ngIf=\"hasCompleteButton()\" id=\"adf-no-form-complete-button\" color=\"primary\" (click)=\"onCompleteButtonClick()\">{{ 'ADF_TASK_LIST.DETAILS.BUTTON.COMPLETE' | translate }}</button>\n </div>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-message-card{width:60%;box-sizing:border-box;margin:16px auto;padding:8px 8px 0}.adf-message-card .adf-no-form-mat-card-actions{border-top:solid 1px var(--adf-theme-background-status-bar-color)}.adf-message-card .adf-no-form-message-container{height:256px;width:100%;display:table}.adf-message-card .adf-no-form-message-list{display:table-cell;vertical-align:middle;text-align:center}.adf-message-card .adf-no-form-message{padding-bottom:10px;font-size:var(--theme-display-1-font-size);line-height:36px;letter-spacing:-1.3px;opacity:.54;margin:auto;width:fit-content}.adf-message-card .adf-no-form-submessage{font-size:var(--theme-subheading-2-font-size);opacity:.54;margin:auto;width:fit-content}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container){display:flex;justify-content:space-between}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container) button{text-transform:uppercase;border-radius:5px}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container) .mdc-button__label{opacity:.54;font-size:var(--theme-button-font-size);font-weight:700}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatCardModule }, { 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: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
62
62
|
}
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TaskStandaloneComponent, decorators: [{
|
|
64
64
|
type: Component,
|
|
65
65
|
args: [{ selector: 'adf-task-standalone', standalone: true, imports: [CommonModule, TranslateModule, MatCardModule, MatButtonModule], encapsulation: ViewEncapsulation.None, template: "<mat-card appearance=\"raised\" class=\"adf-message-card\">\n <mat-card-content>\n <div class=\"adf-no-form-message-container\">\n <div class=\"adf-no-form-message-list\">\n <div *ngIf=\"!isCompleted; else completedMessage\" class=\"adf-no-form-message\">\n <span id=\"adf-no-form-message\">{{'ADF_TASK_LIST.STANDALONE_TASK.NO_FORM_MESSAGE' | translate}}</span>\n </div>\n <ng-template #completedMessage>\n <div id=\"adf-completed-form-message\" class=\"adf-no-form-message\">\n <p>{{'ADF_TASK_LIST.STANDALONE_TASK.COMPLETE_TASK_MESSAGE' | translate : {taskName : taskName} }}</p>\n </div>\n <div class=\"adf-no-form-submessage\">\n {{'ADF_TASK_LIST.STANDALONE_TASK.COMPLETE_TASK_SUB_MESSAGE' | translate}}\n </div>\n </ng-template>\n </div>\n </div>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-no-form-mat-card-actions\">\n <button mat-button *ngIf=\"hasAttachFormButton()\" id=\"adf-no-form-attach-form-button\" (click)=\"onShowAttachForm()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.LABEL.ATTACHFORM' | translate }}</button>\n <div class=\"adf-no-form-mat-card-actions-container\">\n <button mat-button *ngIf=\"hasCancelButton()\" id=\"adf-no-form-cancel-button\" (click)=\"onCancelButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}</button>\n <button mat-button *ngIf=\"hasCompleteButton()\" id=\"adf-no-form-complete-button\" color=\"primary\" (click)=\"onCompleteButtonClick()\">{{ 'ADF_TASK_LIST.DETAILS.BUTTON.COMPLETE' | translate }}</button>\n </div>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-message-card{width:60%;box-sizing:border-box;margin:16px auto;padding:8px 8px 0}.adf-message-card .adf-no-form-mat-card-actions{border-top:solid 1px var(--adf-theme-background-status-bar-color)}.adf-message-card .adf-no-form-message-container{height:256px;width:100%;display:table}.adf-message-card .adf-no-form-message-list{display:table-cell;vertical-align:middle;text-align:center}.adf-message-card .adf-no-form-message{padding-bottom:10px;font-size:var(--theme-display-1-font-size);line-height:36px;letter-spacing:-1.3px;opacity:.54;margin:auto;width:fit-content}.adf-message-card .adf-no-form-submessage{font-size:var(--theme-subheading-2-font-size);opacity:.54;margin:auto;width:fit-content}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container){display:flex;justify-content:space-between}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container) button{text-transform:uppercase;border-radius:5px}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container) .mdc-button__label{opacity:.54;font-size:var(--theme-button-font-size);font-weight:700}\n"] }]
|
|
66
66
|
}], propDecorators: { taskName: [{
|
|
@@ -80,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
80
80
|
}], showAttachForm: [{
|
|
81
81
|
type: Output
|
|
82
82
|
}] } });
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1zdGFuZGFsb25lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzL3NyYy9saWIvdGFzay1saXN0L2NvbXBvbmVudHMvdGFzay1zdGFuZGFsb25lL3Rhc2stc3RhbmRhbG9uZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy9zcmMvbGliL3Rhc2stbGlzdC9jb21wb25lbnRzL3Rhc2stc3RhbmRhbG9uZS90YXNrLXN0YW5kYWxvbmUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7OztBQVUzRCxNQUFNLE9BQU8sdUJBQXVCO0lBUnBDO1FBaUJJLG1HQUFtRztRQUVuRyxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUVwQixrREFBa0Q7UUFFbEQsMEJBQXFCLEdBQUcsSUFBSSxDQUFDO1FBRTdCLGdEQUFnRDtRQUVoRCxxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFFeEIsbURBQW1EO1FBRW5ELFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRWxDLG1FQUFtRTtRQUVuRSxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVwQyx1RUFBdUU7UUFFdkUsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0tBeUI3QztJQXZCRyxtQkFBbUI7UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxxQkFBcUI7UUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsT0FBTyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzNELENBQUM7SUFFRCxlQUFlO1FBQ1gsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDdkQsQ0FBQztJQUVELG1CQUFtQjtRQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzdCLENBQUM7SUFFRCxnQkFBZ0I7UUFDWixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQy9CLENBQUM7OEdBdkRRLHVCQUF1QjtrR0FBdkIsdUJBQXVCLDRVQy9CcEMsaXlEQTJCQSxvc0NERGMsWUFBWSxrSUFBRSxlQUFlLDJGQUFFLGFBQWEseVZBQUUsZUFBZTs7MkZBSzlELHVCQUF1QjtrQkFSbkMsU0FBUzsrQkFDSSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsZUFBZSxDQUFDLGlCQUd6RCxpQkFBaUIsQ0FBQyxJQUFJOzhCQUtyQyxRQUFRO3NCQURQLEtBQUs7Z0JBS04sTUFBTTtzQkFETCxLQUFLO2dCQUtOLFdBQVc7c0JBRFYsS0FBSztnQkFLTixxQkFBcUI7c0JBRHBCLEtBQUs7Z0JBS04sZ0JBQWdCO3NCQURmLEtBQUs7Z0JBS04sTUFBTTtzQkFETCxNQUFNO2dCQUtQLFFBQVE7c0JBRFAsTUFBTTtnQkFLUCxjQUFjO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTWF0Q2FyZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NhcmQnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhZGYtdGFzay1zdGFuZGFsb25lJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgTWF0Q2FyZE1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGFzay1zdGFuZGFsb25lLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90YXNrLXN0YW5kYWxvbmUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFRhc2tTdGFuZGFsb25lQ29tcG9uZW50IHtcbiAgICAvKiogTmFtZSBvZiB0aGUgdGFzay4gKi9cbiAgICBASW5wdXQoKVxuICAgIHRhc2tOYW1lOiBzdHJpbmc7XG5cbiAgICAvKiogSWQgb2YgdGhlIHRhc2suICovXG4gICAgQElucHV0KClcbiAgICB0YXNrSWQ6IHN0cmluZztcblxuICAgIC8qKiBJZiB0cnVlIHRoZW4gVGFzayBjb21wbGV0ZWQgbWVzc2FnZSBpcyBzaG93biBhbmQgYENvbXBsZXRlYCBhbmQgYENhbmNlbGAgYnV0dG9ucyBhcmUgaGlkZGVuLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgaXNDb21wbGV0ZWQgPSBmYWxzZTtcblxuICAgIC8qKiBUb2dnbGVzIHJlbmRlcmluZyBvZiB0aGUgYENvbXBsZXRlYCBidXR0b24uICovXG4gICAgQElucHV0KClcbiAgICBoYXNDb21wbGV0ZVBlcm1pc3Npb24gPSB0cnVlO1xuXG4gICAgLyoqIFRvZ2dsZXMgcmVuZGVyaW5nIG9mIHRoZSBgQ2FuY2VsYCBidXR0b24uICovXG4gICAgQElucHV0KClcbiAgICBoaWRlQ2FuY2VsQnV0dG9uID0gdHJ1ZTtcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gdGhlIFwiQ2FuY2VsXCIgYnV0dG9uIGlzIGNsaWNrZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgY2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgZm9ybSBhc3NvY2lhdGVkIHdpdGggdGhlIHRhc2sgaXMgY29tcGxldGVkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGNvbXBsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgZm9ybSBhc3NvY2lhdGVkIHdpdGggdGhlIGZvcm0gdGFzayBpcyBhdHRhY2hlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBzaG93QXR0YWNoRm9ybSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIG9uQ2FuY2VsQnV0dG9uQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcbiAgICB9XG5cbiAgICBvbkNvbXBsZXRlQnV0dG9uQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29tcGxldGUuZW1pdCgpO1xuICAgIH1cblxuICAgIGhhc0NvbXBsZXRlQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNDb21wbGV0ZVBlcm1pc3Npb24gJiYgIXRoaXMuaXNDb21wbGV0ZWQ7XG4gICAgfVxuXG4gICAgaGFzQ2FuY2VsQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaGlkZUNhbmNlbEJ1dHRvbiAmJiAhdGhpcy5pc0NvbXBsZXRlZDtcbiAgICB9XG5cbiAgICBoYXNBdHRhY2hGb3JtQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaXNDb21wbGV0ZWQ7XG4gICAgfVxuXG4gICAgb25TaG93QXR0YWNoRm9ybSgpIHtcbiAgICAgICAgdGhpcy5zaG93QXR0YWNoRm9ybS5lbWl0KCk7XG4gICAgfVxufVxuIiwiPG1hdC1jYXJkIGFwcGVhcmFuY2U9XCJyYWlzZWRcIiBjbGFzcz1cImFkZi1tZXNzYWdlLWNhcmRcIj5cbiAgICA8bWF0LWNhcmQtY29udGVudD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1uby1mb3JtLW1lc3NhZ2UtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLW5vLWZvcm0tbWVzc2FnZS1saXN0XCI+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFpc0NvbXBsZXRlZDsgZWxzZSBjb21wbGV0ZWRNZXNzYWdlXCIgY2xhc3M9XCJhZGYtbm8tZm9ybS1tZXNzYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwiYWRmLW5vLWZvcm0tbWVzc2FnZVwiPnt7J0FERl9UQVNLX0xJU1QuU1RBTkRBTE9ORV9UQVNLLk5PX0ZPUk1fTUVTU0FHRScgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2NvbXBsZXRlZE1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJhZGYtY29tcGxldGVkLWZvcm0tbWVzc2FnZVwiIGNsYXNzPVwiYWRmLW5vLWZvcm0tbWVzc2FnZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3snQURGX1RBU0tfTElTVC5TVEFOREFMT05FX1RBU0suQ09NUExFVEVfVEFTS19NRVNTQUdFJyB8IHRyYW5zbGF0ZSA6IHt0YXNrTmFtZSA6IHRhc2tOYW1lfSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtbm8tZm9ybS1zdWJtZXNzYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eydBREZfVEFTS19MSVNULlNUQU5EQUxPTkVfVEFTSy5DT01QTEVURV9UQVNLX1NVQl9NRVNTQUdFJyB8IHRyYW5zbGF0ZX19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxuXG4gICAgPG1hdC1jYXJkLWFjdGlvbnMgY2xhc3M9XCJhZGYtbm8tZm9ybS1tYXQtY2FyZC1hY3Rpb25zXCI+XG4gICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiAqbmdJZj1cImhhc0F0dGFjaEZvcm1CdXR0b24oKVwiIGlkPVwiYWRmLW5vLWZvcm0tYXR0YWNoLWZvcm0tYnV0dG9uXCIgKGNsaWNrKT1cIm9uU2hvd0F0dGFjaEZvcm0oKVwiPnt7ICdBREZfVEFTS19MSVNULlNUQVJUX1RBU0suRk9STS5MQUJFTC5BVFRBQ0hGT1JNJyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLW5vLWZvcm0tbWF0LWNhcmQtYWN0aW9ucy1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiAqbmdJZj1cImhhc0NhbmNlbEJ1dHRvbigpXCIgaWQ9XCJhZGYtbm8tZm9ybS1jYW5jZWwtYnV0dG9uXCIgKGNsaWNrKT1cIm9uQ2FuY2VsQnV0dG9uQ2xpY2soKVwiPnt7ICdBREZfVEFTS19MSVNULlNUQVJUX1RBU0suRk9STS5BQ1RJT04uQ0FOQ0VMJyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uICpuZ0lmPVwiaGFzQ29tcGxldGVCdXR0b24oKVwiIGlkPVwiYWRmLW5vLWZvcm0tY29tcGxldGUtYnV0dG9uXCIgY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cIm9uQ29tcGxldGVCdXR0b25DbGljaygpXCI+e3sgJ0FERl9UQVNLX0xJU1QuREVUQUlMUy5CVVRUT04uQ09NUExFVEUnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbWF0LWNhcmQtYWN0aW9ucz5cbjwvbWF0LWNhcmQ+XG4iXX0=
|
|
@@ -30,13 +30,13 @@ export class ProcessUploadService extends UploadService {
|
|
|
30
30
|
const processInstanceId = file.options.parentId;
|
|
31
31
|
return this.contentApi.createRelatedContentOnProcessInstance(processInstanceId, file.file, opts);
|
|
32
32
|
}
|
|
33
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
34
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ProcessUploadService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
34
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ProcessUploadService, providedIn: 'root' }); }
|
|
35
35
|
}
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ProcessUploadService, decorators: [{
|
|
37
37
|
type: Injectable,
|
|
38
38
|
args: [{
|
|
39
39
|
providedIn: 'root'
|
|
40
40
|
}]
|
|
41
41
|
}] });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy11cGxvYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzL3NyYy9saWIvdGFzay1saXN0L3NlcnZpY2VzL3Byb2Nlc3MtdXBsb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxrQkFBa0IsRUFBZ0MsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsYUFBYTtJQUVuRCxJQUFJLFVBQVU7UUFDVixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDN0YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxJQUFTO1FBQ3RCLE1BQU0sSUFBSSxHQUFHO1lBQ1QsZ0JBQWdCLEVBQUUsSUFBSTtTQUN6QixDQUFDO1FBQ0YsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztRQUNoRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMscUNBQXFDLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRyxDQUFDOzhHQWJRLG9CQUFvQjtrSEFBcEIsb0JBQW9CLGNBRmpCLE1BQU07OzJGQUVULG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IFVwbG9hZFNlcnZpY2UgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvbnRlbnQtc2VydmljZXMnO1xuaW1wb3J0IHsgQWN0aXZpdGlDb250ZW50QXBpLCBSZWxhdGVkQ29udGVudFJlcHJlc2VudGF0aW9uIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUHJvY2Vzc1VwbG9hZFNlcnZpY2UgZXh0ZW5kcyBVcGxvYWRTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9jb250ZW50QXBpOiBBY3Rpdml0aUNvbnRlbnRBcGk7XG4gICAgZ2V0IGNvbnRlbnRBcGkoKTogQWN0aXZpdGlDb250ZW50QXBpIHtcbiAgICAgICAgdGhpcy5fY29udGVudEFwaSA9IHRoaXMuX2NvbnRlbnRBcGkgPz8gbmV3IEFjdGl2aXRpQ29udGVudEFwaSh0aGlzLmFwaVNlcnZpY2UuZ2V0SW5zdGFuY2UoKSk7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb250ZW50QXBpO1xuICAgIH1cblxuICAgIGdldFVwbG9hZFByb21pc2UoZmlsZTogYW55KTogUHJvbWlzZTxSZWxhdGVkQ29udGVudFJlcHJlc2VudGF0aW9uPiB7XG4gICAgICAgIGNvbnN0IG9wdHMgPSB7XG4gICAgICAgICAgICBpc1JlbGF0ZWRDb250ZW50OiB0cnVlXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IHByb2Nlc3NJbnN0YW5jZUlkID0gZmlsZS5vcHRpb25zLnBhcmVudElkO1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50QXBpLmNyZWF0ZVJlbGF0ZWRDb250ZW50T25Qcm9jZXNzSW5zdGFuY2UocHJvY2Vzc0luc3RhbmNlSWQsIGZpbGUuZmlsZSwgb3B0cyk7XG4gICAgfVxufVxuIl19
|