@veloceapps/api 4.0.18 → 4.0.20
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/bundles/veloce-api.umd.js +91 -81
- package/bundles/veloce-api.umd.js.map +1 -1
- package/esm2015/lib/services/document-templates-api.service.js +14 -9
- package/esm2015/lib/types/dto/configuration-dto.types.js +4 -2
- package/esm2015/lib/types/dto/line-item-dto.types.js +4 -2
- package/fesm2015/veloce-api.js +64 -54
- package/fesm2015/veloce-api.js.map +1 -1
- package/lib/services/document-templates-api.service.d.ts +2 -3
- package/lib/types/dto/configuration-dto.types.d.ts +4 -2
- package/lib/types/dto/line-item-dto.types.d.ts +2 -1
- package/package.json +1 -1
@@ -9,17 +9,16 @@ import * as i0 from "@angular/core";
|
|
9
9
|
import * as i1 from "@veloce/core";
|
10
10
|
import * as i2 from "./salesforce-api.service";
|
11
11
|
import * as i3 from "./document-attachment-api.service";
|
12
|
-
import * as i4 from "
|
13
|
-
import * as i5 from "@angular/common/http";
|
12
|
+
import * as i4 from "@angular/common/http";
|
14
13
|
const moment = moment_;
|
15
14
|
export class DocumentTemplatesApiService {
|
16
|
-
constructor(service, salesforceApiService, fileDownloadService, documentAttachmentService,
|
15
|
+
constructor(service, salesforceApiService, fileDownloadService, documentAttachmentService, http) {
|
17
16
|
this.service = service;
|
18
17
|
this.salesforceApiService = salesforceApiService;
|
19
18
|
this.fileDownloadService = fileDownloadService;
|
20
19
|
this.documentAttachmentService = documentAttachmentService;
|
21
|
-
this.quoteApiService = quoteApiService;
|
22
20
|
this.http = http;
|
21
|
+
this.DOCGEN_TAG = 'docgen';
|
23
22
|
this.SERVICE_URL = '/templates';
|
24
23
|
this.DOC_GEN_URL_FALLBACK = 'https://dev-dp1.velocpq.com/docgen';
|
25
24
|
this.mapSfQueryResult = (limit) => map((records) => {
|
@@ -170,8 +169,14 @@ export class DocumentTemplatesApiService {
|
|
170
169
|
}
|
171
170
|
return this.mergeDocuments(document, attachments).pipe(switchMap(pdf => {
|
172
171
|
if (params.attachToQuote && QuoteDraft.isQuote(object)) {
|
173
|
-
|
174
|
-
|
172
|
+
const file = new File([pdf], `${documentName}.pdf`);
|
173
|
+
return this.documentAttachmentService
|
174
|
+
.createAttachment({
|
175
|
+
linkedEntityId: object.quoteId,
|
176
|
+
fileName: documentName,
|
177
|
+
fileExtension: 'pdf',
|
178
|
+
tags: this.DOCGEN_TAG,
|
179
|
+
}, file)
|
175
180
|
.pipe(map(() => pdf));
|
176
181
|
}
|
177
182
|
return of(pdf);
|
@@ -271,9 +276,9 @@ export class DocumentTemplatesApiService {
|
|
271
276
|
return this.salesforceApiService.query(searchRequest, objectName).pipe(this.mapSfQueryResult(limit), map(value => ({ [resultObjectName]: value })));
|
272
277
|
}
|
273
278
|
}
|
274
|
-
DocumentTemplatesApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentTemplatesApiService, deps: [{ token: i1.BaseHttpService }, { token: i2.SalesforceApiService }, { token: i1.FileDownloadService }, { token: i3.DocumentAttachmentApiService }, { token: i4.
|
279
|
+
DocumentTemplatesApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentTemplatesApiService, deps: [{ token: i1.BaseHttpService }, { token: i2.SalesforceApiService }, { token: i1.FileDownloadService }, { token: i3.DocumentAttachmentApiService }, { token: i4.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
275
280
|
DocumentTemplatesApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentTemplatesApiService });
|
276
281
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentTemplatesApiService, decorators: [{
|
277
282
|
type: Injectable
|
278
|
-
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }, { type: i2.SalesforceApiService }, { type: i1.FileDownloadService }, { type: i3.DocumentAttachmentApiService }, { type: i4.
|
279
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdGVtcGxhdGVzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi9zZXJ2aWNlcy9kb2N1bWVudC10ZW1wbGF0ZXMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUtMLGFBQWEsRUFFYix3QkFBd0IsRUFDeEIsVUFBVSxFQUVWLFdBQVcsR0FJWixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQztBQUNsQyxPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBS3JFLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQztBQVV2QixNQUFNLE9BQU8sMkJBQTJCO0lBS3RDLFlBQ1UsT0FBd0IsRUFDeEIsb0JBQTBDLEVBQzFDLG1CQUF3QyxFQUN4Qyx5QkFBdUQsRUFDdkQsZUFBZ0MsRUFDaEMsSUFBZ0I7UUFMaEIsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFDeEIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBOEI7UUFDdkQsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLFNBQUksR0FBSixJQUFJLENBQVk7UUFWVCxnQkFBVyxHQUFHLFlBQVksQ0FBQztRQUMzQix5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QyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FDOUMsQ0FBQztJQUNKLENBQUM7O3lIQWpYVSwyQkFBMkI7NkhBQTNCLDJCQUEyQjs0RkFBM0IsMkJBQTJCO2tCQUR2QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VycmVuY3lQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBbnlXaXRoUHJvcGVydGllcyxcbiAgQXR0YWNobWVudCxcbiAgQmFzZUh0dHBTZXJ2aWNlLFxuICBEb2N1bWVudFRlbXBsYXRlLFxuICBEb2N4VGVtcGxhdGVyLFxuICBGaWxlRG93bmxvYWRTZXJ2aWNlLFxuICBpc0xlZ2FjeURvY3VtZW50VGVtcGxhdGUsXG4gIFF1b3RlRHJhZnQsXG4gIFNlYXJjaFJlcXVlc3QsXG4gIFN0cmluZ1V0aWxzLFxuICBUZW1wbGF0ZUF0dGFjaG1lbnRTZWFyY2hSZXF1ZXN0LFxuICBUZW1wbGF0ZVF1ZXJ5LFxuICBWbFdpbmRvdyxcbn0gZnJvbSAnQHZlbG9jZS9jb3JlJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCAqIGFzIG1vbWVudF8gZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiwgemlwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWZhdWx0SWZFbXB0eSwgbWFwLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERvY3VtZW50QXR0YWNobWVudEFwaVNlcnZpY2UgfSBmcm9tICcuL2RvY3VtZW50LWF0dGFjaG1lbnQtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgUXVvdGVBcGlTZXJ2aWNlIH0gZnJvbSAnLi9xdW90ZS1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBTYWxlc2ZvcmNlQXBpU2VydmljZSB9IGZyb20gJy4vc2FsZXNmb3JjZS1hcGkuc2VydmljZSc7XG5cbmNvbnN0IG1vbWVudCA9IG1vbWVudF87XG5kZWNsYXJlIGNvbnN0IHdpbmRvdzogVmxXaW5kb3c7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zIHtcbiAgYXR0YWNoVG9RdW90ZT86IGJvb2xlYW47XG4gIGRvY3VtZW50Rm9ybWF0PzogJ0RPQ1gnO1xuICBzaG91bGRQcmV2ZW50RG93bmxvYWQ/OiBib29sZWFuO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRG9jdW1lbnRUZW1wbGF0ZXNBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBTRVJWSUNFX1VSTCA9ICcvdGVtcGxhdGVzJztcbiAgcHJpdmF0ZSByZWFkb25seSBET0NfR0VOX1VSTF9GQUxMQkFDSyA9ICdodHRwczovL2Rldi1kcDEudmVsb2NwcS5jb20vZG9jZ2VuJztcbiAgcHJpdmF0ZSByZWFkb25seSBET0NfR0VOX1VSTDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNlcnZpY2U6IEJhc2VIdHRwU2VydmljZSxcbiAgICBwcml2YXRlIHNhbGVzZm9yY2VBcGlTZXJ2aWNlOiBTYWxlc2ZvcmNlQXBpU2VydmljZSxcbiAgICBwcml2YXRlIGZpbGVEb3dubG9hZFNlcnZpY2U6IEZpbGVEb3dubG9hZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlOiBEb2N1bWVudEF0dGFjaG1lbnRBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcXVvdGVBcGlTZXJ2aWNlOiBRdW90ZUFwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICApIHtcbiAgICBpZiAod2luZG93LlZFTE9fRE9DR0VOX0FQSSkge1xuICAgICAgdGhpcy5ET0NfR0VOX1VSTCA9IHdpbmRvdy5WRUxPX0RPQ0dFTl9BUEk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUubG9nKGB3aW5kb3cuVkVMT19ET0NHRU5fQVBJIG5vdCBzZXQsIHdpbGwgdXNlIGZhbGxiYWNrIFwiJHt0aGlzLkRPQ19HRU5fVVJMX0ZBTExCQUNLfVwiYCk7XG4gICAgICB0aGlzLkRPQ19HRU5fVVJMID0gdGhpcy5ET0NfR0VOX1VSTF9GQUxMQkFDSztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0VGVtcGxhdGVzKHRhZz86IHN0cmluZyk6IE9ic2VydmFibGU8RG9jdW1lbnRUZW1wbGF0ZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfWAsXG4gICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgcGFyYW1zOiB7XG4gICAgICAgIC4uLih0YWcgJiYgeyB0YWcgfSksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldFRlbXBsYXRlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERvY3VtZW50VGVtcGxhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgdXBzZXJ0VGVtcGxhdGUoXG4gICAgdGVtcGxhdGU6IERvY3VtZW50VGVtcGxhdGUsXG4gICAgZmlsZT86IEZpbGUsXG4gICAgcmVwb3J0UHJvZ3Jlc3M/OiBib29sZWFuLFxuICApOiBPYnNlcnZhYmxlPERvY3VtZW50VGVtcGxhdGU+IHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcblxuICAgIGlmIChmaWxlKSB7XG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBmaWxlLCBmaWxlLm5hbWUpO1xuICAgIH1cbiAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAndGVtcGxhdGUnLFxuICAgICAgbmV3IEJsb2IoW0pTT04uc3RyaW5naWZ5KHRlbXBsYXRlKV0sIHtcbiAgICAgICAgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIGxldCB1cmwgPSBgJHt0aGlzLlNFUlZJQ0VfVVJMfWA7XG4gICAgaWYgKHRlbXBsYXRlLmlkKSB7XG4gICAgICB1cmwgKz0gYC8ke3RlbXBsYXRlLmlkfWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS51cGxvYWQoe1xuICAgICAgdXJsLFxuICAgICAgYm9keTogZm9ybURhdGEsXG4gICAgICBtZXRob2Q6IHRlbXBsYXRlLmlkID8gJ3B1dCcgOiAncG9zdCcsXG4gICAgICByZXBvcnRQcm9ncmVzcyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVUZW1wbGF0ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxEb2N1bWVudFRlbXBsYXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdkZWxldGUnLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlc3RvcmVUZW1wbGF0ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfS9yZXN0b3JlYCxcbiAgICAgIG1ldGhvZDogJ3BhdGNoJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9uZVRlbXBsYXRlKFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcGVydGllc1RvT3ZlcnJpZGU6IFBhcnRpYWw8RG9jdW1lbnRUZW1wbGF0ZT4gPSB7fSxcbiAgKTogT2JzZXJ2YWJsZTx7IGNsb25lZFJlY29yZElkOiBzdHJpbmcgfT4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vY2xvbmUvJHtpZH1gLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBib2R5OiB7XG4gICAgICAgIGlkLFxuICAgICAgICBwcm9wZXJ0aWVzVG9PdmVycmlkZSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGVtcGxhdGVGaWxlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEFycmF5QnVmZmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH0vZmlsZWAsXG4gICAgICByZXNwb25zZVR5cGU6ICdhcnJheWJ1ZmZlcicsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZG93bmxvYWRUZW1wbGF0ZUZpbGUoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9L2ZpbGVgLFxuICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgICAgb2JzZXJ2ZTogJ3Jlc3BvbnNlJyxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICB0aGlzLmZpbGVEb3dubG9hZFNlcnZpY2UucHJvY2Vzc0Rvd25sb2FkKHJlc3BvbnNlKTtcbiAgICAgICAgfSksXG4gICAgICAgIG1hcChyZXNwb25zZSA9PiByZXNwb25zZS5ib2R5IHx8IHJlc3BvbnNlKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgbWVyZ2VEb2N1bWVudHMoZG9jdW1lbnQ6IEJsb2IsIGF0dGFjaG1lbnRzOiBBcnJheUJ1ZmZlcltdKTogT2JzZXJ2YWJsZTxBcnJheUJ1ZmZlcj4ge1xuICAgIGNvbnN0IGJvZHkgPSBuZXcgRm9ybURhdGEoKTtcblxuICAgIGF0dGFjaG1lbnRzLmZvckVhY2goYXR0YWNobWVudCA9PiB7XG4gICAgICBib2R5LmFwcGVuZCgnYXR0YWNobWVudHMnLCBuZXcgQmxvYihbYXR0YWNobWVudF0pKTtcbiAgICB9KTtcblxuICAgIGJvZHkuYXBwZW5kKCdvcmRlcmZvcm0nLCBkb2N1bWVudCk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5ET0NfR0VOX1VSTH0vZG9jdW1lbnRzL21lcmdlYCwgYm9keSwge1xuICAgICAgcmVzcG9uc2VUeXBlOiAnYXJyYXlidWZmZXInLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldEF0dGFjaG1lbnRzKHNlYXJjaFJlcXVlc3Q6IFRlbXBsYXRlQXR0YWNobWVudFNlYXJjaFJlcXVlc3QpOiBPYnNlcnZhYmxlPEF0dGFjaG1lbnRbXT4ge1xuICAgIHJldHVybiB0aGlzLmRvY3VtZW50QXR0YWNobWVudFNlcnZpY2UuZ2V0QXR0YWNobWVudHMoc2VhcmNoUmVxdWVzdCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QXR0YWNobWVudEZpbGUoaWQ6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5nZXRBdHRhY2htZW50RmlsZShpZCk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlQXR0YWNobWVudChhdHRhY2htZW50OiBBdHRhY2htZW50LCBmaWxlPzogRmlsZSwgcmVwb3J0UHJvZ3Jlc3M/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxBdHRhY2htZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5jcmVhdGVBdHRhY2htZW50KGF0dGFjaG1lbnQsIGZpbGUsIHJlcG9ydFByb2dyZXNzKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVBdHRhY2htZW50KGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHVua25vd24+IHtcbiAgICByZXR1cm4gdGhpcy5kb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlLnJlbW92ZUF0dGFjaG1lbnQoaWQpO1xuICB9XG5cbiAgcHVibGljIGdlbmVyYXRlRG9jdW1lbnREYXRhKFxuICAgIHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlLFxuICAgIG9iamVjdDogYW55LFxuICAgIHBhcmFtczogRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zID0ge30sXG4gICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgaWYgKGlzTGVnYWN5RG9jdW1lbnRUZW1wbGF0ZSh0ZW1wbGF0ZSkpIHtcbiAgICAgIHJldHVybiB0aGlzLmdlbmVyYXRlRG9jdW1lbnREYXRhTGVnYWN5KHRlbXBsYXRlLCBvYmplY3QsIHBhcmFtcyk7XG4gICAgfVxuXG4gICAgY29uc3QgdGVtcGxhdGVQcm9wZXJ0aWVzID0gdGVtcGxhdGUucHJvcGVydGllcz8ucmVkdWNlKFxuICAgICAgKGFjYywgeyBuYW1lLCB2YWx1ZSB9KSA9PiAoeyAuLi5hY2MsIFtuYW1lXTogdGhpcy5tYXBCb29sZWFuSWZBcGxpY2FibGUodmFsdWUpIH0pLFxuICAgICAge30sXG4gICAgKTtcblxuICAgIC8qXG4gICAgICBSZXNvbHZlIHF1b3RlIGFuZCB0ZW1wbGF0ZSBwcm9wZXJ0aWVzIGZvciBub3dcbiAgICAgIFdoZW4gcHJvY2VkdXJlcyBhcmUgcmVhZHksIHdoZXkgd2lsbCByZXBsYWNlIHRlbXBsYXRlIHNjcmlwdHMuXG5cbiAgICAgIFRPRE86IHJ1biBwcm9jZWR1cmUgdG8gcmVzb2x2ZSBkb2N1bWVudCBkYXRhXG4gICAgKi9cbiAgICByZXR1cm4gb2Yoe1xuICAgICAgLi4uKHR5cGVvZiBvYmplY3QgPT09ICdvYmplY3QnID8gb2JqZWN0IDogeyBvYmplY3QgfSksXG4gICAgICAuLi50ZW1wbGF0ZVByb3BlcnRpZXMsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVEb2N1bWVudChcbiAgICB0ZW1wbGF0ZTogRG9jdW1lbnRUZW1wbGF0ZSxcbiAgICBvYmplY3Q6IGFueSxcbiAgICBwYXJhbXM6IERvY3VtZW50R2VuZXJhdGlvblBhcmFtcyA9IHt9LFxuICApOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICBjb25zdCBkb2N1bWVudERhdGEkID0gdGhpcy5nZW5lcmF0ZURvY3VtZW50RGF0YSh0ZW1wbGF0ZSwgb2JqZWN0LCB7IC4uLnBhcmFtcywgc2hvdWxkUHJldmVudERvd25sb2FkOiB0cnVlIH0pO1xuXG4gICAgcmV0dXJuIHppcCh0aGlzLmdldFRlbXBsYXRlRmlsZSh0ZW1wbGF0ZS5pZCksIGRvY3VtZW50RGF0YSQsIHRoaXMucmVzb2x2ZUF0dGFjaG1lbnRzJCh0ZW1wbGF0ZSkpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKFt0ZW1wbGF0ZUZpbGUsIGRhdGEsIGF0dGFjaG1lbnRzXSkgPT4ge1xuICAgICAgICBjb25zdCBkb2N1bWVudCA9IERvY3hUZW1wbGF0ZXIuZ2VuZXJhdGUodGVtcGxhdGVGaWxlLCBkYXRhKTtcbiAgICAgICAgY29uc3QgcHJvcGVydGllczogXy5EaWN0aW9uYXJ5PHN0cmluZz4gPSBvYmplY3Q/LmNvbnRleHQ/LnByb3BlcnRpZXMgPz8gb2JqZWN0Py5wcm9wZXJ0aWVzID8/IHt9O1xuICAgICAgICBjb25zdCBkb2N1bWVudE5hbWUgPSBwcm9wZXJ0aWVzLk5hbWUgfHwgdGVtcGxhdGUubmFtZTtcblxuICAgICAgICBjb25zdCBkb2N1bWVudEZvcm1hdCA9XG4gICAgICAgICAgcGFyYW1zLmRvY3VtZW50Rm9ybWF0ID8/IHRlbXBsYXRlLnByb3BlcnRpZXM/LmZpbmQocCA9PiBwLm5hbWUgPT09ICdkb2N1bWVudEZvcm1hdCcpPy52YWx1ZTtcbiAgICAgICAgaWYgKGRvY3VtZW50Rm9ybWF0ID09PSAnRE9DWCcpIHtcbiAgICAgICAgICB0aGlzLmZpbGVEb3dubG9hZFNlcnZpY2UucHJvY2Vzc0Rvd25sb2FkKGRvY3VtZW50LCBkb2N1bWVudE5hbWUpO1xuXG4gICAgICAgICAgcmV0dXJuIG9mKGRvY3VtZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLm1lcmdlRG9jdW1lbnRzKGRvY3VtZW50LCBhdHRhY2htZW50cykucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAocGRmID0+IHtcbiAgICAgICAgICAgIGlmIChwYXJhbXMuYXR0YWNoVG9RdW90ZSAmJiBRdW90ZURyYWZ0LmlzUXVvdGUob2JqZWN0KSkge1xuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5xdW90ZUFwaVNlcnZpY2VcbiAgICAgICAgICAgICAgICAuYXR0YWNoRG9jdW1lbnQob2JqZWN0LnF1b3RlSWQsIGAke2RvY3VtZW50TmFtZX0ucGRmYCwgcGRmKVxuICAgICAgICAgICAgICAgIC5waXBlKG1hcCgoKSA9PiBwZGYpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIG9mKHBkZik7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgbWFwKHBkZiA9PiB7XG4gICAgICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW3BkZl0pO1xuXG4gICAgICAgICAgICBpZiAoIXBhcmFtcy5zaG91bGRQcmV2ZW50RG93bmxvYWQpIHtcbiAgICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRTZXJ2aWNlLnByb2Nlc3NEb3dubG9hZChibG9iLCBgJHtkb2N1bWVudE5hbWV9LnBkZmApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gYmxvYjtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdlbmVyYXRlRG9jdW1lbnREYXRhTGVnYWN5KFxuICAgIHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlLFxuICAgIG9iamVjdDogYW55LFxuICAgIHBhcmFtczogRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zID0ge30sXG4gICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2hvdWxkUHJldmVudERvd25sb2FkID0gcGFyYW1zLnNob3VsZFByZXZlbnREb3dubG9hZDtcbiAgICBjb25zdCBhbGxRdWVyaWVzOiBUZW1wbGF0ZVF1ZXJ5W10gPSBbLi4uKHRlbXBsYXRlPy5xdWVyaWVzID8/IFtdKV07XG4gICAgY29uc3QgcHJvcGVydGllczogXy5EaWN0aW9uYXJ5PHN0cmluZz4gPSBvYmplY3Q/LmNvbnRleHQ/LnByb3BlcnRpZXMgPz8gb2JqZWN0Py5wcm9wZXJ0aWVzID8/IHt9O1xuICAgIGNvbnN0IGFjY291bnRJZCA9IHByb3BlcnRpZXM/LkFjY291bnRJZDtcbiAgICBjb25zdCB1c2VySWQgPSBwcm9wZXJ0aWVzPy5Vc2VySWQ7XG5cbiAgICBpZiAoYWNjb3VudElkKSB7XG4gICAgICBhbGxRdWVyaWVzLnB1c2goe1xuICAgICAgICBxdWVyeU5hbWU6ICdRdW90ZUFjY291bnRRdWVyeScsXG4gICAgICAgIG9iamVjdE5hbWU6ICdBY2NvdW50JyxcbiAgICAgICAgcmVzdWx0T2JqZWN0TmFtZTogJ2FjY291bnQnLFxuICAgICAgICBzdGF0ZW1lbnQ6IGBJZCA9JyR7YWNjb3VudElkfSdgLFxuICAgICAgICBmaWVsZHM6IFtdLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGlmICh1c2VySWQpIHtcbiAgICAgIGFsbFF1ZXJpZXMucHVzaCh7XG4gICAgICAgIHF1ZXJ5TmFtZTogJ1F1b3RlVXNlclF1ZXJ5JyxcbiAgICAgICAgb2JqZWN0TmFtZTogJ1VzZXInLFxuICAgICAgICByZXN1bHRPYmplY3ROYW1lOiAnYWdlbnQnLFxuICAgICAgICBzdGF0ZW1lbnQ6IGBJZCA9JyR7dXNlcklkfSdgLFxuICAgICAgICBmaWVsZHM6IFtdLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgcXVlcmllcyA9IGFsbFF1ZXJpZXMubWFwKHF1ZXJ5ID0+IHRoaXMucXVlcnlPYmplY3QocXVlcnksIHsgcHJvcGVydGllcyB9KSkgfHwgW107XG5cbiAgICByZXR1cm4gZm9ya0pvaW4oWy4uLnF1ZXJpZXNdKS5waXBlKFxuICAgICAgZGVmYXVsdElmRW1wdHkoW10gYXMgYW55W10pLFxuICAgICAgbWFwKHJlc3VsdHMgPT4ge1xuICAgICAgICBjb25zdCBxdWVyaWVzUmVzdWx0ID0gXy5jaGFpbihyZXN1bHRzKVxuICAgICAgICAgIC5yZWR1Y2UoKGFjYywgcikgPT4ge1xuICAgICAgICAgICAgaWYgKHIpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHsgLi4uYWNjLCAuLi5yIH07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgICAgfSwge30pXG4gICAgICAgICAgLnZhbHVlKCk7XG5cbiAgICAgICAgY29uc3QgdGVtcGxhdGVQcm9wZXJ0aWVzID0gKHRlbXBsYXRlPy5wcm9wZXJ0aWVzIHx8IFtdKS5yZWR1Y2UoKHRydW5rLCB7IG5hbWUsIHZhbHVlIH0pID0+IHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4udHJ1bmssXG4gICAgICAgICAgICBbbmFtZSBhcyBzdHJpbmddOiB0aGlzLm1hcEJvb2xlYW5JZkFwbGljYWJsZSh2YWx1ZSBhcyBhbnkpLFxuICAgICAgICAgIH07XG4gICAgICAgIH0sIHt9KTtcblxuICAgICAgICBjb25zdCBkYXRhID0ge1xuICAgICAgICAgIC4uLih0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyA/IG9iamVjdCA6IHsgb2JqZWN0IH0pLFxuICAgICAgICAgIC4uLnF1ZXJpZXNSZXN1bHQsXG4gICAgICAgICAgLi4udGVtcGxhdGVQcm9wZXJ0aWVzLFxuICAgICAgICB9O1xuXG4gICAgICAgIGlmICh0ZW1wbGF0ZS5zY3JpcHQgJiYgdGVtcGxhdGUuc2NyaXB0LnRyaW0oKS5sZW5ndGgpIHtcbiAgICAgICAgICBjb25zdCBjdXJyZW5jeUZvcm1hdCA9IHRlbXBsYXRlLnByb3BlcnRpZXM/LmZpbmQoKHsgbmFtZSB9KSA9PiBuYW1lID09PSAnY3VycmVuY3lGb3JtYXQnKT8udmFsdWUgfHwgJzEuMi0yJztcbiAgICAgICAgICBjb25zdCBkYXRlRm9ybWF0ID0gdGVtcGxhdGUucHJvcGVydGllcz8uZmluZCgoeyBuYW1lIH0pID0+IG5hbWUgPT09ICdkYXRlRm9ybWF0Jyk/LnZhbHVlIHx8ICdEL01NTS9ZWVlZJztcbiAgICAgICAgICBjb25zdCBmb3JtYXREYXRlID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSA/IG1vbWVudCh2YWx1ZSkuZm9ybWF0KGRhdGVGb3JtYXQpIDogdmFsdWU7XG4gICAgICAgICAgfTtcbiAgICAgICAgICBjb25zdCB0cmFuc2Zvcm0gPSBuZXcgRnVuY3Rpb24oYHJldHVybiAke3RlbXBsYXRlLnNjcmlwdH1gKSgpO1xuICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybWVkRGF0YSA9IHRyYW5zZm9ybSh7XG4gICAgICAgICAgICAuLi5kYXRhLFxuICAgICAgICAgICAgdXRpbHM6IHtcbiAgICAgICAgICAgICAgbG9kYXNoOiBfLFxuICAgICAgICAgICAgICBjdXJyZW5jeTogKHZhbHVlOiBhbnkpID0+IG5ldyBDdXJyZW5jeVBpcGUoJ2VuLVVTJykudHJhbnNmb3JtKHZhbHVlLCAnVVNEJywgJ3N5bWJvbCcsIGN1cnJlbmN5Rm9ybWF0KSxcbiAgICAgICAgICAgICAgZGF0ZTogZm9ybWF0RGF0ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBUb0RheTogZm9ybWF0RGF0ZShEYXRlLm5vdygpIGFzIGFueSksXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgaWYgKCFzaG91bGRQcmV2ZW50RG93bmxvYWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkodHJhbnNmb3JtZWREYXRhKV0pO1xuICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRTZXJ2aWNlLnByb2Nlc3NEb3dubG9hZChibG9iLCAnZGF0YS5qc29uJyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB0cmFuc2Zvcm1lZERhdGE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlQXR0YWNobWVudHMkKHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlKTogT2JzZXJ2YWJsZTxBcnJheUJ1ZmZlcltdPiB7XG4gICAgY29uc3QgYXR0YWNobWVudElkcyA9ICh0ZW1wbGF0ZS5hdHRhY2htZW50cz8ubWFwKCh7IGlkIH0pID0+IGlkKS5maWx0ZXIoQm9vbGVhbikgYXMgc3RyaW5nW10pID8/IFtdO1xuXG4gICAgaWYgKCFhdHRhY2htZW50SWRzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIG9mKFtdKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm9ya0pvaW4oYXR0YWNobWVudElkcy5tYXAoaWQgPT4gdGhpcy5kb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlLmdldEF0dGFjaG1lbnRGaWxlKGlkLCB0cnVlKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXBTZlF1ZXJ5UmVzdWx0ID0gPFQ+KGxpbWl0OiBudW1iZXIpID0+XG4gICAgbWFwKChyZWNvcmRzOiBUW10pID0+IHtcbiAgICAgIGlmICghcmVjb3Jkcy5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIHsgX3Jlc3VsdDogJ05vIFJlY29yZHMgRm91bmQnIH07XG4gICAgICB9XG5cbiAgICAgIGlmIChsaW1pdCA9PT0gMSkge1xuICAgICAgICByZXR1cm4gcmVjb3Jkc1swXTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlY29yZHM7XG4gICAgfSk7XG5cbiAgcHJpdmF0ZSBtYXBCb29sZWFuSWZBcGxpY2FibGUgPSAodmFsdWU6IHN0cmluZykgPT4ge1xuICAgIGlmICh2YWx1ZSA9PT0gJ3RydWUnKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUgPT09ICdmYWxzZScpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH07XG5cbiAgcHJpdmF0ZSBxdWVyeU9iamVjdChcbiAgICB7IG9iamVjdE5hbWUsIHJlc3VsdE9iamVjdE5hbWUsIGZpZWxkcywgc3RhdGVtZW50IH06IFRlbXBsYXRlUXVlcnksXG4gICAgeyBwcm9wZXJ0aWVzIH06IEFueVdpdGhQcm9wZXJ0aWVzLFxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHBhdHRlcm5MaW1pdCA9IC8oXFxzKmxpbWl0XFxzXFxkKikvaTtcbiAgICBsZXQgbGltaXQgPSAxO1xuICAgIGlmIChzdGF0ZW1lbnQgJiYgcGF0dGVybkxpbWl0LnRlc3Qoc3RhdGVtZW50KSkge1xuICAgICAgY29uc3QgbGltaXRTdHIgPSBzdGF0ZW1lbnQ/Lm1hdGNoKHBhdHRlcm5MaW1pdCk/LlsxXS50cmltKCkuc3Vic3RyaW5nKDUpLnRyaW0oKTtcbiAgICAgIGlmIChsaW1pdFN0cikge1xuICAgICAgICBsaW1pdCA9IE51bWJlci5wYXJzZUludChsaW1pdFN0ciwgMTApO1xuICAgICAgfVxuICAgICAgc3RhdGVtZW50ID0gc3RhdGVtZW50LnJlcGxhY2UocGF0dGVybkxpbWl0LCAnJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzb2x2ZWRTdGF0ZW1lbnQgPSBzdGF0ZW1lbnRcbiAgICAgID8gU3RyaW5nVXRpbHMuZmlsbFBsYWNlaG9sZGVycyhzdGF0ZW1lbnQsIHByb3BlcnRpZXMsIC86XFxzKihcXHdbXFx3XFxkXy5dKykvaSlcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3Qgc2VhcmNoUmVxdWVzdCA9IHtcbiAgICAgIHNraXA6IDAsXG4gICAgICBjb3VudDogbGltaXQsXG4gICAgICByYXdDb25kaXRpb246IHJlc29sdmVkU3RhdGVtZW50LFxuICAgICAgLi4uKGZpZWxkcz8ubGVuZ3RoICYmICEhZmllbGRzWzBdICYmIHsgZmllbGRzIH0pLFxuICAgIH0gYXMgU2VhcmNoUmVxdWVzdDtcblxuICAgIHJldHVybiB0aGlzLnNhbGVzZm9yY2VBcGlTZXJ2aWNlLnF1ZXJ5KHNlYXJjaFJlcXVlc3QsIG9iamVjdE5hbWUpLnBpcGUoXG4gICAgICB0aGlzLm1hcFNmUXVlcnlSZXN1bHQobGltaXQpLFxuICAgICAgbWFwKHZhbHVlID0+ICh7IFtyZXN1bHRPYmplY3ROYW1lXTogdmFsdWUgfSkpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
283
|
+
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }, { type: i2.SalesforceApiService }, { type: i1.FileDownloadService }, { type: i3.DocumentAttachmentApiService }, { type: i4.HttpClient }]; } });
|
284
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdGVtcGxhdGVzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi9zZXJ2aWNlcy9kb2N1bWVudC10ZW1wbGF0ZXMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUtMLGFBQWEsRUFFYix3QkFBd0IsRUFDeEIsVUFBVSxFQUVWLFdBQVcsR0FJWixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQztBQUNsQyxPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFJckUsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDO0FBVXZCLE1BQU0sT0FBTywyQkFBMkI7SUFPdEMsWUFDVSxPQUF3QixFQUN4QixvQkFBMEMsRUFDMUMsbUJBQXdDLEVBQ3hDLHlCQUF1RCxFQUN2RCxJQUFnQjtRQUpoQixZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUN4Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUE4QjtRQUN2RCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBWFYsZUFBVSxHQUFHLFFBQVEsQ0FBQztRQUVyQixnQkFBVyxHQUFHLFlBQVksQ0FBQztRQUMzQix5QkFBb0IsR0FBRyxvQ0FBb0MsQ0FBQztRQWlVckUscUJBQWdCLEdBQUcsQ0FBSSxLQUFhLEVBQUUsRUFBRSxDQUM5QyxHQUFHLENBQUMsQ0FBQyxPQUFZLEVBQUUsRUFBRTtZQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtnQkFDbkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxDQUFDO2FBQ3hDO1lBRUQsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFO2dCQUNmLE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ25CO1lBRUQsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7UUFFRywwQkFBcUIsR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO1lBQ2hELElBQUksS0FBSyxLQUFLLE1BQU0sRUFBRTtnQkFDcEIsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUVELElBQUksS0FBSyxLQUFLLE9BQU8sRUFBRTtnQkFDckIsT0FBTyxLQUFLLENBQUM7YUFDZDtZQUVELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDO1FBOVVBLElBQUksTUFBTSxDQUFDLGVBQWUsRUFBRTtZQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7U0FDM0M7YUFBTTtZQUNMLE9BQU8sQ0FBQyxHQUFHLENBQUMsc0RBQXNELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLENBQUM7WUFDaEcsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUM7U0FDOUM7SUFDSCxDQUFDO0lBRU0sWUFBWSxDQUFDLEdBQVk7UUFDOUIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN0QixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQzFCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsTUFBTSxvQkFDRCxDQUFDLEdBQUcsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQ3BCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVcsQ0FBQyxFQUFVO1FBQzNCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDdEIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUU7WUFDaEMsTUFBTSxFQUFFLEtBQUs7U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sY0FBYyxDQUNuQixRQUEwQixFQUMxQixJQUFXLEVBQ1gsY0FBd0I7UUFFeEIsTUFBTSxRQUFRLEdBQWEsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUUxQyxJQUFJLElBQUksRUFBRTtZQUNSLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDMUM7UUFDRCxRQUFRLENBQUMsTUFBTSxDQUNiLFVBQVUsRUFDVixJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRTtZQUNuQyxJQUFJLEVBQUUsa0JBQWtCO1NBQ3pCLENBQUMsQ0FDSCxDQUFDO1FBRUYsSUFBSSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEMsSUFBSSxRQUFRLENBQUMsRUFBRSxFQUFFO1lBQ2YsR0FBRyxJQUFJLElBQUksUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDO1NBQzFCO1FBRUQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztZQUN6QixHQUFHO1lBQ0gsSUFBSSxFQUFFLFFBQVE7WUFDZCxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNO1lBQ3BDLGNBQWM7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sY0FBYyxDQUFDLEVBQVU7UUFDOUIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN0QixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLEVBQUUsRUFBRTtZQUNoQyxNQUFNLEVBQUUsUUFBUTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZUFBZSxDQUFDLEVBQVU7UUFDL0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN0QixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLEVBQUUsVUFBVTtZQUN4QyxNQUFNLEVBQUUsT0FBTztTQUNoQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sYUFBYSxDQUNsQixFQUFVLEVBQ1YsdUJBQWtELEVBQUU7UUFFcEQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN0QixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxVQUFVLEVBQUUsRUFBRTtZQUN0QyxNQUFNLEVBQUUsTUFBTTtZQUNkLElBQUksRUFBRTtnQkFDSixFQUFFO2dCQUNGLG9CQUFvQjthQUNyQjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxlQUFlLENBQUMsRUFBVTtRQUMvQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxFQUFFLE9BQU87WUFDckMsWUFBWSxFQUFFLGFBQWE7U0FDNUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLG9CQUFvQixDQUFDLEVBQVU7UUFDcEMsT0FBTyxJQUFJLENBQUMsT0FBTzthQUNoQixHQUFHLENBQUM7WUFDSCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLEVBQUUsT0FBTztZQUNyQyxZQUFZLEVBQUUsTUFBTTtZQUNwQixPQUFPLEVBQUUsVUFBVTtTQUNwQixDQUFDO2FBQ0QsSUFBSSxDQUNILEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNiLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckQsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsQ0FDM0MsQ0FBQztJQUNOLENBQUM7SUFFTSxjQUFjLENBQUMsUUFBYyxFQUFFLFdBQTBCO1FBQzlELE1BQU0sSUFBSSxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7UUFFNUIsV0FBVyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyRCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRW5DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxrQkFBa0IsRUFBRSxJQUFJLEVBQUU7WUFDakUsWUFBWSxFQUFFLGFBQWE7U0FDNUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGNBQWMsQ0FBQyxhQUE4QztRQUNsRSxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEVBQVU7UUFDakMsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVNLGdCQUFnQixDQUFDLFVBQXNCLEVBQUUsSUFBVyxFQUFFLGNBQXdCO1FBQ25GLE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVNLGdCQUFnQixDQUFDLEVBQVU7UUFDaEMsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVNLG9CQUFvQixDQUN6QixRQUEwQixFQUMxQixNQUFXLEVBQ1gsU0FBbUMsRUFBRTs7UUFFckMsSUFBSSx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUN0QyxPQUFPLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQ2xFO1FBRUQsTUFBTSxrQkFBa0IsR0FBRyxNQUFBLFFBQVEsQ0FBQyxVQUFVLDBDQUFFLE1BQU0sQ0FDcEQsQ0FBQyxHQUFHLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLGlDQUFNLEdBQUcsS0FBRSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsSUFBRyxFQUNqRixFQUFFLENBQ0gsQ0FBQztRQUVGOzs7OztVQUtFO1FBQ0YsT0FBTyxFQUFFLGlDQUNKLENBQUMsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsR0FDbEQsa0JBQWtCLEVBQ3JCLENBQUM7SUFDTCxDQUFDO0lBRU0sZ0JBQWdCLENBQ3JCLFFBQTBCLEVBQzFCLE1BQVcsRUFDWCxTQUFtQyxFQUFFO1FBRXJDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsTUFBTSxrQ0FBTyxNQUFNLEtBQUUscUJBQXFCLEVBQUUsSUFBSSxJQUFHLENBQUM7UUFFOUcsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDbkcsU0FBUyxDQUFDLENBQUMsQ0FBQyxZQUFZLEVBQUUsSUFBSSxFQUFFLFdBQVcsQ0FBQyxFQUFFLEVBQUU7O1lBQzlDLE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzVELE1BQU0sVUFBVSxHQUF5QixNQUFBLE1BQUEsTUFBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsT0FBTywwQ0FBRSxVQUFVLG1DQUFJLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxVQUFVLG1DQUFJLEVBQUUsQ0FBQztZQUNqRyxNQUFNLFlBQVksR0FBRyxVQUFVLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFFdEQsTUFBTSxjQUFjLEdBQ2xCLE1BQUEsTUFBTSxDQUFDLGNBQWMsbUNBQUksTUFBQSxNQUFBLFFBQVEsQ0FBQyxVQUFVLDBDQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsMENBQUUsS0FBSyxDQUFDO1lBQzlGLElBQUksY0FBYyxLQUFLLE1BQU0sRUFBRTtnQkFDN0IsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7Z0JBRWpFLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3JCO1lBRUQsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQ3BELFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDZCxJQUFJLE1BQU0sQ0FBQyxhQUFhLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtvQkFDdEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLFlBQVksTUFBTSxDQUFDLENBQUM7b0JBQ3BELE9BQU8sSUFBSSxDQUFDLHlCQUF5Qjt5QkFDbEMsZ0JBQWdCLENBQ2Y7d0JBQ0UsY0FBYyxFQUFFLE1BQU0sQ0FBQyxPQUFPO3dCQUM5QixRQUFRLEVBQUUsWUFBWTt3QkFDdEIsYUFBYSxFQUFFLEtBQUs7d0JBQ3BCLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVTtxQkFDdEIsRUFDRCxJQUFJLENBQ0w7eUJBQ0EsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2lCQUN6QjtnQkFFRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNqQixDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ1IsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUU3QixJQUFJLENBQUMsTUFBTSxDQUFDLHFCQUFxQixFQUFFO29CQUNqQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxHQUFHLFlBQVksTUFBTSxDQUFDLENBQUM7aUJBQ3ZFO2dCQUVELE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRU8sMEJBQTBCLENBQ2hDLFFBQTBCLEVBQzFCLE1BQVcsRUFDWCxTQUFtQyxFQUFFOztRQUVyQyxNQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQztRQUMzRCxNQUFNLFVBQVUsR0FBb0IsQ0FBQyxHQUFHLENBQUMsTUFBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsT0FBTyxtQ0FBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sVUFBVSxHQUF5QixNQUFBLE1BQUEsTUFBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsT0FBTywwQ0FBRSxVQUFVLG1DQUFJLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxVQUFVLG1DQUFJLEVBQUUsQ0FBQztRQUNqRyxNQUFNLFNBQVMsR0FBRyxVQUFVLGFBQVYsVUFBVSx1QkFBVixVQUFVLENBQUUsU0FBUyxDQUFDO1FBQ3hDLE1BQU0sTUFBTSxHQUFHLFVBQVUsYUFBVixVQUFVLHVCQUFWLFVBQVUsQ0FBRSxNQUFNLENBQUM7UUFFbEMsSUFBSSxTQUFTLEVBQUU7WUFDYixVQUFVLENBQUMsSUFBSSxDQUFDO2dCQUNkLFNBQVMsRUFBRSxtQkFBbUI7Z0JBQzlCLFVBQVUsRUFBRSxTQUFTO2dCQUNyQixnQkFBZ0IsRUFBRSxTQUFTO2dCQUMzQixTQUFTLEVBQUUsUUFBUSxTQUFTLEdBQUc7Z0JBQy9CLE1BQU0sRUFBRSxFQUFFO2FBQ1gsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxJQUFJLE1BQU0sRUFBRTtZQUNWLFVBQVUsQ0FBQyxJQUFJLENBQUM7Z0JBQ2QsU0FBUyxFQUFFLGdCQUFnQjtnQkFDM0IsVUFBVSxFQUFFLE1BQU07Z0JBQ2xCLGdCQUFnQixFQUFFLE9BQU87Z0JBQ3pCLFNBQVMsRUFBRSxRQUFRLE1BQU0sR0FBRztnQkFDNUIsTUFBTSxFQUFFLEVBQUU7YUFDWCxDQUFDLENBQUM7U0FDSjtRQUVELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFdkYsT0FBTyxRQUFRLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNoQyxjQUFjLENBQUMsRUFBVyxDQUFDLEVBQzNCLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTs7WUFDWixNQUFNLGFBQWEsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQztpQkFDbkMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUNqQixJQUFJLENBQUMsRUFBRTtvQkFDTCx1Q0FBWSxHQUFHLEdBQUssQ0FBQyxFQUFHO2lCQUN6QjtnQkFFRCxPQUFPLEdBQUcsQ0FBQztZQUNiLENBQUMsRUFBRSxFQUFFLENBQUM7aUJBQ0wsS0FBSyxFQUFFLENBQUM7WUFFWCxNQUFNLGtCQUFrQixHQUFHLENBQUMsQ0FBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsVUFBVSxLQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO2dCQUN4Rix1Q0FDSyxLQUFLLEtBQ1IsQ0FBQyxJQUFjLENBQUMsRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBWSxDQUFDLElBQzFEO1lBQ0osQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRVAsTUFBTSxJQUFJLGlEQUNMLENBQUMsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsR0FDbEQsYUFBYSxHQUNiLGtCQUFrQixDQUN0QixDQUFDO1lBRUYsSUFBSSxRQUFRLENBQUMsTUFBTSxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFO2dCQUNwRCxNQUFNLGNBQWMsR0FBRyxDQUFBLE1BQUEsTUFBQSxRQUFRLENBQUMsVUFBVSwwQ0FBRSxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsMENBQUUsS0FBSyxLQUFJLE9BQU8sQ0FBQztnQkFDNUcsTUFBTSxVQUFVLEdBQUcsQ0FBQSxNQUFBLE1BQUEsUUFBUSxDQUFDLFVBQVUsMENBQUUsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQywwQ0FBRSxLQUFLLEtBQUksWUFBWSxDQUFDO2dCQUN6RyxNQUFNLFVBQVUsR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO29CQUNuQyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO2dCQUMxRCxDQUFDLENBQUM7Z0JBQ0YsTUFBTSxTQUFTLEdBQUcsSUFBSSxRQUFRLENBQUMsVUFBVSxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO2dCQUM5RCxNQUFNLGVBQWUsR0FBRyxTQUFTLGlDQUM1QixJQUFJLEtBQ1AsS0FBSyxFQUFFO3dCQUNMLE1BQU0sRUFBRSxDQUFDO3dCQUNULFFBQVEsRUFBRSxDQUFDLEtBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLGNBQWMsQ0FBQzt3QkFDckcsSUFBSSxFQUFFLFVBQVU7cUJBQ2pCLEVBQ0QsS0FBSyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFTLENBQUMsSUFDcEMsQ0FBQztnQkFDSCxJQUFJLENBQUMscUJBQXFCLEVBQUU7b0JBQzFCLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ3pELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO2lCQUM3RDtnQkFDRCxPQUFPLGVBQWUsQ0FBQzthQUN4QjtZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxRQUEwQjs7UUFDcEQsTUFBTSxhQUFhLEdBQUcsTUFBQyxNQUFBLFFBQVEsQ0FBQyxXQUFXLDBDQUFFLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFjLG1DQUFJLEVBQUUsQ0FBQztRQUVwRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRTtZQUN6QixPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNmO1FBRUQsT0FBTyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZHLENBQUM7SUEyQk8sV0FBVyxDQUNqQixFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFpQixFQUNsRSxFQUFFLFVBQVUsRUFBcUI7O1FBRWpDLE1BQU0sWUFBWSxHQUFHLGtCQUFrQixDQUFDO1FBQ3hDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNkLElBQUksU0FBUyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDN0MsTUFBTSxRQUFRLEdBQUcsTUFBQSxTQUFTLGFBQVQsU0FBUyx1QkFBVCxTQUFTLENBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQywwQ0FBRyxDQUFDLEVBQUUsSUFBSSxHQUFHLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDaEYsSUFBSSxRQUFRLEVBQUU7Z0JBQ1osS0FBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQ3ZDO1lBQ0QsU0FBUyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ2pEO1FBRUQsTUFBTSxpQkFBaUIsR0FBRyxTQUFTO1lBQ2pDLENBQUMsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxvQkFBb0IsQ0FBQztZQUMzRSxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRWQsTUFBTSxhQUFhLEdBQUcsZ0JBQ3BCLElBQUksRUFBRSxDQUFDLEVBQ1AsS0FBSyxFQUFFLEtBQUssRUFDWixZQUFZLEVBQUUsaUJBQWlCLElBQzVCLENBQUMsQ0FBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsTUFBTSxLQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUNoQyxDQUFDO1FBRW5CLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUNwRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEVBQzVCLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUM5QyxDQUFDO0lBQ0osQ0FBQzs7eUhBM1hVLDJCQUEyQjs2SEFBM0IsMkJBQTJCOzRGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXJyZW5jeVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFueVdpdGhQcm9wZXJ0aWVzLFxuICBBdHRhY2htZW50LFxuICBCYXNlSHR0cFNlcnZpY2UsXG4gIERvY3VtZW50VGVtcGxhdGUsXG4gIERvY3hUZW1wbGF0ZXIsXG4gIEZpbGVEb3dubG9hZFNlcnZpY2UsXG4gIGlzTGVnYWN5RG9jdW1lbnRUZW1wbGF0ZSxcbiAgUXVvdGVEcmFmdCxcbiAgU2VhcmNoUmVxdWVzdCxcbiAgU3RyaW5nVXRpbHMsXG4gIFRlbXBsYXRlQXR0YWNobWVudFNlYXJjaFJlcXVlc3QsXG4gIFRlbXBsYXRlUXVlcnksXG4gIFZsV2luZG93LFxufSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0ICogYXMgbW9tZW50XyBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mLCB6aXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlZmF1bHRJZkVtcHR5LCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRG9jdW1lbnRBdHRhY2htZW50QXBpU2VydmljZSB9IGZyb20gJy4vZG9jdW1lbnQtYXR0YWNobWVudC1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBTYWxlc2ZvcmNlQXBpU2VydmljZSB9IGZyb20gJy4vc2FsZXNmb3JjZS1hcGkuc2VydmljZSc7XG5cbmNvbnN0IG1vbWVudCA9IG1vbWVudF87XG5kZWNsYXJlIGNvbnN0IHdpbmRvdzogVmxXaW5kb3c7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zIHtcbiAgYXR0YWNoVG9RdW90ZT86IGJvb2xlYW47XG4gIGRvY3VtZW50Rm9ybWF0PzogJ0RPQ1gnO1xuICBzaG91bGRQcmV2ZW50RG93bmxvYWQ/OiBib29sZWFuO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRG9jdW1lbnRUZW1wbGF0ZXNBcGlTZXJ2aWNlIHtcbiAgcHVibGljIHJlYWRvbmx5IERPQ0dFTl9UQUcgPSAnZG9jZ2VuJztcblxuICBwcml2YXRlIHJlYWRvbmx5IFNFUlZJQ0VfVVJMID0gJy90ZW1wbGF0ZXMnO1xuICBwcml2YXRlIHJlYWRvbmx5IERPQ19HRU5fVVJMX0ZBTExCQUNLID0gJ2h0dHBzOi8vZGV2LWRwMS52ZWxvY3BxLmNvbS9kb2NnZW4nO1xuICBwcml2YXRlIHJlYWRvbmx5IERPQ19HRU5fVVJMO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc2VydmljZTogQmFzZUh0dHBTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2FsZXNmb3JjZUFwaVNlcnZpY2U6IFNhbGVzZm9yY2VBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmlsZURvd25sb2FkU2VydmljZTogRmlsZURvd25sb2FkU2VydmljZSxcbiAgICBwcml2YXRlIGRvY3VtZW50QXR0YWNobWVudFNlcnZpY2U6IERvY3VtZW50QXR0YWNobWVudEFwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICApIHtcbiAgICBpZiAod2luZG93LlZFTE9fRE9DR0VOX0FQSSkge1xuICAgICAgdGhpcy5ET0NfR0VOX1VSTCA9IHdpbmRvdy5WRUxPX0RPQ0dFTl9BUEk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUubG9nKGB3aW5kb3cuVkVMT19ET0NHRU5fQVBJIG5vdCBzZXQsIHdpbGwgdXNlIGZhbGxiYWNrIFwiJHt0aGlzLkRPQ19HRU5fVVJMX0ZBTExCQUNLfVwiYCk7XG4gICAgICB0aGlzLkRPQ19HRU5fVVJMID0gdGhpcy5ET0NfR0VOX1VSTF9GQUxMQkFDSztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0VGVtcGxhdGVzKHRhZz86IHN0cmluZyk6IE9ic2VydmFibGU8RG9jdW1lbnRUZW1wbGF0ZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfWAsXG4gICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgcGFyYW1zOiB7XG4gICAgICAgIC4uLih0YWcgJiYgeyB0YWcgfSksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldFRlbXBsYXRlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERvY3VtZW50VGVtcGxhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmFwaSh7XG4gICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9YCxcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgdXBzZXJ0VGVtcGxhdGUoXG4gICAgdGVtcGxhdGU6IERvY3VtZW50VGVtcGxhdGUsXG4gICAgZmlsZT86IEZpbGUsXG4gICAgcmVwb3J0UHJvZ3Jlc3M/OiBib29sZWFuLFxuICApOiBPYnNlcnZhYmxlPERvY3VtZW50VGVtcGxhdGU+IHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcblxuICAgIGlmIChmaWxlKSB7XG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBmaWxlLCBmaWxlLm5hbWUpO1xuICAgIH1cbiAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAndGVtcGxhdGUnLFxuICAgICAgbmV3IEJsb2IoW0pTT04uc3RyaW5naWZ5KHRlbXBsYXRlKV0sIHtcbiAgICAgICAgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIGxldCB1cmwgPSBgJHt0aGlzLlNFUlZJQ0VfVVJMfWA7XG4gICAgaWYgKHRlbXBsYXRlLmlkKSB7XG4gICAgICB1cmwgKz0gYC8ke3RlbXBsYXRlLmlkfWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS51cGxvYWQoe1xuICAgICAgdXJsLFxuICAgICAgYm9keTogZm9ybURhdGEsXG4gICAgICBtZXRob2Q6IHRlbXBsYXRlLmlkID8gJ3B1dCcgOiAncG9zdCcsXG4gICAgICByZXBvcnRQcm9ncmVzcyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVUZW1wbGF0ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxEb2N1bWVudFRlbXBsYXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfWAsXG4gICAgICBtZXRob2Q6ICdkZWxldGUnLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlc3RvcmVUZW1wbGF0ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgdXJsOiBgJHt0aGlzLlNFUlZJQ0VfVVJMfS8ke2lkfS9yZXN0b3JlYCxcbiAgICAgIG1ldGhvZDogJ3BhdGNoJyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9uZVRlbXBsYXRlKFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcGVydGllc1RvT3ZlcnJpZGU6IFBhcnRpYWw8RG9jdW1lbnRUZW1wbGF0ZT4gPSB7fSxcbiAgKTogT2JzZXJ2YWJsZTx7IGNsb25lZFJlY29yZElkOiBzdHJpbmcgfT4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2UuYXBpKHtcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vY2xvbmUvJHtpZH1gLFxuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBib2R5OiB7XG4gICAgICAgIGlkLFxuICAgICAgICBwcm9wZXJ0aWVzVG9PdmVycmlkZSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGVtcGxhdGVGaWxlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEFycmF5QnVmZmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHVybDogYCR7dGhpcy5TRVJWSUNFX1VSTH0vJHtpZH0vZmlsZWAsXG4gICAgICByZXNwb25zZVR5cGU6ICdhcnJheWJ1ZmZlcicsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZG93bmxvYWRUZW1wbGF0ZUZpbGUoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICB1cmw6IGAke3RoaXMuU0VSVklDRV9VUkx9LyR7aWR9L2ZpbGVgLFxuICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgICAgb2JzZXJ2ZTogJ3Jlc3BvbnNlJyxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICB0aGlzLmZpbGVEb3dubG9hZFNlcnZpY2UucHJvY2Vzc0Rvd25sb2FkKHJlc3BvbnNlKTtcbiAgICAgICAgfSksXG4gICAgICAgIG1hcChyZXNwb25zZSA9PiByZXNwb25zZS5ib2R5IHx8IHJlc3BvbnNlKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgbWVyZ2VEb2N1bWVudHMoZG9jdW1lbnQ6IEJsb2IsIGF0dGFjaG1lbnRzOiBBcnJheUJ1ZmZlcltdKTogT2JzZXJ2YWJsZTxBcnJheUJ1ZmZlcj4ge1xuICAgIGNvbnN0IGJvZHkgPSBuZXcgRm9ybURhdGEoKTtcblxuICAgIGF0dGFjaG1lbnRzLmZvckVhY2goYXR0YWNobWVudCA9PiB7XG4gICAgICBib2R5LmFwcGVuZCgnYXR0YWNobWVudHMnLCBuZXcgQmxvYihbYXR0YWNobWVudF0pKTtcbiAgICB9KTtcblxuICAgIGJvZHkuYXBwZW5kKCdvcmRlcmZvcm0nLCBkb2N1bWVudCk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5ET0NfR0VOX1VSTH0vZG9jdW1lbnRzL21lcmdlYCwgYm9keSwge1xuICAgICAgcmVzcG9uc2VUeXBlOiAnYXJyYXlidWZmZXInLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldEF0dGFjaG1lbnRzKHNlYXJjaFJlcXVlc3Q6IFRlbXBsYXRlQXR0YWNobWVudFNlYXJjaFJlcXVlc3QpOiBPYnNlcnZhYmxlPEF0dGFjaG1lbnRbXT4ge1xuICAgIHJldHVybiB0aGlzLmRvY3VtZW50QXR0YWNobWVudFNlcnZpY2UuZ2V0QXR0YWNobWVudHMoc2VhcmNoUmVxdWVzdCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QXR0YWNobWVudEZpbGUoaWQ6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5nZXRBdHRhY2htZW50RmlsZShpZCk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlQXR0YWNobWVudChhdHRhY2htZW50OiBBdHRhY2htZW50LCBmaWxlPzogRmlsZSwgcmVwb3J0UHJvZ3Jlc3M/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxBdHRhY2htZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRBdHRhY2htZW50U2VydmljZS5jcmVhdGVBdHRhY2htZW50KGF0dGFjaG1lbnQsIGZpbGUsIHJlcG9ydFByb2dyZXNzKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVBdHRhY2htZW50KGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHVua25vd24+IHtcbiAgICByZXR1cm4gdGhpcy5kb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlLnJlbW92ZUF0dGFjaG1lbnQoaWQpO1xuICB9XG5cbiAgcHVibGljIGdlbmVyYXRlRG9jdW1lbnREYXRhKFxuICAgIHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlLFxuICAgIG9iamVjdDogYW55LFxuICAgIHBhcmFtczogRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zID0ge30sXG4gICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgaWYgKGlzTGVnYWN5RG9jdW1lbnRUZW1wbGF0ZSh0ZW1wbGF0ZSkpIHtcbiAgICAgIHJldHVybiB0aGlzLmdlbmVyYXRlRG9jdW1lbnREYXRhTGVnYWN5KHRlbXBsYXRlLCBvYmplY3QsIHBhcmFtcyk7XG4gICAgfVxuXG4gICAgY29uc3QgdGVtcGxhdGVQcm9wZXJ0aWVzID0gdGVtcGxhdGUucHJvcGVydGllcz8ucmVkdWNlKFxuICAgICAgKGFjYywgeyBuYW1lLCB2YWx1ZSB9KSA9PiAoeyAuLi5hY2MsIFtuYW1lXTogdGhpcy5tYXBCb29sZWFuSWZBcGxpY2FibGUodmFsdWUpIH0pLFxuICAgICAge30sXG4gICAgKTtcblxuICAgIC8qXG4gICAgICBSZXNvbHZlIHF1b3RlIGFuZCB0ZW1wbGF0ZSBwcm9wZXJ0aWVzIGZvciBub3dcbiAgICAgIFdoZW4gcHJvY2VkdXJlcyBhcmUgcmVhZHksIHdoZXkgd2lsbCByZXBsYWNlIHRlbXBsYXRlIHNjcmlwdHMuXG5cbiAgICAgIFRPRE86IHJ1biBwcm9jZWR1cmUgdG8gcmVzb2x2ZSBkb2N1bWVudCBkYXRhXG4gICAgKi9cbiAgICByZXR1cm4gb2Yoe1xuICAgICAgLi4uKHR5cGVvZiBvYmplY3QgPT09ICdvYmplY3QnID8gb2JqZWN0IDogeyBvYmplY3QgfSksXG4gICAgICAuLi50ZW1wbGF0ZVByb3BlcnRpZXMsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVEb2N1bWVudChcbiAgICB0ZW1wbGF0ZTogRG9jdW1lbnRUZW1wbGF0ZSxcbiAgICBvYmplY3Q6IGFueSxcbiAgICBwYXJhbXM6IERvY3VtZW50R2VuZXJhdGlvblBhcmFtcyA9IHt9LFxuICApOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICBjb25zdCBkb2N1bWVudERhdGEkID0gdGhpcy5nZW5lcmF0ZURvY3VtZW50RGF0YSh0ZW1wbGF0ZSwgb2JqZWN0LCB7IC4uLnBhcmFtcywgc2hvdWxkUHJldmVudERvd25sb2FkOiB0cnVlIH0pO1xuXG4gICAgcmV0dXJuIHppcCh0aGlzLmdldFRlbXBsYXRlRmlsZSh0ZW1wbGF0ZS5pZCksIGRvY3VtZW50RGF0YSQsIHRoaXMucmVzb2x2ZUF0dGFjaG1lbnRzJCh0ZW1wbGF0ZSkpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKFt0ZW1wbGF0ZUZpbGUsIGRhdGEsIGF0dGFjaG1lbnRzXSkgPT4ge1xuICAgICAgICBjb25zdCBkb2N1bWVudCA9IERvY3hUZW1wbGF0ZXIuZ2VuZXJhdGUodGVtcGxhdGVGaWxlLCBkYXRhKTtcbiAgICAgICAgY29uc3QgcHJvcGVydGllczogXy5EaWN0aW9uYXJ5PHN0cmluZz4gPSBvYmplY3Q/LmNvbnRleHQ/LnByb3BlcnRpZXMgPz8gb2JqZWN0Py5wcm9wZXJ0aWVzID8/IHt9O1xuICAgICAgICBjb25zdCBkb2N1bWVudE5hbWUgPSBwcm9wZXJ0aWVzLk5hbWUgfHwgdGVtcGxhdGUubmFtZTtcblxuICAgICAgICBjb25zdCBkb2N1bWVudEZvcm1hdCA9XG4gICAgICAgICAgcGFyYW1zLmRvY3VtZW50Rm9ybWF0ID8/IHRlbXBsYXRlLnByb3BlcnRpZXM/LmZpbmQocCA9PiBwLm5hbWUgPT09ICdkb2N1bWVudEZvcm1hdCcpPy52YWx1ZTtcbiAgICAgICAgaWYgKGRvY3VtZW50Rm9ybWF0ID09PSAnRE9DWCcpIHtcbiAgICAgICAgICB0aGlzLmZpbGVEb3dubG9hZFNlcnZpY2UucHJvY2Vzc0Rvd25sb2FkKGRvY3VtZW50LCBkb2N1bWVudE5hbWUpO1xuXG4gICAgICAgICAgcmV0dXJuIG9mKGRvY3VtZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLm1lcmdlRG9jdW1lbnRzKGRvY3VtZW50LCBhdHRhY2htZW50cykucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAocGRmID0+IHtcbiAgICAgICAgICAgIGlmIChwYXJhbXMuYXR0YWNoVG9RdW90ZSAmJiBRdW90ZURyYWZ0LmlzUXVvdGUob2JqZWN0KSkge1xuICAgICAgICAgICAgICBjb25zdCBmaWxlID0gbmV3IEZpbGUoW3BkZl0sIGAke2RvY3VtZW50TmFtZX0ucGRmYCk7XG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLmRvY3VtZW50QXR0YWNobWVudFNlcnZpY2VcbiAgICAgICAgICAgICAgICAuY3JlYXRlQXR0YWNobWVudChcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbGlua2VkRW50aXR5SWQ6IG9iamVjdC5xdW90ZUlkLFxuICAgICAgICAgICAgICAgICAgICBmaWxlTmFtZTogZG9jdW1lbnROYW1lLFxuICAgICAgICAgICAgICAgICAgICBmaWxlRXh0ZW5zaW9uOiAncGRmJyxcbiAgICAgICAgICAgICAgICAgICAgdGFnczogdGhpcy5ET0NHRU5fVEFHLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIGZpbGUsXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5waXBlKG1hcCgoKSA9PiBwZGYpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIG9mKHBkZik7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgbWFwKHBkZiA9PiB7XG4gICAgICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW3BkZl0pO1xuXG4gICAgICAgICAgICBpZiAoIXBhcmFtcy5zaG91bGRQcmV2ZW50RG93bmxvYWQpIHtcbiAgICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRTZXJ2aWNlLnByb2Nlc3NEb3dubG9hZChibG9iLCBgJHtkb2N1bWVudE5hbWV9LnBkZmApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gYmxvYjtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdlbmVyYXRlRG9jdW1lbnREYXRhTGVnYWN5KFxuICAgIHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlLFxuICAgIG9iamVjdDogYW55LFxuICAgIHBhcmFtczogRG9jdW1lbnRHZW5lcmF0aW9uUGFyYW1zID0ge30sXG4gICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2hvdWxkUHJldmVudERvd25sb2FkID0gcGFyYW1zLnNob3VsZFByZXZlbnREb3dubG9hZDtcbiAgICBjb25zdCBhbGxRdWVyaWVzOiBUZW1wbGF0ZVF1ZXJ5W10gPSBbLi4uKHRlbXBsYXRlPy5xdWVyaWVzID8/IFtdKV07XG4gICAgY29uc3QgcHJvcGVydGllczogXy5EaWN0aW9uYXJ5PHN0cmluZz4gPSBvYmplY3Q/LmNvbnRleHQ/LnByb3BlcnRpZXMgPz8gb2JqZWN0Py5wcm9wZXJ0aWVzID8/IHt9O1xuICAgIGNvbnN0IGFjY291bnRJZCA9IHByb3BlcnRpZXM/LkFjY291bnRJZDtcbiAgICBjb25zdCB1c2VySWQgPSBwcm9wZXJ0aWVzPy5Vc2VySWQ7XG5cbiAgICBpZiAoYWNjb3VudElkKSB7XG4gICAgICBhbGxRdWVyaWVzLnB1c2goe1xuICAgICAgICBxdWVyeU5hbWU6ICdRdW90ZUFjY291bnRRdWVyeScsXG4gICAgICAgIG9iamVjdE5hbWU6ICdBY2NvdW50JyxcbiAgICAgICAgcmVzdWx0T2JqZWN0TmFtZTogJ2FjY291bnQnLFxuICAgICAgICBzdGF0ZW1lbnQ6IGBJZCA9JyR7YWNjb3VudElkfSdgLFxuICAgICAgICBmaWVsZHM6IFtdLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGlmICh1c2VySWQpIHtcbiAgICAgIGFsbFF1ZXJpZXMucHVzaCh7XG4gICAgICAgIHF1ZXJ5TmFtZTogJ1F1b3RlVXNlclF1ZXJ5JyxcbiAgICAgICAgb2JqZWN0TmFtZTogJ1VzZXInLFxuICAgICAgICByZXN1bHRPYmplY3ROYW1lOiAnYWdlbnQnLFxuICAgICAgICBzdGF0ZW1lbnQ6IGBJZCA9JyR7dXNlcklkfSdgLFxuICAgICAgICBmaWVsZHM6IFtdLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgcXVlcmllcyA9IGFsbFF1ZXJpZXMubWFwKHF1ZXJ5ID0+IHRoaXMucXVlcnlPYmplY3QocXVlcnksIHsgcHJvcGVydGllcyB9KSkgfHwgW107XG5cbiAgICByZXR1cm4gZm9ya0pvaW4oWy4uLnF1ZXJpZXNdKS5waXBlKFxuICAgICAgZGVmYXVsdElmRW1wdHkoW10gYXMgYW55W10pLFxuICAgICAgbWFwKHJlc3VsdHMgPT4ge1xuICAgICAgICBjb25zdCBxdWVyaWVzUmVzdWx0ID0gXy5jaGFpbihyZXN1bHRzKVxuICAgICAgICAgIC5yZWR1Y2UoKGFjYywgcikgPT4ge1xuICAgICAgICAgICAgaWYgKHIpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHsgLi4uYWNjLCAuLi5yIH07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgICAgfSwge30pXG4gICAgICAgICAgLnZhbHVlKCk7XG5cbiAgICAgICAgY29uc3QgdGVtcGxhdGVQcm9wZXJ0aWVzID0gKHRlbXBsYXRlPy5wcm9wZXJ0aWVzIHx8IFtdKS5yZWR1Y2UoKHRydW5rLCB7IG5hbWUsIHZhbHVlIH0pID0+IHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4udHJ1bmssXG4gICAgICAgICAgICBbbmFtZSBhcyBzdHJpbmddOiB0aGlzLm1hcEJvb2xlYW5JZkFwbGljYWJsZSh2YWx1ZSBhcyBhbnkpLFxuICAgICAgICAgIH07XG4gICAgICAgIH0sIHt9KTtcblxuICAgICAgICBjb25zdCBkYXRhID0ge1xuICAgICAgICAgIC4uLih0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyA/IG9iamVjdCA6IHsgb2JqZWN0IH0pLFxuICAgICAgICAgIC4uLnF1ZXJpZXNSZXN1bHQsXG4gICAgICAgICAgLi4udGVtcGxhdGVQcm9wZXJ0aWVzLFxuICAgICAgICB9O1xuXG4gICAgICAgIGlmICh0ZW1wbGF0ZS5zY3JpcHQgJiYgdGVtcGxhdGUuc2NyaXB0LnRyaW0oKS5sZW5ndGgpIHtcbiAgICAgICAgICBjb25zdCBjdXJyZW5jeUZvcm1hdCA9IHRlbXBsYXRlLnByb3BlcnRpZXM/LmZpbmQoKHsgbmFtZSB9KSA9PiBuYW1lID09PSAnY3VycmVuY3lGb3JtYXQnKT8udmFsdWUgfHwgJzEuMi0yJztcbiAgICAgICAgICBjb25zdCBkYXRlRm9ybWF0ID0gdGVtcGxhdGUucHJvcGVydGllcz8uZmluZCgoeyBuYW1lIH0pID0+IG5hbWUgPT09ICdkYXRlRm9ybWF0Jyk/LnZhbHVlIHx8ICdEL01NTS9ZWVlZJztcbiAgICAgICAgICBjb25zdCBmb3JtYXREYXRlID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSA/IG1vbWVudCh2YWx1ZSkuZm9ybWF0KGRhdGVGb3JtYXQpIDogdmFsdWU7XG4gICAgICAgICAgfTtcbiAgICAgICAgICBjb25zdCB0cmFuc2Zvcm0gPSBuZXcgRnVuY3Rpb24oYHJldHVybiAke3RlbXBsYXRlLnNjcmlwdH1gKSgpO1xuICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybWVkRGF0YSA9IHRyYW5zZm9ybSh7XG4gICAgICAgICAgICAuLi5kYXRhLFxuICAgICAgICAgICAgdXRpbHM6IHtcbiAgICAgICAgICAgICAgbG9kYXNoOiBfLFxuICAgICAgICAgICAgICBjdXJyZW5jeTogKHZhbHVlOiBhbnkpID0+IG5ldyBDdXJyZW5jeVBpcGUoJ2VuLVVTJykudHJhbnNmb3JtKHZhbHVlLCAnVVNEJywgJ3N5bWJvbCcsIGN1cnJlbmN5Rm9ybWF0KSxcbiAgICAgICAgICAgICAgZGF0ZTogZm9ybWF0RGF0ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBUb0RheTogZm9ybWF0RGF0ZShEYXRlLm5vdygpIGFzIGFueSksXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgaWYgKCFzaG91bGRQcmV2ZW50RG93bmxvYWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkodHJhbnNmb3JtZWREYXRhKV0pO1xuICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRTZXJ2aWNlLnByb2Nlc3NEb3dubG9hZChibG9iLCAnZGF0YS5qc29uJyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB0cmFuc2Zvcm1lZERhdGE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlQXR0YWNobWVudHMkKHRlbXBsYXRlOiBEb2N1bWVudFRlbXBsYXRlKTogT2JzZXJ2YWJsZTxBcnJheUJ1ZmZlcltdPiB7XG4gICAgY29uc3QgYXR0YWNobWVudElkcyA9ICh0ZW1wbGF0ZS5hdHRhY2htZW50cz8ubWFwKCh7IGlkIH0pID0+IGlkKS5maWx0ZXIoQm9vbGVhbikgYXMgc3RyaW5nW10pID8/IFtdO1xuXG4gICAgaWYgKCFhdHRhY2htZW50SWRzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIG9mKFtdKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm9ya0pvaW4oYXR0YWNobWVudElkcy5tYXAoaWQgPT4gdGhpcy5kb2N1bWVudEF0dGFjaG1lbnRTZXJ2aWNlLmdldEF0dGFjaG1lbnRGaWxlKGlkLCB0cnVlKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXBTZlF1ZXJ5UmVzdWx0ID0gPFQ+KGxpbWl0OiBudW1iZXIpID0+XG4gICAgbWFwKChyZWNvcmRzOiBUW10pID0+IHtcbiAgICAgIGlmICghcmVjb3Jkcy5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIHsgX3Jlc3VsdDogJ05vIFJlY29yZHMgRm91bmQnIH07XG4gICAgICB9XG5cbiAgICAgIGlmIChsaW1pdCA9PT0gMSkge1xuICAgICAgICByZXR1cm4gcmVjb3Jkc1swXTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlY29yZHM7XG4gICAgfSk7XG5cbiAgcHJpdmF0ZSBtYXBCb29sZWFuSWZBcGxpY2FibGUgPSAodmFsdWU6IHN0cmluZykgPT4ge1xuICAgIGlmICh2YWx1ZSA9PT0gJ3RydWUnKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUgPT09ICdmYWxzZScpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH07XG5cbiAgcHJpdmF0ZSBxdWVyeU9iamVjdChcbiAgICB7IG9iamVjdE5hbWUsIHJlc3VsdE9iamVjdE5hbWUsIGZpZWxkcywgc3RhdGVtZW50IH06IFRlbXBsYXRlUXVlcnksXG4gICAgeyBwcm9wZXJ0aWVzIH06IEFueVdpdGhQcm9wZXJ0aWVzLFxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHBhdHRlcm5MaW1pdCA9IC8oXFxzKmxpbWl0XFxzXFxkKikvaTtcbiAgICBsZXQgbGltaXQgPSAxO1xuICAgIGlmIChzdGF0ZW1lbnQgJiYgcGF0dGVybkxpbWl0LnRlc3Qoc3RhdGVtZW50KSkge1xuICAgICAgY29uc3QgbGltaXRTdHIgPSBzdGF0ZW1lbnQ/Lm1hdGNoKHBhdHRlcm5MaW1pdCk/LlsxXS50cmltKCkuc3Vic3RyaW5nKDUpLnRyaW0oKTtcbiAgICAgIGlmIChsaW1pdFN0cikge1xuICAgICAgICBsaW1pdCA9IE51bWJlci5wYXJzZUludChsaW1pdFN0ciwgMTApO1xuICAgICAgfVxuICAgICAgc3RhdGVtZW50ID0gc3RhdGVtZW50LnJlcGxhY2UocGF0dGVybkxpbWl0LCAnJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzb2x2ZWRTdGF0ZW1lbnQgPSBzdGF0ZW1lbnRcbiAgICAgID8gU3RyaW5nVXRpbHMuZmlsbFBsYWNlaG9sZGVycyhzdGF0ZW1lbnQsIHByb3BlcnRpZXMsIC86XFxzKihcXHdbXFx3XFxkXy5dKykvaSlcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3Qgc2VhcmNoUmVxdWVzdCA9IHtcbiAgICAgIHNraXA6IDAsXG4gICAgICBjb3VudDogbGltaXQsXG4gICAgICByYXdDb25kaXRpb246IHJlc29sdmVkU3RhdGVtZW50LFxuICAgICAgLi4uKGZpZWxkcz8ubGVuZ3RoICYmICEhZmllbGRzWzBdICYmIHsgZmllbGRzIH0pLFxuICAgIH0gYXMgU2VhcmNoUmVxdWVzdDtcblxuICAgIHJldHVybiB0aGlzLnNhbGVzZm9yY2VBcGlTZXJ2aWNlLnF1ZXJ5KHNlYXJjaFJlcXVlc3QsIG9iamVjdE5hbWUpLnBpcGUoXG4gICAgICB0aGlzLm1hcFNmUXVlcnlSZXN1bHQobGltaXQpLFxuICAgICAgbWFwKHZhbHVlID0+ICh7IFtyZXN1bHRPYmplY3ROYW1lXTogdmFsdWUgfSkpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
@@ -1,17 +1,19 @@
|
|
1
1
|
import { LineItemDTO } from './line-item-dto.types';
|
2
2
|
export class ConfigurePriceDTO {
|
3
|
-
constructor(lineItem, context, charges) {
|
3
|
+
constructor(lineItem, context, charges, pricePlans) {
|
4
4
|
this.lineItem = lineItem;
|
5
5
|
this.context = context;
|
6
6
|
this.charges = charges;
|
7
|
+
this.pricePlans = pricePlans;
|
7
8
|
}
|
8
9
|
static fromDTO(dto) {
|
9
10
|
return {
|
10
11
|
lineItem: LineItemDTO.fromDTO(dto.lineItem),
|
11
12
|
charges: dto.charges,
|
13
|
+
pricePlans: dto.pricePlans,
|
12
14
|
context: dto.context,
|
13
15
|
deletedLineItems: dto.deletedLineItems.map(deletedLineItem => LineItemDTO.fromDTO(deletedLineItem)),
|
14
16
|
};
|
15
17
|
}
|
16
18
|
}
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1kdG8udHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9zcmMvbGliL3R5cGVzL2R0by9jb25maWd1cmF0aW9uLWR0by50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFVcEQsTUFBTSxPQUFPLGlCQUFpQjtJQVc1QixZQUNTLFFBQXFCLEVBQ3JCLE9BQTZCLEVBQzdCLE9BQTJCLEVBQzNCLFVBQXlDO1FBSHpDLGFBQVEsR0FBUixRQUFRLENBQWE7UUFDckIsWUFBTyxHQUFQLE9BQU8sQ0FBc0I7UUFDN0IsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFDM0IsZUFBVSxHQUFWLFVBQVUsQ0FBK0I7SUFDL0MsQ0FBQztJQWZKLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBc0I7UUFDbkMsT0FBTztZQUNMLFFBQVEsRUFBRSxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7WUFDM0MsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1lBQ3BCLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtZQUMxQixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87WUFDcEIsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDcEcsQ0FBQztJQUNKLENBQUM7Q0FRRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYXJnZSwgQ29tcGlsZWRQcmljZVBsYW4sIENvbmZpZ3VyYXRpb25Db250ZXh0LCBDb25maWd1cmVQcmljZSB9IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IExpbmVJdGVtRFRPIH0gZnJvbSAnLi9saW5lLWl0ZW0tZHRvLnR5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmVQcmljZURUTyB7XG4gIGxpbmVJdGVtOiBMaW5lSXRlbURUTztcbiAgY29udGV4dDogQ29uZmlndXJhdGlvbkNvbnRleHQ7XG4gIGNoYXJnZXM6IERpY3Rpb25hcnk8Q2hhcmdlPjtcbiAgcHJpY2VQbGFuczogRGljdGlvbmFyeTxDb21waWxlZFByaWNlUGxhbj47XG4gIGRlbGV0ZWRMaW5lSXRlbXM6IExpbmVJdGVtRFRPW107XG59XG5cbmV4cG9ydCBjbGFzcyBDb25maWd1cmVQcmljZURUTyB7XG4gIHN0YXRpYyBmcm9tRFRPKGR0bzogQ29uZmlndXJlUHJpY2VEVE8pOiBDb25maWd1cmVQcmljZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGxpbmVJdGVtOiBMaW5lSXRlbURUTy5mcm9tRFRPKGR0by5saW5lSXRlbSksXG4gICAgICBjaGFyZ2VzOiBkdG8uY2hhcmdlcyxcbiAgICAgIHByaWNlUGxhbnM6IGR0by5wcmljZVBsYW5zLFxuICAgICAgY29udGV4dDogZHRvLmNvbnRleHQsXG4gICAgICBkZWxldGVkTGluZUl0ZW1zOiBkdG8uZGVsZXRlZExpbmVJdGVtcy5tYXAoZGVsZXRlZExpbmVJdGVtID0+IExpbmVJdGVtRFRPLmZyb21EVE8oZGVsZXRlZExpbmVJdGVtKSksXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBsaW5lSXRlbTogTGluZUl0ZW1EVE8sXG4gICAgcHVibGljIGNvbnRleHQ6IENvbmZpZ3VyYXRpb25Db250ZXh0LFxuICAgIHB1YmxpYyBjaGFyZ2VzOiBEaWN0aW9uYXJ5PENoYXJnZT4sXG4gICAgcHVibGljIHByaWNlUGxhbnM6IERpY3Rpb25hcnk8Q29tcGlsZWRQcmljZVBsYW4+LFxuICApIHt9XG59XG4iXX0=
|
@@ -5,7 +5,7 @@ import { ChargeItemDTO } from './charge-item-dto.types';
|
|
5
5
|
import { PortDomainDTO } from './port-domain-dto.types';
|
6
6
|
import { PriceDTO } from './price-dto.types';
|
7
7
|
export class LineItemDTO {
|
8
|
-
constructor(id, activated, attributes, attributeDomains, cfgStatus, chargeGroupItems, chargeItems, domainComputations, lineItems, messages, name, optionalCharges, pending, portDomains, properties, qty, totalPrices, type, integrationId, productId, port, parentId, assetId, openOrderLineItemId, productName, rootId, actionCode, serviceStartDate, effectiveDate, effectiveStartDate, startDate, endDate, priceListId, planId, sellingFrequencyUnit, sellingFrequencyDuration, offeringId, offeringItemId, offeringInstanceId, rampInstanceId, enableRamp, configurable, requiresApprovals) {
|
8
|
+
constructor(id, activated, attributes, attributeDomains, cfgStatus, chargeGroupItems, chargeItems, domainComputations, lineItems, messages, name, optionalCharges, pending, portDomains, properties, qty, totalPrices, type, integrationId, productId, port, parentId, assetId, openOrderLineItemId, productName, rootId, actionCode, serviceStartDate, effectiveDate, effectiveStartDate, startDate, endDate, priceListId, planId, sellingFrequencyUnit, sellingFrequencyDuration, minimalTerm, offeringId, offeringItemId, offeringInstanceId, rampInstanceId, enableRamp, configurable, requiresApprovals) {
|
9
9
|
this.id = id;
|
10
10
|
this.activated = activated;
|
11
11
|
this.attributes = attributes;
|
@@ -42,6 +42,7 @@ export class LineItemDTO {
|
|
42
42
|
this.planId = planId;
|
43
43
|
this.sellingFrequencyUnit = sellingFrequencyUnit;
|
44
44
|
this.sellingFrequencyDuration = sellingFrequencyDuration;
|
45
|
+
this.minimalTerm = minimalTerm;
|
45
46
|
this.offeringId = offeringId;
|
46
47
|
this.offeringItemId = offeringItemId;
|
47
48
|
this.offeringInstanceId = offeringInstanceId;
|
@@ -88,6 +89,7 @@ export class LineItemDTO {
|
|
88
89
|
planId: dto.planId,
|
89
90
|
sellingFrequencyUnit: dto.sellingFrequencyUnit,
|
90
91
|
sellingFrequencyDuration: dto.sellingFrequencyDuration,
|
92
|
+
minimalTerm: dto.minimalTerm,
|
91
93
|
offeringId: dto.offeringId,
|
92
94
|
offeringItemId: dto.offeringItemId,
|
93
95
|
offeringInstanceId: dto.offeringInstanceId,
|
@@ -98,4 +100,4 @@ export class LineItemDTO {
|
|
98
100
|
};
|
99
101
|
}
|
100
102
|
}
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1pdGVtLWR0by50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvdHlwZXMvZHRvL2xpbmUtaXRlbS1kdG8udHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFjLFNBQVMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFN0MsTUFBTSxPQUFPLFdBQVc7SUFpRHRCLFlBQ1MsRUFBVSxFQUNWLFNBQWtCLEVBQ2xCLFVBQTBCLEVBQzFCLGdCQUFtQyxFQUNuQyxTQUFpQixFQUNqQixnQkFBc0MsRUFDdEMsV0FBNEIsRUFDNUIsa0JBQXVDLEVBQ3ZDLFNBQXFCLEVBQ3JCLFFBQWtCLEVBQ2xCLElBQVksRUFDWixlQUFzQixFQUN0QixPQUFnQixFQUNoQixXQUFzQyxFQUN0QyxVQUE4QixFQUM5QixHQUFXLEVBQ1gsV0FBaUMsRUFDakMsSUFBWSxFQUVaLGFBQXNCLEVBQ3RCLFNBQWtCLEVBQ2xCLElBQWEsRUFDYixRQUFpQixFQUNqQixPQUFnQixFQUNoQixtQkFBNEIsRUFFNUIsV0FBb0IsRUFDcEIsTUFBZSxFQUNmLFVBQW1CLEVBQ25CLGdCQUF5QixFQUN6QixhQUFzQixFQUN0QixrQkFBMkIsRUFDM0IsU0FBa0IsRUFDbEIsT0FBZ0IsRUFFaEIsV0FBb0IsRUFDcEIsTUFBZSxFQUNmLG9CQUE2QixFQUM3Qix3QkFBaUMsRUFFakMsVUFBbUIsRUFDbkIsY0FBdUIsRUFDdkIsa0JBQTJCLEVBQzNCLGNBQXVCLEVBQ3ZCLFVBQW9CLEVBQ3BCLFlBQXNCLEVBRXRCLGlCQUFzQztRQS9DdEMsT0FBRSxHQUFGLEVBQUUsQ0FBUTtRQUNWLGNBQVMsR0FBVCxTQUFTLENBQVM7UUFDbEIsZUFBVSxHQUFWLFVBQVUsQ0FBZ0I7UUFDMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFtQjtRQUNuQyxjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ2pCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBc0I7UUFDdEMsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBQzVCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBcUI7UUFDdkMsY0FBUyxHQUFULFNBQVMsQ0FBWTtRQUNyQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixvQkFBZSxHQUFmLGVBQWUsQ0FBTztRQUN0QixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLGdCQUFXLEdBQVgsV0FBVyxDQUEyQjtRQUN0QyxlQUFVLEdBQVYsVUFBVSxDQUFvQjtRQUM5QixRQUFHLEdBQUgsR0FBRyxDQUFRO1FBQ1gsZ0JBQVcsR0FBWCxXQUFXLENBQXNCO1FBQ2pDLFNBQUksR0FBSixJQUFJLENBQVE7UUFFWixrQkFBYSxHQUFiLGFBQWEsQ0FBUztRQUN0QixjQUFTLEdBQVQsU0FBUyxDQUFTO1FBQ2xCLFNBQUksR0FBSixJQUFJLENBQVM7UUFDYixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFTO1FBRTVCLGdCQUFXLEdBQVgsV0FBVyxDQUFTO1FBQ3BCLFdBQU0sR0FBTixNQUFNLENBQVM7UUFDZixlQUFVLEdBQVYsVUFBVSxDQUFTO1FBQ25CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBUztRQUN6QixrQkFBYSxHQUFiLGFBQWEsQ0FBUztRQUN0Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQVM7UUFDM0IsY0FBUyxHQUFULFNBQVMsQ0FBUztRQUNsQixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBRWhCLGdCQUFXLEdBQVgsV0FBVyxDQUFTO1FBQ3BCLFdBQU0sR0FBTixNQUFNLENBQVM7UUFDZix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQVM7UUFDN0IsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUFTO1FBRWpDLGVBQVUsR0FBVixVQUFVLENBQVM7UUFDbkIsbUJBQWMsR0FBZCxjQUFjLENBQVM7UUFDdkIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFTO1FBQzNCLG1CQUFjLEdBQWQsY0FBYyxDQUFTO1FBQ3ZCLGVBQVUsR0FBVixVQUFVLENBQVU7UUFDcEIsaUJBQVksR0FBWixZQUFZLENBQVU7UUFFdEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtJQUM1QyxDQUFDO0lBakdKLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBZ0I7UUFDN0IsT0FBTztZQUNMLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRTtZQUNWLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztZQUN4QixVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQztZQUNwRCxnQkFBZ0IsRUFBRSxHQUFHLENBQUMsZ0JBQWdCO1lBQ3RDLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBc0I7WUFDckMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7WUFDdEUsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7WUFDdkQsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLGtCQUFrQjtZQUMxQyxTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQztZQUNqRCxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7WUFDdEIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1lBQ2QsZUFBZSxFQUFFLEdBQUcsQ0FBQyxlQUFlO1lBQ3BDLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztZQUNwQixXQUFXLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQzdHLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtZQUMxQixHQUFHLEVBQUUsR0FBRyxDQUFDLEdBQUc7WUFDWixXQUFXLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ3hHLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtZQUNkLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztZQUN4QixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7WUFDZCxhQUFhLEVBQUUsR0FBRyxDQUFDLGFBQWE7WUFDaEMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1lBQ3RCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztZQUNwQixtQkFBbUIsRUFBRSxHQUFHLENBQUMsbUJBQW1CO1lBQzVDLFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVztZQUM1QixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07WUFDbEIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUF3QjtZQUN4QyxnQkFBZ0IsRUFBRSxHQUFHLENBQUMsZ0JBQWdCO1lBQ3RDLGFBQWEsRUFBRSxHQUFHLENBQUMsYUFBYTtZQUNoQyxrQkFBa0IsRUFBRSxHQUFHLENBQUMsa0JBQWtCO1lBQzFDLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztZQUN4QixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87WUFDcEIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1lBQzVCLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTTtZQUNsQixvQkFBb0IsRUFBRSxHQUFHLENBQUMsb0JBQXFDO1lBQy9ELHdCQUF3QixFQUFFLEdBQUcsQ0FBQyx3QkFBd0I7WUFDdEQsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1lBQzFCLGNBQWMsRUFBRSxHQUFHLENBQUMsY0FBYztZQUNsQyxrQkFBa0IsRUFBRSxHQUFHLENBQUMsa0JBQWtCO1lBQzFDLGNBQWMsRUFBRSxHQUFHLENBQUMsY0FBYztZQUNsQyxVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVU7WUFDMUIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1lBQzlCLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxpQkFBaUI7U0FDekMsQ0FBQztJQUNKLENBQUM7Q0FvREYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb25Db2RlLCBDZmdTdGF0dXMsIEZyZXF1ZW5jeVVuaXQsIExpbmVJdGVtLCBSZXF1aXJlc0FwcHJvdmFsIH0gZnJvbSAnQHZlbG9jZS9jb3JlJztcbmltcG9ydCB7IERpY3Rpb25hcnksIHRyYW5zZm9ybSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBBdHRyaWJ1dGVEVE8gfSBmcm9tICcuL2F0dHJpYnV0ZS1kdG8udHlwZXMnO1xuaW1wb3J0IHsgQ2hhcmdlR3JvdXBJdGVtRFRPIH0gZnJvbSAnLi9jaGFyZ2UtZ3JvdXAtaXRlbS1kdG8udHlwZXMnO1xuaW1wb3J0IHsgQ2hhcmdlSXRlbURUTyB9IGZyb20gJy4vY2hhcmdlLWl0ZW0tZHRvLnR5cGVzJztcbmltcG9ydCB7IFBvcnREb21haW5EVE8gfSBmcm9tICcuL3BvcnQtZG9tYWluLWR0by50eXBlcyc7XG5pbXBvcnQgeyBQcmljZURUTyB9IGZyb20gJy4vcHJpY2UtZHRvLnR5cGVzJztcblxuZXhwb3J0IGNsYXNzIExpbmVJdGVtRFRPIHtcbiAgc3RhdGljIGZyb21EVE8oZHRvOiBMaW5lSXRlbURUTyk6IExpbmVJdGVtIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IGR0by5pZCxcbiAgICAgIGFjdGl2YXRlZDogZHRvLmFjdGl2YXRlZCxcbiAgICAgIGF0dHJpYnV0ZXM6IGR0by5hdHRyaWJ1dGVzLm1hcChBdHRyaWJ1dGVEVE8uZnJvbURUTyksXG4gICAgICBhdHRyaWJ1dGVEb21haW5zOiBkdG8uYXR0cmlidXRlRG9tYWlucyxcbiAgICAgIGNmZ1N0YXR1czogZHRvLmNmZ1N0YXR1cyBhcyBDZmdTdGF0dXMsXG4gICAgICBjaGFyZ2VHcm91cEl0ZW1zOiBkdG8uY2hhcmdlR3JvdXBJdGVtcy5tYXAoQ2hhcmdlR3JvdXBJdGVtRFRPLmZyb21EVE8pLFxuICAgICAgY2hhcmdlSXRlbXM6IGR0by5jaGFyZ2VJdGVtcy5tYXAoQ2hhcmdlSXRlbURUTy5mcm9tRFRPKSxcbiAgICAgIGRvbWFpbkNvbXB1dGF0aW9uczogZHRvLmRvbWFpbkNvbXB1dGF0aW9ucyxcbiAgICAgIGxpbmVJdGVtczogZHRvLmxpbmVJdGVtcy5tYXAoTGluZUl0ZW1EVE8uZnJvbURUTyksXG4gICAgICBtZXNzYWdlczogZHRvLm1lc3NhZ2VzLFxuICAgICAgbmFtZTogZHRvLm5hbWUsXG4gICAgICBvcHRpb25hbENoYXJnZXM6IGR0by5vcHRpb25hbENoYXJnZXMsXG4gICAgICBwZW5kaW5nOiBkdG8ucGVuZGluZyxcbiAgICAgIHBvcnREb21haW5zOiB0cmFuc2Zvcm0oZHRvLnBvcnREb21haW5zLCAocmVzdWx0LCB2YWx1ZSwga2V5KSA9PiAocmVzdWx0W2tleV0gPSBQb3J0RG9tYWluRFRPLmZyb21EVE8odmFsdWUpKSksXG4gICAgICBwcm9wZXJ0aWVzOiBkdG8ucHJvcGVydGllcyxcbiAgICAgIHF0eTogZHRvLnF0eSxcbiAgICAgIHRvdGFsUHJpY2VzOiB0cmFuc2Zvcm0oZHRvLnRvdGFsUHJpY2VzLCAocmVzdWx0LCB2YWx1ZSwga2V5KSA9PiAocmVzdWx0W2tleV0gPSBQcmljZURUTy5mcm9tRFRPKHZhbHVlKSkpLFxuICAgICAgdHlwZTogZHRvLnR5cGUsXG4gICAgICBwcm9kdWN0SWQ6IGR0by5wcm9kdWN0SWQsXG4gICAgICBwb3J0OiBkdG8ucG9ydCxcbiAgICAgIGludGVncmF0aW9uSWQ6IGR0by5pbnRlZ3JhdGlvbklkLFxuICAgICAgcGFyZW50SWQ6IGR0by5wYXJlbnRJZCxcbiAgICAgIGFzc2V0SWQ6IGR0by5hc3NldElkLFxuICAgICAgb3Blbk9yZGVyTGluZUl0ZW1JZDogZHRvLm9wZW5PcmRlckxpbmVJdGVtSWQsXG4gICAgICBwcm9kdWN0TmFtZTogZHRvLnByb2R1Y3ROYW1lLFxuICAgICAgcm9vdElkOiBkdG8ucm9vdElkLFxuICAgICAgYWN0aW9uQ29kZTogZHRvLmFjdGlvbkNvZGUgYXMgQWN0aW9uQ29kZSxcbiAgICAgIHNlcnZpY2VTdGFydERhdGU6IGR0by5zZXJ2aWNlU3RhcnREYXRlLFxuICAgICAgZWZmZWN0aXZlRGF0ZTogZHRvLmVmZmVjdGl2ZURhdGUsXG4gICAgICBlZmZlY3RpdmVTdGFydERhdGU6IGR0by5lZmZlY3RpdmVTdGFydERhdGUsXG4gICAgICBzdGFydERhdGU6IGR0by5zdGFydERhdGUsXG4gICAgICBlbmREYXRlOiBkdG8uZW5kRGF0ZSxcbiAgICAgIHByaWNlTGlzdElkOiBkdG8ucHJpY2VMaXN0SWQsXG4gICAgICBwbGFuSWQ6IGR0by5wbGFuSWQsXG4gICAgICBzZWxsaW5nRnJlcXVlbmN5VW5pdDogZHRvLnNlbGxpbmdGcmVxdWVuY3lVbml0IGFzIEZyZXF1ZW5jeVVuaXQsXG4gICAgICBzZWxsaW5nRnJlcXVlbmN5RHVyYXRpb246IGR0by5zZWxsaW5nRnJlcXVlbmN5RHVyYXRpb24sXG4gICAgICBvZmZlcmluZ0lkOiBkdG8ub2ZmZXJpbmdJZCxcbiAgICAgIG9mZmVyaW5nSXRlbUlkOiBkdG8ub2ZmZXJpbmdJdGVtSWQsXG4gICAgICBvZmZlcmluZ0luc3RhbmNlSWQ6IGR0by5vZmZlcmluZ0luc3RhbmNlSWQsXG4gICAgICByYW1wSW5zdGFuY2VJZDogZHRvLnJhbXBJbnN0YW5jZUlkLFxuICAgICAgZW5hYmxlUmFtcDogZHRvLmVuYWJsZVJhbXAsXG4gICAgICBjb25maWd1cmFibGU6IGR0by5jb25maWd1cmFibGUsXG4gICAgICByZXF1aXJlc0FwcHJvdmFsczogZHRvLnJlcXVpcmVzQXBwcm92YWxzLFxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgYWN0aXZhdGVkOiBib29sZWFuLFxuICAgIHB1YmxpYyBhdHRyaWJ1dGVzOiBBdHRyaWJ1dGVEVE9bXSxcbiAgICBwdWJsaWMgYXR0cmlidXRlRG9tYWluczogRGljdGlvbmFyeTxhbnlbXT4sXG4gICAgcHVibGljIGNmZ1N0YXR1czogc3RyaW5nLFxuICAgIHB1YmxpYyBjaGFyZ2VHcm91cEl0ZW1zOiBDaGFyZ2VHcm91cEl0ZW1EVE9bXSxcbiAgICBwdWJsaWMgY2hhcmdlSXRlbXM6IENoYXJnZUl0ZW1EVE9bXSxcbiAgICBwdWJsaWMgZG9tYWluQ29tcHV0YXRpb25zOiBEaWN0aW9uYXJ5PGJvb2xlYW4+LFxuICAgIHB1YmxpYyBsaW5lSXRlbXM6IExpbmVJdGVtW10sXG4gICAgcHVibGljIG1lc3NhZ2VzOiBzdHJpbmdbXSxcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nLFxuICAgIHB1YmxpYyBvcHRpb25hbENoYXJnZXM6IGFueVtdLFxuICAgIHB1YmxpYyBwZW5kaW5nOiBib29sZWFuLFxuICAgIHB1YmxpYyBwb3J0RG9tYWluczogRGljdGlvbmFyeTxQb3J0RG9tYWluRFRPPixcbiAgICBwdWJsaWMgcHJvcGVydGllczogRGljdGlvbmFyeTxzdHJpbmc+LFxuICAgIHB1YmxpYyBxdHk6IG51bWJlcixcbiAgICBwdWJsaWMgdG90YWxQcmljZXM6IERpY3Rpb25hcnk8UHJpY2VEVE8+LFxuICAgIHB1YmxpYyB0eXBlOiBzdHJpbmcsXG5cbiAgICBwdWJsaWMgaW50ZWdyYXRpb25JZD86IHN0cmluZyxcbiAgICBwdWJsaWMgcHJvZHVjdElkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBwb3J0Pzogc3RyaW5nLFxuICAgIHB1YmxpYyBwYXJlbnRJZD86IHN0cmluZyxcbiAgICBwdWJsaWMgYXNzZXRJZD86IHN0cmluZyxcbiAgICBwdWJsaWMgb3Blbk9yZGVyTGluZUl0ZW1JZD86IHN0cmluZyxcblxuICAgIHB1YmxpYyBwcm9kdWN0TmFtZT86IHN0cmluZyxcbiAgICBwdWJsaWMgcm9vdElkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBhY3Rpb25Db2RlPzogc3RyaW5nLFxuICAgIHB1YmxpYyBzZXJ2aWNlU3RhcnREYXRlPzogc3RyaW5nLFxuICAgIHB1YmxpYyBlZmZlY3RpdmVEYXRlPzogc3RyaW5nLFxuICAgIHB1YmxpYyBlZmZlY3RpdmVTdGFydERhdGU/OiBzdHJpbmcsXG4gICAgcHVibGljIHN0YXJ0RGF0ZT86IHN0cmluZyxcbiAgICBwdWJsaWMgZW5kRGF0ZT86IHN0cmluZyxcblxuICAgIHB1YmxpYyBwcmljZUxpc3RJZD86IHN0cmluZyxcbiAgICBwdWJsaWMgcGxhbklkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBzZWxsaW5nRnJlcXVlbmN5VW5pdD86IHN0cmluZyxcbiAgICBwdWJsaWMgc2VsbGluZ0ZyZXF1ZW5jeUR1cmF0aW9uPzogc3RyaW5nLFxuXG4gICAgcHVibGljIG9mZmVyaW5nSWQ/OiBzdHJpbmcsXG4gICAgcHVibGljIG9mZmVyaW5nSXRlbUlkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBvZmZlcmluZ0luc3RhbmNlSWQ/OiBzdHJpbmcsXG4gICAgcHVibGljIHJhbXBJbnN0YW5jZUlkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBlbmFibGVSYW1wPzogYm9vbGVhbixcbiAgICBwdWJsaWMgY29uZmlndXJhYmxlPzogYm9vbGVhbixcblxuICAgIHB1YmxpYyByZXF1aXJlc0FwcHJvdmFscz86IFJlcXVpcmVzQXBwcm92YWxbXSxcbiAgKSB7fVxufVxuIl19
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1pdGVtLWR0by50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvdHlwZXMvZHRvL2xpbmUtaXRlbS1kdG8udHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFjLFNBQVMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFN0MsTUFBTSxPQUFPLFdBQVc7SUFrRHRCLFlBQ1MsRUFBVSxFQUNWLFNBQWtCLEVBQ2xCLFVBQTBCLEVBQzFCLGdCQUFtQyxFQUNuQyxTQUFpQixFQUNqQixnQkFBc0MsRUFDdEMsV0FBNEIsRUFDNUIsa0JBQXVDLEVBQ3ZDLFNBQXFCLEVBQ3JCLFFBQWtCLEVBQ2xCLElBQVksRUFDWixlQUFzQixFQUN0QixPQUFnQixFQUNoQixXQUFzQyxFQUN0QyxVQUE4QixFQUM5QixHQUFXLEVBQ1gsV0FBaUMsRUFDakMsSUFBWSxFQUVaLGFBQXNCLEVBQ3RCLFNBQWtCLEVBQ2xCLElBQWEsRUFDYixRQUFpQixFQUNqQixPQUFnQixFQUNoQixtQkFBNEIsRUFFNUIsV0FBb0IsRUFDcEIsTUFBZSxFQUNmLFVBQW1CLEVBQ25CLGdCQUF5QixFQUN6QixhQUFzQixFQUN0QixrQkFBMkIsRUFDM0IsU0FBa0IsRUFDbEIsT0FBZ0IsRUFFaEIsV0FBb0IsRUFDcEIsTUFBZSxFQUNmLG9CQUE2QixFQUM3Qix3QkFBaUMsRUFDakMsV0FBb0IsRUFFcEIsVUFB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QVMsRUFBRSxHQUFHLENBQUMsU0FBUztZQUN4QixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87WUFDcEIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1lBQzVCLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTTtZQUNsQixvQkFBb0IsRUFBRSxHQUFHLENBQUMsb0JBQXFDO1lBQy9ELHdCQUF3QixFQUFFLEdBQUcsQ0FBQyx3QkFBd0I7WUFDdEQsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1lBQzVCLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtZQUMxQixjQUFjLEVBQUUsR0FBRyxDQUFDLGNBQWM7WUFDbEMsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLGtCQUFrQjtZQUMxQyxjQUFjLEVBQUUsR0FBRyxDQUFDLGNBQWM7WUFDbEMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1lBQzFCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtZQUM5QixpQkFBaUIsRUFBRSxHQUFHLENBQUMsaUJBQWlCO1NBQ3pDLENBQUM7SUFDSixDQUFDO0NBcURGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uQ29kZSwgQ2ZnU3RhdHVzLCBGcmVxdWVuY3lVbml0LCBMaW5lSXRlbSwgUmVxdWlyZXNBcHByb3ZhbCB9IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5LCB0cmFuc2Zvcm0gfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgQXR0cmlidXRlRFRPIH0gZnJvbSAnLi9hdHRyaWJ1dGUtZHRvLnR5cGVzJztcbmltcG9ydCB7IENoYXJnZUdyb3VwSXRlbURUTyB9IGZyb20gJy4vY2hhcmdlLWdyb3VwLWl0ZW0tZHRvLnR5cGVzJztcbmltcG9ydCB7IENoYXJnZUl0ZW1EVE8gfSBmcm9tICcuL2NoYXJnZS1pdGVtLWR0by50eXBlcyc7XG5pbXBvcnQgeyBQb3J0RG9tYWluRFRPIH0gZnJvbSAnLi9wb3J0LWRvbWFpbi1kdG8udHlwZXMnO1xuaW1wb3J0IHsgUHJpY2VEVE8gfSBmcm9tICcuL3ByaWNlLWR0by50eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBMaW5lSXRlbURUTyB7XG4gIHN0YXRpYyBmcm9tRFRPKGR0bzogTGluZUl0ZW1EVE8pOiBMaW5lSXRlbSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiBkdG8uaWQsXG4gICAgICBhY3RpdmF0ZWQ6IGR0by5hY3RpdmF0ZWQsXG4gICAgICBhdHRyaWJ1dGVzOiBkdG8uYXR0cmlidXRlcy5tYXAoQXR0cmlidXRlRFRPLmZyb21EVE8pLFxuICAgICAgYXR0cmlidXRlRG9tYWluczogZHRvLmF0dHJpYnV0ZURvbWFpbnMsXG4gICAgICBjZmdTdGF0dXM6IGR0by5jZmdTdGF0dXMgYXMgQ2ZnU3RhdHVzLFxuICAgICAgY2hhcmdlR3JvdXBJdGVtczogZHRvLmNoYXJnZUdyb3VwSXRlbXMubWFwKENoYXJnZUdyb3VwSXRlbURUTy5mcm9tRFRPKSxcbiAgICAgIGNoYXJnZUl0ZW1zOiBkdG8uY2hhcmdlSXRlbXMubWFwKENoYXJnZUl0ZW1EVE8uZnJvbURUTyksXG4gICAgICBkb21haW5Db21wdXRhdGlvbnM6IGR0by5kb21haW5Db21wdXRhdGlvbnMsXG4gICAgICBsaW5lSXRlbXM6IGR0by5saW5lSXRlbXMubWFwKExpbmVJdGVtRFRPLmZyb21EVE8pLFxuICAgICAgbWVzc2FnZXM6IGR0by5tZXNzYWdlcyxcbiAgICAgIG5hbWU6IGR0by5uYW1lLFxuICAgICAgb3B0aW9uYWxDaGFyZ2VzOiBkdG8ub3B0aW9uYWxDaGFyZ2VzLFxuICAgICAgcGVuZGluZzogZHRvLnBlbmRpbmcsXG4gICAgICBwb3J0RG9tYWluczogdHJhbnNmb3JtKGR0by5wb3J0RG9tYWlucywgKHJlc3VsdCwgdmFsdWUsIGtleSkgPT4gKHJlc3VsdFtrZXldID0gUG9ydERvbWFpbkRUTy5mcm9tRFRPKHZhbHVlKSkpLFxuICAgICAgcHJvcGVydGllczogZHRvLnByb3BlcnRpZXMsXG4gICAgICBxdHk6IGR0by5xdHksXG4gICAgICB0b3RhbFByaWNlczogdHJhbnNmb3JtKGR0by50b3RhbFByaWNlcywgKHJlc3VsdCwgdmFsdWUsIGtleSkgPT4gKHJlc3VsdFtrZXldID0gUHJpY2VEVE8uZnJvbURUTyh2YWx1ZSkpKSxcbiAgICAgIHR5cGU6IGR0by50eXBlLFxuICAgICAgcHJvZHVjdElkOiBkdG8ucHJvZHVjdElkLFxuICAgICAgcG9ydDogZHRvLnBvcnQsXG4gICAgICBpbnRlZ3JhdGlvbklkOiBkdG8uaW50ZWdyYXRpb25JZCxcbiAgICAgIHBhcmVudElkOiBkdG8ucGFyZW50SWQsXG4gICAgICBhc3NldElkOiBkdG8uYXNzZXRJZCxcbiAgICAgIG9wZW5PcmRlckxpbmVJdGVtSWQ6IGR0by5vcGVuT3JkZXJMaW5lSXRlbUlkLFxuICAgICAgcHJvZHVjdE5hbWU6IGR0by5wcm9kdWN0TmFtZSxcbiAgICAgIHJvb3RJZDogZHRvLnJvb3RJZCxcbiAgICAgIGFjdGlvbkNvZGU6IGR0by5hY3Rpb25Db2RlIGFzIEFjdGlvbkNvZGUsXG4gICAgICBzZXJ2aWNlU3RhcnREYXRlOiBkdG8uc2VydmljZVN0YXJ0RGF0ZSxcbiAgICAgIGVmZmVjdGl2ZURhdGU6IGR0by5lZmZlY3RpdmVEYXRlLFxuICAgICAgZWZmZWN0aXZlU3RhcnREYXRlOiBkdG8uZWZmZWN0aXZlU3RhcnREYXRlLFxuICAgICAgc3RhcnREYXRlOiBkdG8uc3RhcnREYXRlLFxuICAgICAgZW5kRGF0ZTogZHRvLmVuZERhdGUsXG4gICAgICBwcmljZUxpc3RJZDogZHRvLnByaWNlTGlzdElkLFxuICAgICAgcGxhbklkOiBkdG8ucGxhbklkLFxuICAgICAgc2VsbGluZ0ZyZXF1ZW5jeVVuaXQ6IGR0by5zZWxsaW5nRnJlcXVlbmN5VW5pdCBhcyBGcmVxdWVuY3lVbml0LFxuICAgICAgc2VsbGluZ0ZyZXF1ZW5jeUR1cmF0aW9uOiBkdG8uc2VsbGluZ0ZyZXF1ZW5jeUR1cmF0aW9uLFxuICAgICAgbWluaW1hbFRlcm06IGR0by5taW5pbWFsVGVybSxcbiAgICAgIG9mZmVyaW5nSWQ6IGR0by5vZmZlcmluZ0lkLFxuICAgICAgb2ZmZXJpbmdJdGVtSWQ6IGR0by5vZmZlcmluZ0l0ZW1JZCxcbiAgICAgIG9mZmVyaW5nSW5zdGFuY2VJZDogZHRvLm9mZmVyaW5nSW5zdGFuY2VJZCxcbiAgICAgIHJhbXBJbnN0YW5jZUlkOiBkdG8ucmFtcEluc3RhbmNlSWQsXG4gICAgICBlbmFibGVSYW1wOiBkdG8uZW5hYmxlUmFtcCxcbiAgICAgIGNvbmZpZ3VyYWJsZTogZHRvLmNvbmZpZ3VyYWJsZSxcbiAgICAgIHJlcXVpcmVzQXBwcm92YWxzOiBkdG8ucmVxdWlyZXNBcHByb3ZhbHMsXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBpZDogc3RyaW5nLFxuICAgIHB1YmxpYyBhY3RpdmF0ZWQ6IGJvb2xlYW4sXG4gICAgcHVibGljIGF0dHJpYnV0ZXM6IEF0dHJpYnV0ZURUT1tdLFxuICAgIHB1YmxpYyBhdHRyaWJ1dGVEb21haW5zOiBEaWN0aW9uYXJ5PGFueVtdPixcbiAgICBwdWJsaWMgY2ZnU3RhdHVzOiBzdHJpbmcsXG4gICAgcHVibGljIGNoYXJnZUdyb3VwSXRlbXM6IENoYXJnZUdyb3VwSXRlbURUT1tdLFxuICAgIHB1YmxpYyBjaGFyZ2VJdGVtczogQ2hhcmdlSXRlbURUT1tdLFxuICAgIHB1YmxpYyBkb21haW5Db21wdXRhdGlvbnM6IERpY3Rpb25hcnk8Ym9vbGVhbj4sXG4gICAgcHVibGljIGxpbmVJdGVtczogTGluZUl0ZW1bXSxcbiAgICBwdWJsaWMgbWVzc2FnZXM6IHN0cmluZ1tdLFxuICAgIHB1YmxpYyBuYW1lOiBzdHJpbmcsXG4gICAgcHVibGljIG9wdGlvbmFsQ2hhcmdlczogYW55W10sXG4gICAgcHVibGljIHBlbmRpbmc6IGJvb2xlYW4sXG4gICAgcHVibGljIHBvcnREb21haW5zOiBEaWN0aW9uYXJ5PFBvcnREb21haW5EVE8+LFxuICAgIHB1YmxpYyBwcm9wZXJ0aWVzOiBEaWN0aW9uYXJ5PHN0cmluZz4sXG4gICAgcHVibGljIHF0eTogbnVtYmVyLFxuICAgIHB1YmxpYyB0b3RhbFByaWNlczogRGljdGlvbmFyeTxQcmljZURUTz4sXG4gICAgcHVibGljIHR5cGU6IHN0cmluZyxcblxuICAgIHB1YmxpYyBpbnRlZ3JhdGlvbklkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBwcm9kdWN0SWQ/OiBzdHJpbmcsXG4gICAgcHVibGljIHBvcnQ/OiBzdHJpbmcsXG4gICAgcHVibGljIHBhcmVudElkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBhc3NldElkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBvcGVuT3JkZXJMaW5lSXRlbUlkPzogc3RyaW5nLFxuXG4gICAgcHVibGljIHByb2R1Y3ROYW1lPzogc3RyaW5nLFxuICAgIHB1YmxpYyByb290SWQ/OiBzdHJpbmcsXG4gICAgcHVibGljIGFjdGlvbkNvZGU/OiBzdHJpbmcsXG4gICAgcHVibGljIHNlcnZpY2VTdGFydERhdGU/OiBzdHJpbmcsXG4gICAgcHVibGljIGVmZmVjdGl2ZURhdGU/OiBzdHJpbmcsXG4gICAgcHVibGljIGVmZmVjdGl2ZVN0YXJ0RGF0ZT86IHN0cmluZyxcbiAgICBwdWJsaWMgc3RhcnREYXRlPzogc3RyaW5nLFxuICAgIHB1YmxpYyBlbmREYXRlPzogc3RyaW5nLFxuXG4gICAgcHVibGljIHByaWNlTGlzdElkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBwbGFuSWQ/OiBzdHJpbmcsXG4gICAgcHVibGljIHNlbGxpbmdGcmVxdWVuY3lVbml0Pzogc3RyaW5nLFxuICAgIHB1YmxpYyBzZWxsaW5nRnJlcXVlbmN5RHVyYXRpb24/OiBzdHJpbmcsXG4gICAgcHVibGljIG1pbmltYWxUZXJtPzogbnVtYmVyLFxuXG4gICAgcHVibGljIG9mZmVyaW5nSWQ/OiBzdHJpbmcsXG4gICAgcHVibGljIG9mZmVyaW5nSXRlbUlkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBvZmZlcmluZ0luc3RhbmNlSWQ/OiBzdHJpbmcsXG4gICAgcHVibGljIHJhbXBJbnN0YW5jZUlkPzogc3RyaW5nLFxuICAgIHB1YmxpYyBlbmFibGVSYW1wPzogYm9vbGVhbixcbiAgICBwdWJsaWMgY29uZmlndXJhYmxlPzogYm9vbGVhbixcblxuICAgIHB1YmxpYyByZXF1aXJlc0FwcHJvdmFscz86IFJlcXVpcmVzQXBwcm92YWxbXSxcbiAgKSB7fVxufVxuIl19
|
package/fesm2015/veloce-api.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import * as
|
1
|
+
import * as i4 from '@angular/common/http';
|
2
2
|
import { HttpParams, HttpErrorResponse, HttpClientModule } from '@angular/common/http';
|
3
3
|
import * as i0 from '@angular/core';
|
4
4
|
import { Injectable, NgModule } from '@angular/core';
|
@@ -558,7 +558,7 @@ class PriceDTO {
|
|
558
558
|
}
|
559
559
|
|
560
560
|
class LineItemDTO {
|
561
|
-
constructor(id, activated, attributes, attributeDomains, cfgStatus, chargeGroupItems, chargeItems, domainComputations, lineItems, messages, name, optionalCharges, pending, portDomains, properties, qty, totalPrices, type, integrationId, productId, port, parentId, assetId, openOrderLineItemId, productName, rootId, actionCode, serviceStartDate, effectiveDate, effectiveStartDate, startDate, endDate, priceListId, planId, sellingFrequencyUnit, sellingFrequencyDuration, offeringId, offeringItemId, offeringInstanceId, rampInstanceId, enableRamp, configurable, requiresApprovals) {
|
561
|
+
constructor(id, activated, attributes, attributeDomains, cfgStatus, chargeGroupItems, chargeItems, domainComputations, lineItems, messages, name, optionalCharges, pending, portDomains, properties, qty, totalPrices, type, integrationId, productId, port, parentId, assetId, openOrderLineItemId, productName, rootId, actionCode, serviceStartDate, effectiveDate, effectiveStartDate, startDate, endDate, priceListId, planId, sellingFrequencyUnit, sellingFrequencyDuration, minimalTerm, offeringId, offeringItemId, offeringInstanceId, rampInstanceId, enableRamp, configurable, requiresApprovals) {
|
562
562
|
this.id = id;
|
563
563
|
this.activated = activated;
|
564
564
|
this.attributes = attributes;
|
@@ -595,6 +595,7 @@ class LineItemDTO {
|
|
595
595
|
this.planId = planId;
|
596
596
|
this.sellingFrequencyUnit = sellingFrequencyUnit;
|
597
597
|
this.sellingFrequencyDuration = sellingFrequencyDuration;
|
598
|
+
this.minimalTerm = minimalTerm;
|
598
599
|
this.offeringId = offeringId;
|
599
600
|
this.offeringItemId = offeringItemId;
|
600
601
|
this.offeringInstanceId = offeringInstanceId;
|
@@ -641,6 +642,7 @@ class LineItemDTO {
|
|
641
642
|
planId: dto.planId,
|
642
643
|
sellingFrequencyUnit: dto.sellingFrequencyUnit,
|
643
644
|
sellingFrequencyDuration: dto.sellingFrequencyDuration,
|
645
|
+
minimalTerm: dto.minimalTerm,
|
644
646
|
offeringId: dto.offeringId,
|
645
647
|
offeringItemId: dto.offeringItemId,
|
646
648
|
offeringInstanceId: dto.offeringInstanceId,
|
@@ -653,15 +655,17 @@ class LineItemDTO {
|
|
653
655
|
}
|
654
656
|
|
655
657
|
class ConfigurePriceDTO {
|
656
|
-
constructor(lineItem, context, charges) {
|
658
|
+
constructor(lineItem, context, charges, pricePlans) {
|
657
659
|
this.lineItem = lineItem;
|
658
660
|
this.context = context;
|
659
661
|
this.charges = charges;
|
662
|
+
this.pricePlans = pricePlans;
|
660
663
|
}
|
661
664
|
static fromDTO(dto) {
|
662
665
|
return {
|
663
666
|
lineItem: LineItemDTO.fromDTO(dto.lineItem),
|
664
667
|
charges: dto.charges,
|
668
|
+
pricePlans: dto.pricePlans,
|
665
669
|
context: dto.context,
|
666
670
|
deletedLineItems: dto.deletedLineItems.map(deletedLineItem => LineItemDTO.fromDTO(deletedLineItem)),
|
667
671
|
};
|
@@ -943,60 +947,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
943
947
|
type: Injectable
|
944
948
|
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
945
949
|
|
946
|
-
class QuoteApiService {
|
947
|
-
constructor(httpService) {
|
948
|
-
this.httpService = httpService;
|
949
|
-
this.SERVICE_URL = '/quotes';
|
950
|
-
/**
|
951
|
-
* @deprecated
|
952
|
-
* Will be removed in next major release
|
953
|
-
* Use `getQuoteDraft` instead
|
954
|
-
*/
|
955
|
-
// eslint-disable-next-line @typescript-eslint/member-ordering
|
956
|
-
this.getQuote = this.getQuoteDraft;
|
957
|
-
}
|
958
|
-
// request quoteId | accountId | opportunityId | orderId
|
959
|
-
getQuoteDraft(objectId, params, errorHandler) {
|
960
|
-
return this.httpService.api({
|
961
|
-
method: 'get',
|
962
|
-
url: `${this.SERVICE_URL}/${objectId}`,
|
963
|
-
params,
|
964
|
-
errorHandler,
|
965
|
-
});
|
966
|
-
}
|
967
|
-
upsertQuote(request, options) {
|
968
|
-
return this.httpService.api(Object.assign({ method: 'post', url: `${this.SERVICE_URL}`, body: request }, options));
|
969
|
-
}
|
970
|
-
submitQuote(request, options) {
|
971
|
-
return this.httpService.api(Object.assign({ method: 'post', url: `${this.SERVICE_URL}/submit`, body: request }, options));
|
972
|
-
}
|
973
|
-
attachDocument(id, documentName, data) {
|
974
|
-
const formData = new FormData();
|
975
|
-
const blob = new Blob([data]);
|
976
|
-
formData.append('file', blob, documentName);
|
977
|
-
return this.httpService.upload({
|
978
|
-
url: `${this.SERVICE_URL}/${id}/attach-document`,
|
979
|
-
responseType: 'arraybuffer',
|
980
|
-
method: 'post',
|
981
|
-
body: formData,
|
982
|
-
});
|
983
|
-
}
|
984
|
-
}
|
985
|
-
QuoteApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: QuoteApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
986
|
-
QuoteApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: QuoteApiService });
|
987
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: QuoteApiService, decorators: [{
|
988
|
-
type: Injectable
|
989
|
-
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
990
|
-
|
991
950
|
const moment = moment_;
|
992
951
|
class DocumentTemplatesApiService {
|
993
|
-
constructor(service, salesforceApiService, fileDownloadService, documentAttachmentService,
|
952
|
+
constructor(service, salesforceApiService, fileDownloadService, documentAttachmentService, http) {
|
994
953
|
this.service = service;
|
995
954
|
this.salesforceApiService = salesforceApiService;
|
996
955
|
this.fileDownloadService = fileDownloadService;
|
997
956
|
this.documentAttachmentService = documentAttachmentService;
|
998
|
-
this.quoteApiService = quoteApiService;
|
999
957
|
this.http = http;
|
958
|
+
this.DOCGEN_TAG = 'docgen';
|
1000
959
|
this.SERVICE_URL = '/templates';
|
1001
960
|
this.DOC_GEN_URL_FALLBACK = 'https://dev-dp1.velocpq.com/docgen';
|
1002
961
|
this.mapSfQueryResult = (limit) => map((records) => {
|
@@ -1147,8 +1106,14 @@ class DocumentTemplatesApiService {
|
|
1147
1106
|
}
|
1148
1107
|
return this.mergeDocuments(document, attachments).pipe(switchMap(pdf => {
|
1149
1108
|
if (params.attachToQuote && QuoteDraft.isQuote(object)) {
|
1150
|
-
|
1151
|
-
|
1109
|
+
const file = new File([pdf], `${documentName}.pdf`);
|
1110
|
+
return this.documentAttachmentService
|
1111
|
+
.createAttachment({
|
1112
|
+
linkedEntityId: object.quoteId,
|
1113
|
+
fileName: documentName,
|
1114
|
+
fileExtension: 'pdf',
|
1115
|
+
tags: this.DOCGEN_TAG,
|
1116
|
+
}, file)
|
1152
1117
|
.pipe(map(() => pdf));
|
1153
1118
|
}
|
1154
1119
|
return of(pdf);
|
@@ -1248,11 +1213,11 @@ class DocumentTemplatesApiService {
|
|
1248
1213
|
return this.salesforceApiService.query(searchRequest, objectName).pipe(this.mapSfQueryResult(limit), map(value => ({ [resultObjectName]: value })));
|
1249
1214
|
}
|
1250
1215
|
}
|
1251
|
-
DocumentTemplatesApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentTemplatesApiService, deps: [{ token: i1.BaseHttpService }, { token: SalesforceApiService }, { token: i1.FileDownloadService }, { token: DocumentAttachmentApiService }, { token:
|
1216
|
+
DocumentTemplatesApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentTemplatesApiService, deps: [{ token: i1.BaseHttpService }, { token: SalesforceApiService }, { token: i1.FileDownloadService }, { token: DocumentAttachmentApiService }, { token: i4.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
1252
1217
|
DocumentTemplatesApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentTemplatesApiService });
|
1253
1218
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentTemplatesApiService, decorators: [{
|
1254
1219
|
type: Injectable
|
1255
|
-
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }, { type: SalesforceApiService }, { type: i1.FileDownloadService }, { type: DocumentAttachmentApiService }, { type:
|
1220
|
+
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }, { type: SalesforceApiService }, { type: i1.FileDownloadService }, { type: DocumentAttachmentApiService }, { type: i4.HttpClient }]; } });
|
1256
1221
|
|
1257
1222
|
class FlowsApiService {
|
1258
1223
|
constructor(configurationSettingsApiService) {
|
@@ -1830,6 +1795,51 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
1830
1795
|
type: Injectable
|
1831
1796
|
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
1832
1797
|
|
1798
|
+
class QuoteApiService {
|
1799
|
+
constructor(httpService) {
|
1800
|
+
this.httpService = httpService;
|
1801
|
+
this.SERVICE_URL = '/quotes';
|
1802
|
+
/**
|
1803
|
+
* @deprecated
|
1804
|
+
* Will be removed in next major release
|
1805
|
+
* Use `getQuoteDraft` instead
|
1806
|
+
*/
|
1807
|
+
// eslint-disable-next-line @typescript-eslint/member-ordering
|
1808
|
+
this.getQuote = this.getQuoteDraft;
|
1809
|
+
}
|
1810
|
+
// request quoteId | accountId | opportunityId | orderId
|
1811
|
+
getQuoteDraft(objectId, params, errorHandler) {
|
1812
|
+
return this.httpService.api({
|
1813
|
+
method: 'get',
|
1814
|
+
url: `${this.SERVICE_URL}/${objectId}`,
|
1815
|
+
params,
|
1816
|
+
errorHandler,
|
1817
|
+
});
|
1818
|
+
}
|
1819
|
+
upsertQuote(request, options) {
|
1820
|
+
return this.httpService.api(Object.assign({ method: 'post', url: `${this.SERVICE_URL}`, body: request }, options));
|
1821
|
+
}
|
1822
|
+
submitQuote(request, options) {
|
1823
|
+
return this.httpService.api(Object.assign({ method: 'post', url: `${this.SERVICE_URL}/submit`, body: request }, options));
|
1824
|
+
}
|
1825
|
+
attachDocument(id, documentName, data) {
|
1826
|
+
const formData = new FormData();
|
1827
|
+
const blob = new Blob([data]);
|
1828
|
+
formData.append('file', blob, documentName);
|
1829
|
+
return this.httpService.upload({
|
1830
|
+
url: `${this.SERVICE_URL}/${id}/attach-document`,
|
1831
|
+
responseType: 'arraybuffer',
|
1832
|
+
method: 'post',
|
1833
|
+
body: formData,
|
1834
|
+
});
|
1835
|
+
}
|
1836
|
+
}
|
1837
|
+
QuoteApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: QuoteApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
1838
|
+
QuoteApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: QuoteApiService });
|
1839
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: QuoteApiService, decorators: [{
|
1840
|
+
type: Injectable
|
1841
|
+
}], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
|
1842
|
+
|
1833
1843
|
class RampApiService {
|
1834
1844
|
constructor(httpService) {
|
1835
1845
|
this.httpService = httpService;
|