@vendure/admin-ui 2.0.2 → 2.0.3
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/catalog/components/product-variant-list/product-variant-list-bulk-actions.d.ts +6 -0
- package/catalog/public_api.d.ts +1 -1
- package/core/common/base-detail.component.d.ts +1 -0
- package/core/common/component-registry-types.d.ts +2 -2
- package/core/common/generated-types.d.ts +13 -0
- package/core/common/version.d.ts +1 -1
- package/core/components/theme-switcher/theme-switcher.component.d.ts +1 -0
- package/core/data/definitions/product-definitions.d.ts +1 -0
- package/core/data/providers/product-data.service.d.ts +1 -0
- package/core/shared/components/data-table-filters/data-table-filters.component.d.ts +1 -0
- package/core/shared/components/dropdown/dropdown-menu.component.d.ts +2 -0
- package/core/shared/components/dropdown/dropdown.component.d.ts +1 -1
- package/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.d.ts +6 -0
- package/core/shared/dynamic-form-inputs/customer-group-form-input/customer-group-form-input.component.d.ts +5 -2
- package/core/shared/dynamic-form-inputs/product-multi-selector-form-input/product-multi-selector-form-input.component.d.ts +4 -2
- package/core/shared/dynamic-form-inputs/product-selector-form-input/product-selector-form-input.component.d.ts +8 -5
- package/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.d.ts +1 -4
- package/core/shared/dynamic-form-inputs/relation-form-input/customer/relation-customer-input.component.d.ts +0 -1
- package/core/shared/shared.module.d.ts +2 -1
- package/esm2022/catalog/catalog.module.mjs +5 -1
- package/esm2022/catalog/components/asset-list/asset-list.component.mjs +3 -3
- package/esm2022/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.mjs +11 -14
- package/esm2022/catalog/components/product-list/product-list.component.mjs +3 -3
- package/esm2022/catalog/components/product-options-editor/product-options-editor.component.mjs +1 -1
- package/esm2022/catalog/components/product-variant-detail/product-variant-detail.component.mjs +4 -5
- package/esm2022/catalog/components/product-variant-list/product-variant-list-bulk-actions.mjs +92 -0
- package/esm2022/catalog/components/product-variant-list/product-variant-list.component.mjs +5 -5
- package/esm2022/catalog/public_api.mjs +2 -2
- package/esm2022/core/common/base-detail.component.mjs +3 -3
- package/esm2022/core/common/base-list.component.mjs +2 -2
- package/esm2022/core/common/component-registry-types.mjs +1 -1
- package/esm2022/core/common/generated-types.mjs +2 -1
- package/esm2022/core/common/title-setter.mjs +1 -1
- package/esm2022/core/common/version.mjs +2 -2
- package/esm2022/core/components/base-nav/base-nav.component.mjs +1 -1
- package/esm2022/core/components/main-nav/main-nav.component.mjs +2 -2
- package/esm2022/core/components/theme-switcher/theme-switcher.component.mjs +15 -5
- package/esm2022/core/components/user-menu/user-menu.component.mjs +3 -3
- package/esm2022/core/data/definitions/product-definitions.mjs +9 -1
- package/esm2022/core/data/providers/interceptor.mjs +1 -1
- package/esm2022/core/data/providers/product-data.service.mjs +7 -2
- package/esm2022/core/data/utils/transform-relation-custom-field-inputs.mjs +2 -2
- package/esm2022/core/providers/bulk-action-registry/bulk-action-types.mjs +1 -1
- package/esm2022/core/providers/custom-field-component/custom-field-component.service.mjs +1 -1
- package/esm2022/core/providers/data-table/data-table-filter-collection.mjs +2 -2
- package/esm2022/core/providers/local-storage/local-storage.service.mjs +1 -1
- package/esm2022/core/providers/page/page.service.mjs +1 -1
- package/esm2022/core/shared/components/action-bar-items/action-bar-items.component.mjs +1 -1
- package/esm2022/core/shared/components/assign-to-channel-dialog/assign-to-channel-dialog.component.mjs +1 -1
- package/esm2022/core/shared/components/chip/chip.component.mjs +2 -2
- package/esm2022/core/shared/components/currency-code-selector/currency-code-selector.component.mjs +1 -1
- package/esm2022/core/shared/components/data-table/data-table.component.mjs +1 -1
- package/esm2022/core/shared/components/data-table-filters/data-table-filters.component.mjs +24 -15
- package/esm2022/core/shared/components/dropdown/dropdown-menu.component.mjs +65 -24
- package/esm2022/core/shared/components/dropdown/dropdown.component.mjs +1 -1
- package/esm2022/core/shared/components/facet-value-selector/facet-value-selector.component.mjs +3 -3
- package/esm2022/core/shared/components/language-code-selector/language-code-selector.component.mjs +1 -1
- package/esm2022/core/shared/components/rich-text-editor/prosemirror/custom-nodes.mjs +4 -3
- package/esm2022/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.mjs +16 -3
- package/esm2022/core/shared/components/tabbed-custom-fields/tabbed-custom-fields.component.mjs +3 -1
- package/esm2022/core/shared/dynamic-form-inputs/customer-group-form-input/customer-group-form-input.component.mjs +7 -4
- package/esm2022/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.mjs +9 -8
- package/esm2022/core/shared/dynamic-form-inputs/product-multi-selector-form-input/product-multi-selector-form-input.component.mjs +3 -2
- package/esm2022/core/shared/dynamic-form-inputs/product-selector-form-input/product-selector-form-input.component.mjs +10 -5
- package/esm2022/core/shared/dynamic-form-inputs/register-dynamic-input-components.mjs +1 -1
- package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.mjs +14 -15
- package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/customer/relation-customer-input.component.mjs +1 -3
- package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/product/relation-product-input.component.mjs +3 -3
- package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/product-variant/relation-product-variant-input.component.mjs +3 -3
- package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/relation-card/relation-card.component.mjs +3 -3
- package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/relation-form-input.component.mjs +2 -2
- package/esm2022/core/shared/pipes/state-i18n-token.pipe.mjs +1 -1
- package/esm2022/core/shared/shared.module.mjs +9 -4
- package/esm2022/customer/components/customer-detail/customer-detail.component.mjs +27 -27
- package/esm2022/customer/components/customer-list/customer-list.component.mjs +24 -24
- package/esm2022/customer/customer.module.mjs +9 -2
- package/esm2022/customer/customer.routes.mjs +1 -1
- package/esm2022/dashboard/components/dashboard/dashboard.component.mjs +1 -1
- package/esm2022/dashboard/default-widgets.mjs +2 -1
- package/esm2022/dashboard/widgets/order-chart-widget/order-chart-widget.component.mjs +12 -12
- package/esm2022/marketing/marketing.module.mjs +1 -1
- package/esm2022/order/components/order-detail/order-detail.component.mjs +8 -8
- package/esm2022/order/components/order-list/order-list.component.mjs +9 -2
- package/esm2022/order/components/order-table/order-table.component.mjs +3 -3
- package/esm2022/order/order.module.mjs +1 -1
- package/esm2022/order/order.routes.mjs +1 -1
- package/esm2022/settings/components/shipping-method-detail/shipping-method-detail.component.mjs +3 -3
- package/esm2022/settings/components/tax-rate-detail/tax-rate-detail.component.mjs +8 -8
- package/esm2022/settings/settings.module.mjs +1 -1
- package/fesm2022/vendure-admin-ui-catalog.mjs +109 -75
- package/fesm2022/vendure-admin-ui-catalog.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-core.mjs +190 -89
- package/fesm2022/vendure-admin-ui-core.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-customer.mjs +56 -49
- package/fesm2022/vendure-admin-ui-customer.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-dashboard.mjs +12 -11
- package/fesm2022/vendure-admin-ui-dashboard.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-marketing.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-order.mjs +17 -10
- package/fesm2022/vendure-admin-ui-order.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-settings.mjs +9 -9
- package/fesm2022/vendure-admin-ui-settings.mjs.map +1 -1
- package/package.json +19 -19
- package/static/i18n-messages/cs.json +772 -770
- package/static/i18n-messages/de.json +773 -771
- package/static/i18n-messages/en.json +773 -771
- package/static/i18n-messages/es.json +773 -771
- package/static/i18n-messages/fr.json +773 -771
- package/static/i18n-messages/it.json +773 -771
- package/static/i18n-messages/pl.json +773 -771
- package/static/i18n-messages/pt_BR.json +773 -771
- package/static/i18n-messages/pt_PT.json +773 -771
- package/static/i18n-messages/ru.json +773 -771
- package/static/i18n-messages/uk.json +773 -771
- package/static/i18n-messages/zh_Hans.json +773 -771
- package/static/i18n-messages/zh_Hant.json +773 -771
- package/static/styles/global/_buttons.scss +63 -49
- package/static/styles/global/_forms.scss +5 -1
- package/static/styles/theme/default.scss +2 -0
- package/static/theme.min.css +1 -1
- package/catalog/components/product-variant-list/product-list-bulk-actions.d.ts +0 -3
- package/esm2022/catalog/components/product-variant-list/product-list-bulk-actions.mjs +0 -55
|
@@ -159,4 +159,4 @@ export class DefaultInterceptor {
|
|
|
159
159
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: DefaultInterceptor, decorators: [{
|
|
160
160
|
type: Injectable
|
|
161
161
|
}], ctorParameters: function () { return [{ type: i1.DataService }, { type: i0.Injector }, { type: i2.AuthService }, { type: i3.Router }, { type: i4.LocalStorageService }]; } });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2RhdGEvcHJvdmlkZXJzL2ludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxpQkFBaUIsRUFLakIsWUFBWSxHQUNmLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBR3JGLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBR2hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOzs7Ozs7QUFJeEYsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsWUFBWSxDQUFDO0FBRWhEOzs7R0FHRztBQUVILE1BQU0sT0FBTyxrQkFBa0I7SUFJM0IsWUFDWSxXQUF3QixFQUN4QixRQUFrQixFQUNsQixXQUF3QixFQUN4QixNQUFjLEVBQ2QsbUJBQXdDO1FBSnhDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFSbkMsZ0JBQVcsR0FBaUMsUUFBUSxDQUFDO1FBVWxFLElBQUksQ0FBQyxXQUFXLEdBQUcsWUFBWSxFQUFFLENBQUMsV0FBVyxDQUFDO1FBQzlDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxZQUFZLEVBQUUsQ0FBQyxrQkFBa0Is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bUJBQW1CLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsQ0FBQzthQUN4RDtTQUNKO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ssbUJBQW1CLENBQUMsSUFBWSxFQUFFLElBQVk7UUFDbEQsT0FBTyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3pELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssbUJBQW1CLENBQUMsUUFBZ0I7UUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUM3RCxPQUFPLFFBQVEsQ0FBQztTQUNuQjtRQUNELE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2QyxDQUFDOzhHQXRKUSxrQkFBa0I7a0hBQWxCLGtCQUFrQjs7MkZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBIdHRwRXJyb3JSZXNwb25zZSxcclxuICAgIEh0dHBFdmVudCxcclxuICAgIEh0dHBIYW5kbGVyLFxyXG4gICAgSHR0cEludGVyY2VwdG9yLFxyXG4gICAgSHR0cFJlcXVlc3QsXHJcbiAgICBIdHRwUmVzcG9uc2UsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBtYXJrZXIgYXMgXyB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcic7XHJcbmltcG9ydCB7IERFRkFVTFRfQVVUSF9UT0tFTl9IRUFERVJfS0VZIH0gZnJvbSAnQHZlbmR1cmUvY29tbW9uL2xpYi9zaGFyZWQtY29uc3RhbnRzJztcclxuaW1wb3J0IHsgQWRtaW5VaUNvbmZpZyB9IGZyb20gJ0B2ZW5kdXJlL2NvbW1vbi9saWIvc2hhcmVkLXR5cGVzJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IGdldEFwcENvbmZpZyB9IGZyb20gJy4uLy4uL2FwcC5jb25maWcnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9hdXRoL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9wcm92aWRlcnMvbG9jYWwtc3RvcmFnZS9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uc2VydmljZSc7XHJcblxyXG5pbXBvcnQgeyBEYXRhU2VydmljZSB9IGZyb20gJy4vZGF0YS5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBjb25zdCBBVVRIX1JFRElSRUNUX1BBUkFNID0gJ3JlZGlyZWN0VG8nO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBkZWZhdWx0IGludGVyY2VwdG9yIGV4YW1pbmVzIGFsbCBIVFRQIHJlcXVlc3RzICYgcmVzcG9uc2VzIGFuZCBhdXRvbWF0aWNhbGx5IHVwZGF0ZXMgdGhlIHJlcXVlc3Rpbmcgc3RhdGVcclxuICogYW5kIHNob3dzIGVycm9yIG5vdGlmaWNhdGlvbnMuXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0SW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0b2tlbk1ldGhvZDogQWRtaW5VaUNvbmZpZ1sndG9rZW5NZXRob2QnXSA9ICdjb29raWUnO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRoVG9rZW5IZWFkZXJLZXk6IHN0cmluZztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgICAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgICAgIHByaXZhdGUgbG9jYWxTdG9yYWdlU2VydmljZTogTG9jYWxTdG9yYWdlU2VydmljZSxcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMudG9rZW5NZXRob2QgPSBnZXRBcHBDb25maWcoKS50b2tlbk1ldGhvZDtcclxuICAgICAgICB0aGlzLmF1dGhUb2tlbkhlYWRlcktleSA9IGdldEFwcENvbmZpZygpLmF1dGhUb2tlbkhlYWRlcktleSB8fCBERUZBVUxUX0FVVEhfVE9LRU5fSEVBREVSX0tFWTtcclxuICAgIH1cclxuXHJcbiAgICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLmNsaWVudC5zdGFydFJlcXVlc3QoKS5zdWJzY3JpYmUoKTtcclxuICAgICAgICByZXR1cm4gdGhpcy5kYXRhU2VydmljZS5jbGllbnQudWlTdGF0ZSgpLnNpbmdsZSQucGlwZShcclxuICAgICAgICAgICAgc3dpdGNoTWFwKCh7IHVpU3RhdGUgfSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcmVxdWVzdCA9IHJlcS5jbG9uZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgc2V0UGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhbmd1YWdlQ29kZTogdWlTdGF0ZT8uY29udGVudExhbmd1YWdlID8/ICcnLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KTtcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgIHRhcChcclxuICAgICAgICAgICAgICAgIGV2ZW50ID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGVja0ZvckF1dGhUb2tlbihldmVudCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm90aWZ5T25FcnJvcihldmVudCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2UuY2xpZW50LmNvbXBsZXRlUmVxdWVzdCgpLnN1YnNjcmliZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBlcnIgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdGlmeU9uRXJyb3IoZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5jbGllbnQuY29tcGxldGVSZXF1ZXN0KCkuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5RXJyb3JOb3RpZmljYXRpb24oZXJyLm1lc3NhZ2UpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICksXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIG5vdGlmeU9uRXJyb3IocmVzcG9uc2U6IEh0dHBSZXNwb25zZTxhbnk+IHwgSHR0cEVycm9yUmVzcG9uc2UpIHtcclxuICAgICAgICBpZiAocmVzcG9uc2UgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xyXG4gICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSAwKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB7IGFwaUhvc3QsIGFwaVBvcnQgfSA9IGdldEFwcENvbmZpZygpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5RXJyb3JOb3RpZmljYXRpb24oXyhgZXJyb3IuY291bGQtbm90LWNvbm5lY3QtdG8tc2VydmVyYCksIHtcclxuICAgICAgICAgICAgICAgICAgICB1cmw6IGAke2FwaUhvc3R9OiR7YXBpUG9ydH1gLFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSA1MDMgJiYgcmVzcG9uc2UudXJsPy5lbmRzV2l0aCgnL2hlYWx0aCcpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXlFcnJvck5vdGlmaWNhdGlvbihfKGBlcnJvci5oZWFsdGgtY2hlY2stZmFpbGVkYCkpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5RXJyb3JOb3RpZmljYXRpb24odGhpcy5leHRyYWN0RXJyb3JGcm9tSHR0cFJlc3BvbnNlKHJlc3BvbnNlKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAvLyBHcmFwaFFMIGVycm9ycyBzdGlsbCByZXR1cm4gMjAwIE9LIHJlc3BvbnNlcywgYnV0IGhhdmUgdGhlIGFjdHVhbCBlcnJvciBtZXNzYWdlXHJcbiAgICAgICAgICAgIC8vIGluc2lkZSB0aGUgYm9keSBvZiB0aGUgcmVzcG9uc2UuXHJcbiAgICAgICAgICAgIGNvbnN0IGdyYXBoUUxFcnJvcnMgPSByZXNwb25zZS5ib2R5LmVycm9ycztcclxuICAgICAgICAgICAgaWYgKGdyYXBoUUxFcnJvcnMgJiYgQXJyYXkuaXNBcnJheShncmFwaFFMRXJyb3JzKSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZmlyc3RDb2RlOiBzdHJpbmcgPSBncmFwaFFMRXJyb3JzWzBdPy5leHRlbnNpb25zPy5jb2RlO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmIChmaXJzdENvZGUgPT09ICdGT1JCSURERU4nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5sb2dPdXQoKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGxvZ2luVXJsIH0gPSBnZXRBcHBDb25maWcoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlcmUgaXMgYSBgbG9naW5VcmxgIHdoaWNoIGlzIGV4dGVybmFsIHRvIHRoZSBBZG1pblVJLCByZWRpcmVjdCB0byBpdCAod2l0aCBubyBxdWVyeSBwYXJhbWV0ZXJzKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobG9naW5VcmwgJiYgIXRoaXMuYXJlVXJsc09uU2FtZU9yaWdpbihsb2dpblVybCwgd2luZG93LmxvY2F0aW9uLm9yaWdpbikpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gbG9naW5Vcmw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEVsc2UsIHdlIGJ1aWxkIHRoZSBsb2dpbiBwYXRoIGZyb20gdGhlIGxvZ2luIHVybCBpZiBvbmUgaXMgcHJvdmlkZWQgb3IgZmFsbGJhY2sgdG8gYC9sb2dpbmBcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbG9naW5QYXRoID0gbG9naW5VcmwgPyB0aGlzLmdldFBhdGhGcm9tTG9naW5VcmwobG9naW5VcmwpIDogJy9sb2dpbic7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZS5pbmNsdWRlcyhsb2dpblBhdGgpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXRoID0gZ3JhcGhRTEVycm9yc1swXS5wYXRoLmpvaW4oJyA+ICcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5RXJyb3JOb3RpZmljYXRpb24oXyhgZXJyb3IuNDAzLWZvcmJpZGRlbmApLCB7IHBhdGggfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIE5hdmlnYXRlIHRvIHRoZSBgbG9naW5QYXRoYCByb3V0ZSBieSBlbnN1cmluZyB0aGUgcXVlcnkgcGFyYW0gaW4gY2hhcmdlIG9mIHRoZSByZWRpcmVjdGlvbiBpcyBwcm92aWRlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbbG9naW5QYXRoXSwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlcnlQYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbQVVUSF9SRURJUkVDVF9QQVJBTV06IGJ0b2EodGhpcy5yb3V0ZXIudXJsKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChmaXJzdENvZGUgPT09ICdDSEFOTkVMX05PVF9GT1VORCcpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gZ3JhcGhRTEVycm9ycy5tYXAoZXJyID0+IGVyci5tZXNzYWdlKS5qb2luKCdcXG4nKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXlFcnJvck5vdGlmaWNhdGlvbihtZXNzYWdlKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2UucmVtb3ZlKCdhY3RpdmVDaGFubmVsVG9rZW4nKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGdyYXBoUUxFcnJvcnMubWFwKGVyciA9PiBlcnIubWVzc2FnZSkuam9pbignXFxuJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5RXJyb3JOb3RpZmljYXRpb24obWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBleHRyYWN0RXJyb3JGcm9tSHR0cFJlc3BvbnNlKHJlc3BvbnNlOiBIdHRwRXJyb3JSZXNwb25zZSk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QgZXJyb3JzID0gcmVzcG9uc2UuZXJyb3IuZXJyb3JzO1xyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGVycm9ycykpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGVycm9ycy5tYXAoZSA9PiBlLm1lc3NhZ2UpLmpvaW4oJ1xcbicpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5tZXNzYWdlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFdlIG5lZWQgdG8gbGF6aWx5IGluamVjdCB0aGUgTm90aWZpY2F0aW9uU2VydmljZSBzaW5jZSBpdCBkZXBlbmRzIG9uIHRoZSBJMThuU2VydmljZSB3aGljaFxyXG4gICAgICogZXZlbnR1YWxseSBkZXBlbmRzIG9uIHRoZSBIdHRwQ2xpZW50ICh1c2VkIHRvIGxvYWQgbWVzc2FnZXMgZnJvbSBqc29uIGZpbGVzKS4gSWYgd2Ugd2VyZSB0b1xyXG4gICAgICogZGlyZWN0bHkgaW5qZWN0IE5vdGlmaWNhdGlvblNlcnZpY2UgaW50byB0aGUgY29uc3RydWN0b3IsIHdlIGdldCBhIGN5Y2xpYyBkZXBlbmRlbmN5LlxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIGRpc3BsYXlFcnJvck5vdGlmaWNhdGlvbihtZXNzYWdlOiBzdHJpbmcsIHZhcnM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3Qgbm90aWZpY2F0aW9uU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0PE5vdGlmaWNhdGlvblNlcnZpY2U+KE5vdGlmaWNhdGlvblNlcnZpY2UpO1xyXG4gICAgICAgIG5vdGlmaWNhdGlvblNlcnZpY2UuZXJyb3IobWVzc2FnZSwgdmFycyk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBJZiB0aGUgc2VydmVyIGlzIGNvbmZpZ3VyZWQgdG8gdXNlIHRoZSBcImJlYXJlclwiIHRva2VuTWV0aG9kLCBlYWNoIHJlc3BvbnNlIHNob3VsZCBiZSBjaGVja2VkXHJcbiAgICAgKiBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhbiBhdXRoIHRva2VuLlxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIGNoZWNrRm9yQXV0aFRva2VuKHJlc3BvbnNlOiBIdHRwUmVzcG9uc2U8YW55Pikge1xyXG4gICAgICAgIGlmICh0aGlzLnRva2VuTWV0aG9kID09PSAnYmVhcmVyJykge1xyXG4gICAgICAgICAgICBjb25zdCBhdXRoVG9rZW4gPSByZXNwb25zZS5oZWFkZXJzLmdldCh0aGlzLmF1dGhUb2tlbkhlYWRlcktleSk7XHJcbiAgICAgICAgICAgIGlmIChhdXRoVG9rZW4pIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9jYWxTdG9yYWdlU2VydmljZS5zZXQoJ2F1dGhUb2tlbicsIGF1dGhUb2tlbik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBEZXRlcm1pbmUgaWYgdHdvIHVybHMgYXJlIG9uIHRoZSBzYW1lIG9yaWdpbi5cclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBhcmVVcmxzT25TYW1lT3JpZ2luKHVybEE6IHN0cmluZywgdXJsQjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBVUkwodXJsQSkub3JpZ2luID09PSBuZXcgVVJMKHVybEIpLm9yaWdpbjtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIElmIHRoZSBwcm92aWRlZCBgbG9naW5VcmxgIGlzIG9uIHRoZSBzYW1lIG9yaWdpbiB0aGFuIHRoZSBBZG1pblVJLCByZXR1cm4gdGhlIHBhdGhcclxuICAgICAqIGFmdGVyIHRoZSBgL2FkbWluYC5cclxuICAgICAqIEVsc2UsIHJldHVybiB0aGUgd2hvbGUgbG9naW4gdXJsLlxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIGdldFBhdGhGcm9tTG9naW5VcmwobG9naW5Vcmw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmFyZVVybHNPblNhbWVPcmlnaW4obG9naW5VcmwsIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBsb2dpblVybDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGxvZ2luVXJsLnNwbGl0KCcvYWRtaW4nKVsxXTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2RhdGEvcHJvdmlkZXJzL2ludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxpQkFBaUIsRUFLakIsWUFBWSxHQUNmLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBR3JGLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBR2hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOzs7Ozs7QUFJeEYsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsWUFBWSxDQUFDO0FBRWhEOzs7R0FHRztBQUVILE1BQU0sT0FBTyxrQkFBa0I7SUFJM0IsWUFDWSxXQUF3QixFQUN4QixRQUFrQixFQUNsQixXQUF3QixFQUN4QixNQUFjLEVBQ2QsbUJBQXdDO1FBSnhDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFSbkMsZ0JBQVcsR0FBaUMsUUFBUSxDQUFDO1FBVWxFLElBQUksQ0FBQyxXQUFXLEdBQUcsWUFBWSxFQUFFLENBQUMsV0FBVyxDQUFDO1FBQzlDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxZQUFZLEVBQUUsQ0FBQyxrQkFBa0Is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bUJBQW1CLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsQ0FBQzthQUN4RDtTQUNKO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ssbUJBQW1CLENBQUMsSUFBWSxFQUFFLElBQVk7UUFDbEQsT0FBTyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3pELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssbUJBQW1CLENBQUMsUUFBZ0I7UUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUM3RCxPQUFPLFFBQVEsQ0FBQztTQUNuQjtRQUNELE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2QyxDQUFDOzhHQXRKUSxrQkFBa0I7a0hBQWxCLGtCQUFrQjs7MkZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgSHR0cEVycm9yUmVzcG9uc2UsXG4gICAgSHR0cEV2ZW50LFxuICAgIEh0dHBIYW5kbGVyLFxuICAgIEh0dHBJbnRlcmNlcHRvcixcbiAgICBIdHRwUmVxdWVzdCxcbiAgICBIdHRwUmVzcG9uc2UsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgbWFya2VyIGFzIF8gfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInO1xuaW1wb3J0IHsgREVGQVVMVF9BVVRIX1RPS0VOX0hFQURFUl9LRVkgfSBmcm9tICdAdmVuZHVyZS9jb21tb24vbGliL3NoYXJlZC1jb25zdGFudHMnO1xuaW1wb3J0IHsgQWRtaW5VaUNvbmZpZyB9IGZyb20gJ0B2ZW5kdXJlL2NvbW1vbi9saWIvc2hhcmVkLXR5cGVzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBnZXRBcHBDb25maWcgfSBmcm9tICcuLi8uLi9hcHAuY29uZmlnJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL2F1dGgvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9wcm92aWRlcnMvbG9jYWwtc3RvcmFnZS9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBEYXRhU2VydmljZSB9IGZyb20gJy4vZGF0YS5zZXJ2aWNlJztcblxuZXhwb3J0IGNvbnN0IEFVVEhfUkVESVJFQ1RfUEFSQU0gPSAncmVkaXJlY3RUbyc7XG5cbi8qKlxuICogVGhlIGRlZmF1bHQgaW50ZXJjZXB0b3IgZXhhbWluZXMgYWxsIEhUVFAgcmVxdWVzdHMgJiByZXNwb25zZXMgYW5kIGF1dG9tYXRpY2FsbHkgdXBkYXRlcyB0aGUgcmVxdWVzdGluZyBzdGF0ZVxuICogYW5kIHNob3dzIGVycm9yIG5vdGlmaWNhdGlvbnMuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEZWZhdWx0SW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdG9rZW5NZXRob2Q6IEFkbWluVWlDb25maWdbJ3Rva2VuTWV0aG9kJ10gPSAnY29va2llJztcbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dGhUb2tlbkhlYWRlcktleTogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByaXZhdGUgbG9jYWxTdG9yYWdlU2VydmljZTogTG9jYWxTdG9yYWdlU2VydmljZSxcbiAgICApIHtcbiAgICAgICAgdGhpcy50b2tlbk1ldGhvZCA9IGdldEFwcENvbmZpZygpLnRva2VuTWV0aG9kO1xuICAgICAgICB0aGlzLmF1dGhUb2tlbkhlYWRlcktleSA9IGdldEFwcENvbmZpZygpLmF1dGhUb2tlbkhlYWRlcktleSB8fCBERUZBVUxUX0FVVEhfVE9LRU5fSEVBREVSX0tFWTtcbiAgICB9XG5cbiAgICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICAgICAgdGhpcy5kYXRhU2VydmljZS5jbGllbnQuc3RhcnRSZXF1ZXN0KCkuc3Vic2NyaWJlKCk7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGFTZXJ2aWNlLmNsaWVudC51aVN0YXRlKCkuc2luZ2xlJC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCh7IHVpU3RhdGUgfSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlcXVlc3QgPSByZXEuY2xvbmUoe1xuICAgICAgICAgICAgICAgICAgICBzZXRQYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhbmd1YWdlQ29kZTogdWlTdGF0ZT8uY29udGVudExhbmd1YWdlID8/ICcnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGFwKFxuICAgICAgICAgICAgICAgIGV2ZW50ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNoZWNrRm9yQXV0aFRva2VuKGV2ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm90aWZ5T25FcnJvcihldmVudCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLmNsaWVudC5jb21wbGV0ZVJlcXVlc3QoKS5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZXJyID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdGlmeU9uRXJyb3IoZXJyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2UuY2xpZW50LmNvbXBsZXRlUmVxdWVzdCgpLnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5RXJyb3JOb3RpZmljYXRpb24oZXJyLm1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBub3RpZnlPbkVycm9yKHJlc3BvbnNlOiBIdHRwUmVzcG9uc2U8YW55PiB8IEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgIGlmIChyZXNwb25zZSBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSAwKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBhcGlIb3N0LCBhcGlQb3J0IH0gPSBnZXRBcHBDb25maWcoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXlFcnJvck5vdGlmaWNhdGlvbihfKGBlcnJvci5jb3VsZC1ub3QtY29ubmVjdC10by1zZXJ2ZXJgKSwge1xuICAgICAgICAgICAgICAgICAgICB1cmw6IGAke2FwaUhvc3R9OiR7YXBpUG9ydH1gLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDUwMyAmJiByZXNwb25zZS51cmw/LmVuZHNXaXRoKCcvaGVhbHRoJykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXlFcnJvck5vdGlmaWNhdGlvbihfKGBlcnJvci5oZWFsdGgtY2hlY2stZmFpbGVkYCkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXlFcnJvck5vdGlmaWNhdGlvbih0aGlzLmV4dHJhY3RFcnJvckZyb21IdHRwUmVzcG9uc2UocmVzcG9uc2UpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEdyYXBoUUwgZXJyb3JzIHN0aWxsIHJldHVybiAyMDAgT0sgcmVzcG9uc2VzLCBidXQgaGF2ZSB0aGUgYWN0dWFsIGVycm9yIG1lc3NhZ2VcbiAgICAgICAgICAgIC8vIGluc2lkZSB0aGUgYm9keSBvZiB0aGUgcmVzcG9uc2UuXG4gICAgICAgICAgICBjb25zdCBncmFwaFFMRXJyb3JzID0gcmVzcG9uc2UuYm9keS5lcnJvcnM7XG4gICAgICAgICAgICBpZiAoZ3JhcGhRTEVycm9ycyAmJiBBcnJheS5pc0FycmF5KGdyYXBoUUxFcnJvcnMpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmlyc3RDb2RlOiBzdHJpbmcgPSBncmFwaFFMRXJyb3JzWzBdPy5leHRlbnNpb25zPy5jb2RlO1xuXG4gICAgICAgICAgICAgICAgaWYgKGZpcnN0Q29kZSA9PT0gJ0ZPUkJJRERFTicpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5sb2dPdXQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBsb2dpblVybCB9ID0gZ2V0QXBwQ29uZmlnKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGVyZSBpcyBhIGBsb2dpblVybGAgd2hpY2ggaXMgZXh0ZXJuYWwgdG8gdGhlIEFkbWluVUksIHJlZGlyZWN0IHRvIGl0ICh3aXRoIG5vIHF1ZXJ5IHBhcmFtZXRlcnMpXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobG9naW5VcmwgJiYgIXRoaXMuYXJlVXJsc09uU2FtZU9yaWdpbihsb2dpblVybCwgd2luZG93LmxvY2F0aW9uLm9yaWdpbikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGxvZ2luVXJsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRWxzZSwgd2UgYnVpbGQgdGhlIGxvZ2luIHBhdGggZnJvbSB0aGUgbG9naW4gdXJsIGlmIG9uZSBpcyBwcm92aWRlZCBvciBmYWxsYmFjayB0byBgL2xvZ2luYFxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbG9naW5QYXRoID0gbG9naW5VcmwgPyB0aGlzLmdldFBhdGhGcm9tTG9naW5VcmwobG9naW5VcmwpIDogJy9sb2dpbic7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLmluY2x1ZGVzKGxvZ2luUGF0aCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXRoID0gZ3JhcGhRTEVycm9yc1swXS5wYXRoLmpvaW4oJyA+ICcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGlzcGxheUVycm9yTm90aWZpY2F0aW9uKF8oYGVycm9yLjQwMy1mb3JiaWRkZW5gKSwgeyBwYXRoIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBOYXZpZ2F0ZSB0byB0aGUgYGxvZ2luUGF0aGAgcm91dGUgYnkgZW5zdXJpbmcgdGhlIHF1ZXJ5IHBhcmFtIGluIGNoYXJnZSBvZiB0aGUgcmVkaXJlY3Rpb24gaXMgcHJvdmlkZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtsb2dpblBhdGhdLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlcnlQYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW0FVVEhfUkVESVJFQ1RfUEFSQU1dOiBidG9hKHRoaXMucm91dGVyLnVybCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGZpcnN0Q29kZSA9PT0gJ0NIQU5ORUxfTk9UX0ZPVU5EJykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gZ3JhcGhRTEVycm9ycy5tYXAoZXJyID0+IGVyci5tZXNzYWdlKS5qb2luKCdcXG4nKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5RXJyb3JOb3RpZmljYXRpb24obWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9jYWxTdG9yYWdlU2VydmljZS5yZW1vdmUoJ2FjdGl2ZUNoYW5uZWxUb2tlbicpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBncmFwaFFMRXJyb3JzLm1hcChlcnIgPT4gZXJyLm1lc3NhZ2UpLmpvaW4oJ1xcbicpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXlFcnJvck5vdGlmaWNhdGlvbihtZXNzYWdlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGV4dHJhY3RFcnJvckZyb21IdHRwUmVzcG9uc2UocmVzcG9uc2U6IEh0dHBFcnJvclJlc3BvbnNlKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgZXJyb3JzID0gcmVzcG9uc2UuZXJyb3IuZXJyb3JzO1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShlcnJvcnMpKSB7XG4gICAgICAgICAgICByZXR1cm4gZXJyb3JzLm1hcChlID0+IGUubWVzc2FnZSkuam9pbignXFxuJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UubWVzc2FnZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdlIG5lZWQgdG8gbGF6aWx5IGluamVjdCB0aGUgTm90aWZpY2F0aW9uU2VydmljZSBzaW5jZSBpdCBkZXBlbmRzIG9uIHRoZSBJMThuU2VydmljZSB3aGljaFxuICAgICAqIGV2ZW50dWFsbHkgZGVwZW5kcyBvbiB0aGUgSHR0cENsaWVudCAodXNlZCB0byBsb2FkIG1lc3NhZ2VzIGZyb20ganNvbiBmaWxlcykuIElmIHdlIHdlcmUgdG9cbiAgICAgKiBkaXJlY3RseSBpbmplY3QgTm90aWZpY2F0aW9uU2VydmljZSBpbnRvIHRoZSBjb25zdHJ1Y3Rvciwgd2UgZ2V0IGEgY3ljbGljIGRlcGVuZGVuY3kuXG4gICAgICovXG4gICAgcHJpdmF0ZSBkaXNwbGF5RXJyb3JOb3RpZmljYXRpb24obWVzc2FnZTogc3RyaW5nLCB2YXJzPzogUmVjb3JkPHN0cmluZywgYW55Pik6IHZvaWQge1xuICAgICAgICBjb25zdCBub3RpZmljYXRpb25TZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQ8Tm90aWZpY2F0aW9uU2VydmljZT4oTm90aWZpY2F0aW9uU2VydmljZSk7XG4gICAgICAgIG5vdGlmaWNhdGlvblNlcnZpY2UuZXJyb3IobWVzc2FnZSwgdmFycyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSWYgdGhlIHNlcnZlciBpcyBjb25maWd1cmVkIHRvIHVzZSB0aGUgXCJiZWFyZXJcIiB0b2tlbk1ldGhvZCwgZWFjaCByZXNwb25zZSBzaG91bGQgYmUgY2hlY2tlZFxuICAgICAqIGZvciB0aGUgZXhpc3RlbmNlIG9mIGFuIGF1dGggdG9rZW4uXG4gICAgICovXG4gICAgcHJpdmF0ZSBjaGVja0ZvckF1dGhUb2tlbihyZXNwb25zZTogSHR0cFJlc3BvbnNlPGFueT4pIHtcbiAgICAgICAgaWYgKHRoaXMudG9rZW5NZXRob2QgPT09ICdiZWFyZXInKSB7XG4gICAgICAgICAgICBjb25zdCBhdXRoVG9rZW4gPSByZXNwb25zZS5oZWFkZXJzLmdldCh0aGlzLmF1dGhUb2tlbkhlYWRlcktleSk7XG4gICAgICAgICAgICBpZiAoYXV0aFRva2VuKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2NhbFN0b3JhZ2VTZXJ2aWNlLnNldCgnYXV0aFRva2VuJywgYXV0aFRva2VuKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERldGVybWluZSBpZiB0d28gdXJscyBhcmUgb24gdGhlIHNhbWUgb3JpZ2luLlxuICAgICAqL1xuICAgIHByaXZhdGUgYXJlVXJsc09uU2FtZU9yaWdpbih1cmxBOiBzdHJpbmcsIHVybEI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gbmV3IFVSTCh1cmxBKS5vcmlnaW4gPT09IG5ldyBVUkwodXJsQikub3JpZ2luO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIElmIHRoZSBwcm92aWRlZCBgbG9naW5VcmxgIGlzIG9uIHRoZSBzYW1lIG9yaWdpbiB0aGFuIHRoZSBBZG1pblVJLCByZXR1cm4gdGhlIHBhdGhcbiAgICAgKiBhZnRlciB0aGUgYC9hZG1pbmAuXG4gICAgICogRWxzZSwgcmV0dXJuIHRoZSB3aG9sZSBsb2dpbiB1cmwuXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRQYXRoRnJvbUxvZ2luVXJsKGxvZ2luVXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIXRoaXMuYXJlVXJsc09uU2FtZU9yaWdpbihsb2dpblVybCwgd2luZG93LmxvY2F0aW9uLm9yaWdpbikpIHtcbiAgICAgICAgICAgIHJldHVybiBsb2dpblVybDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbG9naW5Vcmwuc3BsaXQoJy9hZG1pbicpWzFdO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { pick } from '@vendure/common/lib/pick';
|
|
2
2
|
import { SortOrder } from '../../common/generated-types';
|
|
3
|
-
import { ADD_OPTION_GROUP_TO_PRODUCT, ADD_OPTION_TO_GROUP, ASSIGN_PRODUCTS_TO_CHANNEL, ASSIGN_VARIANTS_TO_CHANNEL, CREATE_ASSETS, CREATE_PRODUCT, CREATE_PRODUCT_OPTION_GROUP, CREATE_PRODUCT_VARIANTS, CREATE_TAG, DELETE_ASSETS, DELETE_PRODUCT, DELETE_PRODUCT_OPTION, DELETE_PRODUCT_VARIANT, DELETE_PRODUCTS, DELETE_TAG, GET_ASSET, GET_ASSET_LIST, GET_PRODUCT_LIST, GET_PRODUCT_OPTION_GROUP, GET_PRODUCT_OPTION_GROUPS, GET_PRODUCT_SIMPLE, GET_PRODUCT_VARIANT, GET_PRODUCT_VARIANT_LIST, GET_PRODUCT_VARIANT_LIST_FOR_PRODUCT, GET_PRODUCT_VARIANT_LIST_SIMPLE, GET_PRODUCT_VARIANT_OPTIONS, GET_PRODUCT_WITH_VARIANTS, GET_TAG, GET_TAG_LIST, PRODUCT_SELECTOR_SEARCH, REMOVE_OPTION_GROUP_FROM_PRODUCT, REMOVE_PRODUCTS_FROM_CHANNEL, REMOVE_VARIANTS_FROM_CHANNEL, SEARCH_PRODUCTS, UPDATE_ASSET, UPDATE_PRODUCT, UPDATE_PRODUCT_OPTION, UPDATE_PRODUCT_OPTION_GROUP, UPDATE_PRODUCT_VARIANTS, UPDATE_TAG, } from '../definitions/product-definitions';
|
|
3
|
+
import { ADD_OPTION_GROUP_TO_PRODUCT, ADD_OPTION_TO_GROUP, ASSIGN_PRODUCTS_TO_CHANNEL, ASSIGN_VARIANTS_TO_CHANNEL, CREATE_ASSETS, CREATE_PRODUCT, CREATE_PRODUCT_OPTION_GROUP, CREATE_PRODUCT_VARIANTS, CREATE_TAG, DELETE_ASSETS, DELETE_PRODUCT, DELETE_PRODUCT_OPTION, DELETE_PRODUCT_VARIANT, DELETE_PRODUCT_VARIANTS, DELETE_PRODUCTS, DELETE_TAG, GET_ASSET, GET_ASSET_LIST, GET_PRODUCT_LIST, GET_PRODUCT_OPTION_GROUP, GET_PRODUCT_OPTION_GROUPS, GET_PRODUCT_SIMPLE, GET_PRODUCT_VARIANT, GET_PRODUCT_VARIANT_LIST, GET_PRODUCT_VARIANT_LIST_FOR_PRODUCT, GET_PRODUCT_VARIANT_LIST_SIMPLE, GET_PRODUCT_VARIANT_OPTIONS, GET_PRODUCT_WITH_VARIANTS, GET_TAG, GET_TAG_LIST, PRODUCT_SELECTOR_SEARCH, REMOVE_OPTION_GROUP_FROM_PRODUCT, REMOVE_PRODUCTS_FROM_CHANNEL, REMOVE_VARIANTS_FROM_CHANNEL, SEARCH_PRODUCTS, UPDATE_ASSET, UPDATE_PRODUCT, UPDATE_PRODUCT_OPTION, UPDATE_PRODUCT_OPTION_GROUP, UPDATE_PRODUCT_VARIANTS, UPDATE_TAG, } from '../definitions/product-definitions';
|
|
4
4
|
import { GET_PENDING_SEARCH_INDEX_UPDATES, REINDEX, RUN_PENDING_SEARCH_INDEX_UPDATES, } from '../definitions/settings-definitions';
|
|
5
5
|
export class ProductDataService {
|
|
6
6
|
constructor(baseDataService) {
|
|
@@ -138,6 +138,11 @@ export class ProductDataService {
|
|
|
138
138
|
id,
|
|
139
139
|
});
|
|
140
140
|
}
|
|
141
|
+
deleteProductVariants(ids) {
|
|
142
|
+
return this.baseDataService.mutate(DELETE_PRODUCT_VARIANTS, {
|
|
143
|
+
ids,
|
|
144
|
+
});
|
|
145
|
+
}
|
|
141
146
|
createProductOptionGroups(productOptionGroup) {
|
|
142
147
|
const input = {
|
|
143
148
|
input: productOptionGroup,
|
|
@@ -249,4 +254,4 @@ export class ProductDataService {
|
|
|
249
254
|
});
|
|
250
255
|
}
|
|
251
256
|
}
|
|
252
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1kYXRhLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2RhdGEvcHJvdmlkZXJzL3Byb2R1Y3QtZGF0YS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDekQsT0FBTyxFQUNILDJCQUEyQixFQUMzQixtQkFBbUIsRUFDbkIsMEJBQTBCLEVBQzFCLDBCQUEwQixFQUMxQixhQUFhLEVBQ2IsY0FBYyxFQUNkLDJCQUEyQixFQUMzQix1QkFBdUIsRUFDdkIsVUFBVSxFQUNWLGFBQWEsRUFDYixjQUFjLEVBQ2QscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0QixlQUFlLEVBQ2YsVUFBVSxFQUNWLFNBQVMsRUFDVCxjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLHdCQUF3QixFQUN4Qix5QkFBeUIsRUFDekIsa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQix3QkFBd0IsRUFDeEIsb0NBQW9DLEVBQ3BDLCtCQUErQixFQUMvQiwyQkFBMkIsRUFDM0IseUJBQXlCLEVBQ3pCLE9BQU8sRUFDUCxZQUFZLEVBQ1osdUJBQXVCLEVBQ3ZCLGdDQUFnQyxFQUNoQyw0QkFBNEIsRUFDNUIsNEJBQTRCLEVBQzVCLGVBQWUsRUFDZixZQUFZLEVBQ1osY0FBYyxFQUNkLHFCQUFxQixFQUNyQiwyQkFBMkIsRUFDM0IsdUJBQXVCLEVBQ3ZCLFVBQVUsR0FDYixNQUFNLG9DQUFvQyxDQUFDO0FBQzVDLE9BQU8sRUFDSCxnQ0FBZ0MsRUFDaEMsT0FBTyxFQUNQLGdDQUFnQyxHQUNuQyxNQUFNLHFDQUFxQyxDQUFDO0FBSTdDLE1BQU0sT0FBTyxrQkFBa0I7SUFDM0IsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlC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QzFHLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZ0M7UUFDdkMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FDN0IsWUFBWSxFQUNaO1lBQ0ksT0FBTztTQUNWLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBNkI7UUFDbkMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FDOUIsVUFBVSxFQUNWO1lBQ0ksS0FBSztTQUNSLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBNkI7UUFDbkMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FDOUIsVUFBVSxFQUNWO1lBQ0ksS0FBSztTQUNSLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRCxTQUFTLENBQUMsRUFBVTtRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUM5QixVQUFVLEVBQ1Y7WUFDSSxFQUFFO1NBQ0wsQ0FDSixDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGljayB9IGZyb20gJ0B2ZW5kdXJlL2NvbW1vbi9saWIvcGljayc7XHJcblxyXG5pbXBvcnQgKiBhcyBDb2RlZ2VuIGZyb20gJy4uLy4uL2NvbW1vbi9nZW5lcmF0ZWQtdHlwZXMnO1xyXG5pbXBvcnQgeyBTb3J0T3JkZXIgfSBmcm9tICcuLi8uLi9jb21tb24vZ2VuZXJhdGVkLXR5cGVzJztcclxuaW1wb3J0IHtcclxuICAgIEFERF9PUFRJT05fR1JPVVBfVE9fUFJPRFVDVCxcclxuICAgIEFERF9PUFRJT05fVE9fR1JPVVAsXHJcbiAgICBBU1NJR05fUFJPRFVDVFNfVE9fQ0hBTk5FTCxcclxuICAgIEFTU0lHTl9WQVJJQU5UU19UT19DSEFOTkVMLFxyXG4gICAgQ1JFQVRFX0FTU0VUUyxcclxuICAgIENSRUFURV9QUk9EVUNULFxyXG4gICAgQ1JFQVRFX1BST0RVQ1RfT1BUSU9OX0dST1VQLFxyXG4gICAgQ1JFQVRFX1BST0RVQ1RfVkFSSUFOVFMsXHJcbiAgICBDUkVBVEVfVEFHLFxyXG4gICAgREVMRVRFX0FTU0VUUyxcclxuICAgIERFTEVURV9QUk9EVUNULFxyXG4gICAgREVMRVRFX1BST0RVQ1RfT1BUSU9OLFxyXG4gICAgREVMRVRFX1BST0RVQ1RfVkFSSUFOVCxcclxuICAgIERFTEVURV9QUk9EVUNUUyxcclxuICAgIERFTEVURV9UQUcsXHJcbiAgICBHRVRfQVNTRVQsXHJcbiAgICBHRVRfQVNTRVRfTElTVCxcclxuICAgIEdFVF9QUk9EVUNUX0xJU1QsXHJcbiAgICBHRVRfUFJPRFVDVF9PUFRJT05fR1JPVVAsXHJcbiAgICBHRVRfUFJPRFVDVF9PUFRJT05fR1JPVVBTLFxyXG4gICAgR0VUX1BST0RVQ1RfU0lNUExFLFxyXG4gICAgR0VUX1BST0RVQ1RfVkFSSUFOVCxcclxuICAgIEdFVF9QUk9EVUNUX1ZBUklBTlRfTElTVCxcclxuICAgIEdFVF9QUk9EVUNUX1ZBUklBTlRfTElTVF9GT1JfUFJPRFVDVCxcclxuICAgIEdFVF9QUk9EVUNUX1ZBUklBTlRfTElTVF9TSU1QTEUsXHJcbiAgICBHRVRfUFJPRFVDVF9WQVJJQU5UX09QVElPTlMsXHJcbiAgICBHRVRfUFJPRFVDVF9XSVRIX1ZBUklBTlRTLFxyXG4gICAgR0VUX1RBRyxcclxuICAgIEdFVF9UQUdfTElTVCxcclxuICAgIFBST0RVQ1RfU0VMRUNUT1JfU0VBUkNILFxyXG4gICAgUkVNT1ZFX09QVElPTl9HUk9VUF9GUk9NX1BST0RVQ1QsXHJcbiAgICBSRU1PVkVfUFJPRFVDVFNfRlJPTV9DSEFOTkVMLFxyXG4gICAgUkVNT1ZFX1ZBUklBTlRTX0ZST01fQ0hBTk5FTCxcclxuICAgIFNFQVJDSF9QUk9EVUNUUyxcclxuICAgIFVQREFURV9BU1NFVCxcclxuICAgIFVQREFURV9QUk9EVUNULFxyXG4gICAgVVBEQVRFX1BST0RVQ1RfT1BUSU9OLFxyXG4gICAgVVBEQVRFX1BST0RVQ1RfT1BUSU9OX0dST1VQLFxyXG4gICAgVVBEQVRFX1BST0RVQ1RfVkFSSUFOVFMsXHJcbiAgICBVUERBVEVfVEFHLFxyXG59IGZyb20gJy4uL2RlZmluaXRpb25zL3Byb2R1Y3QtZGVmaW5pdGlvbnMnO1xyXG5pbXBvcnQge1xyXG4gICAgR0VUX1BFTkRJTkdfU0VBUkNIX0lOREVYX1VQREFURVMsXHJcbiAgICBSRUlOREVYLFxyXG4gICAgUlVOX1BFTkRJTkdfU0VBUkNIX0lOREVYX1VQREFURVMsXHJcbn0gZnJvbSAnLi4vZGVmaW5pdGlvbnMvc2V0dGluZ3MtZGVmaW5pdGlvbnMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZURhdGFTZXJ2aWNlIH0gZnJvbSAnLi9iYXNlLWRhdGEuc2VydmljZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgUHJvZHVjdERhdGFTZXJ2aWNlIHtcclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgYmFzZURhdGFTZXJ2aWNlOiBCYXNlRGF0YVNlcnZpY2UpIHt9XHJcblxyXG4gICAgc2VhcmNoUHJvZHVjdHModGVybTogc3RyaW5nLCB0YWtlID0gMTAsIHNraXAgPSAwKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PENvZGVnZW4uU2VhcmNoUHJvZHVjdHNRdWVyeSwgQ29kZWdlbi5TZWFyY2hQcm9kdWN0c1F1ZXJ5VmFyaWFibGVzPihcclxuICAgICAgICAgICAgU0VBUkNIX1BST0RVQ1RTLFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBpbnB1dDoge1xyXG4gICAgICAgICAgICAgICAgICAgIHRlcm0sXHJcbiAgICAgICAgICAgICAgICAgICAgdGFrZSxcclxuICAgICAgICAgICAgICAgICAgICBza2lwLFxyXG4gICAgICAgICAgICAgICAgICAgIGdyb3VwQnlQcm9kdWN0OiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHByb2R1Y3RTZWxlY3RvclNlYXJjaCh0ZXJtOiBzdHJpbmcsIHRha2U6IG51bWJlcikge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxcclxuICAgICAgICAgICAgQ29kZWdlbi5Qcm9kdWN0U2VsZWN0b3JTZWFyY2hRdWVyeSxcclxuICAgICAgICAgICAgQ29kZWdlbi5Qcm9kdWN0U2VsZWN0b3JTZWFyY2hRdWVyeVZhcmlhYmxlc1xyXG4gICAgICAgID4oUFJPRFVDVF9TRUxFQ1RPUl9TRUFSQ0gsIHtcclxuICAgICAgICAgICAgdGFrZSxcclxuICAgICAgICAgICAgdGVybSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICByZWluZGV4KCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8Q29kZWdlbi5SZWluZGV4TXV0YXRpb24+KFJFSU5ERVgpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFBlbmRpbmdTZWFyY2hJbmRleFVwZGF0ZXMoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PENvZGVnZW4uR2V0UGVuZGluZ1NlYXJjaEluZGV4VXBkYXRlc1F1ZXJ5PihcclxuICAgICAgICAgICAgR0VUX1BFTkRJTkdfU0VBUkNIX0lOREVYX1VQREFURVMsXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBydW5QZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8Q29kZWdlbi5SdW5QZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzTXV0YXRpb24+KFxyXG4gICAgICAgICAgICBSVU5fUEVORElOR19TRUFSQ0hfSU5ERVhfVVBEQVRFUyxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFByb2R1Y3RzKG9wdGlvbnM6IENvZGVnZW4uUHJvZHVjdExpc3RPcHRpb25zKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PENvZGVnZW4uR2V0UHJvZHVjdExpc3RRdWVyeSwgQ29kZWdlbi5HZXRQcm9kdWN0TGlzdFF1ZXJ5VmFyaWFibGVzPihcclxuICAgICAgICAgICAgR0VUX1BST0RVQ1RfTElTVCxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgb3B0aW9ucyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFByb2R1Y3QoaWQ6IHN0cmluZywgdmFyaWFudExpc3RPcHRpb25zPzogQ29kZWdlbi5Qcm9kdWN0VmFyaWFudExpc3RPcHRpb25zKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RXaXRoVmFyaWFudHNRdWVyeSxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0V2l0aFZhcmlhbnRzUXVlcnlWYXJpYWJsZXNcclxuICAgICAgICA+KEdFVF9QUk9EVUNUX1dJVEhfVkFSSUFOVFMsIHtcclxuICAgICAgICAgICAgaWQsXHJcbiAgICAgICAgICAgIHZhcmlhbnRMaXN0T3B0aW9ucyxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRQcm9kdWN0U2ltcGxlKGlkOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UucXVlcnk8XHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdFNpbXBsZVF1ZXJ5LFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RTaW1wbGVRdWVyeVZhcmlhYmxlc1xyXG4gICAgICAgID4oR0VUX1BST0RVQ1RfU0lNUExFLCB7XHJcbiAgICAgICAgICAgIGlkLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFByb2R1Y3RWYXJpYW50c1NpbXBsZShvcHRpb25zOiBDb2RlZ2VuLlByb2R1Y3RWYXJpYW50TGlzdE9wdGlvbnMsIHByb2R1Y3RJZD86IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0VmFyaWFudExpc3RTaW1wbGVRdWVyeSxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0VmFyaWFudExpc3RTaW1wbGVRdWVyeVZhcmlhYmxlc1xyXG4gICAgICAgID4oR0VUX1BST0RVQ1RfVkFSSUFOVF9MSVNUX1NJTVBMRSwgeyBvcHRpb25zLCBwcm9kdWN0SWQgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0UHJvZHVjdFZhcmlhbnRzKG9wdGlvbnM6IENvZGVnZW4uUHJvZHVjdFZhcmlhbnRMaXN0T3B0aW9ucykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0VmFyaWFudExpc3RRdWVyeSxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0VmFyaWFudExpc3RRdWVyeVZhcmlhYmxlc1xyXG4gICAgICAgID4oR0VUX1BST0RVQ1RfVkFSSUFOVF9MSVNULCB7IG9wdGlvbnMgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0UHJvZHVjdFZhcmlhbnRzRm9yUHJvZHVjdChvcHRpb25zOiBDb2RlZ2VuLlByb2R1Y3RWYXJpYW50TGlzdE9wdGlvbnMsIHByb2R1Y3RJZDogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RWYXJpYW50TGlzdEZvclByb2R1Y3RRdWVyeSxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0VmFyaWFudExpc3RGb3JQcm9kdWN0UXVlcnlWYXJpYWJsZXNcclxuICAgICAgICA+KEdFVF9QUk9EVUNUX1ZBUklBTlRfTElTVF9GT1JfUFJPRFVDVCwgeyBvcHRpb25zLCBwcm9kdWN0SWQgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0UHJvZHVjdFZhcmlhbnQoaWQ6IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0VmFyaWFudFF1ZXJ5LFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RWYXJpYW50UXVlcnlWYXJpYWJsZXNcclxuICAgICAgICA+KEdFVF9QUk9EVUNUX1ZBUklBTlQsIHsgaWQgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0UHJvZHVjdFZhcmlhbnRzT3B0aW9ucyhpZDogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RWYXJpYW50T3B0aW9uc1F1ZXJ5LFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RWYXJpYW50T3B0aW9uc1F1ZXJ5VmFyaWFibGVzXHJcbiAgICAgICAgPihHRVRfUFJPRFVDVF9WQVJJQU5UX09QVElPTlMsIHtcclxuICAgICAgICAgICAgaWQsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0UHJvZHVjdE9wdGlvbkdyb3VwKGlkOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UucXVlcnk8XHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdE9wdGlvbkdyb3VwUXVlcnksXHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdE9wdGlvbkdyb3VwUXVlcnlWYXJpYWJsZXNcclxuICAgICAgICA+KEdFVF9QUk9EVUNUX09QVElPTl9HUk9VUCwge1xyXG4gICAgICAgICAgICBpZCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBjcmVhdGVQcm9kdWN0KHByb2R1Y3Q6IENvZGVnZW4uQ3JlYXRlUHJvZHVjdElucHV0KSB7XHJcbiAgICAgICAgY29uc3QgaW5wdXQ6IENvZGVnZW4uQ3JlYXRlUHJvZHVjdE11dGF0aW9uVmFyaWFibGVzID0ge1xyXG4gICAgICAgICAgICBpbnB1dDogcGljayhwcm9kdWN0LCBbXHJcbiAgICAgICAgICAgICAgICAnZW5hYmxlZCcsXHJcbiAgICAgICAgICAgICAgICAndHJhbnNsYXRpb25zJyxcclxuICAgICAgICAgICAgICAgICdjdXN0b21GaWVsZHMnLFxyXG4gICAgICAgICAgICAgICAgJ2Fzc2V0SWRzJyxcclxuICAgICAgICAgICAgICAgICdmZWF0dXJlZEFzc2V0SWQnLFxyXG4gICAgICAgICAgICAgICAgJ2ZhY2V0VmFsdWVJZHMnLFxyXG4gICAgICAgICAgICBdKSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uQ3JlYXRlUHJvZHVjdE11dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkNyZWF0ZVByb2R1Y3RNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oQ1JFQVRFX1BST0RVQ1QsIGlucHV0KTtcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGVQcm9kdWN0KHByb2R1Y3Q6IENvZGVnZW4uVXBkYXRlUHJvZHVjdElucHV0KSB7XHJcbiAgICAgICAgY29uc3QgaW5wdXQ6IENvZGVnZW4uVXBkYXRlUHJvZHVjdE11dGF0aW9uVmFyaWFibGVzID0ge1xyXG4gICAgICAgICAgICBpbnB1dDogcGljayhwcm9kdWN0LCBbXHJcbiAgICAgICAgICAgICAgICAnaWQnLFxyXG4gICAgICAgICAgICAgICAgJ2VuYWJsZWQnLFxyXG4gICAgICAgICAgICAgICAgJ3RyYW5zbGF0aW9ucycsXHJcbiAgICAgICAgICAgICAgICAnY3VzdG9tRmllbGRzJyxcclxuICAgICAgICAgICAgICAgICdhc3NldElkcycsXHJcbiAgICAgICAgICAgICAgICAnZmVhdHVyZWRBc3NldElkJyxcclxuICAgICAgICAgICAgICAgICdmYWNldFZhbHVlSWRzJyxcclxuICAgICAgICAgICAgXSksXHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLlVwZGF0ZVByb2R1Y3RNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5VcGRhdGVQcm9kdWN0TXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KFVQREFURV9QUk9EVUNULCBpbnB1dCk7XHJcbiAgICB9XHJcblxyXG4gICAgZGVsZXRlUHJvZHVjdChpZDogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5EZWxldGVQcm9kdWN0TXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uRGVsZXRlUHJvZHVjdE11dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihERUxFVEVfUFJPRFVDVCwge1xyXG4gICAgICAgICAgICBpZCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBkZWxldGVQcm9kdWN0cyhpZHM6IHN0cmluZ1tdKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5EZWxldGVQcm9kdWN0c011dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkRlbGV0ZVByb2R1Y3RzTXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KERFTEVURV9QUk9EVUNUUywge1xyXG4gICAgICAgICAgICBpZHMsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY3JlYXRlUHJvZHVjdFZhcmlhbnRzKGlucHV0OiBDb2RlZ2VuLkNyZWF0ZVByb2R1Y3RWYXJpYW50SW5wdXRbXSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uQ3JlYXRlUHJvZHVjdFZhcmlhbnRzTXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uQ3JlYXRlUHJvZHVjdFZhcmlhbnRzTXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KENSRUFURV9QUk9EVUNUX1ZBUklBTlRTLCB7XHJcbiAgICAgICAgICAgIGlucHV0LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZVByb2R1Y3RWYXJpYW50cyh2YXJpYW50czogQ29kZWdlbi5VcGRhdGVQcm9kdWN0VmFyaWFudElucHV0W10pIHtcclxuICAgICAgICBjb25zdCBpbnB1dDogQ29kZWdlbi5VcGRhdGVQcm9kdWN0VmFyaWFudHNNdXRhdGlvblZhcmlhYmxlcyA9IHtcclxuICAgICAgICAgICAgaW5wdXQ6IHZhcmlhbnRzLm1hcChcclxuICAgICAgICAgICAgICAgIHBpY2soW1xyXG4gICAgICAgICAgICAgICAgICAgICdpZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2VuYWJsZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICd0cmFuc2xhdGlvbnMnLFxyXG4gICAgICAgICAgICAgICAgICAgICdza3UnLFxyXG4gICAgICAgICAgICAgICAgICAgICdwcmljZScsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3RheENhdGVnb3J5SWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICdmYWNldFZhbHVlSWRzJyxcclxuICAgICAgICAgICAgICAgICAgICAnZmVhdHVyZWRBc3NldElkJyxcclxuICAgICAgICAgICAgICAgICAgICAnYXNzZXRJZHMnLFxyXG4gICAgICAgICAgICAgICAgICAgICdvcHRpb25JZHMnLFxyXG4gICAgICAgICAgICAgICAgICAgICd0cmFja0ludmVudG9yeScsXHJcbiAgICAgICAgICAgICAgICAgICAgJ291dE9mU3RvY2tUaHJlc2hvbGQnLFxyXG4gICAgICAgICAgICAgICAgICAgICd1c2VHbG9iYWxPdXRPZlN0b2NrVGhyZXNob2xkJyxcclxuICAgICAgICAgICAgICAgICAgICAnc3RvY2tPbkhhbmQnLFxyXG4gICAgICAgICAgICAgICAgICAgICdjdXN0b21GaWVsZHMnLFxyXG4gICAgICAgICAgICAgICAgXSksXHJcbiAgICAgICAgICAgICksXHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLlVwZGF0ZVByb2R1Y3RWYXJpYW50c011dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLlVwZGF0ZVByb2R1Y3RWYXJpYW50c011dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihVUERBVEVfUFJPRFVDVF9WQVJJQU5UUywgaW5wdXQpO1xyXG4gICAgfVxyXG5cclxuICAgIGRlbGV0ZVByb2R1Y3RWYXJpYW50KGlkOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkRlbGV0ZVByb2R1Y3RWYXJpYW50TXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uRGVsZXRlUHJvZHVjdFZhcmlhbnRNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oREVMRVRFX1BST0RVQ1RfVkFSSUFOVCwge1xyXG4gICAgICAgICAgICBpZCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBjcmVhdGVQcm9kdWN0T3B0aW9uR3JvdXBzKHByb2R1Y3RPcHRpb25Hcm91cDogQ29kZWdlbi5DcmVhdGVQcm9kdWN0T3B0aW9uR3JvdXBJbnB1dCkge1xyXG4gICAgICAgIGNvbnN0IGlucHV0OiBDb2RlZ2VuLkNyZWF0ZVByb2R1Y3RPcHRpb25Hcm91cE11dGF0aW9uVmFyaWFibGVzID0ge1xyXG4gICAgICAgICAgICBpbnB1dDogcHJvZHVjdE9wdGlvbkdyb3VwLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5DcmVhdGVQcm9kdWN0T3B0aW9uR3JvdXBNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5DcmVhdGVQcm9kdWN0T3B0aW9uR3JvdXBNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oQ1JFQVRFX1BST0RVQ1RfT1BUSU9OX0dST1VQLCBpbnB1dCk7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkT3B0aW9uR3JvdXBUb1Byb2R1Y3QodmFyaWFibGVzOiBDb2RlZ2VuLkFkZE9wdGlvbkdyb3VwVG9Qcm9kdWN0TXV0YXRpb25WYXJpYWJsZXMpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkFkZE9wdGlvbkdyb3VwVG9Qcm9kdWN0TXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uQWRkT3B0aW9uR3JvdXBUb1Byb2R1Y3RNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oQUREX09QVElPTl9HUk9VUF9UT19QUk9EVUNULCB2YXJpYWJsZXMpO1xyXG4gICAgfVxyXG5cclxuICAgIGFkZE9wdGlvblRvR3JvdXAoaW5wdXQ6IENvZGVnZW4uQ3JlYXRlUHJvZHVjdE9wdGlvbklucHV0KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5BZGRPcHRpb25Ub0dyb3VwTXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uQWRkT3B0aW9uVG9Hcm91cE11dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihBRERfT1BUSU9OX1RPX0dST1VQLCB7IGlucHV0IH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGRlbGV0ZVByb2R1Y3RPcHRpb24oaWQ6IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uRGVsZXRlUHJvZHVjdE9wdGlvbk11dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkRlbGV0ZVByb2R1Y3RPcHRpb25NdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oREVMRVRFX1BST0RVQ1RfT1BUSU9OLCB7IGlkIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZU9wdGlvbkdyb3VwRnJvbVByb2R1Y3QodmFyaWFibGVzOiBDb2RlZ2VuLlJlbW92ZU9wdGlvbkdyb3VwRnJvbVByb2R1Y3RNdXRhdGlvblZhcmlhYmxlcykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uUmVtb3ZlT3B0aW9uR3JvdXBGcm9tUHJvZHVjdE11dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLlJlbW92ZU9wdGlvbkdyb3VwRnJvbVByb2R1Y3RNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oUkVNT1ZFX09QVElPTl9HUk9VUF9GUk9NX1BST0RVQ1QsIHZhcmlhYmxlcyk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlUHJvZHVjdE9wdGlvbihpbnB1dDogQ29kZWdlbi5VcGRhdGVQcm9kdWN0T3B0aW9uSW5wdXQpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLlVwZGF0ZVByb2R1Y3RPcHRpb25NdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5VcGRhdGVQcm9kdWN0T3B0aW9uTXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KFVQREFURV9QUk9EVUNUX09QVElPTiwge1xyXG4gICAgICAgICAgICBpbnB1dDogcGljayhpbnB1dCwgWydpZCcsICdjb2RlJywgJ3RyYW5zbGF0aW9ucycsICdjdXN0b21GaWVsZHMnXSksXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlUHJvZHVjdE9wdGlvbkdyb3VwKGlucHV0OiBDb2RlZ2VuLlVwZGF0ZVByb2R1Y3RPcHRpb25Hcm91cElucHV0KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5VcGRhdGVQcm9kdWN0T3B0aW9uR3JvdXBNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5VcGRhdGVQcm9kdWN0T3B0aW9uR3JvdXBNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oVVBEQVRFX1BST0RVQ1RfT1BUSU9OX0dST1VQLCB7XHJcbiAgICAgICAgICAgIGlucHV0OiBwaWNrKGlucHV0LCBbJ2lkJywgJ2NvZGUnLCAndHJhbnNsYXRpb25zJywgJ2N1c3RvbUZpZWxkcyddKSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRQcm9kdWN0T3B0aW9uR3JvdXBzKGZpbHRlclRlcm0/OiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UucXVlcnk8XHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdE9wdGlvbkdyb3Vwc1F1ZXJ5LFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RPcHRpb25Hcm91cHNRdWVyeVZhcmlhYmxlc1xyXG4gICAgICAgID4oR0VUX1BST0RVQ1RfT1BUSU9OX0dST1VQUywge1xyXG4gICAgICAgICAgICBmaWx0ZXJUZXJtLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldEFzc2V0TGlzdCh0YWtlID0gMTAsIHNraXAgPSAwKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PENvZGVnZW4uR2V0QXNzZXRMaXN0UXVlcnksIENvZGVnZW4uR2V0QXNzZXRMaXN0UXVlcnlWYXJpYWJsZXM+KFxyXG4gICAgICAgICAgICBHRVRfQVNTRVRfTElTVCxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHNraXAsXHJcbiAgICAgICAgICAgICAgICAgICAgdGFrZSxcclxuICAgICAgICAgICAgICAgICAgICBzb3J0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0ZWRBdDogU29ydE9yZGVyLkRFU0MsXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRBc3NldChpZDogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PENvZGVnZW4uR2V0QXNzZXRRdWVyeSwgQ29kZWdlbi5HZXRBc3NldFF1ZXJ5VmFyaWFibGVzPihHRVRfQVNTRVQsIHtcclxuICAgICAgICAgICAgaWQsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY3JlYXRlQXNzZXRzKGZpbGVzOiBGaWxlW10pIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkNyZWF0ZUFzc2V0c011dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkNyZWF0ZUFzc2V0c011dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihDUkVBVEVfQVNTRVRTLCB7XHJcbiAgICAgICAgICAgIGlucHV0OiBmaWxlcy5tYXAoZmlsZSA9PiAoeyBmaWxlIH0pKSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGVBc3NldChpbnB1dDogQ29kZWdlbi5VcGRhdGVBc3NldElucHV0KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxDb2RlZ2VuLlVwZGF0ZUFzc2V0TXV0YXRpb24sIENvZGVnZW4uVXBkYXRlQXNzZXRNdXRhdGlvblZhcmlhYmxlcz4oXHJcbiAgICAgICAgICAgIFVQREFURV9BU1NFVCxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgaW5wdXQsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWxldGVBc3NldHMoaWRzOiBzdHJpbmdbXSwgZm9yY2U6IGJvb2xlYW4pIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkRlbGV0ZUFzc2V0c011dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkRlbGV0ZUFzc2V0c011dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihERUxFVEVfQVNTRVRTLCB7XHJcbiAgICAgICAgICAgIGlucHV0OiB7XHJcbiAgICAgICAgICAgICAgICBhc3NldElkczogaWRzLFxyXG4gICAgICAgICAgICAgICAgZm9yY2UsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgYXNzaWduUHJvZHVjdHNUb0NoYW5uZWwoaW5wdXQ6IENvZGVnZW4uQXNzaWduUHJvZHVjdHNUb0NoYW5uZWxJbnB1dCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uQXNzaWduUHJvZHVjdHNUb0NoYW5uZWxNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5Bc3NpZ25Qcm9kdWN0c1RvQ2hhbm5lbE11dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihBU1NJR05fUFJPRFVDVFNfVE9fQ0hBTk5FTCwge1xyXG4gICAgICAgICAgICBpbnB1dCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVQcm9kdWN0c0Zyb21DaGFubmVsKGlucHV0OiBDb2RlZ2VuLlJlbW92ZVByb2R1Y3RzRnJvbUNoYW5uZWxJbnB1dCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uUmVtb3ZlUHJvZHVjdHNGcm9tQ2hhbm5lbE11dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLlJlbW92ZVByb2R1Y3RzRnJvbUNoYW5uZWxNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oUkVNT1ZFX1BST0RVQ1RTX0ZST01fQ0hBTk5FTCwge1xyXG4gICAgICAgICAgICBpbnB1dCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBhc3NpZ25WYXJpYW50c1RvQ2hhbm5lbChpbnB1dDogQ29kZWdlbi5Bc3NpZ25Qcm9kdWN0VmFyaWFudHNUb0NoYW5uZWxJbnB1dCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uQXNzaWduVmFyaWFudHNUb0NoYW5uZWxNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5Bc3NpZ25WYXJpYW50c1RvQ2hhbm5lbE11dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihBU1NJR05fVkFSSUFOVFNfVE9fQ0hBTk5FTCwge1xyXG4gICAgICAgICAgICBpbnB1dCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVWYXJpYW50c0Zyb21DaGFubmVsKGlucHV0OiBDb2RlZ2VuLlJlbW92ZVByb2R1Y3RWYXJpYW50c0Zyb21DaGFubmVsSW5wdXQpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLlJlbW92ZVZhcmlhbnRzRnJvbUNoYW5uZWxNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5SZW1vdmVWYXJpYW50c0Zyb21DaGFubmVsTXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KFJFTU9WRV9WQVJJQU5UU19GUk9NX0NIQU5ORUwsIHtcclxuICAgICAgICAgICAgaW5wdXQsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0VGFnKGlkOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UucXVlcnk8Q29kZWdlbi5HZXRUYWdRdWVyeSwgQ29kZWdlbi5HZXRUYWdRdWVyeVZhcmlhYmxlcz4oR0VUX1RBRywgeyBpZCB9KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRUYWdMaXN0KG9wdGlvbnM/OiBDb2RlZ2VuLlRhZ0xpc3RPcHRpb25zKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PENvZGVnZW4uR2V0VGFnTGlzdFF1ZXJ5LCBDb2RlZ2VuLkdldFRhZ0xpc3RRdWVyeVZhcmlhYmxlcz4oXHJcbiAgICAgICAgICAgIEdFVF9UQUdfTElTVCxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgb3B0aW9ucyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGNyZWF0ZVRhZyhpbnB1dDogQ29kZWdlbi5DcmVhdGVUYWdJbnB1dCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8Q29kZWdlbi5DcmVhdGVUYWdNdXRhdGlvbiwgQ29kZWdlbi5DcmVhdGVUYWdNdXRhdGlvblZhcmlhYmxlcz4oXHJcbiAgICAgICAgICAgIENSRUFURV9UQUcsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGlucHV0LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlVGFnKGlucHV0OiBDb2RlZ2VuLlVwZGF0ZVRhZ0lucHV0KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxDb2RlZ2VuLlVwZGF0ZVRhZ011dGF0aW9uLCBDb2RlZ2VuLlVwZGF0ZVRhZ011dGF0aW9uVmFyaWFibGVzPihcclxuICAgICAgICAgICAgVVBEQVRFX1RBRyxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgaW5wdXQsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWxldGVUYWcoaWQ6IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8Q29kZWdlbi5EZWxldGVUYWdNdXRhdGlvbiwgQ29kZWdlbi5EZWxldGVUYWdNdXRhdGlvblZhcmlhYmxlcz4oXHJcbiAgICAgICAgICAgIERFTEVURV9UQUcsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGlkLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
257
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1kYXRhLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2RhdGEvcHJvdmlkZXJzL3Byb2R1Y3QtZGF0YS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDekQsT0FBTyxFQUNILDJCQUEyQixFQUMzQixtQkFBbUIsRUFDbkIsMEJBQTBCLEVBQzFCLDBCQUEwQixFQUMxQixhQUFhLEVBQ2IsY0FBYyxFQUNkLDJCQUEyQixFQUMzQix1QkFBdUIsRUFDdkIsVUFBVSxFQUNWLGFBQWEsRUFDYixjQUFjLEVBQ2QscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsZUFBZSxFQUNmLFVBQVUsRUFDVixTQUFTLEVBQ1QsY0FBYyxFQUNkLGdCQUFnQixFQUNoQix3QkFBd0IsRUFDeEIseUJBQXlCLEVBQ3pCLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLG9DQUFvQyxFQUNwQywrQkFBK0IsRUFDL0IsMkJBQTJCLEVBQzNCLHlCQUF5QixFQUN6QixPQUFPLEVBQ1AsWUFBWSxFQUNaLHVCQUF1QixFQUN2QixnQ0FBZ0MsRUFDaEMsNEJBQTRCLEVBQzVCLDRCQUE0QixFQUM1QixlQUFlLEVBQ2YsWUFBWSxFQUNaLGNBQWMsRUFDZCxxQkFBcUIsRUFDckIsMkJBQTJCLEVBQzNCLHVCQUF1QixFQUN2QixVQUFVLEdBQ2IsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLEVBQ0gsZ0NBQWdDLEVBQ2hDLE9BQU8sRUFDUCxnQ0FBZ0MsR0FDbkMsTUFBTSxxQ0FBcUMsQ0FBQztBQUk3QyxNQUFNLE9BQU8sa0JBQWtCO0lBQzNCLFlBQW9CLGVBQWdDO1FBQWhDLG9CQUFlLEdB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SztTQUNSLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxNQUFNLENBQUMsRUFBVTtRQUNiLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQW9ELE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUcsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFnQztRQUN2QyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUM3QixZQUFZLEVBQ1o7WUFDSSxPQUFPO1NBQ1YsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUE2QjtRQUNuQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUM5QixVQUFVLEVBQ1Y7WUFDSSxLQUFLO1NBQ1IsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUE2QjtRQUNuQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUM5QixVQUFVLEVBQ1Y7WUFDSSxLQUFLO1NBQ1IsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELFNBQVMsQ0FBQyxFQUFVO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQzlCLFVBQVUsRUFDVjtZQUNJLEVBQUU7U0FDTCxDQUNKLENBQUM7SUFDTixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwaWNrIH0gZnJvbSAnQHZlbmR1cmUvY29tbW9uL2xpYi9waWNrJztcclxuXHJcbmltcG9ydCAqIGFzIENvZGVnZW4gZnJvbSAnLi4vLi4vY29tbW9uL2dlbmVyYXRlZC10eXBlcyc7XHJcbmltcG9ydCB7IFNvcnRPcmRlciB9IGZyb20gJy4uLy4uL2NvbW1vbi9nZW5lcmF0ZWQtdHlwZXMnO1xyXG5pbXBvcnQge1xyXG4gICAgQUREX09QVElPTl9HUk9VUF9UT19QUk9EVUNULFxyXG4gICAgQUREX09QVElPTl9UT19HUk9VUCxcclxuICAgIEFTU0lHTl9QUk9EVUNUU19UT19DSEFOTkVMLFxyXG4gICAgQVNTSUdOX1ZBUklBTlRTX1RPX0NIQU5ORUwsXHJcbiAgICBDUkVBVEVfQVNTRVRTLFxyXG4gICAgQ1JFQVRFX1BST0RVQ1QsXHJcbiAgICBDUkVBVEVfUFJPRFVDVF9PUFRJT05fR1JPVVAsXHJcbiAgICBDUkVBVEVfUFJPRFVDVF9WQVJJQU5UUyxcclxuICAgIENSRUFURV9UQUcsXHJcbiAgICBERUxFVEVfQVNTRVRTLFxyXG4gICAgREVMRVRFX1BST0RVQ1QsXHJcbiAgICBERUxFVEVfUFJPRFVDVF9PUFRJT04sXHJcbiAgICBERUxFVEVfUFJPRFVDVF9WQVJJQU5ULFxyXG4gICAgREVMRVRFX1BST0RVQ1RfVkFSSUFOVFMsXHJcbiAgICBERUxFVEVfUFJPRFVDVFMsXHJcbiAgICBERUxFVEVfVEFHLFxyXG4gICAgR0VUX0FTU0VULFxyXG4gICAgR0VUX0FTU0VUX0xJU1QsXHJcbiAgICBHRVRfUFJPRFVDVF9MSVNULFxyXG4gICAgR0VUX1BST0RVQ1RfT1BUSU9OX0dST1VQLFxyXG4gICAgR0VUX1BST0RVQ1RfT1BUSU9OX0dST1VQUyxcclxuICAgIEdFVF9QUk9EVUNUX1NJTVBMRSxcclxuICAgIEdFVF9QUk9EVUNUX1ZBUklBTlQsXHJcbiAgICBHRVRfUFJPRFVDVF9WQVJJQU5UX0xJU1QsXHJcbiAgICBHRVRfUFJPRFVDVF9WQVJJQU5UX0xJU1RfRk9SX1BST0RVQ1QsXHJcbiAgICBHRVRfUFJPRFVDVF9WQVJJQU5UX0xJU1RfU0lNUExFLFxyXG4gICAgR0VUX1BST0RVQ1RfVkFSSUFOVF9PUFRJT05TLFxyXG4gICAgR0VUX1BST0RVQ1RfV0lUSF9WQVJJQU5UUyxcclxuICAgIEdFVF9UQUcsXHJcbiAgICBHRVRfVEFHX0xJU1QsXHJcbiAgICBQUk9EVUNUX1NFTEVDVE9SX1NFQVJDSCxcclxuICAgIFJFTU9WRV9PUFRJT05fR1JPVVBfRlJPTV9QUk9EVUNULFxyXG4gICAgUkVNT1ZFX1BST0RVQ1RTX0ZST01fQ0hBTk5FTCxcclxuICAgIFJFTU9WRV9WQVJJQU5UU19GUk9NX0NIQU5ORUwsXHJcbiAgICBTRUFSQ0hfUFJPRFVDVFMsXHJcbiAgICBVUERBVEVfQVNTRVQsXHJcbiAgICBVUERBVEVfUFJPRFVDVCxcclxuICAgIFVQREFURV9QUk9EVUNUX09QVElPTixcclxuICAgIFVQREFURV9QUk9EVUNUX09QVElPTl9HUk9VUCxcclxuICAgIFVQREFURV9QUk9EVUNUX1ZBUklBTlRTLFxyXG4gICAgVVBEQVRFX1RBRyxcclxufSBmcm9tICcuLi9kZWZpbml0aW9ucy9wcm9kdWN0LWRlZmluaXRpb25zJztcclxuaW1wb3J0IHtcclxuICAgIEdFVF9QRU5ESU5HX1NFQVJDSF9JTkRFWF9VUERBVEVTLFxyXG4gICAgUkVJTkRFWCxcclxuICAgIFJVTl9QRU5ESU5HX1NFQVJDSF9JTkRFWF9VUERBVEVTLFxyXG59IGZyb20gJy4uL2RlZmluaXRpb25zL3NldHRpbmdzLWRlZmluaXRpb25zJztcclxuXHJcbmltcG9ydCB7IEJhc2VEYXRhU2VydmljZSB9IGZyb20gJy4vYmFzZS1kYXRhLnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0IGNsYXNzIFByb2R1Y3REYXRhU2VydmljZSB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJhc2VEYXRhU2VydmljZTogQmFzZURhdGFTZXJ2aWNlKSB7fVxyXG5cclxuICAgIHNlYXJjaFByb2R1Y3RzKHRlcm06IHN0cmluZywgdGFrZSA9IDEwLCBza2lwID0gMCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxDb2RlZ2VuLlNlYXJjaFByb2R1Y3RzUXVlcnksIENvZGVnZW4uU2VhcmNoUHJvZHVjdHNRdWVyeVZhcmlhYmxlcz4oXHJcbiAgICAgICAgICAgIFNFQVJDSF9QUk9EVUNUUyxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgaW5wdXQ6IHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXJtLFxyXG4gICAgICAgICAgICAgICAgICAgIHRha2UsXHJcbiAgICAgICAgICAgICAgICAgICAgc2tpcCxcclxuICAgICAgICAgICAgICAgICAgICBncm91cEJ5UHJvZHVjdDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm9kdWN0U2VsZWN0b3JTZWFyY2godGVybTogc3RyaW5nLCB0YWtlOiBudW1iZXIpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UucXVlcnk8XHJcbiAgICAgICAgICAgIENvZGVnZW4uUHJvZHVjdFNlbGVjdG9yU2VhcmNoUXVlcnksXHJcbiAgICAgICAgICAgIENvZGVnZW4uUHJvZHVjdFNlbGVjdG9yU2VhcmNoUXVlcnlWYXJpYWJsZXNcclxuICAgICAgICA+KFBST0RVQ1RfU0VMRUNUT1JfU0VBUkNILCB7XHJcbiAgICAgICAgICAgIHRha2UsXHJcbiAgICAgICAgICAgIHRlcm0sXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVpbmRleCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPENvZGVnZW4uUmVpbmRleE11dGF0aW9uPihSRUlOREVYKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRQZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxDb2RlZ2VuLkdldFBlbmRpbmdTZWFyY2hJbmRleFVwZGF0ZXNRdWVyeT4oXHJcbiAgICAgICAgICAgIEdFVF9QRU5ESU5HX1NFQVJDSF9JTkRFWF9VUERBVEVTLFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcnVuUGVuZGluZ1NlYXJjaEluZGV4VXBkYXRlcygpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPENvZGVnZW4uUnVuUGVuZGluZ1NlYXJjaEluZGV4VXBkYXRlc011dGF0aW9uPihcclxuICAgICAgICAgICAgUlVOX1BFTkRJTkdfU0VBUkNIX0lOREVYX1VQREFURVMsXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRQcm9kdWN0cyhvcHRpb25zOiBDb2RlZ2VuLlByb2R1Y3RMaXN0T3B0aW9ucykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxDb2RlZ2VuLkdldFByb2R1Y3RMaXN0UXVlcnksIENvZGVnZW4uR2V0UHJvZHVjdExpc3RRdWVyeVZhcmlhYmxlcz4oXHJcbiAgICAgICAgICAgIEdFVF9QUk9EVUNUX0xJU1QsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIG9wdGlvbnMsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRQcm9kdWN0KGlkOiBzdHJpbmcsIHZhcmlhbnRMaXN0T3B0aW9ucz86IENvZGVnZW4uUHJvZHVjdFZhcmlhbnRMaXN0T3B0aW9ucykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0V2l0aFZhcmlhbnRzUXVlcnksXHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdFdpdGhWYXJpYW50c1F1ZXJ5VmFyaWFibGVzXHJcbiAgICAgICAgPihHRVRfUFJPRFVDVF9XSVRIX1ZBUklBTlRTLCB7XHJcbiAgICAgICAgICAgIGlkLFxyXG4gICAgICAgICAgICB2YXJpYW50TGlzdE9wdGlvbnMsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0UHJvZHVjdFNpbXBsZShpZDogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RTaW1wbGVRdWVyeSxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0U2ltcGxlUXVlcnlWYXJpYWJsZXNcclxuICAgICAgICA+KEdFVF9QUk9EVUNUX1NJTVBMRSwge1xyXG4gICAgICAgICAgICBpZCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRQcm9kdWN0VmFyaWFudHNTaW1wbGUob3B0aW9uczogQ29kZWdlbi5Qcm9kdWN0VmFyaWFudExpc3RPcHRpb25zLCBwcm9kdWN0SWQ/OiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UucXVlcnk8XHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdFZhcmlhbnRMaXN0U2ltcGxlUXVlcnksXHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdFZhcmlhbnRMaXN0U2ltcGxlUXVlcnlWYXJpYWJsZXNcclxuICAgICAgICA+KEdFVF9QUk9EVUNUX1ZBUklBTlRfTElTVF9TSU1QTEUsIHsgb3B0aW9ucywgcHJvZHVjdElkIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFByb2R1Y3RWYXJpYW50cyhvcHRpb25zOiBDb2RlZ2VuLlByb2R1Y3RWYXJpYW50TGlzdE9wdGlvbnMpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UucXVlcnk8XHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdFZhcmlhbnRMaXN0UXVlcnksXHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdFZhcmlhbnRMaXN0UXVlcnlWYXJpYWJsZXNcclxuICAgICAgICA+KEdFVF9QUk9EVUNUX1ZBUklBTlRfTElTVCwgeyBvcHRpb25zIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFByb2R1Y3RWYXJpYW50c0ZvclByb2R1Y3Qob3B0aW9uczogQ29kZWdlbi5Qcm9kdWN0VmFyaWFudExpc3RPcHRpb25zLCBwcm9kdWN0SWQ6IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0VmFyaWFudExpc3RGb3JQcm9kdWN0UXVlcnksXHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdFZhcmlhbnRMaXN0Rm9yUHJvZHVjdFF1ZXJ5VmFyaWFibGVzXHJcbiAgICAgICAgPihHRVRfUFJPRFVDVF9WQVJJQU5UX0xJU1RfRk9SX1BST0RVQ1QsIHsgb3B0aW9ucywgcHJvZHVjdElkIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFByb2R1Y3RWYXJpYW50KGlkOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UucXVlcnk8XHJcbiAgICAgICAgICAgIENvZGVnZW4uR2V0UHJvZHVjdFZhcmlhbnRRdWVyeSxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0VmFyaWFudFF1ZXJ5VmFyaWFibGVzXHJcbiAgICAgICAgPihHRVRfUFJPRFVDVF9WQVJJQU5ULCB7IGlkIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFByb2R1Y3RWYXJpYW50c09wdGlvbnMoaWQ6IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0VmFyaWFudE9wdGlvbnNRdWVyeSxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0VmFyaWFudE9wdGlvbnNRdWVyeVZhcmlhYmxlc1xyXG4gICAgICAgID4oR0VUX1BST0RVQ1RfVkFSSUFOVF9PUFRJT05TLCB7XHJcbiAgICAgICAgICAgIGlkLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFByb2R1Y3RPcHRpb25Hcm91cChpZDogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RPcHRpb25Hcm91cFF1ZXJ5LFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RPcHRpb25Hcm91cFF1ZXJ5VmFyaWFibGVzXHJcbiAgICAgICAgPihHRVRfUFJPRFVDVF9PUFRJT05fR1JPVVAsIHtcclxuICAgICAgICAgICAgaWQsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY3JlYXRlUHJvZHVjdChwcm9kdWN0OiBDb2RlZ2VuLkNyZWF0ZVByb2R1Y3RJbnB1dCkge1xyXG4gICAgICAgIGNvbnN0IGlucHV0OiBDb2RlZ2VuLkNyZWF0ZVByb2R1Y3RNdXRhdGlvblZhcmlhYmxlcyA9IHtcclxuICAgICAgICAgICAgaW5wdXQ6IHBpY2socHJvZHVjdCwgW1xyXG4gICAgICAgICAgICAgICAgJ2VuYWJsZWQnLFxyXG4gICAgICAgICAgICAgICAgJ3RyYW5zbGF0aW9ucycsXHJcbiAgICAgICAgICAgICAgICAnY3VzdG9tRmllbGRzJyxcclxuICAgICAgICAgICAgICAgICdhc3NldElkcycsXHJcbiAgICAgICAgICAgICAgICAnZmVhdHVyZWRBc3NldElkJyxcclxuICAgICAgICAgICAgICAgICdmYWNldFZhbHVlSWRzJyxcclxuICAgICAgICAgICAgXSksXHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkNyZWF0ZVByb2R1Y3RNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5DcmVhdGVQcm9kdWN0TXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KENSRUFURV9QUk9EVUNULCBpbnB1dCk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlUHJvZHVjdChwcm9kdWN0OiBDb2RlZ2VuLlVwZGF0ZVByb2R1Y3RJbnB1dCkge1xyXG4gICAgICAgIGNvbnN0IGlucHV0OiBDb2RlZ2VuLlVwZGF0ZVByb2R1Y3RNdXRhdGlvblZhcmlhYmxlcyA9IHtcclxuICAgICAgICAgICAgaW5wdXQ6IHBpY2socHJvZHVjdCwgW1xyXG4gICAgICAgICAgICAgICAgJ2lkJyxcclxuICAgICAgICAgICAgICAgICdlbmFibGVkJyxcclxuICAgICAgICAgICAgICAgICd0cmFuc2xhdGlvbnMnLFxyXG4gICAgICAgICAgICAgICAgJ2N1c3RvbUZpZWxkcycsXHJcbiAgICAgICAgICAgICAgICAnYXNzZXRJZHMnLFxyXG4gICAgICAgICAgICAgICAgJ2ZlYXR1cmVkQXNzZXRJZCcsXHJcbiAgICAgICAgICAgICAgICAnZmFjZXRWYWx1ZUlkcycsXHJcbiAgICAgICAgICAgIF0pLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5VcGRhdGVQcm9kdWN0TXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uVXBkYXRlUHJvZHVjdE11dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihVUERBVEVfUFJPRFVDVCwgaW5wdXQpO1xyXG4gICAgfVxyXG5cclxuICAgIGRlbGV0ZVByb2R1Y3QoaWQ6IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uRGVsZXRlUHJvZHVjdE11dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkRlbGV0ZVByb2R1Y3RNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oREVMRVRFX1BST0RVQ1QsIHtcclxuICAgICAgICAgICAgaWQsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZGVsZXRlUHJvZHVjdHMoaWRzOiBzdHJpbmdbXSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uRGVsZXRlUHJvZHVjdHNNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5EZWxldGVQcm9kdWN0c011dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihERUxFVEVfUFJPRFVDVFMsIHtcclxuICAgICAgICAgICAgaWRzLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGNyZWF0ZVByb2R1Y3RWYXJpYW50cyhpbnB1dDogQ29kZWdlbi5DcmVhdGVQcm9kdWN0VmFyaWFudElucHV0W10pIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkNyZWF0ZVByb2R1Y3RWYXJpYW50c011dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkNyZWF0ZVByb2R1Y3RWYXJpYW50c011dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihDUkVBVEVfUFJPRFVDVF9WQVJJQU5UUywge1xyXG4gICAgICAgICAgICBpbnB1dCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGVQcm9kdWN0VmFyaWFudHModmFyaWFudHM6IENvZGVnZW4uVXBkYXRlUHJvZHVjdFZhcmlhbnRJbnB1dFtdKSB7XHJcbiAgICAgICAgY29uc3QgaW5wdXQ6IENvZGVnZW4uVXBkYXRlUHJvZHVjdFZhcmlhbnRzTXV0YXRpb25WYXJpYWJsZXMgPSB7XHJcbiAgICAgICAgICAgIGlucHV0OiB2YXJpYW50cy5tYXAoXHJcbiAgICAgICAgICAgICAgICBwaWNrKFtcclxuICAgICAgICAgICAgICAgICAgICAnaWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICdlbmFibGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAndHJhbnNsYXRpb25zJyxcclxuICAgICAgICAgICAgICAgICAgICAnc2t1JyxcclxuICAgICAgICAgICAgICAgICAgICAncHJpY2UnLFxyXG4gICAgICAgICAgICAgICAgICAgICd0YXhDYXRlZ29yeUlkJyxcclxuICAgICAgICAgICAgICAgICAgICAnZmFjZXRWYWx1ZUlkcycsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2ZlYXR1cmVkQXNzZXRJZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2Fzc2V0SWRzJyxcclxuICAgICAgICAgICAgICAgICAgICAnb3B0aW9uSWRzJyxcclxuICAgICAgICAgICAgICAgICAgICAndHJhY2tJbnZlbnRvcnknLFxyXG4gICAgICAgICAgICAgICAgICAgICdvdXRPZlN0b2NrVGhyZXNob2xkJyxcclxuICAgICAgICAgICAgICAgICAgICAndXNlR2xvYmFsT3V0T2ZTdG9ja1RocmVzaG9sZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3N0b2NrT25IYW5kJyxcclxuICAgICAgICAgICAgICAgICAgICAnY3VzdG9tRmllbGRzJyxcclxuICAgICAgICAgICAgICAgIF0pLFxyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5VcGRhdGVQcm9kdWN0VmFyaWFudHNNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5VcGRhdGVQcm9kdWN0VmFyaWFudHNNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oVVBEQVRFX1BST0RVQ1RfVkFSSUFOVFMsIGlucHV0KTtcclxuICAgIH1cclxuXHJcbiAgICBkZWxldGVQcm9kdWN0VmFyaWFudChpZDogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5EZWxldGVQcm9kdWN0VmFyaWFudE11dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkRlbGV0ZVByb2R1Y3RWYXJpYW50TXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KERFTEVURV9QUk9EVUNUX1ZBUklBTlQsIHtcclxuICAgICAgICAgICAgaWQsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZGVsZXRlUHJvZHVjdFZhcmlhbnRzKGlkczogc3RyaW5nW10pIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkRlbGV0ZVByb2R1Y3RWYXJpYW50c011dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkRlbGV0ZVByb2R1Y3RWYXJpYW50c011dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihERUxFVEVfUFJPRFVDVF9WQVJJQU5UUywge1xyXG4gICAgICAgICAgICBpZHMsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY3JlYXRlUHJvZHVjdE9wdGlvbkdyb3Vwcyhwcm9kdWN0T3B0aW9uR3JvdXA6IENvZGVnZW4uQ3JlYXRlUHJvZHVjdE9wdGlvbkdyb3VwSW5wdXQpIHtcclxuICAgICAgICBjb25zdCBpbnB1dDogQ29kZWdlbi5DcmVhdGVQcm9kdWN0T3B0aW9uR3JvdXBNdXRhdGlvblZhcmlhYmxlcyA9IHtcclxuICAgICAgICAgICAgaW5wdXQ6IHByb2R1Y3RPcHRpb25Hcm91cCxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uQ3JlYXRlUHJvZHVjdE9wdGlvbkdyb3VwTXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uQ3JlYXRlUHJvZHVjdE9wdGlvbkdyb3VwTXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KENSRUFURV9QUk9EVUNUX09QVElPTl9HUk9VUCwgaW5wdXQpO1xyXG4gICAgfVxyXG5cclxuICAgIGFkZE9wdGlvbkdyb3VwVG9Qcm9kdWN0KHZhcmlhYmxlczogQ29kZWdlbi5BZGRPcHRpb25Hcm91cFRvUHJvZHVjdE11dGF0aW9uVmFyaWFibGVzKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5BZGRPcHRpb25Hcm91cFRvUHJvZHVjdE11dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkFkZE9wdGlvbkdyb3VwVG9Qcm9kdWN0TXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KEFERF9PUFRJT05fR1JPVVBfVE9fUFJPRFVDVCwgdmFyaWFibGVzKTtcclxuICAgIH1cclxuXHJcbiAgICBhZGRPcHRpb25Ub0dyb3VwKGlucHV0OiBDb2RlZ2VuLkNyZWF0ZVByb2R1Y3RPcHRpb25JbnB1dCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uQWRkT3B0aW9uVG9Hcm91cE11dGF0aW9uLFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkFkZE9wdGlvblRvR3JvdXBNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oQUREX09QVElPTl9UT19HUk9VUCwgeyBpbnB1dCB9KTtcclxuICAgIH1cclxuXHJcbiAgICBkZWxldGVQcm9kdWN0T3B0aW9uKGlkOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkRlbGV0ZVByb2R1Y3RPcHRpb25NdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5EZWxldGVQcm9kdWN0T3B0aW9uTXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KERFTEVURV9QUk9EVUNUX09QVElPTiwgeyBpZCB9KTtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVPcHRpb25Hcm91cEZyb21Qcm9kdWN0KHZhcmlhYmxlczogQ29kZWdlbi5SZW1vdmVPcHRpb25Hcm91cEZyb21Qcm9kdWN0TXV0YXRpb25WYXJpYWJsZXMpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLlJlbW92ZU9wdGlvbkdyb3VwRnJvbVByb2R1Y3RNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5SZW1vdmVPcHRpb25Hcm91cEZyb21Qcm9kdWN0TXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KFJFTU9WRV9PUFRJT05fR1JPVVBfRlJPTV9QUk9EVUNULCB2YXJpYWJsZXMpO1xyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZVByb2R1Y3RPcHRpb24oaW5wdXQ6IENvZGVnZW4uVXBkYXRlUHJvZHVjdE9wdGlvbklucHV0KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5VcGRhdGVQcm9kdWN0T3B0aW9uTXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uVXBkYXRlUHJvZHVjdE9wdGlvbk11dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihVUERBVEVfUFJPRFVDVF9PUFRJT04sIHtcclxuICAgICAgICAgICAgaW5wdXQ6IHBpY2soaW5wdXQsIFsnaWQnLCAnY29kZScsICd0cmFuc2xhdGlvbnMnLCAnY3VzdG9tRmllbGRzJ10pLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZVByb2R1Y3RPcHRpb25Hcm91cChpbnB1dDogQ29kZWdlbi5VcGRhdGVQcm9kdWN0T3B0aW9uR3JvdXBJbnB1dCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8XHJcbiAgICAgICAgICAgIENvZGVnZW4uVXBkYXRlUHJvZHVjdE9wdGlvbkdyb3VwTXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uVXBkYXRlUHJvZHVjdE9wdGlvbkdyb3VwTXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KFVQREFURV9QUk9EVUNUX09QVElPTl9HUk9VUCwge1xyXG4gICAgICAgICAgICBpbnB1dDogcGljayhpbnB1dCwgWydpZCcsICdjb2RlJywgJ3RyYW5zbGF0aW9ucycsICdjdXN0b21GaWVsZHMnXSksXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0UHJvZHVjdE9wdGlvbkdyb3VwcyhmaWx0ZXJUZXJtPzogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkdldFByb2R1Y3RPcHRpb25Hcm91cHNRdWVyeSxcclxuICAgICAgICAgICAgQ29kZWdlbi5HZXRQcm9kdWN0T3B0aW9uR3JvdXBzUXVlcnlWYXJpYWJsZXNcclxuICAgICAgICA+KEdFVF9QUk9EVUNUX09QVElPTl9HUk9VUFMsIHtcclxuICAgICAgICAgICAgZmlsdGVyVGVybSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRBc3NldExpc3QodGFrZSA9IDEwLCBza2lwID0gMCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxDb2RlZ2VuLkdldEFzc2V0TGlzdFF1ZXJ5LCBDb2RlZ2VuLkdldEFzc2V0TGlzdFF1ZXJ5VmFyaWFibGVzPihcclxuICAgICAgICAgICAgR0VUX0FTU0VUX0xJU1QsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcclxuICAgICAgICAgICAgICAgICAgICBza2lwLFxyXG4gICAgICAgICAgICAgICAgICAgIHRha2UsXHJcbiAgICAgICAgICAgICAgICAgICAgc29ydDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjcmVhdGVkQXQ6IFNvcnRPcmRlci5ERVNDLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0QXNzZXQoaWQ6IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxDb2RlZ2VuLkdldEFzc2V0UXVlcnksIENvZGVnZW4uR2V0QXNzZXRRdWVyeVZhcmlhYmxlcz4oR0VUX0FTU0VULCB7XHJcbiAgICAgICAgICAgIGlkLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGNyZWF0ZUFzc2V0cyhmaWxlczogRmlsZVtdKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5DcmVhdGVBc3NldHNNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5DcmVhdGVBc3NldHNNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oQ1JFQVRFX0FTU0VUUywge1xyXG4gICAgICAgICAgICBpbnB1dDogZmlsZXMubWFwKGZpbGUgPT4gKHsgZmlsZSB9KSksXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlQXNzZXQoaW5wdXQ6IENvZGVnZW4uVXBkYXRlQXNzZXRJbnB1dCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8Q29kZWdlbi5VcGRhdGVBc3NldE11dGF0aW9uLCBDb2RlZ2VuLlVwZGF0ZUFzc2V0TXV0YXRpb25WYXJpYWJsZXM+KFxyXG4gICAgICAgICAgICBVUERBVEVfQVNTRVQsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGlucHV0LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgZGVsZXRlQXNzZXRzKGlkczogc3RyaW5nW10sIGZvcmNlOiBib29sZWFuKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5EZWxldGVBc3NldHNNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5EZWxldGVBc3NldHNNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oREVMRVRFX0FTU0VUUywge1xyXG4gICAgICAgICAgICBpbnB1dDoge1xyXG4gICAgICAgICAgICAgICAgYXNzZXRJZHM6IGlkcyxcclxuICAgICAgICAgICAgICAgIGZvcmNlLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGFzc2lnblByb2R1Y3RzVG9DaGFubmVsKGlucHV0OiBDb2RlZ2VuLkFzc2lnblByb2R1Y3RzVG9DaGFubmVsSW5wdXQpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkFzc2lnblByb2R1Y3RzVG9DaGFubmVsTXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uQXNzaWduUHJvZHVjdHNUb0NoYW5uZWxNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oQVNTSUdOX1BST0RVQ1RTX1RPX0NIQU5ORUwsIHtcclxuICAgICAgICAgICAgaW5wdXQsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlUHJvZHVjdHNGcm9tQ2hhbm5lbChpbnB1dDogQ29kZWdlbi5SZW1vdmVQcm9kdWN0c0Zyb21DaGFubmVsSW5wdXQpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLlJlbW92ZVByb2R1Y3RzRnJvbUNoYW5uZWxNdXRhdGlvbixcclxuICAgICAgICAgICAgQ29kZWdlbi5SZW1vdmVQcm9kdWN0c0Zyb21DaGFubmVsTXV0YXRpb25WYXJpYWJsZXNcclxuICAgICAgICA+KFJFTU9WRV9QUk9EVUNUU19GUk9NX0NIQU5ORUwsIHtcclxuICAgICAgICAgICAgaW5wdXQsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgYXNzaWduVmFyaWFudHNUb0NoYW5uZWwoaW5wdXQ6IENvZGVnZW4uQXNzaWduUHJvZHVjdFZhcmlhbnRzVG9DaGFubmVsSW5wdXQpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPFxyXG4gICAgICAgICAgICBDb2RlZ2VuLkFzc2lnblZhcmlhbnRzVG9DaGFubmVsTXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uQXNzaWduVmFyaWFudHNUb0NoYW5uZWxNdXRhdGlvblZhcmlhYmxlc1xyXG4gICAgICAgID4oQVNTSUdOX1ZBUklBTlRTX1RPX0NIQU5ORUwsIHtcclxuICAgICAgICAgICAgaW5wdXQsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlVmFyaWFudHNGcm9tQ2hhbm5lbChpbnB1dDogQ29kZWdlbi5SZW1vdmVQcm9kdWN0VmFyaWFudHNGcm9tQ2hhbm5lbElucHV0KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLm11dGF0ZTxcclxuICAgICAgICAgICAgQ29kZWdlbi5SZW1vdmVWYXJpYW50c0Zyb21DaGFubmVsTXV0YXRpb24sXHJcbiAgICAgICAgICAgIENvZGVnZW4uUmVtb3ZlVmFyaWFudHNGcm9tQ2hhbm5lbE11dGF0aW9uVmFyaWFibGVzXHJcbiAgICAgICAgPihSRU1PVkVfVkFSSUFOVFNfRlJPTV9DSEFOTkVMLCB7XHJcbiAgICAgICAgICAgIGlucHV0LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFRhZyhpZDogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYmFzZURhdGFTZXJ2aWNlLnF1ZXJ5PENvZGVnZW4uR2V0VGFnUXVlcnksIENvZGVnZW4uR2V0VGFnUXVlcnlWYXJpYWJsZXM+KEdFVF9UQUcsIHsgaWQgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0VGFnTGlzdChvcHRpb25zPzogQ29kZWdlbi5UYWdMaXN0T3B0aW9ucykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5xdWVyeTxDb2RlZ2VuLkdldFRhZ0xpc3RRdWVyeSwgQ29kZWdlbi5HZXRUYWdMaXN0UXVlcnlWYXJpYWJsZXM+KFxyXG4gICAgICAgICAgICBHRVRfVEFHX0xJU1QsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIG9wdGlvbnMsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjcmVhdGVUYWcoaW5wdXQ6IENvZGVnZW4uQ3JlYXRlVGFnSW5wdXQpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPENvZGVnZW4uQ3JlYXRlVGFnTXV0YXRpb24sIENvZGVnZW4uQ3JlYXRlVGFnTXV0YXRpb25WYXJpYWJsZXM+KFxyXG4gICAgICAgICAgICBDUkVBVEVfVEFHLFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBpbnB1dCxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZVRhZyhpbnB1dDogQ29kZWdlbi5VcGRhdGVUYWdJbnB1dCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmJhc2VEYXRhU2VydmljZS5tdXRhdGU8Q29kZWdlbi5VcGRhdGVUYWdNdXRhdGlvbiwgQ29kZWdlbi5VcGRhdGVUYWdNdXRhdGlvblZhcmlhYmxlcz4oXHJcbiAgICAgICAgICAgIFVQREFURV9UQUcsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGlucHV0LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgZGVsZXRlVGFnKGlkOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlRGF0YVNlcnZpY2UubXV0YXRlPENvZGVnZW4uRGVsZXRlVGFnTXV0YXRpb24sIENvZGVnZW4uRGVsZXRlVGFnTXV0YXRpb25WYXJpYWJsZXM+KFxyXG4gICAgICAgICAgICBERUxFVEVfVEFHLFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBpZCxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -30,7 +30,7 @@ function transformRelations(input, customFieldConfig) {
|
|
|
30
30
|
delete input.customFields[field.name];
|
|
31
31
|
input.customFields[getGraphQlInputName(field)] =
|
|
32
32
|
field.list && Array.isArray(entityValue)
|
|
33
|
-
? entityValue.map(v => v?.id)
|
|
33
|
+
? entityValue.map(v => (typeof v === 'string' ? v : v?.id))
|
|
34
34
|
: entityValue === null
|
|
35
35
|
? null
|
|
36
36
|
: entityValue?.id;
|
|
@@ -43,4 +43,4 @@ function transformRelations(input, customFieldConfig) {
|
|
|
43
43
|
function hasCustomFields(input) {
|
|
44
44
|
return input != null && input.hasOwnProperty('customFields') && typeof input.customFields === 'object';
|
|
45
45
|
}
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtLXJlbGF0aW9uLWN1c3RvbS1maWVsZC1pbnB1dHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2RhdGEvdXRpbHMvdHJhbnNmb3JtLXJlbGF0aW9uLWN1c3RvbS1maWVsZC1pbnB1dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFLdkU7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLGtDQUFrQyxDQUVoRCxTQUFZLEVBQUUsaUJBQXNDO0lBQ2xELElBQUksU0FBUyxDQUFDLEtBQUssRUFBRTtRQUNqQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2hDLEtBQUssTUFBTSxJQUFJLElBQUksU0FBUyxDQUFDLEtBQUssRUFBRTtnQkFDaEMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLGlCQUFpQixDQUFDLENBQUM7YUFDL0M7U0FDSjthQUFNO1lBQ0gsa0JBQWtCLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1NBQzFEO0tBQ0o7SUFDRCxPQUFPLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBQzVELENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBUyxrQkFBa0IsQ0FBSSxLQUFRLEVBQUUsaUJBQXNDO0lBQzNFLEtBQUssTUFBTSxLQUFLLElBQUksaUJBQWlCLEVBQUU7UUFDbkMsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFVBQVUsRUFBRTtZQUMzQixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDeEIsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ25ELElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUMvQyxPQUFPLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUN0QyxLQUFLLENBQUMsWUFBWSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUMxQyxLQUFLLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDOzRCQUNwQyxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQzs0QkFDM0QsQ0FBQyxDQUFDLFdBQVcsS0FBSyxJQUFJO2dDQUN0QixDQUFDLENBQUMsSUFBSTtnQ0FDTixDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztpQkFDN0I7YUFDSjtTQUNKO0tBQ0o7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDO0FBRUQsU0FBUyxlQUFlLENBQUMsS0FBVTtJQUMvQixPQUFPLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsSUFBSSxPQUFPLEtBQUssQ0FBQyxZQUFZLEtBQUssUUFBUSxDQUFDO0FBQzNHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRHcmFwaFFsSW5wdXROYW1lIH0gZnJvbSAnQHZlbmR1cmUvY29tbW9uL2xpYi9zaGFyZWQtdXRpbHMnO1xuaW1wb3J0IHsgc2ltcGxlRGVlcENsb25lIH0gZnJvbSAnQHZlbmR1cmUvY29tbW9uL2xpYi9zaW1wbGUtZGVlcC1jbG9uZSc7XG5cbmltcG9ydCB7IEN1c3RvbUZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29tbW9uL2dlbmVyYXRlZC10eXBlcyc7XG5cbi8qKlxuICogVHJhbnNmb3JtcyBhbnkgY3VzdG9tIGZpZWxkIFwicmVsYXRpb25cIiB0eXBlIGlucHV0cyBpbnRvIHRoZSBjb3JyZXNwb25kaW5nIGA8bmFtZT5JZGAgZm9ybWF0LFxuICogYXMgZXhwZWN0ZWQgYnkgdGhlIHNlcnZlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybVJlbGF0aW9uQ3VzdG9tRmllbGRJbnB1dHM8XG4gICAgVCBleHRlbmRzIHsgaW5wdXQ/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgQXJyYXk8UmVjb3JkPHN0cmluZywgYW55Pj4gfSAmIFJlY29yZDxzdHJpbmcsIGFueT4gPSBhbnksXG4+KHZhcmlhYmxlczogVCwgY3VzdG9tRmllbGRDb25maWc6IEN1c3RvbUZpZWxkQ29uZmlnW10pOiBUIHtcbiAgICBpZiAodmFyaWFibGVzLmlucHV0KSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhcmlhYmxlcy5pbnB1dCkpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiB2YXJpYWJsZXMuaW5wdXQpIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm1SZWxhdGlvbnMoaXRlbSwgY3VzdG9tRmllbGRDb25maWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdHJhbnNmb3JtUmVsYXRpb25zKHZhcmlhYmxlcy5pbnB1dCwgY3VzdG9tRmllbGRDb25maWcpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cmFuc2Zvcm1SZWxhdGlvbnModmFyaWFibGVzLCBjdXN0b21GaWVsZENvbmZpZyk7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKiBXaGVuIHBlcnNpc3RpbmcgY3VzdG9tIGZpZWxkcywgd2UgbmVlZCB0byBzZW5kIGp1c3QgdGhlIElEcyBvZiB0aGUgcmVsYXRpb25zLFxuICogcmF0aGVyIHRoYW4gdGhlIG9iamVjdHMgdGhlbXNlbHZlcy5cbiAqL1xuZnVuY3Rpb24gdHJhbnNmb3JtUmVsYXRpb25zPFQ+KGlucHV0OiBULCBjdXN0b21GaWVsZENvbmZpZzogQ3VzdG9tRmllbGRDb25maWdbXSkge1xuICAgIGZvciAoY29uc3QgZmllbGQgb2YgY3VzdG9tRmllbGRDb25maWcpIHtcbiAgICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdyZWxhdGlvbicpIHtcbiAgICAgICAgICAgIGlmIChoYXNDdXN0b21GaWVsZHMoaW5wdXQpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZW50aXR5VmFsdWUgPSBpbnB1dC5jdXN0b21GaWVsZHNbZmllbGQubmFtZV07XG4gICAgICAgICAgICAgICAgaWYgKGlucHV0LmN1c3RvbUZpZWxkcy5oYXNPd25Qcm9wZXJ0eShmaWVsZC5uYW1lKSkge1xuICAgICAgICAgICAgICAgICAgICBkZWxldGUgaW5wdXQuY3VzdG9tRmllbGRzW2ZpZWxkLm5hbWVdO1xuICAgICAgICAgICAgICAgICAgICBpbnB1dC5jdXN0b21GaWVsZHNbZ2V0R3JhcGhRbElucHV0TmFtZShmaWVsZCldID1cbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLmxpc3QgJiYgQXJyYXkuaXNBcnJheShlbnRpdHlWYWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGVudGl0eVZhbHVlLm1hcCh2ID0+ICh0eXBlb2YgdiA9PT0gJ3N0cmluZycgPyB2IDogdj8uaWQpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogZW50aXR5VmFsdWUgPT09IG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGVudGl0eVZhbHVlPy5pZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGlucHV0O1xufVxuXG5mdW5jdGlvbiBoYXNDdXN0b21GaWVsZHMoaW5wdXQ6IGFueSk6IGlucHV0IGlzIHsgY3VzdG9tRmllbGRzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IH0ge1xuICAgIHJldHVybiBpbnB1dCAhPSBudWxsICYmIGlucHV0Lmhhc093blByb3BlcnR5KCdjdXN0b21GaWVsZHMnKSAmJiB0eXBlb2YgaW5wdXQuY3VzdG9tRmllbGRzID09PSAnb2JqZWN0Jztcbn1cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVsay1hY3Rpb24tdHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL3Byb3ZpZGVycy9idWxrLWFjdGlvbi1yZWdpc3RyeS9idWxrLWFjdGlvbi10eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIEEgdmFsaWQgbG9jYXRpb24gb2YgYSBsaXN0IHZpZXcgdGhhdCBzdXBwb3J0cyB0aGUgYnVsayBhY3Rpb25zIEFQSS5cbiAqXG4gKiBAc2luY2UgMS44LjBcbiAqIEBkb2NzQ2F0ZWdvcnkgYnVsay1hY3Rpb25zXG4gKiBAZG9jc1BhZ2UgQnVsa0FjdGlvblxuICovXG5leHBvcnQgdHlwZSBCdWxrQWN0aW9uTG9jYXRpb25JZCA9XG4gICAgfCAncHJvZHVjdC1saXN0J1xuICAgIHwgJ2ZhY2V0LWxpc3QnXG4gICAgfCAnY29sbGVjdGlvbi1saXN0J1xuICAgIHwgJ2N1c3RvbWVyLWxpc3QnXG4gICAgfCAnY3VzdG9tZXItZ3JvdXAtbGlzdCdcbiAgICB8ICdjdXN0b21lci1ncm91cC1tZW1iZXJzLWxpc3QnXG4gICAgfCAnY3VzdG9tZXItZ3JvdXAtbWVtYmVycy1waWNrZXItbGlzdCdcbiAgICB8ICdwcm9tb3Rpb24tbGlzdCdcbiAgICB8ICdzZWxsZXItbGlzdCdcbiAgICB8ICdjaGFubmVsLWxpc3QnXG4gICAgfCAnYWRtaW5pc3RyYXRvci1saXN0J1xuICAgIHwgJ3JvbGUtbGlzdCdcbiAgICB8ICdzaGlwcGluZy1tZXRob2QtbGlzdCdcbiAgICB8ICdzdG9jay1sb2NhdGlvbi1saXN0J1xuICAgIHwgJ3BheW1lbnQtbWV0aG9kLWxpc3QnXG4gICAgfCAndGF4LWNhdGVnb3J5LWxpc3QnXG4gICAgfCAndGF4LXJhdGUtbGlzdCdcbiAgICB8ICd6b25lLWxpc3QnXG4gICAgfCAnem9uZS1tZW1iZXJzLWxpc3QnXG4gICAgfCBzdHJpbmc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKiBUaGlzIGlzIHRoZSBhcmd1bWVudCB3aGljaCBnZXRzIHBhc3NlZCB0byB0aGUgYGdldFRyYW5zbGF0aW9uVmFyc2AgYW5kIGBpc1Zpc2libGVgIGZ1bmN0aW9uc1xuICogb2YgdGhlIEJ1bGtBY3Rpb24gZGVmaW5pdGlvbi5cbiAqXG4gKiBAc2luY2UgMS44LjBcbiAqIEBkb2NzQ2F0ZWdvcnkgYnVsay1hY3Rpb25zXG4gKiBAZG9jc1BhZ2UgQnVsa0FjdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1bGtBY3Rpb25GdW5jdGlvbkNvbnRleHQ8SXRlbVR5cGUsIENvbXBvbmVudFR5cGU+IHtcbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb25cbiAgICAgKiBBbiBhcnJheSBvZiB0aGUgc2VsZWN0ZWQgaXRlbXMgZnJvbSB0aGUgbGlzdC5cbiAgICAgKi9cbiAgICBzZWxlY3Rpb246IEl0ZW1UeXBlW107XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uXG4gICAgICogVGhlIGNvbXBvbmVudCBpbnN0YW5jZSB0aGF0IGlzIGhvc3RpbmcgdGhlIGxpc3Qgdmlldy4gRm9yIGluc3RhbmNlLFxuICAgICAqIGBQcm9kdWN0TGlzdENvbXBvbmVudGAuIFRoaXMgY2FuIGJlIHVzZWQgdG8gY2FsbCBtZXRob2RzIG9uIHRoZSBpbnN0YW5jZSxcbiAgICAgKiBlLmcuIGNhbGxpbmcgYGhvc3RDb21wb25lbnQucmVmcmVzaCgpYCB0byBmb3JjZSBhIGxpc3QgcmVmcmVzaCBhZnRlclxuICAgICAqIGRlbGV0aW5nIHRoZSBzZWxlY3RlZCBpdGVtcy5cbiAgICAgKi9cbiAgICBob3N0Q29tcG9uZW50OiBDb21wb25lbnRUeXBlO1xuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvblxuICAgICAqIFRoZSBBbmd1bGFyIFtJbmplY3Rvcl0oaHR0cHM6Ly9hbmd1bGFyLmlvL2FwaS9jb3JlL0luamVjdG9yKSB3aGljaCBjYW4gYmUgdXNlZFxuICAgICAqIHRvIGdldCBzZXJ2aWNlIGluc3RhbmNlcyB3aGljaCBtaWdodCBiZSBuZWVkZWQgaW4gdGhlIGNsaWNrIGhhbmRsZXIuXG4gICAgICovXG4gICAgaW5qZWN0b3I6IEluamVjdG9yO1xuICAgIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZTtcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIFRoaXMgaXMgdGhlIGFyZ3VtZW50IHdoaWNoIGdldHMgcGFzc2VkIHRvIHRoZSBgb25DbGlja2AgZnVuY3Rpb24gb2YgYSBCdWxrQWN0aW9uLlxuICpcbiAqIEBzaW5jZSAxLjguMFxuICogQGRvY3NDYXRlZ29yeSBidWxrLWFjdGlvbnNcbiAqIEBkb2NzUGFnZSBCdWxrQWN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVsa0FjdGlvbkNsaWNrQ29udGV4dDxJdGVtVHlwZSwgQ29tcG9uZW50VHlwZT5cbiAgICBleHRlbmRzIEJ1bGtBY3Rpb25GdW5jdGlvbkNvbnRleHQ8SXRlbVR5cGUsIENvbXBvbmVudFR5cGU+IHtcbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb25cbiAgICAgKiBDbGVhcnMgdGhlIHNlbGVjdGlvbiBpbiB0aGUgYWN0aXZlIGxpc3Qgdmlldy5cbiAgICAgKi9cbiAgICBjbGVhclNlbGVjdGlvbjogKCkgPT4gdm9pZDtcbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb25cbiAgICAgKiBUaGUgY2xpY2sgZXZlbnQgaXRzZWxmLlxuICAgICAqL1xuICAgIGV2ZW50OiBNb3VzZUV2ZW50O1xufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvblxuICogQ29uZmlndXJlcyBhIGJ1bGsgYWN0aW9uIHdoaWNoIGNhbiBiZSBwZXJmb3JtZWQgb24gYWxsIHNlbGVjdGVkIGl0ZW1zIGluIGEgbGlzdCB2aWV3LlxuICpcbiAqIEZvciBhIGZ1bGwgZXhhbXBsZSwgc2VlIHRoZSB7QGxpbmsgcmVnaXN0ZXJCdWxrQWN0aW9ufSBkb2NzLlxuICpcbiAqIEBzaW5jZSAxLjguMFxuICogQGRvY3NDYXRlZ29yeSBidWxrLWFjdGlvbnNcbiAqIEBkb2NzUGFnZSBCdWxrQWN0aW9uXG4gKiBAZG9jc1dlaWdodCAwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVsa0FjdGlvbjxJdGVtVHlwZSA9IGFueSwgQ29tcG9uZW50VHlwZSA9IGFueT4ge1xuICAgIGxvY2F0aW9uOiBCdWxrQWN0aW9uTG9jYXRpb25JZDtcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvblxuICAgICAqIEFuIG9wdGlvbmFsIGZ1bmN0aW9uIHRoYXQgc2hvdWxkIHJlc29sdmUgdG8gYSBtYXAgb2YgdHJhbnNsYXRpb24gdmFyaWFibGVzIHdoaWNoIGNhbiBiZVxuICAgICAqIHVzZWQgd2hlbiB0cmFuc2xhdGluZyB0aGUgYGxhYmVsYCBzdHJpbmcuXG4gICAgICovXG4gICAgZ2V0VHJhbnNsYXRpb25WYXJzPzogKFxuICAgICAgICBjb250ZXh0OiBCdWxrQWN0aW9uRnVuY3Rpb25Db250ZXh0PEl0ZW1UeXBlLCBDb21wb25lbnRUeXBlPixcbiAgICApID0+IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj4gfCBQcm9taXNlPFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj4+O1xuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvblxuICAgICAqIEEgdmFsaWQgW0NsYXJpdHkgSWNvbnNdKGh0dHBzOi8vY29yZS5jbGFyaXR5LmRlc2lnbi9mb3VuZGF0aW9uL2ljb25zL3NoYXBlcy8pIGljb24gc2hhcGUsIGUuZy5cbiAgICAgKiBcImNvZ1wiLCBcInVzZXJcIiwgXCJpbmZvLXN0YW5kYXJkXCIuXG4gICAgICovXG4gICAgaWNvbj86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb25cbiAgICAgKiBBIGNsYXNzIHRvIGJlIGFkZGVkIHRvIHRoZSBpY29uIGVsZW1lbnQuIEV4YW1wbGVzOlxuICAgICAqXG4gICAgICogLSBpcy1zdWNjZXNzXG4gICAgICogLSBpcy1kYW5nZXJcbiAgICAgKiAtIGlzLXdhcm5pbmdcbiAgICAgKiAtIGlzLWluZm9cbiAgICAgKiAtIGlzLWhpZ2hsaWdodFxuICAgICAqL1xuICAgIGljb25DbGFzcz86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb25cbiAgICAgKiBEZWZpbmVzIHRoZSBsb2dpYyB0aGF0IGV4ZWN1dGVzIHdoZW4gdGhlIGJ1bGsgYWN0aW9uIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgICAqL1xuICAgIG9uQ2xpY2s6IChjb250ZXh0OiBCdWxrQWN0aW9uQ2xpY2tDb250ZXh0PEl0ZW1UeXBlLCBDb21wb25lbnRUeXBlPikgPT4gdm9pZDtcbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb25cbiAgICAgKiBBIGZ1bmN0aW9uIHRoYXQgZGV0ZXJtaW5lcyB3aGV0aGVyIHRoaXMgYnVsayBhY3Rpb24gaXRlbSBzaG91bGQgYmUgZGlzcGxheWVkIGluIHRoZSBtZW51LlxuICAgICAqIElmIG5vdCBkZWZpbmVkLCB0aGUgaXRlbSB3aWxsIGFsd2F5cyBiZSBkaXNwbGF5ZWQuXG4gICAgICpcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIHdpbGwgYmUgaW52b2tlZCBlYWNoIHRpbWUgdGhlIHNlbGVjdGlvbiBpcyBjaGFuZ2VkLCBzbyB0cnkgdG8gYXZvaWQgZXhwZW5zaXZlIGNvZGVcbiAgICAgKiBydW5uaW5nIGhlcmUuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYFR5cGVTY3JpcHRcbiAgICAgKiBpbXBvcnQgeyByZWdpc3RlckJ1bGtBY3Rpb24sIERhdGFTZXJ2aWNlIH0gZnJvbSAnXFxAdmVuZHVyZS9hZG1pbi11aS9jb3JlJztcbiAgICAgKlxuICAgICAqIHJlZ2lzdGVyQnVsa0FjdGlvbih7XG4gICAgICogICBsb2NhdGlvbjogJ3Byb2R1Y3QtbGlzdCcsXG4gICAgICogICBsYWJlbDogJ0Fzc2lnbiB0byBjaGFubmVsJyxcbiAgICAgKiAgIC8vIE9ubHkgZGlzcGxheSB0aGlzIGFjdGlvbiBpZiB0aGVyZSBhcmUgbXVsdGlwbGUgY2hhbm5lbHNcbiAgICAgKiAgIGlzVmlzaWJsZTogKHsgaW5qZWN0b3IgfSkgPT4gaW5qZWN0b3IuZ2V0KERhdGFTZXJ2aWNlKS5jbGllbnRcbiAgICAgKiAgICAgLnVzZXJTdGF0dXMoKVxuICAgICAqICAgICAubWFwU2luZ2xlKCh7IHVzZXJTdGF0dXMgfSkgPT4gMSA8IHVzZXJTdGF0dXMuY2hhbm5lbHMubGVuZ3RoKVxuICAgICAqICAgICAudG9Qcm9taXNlKCksXG4gICAgICogICAvLyAuLi5cbiAgICAgKiB9KTtcbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICBpc1Zpc2libGU/OiAoY29udGV4dDogQnVsa0FjdGlvbkZ1bmN0aW9uQ29udGV4dDxJdGVtVHlwZSwgQ29tcG9uZW50VHlwZT4pID0+IGJvb2xlYW4gfCBQcm9taXNlPGJvb2xlYW4+O1xuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvblxuICAgICAqIENvbnRyb2wgdGhlIGRpc3BsYXkgb2YgdGhpcyBpdGVtIGJhc2VkIG9uIHRoZSB1c2VyIHBlcm1pc3Npb25zLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBUeXBlU2NyaXB0XG4gICAgICogcmVnaXN0ZXJCdWxrQWN0aW9uKHtcbiAgICAgKiAgIC8vIENhbiBiZSBzcGVjaWZpZWQgYXMgYSBzaW1wbGUgc3RyaW5nXG4gICAgICogICByZXF1aXJlc1Blcm1pc3Npb246IFBlcm1pc3Npb24uVXBkYXRlUHJvZHVjdCxcbiAgICAgKlxuICAgICAqICAgLy8gT3IgYXMgYSBmdW5jdGlvbiB0aGF0IHJldHVybnMgYSBib29sZWFuIGlmIHBlcm1pc3Npb25zIGFyZSBzYXRpc2ZpZWRcbiAgICAgKiAgIHJlcXVpcmVzUGVybWlzc2lvbjogdXNlclBlcm1pc3Npb25zID0+XG4gICAgICogICAgIHVzZXJQZXJtaXNzaW9ucy5pbmNsdWRlcyhQZXJtaXNzaW9uLlVwZGF0ZUNhdGFsb2cpIHx8XG4gICAgICogICAgIHVzZXJQZXJtaXNzaW9ucy5pbmNsdWRlcyhQZXJtaXNzaW9uLlVwZGF0ZVByb2R1Y3QpLFxuICAgICAqICAgLy8gLi4uXG4gICAgICogfSlcbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICByZXF1aXJlc1Blcm1pc3Npb24/OiBzdHJpbmcgfCAoKHVzZXJQZXJtaXNzaW9uczogc3RyaW5nW10pID0+IGJvb2xlYW4pO1xufVxuIl19
|
|
@@ -35,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.3", ngImpor
|
|
|
35
35
|
providedIn: 'root',
|
|
36
36
|
}]
|
|
37
37
|
}], ctorParameters: function () { return [{ type: i1.ComponentRegistryService }]; } });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWZpZWxkLWNvbXBvbmVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9wcm92aWRlcnMvY3VzdG9tLWZpZWxkLWNvbXBvbmVudC9jdXN0b20tZmllbGQtY29tcG9uZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBWTNDOzs7O0dBSUc7QUFJSCxNQUFNLE9BQU8sMkJBQTJCO0lBQ3BDLFlBQW9CLHdCQUFrRDtRQUFsRCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO0lBQUcsQ0FBQztJQUUxRTs7O09BR0c7SUFDSCwwQkFBMEIsQ0FBQyxNQUE2QixFQUFFLFNBQWlCO1FBQ3ZFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwRCxPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDaEYsQ0FBQztJQUVPLFVBQVUsQ0FBQyxNQUE2QixFQUFFLFNBQWlCLEVBQUUsYUFBc0I7UUFDdkYsSUFBSSxFQUFFLEdBQUcsTUFBTSxDQUFDO1FBQ2hCLElBQUksYUFBYSxFQUFFO1lBQ2YsRUFBRSxJQUFJLGVBQWUsQ0FBQztTQUN6QjtRQUNELEVBQUUsSUFBSSxHQUFHLEdBQUcsU0FBUyxDQUFDO1FBQ3RCLE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQzs4R0FuQlEsMkJBQTJCO2tIQUEzQiwyQkFBMkIsY0FGeEIsTUFBTTs7MkZBRVQsMkJBQTJCO2tCQUh2QyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRm9ybUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tbW9uL2NvbXBvbmVudC1yZWdpc3RyeS10eXBlcyc7XG5pbXBvcnQgeyBDdXN0b21GaWVsZHMsIEN1c3RvbUZpZWxkc0ZyYWdtZW50IH0gZnJvbSAnLi4vLi4vY29tbW9uL2dlbmVyYXRlZC10eXBlcyc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWdpc3RyeVNlcnZpY2UgfSBmcm9tICcuLi9jb21wb25lbnQtcmVnaXN0cnkvY29tcG9uZW50LXJlZ2lzdHJ5LnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSBDdXN0b21GaWVsZENvbmZpZ1R5cGUgPSBDdXN0b21GaWVsZHNGcmFnbWVudDtcblxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21GaWVsZENvbnRyb2wgZXh0ZW5kcyBGb3JtSW5wdXRDb21wb25lbnQ8Q3VzdG9tRmllbGRDb25maWdUeXBlPiB7fVxuXG5leHBvcnQgdHlwZSBDdXN0b21GaWVsZEVudGl0eU5hbWUgPSBFeGNsdWRlPGtleW9mIEN1c3RvbUZpZWxkcywgJ19fdHlwZW5hbWUnPjtcblxuLyoqXG4gKiBUaGlzIHNlcnZpY2UgYWxsb3dzIHRoZSByZWdpc3RyYXRpb24gb2YgY3VzdG9tIGNvbnRyb2xzIGZvciBjdXN0b21GaWVsZHMuXG4gKlxuICogQGRlcHJlY2F0ZWQgVGhlIENvbXBvbmVudFJlZ2lzdHJ5U2VydmljZSBub3cgaGFuZGxlcyBjdXN0b20gZmllbGQgY29tcG9uZW50cyBkaXJlY3RseS5cbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tRmllbGRDb21wb25lbnRTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbXBvbmVudFJlZ2lzdHJ5U2VydmljZTogQ29tcG9uZW50UmVnaXN0cnlTZXJ2aWNlKSB7fVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIHdoZXRoZXIgYSBjdXN0b20gY29tcG9uZW50IGlzIHJlZ2lzdGVyZWQgZm9yIHRoZSBnaXZlbiBlbnRpdHkgY3VzdG9tIGZpZWxkLFxuICAgICAqIGFuZCBpZiBzbyByZXR1cm5zIHRoZSBJRCBvZiB0aGF0IGNvbXBvbmVudC5cbiAgICAgKi9cbiAgICBjdXN0b21GaWVsZENvbXBvbmVudEV4aXN0cyhlbnRpdHk6IEN1c3RvbUZpZWxkRW50aXR5TmFtZSwgZmllbGROYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICBjb25zdCBpZCA9IHRoaXMuZ2VuZXJhdGVJZChlbnRpdHksIGZpZWxkTmFtZSwgdHJ1ZSk7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbXBvbmVudFJlZ2lzdHJ5U2VydmljZS5nZXRJbnB1dENvbXBvbmVudChpZCkgPyBpZCA6IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdlbmVyYXRlSWQoZW50aXR5OiBDdXN0b21GaWVsZEVudGl0eU5hbWUsIGZpZWxkTmFtZTogc3RyaW5nLCBpc0N1c3RvbUZpZWxkOiBib29sZWFuKSB7XG4gICAgICAgIGxldCBpZCA9IGVudGl0eTtcbiAgICAgICAgaWYgKGlzQ3VzdG9tRmllbGQpIHtcbiAgICAgICAgICAgIGlkICs9ICctY3VzdG9tRmllbGRzJztcbiAgICAgICAgfVxuICAgICAgICBpZCArPSAnLScgKyBmaWVsZE5hbWU7XG4gICAgICAgIHJldHVybiBpZDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -150,7 +150,7 @@ export class DataTableFilterCollection {
|
|
|
150
150
|
connectToRoute(route) {
|
|
151
151
|
this.valueChanges.subscribe(value => {
|
|
152
152
|
this.router.navigate(['./'], {
|
|
153
|
-
queryParams: { [this.#filtersQueryParamName]: this.serialize() },
|
|
153
|
+
queryParams: { [this.#filtersQueryParamName]: this.serialize(), page: 1 },
|
|
154
154
|
relativeTo: route,
|
|
155
155
|
queryParamsHandling: 'merge',
|
|
156
156
|
});
|
|
@@ -235,4 +235,4 @@ export class DataTableFilterCollection {
|
|
|
235
235
|
return new FilterWithValue(filter, value, v => this.#valueChanges$.next(v));
|
|
236
236
|
}
|
|
237
237
|
}
|
|
238
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS1maWx0ZXItY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvcHJvdmlkZXJzL2RhdGEtdGFibGUvZGF0YS10YWJsZS1maWx0ZXItY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sTUFBTSxNQUFNLGFBQWEsQ0FBQztBQU9qQyxPQUFPLEVBQ0gsZUFBZSxHQVVsQixNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE1BQU0sT0FBTyxlQUFlO0lBRXhCLFlBQ29CLE1BQWtDLEVBQzNDLEtBQWlDLEVBQ3hDLFFBQXNEO1FBRnRDLFdBQU0sR0FBTixNQUFNLENBQTRCO1FBQzNDLFVBQUssR0FBTCxLQUFLLENBQTRCO1FBSHBDLGdCQUFXLEdBQUcsSUFBSSxHQUFHLEVBQStDLENBQUM7UUFNekUsSUFBSSxRQUFRLEVBQUU7WUFDVixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUNsQztJQUNMLENBQUM7SUFFRCxRQUFRLENBQUMsRUFBK0M7UUFDcEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFpQztRQUN6QyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixLQUFLLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDL0IsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2I7SUFDTCxDQUFDO0lBRUQsTUFBTTtRQUNGLE9BQU8sSUFB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WUFDMUIsS0FBSyxRQUFRO2dCQUNULE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvQztnQkFDSSxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2hDO0lBQ0wsQ0FBQztJQUVPLFNBQVM7UUFDYixPQUFPLElBQUksQ0FBQyxjQUFjO2FBQ3JCLEdBQUcsQ0FDQSxDQUFDLGVBQWUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUNuQixHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FDL0U7YUFDQSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUVPLGdCQUFnQixDQUFDLE1BQWlDLEVBQUUsS0FBZ0M7UUFDeEYsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRU8sb0JBQW9CLENBQ3hCLE1BQWlDLEVBQ2pDLEtBQWdEO1FBRWhELE9BQU8sSUFBSSxlQUFlLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IG1hcmtlciBhcyBfIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJztcclxuaW1wb3J0IHsgQ3VzdG9tRmllbGRUeXBlIH0gZnJvbSAnQHZlbmR1cmUvY29tbW9uL2xpYi9zaGFyZWQtdHlwZXMnO1xyXG5pbXBvcnQgeyBhc3NlcnROZXZlciB9IGZyb20gJ0B2ZW5kdXJlL2NvbW1vbi9saWIvc2hhcmVkLXV0aWxzJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgZXh0ZW5kIGZyb20gJ2p1c3QtZXh0ZW5kJztcclxuaW1wb3J0IHtcclxuICAgIEN1c3RvbUZpZWxkQ29uZmlnLFxyXG4gICAgRGF0ZU9wZXJhdG9ycyxcclxuICAgIE51bWJlck9wZXJhdG9ycyxcclxuICAgIFN0cmluZ09wZXJhdG9ycyxcclxufSBmcm9tICcuLi8uLi9jb21tb24vZ2VuZXJhdGVkLXR5cGVzJztcclxuaW1wb3J0IHtcclxuICAgIERhdGFUYWJsZUZpbHRlcixcclxuICAgIERhdGFUYWJsZUZpbHRlckJvb2xlYW5UeXBlLFxyXG4gICAgRGF0YVRhYmxlRmlsdGVyQ3VzdG9tVHlwZSxcclxuICAgIERhdGFUYWJsZUZpbHRlckRhdGVSYW5nZVR5cGUsXHJcbiAgICBEYXRhVGFibGVGaWx0ZXJOdW1iZXJUeXBlLFxyXG4gICAgRGF0YVRhYmxlRmlsdGVyT3B0aW9ucyxcclxuICAgIERhdGFUYWJsZUZpbHRlclNlbGVjdFR5cGUsXHJcbiAgICBEYXRhVGFibGVGaWx0ZXJUZXh0VHlwZSxcclxuICAgIERhdGFUYWJsZUZpbHRlclR5cGUsXHJcbiAgICBEYXRhVGFibGVGaWx0ZXJWYWx1ZSxcclxufSBmcm9tICcuL2RhdGEtdGFibGUtZmlsdGVyJztcclxuXHJcbmV4cG9ydCBjbGFzcyBGaWx0ZXJXaXRoVmFsdWU8VHlwZSBleHRlbmRzIERhdGFUYWJsZUZpbHRlclR5cGUgPSBEYXRhVGFibGVGaWx0ZXJUeXBlPiB7XHJcbiAgICBwcml2YXRlIG9uVXBkYXRlRm5zID0gbmV3IFNldDwodmFsdWU6IERhdGFUYWJsZUZpbHRlclZhbHVlPFR5cGU+KSA9PiB2b2lkPigpO1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IGZpbHRlcjogRGF0YVRhYmxlRmlsdGVyPGFueSwgVHlwZT4sXHJcbiAgICAgICAgcHVibGljIHZhbHVlOiBEYXRhVGFibGVGaWx0ZXJWYWx1ZTxUeXBlPixcclxuICAgICAgICBvblVwZGF0ZT86ICh2YWx1ZTogRGF0YVRhYmxlRmlsdGVyVmFsdWU8VHlwZT4pID0+IHZvaWQsXHJcbiAgICApIHtcclxuICAgICAgICBpZiAob25VcGRhdGUpIHtcclxuICAgICAgICAgICAgdGhpcy5vblVwZGF0ZUZucy5hZGQob25VcGRhdGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvblVwZGF0ZShmbjogKHZhbHVlOiBEYXRhVGFibGVGaWx0ZXJWYWx1ZTxUeXBlPikgPT4gdm9pZCkge1xyXG4gICAgICAgIHRoaXMub25VcGRhdGVGbnMuYWRkKGZuKTtcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGVWYWx1ZSh2YWx1ZTogRGF0YVRhYmxlRmlsdGVyVmFsdWU8VHlwZT4pIHtcclxuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICAgICAgZm9yIChjb25zdCBmbiBvZiB0aGlzLm9uVXBkYXRlRm5zKSB7XHJcbiAgICAgICAgICAgIGZuKHZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaXNUZXh0KCk6IHRoaXMgaXMgRmlsdGVyV2l0aFZhbHVlPERhdGFUYWJsZUZpbHRlclRleHRUeXBlPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyLnR5cGUua2luZCA9PT0gJ3RleHQnO1xyXG4gICAgfVxyXG5cclxuICAgIGlzTnVtYmVyKCk6IHRoaXMgaXMgRmlsdGVyV2l0aFZhbHVlPERhdGFUYWJsZUZpbHRlck51bWJlclR5cGU+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXIudHlwZS5raW5kID09PSAnbnVtYmVyJztcclxuICAgIH1cclxuXHJcbiAgICBpc0Jvb2xlYW4oKTogdGhpcyBpcyBGaWx0ZXJXaXRoVmFsdWU8RGF0YVRhYmxlRmlsdGVyQm9vbGVhblR5cGU+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXIudHlwZS5raW5kID09PSAnYm9vbGVhbic7XHJcbiAgICB9XHJcblxyXG4gICAgaXNTZWxlY3QoKTogdGhpcyBpcyBGaWx0ZXJXaXRoVmFsdWU8RGF0YVRhYmxlRmlsdGVyU2VsZWN0VHlwZT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlci50eXBlLmtpbmQgPT09ICdzZWxlY3QnO1xyXG4gICAgfVxyXG5cclxuICAgIGlzRGF0ZVJhbmdlKCk6IHRoaXMgaXMgRmlsdGVyV2l0aFZhbHVlPERhdGFUYWJsZUZpbHRlckRhdGVSYW5nZVR5cGU+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXIudHlwZS5raW5kID09PSAnZGF0ZVJhbmdlJztcclxuICAgIH1cclxuXHJcbiAgICBpc0N1c3RvbSgpOiB0aGlzIGlzIEZpbHRlcldpdGhWYWx1ZTxEYXRhVGFibGVGaWx0ZXJDdXN0b21UeXBlPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyLnR5cGUua2luZCA9PT0gJ2N1c3RvbSc7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEYXRhVGFibGVGaWx0ZXJDb2xsZWN0aW9uPEZpbHRlcklucHV0IGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYW55PiA9IFJlY29yZDxzdHJpbmcsIGFueT4+IHtcclxuICAgIHJlYWRvbmx5ICNmaWx0ZXJzOiBBcnJheTxEYXRhVGFibGVGaWx0ZXI8RmlsdGVySW5wdXQsIGFueT4+ID0gW107XHJcbiAgICAjYWN0aXZlRmlsdGVyczogRmlsdGVyV2l0aFZhbHVlW10gPSBbXTtcclxuICAgICN2YWx1ZUNoYW5nZXMkID0gbmV3IFN1YmplY3Q8RmlsdGVyV2l0aFZhbHVlW10+KCk7XHJcbiAgICAjY29ubmVjdGVkVG9Sb3V0ZXIgPSBmYWxzZTtcclxuICAgIHZhbHVlQ2hhbmdlcyA9IHRoaXMuI3ZhbHVlQ2hhbmdlcyQuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICByZWFkb25seSAjZmlsdGVyc1F1ZXJ5UGFyYW1OYW1lID0gJ2ZpbHRlcnMnO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHt9XHJcblxyXG4gICAgZ2V0IGxlbmd0aCgpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiNmaWx0ZXJzLmxlbmd0aDtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgYWN0aXZlRmlsdGVycygpOiBGaWx0ZXJXaXRoVmFsdWVbXSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuI2FjdGl2ZUZpbHRlcnM7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkRmlsdGVyPEZpbHRlclR5cGUgZXh0ZW5kcyBEYXRhVGFibGVGaWx0ZXJUeXBlPihcclxuICAgICAgICBjb25maWc6IERhdGFUYWJsZUZpbHRlck9wdGlvbnM8RmlsdGVySW5wdXQsIEZpbHRlclR5cGU+LFxyXG4gICAgKTogRGF0YVRhYmxlRmlsdGVyQ29sbGVjdGlvbjxGaWx0ZXJJbnB1dD4ge1xyXG4gICAgICAgIGlmICh0aGlzLiNjb25uZWN0ZWRUb1JvdXRlcikge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXHJcbiAgICAgICAgICAgICAgICAnQ2Fubm90IGFkZCBmaWx0ZXIgYWZ0ZXIgY29ubmVjdGluZyB0byByb3V0ZXIuIE1ha2Ugc3VyZSB0byBjYWxsIGFkZEZpbHRlcigpIGJlZm9yZSBjb25uZWN0VG9Sb3V0ZSgpJyxcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy4jZmlsdGVycy5wdXNoKFxyXG4gICAgICAgICAgICBuZXcgRGF0YVRhYmxlRmlsdGVyKGNvbmZpZywgKGZpbHRlciwgdmFsdWUpID0+IHRoaXMub25BY3RpdmF0ZUZpbHRlcihmaWx0ZXIsIHZhbHVlKSksXHJcbiAgICAgICAgKTtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBhZGRGaWx0ZXJzPEZpbHRlclR5cGUgZXh0ZW5kcyBEYXRhVGFibGVGaWx0ZXJUeXBlPihcclxuICAgICAgICBjb25maWdzOiBBcnJheTxEYXRhVGFibGVGaWx0ZXJPcHRpb25zPEZpbHRlcklucHV0LCBGaWx0ZXJUeXBlPj4sXHJcbiAgICApOiBEYXRhVGFibGVGaWx0ZXJDb2xsZWN0aW9uPEZpbHRlcklucHV0PiB7XHJcbiAgICAgICAgZm9yIChjb25zdCBjb25maWcgb2YgY29uZmlncykge1xyXG4gICAgICAgICAgICB0aGlzLmFkZEZpbHRlcihjb25maWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBhZGREYXRlRmlsdGVycygpOiBGaWx0ZXJJbnB1dCBleHRlbmRzIHtcclxuICAgICAgICBjcmVhdGVkQXQ/OiBEYXRlT3BlcmF0b3JzIHwgbnVsbDtcclxuICAgICAgICB1cGRhdGVkQXQ/OiBEYXRlT3BlcmF0b3JzIHwgbnVsbDtcclxuICAgIH1cclxuICAgICAgICA/IERhdGFUYWJsZUZpbHRlckNvbGxlY3Rpb248RmlsdGVySW5wdXQ+XHJcbiAgICAgICAgOiBuZXZlciB7XHJcbiAgICAgICAgdGhpcy5hZGRGaWx0ZXIoe1xyXG4gICAgICAgICAgICBuYW1lOiAnY3JlYXRlZEF0JyxcclxuICAgICAgICAgICAgdHlwZTogeyBraW5kOiAnZGF0ZVJhbmdlJyB9LFxyXG4gICAgICAgICAgICBsYWJlbDogXygnY29tbW9uLmNyZWF0ZWQtYXQnKSxcclxuICAgICAgICAgICAgZmlsdGVyRmllbGQ6ICdjcmVhdGVkQXQnLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuYWRkRmlsdGVyKHtcclxuICAgICAgICAgICAgbmFtZTogJ3VwZGF0ZWRBdCcsXHJcbiAgICAgICAgICAgIHR5cGU6IHsga2luZDogJ2RhdGVSYW5nZScgfSxcclxuICAgICAgICAgICAgbGFiZWw6IF8oJ2NvbW1vbi51cGRhdGVkLWF0JyksXHJcbiAgICAgICAgICAgIGZpbHRlckZpZWxkOiAndXBkYXRlZEF0JyxcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gdGhpcyBhcyBhbnk7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkQ3VzdG9tRmllbGRGaWx0ZXJzKGN1c3RvbUZpZWxkczogQ3VzdG9tRmllbGRDb25maWdbXSkge1xyXG4gICAgICAgIGZvciAoY29uc3QgY29uZmlnIG9mIGN1c3RvbUZpZWxkcykge1xyXG4gICAgICAgICAgICBjb25zdCB0eXBlID0gY29uZmlnLnR5cGUgYXMgQ3VzdG9tRmllbGRUeXBlO1xyXG4gICAgICAgICAgICBpZiAoY29uZmlnLmxpc3QpIHtcclxuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBmaWx0ZXJUeXBlOiBEYXRhVGFibGVGaWx0ZXJUeXBlIHwgdW5kZWZpbmVkO1xyXG4gICAgICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcclxuICAgICAgICAgICAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxyXG4gICAgICAgICAgICAgICAgICAgIGZpbHRlclR5cGUgPSB7IGtpbmQ6ICdib29sZWFuJyB9O1xyXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgY2FzZSAnaW50JzpcclxuICAgICAgICAgICAgICAgIGNhc2UgJ2Zsb2F0JzpcclxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJUeXBlID0geyBraW5kOiAnbnVtYmVyJyB9O1xyXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgY2FzZSAnZGF0ZXRpbWUnOlxyXG4gICAgICAgICAgICAgICAgICAgIGZpbHRlclR5cGUgPSB7IGtpbmQ6ICdkYXRlUmFuZ2UnIH07XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICBjYXNlICdzdHJpbmcnOlxyXG4gICAgICAgICAgICAgICAgY2FzZSAnbG9jYWxlU3RyaW5nJzpcclxuICAgICAgICAgICAgICAgIGNhc2UgJ2xvY2FsZVRleHQnOlxyXG4gICAgICAgICAgICAgICAgY2FzZSAndGV4dCc6XHJcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyVHlwZSA9IHsga2luZDogJ3RleHQnIH07XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICBjYXNlICdyZWxhdGlvbic6XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gQ2Fubm90IHNvcnQgcmVsYXRpb25zXHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgICAgIGFzc2VydE5ldmVyKHR5cGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChmaWx0ZXJUeXBlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmFkZEZpbHRlcih7XHJcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogY29uZmlnLm5hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogZmlsdGVyVHlwZSxcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbDogY29uZmlnLmxhYmVsID8/IGNvbmZpZy5uYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgIGZpbHRlckZpZWxkOiBjb25maWcubmFtZSxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIGdldEZpbHRlcihuYW1lOiBzdHJpbmcpOiBEYXRhVGFibGVGaWx0ZXI8RmlsdGVySW5wdXQ+IHwgdW5kZWZpbmVkIHtcclxuICAgICAgICByZXR1cm4gdGhpcy4jZmlsdGVycy5maW5kKGYgPT4gZi5uYW1lID09PSBuYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRGaWx0ZXJzKCk6IEFycmF5PERhdGFUYWJsZUZpbHRlcjxGaWx0ZXJJbnB1dD4+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy4jZmlsdGVycztcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVBY3RpdmVGaWx0ZXJBdEluZGV4KGluZGV4OiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLiNhY3RpdmVGaWx0ZXJzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgICAgdGhpcy4jdmFsdWVDaGFuZ2VzJC5uZXh0KHRoaXMuI2FjdGl2ZUZpbHRlcnMpO1xyXG4gICAgfVxyXG5cclxuICAgIGNyZWF0ZUZpbHRlcklucHV0KCk6IEZpbHRlcklucHV0IHtcclxuICAgICAgICByZXR1cm4gdGhpcy4jYWN0aXZlRmlsdGVycy5yZWR1Y2UoKGFjYywgeyBmaWx0ZXIsIHZhbHVlIH0pID0+IHtcclxuICAgICAgICAgICAgY29uc3QgbmV3VmFsdWUgPSB2YWx1ZSAhPSBudWxsID8gZmlsdGVyLnRvRmlsdGVySW5wdXQodmFsdWUpIDoge307XHJcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGV4dGVuZCh0cnVlLCBhY2MsIG5ld1ZhbHVlKTtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdCBhcyBGaWx0ZXJJbnB1dDtcclxuICAgICAgICB9LCB7fSBhcyBGaWx0ZXJJbnB1dCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29ubmVjdFRvUm91dGUocm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XHJcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycuLyddLCB7XHJcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogeyBbdGhpcy4jZmlsdGVyc1F1ZXJ5UGFyYW1OYW1lXTogdGhpcy5zZXJpYWxpemUoKSB9LFxyXG4gICAgICAgICAgICAgICAgcmVsYXRpdmVUbzogcm91dGUsXHJcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtc0hhbmRsaW5nOiAnbWVyZ2UnLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBjb25zdCBmaWx0ZXJRdWVyeVBhcmFtcyA9IChyb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtTWFwLmdldCh0aGlzLiNmaWx0ZXJzUXVlcnlQYXJhbU5hbWUpID8/ICcnKVxyXG4gICAgICAgICAgICAuc3BsaXQoJzsnKVxyXG4gICAgICAgICAgICAubWFwKHZhbHVlID0+IHZhbHVlLnNwbGl0KCc6JykpXHJcbiAgICAgICAgICAgIC5tYXAoKFtuYW1lLCB2YWx1ZV0pID0+ICh7IG5hbWUsIHZhbHVlIH0pKTtcclxuICAgICAgICBmb3IgKGNvbnN0IHsgbmFtZSwgdmFsdWUgfSBvZiBmaWx0ZXJRdWVyeVBhcmFtcykge1xyXG4gICAgICAgICAgICBjb25zdCBmaWx0ZXIgPSB0aGlzLmdldEZpbHRlcihuYW1lKTtcclxuICAgICAgICAgICAgaWYgKGZpbHRlcikge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdmFsID0gdGhpcy5kZXNlcmlhbGl6ZVZhbHVlKGZpbHRlciwgdmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy4jYWN0aXZlRmlsdGVycy5wdXNoKHRoaXMuY3JlYXRlRmFjZXRXaXRoVmFsdWUoZmlsdGVyLCB2YWwpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLiNjb25uZWN0ZWRUb1JvdXRlciA9IHRydWU7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgc2VyaWFsaXplVmFsdWU8VHlwZSBleHRlbmRzIERhdGFUYWJsZUZpbHRlclR5cGU+KFxyXG4gICAgICAgIGZpbHRlcldpdGhWYWx1ZTogRmlsdGVyV2l0aFZhbHVlPFR5cGU+LFxyXG4gICAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcclxuICAgICAgICBjb25zdCB2YWx1ZUFzVHlwZSA9IDxUIGV4dGVuZHMgRGF0YVRhYmxlRmlsdGVyPGFueSwgYW55Pj4oXHJcbiAgICAgICAgICAgIF9maWx0ZXI6IFQsXHJcbiAgICAgICAgICAgIF92YWx1ZTogRGF0YVRhYmxlRmlsdGVyVmFsdWU8YW55PixcclxuICAgICAgICApOiBUIGV4dGVuZHMgRGF0YVRhYmxlRmlsdGVyPGFueSwgaW5mZXIgUj4gPyBEYXRhVGFibGVGaWx0ZXJWYWx1ZTxSPiA6IGFueSA9PiBfdmFsdWU7XHJcblxyXG4gICAgICAgIGlmIChmaWx0ZXJXaXRoVmFsdWUuaXNUZXh0KCkpIHtcclxuICAgICAgICAgICAgY29uc3QgdmFsID0gZmlsdGVyV2l0aFZhbHVlLnZhbHVlO1xyXG4gICAgICAgICAgICByZXR1cm4gYCR7dmFsPy5vcGVyYXRvcn0sJHt2YWw/LnRlcm19YDtcclxuICAgICAgICB9IGVsc2UgaWYgKGZpbHRlcldpdGhWYWx1ZS5pc051bWJlcigpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHZhbCA9IGZpbHRlcldpdGhWYWx1ZS52YWx1ZTtcclxuICAgICAgICAgICAgcmV0dXJuIGAke3ZhbC5vcGVyYXRvcn0sJHt2YWwuYW1vdW50fWA7XHJcbiAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXJXaXRoVmFsdWUuaXNTZWxlY3QoKSkge1xyXG4gICAgICAgICAgICBjb25zdCB2YWwgPSBmaWx0ZXJXaXRoVmFsdWUudmFsdWU7XHJcbiAgICAgICAgICAgIHJldHVybiB2YWwuam9pbignLCcpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZmlsdGVyV2l0aFZhbHVlLmlzQm9vbGVhbigpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHZhbCA9IGZpbHRlcldpdGhWYWx1ZS52YWx1ZTtcclxuICAgICAgICAgICAgcmV0dXJuIHZhbCA/ICcxJyA6ICcwJztcclxuICAgICAgICB9IGVsc2UgaWYgKGZpbHRlcldpdGhWYWx1ZS5pc0RhdGVSYW5nZSgpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHZhbCA9IGZpbHRlcldpdGhWYWx1ZS52YWx1ZTtcclxuICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSB2YWwuc3RhcnQgPyBuZXcgRGF0ZSh2YWwuc3RhcnQpLmdldFRpbWUoKSA6ICcnO1xyXG4gICAgICAgICAgICBjb25zdCBlbmQgPSB2YWwuZW5kID8gbmV3IERhdGUodmFsLmVuZCkuZ2V0VGltZSgpIDogJyc7XHJcbiAgICAgICAgICAgIHJldHVybiBgJHtzdGFydH0sJHtlbmR9YDtcclxuICAgICAgICB9IGVsc2UgaWYgKGZpbHRlcldpdGhWYWx1ZS5pc0N1c3RvbSgpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXJXaXRoVmFsdWUuZmlsdGVyLnR5cGUuc2VyaWFsaXplVmFsdWUoZmlsdGVyV2l0aFZhbHVlLnZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZGVzZXJpYWxpemVWYWx1ZShmaWx0ZXI6IERhdGFUYWJsZUZpbHRlciwgdmFsdWU6IHN0cmluZyk6IERhdGFUYWJsZUZpbHRlclZhbHVlPERhdGFUYWJsZUZpbHRlclR5cGU+IHtcclxuICAgICAgICBzd2l0Y2ggKGZpbHRlci50eXBlLmtpbmQpIHtcclxuICAgICAgICAgICAgY2FzZSAndGV4dCc6IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IFtvcGVyYXRvciwgdGVybV0gPSB2YWx1ZS5zcGxpdCgnLCcpIGFzIFtrZXlvZiBTdHJpbmdPcGVyYXRvcnMsIHN0cmluZ107XHJcbiAgICAgICAgICAgICAgICByZXR1cm4geyBvcGVyYXRvciwgdGVybSB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNhc2UgJ251bWJlcic6IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IFtvcGVyYXRvciwgYW1vdW50XSA9IHZhbHVlLnNwbGl0KCcsJykgYXMgW2tleW9mIE51bWJlck9wZXJhdG9ycywgc3RyaW5nXTtcclxuICAgICAgICAgICAgICAgIHJldHVybiB7IG9wZXJhdG9yLCBhbW91bnQ6ICthbW91bnQgfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjYXNlICdzZWxlY3QnOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlLnNwbGl0KCcsJyk7XHJcbiAgICAgICAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlID09PSAnMSc7XHJcbiAgICAgICAgICAgIGNhc2UgJ2RhdGVSYW5nZSc6XHJcbiAgICAgICAgICAgICAgICBjb25zdCBbc3RhcnRUaW1lc3RhbXAsIGVuZFRpbWVzdGFtcF0gPSB2YWx1ZS5zcGxpdCgnLCcpO1xyXG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSBzdGFydFRpbWVzdGFtcCA/IG5ldyBEYXRlKE51bWJlcihzdGFydFRpbWVzdGFtcCkpLnRvSVNPU3RyaW5nKCkgOiAnJztcclxuICAgICAgICAgICAgICAgIGNvbnN0IGVuZCA9IGVuZFRpbWVzdGFtcCA/IG5ldyBEYXRlKE51bWJlcihlbmRUaW1lc3RhbXApKS50b0lTT1N0cmluZygpIDogJyc7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4geyBzdGFydCwgZW5kIH07XHJcbiAgICAgICAgICAgIGNhc2UgJ2N1c3RvbSc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZmlsdGVyLnR5cGUuZGVzZXJpYWxpemVWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICBhc3NlcnROZXZlcihmaWx0ZXIudHlwZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgc2VyaWFsaXplKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuI2FjdGl2ZUZpbHRlcnNcclxuICAgICAgICAgICAgLm1hcChcclxuICAgICAgICAgICAgICAgIChmaWx0ZXJXaXRoVmFsdWUsIGkpID0+XHJcbiAgICAgICAgICAgICAgICAgICAgYCR7ZmlsdGVyV2l0aFZhbHVlLmZpbHRlci5uYW1lfToke3RoaXMuc2VyaWFsaXplVmFsdWUoZmlsdGVyV2l0aFZhbHVlKX1gLFxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5qb2luKCc7Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvbkFjdGl2YXRlRmlsdGVyKGZpbHRlcjogRGF0YVRhYmxlRmlsdGVyPGFueSwgYW55PiwgdmFsdWU6IERhdGFUYWJsZUZpbHRlclZhbHVlPGFueT4pIHtcclxuICAgICAgICB0aGlzLiNhY3RpdmVGaWx0ZXJzLnB1c2godGhpcy5jcmVhdGVGYWNldFdpdGhWYWx1ZShmaWx0ZXIsIHZhbHVlKSk7XHJcbiAgICAgICAgdGhpcy4jdmFsdWVDaGFuZ2VzJC5uZXh0KHRoaXMuI2FjdGl2ZUZpbHRlcnMpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY3JlYXRlRmFjZXRXaXRoVmFsdWUoXHJcbiAgICAgICAgZmlsdGVyOiBEYXRhVGFibGVGaWx0ZXI8YW55LCBhbnk+LFxyXG4gICAgICAgIHZhbHVlOiBEYXRhVGFibGVGaWx0ZXJWYWx1ZTxEYXRhVGFibGVGaWx0ZXJUeXBlPixcclxuICAgICkge1xyXG4gICAgICAgIHJldHVybiBuZXcgRmlsdGVyV2l0aFZhbHVlKGZpbHRlciwgdmFsdWUsIHYgPT4gdGhpcy4jdmFsdWVDaGFuZ2VzJC5uZXh0KHYpKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
238
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS1maWx0ZXItY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvcHJvdmlkZXJzL2RhdGEtdGFibGUvZGF0YS10YWJsZS1maWx0ZXItY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sTUFBTSxNQUFNLGFBQWEsQ0FBQztBQU9qQyxPQUFPLEVBQ0gsZUFBZSxHQVVsQixNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE1BQU0sT0FBTyxlQUFlO0lBRXhCLFlBQ29CLE1BQWtDLEVBQzNDLEtBQWlDLEVBQ3hDLFFBQXNEO1FBRnRDLFdBQU0sR0FBTixNQUFNLENBQTRCO1FBQzNDLFVBQUssR0FBTCxLQUFLLENBQTRCO1FBSHBDLGdCQUFXLEdBQUcsSUFBSSxHQUFHLEVBQStDLENBQUM7UUFNekUsSUFBSSxRQUFRLEVBQUU7WUFDVixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUNsQztJQUNMLENBQUM7SUFFRCxRQUFRLENBQUMsRUFBK0M7UUFDcEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFpQztRQUN6QyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixLQUFLLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDL0IsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2I7SUFDTCxDQUFDO0lBRUQsTUFBTTtRQUNGLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQztJQUM1QyxDQUFDO0lBRUQsUUFBUTtRQUNKLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQztJQUM5QyxDQUFDO0lBRUQsU0FBUztRQUNMLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsUUFBUTtRQUNKLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQztJQUM5QyxDQUFDO0lBRUQsV0FBVztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFdBQVcsQ0FBQztJQUNqRCxDQUFDO0lBRUQsUUFBUTtRQUNKLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQztJQUM5QyxDQUFDO0NBQ0o7QUFFRCxNQUFNLE9BQU8seUJBQXlCO0lBQ3pCLFFBQVEsQ0FBZ0Q7SUFDakUsY0FBYyxDQUF5QjtJQUN2QyxjQUFjLENBQW9DO0lBQ2xELGtCQUFrQixDQUFTO0lBRWxCLHNCQUFzQixDQUFhO0lBRTVDLFlBQW9CLE1BQWM7UUFBZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBUHpCLGFBQVEsR0FBNkMsRUFBRSxDQUFDO1FBQ2pFLG1CQUFjLEdBQXNCLEVBQUUsQ0FBQztRQUN2QyxtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFxQixDQUFDO1FBQ2xELHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQUMzQixpQkFBWSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekMsMkJBQXNCLEdBQUcsU0FBUyxDQUFDO0lBRVAsQ0FBQztJQUV0QyxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDYixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDL0IsQ0FBQztJQUVELFNBQVMsQ0FDTCxNQUF1RDtRQUV2RCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUN6QixNQUFNLElBQUksS0FBSyxDQUNYLHFHQUFxRyxDQUN4RyxDQUFDO1NBQ0w7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDZCxJQUFJLGVBQWUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQ3ZGLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsVUFBVSxDQUNOLE9BQStEO1FBRS9ELEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1lBQzFCLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDMUI7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsY0FBYztRQU1WLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDWCxJQUFJLEVBQUUsV0FBVztZQUNqQixJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO1lBQzNCLEtBQUssRUFBRSxDQUFDLENBQUMsbUJBQW1CLENBQUM7WUFDN0IsV0FBVyxFQUFFLFdBQVc7U0FDM0IsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNYLElBQUksRUFBRSxXQUFXO1lBQ2pCLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7WUFDM0IsS0FBSyxFQUFFLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQztZQUM3QixXQUFXLEVBQUUsV0FBVztTQUMzQixDQUFDLENBQUM7UUFDSCxPQUFPLElBQVcsQ0FBQztJQUN2QixDQUFDO0lBRUQscUJBQXFCLENBQUMsWUFBaUM7UUFDbkQsS0FBSyxNQUFNLE1BQU0sSUFBSSxZQUFZLEVBQUU7WUFDL0IsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQXVCLENBQUM7WUFDNUMsSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFO2dCQUNiLFNBQVM7YUFDWjtZQUNELElBQUksVUFBMkMsQ0FBQztZQUNoRCxRQUFRLElBQUksRUFBRTtnQkFDVixLQUFLLFNBQVM7b0JBQ1YsVUFBVSxHQUFHLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDO29CQUNqQyxNQUFNO2dCQUNWLEtBQUssS0FBSyxDQUFDO2dCQUNYLEtBQUssT0FBTztvQkFDUixVQUFVLEdBQUcsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUM7b0JBQ2hDLE1BQU07Z0JBQ1YsS0FBSyxVQUFVO29CQUNYLFVBQVUsR0FBRyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQztvQkFDbkMsTUFBTTtnQkFDVixLQUFLLFFBQVEsQ0FBQztnQkFDZCxLQUFLLGNBQWMsQ0FBQztnQkFDcEIsS0FBSyxZQUFZLENBQUM7Z0JBQ2xCLEtBQUssTUFBTTtvQkFDUCxVQUFVLEdBQUcsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUM7b0JBQzlCLE1BQU07Z0JBQ1YsS0FBSyxVQUFVO29CQUNYLHdCQUF3QjtvQkFDeEIsTUFBTTtnQkFDVjtvQkFDSSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDekI7WUFDRCxJQUFJLFVBQVUsRUFBRTtnQkFDWixJQUFJLENBQUMsU0FBUyxDQUFDO29CQUNYLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtvQkFDakIsSUFBSSxFQUFFLFVBQVU7b0JBQ2hCLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQyxJQUFJO29CQUNsQyxXQUFXLEVBQUUsTUFBTSxDQUFDLElBQUk7aUJBQzNCLENBQUMsQ0FBQzthQUNOO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsU0FBUyxDQUFDLElBQVk7UUFDbEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELFVBQVU7UUFDTixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUVELHlCQUF5QixDQUFDLEtBQWE7UUFDbkMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ3pELE1BQU0sUUFBUSxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNsRSxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztZQUMzQyxPQUFPLE1BQXFCLENBQUM7UUFDakMsQ0FBQyxFQUFFLEVBQWlCLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQXFCO1FBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3pCLFdBQVcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUU7Z0JBQ3pFLFVBQVUsRUFBRSxLQUFLO2dCQUNqQixtQkFBbUIsRUFBRSxPQUFPO2FBQy9CLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDMUYsS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUNWLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDOUIsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9DLEtBQUssTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxpQkFBaUIsRUFBRTtZQUM3QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3BDLElBQUksTUFBTSxFQUFFO2dCQUNSLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQzthQUNwRTtTQUNKO1FBQ0QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztRQUMvQixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsY0FBYyxDQUNWLGVBQXNDO1FBRXRDLE1BQU0sV0FBVyxHQUFHLENBQ2hCLE9BQVUsRUFDVixNQUFpQyxFQUNzQyxFQUFFLENBQUMsTUFBTSxDQUFDO1FBRXJGLElBQUksZUFBZSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzFCLE1BQU0sR0FBRyxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUM7WUFDbEMsT0FBTyxHQUFHLEdBQUcsRUFBRSxRQUFRLElBQUksR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDO1NBQzFDO2FBQU0sSUFBSSxlQUFlLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDbkMsTUFBTSxHQUFHLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQztZQUNsQyxPQUFPLEdBQUcsR0FBRyxDQUFDLFFBQVEsSUFBSSxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDMUM7YUFBTSxJQUFJLGVBQWUsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNuQyxNQUFNLEdBQUcsR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDO1lBQ2xDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN4QjthQUFNLElBQUksZUFBZSxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ3BDLE1BQU0sR0FBRyxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUM7WUFDbEMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1NBQzFCO2FBQU0sSUFBSSxlQUFlLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDdEMsTUFBTSxHQUFHLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQztZQUNsQyxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM3RCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN2RCxPQUFPLEdBQUcsS0FBSyxJQUFJLEdBQUcsRUFBRSxDQUFDO1NBQzVCO2FBQU0sSUFBSSxlQUFlLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDbkMsT0FBTyxlQUFlLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzVFO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLE1BQXVCLEVBQUUsS0FBYTtRQUNuRCxRQUFRLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ3RCLEtBQUssTUFBTSxDQUFDLENBQUM7Z0JBQ1QsTUFBTSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBb0MsQ0FBQztnQkFDN0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQzthQUM3QjtZQUNELEtBQUssUUFBUSxDQUFDLENBQUM7Z0JBQ1gsTUFBTSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBb0MsQ0FBQztnQkFDL0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUN4QztZQUNELEtBQUssUUFBUTtnQkFDVCxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDNUIsS0FBSyxTQUFTO2dCQUNWLE9BQU8sS0FBSyxLQUFLLEdBQUcsQ0FBQztZQUN6QixLQUFLLFdBQVc7Z0JBQ1osTUFBTSxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN4RCxNQUFNLEtBQUssR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ25GLE1BQU0sR0FBRyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDN0UsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQztZQUMxQixLQUFLLFFBQVE7Z0JBQ1QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQy9DO2dCQUNJLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDaEM7SUFDTCxDQUFDO0lBRU8sU0FBUztRQUNiLE9BQU8sSUFBSSxDQUFDLGNBQWM7YUFDckIsR0FBRyxDQUNBLENBQUMsZUFBZSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQ25CLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUMvRTthQUNBLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQixDQUFDO0lBRU8sZ0JBQWdCLENBQUMsTUFBaUMsRUFBRSxLQUFnQztRQUN4RixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbkUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTyxvQkFBb0IsQ0FDeEIsTUFBaUMsRUFDakMsS0FBZ0Q7UUFFaEQsT0FBTyxJQUFJLGVBQWUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IG1hcmtlciBhcyBfIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJztcbmltcG9ydCB7IEN1c3RvbUZpZWxkVHlwZSB9IGZyb20gJ0B2ZW5kdXJlL2NvbW1vbi9saWIvc2hhcmVkLXR5cGVzJztcbmltcG9ydCB7IGFzc2VydE5ldmVyIH0gZnJvbSAnQHZlbmR1cmUvY29tbW9uL2xpYi9zaGFyZWQtdXRpbHMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IGV4dGVuZCBmcm9tICdqdXN0LWV4dGVuZCc7XG5pbXBvcnQge1xuICAgIEN1c3RvbUZpZWxkQ29uZmlnLFxuICAgIERhdGVPcGVyYXRvcnMsXG4gICAgTnVtYmVyT3BlcmF0b3JzLFxuICAgIFN0cmluZ09wZXJhdG9ycyxcbn0gZnJvbSAnLi4vLi4vY29tbW9uL2dlbmVyYXRlZC10eXBlcyc7XG5pbXBvcnQge1xuICAgIERhdGFUYWJsZUZpbHRlcixcbiAgICBEYXRhVGFibGVGaWx0ZXJCb29sZWFuVHlwZSxcbiAgICBEYXRhVGFibGVGaWx0ZXJDdXN0b21UeXBlLFxuICAgIERhdGFUYWJsZUZpbHRlckRhdGVSYW5nZVR5cGUsXG4gICAgRGF0YVRhYmxlRmlsdGVyTnVtYmVyVHlwZSxcbiAgICBEYXRhVGFibGVGaWx0ZXJPcHRpb25zLFxuICAgIERhdGFUYWJsZUZpbHRlclNlbGVjdFR5cGUsXG4gICAgRGF0YVRhYmxlRmlsdGVyVGV4dFR5cGUsXG4gICAgRGF0YVRhYmxlRmlsdGVyVHlwZSxcbiAgICBEYXRhVGFibGVGaWx0ZXJWYWx1ZSxcbn0gZnJvbSAnLi9kYXRhLXRhYmxlLWZpbHRlcic7XG5cbmV4cG9ydCBjbGFzcyBGaWx0ZXJXaXRoVmFsdWU8VHlwZSBleHRlbmRzIERhdGFUYWJsZUZpbHRlclR5cGUgPSBEYXRhVGFibGVGaWx0ZXJUeXBlPiB7XG4gICAgcHJpdmF0ZSBvblVwZGF0ZUZucyA9IG5ldyBTZXQ8KHZhbHVlOiBEYXRhVGFibGVGaWx0ZXJWYWx1ZTxUeXBlPikgPT4gdm9pZD4oKTtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IGZpbHRlcjogRGF0YVRhYmxlRmlsdGVyPGFueSwgVHlwZT4sXG4gICAgICAgIHB1YmxpYyB2YWx1ZTogRGF0YVRhYmxlRmlsdGVyVmFsdWU8VHlwZT4sXG4gICAgICAgIG9uVXBkYXRlPzogKHZhbHVlOiBEYXRhVGFibGVGaWx0ZXJWYWx1ZTxUeXBlPikgPT4gdm9pZCxcbiAgICApIHtcbiAgICAgICAgaWYgKG9uVXBkYXRlKSB7XG4gICAgICAgICAgICB0aGlzLm9uVXBkYXRlRm5zLmFkZChvblVwZGF0ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblVwZGF0ZShmbjogKHZhbHVlOiBEYXRhVGFibGVGaWx0ZXJWYWx1ZTxUeXBlPikgPT4gdm9pZCkge1xuICAgICAgICB0aGlzLm9uVXBkYXRlRm5zLmFkZChmbik7XG4gICAgfVxuXG4gICAgdXBkYXRlVmFsdWUodmFsdWU6IERhdGFUYWJsZUZpbHRlclZhbHVlPFR5cGU+KSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgZm9yIChjb25zdCBmbiBvZiB0aGlzLm9uVXBkYXRlRm5zKSB7XG4gICAgICAgICAgICBmbih2YWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc1RleHQoKTogdGhpcyBpcyBGaWx0ZXJXaXRoVmFsdWU8RGF0YVRhYmxlRmlsdGVyVGV4dFR5cGU+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyLnR5cGUua2luZCA9PT0gJ3RleHQnO1xuICAgIH1cblxuICAgIGlzTnVtYmVyKCk6IHRoaXMgaXMgRmlsdGVyV2l0aFZhbHVlPERhdGFUYWJsZUZpbHRlck51bWJlclR5cGU+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyLnR5cGUua2luZCA9PT0gJ251bWJlcic7XG4gICAgfVxuXG4gICAgaXNCb29sZWFuKCk6IHRoaXMgaXMgRmlsdGVyV2l0aFZhbHVlPERhdGFUYWJsZUZpbHRlckJvb2xlYW5UeXBlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlci50eXBlLmtpbmQgPT09ICdib29sZWFuJztcbiAgICB9XG5cbiAgICBpc1NlbGVjdCgpOiB0aGlzIGlzIEZpbHRlcldpdGhWYWx1ZTxEYXRhVGFibGVGaWx0ZXJTZWxlY3RUeXBlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlci50eXBlLmtpbmQgPT09ICdzZWxlY3QnO1xuICAgIH1cblxuICAgIGlzRGF0ZVJhbmdlKCk6IHRoaXMgaXMgRmlsdGVyV2l0aFZhbHVlPERhdGFUYWJsZUZpbHRlckRhdGVSYW5nZVR5cGU+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyLnR5cGUua2luZCA9PT0gJ2RhdGVSYW5nZSc7XG4gICAgfVxuXG4gICAgaXNDdXN0b20oKTogdGhpcyBpcyBGaWx0ZXJXaXRoVmFsdWU8RGF0YVRhYmxlRmlsdGVyQ3VzdG9tVHlwZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXIudHlwZS5raW5kID09PSAnY3VzdG9tJztcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEYXRhVGFibGVGaWx0ZXJDb2xsZWN0aW9uPEZpbHRlcklucHV0IGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYW55PiA9IFJlY29yZDxzdHJpbmcsIGFueT4+IHtcbiAgICByZWFkb25seSAjZmlsdGVyczogQXJyYXk8RGF0YVRhYmxlRmlsdGVyPEZpbHRlcklucHV0LCBhbnk+PiA9IFtdO1xuICAgICNhY3RpdmVGaWx0ZXJzOiBGaWx0ZXJXaXRoVmFsdWVbXSA9IFtdO1xuICAgICN2YWx1ZUNoYW5nZXMkID0gbmV3IFN1YmplY3Q8RmlsdGVyV2l0aFZhbHVlW10+KCk7XG4gICAgI2Nvbm5lY3RlZFRvUm91dGVyID0gZmFsc2U7XG4gICAgdmFsdWVDaGFuZ2VzID0gdGhpcy4jdmFsdWVDaGFuZ2VzJC5hc09ic2VydmFibGUoKTtcbiAgICByZWFkb25seSAjZmlsdGVyc1F1ZXJ5UGFyYW1OYW1lID0gJ2ZpbHRlcnMnO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge31cblxuICAgIGdldCBsZW5ndGgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuI2ZpbHRlcnMubGVuZ3RoO1xuICAgIH1cblxuICAgIGdldCBhY3RpdmVGaWx0ZXJzKCk6IEZpbHRlcldpdGhWYWx1ZVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuI2FjdGl2ZUZpbHRlcnM7XG4gICAgfVxuXG4gICAgYWRkRmlsdGVyPEZpbHRlclR5cGUgZXh0ZW5kcyBEYXRhVGFibGVGaWx0ZXJUeXBlPihcbiAgICAgICAgY29uZmlnOiBEYXRhVGFibGVGaWx0ZXJPcHRpb25zPEZpbHRlcklucHV0LCBGaWx0ZXJUeXBlPixcbiAgICApOiBEYXRhVGFibGVGaWx0ZXJDb2xsZWN0aW9uPEZpbHRlcklucHV0PiB7XG4gICAgICAgIGlmICh0aGlzLiNjb25uZWN0ZWRUb1JvdXRlcikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgICdDYW5ub3QgYWRkIGZpbHRlciBhZnRlciBjb25uZWN0aW5nIHRvIHJvdXRlci4gTWFrZSBzdXJlIHRvIGNhbGwgYWRkRmlsdGVyKCkgYmVmb3JlIGNvbm5lY3RUb1JvdXRlKCknLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLiNmaWx0ZXJzLnB1c2goXG4gICAgICAgICAgICBuZXcgRGF0YVRhYmxlRmlsdGVyKGNvbmZpZywgKGZpbHRlciwgdmFsdWUpID0+IHRoaXMub25BY3RpdmF0ZUZpbHRlcihmaWx0ZXIsIHZhbHVlKSksXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGFkZEZpbHRlcnM8RmlsdGVyVHlwZSBleHRlbmRzIERhdGFUYWJsZUZpbHRlclR5cGU+KFxuICAgICAgICBjb25maWdzOiBBcnJheTxEYXRhVGFibGVGaWx0ZXJPcHRpb25zPEZpbHRlcklucHV0LCBGaWx0ZXJUeXBlPj4sXG4gICAgKTogRGF0YVRhYmxlRmlsdGVyQ29sbGVjdGlvbjxGaWx0ZXJJbnB1dD4ge1xuICAgICAgICBmb3IgKGNvbnN0IGNvbmZpZyBvZiBjb25maWdzKSB7XG4gICAgICAgICAgICB0aGlzLmFkZEZpbHRlcihjb25maWcpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGFkZERhdGVGaWx0ZXJzKCk6IEZpbHRlcklucHV0IGV4dGVuZHMge1xuICAgICAgICBjcmVhdGVkQXQ/OiBEYXRlT3BlcmF0b3JzIHwgbnVsbDtcbiAgICAgICAgdXBkYXRlZEF0PzogRGF0ZU9wZXJhdG9ycyB8IG51bGw7XG4gICAgfVxuICAgICAgICA/IERhdGFUYWJsZUZpbHRlckNvbGxlY3Rpb248RmlsdGVySW5wdXQ+XG4gICAgICAgIDogbmV2ZXIge1xuICAgICAgICB0aGlzLmFkZEZpbHRlcih7XG4gICAgICAgICAgICBuYW1lOiAnY3JlYXRlZEF0JyxcbiAgICAgICAgICAgIHR5cGU6IHsga2luZDogJ2RhdGVSYW5nZScgfSxcbiAgICAgICAgICAgIGxhYmVsOiBfKCdjb21tb24uY3JlYXRlZC1hdCcpLFxuICAgICAgICAgICAgZmlsdGVyRmllbGQ6ICdjcmVhdGVkQXQnLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hZGRGaWx0ZXIoe1xuICAgICAgICAgICAgbmFtZTogJ3VwZGF0ZWRBdCcsXG4gICAgICAgICAgICB0eXBlOiB7IGtpbmQ6ICdkYXRlUmFuZ2UnIH0sXG4gICAgICAgICAgICBsYWJlbDogXygnY29tbW9uLnVwZGF0ZWQtYXQnKSxcbiAgICAgICAgICAgIGZpbHRlckZpZWxkOiAndXBkYXRlZEF0JyxcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzIGFzIGFueTtcbiAgICB9XG5cbiAgICBhZGRDdXN0b21GaWVsZEZpbHRlcnMoY3VzdG9tRmllbGRzOiBDdXN0b21GaWVsZENvbmZpZ1tdKSB7XG4gICAgICAgIGZvciAoY29uc3QgY29uZmlnIG9mIGN1c3RvbUZpZWxkcykge1xuICAgICAgICAgICAgY29uc3QgdHlwZSA9IGNvbmZpZy50eXBlIGFzIEN1c3RvbUZpZWxkVHlwZTtcbiAgICAgICAgICAgIGlmIChjb25maWcubGlzdCkge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGV0IGZpbHRlclR5cGU6IERhdGFUYWJsZUZpbHRlclR5cGUgfCB1bmRlZmluZWQ7XG4gICAgICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdib29sZWFuJzpcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyVHlwZSA9IHsga2luZDogJ2Jvb2xlYW4nIH07XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2ludCc6XG4gICAgICAgICAgICAgICAgY2FzZSAnZmxvYXQnOlxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJUeXBlID0geyBraW5kOiAnbnVtYmVyJyB9O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdkYXRldGltZSc6XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlclR5cGUgPSB7IGtpbmQ6ICdkYXRlUmFuZ2UnIH07XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICAgICAgICAgICAgY2FzZSAnbG9jYWxlU3RyaW5nJzpcbiAgICAgICAgICAgICAgICBjYXNlICdsb2NhbGVUZXh0JzpcbiAgICAgICAgICAgICAgICBjYXNlICd0ZXh0JzpcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyVHlwZSA9IHsga2luZDogJ3RleHQnIH07XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ3JlbGF0aW9uJzpcbiAgICAgICAgICAgICAgICAgICAgLy8gQ2Fubm90IHNvcnQgcmVsYXRpb25zXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgIGFzc2VydE5ldmVyKHR5cGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGZpbHRlclR5cGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFkZEZpbHRlcih7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IGNvbmZpZy5uYW1lLFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiBmaWx0ZXJUeXBlLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbDogY29uZmlnLmxhYmVsID8/IGNvbmZpZy5uYW1lLFxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJGaWVsZDogY29uZmlnLm5hbWUsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgZ2V0RmlsdGVyKG5hbWU6IHN0cmluZyk6IERhdGFUYWJsZUZpbHRlcjxGaWx0ZXJJbnB1dD4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy4jZmlsdGVycy5maW5kKGYgPT4gZi5uYW1lID09PSBuYW1lKTtcbiAgICB9XG5cbiAgICBnZXRGaWx0ZXJzKCk6IEFycmF5PERhdGFUYWJsZUZpbHRlcjxGaWx0ZXJJbnB1dD4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuI2ZpbHRlcnM7XG4gICAgfVxuXG4gICAgcmVtb3ZlQWN0aXZlRmlsdGVyQXRJbmRleChpbmRleDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuI2FjdGl2ZUZpbHRlcnMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgdGhpcy4jdmFsdWVDaGFuZ2VzJC5uZXh0KHRoaXMuI2FjdGl2ZUZpbHRlcnMpO1xuICAgIH1cblxuICAgIGNyZWF0ZUZpbHRlcklucHV0KCk6IEZpbHRlcklucHV0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuI2FjdGl2ZUZpbHRlcnMucmVkdWNlKChhY2MsIHsgZmlsdGVyLCB2YWx1ZSB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IHZhbHVlICE9IG51bGwgPyBmaWx0ZXIudG9GaWx0ZXJJbnB1dCh2YWx1ZSkgOiB7fTtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGV4dGVuZCh0cnVlLCBhY2MsIG5ld1ZhbHVlKTtcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQgYXMgRmlsdGVySW5wdXQ7XG4gICAgICAgIH0sIHt9IGFzIEZpbHRlcklucHV0KTtcbiAgICB9XG5cbiAgICBjb25uZWN0VG9Sb3V0ZShyb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnLi8nXSwge1xuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zOiB7IFt0aGlzLiNmaWx0ZXJzUXVlcnlQYXJhbU5hbWVdOiB0aGlzLnNlcmlhbGl6ZSgpLCBwYWdlOiAxIH0sXG4gICAgICAgICAgICAgICAgcmVsYXRpdmVUbzogcm91dGUsXG4gICAgICAgICAgICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgZmlsdGVyUXVlcnlQYXJhbXMgPSAocm91dGUuc25hcHNob3QucXVlcnlQYXJhbU1hcC5nZXQodGhpcy4jZmlsdGVyc1F1ZXJ5UGFyYW1OYW1lKSA/PyAnJylcbiAgICAgICAgICAgIC5zcGxpdCgnOycpXG4gICAgICAgICAgICAubWFwKHZhbHVlID0+IHZhbHVlLnNwbGl0KCc6JykpXG4gICAgICAgICAgICAubWFwKChbbmFtZSwgdmFsdWVdKSA9PiAoeyBuYW1lLCB2YWx1ZSB9KSk7XG4gICAgICAgIGZvciAoY29uc3QgeyBuYW1lLCB2YWx1ZSB9IG9mIGZpbHRlclF1ZXJ5UGFyYW1zKSB7XG4gICAgICAgICAgICBjb25zdCBmaWx0ZXIgPSB0aGlzLmdldEZpbHRlcihuYW1lKTtcbiAgICAgICAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB2YWwgPSB0aGlzLmRlc2VyaWFsaXplVmFsdWUoZmlsdGVyLCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy4jYWN0aXZlRmlsdGVycy5wdXNoKHRoaXMuY3JlYXRlRmFjZXRXaXRoVmFsdWUoZmlsdGVyLCB2YWwpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLiNjb25uZWN0ZWRUb1JvdXRlciA9IHRydWU7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHNlcmlhbGl6ZVZhbHVlPFR5cGUgZXh0ZW5kcyBEYXRhVGFibGVGaWx0ZXJUeXBlPihcbiAgICAgICAgZmlsdGVyV2l0aFZhbHVlOiBGaWx0ZXJXaXRoVmFsdWU8VHlwZT4sXG4gICAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgY29uc3QgdmFsdWVBc1R5cGUgPSA8VCBleHRlbmRzIERhdGFUYWJsZUZpbHRlcjxhbnksIGFueT4+KFxuICAgICAgICAgICAgX2ZpbHRlcjogVCxcbiAgICAgICAgICAgIF92YWx1ZTogRGF0YVRhYmxlRmlsdGVyVmFsdWU8YW55PixcbiAgICAgICAgKTogVCBleHRlbmRzIERhdGFUYWJsZUZpbHRlcjxhbnksIGluZmVyIFI+ID8gRGF0YVRhYmxlRmlsdGVyVmFsdWU8Uj4gOiBhbnkgPT4gX3ZhbHVlO1xuXG4gICAgICAgIGlmIChmaWx0ZXJXaXRoVmFsdWUuaXNUZXh0KCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbCA9IGZpbHRlcldpdGhWYWx1ZS52YWx1ZTtcbiAgICAgICAgICAgIHJldHVybiBgJHt2YWw/Lm9wZXJhdG9yfSwke3ZhbD8udGVybX1gO1xuICAgICAgICB9IGVsc2UgaWYgKGZpbHRlcldpdGhWYWx1ZS5pc051bWJlcigpKSB7XG4gICAgICAgICAgICBjb25zdCB2YWwgPSBmaWx0ZXJXaXRoVmFsdWUudmFsdWU7XG4gICAgICAgICAgICByZXR1cm4gYCR7dmFsLm9wZXJhdG9yfSwke3ZhbC5hbW91bnR9YDtcbiAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXJXaXRoVmFsdWUuaXNTZWxlY3QoKSkge1xuICAgICAgICAgICAgY29uc3QgdmFsID0gZmlsdGVyV2l0aFZhbHVlLnZhbHVlO1xuICAgICAgICAgICAgcmV0dXJuIHZhbC5qb2luKCcsJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoZmlsdGVyV2l0aFZhbHVlLmlzQm9vbGVhbigpKSB7XG4gICAgICAgICAgICBjb25zdCB2YWwgPSBmaWx0ZXJXaXRoVmFsdWUudmFsdWU7XG4gICAgICAgICAgICByZXR1cm4gdmFsID8gJzEnIDogJzAnO1xuICAgICAgICB9IGVsc2UgaWYgKGZpbHRlcldpdGhWYWx1ZS5pc0RhdGVSYW5nZSgpKSB7XG4gICAgICAgICAgICBjb25zdCB2YWwgPSBmaWx0ZXJXaXRoVmFsdWUudmFsdWU7XG4gICAgICAgICAgICBjb25zdCBzdGFydCA9IHZhbC5zdGFydCA/IG5ldyBEYXRlKHZhbC5zdGFydCkuZ2V0VGltZSgpIDogJyc7XG4gICAgICAgICAgICBjb25zdCBlbmQgPSB2YWwuZW5kID8gbmV3IERhdGUodmFsLmVuZCkuZ2V0VGltZSgpIDogJyc7XG4gICAgICAgICAgICByZXR1cm4gYCR7c3RhcnR9LCR7ZW5kfWA7XG4gICAgICAgIH0gZWxzZSBpZiAoZmlsdGVyV2l0aFZhbHVlLmlzQ3VzdG9tKCkpIHtcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXJXaXRoVmFsdWUuZmlsdGVyLnR5cGUuc2VyaWFsaXplVmFsdWUoZmlsdGVyV2l0aFZhbHVlLnZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGRlc2VyaWFsaXplVmFsdWUoZmlsdGVyOiBEYXRhVGFibGVGaWx0ZXIsIHZhbHVlOiBzdHJpbmcpOiBEYXRhVGFibGVGaWx0ZXJWYWx1ZTxEYXRhVGFibGVGaWx0ZXJUeXBlPiB7XG4gICAgICAgIHN3aXRjaCAoZmlsdGVyLnR5cGUua2luZCkge1xuICAgICAgICAgICAgY2FzZSAndGV4dCc6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBbb3BlcmF0b3IsIHRlcm1dID0gdmFsdWUuc3BsaXQoJywnKSBhcyBba2V5b2YgU3RyaW5nT3BlcmF0b3JzLCBzdHJpbmddO1xuICAgICAgICAgICAgICAgIHJldHVybiB7IG9wZXJhdG9yLCB0ZXJtIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICdudW1iZXInOiB7XG4gICAgICAgICAgICAgICAgY29uc3QgW29wZXJhdG9yLCBhbW91bnRdID0gdmFsdWUuc3BsaXQoJywnKSBhcyBba2V5b2YgTnVtYmVyT3BlcmF0b3JzLCBzdHJpbmddO1xuICAgICAgICAgICAgICAgIHJldHVybiB7IG9wZXJhdG9yLCBhbW91bnQ6ICthbW91bnQgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgJ3NlbGVjdCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlLnNwbGl0KCcsJyk7XG4gICAgICAgICAgICBjYXNlICdib29sZWFuJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWUgPT09ICcxJztcbiAgICAgICAgICAgIGNhc2UgJ2RhdGVSYW5nZSc6XG4gICAgICAgICAgICAgICAgY29uc3QgW3N0YXJ0VGltZXN0YW1wLCBlbmRUaW1lc3RhbXBdID0gdmFsdWUuc3BsaXQoJywnKTtcbiAgICAgICAgICAgICAgICBjb25zdCBzdGFydCA9IHN0YXJ0VGltZXN0YW1wID8gbmV3IERhdGUoTnVtYmVyKHN0YXJ0VGltZXN0YW1wKSkudG9JU09TdHJpbmcoKSA6ICcnO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVuZCA9IGVuZFRpbWVzdGFtcCA/IG5ldyBEYXRlKE51bWJlcihlbmRUaW1lc3RhbXApKS50b0lTT1N0cmluZygpIDogJyc7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgc3RhcnQsIGVuZCB9O1xuICAgICAgICAgICAgY2FzZSAnY3VzdG9tJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gZmlsdGVyLnR5cGUuZGVzZXJpYWxpemVWYWx1ZSh2YWx1ZSk7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIGFzc2VydE5ldmVyKGZpbHRlci50eXBlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc2VyaWFsaXplKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLiNhY3RpdmVGaWx0ZXJzXG4gICAgICAgICAgICAubWFwKFxuICAgICAgICAgICAgICAgIChmaWx0ZXJXaXRoVmFsdWUsIGkpID0+XG4gICAgICAgICAgICAgICAgICAgIGAke2ZpbHRlcldpdGhWYWx1ZS5maWx0ZXIubmFtZX06JHt0aGlzLnNlcmlhbGl6ZVZhbHVlKGZpbHRlcldpdGhWYWx1ZSl9YCxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5qb2luKCc7Jyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbkFjdGl2YXRlRmlsdGVyKGZpbHRlcjogRGF0YVRhYmxlRmlsdGVyPGFueSwgYW55PiwgdmFsdWU6IERhdGFUYWJsZUZpbHRlclZhbHVlPGFueT4pIHtcbiAgICAgICAgdGhpcy4jYWN0aXZlRmlsdGVycy5wdXNoKHRoaXMuY3JlYXRlRmFjZXRXaXRoVmFsdWUoZmlsdGVyLCB2YWx1ZSkpO1xuICAgICAgICB0aGlzLiN2YWx1ZUNoYW5nZXMkLm5leHQodGhpcy4jYWN0aXZlRmlsdGVycyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVGYWNldFdpdGhWYWx1ZShcbiAgICAgICAgZmlsdGVyOiBEYXRhVGFibGVGaWx0ZXI8YW55LCBhbnk+LFxuICAgICAgICB2YWx1ZTogRGF0YVRhYmxlRmlsdGVyVmFsdWU8RGF0YVRhYmxlRmlsdGVyVHlwZT4sXG4gICAgKSB7XG4gICAgICAgIHJldHVybiBuZXcgRmlsdGVyV2l0aFZhbHVlKGZpbHRlciwgdmFsdWUsIHYgPT4gdGhpcy4jdmFsdWVDaGFuZ2VzJC5uZXh0KHYpKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -94,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.3", ngImpor
|
|
|
94
94
|
providedIn: 'root',
|
|
95
95
|
}]
|
|
96
96
|
}], ctorParameters: function () { return [{ type: i1.Location }]; } });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9wcm92aWRlcnMvbG9jYWwtc3RvcmFnZS9sb2NhbC1zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQzs7O0FBK0JyRDs7O0dBR0c7QUFDSCxNQUFNLG1CQUFtQixHQUFxQztJQUMxRCxhQUFhO0lBQ2IsdUJBQXVCO0lBQ3ZCLGFBQWE7SUFDYiwrQkFBK0I7SUFDL0IsaUJBQWlCO0NBQ3BCLENBQUM7QUFFRixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUM7QUFFdEI7O0dBRUc7QUFJSCxNQUFNLE9BQU8sbUJBQW1CO0lBRTVCLFlBQW9CLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFEOUIsWUFBTyxHQUFHLFlBQVksQ0FBQztJQUNVLENBQUM7SUFFbkMsVUFBVSxDQUFDLE9BQXVCO1FBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxJQUFJLFlBQVksQ0FBQztJQUMzQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxHQUFHLENBQXNDLEdBQU0sRUFBRSxLQUE2QjtRQUNqRixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLFlBQVksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxxQkFBcUIsQ0FDeEIsR0FBTSxFQUNOLEtBQTBDO1FBRTFDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQW1CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksYUFBYSxDQUFzQyxHQUFNLEVBQUUsS0FBNkI7UUFDM0YsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsQyxjQUFjLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVEOztPQUVHO0lBQ0ksR0FBRyxDQUFzQyxHQUFNO1FBQ2xELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEMsTUFBTSxJQUFJLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlFLElBQUksTUFBVyxDQUFDO1FBQ2hCLElBQUk7WUFDQSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLENBQUM7U0FDdkM7UUFBQyxPQUFPLENBQU0sRUFBRTtZQUNiLHNDQUFzQztZQUN0QyxPQUFPLENBQUMsS0FBSyxDQUFDLCtDQUErQyxHQUFHLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQztTQUNsRjtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7T0FFRztJQUNJLHFCQUFxQixDQUN4QixHQUFNO1FBRU4sTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25ELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFtQixDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxHQUE4QjtRQUN4QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLGNBQWMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRU8sbUJBQW1CLENBQUMsR0FBVztRQUNuQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xDLE9BQU8sR0FBRyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDO0lBRU8sT0FBTyxDQUFDLEdBQThCO1FBQzFDLElBQUksbUJBQW1CLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ25DLE9BQU8sR0FBRyxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxHQUFHLEVBQUUsQ0FBQztTQUM3QzthQUFNO1lBQ0gsT0FBTyxHQUFHLE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQztTQUM3QjtJQUNMLENBQUM7OEdBOUVRLG1CQUFtQjtrSEFBbkIsbUJBQW1CLGNBRmhCLE1BQU07OzJGQUVULG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBMYW5ndWFnZUNvZGUgfSBmcm9tICcuLi8uLi9jb21tb24vZ2VuZXJhdGVkLXR5cGVzJztcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZGF0YS9wcm92aWRlcnMvZGF0YS5zZXJ2aWNlJztcbmltcG9ydCB7IFdpZGdldExheW91dERlZmluaXRpb24gfSBmcm9tICcuLi9kYXNoYm9hcmQtd2lkZ2V0L2Rhc2hib2FyZC13aWRnZXQtdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBEYXRhVGFibGVDb25maWcgPSB7XG4gICAgW2lkOiBzdHJpbmddOiB7XG4gICAgICAgIHZpc2liaWxpdHk6IHN0cmluZ1tdO1xuICAgICAgICBvcmRlcjogeyBbaWQ6IHN0cmluZ106IG51bWJlciB9O1xuICAgICAgICBzaG93U2VhcmNoRmlsdGVyUm93OiBib29sZWFuO1xuICAgIH07XG59O1xuXG5leHBvcnQgdHlwZSBMb2NhbFN0b3JhZ2VUeXBlTWFwID0ge1xuICAgIGFjdGl2ZUNoYW5uZWxUb2tlbjogc3RyaW5nO1xuICAgIGF1dGhUb2tlbjogc3RyaW5nO1xuICAgIHVpTGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGU7XG4gICAgdWlMb2NhbGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICBjb250ZW50TGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGU7XG4gICAgZGFzaGJvYXJkV2lkZ2V0TGF5b3V0OiBXaWRnZXRMYXlvdXREZWZpbml0aW9uO1xuICAgIGFjdGl2ZVRoZW1lOiBzdHJpbmc7XG4gICAgbGl2ZVByZXZpZXdDb2xsZWN0aW9uQ29udGVudHM6IGJvb2xlYW47XG4gICAgZGF0YVRhYmxlQ29uZmlnOiBEYXRhVGFibGVDb25maWc7XG59O1xuXG5leHBvcnQgdHlwZSBMb2NhbFN0b3JhZ2VMb2NhdGlvbkJhc2VkVHlwZU1hcCA9IHtcbiAgICBzaGlwcGluZ1Rlc3RPcmRlcjogYW55O1xuICAgIHNoaXBwaW5nVGVzdEFkZHJlc3M6IGFueTtcbn07XG5cbi8qKlxuICogVGhlc2Uga2V5cyBhcmUgc3RvcmVkIHNwZWNpZmljIHRvIGEgcGFydGljdWxhciBBZG1pbklkLCBzbyB0aGF0IG11bHRpcGxlXG4gKiBhZG1pbnMgY2FuIHVzZSB0aGUgc2FtZSBicm93c2VyIHdpdGhvdXQgaW50ZXJmZXJpbmcgd2l0aCBlYWNoIG90aGVyJ3MgZGF0YS5cbiAqL1xuY29uc3QgQURNSU5fU1BFQ0lGSUNfS0VZUzogQXJyYXk8a2V5b2YgTG9jYWxTdG9yYWdlVHlwZU1hcD4gPSBbXG4gICAgJ2FjdGl2ZVRoZW1lJyxcbiAgICAnZGFzaGJvYXJkV2lkZ2V0TGF5b3V0JyxcbiAgICAnYWN0aXZlVGhlbWUnLFxuICAgICdsaXZlUHJldmlld0NvbGxlY3Rpb25Db250ZW50cycsXG4gICAgJ2RhdGFUYWJsZUNvbmZpZycsXG5dO1xuXG5jb25zdCBQUkVGSVggPSAndm5kXyc7XG5cbi8qKlxuICogV3JhcHBlciBhcm91bmQgdGhlIGJyb3dzZXIncyBMb2NhbFN0b3JhZ2UgLyBTZXNzaW9uU3RvcmFnZSBvYmplY3QsIGZvciBwZXJzaXN0aW5nIGRhdGEgdG8gdGhlIGJyb3dzZXIuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExvY2FsU3RvcmFnZVNlcnZpY2Uge1xuICAgIHByaXZhdGUgYWRtaW5JZCA9ICdfX2dsb2JhbF9fJztcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGxvY2F0aW9uOiBMb2NhdGlvbikge31cblxuICAgIHB1YmxpYyBzZXRBZG1pbklkKGFkbWluSWQ/OiBzdHJpbmcgfCBudWxsKSB7XG4gICAgICAgIHRoaXMuYWRtaW5JZCA9IGFkbWluSWQgPz8gJ19fZ2xvYmFsX18nO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldCBhIGtleS12YWx1ZSBwYWlyIGluIHRoZSBicm93c2VyJ3MgTG9jYWxTdG9yYWdlXG4gICAgICovXG4gICAgcHVibGljIHNldDxLIGV4dGVuZHMga2V5b2YgTG9jYWxTdG9yYWdlVHlwZU1hcD4oa2V5OiBLLCB2YWx1ZTogTG9jYWxTdG9yYWdlVHlwZU1hcFtLXSk6IHZvaWQge1xuICAgICAgICBjb25zdCBrZXlOYW1lID0gdGhpcy5rZXlOYW1lKGtleSk7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleU5hbWUsIEpTT04uc3RyaW5naWZ5KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0IGEga2V5LXZhbHVlIHBhaXIgc3BlY2lmaWMgdG8gdGhlIGN1cnJlbnQgbG9jYXRpb24gKHVybClcbiAgICAgKi9cbiAgICBwdWJsaWMgc2V0Rm9yQ3VycmVudExvY2F0aW9uPEsgZXh0ZW5kcyBrZXlvZiBMb2NhbFN0b3JhZ2VMb2NhdGlvbkJhc2VkVHlwZU1hcD4oXG4gICAgICAgIGtleTogSyxcbiAgICAgICAgdmFsdWU6IExvY2FsU3RvcmFnZUxvY2F0aW9uQmFzZWRUeXBlTWFwW0tdLFxuICAgICkge1xuICAgICAgICBjb25zdCBjb21wb3NpdGVLZXkgPSB0aGlzLmdldExvY2F0aW9uQmFzZWRLZXkoa2V5KTtcbiAgICAgICAgdGhpcy5zZXQoY29tcG9zaXRlS2V5IGFzIGFueSwgdmFsdWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldCBhIGtleS12YWx1ZSBwYWlyIGluIHRoZSBicm93c2VyJ3MgU2Vzc2lvblN0b3JhZ2VcbiAgICAgKi9cbiAgICBwdWJsaWMgc2V0Rm9yU2Vzc2lvbjxLIGV4dGVuZHMga2V5b2YgTG9jYWxTdG9yYWdlVHlwZU1hcD4oa2V5OiBLLCB2YWx1ZTogTG9jYWxTdG9yYWdlVHlwZU1hcFtLXSk6IHZvaWQge1xuICAgICAgICBjb25zdCBrZXlOYW1lID0gdGhpcy5rZXlOYW1lKGtleSk7XG4gICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oa2V5TmFtZSwgSlNPTi5zdHJpbmdpZnkodmFsdWUpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHZhbHVlIG9mIHRoZSBnaXZlbiBrZXkgZnJvbSB0aGUgU2Vzc2lvblN0b3JhZ2Ugb3IgTG9jYWxTdG9yYWdlLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQ8SyBleHRlbmRzIGtleW9mIExvY2FsU3RvcmFnZVR5cGVNYXA+KGtleTogSyk6IExvY2FsU3RvcmFnZVR5cGVNYXBbS10gfCBudWxsIHtcbiAgICAgICAgY29uc3Qga2V5TmFtZSA9IHRoaXMua2V5TmFtZShrZXkpO1xuICAgICAgICBjb25zdCBpdGVtID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShrZXlOYW1lKSB8fCBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXlOYW1lKTtcbiAgICAgICAgbGV0IHJlc3VsdDogYW55O1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmVzdWx0ID0gSlNPTi5wYXJzZShpdGVtIHx8ICdudWxsJyk7XG4gICAgICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYENvdWxkIG5vdCBwYXJzZSB0aGUgbG9jYWxTdG9yYWdlIHZhbHVlIGZvciBcIiR7a2V5fVwiICgke2l0ZW19KWApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHRoZSB2YWx1ZSBvZiB0aGUgZ2l2ZW4ga2V5IGZvciB0aGUgY3VycmVudCBsb2NhdGlvbiAodXJsKVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRGb3JDdXJyZW50TG9jYXRpb248SyBleHRlbmRzIGtleW9mIExvY2FsU3RvcmFnZUxvY2F0aW9uQmFzZWRUeXBlTWFwPihcbiAgICAgICAga2V5OiBLLFxuICAgICk6IExvY2FsU3RvcmFnZUxvY2F0aW9uQmFzZWRUeXBlTWFwW0tdIHtcbiAgICAgICAgY29uc3QgY29tcG9zaXRlS2V5ID0gdGhpcy5nZXRMb2NhdGlvbkJhc2VkS2V5KGtleSk7XG4gICAgICAgIHJldHVybiB0aGlzLmdldChjb21wb3NpdGVLZXkgYXMgYW55KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlKGtleToga2V5b2YgTG9jYWxTdG9yYWdlVHlwZU1hcCk6IHZvaWQge1xuICAgICAgICBjb25zdCBrZXlOYW1lID0gdGhpcy5rZXlOYW1lKGtleSk7XG4gICAgICAgIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oa2V5TmFtZSk7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleU5hbWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TG9jYXRpb25CYXNlZEtleShrZXk6IHN0cmluZykge1xuICAgICAgICBjb25zdCBwYXRoID0gdGhpcy5sb2NhdGlvbi5wYXRoKCk7XG4gICAgICAgIHJldHVybiBrZXkgKyBwYXRoO1xuICAgIH1cblxuICAgIHByaXZhdGUga2V5TmFtZShrZXk6IGtleW9mIExvY2FsU3RvcmFnZVR5cGVNYXApOiBzdHJpbmcge1xuICAgICAgICBpZiAoQURNSU5fU1BFQ0lGSUNfS0VZUy5pbmNsdWRlcyhrZXkpKSB7XG4gICAgICAgICAgICByZXR1cm4gYCR7UFJFRklYfV8ke3RoaXMuYWRtaW5JZH1fJHtrZXl9YDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBgJHtQUkVGSVh9XyR7a2V5fWA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -94,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.3", ngImpor
|
|
|
94
94
|
function isComponentWithResolver(input) {
|
|
95
95
|
return input && input.hasOwnProperty('resolveFn');
|
|
96
96
|
}
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9wcm92aWRlcnMvcGFnZS9wYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBRTVFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQzs7QUFtRHRHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQUMsTUFBcUI7SUFDakQsT0FBTztRQUNILE9BQU8sRUFBRSxlQUFlO1FBQ3hCLEtBQUssRUFBRSxJQUFJO1FBQ1gsVUFBVSxFQUFFLENBQUMsV0FBd0IsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO1lBQzNDLFdBQVcsQ0FBQyxlQUFlLENBQUM7Z0JBQ3hCLEdBQUcsTUFBTTtnQkFDVCxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsSUFBSSxDQUFDO2FBQ2pDLENBQUMsQ0FBQztRQUNQLENBQUM7UUFDRCxJQUFJLEVBQUUsQ0FBQyxXQUFXLENBQUM7S0FDdEIsQ0FBQztBQUNOLENBQUM7QUFLRCxNQUFNLE9BQU8sV0FBVztJQUh4QjtRQUlZLGFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBbUMsQ0FBQztLQWdEakU7SUE5Q0csZUFBZSxDQUFDLE1BQXFCO1FBQ2pDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDckMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUMxQztRQUNELG9FQUFvRTtRQUNwRSxNQUFNLEtBQUssR0FBRyxJQUFJLENB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IHsgQVBQX0lOSVRJQUxJWkVSLCBJbmplY3RhYmxlLCBQcm92aWRlciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgZGV0YWlsQ29tcG9uZW50V2l0aFJlc29sdmVyIH0gZnJvbSAnLi4vLi4vY29tbW9uL2Jhc2UtZGV0YWlsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBhZ2VMb2NhdGlvbklkIH0gZnJvbSAnLi4vLi4vY29tbW9uL2NvbXBvbmVudC1yZWdpc3RyeS10eXBlcyc7XHJcbmltcG9ydCB7IENhbkRlYWN0aXZhdGVEZXRhaWxHdWFyZCB9IGZyb20gJy4uLy4uL3NoYXJlZC9wcm92aWRlcnMvcm91dGluZy9jYW4tZGVhY3RpdmF0ZS1kZXRhaWwtZ3VhcmQnO1xyXG5cclxuLyoqXHJcbiAqIEBkZXNjcmlwdGlvblxyXG4gKiBUaGUgb2JqZWN0IHVzZWQgdG8gY29uZmlndXJlIGEgbmV3IHBhZ2UgdGFiLlxyXG4gKlxyXG4gKiBAZG9jc0NhdGVnb3J5IHRhYnNcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGFnZVRhYkNvbmZpZyB7XHJcbiAgICAvKipcclxuICAgICAqIEBkZXNjcmlwdGlvblxyXG4gICAgICogQSB2YWxpZCBsb2NhdGlvbiByZXByZXNlbnRpbmcgYSBsaXN0IG9yIGRldGFpbCBwYWdlLlxyXG4gICAgICovXHJcbiAgICBsb2NhdGlvbjogUGFnZUxvY2F0aW9uSWQ7XHJcbiAgICAvKipcclxuICAgICAqIEBkZXNjcmlwdGlvblxyXG4gICAgICogQW4gb3B0aW9uYWwgaWNvbiB0byBkaXNwbGF5IGluIHRoZSB0YWIuIFRoZSBpY29uXHJcbiAgICAgKiBzaG91bGQgYmUgYSB2YWxpZCBzaGFwZSBuYW1lIGZyb20gdGhlIFtDbGFyaXR5IEljb25zXShodHRwczovL2NvcmUuY2xhcml0eS5kZXNpZ24vZm91bmRhdGlvbi9pY29ucy9zaGFwZXMvKVxyXG4gICAgICogc2V0LlxyXG4gICAgICovXHJcbiAgICB0YWJJY29uPzogc3RyaW5nO1xyXG4gICAgLyoqXHJcbiAgICAgKiBAZGVzY3JpcHRpb25cclxuICAgICAqIFRoZSByb3V0ZSBwYXRoIHRvIHRoZSB0YWIuIFRoaXMgd2lsbCBiZSBhcHBlbmRlZCB0byB0aGVcclxuICAgICAqIHJvdXRlIG9mIHRoZSBwYXJlbnQgcGFnZS5cclxuICAgICAqL1xyXG4gICAgcm91dGU6IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogQGRlc2NyaXB0aW9uXHJcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGUgdGFiIHRvIGRpc3BsYXkgaW4gdGhlIFVJLlxyXG4gICAgICovXHJcbiAgICB0YWI6IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogQGRlc2NyaXB0aW9uXHJcbiAgICAgKiBUaGUgcHJpb3JpdHkgb2YgdGhlIHRhYi4gVGFicyB3aXRoIGEgbG93ZXIgcHJpb3JpdHkgd2lsbCBiZSBkaXNwbGF5ZWQgZmlyc3QuXHJcbiAgICAgKi9cclxuICAgIHByaW9yaXR5PzogbnVtYmVyO1xyXG4gICAgLyoqXHJcbiAgICAgKiBAZGVzY3JpcHRpb25cclxuICAgICAqIFRoZSBjb21wb25lbnQgdG8gcmVuZGVyIGF0IHRoZSByb3V0ZSBvZiB0aGUgdGFiLlxyXG4gICAgICovXHJcbiAgICBjb21wb25lbnQ6IFR5cGU8YW55PiB8IFJldHVyblR5cGU8dHlwZW9mIGRldGFpbENvbXBvbmVudFdpdGhSZXNvbHZlcj47XHJcbiAgICAvKipcclxuICAgICAqIEBkZXNjcmlwdGlvblxyXG4gICAgICogWW91IGNhbiBvcHRpb25hbGx5IHByb3ZpZGUgYW55IG5hdGl2ZSBBbmd1bGFyIHJvdXRlIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBoZXJlLlxyXG4gICAgICogQW55IHZhbHVlcyBwcm92aWRlZCBoZXJlIHdpbGwgdGFrZSBwcmVjZWRlbmNlIG92ZXIgdGhlIHZhbHVlcyBnZW5lcmF0ZWRcclxuICAgICAqIGJ5IHRoZSBgcm91dGVgIGFuZCBgY29tcG9uZW50YCBwcm9wZXJ0aWVzLlxyXG4gICAgICovXHJcbiAgICByb3V0ZUNvbmZpZz86IFJvdXRlO1xyXG59XHJcblxyXG4vKipcclxuICogQGRlc2NyaXB0aW9uXHJcbiAqIEFkZCBhIHRhYiB0byBhbiBleGlzdGluZyBsaXN0IG9yIGRldGFpbCBwYWdlLlxyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiBgYGBUeXBlU2NyaXB0XHJcbiAqIFxcQE5nTW9kdWxlKHtcclxuICogICBpbXBvcnRzOiBbU2hhcmVkTW9kdWxlXSxcclxuICogICBwcm92aWRlcnM6IFtcclxuICogICAgIHJlZ2lzdGVyUGFnZVRhYih7XHJcbiAqICAgICAgIGxvY2F0aW9uOiAncHJvZHVjdC1saXN0JyxcclxuICogICAgICAgdGFiOiAnRGVsZXRlZCBQcm9kdWN0cycsXHJcbiAqICAgICAgIHJvdXRlOiAnZGVsZXRlZCcsXHJcbiAqICAgICAgIGNvbXBvbmVudDogRGVsZXRlZFByb2R1Y3RMaXN0Q29tcG9uZW50LFxyXG4gKiAgICAgfSksXHJcbiAqICAgXSxcclxuICogfSlcclxuICogZXhwb3J0IGNsYXNzIE15VWlFeHRlbnNpb25Nb2R1bGUge31cclxuICogYGBgXHJcbiAqIEBkb2NzQ2F0ZWdvcnkgdGFic1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyUGFnZVRhYihjb25maWc6IFBhZ2VUYWJDb25maWcpOiBQcm92aWRlciB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcclxuICAgICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgICB1c2VGYWN0b3J5OiAocGFnZVNlcnZpY2U6IFBhZ2VTZXJ2aWNlKSA9PiAoKSA9PiB7XHJcbiAgICAgICAgICAgIHBhZ2VTZXJ2aWNlLnJlZ2lzdGVyUGFnZVRhYih7XHJcbiAgICAgICAgICAgICAgICAuLi5jb25maWcsXHJcbiAgICAgICAgICAgICAgICBwcmlvcml0eTogY29uZmlnLnByaW9yaXR5IHx8IDEsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZGVwczogW1BhZ2VTZXJ2aWNlXSxcclxuICAgIH07XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBhZ2VTZXJ2aWNlIHtcclxuICAgIHByaXZhdGUgcmVnaXN0cnkgPSBuZXcgTWFwPFBhZ2VMb2NhdGlvbklkLCBQYWdlVGFiQ29uZmlnW10+KCk7XHJcblxyXG4gICAgcmVnaXN0ZXJQYWdlVGFiKGNvbmZpZzogUGFnZVRhYkNvbmZpZykge1xyXG4gICAgICAgIGlmICghdGhpcy5yZWdpc3RyeS5oYXMoY29uZmlnLmxvY2F0aW9uKSkge1xyXG4gICAgICAgICAgICB0aGlzLnJlZ2lzdHJ5LnNldChjb25maWcubG9jYXRpb24sIFtdKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cclxuICAgICAgICBjb25zdCBwYWdlcyA9IHRoaXMucmVnaXN0cnkuZ2V0KGNvbmZpZy5sb2NhdGlvbikhO1xyXG4gICAgICAgIGlmIChwYWdlcy5maW5kKHAgPT4gcC50YWIgPT09IGNvbmZpZy50YWIpKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQSBwYWdlIHdpdGggdGhlIHRhYiBcIiR7Y29uZmlnLnRhYn1cIiBoYXMgYWxyZWFkeSBiZWVuIHJlZ2lzdGVyZWRgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcGFnZXMucHVzaChjb25maWcpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFBhZ2VUYWJSb3V0ZXMobG9jYXRpb246IFBhZ2VMb2NhdGlvbklkKTogUm91dGVbXSB7XHJcbiAgICAgICAgY29uc3QgY29uZmlncyA9IHRoaXMucmVnaXN0cnkuZ2V0KGxvY2F0aW9uKSB8fCBbXTtcclxuICAgICAgICByZXR1cm4gY29uZmlncy5tYXAoY29uZmlnID0+IHtcclxuICAgICAgICAgICAgY29uc3Qgcm91dGU6IFJvdXRlID0ge1xyXG4gICAgICAgICAgICAgICAgcGF0aDogY29uZmlnLnJvdXRlIHx8ICcnLFxyXG4gICAgICAgICAgICAgICAgcGF0aE1hdGNoOiBjb25maWcucm91dGUgPyAncHJlZml4JyA6ICdmdWxsJyxcclxuICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgIGxldCBjb21wb25lbnQ6IFR5cGU8YW55PjtcclxuICAgICAgICAgICAgaWYgKGlzQ29tcG9uZW50V2l0aFJlc29sdmVyKGNvbmZpZy5jb21wb25lbnQpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB7IGNvbXBvbmVudDogY21wLCBicmVhZGNydW1iRm4sIHJlc29sdmVGbiB9ID0gY29uZmlnLmNvbXBvbmVudDtcclxuICAgICAgICAgICAgICAgIGNvbXBvbmVudCA9IGNtcDtcclxuICAgICAgICAgICAgICAgIHJvdXRlLnJlc29sdmUgPSB7IGRldGFpbDogcmVzb2x2ZUZuIH07XHJcbiAgICAgICAgICAgICAgICByb3V0ZS5kYXRhID0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJyZWFkY3J1bWI6IGRhdGEgPT4gZGF0YS5kZXRhaWwuZW50aXR5LnBpcGUobWFwKGVudGl0eSA9PiBicmVhZGNydW1iRm4oZW50aXR5KSkpLFxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGNvbXBvbmVudCA9IGNvbmZpZy5jb21wb25lbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc3QgZ3VhcmRzID1cclxuICAgICAgICAgICAgICAgIHR5cGVvZiBjb21wb25lbnQucHJvdG90eXBlLmNhbkRlYWN0aXZhdGUgPT09ICdmdW5jdGlvbicgPyBbQ2FuRGVhY3RpdmF0ZURldGFpbEd1YXJkXSA6IFtdO1xyXG4gICAgICAgICAgICByb3V0ZS5jb21wb25lbnQgPSBjb21wb25lbnQ7XHJcbiAgICAgICAgICAgIHJvdXRlLmNhbkRlYWN0aXZhdGUgPSBndWFyZHM7XHJcbiAgICAgICAgICAgIGlmIChjb25maWcucm91dGVDb25maWcpIHtcclxuICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24ocm91dGUsIGNvbmZpZy5yb3V0ZUNvbmZpZyk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHJldHVybiByb3V0ZTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRQYWdlVGFicyhsb2NhdGlvbjogUGFnZUxvY2F0aW9uSWQpOiBQYWdlVGFiQ29uZmlnW10ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJlZ2lzdHJ5LmdldChsb2NhdGlvbik/LnNvcnQoKGEsIGIpID0+IChhLnByaW9yaXR5ID8/IDApIC0gKGIucHJpb3JpdHkgPz8gMCkpIHx8IFtdO1xyXG4gICAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBpc0NvbXBvbmVudFdpdGhSZXNvbHZlcihpbnB1dDogYW55KTogaW5wdXQgaXMgUmV0dXJuVHlwZTx0eXBlb2YgZGV0YWlsQ29tcG9uZW50V2l0aFJlc29sdmVyPiB7XHJcbiAgICByZXR1cm4gaW5wdXQgJiYgaW5wdXQuaGFzT3duUHJvcGVydHkoJ3Jlc29sdmVGbicpO1xyXG59XHJcbiJdfQ==
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9wcm92aWRlcnMvcGFnZS9wYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBRTVFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQzs7QUFtRHRHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQUMsTUFBcUI7SUFDakQsT0FBTztRQUNILE9BQU8sRUFBRSxlQUFlO1FBQ3hCLEtBQUssRUFBRSxJQUFJO1FBQ1gsVUFBVSxFQUFFLENBQUMsV0FBd0IsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO1lBQzNDLFdBQVcsQ0FBQyxlQUFlLENBQUM7Z0JBQ3hCLEdBQUcsTUFBTTtnQkFDVCxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsSUFBSSxDQUFDO2FBQ2pDLENBQUMsQ0FBQztRQUNQLENBQUM7UUFDRCxJQUFJLEVBQUUsQ0FBQyxXQUFXLENBQUM7S0FDdEIsQ0FBQztBQUNOLENBQUM7QUFLRCxNQUFNLE9BQU8sV0FBVztJQUh4QjtRQUlZLGFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBbUMsQ0FBQztLQWdEakU7SUE5Q0csZUFBZSxDQUFDLE1BQXFCO1FBQ2pDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDckMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUMxQztRQUNELG9FQUFvRTtRQUNwRSxNQUFNLEtBQUssR0FBRyxJQUFJLENB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IHsgQVBQX0lOSVRJQUxJWkVSLCBJbmplY3RhYmxlLCBQcm92aWRlciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgZGV0YWlsQ29tcG9uZW50V2l0aFJlc29sdmVyIH0gZnJvbSAnLi4vLi4vY29tbW9uL2Jhc2UtZGV0YWlsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdlTG9jYXRpb25JZCB9IGZyb20gJy4uLy4uL2NvbW1vbi9jb21wb25lbnQtcmVnaXN0cnktdHlwZXMnO1xuaW1wb3J0IHsgQ2FuRGVhY3RpdmF0ZURldGFpbEd1YXJkIH0gZnJvbSAnLi4vLi4vc2hhcmVkL3Byb3ZpZGVycy9yb3V0aW5nL2Nhbi1kZWFjdGl2YXRlLWRldGFpbC1ndWFyZCc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKiBUaGUgb2JqZWN0IHVzZWQgdG8gY29uZmlndXJlIGEgbmV3IHBhZ2UgdGFiLlxuICpcbiAqIEBkb2NzQ2F0ZWdvcnkgdGFic1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2VUYWJDb25maWcge1xuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvblxuICAgICAqIEEgdmFsaWQgbG9jYXRpb24gcmVwcmVzZW50aW5nIGEgbGlzdCBvciBkZXRhaWwgcGFnZS5cbiAgICAgKi9cbiAgICBsb2NhdGlvbjogUGFnZUxvY2F0aW9uSWQ7XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uXG4gICAgICogQW4gb3B0aW9uYWwgaWNvbiB0byBkaXNwbGF5IGluIHRoZSB0YWIuIFRoZSBpY29uXG4gICAgICogc2hvdWxkIGJlIGEgdmFsaWQgc2hhcGUgbmFtZSBmcm9tIHRoZSBbQ2xhcml0eSBJY29uc10oaHR0cHM6Ly9jb3JlLmNsYXJpdHkuZGVzaWduL2ZvdW5kYXRpb24vaWNvbnMvc2hhcGVzLylcbiAgICAgKiBzZXQuXG4gICAgICovXG4gICAgdGFiSWNvbj86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb25cbiAgICAgKiBUaGUgcm91dGUgcGF0aCB0byB0aGUgdGFiLiBUaGlzIHdpbGwgYmUgYXBwZW5kZWQgdG8gdGhlXG4gICAgICogcm91dGUgb2YgdGhlIHBhcmVudCBwYWdlLlxuICAgICAqL1xuICAgIHJvdXRlOiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIHRhYiB0byBkaXNwbGF5IGluIHRoZSBVSS5cbiAgICAgKi9cbiAgICB0YWI6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb25cbiAgICAgKiBUaGUgcHJpb3JpdHkgb2YgdGhlIHRhYi4gVGFicyB3aXRoIGEgbG93ZXIgcHJpb3JpdHkgd2lsbCBiZSBkaXNwbGF5ZWQgZmlyc3QuXG4gICAgICovXG4gICAgcHJpb3JpdHk/OiBudW1iZXI7XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uXG4gICAgICogVGhlIGNvbXBvbmVudCB0byByZW5kZXIgYXQgdGhlIHJvdXRlIG9mIHRoZSB0YWIuXG4gICAgICovXG4gICAgY29tcG9uZW50OiBUeXBlPGFueT4gfCBSZXR1cm5UeXBlPHR5cGVvZiBkZXRhaWxDb21wb25lbnRXaXRoUmVzb2x2ZXI+O1xuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvblxuICAgICAqIFlvdSBjYW4gb3B0aW9uYWxseSBwcm92aWRlIGFueSBuYXRpdmUgQW5ndWxhciByb3V0ZSBjb25maWd1cmF0aW9uIG9wdGlvbnMgaGVyZS5cbiAgICAgKiBBbnkgdmFsdWVzIHByb3ZpZGVkIGhlcmUgd2lsbCB0YWtlIHByZWNlZGVuY2Ugb3ZlciB0aGUgdmFsdWVzIGdlbmVyYXRlZFxuICAgICAqIGJ5IHRoZSBgcm91dGVgIGFuZCBgY29tcG9uZW50YCBwcm9wZXJ0aWVzLlxuICAgICAqL1xuICAgIHJvdXRlQ29uZmlnPzogUm91dGU7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKiBBZGQgYSB0YWIgdG8gYW4gZXhpc3RpbmcgbGlzdCBvciBkZXRhaWwgcGFnZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgVHlwZVNjcmlwdFxuICogXFxATmdNb2R1bGUoe1xuICogICBpbXBvcnRzOiBbU2hhcmVkTW9kdWxlXSxcbiAqICAgcHJvdmlkZXJzOiBbXG4gKiAgICAgcmVnaXN0ZXJQYWdlVGFiKHtcbiAqICAgICAgIGxvY2F0aW9uOiAncHJvZHVjdC1saXN0JyxcbiAqICAgICAgIHRhYjogJ0RlbGV0ZWQgUHJvZHVjdHMnLFxuICogICAgICAgcm91dGU6ICdkZWxldGVkJyxcbiAqICAgICAgIGNvbXBvbmVudDogRGVsZXRlZFByb2R1Y3RMaXN0Q29tcG9uZW50LFxuICogICAgIH0pLFxuICogICBdLFxuICogfSlcbiAqIGV4cG9ydCBjbGFzcyBNeVVpRXh0ZW5zaW9uTW9kdWxlIHt9XG4gKiBgYGBcbiAqIEBkb2NzQ2F0ZWdvcnkgdGFic1xuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJQYWdlVGFiKGNvbmZpZzogUGFnZVRhYkNvbmZpZyk6IFByb3ZpZGVyIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB1c2VGYWN0b3J5OiAocGFnZVNlcnZpY2U6IFBhZ2VTZXJ2aWNlKSA9PiAoKSA9PiB7XG4gICAgICAgICAgICBwYWdlU2VydmljZS5yZWdpc3RlclBhZ2VUYWIoe1xuICAgICAgICAgICAgICAgIC4uLmNvbmZpZyxcbiAgICAgICAgICAgICAgICBwcmlvcml0eTogY29uZmlnLnByaW9yaXR5IHx8IDEsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgZGVwczogW1BhZ2VTZXJ2aWNlXSxcbiAgICB9O1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBQYWdlU2VydmljZSB7XG4gICAgcHJpdmF0ZSByZWdpc3RyeSA9IG5ldyBNYXA8UGFnZUxvY2F0aW9uSWQsIFBhZ2VUYWJDb25maWdbXT4oKTtcblxuICAgIHJlZ2lzdGVyUGFnZVRhYihjb25maWc6IFBhZ2VUYWJDb25maWcpIHtcbiAgICAgICAgaWYgKCF0aGlzLnJlZ2lzdHJ5Lmhhcyhjb25maWcubG9jYXRpb24pKSB7XG4gICAgICAgICAgICB0aGlzLnJlZ2lzdHJ5LnNldChjb25maWcubG9jYXRpb24sIFtdKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICBjb25zdCBwYWdlcyA9IHRoaXMucmVnaXN0cnkuZ2V0KGNvbmZpZy5sb2NhdGlvbikhO1xuICAgICAgICBpZiAocGFnZXMuZmluZChwID0+IHAudGFiID09PSBjb25maWcudGFiKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBIHBhZ2Ugd2l0aCB0aGUgdGFiIFwiJHtjb25maWcudGFifVwiIGhhcyBhbHJlYWR5IGJlZW4gcmVnaXN0ZXJlZGApO1xuICAgICAgICB9XG4gICAgICAgIHBhZ2VzLnB1c2goY29uZmlnKTtcbiAgICB9XG5cbiAgICBnZXRQYWdlVGFiUm91dGVzKGxvY2F0aW9uOiBQYWdlTG9jYXRpb25JZCk6IFJvdXRlW10ge1xuICAgICAgICBjb25zdCBjb25maWdzID0gdGhpcy5yZWdpc3RyeS5nZXQobG9jYXRpb24pIHx8IFtdO1xuICAgICAgICByZXR1cm4gY29uZmlncy5tYXAoY29uZmlnID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJvdXRlOiBSb3V0ZSA9IHtcbiAgICAgICAgICAgICAgICBwYXRoOiBjb25maWcucm91dGUgfHwgJycsXG4gICAgICAgICAgICAgICAgcGF0aE1hdGNoOiBjb25maWcucm91dGUgPyAncHJlZml4JyA6ICdmdWxsJyxcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGxldCBjb21wb25lbnQ6IFR5cGU8YW55PjtcbiAgICAgICAgICAgIGlmIChpc0NvbXBvbmVudFdpdGhSZXNvbHZlcihjb25maWcuY29tcG9uZW50KSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgY29tcG9uZW50OiBjbXAsIGJyZWFkY3J1bWJGbiwgcmVzb2x2ZUZuIH0gPSBjb25maWcuY29tcG9uZW50O1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudCA9IGNtcDtcbiAgICAgICAgICAgICAgICByb3V0ZS5yZXNvbHZlID0geyBkZXRhaWw6IHJlc29sdmVGbiB9O1xuICAgICAgICAgICAgICAgIHJvdXRlLmRhdGEgPSB7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFkY3J1bWI6IGRhdGEgPT4gZGF0YS5kZXRhaWwuZW50aXR5LnBpcGUobWFwKGVudGl0eSA9PiBicmVhZGNydW1iRm4oZW50aXR5KSkpLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudCA9IGNvbmZpZy5jb21wb25lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBndWFyZHMgPVxuICAgICAgICAgICAgICAgIHR5cGVvZiBjb21wb25lbnQucHJvdG90eXBlLmNhbkRlYWN0aXZhdGUgPT09ICdmdW5jdGlvbicgPyBbQ2FuRGVhY3RpdmF0ZURldGFpbEd1YXJkXSA6IFtdO1xuICAgICAgICAgICAgcm91dGUuY29tcG9uZW50ID0gY29tcG9uZW50O1xuICAgICAgICAgICAgcm91dGUuY2FuRGVhY3RpdmF0ZSA9IGd1YXJkcztcbiAgICAgICAgICAgIGlmIChjb25maWcucm91dGVDb25maWcpIHtcbiAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHJvdXRlLCBjb25maWcucm91dGVDb25maWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gcm91dGU7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldFBhZ2VUYWJzKGxvY2F0aW9uOiBQYWdlTG9jYXRpb25JZCk6IFBhZ2VUYWJDb25maWdbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlZ2lzdHJ5LmdldChsb2NhdGlvbik/LnNvcnQoKGEsIGIpID0+IChhLnByaW9yaXR5ID8/IDApIC0gKGIucHJpb3JpdHkgPz8gMCkpIHx8IFtdO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gaXNDb21wb25lbnRXaXRoUmVzb2x2ZXIoaW5wdXQ6IGFueSk6IGlucHV0IGlzIFJldHVyblR5cGU8dHlwZW9mIGRldGFpbENvbXBvbmVudFdpdGhSZXNvbHZlcj4ge1xuICAgIHJldHVybiBpbnB1dCAmJiBpbnB1dC5oYXNPd25Qcm9wZXJ0eSgncmVzb2x2ZUZuJyk7XG59XG4iXX0=
|