@veloceapps/api 8.0.0-2 → 8.0.0-200
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/esm2020/index.mjs +10 -1
- package/esm2020/lib/api.module.mjs +32 -5
- package/esm2020/lib/services/account-api.service.mjs +11 -4
- package/esm2020/lib/services/auth.service.mjs +22 -0
- package/esm2020/lib/services/catalog-admin-api.service.mjs +3 -3
- package/esm2020/lib/services/catalog-api.service.mjs +3 -3
- package/esm2020/lib/services/configuration-api.service.mjs +48 -15
- package/esm2020/lib/services/configuration-processors-api.service.mjs +38 -0
- package/esm2020/lib/services/configuration-settings-api.service.mjs +3 -3
- package/esm2020/lib/services/context-api.service.mjs +3 -3
- package/esm2020/lib/services/contracted-price-api.service.mjs +45 -0
- package/esm2020/lib/services/delta-api.service.mjs +3 -3
- package/esm2020/lib/services/document-attachment-api.service.mjs +3 -3
- package/esm2020/lib/services/document-templates-api.service.mjs +9 -7
- package/esm2020/lib/services/endpoints-api.service.mjs +3 -3
- package/esm2020/lib/services/flow-state-api.mjs +142 -0
- package/esm2020/lib/services/flows-api.service.mjs +12 -8
- package/esm2020/lib/services/guided-sellings-admin-api.service.mjs +3 -3
- package/esm2020/lib/services/guided-sellings-api.service.mjs +3 -3
- package/esm2020/lib/services/offers-api.service.mjs +3 -3
- package/esm2020/lib/services/org-info-api.service.mjs +47 -12
- package/esm2020/lib/services/picklists-api.service.mjs +3 -3
- package/esm2020/lib/services/portals-api.service.mjs +76 -0
- package/esm2020/lib/services/price-api.service.mjs +3 -3
- package/esm2020/lib/services/procedures-api.service.mjs +10 -4
- package/esm2020/lib/services/product-api.service.mjs +3 -3
- package/esm2020/lib/services/product-model-api.service.mjs +3 -3
- package/esm2020/lib/services/promotions-api.service.mjs +68 -0
- package/esm2020/lib/services/quote-api.service.mjs +21 -5
- package/esm2020/lib/services/ramp-api.service.mjs +3 -3
- package/esm2020/lib/services/rebate-program-api.service.mjs +68 -0
- package/esm2020/lib/services/rebate-type-api.service.mjs +68 -0
- package/esm2020/lib/services/rule-groups-api.service.mjs +3 -3
- package/esm2020/lib/services/rules-api.service.mjs +20 -7
- package/esm2020/lib/services/salesforce-api.service.mjs +7 -5
- package/esm2020/lib/services/sandbox-manager-api.service.mjs +94 -0
- package/esm2020/lib/services/scripts-api.service.mjs +15 -8
- package/esm2020/lib/services/shopping-cart-settings-api.service.mjs +3 -3
- package/esm2020/lib/services/stateful-configuration-api.mjs +4 -4
- package/esm2020/lib/services/ui-definitions-api.service.mjs +3 -3
- package/esm2020/lib/services/ui-templates-api.service.mjs +9 -4
- package/esm2020/lib/services/veloce-objects-api.service.mjs +14 -4
- package/esm2020/lib/types/auth.types.mjs +2 -0
- package/esm2020/lib/types/index.mjs +3 -1
- package/esm2020/lib/types/org-info.types.mjs +1 -1
- package/esm2020/lib/types/quote.types.mjs +2 -0
- package/esm2020/lib/types/stateful-configuration.types.mjs +1 -1
- package/esm2020/lib/utils/canvas.utils.mjs +33 -0
- package/fesm2015/veloceapps-api.mjs +891 -143
- package/fesm2015/veloceapps-api.mjs.map +1 -1
- package/fesm2020/veloceapps-api.mjs +906 -139
- package/fesm2020/veloceapps-api.mjs.map +1 -1
- package/index.d.ts +9 -0
- package/lib/services/account-api.service.d.ts +2 -1
- package/lib/services/auth.service.d.ts +11 -0
- package/lib/services/configuration-api.service.d.ts +5 -0
- package/lib/services/configuration-processors-api.service.d.ts +14 -0
- package/lib/services/contracted-price-api.service.d.ts +16 -0
- package/lib/services/flow-state-api.d.ts +84 -0
- package/lib/services/flows-api.service.d.ts +1 -1
- package/lib/services/org-info-api.service.d.ts +13 -7
- package/lib/services/portals-api.service.d.ts +20 -0
- package/lib/services/procedures-api.service.d.ts +1 -0
- package/lib/services/promotions-api.service.d.ts +19 -0
- package/lib/services/quote-api.service.d.ts +13 -6
- package/lib/services/rebate-program-api.service.d.ts +19 -0
- package/lib/services/rebate-type-api.service.d.ts +19 -0
- package/lib/services/rules-api.service.d.ts +2 -1
- package/lib/services/salesforce-api.service.d.ts +1 -1
- package/lib/services/sandbox-manager-api.service.d.ts +24 -0
- package/lib/services/scripts-api.service.d.ts +2 -2
- package/lib/services/stateful-configuration-api.d.ts +2 -2
- package/lib/services/ui-templates-api.service.d.ts +1 -0
- package/lib/services/veloce-objects-api.service.d.ts +2 -1
- package/lib/types/auth.types.d.ts +4 -0
- package/lib/types/index.d.ts +2 -0
- package/lib/types/org-info.types.d.ts +19 -0
- package/lib/types/quote.types.d.ts +8 -0
- package/lib/types/stateful-configuration.types.d.ts +1 -1
- package/lib/utils/canvas.utils.d.ts +18 -0
- package/package.json +1 -1
@@ -18,9 +18,9 @@ export class ContextApiService {
|
|
18
18
|
});
|
19
19
|
}
|
20
20
|
}
|
21
|
-
ContextApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
22
|
-
ContextApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
21
|
+
ContextApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ContextApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
22
|
+
ContextApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ContextApiService });
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ContextApiService, decorators: [{
|
24
24
|
type: Injectable
|
25
25
|
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
26
26
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvY29udGV4dC1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBeUMsd0JBQXdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBSW5HLE1BQU0sT0FBTyxpQkFBaUI7SUFHNUIsWUFBb0IsV0FBNEI7UUFBNUIsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBRi9CLGdCQUFXLEdBQUcsVUFBVSxDQUFDO0lBRVMsQ0FBQztJQUU3QyxVQUFVLENBQUMsUUFBZ0IsRUFBRSxJQUE4QjtRQUNoRSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsSUFBSSxFQUFFO2dCQUNKLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixXQUFXLEVBQUUsd0JBQXdCLENBQUMsSUFBSSxDQUFDO2FBQzVDO1lBQ0QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRTtTQUMzQixDQUFDLENBQUM7SUFDTCxDQUFDOzs4R0FkVSxpQkFBaUI7a0hBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZUh0dHBTZXJ2aWNlLCBDb25maWd1cmF0aW9uQ29udGV4dCwgQ29uZmlndXJhdGlvbkNvbnRleHRNb2RlIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb250ZXh0QXBpU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgU0VSVklDRV9VUkwgPSAnL2NvbnRleHQnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cFNlcnZpY2U6IEJhc2VIdHRwU2VydmljZSkge31cblxuICBwdWJsaWMgZ2V0Q29udGV4dChoZWFkZXJJZDogc3RyaW5nLCBtb2RlOiBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUpOiBPYnNlcnZhYmxlPENvbmZpZ3VyYXRpb25Db250ZXh0PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keToge1xuICAgICAgICBoZWFkZXJJZDogaGVhZGVySWQsXG4gICAgICAgIGNvbnRleHRNb2RlOiBDb25maWd1cmF0aW9uQ29udGV4dE1vZGVbbW9kZV0sXG4gICAgICB9LFxuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfWAsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,45 @@
|
|
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 "@veloceapps/core";
|
5
|
+
export class ContractedPriceApiService {
|
6
|
+
constructor(baseHttpService) {
|
7
|
+
this.baseHttpService = baseHttpService;
|
8
|
+
this.serviceUrl = '/admin/contracted-price';
|
9
|
+
this.fetchContractedPrices$ = () => {
|
10
|
+
return this.baseHttpService.api({ url: `${this.serviceUrl}` });
|
11
|
+
};
|
12
|
+
this.fetchContractedPrice$ = (id) => {
|
13
|
+
return this.baseHttpService.api({ url: `${this.serviceUrl}/${id}` });
|
14
|
+
};
|
15
|
+
this.createContractedPrice$ = (data) => {
|
16
|
+
return this.baseHttpService.api({
|
17
|
+
url: `${this.serviceUrl}`,
|
18
|
+
method: 'put',
|
19
|
+
body: data,
|
20
|
+
});
|
21
|
+
};
|
22
|
+
this.updateContractedPrice$ = (data) => {
|
23
|
+
return this.baseHttpService.api({
|
24
|
+
url: `${this.serviceUrl}/${data.id}`,
|
25
|
+
method: 'put',
|
26
|
+
body: data,
|
27
|
+
});
|
28
|
+
};
|
29
|
+
this.searchContractedPrices$ = (searchParams, expression) => {
|
30
|
+
const params = new HttpParams({ fromObject: { ...searchParams } });
|
31
|
+
return this.baseHttpService.api({
|
32
|
+
method: 'post',
|
33
|
+
url: `${this.serviceUrl}/search`,
|
34
|
+
params,
|
35
|
+
body: expression || {},
|
36
|
+
});
|
37
|
+
};
|
38
|
+
}
|
39
|
+
}
|
40
|
+
ContractedPriceApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ContractedPriceApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
41
|
+
ContractedPriceApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ContractedPriceApiService });
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ContractedPriceApiService, decorators: [{
|
43
|
+
type: Injectable
|
44
|
+
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RlZC1wcmljZS1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvY29udHJhY3RlZC1wcmljZS1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTTNDLE1BQU0sT0FBTyx5QkFBeUI7SUFHcEMsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBRm5DLGVBQVUsR0FBRyx5QkFBeUIsQ0FBQztRQUlqRCwyQkFBc0IsR0FBRyxHQUFrQyxFQUFFO1lBQ2xFLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pFLENBQUMsQ0FBQztRQUVLLDBCQUFxQixHQUFHLENBQUMsRUFBVSxFQUErQixFQUFFO1lBQ3pFLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN2RSxDQUFDLENBQUM7UUFFSywyQkFBc0IsR0FBRyxDQUFDLElBQXdCLEVBQStCLEVBQUU7WUFDeEYsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQztnQkFDOUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDekIsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsSUFBSSxFQUFFLElBQUk7YUFDWCxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7UUFFSywyQkFBc0IsR0FBRyxDQUFDLElBQXFCLEVBQStCLEVBQUU7WUFDckYsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQztnQkFDOUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFO2dCQUNwQyxNQUFNLEVBQUUsS0FBSztnQkFDYixJQUFJLEVBQUUsSUFBSTthQUNYLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztRQUVLLDRCQUF1QixHQUFHLENBQy9CLFlBQWdDLEVBQ2hDLFVBQXVCLEVBQ00sRUFBRTtZQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFFLEdBQUcsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRW5FLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7Z0JBQzlCLE1BQU0sRUFBRSxNQUFNO2dCQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLFNBQVM7Z0JBQ2hDLE1BQU07Z0JBQ04sSUFBSSxFQUFFLFVBQVUsSUFBSSxFQUFFO2FBQ3ZCLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztJQXRDcUQsQ0FBQzs7c0hBSDdDLHlCQUF5QjswSEFBekIseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZUh0dHBTZXJ2aWNlLCBDb250cmFjdGVkUHJpY2UsIEV4cHJlc3Npb24sIEd1aWRlZFNlbGxpbmcsIE5ld0NvbnRyYWN0ZWRQcmljZSB9IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUXVlcnlTZWFyY2hQYXJhbXMgfSBmcm9tICcuLi90eXBlcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb250cmFjdGVkUHJpY2VBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlVXJsID0gJy9hZG1pbi9jb250cmFjdGVkLXByaWNlJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJhc2VIdHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBmZXRjaENvbnRyYWN0ZWRQcmljZXMkID0gKCk6IE9ic2VydmFibGU8Q29udHJhY3RlZFByaWNlW10+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHsgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9YCB9KTtcbiAgfTtcblxuICBwdWJsaWMgZmV0Y2hDb250cmFjdGVkUHJpY2UkID0gKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPENvbnRyYWN0ZWRQcmljZT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoeyB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtpZH1gIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBjcmVhdGVDb250cmFjdGVkUHJpY2UkID0gKGRhdGE6IE5ld0NvbnRyYWN0ZWRQcmljZSk6IE9ic2VydmFibGU8Q29udHJhY3RlZFByaWNlPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH1gLFxuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgIGJvZHk6IGRhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHVwZGF0ZUNvbnRyYWN0ZWRQcmljZSQgPSAoZGF0YTogQ29udHJhY3RlZFByaWNlKTogT2JzZXJ2YWJsZTxDb250cmFjdGVkUHJpY2U+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2RhdGEuaWR9YCxcbiAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgICBib2R5OiBkYXRhLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBzZWFyY2hDb250cmFjdGVkUHJpY2VzJCA9IChcbiAgICBzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcyxcbiAgICBleHByZXNzaW9uPzogRXhwcmVzc2lvbixcbiAgKTogT2JzZXJ2YWJsZTxHdWlkZWRTZWxsaW5nW10+ID0+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHsgLi4uc2VhcmNoUGFyYW1zIH0gfSk7XG5cbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9L3NlYXJjaGAsXG4gICAgICBwYXJhbXMsXG4gICAgICBib2R5OiBleHByZXNzaW9uIHx8IHt9LFxuICAgIH0pO1xuICB9O1xufVxuIl19
|
@@ -15,9 +15,9 @@ export class DeltaApiService {
|
|
15
15
|
});
|
16
16
|
}
|
17
17
|
}
|
18
|
-
DeltaApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
19
|
-
DeltaApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
18
|
+
DeltaApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DeltaApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
19
|
+
DeltaApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DeltaApiService });
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DeltaApiService, decorators: [{
|
21
21
|
type: Injectable
|
22
22
|
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
23
23
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsdGEtYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9zcmMvbGliL3NlcnZpY2VzL2RlbHRhLWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU0zQyxNQUFNLE9BQU8sZUFBZTtJQUcxQixZQUFvQixXQUE0QjtRQUE1QixnQkFBVyxHQUFYLFdBQVcsQ0FBaUI7UUFGL0IsZ0JBQVcsR0FBRyxRQUFRLENBQUM7SUFFVyxDQUFDO0lBRTdDLFVBQVUsQ0FBQyxPQUE4QjtRQUM5QyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFhO1lBQ3RDLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsWUFBWTtZQUNwQyxJQUFJLEVBQUUsT0FBTztZQUNiLGdCQUFnQixFQUFFLElBQUk7U0FDdkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7NEdBWlUsZUFBZTtnSEFBZixlQUFlOzJGQUFmLGVBQWU7a0JBRDNCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlSHR0cFNlcnZpY2UsIExpbmVJdGVtIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDYWxjdWxhdGVEZWx0YVJlcXVlc3QgfSBmcm9tICcuLi90eXBlcy9kZWx0YS1yZXF1ZXN0LnR5cGVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERlbHRhQXBpU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgU0VSVklDRV9VUkwgPSAnL2RlbHRhJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHBTZXJ2aWNlOiBCYXNlSHR0cFNlcnZpY2UpIHt9XG5cbiAgcHVibGljIGNhbGN1bGF0ZSQocmVxdWVzdDogQ2FsY3VsYXRlRGVsdGFSZXF1ZXN0KTogT2JzZXJ2YWJsZTxMaW5lSXRlbVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpPExpbmVJdGVtW10+KHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS9jYWxjdWxhdGVgLFxuICAgICAgYm9keTogcmVxdWVzdCxcbiAgICAgIHNraXBFcnJvckhhbmRsZXI6IHRydWUsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
@@ -58,9 +58,9 @@ export class DocumentAttachmentApiService {
|
|
58
58
|
});
|
59
59
|
}
|
60
60
|
}
|
61
|
-
DocumentAttachmentApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
62
|
-
DocumentAttachmentApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
61
|
+
DocumentAttachmentApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocumentAttachmentApiService, deps: [{ token: i1.BaseHttpService }, { token: i1.FileDownloadService }], target: i0.ɵɵFactoryTarget.Injectable });
|
62
|
+
DocumentAttachmentApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocumentAttachmentApiService });
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocumentAttachmentApiService, decorators: [{
|
64
64
|
type: Injectable
|
65
65
|
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }, { type: i1.FileDownloadService }]; } });
|
66
66
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtYXR0YWNobWVudC1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvc2VydmljZXMvZG9jdW1lbnQtYXR0YWNobWVudC1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUcxQyxNQUFNLE9BQU8sNEJBQTRCO0lBR3ZDLFlBQW9CLFdBQTRCLEVBQVUsbUJBQXdDO1FBQTlFLGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtRQUFVLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFGakYsZ0JBQVcsR0FBRyxjQUFjLENBQUM7SUFFdUQsQ0FBQztJQUUvRixjQUFjLENBQUMsYUFBOEM7UUFDbEUsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQztZQUMxQixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxTQUFTO1lBQ2pDLE1BQU0sRUFBRSxNQUFNO1lBQ2QsSUFBSSxFQUFFLGFBQWE7U0FDcEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGdCQUFnQixDQUFDLFVBQXNCLEVBQUUsSUFBVyxFQUFFLGNBQXdCO1FBQ25GLE1BQU0sUUFBUSxHQUFhLElBQUksUUFBUSxFQUFFLENBQUM7UUFFMUMsSUFBSSxJQUFJLEVBQUU7WUFDUixRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzFDO1FBRUQsUUFBUSxDQUFDLE1BQU0sQ0FDYixZQUFZLEVBQ1osSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUU7WUFDckMsSUFBSSxFQUFFLGtCQUFrQjtTQUN6QixDQUFDLENBQ0gsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7WUFDN0IsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUMxQixJQUFJLEVBQUUsUUFBUTtZQUNkLE1BQU0sRUFBRSxNQUFNO1lBQ2QsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQzlDLGNBQWM7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsRUFBVSxFQUFFLFVBQXNCO1FBQ3hELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDMUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUU7WUFDaEMsSUFBSSxFQUFFLFVBQVU7WUFDaEIsTUFBTSxFQUFFLEtBQUs7U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0saUJBQWlCLENBQUMsRUFBVSxFQUFFLGlCQUEyQjtRQUM5RCxPQUFPLElBQUksQ0FBQyxXQUFXO2FBQ3BCLEdBQUcsQ0FBQztZQUNILEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxPQUFPO1lBQ3JDLFlBQVksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxNQUFNO1lBQ3hELE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxVQUFVO1NBQ2pELENBQUM7YUFDRCxJQUFJLENBQ0gsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2IsSUFBSSxDQUFDLGlCQUFpQixFQUFFO2dCQUN0QixJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3BEO1FBQ0gsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksUUFBUSxDQUFDLENBQUMsQ0FDekcsQ0FBQztJQUNOLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxFQUFVO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDMUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUU7WUFDaEMsTUFBTSxFQUFFLFFBQVE7U0FDakIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7eUhBbEVVLDRCQUE0Qjs2SEFBNUIsNEJBQTRCOzJGQUE1Qiw0QkFBNEI7a0JBRHhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdHRhY2htZW50LCBCYXNlSHR0cFNlcnZpY2UsIEZpbGVEb3dubG9hZFNlcnZpY2UsIFRlbXBsYXRlQXR0YWNobWVudFNlYXJjaFJlcXVlc3QgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRG9jdW1lbnRBdHRhY2htZW50QXBpU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgU0VSVklDRV9VUkwgPSAnL2F0dGFjaG1lbnRzJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHBTZXJ2aWNlOiBCYXNlSHR0cFNlcnZpY2UsIHByaXZhdGUgZmlsZURvd25sb2FkU2VydmljZTogRmlsZURvd25sb2FkU2VydmljZSkge31cblxuICBwdWJsaWMgZ2V0QXR0YWNobWVudHMoc2VhcmNoUmVxdWVzdDogVGVtcGxhdGVBdHRhY2htZW50U2VhcmNoUmVxdWVzdCk6IE9ic2VydmFibGU8QXR0YWNobWVudFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vc2VhcmNoYCxcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keTogc2VhcmNoUmVxdWVzdCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVBdHRhY2htZW50KGF0dGFjaG1lbnQ6IEF0dGFjaG1lbnQsIGZpbGU/OiBGaWxlLCByZXBvcnRQcm9ncmVzcz86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPEF0dGFjaG1lbnQ+IHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcblxuICAgIGlmIChmaWxlKSB7XG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBmaWxlLCBmaWxlLm5hbWUpO1xuICAgIH1cblxuICAgIGZvcm1EYXRhLmFwcGVuZChcbiAgICAgICdhdHRhY2htZW50JyxcbiAgICAgIG5ldyBCbG9iKFtKU09OLnN0cmluZ2lmeShhdHRhY2htZW50KV0sIHtcbiAgICAgICAgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLnVwbG9hZCh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9YCxcbiAgICAgIGJvZHk6IGZvcm1EYXRhLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBvYnNlcnZlOiByZXBvcnRQcm9ncmVzcyA/ICdldmVudHMnIDogdW5kZWZpbmVkLFxuICAgICAgcmVwb3J0UHJvZ3Jlc3MsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlQXR0YWNobWVudChpZDogc3RyaW5nLCBhdHRhY2htZW50OiBBdHRhY2htZW50KTogT2JzZXJ2YWJsZTxBdHRhY2htZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH1gLFxuICAgICAgYm9keTogYXR0YWNobWVudCxcbiAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QXR0YWNobWVudEZpbGUoaWQ6IHN0cmluZywgaXNQcmV2ZW50RG93bmxvYWQ/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZVxuICAgICAgLmFwaSh7XG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH0vZmlsZWAsXG4gICAgICAgIHJlc3BvbnNlVHlwZTogaXNQcmV2ZW50RG93bmxvYWQgPyAnYXJyYXlidWZmZXInIDogJ2Jsb2InLFxuICAgICAgICBvYnNlcnZlOiBpc1ByZXZlbnREb3dubG9hZCA/ICdib2R5JyA6ICdyZXNwb25zZScsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcChyZXNwb25zZSA9PiB7XG4gICAgICAgICAgaWYgKCFpc1ByZXZlbnREb3dubG9hZCkge1xuICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRTZXJ2aWNlLnByb2Nlc3NEb3dubG9hZChyZXNwb25zZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgbWFwKHJlc3BvbnNlID0+IChpc1ByZXZlbnREb3dubG9hZCA/IG5ldyBCbG9iKFtyZXNwb25zZS5ib2R5IHx8IHJlc3BvbnNlXSkgOiByZXNwb25zZS5ib2R5IHx8IHJlc3BvbnNlKSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUF0dGFjaG1lbnQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
@@ -19,7 +19,7 @@ export class DocumentTemplatesApiService {
|
|
19
19
|
this.http = http;
|
20
20
|
this.DOCGEN_TAG = 'docgen';
|
21
21
|
this.SERVICE_URL = '/templates';
|
22
|
-
this.DOC_GEN_URL_FALLBACK =
|
22
|
+
this.DOC_GEN_URL_FALLBACK = `${window.VELO_API}/docgen`;
|
23
23
|
this.mapSfQueryResult = (limit) => map((records) => {
|
24
24
|
if (!records.length) {
|
25
25
|
return { _result: 'No Records Found' };
|
@@ -163,7 +163,9 @@ export class DocumentTemplatesApiService {
|
|
163
163
|
return zip(this.getTemplateFile(template.id), documentData$, this.resolveAttachments$(template)).pipe(switchMap(([templateFile, data, attachments]) => {
|
164
164
|
const document = DocxTemplater.generate(templateFile, data);
|
165
165
|
const properties = object?.context?.properties ?? object?.properties ?? {};
|
166
|
-
const documentName = properties
|
166
|
+
const documentName = template.properties?.find(({ name }) => name === 'documentName')?.value ||
|
167
|
+
properties['Name'] ||
|
168
|
+
template.name;
|
167
169
|
const documentFormat = params.documentFormat ?? template.properties?.find(p => p.name === 'documentFormat')?.value;
|
168
170
|
if (documentFormat === 'DOCX') {
|
169
171
|
this.fileDownloadService.processDownload(document, documentName);
|
@@ -272,7 +274,7 @@ export class DocumentTemplatesApiService {
|
|
272
274
|
const patternLimit = /(\s*limit\s\d*)/i;
|
273
275
|
let limit = 1;
|
274
276
|
if (statement && patternLimit.test(statement)) {
|
275
|
-
const limitStr = statement?.match(patternLimit)?.[1]
|
277
|
+
const limitStr = statement?.match(patternLimit)?.[1]?.trim().substring(5).trim();
|
276
278
|
if (limitStr) {
|
277
279
|
limit = Number.parseInt(limitStr, 10);
|
278
280
|
}
|
@@ -290,9 +292,9 @@ export class DocumentTemplatesApiService {
|
|
290
292
|
return this.salesforceApiService.query(searchRequest, objectName).pipe(this.mapSfQueryResult(limit), map(value => ({ [resultObjectName]: value })));
|
291
293
|
}
|
292
294
|
}
|
293
|
-
DocumentTemplatesApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
294
|
-
DocumentTemplatesApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
295
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
295
|
+
DocumentTemplatesApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocumentTemplatesApiService, deps: [{ token: i1.BaseHttpService }, { token: i2.SalesforceApiService }, { token: i1.FileDownloadService }, { token: i3.DocumentAttachmentApiService }, { token: i4.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
296
|
+
DocumentTemplatesApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocumentTemplatesApiService });
|
297
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocumentTemplatesApiService, decorators: [{
|
296
298
|
type: Injectable
|
297
299
|
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }, { type: i2.SalesforceApiService }, { type: i1.FileDownloadService }, { type: i3.DocumentAttachmentApiService }, { type: i4.HttpClient }]; } });
|
298
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdGVtcGxhdGVzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi9zZXJ2aWNlcy9kb2N1bWVudC10ZW1wbGF0ZXMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUtMLGFBQWEsRUFFYix3QkFBd0IsRUFDeEIsVUFBVSxFQUVWLFdBQVcsR0FJWixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFhckUsTUFBTSxPQUFPLDJCQUEyQjtJQU90QyxZQUNVLE9BQXdCLEVBQ3hCLG9CQUEwQyxFQUMxQyxtQkFBd0MsRUFDeEMseUJBQXVELEVBQ3ZELElBQWdCO1FBSmhCLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQ3hCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyw4QkFBeUIsR0FBekIseUJBQXlCLENBQThCO1FBQ3ZELFNBQUksR0FBSixJQUFJLENBQVk7UUFYVixlQUFVLEdBQUcsUUFBUSxDQUFDO1FBRXJCLGdCQUFXLEdBQUcsWUFBWSxDQUFDO1FBQzNCLHlCQUFvQixHQUFHLG9DQUFvQyxDQUFDO1FBaVVyRSxxQkFBZ0IsR0FBRyxDQUFJLEtB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QUUsQ0FBQyxDQUFDLENBQzlDLENBQUM7SUFDSixDQUFDOzt3SEEzWFUsMkJBQTJCOzRIQUEzQiwyQkFBMkI7MkZBQTNCLDJCQUEyQjtrQkFEdkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1cnJlbmN5UGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQW55V2l0aFByb3BlcnRpZXMsXG4gIEF0dGFjaG1lbnQsXG4gIEJhc2VIdHRwU2VydmljZSxcbiAgRG9jdW1lbnRUZW1wbGF0ZSxcbiAgRG9jeFRlbXBsYXRlcixcbiAgRmlsZURvd25sb2FkU2VydmljZSxcbiAgaXNMZWdhY3lEb2N1bWVudFRlbXBsYXRlLFxuICBRdW90ZURyYWZ0LFxuICBTZWFyY2hSZXF1ZXN0LFxuICBTdHJpbmdVdGlscyxcbiAgVGVtcGxhdGVBdHRhY2htZW50U2VhcmNoUmVxdWVzdCxcbiAgVGVtcGxhdGVRdWVyeSxcbiAgVmxXaW5kb3csXG59IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mLCB6aXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlZmF1bHRJZkVtcHR5LCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRG9jdW1lbnRBdHRhY2htZW50QXBpU2VydmljZSB9IGZyb20gJy4vZG9jdW1lbnQtYXR0YWNobWVudC1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBTYWxlc2ZvcmNlQXBpU2VydmljZSB9IGZyb20gJy4vc2FsZXNmb3JjZS1hcGkuc2VydmljZSc7XG5cbmRlY2xhcmUgY29uc3Qgd2luZG93OiBWbFdpbmRvdztcblxuZXhwb3J0IGludGVyZmFjZSBEb2N1bWVudEdlbmVyYXRpb25QYXJhbXMge1xuICBhdHRhY2hUb1F1b3RlPzogYm9vbGVhbjtcbiAgZG9jdW1lbnRGb3JtYXQ/OiAnRE9DWCc7XG4gIHNob3VsZFByZXZlbnREb3dubG9hZD86IGJvb2xlYW47XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEb2N1bWVudFRlbXBsYXRlc0FwaVNlcnZpY2Uge1xuICBwdWJsaWMgcmVhZG9ubHkgRE9DR0VOX1RBRyA9ICdkb2NnZW4nO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgU0VSVklDRV9VUkwgPSAnL3RlbXBsYXRlcyc7XG4gIHByaXZhdGUgcmVhZG9ubHkgRE9DX0dFTl9VUkxfRkFMTEJBQ0sgPSAnaHR0cHM6Ly9kZXYtZHAxLnZlbG9jcHEuY29tL2RvY2dlbic7XG4gIHByaXZhdGUgcmVhZG9ubHkgRE9DX0dFTl9VUkw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBCYXNlSHR0cFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzYWxlc2ZvcmNlQXBpU2VydmljZTogU2FsZXNmb3JjZUFwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBmaWxlRG93bmxvYWRTZXJ2aWNlOiBGaWxlRG93bmxvYWRTZXJ2aWNlLFxuICAgIHByaXZhdGUgZG9jdW1lbnRBdHRhY2htZW50U2VydmljZTogRG9jdW1lbnRBdHRhY2htZW50QXBpU2VydmljZSxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICkge1xuICAgIGlmICh3aW5kb3cuVkVMT19ET0NHRU5fQVBJKSB7XG4gICAgICB0aGlzLkRPQ19HRU5fVVJMID0gd2luZG93LlZFTE9fRE9DR0VOX0FQSTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5sb2coYHdpbmRvdy5WRUxPX0RPQ0dFTl9BUEkgbm90IHNldCwgd2lsbCB1c2UgZmFsbGJhY2sgXCIke3RoaXMuRE9DX0dFTl9VUkxfRkFMTEJBQ0t9XCJgKTtcbiAgICAgIHRoaXMuRE9DX0dFTl9VUkwgPSB0aGlzLkRPQ19HRU5fVVJMX0ZBTExCQUNLO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRUZW1wbGF0ZXModGFnPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxEb2N1bWVudFRlbXBsYXRlW10+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9YCxcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICBwYXJhbXM6IHtcbiAgICAgICAgLi4uKHRhZyAmJiB7IHRhZyB9KSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGVtcGxhdGUoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RG9jdW1lbnRUZW1wbGF0ZT4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH1gLFxuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyB1cHNlcnRUZW1wbGF0ZShcbiAgICB0ZW1wbGF0ZTogRG9jdW1lbnRUZW1wbGF0ZSxcbiAgICBmaWxlPzogRmlsZSxcbiAgICByZXBvcnRQcm9ncmVzcz86IGJvb2xlYW4sXG4gICk6IE9ic2VydmFibGU8RG9jdW1lbnRUZW1wbGF0ZT4ge1xuICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgaWYgKGZpbGUpIHtcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIGZpbGUsIGZpbGUubmFtZSk7XG4gICAgfVxuICAgIGZvcm1EYXRhLmFwcGVuZChcbiAgICAgICd0ZW1wbGF0ZScsXG4gICAgICBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkodGVtcGxhdGUpXSwge1xuICAgICAgICB0eXBlOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgbGV0IHVybCA9IGAke3RoaXMuU0VSVklDRV9VUkx9YDtcbiAgICBpZiAodGVtcGxhdGUuaWQpIHtcbiAgICAgIHVybCArPSBgLyR7dGVtcGxhdGUuaWR9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLnVwbG9hZCh7XG4gICAgICB1cmwsXG4gICAgICBib2R5OiBmb3JtRGF0YSxcbiAgICAgIG1ldGhvZDogdGVtcGxhdGUuaWQgPyAncHV0JyA6ICdwb3N0JyxcbiAgICAgIHJlcG9ydFByb2dyZXNzLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZVRlbXBsYXRlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERvY3VtZW50VGVtcGxhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmVzdG9yZVRlbXBsYXRlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9L3Jlc3RvcmVgLFxuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGNsb25lVGVtcGxhdGUoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wZXJ0aWVzVG9PdmVycmlkZTogUGFydGlhbDxEb2N1bWVudFRlbXBsYXRlPiA9IHt9LFxuICApOiBPYnNlcnZhYmxlPHsgY2xvbmVkUmVjb3JkSWQ6IHN0cmluZyB9PiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS9jbG9uZS8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IHtcbiAgICAgICAgaWQsXG4gICAgICAgIHByb3BlcnRpZXNUb092ZXJyaWRlLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUZW1wbGF0ZUZpbGUoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QXJyYXlCdWZmZXI+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfS9maWxlYCxcbiAgICAgIHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBkb3dubG9hZFRlbXBsYXRlRmlsZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZVxuICAgICAgLmFwaSh7XG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH0vZmlsZWAsXG4gICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxuICAgICAgICBvYnNlcnZlOiAncmVzcG9uc2UnLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAocmVzcG9uc2UgPT4ge1xuICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkU2VydmljZS5wcm9jZXNzRG93bmxvYWQocmVzcG9uc2UpO1xuICAgICAgICB9KSxcbiAgICAgICAgbWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlLmJvZHkgfHwgcmVzcG9uc2UpLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXJnZURvY3VtZW50cyhkb2N1bWVudDogQmxvYiwgYXR0YWNobWVudHM6IEFycmF5QnVmZmVyW10pOiBPYnNlcnZhYmxlPEFycmF5QnVmZmVyPiB7XG4gICAgY29uc3QgYm9keSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgYXR0YWNobWVudHMuZm9yRWFjaChhdHRhY2htZW50ID0+IHtcbiAgICAgIGJvZHkuYXBwZW5kKCdhdHRhY2htZW50cycsIG5ldyBCbG9iKFthdHRhY2htZW50XSkpO1xuICAgIH0pO1xuXG4gICAgYm9keS5hcHBlbmQoJ29yZGVyZm9ybScsIGRvY3VtZW50KTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLkRPQ19HRU5fVVJMfS9kb2N1bWVudHMvbWVyZ2VgLCBib2R5LCB7XG4gICAgICByZXNwb25zZVR5cGU6ICdhcnJheWJ1ZmZlcicsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QXR0YWNobWVudHMoc2VhcmNoUmVxdWVzdDogVGVtcGxhdGVBdHRhY2htZW50U2VhcmNoUmVxdWVzdCk6IE9ic2VydmFibGU8QXR0YWNobWVudFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5nZXRBdHRhY2htZW50cyhzZWFyY2hSZXF1ZXN0KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRBdHRhY2htZW50RmlsZShpZDogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5kb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlLmdldEF0dGFjaG1lbnRGaWxlKGlkKTtcbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVBdHRhY2htZW50KGF0dGFjaG1lbnQ6IEF0dGFjaG1lbnQsIGZpbGU/OiBGaWxlLCByZXBvcnRQcm9ncmVzcz86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPEF0dGFjaG1lbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5kb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlLmNyZWF0ZUF0dGFjaG1lbnQoYXR0YWNobWVudCwgZmlsZSwgcmVwb3J0UHJvZ3Jlc3MpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUF0dGFjaG1lbnQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmRvY3VtZW50QXR0YWNobWVudFNlcnZpY2UucmVtb3ZlQXR0YWNobWVudChpZCk7XG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVEb2N1bWVudERhdGEoXG4gICAgdGVtcGxhdGU6IERvY3VtZW50VGVtcGxhdGUsXG4gICAgb2JqZWN0OiBhbnksXG4gICAgcGFyYW1zOiBEb2N1bWVudEdlbmVyYXRpb25QYXJhbXMgPSB7fSxcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBpZiAoaXNMZWdhY3lEb2N1bWVudFRlbXBsYXRlKHRlbXBsYXRlKSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2VuZXJhdGVEb2N1bWVudERhdGFMZWdhY3kodGVtcGxhdGUsIG9iamVjdCwgcGFyYW1zKTtcbiAgICB9XG5cbiAgICBjb25zdCB0ZW1wbGF0ZVByb3BlcnRpZXMgPSB0ZW1wbGF0ZS5wcm9wZXJ0aWVzPy5yZWR1Y2UoXG4gICAgICAoYWNjLCB7IG5hbWUsIHZhbHVlIH0pID0+ICh7IC4uLmFjYywgW25hbWVdOiB0aGlzLm1hcEJvb2xlYW5JZkFwbGljYWJsZSh2YWx1ZSkgfSksXG4gICAgICB7fSxcbiAgICApO1xuXG4gICAgLypcbiAgICAgIFJlc29sdmUgcXVvdGUgYW5kIHRlbXBsYXRlIHByb3BlcnRpZXMgZm9yIG5vd1xuICAgICAgV2hlbiBwcm9jZWR1cmVzIGFyZSByZWFkeSwgd2hleSB3aWxsIHJlcGxhY2UgdGVtcGxhdGUgc2NyaXB0cy5cblxuICAgICAgVE9ETzogcnVuIHByb2NlZHVyZSB0byByZXNvbHZlIGRvY3VtZW50IGRhdGFcbiAgICAqL1xuICAgIHJldHVybiBvZih7XG4gICAgICAuLi4odHlwZW9mIG9iamVjdCA9PT0gJ29iamVjdCcgPyBvYmplY3QgOiB7IG9iamVjdCB9KSxcbiAgICAgIC4uLnRlbXBsYXRlUHJvcGVydGllcyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZW5lcmF0ZURvY3VtZW50KFxuICAgIHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlLFxuICAgIG9iamVjdDogYW55LFxuICAgIHBhcmFtczogRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zID0ge30sXG4gICk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIGNvbnN0IGRvY3VtZW50RGF0YSQgPSB0aGlzLmdlbmVyYXRlRG9jdW1lbnREYXRhKHRlbXBsYXRlLCBvYmplY3QsIHsgLi4ucGFyYW1zLCBzaG91bGRQcmV2ZW50RG93bmxvYWQ6IHRydWUgfSk7XG5cbiAgICByZXR1cm4gemlwKHRoaXMuZ2V0VGVtcGxhdGVGaWxlKHRlbXBsYXRlLmlkKSwgZG9jdW1lbnREYXRhJCwgdGhpcy5yZXNvbHZlQXR0YWNobWVudHMkKHRlbXBsYXRlKSkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoW3RlbXBsYXRlRmlsZSwgZGF0YSwgYXR0YWNobWVudHNdKSA9PiB7XG4gICAgICAgIGNvbnN0IGRvY3VtZW50ID0gRG9jeFRlbXBsYXRlci5nZW5lcmF0ZSh0ZW1wbGF0ZUZpbGUsIGRhdGEpO1xuICAgICAgICBjb25zdCBwcm9wZXJ0aWVzOiBfLkRpY3Rpb25hcnk8c3RyaW5nPiA9IG9iamVjdD8uY29udGV4dD8ucHJvcGVydGllcyA/PyBvYmplY3Q/LnByb3BlcnRpZXMgPz8ge307XG4gICAgICAgIGNvbnN0IGRvY3VtZW50TmFtZSA9IHByb3BlcnRpZXNbJ05hbWUnXSB8fCB0ZW1wbGF0ZS5uYW1lO1xuXG4gICAgICAgIGNvbnN0IGRvY3VtZW50Rm9ybWF0ID1cbiAgICAgICAgICBwYXJhbXMuZG9jdW1lbnRGb3JtYXQgPz8gdGVtcGxhdGUucHJvcGVydGllcz8uZmluZChwID0+IHAubmFtZSA9PT0gJ2RvY3VtZW50Rm9ybWF0Jyk/LnZhbHVlO1xuICAgICAgICBpZiAoZG9jdW1lbnRGb3JtYXQgPT09ICdET0NYJykge1xuICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkU2VydmljZS5wcm9jZXNzRG93bmxvYWQoZG9jdW1lbnQsIGRvY3VtZW50TmFtZSk7XG5cbiAgICAgICAgICByZXR1cm4gb2YoZG9jdW1lbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMubWVyZ2VEb2N1bWVudHMoZG9jdW1lbnQsIGF0dGFjaG1lbnRzKS5waXBlKFxuICAgICAgICAgIHN3aXRjaE1hcChwZGYgPT4ge1xuICAgICAgICAgICAgaWYgKHBhcmFtcy5hdHRhY2hUb1F1b3RlICYmIFF1b3RlRHJhZnQuaXNRdW90ZShvYmplY3QpKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGZpbGUgPSBuZXcgRmlsZShbcGRmXSwgYCR7ZG9jdW1lbnROYW1lfS5wZGZgKTtcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZVxuICAgICAgICAgICAgICAgIC5jcmVhdGVBdHRhY2htZW50KFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBsaW5rZWRFbnRpdHlJZDogb2JqZWN0LnF1b3RlSWQsXG4gICAgICAgICAgICAgICAgICAgIGZpbGVOYW1lOiBkb2N1bWVudE5hbWUsXG4gICAgICAgICAgICAgICAgICAgIGZpbGVFeHRlbnNpb246ICdwZGYnLFxuICAgICAgICAgICAgICAgICAgICB0YWdzOiB0aGlzLkRPQ0dFTl9UQUcsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgZmlsZSxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLnBpcGUobWFwKCgpID0+IHBkZikpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gb2YocGRmKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBtYXAocGRmID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbcGRmXSk7XG5cbiAgICAgICAgICAgIGlmICghcGFyYW1zLnNob3VsZFByZXZlbnREb3dubG9hZCkge1xuICAgICAgICAgICAgICB0aGlzLmZpbGVEb3dubG9hZFNlcnZpY2UucHJvY2Vzc0Rvd25sb2FkKGJsb2IsIGAke2RvY3VtZW50TmFtZX0ucGRmYCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBibG9iO1xuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVEb2N1bWVudERhdGFMZWdhY3koXG4gICAgdGVtcGxhdGU6IERvY3VtZW50VGVtcGxhdGUsXG4gICAgb2JqZWN0OiBhbnksXG4gICAgcGFyYW1zOiBEb2N1bWVudEdlbmVyYXRpb25QYXJhbXMgPSB7fSxcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzaG91bGRQcmV2ZW50RG93bmxvYWQgPSBwYXJhbXMuc2hvdWxkUHJldmVudERvd25sb2FkO1xuICAgIGNvbnN0IGFsbFF1ZXJpZXM6IFRlbXBsYXRlUXVlcnlbXSA9IFsuLi4odGVtcGxhdGU/LnF1ZXJpZXMgPz8gW10pXTtcbiAgICBjb25zdCBwcm9wZXJ0aWVzOiBfLkRpY3Rpb25hcnk8c3RyaW5nPiA9IG9iamVjdD8uY29udGV4dD8ucHJvcGVydGllcyA/PyBvYmplY3Q/LnByb3BlcnRpZXMgPz8ge307XG4gICAgY29uc3QgYWNjb3VudElkID0gcHJvcGVydGllcz8uWydBY2NvdW50SWQnXTtcbiAgICBjb25zdCB1c2VySWQgPSBwcm9wZXJ0aWVzPy5bJ1VzZXJJZCddO1xuXG4gICAgaWYgKGFjY291bnRJZCkge1xuICAgICAgYWxsUXVlcmllcy5wdXNoKHtcbiAgICAgICAgcXVlcnlOYW1lOiAnUXVvdGVBY2NvdW50UXVlcnknLFxuICAgICAgICBvYmplY3ROYW1lOiAnQWNjb3VudCcsXG4gICAgICAgIHJlc3VsdE9iamVjdE5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgc3RhdGVtZW50OiBgSWQgPScke2FjY291bnRJZH0nYCxcbiAgICAgICAgZmllbGRzOiBbXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodXNlcklkKSB7XG4gICAgICBhbGxRdWVyaWVzLnB1c2goe1xuICAgICAgICBxdWVyeU5hbWU6ICdRdW90ZVVzZXJRdWVyeScsXG4gICAgICAgIG9iamVjdE5hbWU6ICdVc2VyJyxcbiAgICAgICAgcmVzdWx0T2JqZWN0TmFtZTogJ2FnZW50JyxcbiAgICAgICAgc3RhdGVtZW50OiBgSWQgPScke3VzZXJJZH0nYCxcbiAgICAgICAgZmllbGRzOiBbXSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHF1ZXJpZXMgPSBhbGxRdWVyaWVzLm1hcChxdWVyeSA9PiB0aGlzLnF1ZXJ5T2JqZWN0KHF1ZXJ5LCB7IHByb3BlcnRpZXMgfSkpIHx8IFtdO1xuXG4gICAgcmV0dXJuIGZvcmtKb2luKFsuLi5xdWVyaWVzXSkucGlwZShcbiAgICAgIGRlZmF1bHRJZkVtcHR5KFtdIGFzIGFueVtdKSxcbiAgICAgIG1hcChyZXN1bHRzID0+IHtcbiAgICAgICAgY29uc3QgcXVlcmllc1Jlc3VsdCA9IF8uY2hhaW4ocmVzdWx0cylcbiAgICAgICAgICAucmVkdWNlKChhY2MsIHIpID0+IHtcbiAgICAgICAgICAgIGlmIChyKSB7XG4gICAgICAgICAgICAgIHJldHVybiB7IC4uLmFjYywgLi4uciB9O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICAgIH0sIHt9KVxuICAgICAgICAgIC52YWx1ZSgpO1xuXG4gICAgICAgIGNvbnN0IHRlbXBsYXRlUHJvcGVydGllcyA9ICh0ZW1wbGF0ZT8ucHJvcGVydGllcyB8fCBbXSkucmVkdWNlKCh0cnVuaywgeyBuYW1lLCB2YWx1ZSB9KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnRydW5rLFxuICAgICAgICAgICAgW25hbWUgYXMgc3RyaW5nXTogdGhpcy5tYXBCb29sZWFuSWZBcGxpY2FibGUodmFsdWUgYXMgYW55KSxcbiAgICAgICAgICB9O1xuICAgICAgICB9LCB7fSk7XG5cbiAgICAgICAgY29uc3QgZGF0YSA9IHtcbiAgICAgICAgICAuLi4odHlwZW9mIG9iamVjdCA9PT0gJ29iamVjdCcgPyBvYmplY3QgOiB7IG9iamVjdCB9KSxcbiAgICAgICAgICAuLi5xdWVyaWVzUmVzdWx0LFxuICAgICAgICAgIC4uLnRlbXBsYXRlUHJvcGVydGllcyxcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAodGVtcGxhdGUuc2NyaXB0ICYmIHRlbXBsYXRlLnNjcmlwdC50cmltKCkubGVuZ3RoKSB7XG4gICAgICAgICAgY29uc3QgY3VycmVuY3lGb3JtYXQgPSB0ZW1wbGF0ZS5wcm9wZXJ0aWVzPy5maW5kKCh7IG5hbWUgfSkgPT4gbmFtZSA9PT0gJ2N1cnJlbmN5Rm9ybWF0Jyk/LnZhbHVlIHx8ICcxLjItMic7XG4gICAgICAgICAgY29uc3QgZGF0ZUZvcm1hdCA9IHRlbXBsYXRlLnByb3BlcnRpZXM/LmZpbmQoKHsgbmFtZSB9KSA9PiBuYW1lID09PSAnZGF0ZUZvcm1hdCcpPy52YWx1ZSB8fCAnRC9NTU0vWVlZWSc7XG4gICAgICAgICAgY29uc3QgZm9ybWF0RGF0ZSA9ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgPyBtb21lbnQodmFsdWUpLmZvcm1hdChkYXRlRm9ybWF0KSA6IHZhbHVlO1xuICAgICAgICAgIH07XG4gICAgICAgICAgY29uc3QgdHJhbnNmb3JtID0gbmV3IEZ1bmN0aW9uKGByZXR1cm4gJHt0ZW1wbGF0ZS5zY3JpcHR9YCkoKTtcbiAgICAgICAgICBjb25zdCB0cmFuc2Zvcm1lZERhdGEgPSB0cmFuc2Zvcm0oe1xuICAgICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAgIHV0aWxzOiB7XG4gICAgICAgICAgICAgIGxvZGFzaDogXyxcbiAgICAgICAgICAgICAgY3VycmVuY3k6ICh2YWx1ZTogYW55KSA9PiBuZXcgQ3VycmVuY3lQaXBlKCdlbi1VUycpLnRyYW5zZm9ybSh2YWx1ZSwgJ1VTRCcsICdzeW1ib2wnLCBjdXJyZW5jeUZvcm1hdCksXG4gICAgICAgICAgICAgIGRhdGU6IGZvcm1hdERhdGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgVG9EYXk6IGZvcm1hdERhdGUoRGF0ZS5ub3coKSBhcyBhbnkpLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGlmICghc2hvdWxkUHJldmVudERvd25sb2FkKSB7XG4gICAgICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW0pTT04uc3RyaW5naWZ5KHRyYW5zZm9ybWVkRGF0YSldKTtcbiAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkU2VydmljZS5wcm9jZXNzRG93bmxvYWQoYmxvYiwgJ2RhdGEuanNvbicpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gdHJhbnNmb3JtZWREYXRhO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZUF0dGFjaG1lbnRzJCh0ZW1wbGF0ZTogRG9jdW1lbnRUZW1wbGF0ZSk6IE9ic2VydmFibGU8QXJyYXlCdWZmZXJbXT4ge1xuICAgIGNvbnN0IGF0dGFjaG1lbnRJZHMgPSAodGVtcGxhdGUuYXR0YWNobWVudHM/Lm1hcCgoeyBpZCB9KSA9PiBpZCkuZmlsdGVyKEJvb2xlYW4pIGFzIHN0cmluZ1tdKSA/PyBbXTtcblxuICAgIGlmICghYXR0YWNobWVudElkcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBvZihbXSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcmtKb2luKGF0dGFjaG1lbnRJZHMubWFwKGlkID0+IHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5nZXRBdHRhY2htZW50RmlsZShpZCwgdHJ1ZSkpKTtcbiAgfVxuXG4gIHByaXZhdGUgbWFwU2ZRdWVyeVJlc3VsdCA9IDxUPihsaW1pdDogbnVtYmVyKSA9PlxuICAgIG1hcCgocmVjb3JkczogVFtdKSA9PiB7XG4gICAgICBpZiAoIXJlY29yZHMubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiB7IF9yZXN1bHQ6ICdObyBSZWNvcmRzIEZvdW5kJyB9O1xuICAgICAgfVxuXG4gICAgICBpZiAobGltaXQgPT09IDEpIHtcbiAgICAgICAgcmV0dXJuIHJlY29yZHNbMF07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZWNvcmRzO1xuICAgIH0pO1xuXG4gIHByaXZhdGUgbWFwQm9vbGVhbklmQXBsaWNhYmxlID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBpZiAodmFsdWUgPT09ICd0cnVlJykge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlID09PSAnZmFsc2UnKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9O1xuXG4gIHByaXZhdGUgcXVlcnlPYmplY3QoXG4gICAgeyBvYmplY3ROYW1lLCByZXN1bHRPYmplY3ROYW1lLCBmaWVsZHMsIHN0YXRlbWVudCB9OiBUZW1wbGF0ZVF1ZXJ5LFxuICAgIHsgcHJvcGVydGllcyB9OiBBbnlXaXRoUHJvcGVydGllcyxcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBwYXR0ZXJuTGltaXQgPSAvKFxccypsaW1pdFxcc1xcZCopL2k7XG4gICAgbGV0IGxpbWl0ID0gMTtcbiAgICBpZiAoc3RhdGVtZW50ICYmIHBhdHRlcm5MaW1pdC50ZXN0KHN0YXRlbWVudCkpIHtcbiAgICAgIGNvbnN0IGxpbWl0U3RyID0gc3RhdGVtZW50Py5tYXRjaChwYXR0ZXJuTGltaXQpPy5bMV0udHJpbSgpLnN1YnN0cmluZyg1KS50cmltKCk7XG4gICAgICBpZiAobGltaXRTdHIpIHtcbiAgICAgICAgbGltaXQgPSBOdW1iZXIucGFyc2VJbnQobGltaXRTdHIsIDEwKTtcbiAgICAgIH1cbiAgICAgIHN0YXRlbWVudCA9IHN0YXRlbWVudC5yZXBsYWNlKHBhdHRlcm5MaW1pdCwgJycpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc29sdmVkU3RhdGVtZW50ID0gc3RhdGVtZW50XG4gICAgICA/IFN0cmluZ1V0aWxzLmZpbGxQbGFjZWhvbGRlcnMoc3RhdGVtZW50LCBwcm9wZXJ0aWVzLCAvOlxccyooXFx3W1xcd1xcZF8uXSspL2kpXG4gICAgICA6IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IHNlYXJjaFJlcXVlc3QgPSB7XG4gICAgICBza2lwOiAwLFxuICAgICAgY291bnQ6IGxpbWl0LFxuICAgICAgcmF3Q29uZGl0aW9uOiByZXNvbHZlZFN0YXRlbWVudCxcbiAgICAgIC4uLihmaWVsZHM/Lmxlbmd0aCAmJiAhIWZpZWxkc1swXSAmJiB7IGZpZWxkcyB9KSxcbiAgICB9IGFzIFNlYXJjaFJlcXVlc3Q7XG5cbiAgICByZXR1cm4gdGhpcy5zYWxlc2ZvcmNlQXBpU2VydmljZS5xdWVyeShzZWFyY2hSZXF1ZXN0LCBvYmplY3ROYW1lKS5waXBlKFxuICAgICAgdGhpcy5tYXBTZlF1ZXJ5UmVzdWx0KGxpbWl0KSxcbiAgICAgIG1hcCh2YWx1ZSA9PiAoeyBbcmVzdWx0T2JqZWN0TmFtZV06IHZhbHVlIH0pKSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
300
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdGVtcGxhdGVzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi9zZXJ2aWNlcy9kb2N1bWVudC10ZW1wbGF0ZXMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUtMLGFBQWEsRUFFYix3QkFBd0IsRUFDeEIsVUFBVSxFQUVWLFdBQVcsR0FJWixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFhckUsTUFBTSxPQUFPLDJCQUEyQjtJQU90QyxZQUNVLE9BQXdCLEVBQ3hCLG9CQUEwQyxFQUMxQyxtQkFBd0MsRUFDeEMseUJBQXVELEVBQ3ZELElBQWdCO1FBSmhCLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQ3hCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyw4QkFBeUIsR0FBekIseUJBQXlCLENBQThCO1FBQ3ZELFNBQUksR0FBSixJQUFJLENBQVk7UUFYVixlQUFVLEdBQUcsUUFBUSxDQUFDO1FBRXJCLGdCQUFXLEdBQUcsWUFBWSxDQUFDO1FBQzNCLHlCQUFvQixHQUFHLEdBQUcsTUFBTSxDQUFDLFFBQVEsU0FBUyxDQUFDO1FBb1U1RCxx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Q0FBQyxJQUFJLENBQ3BFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsRUFDNUIsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQzlDLENBQUM7SUFDSixDQUFDOzt3SEE5WFUsMkJBQTJCOzRIQUEzQiwyQkFBMkI7MkZBQTNCLDJCQUEyQjtrQkFEdkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1cnJlbmN5UGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQW55V2l0aFByb3BlcnRpZXMsXG4gIEF0dGFjaG1lbnQsXG4gIEJhc2VIdHRwU2VydmljZSxcbiAgRG9jdW1lbnRUZW1wbGF0ZSxcbiAgRG9jeFRlbXBsYXRlcixcbiAgRmlsZURvd25sb2FkU2VydmljZSxcbiAgaXNMZWdhY3lEb2N1bWVudFRlbXBsYXRlLFxuICBRdW90ZURyYWZ0LFxuICBTZWFyY2hSZXF1ZXN0LFxuICBTdHJpbmdVdGlscyxcbiAgVGVtcGxhdGVBdHRhY2htZW50U2VhcmNoUmVxdWVzdCxcbiAgVGVtcGxhdGVRdWVyeSxcbiAgVmxXaW5kb3csXG59IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mLCB6aXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlZmF1bHRJZkVtcHR5LCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRG9jdW1lbnRBdHRhY2htZW50QXBpU2VydmljZSB9IGZyb20gJy4vZG9jdW1lbnQtYXR0YWNobWVudC1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBTYWxlc2ZvcmNlQXBpU2VydmljZSB9IGZyb20gJy4vc2FsZXNmb3JjZS1hcGkuc2VydmljZSc7XG5cbmRlY2xhcmUgY29uc3Qgd2luZG93OiBWbFdpbmRvdztcblxuZXhwb3J0IGludGVyZmFjZSBEb2N1bWVudEdlbmVyYXRpb25QYXJhbXMge1xuICBhdHRhY2hUb1F1b3RlPzogYm9vbGVhbjtcbiAgZG9jdW1lbnRGb3JtYXQ/OiAnRE9DWCc7XG4gIHNob3VsZFByZXZlbnREb3dubG9hZD86IGJvb2xlYW47XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEb2N1bWVudFRlbXBsYXRlc0FwaVNlcnZpY2Uge1xuICBwdWJsaWMgcmVhZG9ubHkgRE9DR0VOX1RBRyA9ICdkb2NnZW4nO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgU0VSVklDRV9VUkwgPSAnL3RlbXBsYXRlcyc7XG4gIHByaXZhdGUgcmVhZG9ubHkgRE9DX0dFTl9VUkxfRkFMTEJBQ0sgPSBgJHt3aW5kb3cuVkVMT19BUEl9L2RvY2dlbmA7XG4gIHByaXZhdGUgcmVhZG9ubHkgRE9DX0dFTl9VUkw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBCYXNlSHR0cFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzYWxlc2ZvcmNlQXBpU2VydmljZTogU2FsZXNmb3JjZUFwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBmaWxlRG93bmxvYWRTZXJ2aWNlOiBGaWxlRG93bmxvYWRTZXJ2aWNlLFxuICAgIHByaXZhdGUgZG9jdW1lbnRBdHRhY2htZW50U2VydmljZTogRG9jdW1lbnRBdHRhY2htZW50QXBpU2VydmljZSxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICkge1xuICAgIGlmICh3aW5kb3cuVkVMT19ET0NHRU5fQVBJKSB7XG4gICAgICB0aGlzLkRPQ19HRU5fVVJMID0gd2luZG93LlZFTE9fRE9DR0VOX0FQSTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5sb2coYHdpbmRvdy5WRUxPX0RPQ0dFTl9BUEkgbm90IHNldCwgd2lsbCB1c2UgZmFsbGJhY2sgXCIke3RoaXMuRE9DX0dFTl9VUkxfRkFMTEJBQ0t9XCJgKTtcbiAgICAgIHRoaXMuRE9DX0dFTl9VUkwgPSB0aGlzLkRPQ19HRU5fVVJMX0ZBTExCQUNLO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRUZW1wbGF0ZXModGFnPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxEb2N1bWVudFRlbXBsYXRlW10+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9YCxcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICBwYXJhbXM6IHtcbiAgICAgICAgLi4uKHRhZyAmJiB7IHRhZyB9KSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGVtcGxhdGUoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RG9jdW1lbnRUZW1wbGF0ZT4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH1gLFxuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyB1cHNlcnRUZW1wbGF0ZShcbiAgICB0ZW1wbGF0ZTogRG9jdW1lbnRUZW1wbGF0ZSxcbiAgICBmaWxlPzogRmlsZSxcbiAgICByZXBvcnRQcm9ncmVzcz86IGJvb2xlYW4sXG4gICk6IE9ic2VydmFibGU8RG9jdW1lbnRUZW1wbGF0ZT4ge1xuICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgaWYgKGZpbGUpIHtcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIGZpbGUsIGZpbGUubmFtZSk7XG4gICAgfVxuICAgIGZvcm1EYXRhLmFwcGVuZChcbiAgICAgICd0ZW1wbGF0ZScsXG4gICAgICBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkodGVtcGxhdGUpXSwge1xuICAgICAgICB0eXBlOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgbGV0IHVybCA9IGAke3RoaXMuU0VSVklDRV9VUkx9YDtcbiAgICBpZiAodGVtcGxhdGUuaWQpIHtcbiAgICAgIHVybCArPSBgLyR7dGVtcGxhdGUuaWR9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLnVwbG9hZCh7XG4gICAgICB1cmwsXG4gICAgICBib2R5OiBmb3JtRGF0YSxcbiAgICAgIG1ldGhvZDogdGVtcGxhdGUuaWQgPyAncHV0JyA6ICdwb3N0JyxcbiAgICAgIHJlcG9ydFByb2dyZXNzLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZVRlbXBsYXRlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERvY3VtZW50VGVtcGxhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmVzdG9yZVRlbXBsYXRlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9L3Jlc3RvcmVgLFxuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGNsb25lVGVtcGxhdGUoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wZXJ0aWVzVG9PdmVycmlkZTogUGFydGlhbDxEb2N1bWVudFRlbXBsYXRlPiA9IHt9LFxuICApOiBPYnNlcnZhYmxlPHsgY2xvbmVkUmVjb3JkSWQ6IHN0cmluZyB9PiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS9jbG9uZS8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGJvZHk6IHtcbiAgICAgICAgaWQsXG4gICAgICAgIHByb3BlcnRpZXNUb092ZXJyaWRlLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUZW1wbGF0ZUZpbGUoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QXJyYXlCdWZmZXI+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfS9maWxlYCxcbiAgICAgIHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBkb3dubG9hZFRlbXBsYXRlRmlsZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZVxuICAgICAgLmFwaSh7XG4gICAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH0vZmlsZWAsXG4gICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxuICAgICAgICBvYnNlcnZlOiAncmVzcG9uc2UnLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAocmVzcG9uc2UgPT4ge1xuICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkU2VydmljZS5wcm9jZXNzRG93bmxvYWQocmVzcG9uc2UpO1xuICAgICAgICB9KSxcbiAgICAgICAgbWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlLmJvZHkgfHwgcmVzcG9uc2UpLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXJnZURvY3VtZW50cyhkb2N1bWVudDogQmxvYiwgYXR0YWNobWVudHM6IEFycmF5QnVmZmVyW10pOiBPYnNlcnZhYmxlPEFycmF5QnVmZmVyPiB7XG4gICAgY29uc3QgYm9keSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgYXR0YWNobWVudHMuZm9yRWFjaChhdHRhY2htZW50ID0+IHtcbiAgICAgIGJvZHkuYXBwZW5kKCdhdHRhY2htZW50cycsIG5ldyBCbG9iKFthdHRhY2htZW50XSkpO1xuICAgIH0pO1xuXG4gICAgYm9keS5hcHBlbmQoJ29yZGVyZm9ybScsIGRvY3VtZW50KTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLkRPQ19HRU5fVVJMfS9kb2N1bWVudHMvbWVyZ2VgLCBib2R5LCB7XG4gICAgICByZXNwb25zZVR5cGU6ICdhcnJheWJ1ZmZlcicsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QXR0YWNobWVudHMoc2VhcmNoUmVxdWVzdDogVGVtcGxhdGVBdHRhY2htZW50U2VhcmNoUmVxdWVzdCk6IE9ic2VydmFibGU8QXR0YWNobWVudFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5nZXRBdHRhY2htZW50cyhzZWFyY2hSZXF1ZXN0KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRBdHRhY2htZW50RmlsZShpZDogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5kb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlLmdldEF0dGFjaG1lbnRGaWxlKGlkKTtcbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVBdHRhY2htZW50KGF0dGFjaG1lbnQ6IEF0dGFjaG1lbnQsIGZpbGU/OiBGaWxlLCByZXBvcnRQcm9ncmVzcz86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPEF0dGFjaG1lbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5kb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlLmNyZWF0ZUF0dGFjaG1lbnQoYXR0YWNobWVudCwgZmlsZSwgcmVwb3J0UHJvZ3Jlc3MpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUF0dGFjaG1lbnQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmRvY3VtZW50QXR0YWNobWVudFNlcnZpY2UucmVtb3ZlQXR0YWNobWVudChpZCk7XG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVEb2N1bWVudERhdGEoXG4gICAgdGVtcGxhdGU6IERvY3VtZW50VGVtcGxhdGUsXG4gICAgb2JqZWN0OiBhbnksXG4gICAgcGFyYW1zOiBEb2N1bWVudEdlbmVyYXRpb25QYXJhbXMgPSB7fSxcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBpZiAoaXNMZWdhY3lEb2N1bWVudFRlbXBsYXRlKHRlbXBsYXRlKSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2VuZXJhdGVEb2N1bWVudERhdGFMZWdhY3kodGVtcGxhdGUsIG9iamVjdCwgcGFyYW1zKTtcbiAgICB9XG5cbiAgICBjb25zdCB0ZW1wbGF0ZVByb3BlcnRpZXMgPSB0ZW1wbGF0ZS5wcm9wZXJ0aWVzPy5yZWR1Y2UoXG4gICAgICAoYWNjLCB7IG5hbWUsIHZhbHVlIH0pID0+ICh7IC4uLmFjYywgW25hbWVdOiB0aGlzLm1hcEJvb2xlYW5JZkFwbGljYWJsZSh2YWx1ZSkgfSksXG4gICAgICB7fSxcbiAgICApO1xuXG4gICAgLypcbiAgICAgIFJlc29sdmUgcXVvdGUgYW5kIHRlbXBsYXRlIHByb3BlcnRpZXMgZm9yIG5vd1xuICAgICAgV2hlbiBwcm9jZWR1cmVzIGFyZSByZWFkeSwgd2hleSB3aWxsIHJlcGxhY2UgdGVtcGxhdGUgc2NyaXB0cy5cblxuICAgICAgVE9ETzogcnVuIHByb2NlZHVyZSB0byByZXNvbHZlIGRvY3VtZW50IGRhdGFcbiAgICAqL1xuICAgIHJldHVybiBvZih7XG4gICAgICAuLi4odHlwZW9mIG9iamVjdCA9PT0gJ29iamVjdCcgPyBvYmplY3QgOiB7IG9iamVjdCB9KSxcbiAgICAgIC4uLnRlbXBsYXRlUHJvcGVydGllcyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZW5lcmF0ZURvY3VtZW50KFxuICAgIHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlLFxuICAgIG9iamVjdDogYW55LFxuICAgIHBhcmFtczogRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zID0ge30sXG4gICk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIGNvbnN0IGRvY3VtZW50RGF0YSQgPSB0aGlzLmdlbmVyYXRlRG9jdW1lbnREYXRhKHRlbXBsYXRlLCBvYmplY3QsIHsgLi4ucGFyYW1zLCBzaG91bGRQcmV2ZW50RG93bmxvYWQ6IHRydWUgfSk7XG5cbiAgICByZXR1cm4gemlwKHRoaXMuZ2V0VGVtcGxhdGVGaWxlKHRlbXBsYXRlLmlkKSwgZG9jdW1lbnREYXRhJCwgdGhpcy5yZXNvbHZlQXR0YWNobWVudHMkKHRlbXBsYXRlKSkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoW3RlbXBsYXRlRmlsZSwgZGF0YSwgYXR0YWNobWVudHNdKSA9PiB7XG4gICAgICAgIGNvbnN0IGRvY3VtZW50ID0gRG9jeFRlbXBsYXRlci5nZW5lcmF0ZSh0ZW1wbGF0ZUZpbGUsIGRhdGEpO1xuICAgICAgICBjb25zdCBwcm9wZXJ0aWVzOiBfLkRpY3Rpb25hcnk8c3RyaW5nPiA9IG9iamVjdD8uY29udGV4dD8ucHJvcGVydGllcyA/PyBvYmplY3Q/LnByb3BlcnRpZXMgPz8ge307XG4gICAgICAgIGNvbnN0IGRvY3VtZW50TmFtZSA9XG4gICAgICAgICAgdGVtcGxhdGUucHJvcGVydGllcz8uZmluZCgoeyBuYW1lIH0pID0+IG5hbWUgPT09ICdkb2N1bWVudE5hbWUnKT8udmFsdWUgfHxcbiAgICAgICAgICBwcm9wZXJ0aWVzWydOYW1lJ10gfHxcbiAgICAgICAgICB0ZW1wbGF0ZS5uYW1lO1xuXG4gICAgICAgIGNvbnN0IGRvY3VtZW50Rm9ybWF0ID1cbiAgICAgICAgICBwYXJhbXMuZG9jdW1lbnRGb3JtYXQgPz8gdGVtcGxhdGUucHJvcGVydGllcz8uZmluZChwID0+IHAubmFtZSA9PT0gJ2RvY3VtZW50Rm9ybWF0Jyk/LnZhbHVlO1xuICAgICAgICBpZiAoZG9jdW1lbnRGb3JtYXQgPT09ICdET0NYJykge1xuICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkU2VydmljZS5wcm9jZXNzRG93bmxvYWQoZG9jdW1lbnQsIGRvY3VtZW50TmFtZSk7XG5cbiAgICAgICAgICByZXR1cm4gb2YoZG9jdW1lbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMubWVyZ2VEb2N1bWVudHMoZG9jdW1lbnQsIGF0dGFjaG1lbnRzKS5waXBlKFxuICAgICAgICAgIHN3aXRjaE1hcChwZGYgPT4ge1xuICAgICAgICAgICAgaWYgKHBhcmFtcy5hdHRhY2hUb1F1b3RlICYmIFF1b3RlRHJhZnQuaXNRdW90ZShvYmplY3QpKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGZpbGUgPSBuZXcgRmlsZShbcGRmXSwgYCR7ZG9jdW1lbnROYW1lfS5wZGZgKTtcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZVxuICAgICAgICAgICAgICAgIC5jcmVhdGVBdHRhY2htZW50KFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBsaW5rZWRFbnRpdHlJZDogb2JqZWN0LnF1b3RlSWQsXG4gICAgICAgICAgICAgICAgICAgIGZpbGVOYW1lOiBkb2N1bWVudE5hbWUsXG4gICAgICAgICAgICAgICAgICAgIGZpbGVFeHRlbnNpb246ICdwZGYnLFxuICAgICAgICAgICAgICAgICAgICB0YWdzOiB0aGlzLkRPQ0dFTl9UQUcsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgZmlsZSxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLnBpcGUobWFwKCgpID0+IHBkZikpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gb2YocGRmKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBtYXAocGRmID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbcGRmXSk7XG5cbiAgICAgICAgICAgIGlmICghcGFyYW1zLnNob3VsZFByZXZlbnREb3dubG9hZCkge1xuICAgICAgICAgICAgICB0aGlzLmZpbGVEb3dubG9hZFNlcnZpY2UucHJvY2Vzc0Rvd25sb2FkKGJsb2IsIGAke2RvY3VtZW50TmFtZX0ucGRmYCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBibG9iO1xuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVEb2N1bWVudERhdGFMZWdhY3koXG4gICAgdGVtcGxhdGU6IERvY3VtZW50VGVtcGxhdGUsXG4gICAgb2JqZWN0OiBhbnksXG4gICAgcGFyYW1zOiBEb2N1bWVudEdlbmVyYXRpb25QYXJhbXMgPSB7fSxcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzaG91bGRQcmV2ZW50RG93bmxvYWQgPSBwYXJhbXMuc2hvdWxkUHJldmVudERvd25sb2FkO1xuICAgIGNvbnN0IGFsbFF1ZXJpZXM6IFRlbXBsYXRlUXVlcnlbXSA9IFsuLi4odGVtcGxhdGU/LnF1ZXJpZXMgPz8gW10pXTtcbiAgICBjb25zdCBwcm9wZXJ0aWVzOiBfLkRpY3Rpb25hcnk8c3RyaW5nPiA9IG9iamVjdD8uY29udGV4dD8ucHJvcGVydGllcyA/PyBvYmplY3Q/LnByb3BlcnRpZXMgPz8ge307XG4gICAgY29uc3QgYWNjb3VudElkID0gcHJvcGVydGllcz8uWydBY2NvdW50SWQnXTtcbiAgICBjb25zdCB1c2VySWQgPSBwcm9wZXJ0aWVzPy5bJ1VzZXJJZCddO1xuXG4gICAgaWYgKGFjY291bnRJZCkge1xuICAgICAgYWxsUXVlcmllcy5wdXNoKHtcbiAgICAgICAgcXVlcnlOYW1lOiAnUXVvdGVBY2NvdW50UXVlcnknLFxuICAgICAgICBvYmplY3ROYW1lOiAnQWNjb3VudCcsXG4gICAgICAgIHJlc3VsdE9iamVjdE5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgc3RhdGVtZW50OiBgSWQgPScke2FjY291bnRJZH0nYCxcbiAgICAgICAgZmllbGRzOiBbXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodXNlcklkKSB7XG4gICAgICBhbGxRdWVyaWVzLnB1c2goe1xuICAgICAgICBxdWVyeU5hbWU6ICdRdW90ZVVzZXJRdWVyeScsXG4gICAgICAgIG9iamVjdE5hbWU6ICdVc2VyJyxcbiAgICAgICAgcmVzdWx0T2JqZWN0TmFtZTogJ2FnZW50JyxcbiAgICAgICAgc3RhdGVtZW50OiBgSWQgPScke3VzZXJJZH0nYCxcbiAgICAgICAgZmllbGRzOiBbXSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHF1ZXJpZXMgPSBhbGxRdWVyaWVzLm1hcChxdWVyeSA9PiB0aGlzLnF1ZXJ5T2JqZWN0KHF1ZXJ5LCB7IHByb3BlcnRpZXMgfSkpIHx8IFtdO1xuXG4gICAgcmV0dXJuIGZvcmtKb2luKFsuLi5xdWVyaWVzXSkucGlwZShcbiAgICAgIGRlZmF1bHRJZkVtcHR5KFtdIGFzIGFueVtdKSxcbiAgICAgIG1hcChyZXN1bHRzID0+IHtcbiAgICAgICAgY29uc3QgcXVlcmllc1Jlc3VsdCA9IF8uY2hhaW4ocmVzdWx0cylcbiAgICAgICAgICAucmVkdWNlKChhY2MsIHIpID0+IHtcbiAgICAgICAgICAgIGlmIChyKSB7XG4gICAgICAgICAgICAgIHJldHVybiB7IC4uLmFjYywgLi4uciB9O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICAgIH0sIHt9KVxuICAgICAgICAgIC52YWx1ZSgpO1xuXG4gICAgICAgIGNvbnN0IHRlbXBsYXRlUHJvcGVydGllcyA9ICh0ZW1wbGF0ZT8ucHJvcGVydGllcyB8fCBbXSkucmVkdWNlKCh0cnVuaywgeyBuYW1lLCB2YWx1ZSB9KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnRydW5rLFxuICAgICAgICAgICAgW25hbWUgYXMgc3RyaW5nXTogdGhpcy5tYXBCb29sZWFuSWZBcGxpY2FibGUodmFsdWUgYXMgYW55KSxcbiAgICAgICAgICB9O1xuICAgICAgICB9LCB7fSk7XG5cbiAgICAgICAgY29uc3QgZGF0YSA9IHtcbiAgICAgICAgICAuLi4odHlwZW9mIG9iamVjdCA9PT0gJ29iamVjdCcgPyBvYmplY3QgOiB7IG9iamVjdCB9KSxcbiAgICAgICAgICAuLi5xdWVyaWVzUmVzdWx0LFxuICAgICAgICAgIC4uLnRlbXBsYXRlUHJvcGVydGllcyxcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAodGVtcGxhdGUuc2NyaXB0ICYmIHRlbXBsYXRlLnNjcmlwdC50cmltKCkubGVuZ3RoKSB7XG4gICAgICAgICAgY29uc3QgY3VycmVuY3lGb3JtYXQgPSB0ZW1wbGF0ZS5wcm9wZXJ0aWVzPy5maW5kKCh7IG5hbWUgfSkgPT4gbmFtZSA9PT0gJ2N1cnJlbmN5Rm9ybWF0Jyk/LnZhbHVlIHx8ICcxLjItMic7XG4gICAgICAgICAgY29uc3QgZGF0ZUZvcm1hdCA9IHRlbXBsYXRlLnByb3BlcnRpZXM/LmZpbmQoKHsgbmFtZSB9KSA9PiBuYW1lID09PSAnZGF0ZUZvcm1hdCcpPy52YWx1ZSB8fCAnRC9NTU0vWVlZWSc7XG4gICAgICAgICAgY29uc3QgZm9ybWF0RGF0ZSA9ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgPyBtb21lbnQodmFsdWUpLmZvcm1hdChkYXRlRm9ybWF0KSA6IHZhbHVlO1xuICAgICAgICAgIH07XG4gICAgICAgICAgY29uc3QgdHJhbnNmb3JtID0gbmV3IEZ1bmN0aW9uKGByZXR1cm4gJHt0ZW1wbGF0ZS5zY3JpcHR9YCkoKTtcbiAgICAgICAgICBjb25zdCB0cmFuc2Zvcm1lZERhdGEgPSB0cmFuc2Zvcm0oe1xuICAgICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAgIHV0aWxzOiB7XG4gICAgICAgICAgICAgIGxvZGFzaDogXyxcbiAgICAgICAgICAgICAgY3VycmVuY3k6ICh2YWx1ZTogYW55KSA9PiBuZXcgQ3VycmVuY3lQaXBlKCdlbi1VUycpLnRyYW5zZm9ybSh2YWx1ZSwgJ1VTRCcsICdzeW1ib2wnLCBjdXJyZW5jeUZvcm1hdCksXG4gICAgICAgICAgICAgIGRhdGU6IGZvcm1hdERhdGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgVG9EYXk6IGZvcm1hdERhdGUoRGF0ZS5ub3coKSBhcyBhbnkpLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGlmICghc2hvdWxkUHJldmVudERvd25sb2FkKSB7XG4gICAgICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW0pTT04uc3RyaW5naWZ5KHRyYW5zZm9ybWVkRGF0YSldKTtcbiAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkU2VydmljZS5wcm9jZXNzRG93bmxvYWQoYmxvYiwgJ2RhdGEuanNvbicpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gdHJhbnNmb3JtZWREYXRhO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZUF0dGFjaG1lbnRzJCh0ZW1wbGF0ZTogRG9jdW1lbnRUZW1wbGF0ZSk6IE9ic2VydmFibGU8QXJyYXlCdWZmZXJbXT4ge1xuICAgIGNvbnN0IGF0dGFjaG1lbnRJZHMgPSAodGVtcGxhdGUuYXR0YWNobWVudHM/Lm1hcCgoeyBpZCB9KSA9PiBpZCkuZmlsdGVyKEJvb2xlYW4pIGFzIHN0cmluZ1tdKSA/PyBbXTtcblxuICAgIGlmICghYXR0YWNobWVudElkcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBvZihbXSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcmtKb2luKGF0dGFjaG1lbnRJZHMubWFwKGlkID0+IHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5nZXRBdHRhY2htZW50RmlsZShpZCwgdHJ1ZSkpKTtcbiAgfVxuXG4gIHByaXZhdGUgbWFwU2ZRdWVyeVJlc3VsdCA9IDxUPihsaW1pdDogbnVtYmVyKSA9PlxuICAgIG1hcCgocmVjb3JkczogVFtdKSA9PiB7XG4gICAgICBpZiAoIXJlY29yZHMubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiB7IF9yZXN1bHQ6ICdObyBSZWNvcmRzIEZvdW5kJyB9O1xuICAgICAgfVxuXG4gICAgICBpZiAobGltaXQgPT09IDEpIHtcbiAgICAgICAgcmV0dXJuIHJlY29yZHNbMF07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZWNvcmRzO1xuICAgIH0pO1xuXG4gIHByaXZhdGUgbWFwQm9vbGVhbklmQXBsaWNhYmxlID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBpZiAodmFsdWUgPT09ICd0cnVlJykge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlID09PSAnZmFsc2UnKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9O1xuXG4gIHByaXZhdGUgcXVlcnlPYmplY3QoXG4gICAgeyBvYmplY3ROYW1lLCByZXN1bHRPYmplY3ROYW1lLCBmaWVsZHMsIHN0YXRlbWVudCB9OiBUZW1wbGF0ZVF1ZXJ5LFxuICAgIHsgcHJvcGVydGllcyB9OiBBbnlXaXRoUHJvcGVydGllcyxcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBwYXR0ZXJuTGltaXQgPSAvKFxccypsaW1pdFxcc1xcZCopL2k7XG4gICAgbGV0IGxpbWl0ID0gMTtcbiAgICBpZiAoc3RhdGVtZW50ICYmIHBhdHRlcm5MaW1pdC50ZXN0KHN0YXRlbWVudCkpIHtcbiAgICAgIGNvbnN0IGxpbWl0U3RyID0gc3RhdGVtZW50Py5tYXRjaChwYXR0ZXJuTGltaXQpPy5bMV0/LnRyaW0oKS5zdWJzdHJpbmcoNSkudHJpbSgpO1xuICAgICAgaWYgKGxpbWl0U3RyKSB7XG4gICAgICAgIGxpbWl0ID0gTnVtYmVyLnBhcnNlSW50KGxpbWl0U3RyLCAxMCk7XG4gICAgICB9XG4gICAgICBzdGF0ZW1lbnQgPSBzdGF0ZW1lbnQucmVwbGFjZShwYXR0ZXJuTGltaXQsICcnKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXNvbHZlZFN0YXRlbWVudCA9IHN0YXRlbWVudFxuICAgICAgPyBTdHJpbmdVdGlscy5maWxsUGxhY2Vob2xkZXJzKHN0YXRlbWVudCwgcHJvcGVydGllcywgLzpcXHMqKFxcd1tcXHdcXGRfLl0rKS9pKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCBzZWFyY2hSZXF1ZXN0ID0ge1xuICAgICAgc2tpcDogMCxcbiAgICAgIGNvdW50OiBsaW1pdCxcbiAgICAgIHJhd0NvbmRpdGlvbjogcmVzb2x2ZWRTdGF0ZW1lbnQsXG4gICAgICAuLi4oZmllbGRzPy5sZW5ndGggJiYgISFmaWVsZHNbMF0gJiYgeyBmaWVsZHMgfSksXG4gICAgfSBhcyBTZWFyY2hSZXF1ZXN0O1xuXG4gICAgcmV0dXJuIHRoaXMuc2FsZXNmb3JjZUFwaVNlcnZpY2UucXVlcnkoc2VhcmNoUmVxdWVzdCwgb2JqZWN0TmFtZSkucGlwZShcbiAgICAgIHRoaXMubWFwU2ZRdWVyeVJlc3VsdChsaW1pdCksXG4gICAgICBtYXAodmFsdWUgPT4gKHsgW3Jlc3VsdE9iamVjdE5hbWVdOiB2YWx1ZSB9KSksXG4gICAgKTtcbiAgfVxufVxuIl19
|
@@ -72,9 +72,9 @@ export class EndpointsApiService {
|
|
72
72
|
});
|
73
73
|
}
|
74
74
|
}
|
75
|
-
EndpointsApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
76
|
-
EndpointsApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
77
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
75
|
+
EndpointsApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EndpointsApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
76
|
+
EndpointsApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EndpointsApiService });
|
77
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EndpointsApiService, decorators: [{
|
78
78
|
type: Injectable
|
79
79
|
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
80
80
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5kcG9pbnRzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi9zZXJ2aWNlcy9lbmRwb2ludHMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFxRCxVQUFVLEVBQWUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBSzlHLE1BQU0sT0FBTyxtQkFBbUI7SUFJOUIsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBSG5DLG9CQUFlLEdBQVcsc0JBQXNCLENBQUM7UUFDakQsZUFBVSxHQUFXLGdCQUFnQixDQUFDO0lBRUEsQ0FBQztJQUVqRCxlQUFlO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksVUFBVSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVNLGdCQUFnQixDQUFDLFVBQXNCLEVBQUUsSUFBWSxFQUFFLEtBQWE7UUFDekUsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUM5QixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQztZQUM5QixNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLFNBQVM7WUFDckMsTUFBTTtZQUNOLElBQUksRUFBRSxVQUFVO1NBQ2pCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxlQUFlLENBQUMsRUFBVTtRQUMvQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDO1lBQzlCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksRUFBRSxFQUFFO1lBQ3BDLE1BQU0sRUFBRSxRQUFRO1NBQ2pCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxFQUFVO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7WUFDOUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsSUFBSSxFQUFFLFVBQVU7WUFDNUMsTUFBTSxFQUFFLE9BQU87U0FDaEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGNBQWMsQ0FBQyxFQUFVO1FBQzlCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7WUFDOUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUU7WUFDcEMsTUFBTSxFQUFFLEtBQUs7U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZUFBZSxDQUFDLElBQWlCO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7WUFDOUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUM5QixNQUFNLEVBQUUsTUFBTTtZQUNkLElBQUk7U0FDTCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZUFBZSxDQUFDLElBQWM7UUFDbkMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQztZQUM5QixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDekMsTUFBTSxFQUFFLEtBQUs7WUFDYixJQUFJO1NBQ0wsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFlBQTBCO1FBQ2xELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7WUFDOUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsSUFBSSxZQUFZLENBQUMsRUFBRSxRQUFRO1lBQ3ZELE1BQU0sRUFBRSxNQUFNO1lBQ2QsSUFBSSxFQUFFLFlBQVk7U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGdCQUFnQixDQUFDLElBQTRCO1FBQ2xELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQVM7WUFDdEMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsVUFBVTtZQUNqQyxNQUFNLEVBQUUsTUFBTTtZQUNkLElBQUk7WUFDSixZQUFZLEVBQUUsTUFBTTtZQUNwQixnQkFBZ0IsRUFBRSxJQUFJO1NBQ3ZCLENBQUMsQ0FBQztJQUNMLENBQUM7O2dIQTNFVSxtQkFBbUI7b0hBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VIdHRwU2VydmljZSwgRW5kcG9pbnQsIEVuZHBvaW50RXhlY3V0ZVJlcXVlc3QsIEV4cHJlc3Npb24sIE5ld0VuZHBvaW50IH0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDbG9uZVJlcXVlc3QgfSBmcm9tICcuLi90eXBlcy9jbG9uZS1yZXF1ZXN0LnR5cGVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVuZHBvaW50c0FwaVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGFkbWluU2VydmljZVVybDogc3RyaW5nID0gJy9hZG1pbi9hcGktZW5kcG9pbnRzJztcbiAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlVXJsOiBzdHJpbmcgPSAnL2FwaS1lbmRwb2ludHMnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYmFzZUh0dHBTZXJ2aWNlOiBCYXNlSHR0cFNlcnZpY2UpIHt9XG5cbiAgcHVibGljIGZldGNoRW5kcG9pbnRzJCgpOiBPYnNlcnZhYmxlPEVuZHBvaW50W10+IHtcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hFbmRwb2ludHMkKG5ldyBFeHByZXNzaW9uKCksIDAsIC0xKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2hFbmRwb2ludHMkKGV4cHJlc3Npb246IEV4cHJlc3Npb24sIHNraXA6IG51bWJlciwgY291bnQ6IG51bWJlcik6IE9ic2VydmFibGU8RW5kcG9pbnRbXT4ge1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NraXAnLCAnJyArIHNraXApO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2NvdW50JywgJycgKyBjb3VudCk7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5hZG1pblNlcnZpY2VVcmx9L3NlYXJjaGAsXG4gICAgICBwYXJhbXMsXG4gICAgICBib2R5OiBleHByZXNzaW9uLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUVuZHBvaW50JChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuYWRtaW5TZXJ2aWNlVXJsfS8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdkZWxldGUnLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlc3RvcmVFbmRwb2ludCQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLmFkbWluU2VydmljZVVybH0vJHtpZH0vcmVzdG9yZWAsXG4gICAgICBtZXRob2Q6ICdwYXRjaCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZmV0Y2hFbmRwb2ludCQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RW5kcG9pbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5hZG1pblNlcnZpY2VVcmx9LyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlRW5kcG9pbnQkKGJvZHk6IE5ld0VuZHBvaW50KTogT2JzZXJ2YWJsZTxFbmRwb2ludD4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLmFkbWluU2VydmljZVVybH1gLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBib2R5LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUVuZHBvaW50JChib2R5OiBFbmRwb2ludCk6IE9ic2VydmFibGU8RW5kcG9pbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5hZG1pblNlcnZpY2VVcmx9LyR7Ym9keS5pZH1gLFxuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgIGJvZHksXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZHVwbGljYXRlRW5kcG9pbnQkKGNsb25lUmVxdWVzdDogQ2xvbmVSZXF1ZXN0KTogT2JzZXJ2YWJsZTxFbmRwb2ludD4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLmFkbWluU2VydmljZVVybH0vJHtjbG9uZVJlcXVlc3QuaWR9L2Nsb25lYCxcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keTogY2xvbmVSZXF1ZXN0LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGV4ZWN1dGVFbmRwb2ludCQoYm9keTogRW5kcG9pbnRFeGVjdXRlUmVxdWVzdCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaTxzdHJpbmc+KHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS9leGVjdXRlYCxcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keSxcbiAgICAgIHJlc3BvbnNlVHlwZTogJ3RleHQnLFxuICAgICAgc2tpcEVycm9ySGFuZGxlcjogdHJ1ZSxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
@@ -0,0 +1,142 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "@veloceapps/core";
|
4
|
+
export class FlowStateApiService {
|
5
|
+
constructor(httpService) {
|
6
|
+
this.httpService = httpService;
|
7
|
+
this.SERVICE_URL = '/configuration/states';
|
8
|
+
}
|
9
|
+
/**
|
10
|
+
* Initialize flow state
|
11
|
+
* @param request Request
|
12
|
+
* @returns Flow initialization response, which contains session ID and result of selectors
|
13
|
+
*/
|
14
|
+
init(request) {
|
15
|
+
return this.httpService.api({
|
16
|
+
method: 'post',
|
17
|
+
url: `${this.SERVICE_URL}/quote/start`,
|
18
|
+
body: request,
|
19
|
+
});
|
20
|
+
}
|
21
|
+
/**
|
22
|
+
* Get existing state by ID
|
23
|
+
* @param id ID
|
24
|
+
* @returns Flow State
|
25
|
+
*/
|
26
|
+
get(id) {
|
27
|
+
return this.httpService.api({
|
28
|
+
url: `${this.SERVICE_URL}/${id}`,
|
29
|
+
});
|
30
|
+
}
|
31
|
+
/**
|
32
|
+
* Execute actions/selectors
|
33
|
+
* @param id State ID
|
34
|
+
* @param request Request
|
35
|
+
* @returns Execute result
|
36
|
+
*/
|
37
|
+
execute(id, request) {
|
38
|
+
return this.httpService.api({
|
39
|
+
method: 'post',
|
40
|
+
url: `${this.SERVICE_URL}/quote/${id}/execute`,
|
41
|
+
body: request,
|
42
|
+
});
|
43
|
+
}
|
44
|
+
/**
|
45
|
+
* Save Quote in the state
|
46
|
+
* @param id State ID
|
47
|
+
*/
|
48
|
+
save(id) {
|
49
|
+
return this.httpService.api({
|
50
|
+
method: 'post',
|
51
|
+
url: `${this.SERVICE_URL}/quote/${id}/save`,
|
52
|
+
});
|
53
|
+
}
|
54
|
+
/**
|
55
|
+
* Submit Quote in the state
|
56
|
+
* @param id State ID
|
57
|
+
*/
|
58
|
+
submit(id) {
|
59
|
+
return this.httpService.api({
|
60
|
+
method: 'post',
|
61
|
+
url: `${this.SERVICE_URL}/quote/${id}/submit`,
|
62
|
+
});
|
63
|
+
}
|
64
|
+
/**
|
65
|
+
* Close Flow state
|
66
|
+
* @param id State ID
|
67
|
+
*/
|
68
|
+
cancel(id) {
|
69
|
+
return this.httpService.api({
|
70
|
+
method: 'post',
|
71
|
+
url: `${this.SERVICE_URL}/quote/${id}/cancel`,
|
72
|
+
});
|
73
|
+
}
|
74
|
+
/**
|
75
|
+
* Initialize stateful configuration
|
76
|
+
* @param stateId string
|
77
|
+
* @param request Request
|
78
|
+
* @returns Flow initialization response, which contains session ID and result of selectors
|
79
|
+
*/
|
80
|
+
newConfiguration(stateId, request) {
|
81
|
+
return this.httpService.api({
|
82
|
+
method: 'post',
|
83
|
+
url: `${this.SERVICE_URL}/quote/${stateId}/configuration/new`,
|
84
|
+
body: request,
|
85
|
+
});
|
86
|
+
}
|
87
|
+
/**
|
88
|
+
* Start stateful configuration
|
89
|
+
* @param stateId string
|
90
|
+
* @param request Request
|
91
|
+
* @returns Flow initialization response, which contains session ID and result of selectors
|
92
|
+
*/
|
93
|
+
startConfiguration(stateId, request) {
|
94
|
+
return this.httpService.api({
|
95
|
+
method: 'post',
|
96
|
+
url: `${this.SERVICE_URL}/quote/${stateId}/configuration/start`,
|
97
|
+
body: request,
|
98
|
+
});
|
99
|
+
}
|
100
|
+
/**
|
101
|
+
* Execute stateful configuration
|
102
|
+
* @param stateId string
|
103
|
+
* @param configurationId string
|
104
|
+
* @param request Request
|
105
|
+
* @returns Flow initialization response, which contains session ID and result of selectors
|
106
|
+
*/
|
107
|
+
executeConfiguration(stateId, configurationId, request) {
|
108
|
+
return this.httpService.api({
|
109
|
+
method: 'post',
|
110
|
+
url: `${this.SERVICE_URL}/quote/${stateId}/configuration/${configurationId}/execute`,
|
111
|
+
body: request,
|
112
|
+
});
|
113
|
+
}
|
114
|
+
/**
|
115
|
+
* Save stateful configuration
|
116
|
+
* @param stateId string
|
117
|
+
* @param configurationId string
|
118
|
+
*/
|
119
|
+
saveConfiguration(stateId, configurationId) {
|
120
|
+
return this.httpService.api({
|
121
|
+
method: 'post',
|
122
|
+
url: `${this.SERVICE_URL}/quote/${stateId}/configuration/${configurationId}/save`,
|
123
|
+
});
|
124
|
+
}
|
125
|
+
/**
|
126
|
+
* Cancel stateful configuration
|
127
|
+
* @param stateId string
|
128
|
+
* @param configurationId string
|
129
|
+
*/
|
130
|
+
cancelConfiguration(stateId, configurationId) {
|
131
|
+
return this.httpService.api({
|
132
|
+
method: 'post',
|
133
|
+
url: `${this.SERVICE_URL}/quote/${stateId}/configuration/${configurationId}/cancel`,
|
134
|
+
});
|
135
|
+
}
|
136
|
+
}
|
137
|
+
FlowStateApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowStateApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
138
|
+
FlowStateApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowStateApiService });
|
139
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowStateApiService, decorators: [{
|
140
|
+
type: Injectable
|
141
|
+
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1zdGF0ZS1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9zcmMvbGliL3NlcnZpY2VzL2Zsb3ctc3RhdGUtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQWUzQyxNQUFNLE9BQU8sbUJBQW1CO0lBRzlCLFlBQW9CLFdBQTRCO1FBQTVCLGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtRQUYvQixnQkFBVyxHQUFHLHVCQUF1QixDQUFDO0lBRUosQ0FBQztJQUVwRDs7OztPQUlHO0lBQ0ksSUFBSSxDQUFDLE9BQTZCO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDMUIsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxjQUFjO1lBQ3RDLElBQUksRUFBRSxPQUFPO1NBQ2QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxHQUFHLENBQUMsRUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxFQUFFO1NBQ2pDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLE9BQU8sQ0FBQyxFQUFVLEVBQUUsT0FBcUM7UUFDOUQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQztZQUMxQixNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLFVBQVUsRUFBRSxVQUFVO1lBQzlDLElBQUksRUFBRSxPQUFPO1NBQ2QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNJLElBQUksQ0FBQyxFQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDMUIsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxVQUFVLEVBQUUsT0FBTztTQUM1QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLEVBQVU7UUFDdEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQztZQUMxQixNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLFVBQVUsRUFBRSxTQUFTO1NBQzlDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsRUFBVTtRQUN0QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsVUFBVSxFQUFFLFNBQVM7U0FDOUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksZ0JBQWdCLENBQ3JCLE9BQWUsRUFDZixPQUFxQztRQUVyQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsVUFBVSxPQUFPLG9CQUFvQjtZQUM3RCxJQUFJLEVBQUUsT0FBTztTQUNkLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGtCQUFrQixDQUN2QixPQUFlLEVBQ2YsT0FBdUM7UUFFdkMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQztZQUMxQixNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLFVBQVUsT0FBTyxzQkFBc0I7WUFDL0QsSUFBSSxFQUFFLE9BQU87U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksb0JBQW9CLENBQ3pCLE9BQWUsRUFDZixlQUF1QixFQUN2QixPQUF5QztRQUV6QyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsVUFBVSxPQUFPLGtCQUFrQixlQUFlLFVBQVU7WUFDcEYsSUFBSSxFQUFFLE9BQU87U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGlCQUFpQixDQUFDLE9BQWUsRUFBRSxlQUF1QjtRQUMvRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQzFCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsVUFBVSxPQUFPLGtCQUFrQixlQUFlLE9BQU87U0FDbEYsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxtQkFBbUIsQ0FBQyxPQUFlLEVBQUUsZUFBdUI7UUFDakUsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQztZQUMxQixNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLFVBQVUsT0FBTyxrQkFBa0IsZUFBZSxTQUFTO1NBQ3BGLENBQUMsQ0FBQztJQUNMLENBQUM7O2dIQXZKVSxtQkFBbUI7b0hBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQmFzZUh0dHBTZXJ2aWNlLFxuICBDb25maWd1cmF0aW9uU3RhdGVFeGVjdXRlUmVxdWVzdCxcbiAgQ29uZmlndXJhdGlvblN0YXRlTmV3UmVxdWVzdCxcbiAgQ29uZmlndXJhdGlvblN0YXRlU3RhcnRSZXF1ZXN0LFxuICBGbG93U3RhdGUsXG4gIEZsb3dTdGF0ZUV4ZWN1dGlvblJlcXVlc3REVE8sXG4gIEZsb3dTdGF0ZUV4ZWN1dGlvblJlc3VsdCxcbiAgRmxvd1N0YXRlSW5pdFJlcXVlc3QsXG4gIEZsb3dTdGF0ZUluaXRSZXNwb25zZSxcbn0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGbG93U3RhdGVBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBTRVJWSUNFX1VSTCA9ICcvY29uZmlndXJhdGlvbi9zdGF0ZXMnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cFNlcnZpY2U6IEJhc2VIdHRwU2VydmljZSkge31cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSBmbG93IHN0YXRlXG4gICAqIEBwYXJhbSByZXF1ZXN0IFJlcXVlc3RcbiAgICogQHJldHVybnMgRmxvdyBpbml0aWFsaXphdGlvbiByZXNwb25zZSwgd2hpY2ggY29udGFpbnMgc2Vzc2lvbiBJRCBhbmQgcmVzdWx0IG9mIHNlbGVjdG9yc1xuICAgKi9cbiAgcHVibGljIGluaXQocmVxdWVzdDogRmxvd1N0YXRlSW5pdFJlcXVlc3QpOiBPYnNlcnZhYmxlPEZsb3dTdGF0ZUluaXRSZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vcXVvdGUvc3RhcnRgLFxuICAgICAgYm9keTogcmVxdWVzdCxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZXhpc3Rpbmcgc3RhdGUgYnkgSURcbiAgICogQHBhcmFtIGlkIElEXG4gICAqIEByZXR1cm5zIEZsb3cgU3RhdGVcbiAgICovXG4gIHB1YmxpYyBnZXQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Rmxvd1N0YXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH1gLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4ZWN1dGUgYWN0aW9ucy9zZWxlY3RvcnNcbiAgICogQHBhcmFtIGlkIFN0YXRlIElEXG4gICAqIEBwYXJhbSByZXF1ZXN0IFJlcXVlc3RcbiAgICogQHJldHVybnMgRXhlY3V0ZSByZXN1bHRcbiAgICovXG4gIHB1YmxpYyBleGVjdXRlKGlkOiBzdHJpbmcsIHJlcXVlc3Q6IEZsb3dTdGF0ZUV4ZWN1dGlvblJlcXVlc3REVE8pOiBPYnNlcnZhYmxlPEZsb3dTdGF0ZUV4ZWN1dGlvblJlc3VsdD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vcXVvdGUvJHtpZH0vZXhlY3V0ZWAsXG4gICAgICBib2R5OiByZXF1ZXN0LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNhdmUgUXVvdGUgaW4gdGhlIHN0YXRlXG4gICAqIEBwYXJhbSBpZCBTdGF0ZSBJRFxuICAgKi9cbiAgcHVibGljIHNhdmUoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8eyBxdW90ZUlkOiBzdHJpbmcgfT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vcXVvdGUvJHtpZH0vc2F2ZWAsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU3VibWl0IFF1b3RlIGluIHRoZSBzdGF0ZVxuICAgKiBAcGFyYW0gaWQgU3RhdGUgSURcbiAgICovXG4gIHB1YmxpYyBzdWJtaXQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8eyBxdW90ZUlkOiBzdHJpbmcgfT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vcXVvdGUvJHtpZH0vc3VibWl0YCxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZSBGbG93IHN0YXRlXG4gICAqIEBwYXJhbSBpZCBTdGF0ZSBJRFxuICAgKi9cbiAgcHVibGljIGNhbmNlbChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS9xdW90ZS8ke2lkfS9jYW5jZWxgLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemUgc3RhdGVmdWwgY29uZmlndXJhdGlvblxuICAgKiBAcGFyYW0gc3RhdGVJZCBzdHJpbmdcbiAgICogQHBhcmFtIHJlcXVlc3QgUmVxdWVzdFxuICAgKiBAcmV0dXJucyBGbG93IGluaXRpYWxpemF0aW9uIHJlc3BvbnNlLCB3aGljaCBjb250YWlucyBzZXNzaW9uIElEIGFuZCByZXN1bHQgb2Ygc2VsZWN0b3JzXG4gICAqL1xuICBwdWJsaWMgbmV3Q29uZmlndXJhdGlvbihcbiAgICBzdGF0ZUlkOiBzdHJpbmcsXG4gICAgcmVxdWVzdDogQ29uZmlndXJhdGlvblN0YXRlTmV3UmVxdWVzdCxcbiAgKTogT2JzZXJ2YWJsZTxGbG93U3RhdGVFeGVjdXRpb25SZXN1bHQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9L3F1b3RlLyR7c3RhdGVJZH0vY29uZmlndXJhdGlvbi9uZXdgLFxuICAgICAgYm9keTogcmVxdWVzdCxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydCBzdGF0ZWZ1bCBjb25maWd1cmF0aW9uXG4gICAqIEBwYXJhbSBzdGF0ZUlkIHN0cmluZ1xuICAgKiBAcGFyYW0gcmVxdWVzdCBSZXF1ZXN0XG4gICAqIEByZXR1cm5zIEZsb3cgaW5pdGlhbGl6YXRpb24gcmVzcG9uc2UsIHdoaWNoIGNvbnRhaW5zIHNlc3Npb24gSUQgYW5kIHJlc3VsdCBvZiBzZWxlY3RvcnNcbiAgICovXG4gIHB1YmxpYyBzdGFydENvbmZpZ3VyYXRpb24oXG4gICAgc3RhdGVJZDogc3RyaW5nLFxuICAgIHJlcXVlc3Q6IENvbmZpZ3VyYXRpb25TdGF0ZVN0YXJ0UmVxdWVzdCxcbiAgKTogT2JzZXJ2YWJsZTxGbG93U3RhdGVFeGVjdXRpb25SZXN1bHQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9L3F1b3RlLyR7c3RhdGVJZH0vY29uZmlndXJhdGlvbi9zdGFydGAsXG4gICAgICBib2R5OiByZXF1ZXN0LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4ZWN1dGUgc3RhdGVmdWwgY29uZmlndXJhdGlvblxuICAgKiBAcGFyYW0gc3RhdGVJZCBzdHJpbmdcbiAgICogQHBhcmFtIGNvbmZpZ3VyYXRpb25JZCBzdHJpbmdcbiAgICogQHBhcmFtIHJlcXVlc3QgUmVxdWVzdFxuICAgKiBAcmV0dXJucyBGbG93IGluaXRpYWxpemF0aW9uIHJlc3BvbnNlLCB3aGljaCBjb250YWlucyBzZXNzaW9uIElEIGFuZCByZXN1bHQgb2Ygc2VsZWN0b3JzXG4gICAqL1xuICBwdWJsaWMgZXhlY3V0ZUNvbmZpZ3VyYXRpb24oXG4gICAgc3RhdGVJZDogc3RyaW5nLFxuICAgIGNvbmZpZ3VyYXRpb25JZDogc3RyaW5nLFxuICAgIHJlcXVlc3Q6IENvbmZpZ3VyYXRpb25TdGF0ZUV4ZWN1dGVSZXF1ZXN0LFxuICApOiBPYnNlcnZhYmxlPEZsb3dTdGF0ZUV4ZWN1dGlvblJlc3VsdD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vcXVvdGUvJHtzdGF0ZUlkfS9jb25maWd1cmF0aW9uLyR7Y29uZmlndXJhdGlvbklkfS9leGVjdXRlYCxcbiAgICAgIGJvZHk6IHJlcXVlc3QsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2F2ZSBzdGF0ZWZ1bCBjb25maWd1cmF0aW9uXG4gICAqIEBwYXJhbSBzdGF0ZUlkIHN0cmluZ1xuICAgKiBAcGFyYW0gY29uZmlndXJhdGlvbklkIHN0cmluZ1xuICAgKi9cbiAgcHVibGljIHNhdmVDb25maWd1cmF0aW9uKHN0YXRlSWQ6IHN0cmluZywgY29uZmlndXJhdGlvbklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHsgcXVvdGVJZDogc3RyaW5nIH0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9L3F1b3RlLyR7c3RhdGVJZH0vY29uZmlndXJhdGlvbi8ke2NvbmZpZ3VyYXRpb25JZH0vc2F2ZWAsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ2FuY2VsIHN0YXRlZnVsIGNvbmZpZ3VyYXRpb25cbiAgICogQHBhcmFtIHN0YXRlSWQgc3RyaW5nXG4gICAqIEBwYXJhbSBjb25maWd1cmF0aW9uSWQgc3RyaW5nXG4gICAqL1xuICBwdWJsaWMgY2FuY2VsQ29uZmlndXJhdGlvbihzdGF0ZUlkOiBzdHJpbmcsIGNvbmZpZ3VyYXRpb25JZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS9xdW90ZS8ke3N0YXRlSWR9L2NvbmZpZ3VyYXRpb24vJHtjb25maWd1cmF0aW9uSWR9L2NhbmNlbGAsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { Injectable } from '@angular/core';
|
2
|
+
import { isDefined, toLatestFlow } from '@veloceapps/core';
|
2
3
|
import { map } from 'rxjs/operators';
|
3
4
|
import * as i0 from "@angular/core";
|
4
5
|
import * as i1 from "./configuration-settings-api.service";
|
@@ -8,17 +9,20 @@ export class FlowsApiService {
|
|
8
9
|
this.flowsKey = 'flows';
|
9
10
|
}
|
10
11
|
getFlow(id) {
|
11
|
-
return this.fetchFlows().pipe(map(flows => flows.find(flow => flow.id == id))
|
12
|
+
return this.fetchFlows().pipe(map(flows => flows.find(flow => flow.id == id)), map(flow => {
|
13
|
+
if (!flow) {
|
14
|
+
throw new Error(`Flow with flowId=${id} is not defined`);
|
15
|
+
}
|
16
|
+
return flow;
|
17
|
+
}));
|
12
18
|
}
|
13
19
|
fetchFlows() {
|
14
|
-
return this.configurationSettingsApiService
|
15
|
-
.fetchSetting(this.flowsKey)
|
16
|
-
.pipe(map((flow) => (flow?.value ? JSON.parse(flow.value) : [])));
|
20
|
+
return this.configurationSettingsApiService.fetchSetting(this.flowsKey).pipe(map((setting) => (setting?.value ? JSON.parse(setting.value) : [])), map(anyFlows => anyFlows.map(toLatestFlow).filter(isDefined)));
|
17
21
|
}
|
18
22
|
}
|
19
|
-
FlowsApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
20
|
-
FlowsApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
23
|
+
FlowsApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowsApiService, deps: [{ token: i1.ConfigurationSettingsApiService }], target: i0.ɵɵFactoryTarget.Injectable });
|
24
|
+
FlowsApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowsApiService });
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowsApiService, decorators: [{
|
22
26
|
type: Injectable
|
23
27
|
}], ctorParameters: function () { return [{ type: i1.ConfigurationSettingsApiService }]; } });
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvd3MtYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9zcmMvbGliL3NlcnZpY2VzL2Zsb3dzLWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFMUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFJckMsTUFBTSxPQUFPLGVBQWU7SUFHMUIsWUFBb0IsK0JBQWdFO1FBQWhFLG9DQUErQixHQUEvQiwrQkFBK0IsQ0FBaUM7UUFGbkUsYUFBUSxHQUFHLE9BQU8sQ0FBQztJQUVtRCxDQUFDO0lBRWpGLE9BQU8sQ0FBQyxFQUFVO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksQ0FDM0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsRUFDL0MsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1QsSUFBSSxDQUFDLElBQUksRUFBRTtnQkFDVCxNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixFQUFFLGlCQUFpQixDQUFDLENBQUM7YUFDMUQ7WUFFRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRU0sVUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLCtCQUErQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUMxRSxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQWEsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQzlFLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQzlELENBQUM7SUFDSixDQUFDOzs0R0F2QlUsZUFBZTtnSEFBZixlQUFlOzJGQUFmLGVBQWU7a0JBRDNCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbnlGbG93LCBGbG93LCBpc0RlZmluZWQsIHRvTGF0ZXN0RmxvdyB9IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblNldHRpbmdzQXBpU2VydmljZSB9IGZyb20gJy4vY29uZmlndXJhdGlvbi1zZXR0aW5ncy1hcGkuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGbG93c0FwaVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGZsb3dzS2V5ID0gJ2Zsb3dzJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZ3VyYXRpb25TZXR0aW5nc0FwaVNlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXR0aW5nc0FwaVNlcnZpY2UpIHt9XG5cbiAgcHVibGljIGdldEZsb3coaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Rmxvdz4ge1xuICAgIHJldHVybiB0aGlzLmZldGNoRmxvd3MoKS5waXBlKFxuICAgICAgbWFwKGZsb3dzID0+IGZsb3dzLmZpbmQoZmxvdyA9PiBmbG93LmlkID09IGlkKSksXG4gICAgICBtYXAoZmxvdyA9PiB7XG4gICAgICAgIGlmICghZmxvdykge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRmxvdyB3aXRoIGZsb3dJZD0ke2lkfSBpcyBub3QgZGVmaW5lZGApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZsb3c7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGZldGNoRmxvd3MoKTogT2JzZXJ2YWJsZTxGbG93W10+IHtcbiAgICByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uU2V0dGluZ3NBcGlTZXJ2aWNlLmZldGNoU2V0dGluZyh0aGlzLmZsb3dzS2V5KS5waXBlKFxuICAgICAgbWFwKChzZXR0aW5nKTogQW55Rmxvd1tdID0+IChzZXR0aW5nPy52YWx1ZSA/IEpTT04ucGFyc2Uoc2V0dGluZy52YWx1ZSkgOiBbXSkpLFxuICAgICAgbWFwKGFueUZsb3dzID0+IGFueUZsb3dzLm1hcCh0b0xhdGVzdEZsb3cpLmZpbHRlcihpc0RlZmluZWQpKSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
@@ -57,9 +57,9 @@ export class GuidedSellingsAdminApiService {
|
|
57
57
|
}
|
58
58
|
}
|
59
59
|
GuidedSellingsAdminApiService.MAX_RESULTS = 60;
|
60
|
-
GuidedSellingsAdminApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
61
|
-
GuidedSellingsAdminApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
60
|
+
GuidedSellingsAdminApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: GuidedSellingsAdminApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
61
|
+
GuidedSellingsAdminApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: GuidedSellingsAdminApiService });
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: GuidedSellingsAdminApiService, decorators: [{
|
63
63
|
type: Injectable
|
64
64
|
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
65
65
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZGVkLXNlbGxpbmdzLWFkbWluLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi9zZXJ2aWNlcy9ndWlkZWQtc2VsbGluZ3MtYWRtaW4tYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU0zQyxNQUFNLE9BQU8sNkJBQTZCO0lBS3hDLFlBQW9CLGVBQWdDO1FBQWhDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUZuQyxlQUFVLEdBQVcsdUJBQXVCLENBQUM7UUFJdkQseUJBQW9CLEdBQUcsQ0FBQyxZQUFnQyxFQUErQixFQUFFO1lBQzlGLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2xELENBQUMsQ0FBQztRQUVLLDBCQUFxQixHQUFHLENBQzdCLFlBQWdDLEVBQ2hDLFVBQXVCLEVBQ00sRUFBRTtZQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFFLEdBQUcsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRW5FLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7Z0JBQzlCLE1BQU0sRUFBRSxNQUFNO2dCQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLFNBQVM7Z0JBQ2hDLE1BQU07Z0JBQ04sSUFBSSxFQUFFLFVBQVUsSUFBSSxFQUFFO2FBQ3ZCLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztRQUVLLHdCQUFtQixHQUFHLENBQUMsRUFBVSxFQUE2QixFQUFFO1lBQ3JFLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN2RSxDQUFDLENBQUM7UUFFSyw0QkFBdUIsR0FBRyxDQUFDLGFBQStCLEVBQTZCLEVBQUU7WUFDOUYsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQztnQkFDOUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDekIsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsSUFBSSxFQUFFLGFBQWE7YUFDcEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBRUssNEJBQXVCLEdBQUcsQ0FBQyxZQUEwQixFQUE2QixFQUFFO1lBQ3pGLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7Z0JBQzlCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLElBQUksWUFBWSxDQUFDLEVBQUUsUUFBUTtnQkFDbEQsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsSUFBSSxFQUFFLFlBQVk7YUFDbkIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBRUsseUJBQW9CLEdBQUcsQ0FBQyxJQUFtQixFQUFvQixFQUFFO1lBQ3RFLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUM7Z0JBQzlCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRTtnQkFDcEMsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsSUFBSSxFQUFFLElBQUk7YUFDWCxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7UUFFSyx5QkFBb0IsR0FBRyxDQUFDLEVBQVUsRUFBb0IsRUFBRTtZQUM3RCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDO2dCQUM5QixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLEVBQUUsRUFBRTtnQkFDL0IsTUFBTSxFQUFFLFFBQVE7YUFDakIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBRUssMEJBQXFCLEdBQUcsQ0FBQyxFQUFVLEVBQW9CLEVBQUU7WUFDOUQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQztnQkFDOUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxFQUFFLFVBQVU7Z0JBQ3ZDLE1BQU0sRUFBRSxPQUFPO2FBQ2hCLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztJQTVEcUQsQ0FBQzs7QUFKMUMseUNBQVcsR0FBRyxFQUFFLENBQUM7MEhBRHBCLDZCQUE2Qjs4SEFBN0IsNkJBQTZCOzJGQUE3Qiw2QkFBNkI7a0JBRHpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZUh0dHBTZXJ2aWNlLCBFeHByZXNzaW9uLCBHdWlkZWRTZWxsaW5nLCBOZXdHdWlkZWRTZWxsaW5nIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDbG9uZVJlcXVlc3QsIFF1ZXJ5U2VhcmNoUGFyYW1zIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgR3VpZGVkU2VsbGluZ3NBZG1pbkFwaVNlcnZpY2Uge1xuICBwdWJsaWMgc3RhdGljIE1BWF9SRVNVTFRTID0gNjA7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlVXJsOiBzdHJpbmcgPSAnL2FkbWluL2d1aWRlZC1zZWxsaW5nJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJhc2VIdHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBmZXRjaEd1aWRlZFNlbGxpbmdzJCA9IChzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcyk6IE9ic2VydmFibGU8R3VpZGVkU2VsbGluZ1tdPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoR3VpZGVkU2VsbGluZ3MkKHNlYXJjaFBhcmFtcyk7XG4gIH07XG5cbiAgcHVibGljIHNlYXJjaEd1aWRlZFNlbGxpbmdzJCA9IChcbiAgICBzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcyxcbiAgICBleHByZXNzaW9uPzogRXhwcmVzc2lvbixcbiAgKTogT2JzZXJ2YWJsZTxHdWlkZWRTZWxsaW5nW10+ID0+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHsgLi4uc2VhcmNoUGFyYW1zIH0gfSk7XG5cbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9L3NlYXJjaGAsXG4gICAgICBwYXJhbXMsXG4gICAgICBib2R5OiBleHByZXNzaW9uIHx8IHt9LFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyBmZXRjaEd1aWRlZFNlbGxpbmckID0gKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEd1aWRlZFNlbGxpbmc+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHsgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7aWR9YCB9KTtcbiAgfTtcblxuICBwdWJsaWMgY3JlYXRlTmV3R3VpZGVkU2VsbGluZyQgPSAoZ3VpZGVkU2VsbGluZzogTmV3R3VpZGVkU2VsbGluZyk6IE9ic2VydmFibGU8R3VpZGVkU2VsbGluZz4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9YCxcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYm9keTogZ3VpZGVkU2VsbGluZyxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgZHVwbGljYXRlR3VpZGVkU2VsbGluZyQgPSAoY2xvbmVSZXF1ZXN0OiBDbG9uZVJlcXVlc3QpOiBPYnNlcnZhYmxlPEd1aWRlZFNlbGxpbmc+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2Nsb25lUmVxdWVzdC5pZH0vY2xvbmVgLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBib2R5OiBjbG9uZVJlcXVlc3QsXG4gICAgfSk7XG4gIH07XG5cbiAgcHVibGljIHVwZGF0ZUd1aWRlZFNlbGxpbmckID0gKGRhdGE6IEd1aWRlZFNlbGxpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2RhdGEuaWR9YCxcbiAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgICBib2R5OiBkYXRhLFxuICAgIH0pO1xuICB9O1xuXG4gIHB1YmxpYyByZW1vdmVHdWlkZWRTZWxsaW5nJCA9IChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtpZH1gLFxuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICB9KTtcbiAgfTtcblxuICBwdWJsaWMgcmVzdG9yZUd1aWRlZFNlbGxpbmckID0gKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2lkfS9yZXN0b3JlYCxcbiAgICAgIG1ldGhvZDogJ3BhdGNoJyxcbiAgICB9KTtcbiAgfTtcbn1cbiJdfQ==
|
@@ -29,9 +29,9 @@ export class GuidedSellingApiService {
|
|
29
29
|
});
|
30
30
|
}
|
31
31
|
}
|
32
|
-
GuidedSellingApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
33
|
-
GuidedSellingApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
32
|
+
GuidedSellingApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: GuidedSellingApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
33
|
+
GuidedSellingApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: GuidedSellingApiService });
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: GuidedSellingApiService, decorators: [{
|
35
35
|
type: Injectable
|
36
36
|
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
37
37
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZGVkLXNlbGxpbmdzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi9zZXJ2aWNlcy9ndWlkZWQtc2VsbGluZ3MtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFtQixVQUFVLEVBQWlCLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7QUFLeEYsTUFBTSxPQUFPLHVCQUF1QjtJQUdsQyxZQUFvQixJQUFxQjtRQUFyQixTQUFJLEdBQUosSUFBSSxDQUFpQjtRQUZ4QixlQUFVLEdBQUcsaUJBQWlCLENBQUM7SUFFSixDQUFDO0lBRXRDLGFBQWEsQ0FBQyxJQUFZLEVBQUUsWUFBZ0M7UUFDakUsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsRUFBRSxHQUFHLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuRSxNQUFNLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVwRyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1lBQ25CLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsU0FBUztZQUNoQyxNQUFNO1lBQ04sSUFBSSxFQUFFLFVBQVUsSUFBSSxFQUFFO1NBQ3ZCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxXQUFXLENBQUMsRUFBVSxFQUFFLFlBQWdDO1FBQzdELE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsR0FBRyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbkUsTUFBTSxVQUFVLEdBQUcsSUFBSSxVQUFVLENBQUMsU0FBUyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxRQUFRLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFaEcsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNuQixNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLFNBQVM7WUFDaEMsTUFBTTtZQUNOLElBQUksRUFBRSxVQUFVLElBQUksRUFBRTtTQUN2QixDQUFDLENBQUM7SUFDTCxDQUFDOztvSEEzQlUsdUJBQXVCO3dIQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFEbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlSHR0cFNlcnZpY2UsIEV4cHJlc3Npb24sIEd1aWRlZFNlbGxpbmcsIE9wZXJhdG9yIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBRdWVyeVNlYXJjaFBhcmFtcyB9IGZyb20gJy4uL3R5cGVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEd1aWRlZFNlbGxpbmdBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlVXJsID0gJy9ndWlkZWQtc2VsbGluZyc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBCYXNlSHR0cFNlcnZpY2UpIHt9XG5cbiAgcHVibGljIHNlYXJjaEJ5TmFtZSQobmFtZTogc3RyaW5nLCBzZWFyY2hQYXJhbXM/OiBRdWVyeVNlYXJjaFBhcmFtcyk6IE9ic2VydmFibGU8R3VpZGVkU2VsbGluZ1tdPiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoeyBmcm9tT2JqZWN0OiB7IC4uLnNlYXJjaFBhcmFtcyB9IH0pO1xuICAgIGNvbnN0IGV4cHJlc3Npb24gPSBuZXcgRXhwcmVzc2lvbih1bmRlZmluZWQsIFt7IGtleTogJ25hbWUnLCBvcGVyYXRvcjogT3BlcmF0b3IuRVEsIHZhbHVlOiBuYW1lIH1dKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9L3NlYXJjaGAsXG4gICAgICBwYXJhbXMsXG4gICAgICBib2R5OiBleHByZXNzaW9uIHx8IHt9LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEJ5SWQkKGlkOiBzdHJpbmcsIHNlYXJjaFBhcmFtcz86IFF1ZXJ5U2VhcmNoUGFyYW1zKTogT2JzZXJ2YWJsZTxHdWlkZWRTZWxsaW5nW10+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHsgLi4uc2VhcmNoUGFyYW1zIH0gfSk7XG4gICAgY29uc3QgZXhwcmVzc2lvbiA9IG5ldyBFeHByZXNzaW9uKHVuZGVmaW5lZCwgW3sga2V5OiAnaWQnLCBvcGVyYXRvcjogT3BlcmF0b3IuRVEsIHZhbHVlOiBpZCB9XSk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS9zZWFyY2hgLFxuICAgICAgcGFyYW1zLFxuICAgICAgYm9keTogZXhwcmVzc2lvbiB8fCB7fSxcbiAgICB9KTtcbiAgfVxufVxuIl19
|