@veloceapps/api 3.1.1 → 3.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/esm2015/index.js CHANGED
@@ -1,4 +1,6 @@
1
1
  export { ApiModule } from './lib/api.module';
2
+ export { CatalogAdminApiService } from './lib/services/catalog-admin-api.service';
3
+ export { CatalogApiService } from './lib/services/catalog-api.service';
2
4
  export { ConfigurationApiService } from './lib/services/configuration-api.service';
3
5
  export { ConfigurationSettingsApiService } from './lib/services/configuration-settings-api.service';
4
6
  export { ContextApiService } from './lib/services/context-api.service';
@@ -7,6 +9,7 @@ export { DocumentTemplatesApiService } from './lib/services/document-templates-a
7
9
  export { FlowsApiService } from './lib/services/flows-api.service';
8
10
  export { PriceApiService } from './lib/services/price-api.service';
9
11
  export { ProceduresApiService } from './lib/services/procedures-api.service';
12
+ export { ProductApiService } from './lib/services/product-api.service';
10
13
  export { ProductModelApiService } from './lib/services/product-model-api.service';
11
14
  export { QuoteApiService } from './lib/services/quote-api.service';
12
15
  export { RampApiService } from './lib/services/ramp-api.service';
@@ -16,4 +19,4 @@ export { SalesforceApiService } from './lib/services/salesforce-api.service';
16
19
  export { ScriptsApiService } from './lib/services/scripts-api.service';
17
20
  export { UITemplatesApiService } from './lib/services/ui-templates-api.service';
18
21
  export * from './lib/types';
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2FwaS9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBBcGlNb2R1bGUgfSBmcm9tICcuL2xpYi9hcGkubW9kdWxlJztcbmV4cG9ydCB7IENvbmZpZ3VyYXRpb25BcGlTZXJ2aWNlIH0gZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlndXJhdGlvbi1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBDb25maWd1cmF0aW9uU2V0dGluZ3NBcGlTZXJ2aWNlIH0gZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlndXJhdGlvbi1zZXR0aW5ncy1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBDb250ZXh0QXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL2NvbnRleHQtYXBpLnNlcnZpY2UnO1xuZXhwb3J0IHsgRG9jdW1lbnRBdHRhY2htZW50QXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL2RvY3VtZW50LWF0dGFjaG1lbnQtYXBpLnNlcnZpY2UnO1xuZXhwb3J0IHsgRG9jdW1lbnRUZW1wbGF0ZXNBcGlTZXJ2aWNlIH0gZnJvbSAnLi9saWIvc2VydmljZXMvZG9jdW1lbnQtdGVtcGxhdGVzLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IEZsb3dzQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL2Zsb3dzLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFByaWNlQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL3ByaWNlLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFByb2NlZHVyZXNBcGlTZXJ2aWNlIH0gZnJvbSAnLi9saWIvc2VydmljZXMvcHJvY2VkdXJlcy1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBQcm9kdWN0TW9kZWxBcGlTZXJ2aWNlIH0gZnJvbSAnLi9saWIvc2VydmljZXMvcHJvZHVjdC1tb2RlbC1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBRdW90ZUFwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9xdW90ZS1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBSYW1wQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL3JhbXAtYXBpLnNlcnZpY2UnO1xuZXhwb3J0IHsgUnVsZUdyb3Vwc0FwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9ydWxlLWdyb3Vwcy1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBSdWxlc0FwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9ydWxlcy1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBTYWxlc2ZvcmNlQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL3NhbGVzZm9yY2UtYXBpLnNlcnZpY2UnO1xuZXhwb3J0IHsgU2NyaXB0c0FwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9zY3JpcHRzLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFVJVGVtcGxhdGVzQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL3VpLXRlbXBsYXRlcy1hcGkuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcyc7XG4iXX0=
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2FwaS9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBBcGlNb2R1bGUgfSBmcm9tICcuL2xpYi9hcGkubW9kdWxlJztcbmV4cG9ydCB7IENhdGFsb2dBZG1pbkFwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9jYXRhbG9nLWFkbWluLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IENhdGFsb2dBcGlTZXJ2aWNlIH0gZnJvbSAnLi9saWIvc2VydmljZXMvY2F0YWxvZy1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBDb25maWd1cmF0aW9uQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL2NvbmZpZ3VyYXRpb24tYXBpLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29uZmlndXJhdGlvblNldHRpbmdzQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL2NvbmZpZ3VyYXRpb24tc2V0dGluZ3MtYXBpLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29udGV4dEFwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9jb250ZXh0LWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IERvY3VtZW50QXR0YWNobWVudEFwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9kb2N1bWVudC1hdHRhY2htZW50LWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IERvY3VtZW50VGVtcGxhdGVzQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL2RvY3VtZW50LXRlbXBsYXRlcy1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBGbG93c0FwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9mbG93cy1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBQcmljZUFwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9wcmljZS1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBQcm9jZWR1cmVzQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL3Byb2NlZHVyZXMtYXBpLnNlcnZpY2UnO1xuZXhwb3J0IHsgUHJvZHVjdEFwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9wcm9kdWN0LWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFByb2R1Y3RNb2RlbEFwaVNlcnZpY2UgfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9wcm9kdWN0LW1vZGVsLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFF1b3RlQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL3F1b3RlLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFJhbXBBcGlTZXJ2aWNlIH0gZnJvbSAnLi9saWIvc2VydmljZXMvcmFtcC1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBSdWxlR3JvdXBzQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL3J1bGUtZ3JvdXBzLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFJ1bGVzQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL3J1bGVzLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFNhbGVzZm9yY2VBcGlTZXJ2aWNlIH0gZnJvbSAnLi9saWIvc2VydmljZXMvc2FsZXNmb3JjZS1hcGkuc2VydmljZSc7XG5leHBvcnQgeyBTY3JpcHRzQXBpU2VydmljZSB9IGZyb20gJy4vbGliL3NlcnZpY2VzL3NjcmlwdHMtYXBpLnNlcnZpY2UnO1xuZXhwb3J0IHsgVUlUZW1wbGF0ZXNBcGlTZXJ2aWNlIH0gZnJvbSAnLi9saWIvc2VydmljZXMvdWktdGVtcGxhdGVzLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVzJztcbiJdfQ==
@@ -1,6 +1,8 @@
1
1
  import { HttpClientModule } from '@angular/common/http';
2
2
  import { NgModule } from '@angular/core';
3
3
  import { BaseHttpService, XrayService } from '@veloce/core';
4
+ import { CatalogAdminApiService } from './services/catalog-admin-api.service';
5
+ import { CatalogApiService } from './services/catalog-api.service';
4
6
  import { ConfigurationApiService } from './services/configuration-api.service';
5
7
  import { ConfigurationSettingsApiService } from './services/configuration-settings-api.service';
6
8
  import { ContextApiService } from './services/context-api.service';
@@ -9,6 +11,7 @@ import { DocumentTemplatesApiService } from './services/document-templates-api.s
9
11
  import { FlowsApiService } from './services/flows-api.service';
10
12
  import { PriceApiService } from './services/price-api.service';
11
13
  import { ProceduresApiService } from './services/procedures-api.service';
14
+ import { ProductApiService } from './services/product-api.service';
12
15
  import { ProductModelApiService } from './services/product-model-api.service';
13
16
  import { QuoteApiService } from './services/quote-api.service';
14
17
  import { RampApiService } from './services/ramp-api.service';
@@ -41,6 +44,9 @@ ApiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.
41
44
  RulesApiService,
42
45
  RuleGroupsApiService,
43
46
  FlowsApiService,
47
+ ProductApiService,
48
+ CatalogAdminApiService,
49
+ CatalogApiService,
44
50
  ], imports: [[HttpClientModule]] });
45
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ApiModule, decorators: [{
46
52
  type: NgModule,
@@ -65,7 +71,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
65
71
  RulesApiService,
66
72
  RuleGroupsApiService,
67
73
  FlowsApiService,
74
+ ProductApiService,
75
+ CatalogAdminApiService,
76
+ CatalogApiService,
68
77
  ],
69
78
  }]
70
79
  }] });
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvYXBpLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDekUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7O0FBeUI1RSxNQUFNLE9BQU8sU0FBUzs7dUdBQVQsU0FBUzt3R0FBVCxTQUFTLFlBdEJWLGdCQUFnQjt3R0FzQmYsU0FBUyxhQXJCVDtRQUNULGVBQWU7UUFDZixXQUFXO1FBQ1gsdUJBQXVCO1FBQ3ZCLCtCQUErQjtRQUMvQixpQkFBaUI7UUFDakIsNEJBQTRCO1FBQzVCLGVBQWU7UUFDZixzQkFBc0I7UUFDdEIsb0JBQW9CO1FBQ3BCLGVBQWU7UUFDZiwyQkFBMkI7UUFDM0IsY0FBYztRQUNkLG9CQUFvQjtRQUNwQixxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZixvQkFBb0I7UUFDcEIsZUFBZTtLQUNoQixZQXBCUSxDQUFDLGdCQUFnQixDQUFDOzRGQXNCaEIsU0FBUztrQkF2QnJCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQzNCLFNBQVMsRUFBRTt3QkFDVCxlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsdUJBQXVCO3dCQUN2QiwrQkFBK0I7d0JBQy9CLGlCQUFpQjt3QkFDakIsNEJBQTRCO3dCQUM1QixlQUFlO3dCQUNmLHNCQUFzQjt3QkFDdEIsb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLDJCQUEyQjt3QkFDM0IsY0FBYzt3QkFDZCxvQkFBb0I7d0JBQ3BCLHFCQUFxQjt3QkFDckIsaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsZUFBZTtxQkFDaEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VIdHRwU2VydmljZSwgWHJheVNlcnZpY2UgfSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbkFwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2NvbmZpZ3VyYXRpb24tYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblNldHRpbmdzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvY29uZmlndXJhdGlvbi1zZXR0aW5ncy1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBDb250ZXh0QXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvY29udGV4dC1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBEb2N1bWVudEF0dGFjaG1lbnRBcGlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kb2N1bWVudC1hdHRhY2htZW50LWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IERvY3VtZW50VGVtcGxhdGVzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZG9jdW1lbnQtdGVtcGxhdGVzLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEZsb3dzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZmxvd3MtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJpY2VBcGlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9wcmljZS1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBQcm9jZWR1cmVzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcHJvY2VkdXJlcy1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBQcm9kdWN0TW9kZWxBcGlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9wcm9kdWN0LW1vZGVsLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IFF1b3RlQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcXVvdGUtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmFtcEFwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3JhbXAtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgUnVsZUdyb3Vwc0FwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3J1bGUtZ3JvdXBzLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IFJ1bGVzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcnVsZXMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2FsZXNmb3JjZUFwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3NhbGVzZm9yY2UtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2NyaXB0c0FwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3NjcmlwdHMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgVUlUZW1wbGF0ZXNBcGlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy91aS10ZW1wbGF0ZXMtYXBpLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbSHR0cENsaWVudE1vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIEJhc2VIdHRwU2VydmljZSxcbiAgICBYcmF5U2VydmljZSxcbiAgICBDb25maWd1cmF0aW9uQXBpU2VydmljZSxcbiAgICBDb25maWd1cmF0aW9uU2V0dGluZ3NBcGlTZXJ2aWNlLFxuICAgIENvbnRleHRBcGlTZXJ2aWNlLFxuICAgIERvY3VtZW50QXR0YWNobWVudEFwaVNlcnZpY2UsXG4gICAgUHJpY2VBcGlTZXJ2aWNlLFxuICAgIFByb2R1Y3RNb2RlbEFwaVNlcnZpY2UsXG4gICAgUHJvY2VkdXJlc0FwaVNlcnZpY2UsXG4gICAgUXVvdGVBcGlTZXJ2aWNlLFxuICAgIERvY3VtZW50VGVtcGxhdGVzQXBpU2VydmljZSxcbiAgICBSYW1wQXBpU2VydmljZSxcbiAgICBTYWxlc2ZvcmNlQXBpU2VydmljZSxcbiAgICBVSVRlbXBsYXRlc0FwaVNlcnZpY2UsXG4gICAgU2NyaXB0c0FwaVNlcnZpY2UsXG4gICAgUnVsZXNBcGlTZXJ2aWNlLFxuICAgIFJ1bGVHcm91cHNBcGlTZXJ2aWNlLFxuICAgIEZsb3dzQXBpU2VydmljZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQXBpTW9kdWxlIHt9XG4iXX0=
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvYXBpLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7O0FBNEI1RSxNQUFNLE9BQU8sU0FBUzs7dUdBQVQsU0FBUzt3R0FBVCxTQUFTLFlBekJWLGdCQUFnQjt3R0F5QmYsU0FBUyxhQXhCVDtRQUNULGVBQWU7UUFDZixXQUFXO1FBQ1gsdUJBQXVCO1FBQ3ZCLCtCQUErQjtRQUMvQixpQkFBaUI7UUFDakIsNEJBQTRCO1FBQzVCLGVBQWU7UUFDZixzQkFBc0I7UUFDdEIsb0JBQW9CO1FBQ3BCLGVBQWU7UUFDZiwyQkFBMkI7UUFDM0IsY0FBYztRQUNkLG9CQUFvQjtRQUNwQixxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZixvQkFBb0I7UUFDcEIsZUFBZTtRQUNmLGlCQUFpQjtRQUNqQixzQkFBc0I7UUFDdEIsaUJBQWlCO0tBQ2xCLFlBdkJRLENBQUMsZ0JBQWdCLENBQUM7NEZBeUJoQixTQUFTO2tCQTFCckIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDM0IsU0FBUyxFQUFFO3dCQUNULGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCx1QkFBdUI7d0JBQ3ZCLCtCQUErQjt3QkFDL0IsaUJBQWlCO3dCQUNqQiw0QkFBNEI7d0JBQzVCLGVBQWU7d0JBQ2Ysc0JBQXNCO3dCQUN0QixvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2YsMkJBQTJCO3dCQUMzQixjQUFjO3dCQUNkLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsc0JBQXNCO3dCQUN0QixpQkFBaUI7cUJBQ2xCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlSHR0cFNlcnZpY2UsIFhyYXlTZXJ2aWNlIH0gZnJvbSAnQHZlbG9jZS9jb3JlJztcbmltcG9ydCB7IENhdGFsb2dBZG1pbkFwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2NhdGFsb2ctYWRtaW4tYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2F0YWxvZ0FwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2NhdGFsb2ctYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbkFwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2NvbmZpZ3VyYXRpb24tYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblNldHRpbmdzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvY29uZmlndXJhdGlvbi1zZXR0aW5ncy1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBDb250ZXh0QXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvY29udGV4dC1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBEb2N1bWVudEF0dGFjaG1lbnRBcGlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kb2N1bWVudC1hdHRhY2htZW50LWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IERvY3VtZW50VGVtcGxhdGVzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZG9jdW1lbnQtdGVtcGxhdGVzLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEZsb3dzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZmxvd3MtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJpY2VBcGlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9wcmljZS1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBQcm9jZWR1cmVzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcHJvY2VkdXJlcy1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBQcm9kdWN0QXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcHJvZHVjdC1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBQcm9kdWN0TW9kZWxBcGlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9wcm9kdWN0LW1vZGVsLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IFF1b3RlQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcXVvdGUtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmFtcEFwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3JhbXAtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgUnVsZUdyb3Vwc0FwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3J1bGUtZ3JvdXBzLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IFJ1bGVzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcnVsZXMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2FsZXNmb3JjZUFwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3NhbGVzZm9yY2UtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2NyaXB0c0FwaVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3NjcmlwdHMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgVUlUZW1wbGF0ZXNBcGlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy91aS10ZW1wbGF0ZXMtYXBpLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbSHR0cENsaWVudE1vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIEJhc2VIdHRwU2VydmljZSxcbiAgICBYcmF5U2VydmljZSxcbiAgICBDb25maWd1cmF0aW9uQXBpU2VydmljZSxcbiAgICBDb25maWd1cmF0aW9uU2V0dGluZ3NBcGlTZXJ2aWNlLFxuICAgIENvbnRleHRBcGlTZXJ2aWNlLFxuICAgIERvY3VtZW50QXR0YWNobWVudEFwaVNlcnZpY2UsXG4gICAgUHJpY2VBcGlTZXJ2aWNlLFxuICAgIFByb2R1Y3RNb2RlbEFwaVNlcnZpY2UsXG4gICAgUHJvY2VkdXJlc0FwaVNlcnZpY2UsXG4gICAgUXVvdGVBcGlTZXJ2aWNlLFxuICAgIERvY3VtZW50VGVtcGxhdGVzQXBpU2VydmljZSxcbiAgICBSYW1wQXBpU2VydmljZSxcbiAgICBTYWxlc2ZvcmNlQXBpU2VydmljZSxcbiAgICBVSVRlbXBsYXRlc0FwaVNlcnZpY2UsXG4gICAgU2NyaXB0c0FwaVNlcnZpY2UsXG4gICAgUnVsZXNBcGlTZXJ2aWNlLFxuICAgIFJ1bGVHcm91cHNBcGlTZXJ2aWNlLFxuICAgIEZsb3dzQXBpU2VydmljZSxcbiAgICBQcm9kdWN0QXBpU2VydmljZSxcbiAgICBDYXRhbG9nQWRtaW5BcGlTZXJ2aWNlLFxuICAgIENhdGFsb2dBcGlTZXJ2aWNlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBcGlNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,159 @@
1
+ import { HttpParams } from '@angular/common/http';
2
+ import { Injectable } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@veloce/core";
5
+ export class CatalogAdminApiService {
6
+ constructor(baseHttpService) {
7
+ this.baseHttpService = baseHttpService;
8
+ this.serviceUrl = '/catalogs';
9
+ this.fetchCatalogs$ = (searchParams) => {
10
+ const params = new HttpParams({ fromObject: Object.assign({}, searchParams) });
11
+ return this.baseHttpService.api({ url: `${this.serviceUrl}`, params });
12
+ };
13
+ this.searchCatalogs$ = (searchParams, expression) => {
14
+ const params = new HttpParams({ fromObject: Object.assign({}, searchParams) });
15
+ return this.baseHttpService.api({
16
+ method: 'post',
17
+ url: `${this.serviceUrl}/search`,
18
+ params,
19
+ body: expression || {},
20
+ });
21
+ };
22
+ this.fetchCategories$ = (catalogId) => {
23
+ return this.baseHttpService.api({ url: `${this.serviceUrl}/${catalogId}/categories` });
24
+ };
25
+ this.searchProducts$ = (catalogId, categoryId) => {
26
+ return this.baseHttpService.api({
27
+ method: 'post',
28
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products/search`,
29
+ body: {},
30
+ });
31
+ };
32
+ this.fetchAttributes$ = (catalogId, categoryId) => {
33
+ return this.baseHttpService.api({ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/attributes` });
34
+ };
35
+ this.createNewCatalog$ = (catalogData) => {
36
+ return this.baseHttpService.api({
37
+ url: `${this.serviceUrl}`,
38
+ method: 'post',
39
+ body: catalogData,
40
+ });
41
+ };
42
+ this.duplicateCatalog$ = (cloneRequest) => {
43
+ return this.baseHttpService.api({
44
+ url: `${this.serviceUrl}/${cloneRequest.id}/clone`,
45
+ method: 'post',
46
+ body: cloneRequest,
47
+ });
48
+ };
49
+ this.updateCatalog$ = (data) => {
50
+ return this.baseHttpService.api({
51
+ url: `${this.serviceUrl}/${data.id}`,
52
+ method: 'put',
53
+ body: data,
54
+ });
55
+ };
56
+ this.removeCatalog$ = (id) => {
57
+ return this.baseHttpService.api({
58
+ url: `${this.serviceUrl}/${id}`,
59
+ method: 'delete',
60
+ });
61
+ };
62
+ this.restoreCatalog$ = (id) => {
63
+ return this.baseHttpService.api({
64
+ url: `${this.serviceUrl}/${id}/restore`,
65
+ method: 'patch',
66
+ });
67
+ };
68
+ this.createNewCategory$ = (categoryData) => {
69
+ return this.baseHttpService.api({
70
+ url: `${this.serviceUrl}/${categoryData.catalogId}/categories`,
71
+ method: 'post',
72
+ body: categoryData,
73
+ });
74
+ };
75
+ this.updateCategory$ = (category) => {
76
+ return this.baseHttpService.api({
77
+ url: `${this.serviceUrl}/${category.catalogId}/categories/${category.id}`,
78
+ method: 'put',
79
+ body: category,
80
+ });
81
+ };
82
+ this.duplicateCategory$ = (catalogId, cloneRequest) => {
83
+ return this.baseHttpService.api({
84
+ url: `${this.serviceUrl}/${catalogId}/categories/${cloneRequest.id}/clone`,
85
+ method: 'post',
86
+ body: cloneRequest,
87
+ });
88
+ };
89
+ this.removeCategory$ = (id, catalogId) => {
90
+ return this.baseHttpService.api({
91
+ url: `${this.serviceUrl}/${catalogId}/categories/${id}`,
92
+ method: 'delete',
93
+ });
94
+ };
95
+ this.restoreCategory$ = (id, catalogId) => {
96
+ return this.baseHttpService.api({
97
+ url: `${this.serviceUrl}/${catalogId}/categories/${id}/restore`,
98
+ method: 'patch',
99
+ });
100
+ };
101
+ this.removeAttribute$ = ({ catalogId, categoryId, data, }) => {
102
+ return this.baseHttpService.api({
103
+ method: 'delete',
104
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/attributes/${data.id}`,
105
+ body: data,
106
+ });
107
+ };
108
+ this.restoreAttribute$ = ({ catalogId, categoryId, data, }) => {
109
+ return this.baseHttpService.api({
110
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/attributes/${data.id}/restore`,
111
+ method: 'patch',
112
+ });
113
+ };
114
+ this.createNewAttribute$ = ({ catalogId, categoryId, data, }) => {
115
+ return this.baseHttpService.api({
116
+ method: 'post',
117
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/attributes`,
118
+ body: data,
119
+ });
120
+ };
121
+ this.updateAttribute$ = ({ catalogId, categoryId, data, }) => {
122
+ return this.baseHttpService.api({
123
+ method: 'put',
124
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/attributes/${data.id}`,
125
+ body: data,
126
+ });
127
+ };
128
+ this.searchProductCandidates$ = (catalogId, categoryId, expression, searchParams) => {
129
+ const params = new HttpParams({ fromObject: Object.assign({}, searchParams) });
130
+ return this.baseHttpService.api({
131
+ method: 'post',
132
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/candidates/search`,
133
+ params,
134
+ body: expression,
135
+ });
136
+ };
137
+ this.addProduct$ = (product, catalogId, categoryId) => {
138
+ return this.baseHttpService.api({
139
+ method: 'post',
140
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products`,
141
+ body: product,
142
+ });
143
+ };
144
+ this.removeProduct$ = ({ catalogId, categoryId, data }) => {
145
+ return this.baseHttpService.api({
146
+ method: 'delete',
147
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products/${data.id}`,
148
+ body: data,
149
+ });
150
+ };
151
+ }
152
+ }
153
+ CatalogAdminApiService.MAX_RESULTS = 60;
154
+ CatalogAdminApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogAdminApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
155
+ CatalogAdminApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogAdminApiService });
156
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogAdminApiService, decorators: [{
157
+ type: Injectable
158
+ }], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1hZG1pbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvY2F0YWxvZy1hZG1pbi1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBaUIzQyxNQUFNLE9BQU8sc0JBQXNCO0lBS2pDLFlBQW9CLGVBQWdDO1FBQWhDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUZuQyxlQUFVLEdBQVcsV0FBVyxDQUFDO1FBSWxELG1CQUFjLEdBQUcsQ0FBQyxZQUFnQyxFQUF5QixFQUFFO1lBQzNFLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDLEVBQUUsVUFBVSxvQkFBTyxZQUFZLENBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkUsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3pFLENBQUMsQ0FBQztRQUVGLG9CQUFlLEdBQUcsQ0FBQyxZQUFnQyxFQUFFLFVBQXVCLEVBQXlCLEVBQUU7WUFDckcsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsRUFBRSxVQUFVLG9CQUFPLFlBQVksQ0FBRSxFQUFFLENBQUMsQ0FBQztZQUVuRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDO2dCQUM5QixNQUFNLEVBQUUsTUFBTTtnQkFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxTQUFTO2dCQUNoQyxNQUFNO2dCQUNOLElBQUksRUFBRSxVQUFVLElBQUksRUFBRTthQUN2QixDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7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QUFDLENBQUM7UUFDTCxDQUFDLENBQUM7SUEzTHFELENBQUM7O0FBSjFDLGtDQUFXLEdBQUcsRUFBRSxDQUFDO29IQURwQixzQkFBc0I7d0hBQXRCLHNCQUFzQjs0RkFBdEIsc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEJhc2VIdHRwU2VydmljZSxcbiAgQ2F0YWxvZyxcbiAgQ2F0ZWdvcnksXG4gIENhdGVnb3J5QXR0cmlidXRlLFxuICBDYXRlZ29yeVJlcXVlc3RQYXlsb2FkV2l0aERhdGEsXG4gIEV4cHJlc3Npb24sXG4gIE5ld0NhdGFsb2csXG4gIE5ld0NhdGVnb3J5LFxuICBOZXdDYXRlZ29yeUF0dHJpYnV0ZSxcbiAgUHJvZHVjdCxcbn0gZnJvbSAnQHZlbG9jZS9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENsb25lUmVxdWVzdCwgUXVlcnlTZWFyY2hQYXJhbXMgfSBmcm9tICcuLi90eXBlcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDYXRhbG9nQWRtaW5BcGlTZXJ2aWNlIHtcbiAgcHVibGljIHN0YXRpYyBNQVhfUkVTVUxUUyA9IDYwO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgc2VydmljZVVybDogc3RyaW5nID0gJy9jYXRhbG9ncyc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBiYXNlSHR0cFNlcnZpY2U6IEJhc2VIdHRwU2VydmljZSkge31cblxuICBmZXRjaENhdGFsb2dzJCA9IChzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcyk6IE9ic2VydmFibGU8Q2F0YWxvZ1tdPiA9PiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoeyBmcm9tT2JqZWN0OiB7IC4uLnNlYXJjaFBhcmFtcyB9IH0pO1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoeyB1cmw6IGAke3RoaXMuc2VydmljZVVybH1gLCBwYXJhbXMgfSk7XG4gIH07XG5cbiAgc2VhcmNoQ2F0YWxvZ3MkID0gKHNlYXJjaFBhcmFtcz86IFF1ZXJ5U2VhcmNoUGFyYW1zLCBleHByZXNzaW9uPzogRXhwcmVzc2lvbik6IE9ic2VydmFibGU8Q2F0YWxvZ1tdPiA9PiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoeyBmcm9tT2JqZWN0OiB7IC4uLnNlYXJjaFBhcmFtcyB9IH0pO1xuXG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS9zZWFyY2hgLFxuICAgICAgcGFyYW1zLFxuICAgICAgYm9keTogZXhwcmVzc2lvbiB8fCB7fSxcbiAgICB9KTtcbiAgfTtcblxuICBmZXRjaENhdGVnb3JpZXMkID0gKGNhdGFsb2dJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxDYXRlZ29yeVtdPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7IHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllc2AgfSk7XG4gIH07XG5cbiAgc2VhcmNoUHJvZHVjdHMkID0gKGNhdGFsb2dJZDogc3RyaW5nLCBjYXRlZ29yeUlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb2R1Y3RbXT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9wcm9kdWN0cy9zZWFyY2hgLFxuICAgICAgYm9keToge30sXG4gICAgfSk7XG4gIH07XG5cbiAgZmV0Y2hBdHRyaWJ1dGVzJCA9IChjYXRhbG9nSWQ6IHN0cmluZywgY2F0ZWdvcnlJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxDYXRlZ29yeUF0dHJpYnV0ZVtdPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7IHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L2F0dHJpYnV0ZXNgIH0pO1xuICB9O1xuXG4gIGNyZWF0ZU5ld0NhdGFsb2ckID0gKGNhdGFsb2dEYXRhOiBOZXdDYXRhbG9nKTogT2JzZXJ2YWJsZTxDYXRhbG9nPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH1gLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBib2R5OiBjYXRhbG9nRGF0YSxcbiAgICB9KTtcbiAgfTtcblxuICBkdXBsaWNhdGVDYXRhbG9nJCA9IChjbG9uZVJlcXVlc3Q6IENsb25lUmVxdWVzdCk6IE9ic2VydmFibGU8Q2F0YWxvZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2xvbmVSZXF1ZXN0LmlkfS9jbG9uZWAsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IGNsb25lUmVxdWVzdCxcbiAgICB9KTtcbiAgfTtcblxuICB1cGRhdGVDYXRhbG9nJCA9IChkYXRhOiBDYXRhbG9nKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtkYXRhLmlkfWAsXG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgYm9keTogZGF0YSxcbiAgICB9KTtcbiAgfTtcblxuICByZW1vdmVDYXRhbG9nJCA9IChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtpZH1gLFxuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICB9KTtcbiAgfTtcblxuICByZXN0b3JlQ2F0YWxvZyQgPSAoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7aWR9L3Jlc3RvcmVgLFxuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgIH0pO1xuICB9O1xuXG4gIGNyZWF0ZU5ld0NhdGVnb3J5JCA9IChjYXRlZ29yeURhdGE6IE5ld0NhdGVnb3J5KTogT2JzZXJ2YWJsZTxDYXRlZ29yeT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0ZWdvcnlEYXRhLmNhdGFsb2dJZH0vY2F0ZWdvcmllc2AsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IGNhdGVnb3J5RGF0YSxcbiAgICB9KTtcbiAgfTtcblxuICB1cGRhdGVDYXRlZ29yeSQgPSAoY2F0ZWdvcnk6IENhdGVnb3J5KTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRlZ29yeS5jYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeS5pZH1gLFxuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgIGJvZHk6IGNhdGVnb3J5LFxuICAgIH0pO1xuICB9O1xuXG4gIGR1cGxpY2F0ZUNhdGVnb3J5JCA9IChjYXRhbG9nSWQ6IHN0cmluZywgY2xvbmVSZXF1ZXN0OiBDbG9uZVJlcXVlc3QpOiBPYnNlcnZhYmxlPHN0cmluZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGk8c3RyaW5nPih7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjbG9uZVJlcXVlc3QuaWR9L2Nsb25lYCxcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keTogY2xvbmVSZXF1ZXN0LFxuICAgIH0pO1xuICB9O1xuXG4gIHJlbW92ZUNhdGVnb3J5JCA9IChpZDogc3RyaW5nLCBjYXRhbG9nSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgfSk7XG4gIH07XG5cbiAgcmVzdG9yZUNhdGVnb3J5JCA9IChpZDogc3RyaW5nLCBjYXRhbG9nSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7aWR9L3Jlc3RvcmVgLFxuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgIH0pO1xuICB9O1xuXG4gIHJlbW92ZUF0dHJpYnV0ZSQgPSAoe1xuICAgIGNhdGFsb2dJZCxcbiAgICBjYXRlZ29yeUlkLFxuICAgIGRhdGEsXG4gIH06IENhdGVnb3J5UmVxdWVzdFBheWxvYWRXaXRoRGF0YTxDYXRlZ29yeUF0dHJpYnV0ZT4pOiBPYnNlcnZhYmxlPHN0cmluZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L2F0dHJpYnV0ZXMvJHtkYXRhLmlkfWAsXG4gICAgICBib2R5OiBkYXRhLFxuICAgIH0pO1xuICB9O1xuXG4gIHJlc3RvcmVBdHRyaWJ1dGUkID0gKHtcbiAgICBjYXRhbG9nSWQsXG4gICAgY2F0ZWdvcnlJZCxcbiAgICBkYXRhLFxuICB9OiBDYXRlZ29yeVJlcXVlc3RQYXlsb2FkV2l0aERhdGE8Q2F0ZWdvcnlBdHRyaWJ1dGU+KTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9hdHRyaWJ1dGVzLyR7ZGF0YS5pZH0vcmVzdG9yZWAsXG4gICAgICBtZXRob2Q6ICdwYXRjaCcsXG4gICAgfSk7XG4gIH07XG5cbiAgY3JlYXRlTmV3QXR0cmlidXRlJCA9ICh7XG4gICAgY2F0YWxvZ0lkLFxuICAgIGNhdGVnb3J5SWQsXG4gICAgZGF0YSxcbiAgfTogQ2F0ZWdvcnlSZXF1ZXN0UGF5bG9hZFdpdGhEYXRhPE5ld0NhdGVnb3J5QXR0cmlidXRlPik6IE9ic2VydmFibGU8Q2F0ZWdvcnlBdHRyaWJ1dGU+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vYXR0cmlidXRlc2AsXG4gICAgICBib2R5OiBkYXRhLFxuICAgIH0pO1xuICB9O1xuXG4gIHVwZGF0ZUF0dHJpYnV0ZSQgPSAoe1xuICAgIGNhdGFsb2dJZCxcbiAgICBjYXRlZ29yeUlkLFxuICAgIGRhdGEsXG4gIH06IENhdGVnb3J5UmVxdWVzdFBheWxvYWRXaXRoRGF0YTxDYXRlZ29yeUF0dHJpYnV0ZT4pOiBPYnNlcnZhYmxlPENhdGVnb3J5QXR0cmlidXRlPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vYXR0cmlidXRlcy8ke2RhdGEuaWR9YCxcbiAgICAgIGJvZHk6IGRhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgc2VhcmNoUHJvZHVjdENhbmRpZGF0ZXMkID0gKFxuICAgIGNhdGFsb2dJZDogc3RyaW5nLFxuICAgIGNhdGVnb3J5SWQ6IHN0cmluZyxcbiAgICBleHByZXNzaW9uOiBFeHByZXNzaW9uLFxuICAgIHNlYXJjaFBhcmFtczogUXVlcnlTZWFyY2hQYXJhbXMsXG4gICk6IE9ic2VydmFibGU8UHJvZHVjdFtdPiA9PiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoeyBmcm9tT2JqZWN0OiB7IC4uLnNlYXJjaFBhcmFtcyB9IH0pO1xuXG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L2NhbmRpZGF0ZXMvc2VhcmNoYCxcbiAgICAgIHBhcmFtcyxcbiAgICAgIGJvZHk6IGV4cHJlc3Npb24sXG4gICAgfSk7XG4gIH07XG5cbiAgYWRkUHJvZHVjdCQgPSAocHJvZHVjdDogUHJvZHVjdCwgY2F0YWxvZ0lkOiBzdHJpbmcsIGNhdGVnb3J5SWQ6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9wcm9kdWN0c2AsXG4gICAgICBib2R5OiBwcm9kdWN0LFxuICAgIH0pO1xuICB9O1xuXG4gIHJlbW92ZVByb2R1Y3QkID0gKHsgY2F0YWxvZ0lkLCBjYXRlZ29yeUlkLCBkYXRhIH06IENhdGVnb3J5UmVxdWVzdFBheWxvYWRXaXRoRGF0YTxQcm9kdWN0Pik6IE9ic2VydmFibGU8c3RyaW5nPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdkZWxldGUnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vcHJvZHVjdHMvJHtkYXRhLmlkfWAsXG4gICAgICBib2R5OiBkYXRhLFxuICAgIH0pO1xuICB9O1xufVxuIl19
@@ -0,0 +1,90 @@
1
+ import { HttpParams } from '@angular/common/http';
2
+ import { Injectable } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@veloce/core";
5
+ export class CatalogApiService {
6
+ constructor(service) {
7
+ this.service = service;
8
+ this.serviceUrl = '/product-catalogs';
9
+ }
10
+ fetchCatalogs$() {
11
+ return this.service.api({
12
+ method: 'get',
13
+ url: `${this.serviceUrl}`,
14
+ });
15
+ }
16
+ searchCatalogs$(searchParams, expression) {
17
+ const params = new HttpParams({ fromObject: searchParams });
18
+ return this.service.api({
19
+ method: 'post',
20
+ url: `${this.serviceUrl}/search`,
21
+ params,
22
+ body: expression,
23
+ });
24
+ }
25
+ getCatalog$(id) {
26
+ return this.service.api({
27
+ method: 'get',
28
+ url: `${this.serviceUrl}/${id}`,
29
+ });
30
+ }
31
+ fetchCategories$(catalogId) {
32
+ return this.service.api({
33
+ method: 'get',
34
+ url: `${this.serviceUrl}/${catalogId}/categories`,
35
+ });
36
+ }
37
+ fetchCatalogProducts$(catalogId, searchParams, context) {
38
+ const params = new HttpParams({ fromObject: searchParams });
39
+ return this.service.api({
40
+ method: 'post',
41
+ url: `${this.serviceUrl}/${catalogId}/products`,
42
+ params,
43
+ body: context,
44
+ });
45
+ }
46
+ fetchCategoryProducts$(catalogId, categoryId, searchParams, context) {
47
+ const params = new HttpParams({ fromObject: searchParams });
48
+ return this.service.api({
49
+ method: 'post',
50
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products`,
51
+ params,
52
+ body: context,
53
+ });
54
+ }
55
+ searchCategoryProducts$(catalogId, categoryId, searchParams, searchCriteria, context) {
56
+ const params = new HttpParams({ fromObject: searchParams });
57
+ return this.service.api({
58
+ method: 'post',
59
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/products/search`,
60
+ params,
61
+ body: {
62
+ configurationContext: context,
63
+ request: { searchCriteria },
64
+ },
65
+ });
66
+ }
67
+ fetchEligibleProducts$(searchParams, context) {
68
+ const params = new HttpParams({ fromObject: searchParams });
69
+ return this.service.api({
70
+ method: 'post',
71
+ url: `${this.serviceUrl}/products`,
72
+ params: params,
73
+ body: context,
74
+ });
75
+ }
76
+ fetchProducts$(searchParams) {
77
+ const params = new HttpParams({ fromObject: searchParams });
78
+ return this.service.api({
79
+ method: 'get',
80
+ url: `${this.serviceUrl}/products`,
81
+ params: params,
82
+ });
83
+ }
84
+ }
85
+ CatalogApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
86
+ CatalogApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogApiService });
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogApiService, decorators: [{
88
+ type: Injectable
89
+ }], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvY2F0YWxvZy1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBYzNDLE1BQU0sT0FBTyxpQkFBaUI7SUFHNUIsWUFBb0IsT0FBd0I7UUFBeEIsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFGM0IsZUFBVSxHQUFXLG1CQUFtQixDQUFDO0lBRVgsQ0FBQztJQUVoRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN0QixNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUU7U0FDMUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGVBQWUsQ0FBQyxZQUErQixFQUFFLFVBQXNCO1FBQ3JFLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFFNUQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN0QixNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLFNBQVM7WUFDaEMsTUFBTTtZQUNOLElBQUksRUFBRSxVQUFVO1NBQ2pCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsRUFBVTtRQUNwQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxFQUFFLEVBQUU7U0FDaEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLFNBQWlCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDdEIsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLFNBQVMsYUFBYTtTQUNsRCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQscUJBQXFCLENBQ25CLFNBQWlCLEVBQ2pCLFlBQStCLEVBQy9CLE9BQTZCO1FBRTdCLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFFNUQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN0QixNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLElBQUksU0FBUyxXQUFXO1lBQy9DLE1BQU07WUFDTixJQUFJLEVBQUUsT0FBTztTQUNkLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxzQkFBc0IsQ0FDcEIsU0FBaUIsRUFDakIsVUFBa0IsRUFDbEIsWUFBK0IsRUFDL0IsT0FBNkI7UUFFN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUU1RCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxTQUFTLGVBQWUsVUFBVSxXQUFXO1lBQ3hFLE1BQU07WUFDTixJQUFJLEVBQUUsT0FBTztTQUNkLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx1QkFBdUIsQ0FDckIsU0FBaUIsRUFDakIsVUFBa0IsRUFDbEIsWUFBK0IsRUFDL0IsY0FBOEIsRUFDOUIsT0FBNkI7UUFFN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUU1RCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxTQUFTLGVBQWUsVUFBVSxrQkFBa0I7WUFDL0UsTUFBTTtZQUNOLElBQUksRUFBRTtnQkFDSixvQkFBb0IsRUFBRSxPQUFPO2dCQUM3QixPQUFPLEVBQUUsRUFBRSxjQUFjLEVBQUU7YUFDNUI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsWUFBK0IsRUFBRSxPQUE2QjtRQUNuRixNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBRTVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDdEIsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxXQUFXO1lBQ2xDLE1BQU0sRUFBRSxNQUFNO1lBQ2QsSUFBSSxFQUFFLE9BQU87U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYyxDQUFDLFlBQStCO1FBQzVDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFFNUQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN0QixNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLFdBQVc7WUFDbEMsTUFBTSxFQUFFLE1BQU07U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDOzsrR0EzR1UsaUJBQWlCO21IQUFqQixpQkFBaUI7NEZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCYXNlSHR0cFNlcnZpY2UsXG4gIENhdGFsb2csXG4gIENhdGVnb3J5LFxuICBDb25maWd1cmF0aW9uQ29udGV4dCxcbiAgRXhwcmVzc2lvbixcbiAgUHJvZHVjdCxcbiAgU2VhcmNoQ3JpdGVyaWEsXG59IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBRdWVyeVNlYXJjaFBhcmFtcyB9IGZyb20gJy4uL3R5cGVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENhdGFsb2dBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlVXJsOiBzdHJpbmcgPSAnL3Byb2R1Y3QtY2F0YWxvZ3MnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIGZldGNoQ2F0YWxvZ3MkKCk6IE9ic2VydmFibGU8Q2F0YWxvZz4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH1gLFxuICAgIH0pO1xuICB9XG5cbiAgc2VhcmNoQ2F0YWxvZ3MkKHNlYXJjaFBhcmFtczogUXVlcnlTZWFyY2hQYXJhbXMsIGV4cHJlc3Npb246IEV4cHJlc3Npb24pOiBPYnNlcnZhYmxlPENhdGFsb2dbXT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHsgZnJvbU9iamVjdDogc2VhcmNoUGFyYW1zIH0pO1xuXG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vc2VhcmNoYCxcbiAgICAgIHBhcmFtcyxcbiAgICAgIGJvZHk6IGV4cHJlc3Npb24sXG4gICAgfSk7XG4gIH1cblxuICBnZXRDYXRhbG9nJChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxDYXRhbG9nPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2lkfWAsXG4gICAgfSk7XG4gIH1cblxuICBmZXRjaENhdGVnb3JpZXMkKGNhdGFsb2dJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxDYXRlZ29yeVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllc2AsXG4gICAgfSk7XG4gIH1cblxuICBmZXRjaENhdGFsb2dQcm9kdWN0cyQoXG4gICAgY2F0YWxvZ0lkOiBzdHJpbmcsXG4gICAgc2VhcmNoUGFyYW1zOiBRdWVyeVNlYXJjaFBhcmFtcyxcbiAgICBjb250ZXh0OiBDb25maWd1cmF0aW9uQ29udGV4dCxcbiAgKTogT2JzZXJ2YWJsZTxQcm9kdWN0W10+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHNlYXJjaFBhcmFtcyB9KTtcblxuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9wcm9kdWN0c2AsXG4gICAgICBwYXJhbXMsXG4gICAgICBib2R5OiBjb250ZXh0LFxuICAgIH0pO1xuICB9XG5cbiAgZmV0Y2hDYXRlZ29yeVByb2R1Y3RzJChcbiAgICBjYXRhbG9nSWQ6IHN0cmluZyxcbiAgICBjYXRlZ29yeUlkOiBzdHJpbmcsXG4gICAgc2VhcmNoUGFyYW1zOiBRdWVyeVNlYXJjaFBhcmFtcyxcbiAgICBjb250ZXh0OiBDb25maWd1cmF0aW9uQ29udGV4dCxcbiAgKTogT2JzZXJ2YWJsZTxQcm9kdWN0W10+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHNlYXJjaFBhcmFtcyB9KTtcblxuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vcHJvZHVjdHNgLFxuICAgICAgcGFyYW1zLFxuICAgICAgYm9keTogY29udGV4dCxcbiAgICB9KTtcbiAgfVxuXG4gIHNlYXJjaENhdGVnb3J5UHJvZHVjdHMkKFxuICAgIGNhdGFsb2dJZDogc3RyaW5nLFxuICAgIGNhdGVnb3J5SWQ6IHN0cmluZyxcbiAgICBzZWFyY2hQYXJhbXM6IFF1ZXJ5U2VhcmNoUGFyYW1zLFxuICAgIHNlYXJjaENyaXRlcmlhOiBTZWFyY2hDcml0ZXJpYSxcbiAgICBjb250ZXh0OiBDb25maWd1cmF0aW9uQ29udGV4dCxcbiAgKTogT2JzZXJ2YWJsZTxQcm9kdWN0W10+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHNlYXJjaFBhcmFtcyB9KTtcblxuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vcHJvZHVjdHMvc2VhcmNoYCxcbiAgICAgIHBhcmFtcyxcbiAgICAgIGJvZHk6IHtcbiAgICAgICAgY29uZmlndXJhdGlvbkNvbnRleHQ6IGNvbnRleHQsXG4gICAgICAgIHJlcXVlc3Q6IHsgc2VhcmNoQ3JpdGVyaWEgfSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBmZXRjaEVsaWdpYmxlUHJvZHVjdHMkKHNlYXJjaFBhcmFtczogUXVlcnlTZWFyY2hQYXJhbXMsIGNvbnRleHQ6IENvbmZpZ3VyYXRpb25Db250ZXh0KTogT2JzZXJ2YWJsZTxQcm9kdWN0W10+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHNlYXJjaFBhcmFtcyB9KTtcblxuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9L3Byb2R1Y3RzYCxcbiAgICAgIHBhcmFtczogcGFyYW1zLFxuICAgICAgYm9keTogY29udGV4dCxcbiAgICB9KTtcbiAgfVxuXG4gIGZldGNoUHJvZHVjdHMkKHNlYXJjaFBhcmFtczogUXVlcnlTZWFyY2hQYXJhbXMpOiBPYnNlcnZhYmxlPFByb2R1Y3RbXT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHsgZnJvbU9iamVjdDogc2VhcmNoUGFyYW1zIH0pO1xuXG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS9wcm9kdWN0c2AsXG4gICAgICBwYXJhbXM6IHBhcmFtcyxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -63,4 +63,4 @@ DocumentAttachmentApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "
63
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentAttachmentApiService, decorators: [{
64
64
  type: Injectable
65
65
  }], ctorParameters: function () { return [{ type: i1.BaseHttpService }, { type: i1.FileDownloadService }]; } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtYXR0YWNobWVudC1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvZG9jdW1lbnQtYXR0YWNobWVudC1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUTNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUcxQyxNQUFNLE9BQU8sNEJBQTRCO0lBR3ZDLFlBQW9CLFdBQTRCLEVBQVUsbUJBQXdDO1FBQTlFLGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtRQUFVLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFGakYsZ0JBQVcsR0FBRyxjQUFjLENBQUM7SUFFdUQsQ0FBQztJQUV0RyxjQUFjLENBQUMsYUFBOEM7UUFDM0QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQztZQUMxQixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxTQUFTO1lBQ2pDLE1BQU0sRUFBRSxNQUFNO1lBQ2QsSUFBSSxFQUFFLGFBQWE7U0FDcEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUNkLFVBQThCLEVBQzlCLElBQVcsRUFDWCxjQUF3QjtRQUV4QixNQUFNLFFBQVEsR0FBYSxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBRTFDLElBQUksSUFBSSxFQUFFO1lBQ1IsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMxQztRQUVELFFBQVEsQ0FBQyxNQUFNLENBQ2IsWUFBWSxFQUNaLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFO1lBQ3JDLElBQUksRUFBRSxrQkFBa0I7U0FDekIsQ0FBQyxDQUNILENBQUM7UUFFRixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDO1lBQzdCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDMUIsSUFBSSxFQUFFLFFBQVE7WUFDZCxNQUFNLEVBQUUsTUFBTTtZQUNkLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUM5QyxjQUFjO1NBQ2YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQVUsRUFBRSxVQUE4QjtRQUN6RCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxFQUFFO1lBQ2hDLElBQUksRUFBRSxVQUFVO1lBQ2hCLE1BQU0sRUFBRSxLQUFLO1NBQ2QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQVUsRUFBRSxpQkFBMkI7UUFDdkQsT0FBTyxJQUFJLENBQUMsV0FBVzthQUNwQixHQUFHLENBQUM7WUFDSCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLEVBQUUsT0FBTztZQUNyQyxZQUFZLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsTUFBTTtZQUN4RCxPQUFPLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsVUFBVTtTQUNqRCxDQUFDO2FBQ0QsSUFBSSxDQUNILEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNiLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDdEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUNwRDtRQUNILENBQUMsQ0FBQyxFQUNGLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQ3pHLENBQUM7SUFDTixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBVTtRQUN6QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxFQUFFO1lBQ2hDLE1BQU0sRUFBRSxRQUFRO1NBQ2pCLENBQUMsQ0FBQztJQUNMLENBQUM7OzBIQXRFVSw0QkFBNEI7OEhBQTVCLDRCQUE0Qjs0RkFBNUIsNEJBQTRCO2tCQUR4QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQmFzZUh0dHBTZXJ2aWNlLFxuICBGaWxlRG93bmxvYWRTZXJ2aWNlLFxuICBUZW1wbGF0ZUF0dGFjaG1lbnQsXG4gIFRlbXBsYXRlQXR0YWNobWVudFNlYXJjaFJlcXVlc3QsXG59IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERvY3VtZW50QXR0YWNobWVudEFwaVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IFNFUlZJQ0VfVVJMID0gJy9hdHRhY2htZW50cyc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlLCBwcml2YXRlIGZpbGVEb3dubG9hZFNlcnZpY2U6IEZpbGVEb3dubG9hZFNlcnZpY2UpIHt9XG5cbiAgZ2V0QXR0YWNobWVudHMoc2VhcmNoUmVxdWVzdDogVGVtcGxhdGVBdHRhY2htZW50U2VhcmNoUmVxdWVzdCk6IE9ic2VydmFibGU8VGVtcGxhdGVBdHRhY2htZW50W10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS9zZWFyY2hgLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBib2R5OiBzZWFyY2hSZXF1ZXN0LFxuICAgIH0pO1xuICB9XG5cbiAgY3JlYXRlQXR0YWNobWVudChcbiAgICBhdHRhY2htZW50OiBUZW1wbGF0ZUF0dGFjaG1lbnQsXG4gICAgZmlsZT86IEZpbGUsXG4gICAgcmVwb3J0UHJvZ3Jlc3M/OiBib29sZWFuLFxuICApOiBPYnNlcnZhYmxlPFRlbXBsYXRlQXR0YWNobWVudD4ge1xuICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgaWYgKGZpbGUpIHtcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIGZpbGUsIGZpbGUubmFtZSk7XG4gICAgfVxuXG4gICAgZm9ybURhdGEuYXBwZW5kKFxuICAgICAgJ2F0dGFjaG1lbnQnLFxuICAgICAgbmV3IEJsb2IoW0pTT04uc3RyaW5naWZ5KGF0dGFjaG1lbnQpXSwge1xuICAgICAgICB0eXBlOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UudXBsb2FkKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH1gLFxuICAgICAgYm9keTogZm9ybURhdGEsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIG9ic2VydmU6IHJlcG9ydFByb2dyZXNzID8gJ2V2ZW50cycgOiB1bmRlZmluZWQsXG4gICAgICByZXBvcnRQcm9ncmVzcyxcbiAgICB9KTtcbiAgfVxuXG4gIHVwZGF0ZUF0dGFjaG1lbnQoaWQ6IHN0cmluZywgYXR0YWNobWVudDogVGVtcGxhdGVBdHRhY2htZW50KTogT2JzZXJ2YWJsZTxUZW1wbGF0ZUF0dGFjaG1lbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfWAsXG4gICAgICBib2R5OiBhdHRhY2htZW50LFxuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICB9KTtcbiAgfVxuXG4gIGdldEF0dGFjaG1lbnRGaWxlKGlkOiBzdHJpbmcsIGlzUHJldmVudERvd25sb2FkPzogYm9vbGVhbik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9L2ZpbGVgLFxuICAgICAgICByZXNwb25zZVR5cGU6IGlzUHJldmVudERvd25sb2FkID8gJ2FycmF5YnVmZmVyJyA6ICdibG9iJyxcbiAgICAgICAgb2JzZXJ2ZTogaXNQcmV2ZW50RG93bmxvYWQgPyAnYm9keScgOiAncmVzcG9uc2UnLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAocmVzcG9uc2UgPT4ge1xuICAgICAgICAgIGlmICghaXNQcmV2ZW50RG93bmxvYWQpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkU2VydmljZS5wcm9jZXNzRG93bmxvYWQocmVzcG9uc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIG1hcChyZXNwb25zZSA9PiAoaXNQcmV2ZW50RG93bmxvYWQgPyBuZXcgQmxvYihbcmVzcG9uc2UuYm9keSB8fCByZXNwb25zZV0pIDogcmVzcG9uc2UuYm9keSB8fCByZXNwb25zZSkpLFxuICAgICAgKTtcbiAgfVxuXG4gIHJlbW92ZUF0dGFjaG1lbnQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtYXR0YWNobWVudC1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvZG9jdW1lbnQtYXR0YWNobWVudC1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUcxQyxNQUFNLE9BQU8sNEJBQTRCO0lBR3ZDLFlBQW9CLFdBQTRCLEVBQVUsbUJBQXdDO1FBQTlFLGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtRQUFVLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFGakYsZ0JBQVcsR0FBRyxjQUFjLENBQUM7SUFFdUQsQ0FBQztJQUV0RyxjQUFjLENBQUMsYUFBOEM7UUFDM0QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQztZQUMxQixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxTQUFTO1lBQ2pDLE1BQU0sRUFBRSxNQUFNO1lBQ2QsSUFBSSxFQUFFLGFBQWE7U0FDcEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLFVBQXNCLEVBQUUsSUFBVyxFQUFFLGNBQXdCO1FBQzVFLE1BQU0sUUFBUSxHQUFhLElBQUksUUFBUSxFQUFFLENBQUM7UUFFMUMsSUFBSSxJQUFJLEVBQUU7WUFDUixRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzFDO1FBRUQsUUFBUSxDQUFDLE1BQU0sQ0FDYixZQUFZLEVBQ1osSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUU7WUFDckMsSUFBSSxFQUFFLGtCQUFrQjtTQUN6QixDQUFDLENBQ0gsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7WUFDN0IsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUMxQixJQUFJLEVBQUUsUUFBUTtZQUNkLE1BQU0sRUFBRSxNQUFNO1lBQ2QsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQzlDLGNBQWM7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBVSxFQUFFLFVBQXNCO1FBQ2pELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDMUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUU7WUFDaEMsSUFBSSxFQUFFLFVBQVU7WUFDaEIsTUFBTSxFQUFFLEtBQUs7U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBVSxFQUFFLGlCQUEyQjtRQUN2RCxPQUFPLElBQUksQ0FBQyxXQUFXO2FBQ3BCLEdBQUcsQ0FBQztZQUNILEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxPQUFPO1lBQ3JDLFlBQVksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxNQUFNO1lBQ3hELE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxVQUFVO1NBQ2pELENBQUM7YUFDRCxJQUFJLENBQ0gsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2IsSUFBSSxDQUFDLGlCQUFpQixFQUFFO2dCQUN0QixJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3BEO1FBQ0gsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksUUFBUSxDQUFDLENBQUMsQ0FDekcsQ0FBQztJQUNOLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFVO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDMUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUU7WUFDaEMsTUFBTSxFQUFFLFFBQVE7U0FDakIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7MEhBbEVVLDRCQUE0Qjs4SEFBNUIsNEJBQTRCOzRGQUE1Qiw0QkFBNEI7a0JBRHhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdHRhY2htZW50LCBCYXNlSHR0cFNlcnZpY2UsIEZpbGVEb3dubG9hZFNlcnZpY2UsIFRlbXBsYXRlQXR0YWNobWVudFNlYXJjaFJlcXVlc3QgfSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEb2N1bWVudEF0dGFjaG1lbnRBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBTRVJWSUNFX1VSTCA9ICcvYXR0YWNobWVudHMnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cFNlcnZpY2U6IEJhc2VIdHRwU2VydmljZSwgcHJpdmF0ZSBmaWxlRG93bmxvYWRTZXJ2aWNlOiBGaWxlRG93bmxvYWRTZXJ2aWNlKSB7fVxuXG4gIGdldEF0dGFjaG1lbnRzKHNlYXJjaFJlcXVlc3Q6IFRlbXBsYXRlQXR0YWNobWVudFNlYXJjaFJlcXVlc3QpOiBPYnNlcnZhYmxlPEF0dGFjaG1lbnRbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9L3NlYXJjaGAsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IHNlYXJjaFJlcXVlc3QsXG4gICAgfSk7XG4gIH1cblxuICBjcmVhdGVBdHRhY2htZW50KGF0dGFjaG1lbnQ6IEF0dGFjaG1lbnQsIGZpbGU/OiBGaWxlLCByZXBvcnRQcm9ncmVzcz86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPEF0dGFjaG1lbnQ+IHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcblxuICAgIGlmIChmaWxlKSB7XG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBmaWxlLCBmaWxlLm5hbWUpO1xuICAgIH1cblxuICAgIGZvcm1EYXRhLmFwcGVuZChcbiAgICAgICdhdHRhY2htZW50JyxcbiAgICAgIG5ldyBCbG9iKFtKU09OLnN0cmluZ2lmeShhdHRhY2htZW50KV0sIHtcbiAgICAgICAgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLnVwbG9hZCh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9YCxcbiAgICAgIGJvZHk6IGZvcm1EYXRhLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBvYnNlcnZlOiByZXBvcnRQcm9ncmVzcyA/ICdldmVudHMnIDogdW5kZWZpbmVkLFxuICAgICAgcmVwb3J0UHJvZ3Jlc3MsXG4gICAgfSk7XG4gIH1cblxuICB1cGRhdGVBdHRhY2htZW50KGlkOiBzdHJpbmcsIGF0dGFjaG1lbnQ6IEF0dGFjaG1lbnQpOiBPYnNlcnZhYmxlPEF0dGFjaG1lbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfWAsXG4gICAgICBib2R5OiBhdHRhY2htZW50LFxuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICB9KTtcbiAgfVxuXG4gIGdldEF0dGFjaG1lbnRGaWxlKGlkOiBzdHJpbmcsIGlzUHJldmVudERvd25sb2FkPzogYm9vbGVhbik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9L2ZpbGVgLFxuICAgICAgICByZXNwb25zZVR5cGU6IGlzUHJldmVudERvd25sb2FkID8gJ2FycmF5YnVmZmVyJyA6ICdibG9iJyxcbiAgICAgICAgb2JzZXJ2ZTogaXNQcmV2ZW50RG93bmxvYWQgPyAnYm9keScgOiAncmVzcG9uc2UnLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAocmVzcG9uc2UgPT4ge1xuICAgICAgICAgIGlmICghaXNQcmV2ZW50RG93bmxvYWQpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkU2VydmljZS5wcm9jZXNzRG93bmxvYWQocmVzcG9uc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIG1hcChyZXNwb25zZSA9PiAoaXNQcmV2ZW50RG93bmxvYWQgPyBuZXcgQmxvYihbcmVzcG9uc2UuYm9keSB8fCByZXNwb25zZV0pIDogcmVzcG9uc2UuYm9keSB8fCByZXNwb25zZSkpLFxuICAgICAgKTtcbiAgfVxuXG4gIHJlbW92ZUF0dGFjaG1lbnQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -276,4 +276,4 @@ DocumentTemplatesApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "1
276
276
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentTemplatesApiService, decorators: [{
277
277
  type: Injectable
278
278
  }], ctorParameters: function () { return [{ type: i1.BaseHttpService }, { type: i2.SalesforceApiService }, { type: i1.FileDownloadService }, { type: i3.DocumentAttachmentApiService }, { type: i4.QuoteApiService }, { type: i5.HttpClient }]; } });
279
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdGVtcGxhdGVzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi9zZXJ2aWNlcy9kb2N1bWVudC10ZW1wbGF0ZXMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUlMLGFBQWEsRUFFYix3QkFBd0IsRUFDeEIsVUFBVSxFQUVWLFdBQVcsR0FLWixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQztBQUNsQyxPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBS3JFLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQztBQVV2QixNQUFNLE9BQU8sMkJBQTJCO0lBS3RDLFlBQ1UsT0FBd0IsRUFDeEIsb0JBQTBDLEVBQzFDLG1CQUF3QyxFQUN4Qyx5QkFBdUQsRUFDdkQsZUFBZ0MsRUFDaEMsSUFBZ0I7UUFMaEIsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFDeEIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBOEI7UUFDdkQsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLFNBQUksR0FBSixJQUFJLENBQVk7UUFWVCxnQkFBVyxHQUFHLFlBQVksQ0FBQztRQUMzQix5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QUFDLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUM5QyxDQUFDO0lBQ0osQ0FBQzs7eUhBclhVLDJCQUEyQjs2SEFBM0IsMkJBQTJCOzRGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXJyZW5jeVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFueVdpdGhQcm9wZXJ0aWVzLFxuICBCYXNlSHR0cFNlcnZpY2UsXG4gIERvY3VtZW50VGVtcGxhdGUsXG4gIERvY3hUZW1wbGF0ZXIsXG4gIEZpbGVEb3dubG9hZFNlcnZpY2UsXG4gIGlzTGVnYWN5RG9jdW1lbnRUZW1wbGF0ZSxcbiAgUXVvdGVEcmFmdCxcbiAgU2VhcmNoUmVxdWVzdCxcbiAgU3RyaW5nVXRpbHMsXG4gIFRlbXBsYXRlQXR0YWNobWVudCxcbiAgVGVtcGxhdGVBdHRhY2htZW50U2VhcmNoUmVxdWVzdCxcbiAgVGVtcGxhdGVRdWVyeSxcbiAgVmxXaW5kb3csXG59IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgKiBhcyBtb21lbnRfIGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBmb3JrSm9pbiwgT2JzZXJ2YWJsZSwgb2YsIHppcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVmYXVsdElmRW1wdHksIG1hcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEb2N1bWVudEF0dGFjaG1lbnRBcGlTZXJ2aWNlIH0gZnJvbSAnLi9kb2N1bWVudC1hdHRhY2htZW50LWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IFF1b3RlQXBpU2VydmljZSB9IGZyb20gJy4vcXVvdGUtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2FsZXNmb3JjZUFwaVNlcnZpY2UgfSBmcm9tICcuL3NhbGVzZm9yY2UtYXBpLnNlcnZpY2UnO1xuXG5jb25zdCBtb21lbnQgPSBtb21lbnRfO1xuZGVjbGFyZSBjb25zdCB3aW5kb3c6IFZsV2luZG93O1xuXG5leHBvcnQgaW50ZXJmYWNlIERvY3VtZW50R2VuZXJhdGlvblBhcmFtcyB7XG4gIGF0dGFjaFRvUXVvdGU/OiBib29sZWFuO1xuICBkb2N1bWVudEZvcm1hdD86ICdET0NYJztcbiAgc2hvdWxkUHJldmVudERvd25sb2FkPzogYm9vbGVhbjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERvY3VtZW50VGVtcGxhdGVzQXBpU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgU0VSVklDRV9VUkwgPSAnL3RlbXBsYXRlcyc7XG4gIHByaXZhdGUgcmVhZG9ubHkgRE9DX0dFTl9VUkxfRkFMTEJBQ0sgPSAnaHR0cHM6Ly9kZXYtZHAxLnZlbG9jcHEuY29tL2RvY2dlbic7XG4gIHByaXZhdGUgcmVhZG9ubHkgRE9DX0dFTl9VUkw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBCYXNlSHR0cFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzYWxlc2ZvcmNlQXBpU2VydmljZTogU2FsZXNmb3JjZUFwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBmaWxlRG93bmxvYWRTZXJ2aWNlOiBGaWxlRG93bmxvYWRTZXJ2aWNlLFxuICAgIHByaXZhdGUgZG9jdW1lbnRBdHRhY2htZW50U2VydmljZTogRG9jdW1lbnRBdHRhY2htZW50QXBpU2VydmljZSxcbiAgICBwcml2YXRlIHF1b3RlQXBpU2VydmljZTogUXVvdGVBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgKSB7XG4gICAgaWYgKHdpbmRvdy5WRUxPX0RPQ0dFTl9BUEkpIHtcbiAgICAgIHRoaXMuRE9DX0dFTl9VUkwgPSB3aW5kb3cuVkVMT19ET0NHRU5fQVBJO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLmxvZyhgd2luZG93LlZFTE9fRE9DR0VOX0FQSSBub3Qgc2V0LCB3aWxsIHVzZSBmYWxsYmFjayBcIiR7dGhpcy5ET0NfR0VOX1VSTF9GQUxMQkFDS31cImApO1xuICAgICAgdGhpcy5ET0NfR0VOX1VSTCA9IHRoaXMuRE9DX0dFTl9VUkxfRkFMTEJBQ0s7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFRlbXBsYXRlcyh0YWc/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPERvY3VtZW50VGVtcGxhdGVbXT4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH1gLFxuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHBhcmFtczoge1xuICAgICAgICAuLi4odGFnICYmIHsgdGFnIH0pLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUZW1wbGF0ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxEb2N1bWVudFRlbXBsYXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdnZXQnLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHVwc2VydFRlbXBsYXRlKFxuICAgIHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlLFxuICAgIGZpbGU/OiBGaWxlLFxuICAgIHJlcG9ydFByb2dyZXNzPzogYm9vbGVhbixcbiAgKTogT2JzZXJ2YWJsZTxEb2N1bWVudFRlbXBsYXRlPiB7XG4gICAgY29uc3QgZm9ybURhdGE6IEZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG5cbiAgICBpZiAoZmlsZSkge1xuICAgICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlJywgZmlsZSwgZmlsZS5uYW1lKTtcbiAgICB9XG4gICAgZm9ybURhdGEuYXBwZW5kKFxuICAgICAgJ3RlbXBsYXRlJyxcbiAgICAgIG5ldyBCbG9iKFtKU09OLnN0cmluZ2lmeSh0ZW1wbGF0ZSldLCB7XG4gICAgICAgIHR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICBsZXQgdXJsID0gYCR7dGhpcy5TRVJWSUNFX1VSTH1gO1xuICAgIGlmICh0ZW1wbGF0ZS5pZCkge1xuICAgICAgdXJsICs9IGAvJHt0ZW1wbGF0ZS5pZH1gO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnNlcnZpY2UudXBsb2FkKHtcbiAgICAgIHVybCxcbiAgICAgIGJvZHk6IGZvcm1EYXRhLFxuICAgICAgbWV0aG9kOiB0ZW1wbGF0ZS5pZCA/ICdwdXQnIDogJ3Bvc3QnLFxuICAgICAgcmVwb3J0UHJvZ3Jlc3MsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlVGVtcGxhdGUoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RG9jdW1lbnRUZW1wbGF0ZT4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH1gLFxuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZXN0b3JlVGVtcGxhdGUoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH0vcmVzdG9yZWAsXG4gICAgICBtZXRob2Q6ICdwYXRjaCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY2xvbmVUZW1wbGF0ZShcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BlcnRpZXNUb092ZXJyaWRlOiBQYXJ0aWFsPERvY3VtZW50VGVtcGxhdGU+ID0ge30sXG4gICk6IE9ic2VydmFibGU8eyBjbG9uZWRSZWNvcmRJZDogc3RyaW5nIH0+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9L2Nsb25lLyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keToge1xuICAgICAgICBpZCxcbiAgICAgICAgcHJvcGVydGllc1RvT3ZlcnJpZGUsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldFRlbXBsYXRlRmlsZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxBcnJheUJ1ZmZlcj4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9L2ZpbGVgLFxuICAgICAgcmVzcG9uc2VUeXBlOiAnYXJyYXlidWZmZXInLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGRvd25sb2FkVGVtcGxhdGVGaWxlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlXG4gICAgICAuYXBpKHtcbiAgICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfS9maWxlYCxcbiAgICAgICAgcmVzcG9uc2VUeXBlOiAnYmxvYicsXG4gICAgICAgIG9ic2VydmU6ICdyZXNwb25zZScsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcChyZXNwb25zZSA9PiB7XG4gICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRTZXJ2aWNlLnByb2Nlc3NEb3dubG9hZChyZXNwb25zZSk7XG4gICAgICAgIH0pLFxuICAgICAgICBtYXAocmVzcG9uc2UgPT4gcmVzcG9uc2UuYm9keSB8fCByZXNwb25zZSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIG1lcmdlRG9jdW1lbnRzKGRvY3VtZW50OiBCbG9iLCBhdHRhY2htZW50czogQXJyYXlCdWZmZXJbXSk6IE9ic2VydmFibGU8QXJyYXlCdWZmZXI+IHtcbiAgICBjb25zdCBib2R5ID0gbmV3IEZvcm1EYXRhKCk7XG5cbiAgICBhdHRhY2htZW50cy5mb3JFYWNoKGF0dGFjaG1lbnQgPT4ge1xuICAgICAgYm9keS5hcHBlbmQoJ2F0dGFjaG1lbnRzJywgbmV3IEJsb2IoW2F0dGFjaG1lbnRdKSk7XG4gICAgfSk7XG5cbiAgICBib2R5LmFwcGVuZCgnb3JkZXJmb3JtJywgZG9jdW1lbnQpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuRE9DX0dFTl9VUkx9L2RvY3VtZW50cy9tZXJnZWAsIGJvZHksIHtcbiAgICAgIHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRBdHRhY2htZW50cyhzZWFyY2hSZXF1ZXN0OiBUZW1wbGF0ZUF0dGFjaG1lbnRTZWFyY2hSZXF1ZXN0KTogT2JzZXJ2YWJsZTxUZW1wbGF0ZUF0dGFjaG1lbnRbXT4ge1xuICAgIHJldHVybiB0aGlzLmRvY3VtZW50QXR0YWNobWVudFNlcnZpY2UuZ2V0QXR0YWNobWVudHMoc2VhcmNoUmVxdWVzdCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QXR0YWNobWVudEZpbGUoaWQ6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5nZXRBdHRhY2htZW50RmlsZShpZCk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlQXR0YWNobWVudChcbiAgICBhdHRhY2htZW50OiBUZW1wbGF0ZUF0dGFjaG1lbnQsXG4gICAgZmlsZT86IEZpbGUsXG4gICAgcmVwb3J0UHJvZ3Jlc3M/OiBib29sZWFuLFxuICApOiBPYnNlcnZhYmxlPFRlbXBsYXRlQXR0YWNobWVudD4ge1xuICAgIHJldHVybiB0aGlzLmRvY3VtZW50QXR0YWNobWVudFNlcnZpY2UuY3JlYXRlQXR0YWNobWVudChhdHRhY2htZW50LCBmaWxlLCByZXBvcnRQcm9ncmVzcyk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlQXR0YWNobWVudChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5yZW1vdmVBdHRhY2htZW50KGlkKTtcbiAgfVxuXG4gIHB1YmxpYyBnZW5lcmF0ZURvY3VtZW50RGF0YShcbiAgICB0ZW1wbGF0ZTogRG9jdW1lbnRUZW1wbGF0ZSxcbiAgICBvYmplY3Q6IGFueSxcbiAgICBwYXJhbXM6IERvY3VtZW50R2VuZXJhdGlvblBhcmFtcyA9IHt9LFxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmIChpc0xlZ2FjeURvY3VtZW50VGVtcGxhdGUodGVtcGxhdGUpKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZW5lcmF0ZURvY3VtZW50RGF0YUxlZ2FjeSh0ZW1wbGF0ZSwgb2JqZWN0LCBwYXJhbXMpO1xuICAgIH1cblxuICAgIGNvbnN0IHRlbXBsYXRlUHJvcGVydGllcyA9IHRlbXBsYXRlLnByb3BlcnRpZXM/LnJlZHVjZShcbiAgICAgIChhY2MsIHsgbmFtZSwgdmFsdWUgfSkgPT4gKHsgLi4uYWNjLCBbbmFtZV06IHRoaXMubWFwQm9vbGVhbklmQXBsaWNhYmxlKHZhbHVlKSB9KSxcbiAgICAgIHt9LFxuICAgICk7XG5cbiAgICAvKlxuICAgICAgUmVzb2x2ZSBxdW90ZSBhbmQgdGVtcGxhdGUgcHJvcGVydGllcyBmb3Igbm93XG4gICAgICBXaGVuIHByb2NlZHVyZXMgYXJlIHJlYWR5LCB3aGV5IHdpbGwgcmVwbGFjZSB0ZW1wbGF0ZSBzY3JpcHRzLlxuXG4gICAgICBUT0RPOiBydW4gcHJvY2VkdXJlIHRvIHJlc29sdmUgZG9jdW1lbnQgZGF0YVxuICAgICovXG4gICAgcmV0dXJuIG9mKHtcbiAgICAgIC4uLih0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyA/IG9iamVjdCA6IHsgb2JqZWN0IH0pLFxuICAgICAgLi4udGVtcGxhdGVQcm9wZXJ0aWVzLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdlbmVyYXRlRG9jdW1lbnQoXG4gICAgdGVtcGxhdGU6IERvY3VtZW50VGVtcGxhdGUsXG4gICAgb2JqZWN0OiBhbnksXG4gICAgcGFyYW1zOiBEb2N1bWVudEdlbmVyYXRpb25QYXJhbXMgPSB7fSxcbiAgKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgY29uc3QgZG9jdW1lbnREYXRhJCA9IHRoaXMuZ2VuZXJhdGVEb2N1bWVudERhdGEodGVtcGxhdGUsIG9iamVjdCwgeyAuLi5wYXJhbXMsIHNob3VsZFByZXZlbnREb3dubG9hZDogdHJ1ZSB9KTtcblxuICAgIHJldHVybiB6aXAodGhpcy5nZXRUZW1wbGF0ZUZpbGUodGVtcGxhdGUuaWQpLCBkb2N1bWVudERhdGEkLCB0aGlzLnJlc29sdmVBdHRhY2htZW50cyQodGVtcGxhdGUpKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChbdGVtcGxhdGVGaWxlLCBkYXRhLCBhdHRhY2htZW50c10pID0+IHtcbiAgICAgICAgY29uc3QgZG9jdW1lbnQgPSBEb2N4VGVtcGxhdGVyLmdlbmVyYXRlKHRlbXBsYXRlRmlsZSwgZGF0YSk7XG4gICAgICAgIGNvbnN0IHByb3BlcnRpZXM6IF8uRGljdGlvbmFyeTxzdHJpbmc+ID0gb2JqZWN0Py5jb250ZXh0Py5wcm9wZXJ0aWVzID8/IG9iamVjdD8ucHJvcGVydGllcyA/PyB7fTtcbiAgICAgICAgY29uc3QgZG9jdW1lbnROYW1lID0gcHJvcGVydGllcy5OYW1lIHx8IHRlbXBsYXRlLm5hbWU7XG5cbiAgICAgICAgY29uc3QgZG9jdW1lbnRGb3JtYXQgPVxuICAgICAgICAgIHBhcmFtcy5kb2N1bWVudEZvcm1hdCA/PyB0ZW1wbGF0ZS5wcm9wZXJ0aWVzPy5maW5kKHAgPT4gcC5uYW1lID09PSAnZG9jdW1lbnRGb3JtYXQnKT8udmFsdWU7XG4gICAgICAgIGlmIChkb2N1bWVudEZvcm1hdCA9PT0gJ0RPQ1gnKSB7XG4gICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRTZXJ2aWNlLnByb2Nlc3NEb3dubG9hZChkb2N1bWVudCwgZG9jdW1lbnROYW1lKTtcblxuICAgICAgICAgIHJldHVybiBvZihkb2N1bWVudCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5tZXJnZURvY3VtZW50cyhkb2N1bWVudCwgYXR0YWNobWVudHMpLnBpcGUoXG4gICAgICAgICAgc3dpdGNoTWFwKHBkZiA9PiB7XG4gICAgICAgICAgICBpZiAocGFyYW1zLmF0dGFjaFRvUXVvdGUgJiYgUXVvdGVEcmFmdC5pc1F1b3RlKG9iamVjdCkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucXVvdGVBcGlTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLmF0dGFjaERvY3VtZW50KG9iamVjdC5xdW90ZUlkLCBgJHtkb2N1bWVudE5hbWV9LnBkZmAsIHBkZilcbiAgICAgICAgICAgICAgICAucGlwZShtYXAoKCkgPT4gcGRmKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBvZihwZGYpO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIG1hcChwZGYgPT4ge1xuICAgICAgICAgICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtwZGZdKTtcblxuICAgICAgICAgICAgaWYgKCFwYXJhbXMuc2hvdWxkUHJldmVudERvd25sb2FkKSB7XG4gICAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkU2VydmljZS5wcm9jZXNzRG93bmxvYWQoYmxvYiwgYCR7ZG9jdW1lbnROYW1lfS5wZGZgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGJsb2I7XG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZURvY3VtZW50RGF0YUxlZ2FjeShcbiAgICB0ZW1wbGF0ZTogRG9jdW1lbnRUZW1wbGF0ZSxcbiAgICBvYmplY3Q6IGFueSxcbiAgICBwYXJhbXM6IERvY3VtZW50R2VuZXJhdGlvblBhcmFtcyA9IHt9LFxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNob3VsZFByZXZlbnREb3dubG9hZCA9IHBhcmFtcy5zaG91bGRQcmV2ZW50RG93bmxvYWQ7XG4gICAgY29uc3QgYWxsUXVlcmllczogVGVtcGxhdGVRdWVyeVtdID0gWy4uLih0ZW1wbGF0ZT8ucXVlcmllcyA/PyBbXSldO1xuICAgIGNvbnN0IHByb3BlcnRpZXM6IF8uRGljdGlvbmFyeTxzdHJpbmc+ID0gb2JqZWN0Py5jb250ZXh0Py5wcm9wZXJ0aWVzID8/IG9iamVjdD8ucHJvcGVydGllcyA/PyB7fTtcbiAgICBjb25zdCBhY2NvdW50SWQgPSBwcm9wZXJ0aWVzPy5BY2NvdW50SWQ7XG4gICAgY29uc3QgdXNlcklkID0gcHJvcGVydGllcz8uVXNlcklkO1xuXG4gICAgaWYgKGFjY291bnRJZCkge1xuICAgICAgYWxsUXVlcmllcy5wdXNoKHtcbiAgICAgICAgcXVlcnlOYW1lOiAnUXVvdGVBY2NvdW50UXVlcnknLFxuICAgICAgICBvYmplY3ROYW1lOiAnQWNjb3VudCcsXG4gICAgICAgIHJlc3VsdE9iamVjdE5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgc3RhdGVtZW50OiBgSWQgPScke2FjY291bnRJZH0nYCxcbiAgICAgICAgZmllbGRzOiBbXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodXNlcklkKSB7XG4gICAgICBhbGxRdWVyaWVzLnB1c2goe1xuICAgICAgICBxdWVyeU5hbWU6ICdRdW90ZVVzZXJRdWVyeScsXG4gICAgICAgIG9iamVjdE5hbWU6ICdVc2VyJyxcbiAgICAgICAgcmVzdWx0T2JqZWN0TmFtZTogJ2FnZW50JyxcbiAgICAgICAgc3RhdGVtZW50OiBgSWQgPScke3VzZXJJZH0nYCxcbiAgICAgICAgZmllbGRzOiBbXSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHF1ZXJpZXMgPSBhbGxRdWVyaWVzLm1hcChxdWVyeSA9PiB0aGlzLnF1ZXJ5T2JqZWN0KHF1ZXJ5LCB7IHByb3BlcnRpZXMgfSkpIHx8IFtdO1xuXG4gICAgcmV0dXJuIGZvcmtKb2luKFsuLi5xdWVyaWVzXSkucGlwZShcbiAgICAgIGRlZmF1bHRJZkVtcHR5KFtdIGFzIGFueVtdKSxcbiAgICAgIG1hcChyZXN1bHRzID0+IHtcbiAgICAgICAgY29uc3QgcXVlcmllc1Jlc3VsdCA9IF8uY2hhaW4ocmVzdWx0cylcbiAgICAgICAgICAucmVkdWNlKChhY2MsIHIpID0+IHtcbiAgICAgICAgICAgIGlmIChyKSB7XG4gICAgICAgICAgICAgIHJldHVybiB7IC4uLmFjYywgLi4uciB9O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICAgIH0sIHt9KVxuICAgICAgICAgIC52YWx1ZSgpO1xuXG4gICAgICAgIGNvbnN0IHRlbXBsYXRlUHJvcGVydGllcyA9ICh0ZW1wbGF0ZT8ucHJvcGVydGllcyB8fCBbXSkucmVkdWNlKCh0cnVuaywgeyBuYW1lLCB2YWx1ZSB9KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnRydW5rLFxuICAgICAgICAgICAgW25hbWUgYXMgc3RyaW5nXTogdGhpcy5tYXBCb29sZWFuSWZBcGxpY2FibGUodmFsdWUgYXMgYW55KSxcbiAgICAgICAgICB9O1xuICAgICAgICB9LCB7fSk7XG5cbiAgICAgICAgY29uc3QgZGF0YSA9IHtcbiAgICAgICAgICAuLi4odHlwZW9mIG9iamVjdCA9PT0gJ29iamVjdCcgPyBvYmplY3QgOiB7IG9iamVjdCB9KSxcbiAgICAgICAgICAuLi5xdWVyaWVzUmVzdWx0LFxuICAgICAgICAgIC4uLnRlbXBsYXRlUHJvcGVydGllcyxcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAodGVtcGxhdGUuc2NyaXB0ICYmIHRlbXBsYXRlLnNjcmlwdC50cmltKCkubGVuZ3RoKSB7XG4gICAgICAgICAgY29uc3QgY3VycmVuY3lGb3JtYXQgPSB0ZW1wbGF0ZS5wcm9wZXJ0aWVzPy5maW5kKCh7IG5hbWUgfSkgPT4gbmFtZSA9PT0gJ2N1cnJlbmN5Rm9ybWF0Jyk/LnZhbHVlIHx8ICcxLjItMic7XG4gICAgICAgICAgY29uc3QgZGF0ZUZvcm1hdCA9IHRlbXBsYXRlLnByb3BlcnRpZXM/LmZpbmQoKHsgbmFtZSB9KSA9PiBuYW1lID09PSAnZGF0ZUZvcm1hdCcpPy52YWx1ZSB8fCAnRC9NTU0vWVlZWSc7XG4gICAgICAgICAgY29uc3QgZm9ybWF0RGF0ZSA9ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgPyBtb21lbnQodmFsdWUpLmZvcm1hdChkYXRlRm9ybWF0KSA6IHZhbHVlO1xuICAgICAgICAgIH07XG4gICAgICAgICAgY29uc3QgdHJhbnNmb3JtID0gbmV3IEZ1bmN0aW9uKGByZXR1cm4gJHt0ZW1wbGF0ZS5zY3JpcHR9YCkoKTtcbiAgICAgICAgICBjb25zdCB0cmFuc2Zvcm1lZERhdGEgPSB0cmFuc2Zvcm0oe1xuICAgICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAgIHV0aWxzOiB7XG4gICAgICAgICAgICAgIGxvZGFzaDogXyxcbiAgICAgICAgICAgICAgY3VycmVuY3k6ICh2YWx1ZTogYW55KSA9PiBuZXcgQ3VycmVuY3lQaXBlKCdlbi1VUycpLnRyYW5zZm9ybSh2YWx1ZSwgJ1VTRCcsICdzeW1ib2wnLCBjdXJyZW5jeUZvcm1hdCksXG4gICAgICAgICAgICAgIGRhdGU6IGZvcm1hdERhdGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgVG9EYXk6IGZvcm1hdERhdGUoRGF0ZS5ub3coKSBhcyBhbnkpLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGlmICghc2hvdWxkUHJldmVudERvd25sb2FkKSB7XG4gICAgICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW0pTT04uc3RyaW5naWZ5KHRyYW5zZm9ybWVkRGF0YSldKTtcbiAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkU2VydmljZS5wcm9jZXNzRG93bmxvYWQoYmxvYiwgJ2RhdGEuanNvbicpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gdHJhbnNmb3JtZWREYXRhO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZUF0dGFjaG1lbnRzJCh0ZW1wbGF0ZTogRG9jdW1lbnRUZW1wbGF0ZSk6IE9ic2VydmFibGU8QXJyYXlCdWZmZXJbXT4ge1xuICAgIGNvbnN0IGF0dGFjaG1lbnRJZHMgPSAodGVtcGxhdGUuYXR0YWNobWVudHM/Lm1hcCgoeyBpZCB9KSA9PiBpZCkuZmlsdGVyKEJvb2xlYW4pIGFzIHN0cmluZ1tdKSA/PyBbXTtcblxuICAgIGlmICghYXR0YWNobWVudElkcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBvZihbXSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcmtKb2luKGF0dGFjaG1lbnRJZHMubWFwKGlkID0+IHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5nZXRBdHRhY2htZW50RmlsZShpZCwgdHJ1ZSkpKTtcbiAgfVxuXG4gIHByaXZhdGUgbWFwU2ZRdWVyeVJlc3VsdCA9IDxUPihsaW1pdDogbnVtYmVyKSA9PlxuICAgIG1hcCgocmVjb3JkczogVFtdKSA9PiB7XG4gICAgICBpZiAoIXJlY29yZHMubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiB7IF9yZXN1bHQ6ICdObyBSZWNvcmRzIEZvdW5kJyB9O1xuICAgICAgfVxuXG4gICAgICBpZiAobGltaXQgPT09IDEpIHtcbiAgICAgICAgcmV0dXJuIHJlY29yZHNbMF07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZWNvcmRzO1xuICAgIH0pO1xuXG4gIHByaXZhdGUgbWFwQm9vbGVhbklmQXBsaWNhYmxlID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBpZiAodmFsdWUgPT09ICd0cnVlJykge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlID09PSAnZmFsc2UnKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9O1xuXG4gIHByaXZhdGUgcXVlcnlPYmplY3QoXG4gICAgeyBvYmplY3ROYW1lLCByZXN1bHRPYmplY3ROYW1lLCBmaWVsZHMsIHN0YXRlbWVudCB9OiBUZW1wbGF0ZVF1ZXJ5LFxuICAgIHsgcHJvcGVydGllcyB9OiBBbnlXaXRoUHJvcGVydGllcyxcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBwYXR0ZXJuTGltaXQgPSAvKFxccypsaW1pdFxcc1xcZCopL2k7XG4gICAgbGV0IGxpbWl0ID0gMTtcbiAgICBpZiAoc3RhdGVtZW50ICYmIHBhdHRlcm5MaW1pdC50ZXN0KHN0YXRlbWVudCkpIHtcbiAgICAgIGNvbnN0IGxpbWl0U3RyID0gc3RhdGVtZW50Py5tYXRjaChwYXR0ZXJuTGltaXQpPy5bMV0udHJpbSgpLnN1YnN0cmluZyg1KS50cmltKCk7XG4gICAgICBpZiAobGltaXRTdHIpIHtcbiAgICAgICAgbGltaXQgPSBOdW1iZXIucGFyc2VJbnQobGltaXRTdHIsIDEwKTtcbiAgICAgIH1cbiAgICAgIHN0YXRlbWVudCA9IHN0YXRlbWVudC5yZXBsYWNlKHBhdHRlcm5MaW1pdCwgJycpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc29sdmVkU3RhdGVtZW50ID0gc3RhdGVtZW50XG4gICAgICA/IFN0cmluZ1V0aWxzLmZpbGxQbGFjZWhvbGRlcnMoc3RhdGVtZW50LCBwcm9wZXJ0aWVzLCAvOlxccyooXFx3W1xcd1xcZF8uXSspL2kpXG4gICAgICA6IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IHNlYXJjaFJlcXVlc3QgPSB7XG4gICAgICBza2lwOiAwLFxuICAgICAgY291bnQ6IGxpbWl0LFxuICAgICAgcmF3Q29uZGl0aW9uOiByZXNvbHZlZFN0YXRlbWVudCxcbiAgICAgIC4uLihmaWVsZHM/Lmxlbmd0aCAmJiAhIWZpZWxkc1swXSAmJiB7IGZpZWxkcyB9KSxcbiAgICB9IGFzIFNlYXJjaFJlcXVlc3Q7XG5cbiAgICByZXR1cm4gdGhpcy5zYWxlc2ZvcmNlQXBpU2VydmljZS5xdWVyeShzZWFyY2hSZXF1ZXN0LCBvYmplY3ROYW1lKS5waXBlKFxuICAgICAgdGhpcy5tYXBTZlF1ZXJ5UmVzdWx0KGxpbWl0KSxcbiAgICAgIG1hcCh2YWx1ZSA9PiAoeyBbcmVzdWx0T2JqZWN0TmFtZV06IHZhbHVlIH0pKSxcbiAgICApO1xuICB9XG59XG4iXX0=
279
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdGVtcGxhdGVzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi9zZXJ2aWNlcy9kb2N1bWVudC10ZW1wbGF0ZXMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUtMLGFBQWEsRUFFYix3QkFBd0IsRUFDeEIsVUFBVSxFQUVWLFdBQVcsR0FJWixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQztBQUNsQyxPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBS3JFLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQztBQVV2QixNQUFNLE9BQU8sMkJBQTJCO0lBS3RDLFlBQ1UsT0FBd0IsRUFDeEIsb0JBQTBDLEVBQzFDLG1CQUF3QyxFQUN4Qyx5QkFBdUQsRUFDdkQsZUFBZ0MsRUFDaEMsSUFBZ0I7UUFMaEIsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFDeEIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBOEI7UUFDdkQsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLFNBQUksR0FBSixJQUFJLENBQVk7UUFWVCxnQkFBVyxHQUFHLFlBQVksQ0FBQztRQUMzQix5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QyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FDOUMsQ0FBQztJQUNKLENBQUM7O3lIQWpYVSwyQkFBMkI7NkhBQTNCLDJCQUEyQjs0RkFBM0IsMkJBQTJCO2tCQUR2QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VycmVuY3lQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBbnlXaXRoUHJvcGVydGllcyxcbiAgQXR0YWNobWVudCxcbiAgQmFzZUh0dHBTZXJ2aWNlLFxuICBEb2N1bWVudFRlbXBsYXRlLFxuICBEb2N4VGVtcGxhdGVyLFxuICBGaWxlRG93bmxvYWRTZXJ2aWNlLFxuICBpc0xlZ2FjeURvY3VtZW50VGVtcGxhdGUsXG4gIFF1b3RlRHJhZnQsXG4gIFNlYXJjaFJlcXVlc3QsXG4gIFN0cmluZ1V0aWxzLFxuICBUZW1wbGF0ZUF0dGFjaG1lbnRTZWFyY2hSZXF1ZXN0LFxuICBUZW1wbGF0ZVF1ZXJ5LFxuICBWbFdpbmRvdyxcbn0gZnJvbSAnQHZlbG9jZS9jb3JlJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCAqIGFzIG1vbWVudF8gZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiwgemlwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWZhdWx0SWZFbXB0eSwgbWFwLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERvY3VtZW50QXR0YWNobWVudEFwaVNlcnZpY2UgfSBmcm9tICcuL2RvY3VtZW50LWF0dGFjaG1lbnQtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgUXVvdGVBcGlTZXJ2aWNlIH0gZnJvbSAnLi9xdW90ZS1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBTYWxlc2ZvcmNlQXBpU2VydmljZSB9IGZyb20gJy4vc2FsZXNmb3JjZS1hcGkuc2VydmljZSc7XG5cbmNvbnN0IG1vbWVudCA9IG1vbWVudF87XG5kZWNsYXJlIGNvbnN0IHdpbmRvdzogVmxXaW5kb3c7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zIHtcbiAgYXR0YWNoVG9RdW90ZT86IGJvb2xlYW47XG4gIGRvY3VtZW50Rm9ybWF0PzogJ0RPQ1gnO1xuICBzaG91bGRQcmV2ZW50RG93bmxvYWQ/OiBib29sZWFuO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRG9jdW1lbnRUZW1wbGF0ZXNBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBTRVJWSUNFX1VSTCA9ICcvdGVtcGxhdGVzJztcbiAgcHJpdmF0ZSByZWFkb25seSBET0NfR0VOX1VSTF9GQUxMQkFDSyA9ICdodHRwczovL2Rldi1kcDEudmVsb2NwcS5jb20vZG9jZ2VuJztcbiAgcHJpdmF0ZSByZWFkb25seSBET0NfR0VOX1VSTDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNlcnZpY2U6IEJhc2VIdHRwU2VydmljZSxcbiAgICBwcml2YXRlIHNhbGVzZm9yY2VBcGlTZXJ2aWNlOiBTYWxlc2ZvcmNlQXBpU2VydmljZSxcbiAgICBwcml2YXRlIGZpbGVEb3dubG9hZFNlcnZpY2U6IEZpbGVEb3dubG9hZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlOiBEb2N1bWVudEF0dGFjaG1lbnRBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcXVvdGVBcGlTZXJ2aWNlOiBRdW90ZUFwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICApIHtcbiAgICBpZiAod2luZG93LlZFTE9fRE9DR0VOX0FQSSkge1xuICAgICAgdGhpcy5ET0NfR0VOX1VSTCA9IHdpbmRvdy5WRUxPX0RPQ0dFTl9BUEk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUubG9nKGB3aW5kb3cuVkVMT19ET0NHRU5fQVBJIG5vdCBzZXQsIHdpbGwgdXNlIGZhbGxiYWNrIFwiJHt0aGlzLkRPQ19HRU5fVVJMX0ZBTExCQUNLfVwiYCk7XG4gICAgICB0aGlzLkRPQ19HRU5fVVJMID0gdGhpcy5ET0NfR0VOX1VSTF9GQUxMQkFDSztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0VGVtcGxhdGVzKHRhZz86IHN0cmluZyk6IE9ic2VydmFibGU8RG9jdW1lbnRUZW1wbGF0ZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfWAsXG4gICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgcGFyYW1zOiB7XG4gICAgICAgIC4uLih0YWcgJiYgeyB0YWcgfSksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldFRlbXBsYXRlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERvY3VtZW50VGVtcGxhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgdXBzZXJ0VGVtcGxhdGUoXG4gICAgdGVtcGxhdGU6IERvY3VtZW50VGVtcGxhdGUsXG4gICAgZmlsZT86IEZpbGUsXG4gICAgcmVwb3J0UHJvZ3Jlc3M/OiBib29sZWFuLFxuICApOiBPYnNlcnZhYmxlPERvY3VtZW50VGVtcGxhdGU+IHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcblxuICAgIGlmIChmaWxlKSB7XG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBmaWxlLCBmaWxlLm5hbWUpO1xuICAgIH1cbiAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAndGVtcGxhdGUnLFxuICAgICAgbmV3IEJsb2IoW0pTT04uc3RyaW5naWZ5KHRlbXBsYXRlKV0sIHtcbiAgICAgICAgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIGxldCB1cmwgPSBgJHt0aGlzLlNFUlZJQ0VfVVJMfWA7XG4gICAgaWYgKHRlbXBsYXRlLmlkKSB7XG4gICAgICB1cmwgKz0gYC8ke3RlbXBsYXRlLmlkfWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS51cGxvYWQoe1xuICAgICAgdXJsLFxuICAgICAgYm9keTogZm9ybURhdGEsXG4gICAgICBtZXRob2Q6IHRlbXBsYXRlLmlkID8gJ3B1dCcgOiAncG9zdCcsXG4gICAgICByZXBvcnRQcm9ncmVzcyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVUZW1wbGF0ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxEb2N1bWVudFRlbXBsYXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdkZWxldGUnLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlc3RvcmVUZW1wbGF0ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfS9yZXN0b3JlYCxcbiAgICAgIG1ldGhvZDogJ3BhdGNoJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9uZVRlbXBsYXRlKFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcGVydGllc1RvT3ZlcnJpZGU6IFBhcnRpYWw8RG9jdW1lbnRUZW1wbGF0ZT4gPSB7fSxcbiAgKTogT2JzZXJ2YWJsZTx7IGNsb25lZFJlY29yZElkOiBzdHJpbmcgfT4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vY2xvbmUvJHtpZH1gLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBib2R5OiB7XG4gICAgICAgIGlkLFxuICAgICAgICBwcm9wZXJ0aWVzVG9PdmVycmlkZSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGVtcGxhdGVGaWxlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEFycmF5QnVmZmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH0vZmlsZWAsXG4gICAgICByZXNwb25zZVR5cGU6ICdhcnJheWJ1ZmZlcicsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZG93bmxvYWRUZW1wbGF0ZUZpbGUoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9L2ZpbGVgLFxuICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgICAgb2JzZXJ2ZTogJ3Jlc3BvbnNlJyxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICB0aGlzLmZpbGVEb3dubG9hZFNlcnZpY2UucHJvY2Vzc0Rvd25sb2FkKHJlc3BvbnNlKTtcbiAgICAgICAgfSksXG4gICAgICAgIG1hcChyZXNwb25zZSA9PiByZXNwb25zZS5ib2R5IHx8IHJlc3BvbnNlKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgbWVyZ2VEb2N1bWVudHMoZG9jdW1lbnQ6IEJsb2IsIGF0dGFjaG1lbnRzOiBBcnJheUJ1ZmZlcltdKTogT2JzZXJ2YWJsZTxBcnJheUJ1ZmZlcj4ge1xuICAgIGNvbnN0IGJvZHkgPSBuZXcgRm9ybURhdGEoKTtcblxuICAgIGF0dGFjaG1lbnRzLmZvckVhY2goYXR0YWNobWVudCA9PiB7XG4gICAgICBib2R5LmFwcGVuZCgnYXR0YWNobWVudHMnLCBuZXcgQmxvYihbYXR0YWNobWVudF0pKTtcbiAgICB9KTtcblxuICAgIGJvZHkuYXBwZW5kKCdvcmRlcmZvcm0nLCBkb2N1bWVudCk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5ET0NfR0VOX1VSTH0vZG9jdW1lbnRzL21lcmdlYCwgYm9keSwge1xuICAgICAgcmVzcG9uc2VUeXBlOiAnYXJyYXlidWZmZXInLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldEF0dGFjaG1lbnRzKHNlYXJjaFJlcXVlc3Q6IFRlbXBsYXRlQXR0YWNobWVudFNlYXJjaFJlcXVlc3QpOiBPYnNlcnZhYmxlPEF0dGFjaG1lbnRbXT4ge1xuICAgIHJldHVybiB0aGlzLmRvY3VtZW50QXR0YWNobWVudFNlcnZpY2UuZ2V0QXR0YWNobWVudHMoc2VhcmNoUmVxdWVzdCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QXR0YWNobWVudEZpbGUoaWQ6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5nZXRBdHRhY2htZW50RmlsZShpZCk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlQXR0YWNobWVudChhdHRhY2htZW50OiBBdHRhY2htZW50LCBmaWxlPzogRmlsZSwgcmVwb3J0UHJvZ3Jlc3M/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxBdHRhY2htZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5jcmVhdGVBdHRhY2htZW50KGF0dGFjaG1lbnQsIGZpbGUsIHJlcG9ydFByb2dyZXNzKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVBdHRhY2htZW50KGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHVua25vd24+IHtcbiAgICByZXR1cm4gdGhpcy5kb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlLnJlbW92ZUF0dGFjaG1lbnQoaWQpO1xuICB9XG5cbiAgcHVibGljIGdlbmVyYXRlRG9jdW1lbnREYXRhKFxuICAgIHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlLFxuICAgIG9iamVjdDogYW55LFxuICAgIHBhcmFtczogRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zID0ge30sXG4gICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgaWYgKGlzTGVnYWN5RG9jdW1lbnRUZW1wbGF0ZSh0ZW1wbGF0ZSkpIHtcbiAgICAgIHJldHVybiB0aGlzLmdlbmVyYXRlRG9jdW1lbnREYXRhTGVnYWN5KHRlbXBsYXRlLCBvYmplY3QsIHBhcmFtcyk7XG4gICAgfVxuXG4gICAgY29uc3QgdGVtcGxhdGVQcm9wZXJ0aWVzID0gdGVtcGxhdGUucHJvcGVydGllcz8ucmVkdWNlKFxuICAgICAgKGFjYywgeyBuYW1lLCB2YWx1ZSB9KSA9PiAoeyAuLi5hY2MsIFtuYW1lXTogdGhpcy5tYXBCb29sZWFuSWZBcGxpY2FibGUodmFsdWUpIH0pLFxuICAgICAge30sXG4gICAgKTtcblxuICAgIC8qXG4gICAgICBSZXNvbHZlIHF1b3RlIGFuZCB0ZW1wbGF0ZSBwcm9wZXJ0aWVzIGZvciBub3dcbiAgICAgIFdoZW4gcHJvY2VkdXJlcyBhcmUgcmVhZHksIHdoZXkgd2lsbCByZXBsYWNlIHRlbXBsYXRlIHNjcmlwdHMuXG5cbiAgICAgIFRPRE86IHJ1biBwcm9jZWR1cmUgdG8gcmVzb2x2ZSBkb2N1bWVudCBkYXRhXG4gICAgKi9cbiAgICByZXR1cm4gb2Yoe1xuICAgICAgLi4uKHR5cGVvZiBvYmplY3QgPT09ICdvYmplY3QnID8gb2JqZWN0IDogeyBvYmplY3QgfSksXG4gICAgICAuLi50ZW1wbGF0ZVByb3BlcnRpZXMsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVEb2N1bWVudChcbiAgICB0ZW1wbGF0ZTogRG9jdW1lbnRUZW1wbGF0ZSxcbiAgICBvYmplY3Q6IGFueSxcbiAgICBwYXJhbXM6IERvY3VtZW50R2VuZXJhdGlvblBhcmFtcyA9IHt9LFxuICApOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICBjb25zdCBkb2N1bWVudERhdGEkID0gdGhpcy5nZW5lcmF0ZURvY3VtZW50RGF0YSh0ZW1wbGF0ZSwgb2JqZWN0LCB7IC4uLnBhcmFtcywgc2hvdWxkUHJldmVudERvd25sb2FkOiB0cnVlIH0pO1xuXG4gICAgcmV0dXJuIHppcCh0aGlzLmdldFRlbXBsYXRlRmlsZSh0ZW1wbGF0ZS5pZCksIGRvY3VtZW50RGF0YSQsIHRoaXMucmVzb2x2ZUF0dGFjaG1lbnRzJCh0ZW1wbGF0ZSkpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKFt0ZW1wbGF0ZUZpbGUsIGRhdGEsIGF0dGFjaG1lbnRzXSkgPT4ge1xuICAgICAgICBjb25zdCBkb2N1bWVudCA9IERvY3hUZW1wbGF0ZXIuZ2VuZXJhdGUodGVtcGxhdGVGaWxlLCBkYXRhKTtcbiAgICAgICAgY29uc3QgcHJvcGVydGllczogXy5EaWN0aW9uYXJ5PHN0cmluZz4gPSBvYmplY3Q/LmNvbnRleHQ/LnByb3BlcnRpZXMgPz8gb2JqZWN0Py5wcm9wZXJ0aWVzID8/IHt9O1xuICAgICAgICBjb25zdCBkb2N1bWVudE5hbWUgPSBwcm9wZXJ0aWVzLk5hbWUgfHwgdGVtcGxhdGUubmFtZTtcblxuICAgICAgICBjb25zdCBkb2N1bWVudEZvcm1hdCA9XG4gICAgICAgICAgcGFyYW1zLmRvY3VtZW50Rm9ybWF0ID8/IHRlbXBsYXRlLnByb3BlcnRpZXM/LmZpbmQocCA9PiBwLm5hbWUgPT09ICdkb2N1bWVudEZvcm1hdCcpPy52YWx1ZTtcbiAgICAgICAgaWYgKGRvY3VtZW50Rm9ybWF0ID09PSAnRE9DWCcpIHtcbiAgICAgICAgICB0aGlzLmZpbGVEb3dubG9hZFNlcnZpY2UucHJvY2Vzc0Rvd25sb2FkKGRvY3VtZW50LCBkb2N1bWVudE5hbWUpO1xuXG4gICAgICAgICAgcmV0dXJuIG9mKGRvY3VtZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLm1lcmdlRG9jdW1lbnRzKGRvY3VtZW50LCBhdHRhY2htZW50cykucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAocGRmID0+IHtcbiAgICAgICAgICAgIGlmIChwYXJhbXMuYXR0YWNoVG9RdW90ZSAmJiBRdW90ZURyYWZ0LmlzUXVvdGUob2JqZWN0KSkge1xuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5xdW90ZUFwaVNlcnZpY2VcbiAgICAgICAgICAgICAgICAuYXR0YWNoRG9jdW1lbnQob2JqZWN0LnF1b3RlSWQsIGAke2RvY3VtZW50TmFtZX0ucGRmYCwgcGRmKVxuICAgICAgICAgICAgICAgIC5waXBlKG1hcCgoKSA9PiBwZGYpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIG9mKHBkZik7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgbWFwKHBkZiA9PiB7XG4gICAgICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW3BkZl0pO1xuXG4gICAgICAgICAgICBpZiAoIXBhcmFtcy5zaG91bGRQcmV2ZW50RG93bmxvYWQpIHtcbiAgICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRTZXJ2aWNlLnByb2Nlc3NEb3dubG9hZChibG9iLCBgJHtkb2N1bWVudE5hbWV9LnBkZmApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gYmxvYjtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdlbmVyYXRlRG9jdW1lbnREYXRhTGVnYWN5KFxuICAgIHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlLFxuICAgIG9iamVjdDogYW55LFxuICAgIHBhcmFtczogRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zID0ge30sXG4gICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2hvdWxkUHJldmVudERvd25sb2FkID0gcGFyYW1zLnNob3VsZFByZXZlbnREb3dubG9hZDtcbiAgICBjb25zdCBhbGxRdWVyaWVzOiBUZW1wbGF0ZVF1ZXJ5W10gPSBbLi4uKHRlbXBsYXRlPy5xdWVyaWVzID8/IFtdKV07XG4gICAgY29uc3QgcHJvcGVydGllczogXy5EaWN0aW9uYXJ5PHN0cmluZz4gPSBvYmplY3Q/LmNvbnRleHQ/LnByb3BlcnRpZXMgPz8gb2JqZWN0Py5wcm9wZXJ0aWVzID8/IHt9O1xuICAgIGNvbnN0IGFjY291bnRJZCA9IHByb3BlcnRpZXM/LkFjY291bnRJZDtcbiAgICBjb25zdCB1c2VySWQgPSBwcm9wZXJ0aWVzPy5Vc2VySWQ7XG5cbiAgICBpZiAoYWNjb3VudElkKSB7XG4gICAgICBhbGxRdWVyaWVzLnB1c2goe1xuICAgICAgICBxdWVyeU5hbWU6ICdRdW90ZUFjY291bnRRdWVyeScsXG4gICAgICAgIG9iamVjdE5hbWU6ICdBY2NvdW50JyxcbiAgICAgICAgcmVzdWx0T2JqZWN0TmFtZTogJ2FjY291bnQnLFxuICAgICAgICBzdGF0ZW1lbnQ6IGBJZCA9JyR7YWNjb3VudElkfSdgLFxuICAgICAgICBmaWVsZHM6IFtdLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGlmICh1c2VySWQpIHtcbiAgICAgIGFsbFF1ZXJpZXMucHVzaCh7XG4gICAgICAgIHF1ZXJ5TmFtZTogJ1F1b3RlVXNlclF1ZXJ5JyxcbiAgICAgICAgb2JqZWN0TmFtZTogJ1VzZXInLFxuICAgICAgICByZXN1bHRPYmplY3ROYW1lOiAnYWdlbnQnLFxuICAgICAgICBzdGF0ZW1lbnQ6IGBJZCA9JyR7dXNlcklkfSdgLFxuICAgICAgICBmaWVsZHM6IFtdLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgcXVlcmllcyA9IGFsbFF1ZXJpZXMubWFwKHF1ZXJ5ID0+IHRoaXMucXVlcnlPYmplY3QocXVlcnksIHsgcHJvcGVydGllcyB9KSkgfHwgW107XG5cbiAgICByZXR1cm4gZm9ya0pvaW4oWy4uLnF1ZXJpZXNdKS5waXBlKFxuICAgICAgZGVmYXVsdElmRW1wdHkoW10gYXMgYW55W10pLFxuICAgICAgbWFwKHJlc3VsdHMgPT4ge1xuICAgICAgICBjb25zdCBxdWVyaWVzUmVzdWx0ID0gXy5jaGFpbihyZXN1bHRzKVxuICAgICAgICAgIC5yZWR1Y2UoKGFjYywgcikgPT4ge1xuICAgICAgICAgICAgaWYgKHIpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHsgLi4uYWNjLCAuLi5yIH07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgICAgfSwge30pXG4gICAgICAgICAgLnZhbHVlKCk7XG5cbiAgICAgICAgY29uc3QgdGVtcGxhdGVQcm9wZXJ0aWVzID0gKHRlbXBsYXRlPy5wcm9wZXJ0aWVzIHx8IFtdKS5yZWR1Y2UoKHRydW5rLCB7IG5hbWUsIHZhbHVlIH0pID0+IHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4udHJ1bmssXG4gICAgICAgICAgICBbbmFtZSBhcyBzdHJpbmddOiB0aGlzLm1hcEJvb2xlYW5JZkFwbGljYWJsZSh2YWx1ZSBhcyBhbnkpLFxuICAgICAgICAgIH07XG4gICAgICAgIH0sIHt9KTtcblxuICAgICAgICBjb25zdCBkYXRhID0ge1xuICAgICAgICAgIC4uLih0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyA/IG9iamVjdCA6IHsgb2JqZWN0IH0pLFxuICAgICAgICAgIC4uLnF1ZXJpZXNSZXN1bHQsXG4gICAgICAgICAgLi4udGVtcGxhdGVQcm9wZXJ0aWVzLFxuICAgICAgICB9O1xuXG4gICAgICAgIGlmICh0ZW1wbGF0ZS5zY3JpcHQgJiYgdGVtcGxhdGUuc2NyaXB0LnRyaW0oKS5sZW5ndGgpIHtcbiAgICAgICAgICBjb25zdCBjdXJyZW5jeUZvcm1hdCA9IHRlbXBsYXRlLnByb3BlcnRpZXM/LmZpbmQoKHsgbmFtZSB9KSA9PiBuYW1lID09PSAnY3VycmVuY3lGb3JtYXQnKT8udmFsdWUgfHwgJzEuMi0yJztcbiAgICAgICAgICBjb25zdCBkYXRlRm9ybWF0ID0gdGVtcGxhdGUucHJvcGVydGllcz8uZmluZCgoeyBuYW1lIH0pID0+IG5hbWUgPT09ICdkYXRlRm9ybWF0Jyk/LnZhbHVlIHx8ICdEL01NTS9ZWVlZJztcbiAgICAgICAgICBjb25zdCBmb3JtYXREYXRlID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSA/IG1vbWVudCh2YWx1ZSkuZm9ybWF0KGRhdGVGb3JtYXQpIDogdmFsdWU7XG4gICAgICAgICAgfTtcbiAgICAgICAgICBjb25zdCB0cmFuc2Zvcm0gPSBuZXcgRnVuY3Rpb24oYHJldHVybiAke3RlbXBsYXRlLnNjcmlwdH1gKSgpO1xuICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybWVkRGF0YSA9IHRyYW5zZm9ybSh7XG4gICAgICAgICAgICAuLi5kYXRhLFxuICAgICAgICAgICAgdXRpbHM6IHtcbiAgICAgICAgICAgICAgbG9kYXNoOiBfLFxuICAgICAgICAgICAgICBjdXJyZW5jeTogKHZhbHVlOiBhbnkpID0+IG5ldyBDdXJyZW5jeVBpcGUoJ2VuLVVTJykudHJhbnNmb3JtKHZhbHVlLCAnVVNEJywgJ3N5bWJvbCcsIGN1cnJlbmN5Rm9ybWF0KSxcbiAgICAgICAgICAgICAgZGF0ZTogZm9ybWF0RGF0ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBUb0RheTogZm9ybWF0RGF0ZShEYXRlLm5vdygpIGFzIGFueSksXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgaWYgKCFzaG91bGRQcmV2ZW50RG93bmxvYWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkodHJhbnNmb3JtZWREYXRhKV0pO1xuICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRTZXJ2aWNlLnByb2Nlc3NEb3dubG9hZChibG9iLCAnZGF0YS5qc29uJyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB0cmFuc2Zvcm1lZERhdGE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlQXR0YWNobWVudHMkKHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlKTogT2JzZXJ2YWJsZTxBcnJheUJ1ZmZlcltdPiB7XG4gICAgY29uc3QgYXR0YWNobWVudElkcyA9ICh0ZW1wbGF0ZS5hdHRhY2htZW50cz8ubWFwKCh7IGlkIH0pID0+IGlkKS5maWx0ZXIoQm9vbGVhbikgYXMgc3RyaW5nW10pID8/IFtdO1xuXG4gICAgaWYgKCFhdHRhY2htZW50SWRzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIG9mKFtdKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm9ya0pvaW4oYXR0YWNobWVudElkcy5tYXAoaWQgPT4gdGhpcy5kb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlLmdldEF0dGFjaG1lbnRGaWxlKGlkLCB0cnVlKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXBTZlF1ZXJ5UmVzdWx0ID0gPFQ+KGxpbWl0OiBudW1iZXIpID0+XG4gICAgbWFwKChyZWNvcmRzOiBUW10pID0+IHtcbiAgICAgIGlmICghcmVjb3Jkcy5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIHsgX3Jlc3VsdDogJ05vIFJlY29yZHMgRm91bmQnIH07XG4gICAgICB9XG5cbiAgICAgIGlmIChsaW1pdCA9PT0gMSkge1xuICAgICAgICByZXR1cm4gcmVjb3Jkc1swXTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlY29yZHM7XG4gICAgfSk7XG5cbiAgcHJpdmF0ZSBtYXBCb29sZWFuSWZBcGxpY2FibGUgPSAodmFsdWU6IHN0cmluZykgPT4ge1xuICAgIGlmICh2YWx1ZSA9PT0gJ3RydWUnKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUgPT09ICdmYWxzZScpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH07XG5cbiAgcHJpdmF0ZSBxdWVyeU9iamVjdChcbiAgICB7IG9iamVjdE5hbWUsIHJlc3VsdE9iamVjdE5hbWUsIGZpZWxkcywgc3RhdGVtZW50IH06IFRlbXBsYXRlUXVlcnksXG4gICAgeyBwcm9wZXJ0aWVzIH06IEFueVdpdGhQcm9wZXJ0aWVzLFxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHBhdHRlcm5MaW1pdCA9IC8oXFxzKmxpbWl0XFxzXFxkKikvaTtcbiAgICBsZXQgbGltaXQgPSAxO1xuICAgIGlmIChzdGF0ZW1lbnQgJiYgcGF0dGVybkxpbWl0LnRlc3Qoc3RhdGVtZW50KSkge1xuICAgICAgY29uc3QgbGltaXRTdHIgPSBzdGF0ZW1lbnQ/Lm1hdGNoKHBhdHRlcm5MaW1pdCk/LlsxXS50cmltKCkuc3Vic3RyaW5nKDUpLnRyaW0oKTtcbiAgICAgIGlmIChsaW1pdFN0cikge1xuICAgICAgICBsaW1pdCA9IE51bWJlci5wYXJzZUludChsaW1pdFN0ciwgMTApO1xuICAgICAgfVxuICAgICAgc3RhdGVtZW50ID0gc3RhdGVtZW50LnJlcGxhY2UocGF0dGVybkxpbWl0LCAnJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzb2x2ZWRTdGF0ZW1lbnQgPSBzdGF0ZW1lbnRcbiAgICAgID8gU3RyaW5nVXRpbHMuZmlsbFBsYWNlaG9sZGVycyhzdGF0ZW1lbnQsIHByb3BlcnRpZXMsIC86XFxzKihcXHdbXFx3XFxkXy5dKykvaSlcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3Qgc2VhcmNoUmVxdWVzdCA9IHtcbiAgICAgIHNraXA6IDAsXG4gICAgICBjb3VudDogbGltaXQsXG4gICAgICByYXdDb25kaXRpb246IHJlc29sdmVkU3RhdGVtZW50LFxuICAgICAgLi4uKGZpZWxkcz8ubGVuZ3RoICYmICEhZmllbGRzWzBdICYmIHsgZmllbGRzIH0pLFxuICAgIH0gYXMgU2VhcmNoUmVxdWVzdDtcblxuICAgIHJldHVybiB0aGlzLnNhbGVzZm9yY2VBcGlTZXJ2aWNlLnF1ZXJ5KHNlYXJjaFJlcXVlc3QsIG9iamVjdE5hbWUpLnBpcGUoXG4gICAgICB0aGlzLm1hcFNmUXVlcnlSZXN1bHQobGltaXQpLFxuICAgICAgbWFwKHZhbHVlID0+ICh7IFtyZXN1bHRPYmplY3ROYW1lXTogdmFsdWUgfSkpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==