@veloceapps/api 7.0.2-41 → 7.0.2-43

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.
@@ -1,5 +1,6 @@
1
1
  import { HttpParams } from '@angular/common/http';
2
2
  import { Injectable } from '@angular/core';
3
+ import { noop } from 'rxjs';
3
4
  import * as i0 from "@angular/core";
4
5
  import * as i1 from "@veloceapps/core";
5
6
  export class CatalogAdminApiService {
@@ -155,6 +156,32 @@ export class CatalogAdminApiService {
155
156
  });
156
157
  };
157
158
  }
159
+ attachImage$(catalogId, categoryId, file) {
160
+ const data = new FormData();
161
+ data.append('image', file);
162
+ return this.baseHttpService.upload({
163
+ method: 'post',
164
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/image`,
165
+ body: data,
166
+ });
167
+ }
168
+ removeImage$(catalogId, categoryId) {
169
+ return this.baseHttpService.api({
170
+ method: 'delete',
171
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/image`,
172
+ });
173
+ }
174
+ fetchImage$(catalogId, categoryId) {
175
+ return this.baseHttpService.api({
176
+ url: this.getImageUrl(catalogId, categoryId),
177
+ method: 'get',
178
+ responseType: 'blob',
179
+ errorHandler: noop,
180
+ });
181
+ }
182
+ getImageUrl(catalogId, categoryId) {
183
+ return `${this.serviceUrl}/${catalogId}/categories/${categoryId}/image`;
184
+ }
158
185
  }
159
186
  CatalogAdminApiService.MAX_RESULTS = 60;
160
187
  CatalogAdminApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CatalogAdminApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -162,4 +189,4 @@ CatalogAdminApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0
162
189
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CatalogAdminApiService, decorators: [{
163
190
  type: Injectable
164
191
  }], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1hZG1pbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvY2F0YWxvZy1hZG1pbi1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBaUIzQyxNQUFNLE9BQU8sc0JBQXNCO0lBS2pDLFlBQW9CLGVBQWdDO1FBQWhDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUZuQyxlQUFVLEdBQVcsV0FBVyxDQUFDO1FBSTNDLG1CQUFjLEdBQUcsQ0FBQyxZQUFnQyxFQUF5QixFQUFFO1lBQ2xGLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsR0FBRyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkUsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3pFLENBQUMsQ0FBQztRQUVLLG9CQUFlLEdBQUcsQ0FBQyxZQUFnQyxFQUFFLFVBQXVCLEVBQXlCLEVBQUU7WUFDNUcsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsRUFBRSxHQUFHLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQztZQUVuRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDO2dCQUM5QixNQUFNLEVBQUUsTUFBTTtnQkFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxTQUFTO2dCQUNoQyxNQUFNO2dCQUNOLElBQUksRUFBRSxVQUFVLElBQUksRUFBRTthQUN2QixDQUFDLENB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LEVBQUUsT0FBTzthQUNkLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztRQUVLLG1CQUFjLEdBQUcsQ0FBQyxFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLElBQUksR0FDb0MsRUFBc0IsRUFBRTtZQUNoRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDO2dCQUM5QixNQUFNLEVBQUUsUUFBUTtnQkFDaEIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxTQUFTLGVBQWUsVUFBVSxhQUFhLElBQUksQ0FBQyxFQUFFLEVBQUU7YUFDcEYsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO0lBdE1xRCxDQUFDOztBQUoxQyxrQ0FBVyxHQUFHLEVBQUUsQ0FBQzttSEFEcEIsc0JBQXNCO3VIQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCYXNlSHR0cFNlcnZpY2UsXG4gIENhdGFsb2csXG4gIENhdGVnb3J5LFxuICBDYXRlZ29yeUF0dHJpYnV0ZSxcbiAgQ2F0ZWdvcnlSZXF1ZXN0UGF5bG9hZFdpdGhEYXRhLFxuICBFeHByZXNzaW9uLFxuICBOZXdDYXRhbG9nLFxuICBOZXdDYXRlZ29yeSxcbiAgTmV3Q2F0ZWdvcnlBdHRyaWJ1dGUsXG4gIFByb2R1Y3QsXG59IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2xvbmVSZXF1ZXN0LCBRdWVyeVNlYXJjaFBhcmFtcyB9IGZyb20gJy4uL3R5cGVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENhdGFsb2dBZG1pbkFwaVNlcnZpY2Uge1xuICBwdWJsaWMgc3RhdGljIE1BWF9SRVNVTFRTID0gNjA7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlVXJsOiBzdHJpbmcgPSAnL2NhdGFsb2dzJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJhc2VIdHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBmZXRjaENhdGFsb2dzJCA9IChzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcyk6IE9ic2VydmFibGU8Q2F0YWxvZ1tdPiA9PiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoeyBmcm9tT2JqZWN0OiB7IC4uLnNlYXJjaFBhcmFtcyB9IH0pO1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoeyB1cmw6IGAke3RoaXMuc2VydmljZVVybH1gLCBwYXJhbXMgfSk7XG4gIH07XG5cbiAgcHVibGljIHNlYXJjaENhdGFsb2dzJCA9IChzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcywgZXhwcmVzc2lvbj86IEV4cHJlc3Npb24pOiBPYnNlcnZhYmxlPENhdGFsb2dbXT4gPT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHsgZnJvbU9iamVjdDogeyAuLi5zZWFyY2hQYXJhbXMgfSB9KTtcblxuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vc2VhcmNoYCxcbiAgICAgIHBhcmFtcyxcbiAgICAgIGJvZHk6IGV4cHJlc3Npb24gfHwge30sXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIGZldGNoQ2F0ZWdvcmllcyQgPSAoY2F0YWxvZ0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPENhdGVnb3J5W10+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHsgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzYCB9KTtcbiAgfTtcblxuICBwdWJsaWMgc2VhcmNoUHJvZHVjdHMkID0gKGNhdGFsb2dJZDogc3RyaW5nLCBjYXRlZ29yeUlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb2R1Y3RbXT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9wcm9kdWN0cy9zZWFyY2hgLFxuICAgICAgYm9keToge30sXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIGZldGNoQXR0cmlidXRlcyQgPSAoY2F0YWxvZ0lkOiBzdHJpbmcsIGNhdGVnb3J5SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Q2F0ZWdvcnlBdHRyaWJ1dGVbXT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoeyB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9hdHRyaWJ1dGVzYCB9KTtcbiAgfTtcblxuICBwdWJsaWMgY3JlYXRlTmV3Q2F0YWxvZyQgPSAoY2F0YWxvZ0RhdGE6IE5ld0NhdGFsb2cpOiBPYnNlcnZhYmxlPENhdGFsb2c+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfWAsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IGNhdGFsb2dEYXRhLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBkdXBsaWNhdGVDYXRhbG9nJCA9IChjbG9uZVJlcXVlc3Q6IENsb25lUmVxdWVzdCk6IE9ic2VydmFibGU8Q2F0YWxvZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2xvbmVSZXF1ZXN0LmlkfS9jbG9uZWAsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IGNsb25lUmVxdWVzdCxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgdXBkYXRlQ2F0YWxvZyQgPSAoZGF0YTogQ2F0YWxvZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7ZGF0YS5pZH1gLFxuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgIGJvZHk6IGRhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHJlbW92ZUNhdGFsb2ckID0gKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdkZWxldGUnLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZXN0b3JlQ2F0YWxvZyQgPSAoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7aWR9L3Jlc3RvcmVgLFxuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBjcmVhdGVOZXdDYXRlZ29yeSQgPSAoY2F0ZWdvcnlEYXRhOiBOZXdDYXRlZ29yeSk6IE9ic2VydmFibGU8Q2F0ZWdvcnk+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGVnb3J5RGF0YS5jYXRhbG9nSWR9L2NhdGVnb3JpZXNgLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBib2R5OiBjYXRlZ29yeURhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHVwZGF0ZUNhdGVnb3J5JCA9IChjYXRlZ29yeTogQ2F0ZWdvcnkpOiBPYnNlcnZhYmxlPHZvaWQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGVnb3J5LmNhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5LmlkfWAsXG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgYm9keTogY2F0ZWdvcnksXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIGR1cGxpY2F0ZUNhdGVnb3J5JCA9IChjYXRhbG9nSWQ6IHN0cmluZywgY2xvbmVSZXF1ZXN0OiBDbG9uZVJlcXVlc3QpOiBPYnNlcnZhYmxlPHN0cmluZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGk8c3RyaW5nPih7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjbG9uZVJlcXVlc3QuaWR9L2Nsb25lYCxcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keTogY2xvbmVSZXF1ZXN0LFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZW1vdmVDYXRlZ29yeSQgPSAoaWQ6IHN0cmluZywgY2F0YWxvZ0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdkZWxldGUnLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZXN0b3JlQ2F0ZWdvcnkkID0gKGlkOiBzdHJpbmcsIGNhdGFsb2dJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtpZH0vcmVzdG9yZWAsXG4gICAgICBtZXRob2Q6ICdwYXRjaCcsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHJlbW92ZUF0dHJpYnV0ZSQgPSAoe1xuICAgIGNhdGFsb2dJZCxcbiAgICBjYXRlZ29yeUlkLFxuICAgIGRhdGEsXG4gIH06IENhdGVnb3J5UmVxdWVzdFBheWxvYWRXaXRoRGF0YTxDYXRlZ29yeUF0dHJpYnV0ZT4pOiBPYnNlcnZhYmxlPHN0cmluZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L2F0dHJpYnV0ZXMvJHtkYXRhLmlkfWAsXG4gICAgICBib2R5OiBkYXRhLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZXN0b3JlQXR0cmlidXRlJCA9ICh7XG4gICAgY2F0YWxvZ0lkLFxuICAgIGNhdGVnb3J5SWQsXG4gICAgZGF0YSxcbiAgfTogQ2F0ZWdvcnlSZXF1ZXN0UGF5bG9hZFdpdGhEYXRhPENhdGVnb3J5QXR0cmlidXRlPik6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vYXR0cmlidXRlcy8ke2RhdGEuaWR9L3Jlc3RvcmVgLFxuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBjcmVhdGVOZXdBdHRyaWJ1dGUkID0gKHtcbiAgICBjYXRhbG9nSWQsXG4gICAgY2F0ZWdvcnlJZCxcbiAgICBkYXRhLFxuICB9OiBDYXRlZ29yeVJlcXVlc3RQYXlsb2FkV2l0aERhdGE8TmV3Q2F0ZWdvcnlBdHRyaWJ1dGU+KTogT2JzZXJ2YWJsZTxDYXRlZ29yeUF0dHJpYnV0ZT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9hdHRyaWJ1dGVzYCxcbiAgICAgIGJvZHk6IGRhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHVwZGF0ZUF0dHJpYnV0ZSQgPSAoe1xuICAgIGNhdGFsb2dJZCxcbiAgICBjYXRlZ29yeUlkLFxuICAgIGRhdGEsXG4gIH06IENhdGVnb3J5UmVxdWVzdFBheWxvYWRXaXRoRGF0YTxDYXRlZ29yeUF0dHJpYnV0ZT4pOiBPYnNlcnZhYmxlPENhdGVnb3J5QXR0cmlidXRlPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vYXR0cmlidXRlcy8ke2RhdGEuaWR9YCxcbiAgICAgIGJvZHk6IGRhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHNlYXJjaFByb2R1Y3RDYW5kaWRhdGVzJCA9IChcbiAgICBjYXRhbG9nSWQ6IHN0cmluZyxcbiAgICBjYXRlZ29yeUlkOiBzdHJpbmcsXG4gICAgZXhwcmVzc2lvbjogRXhwcmVzc2lvbixcbiAgICBzZWFyY2hQYXJhbXM6IFF1ZXJ5U2VhcmNoUGFyYW1zLFxuICApOiBPYnNlcnZhYmxlPFByb2R1Y3RbXT4gPT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHsgZnJvbU9iamVjdDogeyAuLi5zZWFyY2hQYXJhbXMgfSB9KTtcblxuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9jYW5kaWRhdGVzL3NlYXJjaGAsXG4gICAgICBwYXJhbXMsXG4gICAgICBib2R5OiBleHByZXNzaW9uLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBhZGRQcm9kdWN0JCA9IChwcm9kdWN0OiBQcm9kdWN0LCBjYXRhbG9nSWQ6IHN0cmluZywgY2F0ZWdvcnlJZDogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L3Byb2R1Y3RzYCxcbiAgICAgIGJvZHk6IHByb2R1Y3QsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHVwZGF0ZVByb2R1Y3QkID0gKHByb2R1Y3Q6IFBhcnRpYWw8UHJvZHVjdD4sIGNhdGFsb2dJZDogc3RyaW5nLCBjYXRlZ29yeUlkOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9wcm9kdWN0cy8ke3Byb2R1Y3QuaWR9YCxcbiAgICAgIGJvZHk6IHByb2R1Y3QsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHJlbW92ZVByb2R1Y3QkID0gKHtcbiAgICBjYXRhbG9nSWQsXG4gICAgY2F0ZWdvcnlJZCxcbiAgICBkYXRhLFxuICB9OiBDYXRlZ29yeVJlcXVlc3RQYXlsb2FkV2l0aERhdGE8UHJvZHVjdD4pOiBPYnNlcnZhYmxlPHN0cmluZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L3Byb2R1Y3RzLyR7ZGF0YS5pZH1gLFxuICAgIH0pO1xuICB9O1xufVxuIl19
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1hZG1pbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvY2F0YWxvZy1hZG1pbi1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQWEzQyxPQUFPLEVBQWMsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFJeEMsTUFBTSxPQUFPLHNCQUFzQjtJQUtqQyxZQUFvQixlQUFnQztRQUFoQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFGbkMsZUFBVSxHQUFXLFdBQVcsQ0FBQztRQUkzQyxtQkFBYyxHQUFHLENBQUMsWUFBZ0MsRUFBeUIsRUFBRTtZQUNsRixNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFFLEdBQUcsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ25FLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUN6RSxDQUFDLENBQUM7UUFFSyxvQkFBZSxHQUFHLENBQUMsWUFBZ0MsRUFBRSxVQUF1QixFQUF5QixFQUFFO1lBQzVHLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsR0FBRyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFFbkUsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQztnQkFDOUIsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsU0FBUztnQkFDaEMsTUFBTTtnQkFD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QixHQUFHLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDO1lBQzVDLE1BQU0sRUFBRSxLQUFLO1lBQ2IsWUFBWSxFQUFFLE1BQU07WUFDcEIsWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVcsQ0FBQyxTQUFpQixFQUFFLFVBQWtCO1FBQ3RELE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLFNBQVMsZUFBZSxVQUFVLFFBQVEsQ0FBQztJQUMxRSxDQUFDOztBQXpPYSxrQ0FBVyxHQUFHLEVBQUUsQ0FBQzttSEFEcEIsc0JBQXNCO3VIQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCYXNlSHR0cFNlcnZpY2UsXG4gIENhdGFsb2csXG4gIENhdGVnb3J5LFxuICBDYXRlZ29yeUF0dHJpYnV0ZSxcbiAgQ2F0ZWdvcnlSZXF1ZXN0UGF5bG9hZFdpdGhEYXRhLFxuICBFeHByZXNzaW9uLFxuICBOZXdDYXRhbG9nLFxuICBOZXdDYXRlZ29yeSxcbiAgTmV3Q2F0ZWdvcnlBdHRyaWJ1dGUsXG4gIFByb2R1Y3QsXG59IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgbm9vcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2xvbmVSZXF1ZXN0LCBRdWVyeVNlYXJjaFBhcmFtcyB9IGZyb20gJy4uL3R5cGVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENhdGFsb2dBZG1pbkFwaVNlcnZpY2Uge1xuICBwdWJsaWMgc3RhdGljIE1BWF9SRVNVTFRTID0gNjA7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlVXJsOiBzdHJpbmcgPSAnL2NhdGFsb2dzJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJhc2VIdHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBmZXRjaENhdGFsb2dzJCA9IChzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcyk6IE9ic2VydmFibGU8Q2F0YWxvZ1tdPiA9PiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoeyBmcm9tT2JqZWN0OiB7IC4uLnNlYXJjaFBhcmFtcyB9IH0pO1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoeyB1cmw6IGAke3RoaXMuc2VydmljZVVybH1gLCBwYXJhbXMgfSk7XG4gIH07XG5cbiAgcHVibGljIHNlYXJjaENhdGFsb2dzJCA9IChzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcywgZXhwcmVzc2lvbj86IEV4cHJlc3Npb24pOiBPYnNlcnZhYmxlPENhdGFsb2dbXT4gPT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHsgZnJvbU9iamVjdDogeyAuLi5zZWFyY2hQYXJhbXMgfSB9KTtcblxuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vc2VhcmNoYCxcbiAgICAgIHBhcmFtcyxcbiAgICAgIGJvZHk6IGV4cHJlc3Npb24gfHwge30sXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIGZldGNoQ2F0ZWdvcmllcyQgPSAoY2F0YWxvZ0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPENhdGVnb3J5W10+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHsgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzYCB9KTtcbiAgfTtcblxuICBwdWJsaWMgc2VhcmNoUHJvZHVjdHMkID0gKGNhdGFsb2dJZDogc3RyaW5nLCBjYXRlZ29yeUlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb2R1Y3RbXT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9wcm9kdWN0cy9zZWFyY2hgLFxuICAgICAgYm9keToge30sXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIGZldGNoQXR0cmlidXRlcyQgPSAoY2F0YWxvZ0lkOiBzdHJpbmcsIGNhdGVnb3J5SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Q2F0ZWdvcnlBdHRyaWJ1dGVbXT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoeyB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9hdHRyaWJ1dGVzYCB9KTtcbiAgfTtcblxuICBwdWJsaWMgY3JlYXRlTmV3Q2F0YWxvZyQgPSAoY2F0YWxvZ0RhdGE6IE5ld0NhdGFsb2cpOiBPYnNlcnZhYmxlPENhdGFsb2c+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfWAsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IGNhdGFsb2dEYXRhLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBkdXBsaWNhdGVDYXRhbG9nJCA9IChjbG9uZVJlcXVlc3Q6IENsb25lUmVxdWVzdCk6IE9ic2VydmFibGU8Q2F0YWxvZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2xvbmVSZXF1ZXN0LmlkfS9jbG9uZWAsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IGNsb25lUmVxdWVzdCxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgdXBkYXRlQ2F0YWxvZyQgPSAoZGF0YTogQ2F0YWxvZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7ZGF0YS5pZH1gLFxuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgIGJvZHk6IGRhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHJlbW92ZUNhdGFsb2ckID0gKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdkZWxldGUnLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZXN0b3JlQ2F0YWxvZyQgPSAoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7aWR9L3Jlc3RvcmVgLFxuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBjcmVhdGVOZXdDYXRlZ29yeSQgPSAoY2F0ZWdvcnlEYXRhOiBOZXdDYXRlZ29yeSk6IE9ic2VydmFibGU8Q2F0ZWdvcnk+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGVnb3J5RGF0YS5jYXRhbG9nSWR9L2NhdGVnb3JpZXNgLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBib2R5OiBjYXRlZ29yeURhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHVwZGF0ZUNhdGVnb3J5JCA9IChjYXRlZ29yeTogQ2F0ZWdvcnkpOiBPYnNlcnZhYmxlPENhdGVnb3J5PiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRlZ29yeS5jYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeS5pZH1gLFxuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgIGJvZHk6IGNhdGVnb3J5LFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBkdXBsaWNhdGVDYXRlZ29yeSQgPSAoY2F0YWxvZ0lkOiBzdHJpbmcsIGNsb25lUmVxdWVzdDogQ2xvbmVSZXF1ZXN0KTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpPHN0cmluZz4oe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2xvbmVSZXF1ZXN0LmlkfS9jbG9uZWAsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IGNsb25lUmVxdWVzdCxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgcmVtb3ZlQ2F0ZWdvcnkkID0gKGlkOiBzdHJpbmcsIGNhdGFsb2dJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtpZH1gLFxuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgcmVzdG9yZUNhdGVnb3J5JCA9IChpZDogc3RyaW5nLCBjYXRhbG9nSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7aWR9L3Jlc3RvcmVgLFxuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZW1vdmVBdHRyaWJ1dGUkID0gKHtcbiAgICBjYXRhbG9nSWQsXG4gICAgY2F0ZWdvcnlJZCxcbiAgICBkYXRhLFxuICB9OiBDYXRlZ29yeVJlcXVlc3RQYXlsb2FkV2l0aERhdGE8Q2F0ZWdvcnlBdHRyaWJ1dGU+KTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9hdHRyaWJ1dGVzLyR7ZGF0YS5pZH1gLFxuICAgICAgYm9keTogZGF0YSxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgcmVzdG9yZUF0dHJpYnV0ZSQgPSAoe1xuICAgIGNhdGFsb2dJZCxcbiAgICBjYXRlZ29yeUlkLFxuICAgIGRhdGEsXG4gIH06IENhdGVnb3J5UmVxdWVzdFBheWxvYWRXaXRoRGF0YTxDYXRlZ29yeUF0dHJpYnV0ZT4pOiBPYnNlcnZhYmxlPHZvaWQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L2F0dHJpYnV0ZXMvJHtkYXRhLmlkfS9yZXN0b3JlYCxcbiAgICAgIG1ldGhvZDogJ3BhdGNoJyxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgY3JlYXRlTmV3QXR0cmlidXRlJCA9ICh7XG4gICAgY2F0YWxvZ0lkLFxuICAgIGNhdGVnb3J5SWQsXG4gICAgZGF0YSxcbiAgfTogQ2F0ZWdvcnlSZXF1ZXN0UGF5bG9hZFdpdGhEYXRhPE5ld0NhdGVnb3J5QXR0cmlidXRlPik6IE9ic2VydmFibGU8Q2F0ZWdvcnlBdHRyaWJ1dGU+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vYXR0cmlidXRlc2AsXG4gICAgICBib2R5OiBkYXRhLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyB1cGRhdGVBdHRyaWJ1dGUkID0gKHtcbiAgICBjYXRhbG9nSWQsXG4gICAgY2F0ZWdvcnlJZCxcbiAgICBkYXRhLFxuICB9OiBDYXRlZ29yeVJlcXVlc3RQYXlsb2FkV2l0aERhdGE8Q2F0ZWdvcnlBdHRyaWJ1dGU+KTogT2JzZXJ2YWJsZTxDYXRlZ29yeUF0dHJpYnV0ZT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L2F0dHJpYnV0ZXMvJHtkYXRhLmlkfWAsXG4gICAgICBib2R5OiBkYXRhLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBzZWFyY2hQcm9kdWN0Q2FuZGlkYXRlcyQgPSAoXG4gICAgY2F0YWxvZ0lkOiBzdHJpbmcsXG4gICAgY2F0ZWdvcnlJZDogc3RyaW5nLFxuICAgIGV4cHJlc3Npb246IEV4cHJlc3Npb24sXG4gICAgc2VhcmNoUGFyYW1zOiBRdWVyeVNlYXJjaFBhcmFtcyxcbiAgKTogT2JzZXJ2YWJsZTxQcm9kdWN0W10+ID0+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHsgLi4uc2VhcmNoUGFyYW1zIH0gfSk7XG5cbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vY2FuZGlkYXRlcy9zZWFyY2hgLFxuICAgICAgcGFyYW1zLFxuICAgICAgYm9keTogZXhwcmVzc2lvbixcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgYWRkUHJvZHVjdCQgPSAocHJvZHVjdDogUHJvZHVjdCwgY2F0YWxvZ0lkOiBzdHJpbmcsIGNhdGVnb3J5SWQ6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9wcm9kdWN0c2AsXG4gICAgICBib2R5OiBwcm9kdWN0LFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyB1cGRhdGVQcm9kdWN0JCA9IChwcm9kdWN0OiBQYXJ0aWFsPFByb2R1Y3Q+LCBjYXRhbG9nSWQ6IHN0cmluZywgY2F0ZWdvcnlJZDogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vcHJvZHVjdHMvJHtwcm9kdWN0LmlkfWAsXG4gICAgICBib2R5OiBwcm9kdWN0LFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZW1vdmVQcm9kdWN0JCA9ICh7XG4gICAgY2F0YWxvZ0lkLFxuICAgIGNhdGVnb3J5SWQsXG4gICAgZGF0YSxcbiAgfTogQ2F0ZWdvcnlSZXF1ZXN0UGF5bG9hZFdpdGhEYXRhPFByb2R1Y3Q+KTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9wcm9kdWN0cy8ke2RhdGEuaWR9YCxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgYXR0YWNoSW1hZ2UkKGNhdGFsb2dJZDogc3RyaW5nLCBjYXRlZ29yeUlkOiBzdHJpbmcsIGZpbGU6IEZpbGUpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICBjb25zdCBkYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgZGF0YS5hcHBlbmQoJ2ltYWdlJywgZmlsZSk7XG5cbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UudXBsb2FkKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7Y2F0YWxvZ0lkfS9jYXRlZ29yaWVzLyR7Y2F0ZWdvcnlJZH0vaW1hZ2VgLFxuICAgICAgYm9keTogZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVJbWFnZSQoY2F0YWxvZ0lkOiBzdHJpbmcsIGNhdGVnb3J5SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NhdGFsb2dJZH0vY2F0ZWdvcmllcy8ke2NhdGVnb3J5SWR9L2ltYWdlYCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBmZXRjaEltYWdlJChjYXRhbG9nSWQ6IHN0cmluZywgY2F0ZWdvcnlJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxGaWxlPiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IHRoaXMuZ2V0SW1hZ2VVcmwoY2F0YWxvZ0lkLCBjYXRlZ29yeUlkKSxcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgIGVycm9ySGFuZGxlcjogbm9vcCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRJbWFnZVVybChjYXRhbG9nSWQ6IHN0cmluZywgY2F0ZWdvcnlJZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuc2VydmljZVVybH0vJHtjYXRhbG9nSWR9L2NhdGVnb3JpZXMvJHtjYXRlZ29yeUlkfS9pbWFnZWA7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { Injectable } from '@angular/core';
2
- import { ModelTranslatorUtils, } from '@veloceapps/core';
2
+ import { ModelTranslatorUtils, isLegacyUIDefinition, uiDefinitionFromDTO, } from '@veloceapps/core';
3
3
  import { throwError } from 'rxjs';
4
4
  import { map } from 'rxjs/operators';
5
5
  import * as i0 from "@angular/core";
@@ -36,11 +36,16 @@ export class ConfigurationApiService {
36
36
  url: `${this.SERVICE_URL}/${productId}/model` + ((offeringId && `/${offeringId}`) || ''),
37
37
  })
38
38
  .pipe(map(runtimeData => {
39
- runtimeData.uiDefinitions = JSON.parse(runtimeData.uiDefinitionsSource);
40
- runtimeData.uiDefinitions.forEach(uiDefinition => {
41
- ModelTranslatorUtils.toLocalUIDefinition(uiDefinition);
42
- });
43
- return runtimeData;
39
+ return {
40
+ ...runtimeData,
41
+ uiDefinitions: runtimeData.uiDefinitions.map(dto => {
42
+ const uiDefinitionContainer = uiDefinitionFromDTO(dto);
43
+ if (isLegacyUIDefinition(uiDefinitionContainer.source)) {
44
+ ModelTranslatorUtils.toLocalUIDefinition(uiDefinitionContainer.source);
45
+ }
46
+ return uiDefinitionContainer;
47
+ }),
48
+ };
44
49
  }));
45
50
  }
46
51
  getRuntimeDataByModelId(modelId) {
@@ -75,4 +80,4 @@ ConfigurationApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.
75
80
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ConfigurationApiService, decorators: [{
76
81
  type: Injectable
77
82
  }], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvY29uZmlndXJhdGlvbi1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFNTCxvQkFBb0IsR0FHckIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBR3JDLE1BQU0sT0FBTyx1QkFBdUI7SUFHbEMsWUFBb0IsV0FBNEI7UUFBNUIsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBRi9CLGdCQUFXLEdBQUcsZ0JBQWdCLENBQUM7SUFFRyxDQUFDO0lBRTdDLGlCQUFpQixDQUFDLEVBQ3ZCLG9CQUFvQixFQUNwQixZQUFZLEVBQ1osY0FBYyxHQUtmO1FBQ0MsT0FBTyxJQUFJLENBQUMsV0FBVzthQUNwQixHQUFHLENBQWlCO1lBQ25CLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzNELElBQUksRUFBRSxvQkFBb0I7WUFDMUIsWUFBWSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztTQUNqQyxDQUFDO2FBQ0QsSUFBSSxDQUNILEdBQUcsQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUNuQixJQUFJLFlBQVksRUFBRTtnQkFDaEIsT0FBTztvQkFDTCxHQUFHLGNBQWM7b0JBQ2pCLFFBQVEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUM7aUJBQ3hFLENBQUM7YUFDSDtpQkFBTTtnQkFDTCxPQUFPLGNBQWMsQ0FBQzthQUN2QjtRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO0lBRU0seUJBQXlCLENBQUMsU0FBaUIsRUFBRSxVQUFtQjtRQUNyRSxPQUFPLElBQUksQ0FBQyxXQUFXO2FBQ3BCLEdBQUcsQ0FBYztZQUNoQixNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksU0FBUyxRQUFRLEdBQUcsQ0FBQyxDQUFDLFVBQVUsSUFBSSxJQUFJLFVBQVUsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3pGLENBQUM7YUFDRCxJQUFJLENBQ0gsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQ2hCLFdBQVcsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUN4RSxXQUFXLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtnQkFDL0Msb0JBQW9CLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDekQsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLFdBQVcsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVNLHVCQUF1QixDQUFDLE9BQWU7UUFDNUMsT0FBTyxJQUFJLENBQUMsV0FBVzthQUNwQixHQUFHLENBQUM7WUFDSCxNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksT0FBTyxhQUFhO1NBQ2pELENBQUM7YUFDRCxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsV0FBd0IsRUFBRSxFQUFFO1lBQy9CLFdBQVcsQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1lBQy9CLE9BQU8sV0FBVyxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO0lBRU8saUJBQWlCLENBQUMsUUFBa0IsRUFBRSxZQUEwQjtRQUN0RSxNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEQsTUFBTSxXQUFXLEdBQUcsRUFBRSxHQUFHLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNoRCxLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksRUFBRSxLQUFLLElBQUksRUFBRSxFQUFFO1lBQ3BDLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDMUMsSUFBSSxVQUFVLEVBQUUsVUFBVSxFQUFFLENBQUMsbUJBQW1CLENBQUMsS0FBSyxPQUFPLEVBQUU7Z0JBQzdELFVBQVUsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQTJCLENBQUM7YUFDM0Q7U0FDRjtRQUNELE9BQU87WUFDTCxHQUFHLFFBQVE7WUFDWCxTQUFTLEVBQUUsUUFBUSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ2hGLFdBQVc7U0FDWixDQUFDO0lBQ0osQ0FBQzs7b0hBaEZVLHVCQUF1Qjt3SEFBdkIsdUJBQXVCOzJGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCYXNlSHR0cFNlcnZpY2UsXG4gIENvbmZpZ3VyYXRpb25SZXF1ZXN0LFxuICBDb25maWd1cmVQcmljZSxcbiAgRG9tYWluVHlwZSxcbiAgTGluZUl0ZW0sXG4gIE1vZGVsVHJhbnNsYXRvclV0aWxzLFxuICBSdW50aW1lRGF0YSxcbiAgUnVudGltZU1vZGVsLFxufSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbmZpZ3VyYXRpb25BcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBTRVJWSUNFX1VSTCA9ICcvY29uZmlndXJhdGlvbic7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBjb25maWd1cmVMaW5lSXRlbSh7XG4gICAgY29uZmlndXJhdGlvblJlcXVlc3QsXG4gICAgcnVudGltZU1vZGVsLFxuICAgIHByaWNpbmdFbmFibGVkLFxuICB9OiB7XG4gICAgY29uZmlndXJhdGlvblJlcXVlc3Q6IENvbmZpZ3VyYXRpb25SZXF1ZXN0O1xuICAgIHJ1bnRpbWVNb2RlbD86IFJ1bnRpbWVNb2RlbDtcbiAgICBwcmljaW5nRW5hYmxlZD86IGJvb2xlYW47XG4gIH0pOiBPYnNlcnZhYmxlPENvbmZpZ3VyZVByaWNlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGk8Q29uZmlndXJlUHJpY2U+KHtcbiAgICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0ke3ByaWNpbmdFbmFibGVkID8gJy9wcmljZScgOiAnJ31gLFxuICAgICAgICBib2R5OiBjb25maWd1cmF0aW9uUmVxdWVzdCxcbiAgICAgICAgZXJyb3JIYW5kbGVyOiBlID0+IHRocm93RXJyb3IoZSksXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChjb25maWd1cmVQcmljZSA9PiB7XG4gICAgICAgICAgaWYgKHJ1bnRpbWVNb2RlbCkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgLi4uY29uZmlndXJlUHJpY2UsXG4gICAgICAgICAgICAgIGxpbmVJdGVtOiB0aGlzLnVwZGF0ZVBvcnREb21haW5zKGNvbmZpZ3VyZVByaWNlLmxpbmVJdGVtLCBydW50aW1lTW9kZWwpLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGNvbmZpZ3VyZVByaWNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGdldFJ1bnRpbWVEYXRhQnlQcm9kdWN0SWQocHJvZHVjdElkOiBzdHJpbmcsIG9mZmVyaW5nSWQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFJ1bnRpbWVEYXRhPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGk8UnVudGltZURhdGE+KHtcbiAgICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke3Byb2R1Y3RJZH0vbW9kZWxgICsgKChvZmZlcmluZ0lkICYmIGAvJHtvZmZlcmluZ0lkfWApIHx8ICcnKSxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJ1bnRpbWVEYXRhID0+IHtcbiAgICAgICAgICBydW50aW1lRGF0YS51aURlZmluaXRpb25zID0gSlNPTi5wYXJzZShydW50aW1lRGF0YS51aURlZmluaXRpb25zU291cmNlKTtcbiAgICAgICAgICBydW50aW1lRGF0YS51aURlZmluaXRpb25zLmZvckVhY2godWlEZWZpbml0aW9uID0+IHtcbiAgICAgICAgICAgIE1vZGVsVHJhbnNsYXRvclV0aWxzLnRvTG9jYWxVSURlZmluaXRpb24odWlEZWZpbml0aW9uKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gcnVudGltZURhdGE7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRSdW50aW1lRGF0YUJ5TW9kZWxJZChtb2RlbElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFJ1bnRpbWVEYXRhPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7bW9kZWxJZH0vbW9kZWwtdGVzdGAsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocnVudGltZURhdGE6IFJ1bnRpbWVEYXRhKSA9PiB7XG4gICAgICAgICAgcnVudGltZURhdGEudWlEZWZpbml0aW9ucyA9IFtdO1xuICAgICAgICAgIHJldHVybiBydW50aW1lRGF0YTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVQb3J0RG9tYWlucyhsaW5lSXRlbTogTGluZUl0ZW0sIHJ1bnRpbWVNb2RlbDogUnVudGltZU1vZGVsKTogTGluZUl0ZW0ge1xuICAgIGNvbnN0IHR5cGUgPSBydW50aW1lTW9kZWwuY29tcG9uZW50cy5nZXQobGluZUl0ZW0udHlwZSk7XG4gICAgY29uc3QgcG9ydERvbWFpbnMgPSB7IC4uLmxpbmVJdGVtLnBvcnREb21haW5zIH07XG4gICAgZm9yIChjb25zdCBwb3J0IG9mIHR5cGU/LnBvcnRzID8/IFtdKSB7XG4gICAgICBjb25zdCBwb3J0RG9tYWluID0gcG9ydERvbWFpbnNbcG9ydC5uYW1lXTtcbiAgICAgIGlmIChwb3J0RG9tYWluPy5wcm9wZXJ0aWVzPy5bJ2RvbWFpbkNvbXB1dGF0aW9uJ10gPT09ICdmYWxzZScpIHtcbiAgICAgICAgcG9ydERvbWFpbi5kb21haW5UeXBlcyA9IHBvcnQuZG9tYWluVHlwZXMgYXMgRG9tYWluVHlwZVtdO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgLi4ubGluZUl0ZW0sXG4gICAgICBsaW5lSXRlbXM6IGxpbmVJdGVtLmxpbmVJdGVtcz8ubWFwKGkgPT4gdGhpcy51cGRhdGVQb3J0RG9tYWlucyhpLCBydW50aW1lTW9kZWwpKSxcbiAgICAgIHBvcnREb21haW5zLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvY29uZmlndXJhdGlvbi1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFNTCxvQkFBb0IsRUFJcEIsb0JBQW9CLEVBQ3BCLG1CQUFtQixHQUNwQixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFHckMsTUFBTSxPQUFPLHVCQUF1QjtJQUdsQyxZQUFvQixXQUE0QjtRQUE1QixnQkFBVyxHQUFYLFdBQVcsQ0FBaUI7UUFGL0IsZ0JBQVcsR0FBRyxnQkFBZ0IsQ0FBQztJQUVHLENBQUM7SUFFN0MsaUJBQWlCLENBQUMsRUFDdkIsb0JBQW9CLEVBQ3BCLFlBQVksRUFDWixjQUFjLEdBS2Y7UUFDQyxPQUFPLElBQUksQ0FBQyxXQUFXO2FBQ3BCLEdBQUcsQ0FBaUI7WUFDbkIsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLGNBQWMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDM0QsSUFBSSxFQUFFLG9CQUFvQjtZQUMxQixZQUFZLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1NBQ2pDLENBQUM7YUFDRCxJQUFJLENBQ0gsR0FBRyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQ25CLElBQUksWUFBWSxFQUFFO2dCQUNoQixPQUFPO29CQUNMLEdBQUcsY0FBYztvQkFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQztpQkFDeEUsQ0FBQzthQUNIO2lCQUFNO2dCQUNMLE9BQU8sY0FBYyxDQUFDO2FBQ3ZCO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUM7SUFFTSx5QkFBeUIsQ0FBQyxTQUFpQixFQUFFLFVBQW1CO1FBQ3JFLE9BQU8sSUFBSSxDQUFDLFdBQVc7YUFDcEIsR0FBRyxDQUFpQjtZQUNuQixNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksU0FBUyxRQUFRLEdBQUcsQ0FBQyxDQUFDLFVBQVUsSUFBSSxJQUFJLFVBQVUsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3pGLENBQUM7YUFDRCxJQUFJLENBQ0gsR0FBRyxDQUE4QixXQUFXLENBQUMsRUFBRTtZQUM3QyxPQUFPO2dCQUNMLEdBQUcsV0FBVztnQkFDZCxhQUFhLEVBQUUsV0FBVyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQ2pELE1BQU0scUJBQXFCLEdBQUcsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBRXZELElBQUksb0JBQW9CLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLEVBQUU7d0JBQ3RELG9CQUFvQixDQUFDLG1CQUFtQixDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO3FCQUN4RTtvQkFFRCxPQUFPLHFCQUFxQixDQUFDO2dCQUMvQixDQUFDLENBQUM7YUFDSCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxPQUFlO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFdBQVc7YUFDcEIsR0FBRyxDQUFDO1lBQ0gsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLE9BQU8sYUFBYTtTQUNqRCxDQUFDO2FBQ0QsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFdBQXdCLEVBQUUsRUFBRTtZQUMvQixXQUFXLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztZQUMvQixPQUFPLFdBQVcsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVPLGlCQUFpQixDQUFDLFFBQWtCLEVBQUUsWUFBMEI7UUFDdEUsTUFBTSxJQUFJLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hELE1BQU0sV0FBVyxHQUFHLEVBQUUsR0FBRyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEQsS0FBSyxNQUFNLElBQUksSUFBSSxJQUFJLEVBQUUsS0FBSyxJQUFJLEVBQUUsRUFBRTtZQUNwQyxNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzFDLElBQUksVUFBVSxFQUFFLFVBQVUsRUFBRSxDQUFDLG1CQUFtQixDQUFDLEtBQUssT0FBTyxFQUFFO2dCQUM3RCxVQUFVLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUEyQixDQUFDO2FBQzNEO1NBQ0Y7UUFDRCxPQUFPO1lBQ0wsR0FBRyxRQUFRO1lBQ1gsU0FBUyxFQUFFLFFBQVEsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUNoRixXQUFXO1NBQ1osQ0FBQztJQUNKLENBQUM7O29IQXZGVSx1QkFBdUI7d0hBQXZCLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQmFzZUh0dHBTZXJ2aWNlLFxuICBDb25maWd1cmF0aW9uUmVxdWVzdCxcbiAgQ29uZmlndXJlUHJpY2UsXG4gIERvbWFpblR5cGUsXG4gIExpbmVJdGVtLFxuICBNb2RlbFRyYW5zbGF0b3JVdGlscyxcbiAgUnVudGltZURhdGEsXG4gIFJ1bnRpbWVEYXRhRFRPLFxuICBSdW50aW1lTW9kZWwsXG4gIGlzTGVnYWN5VUlEZWZpbml0aW9uLFxuICB1aURlZmluaXRpb25Gcm9tRFRPLFxufSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbmZpZ3VyYXRpb25BcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBTRVJWSUNFX1VSTCA9ICcvY29uZmlndXJhdGlvbic7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBjb25maWd1cmVMaW5lSXRlbSh7XG4gICAgY29uZmlndXJhdGlvblJlcXVlc3QsXG4gICAgcnVudGltZU1vZGVsLFxuICAgIHByaWNpbmdFbmFibGVkLFxuICB9OiB7XG4gICAgY29uZmlndXJhdGlvblJlcXVlc3Q6IENvbmZpZ3VyYXRpb25SZXF1ZXN0O1xuICAgIHJ1bnRpbWVNb2RlbD86IFJ1bnRpbWVNb2RlbDtcbiAgICBwcmljaW5nRW5hYmxlZD86IGJvb2xlYW47XG4gIH0pOiBPYnNlcnZhYmxlPENvbmZpZ3VyZVByaWNlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGk8Q29uZmlndXJlUHJpY2U+KHtcbiAgICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0ke3ByaWNpbmdFbmFibGVkID8gJy9wcmljZScgOiAnJ31gLFxuICAgICAgICBib2R5OiBjb25maWd1cmF0aW9uUmVxdWVzdCxcbiAgICAgICAgZXJyb3JIYW5kbGVyOiBlID0+IHRocm93RXJyb3IoZSksXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChjb25maWd1cmVQcmljZSA9PiB7XG4gICAgICAgICAgaWYgKHJ1bnRpbWVNb2RlbCkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgLi4uY29uZmlndXJlUHJpY2UsXG4gICAgICAgICAgICAgIGxpbmVJdGVtOiB0aGlzLnVwZGF0ZVBvcnREb21haW5zKGNvbmZpZ3VyZVByaWNlLmxpbmVJdGVtLCBydW50aW1lTW9kZWwpLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGNvbmZpZ3VyZVByaWNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGdldFJ1bnRpbWVEYXRhQnlQcm9kdWN0SWQocHJvZHVjdElkOiBzdHJpbmcsIG9mZmVyaW5nSWQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFJ1bnRpbWVEYXRhPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGk8UnVudGltZURhdGFEVE8+KHtcbiAgICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke3Byb2R1Y3RJZH0vbW9kZWxgICsgKChvZmZlcmluZ0lkICYmIGAvJHtvZmZlcmluZ0lkfWApIHx8ICcnKSxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwPFJ1bnRpbWVEYXRhRFRPLCBSdW50aW1lRGF0YT4ocnVudGltZURhdGEgPT4ge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5ydW50aW1lRGF0YSxcbiAgICAgICAgICAgIHVpRGVmaW5pdGlvbnM6IHJ1bnRpbWVEYXRhLnVpRGVmaW5pdGlvbnMubWFwKGR0byA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHVpRGVmaW5pdGlvbkNvbnRhaW5lciA9IHVpRGVmaW5pdGlvbkZyb21EVE8oZHRvKTtcblxuICAgICAgICAgICAgICBpZiAoaXNMZWdhY3lVSURlZmluaXRpb24odWlEZWZpbml0aW9uQ29udGFpbmVyLnNvdXJjZSkpIHtcbiAgICAgICAgICAgICAgICBNb2RlbFRyYW5zbGF0b3JVdGlscy50b0xvY2FsVUlEZWZpbml0aW9uKHVpRGVmaW5pdGlvbkNvbnRhaW5lci5zb3VyY2UpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHVpRGVmaW5pdGlvbkNvbnRhaW5lcjtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIH07XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRSdW50aW1lRGF0YUJ5TW9kZWxJZChtb2RlbElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFJ1bnRpbWVEYXRhPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7bW9kZWxJZH0vbW9kZWwtdGVzdGAsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocnVudGltZURhdGE6IFJ1bnRpbWVEYXRhKSA9PiB7XG4gICAgICAgICAgcnVudGltZURhdGEudWlEZWZpbml0aW9ucyA9IFtdO1xuICAgICAgICAgIHJldHVybiBydW50aW1lRGF0YTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVQb3J0RG9tYWlucyhsaW5lSXRlbTogTGluZUl0ZW0sIHJ1bnRpbWVNb2RlbDogUnVudGltZU1vZGVsKTogTGluZUl0ZW0ge1xuICAgIGNvbnN0IHR5cGUgPSBydW50aW1lTW9kZWwuY29tcG9uZW50cy5nZXQobGluZUl0ZW0udHlwZSk7XG4gICAgY29uc3QgcG9ydERvbWFpbnMgPSB7IC4uLmxpbmVJdGVtLnBvcnREb21haW5zIH07XG4gICAgZm9yIChjb25zdCBwb3J0IG9mIHR5cGU/LnBvcnRzID8/IFtdKSB7XG4gICAgICBjb25zdCBwb3J0RG9tYWluID0gcG9ydERvbWFpbnNbcG9ydC5uYW1lXTtcbiAgICAgIGlmIChwb3J0RG9tYWluPy5wcm9wZXJ0aWVzPy5bJ2RvbWFpbkNvbXB1dGF0aW9uJ10gPT09ICdmYWxzZScpIHtcbiAgICAgICAgcG9ydERvbWFpbi5kb21haW5UeXBlcyA9IHBvcnQuZG9tYWluVHlwZXMgYXMgRG9tYWluVHlwZVtdO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgLi4ubGluZUl0ZW0sXG4gICAgICBsaW5lSXRlbXM6IGxpbmVJdGVtLmxpbmVJdGVtcz8ubWFwKGkgPT4gdGhpcy51cGRhdGVQb3J0RG9tYWlucyhpLCBydW50aW1lTW9kZWwpKSxcbiAgICAgIHBvcnREb21haW5zLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -105,6 +105,11 @@ export class ProductModelApiService {
105
105
  return linkedModels;
106
106
  }));
107
107
  }
108
+ /**
109
+ *
110
+ * @deprecated
111
+ * Will be removed in next major release
112
+ */
108
113
  load(id, version) {
109
114
  return forkJoin([this.getModel(id, version), this.getLinkedModels(id, version)]).pipe(map(([model, linkedModels]) => {
110
115
  const container = new ProductModelsContainer(model, linkedModels ?? []);
@@ -229,4 +234,4 @@ ProductModelApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0
229
234
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ProductModelApiService, decorators: [{
230
235
  type: Injectable
231
236
  }], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
232
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1tb2RlbC1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvcHJvZHVjdC1tb2RlbC1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFFTCxVQUFVLEVBRVYsb0JBQW9CLEVBQ3BCLFVBQVUsRUFHVixzQkFBc0IsR0FFdkIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsUUFBUSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUdqRCxNQUFNLE9BQU8sc0JBQXNCO0lBS2pDLFlBQW9CLFdBQTRCO1FBQTVCLGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtRQUYvQixnQkFBVyxHQUFHLFNBQVMsQ0FBQztJQUVVLENBQUM7SUFFN0MsUUFBUSxDQUFDLEtBQW1CO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLFdBQVc7YUFDcEIsR0FBRyxDQUFDO1lBQ0gsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDckIsSUFBSSxFQUFFLEtBQUs7WUFDWCxZQUFZLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUI7U0FDckQsQ0FBQzthQUNELElBQUksQ0FDSCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDWCxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUU7Z0JBQ3JCLE9BQU8sTUFBTSxDQUFDO2FBQ2Y7aUJBQU07Z0JBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDakM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVNLFlBQVksQ0FBQyxLQUEw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QUFRO2dCQUNSLGlCQUFpQjthQUNsQjtZQUNELFlBQVksRUFBRSxNQUFNO1NBQ3JCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDMUIsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsb0NBQW9DO1NBQzFDLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBM1FhLGtDQUFXLEdBQUcsR0FBRyxDQUFDO21IQURyQixzQkFBc0I7dUhBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQmFzZUh0dHBTZXJ2aWNlLFxuICBFbnRpdHlVdGlsLFxuICBNb2RlbFJlbGVhc2VSZXF1ZXN0LFxuICBNb2RlbFRyYW5zbGF0b3JVdGlscyxcbiAgTW9kZWxVdGlscyxcbiAgUG1sQ29uZmlndXJhdGlvbk1vZGUsXG4gIFByb2R1Y3RNb2RlbCxcbiAgUHJvZHVjdE1vZGVsc0NvbnRhaW5lcixcbiAgUHJvZHVjdE1vZGVsVmVyc2lvbixcbn0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBmb3JrSm9pbiwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUHJvZHVjdE1vZGVsQXBpU2VydmljZSB7XG4gIHB1YmxpYyBzdGF0aWMgTUFYX1JFU1VMVFMgPSAyMDA7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBTRVJWSUNFX1VSTCA9ICcvbW9kZWxzJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHBTZXJ2aWNlOiBCYXNlSHR0cFNlcnZpY2UpIHt9XG5cbiAgcHVibGljIGFkZE1vZGVsKG1vZGVsOiBQcm9kdWN0TW9kZWwpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlXG4gICAgICAuYXBpKHtcbiAgICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICAgIHVybDogdGhpcy5TRVJWSUNFX1VSTCxcbiAgICAgICAgYm9keTogbW9kZWwsXG4gICAgICAgIGVycm9ySGFuZGxlcjogdGhpcy5odHRwU2VydmljZS5oYW5kbGVWYWxpZGF0aW9uRXJyb3IsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChyZXN1bHQgPT4ge1xuICAgICAgICAgIGlmIChyZXN1bHQuc3VjY2Vzc2Z1bCkge1xuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHJlc3VsdC5tZXNzYWdlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyByZWxlYXNlTW9kZWwobW9kZWw6IE1vZGVsUmVsZWFzZVJlcXVlc3QpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlXG4gICAgICAuYXBpKHtcbiAgICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke21vZGVsLmlkfS9yZWxlYXNlYCxcbiAgICAgICAgYm9keTogbW9kZWwsXG4gICAgICAgIGVycm9ySGFuZGxlcjogdGhpcy5odHRwU2VydmljZS5oYW5kbGVWYWxpZGF0aW9uRXJyb3IsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChyZXN1bHQgPT4ge1xuICAgICAgICAgIGlmIChyZXN1bHQuc3VjY2Vzc2Z1bCkge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IocmVzdWx0Lm1lc3NhZ2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZU1vZGVsKG1vZGVsSWQ6IHN0cmluZywgc3VjY2Vzc0ZuPzogYW55LCBmYWlsdXJlRm4/OiBhbnkpOiB2b2lkIHtcbiAgICBjb25zdCBvYnNlcnZhYmxlID0gdGhpcy5odHRwU2VydmljZVxuICAgICAgLmFwaSh7XG4gICAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHttb2RlbElkfWAsXG4gICAgICAgIGVycm9ySGFuZGxlcjogdGhpcy5odHRwU2VydmljZS5oYW5kbGVWYWxpZGF0aW9uRXJyb3IsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChyZXN1bHQgPT4ge1xuICAgICAgICAgIGlmIChyZXN1bHQuc3VjY2Vzc2Z1bCkge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IocmVzdWx0Lm1lc3NhZ2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuXG4gICAgb2JzZXJ2YWJsZS5zdWJzY3JpYmUoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHN1Y2Nlc3NGbiAmJiBzdWNjZXNzRm4uYXBwbHkoKTtcbiAgICAgIH0sXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGZhaWx1cmVGbiAmJiBmYWlsdXJlRm4uYXBwbHkoKTtcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNb2RlbFZlcnNpb25zKG1vZGVsSWQ6IHN0cmluZywgY291bnQ6IG51bWJlciA9IDEwMCwgc2tpcDogbnVtYmVyID0gMCk6IE9ic2VydmFibGU8UHJvZHVjdE1vZGVsVmVyc2lvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke21vZGVsSWR9L3ZlcnNpb25zYCxcbiAgICAgIGJvZHk6IHtcbiAgICAgICAgc2tpcENvdW50OiBza2lwLFxuICAgICAgICBjb3VudDogY291bnQsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldE1vZGVsKGlkOiBzdHJpbmcsIHZlcnNpb24/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb2R1Y3RNb2RlbD4ge1xuICAgIGxldCB1cmwgPSBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfWA7XG5cbiAgICBpZiAodmVyc2lvbikge1xuICAgICAgdXJsICs9IGAvdmVyc2lvbnMvJHt2ZXJzaW9ufWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHsgdXJsIH0pO1xuICB9XG5cbiAgcHVibGljIGdldE1vZGVscyhza2lwQ291bnQ6IG51bWJlciwgc2VhcmNoVGV4dDogc3RyaW5nKTogT2JzZXJ2YWJsZTxQcm9kdWN0TW9kZWxbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vc2VhcmNoYCxcbiAgICAgIGJvZHk6IHtcbiAgICAgICAgbmFtZVJlZ2V4OiBzZWFyY2hUZXh0LFxuICAgICAgICBza2lwQ291bnQ6IHNraXBDb3VudC50b1N0cmluZygpLFxuICAgICAgICBjb3VudDogUHJvZHVjdE1vZGVsQXBpU2VydmljZS5NQVhfUkVTVUxUUyxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGlua2VkTW9kZWxzKGlkOiBzdHJpbmcsIHZlcnNpb24/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb2R1Y3RNb2RlbFtdPiB7XG4gICAgbGV0IHVybCA9IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9YDtcblxuICAgIGlmICh2ZXJzaW9uKSB7XG4gICAgICB1cmwgKz0gYC92ZXJzaW9ucy8ke3ZlcnNpb259YDtcbiAgICB9XG5cbiAgICB1cmwgKz0gJy9saW5rZWQnO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHsgdXJsIH0pLnBpcGUoXG4gICAgICBtYXAoKGxpbmtlZE1vZGVsczogUHJvZHVjdE1vZGVsW10pID0+IHtcbiAgICAgICAgaWYgKGxpbmtlZE1vZGVscykge1xuICAgICAgICAgIGxpbmtlZE1vZGVscy5mb3JFYWNoKG1vZGVsID0+IE1vZGVsVHJhbnNsYXRvclV0aWxzLnRvTG9jYWxNb2RlbChtb2RlbCkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBsaW5rZWRNb2RlbHM7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGxvYWQoaWQ6IHN0cmluZywgdmVyc2lvbj86IHN0cmluZyk6IE9ic2VydmFibGU8UHJvZHVjdE1vZGVsc0NvbnRhaW5lcj4ge1xuICAgIHJldHVybiBmb3JrSm9pbihbdGhpcy5nZXRNb2RlbChpZCwgdmVyc2lvbiksIHRoaXMuZ2V0TGlua2VkTW9kZWxzKGlkLCB2ZXJzaW9uKV0pLnBpcGUoXG4gICAgICBtYXAoKFttb2RlbCwgbGlua2VkTW9kZWxzXSkgPT4ge1xuICAgICAgICBjb25zdCBjb250YWluZXIgPSBuZXcgUHJvZHVjdE1vZGVsc0NvbnRhaW5lcihtb2RlbCwgbGlua2VkTW9kZWxzID8/IFtdKTtcblxuICAgICAgICBNb2RlbFV0aWxzLm92ZXJyaWRlKGNvbnRhaW5lci5tYWluLCBjb250YWluZXIubGlua2VkKTtcbiAgICAgICAgTW9kZWxUcmFuc2xhdG9yVXRpbHMudG9Mb2NhbE1vZGVsKGNvbnRhaW5lci5tYWluLCBjb250YWluZXIubGlua2VkKTtcblxuICAgICAgICByZXR1cm4gY29udGFpbmVyO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRQTUwobW9kZWxJZDogc3RyaW5nLCB2ZXJzaW9uPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsID0gYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHttb2RlbElkfS9wbWwvJHt2ZXJzaW9ufWA7XG5cbiAgICBpZiAodmVyc2lvbikge1xuICAgICAgdXJsICs9IGAvdmVyc2lvbnMvJHt2ZXJzaW9ufWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybCxcbiAgICAgIHJlc3BvbnNlVHlwZTogJ3RleHQnLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNhdmVQTUwobW9kZWxJZDogc3RyaW5nLCBwbWw6IHN0cmluZywgY29tbWVudDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZVxuICAgICAgLmFwaSh7XG4gICAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHttb2RlbElkfS9wbWxgLFxuICAgICAgICBib2R5OiB7XG4gICAgICAgICAgaWQ6IG1vZGVsSWQsXG4gICAgICAgICAgcG1sOiBwbWwsXG4gICAgICAgICAgY29tbWVudDogY29tbWVudCxcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJlc3VsdCA9PiB7XG4gICAgICAgICAgaWYgKHJlc3VsdC5zdWNjZXNzZnVsKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihyZXN1bHQubWVzc2FnZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmh0dHBTZXJ2aWNlLmhhbmRsZVZhbGlkYXRpb25FcnJvciksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGdlbmVyYXRlUHJvZHVjdHMobW9kZWxJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxQcm9kdWN0TW9kZWw+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke21vZGVsSWR9L2dlbmVyYXRlLXByb2R1Y3RzYCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlTW9kZWwocHJvZHVjdE1vZGVsOiBQcm9kdWN0TW9kZWwsIGNvbW1lbnQ6IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgY29uc3QgbW9kZWwgPSBFbnRpdHlVdGlsLmNsb25lKHByb2R1Y3RNb2RlbCk7XG4gICAgbW9kZWwuY29tbWVudCA9IGNvbW1lbnQ7XG4gICAgTW9kZWxUcmFuc2xhdG9yVXRpbHMudG9TZXJ2ZXJNb2RlbChtb2RlbCk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZVxuICAgICAgLmFwaSh7XG4gICAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHttb2RlbC5pZH1gLFxuICAgICAgICBib2R5OiBtb2RlbCxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJlc3VsdCA9PiB7XG4gICAgICAgICAgaWYgKHJlc3VsdC5zdWNjZXNzZnVsKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihyZXN1bHQubWVzc2FnZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmh0dHBTZXJ2aWNlLmhhbmRsZVZhbGlkYXRpb25FcnJvciksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIHZhbGlkYXRlTW9kZWwocHJvZHVjdE1vZGVsOiBQcm9kdWN0TW9kZWwpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlXG4gICAgICAuYXBpKHtcbiAgICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vdmFsaWRhdGVgLFxuICAgICAgICBib2R5OiBwcm9kdWN0TW9kZWwsXG4gICAgICAgIGVycm9ySGFuZGxlcjogdGhpcy5odHRwU2VydmljZS5oYW5kbGVWYWxpZGF0aW9uRXJyb3IsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChyZXN1bHQgPT4ge1xuICAgICAgICAgIGlmIChyZXN1bHQuc3VjY2Vzc2Z1bCkge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IocmVzdWx0Lm1lc3NhZ2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIHJlbmFtZU1vZGVsKHByb2R1Y3RNb2RlbDogUHJvZHVjdE1vZGVsLCBuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IG1vZGVsID0gRW50aXR5VXRpbC5jbG9uZShwcm9kdWN0TW9kZWwpO1xuICAgIG1vZGVsLm5hbWUgPSBuYW1lO1xuICAgIE1vZGVsVHJhbnNsYXRvclV0aWxzLnRvU2VydmVyTW9kZWwobW9kZWwpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICBtZXRob2Q6ICdwYXRjaCcsXG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHttb2RlbC5pZH1gLFxuICAgICAgICBib2R5OiBtb2RlbCxcbiAgICAgIH0pXG4gICAgICAucGlwZShjYXRjaEVycm9yKHRoaXMuaHR0cFNlcnZpY2UuaGFuZGxlVmFsaWRhdGlvbkVycm9yKSk7XG4gIH1cblxuICBwdWJsaWMgdXBsb2FkUG1sRmlsZShmaWxlOiBGaWxlLCBtb2RlbElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIGZpbGUsIGZpbGUubmFtZSk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS51cGxvYWQoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke21vZGVsSWR9L3BtbC91cGxvYWRgLFxuICAgICAgYm9keTogZm9ybURhdGEsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcnVuUG1sKFxuICAgIG1vZGVsSWQ6IHN0cmluZyxcbiAgICBwbWw6IHN0cmluZyxcbiAgICByb290VHlwZTogc3RyaW5nLFxuICAgIGNvbmZpZ3VyYXRpb25Nb2RlOiBQbWxDb25maWd1cmF0aW9uTW9kZSxcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7bW9kZWxJZH0vcG1sL3J1bmAsXG4gICAgICBib2R5OiB7XG4gICAgICAgIHBtbCxcbiAgICAgICAgcm9vdFR5cGUsXG4gICAgICAgIGNvbmZpZ3VyYXRpb25Nb2RlLFxuICAgICAgfSxcbiAgICAgIHJlc3BvbnNlVHlwZTogJ3RleHQnLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGV2aWN0QWxsQ2FjaGUoKTogT2JzZXJ2YWJsZTx7IHJlc3VsdDogc3RyaW5nIH0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHVybDogJy9jYWNoZS9ldmljdC9lbnZpcm9ubWVudC12YXJpYWJsZXMnLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1tb2RlbC1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvcHJvZHVjdC1tb2RlbC1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFFTCxVQUFVLEVBRVYsb0JBQW9CLEVBQ3BCLFVBQVUsRUFHVixzQkFBc0IsR0FFdkIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsUUFBUSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUdqRCxNQUFNLE9BQU8sc0JBQXNCO0lBS2pDLFlBQW9CLFdBQTRCO1FBQTVCLGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtRQUYvQixnQkFBVyxHQUFHLFNBQVMsQ0FBQztJQUVVLENBQUM7SUFFN0MsUUFBUSxDQUFDLEtBQW1CO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLFdBQVc7YUFDcEIsR0FBRyxDQUFDO1lBQ0gsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDckIsSUFBSSxFQUFFLEtBQUs7WUFDWCxZQUFZLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUI7U0FDckQsQ0FBQzthQUNELElBQUksQ0FDSCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDWCxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUU7Z0JBQ3JCLE9BQU8sTUFBTSxDQUFDO2FBQ2Y7aUJBQU07Z0JBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDakM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVNLFlBQVksQ0FBQyxLQUEw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LEdBQUc7Z0JBQ0gsUUFBUTtnQkFDUixpQkFBaUI7YUFDbEI7WUFDRCxZQUFZLEVBQUUsTUFBTTtTQUNyQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsR0FBRyxFQUFFLG9DQUFvQztTQUMxQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQWhSYSxrQ0FBVyxHQUFHLEdBQUcsQ0FBQzttSEFEckIsc0JBQXNCO3VIQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEJhc2VIdHRwU2VydmljZSxcbiAgRW50aXR5VXRpbCxcbiAgTW9kZWxSZWxlYXNlUmVxdWVzdCxcbiAgTW9kZWxUcmFuc2xhdG9yVXRpbHMsXG4gIE1vZGVsVXRpbHMsXG4gIFBtbENvbmZpZ3VyYXRpb25Nb2RlLFxuICBQcm9kdWN0TW9kZWwsXG4gIFByb2R1Y3RNb2RlbHNDb250YWluZXIsXG4gIFByb2R1Y3RNb2RlbFZlcnNpb24sXG59IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RNb2RlbEFwaVNlcnZpY2Uge1xuICBwdWJsaWMgc3RhdGljIE1BWF9SRVNVTFRTID0gMjAwO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgU0VSVklDRV9VUkwgPSAnL21vZGVscyc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBhZGRNb2RlbChtb2RlbDogUHJvZHVjdE1vZGVsKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZVxuICAgICAgLmFwaSh7XG4gICAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgICB1cmw6IHRoaXMuU0VSVklDRV9VUkwsXG4gICAgICAgIGJvZHk6IG1vZGVsLFxuICAgICAgICBlcnJvckhhbmRsZXI6IHRoaXMuaHR0cFNlcnZpY2UuaGFuZGxlVmFsaWRhdGlvbkVycm9yLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAocmVzdWx0ID0+IHtcbiAgICAgICAgICBpZiAocmVzdWx0LnN1Y2Nlc3NmdWwpIHtcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihyZXN1bHQubWVzc2FnZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgcmVsZWFzZU1vZGVsKG1vZGVsOiBNb2RlbFJlbGVhc2VSZXF1ZXN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZVxuICAgICAgLmFwaSh7XG4gICAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHttb2RlbC5pZH0vcmVsZWFzZWAsXG4gICAgICAgIGJvZHk6IG1vZGVsLFxuICAgICAgICBlcnJvckhhbmRsZXI6IHRoaXMuaHR0cFNlcnZpY2UuaGFuZGxlVmFsaWRhdGlvbkVycm9yLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAocmVzdWx0ID0+IHtcbiAgICAgICAgICBpZiAocmVzdWx0LnN1Y2Nlc3NmdWwpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHJlc3VsdC5tZXNzYWdlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVNb2RlbChtb2RlbElkOiBzdHJpbmcsIHN1Y2Nlc3NGbj86IGFueSwgZmFpbHVyZUZuPzogYW55KTogdm9pZCB7XG4gICAgY29uc3Qgb2JzZXJ2YWJsZSA9IHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICBtZXRob2Q6ICdkZWxldGUnLFxuICAgICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7bW9kZWxJZH1gLFxuICAgICAgICBlcnJvckhhbmRsZXI6IHRoaXMuaHR0cFNlcnZpY2UuaGFuZGxlVmFsaWRhdGlvbkVycm9yLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAocmVzdWx0ID0+IHtcbiAgICAgICAgICBpZiAocmVzdWx0LnN1Y2Nlc3NmdWwpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHJlc3VsdC5tZXNzYWdlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgKTtcblxuICAgIG9ic2VydmFibGUuc3Vic2NyaWJlKFxuICAgICAgKCkgPT4ge1xuICAgICAgICBzdWNjZXNzRm4gJiYgc3VjY2Vzc0ZuLmFwcGx5KCk7XG4gICAgICB9LFxuICAgICAgKCkgPT4ge1xuICAgICAgICBmYWlsdXJlRm4gJiYgZmFpbHVyZUZuLmFwcGx5KCk7XG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TW9kZWxWZXJzaW9ucyhtb2RlbElkOiBzdHJpbmcsIGNvdW50OiBudW1iZXIgPSAxMDAsIHNraXA6IG51bWJlciA9IDApOiBPYnNlcnZhYmxlPFByb2R1Y3RNb2RlbFZlcnNpb25bXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHttb2RlbElkfS92ZXJzaW9uc2AsXG4gICAgICBib2R5OiB7XG4gICAgICAgIHNraXBDb3VudDogc2tpcCxcbiAgICAgICAgY291bnQ6IGNvdW50LFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNb2RlbChpZDogc3RyaW5nLCB2ZXJzaW9uPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxQcm9kdWN0TW9kZWw+IHtcbiAgICBsZXQgdXJsID0gYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH1gO1xuXG4gICAgaWYgKHZlcnNpb24pIHtcbiAgICAgIHVybCArPSBgL3ZlcnNpb25zLyR7dmVyc2lvbn1gO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7IHVybCB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNb2RlbHMoc2tpcENvdW50OiBudW1iZXIsIHNlYXJjaFRleHQ6IHN0cmluZyk6IE9ic2VydmFibGU8UHJvZHVjdE1vZGVsW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9L3NlYXJjaGAsXG4gICAgICBib2R5OiB7XG4gICAgICAgIG5hbWVSZWdleDogc2VhcmNoVGV4dCxcbiAgICAgICAgc2tpcENvdW50OiBza2lwQ291bnQudG9TdHJpbmcoKSxcbiAgICAgICAgY291bnQ6IFByb2R1Y3RNb2RlbEFwaVNlcnZpY2UuTUFYX1JFU1VMVFMsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldExpbmtlZE1vZGVscyhpZDogc3RyaW5nLCB2ZXJzaW9uPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxQcm9kdWN0TW9kZWxbXT4ge1xuICAgIGxldCB1cmwgPSBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfWA7XG5cbiAgICBpZiAodmVyc2lvbikge1xuICAgICAgdXJsICs9IGAvdmVyc2lvbnMvJHt2ZXJzaW9ufWA7XG4gICAgfVxuXG4gICAgdXJsICs9ICcvbGlua2VkJztcblxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7IHVybCB9KS5waXBlKFxuICAgICAgbWFwKChsaW5rZWRNb2RlbHM6IFByb2R1Y3RNb2RlbFtdKSA9PiB7XG4gICAgICAgIGlmIChsaW5rZWRNb2RlbHMpIHtcbiAgICAgICAgICBsaW5rZWRNb2RlbHMuZm9yRWFjaChtb2RlbCA9PiBNb2RlbFRyYW5zbGF0b3JVdGlscy50b0xvY2FsTW9kZWwobW9kZWwpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbGlua2VkTW9kZWxzO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKiBXaWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciByZWxlYXNlXG4gICAqL1xuICBwdWJsaWMgbG9hZChpZDogc3RyaW5nLCB2ZXJzaW9uPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxQcm9kdWN0TW9kZWxzQ29udGFpbmVyPiB7XG4gICAgcmV0dXJuIGZvcmtKb2luKFt0aGlzLmdldE1vZGVsKGlkLCB2ZXJzaW9uKSwgdGhpcy5nZXRMaW5rZWRNb2RlbHMoaWQsIHZlcnNpb24pXSkucGlwZShcbiAgICAgIG1hcCgoW21vZGVsLCBsaW5rZWRNb2RlbHNdKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lciA9IG5ldyBQcm9kdWN0TW9kZWxzQ29udGFpbmVyKG1vZGVsLCBsaW5rZWRNb2RlbHMgPz8gW10pO1xuXG4gICAgICAgIE1vZGVsVXRpbHMub3ZlcnJpZGUoY29udGFpbmVyLm1haW4sIGNvbnRhaW5lci5saW5rZWQpO1xuICAgICAgICBNb2RlbFRyYW5zbGF0b3JVdGlscy50b0xvY2FsTW9kZWwoY29udGFpbmVyLm1haW4sIGNvbnRhaW5lci5saW5rZWQpO1xuXG4gICAgICAgIHJldHVybiBjb250YWluZXI7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldFBNTChtb2RlbElkOiBzdHJpbmcsIHZlcnNpb24/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1cmwgPSBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke21vZGVsSWR9L3BtbC8ke3ZlcnNpb259YDtcblxuICAgIGlmICh2ZXJzaW9uKSB7XG4gICAgICB1cmwgKz0gYC92ZXJzaW9ucy8ke3ZlcnNpb259YDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsLFxuICAgICAgcmVzcG9uc2VUeXBlOiAndGV4dCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2F2ZVBNTChtb2RlbElkOiBzdHJpbmcsIHBtbDogc3RyaW5nLCBjb21tZW50OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlXG4gICAgICAuYXBpKHtcbiAgICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke21vZGVsSWR9L3BtbGAsXG4gICAgICAgIGJvZHk6IHtcbiAgICAgICAgICBpZDogbW9kZWxJZCxcbiAgICAgICAgICBwbWw6IHBtbCxcbiAgICAgICAgICBjb21tZW50OiBjb21tZW50LFxuICAgICAgICB9LFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAocmVzdWx0ID0+IHtcbiAgICAgICAgICBpZiAocmVzdWx0LnN1Y2Nlc3NmdWwpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHJlc3VsdC5tZXNzYWdlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICBjYXRjaEVycm9yKHRoaXMuaHR0cFNlcnZpY2UuaGFuZGxlVmFsaWRhdGlvbkVycm9yKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVQcm9kdWN0cyhtb2RlbElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb2R1Y3RNb2RlbD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7bW9kZWxJZH0vZ2VuZXJhdGUtcHJvZHVjdHNgLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNhdmVNb2RlbChwcm9kdWN0TW9kZWw6IFByb2R1Y3RNb2RlbCwgY29tbWVudDogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICBjb25zdCBtb2RlbCA9IEVudGl0eVV0aWwuY2xvbmUocHJvZHVjdE1vZGVsKTtcbiAgICBtb2RlbC5jb21tZW50ID0gY29tbWVudDtcbiAgICBNb2RlbFRyYW5zbGF0b3JVdGlscy50b1NlcnZlck1vZGVsKG1vZGVsKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlXG4gICAgICAuYXBpKHtcbiAgICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke21vZGVsLmlkfWAsXG4gICAgICAgIGJvZHk6IG1vZGVsLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAocmVzdWx0ID0+IHtcbiAgICAgICAgICBpZiAocmVzdWx0LnN1Y2Nlc3NmdWwpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHJlc3VsdC5tZXNzYWdlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICBjYXRjaEVycm9yKHRoaXMuaHR0cFNlcnZpY2UuaGFuZGxlVmFsaWRhdGlvbkVycm9yKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgdmFsaWRhdGVNb2RlbChwcm9kdWN0TW9kZWw6IFByb2R1Y3RNb2RlbCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS92YWxpZGF0ZWAsXG4gICAgICAgIGJvZHk6IHByb2R1Y3RNb2RlbCxcbiAgICAgICAgZXJyb3JIYW5kbGVyOiB0aGlzLmh0dHBTZXJ2aWNlLmhhbmRsZVZhbGlkYXRpb25FcnJvcixcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJlc3VsdCA9PiB7XG4gICAgICAgICAgaWYgKHJlc3VsdC5zdWNjZXNzZnVsKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihyZXN1bHQubWVzc2FnZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgcmVuYW1lTW9kZWwocHJvZHVjdE1vZGVsOiBQcm9kdWN0TW9kZWwsIG5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3QgbW9kZWwgPSBFbnRpdHlVdGlsLmNsb25lKHByb2R1Y3RNb2RlbCk7XG4gICAgbW9kZWwubmFtZSA9IG5hbWU7XG4gICAgTW9kZWxUcmFuc2xhdG9yVXRpbHMudG9TZXJ2ZXJNb2RlbChtb2RlbCk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZVxuICAgICAgLmFwaSh7XG4gICAgICAgIG1ldGhvZDogJ3BhdGNoJyxcbiAgICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke21vZGVsLmlkfWAsXG4gICAgICAgIGJvZHk6IG1vZGVsLFxuICAgICAgfSlcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5odHRwU2VydmljZS5oYW5kbGVWYWxpZGF0aW9uRXJyb3IpKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGxvYWRQbWxGaWxlKGZpbGU6IEZpbGUsIG1vZGVsSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3QgZm9ybURhdGE6IEZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlJywgZmlsZSwgZmlsZS5uYW1lKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLnVwbG9hZCh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7bW9kZWxJZH0vcG1sL3VwbG9hZGAsXG4gICAgICBib2R5OiBmb3JtRGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBydW5QbWwoXG4gICAgbW9kZWxJZDogc3RyaW5nLFxuICAgIHBtbDogc3RyaW5nLFxuICAgIHJvb3RUeXBlOiBzdHJpbmcsXG4gICAgY29uZmlndXJhdGlvbk1vZGU6IFBtbENvbmZpZ3VyYXRpb25Nb2RlLFxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHttb2RlbElkfS9wbWwvcnVuYCxcbiAgICAgIGJvZHk6IHtcbiAgICAgICAgcG1sLFxuICAgICAgICByb290VHlwZSxcbiAgICAgICAgY29uZmlndXJhdGlvbk1vZGUsXG4gICAgICB9LFxuICAgICAgcmVzcG9uc2VUeXBlOiAndGV4dCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZXZpY3RBbGxDYWNoZSgpOiBPYnNlcnZhYmxlPHsgcmVzdWx0OiBzdHJpbmcgfT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgdXJsOiAnL2NhY2hlL2V2aWN0L2Vudmlyb25tZW50LXZhcmlhYmxlcycsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -3,8 +3,8 @@ import { HttpParams, HttpErrorResponse, HttpClientModule } from '@angular/common
3
3
  import * as i0 from '@angular/core';
4
4
  import { Injectable, NgModule } from '@angular/core';
5
5
  import * as i1 from '@veloceapps/core';
6
- import { ModelTranslatorUtils, ConfigurationContextMode, isLegacyDocumentTemplate, DocxTemplater, QuoteDraft, StringUtils, Expression, Operator, ProductModelsContainer, ModelUtils, EntityUtil, RuleGroupTypes, parseJsonSafely, BaseHttpService, XrayService } from '@veloceapps/core';
7
- import { throwError, of, zip, forkJoin, map as map$1, noop, catchError as catchError$1, switchMap as switchMap$1 } from 'rxjs';
6
+ import { uiDefinitionFromDTO, isLegacyUIDefinition, ModelTranslatorUtils, ConfigurationContextMode, isLegacyDocumentTemplate, DocxTemplater, QuoteDraft, StringUtils, Expression, Operator, ProductModelsContainer, ModelUtils, EntityUtil, RuleGroupTypes, parseJsonSafely, BaseHttpService, XrayService } from '@veloceapps/core';
7
+ import { noop, throwError, of, zip, forkJoin, map as map$1, catchError as catchError$1, switchMap as switchMap$1 } from 'rxjs';
8
8
  import { map, catchError, tap, switchMap, defaultIfEmpty } from 'rxjs/operators';
9
9
  import * as i2 from 'primeng/api';
10
10
  import { CurrencyPipe } from '@angular/common';
@@ -211,6 +211,32 @@ class CatalogAdminApiService {
211
211
  });
212
212
  };
213
213
  }
214
+ attachImage$(catalogId, categoryId, file) {
215
+ const data = new FormData();
216
+ data.append('image', file);
217
+ return this.baseHttpService.upload({
218
+ method: 'post',
219
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/image`,
220
+ body: data,
221
+ });
222
+ }
223
+ removeImage$(catalogId, categoryId) {
224
+ return this.baseHttpService.api({
225
+ method: 'delete',
226
+ url: `${this.serviceUrl}/${catalogId}/categories/${categoryId}/image`,
227
+ });
228
+ }
229
+ fetchImage$(catalogId, categoryId) {
230
+ return this.baseHttpService.api({
231
+ url: this.getImageUrl(catalogId, categoryId),
232
+ method: 'get',
233
+ responseType: 'blob',
234
+ errorHandler: noop,
235
+ });
236
+ }
237
+ getImageUrl(catalogId, categoryId) {
238
+ return `${this.serviceUrl}/${catalogId}/categories/${categoryId}/image`;
239
+ }
214
240
  }
215
241
  CatalogAdminApiService.MAX_RESULTS = 60;
216
242
  CatalogAdminApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CatalogAdminApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -334,11 +360,13 @@ class ConfigurationApiService {
334
360
  url: `${this.SERVICE_URL}/${productId}/model` + ((offeringId && `/${offeringId}`) || ''),
335
361
  })
336
362
  .pipe(map(runtimeData => {
337
- runtimeData.uiDefinitions = JSON.parse(runtimeData.uiDefinitionsSource);
338
- runtimeData.uiDefinitions.forEach(uiDefinition => {
339
- ModelTranslatorUtils.toLocalUIDefinition(uiDefinition);
340
- });
341
- return runtimeData;
363
+ return Object.assign(Object.assign({}, runtimeData), { uiDefinitions: runtimeData.uiDefinitions.map(dto => {
364
+ const uiDefinitionContainer = uiDefinitionFromDTO(dto);
365
+ if (isLegacyUIDefinition(uiDefinitionContainer.source)) {
366
+ ModelTranslatorUtils.toLocalUIDefinition(uiDefinitionContainer.source);
367
+ }
368
+ return uiDefinitionContainer;
369
+ }) });
342
370
  }));
343
371
  }
344
372
  getRuntimeDataByModelId(modelId) {
@@ -1564,6 +1592,11 @@ class ProductModelApiService {
1564
1592
  return linkedModels;
1565
1593
  }));
1566
1594
  }
1595
+ /**
1596
+ *
1597
+ * @deprecated
1598
+ * Will be removed in next major release
1599
+ */
1567
1600
  load(id, version) {
1568
1601
  return forkJoin([this.getModel(id, version), this.getLinkedModels(id, version)]).pipe(map(([model, linkedModels]) => {
1569
1602
  const container = new ProductModelsContainer(model, linkedModels !== null && linkedModels !== void 0 ? linkedModels : []);