@pega/angular-sdk-components 24.1.10 → 24.2.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/_bridge/angular-pconnect.mjs +3 -3
- package/esm2022/lib/_bridge/component-mapper/component-mapper.component.mjs +6 -13
- package/esm2022/lib/_components/designSystemExtension/alert/alert.component.mjs +3 -3
- package/esm2022/lib/_components/designSystemExtension/alert-banner/alert-banner.component.mjs +4 -4
- package/esm2022/lib/_components/designSystemExtension/banner/banner.component.mjs +3 -3
- package/esm2022/lib/_components/designSystemExtension/case-create-stage/case-create-stage.component.mjs +4 -4
- 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 -6
- package/esm2022/lib/_components/designSystemExtension/material-details/material-details.component.mjs +3 -3
- package/esm2022/lib/_components/designSystemExtension/material-details-fields/material-details-fields.component.mjs +13 -6
- package/esm2022/lib/_components/designSystemExtension/material-summary-item/material-summary-item.component.mjs +3 -3
- package/esm2022/lib/_components/designSystemExtension/material-summary-list/material-summary-list.component.mjs +3 -3
- package/esm2022/lib/_components/designSystemExtension/material-utility/material-utility.component.mjs +3 -3
- package/esm2022/lib/_components/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.mjs +4 -4
- package/esm2022/lib/_components/designSystemExtension/operator/operator.component.mjs +9 -7
- package/esm2022/lib/_components/designSystemExtension/pulse/pulse.component.mjs +9 -9
- package/esm2022/lib/_components/designSystemExtension/rich-text-editor/rich-text-editor.component.mjs +3 -3
- 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 +23 -13
- package/esm2022/lib/_components/field/cancel-alert/cancel-alert.component.mjs +3 -3
- package/esm2022/lib/_components/field/check-box/check-box.component.mjs +12 -10
- package/esm2022/lib/_components/field/currency/currency.component.mjs +39 -21
- package/esm2022/lib/_components/field/date/date.component.mjs +19 -39
- package/esm2022/lib/_components/field/date-time/date-time.component.mjs +32 -17
- package/esm2022/lib/_components/field/decimal/decimal.component.mjs +43 -23
- package/esm2022/lib/_components/field/dropdown/dropdown.component.mjs +133 -25
- package/esm2022/lib/_components/field/email/email.component.mjs +22 -7
- package/esm2022/lib/_components/field/group/group.component.mjs +6 -6
- package/esm2022/lib/_components/field/integer/integer.component.mjs +20 -7
- package/esm2022/lib/_components/field/list-view-action-buttons/list-view-action-buttons.component.mjs +8 -7
- package/esm2022/lib/_components/field/multiselect/multiselect.component.mjs +13 -6
- package/esm2022/lib/_components/field/percentage/percentage.component.mjs +39 -23
- package/esm2022/lib/_components/field/phone/phone.component.mjs +17 -29
- package/esm2022/lib/_components/field/radio-buttons/radio-buttons.component.mjs +10 -12
- package/esm2022/lib/_components/field/rich-text/rich-text.component.mjs +17 -11
- package/esm2022/lib/_components/field/scalar-list/scalar-list.component.mjs +7 -8
- package/esm2022/lib/_components/field/semantic-link/semantic-link.component.mjs +3 -3
- package/esm2022/lib/_components/field/text/text.component.mjs +12 -8
- package/esm2022/lib/_components/field/text-area/text-area.component.mjs +21 -9
- package/esm2022/lib/_components/field/text-content/text-content.component.mjs +3 -3
- package/esm2022/lib/_components/field/text-input/text-input.component.mjs +20 -7
- package/esm2022/lib/_components/field/time/time.component.mjs +31 -10
- package/esm2022/lib/_components/field/url/url.component.mjs +20 -7
- package/esm2022/lib/_components/field/user-reference/user-reference.component.mjs +102 -23
- package/esm2022/lib/_components/infra/Containers/flow-container/flow-container.component.mjs +18 -44
- package/esm2022/lib/_components/infra/Containers/flow-container/helpers.mjs +3 -3
- 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 -12
- package/esm2022/lib/_components/infra/Containers/preview-view-container/preview-view-container.component.mjs +4 -4
- package/esm2022/lib/_components/infra/Containers/view-container/helper.mjs +22 -0
- package/esm2022/lib/_components/infra/Containers/view-container/view-container.component.mjs +9 -16
- package/esm2022/lib/_components/infra/action-buttons/action-buttons.component.mjs +5 -5
- package/esm2022/lib/_components/infra/assignment/assignment.component.mjs +73 -49
- package/esm2022/lib/_components/infra/assignment-card/assignment-card.component.mjs +5 -5
- package/esm2022/lib/_components/infra/dashboard-filter/dashboard-filter.component.mjs +3 -3
- package/esm2022/lib/_components/infra/defer-load/defer-load.component.mjs +10 -8
- package/esm2022/lib/_components/infra/error-boundary/error-boundary.component.mjs +3 -3
- package/esm2022/lib/_components/infra/multi-step/multi-step.component.mjs +3 -3
- package/esm2022/lib/_components/infra/navbar/navbar.component.mjs +5 -5
- package/esm2022/lib/_components/infra/reference/reference.component.mjs +74 -81
- package/esm2022/lib/_components/infra/region/region.component.mjs +3 -3
- package/esm2022/lib/_components/infra/root-container/root-container.component.mjs +25 -30
- package/esm2022/lib/_components/infra/stages/stages.component.mjs +5 -5
- package/esm2022/lib/_components/infra/view/view.component.mjs +22 -7
- package/esm2022/lib/_components/template/app-shell/app-shell.component.mjs +20 -4
- package/esm2022/lib/_components/template/banner-page/banner-page.component.mjs +3 -3
- package/esm2022/lib/_components/template/base/details-template-base.mjs +56 -0
- package/esm2022/lib/_components/template/base/form-template-base.mjs +16 -0
- package/esm2022/lib/_components/template/case-summary/case-summary.component.mjs +4 -4
- package/esm2022/lib/_components/template/case-view/case-view.component.mjs +11 -16
- package/esm2022/lib/_components/template/confirmation/confirmation.component.mjs +6 -6
- package/esm2022/lib/_components/template/data-reference/data-reference.component.mjs +13 -8
- package/esm2022/lib/_components/template/default-form/default-form.component.mjs +37 -25
- package/esm2022/lib/_components/template/details/details.component.mjs +12 -39
- package/esm2022/lib/_components/template/details-narrow-wide/details-narrow-wide.component.mjs +11 -38
- package/esm2022/lib/_components/template/details-one-column/details-one-column.component.mjs +12 -41
- package/esm2022/lib/_components/template/details-sub-tabs/details-sub-tabs.component.mjs +13 -40
- package/esm2022/lib/_components/template/details-three-column/details-three-column.component.mjs +12 -41
- package/esm2022/lib/_components/template/details-two-column/details-two-column.component.mjs +13 -42
- package/esm2022/lib/_components/template/details-wide-narrow/details-wide-narrow.component.mjs +12 -41
- package/esm2022/lib/_components/template/dynamic-tabs/dynamic-tabs.component.mjs +8 -7
- package/esm2022/lib/_components/template/field-group-list/field-group-list.component.mjs +3 -3
- package/esm2022/lib/_components/template/field-group-template/field-group-template.component.mjs +49 -42
- package/esm2022/lib/_components/template/field-value-list/field-value-list.component.mjs +5 -5
- package/esm2022/lib/_components/template/inline-dashboard/inline-dashboard.component.mjs +3 -3
- 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 +3 -3
- package/esm2022/lib/_components/template/list-view/list-view.component.mjs +24 -9
- package/esm2022/lib/_components/template/list-view/listViewHelpers.mjs +3 -3
- package/esm2022/lib/_components/template/list-view/utils.mjs +1 -1
- package/esm2022/lib/_components/template/multi-reference-readonly/multi-reference-readonly.component.mjs +3 -3
- 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 +6 -5
- package/esm2022/lib/_components/template/one-column-page/one-column-page.component.mjs +3 -3
- package/esm2022/lib/_components/template/one-column-tab/one-column-tab.component.mjs +4 -4
- package/esm2022/lib/_components/template/page/page.component.mjs +4 -4
- package/esm2022/lib/_components/template/promoted-filters/promoted-filters.component.mjs +4 -4
- package/esm2022/lib/_components/template/repeating-structures/repeating-structures.component.mjs +4 -4
- package/esm2022/lib/_components/template/simple-table/simple-table.component.mjs +3 -3
- package/esm2022/lib/_components/template/simple-table-manual/helpers.mjs +10 -9
- package/esm2022/lib/_components/template/simple-table-manual/simple-table-manual.component.mjs +61 -29
- 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 +3 -3
- package/esm2022/lib/_components/template/sub-tabs/sub-tabs.component.mjs +4 -4
- package/esm2022/lib/_components/template/three-column/three-column.component.mjs +6 -5
- package/esm2022/lib/_components/template/three-column-page/three-column-page.component.mjs +3 -3
- package/esm2022/lib/_components/template/two-column/two-column.component.mjs +6 -5
- package/esm2022/lib/_components/template/two-column-page/two-column-page.component.mjs +3 -3
- package/esm2022/lib/_components/template/two-column-tab/two-column-tab.component.mjs +4 -4
- package/esm2022/lib/_components/template/utils.mjs +17 -1
- package/esm2022/lib/_components/template/wide-narrow-form/wide-narrow-form.component.mjs +6 -5
- package/esm2022/lib/_components/template/wide-narrow-page/wide-narrow-page.component.mjs +4 -4
- 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 +3 -3
- package/esm2022/lib/_components/widget/attachment/attachment.component.mjs +6 -8
- package/esm2022/lib/_components/widget/case-history/case-history.component.mjs +3 -3
- package/esm2022/lib/_components/widget/feed-container/feed-container.component.mjs +5 -5
- package/esm2022/lib/_components/widget/file-utility/file-utility.component.mjs +4 -4
- package/esm2022/lib/_components/widget/list-utility/list-utility.component.mjs +3 -3
- package/esm2022/lib/_components/widget/quick-create/quick-create.component.mjs +3 -3
- package/esm2022/lib/_components/widget/todo/todo.component.mjs +79 -63
- package/esm2022/lib/_components/widget/utility/utility.component.mjs +3 -3
- package/esm2022/lib/_directives/thousand-seperator.directive.mjs +4 -4
- package/esm2022/lib/_helpers/createstage-utils.mjs +15 -0
- package/esm2022/lib/_helpers/field-group-utils.mjs +3 -3
- package/esm2022/lib/_helpers/filter-utils.mjs +1 -2
- package/esm2022/lib/_helpers/formatters/boolean.mjs +2 -2
- package/esm2022/lib/_helpers/formatters/common.mjs +3 -2
- package/esm2022/lib/_helpers/formatters/currency.mjs +2 -2
- package/esm2022/lib/_helpers/formatters/date.mjs +5 -5
- package/esm2022/lib/_helpers/formatters/format-utils.mjs +10 -2
- package/esm2022/lib/_helpers/formatters/index.mjs +30 -16
- package/esm2022/lib/_helpers/template-utils.mjs +3 -3
- package/esm2022/lib/_helpers/utils.mjs +44 -18
- package/esm2022/lib/_messages/error-messages.service.mjs +4 -4
- package/esm2022/lib/_messages/progress-spinner.service.mjs +3 -3
- package/esm2022/lib/_messages/update-worklist.service.mjs +3 -3
- package/esm2022/lib/_services/banner.service.mjs +35 -0
- package/esm2022/lib/_services/case.service.mjs +3 -3
- package/esm2022/lib/_services/datapage.service.mjs +3 -3
- package/esm2022/lib/_services/endpoints.mjs +1 -2
- package/esm2022/lib/_services/server-config.service.mjs +3 -3
- package/esm2022/public-api.mjs +16 -12
- package/fesm2022/pega-angular-sdk-components.mjs +1988 -1666
- package/fesm2022/pega-angular-sdk-components.mjs.map +1 -1
- package/lib/_components/designSystemExtension/banner/banner.component.d.ts +0 -1
- package/lib/_components/designSystemExtension/case-create-stage/case-create-stage.component.d.ts +0 -1
- package/lib/_components/designSystemExtension/material-case-summary/material-case-summary.component.d.ts +1 -1
- package/lib/_components/designSystemExtension/material-details-fields/material-details-fields.component.d.ts +2 -1
- package/lib/_components/designSystemExtension/operator/operator.component.d.ts +2 -3
- package/lib/_components/designSystemExtension/pulse/pulse.component.d.ts +2 -3
- package/lib/_components/field/auto-complete/auto-complete.component.d.ts +8 -3
- package/lib/_components/field/cancel-alert/cancel-alert.component.d.ts +0 -1
- package/lib/_components/field/check-box/check-box.component.d.ts +2 -3
- package/lib/_components/field/currency/currency.component.d.ts +6 -4
- package/lib/_components/field/date/date.component.d.ts +17 -7
- package/lib/_components/field/date-time/date-time.component.d.ts +10 -3
- package/lib/_components/field/decimal/decimal.component.d.ts +4 -4
- package/lib/_components/field/dropdown/dropdown.component.d.ts +14 -3
- package/lib/_components/field/email/email.component.d.ts +2 -1
- package/lib/_components/field/group/group.component.d.ts +0 -1
- package/lib/_components/field/integer/integer.component.d.ts +2 -1
- package/lib/_components/field/list-view-action-buttons/list-view-action-buttons.component.d.ts +1 -2
- package/lib/_components/field/multiselect/multiselect.component.d.ts +3 -3
- package/lib/_components/field/percentage/percentage.component.d.ts +6 -3
- package/lib/_components/field/phone/phone.component.d.ts +3 -8
- package/lib/_components/field/radio-buttons/radio-buttons.component.d.ts +2 -2
- package/lib/_components/field/rich-text/rich-text.component.d.ts +3 -2
- package/lib/_components/field/scalar-list/scalar-list.component.d.ts +0 -1
- package/lib/_components/field/semantic-link/semantic-link.component.d.ts +0 -1
- package/lib/_components/field/text/text.component.d.ts +3 -2
- package/lib/_components/field/text-area/text-area.component.d.ts +2 -1
- package/lib/_components/field/text-content/text-content.component.d.ts +0 -1
- package/lib/_components/field/text-input/text-input.component.d.ts +2 -1
- package/lib/_components/field/time/time.component.d.ts +3 -1
- package/lib/_components/field/url/url.component.d.ts +2 -1
- package/lib/_components/field/user-reference/user-reference.component.d.ts +7 -1
- package/lib/_components/infra/Containers/flow-container/flow-container.component.d.ts +0 -2
- package/lib/_components/infra/Containers/flow-container/helpers.d.ts +1 -0
- package/lib/_components/infra/Containers/hybrid-view-container/hybrid-view-container.component.d.ts +0 -1
- package/lib/_components/infra/Containers/modal-view-container/modal-view-container.component.d.ts +1 -4
- package/lib/_components/infra/Containers/preview-view-container/preview-view-container.component.d.ts +0 -1
- package/lib/_components/infra/Containers/view-container/helper.d.ts +2 -0
- package/lib/_components/infra/Containers/view-container/view-container.component.d.ts +0 -1
- package/lib/_components/infra/action-buttons/action-buttons.component.d.ts +1 -1
- package/lib/_components/infra/assignment/assignment.component.d.ts +6 -4
- package/lib/_components/infra/assignment-card/assignment-card.component.d.ts +0 -1
- package/lib/_components/infra/dashboard-filter/dashboard-filter.component.d.ts +0 -1
- package/lib/_components/infra/defer-load/defer-load.component.d.ts +3 -3
- package/lib/_components/infra/error-boundary/error-boundary.component.d.ts +1 -1
- package/lib/_components/infra/multi-step/multi-step.component.d.ts +0 -1
- package/lib/_components/infra/navbar/navbar.component.d.ts +2 -3
- package/lib/_components/infra/reference/reference.component.d.ts +23 -3
- package/lib/_components/infra/region/region.component.d.ts +0 -1
- package/lib/_components/infra/root-container/root-container.component.d.ts +3 -2
- package/lib/_components/infra/stages/stages.component.d.ts +0 -1
- package/lib/_components/infra/view/view.component.d.ts +1 -1
- package/lib/_components/template/app-shell/app-shell.component.d.ts +0 -1
- package/lib/_components/template/banner-page/banner-page.component.d.ts +0 -1
- package/lib/_components/template/base/details-template-base.d.ts +21 -0
- package/lib/_components/template/base/form-template-base.d.ts +10 -0
- package/lib/_components/template/case-summary/case-summary.component.d.ts +0 -1
- package/lib/_components/template/case-view/case-view.component.d.ts +1 -3
- package/lib/_components/template/confirmation/confirmation.component.d.ts +0 -1
- package/lib/_components/template/data-reference/data-reference.component.d.ts +0 -1
- package/lib/_components/template/default-form/default-form.component.d.ts +8 -7
- package/lib/_components/template/details/details.component.d.ts +3 -12
- package/lib/_components/template/details-narrow-wide/details-narrow-wide.component.d.ts +3 -12
- package/lib/_components/template/details-one-column/details-one-column.component.d.ts +3 -14
- package/lib/_components/template/details-sub-tabs/details-sub-tabs.component.d.ts +3 -14
- package/lib/_components/template/details-three-column/details-three-column.component.d.ts +3 -14
- package/lib/_components/template/details-two-column/details-two-column.component.d.ts +3 -14
- package/lib/_components/template/details-wide-narrow/details-wide-narrow.component.d.ts +3 -14
- package/lib/_components/template/dynamic-tabs/dynamic-tabs.component.d.ts +1 -1
- package/lib/_components/template/field-group-template/field-group-template.component.d.ts +12 -9
- package/lib/_components/template/inline-dashboard/inline-dashboard.component.d.ts +0 -1
- package/lib/_components/template/inline-dashboard-page/inline-dashboard-page.component.d.ts +0 -1
- package/lib/_components/template/list-page/list-page.component.d.ts +0 -1
- package/lib/_components/template/list-view/list-view.component.d.ts +7 -3
- package/lib/_components/template/list-view/listViewHelpers.d.ts +1 -1
- package/lib/_components/template/multi-reference-readonly/multi-reference-readonly.component.d.ts +0 -1
- package/lib/_components/template/narrow-wide-form/narrow-wide-form.component.d.ts +0 -1
- package/lib/_components/template/one-column/one-column.component.d.ts +2 -2
- package/lib/_components/template/one-column-page/one-column-page.component.d.ts +0 -1
- package/lib/_components/template/one-column-tab/one-column-tab.component.d.ts +0 -1
- package/lib/_components/template/page/page.component.d.ts +0 -1
- package/lib/_components/template/promoted-filters/promoted-filters.component.d.ts +0 -1
- package/lib/_components/template/repeating-structures/repeating-structures.component.d.ts +0 -1
- package/lib/_components/template/simple-table/simple-table.component.d.ts +0 -1
- package/lib/_components/template/simple-table-manual/helpers.d.ts +4 -3
- package/lib/_components/template/simple-table-manual/simple-table-manual.component.d.ts +10 -3
- package/lib/_components/template/simple-table-select/simple-table-select.component.d.ts +0 -1
- package/lib/_components/template/single-reference-readonly/single-reference-readonly.component.d.ts +0 -1
- package/lib/_components/template/sub-tabs/sub-tabs.component.d.ts +0 -1
- package/lib/_components/template/three-column/three-column.component.d.ts +2 -2
- package/lib/_components/template/three-column-page/three-column-page.component.d.ts +0 -1
- package/lib/_components/template/two-column/two-column.component.d.ts +2 -2
- package/lib/_components/template/two-column-page/two-column-page.component.d.ts +0 -1
- package/lib/_components/template/two-column-tab/two-column-tab.component.d.ts +0 -1
- package/lib/_components/template/utils.d.ts +7 -0
- package/lib/_components/template/wide-narrow-form/wide-narrow-form.component.d.ts +2 -2
- package/lib/_components/template/wide-narrow-page/wide-narrow-page.component.d.ts +1 -2
- package/lib/_components/template/wss-nav-bar/wss-nav-bar.component.d.ts +3 -4
- package/lib/_components/widget/app-announcement/app-announcement.component.d.ts +0 -1
- package/lib/_components/widget/attachment/attachment.component.d.ts +3 -4
- package/lib/_components/widget/case-history/case-history.component.d.ts +0 -1
- package/lib/_components/widget/feed-container/feed-container.component.d.ts +2 -3
- package/lib/_components/widget/file-utility/file-utility.component.d.ts +1 -2
- package/lib/_components/widget/quick-create/quick-create.component.d.ts +0 -1
- package/lib/_components/widget/todo/todo.component.d.ts +10 -14
- package/lib/_components/widget/utility/utility.component.d.ts +0 -1
- package/lib/_helpers/common.d.ts +1 -1
- package/lib/_helpers/createstage-utils.d.ts +1 -0
- package/lib/_helpers/formatters/boolean.d.ts +1 -2
- package/lib/_helpers/formatters/common.d.ts +2 -2
- package/lib/_helpers/formatters/currency.d.ts +1 -2
- package/lib/_helpers/formatters/date.d.ts +1 -2
- package/lib/_helpers/formatters/index.d.ts +1 -2
- package/lib/_helpers/utils.d.ts +8 -0
- package/lib/_messages/error-messages.service.d.ts +1 -1
- package/lib/_services/banner.service.d.ts +8 -0
- package/lib/_services/endpoints.d.ts +0 -1
- package/lib/doc/KeyReleaseUpdates.md +23 -6
- package/package.json +3 -3
- package/public-api.d.ts +15 -11
- package/esm2022/lib/_messages/get-login-status.service.mjs +0 -26
- package/esm2022/lib/_messages/oauth-response.service.mjs +0 -30
- package/esm2022/lib/_messages/reset-pconnect.service.mjs +0 -31
- package/lib/_messages/get-login-status.service.d.ts +0 -10
- package/lib/_messages/oauth-response.service.d.ts +0 -14
- package/lib/_messages/reset-pconnect.service.d.ts +0 -15
|
@@ -8,38 +8,34 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
export class ReferenceComponent {
|
|
9
9
|
/* Used to toggle some class-wide logging */
|
|
10
10
|
static { this.bLogging = false; }
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
// when we moved to the static method implementation.
|
|
19
|
-
// STATIC method to create a normalized PConn (a fully realized View that the 'reference'
|
|
20
|
-
// component refers to) from the given pConn. Has to add in some stuff as in the constructor
|
|
11
|
+
/**
|
|
12
|
+
* Creates a normalized PConn from a reference component.
|
|
13
|
+
* Resolves the reference to its fully realized View with proper configuration.
|
|
14
|
+
*
|
|
15
|
+
* @param inPConn - The PConn object that represents a reference component
|
|
16
|
+
* @returns The dereferenced PConnect object, or null if reference can't be resolved
|
|
17
|
+
*/
|
|
21
18
|
static createFullReferencedViewFromRef(inPConn) {
|
|
22
|
-
//
|
|
19
|
+
// Validate that inPConn is a reference component
|
|
23
20
|
if (inPConn.getComponentName() !== 'reference') {
|
|
24
|
-
// debugger;
|
|
25
21
|
console.error(`Reference component: createFullReferencedViewFromRef inPConn is NOT a reference! ${inPConn.getComponentName()}`);
|
|
22
|
+
return null;
|
|
26
23
|
}
|
|
27
|
-
|
|
28
|
-
const referenceConfig = { ...inPConn.getComponentConfig() }
|
|
29
|
-
//
|
|
30
|
-
//
|
|
31
|
-
// (and also leaving the others in for now) so the referenced View can act on
|
|
32
|
-
// the visibility prop. (The following 3 lines were carried over from React SDK)
|
|
24
|
+
// Get reference configuration and make a copy
|
|
25
|
+
const referenceConfig = { ...inPConn.getComponentConfig() };
|
|
26
|
+
// Remove properties that should not be inherited by the referenced view
|
|
27
|
+
// (Maintained from React SDK implementation)
|
|
33
28
|
delete referenceConfig?.name;
|
|
34
|
-
|
|
35
|
-
|
|
29
|
+
delete referenceConfig?.type;
|
|
30
|
+
delete referenceConfig?.visibility;
|
|
31
|
+
// Get the metadata for the referenced view
|
|
36
32
|
const viewMetadata = inPConn.getReferencedView();
|
|
33
|
+
// Return null if view metadata is not found
|
|
37
34
|
if (!viewMetadata) {
|
|
38
35
|
console.log('View not found ', inPConn.getComponentConfig());
|
|
39
36
|
return null;
|
|
40
37
|
}
|
|
41
|
-
//
|
|
42
|
-
// const referencedComponentName = viewMetadata.type;
|
|
38
|
+
// Create the view object by merging metadata with reference config
|
|
43
39
|
const viewObject = {
|
|
44
40
|
...viewMetadata,
|
|
45
41
|
config: {
|
|
@@ -47,87 +43,84 @@ export class ReferenceComponent {
|
|
|
47
43
|
...referenceConfig
|
|
48
44
|
}
|
|
49
45
|
};
|
|
46
|
+
// Resolve configuration properties
|
|
47
|
+
const resolvedConfigProps = inPConn.resolveConfigProps(inPConn.getConfigProps());
|
|
48
|
+
const { visibility = true, context, readOnly = false, displayMode = '' } = resolvedConfigProps;
|
|
49
|
+
// Log debug information if logging is enabled
|
|
50
50
|
if (ReferenceComponent.bLogging) {
|
|
51
|
-
console.log(`Reference: about to call createComponent with pageReference: context: ${
|
|
51
|
+
console.log(`Reference: about to call createComponent with pageReference: context: ${inPConn.getContextName()}`);
|
|
52
52
|
}
|
|
53
|
+
// Create the component with the right context
|
|
53
54
|
const viewComponent = inPConn.createComponent(viewObject, null, null, {
|
|
54
|
-
pageReference:
|
|
55
|
+
pageReference: context && context.startsWith('@CLASS') ? '' : context
|
|
55
56
|
});
|
|
56
|
-
//
|
|
57
|
+
// Get the PConnect object from the created component
|
|
57
58
|
const newCompPConnect = viewComponent.getPConnect();
|
|
59
|
+
// Set inherited configuration on the new component
|
|
58
60
|
newCompPConnect.setInheritedConfig({
|
|
59
61
|
...referenceConfig,
|
|
60
|
-
readOnly
|
|
61
|
-
displayMode
|
|
62
|
+
readOnly,
|
|
63
|
+
displayMode
|
|
62
64
|
});
|
|
65
|
+
// Log debug information if logging is enabled
|
|
63
66
|
if (ReferenceComponent.bLogging) {
|
|
64
67
|
console.log(`Angular Reference component: createFullReferencedViewFromRef -> newCompPConnect configProps: ${JSON.stringify(newCompPConnect.getConfigProps())}`);
|
|
65
68
|
}
|
|
66
|
-
|
|
69
|
+
// Return the component if it should be visible, otherwise null
|
|
70
|
+
return visibility !== false ? newCompPConnect : null;
|
|
67
71
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
72
|
+
/**
|
|
73
|
+
* Normalizes a PConn object that might be a 'reference'.
|
|
74
|
+
* If the incoming PConn is a reference, returns its dereferenced View.
|
|
75
|
+
* Otherwise, returns the passed in PConn unchanged.
|
|
76
|
+
*
|
|
77
|
+
* @param inPConn - A PConn object (ex: { getPConnect() } or direct PConnect)
|
|
78
|
+
* @returns The normalized PConn object with references resolved
|
|
79
|
+
*/
|
|
73
80
|
static normalizePConn(inPConn) {
|
|
74
|
-
//
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
if (inPConn.getPConnect) {
|
|
78
|
-
// inPConn is an object (ex: { getPConnect()} ), so we want to return
|
|
79
|
-
// any referenced view as the object containing the
|
|
80
|
-
// the getPConnect function
|
|
81
|
-
returnObj = true;
|
|
82
|
-
thePConnType = inPConn.getPConnect().getComponentName();
|
|
81
|
+
// Early return for null or undefined input
|
|
82
|
+
if (!inPConn) {
|
|
83
|
+
return inPConn;
|
|
83
84
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
// const theRefViewPConn = inPConn.getPConnect().getReferencedViewPConnect(true);
|
|
95
|
-
// Now: ALWAYS calling createFullReferencedViewFromRef to have options, PageReference, etc.
|
|
96
|
-
// set correctly in the C11nEnv (PConnect) object
|
|
97
|
-
// debugger;
|
|
98
|
-
let theRefViewPConn = this.createFullReferencedViewFromRef(inPConn.getPConnect());
|
|
99
|
-
// now return its PConnect
|
|
100
|
-
theRefViewPConn = theRefViewPConn.getComponent();
|
|
101
|
-
// const theFullReference = theRefViewPConn.getPConnect().getFullReference();
|
|
102
|
-
// console.log(`theFullReference: ${theFullReference}`);
|
|
103
|
-
return theRefViewPConn;
|
|
85
|
+
// Determine if we have an object with getPConnect method or direct PConnect
|
|
86
|
+
const hasGetPConnectMethod = !!inPConn.getPConnect;
|
|
87
|
+
// Get the component name in the appropriate way based on the object type
|
|
88
|
+
const componentName = hasGetPConnectMethod ? inPConn.getPConnect().getComponentName() : inPConn.getComponentName();
|
|
89
|
+
// Only process if this is a reference component
|
|
90
|
+
if (componentName === 'reference') {
|
|
91
|
+
if (hasGetPConnectMethod) {
|
|
92
|
+
// For objects with getPConnect method, get the referenced view and its component
|
|
93
|
+
const refViewPConn = this.createFullReferencedViewFromRef(inPConn.getPConnect());
|
|
94
|
+
return refViewPConn?.getComponent();
|
|
104
95
|
}
|
|
105
|
-
//
|
|
106
|
-
// debugger;
|
|
96
|
+
// For direct PConnect objects, just create the referenced view
|
|
107
97
|
return this.createFullReferencedViewFromRef(inPConn);
|
|
108
98
|
}
|
|
99
|
+
// Not a reference component, return unchanged
|
|
109
100
|
return inPConn;
|
|
110
101
|
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
102
|
+
/**
|
|
103
|
+
* Normalizes an array of PConn objects by replacing any 'reference' components
|
|
104
|
+
* with their referenced views.
|
|
105
|
+
*
|
|
106
|
+
* @param inPConnArray - Array of PConn objects to normalize
|
|
107
|
+
* @returns Normalized array with references resolved, or empty array if input is invalid
|
|
108
|
+
*/
|
|
117
109
|
static normalizePConnArray(inPConnArray) {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
return inPConnArray;
|
|
110
|
+
// Handle null, undefined, or empty array case
|
|
111
|
+
if (!inPConnArray?.length) {
|
|
112
|
+
return inPConnArray || [];
|
|
121
113
|
}
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
114
|
+
// Process array: normalize each item and filter out any null/undefined results
|
|
115
|
+
const normalizedArray = inPConnArray.map(child => ReferenceComponent.normalizePConn(child)).filter(Boolean);
|
|
116
|
+
// Ensure we always return an array (even if filter removes all items)
|
|
117
|
+
return normalizedArray || [];
|
|
125
118
|
}
|
|
126
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
127
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
119
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReferenceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
120
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ReferenceComponent, isStandalone: true, selector: "app-reference", ngImport: i0, template: "<!-- Reference component is all static methods so .html not used -->\n", styles: [""] }); }
|
|
128
121
|
}
|
|
129
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
122
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReferenceComponent, decorators: [{
|
|
130
123
|
type: Component,
|
|
131
124
|
args: [{ selector: 'app-reference', standalone: true, template: "<!-- Reference component is all static methods so .html not used -->\n" }]
|
|
132
|
-
}]
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTFDOzs7O0dBSUc7QUFRSCxNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLDRDQUE0QzthQUM3QixhQUFRLEdBQUcsS0FBSyxBQUFSLENBQVM7SUFFaEM7UUFMQSx3QkFBbUIsR0FBUSxJQUFJLENBQUM7UUFNOUIscUVBQXFFO1FBQ3JFLE1BQU0sQ0FBQyxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztRQUVuRCxPQUFPLENBQUMsS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELDRFQUE0RTtJQUM1RSxzREFBc0Q7SUFFdEQseUZBQXlGO0lBQ3pGLDZGQUE2RjtJQUM3RixNQUFNLENBQUMsK0JBQStCLENBQUMsT0FBWTtRQUNqRCxnREFBZ0Q7UUFDaEQsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUMvQyxZQUFZO1lBRVosT0FBTyxDQUFDLEtBQUssQ0FBQyxvRkFBb0YsT0FBTyxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2xJLENBQUM7UUFFRCxNQUFNLHNCQUFzQixHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUMs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ZSxHQUFHLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztnQkFDbEYsMEJBQTBCO2dCQUMxQixlQUFlLEdBQUcsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUVqRCw2RUFBNkU7Z0JBQzdFLHdEQUF3RDtnQkFFeEQsT0FBTyxlQUFlLENBQUM7WUFDekIsQ0FBQztZQUNELDhGQUE4RjtZQUM5RixZQUFZO1lBRVosT0FBTyxJQUFJLENBQUMsK0JBQStCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCw0REFBNEQ7SUFDNUQsNkRBQTZEO0lBQzdELDREQUE0RDtJQUM1RCw2REFBNkQ7SUFDN0QsMkRBQTJEO0lBQzNELDJDQUEyQztJQUUzQyxNQUFNLENBQUMsbUJBQW1CLENBQUMsWUFBaUI7UUFDMUMsSUFBSSxDQUFDLENBQUMsWUFBWSxFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2hDLGlEQUFpRDtZQUNqRCxPQUFPLFlBQVksQ0FBQztRQUN0QixDQUFDO1FBRUQsT0FBTyxZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzlCLE9BQU8sa0JBQWtCLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0FySlUsa0JBQWtCO21HQUFsQixrQkFBa0IseUVDZC9CLHdFQUNBOzs0RkRhYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0UsZUFBZSxjQUdiLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBXQVJOSU5HOiBJdCBpcyBub3QgZXhwZWN0ZWQgdGhhdCB0aGlzIGZpbGUgc2hvdWxkIGJlIG1vZGlmaWVkLiAgSXQgaXMgcGFydCBvZiBpbmZyYXN0cnVjdHVyZSBjb2RlIHRoYXQgd29ya3Mgd2l0aFxuICogUmVkdXggYW5kIGNyZWF0aW9uL3VwZGF0ZSBvZiBSZWR1eCBjb250YWluZXJzIGFuZCBQQ29ubmVjdC4gIE1vZGlmeWluZyB0aGlzIGNvZGUgY291bGQgaGF2ZSB1bmRlc2lyZWFibGUgcmVzdWx0cyBhbmRcbiAqIGlzIHRvdGFsbHkgYXQgeW91ciBvd24gcmlzay5cbiAqL1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtcmVmZXJlbmNlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlZmVyZW5jZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JlZmVyZW5jZS5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFJlZmVyZW5jZUNvbXBvbmVudCB7XG4gIHJlZmVyZW5jZWRDb21wb25lbnQ6IGFueSA9IG51bGw7XG5cbiAgLyogVXNlZCB0byB0b2dnbGUgc29tZSBjbGFzcy13aWRlIGxvZ2dpbmcgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgYkxvZ2dpbmcgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBXaXRoIG5ldyBzdGF0aWMgbWV0aG9kIGFwcHJvYWNoLCB0aGlzIHNob3VsZG4ndCBiZSBjYWxsZWQgYW55IG1vcmVcbiAgICB3aW5kb3cuYWxlcnQoYGluIFJlZmVyZW5jZUNvbXBvbmVudCBjb25zdHJ1Y3RvciFgKTtcblxuICAgIGNvbnNvbGUuZXJyb3IoYGluIFJlZmVyZW5jZUNvbXBvbmVudCBjb25zdHJ1Y3RvciFgKTtcbiAgfVxuXG4gIC8vIG9uU3RhdGVDaGFuZ2UgYW5kIHVwZGF0ZVNlbGYgbWV0aG9kcyByZW1vdmVkIGZyb20gb3JpZ2luYWwgaW1wbGVtZW50YXRpb25cbiAgLy8gIHdoZW4gd2UgbW92ZWQgdG8gdGhlIHN0YXRpYyBtZXRob2QgaW1wbGVtZW50YXRpb24uXG5cbiAgLy8gU1RBVElDIG1ldGhvZCB0byBjcmVhdGUgYSBub3JtYWxpemVkIFBDb25uIChhIGZ1bGx5IHJlYWxpemVkIFZpZXcgdGhhdCB0aGUgJ3JlZmVyZW5jZSdcbiAgLy8gIGNvbXBvbmVudCByZWZlcnMgdG8pIGZyb20gdGhlIGdpdmVuIHBDb25uLiBIYXMgdG8gYWRkIGluIHNvbWUgc3R1ZmYgYXMgaW4gdGhlIGNvbnN0cnVjdG9yXG4gIHN0YXRpYyBjcmVhdGVGdWxsUmVmZXJlbmNlZFZpZXdGcm9tUmVmKGluUENvbm46IGFueSkge1xuICAgIC8vIEJBSUwgYW5kIEVSUk9SIGlmIGluUENvbm4gaXMgTk9UIGEgcmVmZXJlbmNlIVxuICAgIGlmIChpblBDb25uLmdldENvbXBvbmVudE5hbWUoKSAhPT0gJ3JlZmVyZW5jZScpIHtcbiAgICAgIC8vIGRlYnVnZ2VyO1xuXG4gICAgICBjb25zb2xlLmVycm9yKGBSZWZlcmVuY2UgY29tcG9uZW50OiBjcmVhdGVGdWxsUmVmZXJlbmNlZFZpZXdGcm9tUmVmIGluUENvbm4gaXMgTk9UIGEgcmVmZXJlbmNlISAke2luUENvbm4uZ2V0Q29tcG9uZW50TmFtZSgpfWApO1xuICAgIH1cblxuICAgIGNvbnN0IHRoZVJlc29sdmVkQ29uZmlnUHJvcHMgPSBpblBDb25uLnJlc29sdmVDb25maWdQcm9wcyhpblBDb25uLmdldENvbmZpZ1Byb3BzKCkpO1xuXG4gICAgY29uc3QgcmVmZXJlbmNlQ29uZmlnID0geyAuLi5pblBDb25uLmdldENvbXBvbmVudENvbmZpZygpIH0gfHwge307XG5cbiAgICAvLyBTaW5jZSBTREstQSBpbXBsZW1lbnRzIFJlZmVyZW5jZSBhcyBzdGF0aWMgbWV0aG9kcyBhbmQgd2UgZG9uJ3QgcmVseSBvblxuICAgIC8vICB0aGUgUmVmZXJlbmNlIGNvbXBvbmVudCdzIGhhbmRsaW5nIG9mIHRoZSB2aXNpYmlsaXR5IHByb3AsIHdlIGxlYXZlIGl0IGluXG4gICAgLy8gIChhbmQgYWxzbyBsZWF2aW5nIHRoZSBvdGhlcnMgaW4gZm9yIG5vdykgc28gdGhlIHJlZmVyZW5jZWQgVmlldyBjYW4gYWN0IG9uXG4gICAgLy8gIHRoZSB2aXNpYmlsaXR5IHByb3AuIChUaGUgZm9sbG93aW5nIDMgbGluZXMgd2VyZSBjYXJyaWVkIG92ZXIgZnJvbSBSZWFjdCBTREspXG4gICAgZGVsZXRlIHJlZmVyZW5jZUNvbmZpZz8ubmFtZTtcbiAgICAvLyBkZWxldGUgcmVmZXJlbmNlQ29uZmlnPy50eXBlO1xuICAgIC8vIGRlbGV0ZSByZWZlcmVuY2VDb25maWc/LnZpc2liaWxpdHk7XG5cbiAgICBjb25zdCB2aWV3TWV0YWRhdGEgPSBpblBDb25uLmdldFJlZmVyZW5jZWRWaWV3KCk7XG5cbiAgICBpZiAoIXZpZXdNZXRhZGF0YSkge1xuICAgICAgY29uc29sZS5sb2coJ1ZpZXcgbm90IGZvdW5kICcsIGluUENvbm4uZ2V0Q29tcG9uZW50Q29uZmlnKCkpO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLy8gSWYgd2UgZ2V0IGhlcmUsIHdlIGhhdmUgbWV0YWRhdGEgZm9yIGEgVmlldyBjb21wb25lbnQuLi5cbiAgICAvLyBjb25zdCByZWZlcmVuY2VkQ29tcG9uZW50TmFtZSA9IHZpZXdNZXRhZGF0YS50eXBlO1xuXG4gICAgY29uc3Qgdmlld09iamVjdCA9IHtcbiAgICAgIC4uLnZpZXdNZXRhZGF0YSxcbiAgICAgIGNvbmZpZzoge1xuICAgICAgICAuLi52aWV3TWV0YWRhdGEuY29uZmlnLFxuICAgICAgICAuLi5yZWZlcmVuY2VDb25maWdcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgaWYgKFJlZmVyZW5jZUNvbXBvbmVudC5iTG9nZ2luZykge1xuICAgICAgY29uc29sZS5sb2coYFJlZmVyZW5jZTogYWJvdXQgdG8gY2FsbCBjcmVhdGVDb21wb25lbnQgd2l0aCBwYWdlUmVmZXJlbmNlOiBjb250ZXh0OiAke3RoZVJlc29sdmVkQ29uZmlnUHJvcHMuY29udGV4dH1gKTtcbiAgICB9XG5cbiAgICBjb25zdCB2aWV3Q29tcG9uZW50ID0gaW5QQ29ubi5jcmVhdGVDb21wb25lbnQodmlld09iamVjdCwgbnVsbCwgbnVsbCwge1xuICAgICAgcGFnZVJlZmVyZW5jZTogdGhlUmVzb2x2ZWRDb25maWdQcm9wcy5jb250ZXh0XG4gICAgfSk7XG5cbiAgICAvLyB1cGRhdGluZyB0aGUgcmVmZXJlbmNlZENvbXBvbmVudCBzaG91bGQgdHJpZ2dlciBhIHJlbmRlclxuICAgIGNvbnN0IG5ld0NvbXBQQ29ubmVjdCA9IHZpZXdDb21wb25lbnQuZ2V0UENvbm5lY3QoKTtcblxuICAgIG5ld0NvbXBQQ29ubmVjdC5zZXRJbmhlcml0ZWRDb25maWcoe1xuICAgICAgLi4ucmVmZXJlbmNlQ29uZmlnLFxuICAgICAgcmVhZE9ubHk6IHRoZVJlc29sdmVkQ29uZmlnUHJvcHMucmVhZE9ubHkgPyB0aGVSZXNvbHZlZENvbmZpZ1Byb3BzLnJlYWRPbmx5IDogZmFsc2UsXG4gICAgICBkaXNwbGF5TW9kZTogdGhlUmVzb2x2ZWRDb25maWdQcm9wcy5kaXNwbGF5TW9kZSA/IHRoZVJlc29sdmVkQ29uZmlnUHJvcHMuZGlzcGxheU1vZGUgOiBudWxsXG4gICAgfSk7XG5cbiAgICBpZiAoUmVmZXJlbmNlQ29tcG9uZW50LmJMb2dnaW5nKSB7XG4gICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgYEFuZ3VsYXIgUmVmZXJlbmNlIGNvbXBvbmVudDogY3JlYXRlRnVsbFJlZmVyZW5jZWRWaWV3RnJvbVJlZiAtPiBuZXdDb21wUENvbm5lY3QgY29uZmlnUHJvcHM6ICR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgICAgbmV3Q29tcFBDb25uZWN0LmdldENvbmZpZ1Byb3BzKClcbiAgICAgICAgKX1gXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBuZXdDb21wUENvbm5lY3Q7XG4gIH1cblxuICAvLyBTVEFUSUMgbWV0aG9kIHRoYXQgb3RoZXIgY29tcG9uZW50cyBjYW4gY2FsbCB0byBub3JtYWxpemVcbiAgLy8gIGEgcENvbm4gb2JqZWN0IHRoYXQgbWlnaHQgYmUgYSAncmVmZXJlbmNlJy4gSWYgdGhlIGluY29taW5nXG4gIC8vICBwQ29ubiBpcyBhIHJlZmVyZW5jZSwgcmV0dXJuIGl0cyBkZXJlZmVyZW5jZWQgVmlldyBQQ29ubmVjdCdzXG4gIC8vICBnZXRQQ29ubmVjdC4gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHBhc3NlZCBpbiBwQ29ubiB1bmNoYW5nZWRcbiAgLy8gIGluUENvbm4gPSBhIFBDb25uIG9iamVjdCAoZXg6IHsgZ2V0UENvbm5lY3QoKX0gKVxuICBzdGF0aWMgbm9ybWFsaXplUENvbm4oaW5QQ29ubjogYW55KSB7XG4gICAgLy8gZGVidWdnZXI7XG5cbiAgICBsZXQgcmV0dXJuT2JqID0gZmFsc2U7XG4gICAgbGV0IHRoZVBDb25uVHlwZSA9ICcnO1xuXG4gICAgaWYgKGluUENvbm4uZ2V0UENvbm5lY3QpIHtcbiAgICAgIC8vIGluUENvbm4gaXMgYW4gb2JqZWN0IChleDogeyBnZXRQQ29ubmVjdCgpfSApLCBzbyB3ZSB3YW50IHRvIHJldHVyblxuICAgICAgLy8gIGFueSByZWZlcmVuY2VkIHZpZXcgYXMgdGhlIG9iamVjdCBjb250YWluaW5nIHRoZVxuICAgICAgLy8gIHRoZSBnZXRQQ29ubmVjdCBmdW5jdGlvblxuICAgICAgcmV0dXJuT2JqID0gdHJ1ZTtcbiAgICAgIHRoZVBDb25uVHlwZSA9IGluUENvbm4uZ2V0UENvbm5lY3QoKS5nZXRDb21wb25lbnROYW1lKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGluUENvbm4gaXMgYW4gb2JqZWN0IHdpdGggdGhlIFBDb25uZWN0IGZ1bmN0aW9uLCBzbyB3ZSB3YW50XG4gICAgICAvLyAgdG8gcmV0dXJuIGFueSByZWZlcmVuY2VkIHZpZXcgYXMgdGhlIG9iamVjdCBjb250YWluaW5nIHRoZVxuICAgICAgLy8gIHRoZSBjMTFuIGZ1bmN0aW9uXG4gICAgICByZXR1cm5PYmogPSBmYWxzZTtcbiAgICAgIHRoZVBDb25uVHlwZSA9IGluUENvbm4uZ2V0Q29tcG9uZW50TmFtZSgpO1xuICAgIH1cblxuICAgIGlmICh0aGVQQ29ublR5cGUgPT09ICdyZWZlcmVuY2UnKSB7XG4gICAgICBpZiAocmV0dXJuT2JqKSB7XG4gICAgICAgIC8vICBXQVMuLi5cbiAgICAgICAgLy8gY29uc3QgdGhlUmVmVmlld1BDb25uID0gaW5QQ29ubi5nZXRQQ29ubmVjdCgpLmdldFJlZmVyZW5jZWRWaWV3UENvbm5lY3QodHJ1ZSk7XG4gICAgICAgIC8vIE5vdzogQUxXQVlTIGNhbGxpbmcgY3JlYXRlRnVsbFJlZmVyZW5jZWRWaWV3RnJvbVJlZiB0byBoYXZlIG9wdGlvbnMsIFBhZ2VSZWZlcmVuY2UsIGV0Yy5cbiAgICAgICAgLy8gIHNldCBjb3JyZWN0bHkgaW4gdGhlIEMxMW5FbnYgKFBDb25uZWN0KSBvYmplY3RcbiAgICAgICAgLy8gZGVidWdnZXI7XG4gICAgICAgIGxldCB0aGVSZWZWaWV3UENvbm4gPSB0aGlzLmNyZWF0ZUZ1bGxSZWZlcmVuY2VkVmlld0Zyb21SZWYoaW5QQ29ubi5nZXRQQ29ubmVjdCgpKTtcbiAgICAgICAgLy8gbm93IHJldHVybiBpdHMgUENvbm5lY3RcbiAgICAgICAgdGhlUmVmVmlld1BDb25uID0gdGhlUmVmVmlld1BDb25uLmdldENvbXBvbmVudCgpO1xuXG4gICAgICAgIC8vIGNvbnN0IHRoZUZ1bGxSZWZlcmVuY2UgPSB0aGVSZWZWaWV3UENvbm4uZ2V0UENvbm5lY3QoKS5nZXRGdWxsUmVmZXJlbmNlKCk7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKGB0aGVGdWxsUmVmZXJlbmNlOiAke3RoZUZ1bGxSZWZlcmVuY2V9YCk7XG5cbiAgICAgICAgcmV0dXJuIHRoZVJlZlZpZXdQQ29ubjtcbiAgICAgIH1cbiAgICAgIC8vIGNvbnNvbGUubG9nKGBjcmVhdGVkIHRoZUZ1bGxSZWZWaWV3IGZ1bGwgcmVmZXJlbmNlOiAke3RoZUZ1bGxSZWZWaWV3LmdldEZ1bGxSZWZlcmVuY2UoKX1gKTtcbiAgICAgIC8vIGRlYnVnZ2VyO1xuXG4gICAgICByZXR1cm4gdGhpcy5jcmVhdGVGdWxsUmVmZXJlbmNlZFZpZXdGcm9tUmVmKGluUENvbm4pO1xuICAgIH1cbiAgICByZXR1cm4gaW5QQ29ubjtcbiAgfVxuXG4gIC8vIFNUQVRJQyBtZXRob2QgdGhhdCBvdGhlciBjb21wb25lbnRzIGNhbiBjYWxsIHRvIG5vcm1hbGl6ZVxuICAvLyAgYW4gYXJyYXkgb2YgcENvbm4gb2JqZWN0cyB3aGVyZSBhbnkgb2YgdGhlIGNoaWxkcmVuIG1pZ2h0XG4gIC8vICBiZSBhICdyZWZlcmVuY2UnLiBUaGUgYXJyYXkgcmV0dXJucyBhbiBhcnJheSBvZiBjaGlsZHJlblxuICAvLyAgd2hlcmUgYW55ICdyZWZlcmVuY2UnIGlzIHJlcGxhY2VkIHdpdGggaXRzIFJlZmVyZW5jZWRWaWV3XG4gIC8vICBpblBDb25uQXJyYXkgaXMgYW4gYXJyYXkgb2YgUENvbm4gb2JqZWN0cyBvciBmdW5jdGlvbnMuXG4gIC8vICAgIEl0cyB2YWx1ZSBpcyBwYXNzZWQgdG8gbm9ybWFsaXplUENvbm5cblxuICBzdGF0aWMgbm9ybWFsaXplUENvbm5BcnJheShpblBDb25uQXJyYXk6IGFueSkge1xuICAgIGlmICghKGluUENvbm5BcnJheT8ubGVuZ3RoID4gMCkpIHtcbiAgICAgIC8vIG51bGwgb3IgZW1wdHkgYXJyYXksIHJldHVybiB3aGF0IHdhcyBwYXNzZWQgaW5cbiAgICAgIHJldHVybiBpblBDb25uQXJyYXk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGluUENvbm5BcnJheS5tYXAoY2hpbGQgPT4ge1xuICAgICAgcmV0dXJuIFJlZmVyZW5jZUNvbXBvbmVudC5ub3JtYWxpemVQQ29ubihjaGlsZCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjwhLS0gUmVmZXJlbmNlIGNvbXBvbmVudCBpcyBhbGwgc3RhdGljIG1ldGhvZHMgc28gLmh0bWwgbm90IHVzZWQgLS0+XG4iXX0=
|
|
125
|
+
}] });
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTFDOzs7O0dBSUc7QUFRSCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLDRDQUE0QzthQUM3QixhQUFRLEdBQUcsS0FBSyxBQUFSLENBQVM7SUFFaEM7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLCtCQUErQixDQUFDLE9BQVk7UUFDakQsaURBQWlEO1FBQ2pELElBQUksT0FBTyxDQUFDLGdCQUFnQixFQUFFLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDL0MsT0FBTyxDQUFDLEtBQUssQ0FBQyxvRkFBb0YsT0FBTyxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2hJLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELDhDQUE4QztRQUM5QyxNQUFNLGVBQWUsR0FBRyxFQUFFLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQztRQUU1RCx3RUFBd0U7UUFDeEUsNkNBQTZDO1FBQzdDLE9BQU8sZUFBZSxFQUFFLElBQUksQ0FBQztRQUM3QixPQUFPLGVBQWUsRUFBRSxJQUFJLENBQUM7UUFDN0IsT0FBTyxlQUFlLEVBQUUsVUFBVSxDQUFDO1FBRW5DLDJDQUEyQztRQUMzQyxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMs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Q0FBQztRQUVELDhDQUE4QztRQUM5QyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLG1CQUFtQixDQUFDLFlBQW1CO1FBQzVDLDhDQUE4QztRQUM5QyxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQzFCLE9BQU8sWUFBWSxJQUFJLEVBQUUsQ0FBQztRQUM1QixDQUFDO1FBRUQsK0VBQStFO1FBQy9FLE1BQU0sZUFBZSxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFNUcsc0VBQXNFO1FBQ3RFLE9BQU8sZUFBZSxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDOytHQXhJVSxrQkFBa0I7bUdBQWxCLGtCQUFrQix5RUNkL0Isd0VBQ0E7OzRGRGFhLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxlQUFlLGNBR2IsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIFdBUk5JTkc6IEl0IGlzIG5vdCBleHBlY3RlZCB0aGF0IHRoaXMgZmlsZSBzaG91bGQgYmUgbW9kaWZpZWQuICBJdCBpcyBwYXJ0IG9mIGluZnJhc3RydWN0dXJlIGNvZGUgdGhhdCB3b3JrcyB3aXRoXG4gKiBSZWR1eCBhbmQgY3JlYXRpb24vdXBkYXRlIG9mIFJlZHV4IGNvbnRhaW5lcnMgYW5kIFBDb25uZWN0LiAgTW9kaWZ5aW5nIHRoaXMgY29kZSBjb3VsZCBoYXZlIHVuZGVzaXJlYWJsZSByZXN1bHRzIGFuZFxuICogaXMgdG90YWxseSBhdCB5b3VyIG93biByaXNrLlxuICovXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1yZWZlcmVuY2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVmZXJlbmNlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVmZXJlbmNlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgUmVmZXJlbmNlQ29tcG9uZW50IHtcbiAgLyogVXNlZCB0byB0b2dnbGUgc29tZSBjbGFzcy13aWRlIGxvZ2dpbmcgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgYkxvZ2dpbmcgPSBmYWxzZTtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5vcm1hbGl6ZWQgUENvbm4gZnJvbSBhIHJlZmVyZW5jZSBjb21wb25lbnQuXG4gICAqIFJlc29sdmVzIHRoZSByZWZlcmVuY2UgdG8gaXRzIGZ1bGx5IHJlYWxpemVkIFZpZXcgd2l0aCBwcm9wZXIgY29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIGluUENvbm4gLSBUaGUgUENvbm4gb2JqZWN0IHRoYXQgcmVwcmVzZW50cyBhIHJlZmVyZW5jZSBjb21wb25lbnRcbiAgICogQHJldHVybnMgVGhlIGRlcmVmZXJlbmNlZCBQQ29ubmVjdCBvYmplY3QsIG9yIG51bGwgaWYgcmVmZXJlbmNlIGNhbid0IGJlIHJlc29sdmVkXG4gICAqL1xuICBzdGF0aWMgY3JlYXRlRnVsbFJlZmVyZW5jZWRWaWV3RnJvbVJlZihpblBDb25uOiBhbnkpOiBhbnkge1xuICAgIC8vIFZhbGlkYXRlIHRoYXQgaW5QQ29ubiBpcyBhIHJlZmVyZW5jZSBjb21wb25lbnRcbiAgICBpZiAoaW5QQ29ubi5nZXRDb21wb25lbnROYW1lKCkgIT09ICdyZWZlcmVuY2UnKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBSZWZlcmVuY2UgY29tcG9uZW50OiBjcmVhdGVGdWxsUmVmZXJlbmNlZFZpZXdGcm9tUmVmIGluUENvbm4gaXMgTk9UIGEgcmVmZXJlbmNlISAke2luUENvbm4uZ2V0Q29tcG9uZW50TmFtZSgpfWApO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLy8gR2V0IHJlZmVyZW5jZSBjb25maWd1cmF0aW9uIGFuZCBtYWtlIGEgY29weVxuICAgIGNvbnN0IHJlZmVyZW5jZUNvbmZpZyA9IHsgLi4uaW5QQ29ubi5nZXRDb21wb25lbnRDb25maWcoKSB9O1xuXG4gICAgLy8gUmVtb3ZlIHByb3BlcnRpZXMgdGhhdCBzaG91bGQgbm90IGJlIGluaGVyaXRlZCBieSB0aGUgcmVmZXJlbmNlZCB2aWV3XG4gICAgLy8gKE1haW50YWluZWQgZnJvbSBSZWFjdCBTREsgaW1wbGVtZW50YXRpb24pXG4gICAgZGVsZXRlIHJlZmVyZW5jZUNvbmZpZz8ubmFtZTtcbiAgICBkZWxldGUgcmVmZXJlbmNlQ29uZmlnPy50eXBlO1xuICAgIGRlbGV0ZSByZWZlcmVuY2VDb25maWc/LnZpc2liaWxpdHk7XG5cbiAgICAvLyBHZXQgdGhlIG1ldGFkYXRhIGZvciB0aGUgcmVmZXJlbmNlZCB2aWV3XG4gICAgY29uc3Qgdmlld01ldGFkYXRhID0gaW5QQ29ubi5nZXRSZWZlcmVuY2VkVmlldygpO1xuXG4gICAgLy8gUmV0dXJuIG51bGwgaWYgdmlldyBtZXRhZGF0YSBpcyBub3QgZm91bmRcbiAgICBpZiAoIXZpZXdNZXRhZGF0YSkge1xuICAgICAgY29uc29sZS5sb2coJ1ZpZXcgbm90IGZvdW5kICcsIGluUENvbm4uZ2V0Q29tcG9uZW50Q29uZmlnKCkpO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIHRoZSB2aWV3IG9iamVjdCBieSBtZXJnaW5nIG1ldGFkYXRhIHdpdGggcmVmZXJlbmNlIGNvbmZpZ1xuICAgIGNvbnN0IHZpZXdPYmplY3QgPSB7XG4gICAgICAuLi52aWV3TWV0YWRhdGEsXG4gICAgICBjb25maWc6IHtcbiAgICAgICAgLi4udmlld01ldGFkYXRhLmNvbmZpZyxcbiAgICAgICAgLi4ucmVmZXJlbmNlQ29uZmlnXG4gICAgICB9XG4gICAgfTtcblxuICAgIC8vIFJlc29sdmUgY29uZmlndXJhdGlvbiBwcm9wZXJ0aWVzXG4gICAgY29uc3QgcmVzb2x2ZWRDb25maWdQcm9wcyA9IGluUENvbm4ucmVzb2x2ZUNvbmZpZ1Byb3BzKGluUENvbm4uZ2V0Q29uZmlnUHJvcHMoKSk7XG4gICAgY29uc3QgeyB2aXNpYmlsaXR5ID0gdHJ1ZSwgY29udGV4dCwgcmVhZE9ubHkgPSBmYWxzZSwgZGlzcGxheU1vZGUgPSAnJyB9ID0gcmVzb2x2ZWRDb25maWdQcm9wcztcblxuICAgIC8vIExvZyBkZWJ1ZyBpbmZvcm1hdGlvbiBpZiBsb2dnaW5nIGlzIGVuYWJsZWRcbiAgICBpZiAoUmVmZXJlbmNlQ29tcG9uZW50LmJMb2dnaW5nKSB7XG4gICAgICBjb25zb2xlLmxvZyhgUmVmZXJlbmNlOiBhYm91dCB0byBjYWxsIGNyZWF0ZUNvbXBvbmVudCB3aXRoIHBhZ2VSZWZlcmVuY2U6IGNvbnRleHQ6ICR7aW5QQ29ubi5nZXRDb250ZXh0TmFtZSgpfWApO1xuICAgIH1cblxuICAgIC8vIENyZWF0ZSB0aGUgY29tcG9uZW50IHdpdGggdGhlIHJpZ2h0IGNvbnRleHRcbiAgICBjb25zdCB2aWV3Q29tcG9uZW50ID0gaW5QQ29ubi5jcmVhdGVDb21wb25lbnQodmlld09iamVjdCwgbnVsbCwgbnVsbCwge1xuICAgICAgcGFnZVJlZmVyZW5jZTogY29udGV4dCAmJiBjb250ZXh0LnN0YXJ0c1dpdGgoJ0BDTEFTUycpID8gJycgOiBjb250ZXh0XG4gICAgfSk7XG5cbiAgICAvLyBHZXQgdGhlIFBDb25uZWN0IG9iamVjdCBmcm9tIHRoZSBjcmVhdGVkIGNvbXBvbmVudFxuICAgIGNvbnN0IG5ld0NvbXBQQ29ubmVjdCA9IHZpZXdDb21wb25lbnQuZ2V0UENvbm5lY3QoKTtcblxuICAgIC8vIFNldCBpbmhlcml0ZWQgY29uZmlndXJhdGlvbiBvbiB0aGUgbmV3IGNvbXBvbmVudFxuICAgIG5ld0NvbXBQQ29ubmVjdC5zZXRJbmhlcml0ZWRDb25maWcoe1xuICAgICAgLi4ucmVmZXJlbmNlQ29uZmlnLFxuICAgICAgcmVhZE9ubHksXG4gICAgICBkaXNwbGF5TW9kZVxuICAgIH0pO1xuXG4gICAgLy8gTG9nIGRlYnVnIGluZm9ybWF0aW9uIGlmIGxvZ2dpbmcgaXMgZW5hYmxlZFxuICAgIGlmIChSZWZlcmVuY2VDb21wb25lbnQuYkxvZ2dpbmcpIHtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBgQW5ndWxhciBSZWZlcmVuY2UgY29tcG9uZW50OiBjcmVhdGVGdWxsUmVmZXJlbmNlZFZpZXdGcm9tUmVmIC0+IG5ld0NvbXBQQ29ubmVjdCBjb25maWdQcm9wczogJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICBuZXdDb21wUENvbm5lY3QuZ2V0Q29uZmlnUHJvcHMoKVxuICAgICAgICApfWBcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gUmV0dXJuIHRoZSBjb21wb25lbnQgaWYgaXQgc2hvdWxkIGJlIHZpc2libGUsIG90aGVyd2lzZSBudWxsXG4gICAgcmV0dXJuIHZpc2liaWxpdHkgIT09IGZhbHNlID8gbmV3Q29tcFBDb25uZWN0IDogbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBOb3JtYWxpemVzIGEgUENvbm4gb2JqZWN0IHRoYXQgbWlnaHQgYmUgYSAncmVmZXJlbmNlJy5cbiAgICogSWYgdGhlIGluY29taW5nIFBDb25uIGlzIGEgcmVmZXJlbmNlLCByZXR1cm5zIGl0cyBkZXJlZmVyZW5jZWQgVmlldy5cbiAgICogT3RoZXJ3aXNlLCByZXR1cm5zIHRoZSBwYXNzZWQgaW4gUENvbm4gdW5jaGFuZ2VkLlxuICAgKlxuICAgKiBAcGFyYW0gaW5QQ29ubiAtIEEgUENvbm4gb2JqZWN0IChleDogeyBnZXRQQ29ubmVjdCgpIH0gb3IgZGlyZWN0IFBDb25uZWN0KVxuICAgKiBAcmV0dXJucyBUaGUgbm9ybWFsaXplZCBQQ29ubiBvYmplY3Qgd2l0aCByZWZlcmVuY2VzIHJlc29sdmVkXG4gICAqL1xuICBzdGF0aWMgbm9ybWFsaXplUENvbm4oaW5QQ29ubjogYW55KTogYW55IHtcbiAgICAvLyBFYXJseSByZXR1cm4gZm9yIG51bGwgb3IgdW5kZWZpbmVkIGlucHV0XG4gICAgaWYgKCFpblBDb25uKSB7XG4gICAgICByZXR1cm4gaW5QQ29ubjtcbiAgICB9XG5cbiAgICAvLyBEZXRlcm1pbmUgaWYgd2UgaGF2ZSBhbiBvYmplY3Qgd2l0aCBnZXRQQ29ubmVjdCBtZXRob2Qgb3IgZGlyZWN0IFBDb25uZWN0XG4gICAgY29uc3QgaGFzR2V0UENvbm5lY3RNZXRob2QgPSAhIWluUENvbm4uZ2V0UENvbm5lY3Q7XG5cbiAgICAvLyBHZXQgdGhlIGNvbXBvbmVudCBuYW1lIGluIHRoZSBhcHByb3ByaWF0ZSB3YXkgYmFzZWQgb24gdGhlIG9iamVjdCB0eXBlXG4gICAgY29uc3QgY29tcG9uZW50TmFtZSA9IGhhc0dldFBDb25uZWN0TWV0aG9kID8gaW5QQ29ubi5nZXRQQ29ubmVjdCgpLmdldENvbXBvbmVudE5hbWUoKSA6IGluUENvbm4uZ2V0Q29tcG9uZW50TmFtZSgpO1xuXG4gICAgLy8gT25seSBwcm9jZXNzIGlmIHRoaXMgaXMgYSByZWZlcmVuY2UgY29tcG9uZW50XG4gICAgaWYgKGNvbXBvbmVudE5hbWUgPT09ICdyZWZlcmVuY2UnKSB7XG4gICAgICBpZiAoaGFzR2V0UENvbm5lY3RNZXRob2QpIHtcbiAgICAgICAgLy8gRm9yIG9iamVjdHMgd2l0aCBnZXRQQ29ubmVjdCBtZXRob2QsIGdldCB0aGUgcmVmZXJlbmNlZCB2aWV3IGFuZCBpdHMgY29tcG9uZW50XG4gICAgICAgIGNvbnN0IHJlZlZpZXdQQ29ubiA9IHRoaXMuY3JlYXRlRnVsbFJlZmVyZW5jZWRWaWV3RnJvbVJlZihpblBDb25uLmdldFBDb25uZWN0KCkpO1xuICAgICAgICByZXR1cm4gcmVmVmlld1BDb25uPy5nZXRDb21wb25lbnQoKTtcbiAgICAgIH1cblxuICAgICAgLy8gRm9yIGRpcmVjdCBQQ29ubmVjdCBvYmplY3RzLCBqdXN0IGNyZWF0ZSB0aGUgcmVmZXJlbmNlZCB2aWV3XG4gICAgICByZXR1cm4gdGhpcy5jcmVhdGVGdWxsUmVmZXJlbmNlZFZpZXdGcm9tUmVmKGluUENvbm4pO1xuICAgIH1cblxuICAgIC8vIE5vdCBhIHJlZmVyZW5jZSBjb21wb25lbnQsIHJldHVybiB1bmNoYW5nZWRcbiAgICByZXR1cm4gaW5QQ29ubjtcbiAgfVxuXG4gIC8qKlxuICAgKiBOb3JtYWxpemVzIGFuIGFycmF5IG9mIFBDb25uIG9iamVjdHMgYnkgcmVwbGFjaW5nIGFueSAncmVmZXJlbmNlJyBjb21wb25lbnRzXG4gICAqIHdpdGggdGhlaXIgcmVmZXJlbmNlZCB2aWV3cy5cbiAgICpcbiAgICogQHBhcmFtIGluUENvbm5BcnJheSAtIEFycmF5IG9mIFBDb25uIG9iamVjdHMgdG8gbm9ybWFsaXplXG4gICAqIEByZXR1cm5zIE5vcm1hbGl6ZWQgYXJyYXkgd2l0aCByZWZlcmVuY2VzIHJlc29sdmVkLCBvciBlbXB0eSBhcnJheSBpZiBpbnB1dCBpcyBpbnZhbGlkXG4gICAqL1xuICBzdGF0aWMgbm9ybWFsaXplUENvbm5BcnJheShpblBDb25uQXJyYXk6IGFueVtdKTogYW55W10ge1xuICAgIC8vIEhhbmRsZSBudWxsLCB1bmRlZmluZWQsIG9yIGVtcHR5IGFycmF5IGNhc2VcbiAgICBpZiAoIWluUENvbm5BcnJheT8ubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gaW5QQ29ubkFycmF5IHx8IFtdO1xuICAgIH1cblxuICAgIC8vIFByb2Nlc3MgYXJyYXk6IG5vcm1hbGl6ZSBlYWNoIGl0ZW0gYW5kIGZpbHRlciBvdXQgYW55IG51bGwvdW5kZWZpbmVkIHJlc3VsdHNcbiAgICBjb25zdCBub3JtYWxpemVkQXJyYXkgPSBpblBDb25uQXJyYXkubWFwKGNoaWxkID0+IFJlZmVyZW5jZUNvbXBvbmVudC5ub3JtYWxpemVQQ29ubihjaGlsZCkpLmZpbHRlcihCb29sZWFuKTtcblxuICAgIC8vIEVuc3VyZSB3ZSBhbHdheXMgcmV0dXJuIGFuIGFycmF5IChldmVuIGlmIGZpbHRlciByZW1vdmVzIGFsbCBpdGVtcylcbiAgICByZXR1cm4gbm9ybWFsaXplZEFycmF5IHx8IFtdO1xuICB9XG59XG4iLCI8IS0tIFJlZmVyZW5jZSBjb21wb25lbnQgaXMgYWxsIHN0YXRpYyBtZXRob2RzIHNvIC5odG1sIG5vdCB1c2VkIC0tPlxuIl19
|
|
@@ -19,10 +19,10 @@ export class RegionComponent {
|
|
|
19
19
|
// The children may contain 'reference' components, so normalize the children...
|
|
20
20
|
this.arChildren$ = ReferenceComponent.normalizePConnArray(this.pConn$.getChildren());
|
|
21
21
|
}
|
|
22
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
23
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RegionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RegionComponent, isStandalone: true, selector: "app-region", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesOnChanges: true, ngImport: i0, template: "<!-- When adding a component here, add the same component in 'default-form' template as well -->\n<div *ngFor=\"let kid of arChildren$\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"Region wants component not yet available: {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\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"] }] }); }
|
|
24
24
|
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RegionComponent, decorators: [{
|
|
26
26
|
type: Component,
|
|
27
27
|
args: [{ selector: 'app-region', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<!-- When adding a component here, add the same component in 'default-form' template as well -->\n<div *ngFor=\"let kid of arChildren$\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"Region wants component not yet available: {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\n</div>\n" }]
|
|
28
28
|
}], propDecorators: { pConn$: [{
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { Component, Input, forwardRef } from '@angular/core';
|
|
1
|
+
import { Component, Input, forwardRef, inject } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
4
4
|
import { interval } from 'rxjs';
|
|
5
|
+
import { ServerConfigService } from '../../../_services/server-config.service';
|
|
5
6
|
import { ReferenceComponent } from '../reference/reference.component';
|
|
6
7
|
import { PreviewViewContainerComponent } from '../Containers/preview-view-container/preview-view-container.component';
|
|
7
8
|
import { ModalViewContainerComponent } from '../Containers/modal-view-container/modal-view-container.component';
|
|
@@ -23,6 +24,7 @@ export class RootContainerComponent {
|
|
|
23
24
|
this.angularPConnect = angularPConnect;
|
|
24
25
|
this.psService = psService;
|
|
25
26
|
this.ngZone = ngZone;
|
|
27
|
+
this.scService = inject(ServerConfigService);
|
|
26
28
|
// For interaction with AngularPConnect
|
|
27
29
|
this.angularPConnectData = {};
|
|
28
30
|
this.componentName$ = '';
|
|
@@ -36,7 +38,6 @@ export class RootContainerComponent {
|
|
|
36
38
|
this.localeCategory = 'Messages';
|
|
37
39
|
}
|
|
38
40
|
ngOnInit() {
|
|
39
|
-
const myContext = 'app';
|
|
40
41
|
const { containers } = PCore.getStore().getState();
|
|
41
42
|
const items = Object.keys(containers).filter(item => item.includes('root'));
|
|
42
43
|
PCore.getContainerUtils().getContainerAPI().addContainerItems(items);
|
|
@@ -52,21 +53,9 @@ export class RootContainerComponent {
|
|
|
52
53
|
options
|
|
53
54
|
});
|
|
54
55
|
this.pvConn$ = configObjPreview.getPConnect();
|
|
55
|
-
|
|
56
|
-
meta: {
|
|
57
|
-
type: 'ModalViewContainer',
|
|
58
|
-
config: {
|
|
59
|
-
name: 'modal'
|
|
60
|
-
}
|
|
61
|
-
},
|
|
62
|
-
options: {
|
|
63
|
-
pageReference: 'pyPortal',
|
|
64
|
-
context: myContext
|
|
65
|
-
}
|
|
66
|
-
});
|
|
56
|
+
this.configureModalContainer();
|
|
67
57
|
// clear out hasViewContainer
|
|
68
58
|
sessionStorage.setItem('hasViewContainer', 'false');
|
|
69
|
-
this.mConn$ = configObjModal.getPConnect();
|
|
70
59
|
// First thing in initialization is registering and subscribing to the AngularPConnect service
|
|
71
60
|
this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
|
|
72
61
|
// handle showing and hiding the progress spinner
|
|
@@ -88,16 +77,6 @@ export class RootContainerComponent {
|
|
|
88
77
|
this.updateSelf();
|
|
89
78
|
}
|
|
90
79
|
}
|
|
91
|
-
modalVisibleChanged(isVisible) {
|
|
92
|
-
if (this.displayOnlyFA$) {
|
|
93
|
-
if (isVisible) {
|
|
94
|
-
this.bShowRoot$ = false;
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
this.bShowRoot$ = true;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
80
|
updateSelf() {
|
|
102
81
|
// need to call this.getCurrentCompleteProps (not this.thePConn.getConfigProps)
|
|
103
82
|
// to get full set of props that affect this component in Redux
|
|
@@ -146,6 +125,22 @@ export class RootContainerComponent {
|
|
|
146
125
|
// TODO: need to update once skeletons are available;
|
|
147
126
|
}
|
|
148
127
|
}
|
|
128
|
+
async configureModalContainer() {
|
|
129
|
+
const sdkConfig = await this.scService.getSdkConfig();
|
|
130
|
+
const showModalsInEmbeddedMode = sdkConfig.serverConfig.showModalsInEmbeddedMode;
|
|
131
|
+
if (!this.displayOnlyFA$ || showModalsInEmbeddedMode) {
|
|
132
|
+
const configObjModal = PCore.createPConnect({
|
|
133
|
+
meta: {
|
|
134
|
+
type: 'ModalViewContainer',
|
|
135
|
+
config: {
|
|
136
|
+
name: 'modal'
|
|
137
|
+
}
|
|
138
|
+
},
|
|
139
|
+
options
|
|
140
|
+
});
|
|
141
|
+
this.mConn$ = configObjModal.getPConnect();
|
|
142
|
+
}
|
|
143
|
+
}
|
|
149
144
|
generateViewContainerForNoPortal() {
|
|
150
145
|
// bootstrap loadMashup resolves to here
|
|
151
146
|
const arChildren = this.pConn$.getChildren();
|
|
@@ -205,10 +200,10 @@ export class RootContainerComponent {
|
|
|
205
200
|
}
|
|
206
201
|
}
|
|
207
202
|
}
|
|
208
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
209
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
203
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RootContainerComponent, deps: [{ token: i1.AngularPConnectService }, { token: i2.ProgressSpinnerService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
204
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RootContainerComponent, isStandalone: true, selector: "app-root-container", inputs: { pConn$: "pConn$", displayOnlyFA$: "displayOnlyFA$", isMashup$: "isMashup$" }, ngImport: i0, template: "<div class=\"progress-box\" *ngIf=\"bIsProgress$\">\n <mat-spinner class=\"progress-spinner\"></mat-spinner>\n</div>\n\n<div *ngIf=\"bShowRoot$\">\n <div [ngSwitch]=\"componentName$\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ pConn$, displayOnlyFA$ }\"></component-mapper>\n <component-mapper\n *ngSwitchCase=\"'ViewContainer'\"\n name=\"ViewContainer\"\n [props]=\"{ pConn$: viewContainerPConn$, displayOnlyFA$ }\"\n ></component-mapper>\n <div *ngSwitchDefault>{{ localizedVal('RootContainer Missing: ' + componentName$, localeCategory) }}.</div>\n </div>\n</div>\n\n<div *ngIf=\"pvConn$ != null\">\n <app-preview-view-container [pConn$]=\"pvConn$\"></app-preview-view-container>\n</div>\n\n<div *ngIf=\"mConn$ != null\">\n <app-modal-view-container [pConn$]=\"mConn$\"></app-modal-view-container>\n</div>\n", styles: [".progress-box{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;width:100%;background-color:var(--app-background-color);position:fixed;z-index:99999;top:0rem;left:0rem;opacity:.5}.progress-spinner{text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgSwitch), selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgSwitchCase), selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgSwitchDefault), selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: i0.forwardRef(() => MatProgressSpinnerModule) }, { kind: "component", type: i0.forwardRef(() => i4.MatProgressSpinner), selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i0.forwardRef(() => ModalViewContainerComponent), selector: "app-modal-view-container", inputs: ["pConn$"], outputs: ["modalVisibleChange"] }, { kind: "component", type: i0.forwardRef(() => PreviewViewContainerComponent), selector: "app-preview-view-container", inputs: ["pConn$"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
210
205
|
}
|
|
211
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
206
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RootContainerComponent, decorators: [{
|
|
212
207
|
type: Component,
|
|
213
208
|
args: [{ selector: 'app-root-container', standalone: true, imports: [
|
|
214
209
|
CommonModule,
|
|
@@ -217,7 +212,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
217
212
|
ModalViewContainerComponent,
|
|
218
213
|
PreviewViewContainerComponent,
|
|
219
214
|
forwardRef(() => ComponentMapperComponent)
|
|
220
|
-
], template: "<div class=\"progress-box\" *ngIf=\"bIsProgress$\">\n <mat-spinner class=\"progress-spinner\"></mat-spinner>\n</div>\n\n<div *ngIf=\"bShowRoot$\">\n <div [ngSwitch]=\"componentName$\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ pConn$, displayOnlyFA$ }\"></component-mapper>\n
|
|
215
|
+
], template: "<div class=\"progress-box\" *ngIf=\"bIsProgress$\">\n <mat-spinner class=\"progress-spinner\"></mat-spinner>\n</div>\n\n<div *ngIf=\"bShowRoot$\">\n <div [ngSwitch]=\"componentName$\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ pConn$, displayOnlyFA$ }\"></component-mapper>\n <component-mapper\n *ngSwitchCase=\"'ViewContainer'\"\n name=\"ViewContainer\"\n [props]=\"{ pConn$: viewContainerPConn$, displayOnlyFA$ }\"\n ></component-mapper>\n <div *ngSwitchDefault>{{ localizedVal('RootContainer Missing: ' + componentName$, localeCategory) }}.</div>\n </div>\n</div>\n\n<div *ngIf=\"pvConn$ != null\">\n <app-preview-view-container [pConn$]=\"pvConn$\"></app-preview-view-container>\n</div>\n\n<div *ngIf=\"mConn$ != null\">\n <app-modal-view-container [pConn$]=\"mConn$\"></app-modal-view-container>\n</div>\n", styles: [".progress-box{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;width:100%;background-color:var(--app-background-color);position:fixed;z-index:99999;top:0rem;left:0rem;opacity:.5}.progress-spinner{text-align:center}\n"] }]
|
|
221
216
|
}], ctorParameters: () => [{ type: i1.AngularPConnectService }, { type: i2.ProgressSpinnerService }, { type: i0.NgZone }], propDecorators: { pConn$: [{
|
|
222
217
|
type: Input
|
|
223
218
|
}], displayOnlyFA$: [{
|
|
@@ -225,4 +220,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
225
220
|
}], isMashup$: [{
|
|
226
221
|
type: Input
|
|
227
222
|
}] } });
|
|
228
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19jb21wb25lbnRzL2luZnJhL3Jvb3QtY29udGFpbmVyL3Jvb3QtY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9yb290LWNvbnRhaW5lci9yb290LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBVSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxRQUFRLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBRzlDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHVFQUF1RSxDQUFDO0FBQ3RILE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1FQUFtRSxDQUFDO0FBQ2hILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ25ILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDOzs7Ozs7QUFFeEc7Ozs7R0FJRztBQUVILE1BQU0sT0FBTyxHQUFHLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO0FBZ0JuQyxNQUFNLE9BQU8sc0JBQXNCO0lBdUJqQyxZQUNVLGVBQXVDLEVBQ3ZDLFNBQWlDLEVBQ2pDLE1BQWM7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R2hDLHNCQUFzQjtrQkFkbEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FHbEIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osd0JBQXdCO3dCQUN4Qiw0QkFBNEI7d0JBQzVCLDJCQUEyQjt3QkFDM0IsNkJBQTZCO3dCQUM3QixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUM7cUJBQzNDO3FKQUdRLE1BQU07c0JBQWQsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE5nWm9uZSwgZm9yd2FyZFJlZiwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XG5pbXBvcnQgeyBpbnRlcnZhbCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBbmd1bGFyUENvbm5lY3REYXRhLCBBbmd1bGFyUENvbm5lY3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vX2JyaWRnZS9hbmd1bGFyLXBjb25uZWN0JztcbmltcG9ydCB7IFByb2dyZXNzU3Bpbm5lclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9fbWVzc2FnZXMvcHJvZ3Jlc3Mtc3Bpbm5lci5zZXJ2aWNlJztcbmltcG9ydCB7IFJlZmVyZW5jZUNvbXBvbmVudCB9IGZyb20gJy4uL3JlZmVyZW5jZS9yZWZlcmVuY2UuY29tcG9uZW50JztcbmltcG9ydCB7IFByZXZpZXdWaWV3Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vQ29udGFpbmVycy9wcmV2aWV3LXZpZXctY29udGFpbmVyL3ByZXZpZXctdmlldy1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1vZGFsVmlld0NvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL0NvbnRhaW5lcnMvbW9kYWwtdmlldy1jb250YWluZXIvbW9kYWwtdmlldy1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEh5YnJpZFZpZXdDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9Db250YWluZXJzL2h5YnJpZC12aWV3LWNvbnRhaW5lci9oeWJyaWQtdmlldy1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL19icmlkZ2UvY29tcG9uZW50LW1hcHBlci9jb21wb25lbnQtbWFwcGVyLmNvbXBvbmVudCc7XG5cbi8qKlxuICogV0FSTklORzogIEl0IGlzIG5vdCBleHBlY3RlZCB0aGF0IHRoaXMgZmlsZSBzaG91bGQgYmUgbW9kaWZpZWQuICBJdCBpcyBwYXJ0IG9mIGluZnJhc3RydWN0dXJlIGNvZGUgdGhhdCB3b3JrcyB3aXRoXG4gKiBSZWR1eCBhbmQgY3JlYXRpb24vdXBkYXRlIG9mIFJlZHV4IGNvbnRhaW5lcnMgYW5kIFBDb25uZWN0LiAgTW9kaWZ5aW5nIHRoaXMgY29kZSBjb3VsZCBoYXZlIHVuZGVzaXJlYWJsZSByZXN1bHRzIGFuZFxuICogaXMgdG90YWxseSBhdCB5b3VyIG93biByaXNrLlxuICovXG5cbmNvbnN0IG9wdGlvbnMgPSB7IGNvbnRleHQ6ICdhcHAnIH07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1yb290LWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9yb290LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Jvb3QtY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLFxuICAgIEh5YnJpZFZpZXdDb250YWluZXJDb21wb25lbnQsXG4gICAgTW9kYWxWaWV3Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIFByZXZpZXdWaWV3Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIGZvcndhcmRSZWYoKCkgPT4gQ29tcG9uZW50TWFwcGVyQ29tcG9uZW50KVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFJvb3RDb250YWluZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHBDb25uJDogdHlwZW9mIFBDb25uZWN0O1xuICBASW5wdXQoKSBkaXNwbGF5T25seUZBJDogYm9vbGVhbjtcbiAgQElucHV0KCkgaXNNYXNodXAkOiBib29sZWFuO1xuXG4gIC8vIEZvciBpbnRlcmFjdGlvbiB3aXRoIEFuZ3VsYXJQQ29ubmVjdFxuICBhbmd1bGFyUENvbm5lY3REYXRhOiBBbmd1bGFyUENvbm5lY3REYXRhID0ge307XG5cbiAgY29tcG9uZW50TmFtZSQgPSAnJztcbiAgYklzUHJvZ3Jlc3MkID0gZmFsc2U7XG5cbiAgLy8gcHJldmlldyBhbmQgbW9kYWx2aWV3IHBDb25uXG4gIHB2Q29ubiQ6IGFueSA9IG51bGw7XG4gIG1Db25uJDogYW55ID0gbnVsbDtcblxuICBiU2hvd1Jvb3QkID0gdHJ1ZTtcblxuICBwcm9ncmVzc1NwaW5uZXJTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgc3Bpbm5lclRpbWVyOiBhbnkgPSBudWxsO1xuICB2aWV3Q29udGFpbmVyUENvbm4kOiBhbnkgPSBudWxsO1xuICBsb2NhbGl6ZWRWYWw6IGFueTtcbiAgbG9jYWxlQ2F0ZWdvcnkgPSAnTWVzc2FnZXMnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYW5ndWxhclBDb25uZWN0OiBBbmd1bGFyUENvbm5lY3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgcHNTZXJ2aWNlOiBQcm9ncmVzc1NwaW5uZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmVcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IG15Q29udGV4dCA9ICdhcHAnO1xuXG4gICAgY29uc3QgeyBjb250YWluZXJzIH0gPSBQQ29yZS5nZXRTdG9yZSgpLmdldFN0YXRlKCk7XG4gICAgY29uc3QgaXRlbXMgPSBPYmplY3Qua2V5cyhjb250YWluZXJzKS5maWx0ZXIoaXRlbSA9PiBpdGVtLmluY2x1ZGVzKCdyb290JykpO1xuXG4gICAgKFBDb3JlLmdldENvbnRhaW5lclV0aWxzKCkuZ2V0Q29udGFpbmVyQVBJKCkgYXMgYW55KS5hZGRDb250YWluZXJJdGVtcyhpdGVtcyk7XG5cbiAgICAvLyBhZGQgcHJldmlldyBhbmQgbW9kYWx2aWV3IGNvbnRhaW5lcnMgdG8gcmVkdXhcbiAgICAvLyBrZWVwIGxvY2FsIGNvcGllcyBvZiB0aGUgdGhlIHBDb25uZWN0IHRoYXQgaXMgcmVsYXRlZFxuXG4gICAgY29uc3QgY29uZmlnT2JqUHJldmlldyA9IFBDb3JlLmNyZWF0ZVBDb25uZWN0KHtcbiAgICAgIG1ldGE6IHtcbiAgICAgICAgdHlwZTogJ1ByZXZpZXdWaWV3Q29udGFpbmVyJyxcbiAgICAgICAgY29uZmlnOiB7XG4gICAgICAgICAgbmFtZTogJ3ByZXZpZXcnXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBvcHRpb25zXG4gICAgfSk7XG5cbiAgICB0aGlzLnB2Q29ubiQgPSBjb25maWdPYmpQcmV2aWV3LmdldFBDb25uZWN0KCk7XG5cbiAgICBjb25zdCBjb25maWdPYmpNb2RhbCA9IFBDb3JlLmNyZWF0ZVBDb25uZWN0KHtcbiAgICAgIG1ldGE6IHtcbiAgICAgICAgdHlwZTogJ01vZGFsVmlld0NvbnRhaW5lcicsXG4gICAgICAgIGNvbmZpZzoge1xuICAgICAgICAgIG5hbWU6ICdtb2RhbCdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgcGFnZVJlZmVyZW5jZTogJ3B5UG9ydGFsJyxcbiAgICAgICAgY29udGV4dDogbXlDb250ZXh0XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICAvLyBjbGVhciBvdXQgaGFzVmlld0NvbnRhaW5lclxuICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oJ2hhc1ZpZXdDb250YWluZXInLCAnZmFsc2UnKTtcblxuICAgIHRoaXMubUNvbm4kID0gY29uZmlnT2JqTW9kYWwuZ2V0UENvbm5lY3QoKTtcblxuICAgIC8vIEZpcnN0IHRoaW5nIGluIGluaXRpYWxpemF0aW9uIGlzIHJlZ2lzdGVyaW5nIGFuZCBzdWJzY3JpYmluZyB0byB0aGUgQW5ndWxhclBDb25uZWN0IHNlcnZpY2VcbiAgICB0aGlzLmFuZ3VsYXJQQ29ubmVjdERhdGEgPSB0aGlzLmFuZ3VsYXJQQ29ubmVjdC5yZWdpc3RlckFuZFN1YnNjcmliZUNvbXBvbmVudCh0aGlzLCB0aGlzLm9uU3RhdGVDaGFuZ2UpO1xuXG4gICAgLy8gaGFuZGxlIHNob3dpbmcgYW5kIGhpZGluZyB0aGUgcHJvZ3Jlc3Mgc3Bpbm5lclxuICAgIHRoaXMucHJvZ3Jlc3NTcGlubmVyU3Vic2NyaXB0aW9uID0gdGhpcy5wc1NlcnZpY2UuZ2V0TWVzc2FnZSgpLnN1YnNjcmliZShtZXNzYWdlID0+IHtcbiAgICAgIHRoaXMuc2hvd0hpZGVQcm9ncmVzcyhtZXNzYWdlLnNob3cpO1xuICAgIH0pO1xuICAgIHRoaXMubG9jYWxpemVkVmFsID0gUENvcmUuZ2V0TG9jYWxlVXRpbHMoKS5nZXRMb2NhbGVWYWx1ZTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLmFuZ3VsYXJQQ29ubmVjdERhdGEudW5zdWJzY3JpYmVGbikge1xuICAgICAgdGhpcy5hbmd1bGFyUENvbm5lY3REYXRhLnVuc3Vic2NyaWJlRm4oKTtcbiAgICB9XG4gIH1cblxuICAvLyBDYWxsYmFjayBwYXNzZWQgd2hlbiBzdWJzY3JpYmluZyB0byBzdG9yZSBjaGFuZ2VcbiAgb25TdGF0ZUNoYW5nZSgpIHtcbiAgICAvLyBTaG91bGQgYWx3YXlzIGNoZWNrIHRoZSBicmlkZ2UgdG8gc2VlIGlmIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcilcbiAgICBjb25zdCBiVXBkYXRlU2VsZiA9IHRoaXMuYW5ndWxhclBDb25uZWN0LnNob3VsZENvbXBvbmVudFVwZGF0ZSh0aGlzKTtcblxuICAgIGlmIChiVXBkYXRlU2VsZikge1xuICAgICAgdGhpcy51cGRhdGVTZWxmKCk7XG4gICAgfVxuICB9XG5cbiAgbW9kYWxWaXNpYmxlQ2hhbmdlZChpc1Zpc2libGUpIHtcbiAgICBpZiAodGhpcy5kaXNwbGF5T25seUZBJCkge1xuICAgICAgaWYgKGlzVmlzaWJsZSkge1xuICAgICAgICB0aGlzLmJTaG93Um9vdCQgPSBmYWxzZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYlNob3dSb290JCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlU2VsZigpIHtcbiAgICAvLyBuZWVkIHRvIGNhbGwgdGhpcy5nZXRDdXJyZW50Q29tcGxldGVQcm9wcyAobm90IHRoaXMudGhlUENvbm4uZ2V0Q29uZmlnUHJvcHMpXG4gICAgLy8gIHRvIGdldCBmdWxsIHNldCBvZiBwcm9wcyB0aGF0IGFmZmVjdCB0aGlzIGNvbXBvbmVudCBpbiBSZWR1eFxuICAgIGNvbnN0IG15UHJvcHM6IGFueSA9IHRoaXMuYW5ndWxhclBDb25uZWN0LmdldEN1cnJlbnRDb21wbGV0ZVByb3BzKHRoaXMpO1xuXG4gICAgY29uc3QgcmVuZGVyaW5nTW9kZXMgPSBbJ3BvcnRhbCcsICd2aWV3J107XG4gICAgY29uc3Qgbm9Qb3J0YWxNb2RlID0gJ25vUG9ydGFsJztcblxuICAgIGNvbnN0IHsgcmVuZGVyaW5nTW9kZSwgY2hpbGRyZW4sIHNrZWxldG9uLCByb3V0aW5nSW5mbyB9ID0gbXlQcm9wcztcblxuICAgIGlmIChyb3V0aW5nSW5mbyAmJiByZW5kZXJpbmdNb2Rlcy5pbmNsdWRlcyhyZW5kZXJpbmdNb2RlKSkge1xuICAgICAgY29uc3QgeyBhY2Nlc3NlZE9yZGVyLCBpdGVtcyB9ID0gcm91dGluZ0luZm87XG4gICAgICBpZiAoYWNjZXNzZWRPcmRlciAmJiBpdGVtcykge1xuICAgICAgICAvLyBib290c3RyYXAgbG9hZFBvcnRhbCByZXNvbHZlcyB0byBoZXJlXG4gICAgICAgIGNvbnN0IGtleSA9IGFjY2Vzc2VkT3JkZXJbYWNjZXNzZWRPcmRlci5sZW5ndGggLSAxXTtcbiAgICAgICAgaWYgKGl0ZW1zW2tleV0gJiYgaXRlbXNba2V5XS52aWV3ICYmIE9iamVjdC5rZXlzKGl0ZW1zW2tleV0udmlldykubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGNvbnN0IGl0ZW1WaWV3ID0gaXRlbXNba2V5XS52aWV3O1xuXG4gICAgICAgICAgY29uc3Qgcm9vdE9iamVjdDogYW55ID0gUENvcmUuY3JlYXRlUENvbm5lY3Qoe1xuICAgICAgICAgICAgbWV0YTogaXRlbVZpZXcsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGNvbnRleHQ6IGl0ZW1zW2tleV0uY29udGV4dFxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAvLyBtYWtlcyBzdXJlIEFuZ3VsYXIgdHJhY2tzIHRoZXNlIGNoYW5nZXNcbiAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgIC8vIHRoZSBuZXcgcm9vdE9iamVjdCBtYXkgYmUgYSAncmVmZXJlbmNlJy4gU28sXG4gICAgICAgICAgICAgIC8vICBub3JtYWxpemUgaXQgdG8gZ2V0IHRoZSByZWZlcmVuY2VkVmlldyBpZiB0aGF0J3MgdGhlIGNhc2VcbiAgICAgICAgICAgICAgY29uc3QgdGhlTmV3UENvbm4gPSBSZWZlcmVuY2VDb21wb25lbnQubm9ybWFsaXplUENvbm4ocm9vdE9iamVjdC5nZXRQQ29ubmVjdCgpKTtcbiAgICAgICAgICAgICAgLy8gdXBkYXRlIENvbXBvbmVudE5hbWUkIGJlZm9yZSB3ZSB1cGRhdGUgcENvbm4kIHRvIG1ha2Ugc3VyZSB0aGV5J3JlIGluIHN5bmNcbiAgICAgICAgICAgICAgLy8gIHdoZW4gcmVuZGVyaW5nLi4uXG4gICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50TmFtZSQgPSB0aGVOZXdQQ29ubi5nZXRDb21wb25lbnROYW1lKCk7XG5cbiAgICAgICAgICAgICAgdGhpcy5wQ29ubiQgPSB0aGVOZXdQQ29ubjtcbiAgICAgICAgICAgICAgLy8gdGhpcy5wQ29ubiQgPSByb290T2JqZWN0LmdldFBDb25uZWN0KCk7XG5cbiAgICAgICAgICAgICAgY29uc29sZS5sb2coYFJvb3RDb250YWluZXIgdXBkYXRlZCBwQ29ubiQgdG8gYmU6ICR7dGhpcy5jb21wb25lbnROYW1lJH1gKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChyZW5kZXJpbmdNb2RlID09PSBub1BvcnRhbE1vZGUpIHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGBSb290Q29udGFpbmVyOiByZW5kZXJpbmdNb2RlID09PSBub1BvcnRhbE1vZGU6ICR7bm9Qb3J0YWxNb2RlfWApO1xuICAgICAgdGhpcy5nZW5lcmF0ZVZpZXdDb250YWluZXJGb3JOb1BvcnRhbCgpO1xuICAgIH0gZWxzZSBpZiAoY2hpbGRyZW4gJiYgY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgLy8gaGF2ZW4ndCByZXNvbHZlZCB0byBoZXJlXG4gICAgfSBlbHNlIGlmIChza2VsZXRvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBUT0RPOiBuZWVkIHRvIHVwZGF0ZSBvbmNlIHNrZWxldG9ucyBhcmUgYXZhaWxhYmxlO1xuICAgIH1cbiAgfVxuXG4gIGdlbmVyYXRlVmlld0NvbnRhaW5lckZvck5vUG9ydGFsKCkge1xuICAgIC8vIGJvb3RzdHJhcCBsb2FkTWFzaHVwIHJlc29sdmVzIHRvIGhlcmVcbiAgICBjb25zdCBhckNoaWxkcmVuID0gdGhpcy5wQ29ubiQuZ2V0Q2hpbGRyZW4oKSBhcyBhbnlbXTtcbiAgICBpZiAoYXJDaGlsZHJlbiAmJiBhckNoaWxkcmVuLmxlbmd0aCA9PSAxKSB7XG4gICAgICAvLyBoYXZlIHRvIGhhdmUgYSBxdWljayB0aW1lb3V0IG9yIGdldCBhbiBcImV4cHJlc3Npb25zIGNoYW5nZWRcIiBhbmd1bGFyIGVycm9yXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICBjb25zdCBsb2NhbFBDb25uID0gYXJDaGlsZHJlblswXS5nZXRQQ29ubmVjdCgpO1xuXG4gICAgICAgICAgdGhpcy5jb21wb25lbnROYW1lJCA9IGxvY2FsUENvbm4uZ2V0Q29tcG9uZW50TmFtZSgpO1xuICAgICAgICAgIGlmICh0aGlzLmNvbXBvbmVudE5hbWUkID09PSAnVmlld0NvbnRhaW5lcicpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbmZpZ1Byb3BzOiBhbnkgPSB0aGlzLnBDb25uJC5nZXRDb25maWdQcm9wcygpO1xuICAgICAgICAgICAgY29uc3Qgdmlld0NvbnRDb25maWcgPSB7XG4gICAgICAgICAgICAgIG1ldGE6IHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnVmlld0NvbnRhaW5lcicsXG4gICAgICAgICAgICAgICAgY29uZmlnOiBjb25maWdQcm9wc1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBvcHRpb25zXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB0aGlzLnZpZXdDb250YWluZXJQQ29ubiQgPSBQQ29yZS5jcmVhdGVQQ29ubmVjdCh2aWV3Q29udENvbmZpZykuZ2V0UENvbm5lY3QoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5iU2hvd1Jvb3QkID0gdHJ1ZTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBzaG93SGlkZVByb2dyZXNzKGJTaG93OiBib29sZWFuKSB7XG4gICAgLy8gb25seSBzaG93IHNwaW5uZXIgYWZ0ZXIgNTAwbXMgd2FpdCwgc28gaWYgc2VydmVyIGZhc3QsIHdvbid0IHNlZVxuICAgIGlmIChiU2hvdykge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvbm8tY29sbGFwc2libGUtaWZcbiAgICAgIGlmICghdGhpcy5iSXNQcm9ncmVzcyQpIHtcbiAgICAgICAgLy8gbWFrZXMgc3VyZSBBbmd1bGFyIHRyYWNrcyB0aGVzZSBjaGFuZ2VzXG4gICAgICAgIGlmICghdGhpcy5zcGlubmVyVGltZXIgfHwgdGhpcy5zcGlubmVyVGltZXIuaXNTdG9wcGVkKSB7XG4gICAgICAgICAgdGhpcy5zcGlubmVyVGltZXIgPSBpbnRlcnZhbCg1MDApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICB0aGlzLnNwaW5uZXJUaW1lci51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgICAgICAgICAgLyogZW1wdHkgKi9cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5iSXNQcm9ncmVzcyQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuc3Bpbm5lclRpbWVyICYmICF0aGlzLnNwaW5uZXJUaW1lci5pc1N0b3BwZWQpIHtcbiAgICAgICAgdGhpcy5zcGlubmVyVGltZXIudW5zdWJzY3JpYmUoKTtcbiAgICAgIH1cblxuICAgICAgLy8gZG9uJ3QgdG91Y2ggYklzUHJvZ3Jlc3MkIHVubGVzcyBkaWZmZXJuZW50XG4gICAgICBpZiAoYlNob3cgIT0gdGhpcy5iSXNQcm9ncmVzcyQpIHtcbiAgICAgICAgLy8gbWFrZXMgc3VyZSBBbmd1bGFyIHRyYWNrcyB0aGVzZSBjaGFuZ2VzXG4gICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgdGhpcy5iSXNQcm9ncmVzcyQgPSBiU2hvdztcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHJvZ3Jlc3MtYm94XCIgKm5nSWY9XCJiSXNQcm9ncmVzcyRcIj5cbiAgPG1hdC1zcGlubmVyIGNsYXNzPVwicHJvZ3Jlc3Mtc3Bpbm5lclwiPjwvbWF0LXNwaW5uZXI+XG48L2Rpdj5cblxuPGRpdiAqbmdJZj1cImJTaG93Um9vdCRcIj5cbiAgPGRpdiBbbmdTd2l0Y2hdPVwiY29tcG9uZW50TmFtZSRcIj5cbiAgICA8Y29tcG9uZW50LW1hcHBlciAqbmdTd2l0Y2hDYXNlPVwiJ1ZpZXcnXCIgbmFtZT1cIlZpZXdcIiBbcHJvcHNdPVwieyBwQ29ubiQsIGRpc3BsYXlPbmx5RkEkIH1cIj48L2NvbXBvbmVudC1tYXBwZXI+XG4gICAgPCEtLSA8YXBwLXJlZmVyZW5jZSAqbmdTd2l0Y2hDYXNlPVwiJ3JlZmVyZW5jZSdcIiBbcENvbm4kXT1cInBDb25uJFwiIFtkaXNwbGF5T25seUZBJF09XCJkaXNwbGF5T25seUZBJFwiPjwvYXBwLXJlZmVyZW5jZT4gLS0+XG4gICAgPGNvbXBvbmVudC1tYXBwZXJcbiAgICAgICpuZ1N3aXRjaENhc2U9XCInVmlld0NvbnRhaW5lcidcIlxuICAgICAgbmFtZT1cIlZpZXdDb250YWluZXJcIlxuICAgICAgW3Byb3BzXT1cInsgcENvbm4kOiBkaXNwbGF5T25seUZBJCA/IHZpZXdDb250YWluZXJQQ29ubiQgOiBwQ29ubiQsIGRpc3BsYXlPbmx5RkEkIH1cIlxuICAgID48L2NvbXBvbmVudC1tYXBwZXI+XG4gICAgPGFwcC1oeWJyaWQtdmlldy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidIeWJyaWRWaWV3Q29udGFpbmVyJ1wiIFtwQ29ubiRdPVwicENvbm4kXCIgW2Rpc3BsYXlPbmx5RkEkXT1cImRpc3BsYXlPbmx5RkEkXCI+PC9hcHAtaHlicmlkLXZpZXctY29udGFpbmVyPlxuICAgIDxhcHAtbW9kYWwtdmlldy1jb250YWluZXJcbiAgICAgICpuZ1N3aXRjaENhc2U9XCInTW9kYWxWaWV3Q29udGFpbmVyJ1wiXG4gICAgICBbcENvbm4kXT1cInBDb25uJFwiXG4gICAgICBbZGlzcGxheU9ubHlGQSRdPVwiZGlzcGxheU9ubHlGQSRcIlxuICAgICAgKG1vZGFsVmlzaWJsZUNoYW5nZSk9XCJtb2RhbFZpc2libGVDaGFuZ2VkKCRldmVudClcIlxuICAgID48L2FwcC1tb2RhbC12aWV3LWNvbnRhaW5lcj5cbiAgICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInJ1wiPjwvZGl2PlxuICAgIDxkaXYgKm5nU3dpdGNoRGVmYXVsdD57eyBsb2NhbGl6ZWRWYWwoJ1Jvb3RDb250YWluZXIgTWlzc2luZzogJyArIGNvbXBvbmVudE5hbWUkLCBsb2NhbGVDYXRlZ29yeSkgfX0uPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxkaXYgKm5nSWY9XCJwdkNvbm4kICE9IG51bGxcIj5cbiAgPGFwcC1wcmV2aWV3LXZpZXctY29udGFpbmVyIFtwQ29ubiRdPVwicHZDb25uJFwiPjwvYXBwLXByZXZpZXctdmlldy1jb250YWluZXI+XG48L2Rpdj5cblxuPGRpdiAqbmdJZj1cIm1Db25uJCAhPSBudWxsXCI+XG4gIDxhcHAtbW9kYWwtdmlldy1jb250YWluZXJcbiAgICBbcENvbm4kXT1cIm1Db25uJFwiXG4gICAgW2Rpc3BsYXlPbmx5RkEkXT1cImRpc3BsYXlPbmx5RkEkXCJcbiAgICAobW9kYWxWaXNpYmxlQ2hhbmdlKT1cIm1vZGFsVmlzaWJsZUNoYW5nZWQoJGV2ZW50KVwiXG4gID48L2FwcC1tb2RhbC12aWV3LWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19jb21wb25lbnRzL2luZnJhL3Jvb3QtY29udGFpbmVyL3Jvb3QtY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9yb290LWNvbnRhaW5lci9yb290LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBVSxVQUFVLEVBQWEsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsUUFBUSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUU5QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx1RUFBdUUsQ0FBQztBQUN0SCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUNoSCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7Ozs7O0FBRXhHOzs7O0dBSUc7QUFFSCxNQUFNLE9BQU8sR0FBRyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQztBQWdCbkMsTUFBTSxPQUFPLHNCQUFzQjtJQXlCakMsWUFDVSxlQUF1QyxFQUN2QyxTQUFpQyxFQUNqQyxNQUFjO1FBRmQsb0JBQWUsR0FBZixlQUFlLENBQXdCO1FBQ3ZDLGNBQVMsR0FBVCxTQUFTLENBQXdCO1FBQ2pDLFdBQU0sR0FBTixNQUFNLENBQVE7UUF2QnhCLGNBQVMsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUV4Qyx1Q0FBdUM7UUFDdkMsd0JBQW1CLEdBQXdCLEVBQUUsQ0FBQztRQUU5QyxtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUNwQixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUVyQiw4QkFBOEI7UUFDOUIsWUFBTyxHQUFRLElBQUksQ0FBQztRQUNwQixXQUFNLEdBQVEsSUFBSSxDQUFDO1FBRW5CLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFHbEIsaUJBQVksR0FBUSxJQUFJLENBQUM7UUFDekIsd0JBQW1CLEdBQVEsSUFBSSxDQUFDO1FBRWhDLG1CQUFjLEdBQUcsVUFBVSxDQUFDO0lBTXpCLENBQUM7SUFFSixRQUFRO1FBQ04sTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNuRCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUU1RSxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyRSxnREFBZ0Q7UUFDaEQsd0RBQXdEO1FBRXhELE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztZQUM1QyxJQUFJLEVBQUU7Z0JBQ0osSUFBSSxFQUFFLHNCQUFzQjtnQkFDNUIsTUFBTSxFQUFFO29CQUNOLElBQUksRUFBRSxTQUFTO2lCQUNoQjthQUNGO1lBQ0QsT0FBTztTQUNSLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEdBQUcsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFOUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7UUFFL0IsNkJBQTZCO1FBQzdCLGNBQWMsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFcEQsOEZBQThGO1FBQzlGLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLDZCQUE2QixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFeEcsaURBQWlEO1FBQ2pELElBQUksQ0FBQywyQkFBMkIsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNqRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUMsY0FBYyxDQUFDO0lBQzVELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDM0MsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzNDLENBQUM7SUFDSCxDQUFDO0lBRUQsbURBQW1EO0lBQ25ELGFBQWE7UUFDWCwwRkFBMEY7UUFDMUYsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVyRSxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0gsQ0FBQztJQUVELFVBQVU7UUFDUiwrRUFBK0U7UUFDL0UsZ0VBQWdFO1FBQ2hFLE1BQU0sT0FBTyxHQUFRLElBQUksQ0FBQyxlQUFlLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFeEUsTUFBTSxjQUFjLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDMUMsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDO1FBRWhDLE1BQU0sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFFbkUsSUFBSSxXQUFXLElBQUksY0FBYyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1lBQzFELE1BQU0sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLEdBQUcsV0FBVyxDQUFDO1lBQzdDLElBQUksYUFBYSxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUMzQix3Q0FBd0M7Z0JBQ3hDLE1BQU0sR0FBRyxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNwRCxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztvQkFDN0UsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztvQkFFakMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQzt3QkFDdEMsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsT0FBTyxFQUFFOzRCQUNQLE9BQU8sRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTzt5QkFDNUI7cUJBQ0YsQ0FBQyxDQUFDO29CQUVILFVBQVUsQ0FBQyxHQUFHLEVBQUU7d0JBQ2QsMENBQTBDO3dCQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7NEJBQ25CLCtDQUErQzs0QkFDL0MsNkRBQTZEOzRCQUM3RCxNQUFNLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7NEJBQ2hGLDZFQUE2RTs0QkFDN0UscUJBQXFCOzRCQUNyQixJQUFJLENBQUMsY0FBYyxHQUFHLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDOzRCQUVyRCxJQUFJLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQzs0QkFDMUIsMENBQTBDOzRCQUUxQyxPQUFPLENBQUMsR0FBRyxDQUFDLHVDQUF1QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQzt3QkFDNUUsQ0FBQyxDQUFDLENBQUM7b0JBQ0wsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO2FBQU0sSUFBSSxhQUFhLEtBQUssWUFBWSxFQUFFLENBQUM7WUFDMUMsaUZBQWlGO1lBQ2pGLElBQUksQ0FBQyxnQ0FBZ0MsRUFBRSxDQUFDO1FBQzFDLENBQUM7YUFBTSxJQUFJLFFBQVEsSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzNDLDJCQUEyQjtRQUM3QixDQUFDO2FBQU0sSUFBSSxRQUFRLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDbEMscURBQXFEO1FBQ3ZELENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QjtRQUMzQixNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdEQsTUFBTSx3QkFBd0IsR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDLHdCQUF3QixDQUFDO1FBRWpGLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLHdCQUF3QixFQUFFLENBQUM7WUFDckQsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztnQkFDMUMsSUFBSSxFQUFFO29CQUNKLElBQUksRUFBRSxvQkFBb0I7b0JBQzFCLE1BQU0sRUFBRTt3QkFDTixJQUFJLEVBQUUsT0FBTztxQkFDZDtpQkFDRjtnQkFDRCxPQUFPO2FBQ1IsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLE1BQU0sR0FBRyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7SUFFRCxnQ0FBZ0M7UUFDOUIsd0NBQXdDO1FBQ3hDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFXLENBQUM7UUFDdEQsSUFBSSxVQUFVLElBQUksVUFBVSxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUN6Qyw2RUFBNkU7WUFDN0UsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7b0JBQ25CLE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFFL0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztvQkFDcEQsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLGVBQWUsRUFBRSxDQUFDO3dCQUM1QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO3dCQUNqRCxNQUFNLGNBQWMsR0FBRzs0QkFDckIsSUFBSSxFQUFFO2dDQUNKLElBQUksRUFBRSxlQUFlO2dDQUNyQixNQUFNLEVBQUUsV0FBVzs2QkFDcEI7NEJBQ0QsT0FBTzt5QkFDUixDQUFDO3dCQUVGLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUNoRixDQUFDO29CQUNELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUN6QixDQUFDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFjO1FBQzdCLG1FQUFtRTtRQUNuRSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1YscURBQXFEO1lBQ3JELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3ZCLDBDQUEwQztnQkFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztvQkFDdEQsSUFBSSxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTt3QkFDL0MsSUFBSSxDQUFDOzRCQUNILElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7d0JBQ2xDLENBQUM7d0JBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQzs0QkFDWixXQUFXO3dCQUNiLENBQUM7d0JBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFOzRCQUNuQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQzt3QkFDM0IsQ0FBQyxDQUFDLENBQUM7b0JBQ0wsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbEMsQ0FBQztZQUVELDZDQUE2QztZQUM3QyxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQy9CLDBDQUEwQztnQkFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO29CQUNuQixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztnQkFDNUIsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7K0dBeE5VLHNCQUFzQjttR0FBdEIsc0JBQXNCLHNLQ25DbkMseTJCQXVCQSw2VURJSSxZQUFZLHVmQUNaLHdCQUF3Qiw2UUFFeEIsMkJBQTJCLCtJQUMzQiw2QkFBNkIsZ0hBQ1osd0JBQXdCOzs0RkFHaEMsc0JBQXNCO2tCQWRsQyxTQUFTOytCQUNFLG9CQUFvQixjQUdsQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWix3QkFBd0I7d0JBQ3hCLDRCQUE0Qjt3QkFDNUIsMkJBQTJCO3dCQUMzQiw2QkFBNkI7d0JBQzdCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztxQkFDM0M7cUpBR1EsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgTmdab25lLCBmb3J3YXJkUmVmLCBPbkRlc3Ryb3ksIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLXNwaW5uZXInO1xuaW1wb3J0IHsgaW50ZXJ2YWwsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQW5ndWxhclBDb25uZWN0RGF0YSwgQW5ndWxhclBDb25uZWN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19icmlkZ2UvYW5ndWxhci1wY29ubmVjdCc7XG5pbXBvcnQgeyBTZXJ2ZXJDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vX3NlcnZpY2VzL3NlcnZlci1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBQcm9ncmVzc1NwaW5uZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vX21lc3NhZ2VzL3Byb2dyZXNzLXNwaW5uZXIuc2VydmljZSc7XG5pbXBvcnQgeyBSZWZlcmVuY2VDb21wb25lbnQgfSBmcm9tICcuLi9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcmV2aWV3Vmlld0NvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL0NvbnRhaW5lcnMvcHJldmlldy12aWV3LWNvbnRhaW5lci9wcmV2aWV3LXZpZXctY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNb2RhbFZpZXdDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9Db250YWluZXJzL21vZGFsLXZpZXctY29udGFpbmVyL21vZGFsLXZpZXctY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIeWJyaWRWaWV3Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vQ29udGFpbmVycy9oeWJyaWQtdmlldy1jb250YWluZXIvaHlicmlkLXZpZXctY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21wb25lbnRNYXBwZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2NvbXBvbmVudC1tYXBwZXIvY29tcG9uZW50LW1hcHBlci5jb21wb25lbnQnO1xuXG4vKipcbiAqIFdBUk5JTkc6ICBJdCBpcyBub3QgZXhwZWN0ZWQgdGhhdCB0aGlzIGZpbGUgc2hvdWxkIGJlIG1vZGlmaWVkLiAgSXQgaXMgcGFydCBvZiBpbmZyYXN0cnVjdHVyZSBjb2RlIHRoYXQgd29ya3Mgd2l0aFxuICogUmVkdXggYW5kIGNyZWF0aW9uL3VwZGF0ZSBvZiBSZWR1eCBjb250YWluZXJzIGFuZCBQQ29ubmVjdC4gIE1vZGlmeWluZyB0aGlzIGNvZGUgY291bGQgaGF2ZSB1bmRlc2lyZWFibGUgcmVzdWx0cyBhbmRcbiAqIGlzIHRvdGFsbHkgYXQgeW91ciBvd24gcmlzay5cbiAqL1xuXG5jb25zdCBvcHRpb25zID0geyBjb250ZXh0OiAnYXBwJyB9O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtcm9vdC1jb250YWluZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcm9vdC1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yb290LWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICBIeWJyaWRWaWV3Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIE1vZGFsVmlld0NvbnRhaW5lckNvbXBvbmVudCxcbiAgICBQcmV2aWV3Vmlld0NvbnRhaW5lckNvbXBvbmVudCxcbiAgICBmb3J3YXJkUmVmKCgpID0+IENvbXBvbmVudE1hcHBlckNvbXBvbmVudClcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBSb290Q29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBwQ29ubiQ6IHR5cGVvZiBQQ29ubmVjdDtcbiAgQElucHV0KCkgZGlzcGxheU9ubHlGQSQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzTWFzaHVwJDogYm9vbGVhbjtcblxuICBzY1NlcnZpY2UgPSBpbmplY3QoU2VydmVyQ29uZmlnU2VydmljZSk7XG5cbiAgLy8gRm9yIGludGVyYWN0aW9uIHdpdGggQW5ndWxhclBDb25uZWN0XG4gIGFuZ3VsYXJQQ29ubmVjdERhdGE6IEFuZ3VsYXJQQ29ubmVjdERhdGEgPSB7fTtcblxuICBjb21wb25lbnROYW1lJCA9ICcnO1xuICBiSXNQcm9ncmVzcyQgPSBmYWxzZTtcblxuICAvLyBwcmV2aWV3IGFuZCBtb2RhbHZpZXcgcENvbm5cbiAgcHZDb25uJDogYW55ID0gbnVsbDtcbiAgbUNvbm4kOiBhbnkgPSBudWxsO1xuXG4gIGJTaG93Um9vdCQgPSB0cnVlO1xuXG4gIHByb2dyZXNzU3Bpbm5lclN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBzcGlubmVyVGltZXI6IGFueSA9IG51bGw7XG4gIHZpZXdDb250YWluZXJQQ29ubiQ6IGFueSA9IG51bGw7XG4gIGxvY2FsaXplZFZhbDogYW55O1xuICBsb2NhbGVDYXRlZ29yeSA9ICdNZXNzYWdlcyc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhbmd1bGFyUENvbm5lY3Q6IEFuZ3VsYXJQQ29ubmVjdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwc1NlcnZpY2U6IFByb2dyZXNzU3Bpbm5lclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZVxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgeyBjb250YWluZXJzIH0gPSBQQ29yZS5nZXRTdG9yZSgpLmdldFN0YXRlKCk7XG4gICAgY29uc3QgaXRlbXMgPSBPYmplY3Qua2V5cyhjb250YWluZXJzKS5maWx0ZXIoaXRlbSA9PiBpdGVtLmluY2x1ZGVzKCdyb290JykpO1xuXG4gICAgUENvcmUuZ2V0Q29udGFpbmVyVXRpbHMoKS5nZXRDb250YWluZXJBUEkoKS5hZGRDb250YWluZXJJdGVtcyhpdGVtcyk7XG5cbiAgICAvLyBhZGQgcHJldmlldyBhbmQgbW9kYWx2aWV3IGNvbnRhaW5lcnMgdG8gcmVkdXhcbiAgICAvLyBrZWVwIGxvY2FsIGNvcGllcyBvZiB0aGUgdGhlIHBDb25uZWN0IHRoYXQgaXMgcmVsYXRlZFxuXG4gICAgY29uc3QgY29uZmlnT2JqUHJldmlldyA9IFBDb3JlLmNyZWF0ZVBDb25uZWN0KHtcbiAgICAgIG1ldGE6IHtcbiAgICAgICAgdHlwZTogJ1ByZXZpZXdWaWV3Q29udGFpbmVyJyxcbiAgICAgICAgY29uZmlnOiB7XG4gICAgICAgICAgbmFtZTogJ3ByZXZpZXcnXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBvcHRpb25zXG4gICAgfSk7XG5cbiAgICB0aGlzLnB2Q29ubiQgPSBjb25maWdPYmpQcmV2aWV3LmdldFBDb25uZWN0KCk7XG5cbiAgICB0aGlzLmNvbmZpZ3VyZU1vZGFsQ29udGFpbmVyKCk7XG5cbiAgICAvLyBjbGVhciBvdXQgaGFzVmlld0NvbnRhaW5lclxuICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oJ2hhc1ZpZXdDb250YWluZXInLCAnZmFsc2UnKTtcblxuICAgIC8vIEZpcnN0IHRoaW5nIGluIGluaXRpYWxpemF0aW9uIGlzIHJlZ2lzdGVyaW5nIGFuZCBzdWJzY3JpYmluZyB0byB0aGUgQW5ndWxhclBDb25uZWN0IHNlcnZpY2VcbiAgICB0aGlzLmFuZ3VsYXJQQ29ubmVjdERhdGEgPSB0aGlzLmFuZ3VsYXJQQ29ubmVjdC5yZWdpc3RlckFuZFN1YnNjcmliZUNvbXBvbmVudCh0aGlzLCB0aGlzLm9uU3RhdGVDaGFuZ2UpO1xuXG4gICAgLy8gaGFuZGxlIHNob3dpbmcgYW5kIGhpZGluZyB0aGUgcHJvZ3Jlc3Mgc3Bpbm5lclxuICAgIHRoaXMucHJvZ3Jlc3NTcGlubmVyU3Vic2NyaXB0aW9uID0gdGhpcy5wc1NlcnZpY2UuZ2V0TWVzc2FnZSgpLnN1YnNjcmliZShtZXNzYWdlID0+IHtcbiAgICAgIHRoaXMuc2hvd0hpZGVQcm9ncmVzcyhtZXNzYWdlLnNob3cpO1xuICAgIH0pO1xuICAgIHRoaXMubG9jYWxpemVkVmFsID0gUENvcmUuZ2V0TG9jYWxlVXRpbHMoKS5nZXRMb2NhbGVWYWx1ZTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLmFuZ3VsYXJQQ29ubmVjdERhdGEudW5zdWJzY3JpYmVGbikge1xuICAgICAgdGhpcy5hbmd1bGFyUENvbm5lY3REYXRhLnVuc3Vic2NyaWJlRm4oKTtcbiAgICB9XG4gIH1cblxuICAvLyBDYWxsYmFjayBwYXNzZWQgd2hlbiBzdWJzY3JpYmluZyB0byBzdG9yZSBjaGFuZ2VcbiAgb25TdGF0ZUNoYW5nZSgpIHtcbiAgICAvLyBTaG91bGQgYWx3YXlzIGNoZWNrIHRoZSBicmlkZ2UgdG8gc2VlIGlmIHRoZSBjb21wb25lbnQgc2hvdWxkIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcilcbiAgICBjb25zdCBiVXBkYXRlU2VsZiA9IHRoaXMuYW5ndWxhclBDb25uZWN0LnNob3VsZENvbXBvbmVudFVwZGF0ZSh0aGlzKTtcblxuICAgIGlmIChiVXBkYXRlU2VsZikge1xuICAgICAgdGhpcy51cGRhdGVTZWxmKCk7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlU2VsZigpIHtcbiAgICAvLyBuZWVkIHRvIGNhbGwgdGhpcy5nZXRDdXJyZW50Q29tcGxldGVQcm9wcyAobm90IHRoaXMudGhlUENvbm4uZ2V0Q29uZmlnUHJvcHMpXG4gICAgLy8gIHRvIGdldCBmdWxsIHNldCBvZiBwcm9wcyB0aGF0IGFmZmVjdCB0aGlzIGNvbXBvbmVudCBpbiBSZWR1eFxuICAgIGNvbnN0IG15UHJvcHM6IGFueSA9IHRoaXMuYW5ndWxhclBDb25uZWN0LmdldEN1cnJlbnRDb21wbGV0ZVByb3BzKHRoaXMpO1xuXG4gICAgY29uc3QgcmVuZGVyaW5nTW9kZXMgPSBbJ3BvcnRhbCcsICd2aWV3J107XG4gICAgY29uc3Qgbm9Qb3J0YWxNb2RlID0gJ25vUG9ydGFsJztcblxuICAgIGNvbnN0IHsgcmVuZGVyaW5nTW9kZSwgY2hpbGRyZW4sIHNrZWxldG9uLCByb3V0aW5nSW5mbyB9ID0gbXlQcm9wcztcblxuICAgIGlmIChyb3V0aW5nSW5mbyAmJiByZW5kZXJpbmdNb2Rlcy5pbmNsdWRlcyhyZW5kZXJpbmdNb2RlKSkge1xuICAgICAgY29uc3QgeyBhY2Nlc3NlZE9yZGVyLCBpdGVtcyB9ID0gcm91dGluZ0luZm87XG4gICAgICBpZiAoYWNjZXNzZWRPcmRlciAmJiBpdGVtcykge1xuICAgICAgICAvLyBib290c3RyYXAgbG9hZFBvcnRhbCByZXNvbHZlcyB0byBoZXJlXG4gICAgICAgIGNvbnN0IGtleSA9IGFjY2Vzc2VkT3JkZXJbYWNjZXNzZWRPcmRlci5sZW5ndGggLSAxXTtcbiAgICAgICAgaWYgKGl0ZW1zW2tleV0gJiYgaXRlbXNba2V5XS52aWV3ICYmIE9iamVjdC5rZXlzKGl0ZW1zW2tleV0udmlldykubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGNvbnN0IGl0ZW1WaWV3ID0gaXRlbXNba2V5XS52aWV3O1xuXG4gICAgICAgICAgY29uc3Qgcm9vdE9iamVjdCA9IFBDb3JlLmNyZWF0ZVBDb25uZWN0KHtcbiAgICAgICAgICAgIG1ldGE6IGl0ZW1WaWV3LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBjb250ZXh0OiBpdGVtc1trZXldLmNvbnRleHRcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgLy8gbWFrZXMgc3VyZSBBbmd1bGFyIHRyYWNrcyB0aGVzZSBjaGFuZ2VzXG4gICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgICAvLyB0aGUgbmV3IHJvb3RPYmplY3QgbWF5IGJlIGEgJ3JlZmVyZW5jZScuIFNvLFxuICAgICAgICAgICAgICAvLyAgbm9ybWFsaXplIGl0IHRvIGdldCB0aGUgcmVmZXJlbmNlZFZpZXcgaWYgdGhhdCdzIHRoZSBjYXNlXG4gICAgICAgICAgICAgIGNvbnN0IHRoZU5ld1BDb25uID0gUmVmZXJlbmNlQ29tcG9uZW50Lm5vcm1hbGl6ZVBDb25uKHJvb3RPYmplY3QuZ2V0UENvbm5lY3QoKSk7XG4gICAgICAgICAgICAgIC8vIHVwZGF0ZSBDb21wb25lbnROYW1lJCBiZWZvcmUgd2UgdXBkYXRlIHBDb25uJCB0byBtYWtlIHN1cmUgdGhleSdyZSBpbiBzeW5jXG4gICAgICAgICAgICAgIC8vICB3aGVuIHJlbmRlcmluZy4uLlxuICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudE5hbWUkID0gdGhlTmV3UENvbm4uZ2V0Q29tcG9uZW50TmFtZSgpO1xuXG4gICAgICAgICAgICAgIHRoaXMucENvbm4kID0gdGhlTmV3UENvbm47XG4gICAgICAgICAgICAgIC8vIHRoaXMucENvbm4kID0gcm9vdE9iamVjdC5nZXRQQ29ubmVjdCgpO1xuXG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKGBSb290Q29udGFpbmVyIHVwZGF0ZWQgcENvbm4kIHRvIGJlOiAke3RoaXMuY29tcG9uZW50TmFtZSR9YCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAocmVuZGVyaW5nTW9kZSA9PT0gbm9Qb3J0YWxNb2RlKSB7XG4gICAgICAvLyBjb25zb2xlLmxvZyhgUm9vdENvbnRhaW5lcjogcmVuZGVyaW5nTW9kZSA9PT0gbm9Qb3J0YWxNb2RlOiAke25vUG9ydGFsTW9kZX1gKTtcbiAgICAgIHRoaXMuZ2VuZXJhdGVWaWV3Q29udGFpbmVyRm9yTm9Qb3J0YWwoKTtcbiAgICB9IGVsc2UgaWYgKGNoaWxkcmVuICYmIGNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgIC8vIGhhdmVuJ3QgcmVzb2x2ZWQgdG8gaGVyZVxuICAgIH0gZWxzZSBpZiAoc2tlbGV0b24gIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gVE9ETzogbmVlZCB0byB1cGRhdGUgb25jZSBza2VsZXRvbnMgYXJlIGF2YWlsYWJsZTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBjb25maWd1cmVNb2RhbENvbnRhaW5lcigpIHtcbiAgICBjb25zdCBzZGtDb25maWcgPSBhd2FpdCB0aGlzLnNjU2VydmljZS5nZXRTZGtDb25maWcoKTtcbiAgICBjb25zdCBzaG93TW9kYWxzSW5FbWJlZGRlZE1vZGUgPSBzZGtDb25maWcuc2VydmVyQ29uZmlnLnNob3dNb2RhbHNJbkVtYmVkZGVkTW9kZTtcblxuICAgIGlmICghdGhpcy5kaXNwbGF5T25seUZBJCB8fCBzaG93TW9kYWxzSW5FbWJlZGRlZE1vZGUpIHtcbiAgICAgIGNvbnN0IGNvbmZpZ09iak1vZGFsID0gUENvcmUuY3JlYXRlUENvbm5lY3Qoe1xuICAgICAgICBtZXRhOiB7XG4gICAgICAgICAgdHlwZTogJ01vZGFsVmlld0NvbnRhaW5lcicsXG4gICAgICAgICAgY29uZmlnOiB7XG4gICAgICAgICAgICBuYW1lOiAnbW9kYWwnXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zXG4gICAgICB9KTtcblxuICAgICAgdGhpcy5tQ29ubiQgPSBjb25maWdPYmpNb2RhbC5nZXRQQ29ubmVjdCgpO1xuICAgIH1cbiAgfVxuXG4gIGdlbmVyYXRlVmlld0NvbnRhaW5lckZvck5vUG9ydGFsKCkge1xuICAgIC8vIGJvb3RzdHJhcCBsb2FkTWFzaHVwIHJlc29sdmVzIHRvIGhlcmVcbiAgICBjb25zdCBhckNoaWxkcmVuID0gdGhpcy5wQ29ubiQuZ2V0Q2hpbGRyZW4oKSBhcyBhbnlbXTtcbiAgICBpZiAoYXJDaGlsZHJlbiAmJiBhckNoaWxkcmVuLmxlbmd0aCA9PSAxKSB7XG4gICAgICAvLyBoYXZlIHRvIGhhdmUgYSBxdWljayB0aW1lb3V0IG9yIGdldCBhbiBcImV4cHJlc3Npb25zIGNoYW5nZWRcIiBhbmd1bGFyIGVycm9yXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICBjb25zdCBsb2NhbFBDb25uID0gYXJDaGlsZHJlblswXS5nZXRQQ29ubmVjdCgpO1xuXG4gICAgICAgICAgdGhpcy5jb21wb25lbnROYW1lJCA9IGxvY2FsUENvbm4uZ2V0Q29tcG9uZW50TmFtZSgpO1xuICAgICAgICAgIGlmICh0aGlzLmNvbXBvbmVudE5hbWUkID09PSAnVmlld0NvbnRhaW5lcicpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbmZpZ1Byb3BzID0gdGhpcy5wQ29ubiQuZ2V0Q29uZmlnUHJvcHMoKTtcbiAgICAgICAgICAgIGNvbnN0IHZpZXdDb250Q29uZmlnID0ge1xuICAgICAgICAgICAgICBtZXRhOiB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ1ZpZXdDb250YWluZXInLFxuICAgICAgICAgICAgICAgIGNvbmZpZzogY29uZmlnUHJvcHNcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgb3B0aW9uc1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyUENvbm4kID0gUENvcmUuY3JlYXRlUENvbm5lY3Qodmlld0NvbnRDb25maWcpLmdldFBDb25uZWN0KCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuYlNob3dSb290JCA9IHRydWU7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgc2hvd0hpZGVQcm9ncmVzcyhiU2hvdzogYm9vbGVhbikge1xuICAgIC8vIG9ubHkgc2hvdyBzcGlubmVyIGFmdGVyIDUwMG1zIHdhaXQsIHNvIGlmIHNlcnZlciBmYXN0LCB3b24ndCBzZWVcbiAgICBpZiAoYlNob3cpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBzb25hcmpzL25vLWNvbGxhcHNpYmxlLWlmXG4gICAgICBpZiAoIXRoaXMuYklzUHJvZ3Jlc3MkKSB7XG4gICAgICAgIC8vIG1ha2VzIHN1cmUgQW5ndWxhciB0cmFja3MgdGhlc2UgY2hhbmdlc1xuICAgICAgICBpZiAoIXRoaXMuc3Bpbm5lclRpbWVyIHx8IHRoaXMuc3Bpbm5lclRpbWVyLmlzU3RvcHBlZCkge1xuICAgICAgICAgIHRoaXMuc3Bpbm5lclRpbWVyID0gaW50ZXJ2YWwoNTAwKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgdGhpcy5zcGlubmVyVGltZXIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGV4KSB7XG4gICAgICAgICAgICAgIC8qIGVtcHR5ICovXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuYklzUHJvZ3Jlc3MkID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLnNwaW5uZXJUaW1lciAmJiAhdGhpcy5zcGlubmVyVGltZXIuaXNTdG9wcGVkKSB7XG4gICAgICAgIHRoaXMuc3Bpbm5lclRpbWVyLnVuc3Vic2NyaWJlKCk7XG4gICAgICB9XG5cbiAgICAgIC8vIGRvbid0IHRvdWNoIGJJc1Byb2dyZXNzJCB1bmxlc3MgZGlmZmVybmVudFxuICAgICAgaWYgKGJTaG93ICE9IHRoaXMuYklzUHJvZ3Jlc3MkKSB7XG4gICAgICAgIC8vIG1ha2VzIHN1cmUgQW5ndWxhciB0cmFja3MgdGhlc2UgY2hhbmdlc1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgIHRoaXMuYklzUHJvZ3Jlc3MkID0gYlNob3c7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInByb2dyZXNzLWJveFwiICpuZ0lmPVwiYklzUHJvZ3Jlc3MkXCI+XG4gIDxtYXQtc3Bpbm5lciBjbGFzcz1cInByb2dyZXNzLXNwaW5uZXJcIj48L21hdC1zcGlubmVyPlxuPC9kaXY+XG5cbjxkaXYgKm5nSWY9XCJiU2hvd1Jvb3QkXCI+XG4gIDxkaXYgW25nU3dpdGNoXT1cImNvbXBvbmVudE5hbWUkXCI+XG4gICAgPGNvbXBvbmVudC1tYXBwZXIgKm5nU3dpdGNoQ2FzZT1cIidWaWV3J1wiIG5hbWU9XCJWaWV3XCIgW3Byb3BzXT1cInsgcENvbm4kLCBkaXNwbGF5T25seUZBJCB9XCI+PC9jb21wb25lbnQtbWFwcGVyPlxuICAgIDxjb21wb25lbnQtbWFwcGVyXG4gICAgICAqbmdTd2l0Y2hDYXNlPVwiJ1ZpZXdDb250YWluZXInXCJcbiAgICAgIG5hbWU9XCJWaWV3Q29udGFpbmVyXCJcbiAgICAgIFtwcm9wc109XCJ7IHBDb25uJDogdmlld0NvbnRhaW5lclBDb25uJCwgZGlzcGxheU9ubHlGQSQgfVwiXG4gICAgPjwvY29tcG9uZW50LW1hcHBlcj5cbiAgICA8ZGl2ICpuZ1N3aXRjaERlZmF1bHQ+e3sgbG9jYWxpemVkVmFsKCdSb290Q29udGFpbmVyIE1pc3Npbmc6ICcgKyBjb21wb25lbnROYW1lJCwgbG9jYWxlQ2F0ZWdvcnkpIH19LjwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2ICpuZ0lmPVwicHZDb25uJCAhPSBudWxsXCI+XG4gIDxhcHAtcHJldmlldy12aWV3LWNvbnRhaW5lciBbcENvbm4kXT1cInB2Q29ubiRcIj48L2FwcC1wcmV2aWV3LXZpZXctY29udGFpbmVyPlxuPC9kaXY+XG5cbjxkaXYgKm5nSWY9XCJtQ29ubiQgIT0gbnVsbFwiPlxuICA8YXBwLW1vZGFsLXZpZXctY29udGFpbmVyIFtwQ29ubiRdPVwibUNvbm4kXCI+PC9hcHAtbW9kYWwtdmlldy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -50,13 +50,13 @@ export class StagesComponent {
|
|
|
50
50
|
}
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
54
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
53
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StagesComponent, deps: [{ token: i1.AngularPConnectService }, { token: i2.Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
54
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: StagesComponent, isStandalone: true, selector: "app-stages", inputs: { pConn$: "pConn$" }, ngImport: i0, template: "<div class=\"psdk-stages-bar\">\n <div class=\"psdk-stages-chevron\" *ngFor=\"let stage of arStageResults$\">\n <div *ngIf=\"stage.visited_status == 'completed'\" class=\"psdk-stages-inner-past\">\n <img class=\"psdk-stages-icon\" src=\"{{ checkSvgIcon$ }}\" />{{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'active'\" class=\"psdk-stages-inner-present\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'future'\" class=\"psdk-stages-inner-future\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n </div>\n</div>\n\n<div class=\"psdk-stages-divider\"></div>\n", styles: [".psdk-stages{padding:.625rem 0rem}.psdk-stages-span span{padding:.3125rem;font-weight:700;font-size:1.5rem}.psdk-stages-div{display:inline-flex;padding:.3125rem;font-weight:700;font-size:1.3rem;color:var(--app-neutral-color)}.psdk-stages-past{color:var(--app-primary-color);padding-right:.3125rem}.psdk-stages-present{color:var(--app-secondary-color);padding-right:.3125rem}.psdk-stages-future{color:var(--app-neutral-color);padding-right:.3125rem}.psdk-stages-full{display:block}.psdk-stages-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-stages-icon{width:1.4rem;display:inline-block;vertical-align:top}.psdk-stages-bar{margin:1rem 0rem;background-color:var(--app-form-color);border-radius:.5rem;border:.0625rem solid var(--app-neutral-light-color);overflow:hidden;display:flex;flex-wrap:wrap}.psdk-stages-chevron{position:relative;padding:.5rem;display:flex;justify-content:center;align-items:center;max-width:100%;min-width:0px;flex-grow:1;flex-shrink:1}.psdk-stages-chevron:not(:last-child):after{content:\"\";position:absolute;display:block;z-index:2;width:1.75rem;right:-.4375rem;background:inherit;border-style:solid;border-color:#cfcfcf;border-width:.0625rem .0625rem 0px 0px;border-radius:0px .3125rem 0px 0px;transform:rotate(45deg) skew(15deg,15deg);height:2rem}.psdk-stages-inner-past{color:var(--app-inverse-form-color);font-size:1rem}.psdk-stages-inner-present{color:var(--app-primary-color);font-weight:700;font-size:1rem}.psdk-stages-inner-future{color:var(--app-neutral-color);font-size:1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
55
55
|
}
|
|
56
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StagesComponent, decorators: [{
|
|
57
57
|
type: Component,
|
|
58
|
-
args: [{ selector: 'app-stages', standalone: true, imports: [CommonModule], template: "<div class=\"psdk-stages-bar\">\n <div class=\"psdk-stages-chevron\" *ngFor=\"let stage of arStageResults$\">\n <div *ngIf=\"stage.visited_status == 'completed'\" class=\"psdk-stages-inner-past\">\n <img class=\"psdk-stages-icon\" src=\"{{ checkSvgIcon$ }}\" />{{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'active'\" class=\"psdk-stages-inner-present\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'future'\" class=\"psdk-stages-inner-future\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n </div>\n</div>\n\n<div class=\"psdk-stages-divider\"></div>\n", styles: [".psdk-stages{padding:.625rem 0rem}.psdk-stages-span span{padding:.3125rem;font-weight:700;font-size:1.5rem}.psdk-stages-div{display:inline-flex;padding:.3125rem;font-weight:700;font-size:1.3rem;color:var(--app-neutral-color)}.psdk-stages-past{color:var(--app-primary-color);padding-right:.3125rem}.psdk-stages-present{color:var(--app-secondary-color);padding-right:.3125rem}.psdk-stages-future{color:var(--app-neutral-color);padding-right:.3125rem}.psdk-stages-full{display:block}.psdk-stages-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-stages-icon{width:1.4rem;display:inline-block;vertical-align:top}.psdk-stages-bar{margin:1rem 0rem;background-color:var(--app-form-color);border-radius:.5rem;border:.0625rem solid var(--app-neutral-light-color);overflow:hidden;
|
|
58
|
+
args: [{ selector: 'app-stages', standalone: true, imports: [CommonModule], template: "<div class=\"psdk-stages-bar\">\n <div class=\"psdk-stages-chevron\" *ngFor=\"let stage of arStageResults$\">\n <div *ngIf=\"stage.visited_status == 'completed'\" class=\"psdk-stages-inner-past\">\n <img class=\"psdk-stages-icon\" src=\"{{ checkSvgIcon$ }}\" />{{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'active'\" class=\"psdk-stages-inner-present\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'future'\" class=\"psdk-stages-inner-future\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n </div>\n</div>\n\n<div class=\"psdk-stages-divider\"></div>\n", styles: [".psdk-stages{padding:.625rem 0rem}.psdk-stages-span span{padding:.3125rem;font-weight:700;font-size:1.5rem}.psdk-stages-div{display:inline-flex;padding:.3125rem;font-weight:700;font-size:1.3rem;color:var(--app-neutral-color)}.psdk-stages-past{color:var(--app-primary-color);padding-right:.3125rem}.psdk-stages-present{color:var(--app-secondary-color);padding-right:.3125rem}.psdk-stages-future{color:var(--app-neutral-color);padding-right:.3125rem}.psdk-stages-full{display:block}.psdk-stages-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-stages-icon{width:1.4rem;display:inline-block;vertical-align:top}.psdk-stages-bar{margin:1rem 0rem;background-color:var(--app-form-color);border-radius:.5rem;border:.0625rem solid var(--app-neutral-light-color);overflow:hidden;display:flex;flex-wrap:wrap}.psdk-stages-chevron{position:relative;padding:.5rem;display:flex;justify-content:center;align-items:center;max-width:100%;min-width:0px;flex-grow:1;flex-shrink:1}.psdk-stages-chevron:not(:last-child):after{content:\"\";position:absolute;display:block;z-index:2;width:1.75rem;right:-.4375rem;background:inherit;border-style:solid;border-color:#cfcfcf;border-width:.0625rem .0625rem 0px 0px;border-radius:0px .3125rem 0px 0px;transform:rotate(45deg) skew(15deg,15deg);height:2rem}.psdk-stages-inner-past{color:var(--app-inverse-form-color);font-size:1rem}.psdk-stages-inner-present{color:var(--app-primary-color);font-weight:700;font-size:1rem}.psdk-stages-inner-future{color:var(--app-neutral-color);font-size:1rem}\n"] }]
|
|
59
59
|
}], ctorParameters: () => [{ type: i1.AngularPConnectService }, { type: i2.Utils }], propDecorators: { pConn$: [{
|
|
60
60
|
type: Input
|
|
61
61
|
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhZ2VzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9zdGFnZXMvc3RhZ2VzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9zdGFnZXMvc3RhZ2VzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQWdCaEMsTUFBTSxPQUFPLGVBQWU7SUFhMUIsWUFDVSxlQUF1QyxFQUN2QyxLQUFZO1FBRFosb0JBQWUsR0FBZixlQUFlLENBQXdCO1FBQ3ZDLFVBQUssR0FBTCxLQUFLLENBQU87UUFadEIsNEJBQTRCO1FBQzVCLHdCQUFtQixHQUF3QixFQUFFLENBQUM7UUFDOUMsV0FBTSxHQUFpQixLQUFLLENBQUM7SUFXMUIsQ0FBQztJQUVKLFFBQVE7UUFDTiw4RkFBOEY7UUFDOUYsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsNkJBQTZCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV4RyxpRkFBaUY7UUFDakYsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7UUFDMUYsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsWUFBWSxFQUFFLFNBQVMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDM0MsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzNDLENBQUM7SUFDSCxDQUFDO0lBRUQsbURBQW1EO0lBQ25ELGFBQWE7UUFDWCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGNBQWM7UUFDWixnRUFBZ0U7UUFDaEUsNEJBQTRCO1FBQzVCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckUsd0RBQXdEO1FBQ3hELElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFnQixDQUFDO1FBRWhHLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3hDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUVwQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztZQUV2RSxpREFBaUQ7WUFDakQsSUFBSSxRQUFRLElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxlQUFlLEdBQUcsUUFBUSxDQUFDO2dCQUNoQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDMUUsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0EvRFUsZUFBZTttR0FBZixlQUFlLG9HQ2xCNUIsMnZCQWVBLDRqRERDWSxZQUFZOzs0RkFFWCxlQUFlO2tCQVAzQixTQUFTOytCQUNFLFlBQVksY0FHVixJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUM7K0dBR2QsTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbnRlcnZhbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQW5ndWxhclBDb25uZWN0RGF0YSwgQW5ndWxhclBDb25uZWN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19icmlkZ2UvYW5ndWxhci1wY29ubmVjdCc7XG5pbXBvcnQgeyBVdGlscyB9IGZyb20gJy4uLy4uLy4uL19oZWxwZXJzL3V0aWxzJztcblxuaW50ZXJmYWNlIFN0YWdlc1Byb3BzIHtcbiAgLy8gSWYgYW55LCBlbnRlciBhZGRpdGlvbmFsIHByb3BzIHRoYXQgb25seSBleGlzdCBvbiB0aGlzIGNvbXBvbmVudFxuICBzdGFnZXM6IGFueVtdO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtc3RhZ2VzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0YWdlcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0YWdlcy5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBTdGFnZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHBDb25uJDogdHlwZW9mIFBDb25uZWN0O1xuXG4gIC8vIFVzZWQgd2l0aCBBbmd1bGFyUENvbm5lY3RcbiAgYW5ndWxhclBDb25uZWN0RGF0YTogQW5ndWxhclBDb25uZWN0RGF0YSA9IHt9O1xuICBQQ29yZSQ6IHR5cGVvZiBQQ29yZSA9IFBDb3JlO1xuICBjb25maWdQcm9wcyQ6IFN0YWdlc1Byb3BzO1xuXG4gIGFyU3RhZ2VSZXN1bHRzJDogYW55W107XG4gIGxhc3RTdGFnZSQ6IGFueTtcbiAgY2hlY2tTdmdJY29uJDogc3RyaW5nO1xuICBrZXk6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFuZ3VsYXJQQ29ubmVjdDogQW5ndWxhclBDb25uZWN0U2VydmljZSxcbiAgICBwcml2YXRlIHV0aWxzOiBVdGlsc1xuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gRmlyc3QgdGhpbmcgaW4gaW5pdGlhbGl6YXRpb24gaXMgcmVnaXN0ZXJpbmcgYW5kIHN1YnNjcmliaW5nIHRvIHRoZSBBbmd1bGFyUENvbm5lY3Qgc2VydmljZVxuICAgIHRoaXMuYW5ndWxhclBDb25uZWN0RGF0YSA9IHRoaXMuYW5ndWxhclBDb25uZWN0LnJlZ2lzdGVyQW5kU3Vic2NyaWJlQ29tcG9uZW50KHRoaXMsIHRoaXMub25TdGF0ZUNoYW5nZSk7XG5cbiAgICAvLyBjb25zdCBpbWFnZVBhdGggPSB0aGlzLnV0aWxzLmdldEljb25QYXRoKHRoaXMudXRpbHMuZ2V0U0RLU3RhdGljQ29udGVudFVybCgpKTtcbiAgICB0aGlzLmNoZWNrU3ZnSWNvbiQgPSB0aGlzLnV0aWxzLmdldEltYWdlU3JjKCdjaGVjaycsIHRoaXMudXRpbHMuZ2V0U0RLU3RhdGljQ29udGVudFVybCgpKTtcbiAgICB0aGlzLmtleSA9IGAke3RoaXMucENvbm4kLmdldENhc2VJbmZvKCkuZ2V0Q2xhc3NOYW1lKCl9IUNBU0UhJHt0aGlzLnBDb25uJC5nZXRDYXNlSW5mbygpLmdldE5hbWUoKX1gLnRvVXBwZXJDYXNlKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hbmd1bGFyUENvbm5lY3REYXRhLnVuc3Vic2NyaWJlRm4pIHtcbiAgICAgIHRoaXMuYW5ndWxhclBDb25uZWN0RGF0YS51bnN1YnNjcmliZUZuKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FsbGJhY2sgcGFzc2VkIHdoZW4gc3Vic2NyaWJpbmcgdG8gc3RvcmUgY2hhbmdlXG4gIG9uU3RhdGVDaGFuZ2UoKSB7XG4gICAgdGhpcy5jaGVja0FuZFVwZGF0ZSgpO1xuICB9XG5cbiAgY2hlY2tBbmRVcGRhdGUoKSB7XG4gICAgLy8gU2hvdWxkIGFsd2F5cyBjaGVjayB0aGUgYnJpZGdlIHRvIHNlZSBpZiB0aGUgY29tcG9uZW50IHNob3VsZFxuICAgIC8vIHVwZGF0ZSBpdHNlbGYgKHJlLXJlbmRlcilcbiAgICBjb25zdCBiVXBkYXRlU2VsZiA9IHRoaXMuYW5ndWxhclBDb25uZWN0LnNob3VsZENvbXBvbmVudFVwZGF0ZSh0aGlzKTtcblxuICAgIC8vIE9OTFkgY2FsbCB1cGRhdGVTZWxmIHdoZW4gdGhlIGNvbXBvbmVudCBzaG91bGQgdXBkYXRlXG4gICAgaWYgKGJVcGRhdGVTZWxmKSB7XG4gICAgICB0aGlzLnVwZGF0ZVNlbGYoKTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVTZWxmKCkge1xuICAgIHRoaXMuY29uZmlnUHJvcHMkID0gdGhpcy5wQ29ubiQucmVzb2x2ZUNvbmZpZ1Byb3BzKHRoaXMucENvbm4kLmdldENvbmZpZ1Byb3BzKCkpIGFzIFN0YWdlc1Byb3BzO1xuXG4gICAgY29uc3QgdGltZXIgPSBpbnRlcnZhbCg1MCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRpbWVyLnVuc3Vic2NyaWJlKCk7XG5cbiAgICAgIGNvbnN0IGFyU3RhZ2VzID0gdGhpcy5hbmd1bGFyUENvbm5lY3QuZ2V0Q29tcG9uZW50UHJvcCh0aGlzLCAnc3RhZ2VzJyk7XG5cbiAgICAgIC8vIHRoaXMuc3RhZ2VSZXN1bHRzJCA9IHRoaXMuY29uZmlnUHJvcHMkLnN0YWdlcztcbiAgICAgIGlmIChhclN0YWdlcyAhPSBudWxsKSB7XG4gICAgICAgIHRoaXMuYXJTdGFnZVJlc3VsdHMkID0gYXJTdGFnZXM7XG4gICAgICAgIHRoaXMubGFzdFN0YWdlJCA9IHRoaXMuYXJTdGFnZVJlc3VsdHMkW3RoaXMuYXJTdGFnZVJlc3VsdHMkLmxlbmd0aCAtIDFdO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHNkay1zdGFnZXMtYmFyXCI+XG4gIDxkaXYgY2xhc3M9XCJwc2RrLXN0YWdlcy1jaGV2cm9uXCIgKm5nRm9yPVwibGV0IHN0YWdlIG9mIGFyU3RhZ2VSZXN1bHRzJFwiPlxuICAgIDxkaXYgKm5nSWY9XCJzdGFnZS52aXNpdGVkX3N0YXR1cyA9PSAnY29tcGxldGVkJ1wiIGNsYXNzPVwicHNkay1zdGFnZXMtaW5uZXItcGFzdFwiPlxuICAgICAgPGltZyBjbGFzcz1cInBzZGstc3RhZ2VzLWljb25cIiBzcmM9XCJ7eyBjaGVja1N2Z0ljb24kIH19XCIgLz57eyBQQ29yZSQuZ2V0TG9jYWxlVXRpbHMoKS5nZXRMb2NhbGVWYWx1ZShzdGFnZS5uYW1lLCAnJywga2V5KSB9fVxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJzdGFnZS52aXNpdGVkX3N0YXR1cyA9PSAnYWN0aXZlJ1wiIGNsYXNzPVwicHNkay1zdGFnZXMtaW5uZXItcHJlc2VudFwiPlxuICAgICAge3sgUENvcmUkLmdldExvY2FsZVV0aWxzKCkuZ2V0TG9jYWxlVmFsdWUoc3RhZ2UubmFtZSwgJycsIGtleSkgfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwic3RhZ2UudmlzaXRlZF9zdGF0dXMgPT0gJ2Z1dHVyZSdcIiBjbGFzcz1cInBzZGstc3RhZ2VzLWlubmVyLWZ1dHVyZVwiPlxuICAgICAge3sgUENvcmUkLmdldExvY2FsZVV0aWxzKCkuZ2V0TG9jYWxlVmFsdWUoc3RhZ2UubmFtZSwgJycsIGtleSkgfX1cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInBzZGstc3RhZ2VzLWRpdmlkZXJcIj48L2Rpdj5cbiJdfQ==
|