@vendure/admin-ui 2.1.2 → 2.1.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/catalog.module.d.ts +1 -0
- package/core/common/generated-types.d.ts +2 -1
- package/core/common/version.d.ts +1 -1
- package/core/extension/add-nav-menu-item.d.ts +5 -1
- package/core/extension/register-route-component.d.ts +1 -1
- package/core/shared/components/order-state-label/order-state-label.component.d.ts +1 -1
- package/core/shared/dynamic-form-inputs/default-form-inputs.d.ts +1 -1
- package/customer/customer.module.d.ts +1 -2
- package/esm2022/catalog/catalog.module.mjs +6 -1
- package/esm2022/catalog/components/create-product-variant-dialog/create-product-variant-dialog.component.mjs +2 -2
- package/esm2022/core/common/generated-types.mjs +1 -1
- package/esm2022/core/common/version.mjs +2 -2
- package/esm2022/core/data/utils/add-custom-fields.mjs +5 -1
- package/esm2022/core/extension/add-nav-menu-item.mjs +6 -2
- package/esm2022/customer/customer.module.mjs +6 -3
- package/esm2022/marketing/components/promotion-list/promotion-list.component.mjs +3 -3
- package/esm2022/marketing/marketing.module.mjs +6 -2
- package/esm2022/order/order.module.mjs +6 -2
- package/esm2022/settings/components/channel-list/channel-list-bulk-actions.mjs +11 -4
- package/esm2022/settings/settings.module.mjs +6 -2
- package/esm2022/system/system.module.mjs +1 -1
- package/fesm2022/vendure-admin-ui-catalog.mjs +6 -1
- package/fesm2022/vendure-admin-ui-catalog.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-core.mjs +10 -2
- package/fesm2022/vendure-admin-ui-core.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-customer.mjs +5 -2
- package/fesm2022/vendure-admin-ui-customer.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-marketing.mjs +7 -3
- package/fesm2022/vendure-admin-ui-marketing.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-order.mjs +5 -1
- package/fesm2022/vendure-admin-ui-order.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-settings.mjs +13 -2
- package/fesm2022/vendure-admin-ui-settings.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-system.mjs.map +1 -1
- package/marketing/marketing.module.d.ts +1 -1
- package/order/order.module.d.ts +1 -1
- package/package.json +8 -8
- package/settings/settings.module.d.ts +1 -1
|
@@ -34,6 +34,7 @@ import * as i31 from "./components/product-variant-quick-jump/product-variant-qu
|
|
|
34
34
|
import * as i32 from "@vendure/admin-ui/core";
|
|
35
35
|
import * as i33 from "@angular/router";
|
|
36
36
|
export declare class CatalogModule {
|
|
37
|
+
private static hasRegisteredTabsAndBulkActions;
|
|
37
38
|
constructor(bulkActionRegistryService: BulkActionRegistryService, pageService: PageService);
|
|
38
39
|
static ɵfac: i0.ɵɵFactoryDeclaration<CatalogModule, never>;
|
|
39
40
|
static ɵmod: i0.ɵɵNgModuleDeclaration<CatalogModule, [typeof i1.ProductListComponent, typeof i2.ProductDetailComponent, typeof i3.FacetListComponent, typeof i4.FacetDetailComponent, typeof i5.GenerateProductVariantsComponent, typeof i6.ApplyFacetDialogComponent, typeof i7.AssetListComponent, typeof i8.AssetsComponent, typeof i9.VariantPriceDetailComponent, typeof i10.CollectionListComponent, typeof i11.CollectionDetailComponent, typeof i12.CollectionTreeComponent, typeof i13.CollectionTreeNodeComponent, typeof i14.CollectionContentsComponent, typeof i15.ProductVariantsTableComponent, typeof i16.OptionValueInputComponent, typeof i17.UpdateProductOptionDialogComponent, typeof i18.ProductVariantsEditorComponent, typeof i19.AssignProductsToChannelDialogComponent, typeof i20.AssetDetailComponent, typeof i21.ConfirmVariantDeletionDialogComponent, typeof i22.ProductOptionsEditorComponent, typeof i23.BulkAddFacetValuesDialogComponent, typeof i24.CollectionDataTableComponent, typeof i25.CollectionBreadcrumbPipe, typeof i26.MoveCollectionsDialogComponent, typeof i27.ProductVariantListComponent, typeof i2.ProductDetailComponent, typeof i28.ProductVariantDetailComponent, typeof i29.CreateProductVariantDialogComponent, typeof i30.CreateProductOptionGroupDialogComponent, typeof i31.ProductVariantQuickJumpComponent], [typeof i32.SharedModule, typeof i33.RouterModule], [typeof i1.ProductListComponent, typeof i2.ProductDetailComponent, typeof i3.FacetListComponent, typeof i4.FacetDetailComponent, typeof i5.GenerateProductVariantsComponent, typeof i6.ApplyFacetDialogComponent, typeof i7.AssetListComponent, typeof i8.AssetsComponent, typeof i9.VariantPriceDetailComponent, typeof i10.CollectionListComponent, typeof i11.CollectionDetailComponent, typeof i12.CollectionTreeComponent, typeof i13.CollectionTreeNodeComponent, typeof i14.CollectionContentsComponent, typeof i15.ProductVariantsTableComponent, typeof i16.OptionValueInputComponent, typeof i17.UpdateProductOptionDialogComponent, typeof i18.ProductVariantsEditorComponent, typeof i19.AssignProductsToChannelDialogComponent, typeof i20.AssetDetailComponent, typeof i21.ConfirmVariantDeletionDialogComponent, typeof i22.ProductOptionsEditorComponent, typeof i23.BulkAddFacetValuesDialogComponent, typeof i24.CollectionDataTableComponent, typeof i25.CollectionBreadcrumbPipe, typeof i26.MoveCollectionsDialogComponent, typeof i27.ProductVariantListComponent, typeof i2.ProductDetailComponent, typeof i28.ProductVariantDetailComponent, typeof i29.CreateProductVariantDialogComponent, typeof i30.CreateProductOptionGroupDialogComponent, typeof i31.ProductVariantQuickJumpComponent]>;
|
|
@@ -3456,6 +3456,7 @@ export type OrderLine = Node & {
|
|
|
3456
3456
|
proratedUnitPrice: Scalars['Money']['output'];
|
|
3457
3457
|
/** The proratedUnitPrice including tax */
|
|
3458
3458
|
proratedUnitPriceWithTax: Scalars['Money']['output'];
|
|
3459
|
+
/** The quantity of items purchased */
|
|
3459
3460
|
quantity: Scalars['Int']['output'];
|
|
3460
3461
|
taxLines: Array<TaxLine>;
|
|
3461
3462
|
taxRate: Scalars['Float']['output'];
|
|
@@ -4147,7 +4148,7 @@ export type ProductVariantListOptions = {
|
|
|
4147
4148
|
export type ProductVariantPrice = {
|
|
4148
4149
|
__typename?: 'ProductVariantPrice';
|
|
4149
4150
|
currencyCode: CurrencyCode;
|
|
4150
|
-
price: Scalars['
|
|
4151
|
+
price: Scalars['Money']['output'];
|
|
4151
4152
|
};
|
|
4152
4153
|
/**
|
|
4153
4154
|
* Used to set up update the price of a ProductVariant in a particular Channel.
|
package/core/common/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const ADMIN_UI_VERSION = "2.1.
|
|
1
|
+
export declare const ADMIN_UI_VERSION = "2.1.3";
|
|
@@ -10,6 +10,8 @@ import { NavMenuItem, NavMenuSection } from '../providers/nav-builder/nav-builde
|
|
|
10
10
|
*
|
|
11
11
|
* @example
|
|
12
12
|
* ```ts title="providers.ts"
|
|
13
|
+
* import { addNavMenuSection } from '\@vendure/admin-ui/core';
|
|
14
|
+
*
|
|
13
15
|
* export default [
|
|
14
16
|
* addNavMenuSection({
|
|
15
17
|
* id: 'reports',
|
|
@@ -36,6 +38,8 @@ export declare function addNavMenuSection(config: NavMenuSection, before?: strin
|
|
|
36
38
|
*
|
|
37
39
|
* @example
|
|
38
40
|
* ```ts title="providers.ts"
|
|
41
|
+
* import { addNavMenuItem } from '\@vendure/admin-ui/core';
|
|
42
|
+
*
|
|
39
43
|
* export default [
|
|
40
44
|
* addNavMenuItem({
|
|
41
45
|
* id: 'reviews',
|
|
@@ -45,7 +49,7 @@ export declare function addNavMenuSection(config: NavMenuSection, before?: strin
|
|
|
45
49
|
* },
|
|
46
50
|
* 'marketing'),
|
|
47
51
|
* ];
|
|
48
|
-
*
|
|
52
|
+
* ```
|
|
49
53
|
*
|
|
50
54
|
* @docsCategory nav-menu
|
|
51
55
|
*/
|
|
@@ -88,7 +88,7 @@ export declare function registerRouteComponent<Component extends any | BaseDetai
|
|
|
88
88
|
component: typeof AngularRouteComponent;
|
|
89
89
|
title?: string | Type<import("@angular/router").Resolve<string>> | ResolveFn<string> | undefined;
|
|
90
90
|
path: string;
|
|
91
|
-
pathMatch?: "
|
|
91
|
+
pathMatch?: "prefix" | "full" | undefined;
|
|
92
92
|
matcher?: import("@angular/router").UrlMatcher | undefined;
|
|
93
93
|
loadComponent?: (() => Type<unknown> | Observable<Type<unknown> | import("@angular/router").DefaultExport<Type<unknown>>> | Promise<Type<unknown> | import("@angular/router").DefaultExport<Type<unknown>>>) | undefined;
|
|
94
94
|
redirectTo?: string | undefined;
|
|
@@ -11,7 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
*/
|
|
12
12
|
export declare class OrderStateLabelComponent {
|
|
13
13
|
state: string;
|
|
14
|
-
get chipColorType(): "error" | "success" | "
|
|
14
|
+
get chipColorType(): "error" | "success" | "" | "warning";
|
|
15
15
|
static ɵfac: i0.ɵɵFactoryDeclaration<OrderStateLabelComponent, never>;
|
|
16
16
|
static ɵcmp: i0.ɵɵComponentDeclaration<OrderStateLabelComponent, "vdr-order-state-label", never, { "state": { "alias": "state"; "required": false; }; }, {}, never, ["*"], false, never>;
|
|
17
17
|
}
|
|
@@ -8,7 +8,7 @@ import { PasswordFormInputComponent } from './password-form-input/password-form-
|
|
|
8
8
|
import { ProductMultiSelectorFormInputComponent } from './product-multi-selector-form-input/product-multi-selector-form-input.component';
|
|
9
9
|
import { ProductSelectorFormInputComponent } from './product-selector-form-input/product-selector-form-input.component';
|
|
10
10
|
import { SelectFormInputComponent } from './select-form-input/select-form-input.component';
|
|
11
|
-
export declare const defaultFormInputs: (typeof
|
|
11
|
+
export declare const defaultFormInputs: (typeof HtmlEditorFormInputComponent | typeof JsonEditorFormInputComponent | typeof CombinationModeFormInputComponent | typeof CurrencyFormInputComponent | typeof CustomerGroupFormInputComponent | typeof PasswordFormInputComponent | typeof ProductMultiSelectorFormInputComponent | typeof ProductSelectorFormInputComponent | typeof SelectFormInputComponent)[];
|
|
12
12
|
/**
|
|
13
13
|
* Registers the default form input components.
|
|
14
14
|
*/
|
|
@@ -16,8 +16,7 @@ import * as i13 from "./components/customer-group-detail/customer-group-detail.c
|
|
|
16
16
|
import * as i14 from "@vendure/admin-ui/core";
|
|
17
17
|
import * as i15 from "@angular/router";
|
|
18
18
|
export declare class CustomerModule {
|
|
19
|
-
private
|
|
20
|
-
private pageService;
|
|
19
|
+
private static hasRegisteredTabsAndBulkActions;
|
|
21
20
|
constructor(bulkActionRegistryService: BulkActionRegistryService, pageService: PageService);
|
|
22
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<CustomerModule, never>;
|
|
23
22
|
static ɵmod: i0.ɵɵNgModuleDeclaration<CustomerModule, [typeof i1.CustomerListComponent, typeof i2.CustomerDetailComponent, typeof i3.CustomerStatusLabelComponent, typeof i4.AddressCardComponent, typeof i5.CustomerGroupListComponent, typeof i6.CustomerGroupDetailDialogComponent, typeof i7.AddCustomerToGroupDialogComponent, typeof i8.CustomerGroupMemberListComponent, typeof i9.SelectCustomerGroupDialogComponent, typeof i10.CustomerHistoryComponent, typeof i11.AddressDetailDialogComponent, typeof i12.CustomerHistoryEntryHostComponent, typeof i13.CustomerGroupDetailComponent], [typeof i14.SharedModule, typeof i15.RouterModule], [typeof i4.AddressCardComponent]>;
|
|
@@ -76,7 +76,11 @@ const CATALOG_COMPONENTS = [
|
|
|
76
76
|
ProductVariantQuickJumpComponent,
|
|
77
77
|
];
|
|
78
78
|
export class CatalogModule {
|
|
79
|
+
static { this.hasRegisteredTabsAndBulkActions = false; }
|
|
79
80
|
constructor(bulkActionRegistryService, pageService) {
|
|
81
|
+
if (CatalogModule.hasRegisteredTabsAndBulkActions) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
80
84
|
bulkActionRegistryService.registerBulkAction(assignFacetValuesToProductsBulkAction);
|
|
81
85
|
bulkActionRegistryService.registerBulkAction(assignProductsToChannelBulkAction);
|
|
82
86
|
bulkActionRegistryService.registerBulkAction(assignProductVariantsToChannelBulkAction);
|
|
@@ -215,6 +219,7 @@ export class CatalogModule {
|
|
|
215
219
|
],
|
|
216
220
|
}),
|
|
217
221
|
});
|
|
222
|
+
CatalogModule.hasRegisteredTabsAndBulkActions = true;
|
|
218
223
|
}
|
|
219
224
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: CatalogModule, deps: [{ token: i1.BulkActionRegistryService }, { token: i1.PageService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
220
225
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.2", ngImport: i0, type: CatalogModule, declarations: [ProductListComponent,
|
|
@@ -305,4 +310,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImpor
|
|
|
305
310
|
],
|
|
306
311
|
}]
|
|
307
312
|
}], ctorParameters: function () { return [{ type: i1.BulkActionRegistryService }, { type: i1.PageService }]; } });
|
|
308
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NhdGFsb2cvc3JjL2NhdGFsb2cubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3RFLE9BQU8sRUFDSCx3QkFBd0IsRUFFeEIsNkJBQTZCLEVBQzdCLDJCQUEyQixFQUMzQixzQkFBc0IsRUFDdEIsd0JBQXdCLEVBQ3hCLCtCQUErQixFQUMvQixXQUFXLEVBQ1gsWUFBWSxHQUNmLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSw0RkFBNEYsQ0FBQztBQUNwSixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxrRkFBa0YsQ0FBQztBQUNySSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM3RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUNsSCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUN2RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5REFB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QzNCLHNCQUFzQjtZQUN0Qiw2QkFBNkI7WUFDN0IsbUNBQW1DO1lBQ25DLHVDQUF1QztZQUN2QyxnQ0FBZ0M7K0dBZ0J2QixhQUFhLGFBVFg7WUFDUDtnQkFDSSxPQUFPLEVBQUUsTUFBTTtnQkFDZixVQUFVLEVBQUUsQ0FBQyxXQUF3QixFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDO2dCQUNuRSxLQUFLLEVBQUUsSUFBSTtnQkFDWCxJQUFJLEVBQUUsQ0FBQyxXQUFXLENBQUM7YUFDdEI7U0FDSixZQVZTLFlBQVksRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQzs7MkZBWXhDLGFBQWE7a0JBYnpCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ2xELE9BQU8sRUFBRSxDQUFDLEdBQUcsa0JBQWtCLENBQUM7b0JBQ2hDLFlBQVksRUFBRSxDQUFDLEdBQUcsa0JBQWtCLENBQUM7b0JBQ3JDLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsTUFBTTs0QkFDZixVQUFVLEVBQUUsQ0FBQyxXQUF3QixFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDOzRCQUNuRSxLQUFLLEVBQUUsSUFBSTs0QkFDWCxJQUFJLEVBQUUsQ0FBQyxXQUFXLENBQUM7eUJBQ3RCO3FCQUNKO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyTW9kdWxlLCBST1VURVMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBtYXJrZXIgYXMgXyB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcic7XHJcbmltcG9ydCB7XHJcbiAgICBBc3NldERldGFpbFF1ZXJ5RG9jdW1lbnQsXHJcbiAgICBCdWxrQWN0aW9uUmVnaXN0cnlTZXJ2aWNlLFxyXG4gICAgQ29sbGVjdGlvbkRldGFpbFF1ZXJ5RG9jdW1lbnQsXHJcbiAgICBkZXRhaWxDb21wb25lbnRXaXRoUmVzb2x2ZXIsXHJcbiAgICBHZXRGYWNldERldGFpbERvY3VtZW50LFxyXG4gICAgR2V0UHJvZHVjdERldGFpbERvY3VtZW50LFxyXG4gICAgR2V0UHJvZHVjdFZhcmlhbnREZXRhaWxEb2N1bWVudCxcclxuICAgIFBhZ2VTZXJ2aWNlLFxyXG4gICAgU2hhcmVkTW9kdWxlLFxyXG59IGZyb20gJ0B2ZW5kdXJlL2FkbWluLXVpL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgY3JlYXRlUm91dGVzIH0gZnJvbSAnLi9jYXRhbG9nLnJvdXRlcyc7XHJcbmltcG9ydCB7IEFwcGx5RmFjZXREaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYXBwbHktZmFjZXQtZGlhbG9nL2FwcGx5LWZhY2V0LWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBc3NldERldGFpbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hc3NldC1kZXRhaWwvYXNzZXQtZGV0YWlsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFzc2V0TGlzdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hc3NldC1saXN0L2Fzc2V0LWxpc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXNzZXRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Fzc2V0cy9hc3NldHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXNzaWduUHJvZHVjdHNUb0NoYW5uZWxEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYXNzaWduLXByb2R1Y3RzLXRvLWNoYW5uZWwtZGlhbG9nL2Fzc2lnbi1wcm9kdWN0cy10by1jaGFubmVsLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCdWxrQWRkRmFjZXRWYWx1ZXNEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYnVsay1hZGQtZmFjZXQtdmFsdWVzLWRpYWxvZy9idWxrLWFkZC1mYWNldC12YWx1ZXMtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbGxlY3Rpb25Db250ZW50c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb2xsZWN0aW9uLWNvbnRlbnRzL2NvbGxlY3Rpb24tY29udGVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29sbGVjdGlvbkRhdGFUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb2xsZWN0aW9uLWRhdGEtdGFibGUvY29sbGVjdGlvbi1kYXRhLXRhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbGxlY3Rpb25EZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY29sbGVjdGlvbi1kZXRhaWwvY29sbGVjdGlvbi1kZXRhaWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29sbGVjdGlvbkJyZWFkY3J1bWJQaXBlIH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbGxlY3Rpb24tbGlzdC9jb2xsZWN0aW9uLWJyZWFkY3J1bWIucGlwZSc7XHJcbmltcG9ydCB7XHJcbiAgICBhc3NpZ25Db2xsZWN0aW9uc1RvQ2hhbm5lbEJ1bGtBY3Rpb24sXHJcbiAgICBkZWxldGVDb2xsZWN0aW9uc0J1bGtBY3Rpb24sXHJcbiAgICBtb3ZlQ29sbGVjdGlvbnNCdWxrQWN0aW9uLFxyXG4gICAgcmVtb3ZlQ29sbGVjdGlvbnNGcm9tQ2hhbm5lbEJ1bGtBY3Rpb24sXHJcbn0gZnJvbSAnLi9jb21wb25lbnRzL2NvbGxlY3Rpb24tbGlzdC9jb2xsZWN0aW9uLWxpc3QtYnVsay1hY3Rpb25zJztcclxuaW1wb3J0IHsgQ29sbGVjdGlvbkxpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY29sbGVjdGlvbi1saXN0L2NvbGxlY3Rpb24tbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb2xsZWN0aW9uVHJlZU5vZGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY29sbGVjdGlvbi10cmVlL2NvbGxlY3Rpb24tdHJlZS1ub2RlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbGxlY3Rpb25UcmVlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbGxlY3Rpb24tdHJlZS9jb2xsZWN0aW9uLXRyZWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29uZmlybVZhcmlhbnREZWxldGlvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb25maXJtLXZhcmlhbnQtZGVsZXRpb24tZGlhbG9nL2NvbmZpcm0tdmFyaWFudC1kZWxldGlvbi1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3JlYXRlUHJvZHVjdE9wdGlvbkdyb3VwRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NyZWF0ZS1wcm9kdWN0LW9wdGlvbi1ncm91cC1kaWFsb2cvY3JlYXRlLXByb2R1Y3Qtb3B0aW9uLWdyb3VwLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDcmVhdGVQcm9kdWN0VmFyaWFudERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jcmVhdGUtcHJvZHVjdC12YXJpYW50LWRpYWxvZy9jcmVhdGUtcHJvZHVjdC12YXJpYW50LWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGYWNldERldGFpbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mYWNldC1kZXRhaWwvZmFjZXQtZGV0YWlsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7XHJcbiAgICBhc3NpZ25GYWNldHNUb0NoYW5uZWxCdWxrQWN0aW9uLFxyXG4gICAgZGVsZXRlRmFjZXRzQnVsa0FjdGlvbixcclxuICAgIHJlbW92ZUZhY2V0c0Zyb21DaGFubmVsQnVsa0FjdGlvbixcclxufSBmcm9tICcuL2NvbXBvbmVudHMvZmFjZXQtbGlzdC9mYWNldC1saXN0LWJ1bGstYWN0aW9ucyc7XHJcbmltcG9ydCB7IEZhY2V0TGlzdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mYWNldC1saXN0L2ZhY2V0LWxpc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR2VuZXJhdGVQcm9kdWN0VmFyaWFudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZ2VuZXJhdGUtcHJvZHVjdC12YXJpYW50cy9nZW5lcmF0ZS1wcm9kdWN0LXZhcmlhbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1vdmVDb2xsZWN0aW9uc0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tb3ZlLWNvbGxlY3Rpb25zLWRpYWxvZy9tb3ZlLWNvbGxlY3Rpb25zLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcHRpb25WYWx1ZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29wdGlvbi12YWx1ZS1pbnB1dC9vcHRpb24tdmFsdWUtaW5wdXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvZHVjdERldGFpbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcm9kdWN0LWRldGFpbC9wcm9kdWN0LWRldGFpbC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gICAgYXNzaWduRmFjZXRWYWx1ZXNUb1Byb2R1Y3RzQnVsa0FjdGlvbixcclxuICAgIGFzc2lnblByb2R1Y3RzVG9DaGFubmVsQnVsa0FjdGlvbixcclxuICAgIGRlbGV0ZVByb2R1Y3RzQnVsa0FjdGlvbixcclxuICAgIHJlbW92ZVByb2R1Y3RzRnJvbUNoYW5uZWxCdWxrQWN0aW9uLFxyXG59IGZyb20gJy4vY29tcG9uZW50cy9wcm9kdWN0LWxpc3QvcHJvZHVjdC1saXN0LWJ1bGstYWN0aW9ucyc7XHJcbmltcG9ydCB7IFByb2R1Y3RMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2R1Y3QtbGlzdC9wcm9kdWN0LWxpc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvZHVjdE9wdGlvbnNFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJvZHVjdC1vcHRpb25zLWVkaXRvci9wcm9kdWN0LW9wdGlvbnMtZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50RGV0YWlsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2R1Y3QtdmFyaWFudC1kZXRhaWwvcHJvZHVjdC12YXJpYW50LWRldGFpbC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gICAgYXNzaWduUHJvZHVjdFZhcmlhbnRzVG9DaGFubmVsQnVsa0FjdGlvbixcclxuICAgIGRlbGV0ZVByb2R1Y3RWYXJpYW50c0J1bGtBY3Rpb24sXHJcbiAgICByZW1vdmVQcm9kdWN0VmFyaWFudHNGcm9tQ2hhbm5lbEJ1bGtBY3Rpb24sXHJcbn0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2R1Y3QtdmFyaWFudC1saXN0L3Byb2R1Y3QtdmFyaWFudC1saXN0LWJ1bGstYWN0aW9ucyc7XHJcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50TGlzdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcm9kdWN0LXZhcmlhbnQtbGlzdC9wcm9kdWN0LXZhcmlhbnQtbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudFF1aWNrSnVtcENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcm9kdWN0LXZhcmlhbnQtcXVpY2stanVtcC9wcm9kdWN0LXZhcmlhbnQtcXVpY2stanVtcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudHNFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJvZHVjdC12YXJpYW50cy1lZGl0b3IvcHJvZHVjdC12YXJpYW50cy1lZGl0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnRzVGFibGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJvZHVjdC12YXJpYW50cy10YWJsZS9wcm9kdWN0LXZhcmlhbnRzLXRhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVwZGF0ZVByb2R1Y3RPcHRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdXBkYXRlLXByb2R1Y3Qtb3B0aW9uLWRpYWxvZy91cGRhdGUtcHJvZHVjdC1vcHRpb24tZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFZhcmlhbnRQcmljZURldGFpbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy92YXJpYW50LXByaWNlLWRldGFpbC92YXJpYW50LXByaWNlLWRldGFpbC5jb21wb25lbnQnO1xyXG5cclxuY29uc3QgQ0FUQUxPR19DT01QT05FTlRTID0gW1xyXG4gICAgUHJvZHVjdExpc3RDb21wb25lbnQsXHJcbiAgICBQcm9kdWN0RGV0YWlsQ29tcG9uZW50LFxyXG4gICAgRmFjZXRMaXN0Q29tcG9uZW50LFxyXG4gICAgRmFjZXREZXRhaWxDb21wb25lbnQsXHJcbiAgICBHZW5lcmF0ZVByb2R1Y3RWYXJpYW50c0NvbXBvbmVudCxcclxuICAgIEFwcGx5RmFjZXREaWFsb2dDb21wb25lbnQsXHJcbiAgICBBc3NldExpc3RDb21wb25lbnQsXHJcbiAgICBBc3NldHNDb21wb25lbnQsXHJcbiAgICBWYXJpYW50UHJpY2VEZXRhaWxDb21wb25lbnQsXHJcbiAgICBDb2xsZWN0aW9uTGlzdENvbXBvbmVudCxcclxuICAgIENvbGxlY3Rpb25EZXRhaWxDb21wb25lbnQsXHJcbiAgICBDb2xsZWN0aW9uVHJlZUNvbXBvbmVudCxcclxuICAgIENvbGxlY3Rpb25UcmVlTm9kZUNvbXBvbmVudCxcclxuICAgIENvbGxlY3Rpb25Db250ZW50c0NvbXBvbmVudCxcclxuICAgIFByb2R1Y3RWYXJpYW50c1RhYmxlQ29tcG9uZW50LFxyXG4gICAgT3B0aW9uVmFsdWVJbnB1dENvbXBvbmVudCxcclxuICAgIFVwZGF0ZVByb2R1Y3RPcHRpb25EaWFsb2dDb21wb25lbnQsXHJcbiAgICBQcm9kdWN0VmFyaWFudHNFZGl0b3JDb21wb25lbnQsXHJcbiAgICBBc3NpZ25Qcm9kdWN0c1RvQ2hhbm5lbERpYWxvZ0NvbXBvbmVudCxcclxuICAgIEFzc2V0RGV0YWlsQ29tcG9uZW50LFxyXG4gICAgQ29uZmlybVZhcmlhbnREZWxldGlvbkRpYWxvZ0NvbXBvbmVudCxcclxuICAgIFByb2R1Y3RPcHRpb25zRWRpdG9yQ29tcG9uZW50LFxyXG4gICAgQnVsa0FkZEZhY2V0VmFsdWVzRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgQ29sbGVjdGlvbkRhdGFUYWJsZUNvbXBvbmVudCxcclxuICAgIENvbGxlY3Rpb25CcmVhZGNydW1iUGlwZSxcclxuICAgIE1vdmVDb2xsZWN0aW9uc0RpYWxvZ0NvbXBvbmVudCxcclxuICAgIFByb2R1Y3RWYXJpYW50TGlzdENvbXBvbmVudCxcclxuICAgIFByb2R1Y3REZXRhaWxDb21wb25lbnQsXHJcbiAgICBQcm9kdWN0VmFyaWFudERldGFpbENvbXBvbmVudCxcclxuICAgIENyZWF0ZVByb2R1Y3RWYXJpYW50RGlhbG9nQ29tcG9uZW50LFxyXG4gICAgQ3JlYXRlUHJvZHVjdE9wdGlvbkdyb3VwRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgUHJvZHVjdFZhcmlhbnRRdWlja0p1bXBDb21wb25lbnQsXHJcbl07XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1NoYXJlZE1vZHVsZSwgUm91dGVyTW9kdWxlLmZvckNoaWxkKFtdKV0sXHJcbiAgICBleHBvcnRzOiBbLi4uQ0FUQUxPR19DT01QT05FTlRTXSxcclxuICAgIGRlY2xhcmF0aW9uczogWy4uLkNBVEFMT0dfQ09NUE9ORU5UU10sXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHByb3ZpZGU6IFJPVVRFUyxcclxuICAgICAgICAgICAgdXNlRmFjdG9yeTogKHBhZ2VTZXJ2aWNlOiBQYWdlU2VydmljZSkgPT4gY3JlYXRlUm91dGVzKHBhZ2VTZXJ2aWNlKSxcclxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgICAgICAgIGRlcHM6IFtQYWdlU2VydmljZV0sXHJcbiAgICAgICAgfSxcclxuICAgIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDYXRhbG9nTW9kdWxlIHtcclxuICAgIGNvbnN0cnVjdG9yKGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2U6IEJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UsIHBhZ2VTZXJ2aWNlOiBQYWdlU2VydmljZSkge1xyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKGFzc2lnbkZhY2V0VmFsdWVzVG9Qcm9kdWN0c0J1bGtBY3Rpb24pO1xyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKGFzc2lnblByb2R1Y3RzVG9DaGFubmVsQnVsa0FjdGlvbik7XHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24oYXNzaWduUHJvZHVjdFZhcmlhbnRzVG9DaGFubmVsQnVsa0FjdGlvbik7XHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24ocmVtb3ZlUHJvZHVjdHNGcm9tQ2hhbm5lbEJ1bGtBY3Rpb24pO1xyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKHJlbW92ZVByb2R1Y3RWYXJpYW50c0Zyb21DaGFubmVsQnVsa0FjdGlvbik7XHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24oZGVsZXRlUHJvZHVjdHNCdWxrQWN0aW9uKTtcclxuICAgICAgICBidWxrQWN0aW9uUmVnaXN0cnlTZXJ2aWNlLnJlZ2lzdGVyQnVsa0FjdGlvbihkZWxldGVQcm9kdWN0VmFyaWFudHNCdWxrQWN0aW9uKTtcclxuXHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24oYXNzaWduRmFjZXRzVG9DaGFubmVsQnVsa0FjdGlvbik7XHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24ocmVtb3ZlRmFjZXRzRnJvbUNoYW5uZWxCdWxrQWN0aW9uKTtcclxuICAgICAgICBidWxrQWN0aW9uUmVnaXN0cnlTZXJ2aWNlLnJlZ2lzdGVyQnVsa0FjdGlvbihkZWxldGVGYWNldHNCdWxrQWN0aW9uKTtcclxuXHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24obW92ZUNvbGxlY3Rpb25zQnVsa0FjdGlvbik7XHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24oYXNzaWduQ29sbGVjdGlvbnNUb0NoYW5uZWxCdWxrQWN0aW9uKTtcclxuICAgICAgICBidWxrQWN0aW9uUmVnaXN0cnlTZXJ2aWNlLnJlZ2lzdGVyQnVsa0FjdGlvbihyZW1vdmVDb2xsZWN0aW9uc0Zyb21DaGFubmVsQnVsa0FjdGlvbik7XHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24oZGVsZXRlQ29sbGVjdGlvbnNCdWxrQWN0aW9uKTtcclxuXHJcbiAgICAgICAgcGFnZVNlcnZpY2UucmVnaXN0ZXJQYWdlVGFiKHtcclxuICAgICAgICAgICAgcHJpb3JpdHk6IDAsXHJcbiAgICAgICAgICAgIGxvY2F0aW9uOiAncHJvZHVjdC1saXN0JyxcclxuICAgICAgICAgICAgdGFiOiBfKCdjYXRhbG9nLnByb2R1Y3RzJyksXHJcbiAgICAgICAgICAgIHJvdXRlOiAnJyxcclxuICAgICAgICAgICAgY29tcG9uZW50OiBQcm9kdWN0TGlzdENvbXBvbmVudCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBwYWdlU2VydmljZS5yZWdpc3RlclBhZ2VUYWIoe1xyXG4gICAgICAgICAgICBwcmlvcml0eTogMCxcclxuICAgICAgICAgICAgbG9jYXRpb246ICdwcm9kdWN0LWRldGFpbCcsXHJcbiAgICAgICAgICAgIHRhYjogXygnY2F0YWxvZy5wcm9kdWN0JyksXHJcbiAgICAgICAgICAgIHJvdXRlOiAnJyxcclxuICAgICAgICAgICAgY29tcG9uZW50OiBkZXRhaWxDb21wb25lbnRXaXRoUmVzb2x2ZXIoe1xyXG4gICAgICAgICAgICAgICAgY29tcG9uZW50OiBQcm9kdWN0RGV0YWlsQ29tcG9uZW50LFxyXG4gICAgICAgICAgICAgICAgcXVlcnk6IEdldFByb2R1Y3REZXRhaWxEb2N1bWVudCxcclxuICAgICAgICAgICAgICAgIGVudGl0eUtleTogJ3Byb2R1Y3QnLFxyXG4gICAgICAgICAgICAgICAgZ2V0QnJlYWRjcnVtYnM6IGVudGl0eSA9PiBbXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogZW50aXR5ID8gZW50aXR5Lm5hbWUgOiBfKCdjYXRhbG9nLmNyZWF0ZS1uZXctcHJvZHVjdCcpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5rOiBbZW50aXR5Py5pZF0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHBhZ2VTZXJ2aWNlLnJlZ2lzdGVyUGFnZVRhYih7XHJcbiAgICAgICAgICAgIHByaW9yaXR5OiAwLFxyXG4gICAgICAgICAgICBsb2NhdGlvbjogJ3Byb2R1Y3QtbGlzdCcsXHJcbiAgICAgICAgICAgIHRhYjogXygnY2F0YWxvZy5wcm9kdWN0LXZhcmlhbnRzJyksXHJcbiAgICAgICAgICAgIHJvdXRlOiAndmFyaWFudHMnLFxyXG4gICAgICAgICAgICBjb21wb25lbnQ6IFByb2R1Y3RWYXJpYW50TGlzdENvbXBvbmVudCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBwYWdlU2VydmljZS5yZWdpc3RlclBhZ2VUYWIoe1xyXG4gICAgICAgICAgICBwcmlvcml0eTogMCxcclxuICAgICAgICAgICAgbG9jYXRpb246ICdwcm9kdWN0LXZhcmlhbnQtZGV0YWlsJyxcclxuICAgICAgICAgICAgdGFiOiBfKCdjYXRhbG9nLnByb2R1Y3QtdmFyaWFudHMnKSxcclxuICAgICAgICAgICAgcm91dGU6ICcnLFxyXG4gICAgICAgICAgICBjb21wb25lbnQ6IGRldGFpbENvbXBvbmVudFdpdGhSZXNvbHZlcih7XHJcbiAgICAgICAgICAgICAgICBjb21wb25lbnQ6IFByb2R1Y3RWYXJpYW50RGV0YWlsQ29tcG9uZW50LFxyXG4gICAgICAgICAgICAgICAgcXVlcnk6IEdldFByb2R1Y3RWYXJpYW50RGV0YWlsRG9jdW1lbnQsXHJcbiAgICAgICAgICAgICAgICBlbnRpdHlLZXk6ICdwcm9kdWN0VmFyaWFudCcsXHJcbiAgICAgICAgICAgICAgICBnZXRCcmVhZGNydW1iczogZW50aXR5ID0+IFtcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBgJHtlbnRpdHk/LnByb2R1Y3QubmFtZX1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5rOiBbJy9jYXRhbG9nJywgJ3Byb2R1Y3RzJywgZW50aXR5Py5wcm9kdWN0LmlkXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IGAke2VudGl0eT8ubmFtZX0gKCR7ZW50aXR5Py5za3V9KWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbms6IFsndmFyaWFudHMnLCBlbnRpdHk/LmlkXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcGFnZVNlcnZpY2UucmVnaXN0ZXJQYWdlVGFiKHtcclxuICAgICAgICAgICAgcHJpb3JpdHk6IDAsXHJcbiAgICAgICAgICAgIGxvY2F0aW9uOiAnZmFjZXQtbGlzdCcsXHJcbiAgICAgICAgICAgIHRhYjogXygnY2F0YWxvZy5mYWNldHMnKSxcclxuICAgICAgICAgICAgcm91dGU6ICcnLFxyXG4gICAgICAgICAgICBjb21wb25lbnQ6IEZhY2V0TGlzdENvbXBvbmVudCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBwYWdlU2VydmljZS5yZWdpc3RlclBhZ2VUYWIoe1xyXG4gICAgICAgICAgICBwcmlvcml0eTogMCxcclxuICAgICAgICAgICAgbG9jYXRpb246ICdmYWNldC1kZXRhaWwnLFxyXG4gICAgICAgICAgICB0YWI6IF8oJ2NhdGFsb2cuZmFjZXQnKSxcclxuICAgICAgICAgICAgcm91dGU6ICcnLFxyXG4gICAgICAgICAgICBjb21wb25lbnQ6IGRldGFpbENvbXBvbmVudFdpdGhSZXNvbHZlcih7XHJcbiAgICAgICAgICAgICAgICBjb21wb25lbnQ6IEZhY2V0RGV0YWlsQ29tcG9uZW50LFxyXG4gICAgICAgICAgICAgICAgcXVlcnk6IEdldEZhY2V0RGV0YWlsRG9jdW1lbnQsXHJcbiAgICAgICAgICAgICAgICBlbnRpdHlLZXk6ICdmYWNldCcsXHJcbiAgICAgICAgICAgICAgICBnZXRCcmVhZGNydW1iczogZW50aXR5ID0+IFtcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBlbnRpdHkgPyBlbnRpdHkubmFtZSA6IF8oJ2NhdGFsb2cuY3JlYXRlLW5ldy1mYWNldCcpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5rOiBbZW50aXR5Py5pZF0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHBhZ2VTZXJ2aWNlLnJlZ2lzdGVyUGFnZVRhYih7XHJcbiAgICAgICAgICAgIHByaW9yaXR5OiAwLFxyXG4gICAgICAgICAgICBsb2NhdGlvbjogJ2NvbGxlY3Rpb24tbGlzdCcsXHJcbiAgICAgICAgICAgIHRhYjogXygnY2F0YWxvZy5jb2xsZWN0aW9ucycpLFxyXG4gICAgICAgICAgICByb3V0ZTogJycsXHJcbiAgICAgICAgICAgIGNvbXBvbmVudDogQ29sbGVjdGlvbkxpc3RDb21wb25lbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcGFnZVNlcnZpY2UucmVnaXN0ZXJQYWdlVGFiKHtcclxuICAgICAgICAgICAgcHJpb3JpdHk6IDAsXHJcbiAgICAgICAgICAgIGxvY2F0aW9uOiAnY29sbGVjdGlvbi1kZXRhaWwnLFxyXG4gICAgICAgICAgICB0YWI6IF8oJ2NhdGFsb2cuY29sbGVjdGlvbicpLFxyXG4gICAgICAgICAgICByb3V0ZTogJycsXHJcbiAgICAgICAgICAgIGNvbXBvbmVudDogZGV0YWlsQ29tcG9uZW50V2l0aFJlc29sdmVyKHtcclxuICAgICAgICAgICAgICAgIGNvbXBvbmVudDogQ29sbGVjdGlvbkRldGFpbENvbXBvbmVudCxcclxuICAgICAgICAgICAgICAgIHF1ZXJ5OiBDb2xsZWN0aW9uRGV0YWlsUXVlcnlEb2N1bWVudCxcclxuICAgICAgICAgICAgICAgIGVudGl0eUtleTogJ2NvbGxlY3Rpb24nLFxyXG4gICAgICAgICAgICAgICAgZ2V0QnJlYWRjcnVtYnM6IGVudGl0eSA9PiBbXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogZW50aXR5ID8gZW50aXR5Lm5hbWUgOiBfKCdjYXRhbG9nLmNyZWF0ZS1uZXctY29sbGVjdGlvbicpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5rOiBbZW50aXR5Py5pZF0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHBhZ2VTZXJ2aWNlLnJlZ2lzdGVyUGFnZVRhYih7XHJcbiAgICAgICAgICAgIHByaW9yaXR5OiAwLFxyXG4gICAgICAgICAgICBsb2NhdGlvbjogJ2Fzc2V0LWxpc3QnLFxyXG4gICAgICAgICAgICB0YWI6IF8oJ2NhdGFsb2cuYXNzZXRzJyksXHJcbiAgICAgICAgICAgIHJvdXRlOiAnJyxcclxuICAgICAgICAgICAgY29tcG9uZW50OiBBc3NldExpc3RDb21wb25lbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcGFnZVNlcnZpY2UucmVnaXN0ZXJQYWdlVGFiKHtcclxuICAgICAgICAgICAgcHJpb3JpdHk6IDAsXHJcbiAgICAgICAgICAgIGxvY2F0aW9uOiAnYXNzZXQtZGV0YWlsJyxcclxuICAgICAgICAgICAgdGFiOiBfKCdjYXRhbG9nLmFzc2V0JyksXHJcbiAgICAgICAgICAgIHJvdXRlOiAnJyxcclxuICAgICAgICAgICAgY29tcG9uZW50OiBkZXRhaWxDb21wb25lbnRXaXRoUmVzb2x2ZXIoe1xyXG4gICAgICAgICAgICAgICAgY29tcG9uZW50OiBBc3NldERldGFpbENvbXBvbmVudCxcclxuICAgICAgICAgICAgICAgIHF1ZXJ5OiBBc3NldERldGFpbFF1ZXJ5RG9jdW1lbnQsXHJcbiAgICAgICAgICAgICAgICBlbnRpdHlLZXk6ICdhc3NldCcsXHJcbiAgICAgICAgICAgICAgICBnZXRCcmVhZGNydW1iczogZW50aXR5ID0+IFtcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBgJHtlbnRpdHk/Lm5hbWV9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluazogW2VudGl0eT8uaWRdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
313
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NhdGFsb2cvc3JjL2NhdGFsb2cubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3RFLE9BQU8sRUFDSCx3QkFBd0IsRUFFeEIsNkJBQTZCLEVBQzdCLDJCQUEyQixFQUMzQixzQkFBc0IsRUFDdEIsd0JBQXdCLEVBQ3hCLCtCQUErQixFQUMvQixXQUFXLEVBQ1gsWUFBWSxHQUNmLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSw0RkFBNEYsQ0FBQztBQUNwSixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxrRkFBa0YsQ0FBQztBQUNySSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM3RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUNsSCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUN2RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5REFB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c0NBQXNDO1lBQ3RDLG9CQUFvQjtZQUNwQixxQ0FBcUM7WUFDckMsNkJBQTZCO1lBQzdCLGlDQUFpQztZQUNqQyw0QkFBNEI7WUFDNUIsd0JBQXdCO1lBQ3hCLDhCQUE4QjtZQUM5QiwyQkFBMkI7WUFDM0Isc0JBQXNCO1lBQ3RCLDZCQUE2QjtZQUM3QixtQ0FBbUM7WUFDbkMsdUNBQXVDO1lBQ3ZDLGdDQUFnQzsrR0FnQnZCLGFBQWEsYUFUWDtZQUNQO2dCQUNJLE9BQU8sRUFBRSxNQUFNO2dCQUNmLFVBQVUsRUFBRSxDQUFDLFdBQXdCLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUM7Z0JBQ25FLEtBQUssRUFBRSxJQUFJO2dCQUNYLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQzthQUN0QjtTQUNKLFlBVlMsWUFBWSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDOzsyRkFZeEMsYUFBYTtrQkFiekIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDbEQsT0FBTyxFQUFFLENBQUMsR0FBRyxrQkFBa0IsQ0FBQztvQkFDaEMsWUFBWSxFQUFFLENBQUMsR0FBRyxrQkFBa0IsQ0FBQztvQkFDckMsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxNQUFNOzRCQUNmLFVBQVUsRUFBRSxDQUFDLFdBQXdCLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUM7NEJBQ25FLEtBQUssRUFBRSxJQUFJOzRCQUNYLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQzt5QkFDdEI7cUJBQ0o7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUsIFJPVVRFUyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IG1hcmtlciBhcyBfIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJztcclxuaW1wb3J0IHtcclxuICAgIEFzc2V0RGV0YWlsUXVlcnlEb2N1bWVudCxcclxuICAgIEJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UsXHJcbiAgICBDb2xsZWN0aW9uRGV0YWlsUXVlcnlEb2N1bWVudCxcclxuICAgIGRldGFpbENvbXBvbmVudFdpdGhSZXNvbHZlcixcclxuICAgIEdldEZhY2V0RGV0YWlsRG9jdW1lbnQsXHJcbiAgICBHZXRQcm9kdWN0RGV0YWlsRG9jdW1lbnQsXHJcbiAgICBHZXRQcm9kdWN0VmFyaWFudERldGFpbERvY3VtZW50LFxyXG4gICAgUGFnZVNlcnZpY2UsXHJcbiAgICBTaGFyZWRNb2R1bGUsXHJcbn0gZnJvbSAnQHZlbmR1cmUvYWRtaW4tdWkvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBjcmVhdGVSb3V0ZXMgfSBmcm9tICcuL2NhdGFsb2cucm91dGVzJztcclxuaW1wb3J0IHsgQXBwbHlGYWNldERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hcHBseS1mYWNldC1kaWFsb2cvYXBwbHktZmFjZXQtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFzc2V0RGV0YWlsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Fzc2V0LWRldGFpbC9hc3NldC1kZXRhaWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXNzZXRMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Fzc2V0LWxpc3QvYXNzZXQtbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBc3NldHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYXNzZXRzL2Fzc2V0cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBc3NpZ25Qcm9kdWN0c1RvQ2hhbm5lbERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hc3NpZ24tcHJvZHVjdHMtdG8tY2hhbm5lbC1kaWFsb2cvYXNzaWduLXByb2R1Y3RzLXRvLWNoYW5uZWwtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJ1bGtBZGRGYWNldFZhbHVlc0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9idWxrLWFkZC1mYWNldC12YWx1ZXMtZGlhbG9nL2J1bGstYWRkLWZhY2V0LXZhbHVlcy1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29sbGVjdGlvbkNvbnRlbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbGxlY3Rpb24tY29udGVudHMvY29sbGVjdGlvbi1jb250ZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb2xsZWN0aW9uRGF0YVRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbGxlY3Rpb24tZGF0YS10YWJsZS9jb2xsZWN0aW9uLWRhdGEtdGFibGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29sbGVjdGlvbkRldGFpbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb2xsZWN0aW9uLWRldGFpbC9jb2xsZWN0aW9uLWRldGFpbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb2xsZWN0aW9uQnJlYWRjcnVtYlBpcGUgfSBmcm9tICcuL2NvbXBvbmVudHMvY29sbGVjdGlvbi1saXN0L2NvbGxlY3Rpb24tYnJlYWRjcnVtYi5waXBlJztcclxuaW1wb3J0IHtcclxuICAgIGFzc2lnbkNvbGxlY3Rpb25zVG9DaGFubmVsQnVsa0FjdGlvbixcclxuICAgIGRlbGV0ZUNvbGxlY3Rpb25zQnVsa0FjdGlvbixcclxuICAgIG1vdmVDb2xsZWN0aW9uc0J1bGtBY3Rpb24sXHJcbiAgICByZW1vdmVDb2xsZWN0aW9uc0Zyb21DaGFubmVsQnVsa0FjdGlvbixcclxufSBmcm9tICcuL2NvbXBvbmVudHMvY29sbGVjdGlvbi1saXN0L2NvbGxlY3Rpb24tbGlzdC1idWxrLWFjdGlvbnMnO1xyXG5pbXBvcnQgeyBDb2xsZWN0aW9uTGlzdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb2xsZWN0aW9uLWxpc3QvY29sbGVjdGlvbi1saXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbGxlY3Rpb25UcmVlTm9kZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb2xsZWN0aW9uLXRyZWUvY29sbGVjdGlvbi10cmVlLW5vZGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29sbGVjdGlvblRyZWVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY29sbGVjdGlvbi10cmVlL2NvbGxlY3Rpb24tdHJlZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb25maXJtVmFyaWFudERlbGV0aW9uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbmZpcm0tdmFyaWFudC1kZWxldGlvbi1kaWFsb2cvY29uZmlybS12YXJpYW50LWRlbGV0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDcmVhdGVQcm9kdWN0T3B0aW9uR3JvdXBEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3JlYXRlLXByb2R1Y3Qtb3B0aW9uLWdyb3VwLWRpYWxvZy9jcmVhdGUtcHJvZHVjdC1vcHRpb24tZ3JvdXAtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENyZWF0ZVByb2R1Y3RWYXJpYW50RGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NyZWF0ZS1wcm9kdWN0LXZhcmlhbnQtZGlhbG9nL2NyZWF0ZS1wcm9kdWN0LXZhcmlhbnQtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZhY2V0RGV0YWlsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2ZhY2V0LWRldGFpbC9mYWNldC1kZXRhaWwuY29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICAgIGFzc2lnbkZhY2V0c1RvQ2hhbm5lbEJ1bGtBY3Rpb24sXHJcbiAgICBkZWxldGVGYWNldHNCdWxrQWN0aW9uLFxyXG4gICAgcmVtb3ZlRmFjZXRzRnJvbUNoYW5uZWxCdWxrQWN0aW9uLFxyXG59IGZyb20gJy4vY29tcG9uZW50cy9mYWNldC1saXN0L2ZhY2V0LWxpc3QtYnVsay1hY3Rpb25zJztcclxuaW1wb3J0IHsgRmFjZXRMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2ZhY2V0LWxpc3QvZmFjZXQtbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHZW5lcmF0ZVByb2R1Y3RWYXJpYW50c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9nZW5lcmF0ZS1wcm9kdWN0LXZhcmlhbnRzL2dlbmVyYXRlLXByb2R1Y3QtdmFyaWFudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTW92ZUNvbGxlY3Rpb25zRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vdmUtY29sbGVjdGlvbnMtZGlhbG9nL21vdmUtY29sbGVjdGlvbnMtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9wdGlvblZhbHVlSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3B0aW9uLXZhbHVlLWlucHV0L29wdGlvbi12YWx1ZS1pbnB1dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQcm9kdWN0RGV0YWlsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2R1Y3QtZGV0YWlsL3Byb2R1Y3QtZGV0YWlsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7XHJcbiAgICBhc3NpZ25GYWNldFZhbHVlc1RvUHJvZHVjdHNCdWxrQWN0aW9uLFxyXG4gICAgYXNzaWduUHJvZHVjdHNUb0NoYW5uZWxCdWxrQWN0aW9uLFxyXG4gICAgZGVsZXRlUHJvZHVjdHNCdWxrQWN0aW9uLFxyXG4gICAgcmVtb3ZlUHJvZHVjdHNGcm9tQ2hhbm5lbEJ1bGtBY3Rpb24sXHJcbn0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2R1Y3QtbGlzdC9wcm9kdWN0LWxpc3QtYnVsay1hY3Rpb25zJztcclxuaW1wb3J0IHsgUHJvZHVjdExpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJvZHVjdC1saXN0L3Byb2R1Y3QtbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQcm9kdWN0T3B0aW9uc0VkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcm9kdWN0LW9wdGlvbnMtZWRpdG9yL3Byb2R1Y3Qtb3B0aW9ucy1lZGl0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnREZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJvZHVjdC12YXJpYW50LWRldGFpbC9wcm9kdWN0LXZhcmlhbnQtZGV0YWlsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7XHJcbiAgICBhc3NpZ25Qcm9kdWN0VmFyaWFudHNUb0NoYW5uZWxCdWxrQWN0aW9uLFxyXG4gICAgZGVsZXRlUHJvZHVjdFZhcmlhbnRzQnVsa0FjdGlvbixcclxuICAgIHJlbW92ZVByb2R1Y3RWYXJpYW50c0Zyb21DaGFubmVsQnVsa0FjdGlvbixcclxufSBmcm9tICcuL2NvbXBvbmVudHMvcHJvZHVjdC12YXJpYW50LWxpc3QvcHJvZHVjdC12YXJpYW50LWxpc3QtYnVsay1hY3Rpb25zJztcclxuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnRMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2R1Y3QtdmFyaWFudC1saXN0L3Byb2R1Y3QtdmFyaWFudC1saXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50UXVpY2tKdW1wQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2R1Y3QtdmFyaWFudC1xdWljay1qdW1wL3Byb2R1Y3QtdmFyaWFudC1xdWljay1qdW1wLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50c0VkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcm9kdWN0LXZhcmlhbnRzLWVkaXRvci9wcm9kdWN0LXZhcmlhbnRzLWVkaXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudHNUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcm9kdWN0LXZhcmlhbnRzLXRhYmxlL3Byb2R1Y3QtdmFyaWFudHMtdGFibGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXBkYXRlUHJvZHVjdE9wdGlvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy91cGRhdGUtcHJvZHVjdC1vcHRpb24tZGlhbG9nL3VwZGF0ZS1wcm9kdWN0LW9wdGlvbi1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVmFyaWFudFByaWNlRGV0YWlsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ZhcmlhbnQtcHJpY2UtZGV0YWlsL3ZhcmlhbnQtcHJpY2UtZGV0YWlsLmNvbXBvbmVudCc7XHJcblxyXG5jb25zdCBDQVRBTE9HX0NPTVBPTkVOVFMgPSBbXHJcbiAgICBQcm9kdWN0TGlzdENvbXBvbmVudCxcclxuICAgIFByb2R1Y3REZXRhaWxDb21wb25lbnQsXHJcbiAgICBGYWNldExpc3RDb21wb25lbnQsXHJcbiAgICBGYWNldERldGFpbENvbXBvbmVudCxcclxuICAgIEdlbmVyYXRlUHJvZHVjdFZhcmlhbnRzQ29tcG9uZW50LFxyXG4gICAgQXBwbHlGYWNldERpYWxvZ0NvbXBvbmVudCxcclxuICAgIEFzc2V0TGlzdENvbXBvbmVudCxcclxuICAgIEFzc2V0c0NvbXBvbmVudCxcclxuICAgIFZhcmlhbnRQcmljZURldGFpbENvbXBvbmVudCxcclxuICAgIENvbGxlY3Rpb25MaXN0Q29tcG9uZW50LFxyXG4gICAgQ29sbGVjdGlvbkRldGFpbENvbXBvbmVudCxcclxuICAgIENvbGxlY3Rpb25UcmVlQ29tcG9uZW50LFxyXG4gICAgQ29sbGVjdGlvblRyZWVOb2RlQ29tcG9uZW50LFxyXG4gICAgQ29sbGVjdGlvbkNvbnRlbnRzQ29tcG9uZW50LFxyXG4gICAgUHJvZHVjdFZhcmlhbnRzVGFibGVDb21wb25lbnQsXHJcbiAgICBPcHRpb25WYWx1ZUlucHV0Q29tcG9uZW50LFxyXG4gICAgVXBkYXRlUHJvZHVjdE9wdGlvbkRpYWxvZ0NvbXBvbmVudCxcclxuICAgIFByb2R1Y3RWYXJpYW50c0VkaXRvckNvbXBvbmVudCxcclxuICAgIEFzc2lnblByb2R1Y3RzVG9DaGFubmVsRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgQXNzZXREZXRhaWxDb21wb25lbnQsXHJcbiAgICBDb25maXJtVmFyaWFudERlbGV0aW9uRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgUHJvZHVjdE9wdGlvbnNFZGl0b3JDb21wb25lbnQsXHJcbiAgICBCdWxrQWRkRmFjZXRWYWx1ZXNEaWFsb2dDb21wb25lbnQsXHJcbiAgICBDb2xsZWN0aW9uRGF0YVRhYmxlQ29tcG9uZW50LFxyXG4gICAgQ29sbGVjdGlvbkJyZWFkY3J1bWJQaXBlLFxyXG4gICAgTW92ZUNvbGxlY3Rpb25zRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgUHJvZHVjdFZhcmlhbnRMaXN0Q29tcG9uZW50LFxyXG4gICAgUHJvZHVjdERldGFpbENvbXBvbmVudCxcclxuICAgIFByb2R1Y3RWYXJpYW50RGV0YWlsQ29tcG9uZW50LFxyXG4gICAgQ3JlYXRlUHJvZHVjdFZhcmlhbnREaWFsb2dDb21wb25lbnQsXHJcbiAgICBDcmVhdGVQcm9kdWN0T3B0aW9uR3JvdXBEaWFsb2dDb21wb25lbnQsXHJcbiAgICBQcm9kdWN0VmFyaWFudFF1aWNrSnVtcENvbXBvbmVudCxcclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBpbXBvcnRzOiBbU2hhcmVkTW9kdWxlLCBSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQoW10pXSxcclxuICAgIGV4cG9ydHM6IFsuLi5DQVRBTE9HX0NPTVBPTkVOVFNdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbLi4uQ0FUQUxPR19DT01QT05FTlRTXSxcclxuICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgcHJvdmlkZTogUk9VVEVTLFxyXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiAocGFnZVNlcnZpY2U6IFBhZ2VTZXJ2aWNlKSA9PiBjcmVhdGVSb3V0ZXMocGFnZVNlcnZpY2UpLFxyXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgICAgICAgZGVwczogW1BhZ2VTZXJ2aWNlXSxcclxuICAgICAgICB9LFxyXG4gICAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENhdGFsb2dNb2R1bGUge1xyXG4gICAgcHJpdmF0ZSBzdGF0aWMgaGFzUmVnaXN0ZXJlZFRhYnNBbmRCdWxrQWN0aW9ucyA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2U6IEJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UsIHBhZ2VTZXJ2aWNlOiBQYWdlU2VydmljZSkge1xyXG4gICAgICAgIGlmIChDYXRhbG9nTW9kdWxlLmhhc1JlZ2lzdGVyZWRUYWJzQW5kQnVsa0FjdGlvbnMpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBidWxrQWN0aW9uUmVnaXN0cnlTZXJ2aWNlLnJlZ2lzdGVyQnVsa0FjdGlvbihhc3NpZ25GYWNldFZhbHVlc1RvUHJvZHVjdHNCdWxrQWN0aW9uKTtcclxuICAgICAgICBidWxrQWN0aW9uUmVnaXN0cnlTZXJ2aWNlLnJlZ2lzdGVyQnVsa0FjdGlvbihhc3NpZ25Qcm9kdWN0c1RvQ2hhbm5lbEJ1bGtBY3Rpb24pO1xyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKGFzc2lnblByb2R1Y3RWYXJpYW50c1RvQ2hhbm5lbEJ1bGtBY3Rpb24pO1xyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKHJlbW92ZVByb2R1Y3RzRnJvbUNoYW5uZWxCdWxrQWN0aW9uKTtcclxuICAgICAgICBidWxrQWN0aW9uUmVnaXN0cnlTZXJ2aWNlLnJlZ2lzdGVyQnVsa0FjdGlvbihyZW1vdmVQcm9kdWN0VmFyaWFudHNGcm9tQ2hhbm5lbEJ1bGtBY3Rpb24pO1xyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKGRlbGV0ZVByb2R1Y3RzQnVsa0FjdGlvbik7XHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24oZGVsZXRlUHJvZHVjdFZhcmlhbnRzQnVsa0FjdGlvbik7XHJcblxyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKGFzc2lnbkZhY2V0c1RvQ2hhbm5lbEJ1bGtBY3Rpb24pO1xyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKHJlbW92ZUZhY2V0c0Zyb21DaGFubmVsQnVsa0FjdGlvbik7XHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24oZGVsZXRlRmFjZXRzQnVsa0FjdGlvbik7XHJcblxyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKG1vdmVDb2xsZWN0aW9uc0J1bGtBY3Rpb24pO1xyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKGFzc2lnbkNvbGxlY3Rpb25zVG9DaGFubmVsQnVsa0FjdGlvbik7XHJcbiAgICAgICAgYnVsa0FjdGlvblJlZ2lzdHJ5U2VydmljZS5yZWdpc3RlckJ1bGtBY3Rpb24ocmVtb3ZlQ29sbGVjdGlvbnNGcm9tQ2hhbm5lbEJ1bGtBY3Rpb24pO1xyXG4gICAgICAgIGJ1bGtBY3Rpb25SZWdpc3RyeVNlcnZpY2UucmVnaXN0ZXJCdWxrQWN0aW9uKGRlbGV0ZUNvbGxlY3Rpb25zQnVsa0FjdGlvbik7XHJcblxyXG4gICAgICAgIHBhZ2VTZXJ2aWNlLnJlZ2lzdGVyUGFnZVRhYih7XHJcbiAgICAgICAgICAgIHByaW9yaXR5OiAwLFxyXG4gICAgICAgICAgICBsb2NhdGlvbjogJ3Byb2R1Y3QtbGlzdCcsXHJcbiAgICAgICAgICAgIHRhYjogXygnY2F0YWxvZy5wcm9kdWN0cycpLFxyXG4gICAgICAgICAgICByb3V0ZTogJycsXHJcbiAgICAgICAgICAgIGNvbXBvbmVudDogUHJvZHVjdExpc3RDb21wb25lbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcGFnZVNlcnZpY2UucmVnaXN0ZXJQYWdlVGFiKHtcclxuICAgICAgICAgICAgcHJpb3JpdHk6IDAsXHJcbiAgICAgICAgICAgIGxvY2F0aW9uOiAncHJvZHVjdC1kZXRhaWwnLFxyXG4gICAgICAgICAgICB0YWI6IF8oJ2NhdGFsb2cucHJvZHVjdCcpLFxyXG4gICAgICAgICAgICByb3V0ZTogJycsXHJcbiAgICAgICAgICAgIGNvbXBvbmVudDogZGV0YWlsQ29tcG9uZW50V2l0aFJlc29sdmVyKHtcclxuICAgICAgICAgICAgICAgIGNvbXBvbmVudDogUHJvZHVjdERldGFpbENvbXBvbmVudCxcclxuICAgICAgICAgICAgICAgIHF1ZXJ5OiBHZXRQcm9kdWN0RGV0YWlsRG9jdW1lbnQsXHJcbiAgICAgICAgICAgICAgICBlbnRpdHlLZXk6ICdwcm9kdWN0JyxcclxuICAgICAgICAgICAgICAgIGdldEJyZWFkY3J1bWJzOiBlbnRpdHkgPT4gW1xyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IGVudGl0eSA/IGVudGl0eS5uYW1lIDogXygnY2F0YWxvZy5jcmVhdGUtbmV3LXByb2R1Y3QnKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluazogW2VudGl0eT8uaWRdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICB9KTtcclxuICAgICAgICBwYWdlU2VydmljZS5yZWdpc3RlclBhZ2VUYWIoe1xyXG4gICAgICAgICAgICBwcmlvcml0eTogMCxcclxuICAgICAgICAgICAgbG9jYXRpb246ICdwcm9kdWN0LWxpc3QnLFxyXG4gICAgICAgICAgICB0YWI6IF8oJ2NhdGFsb2cucHJvZHVjdC12YXJpYW50cycpLFxyXG4gICAgICAgICAgICByb3V0ZTogJ3ZhcmlhbnRzJyxcclxuICAgICAgICAgICAgY29tcG9uZW50OiBQcm9kdWN0VmFyaWFudExpc3RDb21wb25lbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcGFnZVNlcnZpY2UucmVnaXN0ZXJQYWdlVGFiKHtcclxuICAgICAgICAgICAgcHJpb3JpdHk6IDAsXHJcbiAgICAgICAgICAgIGxvY2F0aW9uOiAncHJvZHVjdC12YXJpYW50LWRldGFpbCcsXHJcbiAgICAgICAgICAgIHRhYjogXygnY2F0YWxvZy5wcm9kdWN0LXZhcmlhbnRzJyksXHJcbiAgICAgICAgICAgIHJvdXRlOiAnJyxcclxuICAgICAgICAgICAgY29tcG9uZW50OiBkZXRhaWxDb21wb25lbnRXaXRoUmVzb2x2ZXIoe1xyXG4gICAgICAgICAgICAgICAgY29tcG9uZW50OiBQcm9kdWN0VmFyaWFudERldGFpbENvbXBvbmVudCxcclxuICAgICAgICAgICAgICAgIHF1ZXJ5OiBHZXRQcm9kdWN0VmFyaWFudERldGFpbERvY3VtZW50LFxyXG4gICAgICAgICAgICAgICAgZW50aXR5S2V5OiAncHJvZHVjdFZhcmlhbnQnLFxyXG4gICAgICAgICAgICAgICAgZ2V0QnJlYWRjcnVtYnM6IGVudGl0eSA9PiBbXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogYCR7ZW50aXR5Py5wcm9kdWN0Lm5hbWV9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluazogWycvY2F0YWxvZycsICdwcm9kdWN0cycsIGVudGl0eT8ucHJvZHVjdC5pZF0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBgJHtlbnRpdHk/Lm5hbWV9ICgke2VudGl0eT8uc2t1fSlgLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5rOiBbJ3ZhcmlhbnRzJywgZW50aXR5Py5pZF0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHBhZ2VTZXJ2aWNlLnJlZ2lzdGVyUGFnZVRhYih7XHJcbiAgICAgICAgICAgIHByaW9yaXR5OiAwLFxyXG4gICAgICAgICAgICBsb2NhdGlvbjogJ2ZhY2V0LWxpc3QnLFxyXG4gICAgICAgICAgICB0YWI6IF8oJ2NhdGFsb2cuZmFjZXRzJyksXHJcbiAgICAgICAgICAgIHJvdXRlOiAnJyxcclxuICAgICAgICAgICAgY29tcG9uZW50OiBGYWNldExpc3RDb21wb25lbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcGFnZVNlcnZpY2UucmVnaXN0ZXJQYWdlVGFiKHtcclxuICAgICAgICAgICAgcHJpb3JpdHk6IDAsXHJcbiAgICAgICAgICAgIGxvY2F0aW9uOiAnZmFjZXQtZGV0YWlsJyxcclxuICAgICAgICAgICAgdGFiOiBfKCdjYXRhbG9nLmZhY2V0JyksXHJcbiAgICAgICAgICAgIHJvdXRlOiAnJyxcclxuICAgICAgICAgICAgY29tcG9uZW50OiBkZXRhaWxDb21wb25lbnRXaXRoUmVzb2x2ZXIoe1xyXG4gICAgICAgICAgICAgICAgY29tcG9uZW50OiBGYWNldERldGFpbENvbXBvbmVudCxcclxuICAgICAgICAgICAgICAgIHF1ZXJ5OiBHZXRGYWNldERldGFpbERvY3VtZW50LFxyXG4gICAgICAgICAgICAgICAgZW50aXR5S2V5OiAnZmFjZXQnLFxyXG4gICAgICAgICAgICAgICAgZ2V0QnJlYWRjcnVtYnM6IGVudGl0eSA9PiBbXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogZW50aXR5ID8gZW50aXR5Lm5hbWUgOiBfKCdjYXRhbG9nLmNyZWF0ZS1uZXctZmFjZXQnKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluazogW2VudGl0eT8uaWRdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICB9KTtcclxuICAgICAgICBwYWdlU2VydmljZS5yZWdpc3RlclBhZ2VUYWIoe1xyXG4gICAgICAgICAgICBwcmlvcml0eTogMCxcclxuICAgICAgICAgICAgbG9jYXRpb246ICdjb2xsZWN0aW9uLWxpc3QnLFxyXG4gICAgICAgICAgICB0YWI6IF8oJ2NhdGFsb2cuY29sbGVjdGlvbnMnKSxcclxuICAgICAgICAgICAgcm91dGU6ICcnLFxyXG4gICAgICAgICAgICBjb21wb25lbnQ6IENvbGxlY3Rpb25MaXN0Q29tcG9uZW50LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHBhZ2VTZXJ2aWNlLnJlZ2lzdGVyUGFnZVRhYih7XHJcbiAgICAgICAgICAgIHByaW9yaXR5OiAwLFxyXG4gICAgICAgICAgICBsb2NhdGlvbjogJ2NvbGxlY3Rpb24tZGV0YWlsJyxcclxuICAgICAgICAgICAgdGFiOiBfKCdjYXRhbG9nLmNvbGxlY3Rpb24nKSxcclxuICAgICAgICAgICAgcm91dGU6ICcnLFxyXG4gICAgICAgICAgICBjb21wb25lbnQ6IGRldGFpbENvbXBvbmVudFdpdGhSZXNvbHZlcih7XHJcbiAgICAgICAgICAgICAgICBjb21wb25lbnQ6IENvbGxlY3Rpb25EZXRhaWxDb21wb25lbnQsXHJcbiAgICAgICAgICAgICAgICBxdWVyeTogQ29sbGVjdGlvbkRldGFpbFF1ZXJ5RG9jdW1lbnQsXHJcbiAgICAgICAgICAgICAgICBlbnRpdHlLZXk6ICdjb2xsZWN0aW9uJyxcclxuICAgICAgICAgICAgICAgIGdldEJyZWFkY3J1bWJzOiBlbnRpdHkgPT4gW1xyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IGVudGl0eSA/IGVudGl0eS5uYW1lIDogXygnY2F0YWxvZy5jcmVhdGUtbmV3LWNvbGxlY3Rpb24nKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluazogW2VudGl0eT8uaWRdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICB9KTtcclxuICAgICAgICBwYWdlU2VydmljZS5yZWdpc3RlclBhZ2VUYWIoe1xyXG4gICAgICAgICAgICBwcmlvcml0eTogMCxcclxuICAgICAgICAgICAgbG9jYXRpb246ICdhc3NldC1saXN0JyxcclxuICAgICAgICAgICAgdGFiOiBfKCdjYXRhbG9nLmFzc2V0cycpLFxyXG4gICAgICAgICAgICByb3V0ZTogJycsXHJcbiAgICAgICAgICAgIGNvbXBvbmVudDogQXNzZXRMaXN0Q29tcG9uZW50LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHBhZ2VTZXJ2aWNlLnJlZ2lzdGVyUGFnZVRhYih7XHJcbiAgICAgICAgICAgIHByaW9yaXR5OiAwLFxyXG4gICAgICAgICAgICBsb2NhdGlvbjogJ2Fzc2V0LWRldGFpbCcsXHJcbiAgICAgICAgICAgIHRhYjogXygnY2F0YWxvZy5hc3NldCcpLFxyXG4gICAgICAgICAgICByb3V0ZTogJycsXHJcbiAgICAgICAgICAgIGNvbXBvbmVudDogZGV0YWlsQ29tcG9uZW50V2l0aFJlc29sdmVyKHtcclxuICAgICAgICAgICAgICAgIGNvbXBvbmVudDogQXNzZXREZXRhaWxDb21wb25lbnQsXHJcbiAgICAgICAgICAgICAgICBxdWVyeTogQXNzZXREZXRhaWxRdWVyeURvY3VtZW50LFxyXG4gICAgICAgICAgICAgICAgZW50aXR5S2V5OiAnYXNzZXQnLFxyXG4gICAgICAgICAgICAgICAgZ2V0QnJlYWRjcnVtYnM6IGVudGl0eSA9PiBbXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogYCR7ZW50aXR5Py5uYW1lfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbms6IFtlbnRpdHk/LmlkXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgQ2F0YWxvZ01vZHVsZS5oYXNSZWdpc3RlcmVkVGFic0FuZEJ1bGtBY3Rpb25zID0gdHJ1ZTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -19,7 +19,7 @@ export class CreateProductVariantDialogComponent {
|
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
21
|
ngOnInit() {
|
|
22
|
-
this.currencyCode = this.product.variants[0]
|
|
22
|
+
this.currencyCode = this.product.variants[0]?.currencyCode;
|
|
23
23
|
for (const optionGroup of this.product.optionGroups) {
|
|
24
24
|
this.form.get('options').addControl(optionGroup.code, new FormControl('', Validators.required));
|
|
25
25
|
}
|
|
@@ -77,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImpor
|
|
|
77
77
|
type: Component,
|
|
78
78
|
args: [{ selector: 'vdr-create-product-variant-dialog', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template vdrDialogTitle>\r\n {{ 'catalog.create-product-variant' | translate }}\r\n</ng-template>\r\n<form [formGroup]=\"form\">\r\n <div formGroupName=\"options\" class=\"form-grid\">\r\n <vdr-form-field [label]=\"optionGroup.name\" *ngFor=\"let optionGroup of product.optionGroups\">\r\n <ng-select [items]=\"optionGroup.options\" [formControlName]=\"optionGroup.code\" bindLabel=\"name\"\r\n bindValue=\"id\" appendTo=\"body\">\r\n </ng-select>\r\n </vdr-form-field>\r\n <clr-alert *ngIf=\"product.optionGroups.length === 0\" clrAlertType=\"warning\" [clrAlertClosable]=\"false\"\r\n class=\"form-grid-span\">\r\n <clr-alert-item>\r\n <span class=\"alert-text\">\r\n {{ 'catalog.cannot-create-variants-without-options' | translate }}\r\n </span>\r\n </clr-alert-item>\r\n </clr-alert>\r\n </div>\r\n <div *ngIf=\"existingVariant\" class=\"mt-2\">\r\n <clr-alert clrAlertType=\"warning\" [clrAlertClosable]=\"false\" class=\"\">\r\n <clr-alert-item>\r\n <span class=\"alert-text\">\r\n {{ 'catalog.product-variant-exists' | translate }}: {{ existingVariant.name }} ({{\r\n existingVariant.sku\r\n }})\r\n </span>\r\n </clr-alert-item>\r\n </clr-alert>\r\n </div>\r\n <div class=\"form-grid mt-2\">\r\n <vdr-form-field [label]=\"'common.name' | translate\">\r\n <input type=\"text\" formControlName=\"name\" />\r\n </vdr-form-field>\r\n <vdr-form-field [label]=\"'catalog.sku' | translate\">\r\n <input type=\"text\" formControlName=\"sku\" />\r\n </vdr-form-field>\r\n <vdr-form-field [label]=\"'catalog.price' | translate\">\r\n <vdr-currency-input name=\"price\" [currencyCode]=\"currencyCode\" formControlName=\"price\" />\r\n </vdr-form-field>\r\n </div>\r\n</form>\r\n<ng-template vdrDialogButtons>\r\n <button type=\"button\" class=\"btn\" (click)=\"cancel()\">{{ 'common.cancel' | translate }}</button>\r\n <button type=\"submit\" (click)=\"confirm()\" class=\"btn btn-primary\"\r\n [disabled]=\"form.invalid || existingVariant || product.optionGroups.length === 0\">\r\n {{ 'common.confirm' | translate }}\r\n </button>\r\n</ng-template>" }]
|
|
79
79
|
}], ctorParameters: function () { return [{ type: i1.FormBuilder }]; } });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXByb2R1Y3QtdmFyaWFudC1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jYXRhbG9nL3NyYy9jb21wb25lbnRzL2NyZWF0ZS1wcm9kdWN0LXZhcmlhbnQtZGlhbG9nL2NyZWF0ZS1wcm9kdWN0LXZhcmlhbnQtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY2F0YWxvZy9zcmMvY29tcG9uZW50cy9jcmVhdGUtcHJvZHVjdC12YXJpYW50LWRpYWxvZy9jcmVhdGUtcHJvZHVjdC12YXJpYW50LWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBZSxXQUFXLEVBQXlCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBTzdGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7OztBQVN0RSxNQUFNLE9BQU8sbUNBQW1DO0lBWTVDLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBVDVDLFNBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztZQUMxQixJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUMvQixHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUM5QixLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNoQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQVMsRUFBRSxDQUFDO1NBQy9DLENBQUMsQ0FBQztJQUk0QyxDQUFDO0lBRWhELFFBQVE7UUFDSixJQUFJLENBQUMsWUFBWSxH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Q0FBQztRQUNwRSxJQUFJLENBQUMsV0FBVyxDQUFDO1lBQ2IsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMxQixHQUFHO1lBQ0gsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDcEIsU0FBUztZQUNULFlBQVksRUFBRTtnQkFDVjtvQkFDSSxZQUFZLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZO29CQUN2QyxJQUFJO2lCQUNQO2FBQ0o7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU8sa0JBQWtCLENBQUMsRUFBVTtRQUNqQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUMxRSxDQUFDO0lBRU8sa0JBQWtCLENBQUMsSUFBWTtRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUM1RSxDQUFDOzhHQWpGUSxtQ0FBbUM7a0dBQW5DLG1DQUFtQyx5RUNqQmhELDA0RUFnRGM7OzJGRC9CRCxtQ0FBbUM7a0JBTi9DLFNBQVM7K0JBQ0ksbUNBQW1DLG1CQUc1Qix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBGb3JtUmVjb3JkLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQge1xyXG4gICAgQ3JlYXRlUHJvZHVjdFZhcmlhbnRJbnB1dCxcclxuICAgIEN1cnJlbmN5Q29kZSxcclxuICAgIERpYWxvZyxcclxuICAgIEdldFByb2R1Y3RWYXJpYW50T3B0aW9uc1F1ZXJ5LFxyXG59IGZyb20gJ0B2ZW5kdXJlL2FkbWluLXVpL2NvcmUnO1xyXG5pbXBvcnQgeyBub3ROdWxsT3JVbmRlZmluZWQgfSBmcm9tICdAdmVuZHVyZS9jb21tb24vbGliL3NoYXJlZC11dGlscyc7XHJcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd2ZHItY3JlYXRlLXByb2R1Y3QtdmFyaWFudC1kaWFsb2cnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS1wcm9kdWN0LXZhcmlhbnQtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2NyZWF0ZS1wcm9kdWN0LXZhcmlhbnQtZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIENyZWF0ZVByb2R1Y3RWYXJpYW50RGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgRGlhbG9nPENyZWF0ZVByb2R1Y3RWYXJpYW50SW5wdXQ+LCBPbkluaXQge1xyXG4gICAgcmVzb2x2ZVdpdGg6IChyZXN1bHQ/OiBDcmVhdGVQcm9kdWN0VmFyaWFudElucHV0KSA9PiB2b2lkO1xyXG4gICAgcHJvZHVjdDogTm9uTnVsbGFibGU8R2V0UHJvZHVjdFZhcmlhbnRPcHRpb25zUXVlcnlbJ3Byb2R1Y3QnXT47XHJcbiAgICBmb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgICAgbmFtZTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBza3U6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgcHJpY2U6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgb3B0aW9uczogdGhpcy5mb3JtQnVpbGRlci5yZWNvcmQ8c3RyaW5nPih7fSksXHJcbiAgICB9KTtcclxuICAgIGV4aXN0aW5nVmFyaWFudDogTm9uTnVsbGFibGU8R2V0UHJvZHVjdFZhcmlhbnRPcHRpb25zUXVlcnlbJ3Byb2R1Y3QnXT5bJ3ZhcmlhbnRzJ11bbnVtYmVyXSB8IHVuZGVmaW5lZDtcclxuICAgIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuY3VycmVuY3lDb2RlID0gdGhpcy5wcm9kdWN0LnZhcmlhbnRzWzBdLmN1cnJlbmN5Q29kZTtcclxuICAgICAgICBmb3IgKGNvbnN0IG9wdGlvbkdyb3VwIG9mIHRoaXMucHJvZHVjdC5vcHRpb25Hcm91cHMpIHtcclxuICAgICAgICAgICAgKHRoaXMuZm9ybS5nZXQoJ29wdGlvbnMnKSBhcyBGb3JtUmVjb3JkKS5hZGRDb250cm9sKFxyXG4gICAgICAgICAgICAgICAgb3B0aW9uR3JvdXAuY29kZSxcclxuICAgICAgICAgICAgICAgIG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IG9wdGlvbnNSZWNvcmQgPSB0aGlzLmZvcm0uZ2V0KCdvcHRpb25zJykgYXMgRm9ybVJlY29yZDtcclxuICAgICAgICBvcHRpb25zUmVjb3JkLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBuYW1lQ29udHJvbCA9IHRoaXMuZm9ybS5nZXQoJ25hbWUnKTtcclxuICAgICAgICAgICAgY29uc3QgYWxsTnVsbCA9IE9iamVjdC52YWx1ZXModmFsdWUpLmV2ZXJ5KHYgPT4gdiA9PSBudWxsKTtcclxuICAgICAgICAgICAgaWYgKCFhbGxOdWxsICYmIHZhbHVlICYmIG5hbWVDb250cm9sICYmICFuYW1lQ29udHJvbC5kaXJ0eSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgbmFtZSA9IE9iamVjdC5lbnRyaWVzKHZhbHVlKVxyXG4gICAgICAgICAgICAgICAgICAgIC5tYXAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChbZ3JvdXBDb2RlLCBvcHRpb25JZF0pID0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnByb2R1Y3Qub3B0aW9uR3JvdXBzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZpbmQob2cgPT4gb2cuY29kZSA9PT0gZ3JvdXBDb2RlKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8ub3B0aW9ucy5maW5kKG8gPT4gby5pZCA9PT0gb3B0aW9uSWQpPy5uYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICAuam9pbignICcpO1xyXG4gICAgICAgICAgICAgICAgbmFtZUNvbnRyb2wuc2V0VmFsdWUoYCR7dGhpcy5wcm9kdWN0Lm5hbWV9ICR7bmFtZX1gKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCBhbGxTZWxlY3RlZCA9IE9iamVjdC52YWx1ZXModmFsdWUpLmV2ZXJ5KHYgPT4gdiAhPSBudWxsKTtcclxuICAgICAgICAgICAgaWYgKGFsbFNlbGVjdGVkKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmV4aXN0aW5nVmFyaWFudCA9IHRoaXMucHJvZHVjdC52YXJpYW50cy5maW5kKHYgPT5cclxuICAgICAgICAgICAgICAgICAgICBPYmplY3QuZW50cmllcyh2YWx1ZSkuZXZlcnkoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChbZ3JvdXBDb2RlLCBvcHRpb25JZF0pID0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2Lm9wdGlvbnMuZmluZChvID0+IG8uZ3JvdXBJZCA9PT0gdGhpcy5nZXRHcm91cElkRnJvbUNvZGUoZ3JvdXBDb2RlKSk/LmlkID09PVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uSWQsXHJcbiAgICAgICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBjb25maXJtKCkge1xyXG4gICAgICAgIGNvbnN0IHsgbmFtZSwgc2t1LCBvcHRpb25zLCBwcmljZSB9ID0gdGhpcy5mb3JtLnZhbHVlO1xyXG4gICAgICAgIGlmICghbmFtZSB8fCAhc2t1IHx8ICFvcHRpb25zIHx8ICFwcmljZSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBvcHRpb25JZHMgPSBPYmplY3QudmFsdWVzKG9wdGlvbnMpLmZpbHRlcihub3ROdWxsT3JVbmRlZmluZWQpO1xyXG4gICAgICAgIHRoaXMucmVzb2x2ZVdpdGgoe1xyXG4gICAgICAgICAgICBwcm9kdWN0SWQ6IHRoaXMucHJvZHVjdC5pZCxcclxuICAgICAgICAgICAgc2t1LFxyXG4gICAgICAgICAgICBwcmljZTogTnVtYmVyKHByaWNlKSxcclxuICAgICAgICAgICAgb3B0aW9uSWRzLFxyXG4gICAgICAgICAgICB0cmFuc2xhdGlvbnM6IFtcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBsYW5ndWFnZUNvZGU6IHRoaXMucHJvZHVjdC5sYW5ndWFnZUNvZGUsXHJcbiAgICAgICAgICAgICAgICAgICAgbmFtZSxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIF0sXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY2FuY2VsKCkge1xyXG4gICAgICAgIHRoaXMucmVzb2x2ZVdpdGgoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldEdyb3VwQ29kZUZyb21JZChpZDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5wcm9kdWN0Lm9wdGlvbkdyb3Vwcy5maW5kKG9nID0+IG9nLmlkID09PSBpZCk/LmNvZGUgPz8gJyc7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRHcm91cElkRnJvbUNvZGUoY29kZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5wcm9kdWN0Lm9wdGlvbkdyb3Vwcy5maW5kKG9nID0+IG9nLmNvZGUgPT09IGNvZGUpPy5pZCA/PyAnJztcclxuICAgIH1cclxufVxyXG4iLCI8bmctdGVtcGxhdGUgdmRyRGlhbG9nVGl0bGU+XHJcbiAgICB7eyAnY2F0YWxvZy5jcmVhdGUtcHJvZHVjdC12YXJpYW50JyB8IHRyYW5zbGF0ZSB9fVxyXG48L25nLXRlbXBsYXRlPlxyXG48Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICAgIDxkaXYgZm9ybUdyb3VwTmFtZT1cIm9wdGlvbnNcIiBjbGFzcz1cImZvcm0tZ3JpZFwiPlxyXG4gICAgICAgIDx2ZHItZm9ybS1maWVsZCBbbGFiZWxdPVwib3B0aW9uR3JvdXAubmFtZVwiICpuZ0Zvcj1cImxldCBvcHRpb25Hcm91cCBvZiBwcm9kdWN0Lm9wdGlvbkdyb3Vwc1wiPlxyXG4gICAgICAgICAgICA8bmctc2VsZWN0IFtpdGVtc109XCJvcHRpb25Hcm91cC5vcHRpb25zXCIgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb25Hcm91cC5jb2RlXCIgYmluZExhYmVsPVwibmFtZVwiXHJcbiAgICAgICAgICAgICAgICBiaW5kVmFsdWU9XCJpZFwiIGFwcGVuZFRvPVwiYm9keVwiPlxyXG4gICAgICAgICAgICA8L25nLXNlbGVjdD5cclxuICAgICAgICA8L3Zkci1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDxjbHItYWxlcnQgKm5nSWY9XCJwcm9kdWN0Lm9wdGlvbkdyb3Vwcy5sZW5ndGggPT09IDBcIiBjbHJBbGVydFR5cGU9XCJ3YXJuaW5nXCIgW2NsckFsZXJ0Q2xvc2FibGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImZvcm0tZ3JpZC1zcGFuXCI+XHJcbiAgICAgICAgICAgIDxjbHItYWxlcnQtaXRlbT5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWxlcnQtdGV4dFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7ICdjYXRhbG9nLmNhbm5vdC1jcmVhdGUtdmFyaWFudHMtd2l0aG91dC1vcHRpb25zJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Nsci1hbGVydC1pdGVtPlxyXG4gICAgICAgIDwvY2xyLWFsZXJ0PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiZXhpc3RpbmdWYXJpYW50XCIgY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgPGNsci1hbGVydCBjbHJBbGVydFR5cGU9XCJ3YXJuaW5nXCIgW2NsckFsZXJ0Q2xvc2FibGVdPVwiZmFsc2VcIiBjbGFzcz1cIlwiPlxyXG4gICAgICAgICAgICA8Y2xyLWFsZXJ0LWl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFsZXJ0LXRleHRcIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyAnY2F0YWxvZy5wcm9kdWN0LXZhcmlhbnQtZXhpc3RzJyB8IHRyYW5zbGF0ZSB9fToge3sgZXhpc3RpbmdWYXJpYW50Lm5hbWUgfX0gKHt7XHJcbiAgICAgICAgICAgICAgICAgICAgZXhpc3RpbmdWYXJpYW50LnNrdVxyXG4gICAgICAgICAgICAgICAgICAgIH19KVxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Nsci1hbGVydC1pdGVtPlxyXG4gICAgICAgIDwvY2xyLWFsZXJ0PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncmlkIG10LTJcIj5cclxuICAgICAgICA8dmRyLWZvcm0tZmllbGQgW2xhYmVsXT1cIidjb21tb24ubmFtZScgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgZm9ybUNvbnRyb2xOYW1lPVwibmFtZVwiIC8+XHJcbiAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICA8dmRyLWZvcm0tZmllbGQgW2xhYmVsXT1cIidjYXRhbG9nLnNrdScgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgZm9ybUNvbnRyb2xOYW1lPVwic2t1XCIgLz5cclxuICAgICAgICA8L3Zkci1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDx2ZHItZm9ybS1maWVsZCBbbGFiZWxdPVwiJ2NhdGFsb2cucHJpY2UnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICAgIDx2ZHItY3VycmVuY3ktaW5wdXQgbmFtZT1cInByaWNlXCIgW2N1cnJlbmN5Q29kZV09XCJjdXJyZW5jeUNvZGVcIiBmb3JtQ29udHJvbE5hbWU9XCJwcmljZVwiIC8+XHJcbiAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgIDwvZGl2PlxyXG48L2Zvcm0+XHJcbjxuZy10ZW1wbGF0ZSB2ZHJEaWFsb2dCdXR0b25zPlxyXG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG5cIiAoY2xpY2spPVwiY2FuY2VsKClcIj57eyAnY29tbW9uLmNhbmNlbCcgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cclxuICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIChjbGljayk9XCJjb25maXJtKClcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXHJcbiAgICAgICAgW2Rpc2FibGVkXT1cImZvcm0uaW52YWxpZCB8fCBleGlzdGluZ1ZhcmlhbnQgfHwgcHJvZHVjdC5vcHRpb25Hcm91cHMubGVuZ3RoID09PSAwXCI+XHJcbiAgICAgICAge3sgJ2NvbW1vbi5jb25maXJtJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9idXR0b24+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXByb2R1Y3QtdmFyaWFudC1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jYXRhbG9nL3NyYy9jb21wb25lbnRzL2NyZWF0ZS1wcm9kdWN0LXZhcmlhbnQtZGlhbG9nL2NyZWF0ZS1wcm9kdWN0LXZhcmlhbnQtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY2F0YWxvZy9zcmMvY29tcG9uZW50cy9jcmVhdGUtcHJvZHVjdC12YXJpYW50LWRpYWxvZy9jcmVhdGUtcHJvZHVjdC12YXJpYW50LWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBZSxXQUFXLEVBQXlCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBTzdGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7OztBQVN0RSxNQUFNLE9BQU8sbUNBQW1DO0lBWTVDLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBVDVDLFNBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztZQUMxQixJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUMvQixHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUM5QixLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNoQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQVMsRUFBRSxDQUFDO1NBQy9DLENBQUMsQ0FBQztJQUk0QyxDQUFDO0lBRWhELFFBQVE7UUFDSixJQUFJLENBQUMsWUFBWSxH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Q0FBQztRQUNwRSxJQUFJLENBQUMsV0FBVyxDQUFDO1lBQ2IsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMxQixHQUFHO1lBQ0gsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDcEIsU0FBUztZQUNULFlBQVksRUFBRTtnQkFDVjtvQkFDSSxZQUFZLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZO29CQUN2QyxJQUFJO2lCQUNQO2FBQ0o7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU8sa0JBQWtCLENBQUMsRUFBVTtRQUNqQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUMxRSxDQUFDO0lBRU8sa0JBQWtCLENBQUMsSUFBWTtRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUM1RSxDQUFDOzhHQWpGUSxtQ0FBbUM7a0dBQW5DLG1DQUFtQyx5RUNqQmhELDA0RUFnRGM7OzJGRC9CRCxtQ0FBbUM7a0JBTi9DLFNBQVM7K0JBQ0ksbUNBQW1DLG1CQUc1Qix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBGb3JtUmVjb3JkLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQge1xyXG4gICAgQ3JlYXRlUHJvZHVjdFZhcmlhbnRJbnB1dCxcclxuICAgIEN1cnJlbmN5Q29kZSxcclxuICAgIERpYWxvZyxcclxuICAgIEdldFByb2R1Y3RWYXJpYW50T3B0aW9uc1F1ZXJ5LFxyXG59IGZyb20gJ0B2ZW5kdXJlL2FkbWluLXVpL2NvcmUnO1xyXG5pbXBvcnQgeyBub3ROdWxsT3JVbmRlZmluZWQgfSBmcm9tICdAdmVuZHVyZS9jb21tb24vbGliL3NoYXJlZC11dGlscyc7XHJcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd2ZHItY3JlYXRlLXByb2R1Y3QtdmFyaWFudC1kaWFsb2cnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS1wcm9kdWN0LXZhcmlhbnQtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2NyZWF0ZS1wcm9kdWN0LXZhcmlhbnQtZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIENyZWF0ZVByb2R1Y3RWYXJpYW50RGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgRGlhbG9nPENyZWF0ZVByb2R1Y3RWYXJpYW50SW5wdXQ+LCBPbkluaXQge1xyXG4gICAgcmVzb2x2ZVdpdGg6IChyZXN1bHQ/OiBDcmVhdGVQcm9kdWN0VmFyaWFudElucHV0KSA9PiB2b2lkO1xyXG4gICAgcHJvZHVjdDogTm9uTnVsbGFibGU8R2V0UHJvZHVjdFZhcmlhbnRPcHRpb25zUXVlcnlbJ3Byb2R1Y3QnXT47XHJcbiAgICBmb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgICAgbmFtZTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBza3U6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgcHJpY2U6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgb3B0aW9uczogdGhpcy5mb3JtQnVpbGRlci5yZWNvcmQ8c3RyaW5nPih7fSksXHJcbiAgICB9KTtcclxuICAgIGV4aXN0aW5nVmFyaWFudDogTm9uTnVsbGFibGU8R2V0UHJvZHVjdFZhcmlhbnRPcHRpb25zUXVlcnlbJ3Byb2R1Y3QnXT5bJ3ZhcmlhbnRzJ11bbnVtYmVyXSB8IHVuZGVmaW5lZDtcclxuICAgIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuY3VycmVuY3lDb2RlID0gdGhpcy5wcm9kdWN0LnZhcmlhbnRzWzBdPy5jdXJyZW5jeUNvZGU7XHJcbiAgICAgICAgZm9yIChjb25zdCBvcHRpb25Hcm91cCBvZiB0aGlzLnByb2R1Y3Qub3B0aW9uR3JvdXBzKSB7XHJcbiAgICAgICAgICAgICh0aGlzLmZvcm0uZ2V0KCdvcHRpb25zJykgYXMgRm9ybVJlY29yZCkuYWRkQ29udHJvbChcclxuICAgICAgICAgICAgICAgIG9wdGlvbkdyb3VwLmNvZGUsXHJcbiAgICAgICAgICAgICAgICBuZXcgRm9ybUNvbnRyb2woJycsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBvcHRpb25zUmVjb3JkID0gdGhpcy5mb3JtLmdldCgnb3B0aW9ucycpIGFzIEZvcm1SZWNvcmQ7XHJcbiAgICAgICAgb3B0aW9uc1JlY29yZC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICAgICAgY29uc3QgbmFtZUNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KCduYW1lJyk7XHJcbiAgICAgICAgICAgIGNvbnN0IGFsbE51bGwgPSBPYmplY3QudmFsdWVzKHZhbHVlKS5ldmVyeSh2ID0+IHYgPT0gbnVsbCk7XHJcbiAgICAgICAgICAgIGlmICghYWxsTnVsbCAmJiB2YWx1ZSAmJiBuYW1lQ29udHJvbCAmJiAhbmFtZUNvbnRyb2wuZGlydHkpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBPYmplY3QuZW50cmllcyh2YWx1ZSlcclxuICAgICAgICAgICAgICAgICAgICAubWFwKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoW2dyb3VwQ29kZSwgb3B0aW9uSWRdKSA9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wcm9kdWN0Lm9wdGlvbkdyb3Vwc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5maW5kKG9nID0+IG9nLmNvZGUgPT09IGdyb3VwQ29kZSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/Lm9wdGlvbnMuZmluZChvID0+IG8uaWQgPT09IG9wdGlvbklkKT8ubmFtZSxcclxuICAgICAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJyAnKTtcclxuICAgICAgICAgICAgICAgIG5hbWVDb250cm9sLnNldFZhbHVlKGAke3RoaXMucHJvZHVjdC5uYW1lfSAke25hbWV9YCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc3QgYWxsU2VsZWN0ZWQgPSBPYmplY3QudmFsdWVzKHZhbHVlKS5ldmVyeSh2ID0+IHYgIT0gbnVsbCk7XHJcbiAgICAgICAgICAgIGlmIChhbGxTZWxlY3RlZCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5leGlzdGluZ1ZhcmlhbnQgPSB0aGlzLnByb2R1Y3QudmFyaWFudHMuZmluZCh2ID0+XHJcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXModmFsdWUpLmV2ZXJ5KFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoW2dyb3VwQ29kZSwgb3B0aW9uSWRdKSA9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdi5vcHRpb25zLmZpbmQobyA9PiBvLmdyb3VwSWQgPT09IHRoaXMuZ2V0R3JvdXBJZEZyb21Db2RlKGdyb3VwQ29kZSkpPy5pZCA9PT1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbklkLFxyXG4gICAgICAgICAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uZmlybSgpIHtcclxuICAgICAgICBjb25zdCB7IG5hbWUsIHNrdSwgb3B0aW9ucywgcHJpY2UgfSA9IHRoaXMuZm9ybS52YWx1ZTtcclxuICAgICAgICBpZiAoIW5hbWUgfHwgIXNrdSB8fCAhb3B0aW9ucyB8fCAhcHJpY2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3Qgb3B0aW9uSWRzID0gT2JqZWN0LnZhbHVlcyhvcHRpb25zKS5maWx0ZXIobm90TnVsbE9yVW5kZWZpbmVkKTtcclxuICAgICAgICB0aGlzLnJlc29sdmVXaXRoKHtcclxuICAgICAgICAgICAgcHJvZHVjdElkOiB0aGlzLnByb2R1Y3QuaWQsXHJcbiAgICAgICAgICAgIHNrdSxcclxuICAgICAgICAgICAgcHJpY2U6IE51bWJlcihwcmljZSksXHJcbiAgICAgICAgICAgIG9wdGlvbklkcyxcclxuICAgICAgICAgICAgdHJhbnNsYXRpb25zOiBbXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGFuZ3VhZ2VDb2RlOiB0aGlzLnByb2R1Y3QubGFuZ3VhZ2VDb2RlLFxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWUsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBdLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGNhbmNlbCgpIHtcclxuICAgICAgICB0aGlzLnJlc29sdmVXaXRoKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRHcm91cENvZGVGcm9tSWQoaWQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvZHVjdC5vcHRpb25Hcm91cHMuZmluZChvZyA9PiBvZy5pZCA9PT0gaWQpPy5jb2RlID8/ICcnO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0R3JvdXBJZEZyb21Db2RlKGNvZGU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvZHVjdC5vcHRpb25Hcm91cHMuZmluZChvZyA9PiBvZy5jb2RlID09PSBjb2RlKT8uaWQgPz8gJyc7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLXRlbXBsYXRlIHZkckRpYWxvZ1RpdGxlPlxyXG4gICAge3sgJ2NhdGFsb2cuY3JlYXRlLXByb2R1Y3QtdmFyaWFudCcgfCB0cmFuc2xhdGUgfX1cclxuPC9uZy10ZW1wbGF0ZT5cclxuPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCI+XHJcbiAgICA8ZGl2IGZvcm1Hcm91cE5hbWU9XCJvcHRpb25zXCIgY2xhc3M9XCJmb3JtLWdyaWRcIj5cclxuICAgICAgICA8dmRyLWZvcm0tZmllbGQgW2xhYmVsXT1cIm9wdGlvbkdyb3VwLm5hbWVcIiAqbmdGb3I9XCJsZXQgb3B0aW9uR3JvdXAgb2YgcHJvZHVjdC5vcHRpb25Hcm91cHNcIj5cclxuICAgICAgICAgICAgPG5nLXNlbGVjdCBbaXRlbXNdPVwib3B0aW9uR3JvdXAub3B0aW9uc1wiIFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9uR3JvdXAuY29kZVwiIGJpbmRMYWJlbD1cIm5hbWVcIlxyXG4gICAgICAgICAgICAgICAgYmluZFZhbHVlPVwiaWRcIiBhcHBlbmRUbz1cImJvZHlcIj5cclxuICAgICAgICAgICAgPC9uZy1zZWxlY3Q+XHJcbiAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICA8Y2xyLWFsZXJ0ICpuZ0lmPVwicHJvZHVjdC5vcHRpb25Hcm91cHMubGVuZ3RoID09PSAwXCIgY2xyQWxlcnRUeXBlPVwid2FybmluZ1wiIFtjbHJBbGVydENsb3NhYmxlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWdyaWQtc3BhblwiPlxyXG4gICAgICAgICAgICA8Y2xyLWFsZXJ0LWl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFsZXJ0LXRleHRcIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyAnY2F0YWxvZy5jYW5ub3QtY3JlYXRlLXZhcmlhbnRzLXdpdGhvdXQtb3B0aW9ucycgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9jbHItYWxlcnQtaXRlbT5cclxuICAgICAgICA8L2Nsci1hbGVydD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cImV4aXN0aW5nVmFyaWFudFwiIGNsYXNzPVwibXQtMlwiPlxyXG4gICAgICAgIDxjbHItYWxlcnQgY2xyQWxlcnRUeXBlPVwid2FybmluZ1wiIFtjbHJBbGVydENsb3NhYmxlXT1cImZhbHNlXCIgY2xhc3M9XCJcIj5cclxuICAgICAgICAgICAgPGNsci1hbGVydC1pdGVtPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhbGVydC10ZXh0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgJ2NhdGFsb2cucHJvZHVjdC12YXJpYW50LWV4aXN0cycgfCB0cmFuc2xhdGUgfX06IHt7IGV4aXN0aW5nVmFyaWFudC5uYW1lIH19ICh7e1xyXG4gICAgICAgICAgICAgICAgICAgIGV4aXN0aW5nVmFyaWFudC5za3VcclxuICAgICAgICAgICAgICAgICAgICB9fSlcclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9jbHItYWxlcnQtaXRlbT5cclxuICAgICAgICA8L2Nsci1hbGVydD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JpZCBtdC0yXCI+XHJcbiAgICAgICAgPHZkci1mb3JtLWZpZWxkIFtsYWJlbF09XCInY29tbW9uLm5hbWUnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIiAvPlxyXG4gICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPHZkci1mb3JtLWZpZWxkIFtsYWJlbF09XCInY2F0YWxvZy5za3UnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGZvcm1Db250cm9sTmFtZT1cInNrdVwiIC8+XHJcbiAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICA8dmRyLWZvcm0tZmllbGQgW2xhYmVsXT1cIidjYXRhbG9nLnByaWNlJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgICAgICAgICA8dmRyLWN1cnJlbmN5LWlucHV0IG5hbWU9XCJwcmljZVwiIFtjdXJyZW5jeUNvZGVdPVwiY3VycmVuY3lDb2RlXCIgZm9ybUNvbnRyb2xOYW1lPVwicHJpY2VcIiAvPlxyXG4gICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICA8L2Rpdj5cclxuPC9mb3JtPlxyXG48bmctdGVtcGxhdGUgdmRyRGlhbG9nQnV0dG9ucz5cclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuXCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+e3sgJ2NvbW1vbi5jYW5jZWwnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiAoY2xpY2spPVwiY29uZmlybSgpXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJmb3JtLmludmFsaWQgfHwgZXhpc3RpbmdWYXJpYW50IHx8IHByb2R1Y3Qub3B0aW9uR3JvdXBzLmxlbmd0aCA9PT0gMFwiPlxyXG4gICAgICAgIHt7ICdjb21tb24uY29uZmlybScgfCB0cmFuc2xhdGUgfX1cclxuICAgIDwvYnV0dG9uPlxyXG48L25nLXRlbXBsYXRlPiJdfQ==
|