@veloceapps/api 1.0.0

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.
Files changed (62) hide show
  1. package/README.md +7 -0
  2. package/bundles/veloce-api.umd.js +2117 -0
  3. package/bundles/veloce-api.umd.js.map +1 -0
  4. package/esm2015/index.js +14 -0
  5. package/esm2015/lib/api.module.js +59 -0
  6. package/esm2015/lib/services/configuration-api.service.js +90 -0
  7. package/esm2015/lib/services/configuration-settings-api.service.js +69 -0
  8. package/esm2015/lib/services/context-api.service.js +26 -0
  9. package/esm2015/lib/services/document-attachment-api.service.js +65 -0
  10. package/esm2015/lib/services/document-templates-api.service.js +278 -0
  11. package/esm2015/lib/services/price-api.service.js +86 -0
  12. package/esm2015/lib/services/product-model-api.service.js +232 -0
  13. package/esm2015/lib/services/quote-api.service.js +36 -0
  14. package/esm2015/lib/services/ramp-api.service.js +42 -0
  15. package/esm2015/lib/services/salesforce-api.service.js +51 -0
  16. package/esm2015/lib/services/scripts-api.service.js +75 -0
  17. package/esm2015/lib/services/ui-templates-api.service.js +262 -0
  18. package/esm2015/lib/types/attribute-dto.types.js +21 -0
  19. package/esm2015/lib/types/charge-group-item-dto.types.js +45 -0
  20. package/esm2015/lib/types/charge-item-dto.types.js +74 -0
  21. package/esm2015/lib/types/clone-request.types.js +2 -0
  22. package/esm2015/lib/types/configuration-settings-dto.types.js +22 -0
  23. package/esm2015/lib/types/domain-type-dto.types.js +27 -0
  24. package/esm2015/lib/types/line-item-dto.types.js +93 -0
  25. package/esm2015/lib/types/port-domain-dto.types.js +22 -0
  26. package/esm2015/lib/types/price-adjustment-dto.types.js +15 -0
  27. package/esm2015/lib/types/price-dto.types.js +25 -0
  28. package/esm2015/lib/types/recommended-price-dto.types.js +23 -0
  29. package/esm2015/lib/types/ui-template-dto.types.js +2 -0
  30. package/esm2015/lib/utils/ui-template.utils.js +17 -0
  31. package/esm2015/veloce-api.js +5 -0
  32. package/fesm2015/veloce-api.js +1686 -0
  33. package/fesm2015/veloce-api.js.map +1 -0
  34. package/index.d.ts +14 -0
  35. package/lib/api.module.d.ts +7 -0
  36. package/lib/services/configuration-api.service.d.ts +18 -0
  37. package/lib/services/configuration-settings-api.service.d.ts +17 -0
  38. package/lib/services/context-api.service.d.ts +11 -0
  39. package/lib/services/document-attachment-api.service.d.ts +15 -0
  40. package/lib/services/document-templates-api.service.d.ts +39 -0
  41. package/lib/services/price-api.service.d.ts +16 -0
  42. package/lib/services/product-model-api.service.d.ts +30 -0
  43. package/lib/services/quote-api.service.d.ts +14 -0
  44. package/lib/services/ramp-api.service.d.ts +12 -0
  45. package/lib/services/salesforce-api.service.d.ts +17 -0
  46. package/lib/services/scripts-api.service.d.ts +21 -0
  47. package/lib/services/ui-templates-api.service.d.ts +47 -0
  48. package/lib/types/attribute-dto.types.d.ts +11 -0
  49. package/lib/types/charge-group-item-dto.types.d.ts +24 -0
  50. package/lib/types/charge-item-dto.types.d.ts +39 -0
  51. package/lib/types/clone-request.types.d.ts +6 -0
  52. package/lib/types/configuration-settings-dto.types.d.ts +9 -0
  53. package/lib/types/domain-type-dto.types.d.ts +15 -0
  54. package/lib/types/line-item-dto.types.d.ts +50 -0
  55. package/lib/types/port-domain-dto.types.d.ts +13 -0
  56. package/lib/types/price-adjustment-dto.types.d.ts +8 -0
  57. package/lib/types/price-dto.types.d.ts +13 -0
  58. package/lib/types/recommended-price-dto.types.d.ts +12 -0
  59. package/lib/types/ui-template-dto.types.d.ts +10 -0
  60. package/lib/utils/ui-template.utils.d.ts +3 -0
  61. package/package.json +33 -0
  62. package/veloce-api.d.ts +5 -0
@@ -0,0 +1,262 @@
1
+ import { __rest } from "tslib";
2
+ import { HttpParams } from '@angular/common/http';
3
+ import { Injectable } from '@angular/core';
4
+ import { UUID, } from '@veloce/core';
5
+ import { catchError, forkJoin, map, of, switchMap } from 'rxjs';
6
+ import { fromUIComponentStoryDTO } from '../utils/ui-template.utils';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@veloce/core";
9
+ export class UITemplatesApiService {
10
+ constructor(baseHttpService) {
11
+ this.baseHttpService = baseHttpService;
12
+ this.serviceUrl = '/uitemplates';
13
+ this.fetchTemplates$ = (name) => {
14
+ let params = new HttpParams();
15
+ if (name) {
16
+ params = params.append('name', name);
17
+ }
18
+ return this.baseHttpService.api({ url: `${this.serviceUrl}`, params });
19
+ };
20
+ this.createTemplate$ = (template) => {
21
+ return this.baseHttpService.api({
22
+ method: 'post',
23
+ url: `${this.serviceUrl}`,
24
+ body: template,
25
+ });
26
+ };
27
+ this.updateTemplate$ = (template) => {
28
+ return this.baseHttpService.api({
29
+ method: 'put',
30
+ url: `${this.serviceUrl}/${template.id}`,
31
+ body: template,
32
+ });
33
+ };
34
+ this.duplicateTemplate$ = (template) => {
35
+ // TODO: integrate with BE
36
+ return of(UUID.UUID());
37
+ };
38
+ this.removeTemplate$ = (id) => {
39
+ return this.baseHttpService.api({
40
+ method: 'delete',
41
+ url: `${this.serviceUrl}/${id}`,
42
+ });
43
+ };
44
+ this.restoreTemplate$ = (id) => {
45
+ return this.baseHttpService.api({
46
+ method: 'patch',
47
+ url: `${this.serviceUrl}/${id}`,
48
+ });
49
+ };
50
+ this.searchTemplates$ = (data) => {
51
+ return this.baseHttpService.api({
52
+ method: 'post',
53
+ url: `${this.serviceUrl}/search`,
54
+ params: data.params,
55
+ body: data.expression,
56
+ });
57
+ };
58
+ this.fetchComponents$ = (templateId, name) => {
59
+ let params = new HttpParams();
60
+ if (name) {
61
+ params = params.append('name', name);
62
+ }
63
+ return this.baseHttpService.api({
64
+ url: `${this.serviceUrl}/${templateId}/components`,
65
+ params,
66
+ });
67
+ };
68
+ this.fetchComponent$ = (templateId, componentId) => {
69
+ return this.baseHttpService.api({
70
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}`,
71
+ });
72
+ };
73
+ this.createComponent$ = (component) => {
74
+ return this.baseHttpService.api({
75
+ method: 'post',
76
+ url: `${this.serviceUrl}/${component.uiTemplateId}/components`,
77
+ body: component,
78
+ });
79
+ };
80
+ this.updateComponent$ = (component) => {
81
+ return this.baseHttpService.api({
82
+ method: 'put',
83
+ url: `${this.serviceUrl}/${component.uiTemplateId}/components/${component.id}`,
84
+ body: component,
85
+ });
86
+ };
87
+ this.duplicateComponent$ = (component) => {
88
+ // TODO: integrate with BE
89
+ return of(UUID.UUID());
90
+ };
91
+ this.removeComponent$ = (templateId, componentId) => {
92
+ return this.baseHttpService.api({
93
+ method: 'delete',
94
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}`,
95
+ });
96
+ };
97
+ this.restoreComponent$ = (templateId, componentId) => {
98
+ return this.baseHttpService.api({
99
+ method: 'patch',
100
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}`,
101
+ });
102
+ };
103
+ this.searchComponents$ = (templateId, data) => {
104
+ return this.baseHttpService.api({
105
+ method: 'post',
106
+ url: `${this.serviceUrl}/${templateId}/components/search`,
107
+ params: data.params,
108
+ body: data.expression,
109
+ });
110
+ };
111
+ this.fetchStoryAttachment = (templateId, componentId, storyId, type) => {
112
+ return this.baseHttpService
113
+ .api({
114
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}/attachments/${type}/file`,
115
+ responseType: 'text',
116
+ })
117
+ .pipe(catchError(() => of('')));
118
+ };
119
+ this.convertToComponentStory$ = (templateId, componentId, storyDto) => {
120
+ return forkJoin([
121
+ storyDto.templateHtmlId ? this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'html') : of(undefined),
122
+ storyDto.scriptJsId ? this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'js') : of(undefined),
123
+ storyDto.styleCssId ? this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'css') : of(undefined),
124
+ storyDto.sectionJsonId ? this.fetchStoryAttachment(templateId, componentId, storyDto.id, 'json') : of(undefined),
125
+ ]).pipe(map(([html, js, css, json]) => ({ html, js, css, json })), map(attachments => fromUIComponentStoryDTO(storyDto, attachments)));
126
+ };
127
+ this.fetchStories$ = (templateId, componentId, name) => {
128
+ let params = new HttpParams();
129
+ if (name) {
130
+ params = params.append('name', name);
131
+ }
132
+ return this.baseHttpService
133
+ .api({
134
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories`,
135
+ params,
136
+ })
137
+ .pipe(switchMap(dtos => {
138
+ if (!dtos.length) {
139
+ return of([]);
140
+ }
141
+ return forkJoin(dtos.map(dto => this.convertToComponentStory$(templateId, componentId, dto)));
142
+ }));
143
+ };
144
+ this.fetchStory$ = (templateId, componentId, storyId) => {
145
+ return this.baseHttpService
146
+ .api({
147
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}`,
148
+ })
149
+ .pipe(switchMap(dto => this.convertToComponentStory$(templateId, componentId, dto)));
150
+ };
151
+ this.createComponentStory$ = (templateId, story) => {
152
+ return this.baseHttpService.api({
153
+ method: 'post',
154
+ url: `${this.serviceUrl}/${templateId}/components/${story.uiComponentId}/stories`,
155
+ body: story,
156
+ });
157
+ };
158
+ this.updateComponentStory$ = (templateId, story) => {
159
+ const { script, template, styles, section } = story, rest = __rest(story, ["script", "template", "styles", "section"]);
160
+ return this.baseHttpService
161
+ .api({
162
+ method: 'put',
163
+ url: `${this.serviceUrl}/${templateId}/components/${story.uiComponentId}/stories/${story.id}`,
164
+ body: rest,
165
+ })
166
+ .pipe(map(dto => fromUIComponentStoryDTO(dto, { html: template, js: script, css: styles, json: section })));
167
+ };
168
+ this.deleteComponentStory$ = (templateId, componentId, storyId) => {
169
+ return this.baseHttpService.api({
170
+ method: 'delete',
171
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}`,
172
+ });
173
+ };
174
+ this.restoreComponentStory$ = (templateId, componentId, storyId) => {
175
+ return this.baseHttpService.api({
176
+ method: 'patch',
177
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}`,
178
+ });
179
+ };
180
+ this.uploadStoryAttachments$ = (templateId, componentId, storyId, attachments) => {
181
+ const formData = new FormData();
182
+ if (attachments.html != null) {
183
+ formData.append('html', new Blob([attachments.html]), 'story-template.html');
184
+ }
185
+ if (attachments.css != null) {
186
+ formData.append('css', new Blob([attachments.css]), 'story-styles.css');
187
+ }
188
+ if (attachments.js != null) {
189
+ formData.append('js', new Blob([attachments.js]), 'story-script.js');
190
+ }
191
+ if (attachments.json != null) {
192
+ formData.append('json', new Blob([attachments.json]), 'story-section.json');
193
+ }
194
+ return this.baseHttpService.upload({
195
+ method: 'post',
196
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}/stories/${storyId}/attachments`,
197
+ body: formData,
198
+ });
199
+ };
200
+ this.fetchComponentAttachments$ = (templateId, component) => {
201
+ return forkJoin([
202
+ component.templateHtmlId ? this.fetchComponentAttachmentFile$(templateId, component.id, 'html') : of(undefined),
203
+ component.scriptJsId ? this.fetchComponentAttachmentFile$(templateId, component.id, 'js') : of(undefined),
204
+ component.styleCssId ? this.fetchComponentAttachmentFile$(templateId, component.id, 'css') : of(undefined),
205
+ component.propertiesJsonId ? this.fetchComponentAttachmentFile$(templateId, component.id, 'json') : of(undefined),
206
+ ]).pipe(map(([html, js, css, json]) => ({ html, js, css, json })));
207
+ };
208
+ this.fetchComponentAttachmentFile$ = (templateId, componentId, attachmentType) => {
209
+ return this.baseHttpService
210
+ .api({
211
+ method: 'get',
212
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}/attachments/${attachmentType}/file`,
213
+ responseType: 'text',
214
+ })
215
+ .pipe(catchError(() => of('')));
216
+ };
217
+ this.uploadComponentAttachments$ = (templateId, componentId, attachments) => {
218
+ const formData = new FormData();
219
+ if (attachments.html != null) {
220
+ formData.append('html', new Blob([attachments.html]), 'template.html');
221
+ }
222
+ if (attachments.css != null) {
223
+ formData.append('css', new Blob([attachments.css]), 'styles.css');
224
+ }
225
+ if (attachments.js != null) {
226
+ formData.append('js', new Blob([attachments.js]), 'script.js');
227
+ }
228
+ if (attachments.json != null) {
229
+ formData.append('json', new Blob([attachments.json]), 'section.json');
230
+ }
231
+ return this.baseHttpService.upload({
232
+ method: 'post',
233
+ url: `${this.serviceUrl}/${templateId}/components/${componentId}/attachments`,
234
+ body: formData,
235
+ });
236
+ };
237
+ }
238
+ getTemplateThumbnailUrl(templateId) {
239
+ return `${this.serviceUrl}/${templateId}/thumbnail/file`;
240
+ }
241
+ attachTemplateThumbnail$(templateId, file) {
242
+ const data = new FormData();
243
+ data.append('thumb', file);
244
+ return this.baseHttpService.upload({
245
+ method: 'post',
246
+ url: `${this.serviceUrl}/${templateId}/thumbnail`,
247
+ body: data,
248
+ });
249
+ }
250
+ removeTemplateThumbnail$(templateId) {
251
+ return this.baseHttpService.api({
252
+ method: 'delete',
253
+ url: `${this.serviceUrl}/${templateId}/thumbnail`,
254
+ });
255
+ }
256
+ }
257
+ UITemplatesApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UITemplatesApiService, deps: [{ token: i1.BaseHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
258
+ UITemplatesApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UITemplatesApiService });
259
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UITemplatesApiService, decorators: [{
260
+ type: Injectable
261
+ }], ctorParameters: function () { return [{ type: i1.BaseHttpService }]; } });
262
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktdGVtcGxhdGVzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi9zZXJ2aWNlcy91aS10ZW1wbGF0ZXMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFZTCxJQUFJLEdBQ0wsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7OztBQUdyRSxNQUFNLE9BQU8scUJBQXFCO0lBR2hDLFlBQW9CLGVBQWdDO1FBQWhDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUZuQyxlQUFVLEdBQVcsY0FBYyxDQUFDO1FBSXJELG9CQUFlLEdBQUcsQ0FBQyxJQUFhLEVBQTRCLEVBQUU7WUFDNUQsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUM5QixJQUFJLElBQUksRUFBRTtnQkFDUixNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7YUFDdEM7WUFFRCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFlLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDdkYsQ0FBQyxDQUFDO1FBRUYsb0JBQWUsR0FBRyxDQUFDLFFBQXVCLEVBQTBCLEVBQUU7WUFDcEUsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBYTtnQkFDMUMsTUFB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LFdBQVcsY0FBYztnQkFDN0UsSUFBSSxFQUFFLFFBQVE7YUFDZixDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7SUFyVHFELENBQUM7SUFnUHhELHVCQUF1QixDQUFDLFVBQWtCO1FBQ3hDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLFVBQVUsaUJBQWlCLENBQUM7SUFDM0QsQ0FBQztJQUVELHdCQUF3QixDQUFDLFVBQWtCLEVBQUUsSUFBVTtRQUNyRCxNQUFNLElBQUksR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRTNCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7WUFDakMsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLFVBQVUsWUFBWTtZQUNqRCxJQUFJLEVBQUUsSUFBSTtTQUNYLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxVQUFrQjtRQUN6QyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDO1lBQzlCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLElBQUksVUFBVSxZQUFZO1NBQ2xELENBQUMsQ0FBQztJQUNMLENBQUM7O21IQXZRVSxxQkFBcUI7dUhBQXJCLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEJhc2VIdHRwU2VydmljZSxcbiAgQ29tcG9uZW50QXR0YWNobWVudHMsXG4gIENvbXBvbmVudFN0b3J5LFxuICBDb21wb25lbnRTdG9yeUF0dGFjaG1lbnRzLFxuICBFeHByZXNzaW9uLFxuICBOZXdDb21wb25lbnRTdG9yeSxcbiAgTmV3VGVtcGxhdGVDb21wb25lbnQsXG4gIE5ld1VJVGVtcGxhdGUsXG4gIFRlbXBsYXRlQXR0YWNobWVudFR5cGUsXG4gIFRlbXBsYXRlQ29tcG9uZW50LFxuICBVSVRlbXBsYXRlLFxuICBVVUlELFxufSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmb3JrSm9pbiwgbWFwLCBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBVSUNvbXBvbmVudFN0b3J5RFRPIH0gZnJvbSAnLi4vdHlwZXMvdWktdGVtcGxhdGUtZHRvLnR5cGVzJztcbmltcG9ydCB7IGZyb21VSUNvbXBvbmVudFN0b3J5RFRPIH0gZnJvbSAnLi4vdXRpbHMvdWktdGVtcGxhdGUudXRpbHMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVUlUZW1wbGF0ZXNBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlVXJsOiBzdHJpbmcgPSAnL3VpdGVtcGxhdGVzJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJhc2VIdHRwU2VydmljZTogQmFzZUh0dHBTZXJ2aWNlKSB7fVxuXG4gIGZldGNoVGVtcGxhdGVzJCA9IChuYW1lPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxVSVRlbXBsYXRlW10+ID0+IHtcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcbiAgICBpZiAobmFtZSkge1xuICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgnbmFtZScsIG5hbWUpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGk8VUlUZW1wbGF0ZVtdPih7IHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfWAsIHBhcmFtcyB9KTtcbiAgfTtcblxuICBjcmVhdGVUZW1wbGF0ZSQgPSAodGVtcGxhdGU6IE5ld1VJVGVtcGxhdGUpOiBPYnNlcnZhYmxlPFVJVGVtcGxhdGU+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpPFVJVGVtcGxhdGU+KHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9YCxcbiAgICAgIGJvZHk6IHRlbXBsYXRlLFxuICAgIH0pO1xuICB9O1xuXG4gIHVwZGF0ZVRlbXBsYXRlJCA9ICh0ZW1wbGF0ZTogVUlUZW1wbGF0ZSk6IE9ic2VydmFibGU8VUlUZW1wbGF0ZT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGk8VUlUZW1wbGF0ZT4oe1xuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke3RlbXBsYXRlLmlkfWAsXG4gICAgICBib2R5OiB0ZW1wbGF0ZSxcbiAgICB9KTtcbiAgfTtcblxuICBkdXBsaWNhdGVUZW1wbGF0ZSQgPSAodGVtcGxhdGU6IE5ld1VJVGVtcGxhdGUpOiBPYnNlcnZhYmxlPHN0cmluZz4gPT4ge1xuICAgIC8vIFRPRE86IGludGVncmF0ZSB3aXRoIEJFXG4gICAgcmV0dXJuIG9mKFVVSUQuVVVJRCgpKTtcbiAgfTtcblxuICByZW1vdmVUZW1wbGF0ZSQgPSAoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2lkfWAsXG4gICAgfSk7XG4gIH07XG5cbiAgcmVzdG9yZVRlbXBsYXRlJCA9IChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaSh7XG4gICAgICBtZXRob2Q6ICdwYXRjaCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtpZH1gLFxuICAgIH0pO1xuICB9O1xuXG4gIHNlYXJjaFRlbXBsYXRlcyQgPSAoZGF0YTogeyBwYXJhbXM/OiBEaWN0aW9uYXJ5PHN0cmluZz47IGV4cHJlc3Npb24/OiBFeHByZXNzaW9uIH0pOiBPYnNlcnZhYmxlPFVJVGVtcGxhdGVbXT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vc2VhcmNoYCxcbiAgICAgIHBhcmFtczogZGF0YS5wYXJhbXMsXG4gICAgICBib2R5OiBkYXRhLmV4cHJlc3Npb24sXG4gICAgfSk7XG4gIH07XG5cbiAgZmV0Y2hDb21wb25lbnRzJCA9ICh0ZW1wbGF0ZUlkOiBzdHJpbmcsIG5hbWU/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRlbXBsYXRlQ29tcG9uZW50W10+ID0+IHtcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcbiAgICBpZiAobmFtZSkge1xuICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgnbmFtZScsIG5hbWUpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGk8VGVtcGxhdGVDb21wb25lbnRbXT4oe1xuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7dGVtcGxhdGVJZH0vY29tcG9uZW50c2AsXG4gICAgICBwYXJhbXMsXG4gICAgfSk7XG4gIH07XG5cbiAgZmV0Y2hDb21wb25lbnQkID0gKHRlbXBsYXRlSWQ6IHN0cmluZywgY29tcG9uZW50SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8VGVtcGxhdGVDb21wb25lbnQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpPFRlbXBsYXRlQ29tcG9uZW50Pih7XG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHt0ZW1wbGF0ZUlkfS9jb21wb25lbnRzLyR7Y29tcG9uZW50SWR9YCxcbiAgICB9KTtcbiAgfTtcblxuICBjcmVhdGVDb21wb25lbnQkID0gKGNvbXBvbmVudDogTmV3VGVtcGxhdGVDb21wb25lbnQpOiBPYnNlcnZhYmxlPFRlbXBsYXRlQ29tcG9uZW50PiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaTxUZW1wbGF0ZUNvbXBvbmVudD4oe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHtjb21wb25lbnQudWlUZW1wbGF0ZUlkfS9jb21wb25lbnRzYCxcbiAgICAgIGJvZHk6IGNvbXBvbmVudCxcbiAgICB9KTtcbiAgfTtcblxuICB1cGRhdGVDb21wb25lbnQkID0gKGNvbXBvbmVudDogVGVtcGxhdGVDb21wb25lbnQpOiBPYnNlcnZhYmxlPFRlbXBsYXRlQ29tcG9uZW50PiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLmFwaTxUZW1wbGF0ZUNvbXBvbmVudD4oe1xuICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke2NvbXBvbmVudC51aVRlbXBsYXRlSWR9L2NvbXBvbmVudHMvJHtjb21wb25lbnQuaWR9YCxcbiAgICAgIGJvZHk6IGNvbXBvbmVudCxcbiAgICB9KTtcbiAgfTtcblxuICBkdXBsaWNhdGVDb21wb25lbnQkID0gKGNvbXBvbmVudDogTmV3VGVtcGxhdGVDb21wb25lbnQpOiBPYnNlcnZhYmxlPHN0cmluZz4gPT4ge1xuICAgIC8vIFRPRE86IGludGVncmF0ZSB3aXRoIEJFXG4gICAgcmV0dXJuIG9mKFVVSUQuVVVJRCgpKTtcbiAgfTtcblxuICByZW1vdmVDb21wb25lbnQkID0gKHRlbXBsYXRlSWQ6IHN0cmluZywgY29tcG9uZW50SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke3RlbXBsYXRlSWR9L2NvbXBvbmVudHMvJHtjb21wb25lbnRJZH1gLFxuICAgIH0pO1xuICB9O1xuXG4gIHJlc3RvcmVDb21wb25lbnQkID0gKHRlbXBsYXRlSWQ6IHN0cmluZywgY29tcG9uZW50SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7dGVtcGxhdGVJZH0vY29tcG9uZW50cy8ke2NvbXBvbmVudElkfWAsXG4gICAgfSk7XG4gIH07XG5cbiAgc2VhcmNoQ29tcG9uZW50cyQgPSAoXG4gICAgdGVtcGxhdGVJZDogc3RyaW5nLFxuICAgIGRhdGE6IHsgcGFyYW1zPzogRGljdGlvbmFyeTxzdHJpbmc+OyBleHByZXNzaW9uPzogRXhwcmVzc2lvbiB9LFxuICApOiBPYnNlcnZhYmxlPFRlbXBsYXRlQ29tcG9uZW50W10+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7dGVtcGxhdGVJZH0vY29tcG9uZW50cy9zZWFyY2hgLFxuICAgICAgcGFyYW1zOiBkYXRhLnBhcmFtcyxcbiAgICAgIGJvZHk6IGRhdGEuZXhwcmVzc2lvbixcbiAgICB9KTtcbiAgfTtcblxuICBmZXRjaFN0b3J5QXR0YWNobWVudCA9IChcbiAgICB0ZW1wbGF0ZUlkOiBzdHJpbmcsXG4gICAgY29tcG9uZW50SWQ6IHN0cmluZyxcbiAgICBzdG9yeUlkOiBzdHJpbmcsXG4gICAgdHlwZTogVGVtcGxhdGVBdHRhY2htZW50VHlwZSxcbiAgKTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2VcbiAgICAgIC5hcGk8c3RyaW5nPih7XG4gICAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke3RlbXBsYXRlSWR9L2NvbXBvbmVudHMvJHtjb21wb25lbnRJZH0vc3Rvcmllcy8ke3N0b3J5SWR9L2F0dGFjaG1lbnRzLyR7dHlwZX0vZmlsZWAsXG4gICAgICAgIHJlc3BvbnNlVHlwZTogJ3RleHQnLFxuICAgICAgfSlcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IoKCkgPT4gb2YoJycpKSk7XG4gIH07XG5cbiAgcHJpdmF0ZSBjb252ZXJ0VG9Db21wb25lbnRTdG9yeSQgPSAoXG4gICAgdGVtcGxhdGVJZDogc3RyaW5nLFxuICAgIGNvbXBvbmVudElkOiBzdHJpbmcsXG4gICAgc3RvcnlEdG86IFVJQ29tcG9uZW50U3RvcnlEVE8sXG4gICk6IE9ic2VydmFibGU8Q29tcG9uZW50U3Rvcnk+ID0+IHtcbiAgICByZXR1cm4gZm9ya0pvaW4oW1xuICAgICAgc3RvcnlEdG8udGVtcGxhdGVIdG1sSWQgPyB0aGlzLmZldGNoU3RvcnlBdHRhY2htZW50KHRlbXBsYXRlSWQsIGNvbXBvbmVudElkLCBzdG9yeUR0by5pZCwgJ2h0bWwnKSA6IG9mKHVuZGVmaW5lZCksXG4gICAgICBzdG9yeUR0by5zY3JpcHRKc0lkID8gdGhpcy5mZXRjaFN0b3J5QXR0YWNobWVudCh0ZW1wbGF0ZUlkLCBjb21wb25lbnRJZCwgc3RvcnlEdG8uaWQsICdqcycpIDogb2YodW5kZWZpbmVkKSxcbiAgICAgIHN0b3J5RHRvLnN0eWxlQ3NzSWQgPyB0aGlzLmZldGNoU3RvcnlBdHRhY2htZW50KHRlbXBsYXRlSWQsIGNvbXBvbmVudElkLCBzdG9yeUR0by5pZCwgJ2NzcycpIDogb2YodW5kZWZpbmVkKSxcbiAgICAgIHN0b3J5RHRvLnNlY3Rpb25Kc29uSWQgPyB0aGlzLmZldGNoU3RvcnlBdHRhY2htZW50KHRlbXBsYXRlSWQsIGNvbXBvbmVudElkLCBzdG9yeUR0by5pZCwgJ2pzb24nKSA6IG9mKHVuZGVmaW5lZCksXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW2h0bWwsIGpzLCBjc3MsIGpzb25dKSA9PiAoeyBodG1sLCBqcywgY3NzLCBqc29uIH0pKSxcbiAgICAgIG1hcChhdHRhY2htZW50cyA9PiBmcm9tVUlDb21wb25lbnRTdG9yeURUTyhzdG9yeUR0bywgYXR0YWNobWVudHMpKSxcbiAgICApO1xuICB9O1xuXG4gIGZldGNoU3RvcmllcyQgPSAodGVtcGxhdGVJZDogc3RyaW5nLCBjb21wb25lbnRJZDogc3RyaW5nLCBuYW1lPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxDb21wb25lbnRTdG9yeVtdPiA9PiB7XG4gICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG4gICAgaWYgKG5hbWUpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ25hbWUnLCBuYW1lKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2VcbiAgICAgIC5hcGk8VUlDb21wb25lbnRTdG9yeURUT1tdPih7XG4gICAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke3RlbXBsYXRlSWR9L2NvbXBvbmVudHMvJHtjb21wb25lbnRJZH0vc3Rvcmllc2AsXG4gICAgICAgIHBhcmFtcyxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKGR0b3MgPT4ge1xuICAgICAgICAgIGlmICghZHRvcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiBvZihbXSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBmb3JrSm9pbihkdG9zLm1hcChkdG8gPT4gdGhpcy5jb252ZXJ0VG9Db21wb25lbnRTdG9yeSQodGVtcGxhdGVJZCwgY29tcG9uZW50SWQsIGR0bykpKTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9O1xuXG4gIGZldGNoU3RvcnkkID0gKHRlbXBsYXRlSWQ6IHN0cmluZywgY29tcG9uZW50SWQ6IHN0cmluZywgc3RvcnlJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxDb21wb25lbnRTdG9yeT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZVxuICAgICAgLmFwaTxVSUNvbXBvbmVudFN0b3J5RFRPPih7XG4gICAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke3RlbXBsYXRlSWR9L2NvbXBvbmVudHMvJHtjb21wb25lbnRJZH0vc3Rvcmllcy8ke3N0b3J5SWR9YCxcbiAgICAgIH0pXG4gICAgICAucGlwZShzd2l0Y2hNYXAoZHRvID0+IHRoaXMuY29udmVydFRvQ29tcG9uZW50U3RvcnkkKHRlbXBsYXRlSWQsIGNvbXBvbmVudElkLCBkdG8pKSk7XG4gIH07XG5cbiAgY3JlYXRlQ29tcG9uZW50U3RvcnkkID0gKHRlbXBsYXRlSWQ6IHN0cmluZywgc3Rvcnk6IE5ld0NvbXBvbmVudFN0b3J5KTogT2JzZXJ2YWJsZTxDb21wb25lbnRTdG9yeT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGk8Q29tcG9uZW50U3Rvcnk+KHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7dGVtcGxhdGVJZH0vY29tcG9uZW50cy8ke3N0b3J5LnVpQ29tcG9uZW50SWR9L3N0b3JpZXNgLFxuICAgICAgYm9keTogc3RvcnksXG4gICAgfSk7XG4gIH07XG5cbiAgdXBkYXRlQ29tcG9uZW50U3RvcnkkID0gKHRlbXBsYXRlSWQ6IHN0cmluZywgc3Rvcnk6IENvbXBvbmVudFN0b3J5KTogT2JzZXJ2YWJsZTxDb21wb25lbnRTdG9yeT4gPT4ge1xuICAgIGNvbnN0IHsgc2NyaXB0LCB0ZW1wbGF0ZSwgc3R5bGVzLCBzZWN0aW9uLCAuLi5yZXN0IH0gPSBzdG9yeTtcblxuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZVxuICAgICAgLmFwaTxVSUNvbXBvbmVudFN0b3J5RFRPPih7XG4gICAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke3RlbXBsYXRlSWR9L2NvbXBvbmVudHMvJHtzdG9yeS51aUNvbXBvbmVudElkfS9zdG9yaWVzLyR7c3RvcnkuaWR9YCxcbiAgICAgICAgYm9keTogcmVzdCxcbiAgICAgIH0pXG4gICAgICAucGlwZShtYXAoZHRvID0+IGZyb21VSUNvbXBvbmVudFN0b3J5RFRPKGR0bywgeyBodG1sOiB0ZW1wbGF0ZSwganM6IHNjcmlwdCwgY3NzOiBzdHlsZXMsIGpzb246IHNlY3Rpb24gfSkpKTtcbiAgfTtcblxuICBkZWxldGVDb21wb25lbnRTdG9yeSQgPSAodGVtcGxhdGVJZDogc3RyaW5nLCBjb21wb25lbnRJZDogc3RyaW5nLCBzdG9yeUlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UuYXBpKHtcbiAgICAgIG1ldGhvZDogJ2RlbGV0ZScsXG4gICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHt0ZW1wbGF0ZUlkfS9jb21wb25lbnRzLyR7Y29tcG9uZW50SWR9L3N0b3JpZXMvJHtzdG9yeUlkfWAsXG4gICAgfSk7XG4gIH07XG5cbiAgcmVzdG9yZUNvbXBvbmVudFN0b3J5JCA9ICh0ZW1wbGF0ZUlkOiBzdHJpbmcsIGNvbXBvbmVudElkOiBzdHJpbmcsIHN0b3J5SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAncGF0Y2gnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7dGVtcGxhdGVJZH0vY29tcG9uZW50cy8ke2NvbXBvbmVudElkfS9zdG9yaWVzLyR7c3RvcnlJZH1gLFxuICAgIH0pO1xuICB9O1xuXG4gIHVwbG9hZFN0b3J5QXR0YWNobWVudHMkID0gKFxuICAgIHRlbXBsYXRlSWQ6IHN0cmluZyxcbiAgICBjb21wb25lbnRJZDogc3RyaW5nLFxuICAgIHN0b3J5SWQ6IHN0cmluZyxcbiAgICBhdHRhY2htZW50czogQ29tcG9uZW50U3RvcnlBdHRhY2htZW50cyxcbiAgKTogT2JzZXJ2YWJsZTx2b2lkPiA9PiB7XG4gICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBpZiAoYXR0YWNobWVudHMuaHRtbCAhPSBudWxsKSB7XG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2h0bWwnLCBuZXcgQmxvYihbYXR0YWNobWVudHMuaHRtbF0pLCAnc3RvcnktdGVtcGxhdGUuaHRtbCcpO1xuICAgIH1cbiAgICBpZiAoYXR0YWNobWVudHMuY3NzICE9IG51bGwpIHtcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnY3NzJywgbmV3IEJsb2IoW2F0dGFjaG1lbnRzLmNzc10pLCAnc3Rvcnktc3R5bGVzLmNzcycpO1xuICAgIH1cbiAgICBpZiAoYXR0YWNobWVudHMuanMgIT0gbnVsbCkge1xuICAgICAgZm9ybURhdGEuYXBwZW5kKCdqcycsIG5ldyBCbG9iKFthdHRhY2htZW50cy5qc10pLCAnc3Rvcnktc2NyaXB0LmpzJyk7XG4gICAgfVxuICAgIGlmIChhdHRhY2htZW50cy5qc29uICE9IG51bGwpIHtcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnanNvbicsIG5ldyBCbG9iKFthdHRhY2htZW50cy5qc29uXSksICdzdG9yeS1zZWN0aW9uLmpzb24nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2UudXBsb2FkKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiBgJHt0aGlzLnNlcnZpY2VVcmx9LyR7dGVtcGxhdGVJZH0vY29tcG9uZW50cy8ke2NvbXBvbmVudElkfS9zdG9yaWVzLyR7c3RvcnlJZH0vYXR0YWNobWVudHNgLFxuICAgICAgYm9keTogZm9ybURhdGEsXG4gICAgfSk7XG4gIH07XG5cbiAgZ2V0VGVtcGxhdGVUaHVtYm5haWxVcmwodGVtcGxhdGVJZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuc2VydmljZVVybH0vJHt0ZW1wbGF0ZUlkfS90aHVtYm5haWwvZmlsZWA7XG4gIH1cblxuICBhdHRhY2hUZW1wbGF0ZVRodW1ibmFpbCQodGVtcGxhdGVJZDogc3RyaW5nLCBmaWxlOiBGaWxlKSB7XG4gICAgY29uc3QgZGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGRhdGEuYXBwZW5kKCd0aHVtYicsIGZpbGUpO1xuXG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLnVwbG9hZCh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke3RlbXBsYXRlSWR9L3RodW1ibmFpbGAsXG4gICAgICBib2R5OiBkYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgcmVtb3ZlVGVtcGxhdGVUaHVtYm5haWwkKHRlbXBsYXRlSWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmJhc2VIdHRwU2VydmljZS5hcGkoe1xuICAgICAgbWV0aG9kOiAnZGVsZXRlJyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke3RlbXBsYXRlSWR9L3RodW1ibmFpbGAsXG4gICAgfSk7XG4gIH1cblxuICBmZXRjaENvbXBvbmVudEF0dGFjaG1lbnRzJCA9ICh0ZW1wbGF0ZUlkOiBzdHJpbmcsIGNvbXBvbmVudDogVGVtcGxhdGVDb21wb25lbnQpOiBPYnNlcnZhYmxlPENvbXBvbmVudEF0dGFjaG1lbnRzPiA9PiB7XG4gICAgcmV0dXJuIGZvcmtKb2luKFtcbiAgICAgIGNvbXBvbmVudC50ZW1wbGF0ZUh0bWxJZCA/IHRoaXMuZmV0Y2hDb21wb25lbnRBdHRhY2htZW50RmlsZSQodGVtcGxhdGVJZCwgY29tcG9uZW50LmlkLCAnaHRtbCcpIDogb2YodW5kZWZpbmVkKSxcbiAgICAgIGNvbXBvbmVudC5zY3JpcHRKc0lkID8gdGhpcy5mZXRjaENvbXBvbmVudEF0dGFjaG1lbnRGaWxlJCh0ZW1wbGF0ZUlkLCBjb21wb25lbnQuaWQsICdqcycpIDogb2YodW5kZWZpbmVkKSxcbiAgICAgIGNvbXBvbmVudC5zdHlsZUNzc0lkID8gdGhpcy5mZXRjaENvbXBvbmVudEF0dGFjaG1lbnRGaWxlJCh0ZW1wbGF0ZUlkLCBjb21wb25lbnQuaWQsICdjc3MnKSA6IG9mKHVuZGVmaW5lZCksXG4gICAgICBjb21wb25lbnQucHJvcGVydGllc0pzb25JZCA/IHRoaXMuZmV0Y2hDb21wb25lbnRBdHRhY2htZW50RmlsZSQodGVtcGxhdGVJZCwgY29tcG9uZW50LmlkLCAnanNvbicpIDogb2YodW5kZWZpbmVkKSxcbiAgICBdKS5waXBlKG1hcCgoW2h0bWwsIGpzLCBjc3MsIGpzb25dKSA9PiAoeyBodG1sLCBqcywgY3NzLCBqc29uIH0pKSk7XG4gIH07XG5cbiAgcHJpdmF0ZSBmZXRjaENvbXBvbmVudEF0dGFjaG1lbnRGaWxlJCA9IChcbiAgICB0ZW1wbGF0ZUlkOiBzdHJpbmcsXG4gICAgY29tcG9uZW50SWQ6IHN0cmluZyxcbiAgICBhdHRhY2htZW50VHlwZTogVGVtcGxhdGVBdHRhY2htZW50VHlwZSxcbiAgKTogT2JzZXJ2YWJsZTxzdHJpbmc+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5iYXNlSHR0cFNlcnZpY2VcbiAgICAgIC5hcGkoe1xuICAgICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgICB1cmw6IGAke3RoaXMuc2VydmljZVVybH0vJHt0ZW1wbGF0ZUlkfS9jb21wb25lbnRzLyR7Y29tcG9uZW50SWR9L2F0dGFjaG1lbnRzLyR7YXR0YWNobWVudFR5cGV9L2ZpbGVgLFxuICAgICAgICByZXNwb25zZVR5cGU6ICd0ZXh0JyxcbiAgICAgIH0pXG4gICAgICAucGlwZShjYXRjaEVycm9yKCgpID0+IG9mKCcnKSkpO1xuICB9O1xuXG4gIHVwbG9hZENvbXBvbmVudEF0dGFjaG1lbnRzJCA9IChcbiAgICB0ZW1wbGF0ZUlkOiBzdHJpbmcsXG4gICAgY29tcG9uZW50SWQ6IHN0cmluZyxcbiAgICBhdHRhY2htZW50czogQ29tcG9uZW50QXR0YWNobWVudHMsXG4gICk6IE9ic2VydmFibGU8dm9pZD4gPT4ge1xuICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgaWYgKGF0dGFjaG1lbnRzLmh0bWwgIT0gbnVsbCkge1xuICAgICAgZm9ybURhdGEuYXBwZW5kKCdodG1sJywgbmV3IEJsb2IoW2F0dGFjaG1lbnRzLmh0bWxdKSwgJ3RlbXBsYXRlLmh0bWwnKTtcbiAgICB9XG4gICAgaWYgKGF0dGFjaG1lbnRzLmNzcyAhPSBudWxsKSB7XG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2NzcycsIG5ldyBCbG9iKFthdHRhY2htZW50cy5jc3NdKSwgJ3N0eWxlcy5jc3MnKTtcbiAgICB9XG4gICAgaWYgKGF0dGFjaG1lbnRzLmpzICE9IG51bGwpIHtcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnanMnLCBuZXcgQmxvYihbYXR0YWNobWVudHMuanNdKSwgJ3NjcmlwdC5qcycpO1xuICAgIH1cbiAgICBpZiAoYXR0YWNobWVudHMuanNvbiAhPSBudWxsKSB7XG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2pzb24nLCBuZXcgQmxvYihbYXR0YWNobWVudHMuanNvbl0pLCAnc2VjdGlvbi5qc29uJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuYmFzZUh0dHBTZXJ2aWNlLnVwbG9hZCh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIHVybDogYCR7dGhpcy5zZXJ2aWNlVXJsfS8ke3RlbXBsYXRlSWR9L2NvbXBvbmVudHMvJHtjb21wb25lbnRJZH0vYXR0YWNobWVudHNgLFxuICAgICAgYm9keTogZm9ybURhdGEsXG4gICAgfSk7XG4gIH07XG59XG4iXX0=
@@ -0,0 +1,21 @@
1
+ export class AttributeDTO {
2
+ constructor(name, type, value, cfgStatus, id, scale) {
3
+ this.name = name;
4
+ this.type = type;
5
+ this.value = value;
6
+ this.cfgStatus = cfgStatus;
7
+ this.id = id;
8
+ this.scale = scale;
9
+ }
10
+ static fromDTO(dto) {
11
+ return {
12
+ id: dto.id,
13
+ name: dto.name,
14
+ type: dto.type,
15
+ scale: dto.scale,
16
+ value: dto.value,
17
+ cfgStatus: dto.cfgStatus,
18
+ };
19
+ }
20
+ }
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlLWR0by50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvdHlwZXMvYXR0cmlidXRlLWR0by50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sWUFBWTtJQVl2QixZQUNTLElBQVksRUFDWixJQUFZLEVBQ1osS0FBVSxFQUNWLFNBQWlCLEVBRWpCLEVBQVcsRUFDWCxLQUFjO1FBTmQsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixVQUFLLEdBQUwsS0FBSyxDQUFLO1FBQ1YsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUVqQixPQUFFLEdBQUYsRUFBRSxDQUFTO1FBQ1gsVUFBSyxHQUFMLEtBQUssQ0FBUztJQUNwQixDQUFDO0lBbkJKLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBaUI7UUFDOUIsT0FBTztZQUNMLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRTtZQUNWLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtZQUNkLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtZQUNkLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztZQUNoQixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7WUFDaEIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFzQjtTQUN0QyxDQUFDO0lBQ0osQ0FBQztDQVdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXR0cmlidXRlLCBDZmdTdGF0dXMgfSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgQXR0cmlidXRlRFRPIHtcbiAgc3RhdGljIGZyb21EVE8oZHRvOiBBdHRyaWJ1dGVEVE8pOiBBdHRyaWJ1dGUge1xuICAgIHJldHVybiB7XG4gICAgICBpZDogZHRvLmlkLFxuICAgICAgbmFtZTogZHRvLm5hbWUsXG4gICAgICB0eXBlOiBkdG8udHlwZSxcbiAgICAgIHNjYWxlOiBkdG8uc2NhbGUsXG4gICAgICB2YWx1ZTogZHRvLnZhbHVlLFxuICAgICAgY2ZnU3RhdHVzOiBkdG8uY2ZnU3RhdHVzIGFzIENmZ1N0YXR1cyxcbiAgICB9O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG5hbWU6IHN0cmluZyxcbiAgICBwdWJsaWMgdHlwZTogc3RyaW5nLFxuICAgIHB1YmxpYyB2YWx1ZTogYW55LFxuICAgIHB1YmxpYyBjZmdTdGF0dXM6IHN0cmluZyxcblxuICAgIHB1YmxpYyBpZD86IHN0cmluZyxcbiAgICBwdWJsaWMgc2NhbGU/OiBudW1iZXIsXG4gICkge31cbn1cbiJdfQ==
@@ -0,0 +1,45 @@
1
+ import { PriceAdjustmentDTO } from './price-adjustment-dto.types';
2
+ export class ChargeGroupItemDTO {
3
+ constructor(chargeType, chargeMethod, properties, id, chargeTypeDisplayValue, frequencyUnit, frequencyDuration, currency, sellingTerm, netPrice, listPrice, netUnitPrice, listUnitPrice, cost, priceAdjustment, priceWaterfalls, enablePriceAdjustment) {
4
+ this.chargeType = chargeType;
5
+ this.chargeMethod = chargeMethod;
6
+ this.properties = properties;
7
+ this.id = id;
8
+ this.chargeTypeDisplayValue = chargeTypeDisplayValue;
9
+ this.frequencyUnit = frequencyUnit;
10
+ this.frequencyDuration = frequencyDuration;
11
+ this.currency = currency;
12
+ this.sellingTerm = sellingTerm;
13
+ this.netPrice = netPrice;
14
+ this.listPrice = listPrice;
15
+ this.netUnitPrice = netUnitPrice;
16
+ this.listUnitPrice = listUnitPrice;
17
+ this.cost = cost;
18
+ this.priceAdjustment = priceAdjustment;
19
+ this.priceWaterfalls = priceWaterfalls;
20
+ this.enablePriceAdjustment = enablePriceAdjustment;
21
+ }
22
+ static fromDTO(dto) {
23
+ var _a;
24
+ return {
25
+ id: dto.id,
26
+ chargeType: dto.chargeType,
27
+ chargeTypeDisplayValue: dto.chargeTypeDisplayValue,
28
+ chargeMethod: dto.chargeMethod,
29
+ frequencyUnit: dto.frequencyUnit,
30
+ frequencyDuration: dto.frequencyDuration,
31
+ currency: dto.currency,
32
+ sellingTerm: dto.sellingTerm,
33
+ netPrice: dto.netPrice,
34
+ listPrice: dto.listPrice,
35
+ netUnitPrice: dto.netUnitPrice,
36
+ listUnitPrice: dto.listUnitPrice,
37
+ cost: dto.cost,
38
+ priceAdjustment: dto.priceAdjustment && PriceAdjustmentDTO.fromDTO(dto.priceAdjustment),
39
+ priceWaterfalls: (_a = dto.priceWaterfalls) === null || _a === void 0 ? void 0 : _a.map(PriceAdjustmentDTO.fromDTO),
40
+ enablePriceAdjustment: dto.enablePriceAdjustment,
41
+ properties: dto.properties,
42
+ };
43
+ }
44
+ }
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcmdlLWdyb3VwLWl0ZW0tZHRvLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi90eXBlcy9jaGFyZ2UtZ3JvdXAtaXRlbS1kdG8udHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFbEUsTUFBTSxPQUFPLGtCQUFrQjtJQXVCN0IsWUFDUyxVQUFrQixFQUNsQixZQUFvQixFQUNwQixVQUE4QixFQUU5QixFQUFXLEVBQ1gsc0JBQStCLEVBRS9CLGFBQXNCLEVBQ3RCLGlCQUEwQixFQUUxQixRQUFpQixFQUNqQixXQUFvQixFQUNwQixRQUFpQixFQUNqQixTQUFrQixFQUNsQixZQUFxQixFQUNyQixhQUFzQixFQUN0QixJQUFhLEVBRWIsZUFBb0MsRUFDcEMsZUFBc0MsRUFFdEMscUJBQStCO1FBckIvQixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ2xCLGlCQUFZLEdBQVosWUFBWSxDQUFRO1FBQ3BCLGVBQVUsR0FBVixVQUFVLENBQW9CO1FBRTlCLE9BQUUsR0FBRixFQUFFLENBQVM7UUFDWCwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQVM7UUFFL0Isa0JBQWEsR0FBYixhQUFhLENBQVM7UUFDdEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFTO1FBRTFCLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsZ0JBQVcsR0FBWCxXQUFXLENBQVM7UUFDcEIsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixjQUFTLEdBQVQsU0FBUyxDQUFTO1FBQ2xCLGlCQUFZLEdBQVosWUFBWSxDQUFTO1FBQ3JCLGtCQUFhLEdBQWIsYUFBYSxDQUFTO1FBQ3RCLFNBQUksR0FBSixJQUFJLENBQVM7UUFFYixvQkFBZSxHQUFmLGVBQWUsQ0FBcUI7UUFDcEMsb0JBQWUsR0FBZixlQUFlLENBQXVCO1FBRXRDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBVTtJQUNyQyxDQUFDO0lBN0NKLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBdUI7O1FBQ3BDLE9BQU87WUFDTCxFQUFFLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDVixVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVU7WUFDMUIsc0JBQXNCLEVBQUUsR0FBRyxDQUFDLHNCQUFzQjtZQUNsRCxZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQTRCO1lBQzlDLGFBQWEsRUFBRSxHQUFHLENBQUMsYUFBOEI7WUFDakQsaUJBQWlCLEVBQUUsR0FBRyxDQUFDLGlCQUFpQjtZQUN4QyxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7WUFDdEIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1lBQzVCLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtZQUN0QixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7WUFDeEIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1lBQzlCLGFBQWEsRUFBRSxHQUFHLENBQUMsYUFBYTtZQUNoQyxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7WUFDZCxlQUFlLEVBQUUsR0FBRyxDQUFDLGVBQWUsSUFBSSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQztZQUN2RixlQUFlLEVBQUUsTUFBQSxHQUFHLENBQUMsZUFBZSwwQ0FBRSxHQUFHLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDO1lBQ3JFLHFCQUFxQixFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7WUFDaEQsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1NBQzNCLENBQUM7SUFDSixDQUFDO0NBMEJGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhcmdlR3JvdXBJdGVtLCBDaGFyZ2VNZXRob2QsIEZyZXF1ZW5jeVVuaXQgfSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBQcmljZUFkanVzdG1lbnREVE8gfSBmcm9tICcuL3ByaWNlLWFkanVzdG1lbnQtZHRvLnR5cGVzJztcblxuZXhwb3J0IGNsYXNzIENoYXJnZUdyb3VwSXRlbURUTyB7XG4gIHN0YXRpYyBmcm9tRFRPKGR0bzogQ2hhcmdlR3JvdXBJdGVtRFRPKTogQ2hhcmdlR3JvdXBJdGVtIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IGR0by5pZCxcbiAgICAgIGNoYXJnZVR5cGU6IGR0by5jaGFyZ2VUeXBlLFxuICAgICAgY2hhcmdlVHlwZURpc3BsYXlWYWx1ZTogZHRvLmNoYXJnZVR5cGVEaXNwbGF5VmFsdWUsXG4gICAgICBjaGFyZ2VNZXRob2Q6IGR0by5jaGFyZ2VNZXRob2QgYXMgQ2hhcmdlTWV0aG9kLFxuICAgICAgZnJlcXVlbmN5VW5pdDogZHRvLmZyZXF1ZW5jeVVuaXQgYXMgRnJlcXVlbmN5VW5pdCxcbiAgICAgIGZyZXF1ZW5jeUR1cmF0aW9uOiBkdG8uZnJlcXVlbmN5RHVyYXRpb24sXG4gICAgICBjdXJyZW5jeTogZHRvLmN1cnJlbmN5LFxuICAgICAgc2VsbGluZ1Rlcm06IGR0by5zZWxsaW5nVGVybSxcbiAgICAgIG5ldFByaWNlOiBkdG8ubmV0UHJpY2UsXG4gICAgICBsaXN0UHJpY2U6IGR0by5saXN0UHJpY2UsXG4gICAgICBuZXRVbml0UHJpY2U6IGR0by5uZXRVbml0UHJpY2UsXG4gICAgICBsaXN0VW5pdFByaWNlOiBkdG8ubGlzdFVuaXRQcmljZSxcbiAgICAgIGNvc3Q6IGR0by5jb3N0LFxuICAgICAgcHJpY2VBZGp1c3RtZW50OiBkdG8ucHJpY2VBZGp1c3RtZW50ICYmIFByaWNlQWRqdXN0bWVudERUTy5mcm9tRFRPKGR0by5wcmljZUFkanVzdG1lbnQpLFxuICAgICAgcHJpY2VXYXRlcmZhbGxzOiBkdG8ucHJpY2VXYXRlcmZhbGxzPy5tYXAoUHJpY2VBZGp1c3RtZW50RFRPLmZyb21EVE8pLFxuICAgICAgZW5hYmxlUHJpY2VBZGp1c3RtZW50OiBkdG8uZW5hYmxlUHJpY2VBZGp1c3RtZW50LFxuICAgICAgcHJvcGVydGllczogZHRvLnByb3BlcnRpZXMsXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBjaGFyZ2VUeXBlOiBzdHJpbmcsXG4gICAgcHVibGljIGNoYXJnZU1ldGhvZDogc3RyaW5nLFxuICAgIHB1YmxpYyBwcm9wZXJ0aWVzOiBEaWN0aW9uYXJ5PHN0cmluZz4sXG5cbiAgICBwdWJsaWMgaWQ/OiBzdHJpbmcsXG4gICAgcHVibGljIGNoYXJnZVR5cGVEaXNwbGF5VmFsdWU/OiBzdHJpbmcsXG5cbiAgICBwdWJsaWMgZnJlcXVlbmN5VW5pdD86IHN0cmluZyxcbiAgICBwdWJsaWMgZnJlcXVlbmN5RHVyYXRpb24/OiBudW1iZXIsXG5cbiAgICBwdWJsaWMgY3VycmVuY3k/OiBzdHJpbmcsXG4gICAgcHVibGljIHNlbGxpbmdUZXJtPzogbnVtYmVyLFxuICAgIHB1YmxpYyBuZXRQcmljZT86IG51bWJlcixcbiAgICBwdWJsaWMgbGlzdFByaWNlPzogbnVtYmVyLFxuICAgIHB1YmxpYyBuZXRVbml0UHJpY2U/OiBudW1iZXIsXG4gICAgcHVibGljIGxpc3RVbml0UHJpY2U/OiBudW1iZXIsXG4gICAgcHVibGljIGNvc3Q/OiBudW1iZXIsXG5cbiAgICBwdWJsaWMgcHJpY2VBZGp1c3RtZW50PzogUHJpY2VBZGp1c3RtZW50RFRPLFxuICAgIHB1YmxpYyBwcmljZVdhdGVyZmFsbHM/OiBQcmljZUFkanVzdG1lbnREVE9bXSxcblxuICAgIHB1YmxpYyBlbmFibGVQcmljZUFkanVzdG1lbnQ/OiBib29sZWFuLFxuICApIHt9XG59XG4iXX0=
@@ -0,0 +1,74 @@
1
+ import { PriceAdjustmentDTO } from './price-adjustment-dto.types';
2
+ export class ChargeItemDTO {
3
+ constructor(id, price, unitPrice, baseListPrice, baseListUnitPrice, listPrice, listUnitPrice, netPrice, netUnitPrice, chargeId, chargeType, chargeMethod, priceItemId, startDate, priceWaterfalls, quantity, properties, chargeTypeDisplayValue, arr, frequencyUnit, frequencyDuration, endDate, sellingTerm, currency, unitCost, cost, minUnitPrice, minPrice, enablePriceAdjustment, enableListPriceAdjustment, listPriceAdjustment, priceAdjustment) {
4
+ this.id = id;
5
+ this.price = price;
6
+ this.unitPrice = unitPrice;
7
+ this.baseListPrice = baseListPrice;
8
+ this.baseListUnitPrice = baseListUnitPrice;
9
+ this.listPrice = listPrice;
10
+ this.listUnitPrice = listUnitPrice;
11
+ this.netPrice = netPrice;
12
+ this.netUnitPrice = netUnitPrice;
13
+ this.chargeId = chargeId;
14
+ this.chargeType = chargeType;
15
+ this.chargeMethod = chargeMethod;
16
+ this.priceItemId = priceItemId;
17
+ this.startDate = startDate;
18
+ this.priceWaterfalls = priceWaterfalls;
19
+ this.quantity = quantity;
20
+ this.properties = properties;
21
+ this.chargeTypeDisplayValue = chargeTypeDisplayValue;
22
+ this.arr = arr;
23
+ this.frequencyUnit = frequencyUnit;
24
+ this.frequencyDuration = frequencyDuration;
25
+ this.endDate = endDate;
26
+ this.sellingTerm = sellingTerm;
27
+ this.currency = currency;
28
+ this.unitCost = unitCost;
29
+ this.cost = cost;
30
+ this.minUnitPrice = minUnitPrice;
31
+ this.minPrice = minPrice;
32
+ this.enablePriceAdjustment = enablePriceAdjustment;
33
+ this.enableListPriceAdjustment = enableListPriceAdjustment;
34
+ this.listPriceAdjustment = listPriceAdjustment;
35
+ this.priceAdjustment = priceAdjustment;
36
+ }
37
+ static fromDTO(dto) {
38
+ return {
39
+ id: dto.id,
40
+ price: dto.price,
41
+ unitPrice: dto.unitPrice,
42
+ baseListPrice: dto.baseListPrice,
43
+ baseListUnitPrice: dto.baseListUnitPrice,
44
+ listPrice: dto.listPrice,
45
+ listUnitPrice: dto.listUnitPrice,
46
+ netPrice: dto.netPrice,
47
+ netUnitPrice: dto.netUnitPrice,
48
+ chargeId: dto.chargeId,
49
+ chargeType: dto.chargeType,
50
+ chargeTypeDisplayValue: dto.chargeTypeDisplayValue,
51
+ chargeMethod: dto.chargeMethod,
52
+ priceItemId: dto.priceItemId,
53
+ startDate: dto.startDate,
54
+ endDate: dto.endDate,
55
+ priceWaterfalls: dto.priceWaterfalls.map(PriceAdjustmentDTO.fromDTO),
56
+ quantity: dto.quantity,
57
+ properties: dto.properties,
58
+ arr: dto.arr,
59
+ frequencyUnit: dto.frequencyUnit,
60
+ frequencyDuration: dto.frequencyDuration,
61
+ sellingTerm: dto.sellingTerm,
62
+ currency: dto.currency,
63
+ unitCost: dto.unitCost,
64
+ cost: dto.cost,
65
+ minUnitPrice: dto.minUnitPrice,
66
+ minPrice: dto.minPrice,
67
+ enablePriceAdjustment: dto.enablePriceAdjustment,
68
+ enableListPriceAdjustment: dto.enableListPriceAdjustment,
69
+ listPriceAdjustment: dto.listPriceAdjustment && PriceAdjustmentDTO.fromDTO(dto.listPriceAdjustment),
70
+ priceAdjustment: dto.priceAdjustment && PriceAdjustmentDTO.fromDTO(dto.priceAdjustment),
71
+ };
72
+ }
73
+ }
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcmdlLWl0ZW0tZHRvLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi90eXBlcy9jaGFyZ2UtaXRlbS1kdG8udHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFbEUsTUFBTSxPQUFPLGFBQWE7SUFzQ3hCLFlBQ1MsRUFBVSxFQUVWLEtBQWEsRUFDYixTQUFpQixFQUNqQixhQUFxQixFQUNyQixpQkFBeUIsRUFDekIsU0FBaUIsRUFDakIsYUFBcUIsRUFDckIsUUFBZ0IsRUFDaEIsWUFBb0IsRUFFcEIsUUFBZ0IsRUFDaEIsVUFBa0IsRUFDbEIsWUFBb0IsRUFFcEIsV0FBbUIsRUFDbkIsU0FBaUIsRUFDakIsZUFBcUMsRUFDckMsUUFBZ0IsRUFDaEIsVUFBOEIsRUFFOUIsc0JBQStCLEVBQy9CLEdBQVksRUFFWixhQUFzQixFQUN0QixpQkFBMEIsRUFDMUIsT0FBZ0IsRUFFaEIsV0FBb0IsRUFDcEIsUUFBaUIsRUFDakIsUUFBaUIsRUFDakIsSUFBYSxFQUViLFlBQXFCLEVBQ3JCLFFBQWlCLEVBRWpCLHFCQUErQixFQUMvQix5QkFBbUMsRUFDbkMsbUJBQXdDLEVBQ3hDLGVBQW9DO1FBdkNwQyxPQUFFLEdBQUYsRUFBRSxDQUFRO1FBRVYsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsa0JBQWEsR0FBYixhQUFhLENBQVE7UUFDckIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFRO1FBQ3pCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsa0JBQWEsR0FBYixhQUFhLENBQVE7UUFDckIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixpQkFBWSxHQUFaLFlBQVksQ0FBUTtRQUVwQixhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLGVBQVUsR0FB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QUFDO0lBQ0osQ0FBQztDQTRDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYXJnZUl0ZW0sIENoYXJnZU1ldGhvZCwgRnJlcXVlbmN5VW5pdCB9IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IFByaWNlQWRqdXN0bWVudERUTyB9IGZyb20gJy4vcHJpY2UtYWRqdXN0bWVudC1kdG8udHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgQ2hhcmdlSXRlbURUTyB7XG4gIHN0YXRpYyBmcm9tRFRPKGR0bzogQ2hhcmdlSXRlbURUTyk6IENoYXJnZUl0ZW0ge1xuICAgIHJldHVybiB7XG4gICAgICBpZDogZHRvLmlkLFxuICAgICAgcHJpY2U6IGR0by5wcmljZSxcbiAgICAgIHVuaXRQcmljZTogZHRvLnVuaXRQcmljZSxcbiAgICAgIGJhc2VMaXN0UHJpY2U6IGR0by5iYXNlTGlzdFByaWNlLFxuICAgICAgYmFzZUxpc3RVbml0UHJpY2U6IGR0by5iYXNlTGlzdFVuaXRQcmljZSxcbiAgICAgIGxpc3RQcmljZTogZHRvLmxpc3RQcmljZSxcbiAgICAgIGxpc3RVbml0UHJpY2U6IGR0by5saXN0VW5pdFByaWNlLFxuICAgICAgbmV0UHJpY2U6IGR0by5uZXRQcmljZSxcbiAgICAgIG5ldFVuaXRQcmljZTogZHRvLm5ldFVuaXRQcmljZSxcbiAgICAgIGNoYXJnZUlkOiBkdG8uY2hhcmdlSWQsXG4gICAgICBjaGFyZ2VUeXBlOiBkdG8uY2hhcmdlVHlwZSxcbiAgICAgIGNoYXJnZVR5cGVEaXNwbGF5VmFsdWU6IGR0by5jaGFyZ2VUeXBlRGlzcGxheVZhbHVlLFxuICAgICAgY2hhcmdlTWV0aG9kOiBkdG8uY2hhcmdlTWV0aG9kIGFzIENoYXJnZU1ldGhvZCxcbiAgICAgIHByaWNlSXRlbUlkOiBkdG8ucHJpY2VJdGVtSWQsXG4gICAgICBzdGFydERhdGU6IGR0by5zdGFydERhdGUsXG4gICAgICBlbmREYXRlOiBkdG8uZW5kRGF0ZSxcbiAgICAgIHByaWNlV2F0ZXJmYWxsczogZHRvLnByaWNlV2F0ZXJmYWxscy5tYXAoUHJpY2VBZGp1c3RtZW50RFRPLmZyb21EVE8pLFxuICAgICAgcXVhbnRpdHk6IGR0by5xdWFudGl0eSxcbiAgICAgIHByb3BlcnRpZXM6IGR0by5wcm9wZXJ0aWVzLFxuICAgICAgYXJyOiBkdG8uYXJyLFxuICAgICAgZnJlcXVlbmN5VW5pdDogZHRvLmZyZXF1ZW5jeVVuaXQgYXMgRnJlcXVlbmN5VW5pdCxcbiAgICAgIGZyZXF1ZW5jeUR1cmF0aW9uOiBkdG8uZnJlcXVlbmN5RHVyYXRpb24sXG4gICAgICBzZWxsaW5nVGVybTogZHRvLnNlbGxpbmdUZXJtLFxuICAgICAgY3VycmVuY3k6IGR0by5jdXJyZW5jeSxcbiAgICAgIHVuaXRDb3N0OiBkdG8udW5pdENvc3QsXG4gICAgICBjb3N0OiBkdG8uY29zdCxcbiAgICAgIG1pblVuaXRQcmljZTogZHRvLm1pblVuaXRQcmljZSxcbiAgICAgIG1pblByaWNlOiBkdG8ubWluUHJpY2UsXG4gICAgICBlbmFibGVQcmljZUFkanVzdG1lbnQ6IGR0by5lbmFibGVQcmljZUFkanVzdG1lbnQsXG4gICAgICBlbmFibGVMaXN0UHJpY2VBZGp1c3RtZW50OiBkdG8uZW5hYmxlTGlzdFByaWNlQWRqdXN0bWVudCxcbiAgICAgIGxpc3RQcmljZUFkanVzdG1lbnQ6IGR0by5saXN0UHJpY2VBZGp1c3RtZW50ICYmIFByaWNlQWRqdXN0bWVudERUTy5mcm9tRFRPKGR0by5saXN0UHJpY2VBZGp1c3RtZW50KSxcbiAgICAgIHByaWNlQWRqdXN0bWVudDogZHRvLnByaWNlQWRqdXN0bWVudCAmJiBQcmljZUFkanVzdG1lbnREVE8uZnJvbURUTyhkdG8ucHJpY2VBZGp1c3RtZW50KSxcbiAgICB9O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGlkOiBzdHJpbmcsXG5cbiAgICBwdWJsaWMgcHJpY2U6IG51bWJlcixcbiAgICBwdWJsaWMgdW5pdFByaWNlOiBudW1iZXIsXG4gICAgcHVibGljIGJhc2VMaXN0UHJpY2U6IG51bWJlcixcbiAgICBwdWJsaWMgYmFzZUxpc3RVbml0UHJpY2U6IG51bWJlcixcbiAgICBwdWJsaWMgbGlzdFByaWNlOiBudW1iZXIsXG4gICAgcHVibGljIGxpc3RVbml0UHJpY2U6IG51bWJlcixcbiAgICBwdWJsaWMgbmV0UHJpY2U6IG51bWJlcixcbiAgICBwdWJsaWMgbmV0VW5pdFByaWNlOiBudW1iZXIsXG5cbiAgICBwdWJsaWMgY2hhcmdlSWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgY2hhcmdlVHlwZTogc3RyaW5nLFxuICAgIHB1YmxpYyBjaGFyZ2VNZXRob2Q6IHN0cmluZyxcblxuICAgIHB1YmxpYyBwcmljZUl0ZW1JZDogc3RyaW5nLFxuICAgIHB1YmxpYyBzdGFydERhdGU6IHN0cmluZyxcbiAgICBwdWJsaWMgcHJpY2VXYXRlcmZhbGxzOiBQcmljZUFkanVzdG1lbnREVE9bXSxcbiAgICBwdWJsaWMgcXVhbnRpdHk6IG51bWJlcixcbiAgICBwdWJsaWMgcHJvcGVydGllczogRGljdGlvbmFyeTxzdHJpbmc+LFxuXG4gICAgcHVibGljIGNoYXJnZVR5cGVEaXNwbGF5VmFsdWU/OiBzdHJpbmcsXG4gICAgcHVibGljIGFycj86IG51bWJlcixcblxuICAgIHB1YmxpYyBmcmVxdWVuY3lVbml0Pzogc3RyaW5nLFxuICAgIHB1YmxpYyBmcmVxdWVuY3lEdXJhdGlvbj86IG51bWJlcixcbiAgICBwdWJsaWMgZW5kRGF0ZT86IHN0cmluZyxcblxuICAgIHB1YmxpYyBzZWxsaW5nVGVybT86IG51bWJlcixcbiAgICBwdWJsaWMgY3VycmVuY3k/OiBzdHJpbmcsXG4gICAgcHVibGljIHVuaXRDb3N0PzogbnVtYmVyLFxuICAgIHB1YmxpYyBjb3N0PzogbnVtYmVyLFxuXG4gICAgcHVibGljIG1pblVuaXRQcmljZT86IG51bWJlcixcbiAgICBwdWJsaWMgbWluUHJpY2U/OiBudW1iZXIsXG5cbiAgICBwdWJsaWMgZW5hYmxlUHJpY2VBZGp1c3RtZW50PzogYm9vbGVhbixcbiAgICBwdWJsaWMgZW5hYmxlTGlzdFByaWNlQWRqdXN0bWVudD86IGJvb2xlYW4sXG4gICAgcHVibGljIGxpc3RQcmljZUFkanVzdG1lbnQ/OiBQcmljZUFkanVzdG1lbnREVE8sXG4gICAgcHVibGljIHByaWNlQWRqdXN0bWVudD86IFByaWNlQWRqdXN0bWVudERUTyxcbiAgKSB7fVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvbmUtcmVxdWVzdC50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBpL3NyYy9saWIvdHlwZXMvY2xvbmUtcmVxdWVzdC50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBDbG9uZVJlcXVlc3Qge1xuICBpZDogc3RyaW5nO1xuICBwcm9wZXJ0aWVzVG9PdmVycmlkZTogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbn1cbiJdfQ==
@@ -0,0 +1,22 @@
1
+ export class ConfigurationSettingsDTO {
2
+ constructor(id, key, value) {
3
+ this.id = id;
4
+ this.key = key;
5
+ this.value = value;
6
+ }
7
+ static fromDTO(dto, key) {
8
+ return {
9
+ id: dto === null || dto === void 0 ? void 0 : dto.id,
10
+ key: (dto === null || dto === void 0 ? void 0 : dto.key) || key || '',
11
+ value: dto === null || dto === void 0 ? void 0 : dto.value,
12
+ };
13
+ }
14
+ static toDTO(data) {
15
+ return {
16
+ id: data.id,
17
+ key: data.key,
18
+ value: data.value,
19
+ };
20
+ }
21
+ }
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1zZXR0aW5ncy1kdG8udHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwaS9zcmMvbGliL3R5cGVzL2NvbmZpZ3VyYXRpb24tc2V0dGluZ3MtZHRvLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyx3QkFBd0I7SUFpQm5DLFlBQW1CLEVBQVUsRUFBUyxHQUFXLEVBQVMsS0FBYTtRQUFwRCxPQUFFLEdBQUYsRUFBRSxDQUFRO1FBQVMsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUFTLFVBQUssR0FBTCxLQUFLLENBQVE7SUFBRyxDQUFDO0lBaEIzRSxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQTZCLEVBQUUsR0FBWTtRQUN4RCxPQUFPO1lBQ0wsRUFBRSxFQUFFLEdBQUcsYUFBSCxHQUFHLHVCQUFILEdBQUcsQ0FBRSxFQUFFO1lBQ1gsR0FBRyxFQUFFLENBQUEsR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLEdBQUcsS0FBSSxHQUFHLElBQUksRUFBRTtZQUMxQixLQUFLLEVBQUUsR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLEtBQUs7U0FDbEIsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLElBQTJCO1FBQ3RDLE9BQU87WUFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDbEIsQ0FBQztJQUNKLENBQUM7Q0FHRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXR0aW5ncyB9IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uU2V0dGluZ3NEVE8ge1xuICBzdGF0aWMgZnJvbURUTyhkdG86IENvbmZpZ3VyYXRpb25TZXR0aW5nc0RUTywga2V5Pzogc3RyaW5nKTogQ29uZmlndXJhdGlvblNldHRpbmdzIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IGR0bz8uaWQsXG4gICAgICBrZXk6IGR0bz8ua2V5IHx8IGtleSB8fCAnJyxcbiAgICAgIHZhbHVlOiBkdG8/LnZhbHVlLFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgdG9EVE8oZGF0YTogQ29uZmlndXJhdGlvblNldHRpbmdzKTogQ29uZmlndXJhdGlvblNldHRpbmdzRFRPIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IGRhdGEuaWQsXG4gICAgICBrZXk6IGRhdGEua2V5LFxuICAgICAgdmFsdWU6IGRhdGEudmFsdWUsXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBpZDogc3RyaW5nLCBwdWJsaWMga2V5OiBzdHJpbmcsIHB1YmxpYyB2YWx1ZTogc3RyaW5nKSB7fVxufVxuIl19
@@ -0,0 +1,27 @@
1
+ import { RecommendedPriceDTO } from './recommended-price-dto.types';
2
+ export class DomainTypeDTO {
3
+ constructor(name, displayName, minCard, maxCard, recommendedPrices, properties, status, cardinality) {
4
+ this.name = name;
5
+ this.displayName = displayName;
6
+ this.minCard = minCard;
7
+ this.maxCard = maxCard;
8
+ this.recommendedPrices = recommendedPrices;
9
+ this.properties = properties;
10
+ this.status = status;
11
+ this.cardinality = cardinality;
12
+ }
13
+ static fromDTO(dto) {
14
+ var _a;
15
+ return {
16
+ name: dto.name,
17
+ displayName: dto.displayName,
18
+ minCard: dto.minCard,
19
+ maxCard: dto.maxCard,
20
+ recommendedPrices: (_a = dto.recommendedPrices) === null || _a === void 0 ? void 0 : _a.map(RecommendedPriceDTO.fromDTO),
21
+ properties: dto.properties,
22
+ status: dto.status,
23
+ cardinality: dto.cardinality,
24
+ };
25
+ }
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tYWluLXR5cGUtZHRvLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvc3JjL2xpYi90eXBlcy9kb21haW4tdHlwZS1kdG8udHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFcEUsTUFBTSxPQUFPLGFBQWE7SUFjeEIsWUFDUyxJQUFZLEVBQ1osV0FBbUIsRUFDbkIsT0FBZSxFQUNmLE9BQWUsRUFDZixpQkFBeUMsRUFDekMsVUFBK0IsRUFDL0IsTUFBZSxFQUNmLFdBQW9CO1FBUHBCLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUNuQixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBd0I7UUFDekMsZUFBVSxHQUFWLFVBQVUsQ0FBcUI7UUFDL0IsV0FBTSxHQUFOLE1BQU0sQ0FBUztRQUNmLGdCQUFXLEdBQVgsV0FBVyxDQUFTO0lBQzFCLENBQUM7SUF0QkosTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFrQjs7UUFDL0IsT0FBTztZQUNMLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtZQUNkLFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVztZQUM1QixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87WUFDcEIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1lBQ3BCLGlCQUFpQixFQUFFLE1BQUEsR0FBRyxDQUFDLGlCQUFpQiwwQ0FBRSxHQUFHLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDO1lBQzFFLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtZQUMxQixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07WUFDbEIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1NBQzdCLENBQUM7SUFDSixDQUFDO0NBWUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEb21haW5UeXBlIH0gZnJvbSAnQHZlbG9jZS9jb3JlJztcbmltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgUmVjb21tZW5kZWRQcmljZURUTyB9IGZyb20gJy4vcmVjb21tZW5kZWQtcHJpY2UtZHRvLnR5cGVzJztcblxuZXhwb3J0IGNsYXNzIERvbWFpblR5cGVEVE8ge1xuICBzdGF0aWMgZnJvbURUTyhkdG86IERvbWFpblR5cGVEVE8pOiBEb21haW5UeXBlIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmFtZTogZHRvLm5hbWUsXG4gICAgICBkaXNwbGF5TmFtZTogZHRvLmRpc3BsYXlOYW1lLFxuICAgICAgbWluQ2FyZDogZHRvLm1pbkNhcmQsXG4gICAgICBtYXhDYXJkOiBkdG8ubWF4Q2FyZCxcbiAgICAgIHJlY29tbWVuZGVkUHJpY2VzOiBkdG8ucmVjb21tZW5kZWRQcmljZXM/Lm1hcChSZWNvbW1lbmRlZFByaWNlRFRPLmZyb21EVE8pLFxuICAgICAgcHJvcGVydGllczogZHRvLnByb3BlcnRpZXMsXG4gICAgICBzdGF0dXM6IGR0by5zdGF0dXMsXG4gICAgICBjYXJkaW5hbGl0eTogZHRvLmNhcmRpbmFsaXR5LFxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nLFxuICAgIHB1YmxpYyBkaXNwbGF5TmFtZTogc3RyaW5nLFxuICAgIHB1YmxpYyBtaW5DYXJkOiBudW1iZXIsXG4gICAgcHVibGljIG1heENhcmQ6IG51bWJlcixcbiAgICBwdWJsaWMgcmVjb21tZW5kZWRQcmljZXM/OiBSZWNvbW1lbmRlZFByaWNlRFRPW10sXG4gICAgcHVibGljIHByb3BlcnRpZXM/OiBEaWN0aW9uYXJ5PHN0cmluZz4sXG4gICAgcHVibGljIHN0YXR1cz86IHN0cmluZyxcbiAgICBwdWJsaWMgY2FyZGluYWxpdHk/OiBudW1iZXIsXG4gICkge31cbn1cbiJdfQ==