@pega/angular-sdk-components 0.24.1 → 0.24.2
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/_bridge/angular-pconnect.mjs +5 -5
- package/esm2022/lib/_bridge/component-mapper/component-mapper.component.mjs +4 -4
- package/esm2022/lib/_bridge/helpers/sdk_component_map.mjs +1 -1
- package/esm2022/lib/_components/designSystemExtension/alert/alert.component.mjs +4 -4
- package/esm2022/lib/_components/designSystemExtension/alert-banner/alert-banner.component.mjs +4 -4
- package/esm2022/lib/_components/designSystemExtension/banner/banner.component.mjs +4 -4
- package/esm2022/lib/_components/designSystemExtension/case-create-stage/case-create-stage.component.mjs +5 -5
- package/esm2022/lib/_components/designSystemExtension/field-group/field-group.component.mjs +3 -3
- package/esm2022/lib/_components/designSystemExtension/material-case-summary/material-case-summary.component.mjs +5 -5
- package/esm2022/lib/_components/designSystemExtension/material-details/material-details.component.mjs +5 -5
- package/esm2022/lib/_components/designSystemExtension/material-details-fields/material-details-fields.component.mjs +5 -5
- package/esm2022/lib/_components/designSystemExtension/material-summary-item/material-summary-item.component.mjs +5 -5
- package/esm2022/lib/_components/designSystemExtension/material-summary-list/material-summary-list.component.mjs +4 -4
- package/esm2022/lib/_components/designSystemExtension/material-utility/material-utility.component.mjs +5 -5
- package/esm2022/lib/_components/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.mjs +5 -5
- package/esm2022/lib/_components/designSystemExtension/operator/operator.component.mjs +5 -5
- package/esm2022/lib/_components/designSystemExtension/pulse/pulse.component.mjs +4 -4
- package/esm2022/lib/_components/designSystemExtension/rich-text-editor/rich-text-editor.component.mjs +4 -4
- package/esm2022/lib/_components/designSystemExtension/wss-quick-create/wss-quick-create.component.mjs +3 -3
- package/esm2022/lib/_components/field/auto-complete/auto-complete.component.mjs +5 -5
- package/esm2022/lib/_components/field/cancel-alert/cancel-alert.component.mjs +5 -5
- package/esm2022/lib/_components/field/check-box/check-box.component.mjs +5 -5
- package/esm2022/lib/_components/field/currency/currency.component.mjs +32 -17
- package/esm2022/lib/_components/field/date/date.component.mjs +6 -6
- package/esm2022/lib/_components/field/date-time/date-time.component.mjs +14 -43
- package/esm2022/lib/_components/field/decimal/decimal.component.mjs +37 -10
- package/esm2022/lib/_components/field/dropdown/dropdown.component.mjs +5 -5
- package/esm2022/lib/_components/field/email/email.component.mjs +5 -5
- package/esm2022/lib/_components/field/group/group.component.mjs +5 -5
- package/esm2022/lib/_components/field/integer/integer.component.mjs +5 -5
- package/esm2022/lib/_components/field/list-view-action-buttons/list-view-action-buttons.component.mjs +3 -3
- package/esm2022/lib/_components/field/multiselect/multiselect.component.mjs +5 -5
- package/esm2022/lib/_components/field/multiselect/utils.mjs +2 -2
- package/esm2022/lib/_components/field/percentage/percentage.component.mjs +25 -8
- package/esm2022/lib/_components/field/phone/phone.component.mjs +5 -5
- package/esm2022/lib/_components/field/radio-buttons/radio-buttons.component.mjs +5 -5
- package/esm2022/lib/_components/field/rich-text/rich-text.component.mjs +5 -5
- package/esm2022/lib/_components/field/scalar-list/scalar-list.component.mjs +5 -5
- package/esm2022/lib/_components/field/semantic-link/semantic-link.component.mjs +5 -5
- package/esm2022/lib/_components/field/text/text.component.mjs +5 -5
- package/esm2022/lib/_components/field/text-area/text-area.component.mjs +5 -5
- package/esm2022/lib/_components/field/text-content/text-content.component.mjs +5 -5
- package/esm2022/lib/_components/field/text-input/text-input.component.mjs +5 -5
- package/esm2022/lib/_components/field/time/time.component.mjs +5 -5
- package/esm2022/lib/_components/field/url/url.component.mjs +5 -5
- package/esm2022/lib/_components/field/user-reference/user-reference.component.mjs +38 -26
- package/esm2022/lib/_components/infra/Containers/flow-container/flow-container.component.mjs +19 -12
- package/esm2022/lib/_components/infra/Containers/flow-container/helpers.mjs +1 -1
- package/esm2022/lib/_components/infra/Containers/hybrid-view-container/hybrid-view-container.component.mjs +3 -3
- package/esm2022/lib/_components/infra/Containers/modal-view-container/modal-view-container.component.mjs +5 -5
- package/esm2022/lib/_components/infra/Containers/preview-view-container/preview-view-container.component.mjs +3 -3
- package/esm2022/lib/_components/infra/Containers/view-container/view-container.component.mjs +10 -10
- package/esm2022/lib/_components/infra/action-buttons/action-buttons.component.mjs +3 -3
- package/esm2022/lib/_components/infra/assignment/assignment.component.mjs +27 -6
- package/esm2022/lib/_components/infra/assignment-card/assignment-card.component.mjs +4 -4
- package/esm2022/lib/_components/infra/dashboard-filter/dashboard-filter.component.mjs +5 -5
- package/esm2022/lib/_components/infra/defer-load/defer-load.component.mjs +5 -5
- package/esm2022/lib/_components/infra/error-boundary/error-boundary.component.mjs +3 -3
- package/esm2022/lib/_components/infra/multi-step/multi-step.component.mjs +6 -6
- package/esm2022/lib/_components/infra/navbar/navbar.component.mjs +9 -7
- package/esm2022/lib/_components/infra/reference/reference.component.mjs +5 -5
- package/esm2022/lib/_components/infra/region/region.component.mjs +4 -4
- package/esm2022/lib/_components/infra/root-container/root-container.component.mjs +5 -5
- package/esm2022/lib/_components/infra/stages/stages.component.mjs +5 -5
- package/esm2022/lib/_components/infra/view/view.component.mjs +5 -5
- package/esm2022/lib/_components/template/app-shell/app-shell.component.mjs +5 -5
- package/esm2022/lib/_components/template/banner-page/banner-page.component.mjs +5 -5
- package/esm2022/lib/_components/template/case-summary/case-summary.component.mjs +6 -6
- package/esm2022/lib/_components/template/case-view/case-view.component.mjs +6 -6
- package/esm2022/lib/_components/template/confirmation/confirmation.component.mjs +5 -5
- package/esm2022/lib/_components/template/data-reference/data-reference.component.mjs +5 -5
- package/esm2022/lib/_components/template/default-form/default-form.component.mjs +5 -5
- package/esm2022/lib/_components/template/details/details.component.mjs +5 -5
- package/esm2022/lib/_components/template/details-narrow-wide/details-narrow-wide.component.mjs +5 -5
- package/esm2022/lib/_components/template/details-one-column/details-one-column.component.mjs +5 -5
- package/esm2022/lib/_components/template/details-sub-tabs/details-sub-tabs.component.mjs +5 -5
- package/esm2022/lib/_components/template/details-three-column/details-three-column.component.mjs +5 -5
- package/esm2022/lib/_components/template/details-two-column/details-two-column.component.mjs +5 -5
- package/esm2022/lib/_components/template/details-wide-narrow/details-wide-narrow.component.mjs +5 -5
- package/esm2022/lib/_components/template/dynamic-tabs/dynamic-tabs.component.mjs +5 -5
- package/esm2022/lib/_components/template/field-group-list/field-group-list.component.mjs +4 -4
- package/esm2022/lib/_components/template/field-group-template/field-group-template.component.mjs +5 -5
- package/esm2022/lib/_components/template/field-value-list/field-value-list.component.mjs +3 -3
- package/esm2022/lib/_components/template/inline-dashboard/inline-dashboard.component.mjs +4 -4
- package/esm2022/lib/_components/template/inline-dashboard-page/inline-dashboard-page.component.mjs +5 -5
- package/esm2022/lib/_components/template/list-page/list-page.component.mjs +4 -4
- package/esm2022/lib/_components/template/list-view/DefaultViewMeta.mjs +1 -1
- package/esm2022/lib/_components/template/list-view/list-view.component.mjs +7 -7
- package/esm2022/lib/_components/template/list-view/listViewHelpers.mjs +1 -1
- package/esm2022/lib/_components/template/list-view/utils.mjs +1 -1
- package/esm2022/lib/_components/template/multi-reference-readonly/multi-reference-readonly.component.mjs +5 -5
- package/esm2022/lib/_components/template/narrow-wide-form/narrow-wide-form.component.mjs +4 -4
- package/esm2022/lib/_components/template/one-column/one-column.component.mjs +4 -4
- package/esm2022/lib/_components/template/one-column-page/one-column-page.component.mjs +4 -4
- package/esm2022/lib/_components/template/one-column-tab/one-column-tab.component.mjs +4 -4
- package/esm2022/lib/_components/template/page/page.component.mjs +5 -5
- package/esm2022/lib/_components/template/promoted-filters/promoted-filters.component.mjs +5 -5
- package/esm2022/lib/_components/template/repeating-structures/repeating-structures.component.mjs +5 -5
- package/esm2022/lib/_components/template/simple-table/simple-table.component.mjs +5 -5
- package/esm2022/lib/_components/template/simple-table-manual/helpers.mjs +1 -1
- package/esm2022/lib/_components/template/simple-table-manual/simple-table-manual.component.mjs +6 -6
- package/esm2022/lib/_components/template/simple-table-select/simple-table-select.component.mjs +5 -5
- package/esm2022/lib/_components/template/single-reference-readonly/single-reference-readonly.component.mjs +4 -4
- package/esm2022/lib/_components/template/sub-tabs/sub-tabs.component.mjs +5 -5
- package/esm2022/lib/_components/template/three-column/three-column.component.mjs +4 -4
- package/esm2022/lib/_components/template/three-column-page/three-column-page.component.mjs +4 -4
- package/esm2022/lib/_components/template/two-column/two-column.component.mjs +4 -4
- package/esm2022/lib/_components/template/two-column-page/two-column-page.component.mjs +5 -5
- package/esm2022/lib/_components/template/two-column-tab/two-column-tab.component.mjs +4 -4
- package/esm2022/lib/_components/template/utils.mjs +1 -1
- package/esm2022/lib/_components/template/wide-narrow-form/wide-narrow-form.component.mjs +4 -4
- package/esm2022/lib/_components/template/wide-narrow-page/wide-narrow-page.component.mjs +5 -5
- package/esm2022/lib/_components/template/wss-nav-bar/wss-nav-bar.component.mjs +5 -5
- package/esm2022/lib/_components/widget/app-announcement/app-announcement.component.mjs +4 -4
- package/esm2022/lib/_components/widget/attachment/attachment.component.mjs +5 -5
- package/esm2022/lib/_components/widget/case-history/case-history.component.mjs +6 -6
- package/esm2022/lib/_components/widget/feed-container/feed-container.component.mjs +5 -5
- package/esm2022/lib/_components/widget/file-utility/file-utility.component.mjs +18 -18
- package/esm2022/lib/_components/widget/list-utility/list-utility.component.mjs +6 -6
- package/esm2022/lib/_components/widget/quick-create/quick-create.component.mjs +5 -5
- package/esm2022/lib/_components/widget/todo/todo.component.mjs +6 -6
- package/esm2022/lib/_components/widget/utility/utility.component.mjs +5 -5
- package/esm2022/lib/_directives/thousand-seperator.directive.mjs +5 -5
- package/esm2022/lib/_helpers/case-utils.mjs +1 -1
- package/esm2022/lib/_helpers/currency-utils.mjs +1 -1
- package/esm2022/lib/_helpers/event-util.mjs +1 -1
- package/esm2022/lib/_helpers/field-group-utils.mjs +1 -1
- package/esm2022/lib/_helpers/filter-utils.mjs +1 -1
- package/esm2022/lib/_helpers/formatters/boolean.mjs +1 -1
- package/esm2022/lib/_helpers/formatters/currency.mjs +1 -1
- package/esm2022/lib/_helpers/formatters/date.mjs +1 -1
- package/esm2022/lib/_helpers/formatters/format-utils.mjs +1 -1
- package/esm2022/lib/_helpers/formatters/index.mjs +1 -1
- package/esm2022/lib/_helpers/tab-utils.mjs +1 -1
- package/esm2022/lib/_helpers/template-utils.mjs +4 -4
- package/esm2022/lib/_helpers/utils.mjs +5 -5
- package/esm2022/lib/_messages/error-messages.service.mjs +3 -3
- package/esm2022/lib/_messages/get-login-status.service.mjs +3 -3
- package/esm2022/lib/_messages/oauth-response.service.mjs +3 -3
- package/esm2022/lib/_messages/progress-spinner.service.mjs +3 -3
- package/esm2022/lib/_messages/reset-pconnect.service.mjs +3 -3
- package/esm2022/lib/_messages/update-worklist.service.mjs +3 -3
- package/esm2022/lib/_services/case.service.mjs +4 -4
- package/esm2022/lib/_services/datapage.service.mjs +5 -5
- package/esm2022/lib/_services/server-config.service.mjs +3 -3
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/pega-angular-sdk-components.mjs +675 -608
- package/fesm2022/pega-angular-sdk-components.mjs.map +1 -1
- package/lib/_components/field/currency/currency.component.d.ts +4 -5
- package/lib/_components/field/date-time/date-time.component.d.ts +0 -1
- package/lib/_components/field/decimal/decimal.component.d.ts +9 -1
- package/lib/_components/field/percentage/percentage.component.d.ts +4 -0
- package/lib/_components/field/user-reference/user-reference.component.d.ts +9 -4
- package/lib/_components/infra/assignment/assignment.component.d.ts +2 -0
- package/lib/_components/widget/file-utility/file-utility.component.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -416,13 +416,13 @@ export class AngularPConnectService {
|
|
|
416
416
|
inComp.pConn$.setAction('onBlur', this.eventHandler.bind(this));
|
|
417
417
|
}
|
|
418
418
|
}
|
|
419
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
420
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
419
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AngularPConnectService, deps: [{ token: i1.ProgressSpinnerService }, { token: i2.ErrorMessagesService }, { token: i3.Utils }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
420
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AngularPConnectService, providedIn: 'root' }); }
|
|
421
421
|
}
|
|
422
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
422
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AngularPConnectService, decorators: [{
|
|
423
423
|
type: Injectable,
|
|
424
424
|
args: [{
|
|
425
425
|
providedIn: 'root'
|
|
426
426
|
}]
|
|
427
|
-
}], ctorParameters:
|
|
428
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1wY29ubmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fYnJpZGdlL2FuZ3VsYXItcGNvbm5lY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sT0FBTyxNQUFNLGlCQUFpQixDQUFDO0FBR3RDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7QUFlMUMsTUFBTSxPQUFPLHNCQUFzQjtJQW1CakMsNENBQTRDO2FBQzdCLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFFaEMsWUFDVSxTQUFpQyxFQUNqQyxTQUErQixFQUMvQixLQUFZO1FBRlosY0FBUyxHQUFULFNBQVMsQ0FBd0I7UUFDakMsY0FBUyxHQUFULFNBQVMsQ0FBc0I7UUFDL0IsVUFBSyxHQUFMLEtBQUssQ0FBTztRQXhCdEI7O1dBRUc7UUFDSyxhQUFRLEdBQVEsSUFBSSxDQUFDO1FBRTdCOztXQUVHO1FBQ0ssdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBRS9COzs7OztXQUtHO1FBQ0ssc0JBQWlCLEdBQWEsRUFBRSxDQUFDO1FBVXZDLHlEQUF5RDtRQUN6RCw0REFBNEQ7UUFDNUQsb0RBQW9EO1FBQ3BELGtEQUFrRDtRQUNsRCwrQ0FBK0M7UUFDL0MsS0FBSyxDQUFDLG1CQUFtQixDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRTFELDZEQUE2RDtRQUM3RCwrQkFBK0I7UUFDL0IsK0RBQStEO1FBQy9ELFdBQVc7UUFDWCxrRUFBa0U7UUFDbEUsSUFBSTtJQUNOLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ssa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxD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VUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW50ZXJ2YWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCBpc0VxdWFsIGZyb20gJ2Zhc3QtZGVlcC1lcXVhbCc7XG5pbXBvcnQgeyBQcm9ncmVzc1NwaW5uZXJTZXJ2aWNlIH0gZnJvbSAnLi4vX21lc3NhZ2VzL3Byb2dyZXNzLXNwaW5uZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VzU2VydmljZSB9IGZyb20gJy4uL19tZXNzYWdlcy9lcnJvci1tZXNzYWdlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSAnLi4vX2hlbHBlcnMvdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFuZ3VsYXJQQ29ubmVjdERhdGEge1xuICBjb21wSUQ/OiBzdHJpbmc7XG4gIHVuc3Vic2NyaWJlRm4/OiBGdW5jdGlvbjtcbiAgdmFsaWRhdGVNZXNzYWdlPzogc3RyaW5nO1xuICBhY3Rpb25zPzoge1xuICAgIG9uQ2hhbmdlOiBGdW5jdGlvbjtcbiAgICBvbkJsdXI6IEZ1bmN0aW9uO1xuICB9O1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyUENvbm5lY3RTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIExvY2FsIHZhcmlhYmxlIGZvciBhY2Nlc3MgdG8gdGhlIHN0b3JlIG9uY2UgdGhlIHNlcnZpY2UgaXMgY29ubmVjdGVkIHRvIGl0LlxuICAgKi9cbiAgcHJpdmF0ZSB0aGVTdG9yZTogYW55ID0gbnVsbDtcblxuICAvKipcbiAgICogTG9jYWwgdmFyaWFibGUgdXNlZCB0byBjb21wdXRlIHRoZSBuZXh0IGNvbXBvbmVudElEXG4gICAqL1xuICBwcml2YXRlIGNvdW50ZXJDb21wb25lbnRJRCA9IDA7XG5cbiAgLyoqXG4gICAqIExvY2FsIGFycmF5IHVzZWQgdG8gc3RvcmUgdGhlIGFzc29jaWF0aW9uIG9mIGFuIGNvbXBvbmVudCB0byBpdHMgbW9zdCByZWNlbnQgXCJwcm9wc1wiXG4gICAqICB3aGVyZSBcInByb3BzXCIgaXMgdGhlIG9iamVjdCBjb250YWluaW5nIHRoZSBjb21wb25lbnQncyBnZXRDb25maWdQcm9wcyBhbG9uZyB3aXRoXG4gICAqIGFueXRoaW5nIGFkZGVkIGJ5IHBvcHVsYXRlQWRkaXRpb25hbFByb3BzLlxuICAgKiBFYWNoIGVudHJ5IGlzOiB7IF9fY29tcG9uZW50SURfXzogX3RoZSBjb21wb25lbnQncyBtb3N0IHJlY2VudCBwcm9wc18gfVxuICAgKi9cbiAgcHJpdmF0ZSBjb21wb25lbnRQcm9wc0FycjogT2JqZWN0W10gPSBbXTtcblxuICAvKiBVc2VkIHRvIHRvZ2dsZSBzb21lIGNsYXNzLXdpZGUgbG9nZ2luZyAqL1xuICBwcml2YXRlIHN0YXRpYyBiTG9nZ2luZyA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcHNTZXJ2aWNlOiBQcm9ncmVzc1NwaW5uZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXJTZXJ2aWNlOiBFcnJvck1lc3NhZ2VzU2VydmljZSxcbiAgICBwcml2YXRlIHV0aWxzOiBVdGlsc1xuICApIHtcbiAgICAvLyBFc3RhYmxpc2ggbmVjZXNzYXJ5IG92ZXJyaWRlIGZsYWdzIGZvciBvdXIgdXNlIG9mIENvcmVcbiAgICAvLyBjb25zdCBjb3JlT3ZlcnJpZGVzID0geyBcImR5bmFtaWNMb2FkQ29tcG9uZW50c1wiOiBmYWxzZSB9O1xuICAgIC8vIGxldCBjb3JlT3ZlcnJpZGVzID0gUENvcmUuZ2V0QmVoYXZpb3JPdmVycmlkZXMoKTtcbiAgICAvLyBjb3JlT3ZlcnJpZGVzW1wiZHluYW1pY0xvYWRDb21wb25lbnRzXCJdID0gZmFsc2U7XG4gICAgLy8gUENvcmUuc2V0QmVoYXZpb3JPdmVycmlkZXMoIGNvcmVPdmVycmlkZXMgKTtcbiAgICBQQ29yZS5zZXRCZWhhdmlvck92ZXJyaWRlKCdkeW5hbWljTG9hZENvbXBvbmVudHMnLCBmYWxzZSk7XG5cbiAgICAvLyBBbHdheXMgYmVzdCB0byB1c2UgZGVlcCBvYmplY3QgY29tcGFyZSB3aGVuIGl0J3MgYXZhaWxhYmxlXG4gICAgLy8gaWYgKGlzRXF1YWwgIT09IHVuZGVmaW5lZCkge1xuICAgIC8vIGNvbnNvbGUubG9nKGBBbmd1bGFyUENvbm5lY3QgaXMgdXNpbmcgZGVlcCBvYmplY3QgY29tcGFyZWApO1xuICAgIC8vIH0gZWxzZSB7XG4gICAgLy8gY29uc29sZS5sb2coYEFuZ3VsYXJQQ29ubmVjdCBpcyB1c2luZyBKU09OLnN0cmluZ2lmeSBjb21wYXJlYCk7XG4gICAgLy8gfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSB1bmlxdWUgKGZvciB0aGlzIHNlc3Npb24pIENvbXBvbmVudElEIHRoYXQgc2hvdWxkXG4gICAqIGJlIHVzZWQgZm9yIHRoYXQgY29tcG9uZW50IHRvIHVwZGF0ZSBpdHMgbW9zdCByZWNlbnQgcHJvcHNcbiAgICogKHdoaWNoIGNhbiBhbHNvIGJlIGNvbXBhcmVkIGFnYWluc3QgaXRzIHByZXZpb3VzIHZhbHVlXG4gICAqIGJlZm9yZSB1cGRhdGluZykuIE5vdGUgdGhhdCB0aGlzIHJldHVybnMgYSBzdHJpbmcgc28gd2UgY2FuIHVzZVxuICAgKiBpdCBhcyBhIGtleSBpbiBhbiBhc3NvY2lhdGl2ZSBhcnJheVxuICAgKiBAcmV0dXJucyB0aGUgbmV4dCBjb21wb25lbnRJRFxuICAgKi9cbiAgcHJpdmF0ZSBnZXROZXh0Q29tcG9uZW50SWQoKTogc3RyaW5nIHtcbiAgICB0aGlzLmNvdW50ZXJDb21wb25lbnRJRCArPSAxO1xuICAgIC8vIE5vdGUgdGhhdCB3ZSB1c2UgdGhlIHN0cmluZyB2ZXJzaW9uIG9mIHRoZSBudW1iZXIgc28gd2UgaGF2ZSBhblxuICAgIC8vICBhc3NvY2lhdGl2ZSBhcnJheSB0aGF0IHdlIGNhbiBjbGVhbiB1cCBsYXRlciwgaWYgbmVlZGVkLlxuICAgIHJldHVybiB0aGlzLmNvdW50ZXJDb21wb25lbnRJRC50b1N0cmluZygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBDYWxsaW5nIG9iamVjdCAoaW5Db21wKSBzdWJzY3JpYmVzIHRvIHN0b3JlIGNoYW5nZXMuXG4gICAqIEBwYXJhbSBpbkNvbXAgVGhlIGNvbXBvbmVudCB0aGF0J3Mgc3Vic2NyaWJpbmcgdG8gdGhlIHN0b3JlXG4gICAqIEBwYXJhbSBpbkNhbGxiYWNrIFRoZSBjb21wb25lbnQncyBjYWxsYmFjayBmdW5jdGlvbiAodHlwaWNhbGx5IGNhbGxlZCBvblN0YXRlQ2hhbmdlKSB0aGF0IHdpbGxcbiAgICogYmUgY2FsbGVkIHdoZW4gdGhlIHN0b3JlIGNoYW5nZXMuXG4gICAqIEByZXR1cm5zIFRoZSAqKnVuc3Vic2NyaWJlKiogZnVuY3Rpb24gdGhhdCBzaG91bGQgYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBuZWVkc1xuICAgKiB0byB1bnN1YnNjcmliZSBmcm9tIHRoZSBzdG9yZS4gKFR5cGljYWxseSBkdXJpbmcgbmdPbkRlc3Ryb3kpXG4gICAqL1xuICBwcml2YXRlIHN1YnNjcmliZVRvU3RvcmUoaW5Db21wOiBhbnkgPSBudWxsLCBpbkNhbGxiYWNrOiBGdW5jdGlvbiB8IG51bGwgPSBudWxsKTogRnVuY3Rpb24ge1xuICAgIC8vIGNvbnN0IHRoZUNvbXBOYW1lOiBzdHJpbmcgPSBpbkNvbXAgPyBgJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gIDogJ25vIGNvbXBvbmVudCBwcm92aWRlZCc7XG4gICAgbGV0IGZuVW5zdWJzY3JpYmU7XG4gICAgLy8gY29uc29sZS5sb2coIGBCcmlkZ2Ugc3Vic2NyaWJpbmc6ICR7dGhlQ29tcE5hbWV9IGApO1xuICAgIGlmIChpbkNvbXApIHtcbiAgICAgIGZuVW5zdWJzY3JpYmUgPSB0aGlzLmdldFN0b3JlKCkuc3Vic2NyaWJlKGluQ2FsbGJhY2spO1xuICAgIH1cbiAgICByZXR1cm4gZm5VbnN1YnNjcmliZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBDb21wb25lbnQncyBwcm9wZXJ0aWVzIHRoYXQgYXJlIHVzZWQgKGEpIHRvIHBvcHVsYXRlIGNvbXBvbmVudFByb3BzQXJyXG4gIC8vICBhbmQgKGIpIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcilcbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnRpZXMgYXJlIGJlaW5nIG9idGFpbmVkXG4gICAqL1xuICBwcml2YXRlIGdldENvbXBvbmVudFByb3BzKGluQ29tcDogYW55ID0gbnVsbCk6IE9iamVjdCB7XG4gICAgbGV0IGNvbXBQcm9wczogYW55ID0ge307XG4gICAgbGV0IGFkZFByb3BzID0ge307XG5cbiAgICBpZiAoaW5Db21wID09PSBudWxsKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGdldENvbXBvbmVudFByb3BzIGNhbGxlZCB3aXRoIGJhZCBjb21wb25lbnQ6ICR7aW5Db21wfWApO1xuICAgIH1cblxuICAgIC8vIGlmICgoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiRmxvd0NvbnRhaW5lckNvbXBvbmVudFwiKSB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiVmlld0NvbnRhaW5lckNvbXBvbmVudFwiKVxuICAgIC8vICAgICB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiVmlld0NvbXBvbmVudFwiKSB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiRGVmZXJMb2FkQ29tcG9uZW50XCIpKSB7XG4gICAgLy8gICBjb25zb2xlLmxvZyhgLS0+IEFuZ3VsYXJQQ29ubmVjdCBnZXRDb21wb25lbnRQcm9wczogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAvLyB9XG5cbiAgICBpZiAoaW5Db21wLmFkZGl0aW9uYWxQcm9wcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBpZiAodHlwZW9mIGluQ29tcC5hZGRpdGlvbmFsUHJvcHMgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGFkZFByb3BzID0gaW5Db21wLnBDb25uJC5yZXNvbHZlQ29uZmlnUHJvcHMoaW5Db21wLmFkZGl0aW9uYWxQcm9wcyk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBpbkNvbXAuYWRkaXRpb25hbFByb3BzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGNvbnN0IHByb3BzVG9BZGQgPSBpbkNvbXAuYWRkaXRpb25hbFByb3BzKFBDb3JlLmdldFN0b3JlKCkuZ2V0U3RhdGUoKSwgaW5Db21wLnBDb25uJCk7XG4gICAgICAgIGFkZFByb3BzID0gaW5Db21wLnBDb25uJC5yZXNvbHZlQ29uZmlnUHJvcHMocHJvcHNUb0FkZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29tcFByb3BzID0gaW5Db21wLnBDb25uJC5nZXRDb25maWdQcm9wcygpO1xuXG4gICAgLy8gY29uc3QgY29tcG9uZW50TmFtZSA9IGluQ29tcC5jb25zdHJ1Y3Rvci5uYW1lO1xuXG4gICAgLy8gVGhlIGZvbGxvd2luZyBjb21tZW50IGlzIGZyb20gdGhlIE5lYnVsYS9Db25zdGVsbGF0aW9uIHZlcnNpb24gb2YgdGhpcyBjb2RlLiBNZWFudCBhcyBhIHJlbWluZGVyIHRvIGNoZWNrIHRoaXMgb2NjYXNpb25hbGx5XG4gICAgLy8gcG9wdWxhdGUgYWRkaXRpb25hbCBwcm9wcyB3aGljaCBhcmUgY29tcG9uZW50IHNwZWNpZmljIGFuZCBub3QgcHJlc2VudCBpbiBjb25maWd1cmF0aW9uc1xuICAgIC8vIFRoaXMgYmxvY2sgY2FuIGJlIHJlbW92ZWQgb25jZSBhbGwgdGhlc2UgcHJvcHMgd2lsbCBiZSBhZGRlZCBhcyBwYXJ0IG9mIGNvbmZpZ3NcbiAgICBpbkNvbXAucENvbm4kLnBvcHVsYXRlQWRkaXRpb25hbFByb3BzKGNvbXBQcm9wcyk7XG5cbiAgICBjb21wUHJvcHMgPSBpbkNvbXAucENvbm4kLnJlc29sdmVDb25maWdQcm9wcyhjb21wUHJvcHMpO1xuXG4gICAgaWYgKGNvbXBQcm9wcyAmJiB1bmRlZmluZWQgIT09IGNvbXBQcm9wcy52YWxpZGF0ZW1lc3NhZ2UgJiYgY29tcFByb3BzLnZhbGlkYXRlbWVzc2FnZSAhPSAnJykge1xuICAgICAgLy8gY29uc29sZS5sb2coIGAgICB2YWxpZGF0ZW1lc3NhZ2UgZm9yICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9ICR7aW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuY29tcElEfTogJHtjb21wUHJvcHMudmFsaWRhdGVtZXNzYWdlfWApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAuLi5jb21wUHJvcHMsXG4gICAgICAuLi5hZGRQcm9wc1xuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdW5pcXVlIGlkIGZvciBnaXZlbiBjb21wb25lbnQgY3JlYXRlZCB3aGVuIHJlZ2lzdGVyaW5nXG4gICAqIE90aGVyd2lzZSwgcmV0dXJuIHVuZGVmaW5lZC5cbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnR5IGlzIGJlaW5nIHJlcXVlc3RlZC5cbiAgICovXG4gIHB1YmxpYyBnZXRDb21wb25lbnRJRChpbkNvbXApOiBzdHJpbmcge1xuICAgIHJldHVybiBpbkNvbXAuYnJpZGdlQ29tcG9uZW50SUQgfHwgaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuY29tcElEO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHJlcXVlc3RlZCBwcm9wZXJ0eSBmb3IgdGhlIGNvbXBvbmVudCBpZiBpdCBleGlzdHMuXG4gICAqIE90aGVyd2lzZSwgcmV0dXJuIHVuZGVmaW5lZC5cbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnR5IGlzIGJlaW5nIHJlcXVlc3RlZC5cbiAgICogQHBhcmFtIGluUHJvcCBUaGUgcHJvcGVydHkgYmVpbmcgcmVxdWVzdGVkLlxuICAgKi9cbiAgcHVibGljIGdldENvbXBvbmVudFByb3AoaW5Db21wOiBhbnkgPSBudWxsLCBpblByb3AgPSAnJykge1xuICAgIGlmIChpbkNvbXAgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogZ2V0Q29tcG9uZW50UHJvcCBjYWxsZWQgd2l0aCBiYWQgY29tcG9uZW50OiAke2luQ29tcH1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wSUQgPSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS5jb21wSUQ7XG5cbiAgICAvLyBMb29rIHVwIHByb3BlcnR5IGluIHRoZSBjb21wb25lbnQncyBlbnRyeSBpbiBjb21wb25lbnRQcm9wQXJyYXkgKHdoaWNoIHNob3VsZCBoYXZlIHRoZSBtb3N0IHJlY2VudCB2YWx1ZSlcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRQcm9wc0Fycltjb21wSURdW2luUHJvcF07XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgY29tcGxldGUgc2V0IG9mIHJlc29sdmVkIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzb2NpYXRlZCB3aXRoXG4gICAqIHRoaXMgY29tcG9uZW50LlxuICAgKiBUaGlzIGlzIHRoZSBmdWxsIHNldCBvZiBwcm9wZXJ0aWVzIHRoYXQgYXJlIHRyYWNrZWQgaW4gUmVkdXggZm9yIHRoaXMgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldEN1cnJlbnRDb21wbGV0ZVByb3BzKGluQ29tcDogYW55ID0gbnVsbCkge1xuICAgIGlmIChpbkNvbXAgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogZ2V0Q3VycmVudENvbXBsZXRlUHJvcHMgY2FsbGVkIHdpdGggYmFkIGNvbXBvbmVudDogJHtpbkNvbXB9YCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudFByb3BzQXJyW2luQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLmNvbXBJRF07XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIHRoZSBjb21wb25lbnQgYW5kIGl0cyBjYWxsYmFjayBmdW5jdGlvbi4gV2hlbiBhIGNvbXBvbmVudCBjYWxscyB0aGlzIG1ldGhvZFxuICAgKiAodHlwaWNhbGx5IGZyb20gaXRzIG5nT25Jbml0KSwgdGhlIGNvbXBvbmVudCBpcyBnaXZlbiBhIHVuaXF1ZSBjb21wb25lbnRJRCAoZm9yIHRoaXMgc2Vzc2lvbilcbiAgICogYW5kIHN1YnNjcmliZXMgdGhlIGNvbXBvbmVudCB0byB0aGUgc3RvcmUuIEFzIGEgc2lkZSBlZmZlY3QsIGl0IGFsc28gYXNzaWducyB0aGUgY29tcG9uZW50J3NcbiAgICogYWN0aW9ucyAoZnJvbSBpdHMgbWV0YWRhdGEpIHRvIHRoZSBjb21wb25lbnQncyBfX19hY3Rpb25zX19fIGFuZCBiaW5kcyB0aGUgY29tcG9uZW50J3MgY2FsbGJhY2tcbiAgICogKHBhc3NlZCBpbiBhcyBfX19pbkNhbGxiYWNrX19fKSB0byB0aGUgY29tcG9uZW50LiBJZiBhIHByb2JsZW0gaXMgZW5jb3VudGVyZWQsIGFuIGVtcHR5IG9iamVjdCxcbiAgICoge30sIGlzIHJldHVybmVkLlxuICAgKiBAcGFyYW0gaW5Db21wIFRoZSBjb21wb25lbnQgYmVpbmcgcmVnaXN0ZXJlZCBhbmQgc3Vic2NyaWJlZFxuICAgKiBAcGFyYW0gaW5DYWxsYmFjayBUaGUgY29tcG9uZW50J3MgY2FsbGJhY2sgZnVuY3Rpb24gKHR5cGljYWxseSBjYWxsZWQgb25TdGF0ZUNoYW5nZSkgdGhhdFxuICAgKiB3aWxsIGJlIGNhbGxlZCB3aGVuZXZlciB0aGUgc3RhdGUgY2hhbmdlcy5cbiAgICogQHJldHVybnMgQSBKU09OIG9iamVjdCB3aXRoIHRoZSBmb2xsb3dpbmcga2V5czpcbiAgICogY29tcElEOiB0aGUgdW5pcXVlIElEIGFzc29jaWF0ZWQgd2l0aCB0aGlzIGNvbXBvbmVudCxcbiAgICogdW5zdWJzY3JpYmVGbjogdGhlIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgbmVlZHMgdG8gdW5zdWJzY3JpYmUgZnJvbSB0aGUgc3RvcmUsXG4gICAqIHZhbGlkYXRlTWVzc2FnZTogYW55IHZhbGlkYXRpb24vZXJyb3IgbWVzc2FnZSB0aGF0IGdldHMgZ2VuZXJhdGVkIGZvciB0aGlzIG9iamVjdCxcbiAgICogYWN0aW9uczogYW55IGFjdGlvbnMgdGhhdCBhcmUgZGVmaW5lZCBmb3IgdGhpcyBvYmplY3RcbiAgICovXG4gIHJlZ2lzdGVyQW5kU3Vic2NyaWJlQ29tcG9uZW50KGluQ29tcCwgaW5DYWxsYmFjazogRnVuY3Rpb24gfCBudWxsID0gbnVsbCk6IEFuZ3VsYXJQQ29ubmVjdERhdGEge1xuICAgIC8vIENyZWF0ZSBhbiBpbml0aWFsIG9iamVjdCB0byBiZSByZXR1cm5lZC5cbiAgICBjb25zdCByZXR1cm5PYmplY3Q6IEFuZ3VsYXJQQ29ubmVjdERhdGEgPSB7XG4gICAgICBjb21wSUQ6ICcnLFxuICAgICAgdW5zdWJzY3JpYmVGbjogdW5kZWZpbmVkLFxuICAgICAgdmFsaWRhdGVNZXNzYWdlOiAnJyxcbiAgICAgIGFjdGlvbnM6IHVuZGVmaW5lZFxuICAgIH07XG5cbiAgICBpZiAoaW5Db21wID09PSBudWxsIHx8IGluQ2FsbGJhY2sgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmU6IGluQ29tcDogJHtpbkNvbXB9IGluQ2FsbGJhY2s6ICR7aW5DYWxsYmFja31gKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuXG4gICAgY29uc3QgY29tcFR5cGUgPSBpbkNvbXAuY29uc3RydWN0b3IubmFtZTtcblxuICAgIGlmIChBbmd1bGFyUENvbm5lY3RTZXJ2aWNlLmJMb2dnaW5nKSB7XG4gICAgICBjb25zb2xlLmxvZyhgcmVnaXN0ZXJBbmRTdWJzY3JpYmVDb21wb25lbnQ6ICR7Y29tcFR5cGV9YCk7XG4gICAgfVxuXG4gICAgaWYgKHVuZGVmaW5lZCAhPT0gaW5Db21wLmJyaWRnZUNvbXBvbmVudElEKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBPTEQgU0NIT09MOiAke2NvbXBUeXBlfWApO1xuICAgIH1cblxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcC5hY3Rpb25zICYmIHVuZGVmaW5lZCA9PT0gaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmUgZnJvbSAke2NvbXBUeXBlfTogYWN0aW9ucyBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcC5icmlkZ2VDb21wb25lbnRJRCAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICBgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byByZWdpc3RlckFuZFN1YnNjcmliZSBmcm9tICR7Y29tcFR5cGV9OiBicmlkZ2VDb21wb25lbnRJRCBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnVuc3Vic2NyaWJlU3RvcmUgJiYgdW5kZWZpbmVkID09PSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YSkge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmUgZnJvbSAke2NvbXBUeXBlfTogdW5zdWJzY3JpYmVTdG9yZSBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnZhbGlkYXRlTWVzc2FnZSAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHJlZ2lzdGVyQW5kU3Vic2NyaWJlIGZyb20gJHtjb21wVHlwZX06IHZhbGlkYXRlTWVzc2FnZSBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuXG4gICAgLy8gY2FsbCBwcm9jZXNzQWN0aW9ucyB0byBwb3B1bGF0ZSBtZXRhZGF0YSB3aXRoIGFjdGlvbnMgYXMgaW4gUENvbm5lY3RIT1IgaW5pdGlhbGl6ZVxuICAgIHRoaXMucHJvY2Vzc0FjdGlvbnMoaW5Db21wKTtcbiAgICBpZiAodW5kZWZpbmVkID09PSBpbkNvbXAuYWN0aW9ucykge1xuICAgICAgcmV0dXJuT2JqZWN0LmFjdGlvbnMgPSBpbkNvbXAucENvbm4kLmdldEFjdGlvbnMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaW5Db21wLmFjdGlvbnMgPSBpbkNvbXAucENvbm4kLmdldEFjdGlvbnMoKTtcbiAgICB9XG5cbiAgICAvLyBiaW5kIHRoZSBwcm92aWRlZCBjYWxsYmFjayB0byB0aGUgY29tcG9uZW50IGl0J3MgYXNzb2NpYXRlZCB3aXRoXG4gICAgaW5DYWxsYmFjayA9IGluQ2FsbGJhY2suYmluZChpbkNvbXApO1xuXG4gICAgLy8gTm93IHByb2NlZWQgdG8gcmVnaXN0ZXIgYW5kIHN1YnNjcmliZS4uLlxuICAgIGNvbnN0IHRoZUNvbXBJRDogc3RyaW5nID0gdGhpcy5nZXROZXh0Q29tcG9uZW50SWQoKTtcbiAgICBjb25zdCB0aGVVbnN1YjogRnVuY3Rpb24gfCBudWxsID0gdGhpcy5zdWJzY3JpYmVUb1N0b3JlKGluQ29tcCwgaW5DYWxsYmFjayk7XG5cbiAgICBpZiAodW5kZWZpbmVkID09PSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YSkge1xuICAgICAgaW5Db21wLmJyaWRnZUNvbXBvbmVudElEID0gdGhlQ29tcElEO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm5PYmplY3QuY29tcElEID0gdGhlQ29tcElEO1xuICAgICAgcmV0dXJuT2JqZWN0LnVuc3Vic2NyaWJlRm4gPSAoKSA9PiB7XG4gICAgICAgIHRoaXMucmVtb3ZlRm9ybUZpZWxkKGluQ29tcCk7XG4gICAgICAgIHRoZVVuc3ViKCk7XG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIGluaXRpYWxpemUgdGhpcyBjb21wb25lbnRzIGVudHJ5IGluIHRoZSBjb21wb25lbnRQcm9wc0FyclxuICAgIHRoaXMuY29tcG9uZW50UHJvcHNBcnJbdGhlQ29tcElEXSA9IHt9O1xuXG4gICAgdGhpcy5hZGRGb3JtRmllbGQoaW5Db21wKTtcblxuICAgIC8vIHJldHVybiBvYmplY3Qgd2l0aCBjb21wSUQgYW5kIHVuc3Vic2NyaWJlLi4uXG4gICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgfVxuXG4gIGFkZEZvcm1GaWVsZChpbkNvbXApIHtcbiAgICBpbkNvbXAucENvbm4kPy5hZGRGb3JtRmllbGQoKTtcbiAgfVxuXG4gIHJlbW92ZUZvcm1GaWVsZChpbkNvbXApIHtcbiAgICBpZiAoaW5Db21wLnBDb25uJD8ucmVtb3ZlRm9ybUZpZWxkKSB7XG4gICAgICBpbkNvbXAucENvbm4kPy5yZW1vdmVGb3JtRmllbGQoKTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbXBvbmVudCdzIGVudHJ5IGluIF9fX2NvbXBvbmVudFByb3BzQXJyX19fIGlzXG4gIC8vICB0aGUgc2FtZSBhcyB0aGUgaW5Db21wUHJvcHMgcGFzc2VkIGluLlxuICAvLyAgQXMgYSBzaWRlIGVmZmVjdCwgdXBkYXRlIHRoZSBjb21wb25lbnQncyBlbnRyeSBpbiBjb21wb25lbnRQcm9wc0FyclxuICAvLyAgTk9URTogSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBpbmNvbWluZyBjb21wb25lbnQgaGFzIHRoZSBmb2xsb3dpbmc6XG4gIC8vICAqIGEgYnJpZGdlQ29tcG9uZW50SUQgPHN0cmluZz4gcHJvcGVydHkgLSB1c2VkIGFzIGxvb2t1cCBrZXkgaW4gY29tcG9uZW50UHJvcHNBcnJcbiAgLy8gICogYSBwQ29ubiQgPD8+IHByb3BlcnR5IC0gdXNlZCB0byBhY2Nlc3MgZnVuY3Rpb25zIGFjY2Vzc2VkIGluIGdldENvbXBvbmVudFByb3BzXG4gIC8vIFJldHVybiB0cnVlOiBtZWFucyB0aGUgY29tcG9uZW50IHByb3BzIGFyZSBkaWZmZXJlbnQgYW5kIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcilcbiAgLy8gUmV0dXJuIGZhbHNlOiBtZWFucyB0aGUgY29tcG9uZW50IHByb3BzIGFyZSB0aGUgc2FtZSBhbmQgdGhlIGNvbXBvbmVudCBkb2Vzbid0IG5lZWQgdG8gdXBkYXRlIChyZS1yZW5kZXIpXG4gIC8vICBPbiBiYWQgaW5wdXQsIHJldHVybiBmYWxzZTtcbiAgLyoqXG4gICAqIFJldHVybnMgKip0cnVlKiogaWYgdGhlIGNvbXBvbmVudCdzIGVudHJ5IGluIF9fX2NvbXBvbmVudFByb3BzQXJyX19fIGlzXG4gICAqIHRoZSBzYW1lIGFzIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIGN1cnJlbnQgYXNzb2NpYXRlZCB3aXRoIHRoZSBjb21wb25lbnQgKF9fX2luQ29tcF9fXykgcGFzc2VkIGluLlxuICAgKiBBcyBhIHNpZGUgZWZmZWN0LCB0aGUgY29tcG9uZW50J3MgZW50cnkgaW4gX19fY29tcG9uZW50UHJvcHNBcnJfX18gaXMgdXBkYXRlZC5cbiAgICogKipOb3RlKio6IEl0IGlzIGFzc3VtZWQgdGhhdCB0aGUgaW5jb21pbmcgY29tcG9uZW50IGhhcyB0aGUgZm9sbG93aW5nOlxuICAgKiAoYSkgYSBicmlkZ2VDb21wb25lbnRJRCBfc3RyaW5nXyBwcm9wZXJ0eSB1c2VkIGFzIGxvb2t1cCBrZXkgaW4gX19fY29tcG9uZW50UHJvcHNBcnJfX19cbiAgICogYW5kIChiKSBhIF9fX3BDb25uJF9fXyBwcm9wZXJ0eSB1c2VkIHRvIGFjY2VzcyBmdW5jdGlvbnMgY2FsbGVkIGluIF9fX2dldENvbXBvbmVudFByb3BzX19fXG4gICAqXG4gICAqIEBwYXJhbSBpbkNvbXAgVGhlIGNvbXBvbmVudCBhc2tpbmcgaWYgaXQgc2hvdWxkIHVwZGF0ZSBpdHNlbGZcbiAgICogQHJldHVybnMgUmV0dXJuICoqdHJ1ZSoqOiBtZWFucyB0aGUgY29tcG9uZW50IHByb3BzIGFyZSBkaWZmZXJlbnQgYW5kIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcikuXG4gICAqIFJldHVybiAqKmZhbHNlKio6IG1lYW5zIHRoZSBjb21wb25lbnQgcHJvcHMgYXJlIHRoZSBzYW1lIGFuZCB0aGUgY29tcG9uZW50IGRvZXNuJ3QgbmVlZCB0byB1cGRhdGUgKHJlLXJlbmRlcikuXG4gICAqIElmIHRoZSAqKippbkNvbXAqKiogaW5wdXQgaXMgYmFkLCBmYWxzZSBpcyBhbHNvIHJldHVybmVkLlxuICAgKi9cbiAgc2hvdWxkQ29tcG9uZW50VXBkYXRlKGluQ29tcCk6IGJvb2xlYW4ge1xuICAgIC8vIGNvbnN0IGJTaG93TG9nZ2luZyA9IGZhbHNlO1xuICAgIGxldCBiUmV0ID0gZmFsc2U7XG4gICAgLy8gY2hlY2sgZm9yIHJlYXNvbmFibGUgaW5wdXRcbiAgICBpZiAoVXRpbHMuaXNFbXB0eU9iamVjdChpbkNvbXApKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHNob3VsZENvbXBvbmVudFVwZGF0ZTogaW5Db21wOiAke0pTT04uc3RyaW5naWZ5KGluQ29tcCl9YCk7XG4gICAgICByZXR1cm4gYlJldDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnZhbGlkYXRlTWVzc2FnZSAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHNob3VsZENvbXBvbmVudFVwZGF0ZTogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX0gZG9lcyBub3QgaGF2ZSBhIHZhbGlkYXRlTWVzc2FnZSBwcm9wZXJ0eS5gKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wSUQgPSB0aGlzLmdldENvbXBvbmVudElEKGluQ29tcCk7XG5cbiAgICBjb25zdCBjdXJyZW50UHJvcHM6IGFueSA9IHRoaXMuY29tcG9uZW50UHJvcHNBcnJbY29tcElEXTtcbiAgICBjb25zdCBjdXJyZW50UHJvcHNBc1N0cjogc3RyaW5nID0gSlNPTi5zdHJpbmdpZnkoY3VycmVudFByb3BzKTtcblxuICAgIGNvbnN0IGluY29taW5nUHJvcHM6IGFueSA9IHRoaXMuZ2V0Q29tcG9uZW50UHJvcHMoaW5Db21wKTtcblxuICAgIC8vIGlmIGhhdmUgcGFnZU1lc3NhZ2VzLCBhbmQgaXQgaXMgYmxhbmssIHJlbW92ZSBpdC4gIFRoaXMgY2F1c2VzIGlzc3VlcyBvZiBtYWtpbmcgaXQgYXBwZWFyXG4gICAgLy8gdGhhdCBhIHdpbGwgY2F1c2UgYW4gdXBkYXRlLCB3aGVuIHRoZXJlIGlzIG5vIGNoYW5nZVxuICAgIGlmICh0aGlzLmlzUGFnZU1lc3NhZ2VzRW1wdHkoaW5jb21pbmdQcm9wcykpIHtcbiAgICAgIGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLnBhZ2VNZXNzYWdlcyA9IGluY29taW5nUHJvcHMucGFnZU1lc3NhZ2VzO1xuICAgICAgZGVsZXRlIGluY29taW5nUHJvcHMucGFnZU1lc3NhZ2VzO1xuICAgIH1cblxuICAgIGlmIChpbmNvbWluZ1Byb3BzLmh0dHBNZXNzYWdlcykge1xuICAgICAgaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuaHR0cE1lc3NhZ2VzID0gaW5jb21pbmdQcm9wcy5odHRwTWVzc2FnZXM7XG4gICAgICBpbmNvbWluZ1Byb3BzLmh0dHBNZXNzYWdlcyA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBjb25zdCBpbmNvbWluZ1Byb3BzQXNTdHI6IHN0cmluZyA9IEpTT04uc3RyaW5naWZ5KGluY29taW5nUHJvcHMpO1xuXG4gICAgYlJldCA9IGlzRXF1YWwgPyAhaXNFcXVhbChjdXJyZW50UHJvcHMsIGluY29taW5nUHJvcHMpIDogY3VycmVudFByb3BzQXNTdHIgIT0gaW5jb21pbmdQcm9wc0FzU3RyO1xuXG4gICAgLy8gQmVsb3cgcGllY2Ugb2YgY29kZSBpcyBuZWVkZWQgdG8gcmUtcmVuZGVyIHRoZSBjb21wb25lbnQgc2luY2Ugd2Ugd2FubmEgZXZhbHVhdGUgdGhlIFZpc2liaWxpdHkgZXhwcmVzc2lvbiB3aXRoaW4gVmlldyBjb21wb25lbnQgaW4gc3VjaCBjYXNlc1xuICAgIGlmIChpbkNvbXAucENvbm4kLm1ldGEuY29uZmlnLmNvbnRleHQ/Lmxlbmd0aCA+IDAgJiYgaW5Db21wLnBDb25uJC5nZXRQYWdlUmVmZXJlbmNlKCkubGVuZ3RoID4gJ2Nhc2VJbmZvLmNvbnRlbnQnLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgLy8gTm93IHVwZGF0ZSB0aGUgZW50cnkgaW4gY29tcG9uZW50UHJvcHNBcnIgd2l0aCB0aGUgaW5jb21pbmcgdmFsdWUgc29cbiAgICAvLyAgd2UgY2FuIGNvbXBhcmUgYWdhaW5zdCB0aGF0IG5leHQgdGltZS4uLlxuICAgIHRoaXMuY29tcG9uZW50UHJvcHNBcnJbY29tcElEXSA9IGluY29taW5nUHJvcHM7XG4gICAgY29uc3QgdmFsaWRhdGVtZXNzYWdlID0gaW5jb21pbmdQcm9wcy52YWxpZGF0ZW1lc3NhZ2UgPT09IHVuZGVmaW5lZCA/ICcnIDogdGhpcy51dGlscy5odG1sRGVjb2RlKGluY29taW5nUHJvcHMudmFsaWRhdGVtZXNzYWdlKTtcbiAgICAvLyBhbmQgdXBkYXRlIHRoZSBjb21wb25lbnQncyB2YWxpZGF0aW9uIG1lc3NhZ2UgKGlmIHVuZGVmaW5lZCwgaXQgc2hvdWxkIGJlIHNldCB0byBcIlwiKVxuICAgIGlmICh1bmRlZmluZWQgIT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS52YWxpZGF0ZU1lc3NhZ2UgPSB2YWxpZGF0ZW1lc3NhZ2U7XG5cbiAgICAgIGlmIChpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS52YWxpZGF0ZU1lc3NhZ2UgIT0gJycpIHtcbiAgICAgICAgLy8gaWYgaGF2ZSBhIHZhbGlkYXRlIG1lc3NhZ2UsIHR1cm4gb2ZmIHNwaW5uZXJcbiAgICAgICAgY29uc3QgdGltZXIgPSBpbnRlcnZhbCgxMDApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5wc1NlcnZpY2Uuc2VuZE1lc3NhZ2UoZmFsc2UpO1xuXG4gICAgICAgICAgdGltZXIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgbGV0IHNFcnJvck1lc3NhZ2UgPSBjdXJyZW50UHJvcHMgJiYgY3VycmVudFByb3BzLmxhYmVsID8gY3VycmVudFByb3BzLmxhYmVsLmNvbmNhdCgnIC0gJykgOiAnJztcbiAgICAgICAgc0Vycm9yTWVzc2FnZSA9IHNFcnJvck1lc3NhZ2UuY29uY2F0KGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLnZhbGlkYXRlTWVzc2FnZSk7XG4gICAgICAgIHRoaXMuZXJTZXJ2aWNlLnNlbmRNZXNzYWdlKCd1cGRhdGUnLCBzRXJyb3JNZXNzYWdlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaW5Db21wLnZhbGlkYXRlTWVzc2FnZSA9IHZhbGlkYXRlbWVzc2FnZTtcbiAgICB9XG5cbiAgICBpZiAoYlJldCAmJiBjb21wSUQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgYlJldCA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIGNvbnNvbGUubG9nKCBgQW5ndWxhclBDb25uZWN0IGNvbXBvbmVudCAke2NvbXBJRH0gLSAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfSAtIHNob3VsZENvbXBvbmVudFVwZGF0ZTogJHtiUmV0fWApO1xuICAgIC8vIGNvbnNvbGUubG9nKFwiY3VycmVudCBwcm9wczogXCIgKyBjdXJyZW50UHJvcHNBc1N0cik7XG5cbiAgICBpZiAoYlJldCkge1xuICAgICAgLy8gY29uc29sZS5sb2coYCoqKiogY2hhbmdlIGZvcjogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKFwiY3VycmVudCBwcm9wczogXCIgKyBjdXJyZW50UHJvcHNBc1N0cik7XG4gICAgICAvLyBjb25zb2xlLmxvZyhcImluY29taW5nIHByb3BzOiBcIiArIGluY29taW5nUHJvcHNBc1N0cik7XG4gICAgICAvLyBjb25zb2xlLmxvZyhgICAgICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiBzaG91bGRDb21wb25lbnRVcGRhdGUgcmV0dXJuaW5nOiAke2JSZXR9LCBjb21wSWQ6ICR7Y29tcElEfWAgKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCBgICAgIFVwZGF0aW5nIHdpdGggY29tcG9uZW50UHJvcHMgZm9yICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiAke0pTT04uc3RyaW5naWZ5KHRoaXMuY29tcG9uZW50UHJvcHNBcnJbY29tcElEXSl9YCk7XG4gICAgICAvLyBjb25zb2xlLmxvZyggYCAgICAgICAgICBhbmQgdmFsaWRhdGVNZXNzYWdlOiAke2luQ29tcC52YWxpZGF0ZU1lc3NhZ2V9YCk7XG4gICAgfVxuICAgIC8vIGVsc2UgaWYgKGluQ29tcC5jb25zdHJ1Y3Rvci5uYW1lLmluZGV4T2YoXCJWaWV3XCIpID49IDAgfHwgaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUuaW5kZXhPZihcIlJvb3RcIikgPj0gMCkge1xuICAgIC8vICAgY29uc29sZS5sb2coXCJubyBjaGFuZ2VcIik7XG4gICAgLy8gICBjb25zb2xlLmxvZyhcImN1cnJlbnQgcHJvcHM6IFwiICsgY3VycmVudFByb3BzQXNTdHIpO1xuICAgIC8vICAgY29uc29sZS5sb2coXCJpbmNvbWluZyBwcm9wczogXCIgKyBpbmNvbWluZ1Byb3BzQXNTdHIpO1xuICAgIC8vICAgY29uc29sZS5sb2coYCAgICAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfTogc2hvdWxkQ29tcG9uZW50VXBkYXRlIHJldHVybmluZzogJHtiUmV0fSwgY29tcElkOiAke2NvbXBJRH1gICk7XG5cbiAgICAvLyB9XG5cbiAgICAvLyBjb25zb2xlLmxvZyhgICAgICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiBzaG91bGRDb21wb25lbnRVcGRhdGUgcmV0dXJuaW5nOiAke2JSZXR9YCk7XG5cbiAgICByZXR1cm4gYlJldDtcbiAgfVxuXG4gIGlzUGFnZU1lc3NhZ2VzRW1wdHkoaW5jb21pbmdQcm9wcykge1xuICAgIHJldHVybiBpbmNvbWluZ1Byb3BzLnBhZ2VNZXNzYWdlcyAmJiBpbmNvbWluZ1Byb3BzLnBhZ2VNZXNzYWdlcy5sZW5ndGggPT09IDA7XG4gIH1cblxuICAvKipcbiAgICogQ2FuIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgaGFzIGVuY291bnRlcmVkIGEgY2hhbmdlIGV2ZW50XG4gICAqIEBwYXJhbSBpbkNvbXAgVGhlIGNvbXBvbmVudCBjYWxsaW5nIHRoZSBjaGFuZ2UgZXZlbnRcbiAgICogQHBhcmFtIGV2ZW50IFRoZSBldmVudFxuICAgKi9cbiAgY2hhbmdlSGFuZGxlcihpbkNvbXAsIGV2ZW50KSB7XG4gICAgY29uc3QgYkxvZ2dpbmcgPSBmYWxzZTtcbiAgICBpZiAoYkxvZ2dpbmcpIHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGBBbmd1bGFyUENvbm5lY3QuY2hhbmdlSGFuZGxlcmApO1xuICAgIH1cbiAgICAvLyBjaGVjayBmb3IgcmVhc29uYWJsZSBpbnB1dFxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcCB8fCBVdGlscy5pc0VtcHR5T2JqZWN0KGluQ29tcCkpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gY2hhbmdlSGFuZGxlcjogaW5Db21wOiAke0pTT04uc3RyaW5naWZ5KGluQ29tcCl9YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcENvbm5lY3QgPSBpbkNvbXAucENvbm4kO1xuICAgIGlmICh1bmRlZmluZWQgPT09IHBDb25uZWN0KSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIGNoYW5nZUhhbmRsZXI6IGluQ29tcC5wQ29ubiQ6ICR7cENvbm5lY3R9YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gY2xlYXIgb3V0IGVycm9yc1xuICAgIHRoaXMuZXJTZXJ2aWNlLnNlbmRNZXNzYWdlKCdkaXNtaXNzJywgJycpO1xuXG4gICAgcENvbm5lY3QuZ2V0QWN0aW9uc0FwaSgpLmNoYW5nZUhhbmRsZXIocENvbm5lY3QsIGV2ZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYW4gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBoYXMgZW5jb3VudGVyZWQgYW4gZXZlbnQgKHN1Y2ggYXMgYmx1cilcbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IGNhbGxpbmcgdGhlIGV2ZW50XG4gICAqIEBwYXJhbSBldmVudCBUaGUgZXZlbnRcbiAgICovXG4gIGV2ZW50SGFuZGxlcihpbkNvbXAsIGV2ZW50KSB7XG4gICAgY29uc3QgYkxvZ2dpbmcgPSBmYWxzZTtcbiAgICBpZiAoYkxvZ2dpbmcpIHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGBBbmd1bGFyUENvbm5lY3QuZXZlbnRIYW5kbGVyYCk7XG4gICAgfVxuICAgIC8vIGNoZWNrIGZvciByZWFzb25hYmxlIGlucHV0XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wIHx8IFV0aWxzLmlzRW1wdHlPYmplY3QoaW5Db21wKSkge1xuICAgICAgY29uc29sZS5lcnJvcihgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byBldmVudEhhbmRsZXI6IGluQ29tcDogJHtKU09OLnN0cmluZ2lmeShpbkNvbXApfWApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBDb25uZWN0ID0gaW5Db21wLnBDb25uJDtcbiAgICBpZiAodW5kZWZpbmVkID09PSBwQ29ubmVjdCkge1xuICAgICAgY29uc29sZS5lcnJvcihgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byBldmVudEhhbmRsZXI6IGluQ29tcC5wQ29ubiQ6ICR7cENvbm5lY3R9YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcENvbm5lY3QuZ2V0QWN0aW9uc0FwaSgpLmV2ZW50SGFuZGxlcihwQ29ubmVjdCwgZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIEEgaGFuZGxlIHRvIHRoZSBhcHBsaWNhdGlvbidzIHN0b3JlXG4gICAqL1xuICBnZXRTdG9yZSgpIHtcbiAgICBpZiAodGhpcy50aGVTdG9yZSA9PT0gbnVsbCkge1xuICAgICAgdGhpcy50aGVTdG9yZSA9IFBDb3JlLmdldFN0b3JlKCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnRoZVN0b3JlO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBiTG9nTXNnIElmIHRydWUsIHdpbGwgd3JpdGUgdGhlIHN0cmluZ2lmaWVkIHN0YXRlIHRvIHRoZSBzdG9yZSBmb3IgZGVidWdnaW5nL2luc3BlY3Rpb25cbiAgICogQHBhcmFtIGluQ29tcCBJZiBzdXBwbGllZCwgdGhlIGNvbXBvbmVudCB0aGF0IGlzIHJlcXVlc3RpbmcgdGhlIHN0b3JlJ3Mgc3RhdGVcbiAgICogQHJldHVybnMgQSBoYW5kbGUgdG8gdGhlIF9fc3RhdGVfXyBvZiBhcHBsaWNhdGlvbidzIHN0b3JlXG4gICAqL1xuICBnZXRTdGF0ZShiTG9nTXNnOiBib29sZWFuID0gZmFsc2UsIGluQ29tcDogYW55ID0gbnVsbCkge1xuICAgIGNvbnN0IHRoZVN0YXRlOiBvYmplY3QgPSB0aGlzLmdldFN0b3JlKCkuZ2V0U3RhdGUoKTtcbiAgICBpZiAoYkxvZ01zZykge1xuICAgICAgY29uc3QgdGhlQ29tcE5hbWU6IHN0cmluZyA9IGluQ29tcCA/IGAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfTogYCA6ICcnO1xuICAgICAgY29uc29sZS5sb2coYCR7dGhlQ29tcE5hbWV9IFN0b3JlIHN0YXRlOiAke0pTT04uc3RyaW5naWZ5KHRoZVN0YXRlKX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoZVN0YXRlO1xuICB9XG5cbiAgLy8gcHJvY2Vzc0FjdGlvbnMgLSBjYXJyaWVkIG92ZXIgZnJvbSBQQ29ubmVjdEhPQyBpbml0aWFsaXplXG4gIC8qKlxuICAgKiAgcHJvY2Vzc0FjdGlvbnMgZXhwb3NlcyBhbGwgYWN0aW9ucyBpbiB0aGUgbWV0YWRhdGEuXG4gICAqICBBdHRhY2hlcyBjb21tb24gaGFuZGxlciAoZXZlbnRIYW5kbGVyKSBmb3IgYWxsIGFjdGlvbnMuXG4gICAqL1xuICBwcml2YXRlIHByb2Nlc3NBY3Rpb25zKGluQ29tcCkge1xuICAgIGNvbnN0IHBDb25uZWN0ID0gaW5Db21wLnBDb25uJDtcbiAgICBpZiAodW5kZWZpbmVkID09PSBwQ29ubmVjdCkge1xuICAgICAgY29uc29sZS5lcnJvcihgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byBwcm9jZXNzQWN0aW9uczogcENvbm4kOiAke3BDb25uZWN0fSBmcm9tIGNvbXBvbmVudDogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaW5Db21wLnBDb25uJC5pc0VkaXRhYmxlKCkpIHtcbiAgICAgIGluQ29tcC5wQ29ubiQuc2V0QWN0aW9uKCdvbkNoYW5nZScsIHRoaXMuY2hhbmdlSGFuZGxlci5iaW5kKHRoaXMpKTtcbiAgICAgIGluQ29tcC5wQ29ubiQuc2V0QWN0aW9uKCdvbkJsdXInLCB0aGlzLmV2ZW50SGFuZGxlci5iaW5kKHRoaXMpKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
427
|
+
}], ctorParameters: () => [{ type: i1.ProgressSpinnerService }, { type: i2.ErrorMessagesService }, { type: i3.Utils }] });
|
|
428
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1wY29ubmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fYnJpZGdlL2FuZ3VsYXItcGNvbm5lY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sT0FBTyxNQUFNLGlCQUFpQixDQUFDO0FBR3RDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7QUFlMUMsTUFBTSxPQUFPLHNCQUFzQjtJQW1CakMsNENBQTRDO2FBQzdCLGFBQVEsR0FBRyxLQUFLLEFBQVIsQ0FBUztJQUVoQyxZQUNVLFNBQWlDLEVBQ2pDLFNBQStCLEVBQy9CLEtBQVk7UUFGWixjQUFTLEdBQVQsU0FBUyxDQUF3QjtRQUNqQyxjQUFTLEdBQVQsU0FBUyxDQUFzQjtRQUMvQixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBeEJ0Qjs7V0FFRztRQUNLLGFBQVEsR0FBUSxJQUFJLENBQUM7UUFFN0I7O1dBRUc7UUFDSyx1QkFBa0IsR0FBRyxDQUFDLENBQUM7UUFFL0I7Ozs7O1dBS0c7UUFDSyxzQkFBaUIsR0FBYSxFQUFFLENBQUM7UUFVdkMseURBQXlEO1FBQ3pELDREQUE0RDtRQUM1RCxvREFBb0Q7UUFDcEQsa0RBQWtEO1FBQ2xELCtDQUErQztRQUMvQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsdUJBQXVCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFMUQsNkRBQTZEO1FBQzdELCtCQUErQjtRQUMvQiwrREFBK0Q7UUFDL0QsV0FBVztRQUNYLGtFQUFrRTtRQUNsRSxJQUFJO0lBQ04sQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSyxrQkFBa0I7UUFDeEIsSUFBSSxDQUFDLGtCQUFrQixJ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QW9CLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUM3SCxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDO1lBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ25FLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLENBQUM7SUFDSCxDQUFDOytHQTlkVSxzQkFBc0I7bUhBQXRCLHNCQUFzQixjQUZyQixNQUFNOzs0RkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW50ZXJ2YWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCBpc0VxdWFsIGZyb20gJ2Zhc3QtZGVlcC1lcXVhbCc7XG5pbXBvcnQgeyBQcm9ncmVzc1NwaW5uZXJTZXJ2aWNlIH0gZnJvbSAnLi4vX21lc3NhZ2VzL3Byb2dyZXNzLXNwaW5uZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VzU2VydmljZSB9IGZyb20gJy4uL19tZXNzYWdlcy9lcnJvci1tZXNzYWdlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSAnLi4vX2hlbHBlcnMvdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFuZ3VsYXJQQ29ubmVjdERhdGEge1xuICBjb21wSUQ/OiBzdHJpbmc7XG4gIHVuc3Vic2NyaWJlRm4/OiBGdW5jdGlvbjtcbiAgdmFsaWRhdGVNZXNzYWdlPzogc3RyaW5nO1xuICBhY3Rpb25zPzoge1xuICAgIG9uQ2hhbmdlOiBGdW5jdGlvbjtcbiAgICBvbkJsdXI6IEZ1bmN0aW9uO1xuICB9O1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyUENvbm5lY3RTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIExvY2FsIHZhcmlhYmxlIGZvciBhY2Nlc3MgdG8gdGhlIHN0b3JlIG9uY2UgdGhlIHNlcnZpY2UgaXMgY29ubmVjdGVkIHRvIGl0LlxuICAgKi9cbiAgcHJpdmF0ZSB0aGVTdG9yZTogYW55ID0gbnVsbDtcblxuICAvKipcbiAgICogTG9jYWwgdmFyaWFibGUgdXNlZCB0byBjb21wdXRlIHRoZSBuZXh0IGNvbXBvbmVudElEXG4gICAqL1xuICBwcml2YXRlIGNvdW50ZXJDb21wb25lbnRJRCA9IDA7XG5cbiAgLyoqXG4gICAqIExvY2FsIGFycmF5IHVzZWQgdG8gc3RvcmUgdGhlIGFzc29jaWF0aW9uIG9mIGFuIGNvbXBvbmVudCB0byBpdHMgbW9zdCByZWNlbnQgXCJwcm9wc1wiXG4gICAqICB3aGVyZSBcInByb3BzXCIgaXMgdGhlIG9iamVjdCBjb250YWluaW5nIHRoZSBjb21wb25lbnQncyBnZXRDb25maWdQcm9wcyBhbG9uZyB3aXRoXG4gICAqIGFueXRoaW5nIGFkZGVkIGJ5IHBvcHVsYXRlQWRkaXRpb25hbFByb3BzLlxuICAgKiBFYWNoIGVudHJ5IGlzOiB7IF9fY29tcG9uZW50SURfXzogX3RoZSBjb21wb25lbnQncyBtb3N0IHJlY2VudCBwcm9wc18gfVxuICAgKi9cbiAgcHJpdmF0ZSBjb21wb25lbnRQcm9wc0FycjogT2JqZWN0W10gPSBbXTtcblxuICAvKiBVc2VkIHRvIHRvZ2dsZSBzb21lIGNsYXNzLXdpZGUgbG9nZ2luZyAqL1xuICBwcml2YXRlIHN0YXRpYyBiTG9nZ2luZyA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcHNTZXJ2aWNlOiBQcm9ncmVzc1NwaW5uZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXJTZXJ2aWNlOiBFcnJvck1lc3NhZ2VzU2VydmljZSxcbiAgICBwcml2YXRlIHV0aWxzOiBVdGlsc1xuICApIHtcbiAgICAvLyBFc3RhYmxpc2ggbmVjZXNzYXJ5IG92ZXJyaWRlIGZsYWdzIGZvciBvdXIgdXNlIG9mIENvcmVcbiAgICAvLyBjb25zdCBjb3JlT3ZlcnJpZGVzID0geyBcImR5bmFtaWNMb2FkQ29tcG9uZW50c1wiOiBmYWxzZSB9O1xuICAgIC8vIGxldCBjb3JlT3ZlcnJpZGVzID0gUENvcmUuZ2V0QmVoYXZpb3JPdmVycmlkZXMoKTtcbiAgICAvLyBjb3JlT3ZlcnJpZGVzW1wiZHluYW1pY0xvYWRDb21wb25lbnRzXCJdID0gZmFsc2U7XG4gICAgLy8gUENvcmUuc2V0QmVoYXZpb3JPdmVycmlkZXMoIGNvcmVPdmVycmlkZXMgKTtcbiAgICBQQ29yZS5zZXRCZWhhdmlvck92ZXJyaWRlKCdkeW5hbWljTG9hZENvbXBvbmVudHMnLCBmYWxzZSk7XG5cbiAgICAvLyBBbHdheXMgYmVzdCB0byB1c2UgZGVlcCBvYmplY3QgY29tcGFyZSB3aGVuIGl0J3MgYXZhaWxhYmxlXG4gICAgLy8gaWYgKGlzRXF1YWwgIT09IHVuZGVmaW5lZCkge1xuICAgIC8vIGNvbnNvbGUubG9nKGBBbmd1bGFyUENvbm5lY3QgaXMgdXNpbmcgZGVlcCBvYmplY3QgY29tcGFyZWApO1xuICAgIC8vIH0gZWxzZSB7XG4gICAgLy8gY29uc29sZS5sb2coYEFuZ3VsYXJQQ29ubmVjdCBpcyB1c2luZyBKU09OLnN0cmluZ2lmeSBjb21wYXJlYCk7XG4gICAgLy8gfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSB1bmlxdWUgKGZvciB0aGlzIHNlc3Npb24pIENvbXBvbmVudElEIHRoYXQgc2hvdWxkXG4gICAqIGJlIHVzZWQgZm9yIHRoYXQgY29tcG9uZW50IHRvIHVwZGF0ZSBpdHMgbW9zdCByZWNlbnQgcHJvcHNcbiAgICogKHdoaWNoIGNhbiBhbHNvIGJlIGNvbXBhcmVkIGFnYWluc3QgaXRzIHByZXZpb3VzIHZhbHVlXG4gICAqIGJlZm9yZSB1cGRhdGluZykuIE5vdGUgdGhhdCB0aGlzIHJldHVybnMgYSBzdHJpbmcgc28gd2UgY2FuIHVzZVxuICAgKiBpdCBhcyBhIGtleSBpbiBhbiBhc3NvY2lhdGl2ZSBhcnJheVxuICAgKiBAcmV0dXJucyB0aGUgbmV4dCBjb21wb25lbnRJRFxuICAgKi9cbiAgcHJpdmF0ZSBnZXROZXh0Q29tcG9uZW50SWQoKTogc3RyaW5nIHtcbiAgICB0aGlzLmNvdW50ZXJDb21wb25lbnRJRCArPSAxO1xuICAgIC8vIE5vdGUgdGhhdCB3ZSB1c2UgdGhlIHN0cmluZyB2ZXJzaW9uIG9mIHRoZSBudW1iZXIgc28gd2UgaGF2ZSBhblxuICAgIC8vICBhc3NvY2lhdGl2ZSBhcnJheSB0aGF0IHdlIGNhbiBjbGVhbiB1cCBsYXRlciwgaWYgbmVlZGVkLlxuICAgIHJldHVybiB0aGlzLmNvdW50ZXJDb21wb25lbnRJRC50b1N0cmluZygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBDYWxsaW5nIG9iamVjdCAoaW5Db21wKSBzdWJzY3JpYmVzIHRvIHN0b3JlIGNoYW5nZXMuXG4gICAqIEBwYXJhbSBpbkNvbXAgVGhlIGNvbXBvbmVudCB0aGF0J3Mgc3Vic2NyaWJpbmcgdG8gdGhlIHN0b3JlXG4gICAqIEBwYXJhbSBpbkNhbGxiYWNrIFRoZSBjb21wb25lbnQncyBjYWxsYmFjayBmdW5jdGlvbiAodHlwaWNhbGx5IGNhbGxlZCBvblN0YXRlQ2hhbmdlKSB0aGF0IHdpbGxcbiAgICogYmUgY2FsbGVkIHdoZW4gdGhlIHN0b3JlIGNoYW5nZXMuXG4gICAqIEByZXR1cm5zIFRoZSAqKnVuc3Vic2NyaWJlKiogZnVuY3Rpb24gdGhhdCBzaG91bGQgYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBuZWVkc1xuICAgKiB0byB1bnN1YnNjcmliZSBmcm9tIHRoZSBzdG9yZS4gKFR5cGljYWxseSBkdXJpbmcgbmdPbkRlc3Ryb3kpXG4gICAqL1xuICBwcml2YXRlIHN1YnNjcmliZVRvU3RvcmUoaW5Db21wOiBhbnkgPSBudWxsLCBpbkNhbGxiYWNrOiBGdW5jdGlvbiB8IG51bGwgPSBudWxsKTogRnVuY3Rpb24ge1xuICAgIC8vIGNvbnN0IHRoZUNvbXBOYW1lOiBzdHJpbmcgPSBpbkNvbXAgPyBgJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gIDogJ25vIGNvbXBvbmVudCBwcm92aWRlZCc7XG4gICAgbGV0IGZuVW5zdWJzY3JpYmU7XG4gICAgLy8gY29uc29sZS5sb2coIGBCcmlkZ2Ugc3Vic2NyaWJpbmc6ICR7dGhlQ29tcE5hbWV9IGApO1xuICAgIGlmIChpbkNvbXApIHtcbiAgICAgIGZuVW5zdWJzY3JpYmUgPSB0aGlzLmdldFN0b3JlKCkuc3Vic2NyaWJlKGluQ2FsbGJhY2spO1xuICAgIH1cbiAgICByZXR1cm4gZm5VbnN1YnNjcmliZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBDb21wb25lbnQncyBwcm9wZXJ0aWVzIHRoYXQgYXJlIHVzZWQgKGEpIHRvIHBvcHVsYXRlIGNvbXBvbmVudFByb3BzQXJyXG4gIC8vICBhbmQgKGIpIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcilcbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnRpZXMgYXJlIGJlaW5nIG9idGFpbmVkXG4gICAqL1xuICBwcml2YXRlIGdldENvbXBvbmVudFByb3BzKGluQ29tcDogYW55ID0gbnVsbCk6IE9iamVjdCB7XG4gICAgbGV0IGNvbXBQcm9wczogYW55ID0ge307XG4gICAgbGV0IGFkZFByb3BzID0ge307XG5cbiAgICBpZiAoaW5Db21wID09PSBudWxsKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGdldENvbXBvbmVudFByb3BzIGNhbGxlZCB3aXRoIGJhZCBjb21wb25lbnQ6ICR7aW5Db21wfWApO1xuICAgIH1cblxuICAgIC8vIGlmICgoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiRmxvd0NvbnRhaW5lckNvbXBvbmVudFwiKSB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiVmlld0NvbnRhaW5lckNvbXBvbmVudFwiKVxuICAgIC8vICAgICB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiVmlld0NvbXBvbmVudFwiKSB8fCAoaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUgPT09IFwiRGVmZXJMb2FkQ29tcG9uZW50XCIpKSB7XG4gICAgLy8gICBjb25zb2xlLmxvZyhgLS0+IEFuZ3VsYXJQQ29ubmVjdCBnZXRDb21wb25lbnRQcm9wczogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAvLyB9XG5cbiAgICBpZiAoaW5Db21wLmFkZGl0aW9uYWxQcm9wcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBpZiAodHlwZW9mIGluQ29tcC5hZGRpdGlvbmFsUHJvcHMgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGFkZFByb3BzID0gaW5Db21wLnBDb25uJC5yZXNvbHZlQ29uZmlnUHJvcHMoaW5Db21wLmFkZGl0aW9uYWxQcm9wcyk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBpbkNvbXAuYWRkaXRpb25hbFByb3BzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGNvbnN0IHByb3BzVG9BZGQgPSBpbkNvbXAuYWRkaXRpb25hbFByb3BzKFBDb3JlLmdldFN0b3JlKCkuZ2V0U3RhdGUoKSwgaW5Db21wLnBDb25uJCk7XG4gICAgICAgIGFkZFByb3BzID0gaW5Db21wLnBDb25uJC5yZXNvbHZlQ29uZmlnUHJvcHMocHJvcHNUb0FkZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29tcFByb3BzID0gaW5Db21wLnBDb25uJC5nZXRDb25maWdQcm9wcygpO1xuXG4gICAgLy8gY29uc3QgY29tcG9uZW50TmFtZSA9IGluQ29tcC5jb25zdHJ1Y3Rvci5uYW1lO1xuXG4gICAgLy8gVGhlIGZvbGxvd2luZyBjb21tZW50IGlzIGZyb20gdGhlIE5lYnVsYS9Db25zdGVsbGF0aW9uIHZlcnNpb24gb2YgdGhpcyBjb2RlLiBNZWFudCBhcyBhIHJlbWluZGVyIHRvIGNoZWNrIHRoaXMgb2NjYXNpb25hbGx5XG4gICAgLy8gcG9wdWxhdGUgYWRkaXRpb25hbCBwcm9wcyB3aGljaCBhcmUgY29tcG9uZW50IHNwZWNpZmljIGFuZCBub3QgcHJlc2VudCBpbiBjb25maWd1cmF0aW9uc1xuICAgIC8vIFRoaXMgYmxvY2sgY2FuIGJlIHJlbW92ZWQgb25jZSBhbGwgdGhlc2UgcHJvcHMgd2lsbCBiZSBhZGRlZCBhcyBwYXJ0IG9mIGNvbmZpZ3NcbiAgICBpbkNvbXAucENvbm4kLnBvcHVsYXRlQWRkaXRpb25hbFByb3BzKGNvbXBQcm9wcyk7XG5cbiAgICBjb21wUHJvcHMgPSBpbkNvbXAucENvbm4kLnJlc29sdmVDb25maWdQcm9wcyhjb21wUHJvcHMpO1xuXG4gICAgaWYgKGNvbXBQcm9wcyAmJiB1bmRlZmluZWQgIT09IGNvbXBQcm9wcy52YWxpZGF0ZW1lc3NhZ2UgJiYgY29tcFByb3BzLnZhbGlkYXRlbWVzc2FnZSAhPSAnJykge1xuICAgICAgLy8gY29uc29sZS5sb2coIGAgICB2YWxpZGF0ZW1lc3NhZ2UgZm9yICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9ICR7aW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuY29tcElEfTogJHtjb21wUHJvcHMudmFsaWRhdGVtZXNzYWdlfWApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAuLi5jb21wUHJvcHMsXG4gICAgICAuLi5hZGRQcm9wc1xuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdW5pcXVlIGlkIGZvciBnaXZlbiBjb21wb25lbnQgY3JlYXRlZCB3aGVuIHJlZ2lzdGVyaW5nXG4gICAqIE90aGVyd2lzZSwgcmV0dXJuIHVuZGVmaW5lZC5cbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnR5IGlzIGJlaW5nIHJlcXVlc3RlZC5cbiAgICovXG4gIHB1YmxpYyBnZXRDb21wb25lbnRJRChpbkNvbXApOiBzdHJpbmcge1xuICAgIHJldHVybiBpbkNvbXAuYnJpZGdlQ29tcG9uZW50SUQgfHwgaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuY29tcElEO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHJlcXVlc3RlZCBwcm9wZXJ0eSBmb3IgdGhlIGNvbXBvbmVudCBpZiBpdCBleGlzdHMuXG4gICAqIE90aGVyd2lzZSwgcmV0dXJuIHVuZGVmaW5lZC5cbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IHdob3NlIHByb3BlcnR5IGlzIGJlaW5nIHJlcXVlc3RlZC5cbiAgICogQHBhcmFtIGluUHJvcCBUaGUgcHJvcGVydHkgYmVpbmcgcmVxdWVzdGVkLlxuICAgKi9cbiAgcHVibGljIGdldENvbXBvbmVudFByb3AoaW5Db21wOiBhbnkgPSBudWxsLCBpblByb3AgPSAnJykge1xuICAgIGlmIChpbkNvbXAgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogZ2V0Q29tcG9uZW50UHJvcCBjYWxsZWQgd2l0aCBiYWQgY29tcG9uZW50OiAke2luQ29tcH1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wSUQgPSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS5jb21wSUQ7XG5cbiAgICAvLyBMb29rIHVwIHByb3BlcnR5IGluIHRoZSBjb21wb25lbnQncyBlbnRyeSBpbiBjb21wb25lbnRQcm9wQXJyYXkgKHdoaWNoIHNob3VsZCBoYXZlIHRoZSBtb3N0IHJlY2VudCB2YWx1ZSlcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRQcm9wc0Fycltjb21wSURdW2luUHJvcF07XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgY29tcGxldGUgc2V0IG9mIHJlc29sdmVkIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzb2NpYXRlZCB3aXRoXG4gICAqIHRoaXMgY29tcG9uZW50LlxuICAgKiBUaGlzIGlzIHRoZSBmdWxsIHNldCBvZiBwcm9wZXJ0aWVzIHRoYXQgYXJlIHRyYWNrZWQgaW4gUmVkdXggZm9yIHRoaXMgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldEN1cnJlbnRDb21wbGV0ZVByb3BzKGluQ29tcDogYW55ID0gbnVsbCkge1xuICAgIGlmIChpbkNvbXAgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogZ2V0Q3VycmVudENvbXBsZXRlUHJvcHMgY2FsbGVkIHdpdGggYmFkIGNvbXBvbmVudDogJHtpbkNvbXB9YCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudFByb3BzQXJyW2luQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLmNvbXBJRF07XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIHRoZSBjb21wb25lbnQgYW5kIGl0cyBjYWxsYmFjayBmdW5jdGlvbi4gV2hlbiBhIGNvbXBvbmVudCBjYWxscyB0aGlzIG1ldGhvZFxuICAgKiAodHlwaWNhbGx5IGZyb20gaXRzIG5nT25Jbml0KSwgdGhlIGNvbXBvbmVudCBpcyBnaXZlbiBhIHVuaXF1ZSBjb21wb25lbnRJRCAoZm9yIHRoaXMgc2Vzc2lvbilcbiAgICogYW5kIHN1YnNjcmliZXMgdGhlIGNvbXBvbmVudCB0byB0aGUgc3RvcmUuIEFzIGEgc2lkZSBlZmZlY3QsIGl0IGFsc28gYXNzaWducyB0aGUgY29tcG9uZW50J3NcbiAgICogYWN0aW9ucyAoZnJvbSBpdHMgbWV0YWRhdGEpIHRvIHRoZSBjb21wb25lbnQncyBfX19hY3Rpb25zX19fIGFuZCBiaW5kcyB0aGUgY29tcG9uZW50J3MgY2FsbGJhY2tcbiAgICogKHBhc3NlZCBpbiBhcyBfX19pbkNhbGxiYWNrX19fKSB0byB0aGUgY29tcG9uZW50LiBJZiBhIHByb2JsZW0gaXMgZW5jb3VudGVyZWQsIGFuIGVtcHR5IG9iamVjdCxcbiAgICoge30sIGlzIHJldHVybmVkLlxuICAgKiBAcGFyYW0gaW5Db21wIFRoZSBjb21wb25lbnQgYmVpbmcgcmVnaXN0ZXJlZCBhbmQgc3Vic2NyaWJlZFxuICAgKiBAcGFyYW0gaW5DYWxsYmFjayBUaGUgY29tcG9uZW50J3MgY2FsbGJhY2sgZnVuY3Rpb24gKHR5cGljYWxseSBjYWxsZWQgb25TdGF0ZUNoYW5nZSkgdGhhdFxuICAgKiB3aWxsIGJlIGNhbGxlZCB3aGVuZXZlciB0aGUgc3RhdGUgY2hhbmdlcy5cbiAgICogQHJldHVybnMgQSBKU09OIG9iamVjdCB3aXRoIHRoZSBmb2xsb3dpbmcga2V5czpcbiAgICogY29tcElEOiB0aGUgdW5pcXVlIElEIGFzc29jaWF0ZWQgd2l0aCB0aGlzIGNvbXBvbmVudCxcbiAgICogdW5zdWJzY3JpYmVGbjogdGhlIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgbmVlZHMgdG8gdW5zdWJzY3JpYmUgZnJvbSB0aGUgc3RvcmUsXG4gICAqIHZhbGlkYXRlTWVzc2FnZTogYW55IHZhbGlkYXRpb24vZXJyb3IgbWVzc2FnZSB0aGF0IGdldHMgZ2VuZXJhdGVkIGZvciB0aGlzIG9iamVjdCxcbiAgICogYWN0aW9uczogYW55IGFjdGlvbnMgdGhhdCBhcmUgZGVmaW5lZCBmb3IgdGhpcyBvYmplY3RcbiAgICovXG4gIHJlZ2lzdGVyQW5kU3Vic2NyaWJlQ29tcG9uZW50KGluQ29tcCwgaW5DYWxsYmFjazogRnVuY3Rpb24gfCBudWxsID0gbnVsbCk6IEFuZ3VsYXJQQ29ubmVjdERhdGEge1xuICAgIC8vIENyZWF0ZSBhbiBpbml0aWFsIG9iamVjdCB0byBiZSByZXR1cm5lZC5cbiAgICBjb25zdCByZXR1cm5PYmplY3Q6IEFuZ3VsYXJQQ29ubmVjdERhdGEgPSB7XG4gICAgICBjb21wSUQ6ICcnLFxuICAgICAgdW5zdWJzY3JpYmVGbjogdW5kZWZpbmVkLFxuICAgICAgdmFsaWRhdGVNZXNzYWdlOiAnJyxcbiAgICAgIGFjdGlvbnM6IHVuZGVmaW5lZFxuICAgIH07XG5cbiAgICBpZiAoaW5Db21wID09PSBudWxsIHx8IGluQ2FsbGJhY2sgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmU6IGluQ29tcDogJHtpbkNvbXB9IGluQ2FsbGJhY2s6ICR7aW5DYWxsYmFja31gKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuXG4gICAgY29uc3QgY29tcFR5cGUgPSBpbkNvbXAuY29uc3RydWN0b3IubmFtZTtcblxuICAgIGlmIChBbmd1bGFyUENvbm5lY3RTZXJ2aWNlLmJMb2dnaW5nKSB7XG4gICAgICBjb25zb2xlLmxvZyhgcmVnaXN0ZXJBbmRTdWJzY3JpYmVDb21wb25lbnQ6ICR7Y29tcFR5cGV9YCk7XG4gICAgfVxuXG4gICAgaWYgKHVuZGVmaW5lZCAhPT0gaW5Db21wLmJyaWRnZUNvbXBvbmVudElEKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBPTEQgU0NIT09MOiAke2NvbXBUeXBlfWApO1xuICAgIH1cblxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcC5hY3Rpb25zICYmIHVuZGVmaW5lZCA9PT0gaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmUgZnJvbSAke2NvbXBUeXBlfTogYWN0aW9ucyBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcC5icmlkZ2VDb21wb25lbnRJRCAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICBgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byByZWdpc3RlckFuZFN1YnNjcmliZSBmcm9tICR7Y29tcFR5cGV9OiBicmlkZ2VDb21wb25lbnRJRCBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnVuc3Vic2NyaWJlU3RvcmUgJiYgdW5kZWZpbmVkID09PSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YSkge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gcmVnaXN0ZXJBbmRTdWJzY3JpYmUgZnJvbSAke2NvbXBUeXBlfTogdW5zdWJzY3JpYmVTdG9yZSBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnZhbGlkYXRlTWVzc2FnZSAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHJlZ2lzdGVyQW5kU3Vic2NyaWJlIGZyb20gJHtjb21wVHlwZX06IHZhbGlkYXRlTWVzc2FnZSBub3QgZGVmaW5lZCBhcyBhIGNsYXNzIHZhcmlhYmxlIGZvciBpbkNvbXBgKTtcbiAgICAgIHJldHVybiByZXR1cm5PYmplY3Q7XG4gICAgfVxuXG4gICAgLy8gY2FsbCBwcm9jZXNzQWN0aW9ucyB0byBwb3B1bGF0ZSBtZXRhZGF0YSB3aXRoIGFjdGlvbnMgYXMgaW4gUENvbm5lY3RIT1IgaW5pdGlhbGl6ZVxuICAgIHRoaXMucHJvY2Vzc0FjdGlvbnMoaW5Db21wKTtcbiAgICBpZiAodW5kZWZpbmVkID09PSBpbkNvbXAuYWN0aW9ucykge1xuICAgICAgcmV0dXJuT2JqZWN0LmFjdGlvbnMgPSBpbkNvbXAucENvbm4kLmdldEFjdGlvbnMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaW5Db21wLmFjdGlvbnMgPSBpbkNvbXAucENvbm4kLmdldEFjdGlvbnMoKTtcbiAgICB9XG5cbiAgICAvLyBiaW5kIHRoZSBwcm92aWRlZCBjYWxsYmFjayB0byB0aGUgY29tcG9uZW50IGl0J3MgYXNzb2NpYXRlZCB3aXRoXG4gICAgaW5DYWxsYmFjayA9IGluQ2FsbGJhY2suYmluZChpbkNvbXApO1xuXG4gICAgLy8gTm93IHByb2NlZWQgdG8gcmVnaXN0ZXIgYW5kIHN1YnNjcmliZS4uLlxuICAgIGNvbnN0IHRoZUNvbXBJRDogc3RyaW5nID0gdGhpcy5nZXROZXh0Q29tcG9uZW50SWQoKTtcbiAgICBjb25zdCB0aGVVbnN1YjogRnVuY3Rpb24gfCBudWxsID0gdGhpcy5zdWJzY3JpYmVUb1N0b3JlKGluQ29tcCwgaW5DYWxsYmFjayk7XG5cbiAgICBpZiAodW5kZWZpbmVkID09PSBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YSkge1xuICAgICAgaW5Db21wLmJyaWRnZUNvbXBvbmVudElEID0gdGhlQ29tcElEO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm5PYmplY3QuY29tcElEID0gdGhlQ29tcElEO1xuICAgICAgcmV0dXJuT2JqZWN0LnVuc3Vic2NyaWJlRm4gPSAoKSA9PiB7XG4gICAgICAgIHRoaXMucmVtb3ZlRm9ybUZpZWxkKGluQ29tcCk7XG4gICAgICAgIHRoZVVuc3ViKCk7XG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIGluaXRpYWxpemUgdGhpcyBjb21wb25lbnRzIGVudHJ5IGluIHRoZSBjb21wb25lbnRQcm9wc0FyclxuICAgIHRoaXMuY29tcG9uZW50UHJvcHNBcnJbdGhlQ29tcElEXSA9IHt9O1xuXG4gICAgdGhpcy5hZGRGb3JtRmllbGQoaW5Db21wKTtcblxuICAgIC8vIHJldHVybiBvYmplY3Qgd2l0aCBjb21wSUQgYW5kIHVuc3Vic2NyaWJlLi4uXG4gICAgcmV0dXJuIHJldHVybk9iamVjdDtcbiAgfVxuXG4gIGFkZEZvcm1GaWVsZChpbkNvbXApIHtcbiAgICBpbkNvbXAucENvbm4kPy5hZGRGb3JtRmllbGQoKTtcbiAgfVxuXG4gIHJlbW92ZUZvcm1GaWVsZChpbkNvbXApIHtcbiAgICBpZiAoaW5Db21wLnBDb25uJD8ucmVtb3ZlRm9ybUZpZWxkKSB7XG4gICAgICBpbkNvbXAucENvbm4kPy5yZW1vdmVGb3JtRmllbGQoKTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbXBvbmVudCdzIGVudHJ5IGluIF9fX2NvbXBvbmVudFByb3BzQXJyX19fIGlzXG4gIC8vICB0aGUgc2FtZSBhcyB0aGUgaW5Db21wUHJvcHMgcGFzc2VkIGluLlxuICAvLyAgQXMgYSBzaWRlIGVmZmVjdCwgdXBkYXRlIHRoZSBjb21wb25lbnQncyBlbnRyeSBpbiBjb21wb25lbnRQcm9wc0FyclxuICAvLyAgTk9URTogSXQgaXMgYXNzdW1lZCB0aGF0IHRoZSBpbmNvbWluZyBjb21wb25lbnQgaGFzIHRoZSBmb2xsb3dpbmc6XG4gIC8vICAqIGEgYnJpZGdlQ29tcG9uZW50SUQgPHN0cmluZz4gcHJvcGVydHkgLSB1c2VkIGFzIGxvb2t1cCBrZXkgaW4gY29tcG9uZW50UHJvcHNBcnJcbiAgLy8gICogYSBwQ29ubiQgPD8+IHByb3BlcnR5IC0gdXNlZCB0byBhY2Nlc3MgZnVuY3Rpb25zIGFjY2Vzc2VkIGluIGdldENvbXBvbmVudFByb3BzXG4gIC8vIFJldHVybiB0cnVlOiBtZWFucyB0aGUgY29tcG9uZW50IHByb3BzIGFyZSBkaWZmZXJlbnQgYW5kIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcilcbiAgLy8gUmV0dXJuIGZhbHNlOiBtZWFucyB0aGUgY29tcG9uZW50IHByb3BzIGFyZSB0aGUgc2FtZSBhbmQgdGhlIGNvbXBvbmVudCBkb2Vzbid0IG5lZWQgdG8gdXBkYXRlIChyZS1yZW5kZXIpXG4gIC8vICBPbiBiYWQgaW5wdXQsIHJldHVybiBmYWxzZTtcbiAgLyoqXG4gICAqIFJldHVybnMgKip0cnVlKiogaWYgdGhlIGNvbXBvbmVudCdzIGVudHJ5IGluIF9fX2NvbXBvbmVudFByb3BzQXJyX19fIGlzXG4gICAqIHRoZSBzYW1lIGFzIHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIGN1cnJlbnQgYXNzb2NpYXRlZCB3aXRoIHRoZSBjb21wb25lbnQgKF9fX2luQ29tcF9fXykgcGFzc2VkIGluLlxuICAgKiBBcyBhIHNpZGUgZWZmZWN0LCB0aGUgY29tcG9uZW50J3MgZW50cnkgaW4gX19fY29tcG9uZW50UHJvcHNBcnJfX18gaXMgdXBkYXRlZC5cbiAgICogKipOb3RlKio6IEl0IGlzIGFzc3VtZWQgdGhhdCB0aGUgaW5jb21pbmcgY29tcG9uZW50IGhhcyB0aGUgZm9sbG93aW5nOlxuICAgKiAoYSkgYSBicmlkZ2VDb21wb25lbnRJRCBfc3RyaW5nXyBwcm9wZXJ0eSB1c2VkIGFzIGxvb2t1cCBrZXkgaW4gX19fY29tcG9uZW50UHJvcHNBcnJfX19cbiAgICogYW5kIChiKSBhIF9fX3BDb25uJF9fXyBwcm9wZXJ0eSB1c2VkIHRvIGFjY2VzcyBmdW5jdGlvbnMgY2FsbGVkIGluIF9fX2dldENvbXBvbmVudFByb3BzX19fXG4gICAqXG4gICAqIEBwYXJhbSBpbkNvbXAgVGhlIGNvbXBvbmVudCBhc2tpbmcgaWYgaXQgc2hvdWxkIHVwZGF0ZSBpdHNlbGZcbiAgICogQHJldHVybnMgUmV0dXJuICoqdHJ1ZSoqOiBtZWFucyB0aGUgY29tcG9uZW50IHByb3BzIGFyZSBkaWZmZXJlbnQgYW5kIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcikuXG4gICAqIFJldHVybiAqKmZhbHNlKio6IG1lYW5zIHRoZSBjb21wb25lbnQgcHJvcHMgYXJlIHRoZSBzYW1lIGFuZCB0aGUgY29tcG9uZW50IGRvZXNuJ3QgbmVlZCB0byB1cGRhdGUgKHJlLXJlbmRlcikuXG4gICAqIElmIHRoZSAqKippbkNvbXAqKiogaW5wdXQgaXMgYmFkLCBmYWxzZSBpcyBhbHNvIHJldHVybmVkLlxuICAgKi9cbiAgc2hvdWxkQ29tcG9uZW50VXBkYXRlKGluQ29tcCk6IGJvb2xlYW4ge1xuICAgIC8vIGNvbnN0IGJTaG93TG9nZ2luZyA9IGZhbHNlO1xuICAgIGxldCBiUmV0ID0gZmFsc2U7XG4gICAgLy8gY2hlY2sgZm9yIHJlYXNvbmFibGUgaW5wdXRcbiAgICBpZiAoVXRpbHMuaXNFbXB0eU9iamVjdChpbkNvbXApKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHNob3VsZENvbXBvbmVudFVwZGF0ZTogaW5Db21wOiAke0pTT04uc3RyaW5naWZ5KGluQ29tcCl9YCk7XG4gICAgICByZXR1cm4gYlJldDtcbiAgICB9XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wLnZhbGlkYXRlTWVzc2FnZSAmJiB1bmRlZmluZWQgPT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIHNob3VsZENvbXBvbmVudFVwZGF0ZTogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX0gZG9lcyBub3QgaGF2ZSBhIHZhbGlkYXRlTWVzc2FnZSBwcm9wZXJ0eS5gKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wSUQgPSB0aGlzLmdldENvbXBvbmVudElEKGluQ29tcCk7XG5cbiAgICBjb25zdCBjdXJyZW50UHJvcHM6IGFueSA9IHRoaXMuY29tcG9uZW50UHJvcHNBcnJbY29tcElEXTtcbiAgICBjb25zdCBjdXJyZW50UHJvcHNBc1N0cjogc3RyaW5nID0gSlNPTi5zdHJpbmdpZnkoY3VycmVudFByb3BzKTtcblxuICAgIGNvbnN0IGluY29taW5nUHJvcHM6IGFueSA9IHRoaXMuZ2V0Q29tcG9uZW50UHJvcHMoaW5Db21wKTtcblxuICAgIC8vIGlmIGhhdmUgcGFnZU1lc3NhZ2VzLCBhbmQgaXQgaXMgYmxhbmssIHJlbW92ZSBpdC4gIFRoaXMgY2F1c2VzIGlzc3VlcyBvZiBtYWtpbmcgaXQgYXBwZWFyXG4gICAgLy8gdGhhdCBhIHdpbGwgY2F1c2UgYW4gdXBkYXRlLCB3aGVuIHRoZXJlIGlzIG5vIGNoYW5nZVxuICAgIGlmICh0aGlzLmlzUGFnZU1lc3NhZ2VzRW1wdHkoaW5jb21pbmdQcm9wcykpIHtcbiAgICAgIGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLnBhZ2VNZXNzYWdlcyA9IGluY29taW5nUHJvcHMucGFnZU1lc3NhZ2VzO1xuICAgICAgZGVsZXRlIGluY29taW5nUHJvcHMucGFnZU1lc3NhZ2VzO1xuICAgIH1cblxuICAgIGlmIChpbmNvbWluZ1Byb3BzLmh0dHBNZXNzYWdlcykge1xuICAgICAgaW5Db21wLmFuZ3VsYXJQQ29ubmVjdERhdGEuaHR0cE1lc3NhZ2VzID0gaW5jb21pbmdQcm9wcy5odHRwTWVzc2FnZXM7XG4gICAgICBpbmNvbWluZ1Byb3BzLmh0dHBNZXNzYWdlcyA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBjb25zdCBpbmNvbWluZ1Byb3BzQXNTdHI6IHN0cmluZyA9IEpTT04uc3RyaW5naWZ5KGluY29taW5nUHJvcHMpO1xuXG4gICAgYlJldCA9IGlzRXF1YWwgPyAhaXNFcXVhbChjdXJyZW50UHJvcHMsIGluY29taW5nUHJvcHMpIDogY3VycmVudFByb3BzQXNTdHIgIT0gaW5jb21pbmdQcm9wc0FzU3RyO1xuXG4gICAgLy8gQmVsb3cgcGllY2Ugb2YgY29kZSBpcyBuZWVkZWQgdG8gcmUtcmVuZGVyIHRoZSBjb21wb25lbnQgc2luY2Ugd2Ugd2FubmEgZXZhbHVhdGUgdGhlIFZpc2liaWxpdHkgZXhwcmVzc2lvbiB3aXRoaW4gVmlldyBjb21wb25lbnQgaW4gc3VjaCBjYXNlc1xuICAgIGlmIChpbkNvbXAucENvbm4kLm1ldGEuY29uZmlnLmNvbnRleHQ/Lmxlbmd0aCA+IDAgJiYgaW5Db21wLnBDb25uJC5nZXRQYWdlUmVmZXJlbmNlKCkubGVuZ3RoID4gJ2Nhc2VJbmZvLmNvbnRlbnQnLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgLy8gTm93IHVwZGF0ZSB0aGUgZW50cnkgaW4gY29tcG9uZW50UHJvcHNBcnIgd2l0aCB0aGUgaW5jb21pbmcgdmFsdWUgc29cbiAgICAvLyAgd2UgY2FuIGNvbXBhcmUgYWdhaW5zdCB0aGF0IG5leHQgdGltZS4uLlxuICAgIHRoaXMuY29tcG9uZW50UHJvcHNBcnJbY29tcElEXSA9IGluY29taW5nUHJvcHM7XG4gICAgY29uc3QgdmFsaWRhdGVtZXNzYWdlID0gaW5jb21pbmdQcm9wcy52YWxpZGF0ZW1lc3NhZ2UgPT09IHVuZGVmaW5lZCA/ICcnIDogdGhpcy51dGlscy5odG1sRGVjb2RlKGluY29taW5nUHJvcHMudmFsaWRhdGVtZXNzYWdlKTtcbiAgICAvLyBhbmQgdXBkYXRlIHRoZSBjb21wb25lbnQncyB2YWxpZGF0aW9uIG1lc3NhZ2UgKGlmIHVuZGVmaW5lZCwgaXQgc2hvdWxkIGJlIHNldCB0byBcIlwiKVxuICAgIGlmICh1bmRlZmluZWQgIT09IGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhKSB7XG4gICAgICBpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS52YWxpZGF0ZU1lc3NhZ2UgPSB2YWxpZGF0ZW1lc3NhZ2U7XG5cbiAgICAgIGlmIChpbkNvbXAuYW5ndWxhclBDb25uZWN0RGF0YS52YWxpZGF0ZU1lc3NhZ2UgIT0gJycpIHtcbiAgICAgICAgLy8gaWYgaGF2ZSBhIHZhbGlkYXRlIG1lc3NhZ2UsIHR1cm4gb2ZmIHNwaW5uZXJcbiAgICAgICAgY29uc3QgdGltZXIgPSBpbnRlcnZhbCgxMDApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5wc1NlcnZpY2Uuc2VuZE1lc3NhZ2UoZmFsc2UpO1xuXG4gICAgICAgICAgdGltZXIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgbGV0IHNFcnJvck1lc3NhZ2UgPSBjdXJyZW50UHJvcHMgJiYgY3VycmVudFByb3BzLmxhYmVsID8gY3VycmVudFByb3BzLmxhYmVsLmNvbmNhdCgnIC0gJykgOiAnJztcbiAgICAgICAgc0Vycm9yTWVzc2FnZSA9IHNFcnJvck1lc3NhZ2UuY29uY2F0KGluQ29tcC5hbmd1bGFyUENvbm5lY3REYXRhLnZhbGlkYXRlTWVzc2FnZSk7XG4gICAgICAgIHRoaXMuZXJTZXJ2aWNlLnNlbmRNZXNzYWdlKCd1cGRhdGUnLCBzRXJyb3JNZXNzYWdlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaW5Db21wLnZhbGlkYXRlTWVzc2FnZSA9IHZhbGlkYXRlbWVzc2FnZTtcbiAgICB9XG5cbiAgICBpZiAoYlJldCAmJiBjb21wSUQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgYlJldCA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIGNvbnNvbGUubG9nKCBgQW5ndWxhclBDb25uZWN0IGNvbXBvbmVudCAke2NvbXBJRH0gLSAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfSAtIHNob3VsZENvbXBvbmVudFVwZGF0ZTogJHtiUmV0fWApO1xuICAgIC8vIGNvbnNvbGUubG9nKFwiY3VycmVudCBwcm9wczogXCIgKyBjdXJyZW50UHJvcHNBc1N0cik7XG5cbiAgICBpZiAoYlJldCkge1xuICAgICAgLy8gY29uc29sZS5sb2coYCoqKiogY2hhbmdlIGZvcjogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKFwiY3VycmVudCBwcm9wczogXCIgKyBjdXJyZW50UHJvcHNBc1N0cik7XG4gICAgICAvLyBjb25zb2xlLmxvZyhcImluY29taW5nIHByb3BzOiBcIiArIGluY29taW5nUHJvcHNBc1N0cik7XG4gICAgICAvLyBjb25zb2xlLmxvZyhgICAgICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiBzaG91bGRDb21wb25lbnRVcGRhdGUgcmV0dXJuaW5nOiAke2JSZXR9LCBjb21wSWQ6ICR7Y29tcElEfWAgKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCBgICAgIFVwZGF0aW5nIHdpdGggY29tcG9uZW50UHJvcHMgZm9yICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiAke0pTT04uc3RyaW5naWZ5KHRoaXMuY29tcG9uZW50UHJvcHNBcnJbY29tcElEXSl9YCk7XG4gICAgICAvLyBjb25zb2xlLmxvZyggYCAgICAgICAgICBhbmQgdmFsaWRhdGVNZXNzYWdlOiAke2luQ29tcC52YWxpZGF0ZU1lc3NhZ2V9YCk7XG4gICAgfVxuICAgIC8vIGVsc2UgaWYgKGluQ29tcC5jb25zdHJ1Y3Rvci5uYW1lLmluZGV4T2YoXCJWaWV3XCIpID49IDAgfHwgaW5Db21wLmNvbnN0cnVjdG9yLm5hbWUuaW5kZXhPZihcIlJvb3RcIikgPj0gMCkge1xuICAgIC8vICAgY29uc29sZS5sb2coXCJubyBjaGFuZ2VcIik7XG4gICAgLy8gICBjb25zb2xlLmxvZyhcImN1cnJlbnQgcHJvcHM6IFwiICsgY3VycmVudFByb3BzQXNTdHIpO1xuICAgIC8vICAgY29uc29sZS5sb2coXCJpbmNvbWluZyBwcm9wczogXCIgKyBpbmNvbWluZ1Byb3BzQXNTdHIpO1xuICAgIC8vICAgY29uc29sZS5sb2coYCAgICAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfTogc2hvdWxkQ29tcG9uZW50VXBkYXRlIHJldHVybmluZzogJHtiUmV0fSwgY29tcElkOiAke2NvbXBJRH1gICk7XG5cbiAgICAvLyB9XG5cbiAgICAvLyBjb25zb2xlLmxvZyhgICAgICR7aW5Db21wLmNvbnN0cnVjdG9yLm5hbWV9OiBzaG91bGRDb21wb25lbnRVcGRhdGUgcmV0dXJuaW5nOiAke2JSZXR9YCk7XG5cbiAgICByZXR1cm4gYlJldDtcbiAgfVxuXG4gIGlzUGFnZU1lc3NhZ2VzRW1wdHkoaW5jb21pbmdQcm9wcykge1xuICAgIHJldHVybiBpbmNvbWluZ1Byb3BzLnBhZ2VNZXNzYWdlcyAmJiBpbmNvbWluZ1Byb3BzLnBhZ2VNZXNzYWdlcy5sZW5ndGggPT09IDA7XG4gIH1cblxuICAvKipcbiAgICogQ2FuIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgaGFzIGVuY291bnRlcmVkIGEgY2hhbmdlIGV2ZW50XG4gICAqIEBwYXJhbSBpbkNvbXAgVGhlIGNvbXBvbmVudCBjYWxsaW5nIHRoZSBjaGFuZ2UgZXZlbnRcbiAgICogQHBhcmFtIGV2ZW50IFRoZSBldmVudFxuICAgKi9cbiAgY2hhbmdlSGFuZGxlcihpbkNvbXAsIGV2ZW50KSB7XG4gICAgY29uc3QgYkxvZ2dpbmcgPSBmYWxzZTtcbiAgICBpZiAoYkxvZ2dpbmcpIHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGBBbmd1bGFyUENvbm5lY3QuY2hhbmdlSGFuZGxlcmApO1xuICAgIH1cbiAgICAvLyBjaGVjayBmb3IgcmVhc29uYWJsZSBpbnB1dFxuICAgIGlmICh1bmRlZmluZWQgPT09IGluQ29tcCB8fCBVdGlscy5pc0VtcHR5T2JqZWN0KGluQ29tcCkpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYEFuZ3VsYXJQQ29ubmVjdDogYmFkIGNhbGwgdG8gY2hhbmdlSGFuZGxlcjogaW5Db21wOiAke0pTT04uc3RyaW5naWZ5KGluQ29tcCl9YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcENvbm5lY3QgPSBpbkNvbXAucENvbm4kO1xuICAgIGlmICh1bmRlZmluZWQgPT09IHBDb25uZWN0KSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBBbmd1bGFyUENvbm5lY3Q6IGJhZCBjYWxsIHRvIGNoYW5nZUhhbmRsZXI6IGluQ29tcC5wQ29ubiQ6ICR7cENvbm5lY3R9YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gY2xlYXIgb3V0IGVycm9yc1xuICAgIHRoaXMuZXJTZXJ2aWNlLnNlbmRNZXNzYWdlKCdkaXNtaXNzJywgJycpO1xuXG4gICAgcENvbm5lY3QuZ2V0QWN0aW9uc0FwaSgpLmNoYW5nZUhhbmRsZXIocENvbm5lY3QsIGV2ZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYW4gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBoYXMgZW5jb3VudGVyZWQgYW4gZXZlbnQgKHN1Y2ggYXMgYmx1cilcbiAgICogQHBhcmFtIGluQ29tcCBUaGUgY29tcG9uZW50IGNhbGxpbmcgdGhlIGV2ZW50XG4gICAqIEBwYXJhbSBldmVudCBUaGUgZXZlbnRcbiAgICovXG4gIGV2ZW50SGFuZGxlcihpbkNvbXAsIGV2ZW50KSB7XG4gICAgY29uc3QgYkxvZ2dpbmcgPSBmYWxzZTtcbiAgICBpZiAoYkxvZ2dpbmcpIHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGBBbmd1bGFyUENvbm5lY3QuZXZlbnRIYW5kbGVyYCk7XG4gICAgfVxuICAgIC8vIGNoZWNrIGZvciByZWFzb25hYmxlIGlucHV0XG4gICAgaWYgKHVuZGVmaW5lZCA9PT0gaW5Db21wIHx8IFV0aWxzLmlzRW1wdHlPYmplY3QoaW5Db21wKSkge1xuICAgICAgY29uc29sZS5lcnJvcihgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byBldmVudEhhbmRsZXI6IGluQ29tcDogJHtKU09OLnN0cmluZ2lmeShpbkNvbXApfWApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBDb25uZWN0ID0gaW5Db21wLnBDb25uJDtcbiAgICBpZiAodW5kZWZpbmVkID09PSBwQ29ubmVjdCkge1xuICAgICAgY29uc29sZS5lcnJvcihgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byBldmVudEhhbmRsZXI6IGluQ29tcC5wQ29ubiQ6ICR7cENvbm5lY3R9YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcENvbm5lY3QuZ2V0QWN0aW9uc0FwaSgpLmV2ZW50SGFuZGxlcihwQ29ubmVjdCwgZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIEEgaGFuZGxlIHRvIHRoZSBhcHBsaWNhdGlvbidzIHN0b3JlXG4gICAqL1xuICBnZXRTdG9yZSgpIHtcbiAgICBpZiAodGhpcy50aGVTdG9yZSA9PT0gbnVsbCkge1xuICAgICAgdGhpcy50aGVTdG9yZSA9IFBDb3JlLmdldFN0b3JlKCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnRoZVN0b3JlO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBiTG9nTXNnIElmIHRydWUsIHdpbGwgd3JpdGUgdGhlIHN0cmluZ2lmaWVkIHN0YXRlIHRvIHRoZSBzdG9yZSBmb3IgZGVidWdnaW5nL2luc3BlY3Rpb25cbiAgICogQHBhcmFtIGluQ29tcCBJZiBzdXBwbGllZCwgdGhlIGNvbXBvbmVudCB0aGF0IGlzIHJlcXVlc3RpbmcgdGhlIHN0b3JlJ3Mgc3RhdGVcbiAgICogQHJldHVybnMgQSBoYW5kbGUgdG8gdGhlIF9fc3RhdGVfXyBvZiBhcHBsaWNhdGlvbidzIHN0b3JlXG4gICAqL1xuICBnZXRTdGF0ZShiTG9nTXNnOiBib29sZWFuID0gZmFsc2UsIGluQ29tcDogYW55ID0gbnVsbCkge1xuICAgIGNvbnN0IHRoZVN0YXRlOiBvYmplY3QgPSB0aGlzLmdldFN0b3JlKCkuZ2V0U3RhdGUoKTtcbiAgICBpZiAoYkxvZ01zZykge1xuICAgICAgY29uc3QgdGhlQ29tcE5hbWU6IHN0cmluZyA9IGluQ29tcCA/IGAke2luQ29tcC5jb25zdHJ1Y3Rvci5uYW1lfTogYCA6ICcnO1xuICAgICAgY29uc29sZS5sb2coYCR7dGhlQ29tcE5hbWV9IFN0b3JlIHN0YXRlOiAke0pTT04uc3RyaW5naWZ5KHRoZVN0YXRlKX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoZVN0YXRlO1xuICB9XG5cbiAgLy8gcHJvY2Vzc0FjdGlvbnMgLSBjYXJyaWVkIG92ZXIgZnJvbSBQQ29ubmVjdEhPQyBpbml0aWFsaXplXG4gIC8qKlxuICAgKiAgcHJvY2Vzc0FjdGlvbnMgZXhwb3NlcyBhbGwgYWN0aW9ucyBpbiB0aGUgbWV0YWRhdGEuXG4gICAqICBBdHRhY2hlcyBjb21tb24gaGFuZGxlciAoZXZlbnRIYW5kbGVyKSBmb3IgYWxsIGFjdGlvbnMuXG4gICAqL1xuICBwcml2YXRlIHByb2Nlc3NBY3Rpb25zKGluQ29tcCkge1xuICAgIGNvbnN0IHBDb25uZWN0ID0gaW5Db21wLnBDb25uJDtcbiAgICBpZiAodW5kZWZpbmVkID09PSBwQ29ubmVjdCkge1xuICAgICAgY29uc29sZS5lcnJvcihgQW5ndWxhclBDb25uZWN0OiBiYWQgY2FsbCB0byBwcm9jZXNzQWN0aW9uczogcENvbm4kOiAke3BDb25uZWN0fSBmcm9tIGNvbXBvbmVudDogJHtpbkNvbXAuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaW5Db21wLnBDb25uJC5pc0VkaXRhYmxlKCkpIHtcbiAgICAgIGluQ29tcC5wQ29ubiQuc2V0QWN0aW9uKCdvbkNoYW5nZScsIHRoaXMuY2hhbmdlSGFuZGxlci5iaW5kKHRoaXMpKTtcbiAgICAgIGluQ29tcC5wQ29ubiQuc2V0QWN0aW9uKCdvbkJsdXInLCB0aGlzLmV2ZW50SGFuZGxlci5iaW5kKHRoaXMpKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -91,10 +91,10 @@ export class ComponentMapperComponent {
|
|
|
91
91
|
this.componentRef.destroy();
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
95
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
94
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ComponentMapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
95
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ComponentMapperComponent, isStandalone: true, selector: "component-mapper", inputs: { name: "name", props: "props", errorMsg: "errorMsg", outputEvents: "outputEvents", parent: "parent" }, viewQueries: [{ propertyName: "dynamicComponent", first: true, predicate: ["dynamicComponent"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container #dynamicComponent></ng-container>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
|
96
96
|
}
|
|
97
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ComponentMapperComponent, decorators: [{
|
|
98
98
|
type: Component,
|
|
99
99
|
args: [{ selector: 'component-mapper', standalone: true, imports: [CommonModule, ErrorBoundaryComponent], template: "<ng-container #dynamicComponent></ng-container>\n" }]
|
|
100
100
|
}], propDecorators: { dynamicComponent: [{
|
|
@@ -111,4 +111,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
111
111
|
}], parent: [{
|
|
112
112
|
type: Input
|
|
113
113
|
}] } });
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LW1hcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2JyaWRnZS9jb21wb25lbnQtbWFwcGVyL2NvbXBvbmVudC1tYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19icmlkZ2UvY29tcG9uZW50LW1hcHBlci9jb21wb25lbnQtbWFwcGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLEtBQUssRUFBK0MsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pJLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQzs7QUFFekcsTUFBTSxrQ0FBa0MsR0FBYTtJQUNuRCxxQkFBcUI7SUFDckIsb0JBQW9CO0lBQ3BCLGVBQWU7SUFDZixlQUFlO0lBQ2YsTUFBTTtJQUNOLFVBQVU7Q0FDWCxDQUFDO0FBU0YsTUFBTSxPQUFPLHdCQUF3QjtJQVByQztRQVlTLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRXBCLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFVixhQUFRLEdBQUcsRUFBRSxDQUFDO0tBa0Z4QjtJQTdFQyxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO0lBQzVCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLE9BQU8s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QUFDLEVBQUU7d0JBQzFELE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO3dCQUNwRCxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3BCLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pCLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDOUIsQ0FBQztJQUNILENBQUM7K0dBMUZVLHdCQUF3QjttR0FBeEIsd0JBQXdCLDZSQUNJLGdCQUFnQixnRUN0QnpELG1EQUNBLHlERGtCWSxZQUFZOzs0RkFFWCx3QkFBd0I7a0JBUHBDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBR2hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxzQkFBc0IsQ0FBQzs4QkFJeEMsZ0JBQWdCO3NCQUR0QixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBTTlELElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29tcG9uZW50UmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgZ2V0Q29tcG9uZW50RnJvbU1hcCB9IGZyb20gJy4uL2hlbHBlcnMvc2RrX2NvbXBvbmVudF9tYXAnO1xuaW1wb3J0IHsgRXJyb3JCb3VuZGFyeUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL19jb21wb25lbnRzL2luZnJhL2Vycm9yLWJvdW5kYXJ5L2Vycm9yLWJvdW5kYXJ5LmNvbXBvbmVudCc7XG5cbmNvbnN0IGNvbXBvbmVudHNSZXF1aXJlRGlzcGxheU9ubHlGQVByb3A6IHN0cmluZ1tdID0gW1xuICAnSHlicmlkVmlld0NvbnRhaW5lcicsXG4gICdNb2RhbFZpZXdDb250YWluZXInLFxuICAnVmlld0NvbnRhaW5lcicsXG4gICdSb290Q29udGFpbmVyJyxcbiAgJ1ZpZXcnLFxuICAnQ2FzZVZpZXcnXG5dO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjb21wb25lbnQtbWFwcGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbXBvbmVudC1tYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb21wb25lbnQtbWFwcGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEVycm9yQm91bmRhcnlDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIENvbXBvbmVudE1hcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICBAVmlld0NoaWxkKCdkeW5hbWljQ29tcG9uZW50JywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmLCBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIGR5bmFtaWNDb21wb25lbnQ6IFZpZXdDb250YWluZXJSZWYgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4gfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyBpc0luaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgQElucHV0KCkgbmFtZSA9ICcnO1xuICBASW5wdXQoKSBwcm9wczogYW55O1xuICBASW5wdXQoKSBlcnJvck1zZyA9ICcnO1xuICBASW5wdXQoKSBvdXRwdXRFdmVudHM6IGFueTtcbiAgLy8gcGFyZW50IHByb3AgaXMgY29tcHVsc29yeSB3aGVuIG91dHB1dEV2ZW50cyBpcyBwcmVzZW50XG4gIEBJbnB1dCgpIHBhcmVudDogYW55O1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZENvbXBvbmVudCgpO1xuICAgIHRoaXMuaXNJbml0aWFsaXplZCA9IHRydWU7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgY29uc3QgeyBuYW1lIH0gPSBjaGFuZ2VzO1xuICAgIGlmIChuYW1lKSB7XG4gICAgICBjb25zdCB7IHByZXZpb3VzVmFsdWUsIGN1cnJlbnRWYWx1ZSB9ID0gbmFtZTtcbiAgICAgIGlmIChwcmV2aW91c1ZhbHVlICYmIHByZXZpb3VzVmFsdWUgIT09IGN1cnJlbnRWYWx1ZSkge1xuICAgICAgICB0aGlzLmxvYWRDb21wb25lbnQoKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNJbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5iaW5kSW5wdXRQcm9wcygpO1xuICAgIH1cbiAgfVxuXG4gIGxvYWRDb21wb25lbnQoKSB7XG4gICAgY29uc3QgY29tcG9uZW50ID0gZ2V0Q29tcG9uZW50RnJvbU1hcCh0aGlzLm5hbWUpO1xuXG4gICAgaWYgKHRoaXMuZHluYW1pY0NvbXBvbmVudCkge1xuICAgICAgdGhpcy5keW5hbWljQ29tcG9uZW50LmNsZWFyKCk7XG4gICAgICB0aGlzLmNvbXBvbmVudFJlZiA9IHRoaXMuZHluYW1pY0NvbXBvbmVudC5jcmVhdGVDb21wb25lbnQoY29tcG9uZW50KTtcblxuICAgICAgaWYgKGNvbXBvbmVudCA9PT0gRXJyb3JCb3VuZGFyeUNvbXBvbmVudCkge1xuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5tZXNzYWdlID0gdGhpcy5lcnJvck1zZztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYmluZElucHV0UHJvcHMoKTtcbiAgICAgICAgdGhpcy5iaW5kT3V0cHV0RXZlbnRzKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYmluZElucHV0UHJvcHMoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGlmICh0aGlzLnByb3BzKSB7XG4gICAgICAgIGNvbnN0IHByb3BzS2V5cyA9IE9iamVjdC5rZXlzKHRoaXMucHJvcHMpO1xuICAgICAgICBjb25zdCBwcm9wc1ZhbHVlcyA9IE9iamVjdC52YWx1ZXModGhpcy5wcm9wcyk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcHJvcHNLZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgaWYgKHByb3BzVmFsdWVzW2ldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIC8vIFdlJ2xsIHNldCAnZGlzcGxheU9ubHlGQSQnIHByb3Agb25seSB0byB0aGUgY29tcG9uZW50cyB3aGljaCByZWFsbHkgbmVlZCBpdFxuICAgICAgICAgICAgLy8gRXZlbnR1YWwgcGxhbiBpcyB0byBnZXQgcmlkIG9mIHRoaXMgcGFydGljdWxhciBwcm9wXG4gICAgICAgICAgICBpZiAocHJvcHNLZXlzW2ldID09PSAnZGlzcGxheU9ubHlGQSQnICYmICFjb21wb25lbnRzUmVxdWlyZURpc3BsYXlPbmx5RkFQcm9wLmluY2x1ZGVzKHRoaXMubmFtZSkpIHtcbiAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnRpbnVlXG4gICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5jb21wb25lbnRSZWY/LnNldElucHV0KHByb3BzS2V5c1tpXSwgcHJvcHNWYWx1ZXNbaV0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUubG9nKGUpO1xuICAgIH1cbiAgfVxuXG4gIGJpbmRPdXRwdXRFdmVudHMoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGlmICh0aGlzLm91dHB1dEV2ZW50cykge1xuICAgICAgICBjb25zdCBwcm9wc0tleXMgPSBPYmplY3Qua2V5cyh0aGlzLm91dHB1dEV2ZW50cyk7XG4gICAgICAgIGNvbnN0IHByb3BzVmFsdWVzOiBhbnkgPSBPYmplY3QudmFsdWVzKHRoaXMub3V0cHV0RXZlbnRzKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwcm9wc0tleXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZj8uaW5zdGFuY2VbcHJvcHNLZXlzW2ldXS5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgICAgICAgY29uc3QgY2FsbGJhY2tGbiA9IHByb3BzVmFsdWVzW2ldLmJpbmQodGhpcy5wYXJlbnQpO1xuICAgICAgICAgICAgY2FsbGJhY2tGbih2YWx1ZSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmxvZyhlKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jb21wb25lbnRSZWYpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgI2R5bmFtaWNDb21wb25lbnQ+PC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -139,4 +139,4 @@ export function getComponentFromMap(inComponentName) {
|
|
|
139
139
|
}
|
|
140
140
|
return theComponentImplementation;
|
|
141
141
|
}
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrX2NvbXBvbmVudF9tYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2JyaWRnZS9oZWxwZXJzL3Nka19jb21wb25lbnRfbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9EQUFvRDtBQUNwRCxnQ0FBZ0M7QUFDaEMsdUVBQXVFO0FBQ3ZFLE9BQU8sbUJBQW1CLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QseUNBQXlDO0FBRXpDLDhGQUE4RjtBQUM5RixtR0FBbUc7QUFDbkcsK0ZBQStGO0FBQy9GLHFEQUFxRDtBQUNyRCxNQUFNLENBQUMsSUFBSSxlQUFlLENBQUM7QUFDM0IsSUFBSSwrQkFBK0IsR0FBRyxLQUFLLENBQUM7QUFPNUMsTUFBTSxZQUFZO0lBSWhCO1FBMkRBLHlCQUFvQixHQUFHLEdBQUcsRUFBRTtZQUMxQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUM7UUFDaEQsQ0FBQyxDQUFDO1FBT0YsZ0NBQTJCLEdBQUcsR0FBRyxFQUFFO1lBQ2pDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyx3QkFBd0IsQ0FBQztRQUN2RCxDQUFDLENBQUM7UUFFRixnQ0FBMkIsR0FBRywwQkFBMEIsQ0FBQyxFQUFFO1lBQ3pELElBQUksQ0FBQyxlQUFlLENBQUMsd0JBQXdCLEdBQUcsMEJBQTBCLENBQUM7WUFDM0UsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDO1FBQ3ZELENBQUMsQ0FBQztRQTFFQSxzQ0FBc0M7UUFDdEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLGlCQUFpQixFQUFFLEVBQUUsRUFBRSx3QkFBd0IsRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUUvRSxrRkFBa0Y7UUFDbEYsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztRQUVsQyx1RkFBdUY7UUFDdkYsMERBQTBE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QyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQixDQUFDLGVBQXVCO0lBQ3pELElBQUksMEJBQTBCLEdBQUcsSUFBSSxDQUFDO0lBQ3RDLE1BQU0saUJBQWlCLEdBQUcsZUFBZSxDQUFDLG9CQUFvQixFQUFFLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbEYsSUFBSSxpQkFBaUIsS0FBSyxTQUFTLEVBQUU7UUFDbkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsZUFBZSxTQUFTLENBQUMsQ0FBQztRQUNuRSwwQkFBMEIsR0FBRyxpQkFBaUIsQ0FBQztLQUNoRDtTQUFNO1FBQ0wsTUFBTSx3QkFBd0IsR0FBRyxlQUFlLENBQUMsMkJBQTJCLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNoRyxJQUFJLHdCQUF3QixLQUFLLFNBQVMsRUFBRTtZQUMxQyw4RUFBOEU7WUFDOUUsMEJBQTBCLEdBQUcsd0JBQXdCLENBQUM7U0FDdkQ7YUFBTTtZQUNMLE9BQU8sQ0FBQyxLQUFLLENBQUMsMkVBQTJFLGVBQWUsRUFBRSxDQUFDLENBQUM7WUFDNUcsMEJBQTBCLEdBQUcsbUJBQW1CLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDbkU7S0FDRjtJQUNELE9BQU8sMEJBQTBCLENBQUM7QUFDcEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEhlbHBlciBzaW5nbGV0b24gY2xhc3MgdG8gYXNzaXN0IHdpdGggbG9hZGluZyBhbmRcbi8vICBhY2Nlc3NpbmcgdGhlIFNESyBjb21wb25lbnRzXG4vLyBpbXBvcnQgbG9jYWxTZGtDb21wb25lbnRNYXAgZnJvbSAnLi4vLi4vLi4vc2RrLWxvY2FsLWNvbXBvbmVudC1tYXAnO1xuaW1wb3J0IHBlZ2FTZGtDb21wb25lbnRNYXAgZnJvbSAnLi9zZGstcGVnYS1jb21wb25lbnQtbWFwJztcblxuLy8gU3RhdGljYWxseSBsb2FkIGFsbCBcImxvY2FsXCIgY29tcG9uZW50c1xuXG4vLyBDcmVhdGUgYSBzaW5nbGV0b24gZm9yIHRoaXMgY2xhc3MgKHdpdGggYXN5bmMgbG9hZGluZyBvZiBjb21wb25lbnRzIG1hcCBmaWxlKSBhbmQgZXhwb3J0IGl0XG4vLyBOb3RlOiBJbml0aWFsaXppbmcgU2RrQ29tcG9uZW50TWFwIHRvIG51bGwgc2VlbXMgdG8gY2F1c2UgbG90cyBvZiBjb21waWxlIGlzc3VlcyB3aXRoIHJlZmVyZW5jZXNcbi8vICB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyBhbmQgdGhlIHZhbHVlIHBvdGVudGlhbGx5IGJlaW5nIG51bGwgKHNvIHRyeSB0byBsZWF2ZSBpdCB1bmRlZmluZWQpXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLW11dGFibGUtZXhwb3J0c1xuZXhwb3J0IGxldCBTZGtDb21wb25lbnRNYXA7XG5sZXQgU2RrQ29tcG9uZW50TWFwQ3JlYXRlSW5Qcm9ncmVzcyA9IGZhbHNlO1xuXG5pbnRlcmZhY2UgSVNka0NvbXBvbmVudE1hcCB7XG4gIGxvY2FsQ29tcG9uZW50TWFwOiBPYmplY3Q7XG4gIHBlZ2FQcm92aWRlZENvbXBvbmVudE1hcDogT2JqZWN0O1xufVxuXG5jbGFzcyBDb21wb25lbnRNYXAge1xuICBzZGtDb21wb25lbnRNYXA6IElTZGtDb21wb25lbnRNYXA7IC8vIFRvcCBsZXZlbCBvYmplY3RcbiAgaXNDb21wb25lbnRNYXBMb2FkZWQ6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgLy8gc2RrQ29tcG9uZW50TWFwIGlzIHRvcC1sZXZlbCBvYmplY3RcbiAgICB0aGlzLnNka0NvbXBvbmVudE1hcCA9IHsgbG9jYWxDb21wb25lbnRNYXA6IHt9LCBwZWdhUHJvdmlkZWRDb21wb25lbnRNYXA6IHt9IH07XG5cbiAgICAvLyBpc0NvQ29tcG9uZW50TWFwTG9hZGVkIHdpbGwgYmUgdXBkYXRlZCB0byB0cnVlIGFmdGVyIHRoZSBhc3luYyBsb2FkIGlzIGNvbXBsZXRlXG4gICAgdGhpcy5pc0NvbXBvbmVudE1hcExvYWRlZCA9IGZhbHNlO1xuXG4gICAgLy8gcGVnYVNka0NvbXBvbmVudHMubG9jYWwgaXMgdGhlIEpTT04gb2JqZWN0IHdoZXJlIHdlJ2xsIHN0b3JlIHRoZSBjb21wb25lbnRzIHRoYXQgYXJlXG4gICAgLy8gZm91bmQgbG9jYWxseSBvciBjYW4gYmUgZm91bmQgaW4gdGhlIFBlZ2EtcHJvdmlkZWQgcmVwb1xuICAgIHRoaXMuc2RrQ29tcG9uZW50TWFwLmxvY2FsQ29tcG9uZW50TWFwID0ge307XG5cbiAgICB0aGlzLnNka0NvbXBvbmVudE1hcC5wZWdhUHJvdmlkZWRDb21wb25lbnRNYXAgPSB7fTtcblxuICAgIC8vIFRoZSBcIndvcmtcIiB0byBsb2FkIHRoZSBjb25maWcgZmlsZSBpcyBkb25lIChhc3luY2hyb25vdXNseSkgdmlhIHRoZSBpbml0aWFsaXplXG4gICAgLy8gIChGYWN0b3J5IGZ1bmN0aW9uKSBiZWxvdylcbiAgfVxuXG4gIC8qKlxuICAgKiBBc3luY2hyb25vdXMgaW5pdGlhbGl6YXRpb24gb2YgdGhlIGNvbmZpZyBmaWxlIGNvbnRlbnRzLlxuICAgKiBAcmV0dXJucyBQcm9taXNlIG9mIGNvbmZpZyBmaWxlIGZldGNoXG4gICAqL1xuICBhc3luYyByZWFkU2RrQ29tcG9uZW50TWFwKGluTG9jYWxTZGtDb21wb25lbnRNYXAgPSB7fSkge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5zZGtDb21wb25lbnRNYXAubG9jYWxDb21wb25lbnRNYXApLmxlbmd0aCA9PT0gMCAmJlxuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLnNka0NvbXBvbmVudE1hcC5wZWdhUHJvdmlkZWRDb21wb25lbnRNYXApLmxlbmd0aCA9PT0gMFxuICAgICAgKSB7XG4gICAgICAgIGNvbnN0IHRoZUxvY2FsQ29tcFByb21pc2UgPSB0aGlzLnJlYWRMb2NhbFNka0NvbXBvbmVudE1hcChpbkxvY2FsU2RrQ29tcG9uZW50TWFwKTtcbiAgICAgICAgY29uc3QgdGhlUGVnYUNvbXBQcm9taXNlID0gdGhpcy5yZWFkUGVnYVNka0NvbXBvbmVudE1hcChwZWdhU2RrQ29tcG9uZW50TWFwKTtcblxuICAgICAgICBQcm9taXNlLmFsbChbdGhlTG9jYWxDb21wUHJvbWlzZSwgdGhlUGVnYUNvbXBQcm9taXNlXSlcbiAgICAgICAgICAudGhlbigoLyogcmVzdWx0cyAqLykgPT4ge1xuICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLnNka0NvbXBvbmVudE1hcCk7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihgRXJyb3IgaW4gcmVhZFNka0NvbXBvbmVudE1hcDogJHtlcnJvcn1gKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc29sdmUodGhpcy5zZGtDb21wb25lbnRNYXApO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgcmVhZExvY2FsU2RrQ29tcG9uZW50TWFwKGluTG9jYWxTZGtDb21wb25lbnRNYXAgPSB7fSkge1xuICAgIC8vIGRlYnVnZ2VyO1xuICAgIGlmIChPYmplY3QuZW50cmllcyh0aGlzLmdldExvY2FsQ29tcG9uZW50TWFwKCkpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5zZGtDb21wb25lbnRNYXAubG9jYWxDb21wb25lbnRNYXAgPSBpbkxvY2FsU2RrQ29tcG9uZW50TWFwO1xuICAgIH1cbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMpO1xuICB9XG5cbiAgYXN5bmMgcmVhZFBlZ2FTZGtDb21wb25lbnRNYXAoaW5QZWdhU2RrQ29tcG9uZW50TWFwID0ge30pIHtcbiAgICAvLyBkZWJ1Z2dlcjtcbiAgICBpZiAoT2JqZWN0LmVudHJpZXModGhpcy5nZXRQZWdhUHJvdmlkZWRDb21wb25lbnRNYXAoKSkubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLnNka0NvbXBvbmVudE1hcC5wZWdhUHJvdmlkZWRDb21wb25lbnRNYXAgPSBpblBlZ2FTZGtDb21wb25lbnRNYXA7XG4gICAgfVxuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcyk7XG4gIH1cblxuICBnZXRMb2NhbENvbXBvbmVudE1hcCA9ICgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5zZGtDb21wb25lbnRNYXAubG9jYWxDb21wb25lbnRNYXA7XG4gIH07XG5cbiAgc2V0TG9jYWxDb21wb25lbnRNYXAoaW5Mb2NhbFNka0NvbXBvbmVudE1hcCkge1xuICAgIHRoaXMuc2RrQ29tcG9uZW50TWFwLmxvY2FsQ29tcG9uZW50TWFwID0gaW5Mb2NhbFNka0NvbXBvbmVudE1hcDtcbiAgICByZXR1cm4gdGhpcy5zZGtDb21wb25lbnRNYXAubG9jYWxDb21wb25lbnRNYXA7XG4gIH1cblxuICBnZXRQZWdhUHJvdmlkZWRDb21wb25lbnRNYXAgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuc2RrQ29tcG9uZW50TWFwLnBlZ2FQcm92aWRlZENvbXBvbmVudE1hcDtcbiAgfTtcblxuICBzZXRQZWdhUHJvdmlkZWRDb21wb25lbnRNYXAgPSBpblBlZ2FQcm92aWRlZENvbXBvbmVudE1hcCA9PiB7XG4gICAgdGhpcy5zZGtDb21wb25lbnRNYXAucGVnYVByb3ZpZGVkQ29tcG9uZW50TWFwID0gaW5QZWdhUHJvdmlkZWRDb21wb25lbnRNYXA7XG4gICAgcmV0dXJuIHRoaXMuc2RrQ29tcG9uZW50TWFwLnBlZ2FQcm92aWRlZENvbXBvbmVudE1hcDtcbiAgfTtcbn1cblxuLy8gSW1wbGVtZW50IEZhY3RvcnkgZnVuY3Rpb24gdG8gYWxsb3cgYXN5bmMgbG9hZFxuLy8gIFNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy80OTkwNTE3OC9hc3luY2hyb25vdXMtb3BlcmF0aW9ucy1pbi1jb25zdHJ1Y3Rvci80OTkwNjA2NCM0OTkwNjA2NCBmb3IgaW5zcGlyYXRpb25cbmFzeW5jIGZ1bmN0aW9uIGNyZWF0ZVNka0NvbXBvbmVudE1hcChpbkxvY2FsQ29tcG9uZW50TWFwID0ge30pIHtcbiAgLy8gTm90ZSB0aGF0IG91ciBpbml0aWFsaXplIGZ1bmN0aW9uIHJldHVybnMgYSBwcm9taXNlLi4uXG4gIGNvbnN0IHNpbmdsZXRvbiA9IG5ldyBDb21wb25lbnRNYXAoKTtcbiAgYXdhaXQgc2luZ2xldG9uLnJlYWRTZGtDb21wb25lbnRNYXAoaW5Mb2NhbENvbXBvbmVudE1hcCk7XG4gIHJldHVybiBzaW5nbGV0b247XG59XG5cbi8vIEluaXRpYWxpemUgZXhwb3J0ZWQgU2RrQ29tcG9uZW50TWFwIHN0cnVjdHVyZVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFNka0NvbXBvbmVudE1hcChpbkxvY2FsQ29tcG9uZW50TWFwID0ge30pIHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgIGxldCBpZE5leHRDaGVjaztcbiAgICBpZiAoIVNka0NvbXBvbmVudE1hcCAmJiAhU2RrQ29tcG9uZW50TWFwQ3JlYXRlSW5Qcm9ncmVzcykge1xuICAgICAgU2RrQ29tcG9uZW50TWFwQ3JlYXRlSW5Qcm9ncmVzcyA9IHRydWU7XG4gICAgICBjcmVhdGVTZGtDb21wb25lbnRNYXAoaW5Mb2NhbENvbXBvbmVudE1hcCkudGhlbih0aGVDb21wb25lbnRNYXAgPT4ge1xuICAgICAgICAvLyBkZWJ1Z2dlcjtcbiAgICAgICAgLy8gS2V5IGluaXRpYWxpemF0aW9uIG9mIFNka0NvbXBvbmVudE1hcFxuICAgICAgICBTZGtDb21wb25lbnRNYXAgPSB0aGVDb21wb25lbnRNYXA7XG4gICAgICAgIFNka0NvbXBvbmVudE1hcENyZWF0ZUluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICAgICAgY29uc29sZS5sb2coYGdldFNka0NvbXBvbmVudE1hcDogY3JlYXRlZCBTZGtDb21wb25lbnRNYXAgc2luZ2xldG9uYCk7XG4gICAgICAgIC8vIENyZWF0ZSBhbmQgZGlzcGF0Y2ggdGhlIFNka0NvbmZpZ0FjY2Vzc1JlYWR5IGV2ZW50XG4gICAgICAgIC8vICBOb3QgdXNlZCBhbnlwbGFjZSB5ZXQgYnV0IHB1dHRpbmcgaXQgaW4gcGxhY2UgaW4gY2FzZSB3ZSBuZWVkIGl0LlxuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBDdXN0b21FdmVudCgnU2RrQ29tcG9uZW50TWFwUmVhZHknLCB7fSk7XG4gICAgICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQoZXZlbnQpO1xuICAgICAgICByZXR1cm4gcmVzb2x2ZShTZGtDb21wb25lbnRNYXAgLyogLnNka0NvbXBvbmVudE1hcCAqLyk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZm5DaGVja0ZvckNvbmZpZyA9ICgpID0+IHtcbiAgICAgICAgaWYgKFNka0NvbXBvbmVudE1hcCkge1xuICAgICAgICAgIGlmIChpZE5leHRDaGVjaykge1xuICAgICAgICAgICAgY2xlYXJJbnRlcnZhbChpZE5leHRDaGVjayk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByZXNvbHZlKFNka0NvbXBvbmVudE1hcC5zZGtDb21wb25lbnRNYXApO1xuICAgICAgICB9XG4gICAgICAgIGlkTmV4dENoZWNrID0gc2V0SW50ZXJ2YWwoZm5DaGVja0ZvckNvbmZpZywgNTAwKTtcbiAgICAgIH07XG4gICAgICBpZiAoU2RrQ29tcG9uZW50TWFwKSB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wcm9taXNlLWV4ZWN1dG9yLXJldHVyblxuICAgICAgICByZXR1cm4gcmVzb2x2ZShTZGtDb21wb25lbnRNYXAuc2RrQ29tcG9uZW50TWFwKTtcbiAgICAgIH1cbiAgICAgIGlkTmV4dENoZWNrID0gc2V0SW50ZXJ2YWwoZm5DaGVja0ZvckNvbmZpZywgNTAwKTtcbiAgICB9XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29tcG9uZW50RnJvbU1hcChpbkNvbXBvbmVudE5hbWU6IHN0cmluZyk6IGFueSB7XG4gIGxldCB0aGVDb21wb25lbnRJbXBsZW1lbnRhdGlvbiA9IG51bGw7XG4gIGNvbnN0IHRoZUxvY2FsQ29tcG9uZW50ID0gU2RrQ29tcG9uZW50TWFwLmdldExvY2FsQ29tcG9uZW50TWFwKClbaW5Db21wb25lbnROYW1lXTtcbiAgaWYgKHRoZUxvY2FsQ29tcG9uZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICBjb25zb2xlLmxvZyhgUmVxdWVzdGVkIGNvbXBvbmVudCBmb3VuZCAke2luQ29tcG9uZW50TmFtZX06IExvY2FsYCk7XG4gICAgdGhlQ29tcG9uZW50SW1wbGVtZW50YXRpb24gPSB0aGVMb2NhbENvbXBvbmVudDtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCB0aGVQZWdhUHJvdmlkZWRDb21wb25lbnQgPSBTZGtDb21wb25lbnRNYXAuZ2V0UGVnYVByb3ZpZGVkQ29tcG9uZW50TWFwKClbaW5Db21wb25lbnROYW1lXTtcbiAgICBpZiAodGhlUGVnYVByb3ZpZGVkQ29tcG9uZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGBSZXF1ZXN0ZWQgY29tcG9uZW50IGZvdW5kICR7aW5Db21wb25lbnROYW1lfTogUGVnYS1wcm92aWRlZGApO1xuICAgICAgdGhlQ29tcG9uZW50SW1wbGVtZW50YXRpb24gPSB0aGVQZWdhUHJvdmlkZWRDb21wb25lbnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFJlcXVlc3RlZCBjb21wb25lbnQgaGFzIG5laXRoZXIgTG9jYWwgbm9yIFBlZ2EtcHJvdmlkZWQgaW1wbGVtZW50YXRpb246ICR7aW5Db21wb25lbnROYW1lfWApO1xuICAgICAgdGhlQ29tcG9uZW50SW1wbGVtZW50YXRpb24gPSBnZXRDb21wb25lbnRGcm9tTWFwKCdFcnJvckJvdW5kYXJ5Jyk7XG4gICAgfVxuICB9XG4gIHJldHVybiB0aGVDb21wb25lbnRJbXBsZW1lbnRhdGlvbjtcbn1cbiJdfQ==
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrX2NvbXBvbmVudF9tYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2JyaWRnZS9oZWxwZXJzL3Nka19jb21wb25lbnRfbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9EQUFvRDtBQUNwRCxnQ0FBZ0M7QUFDaEMsdUVBQXVFO0FBQ3ZFLE9BQU8sbUJBQW1CLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QseUNBQXlDO0FBRXpDLDhGQUE4RjtBQUM5RixtR0FBbUc7QUFDbkcsK0ZBQStGO0FBQy9GLHFEQUFxRDtBQUNyRCxNQUFNLENBQUMsSUFBSSxlQUFlLENBQUM7QUFDM0IsSUFBSSwrQkFBK0IsR0FBRyxLQUFLLENBQUM7QUFPNUMsTUFBTSxZQUFZO0lBSWhCO1FBMkRBLHlCQUFvQixHQUFHLEdBQUcsRUFBRTtZQUMxQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUM7UUFDaEQsQ0FBQyxDQUFDO1FBT0YsZ0NBQTJCLEdBQUcsR0FBRyxFQUFFO1lBQ2pDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyx3QkFBd0IsQ0FBQztRQUN2RCxDQUFDLENBQUM7UUFFRixnQ0FBMkIsR0FBRywwQkFBMEIsQ0FBQyxFQUFFO1lBQ3pELElBQUksQ0FBQyxlQUFlLENBQUMsd0JBQXdCLEdBQUcsMEJBQTBCLENBQUM7WUFDM0UsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDO1FBQ3ZELENBQUMsQ0FBQztRQTFFQSxzQ0FBc0M7UUFDdEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLGlCQUFpQixFQUFFLEVBQUUsRUFBRSx3QkFBd0IsRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUUvRSxrRkFBa0Y7UUFDbEYsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztRQUVsQyx1RkFBdUY7UUFDdkYsMERBQTBEO1FBQzFELElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO1FBRTVDLElBQUksQ0FBQyxlQUFlLENBQUMsd0JBQXdCLEdBQUcsRUFBRSxDQUFDO1FBRW5ELGlGQUFpRjtRQUNqRiw2QkFBNkI7SUFDL0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxzQkFBc0IsR0FBRyxFQUFFO1FBQ25ELE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDM0IsSUFDRSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQztnQkFDaEUsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFDdkUsQ0FBQztnQkFDRCxNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO2dCQUNsRixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2dCQUU3RSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztxQkFDbkQsSUFBSSxDQUFDLEVBQUMsYUFBYSxFQUFFLEVBQUU7b0JBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQ2hDLENBQUMsQ0FBQztxQkFDRCxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUU7b0JBQ2IsT0FBTyxDQUFDLEtBQUssQ0FBQyxpQ0FBaUMsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFDMUQsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNoQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLHdCQUF3QixDQUFDLHNCQUFzQixHQUFHLEVBQUU7UUFDeEQsWUFBWTtRQUNaLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM3RCxJQUFJLENBQUMsZUFBZSxDQUFDLGlCQUFpQixHQUFHLHNCQUFzQixDQUFDO1FBQ2xFLENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxxQkFBcUIsR0FBRyxFQUFFO1FBQ3RELFlBQVk7UUFDWixJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDcEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyx3QkFBd0IsR0FBRyxxQkFBcUIsQ0FBQztRQUN4RSxDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFNRCxvQkFBb0IsQ0FBQyxzQkFBc0I7UUFDekMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxpQkFBaUIsR0FBRyxzQkFBc0IsQ0FBQztRQUNoRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUM7SUFDaEQsQ0FBQztDQVVGO0FBRUQsaURBQWlEO0FBQ2pELDZIQUE2SDtBQUM3SCxLQUFLLFVBQVUscUJBQXFCLENBQUMsbUJBQW1CLEdBQUcsRUFBRTtJQUMzRCx5REFBeUQ7SUFDekQsTUFBTSxTQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUNyQyxNQUFNLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3pELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRCxnREFBZ0Q7QUFDaEQsTUFBTSxDQUFDLEtBQUssVUFBVSxrQkFBa0IsQ0FBQyxtQkFBbUIsR0FBRyxFQUFFO0lBQy9ELE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDM0IsSUFBSSxXQUFXLENBQUM7UUFDaEIsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLCtCQUErQixFQUFFLENBQUM7WUFDekQsK0JBQStCLEdBQUcsSUFBSSxDQUFDO1lBQ3ZDLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFO2dCQUNoRSxZQUFZO2dCQUNaLHdDQUF3QztnQkFDeEMsZUFBZSxHQUFHLGVBQWUsQ0FBQztnQkFDbEMsK0JBQStCLEdBQUcsS0FBSyxDQUFDO2dCQUN4QyxPQUFPLENBQUMsR0FBRyxDQUFDLHVEQUF1RCxDQUFDLENBQUM7Z0JBQ3JFLHFEQUFxRDtnQkFDckQscUVBQXFFO2dCQUNyRSxNQUFNLEtBQUssR0FBRyxJQUFJLFdBQVcsQ0FBQyxzQkFBc0IsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDMUQsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDOUIsT0FBTyxPQUFPLENBQUMsZUFBZSxDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDekQsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxFQUFFO2dCQUM1QixJQUFJLGVBQWUsRUFBRSxDQUFDO29CQUNwQixJQUFJLFdBQVcsRUFBRSxDQUFDO3dCQUNoQixhQUFhLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQzdCLENBQUM7b0JBQ0QsT0FBTyxPQUFPLENBQUMsZUFBZSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUNsRCxDQUFDO2dCQUNELFdBQVcsR0FBRyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDbkQsQ0FBQyxDQUFDO1lBQ0YsSUFBSSxlQUFlLEVBQUUsQ0FBQztnQkFDcEIsc0RBQXNEO2dCQUN0RCxPQUFPLE9BQU8sQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDbEQsQ0FBQztZQUNELFdBQVcsR0FBRyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDbkQsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxlQUF1QjtJQUN6RCxJQUFJLDBCQUEwQixHQUFHLElBQUksQ0FBQztJQUN0QyxNQUFNLGlCQUFpQixHQUFHLGVBQWUsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2xGLElBQUksaUJBQWlCLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDcEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsZUFBZSxTQUFTLENBQUMsQ0FBQztRQUNuRSwwQkFBMEIsR0FBRyxpQkFBaUIsQ0FBQztJQUNqRCxDQUFDO1NBQU0sQ0FBQztRQUNOLE1BQU0sd0JBQXdCLEdBQUcsZUFBZSxDQUFDLDJCQUEyQixFQUFFLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDaEcsSUFBSSx3QkFBd0IsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMzQyw4RUFBOEU7WUFDOUUsMEJBQTBCLEdBQUcsd0JBQXdCLENBQUM7UUFDeEQsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLENBQUMsS0FBSyxDQUFDLDJFQUEyRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO1lBQzVHLDBCQUEwQixHQUFHLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3BFLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTywwQkFBMEIsQ0FBQztBQUNwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gSGVscGVyIHNpbmdsZXRvbiBjbGFzcyB0byBhc3Npc3Qgd2l0aCBsb2FkaW5nIGFuZFxuLy8gIGFjY2Vzc2luZyB0aGUgU0RLIGNvbXBvbmVudHNcbi8vIGltcG9ydCBsb2NhbFNka0NvbXBvbmVudE1hcCBmcm9tICcuLi8uLi8uLi9zZGstbG9jYWwtY29tcG9uZW50LW1hcCc7XG5pbXBvcnQgcGVnYVNka0NvbXBvbmVudE1hcCBmcm9tICcuL3Nkay1wZWdhLWNvbXBvbmVudC1tYXAnO1xuXG4vLyBTdGF0aWNhbGx5IGxvYWQgYWxsIFwibG9jYWxcIiBjb21wb25lbnRzXG5cbi8vIENyZWF0ZSBhIHNpbmdsZXRvbiBmb3IgdGhpcyBjbGFzcyAod2l0aCBhc3luYyBsb2FkaW5nIG9mIGNvbXBvbmVudHMgbWFwIGZpbGUpIGFuZCBleHBvcnQgaXRcbi8vIE5vdGU6IEluaXRpYWxpemluZyBTZGtDb21wb25lbnRNYXAgdG8gbnVsbCBzZWVtcyB0byBjYXVzZSBsb3RzIG9mIGNvbXBpbGUgaXNzdWVzIHdpdGggcmVmZXJlbmNlc1xuLy8gIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIGFuZCB0aGUgdmFsdWUgcG90ZW50aWFsbHkgYmVpbmcgbnVsbCAoc28gdHJ5IHRvIGxlYXZlIGl0IHVuZGVmaW5lZClcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tbXV0YWJsZS1leHBvcnRzXG5leHBvcnQgbGV0IFNka0NvbXBvbmVudE1hcDtcbmxldCBTZGtDb21wb25lbnRNYXBDcmVhdGVJblByb2dyZXNzID0gZmFsc2U7XG5cbmludGVyZmFjZSBJU2RrQ29tcG9uZW50TWFwIHtcbiAgbG9jYWxDb21wb25lbnRNYXA6IE9iamVjdDtcbiAgcGVnYVByb3ZpZGVkQ29tcG9uZW50TWFwOiBPYmplY3Q7XG59XG5cbmNsYXNzIENvbXBvbmVudE1hcCB7XG4gIHNka0NvbXBvbmVudE1hcDogSVNka0NvbXBvbmVudE1hcDsgLy8gVG9wIGxldmVsIG9iamVjdFxuICBpc0NvbXBvbmVudE1hcExvYWRlZDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBzZGtDb21wb25lbnRNYXAgaXMgdG9wLWxldmVsIG9iamVjdFxuICAgIHRoaXMuc2RrQ29tcG9uZW50TWFwID0geyBsb2NhbENvbXBvbmVudE1hcDoge30sIHBlZ2FQcm92aWRlZENvbXBvbmVudE1hcDoge30gfTtcblxuICAgIC8vIGlzQ29Db21wb25lbnRNYXBMb2FkZWQgd2lsbCBiZSB1cGRhdGVkIHRvIHRydWUgYWZ0ZXIgdGhlIGFzeW5jIGxvYWQgaXMgY29tcGxldGVcbiAgICB0aGlzLmlzQ29tcG9uZW50TWFwTG9hZGVkID0gZmFsc2U7XG5cbiAgICAvLyBwZWdhU2RrQ29tcG9uZW50cy5sb2NhbCBpcyB0aGUgSlNPTiBvYmplY3Qgd2hlcmUgd2UnbGwgc3RvcmUgdGhlIGNvbXBvbmVudHMgdGhhdCBhcmVcbiAgICAvLyBmb3VuZCBsb2NhbGx5IG9yIGNhbiBiZSBmb3VuZCBpbiB0aGUgUGVnYS1wcm92aWRlZCByZXBvXG4gICAgdGhpcy5zZGtDb21wb25lbnRNYXAubG9jYWxDb21wb25lbnRNYXAgPSB7fTtcblxuICAgIHRoaXMuc2RrQ29tcG9uZW50TWFwLnBlZ2FQcm92aWRlZENvbXBvbmVudE1hcCA9IHt9O1xuXG4gICAgLy8gVGhlIFwid29ya1wiIHRvIGxvYWQgdGhlIGNvbmZpZyBmaWxlIGlzIGRvbmUgKGFzeW5jaHJvbm91c2x5KSB2aWEgdGhlIGluaXRpYWxpemVcbiAgICAvLyAgKEZhY3RvcnkgZnVuY3Rpb24pIGJlbG93KVxuICB9XG5cbiAgLyoqXG4gICAqIEFzeW5jaHJvbm91cyBpbml0aWFsaXphdGlvbiBvZiB0aGUgY29uZmlnIGZpbGUgY29udGVudHMuXG4gICAqIEByZXR1cm5zIFByb21pc2Ugb2YgY29uZmlnIGZpbGUgZmV0Y2hcbiAgICovXG4gIGFzeW5jIHJlYWRTZGtDb21wb25lbnRNYXAoaW5Mb2NhbFNka0NvbXBvbmVudE1hcCA9IHt9KSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgaWYgKFxuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLnNka0NvbXBvbmVudE1hcC5sb2NhbENvbXBvbmVudE1hcCkubGVuZ3RoID09PSAwICYmXG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMuc2RrQ29tcG9uZW50TWFwLnBlZ2FQcm92aWRlZENvbXBvbmVudE1hcCkubGVuZ3RoID09PSAwXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgdGhlTG9jYWxDb21wUHJvbWlzZSA9IHRoaXMucmVhZExvY2FsU2RrQ29tcG9uZW50TWFwKGluTG9jYWxTZGtDb21wb25lbnRNYXApO1xuICAgICAgICBjb25zdCB0aGVQZWdhQ29tcFByb21pc2UgPSB0aGlzLnJlYWRQZWdhU2RrQ29tcG9uZW50TWFwKHBlZ2FTZGtDb21wb25lbnRNYXApO1xuXG4gICAgICAgIFByb21pc2UuYWxsKFt0aGVMb2NhbENvbXBQcm9taXNlLCB0aGVQZWdhQ29tcFByb21pc2VdKVxuICAgICAgICAgIC50aGVuKCgvKiByZXN1bHRzICovKSA9PiB7XG4gICAgICAgICAgICByZXNvbHZlKHRoaXMuc2RrQ29tcG9uZW50TWFwKTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5jYXRjaChlcnJvciA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBFcnJvciBpbiByZWFkU2RrQ29tcG9uZW50TWFwOiAke2Vycm9yfWApO1xuICAgICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzb2x2ZSh0aGlzLnNka0NvbXBvbmVudE1hcCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBhc3luYyByZWFkTG9jYWxTZGtDb21wb25lbnRNYXAoaW5Mb2NhbFNka0NvbXBvbmVudE1hcCA9IHt9KSB7XG4gICAgLy8gZGVidWdnZXI7XG4gICAgaWYgKE9iamVjdC5lbnRyaWVzKHRoaXMuZ2V0TG9jYWxDb21wb25lbnRNYXAoKSkubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLnNka0NvbXBvbmVudE1hcC5sb2NhbENvbXBvbmVudE1hcCA9IGluTG9jYWxTZGtDb21wb25lbnRNYXA7XG4gICAgfVxuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcyk7XG4gIH1cblxuICBhc3luYyByZWFkUGVnYVNka0NvbXBvbmVudE1hcChpblBlZ2FTZGtDb21wb25lbnRNYXAgPSB7fSkge1xuICAgIC8vIGRlYnVnZ2VyO1xuICAgIGlmIChPYmplY3QuZW50cmllcyh0aGlzLmdldFBlZ2FQcm92aWRlZENvbXBvbmVudE1hcCgpKS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuc2RrQ29tcG9uZW50TWFwLnBlZ2FQcm92aWRlZENvbXBvbmVudE1hcCA9IGluUGVnYVNka0NvbXBvbmVudE1hcDtcbiAgICB9XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzKTtcbiAgfVxuXG4gIGdldExvY2FsQ29tcG9uZW50TWFwID0gKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLnNka0NvbXBvbmVudE1hcC5sb2NhbENvbXBvbmVudE1hcDtcbiAgfTtcblxuICBzZXRMb2NhbENvbXBvbmVudE1hcChpbkxvY2FsU2RrQ29tcG9uZW50TWFwKSB7XG4gICAgdGhpcy5zZGtDb21wb25lbnRNYXAubG9jYWxDb21wb25lbnRNYXAgPSBpbkxvY2FsU2RrQ29tcG9uZW50TWFwO1xuICAgIHJldHVybiB0aGlzLnNka0NvbXBvbmVudE1hcC5sb2NhbENvbXBvbmVudE1hcDtcbiAgfVxuXG4gIGdldFBlZ2FQcm92aWRlZENvbXBvbmVudE1hcCA9ICgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5zZGtDb21wb25lbnRNYXAucGVnYVByb3ZpZGVkQ29tcG9uZW50TWFwO1xuICB9O1xuXG4gIHNldFBlZ2FQcm92aWRlZENvbXBvbmVudE1hcCA9IGluUGVnYVByb3ZpZGVkQ29tcG9uZW50TWFwID0+IHtcbiAgICB0aGlzLnNka0NvbXBvbmVudE1hcC5wZWdhUHJvdmlkZWRDb21wb25lbnRNYXAgPSBpblBlZ2FQcm92aWRlZENvbXBvbmVudE1hcDtcbiAgICByZXR1cm4gdGhpcy5zZGtDb21wb25lbnRNYXAucGVnYVByb3ZpZGVkQ29tcG9uZW50TWFwO1xuICB9O1xufVxuXG4vLyBJbXBsZW1lbnQgRmFjdG9yeSBmdW5jdGlvbiB0byBhbGxvdyBhc3luYyBsb2FkXG4vLyAgU2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzQ5OTA1MTc4L2FzeW5jaHJvbm91cy1vcGVyYXRpb25zLWluLWNvbnN0cnVjdG9yLzQ5OTA2MDY0IzQ5OTA2MDY0IGZvciBpbnNwaXJhdGlvblxuYXN5bmMgZnVuY3Rpb24gY3JlYXRlU2RrQ29tcG9uZW50TWFwKGluTG9jYWxDb21wb25lbnRNYXAgPSB7fSkge1xuICAvLyBOb3RlIHRoYXQgb3VyIGluaXRpYWxpemUgZnVuY3Rpb24gcmV0dXJucyBhIHByb21pc2UuLi5cbiAgY29uc3Qgc2luZ2xldG9uID0gbmV3IENvbXBvbmVudE1hcCgpO1xuICBhd2FpdCBzaW5nbGV0b24ucmVhZFNka0NvbXBvbmVudE1hcChpbkxvY2FsQ29tcG9uZW50TWFwKTtcbiAgcmV0dXJuIHNpbmdsZXRvbjtcbn1cblxuLy8gSW5pdGlhbGl6ZSBleHBvcnRlZCBTZGtDb21wb25lbnRNYXAgc3RydWN0dXJlXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0U2RrQ29tcG9uZW50TWFwKGluTG9jYWxDb21wb25lbnRNYXAgPSB7fSkge1xuICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgbGV0IGlkTmV4dENoZWNrO1xuICAgIGlmICghU2RrQ29tcG9uZW50TWFwICYmICFTZGtDb21wb25lbnRNYXBDcmVhdGVJblByb2dyZXNzKSB7XG4gICAgICBTZGtDb21wb25lbnRNYXBDcmVhdGVJblByb2dyZXNzID0gdHJ1ZTtcbiAgICAgIGNyZWF0ZVNka0NvbXBvbmVudE1hcChpbkxvY2FsQ29tcG9uZW50TWFwKS50aGVuKHRoZUNvbXBvbmVudE1hcCA9PiB7XG4gICAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgICAvLyBLZXkgaW5pdGlhbGl6YXRpb24gb2YgU2RrQ29tcG9uZW50TWFwXG4gICAgICAgIFNka0NvbXBvbmVudE1hcCA9IHRoZUNvbXBvbmVudE1hcDtcbiAgICAgICAgU2RrQ29tcG9uZW50TWFwQ3JlYXRlSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICBjb25zb2xlLmxvZyhgZ2V0U2RrQ29tcG9uZW50TWFwOiBjcmVhdGVkIFNka0NvbXBvbmVudE1hcCBzaW5nbGV0b25gKTtcbiAgICAgICAgLy8gQ3JlYXRlIGFuZCBkaXNwYXRjaCB0aGUgU2RrQ29uZmlnQWNjZXNzUmVhZHkgZXZlbnRcbiAgICAgICAgLy8gIE5vdCB1c2VkIGFueXBsYWNlIHlldCBidXQgcHV0dGluZyBpdCBpbiBwbGFjZSBpbiBjYXNlIHdlIG5lZWQgaXQuXG4gICAgICAgIGNvbnN0IGV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KCdTZGtDb21wb25lbnRNYXBSZWFkeScsIHt9KTtcbiAgICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChldmVudCk7XG4gICAgICAgIHJldHVybiByZXNvbHZlKFNka0NvbXBvbmVudE1hcCAvKiAuc2RrQ29tcG9uZW50TWFwICovKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBmbkNoZWNrRm9yQ29uZmlnID0gKCkgPT4ge1xuICAgICAgICBpZiAoU2RrQ29tcG9uZW50TWFwKSB7XG4gICAgICAgICAgaWYgKGlkTmV4dENoZWNrKSB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKGlkTmV4dENoZWNrKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHJlc29sdmUoU2RrQ29tcG9uZW50TWFwLnNka0NvbXBvbmVudE1hcCk7XG4gICAgICAgIH1cbiAgICAgICAgaWROZXh0Q2hlY2sgPSBzZXRJbnRlcnZhbChmbkNoZWNrRm9yQ29uZmlnLCA1MDApO1xuICAgICAgfTtcbiAgICAgIGlmIChTZGtDb21wb25lbnRNYXApIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXByb21pc2UtZXhlY3V0b3ItcmV0dXJuXG4gICAgICAgIHJldHVybiByZXNvbHZlKFNka0NvbXBvbmVudE1hcC5zZGtDb21wb25lbnRNYXApO1xuICAgICAgfVxuICAgICAgaWROZXh0Q2hlY2sgPSBzZXRJbnRlcnZhbChmbkNoZWNrRm9yQ29uZmlnLCA1MDApO1xuICAgIH1cbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb21wb25lbnRGcm9tTWFwKGluQ29tcG9uZW50TmFtZTogc3RyaW5nKTogYW55IHtcbiAgbGV0IHRoZUNvbXBvbmVudEltcGxlbWVudGF0aW9uID0gbnVsbDtcbiAgY29uc3QgdGhlTG9jYWxDb21wb25lbnQgPSBTZGtDb21wb25lbnRNYXAuZ2V0TG9jYWxDb21wb25lbnRNYXAoKVtpbkNvbXBvbmVudE5hbWVdO1xuICBpZiAodGhlTG9jYWxDb21wb25lbnQgIT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnNvbGUubG9nKGBSZXF1ZXN0ZWQgY29tcG9uZW50IGZvdW5kICR7aW5Db21wb25lbnROYW1lfTogTG9jYWxgKTtcbiAgICB0aGVDb21wb25lbnRJbXBsZW1lbnRhdGlvbiA9IHRoZUxvY2FsQ29tcG9uZW50O1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHRoZVBlZ2FQcm92aWRlZENvbXBvbmVudCA9IFNka0NvbXBvbmVudE1hcC5nZXRQZWdhUHJvdmlkZWRDb21wb25lbnRNYXAoKVtpbkNvbXBvbmVudE5hbWVdO1xuICAgIGlmICh0aGVQZWdhUHJvdmlkZWRDb21wb25lbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gY29uc29sZS5sb2coYFJlcXVlc3RlZCBjb21wb25lbnQgZm91bmQgJHtpbkNvbXBvbmVudE5hbWV9OiBQZWdhLXByb3ZpZGVkYCk7XG4gICAgICB0aGVDb21wb25lbnRJbXBsZW1lbnRhdGlvbiA9IHRoZVBlZ2FQcm92aWRlZENvbXBvbmVudDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcihgUmVxdWVzdGVkIGNvbXBvbmVudCBoYXMgbmVpdGhlciBMb2NhbCBub3IgUGVnYS1wcm92aWRlZCBpbXBsZW1lbnRhdGlvbjogJHtpbkNvbXBvbmVudE5hbWV9YCk7XG4gICAgICB0aGVDb21wb25lbnRJbXBsZW1lbnRhdGlvbiA9IGdldENvbXBvbmVudEZyb21NYXAoJ0Vycm9yQm91bmRhcnknKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHRoZUNvbXBvbmVudEltcGxlbWVudGF0aW9uO1xufVxuIl19
|
|
@@ -32,10 +32,10 @@ export class AlertComponent {
|
|
|
32
32
|
alert('Close clicked');
|
|
33
33
|
this.onClose.emit({ Page: 'Page', target: 'target', type: 'type' });
|
|
34
34
|
}
|
|
35
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
36
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
35
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AlertComponent, isStandalone: true, selector: "app-alert", inputs: { message: "message", severity: "severity", hideClose: "hideClose" }, outputs: { onClose: "onClose" }, ngImport: i0, template: "<div\n class=\"psdk-alert\"\n [ngClass]=\"{\n 'psdk-alert-error': severity === 'error',\n 'psdk-grid-warning': severity === 'warning',\n 'psdk-grid-success': severity === 'success',\n 'psdk-grid-info': severity === 'info'\n }\"\n>\n <div class=\"psdk-alert-icon\">\n <mat-icon>{{ getMatIcon(severity) }}</mat-icon>\n </div>\n <div>{{ message }}</div>\n <div *ngIf=\"!hideClose\" style=\"margin-left: auto\">\n <button class=\"close-button\" mat-icon-button (click)=\"onCloseClick()\">\n <mat-icon>close</mat-icon>\n </button>\n </div>\n</div>\n", styles: [".psdk-alert{border:1px solid;display:flex;align-items:center;border-radius:4px;padding:10px;margin:5px 0}.psdk-alert-icon{display:flex;align-items:center;margin-right:10px}.psdk-alert-error{color:var(--app-alert-error-color);border:1px solid var(--app-alert-error-border-color)}.psdk-alert-error .mat-icon{color:var(--app-alert-error-border-color)}.psdk-grid-warning{color:var(--app-alert-warning-color);border:1px solid var(--app-alert-warning-border-color)}.psdk-grid-warning .mat-icon{color:var(--app-alert-warning-border-color)}.psdk-grid-success{color:var(--app-alert-success-color);border:1px solid var(--app-alert-success-border-color)}.psdk-grid-success .mat-icon{color:var(--app-alert-success-border-color)}.psdk-grid-info{color:var(--app-alert-info-color);border:1px solid var(--app-alert-info-border-color)}.psdk-grid-info .mat-icon{color:var(--app-alert-info-border-color)}.close-button{background:none;border:none;cursor:pointer}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
|
|
37
37
|
}
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AlertComponent, decorators: [{
|
|
39
39
|
type: Component,
|
|
40
40
|
args: [{ selector: 'app-alert', standalone: true, imports: [CommonModule, MatIconModule], template: "<div\n class=\"psdk-alert\"\n [ngClass]=\"{\n 'psdk-alert-error': severity === 'error',\n 'psdk-grid-warning': severity === 'warning',\n 'psdk-grid-success': severity === 'success',\n 'psdk-grid-info': severity === 'info'\n }\"\n>\n <div class=\"psdk-alert-icon\">\n <mat-icon>{{ getMatIcon(severity) }}</mat-icon>\n </div>\n <div>{{ message }}</div>\n <div *ngIf=\"!hideClose\" style=\"margin-left: auto\">\n <button class=\"close-button\" mat-icon-button (click)=\"onCloseClick()\">\n <mat-icon>close</mat-icon>\n </button>\n </div>\n</div>\n", styles: [".psdk-alert{border:1px solid;display:flex;align-items:center;border-radius:4px;padding:10px;margin:5px 0}.psdk-alert-icon{display:flex;align-items:center;margin-right:10px}.psdk-alert-error{color:var(--app-alert-error-color);border:1px solid var(--app-alert-error-border-color)}.psdk-alert-error .mat-icon{color:var(--app-alert-error-border-color)}.psdk-grid-warning{color:var(--app-alert-warning-color);border:1px solid var(--app-alert-warning-border-color)}.psdk-grid-warning .mat-icon{color:var(--app-alert-warning-border-color)}.psdk-grid-success{color:var(--app-alert-success-color);border:1px solid var(--app-alert-success-border-color)}.psdk-grid-success .mat-icon{color:var(--app-alert-success-border-color)}.psdk-grid-info{color:var(--app-alert-info-color);border:1px solid var(--app-alert-info-border-color)}.psdk-grid-info .mat-icon{color:var(--app-alert-info-border-color)}.close-button{background:none;border:none;cursor:pointer}\n"] }]
|
|
41
41
|
}], propDecorators: { message: [{
|
|
@@ -47,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
47
47
|
}], onClose: [{
|
|
48
48
|
type: Output
|
|
49
49
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9hbGVydC9hbGVydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQVN2RCxNQUFNLE9BQU8sY0FBYztJQVAzQjtRQVdZLFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQTJCM0Q7SUF6QkMsVUFBVSxDQUFDLFFBQVE7UUFDakIsSUFBSSxPQUFPLENBQUM7UUFDWixRQUFRLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLEtBQUssT0FBTztnQkFDVixPQUFPLEdBQUcsZUFBZSxDQUFDO2dCQUMxQixNQUFNO1lBQ1IsS0FBSyxTQUFTO2dCQUNaLE9BQU8sR0FBRyxlQUFlLENBQUM7Z0JBQzFCLE1BQU07WUFDUixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxHQUFHLFVBQVUsQ0FBQztnQkFDckIsTUFBTTtZQUNSLEtBQUssTUFBTTtnQkFDVCxPQUFPLEdBQUcsY0FBYyxDQUFDO2dCQUN6QixNQUFNO1lBQ1I7Z0JBQ0UsTUFBTTtRQUNWLENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQsWUFBWTtRQUNWLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN0RSxDQUFDOytHQTlCVSxjQUFjO21HQUFkLGNBQWMsb0xDWDNCLG9rQkFtQkEseStCRFZZLFlBQVksZ09BQUUsYUFBYTs7NEZBRTFCLGNBQWM7a0JBUDFCLFNBQVM7K0JBQ0UsV0FBVyxjQUdULElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7OEJBRzdCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYWxlcnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWxlcnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hbGVydC5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNYXRJY29uTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBBbGVydENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIG1lc3NhZ2U6IGFueVtdO1xuICBASW5wdXQoKSBzZXZlcml0eTtcbiAgQElucHV0KCkgaGlkZUNsb3NlO1xuICBAT3V0cHV0KCkgb25DbG9zZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgZ2V0TWF0SWNvbihzZXZlcml0eSkge1xuICAgIGxldCB2YXJpYW50O1xuICAgIHN3aXRjaCAoc2V2ZXJpdHkpIHtcbiAgICAgIGNhc2UgJ2Vycm9yJzpcbiAgICAgICAgdmFyaWFudCA9ICdlcnJvcl9vdXRsaW5lJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd3YXJuaW5nJzpcbiAgICAgICAgdmFyaWFudCA9ICd3YXJuaW5nX2FtYmVyJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdzdWNjZXNzJzpcbiAgICAgICAgdmFyaWFudCA9ICd0YXNrX2FsdCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnaW5mbyc6XG4gICAgICAgIHZhcmlhbnQgPSAnaW5mb19vdXRsaW5lJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgcmV0dXJuIHZhcmlhbnQ7XG4gIH1cblxuICBvbkNsb3NlQ2xpY2soKSB7XG4gICAgYWxlcnQoJ0Nsb3NlIGNsaWNrZWQnKTtcbiAgICB0aGlzLm9uQ2xvc2UuZW1pdCh7IFBhZ2U6ICdQYWdlJywgdGFyZ2V0OiAndGFyZ2V0JywgdHlwZTogJ3R5cGUnIH0pO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwicHNkay1hbGVydFwiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAncHNkay1hbGVydC1lcnJvcic6IHNldmVyaXR5ID09PSAnZXJyb3InLFxuICAgICdwc2RrLWdyaWQtd2FybmluZyc6IHNldmVyaXR5ID09PSAnd2FybmluZycsXG4gICAgJ3BzZGstZ3JpZC1zdWNjZXNzJzogc2V2ZXJpdHkgPT09ICdzdWNjZXNzJyxcbiAgICAncHNkay1ncmlkLWluZm8nOiBzZXZlcml0eSA9PT0gJ2luZm8nXG4gIH1cIlxuPlxuICA8ZGl2IGNsYXNzPVwicHNkay1hbGVydC1pY29uXCI+XG4gICAgPG1hdC1pY29uPnt7IGdldE1hdEljb24oc2V2ZXJpdHkpIH19PC9tYXQtaWNvbj5cbiAgPC9kaXY+XG4gIDxkaXY+e3sgbWVzc2FnZSB9fTwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiIWhpZGVDbG9zZVwiIHN0eWxlPVwibWFyZ2luLWxlZnQ6IGF1dG9cIj5cbiAgICA8YnV0dG9uIGNsYXNzPVwiY2xvc2UtYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJvbkNsb3NlQ2xpY2soKVwiPlxuICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
package/esm2022/lib/_components/designSystemExtension/alert-banner/alert-banner.component.mjs
CHANGED
|
@@ -17,13 +17,13 @@ export class AlertBannerComponent {
|
|
|
17
17
|
const { clearMessages } = PCore.getMessageManager();
|
|
18
18
|
clearMessages({ category: PAGE, type, context: target });
|
|
19
19
|
}
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AlertBannerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AlertBannerComponent, isStandalone: true, selector: "app-alert-banner", inputs: { banners: "banners" }, ngImport: i0, template: "<div>\n <div *ngFor=\"let banner of banners\">\n <div *ngFor=\"let message of banner.messages\">\n <component-mapper\n name=\"Alert\"\n [props]=\"{ message, severity: SEVERITY_MAP[banner.variant], hideClose: banner.variant === 'urgent' }\"\n [parent]=\"this\"\n [outputEvents]=\"{ onClose: onAlertClose }\"\n ></component-mapper>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i1.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
22
22
|
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AlertBannerComponent, decorators: [{
|
|
24
24
|
type: Component,
|
|
25
25
|
args: [{ selector: 'app-alert-banner', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div>\n <div *ngFor=\"let banner of banners\">\n <div *ngFor=\"let message of banner.messages\">\n <component-mapper\n name=\"Alert\"\n [props]=\"{ message, severity: SEVERITY_MAP[banner.variant], hideClose: banner.variant === 'urgent' }\"\n [parent]=\"this\"\n [outputEvents]=\"{ onClose: onAlertClose }\"\n ></component-mapper>\n </div>\n </div>\n</div>\n" }]
|
|
26
26
|
}], propDecorators: { banners: [{
|
|
27
27
|
type: Input
|
|
28
28
|
}] } });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtYmFubmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vYWxlcnQtYmFubmVyL2FsZXJ0LWJhbm5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL2FsZXJ0LWJhbm5lci9hbGVydC1iYW5uZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7O0FBU3hHLE1BQU0sT0FBTyxvQkFBb0I7SUFQakM7UUFVRSxpQkFBWSxHQUFHO1lBQ2IsTUFBTSxFQUFFLE9BQU87WUFDZixPQUFPLEVBQUUsU0FBUztZQUNsQixPQUFPLEVBQUUsU0FBUztZQUNsQixJQUFJLEVBQUUsTUFBTTtTQUNiLENBQUM7S0FPSDtJQUxDLFlBQVksQ0FBQyxNQUFNO1FBQ2pCLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sQ0FBQztRQUN0QyxNQUFNLEVBQUUsYUFBYSxFQUFFLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDcEQsYUFBYSxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBUyxDQUFDLENBQUM7SUFDbEUsQ0FBQzsrR0FkVSxvQkFBb0I7bUdBQXBCLG9CQUFvQiw0R0NYakMscVpBWUEsNkVESFksWUFBWSxzTUFBbUIsd0JBQXdCOzs0RkFFdEQsb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNFLGtCQUFrQixjQUdoQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLENBQUM7OEJBRzFELE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnRNYXBwZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2NvbXBvbmVudC1tYXBwZXIvY29tcG9uZW50LW1hcHBlci5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYWxlcnQtYmFubmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LWJhbm5lci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FsZXJ0LWJhbm5lci5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBmb3J3YXJkUmVmKCgpID0+IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCldXG59KVxuZXhwb3J0IGNsYXNzIEFsZXJ0QmFubmVyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgYmFubmVyczogYW55W107XG5cbiAgU0VWRVJJVFlfTUFQID0ge1xuICAgIHVyZ2VudDogJ2Vycm9yJyxcbiAgICB3YXJuaW5nOiAnd2FybmluZycsXG4gICAgc3VjY2VzczogJ3N1Y2Nlc3MnLFxuICAgIGluZm86ICdpbmZvJ1xuICB9O1xuXG4gIG9uQWxlcnRDbG9zZShjb25maWcpIHtcbiAgICBjb25zdCB7IFBBR0UsIHR5cGUsIHRhcmdldCB9ID0gY29uZmlnO1xuICAgIGNvbnN0IHsgY2xlYXJNZXNzYWdlcyB9ID0gUENvcmUuZ2V0TWVzc2FnZU1hbmFnZXIoKTtcbiAgICBjbGVhck1lc3NhZ2VzKHsgY2F0ZWdvcnk6IFBBR0UsIHR5cGUsIGNvbnRleHQ6IHRhcmdldCB9IGFzIGFueSk7XG4gIH1cbn1cbiIsIjxkaXY+XG4gIDxkaXYgKm5nRm9yPVwibGV0IGJhbm5lciBvZiBiYW5uZXJzXCI+XG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgbWVzc2FnZSBvZiBiYW5uZXIubWVzc2FnZXNcIj5cbiAgICAgIDxjb21wb25lbnQtbWFwcGVyXG4gICAgICAgIG5hbWU9XCJBbGVydFwiXG4gICAgICAgIFtwcm9wc109XCJ7IG1lc3NhZ2UsIHNldmVyaXR5OiBTRVZFUklUWV9NQVBbYmFubmVyLnZhcmlhbnRdLCBoaWRlQ2xvc2U6IGJhbm5lci52YXJpYW50ID09PSAndXJnZW50JyB9XCJcbiAgICAgICAgW3BhcmVudF09XCJ0aGlzXCJcbiAgICAgICAgW291dHB1dEV2ZW50c109XCJ7IG9uQ2xvc2U6IG9uQWxlcnRDbG9zZSB9XCJcbiAgICAgID48L2NvbXBvbmVudC1tYXBwZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -7,10 +7,10 @@ export class BannerComponent {
|
|
|
7
7
|
getUrl() {
|
|
8
8
|
return `url(${this.backgroundImage})`;
|
|
9
9
|
}
|
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
11
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BannerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: BannerComponent, isStandalone: true, selector: "app-banner", inputs: { pConn$: "pConn$", formGroup$: "formGroup$", arChildren$: "arChildren$", title: "title", message: "message", backgroundImage: "backgroundImage", layout$: "layout$" }, ngImport: i0, template: "<div style=\"margin-bottom: '2rem'\">\n <div class=\"background-image-style\" [ngStyle]=\"{ 'background-image': getUrl() }\">\n <div class=\"background-style content\">\n <div>\n <h1 class=\"title\">{{ title }}</h1>\n <p class=\"message\">{{ message }}</p>\n </div>\n </div>\n </div>\n <div\n [ngClass]=\"{\n 'psdk-grid-filter-1': this.layout$ === 'two-column',\n 'psdk-grid-filter-wide-narrow': this.layout$ === 'wide-narrow',\n 'psdk-grid-filter-narrow-wide': this.layout$ === 'narrow-wide'\n }\"\n >\n <component-mapper\n [name]=\"arChildren$[0].getPConnect().getComponentName()\"\n [props]=\"{ pConn$: arChildren$[0].getPConnect(), formGroup$ }\"\n errorMsg=\"Region wants component not yet available: {{ arChildren$[0].getPConnect().getComponentName() }}\"\n ></component-mapper>\n <component-mapper\n [name]=\"arChildren$[1].getPConnect().getComponentName()\"\n [props]=\"{ pConn$: arChildren$[1].getPConnect(), formGroup$ }\"\n errorMsg=\"Region wants component not yet available: {{ arChildren$[1].getPConnect().getComponentName() }}\"\n ></component-mapper>\n </div>\n</div>\n", styles: [".psdk-grid-filter-1{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start}.psdk-grid-filter-wide-narrow{display:grid;grid-template-columns:7fr 3fr;column-gap:1rem;row-gap:1rem;align-items:start;padding:1rem}.psdk-grid-filter-narrow-wide{display:grid;grid-template-columns:3fr 7fr;column-gap:1rem;row-gap:1rem;align-items:start}.background-image-style{margin-left:-16px;margin-right:-16px;height:19rem;background-size:cover;background-position:center center}.background-style{background-color:transparent;color:var(--app-inverse-form-color);width:100%;height:100%;text-align:center}.content{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem}.title{margin:0rem;font-size:1.728rem;font-weight:600}.message{margin:0;font-size:1rem;font-weight:400}.banner-layout{padding:1rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i1.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgStyle), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
12
12
|
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BannerComponent, decorators: [{
|
|
14
14
|
type: Component,
|
|
15
15
|
args: [{ selector: 'app-banner', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div style=\"margin-bottom: '2rem'\">\n <div class=\"background-image-style\" [ngStyle]=\"{ 'background-image': getUrl() }\">\n <div class=\"background-style content\">\n <div>\n <h1 class=\"title\">{{ title }}</h1>\n <p class=\"message\">{{ message }}</p>\n </div>\n </div>\n </div>\n <div\n [ngClass]=\"{\n 'psdk-grid-filter-1': this.layout$ === 'two-column',\n 'psdk-grid-filter-wide-narrow': this.layout$ === 'wide-narrow',\n 'psdk-grid-filter-narrow-wide': this.layout$ === 'narrow-wide'\n }\"\n >\n <component-mapper\n [name]=\"arChildren$[0].getPConnect().getComponentName()\"\n [props]=\"{ pConn$: arChildren$[0].getPConnect(), formGroup$ }\"\n errorMsg=\"Region wants component not yet available: {{ arChildren$[0].getPConnect().getComponentName() }}\"\n ></component-mapper>\n <component-mapper\n [name]=\"arChildren$[1].getPConnect().getComponentName()\"\n [props]=\"{ pConn$: arChildren$[1].getPConnect(), formGroup$ }\"\n errorMsg=\"Region wants component not yet available: {{ arChildren$[1].getPConnect().getComponentName() }}\"\n ></component-mapper>\n </div>\n</div>\n", styles: [".psdk-grid-filter-1{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start}.psdk-grid-filter-wide-narrow{display:grid;grid-template-columns:7fr 3fr;column-gap:1rem;row-gap:1rem;align-items:start;padding:1rem}.psdk-grid-filter-narrow-wide{display:grid;grid-template-columns:3fr 7fr;column-gap:1rem;row-gap:1rem;align-items:start}.background-image-style{margin-left:-16px;margin-right:-16px;height:19rem;background-size:cover;background-position:center center}.background-style{background-color:transparent;color:var(--app-inverse-form-color);width:100%;height:100%;text-align:center}.content{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem}.title{margin:0rem;font-size:1.728rem;font-weight:600}.message{margin:0;font-size:1rem;font-weight:400}.banner-layout{padding:1rem}\n"] }]
|
|
16
16
|
}], propDecorators: { pConn$: [{
|
|
@@ -28,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28
28
|
}], layout$: [{
|
|
29
29
|
type: Input
|
|
30
30
|
}] } });
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9kZXNpZ25TeXN0ZW1FeHRlbnNpb24vYmFubmVyL2Jhbm5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL2Jhbm5lci9iYW5uZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7O0FBU3hHLE1BQU0sT0FBTyxlQUFlO0lBVTFCLE1BQU07UUFDSixPQUFPLE9BQU8sSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDO0lBQ3hDLENBQUM7K0dBWlUsZUFBZTttR0FBZixlQUFlLHNQQ1o1QixpcUNBNEJBLDI2QkRsQlksWUFBWSxpUkFBbUIsd0JBQXdCOzs0RkFFdEQsZUFBZTtrQkFQM0IsU0FBUzsrQkFDRSxZQUFZLGNBR1YsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDOzhCQUcxRCxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50TWFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vX2JyaWRnZS9jb21wb25lbnQtbWFwcGVyL2NvbXBvbmVudC1tYXBwZXIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWJhbm5lcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9iYW5uZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9iYW5uZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgZm9yd2FyZFJlZigoKSA9PiBDb21wb25lbnRNYXBwZXJDb21wb25lbnQpXVxufSlcbmV4cG9ydCBjbGFzcyBCYW5uZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBwQ29ubiQ6IHR5cGVvZiBQQ29ubmVjdDtcbiAgQElucHV0KCkgZm9ybUdyb3VwJDogRm9ybUdyb3VwO1xuXG4gIEBJbnB1dCgpIGFyQ2hpbGRyZW4kOiBhbnlbXTtcbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgbWVzc2FnZTogYW55O1xuICBASW5wdXQoKSBiYWNrZ3JvdW5kSW1hZ2U6IHN0cmluZztcbiAgQElucHV0KCkgbGF5b3V0JDogc3RyaW5nO1xuXG4gIGdldFVybCgpIHtcbiAgICByZXR1cm4gYHVybCgke3RoaXMuYmFja2dyb3VuZEltYWdlfSlgO1xuICB9XG59XG4iLCI8ZGl2IHN0eWxlPVwibWFyZ2luLWJvdHRvbTogJzJyZW0nXCI+XG4gIDxkaXYgY2xhc3M9XCJiYWNrZ3JvdW5kLWltYWdlLXN0eWxlXCIgW25nU3R5bGVdPVwieyAnYmFja2dyb3VuZC1pbWFnZSc6IGdldFVybCgpIH1cIj5cbiAgICA8ZGl2IGNsYXNzPVwiYmFja2dyb3VuZC1zdHlsZSBjb250ZW50XCI+XG4gICAgICA8ZGl2PlxuICAgICAgICA8aDEgY2xhc3M9XCJ0aXRsZVwiPnt7IHRpdGxlIH19PC9oMT5cbiAgICAgICAgPHAgY2xhc3M9XCJtZXNzYWdlXCI+e3sgbWVzc2FnZSB9fTwvcD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICdwc2RrLWdyaWQtZmlsdGVyLTEnOiB0aGlzLmxheW91dCQgPT09ICd0d28tY29sdW1uJyxcbiAgICAgICdwc2RrLWdyaWQtZmlsdGVyLXdpZGUtbmFycm93JzogdGhpcy5sYXlvdXQkID09PSAnd2lkZS1uYXJyb3cnLFxuICAgICAgJ3BzZGstZ3JpZC1maWx0ZXItbmFycm93LXdpZGUnOiB0aGlzLmxheW91dCQgPT09ICduYXJyb3ctd2lkZSdcbiAgICB9XCJcbiAgPlxuICAgIDxjb21wb25lbnQtbWFwcGVyXG4gICAgICBbbmFtZV09XCJhckNoaWxkcmVuJFswXS5nZXRQQ29ubmVjdCgpLmdldENvbXBvbmVudE5hbWUoKVwiXG4gICAgICBbcHJvcHNdPVwieyBwQ29ubiQ6IGFyQ2hpbGRyZW4kWzBdLmdldFBDb25uZWN0KCksIGZvcm1Hcm91cCQgfVwiXG4gICAgICBlcnJvck1zZz1cIlJlZ2lvbiB3YW50cyBjb21wb25lbnQgbm90IHlldCBhdmFpbGFibGU6IHt7IGFyQ2hpbGRyZW4kWzBdLmdldFBDb25uZWN0KCkuZ2V0Q29tcG9uZW50TmFtZSgpIH19XCJcbiAgICA+PC9jb21wb25lbnQtbWFwcGVyPlxuICAgIDxjb21wb25lbnQtbWFwcGVyXG4gICAgICBbbmFtZV09XCJhckNoaWxkcmVuJFsxXS5nZXRQQ29ubmVjdCgpLmdldENvbXBvbmVudE5hbWUoKVwiXG4gICAgICBbcHJvcHNdPVwieyBwQ29ubiQ6IGFyQ2hpbGRyZW4kWzFdLmdldFBDb25uZWN0KCksIGZvcm1Hcm91cCQgfVwiXG4gICAgICBlcnJvck1zZz1cIlJlZ2lvbiB3YW50cyBjb21wb25lbnQgbm90IHlldCBhdmFpbGFibGU6IHt7IGFyQ2hpbGRyZW4kWzFdLmdldFBDb25uZWN0KCkuZ2V0Q29tcG9uZW50TmFtZSgpIH19XCJcbiAgICA+PC9jb21wb25lbnQtbWFwcGVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -37,15 +37,15 @@ export class CaseCreateStageComponent {
|
|
|
37
37
|
updateSelf() {
|
|
38
38
|
this.arChildren$ = this.pConn$.getChildren();
|
|
39
39
|
}
|
|
40
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
41
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
40
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CaseCreateStageComponent, deps: [{ token: i1.AngularPConnectService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CaseCreateStageComponent, isStandalone: true, selector: "app-case-create-stage", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngFor=\"let kid of arChildren$\">\n <div *ngIf=\"kid.getPConnect().getConfigProps().template != ''\">\n <component-mapper\n [name]=\"kid.getPConnect().getConfigProps().template\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"CreateCaseStage Missing: {{ kid.getPConnect().getConfigProps().template }}\"\n ></component-mapper>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i2.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i2.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
42
42
|
}
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CaseCreateStageComponent, decorators: [{
|
|
44
44
|
type: Component,
|
|
45
45
|
args: [{ selector: 'app-case-create-stage', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngFor=\"let kid of arChildren$\">\n <div *ngIf=\"kid.getPConnect().getConfigProps().template != ''\">\n <component-mapper\n [name]=\"kid.getPConnect().getConfigProps().template\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"CreateCaseStage Missing: {{ kid.getPConnect().getConfigProps().template }}\"\n ></component-mapper>\n </div>\n</div>\n" }]
|
|
46
|
-
}], ctorParameters:
|
|
46
|
+
}], ctorParameters: () => [{ type: i1.AngularPConnectService }], propDecorators: { pConn$: [{
|
|
47
47
|
type: Input
|
|
48
48
|
}], formGroup$: [{
|
|
49
49
|
type: Input
|
|
50
50
|
}] } });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1jcmVhdGUtc3RhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9jYXNlLWNyZWF0ZS1zdGFnZS9jYXNlLWNyZWF0ZS1zdGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL2Nhc2UtY3JlYXRlLXN0YWdlL2Nhc2UtY3JlYXRlLXN0YWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHL0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOERBQThELENBQUM7Ozs7QUFTeEcsTUFBTSxPQUFPLHdCQUF3QjtJQVNuQyxZQUFvQixlQUF1QztRQUF2QyxvQkFBZSxHQUFmLGVBQWUsQ0FBd0I7UUFIM0QsdUNBQXVDO1FBQ3ZDLHdCQUFtQixHQUF3QixFQUFFLENBQUM7SUFFZ0IsQ0FBQztJQUUvRCxRQUFRO1FBQ04sOEZBQThGO1FBQzlGLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLDZCQUE2QixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFeEcscUJBQXFCO1FBQ3JCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzNDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQyxDQUFDO0lBQ0gsQ0FBQztJQUVELG1EQUFtRDtJQUNuRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxjQUFjO1FBQ1osZ0VBQWdFO1FBQ2hFLDRCQUE0QjtRQUM1QixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXJFLHdEQUF3RDtRQUN4RCxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0gsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFXLENBQUM7SUFDeEQsQ0FBQzsrR0EzQ1Usd0JBQXdCO21HQUF4Qix3QkFBd0IseUlDYnJDLGtiQVlBLDZFRERZLFlBQVksK1RBQW1CLHdCQUF3Qjs7NEZBRXRELHdCQUF3QjtrQkFQcEMsU0FBUzsrQkFDRSx1QkFBdUIsY0FHckIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDOzJGQUcxRCxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgZm9yd2FyZFJlZiwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQW5ndWxhclBDb25uZWN0RGF0YSwgQW5ndWxhclBDb25uZWN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19icmlkZ2UvYW5ndWxhci1wY29ubmVjdCc7XG5pbXBvcnQgeyBDb21wb25lbnRNYXBwZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2NvbXBvbmVudC1tYXBwZXIvY29tcG9uZW50LW1hcHBlci5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY2FzZS1jcmVhdGUtc3RhZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FzZS1jcmVhdGUtc3RhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXNlLWNyZWF0ZS1zdGFnZS5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBmb3J3YXJkUmVmKCgpID0+IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCldXG59KVxuZXhwb3J0IGNsYXNzIENhc2VDcmVhdGVTdGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgcENvbm4kOiB0eXBlb2YgUENvbm5lY3Q7XG4gIEBJbnB1dCgpIGZvcm1Hcm91cCQ6IEZvcm1Hcm91cDtcblxuICBhckNoaWxkcmVuJDogYW55W107XG5cbiAgLy8gRm9yIGludGVyYWN0aW9uIHdpdGggQW5ndWxhclBDb25uZWN0XG4gIGFuZ3VsYXJQQ29ubmVjdERhdGE6IEFuZ3VsYXJQQ29ubmVjdERhdGEgPSB7fTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFuZ3VsYXJQQ29ubmVjdDogQW5ndWxhclBDb25uZWN0U2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBGaXJzdCB0aGluZyBpbiBpbml0aWFsaXphdGlvbiBpcyByZWdpc3RlcmluZyBhbmQgc3Vic2NyaWJpbmcgdG8gdGhlIEFuZ3VsYXJQQ29ubmVjdCBzZXJ2aWNlXG4gICAgdGhpcy5hbmd1bGFyUENvbm5lY3REYXRhID0gdGhpcy5hbmd1bGFyUENvbm5lY3QucmVnaXN0ZXJBbmRTdWJzY3JpYmVDb21wb25lbnQodGhpcywgdGhpcy5vblN0YXRlQ2hhbmdlKTtcblxuICAgIC8vIHRoaXMudXBkYXRlU2VsZigpO1xuICAgIHRoaXMuY2hlY2tBbmRVcGRhdGUoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLmFuZ3VsYXJQQ29ubmVjdERhdGEudW5zdWJzY3JpYmVGbikge1xuICAgICAgdGhpcy5hbmd1bGFyUENvbm5lY3REYXRhLnVuc3Vic2NyaWJlRm4oKTtcbiAgICB9XG4gIH1cblxuICAvLyBDYWxsYmFjayBwYXNzZWQgd2hlbiBzdWJzY3JpYmluZyB0byBzdG9yZSBjaGFuZ2VcbiAgb25TdGF0ZUNoYW5nZSgpIHtcbiAgICB0aGlzLmNoZWNrQW5kVXBkYXRlKCk7XG4gIH1cblxuICBjaGVja0FuZFVwZGF0ZSgpIHtcbiAgICAvLyBTaG91bGQgYWx3YXlzIGNoZWNrIHRoZSBicmlkZ2UgdG8gc2VlIGlmIHRoZSBjb21wb25lbnQgc2hvdWxkXG4gICAgLy8gdXBkYXRlIGl0c2VsZiAocmUtcmVuZGVyKVxuICAgIGNvbnN0IGJVcGRhdGVTZWxmID0gdGhpcy5hbmd1bGFyUENvbm5lY3Quc2hvdWxkQ29tcG9uZW50VXBkYXRlKHRoaXMpO1xuXG4gICAgLy8gT05MWSBjYWxsIHVwZGF0ZVNlbGYgd2hlbiB0aGUgY29tcG9uZW50IHNob3VsZCB1cGRhdGVcbiAgICBpZiAoYlVwZGF0ZVNlbGYpIHtcbiAgICAgIHRoaXMudXBkYXRlU2VsZigpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVNlbGYoKSB7XG4gICAgdGhpcy5hckNoaWxkcmVuJCA9IHRoaXMucENvbm4kLmdldENoaWxkcmVuKCkgYXMgYW55W107XG4gIH1cbn1cbiIsIjxkaXYgKm5nRm9yPVwibGV0IGtpZCBvZiBhckNoaWxkcmVuJFwiPlxuICA8ZGl2ICpuZ0lmPVwia2lkLmdldFBDb25uZWN0KCkuZ2V0Q29uZmlnUHJvcHMoKS50ZW1wbGF0ZSAhPSAnJ1wiPlxuICAgIDxjb21wb25lbnQtbWFwcGVyXG4gICAgICBbbmFtZV09XCJraWQuZ2V0UENvbm5lY3QoKS5nZXRDb25maWdQcm9wcygpLnRlbXBsYXRlXCJcbiAgICAgIFtwcm9wc109XCJ7XG4gICAgICAgIHBDb25uJDoga2lkLmdldFBDb25uZWN0KCksXG4gICAgICAgIGZvcm1Hcm91cCQ6IGZvcm1Hcm91cCRcbiAgICAgIH1cIlxuICAgICAgZXJyb3JNc2c9XCJDcmVhdGVDYXNlU3RhZ2UgTWlzc2luZzoge3sga2lkLmdldFBDb25uZWN0KCkuZ2V0Q29uZmlnUHJvcHMoKS50ZW1wbGF0ZSB9fVwiXG4gICAgPjwvY29tcG9uZW50LW1hcHBlcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -13,10 +13,10 @@ export class FieldGroupComponent {
|
|
|
13
13
|
headerClickHandler() {
|
|
14
14
|
this.collapsed = !this.collapsed;
|
|
15
15
|
}
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
17
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FieldGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FieldGroupComponent, isStandalone: true, selector: "app-field-group", inputs: { name: "name", collapsible: "collapsible", instructions: "instructions", childrenTemplate: "childrenTemplate" }, ngImport: i0, template: "<div class=\"field-group-container\">\n <div *ngIf=\"name\" class=\"field-group-heading\">\n <span *ngIf=\"collapsible; else no_collapse\" id=\"field-group-header\" class=\"field-group-header\" (click)=\"headerClickHandler()\">\n <mat-icon *ngIf=\"collapsed; else down_arrow\" aria-hidden=\"false\" aria-label=\"Arrow Right\" fontIcon=\"keyboard_arrow_right\"></mat-icon>\n <ng-template #down_arrow>\n <mat-icon aria-hidden=\"false\" aria-label=\"Arrow Down\" fontIcon=\"keyboard_arrow_down\"></mat-icon>\n </ng-template>\n <b>{{ name }}</b>\n </span>\n <ng-template #no_collapse>\n <span>{{ name }}</span>\n </ng-template>\n </div>\n\n <div *ngIf=\"instructions && instructions !== 'none'\" class=\"field-group-instructions\">\n <div key=\"instructions\" id=\"instruction-text\" [innerHTML]=\"instructions\"></div>\n </div>\n <div *ngIf=\"!collapsed\" class=\"field-group-content\">\n <ng-container [ngTemplateOutlet]=\"childrenTemplate\"></ng-container>\n </div>\n</div>\n", styles: [".field-group-container .field-group-heading{padding-top:8px;padding-bottom:8px;font-weight:700}.field-group-container .field-group-heading .field-group-header{gap:5px;display:flex;align-items:center;cursor:pointer}.field-group-container .field-group-instructions{padding:5px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: MatGridListModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
|
|
18
18
|
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FieldGroupComponent, decorators: [{
|
|
20
20
|
type: Component,
|
|
21
21
|
args: [{ selector: 'app-field-group', standalone: true, imports: [CommonModule, MatGridListModule, MatIconModule], template: "<div class=\"field-group-container\">\n <div *ngIf=\"name\" class=\"field-group-heading\">\n <span *ngIf=\"collapsible; else no_collapse\" id=\"field-group-header\" class=\"field-group-header\" (click)=\"headerClickHandler()\">\n <mat-icon *ngIf=\"collapsed; else down_arrow\" aria-hidden=\"false\" aria-label=\"Arrow Right\" fontIcon=\"keyboard_arrow_right\"></mat-icon>\n <ng-template #down_arrow>\n <mat-icon aria-hidden=\"false\" aria-label=\"Arrow Down\" fontIcon=\"keyboard_arrow_down\"></mat-icon>\n </ng-template>\n <b>{{ name }}</b>\n </span>\n <ng-template #no_collapse>\n <span>{{ name }}</span>\n </ng-template>\n </div>\n\n <div *ngIf=\"instructions && instructions !== 'none'\" class=\"field-group-instructions\">\n <div key=\"instructions\" id=\"instruction-text\" [innerHTML]=\"instructions\"></div>\n </div>\n <div *ngIf=\"!collapsed\" class=\"field-group-content\">\n <ng-container [ngTemplateOutlet]=\"childrenTemplate\"></ng-container>\n </div>\n</div>\n", styles: [".field-group-container .field-group-heading{padding-top:8px;padding-bottom:8px;font-weight:700}.field-group-container .field-group-heading .field-group-header{gap:5px;display:flex;align-items:center;cursor:pointer}.field-group-container .field-group-instructions{padding:5px 0}\n"] }]
|
|
22
22
|
}], propDecorators: { name: [{
|