@gsp-svc/formdoc-upload 0.2.20 → 1.1.1

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 (127) hide show
  1. package/bundles/gsp-svc-formdoc-upload.umd.js +2743 -2632
  2. package/bundles/gsp-svc-formdoc-upload.umd.js.map +1 -1
  3. package/bundles/gsp-svc-formdoc-upload.umd.min.js +1 -1
  4. package/bundles/gsp-svc-formdoc-upload.umd.min.js.map +1 -1
  5. package/esm2015/gsp-svc-formdoc-upload.js +9 -9
  6. package/esm2015/lib/formdoc-upload.component.js +21 -21
  7. package/esm2015/lib/formdoc-upload.module.js +23 -23
  8. package/esm2015/lib/formdoc-upload.service.js +17 -17
  9. package/esm2015/lib/i18n/language.resource.js +156 -148
  10. package/esm2015/lib/local.pipe.js +48 -48
  11. package/esm2015/lib/upload/download.service.js +153 -153
  12. package/esm2015/lib/upload/entity/changeinstancerequest.js +13 -13
  13. package/esm2015/lib/upload/entity/completemultiuploadrequest.js +21 -21
  14. package/esm2015/lib/upload/entity/copyfilerequest.js +15 -15
  15. package/esm2015/lib/upload/entity/doctype.js +25 -23
  16. package/esm2015/lib/upload/entity/droplistentity.js +13 -13
  17. package/esm2015/lib/upload/entity/expropertyrequest.js +15 -15
  18. package/esm2015/lib/upload/entity/extensionstoragefileinfo.js +13 -13
  19. package/esm2015/lib/upload/entity/fileinfo.js +49 -47
  20. package/esm2015/lib/upload/entity/filestate.js +13 -13
  21. package/esm2015/lib/upload/entity/gspdocmetaproperty.js +19 -19
  22. package/esm2015/lib/upload/entity/gspdocsecuritybaseinfo.js +15 -15
  23. package/esm2015/lib/upload/entity/gspformdocinfo.js +25 -25
  24. package/esm2015/lib/upload/entity/gspformdocoperateentity.js +13 -13
  25. package/esm2015/lib/upload/entity/gspformremovelistentity.js +15 -15
  26. package/esm2015/lib/upload/entity/gspformstreamentity.js +25 -25
  27. package/esm2015/lib/upload/entity/gspformuploadentity.js +17 -17
  28. package/esm2015/lib/upload/entity/gspformuploadlistentity.js +17 -17
  29. package/esm2015/lib/upload/entity/initmultiuploadrequest.js +19 -19
  30. package/esm2015/lib/upload/entity/multiuploadrequest.js +21 -21
  31. package/esm2015/lib/upload/entity/multiuploadresult.js +13 -13
  32. package/esm2015/lib/upload/entity/operatingmodes.js +13 -13
  33. package/esm2015/lib/upload/entity/securityentity.js +17 -17
  34. package/esm2015/lib/upload/entity/storageextension.js +17 -17
  35. package/esm2015/lib/upload/entity/uploadfileinfo.js +21 -19
  36. package/esm2015/lib/upload/entity/uploadlimit.js +23 -23
  37. package/esm2015/lib/upload/file-upload/file-upload.component.js +1508 -1402
  38. package/esm2015/lib/upload/upload.module.js +50 -48
  39. package/esm2015/lib/upload/upload.service.js +341 -341
  40. package/esm2015/lib/uploaddialog/uploaddialog/uploaddialog.component.js +82 -82
  41. package/esm2015/lib/uploaddialog/uploaddialog.module.js +35 -35
  42. package/esm2015/lib/uploaddialog.service.js +207 -207
  43. package/esm2015/public-api.js +32 -32
  44. package/esm5/gsp-svc-formdoc-upload.js +9 -9
  45. package/esm5/lib/formdoc-upload.component.js +27 -27
  46. package/esm5/lib/formdoc-upload.module.js +27 -27
  47. package/esm5/lib/formdoc-upload.service.js +20 -20
  48. package/esm5/lib/i18n/language.resource.js +156 -148
  49. package/esm5/lib/local.pipe.js +51 -51
  50. package/esm5/lib/upload/download.service.js +202 -202
  51. package/esm5/lib/upload/entity/changeinstancerequest.js +17 -17
  52. package/esm5/lib/upload/entity/completemultiuploadrequest.js +25 -25
  53. package/esm5/lib/upload/entity/copyfilerequest.js +19 -19
  54. package/esm5/lib/upload/entity/doctype.js +25 -23
  55. package/esm5/lib/upload/entity/droplistentity.js +17 -17
  56. package/esm5/lib/upload/entity/expropertyrequest.js +19 -19
  57. package/esm5/lib/upload/entity/extensionstoragefileinfo.js +17 -17
  58. package/esm5/lib/upload/entity/fileinfo.js +53 -51
  59. package/esm5/lib/upload/entity/filestate.js +13 -13
  60. package/esm5/lib/upload/entity/gspdocmetaproperty.js +23 -23
  61. package/esm5/lib/upload/entity/gspdocsecuritybaseinfo.js +19 -19
  62. package/esm5/lib/upload/entity/gspformdocinfo.js +29 -29
  63. package/esm5/lib/upload/entity/gspformdocoperateentity.js +17 -17
  64. package/esm5/lib/upload/entity/gspformremovelistentity.js +19 -19
  65. package/esm5/lib/upload/entity/gspformstreamentity.js +29 -29
  66. package/esm5/lib/upload/entity/gspformuploadentity.js +21 -21
  67. package/esm5/lib/upload/entity/gspformuploadlistentity.js +21 -21
  68. package/esm5/lib/upload/entity/initmultiuploadrequest.js +23 -23
  69. package/esm5/lib/upload/entity/multiuploadrequest.js +25 -25
  70. package/esm5/lib/upload/entity/multiuploadresult.js +17 -17
  71. package/esm5/lib/upload/entity/operatingmodes.js +13 -13
  72. package/esm5/lib/upload/entity/securityentity.js +21 -21
  73. package/esm5/lib/upload/entity/storageextension.js +21 -21
  74. package/esm5/lib/upload/entity/uploadfileinfo.js +25 -23
  75. package/esm5/lib/upload/entity/uploadlimit.js +25 -25
  76. package/esm5/lib/upload/file-upload/file-upload.component.js +1657 -1544
  77. package/esm5/lib/upload/upload.module.js +54 -52
  78. package/esm5/lib/upload/upload.service.js +404 -404
  79. package/esm5/lib/uploaddialog/uploaddialog/uploaddialog.component.js +88 -88
  80. package/esm5/lib/uploaddialog/uploaddialog.module.js +39 -39
  81. package/esm5/lib/uploaddialog.service.js +226 -226
  82. package/esm5/public-api.js +32 -32
  83. package/fesm2015/gsp-svc-formdoc-upload.js +2470 -2356
  84. package/fesm2015/gsp-svc-formdoc-upload.js.map +1 -1
  85. package/fesm5/gsp-svc-formdoc-upload.js +2820 -2699
  86. package/fesm5/gsp-svc-formdoc-upload.js.map +1 -1
  87. package/gsp-svc-formdoc-upload.d.ts +5 -5
  88. package/gsp-svc-formdoc-upload.metadata.json +1 -1
  89. package/lib/formdoc-upload.component.d.ts +5 -5
  90. package/lib/formdoc-upload.module.d.ts +2 -2
  91. package/lib/formdoc-upload.service.d.ts +3 -3
  92. package/lib/i18n/language.resource.d.ts +150 -142
  93. package/lib/local.pipe.d.ts +8 -8
  94. package/lib/upload/download.service.d.ts +11 -11
  95. package/lib/upload/entity/changeinstancerequest.d.ts +5 -5
  96. package/lib/upload/entity/completemultiuploadrequest.d.ts +9 -9
  97. package/lib/upload/entity/copyfilerequest.d.ts +5 -5
  98. package/lib/upload/entity/doctype.d.ts +10 -9
  99. package/lib/upload/entity/droplistentity.d.ts +4 -4
  100. package/lib/upload/entity/expropertyrequest.d.ts +5 -5
  101. package/lib/upload/entity/extensionstoragefileinfo.d.ts +4 -4
  102. package/lib/upload/entity/fileinfo.d.ts +23 -22
  103. package/lib/upload/entity/filestate.d.ts +4 -4
  104. package/lib/upload/entity/gspdocmetaproperty.d.ts +7 -7
  105. package/lib/upload/entity/gspdocsecuritybaseinfo.d.ts +5 -5
  106. package/lib/upload/entity/gspformdocinfo.d.ts +11 -11
  107. package/lib/upload/entity/gspformdocoperateentity.d.ts +4 -4
  108. package/lib/upload/entity/gspformremovelistentity.d.ts +6 -6
  109. package/lib/upload/entity/gspformstreamentity.d.ts +12 -12
  110. package/lib/upload/entity/gspformuploadentity.d.ts +8 -8
  111. package/lib/upload/entity/gspformuploadlistentity.d.ts +8 -8
  112. package/lib/upload/entity/initmultiuploadrequest.d.ts +7 -7
  113. package/lib/upload/entity/multiuploadrequest.d.ts +8 -8
  114. package/lib/upload/entity/multiuploadresult.d.ts +4 -4
  115. package/lib/upload/entity/operatingmodes.d.ts +4 -4
  116. package/lib/upload/entity/securityentity.d.ts +6 -6
  117. package/lib/upload/entity/storageextension.d.ts +6 -6
  118. package/lib/upload/entity/uploadfileinfo.d.ts +10 -9
  119. package/lib/upload/entity/uploadlimit.d.ts +7 -7
  120. package/lib/upload/file-upload/file-upload.component.d.ts +133 -129
  121. package/lib/upload/upload.module.d.ts +3 -3
  122. package/lib/upload/upload.service.d.ts +27 -27
  123. package/lib/uploaddialog/uploaddialog/uploaddialog.component.d.ts +13 -13
  124. package/lib/uploaddialog/uploaddialog.module.d.ts +2 -2
  125. package/lib/uploaddialog.service.d.ts +18 -18
  126. package/package.json +1 -1
  127. package/public-api.d.ts +25 -25
@@ -1,341 +1,341 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { Injectable } from '@angular/core';
6
- import { HttpService } from '@ecp-caf/caf-common';
7
- import { catchError, tap } from 'rxjs/operators';
8
- import { HttpClient } from '@angular/common/http';
9
- import { GspFormRemoveListEntity } from './entity/gspformremovelistentity';
10
- import { of } from 'rxjs/observable/of';
11
- import { GspFormDocOperateEntity } from './entity/gspformdocoperateentity';
12
- import { ChangeInstanceRequest } from './entity/changeinstancerequest';
13
- import { OperatingModes } from './entity/operatingmodes';
14
- import { CopyFileRequest } from './entity/copyfilerequest';
15
- import { BasePathService } from '@farris/rtf';
16
- export class UploadService {
17
- /**
18
- * @param {?} http
19
- * @param {?} httpclient
20
- */
21
- constructor(http, httpclient) {
22
- this.http = http;
23
- this.httpclient = httpclient;
24
- }
25
- /**
26
- * @param {?} docListInfo
27
- * @param {?} rootId
28
- * @return {?}
29
- */
30
- uploadList(docListInfo, rootId) {
31
- /** @type {?} */
32
- let url;
33
- docListInfo.rootId = rootId;
34
- url = "/api/runtime/dfs/v1.0/formdoc/list";
35
- //url = "/api/runtime/dfs/v1.0/formdoc/list";
36
- return this.http.post(url, docListInfo).pipe(tap((/**
37
- * @param {?} res
38
- * @return {?}
39
- */
40
- res => { })), catchError((/**
41
- * @param {?} error
42
- * @return {?}
43
- */
44
- (error) => {
45
- return of(error);
46
- })));
47
- }
48
- /**
49
- * @param {?} metadataIdList
50
- * @param {?} rootId
51
- * @return {?}
52
- */
53
- commit(metadataIdList, rootId) {
54
- /** @type {?} */
55
- let url;
56
- /** @type {?} */
57
- let entity = new GspFormDocOperateEntity;
58
- entity.metadataIdList = metadataIdList;
59
- entity.rootId = rootId;
60
- url = "/api/runtime/dfs/v1.0/formdoc/commit";
61
- //url = "http://localhost:5000/api/runtime/dfs/v1.0/formdoc/commit";
62
- return this.http.post(url, entity).pipe();
63
- }
64
- /**
65
- * @param {?} metadataIdList
66
- * @param {?} rootId
67
- * @return {?}
68
- */
69
- cancel(metadataIdList, rootId) {
70
- /** @type {?} */
71
- let url;
72
- /** @type {?} */
73
- let entity = new GspFormDocOperateEntity;
74
- entity.metadataIdList = metadataIdList;
75
- entity.rootId = rootId;
76
- url = "/api/runtime/dfs/v1.0/formdoc/cancel";
77
- //url = "http://localhost:5000/api/runtime/dfs/v1.0/formdoc/cancel";
78
- //localStorage.setItem("SessionId","huoliang");
79
- return this.http.put(url, entity).pipe();
80
- }
81
- /**
82
- * @param {?} idList
83
- * @param {?} rootId
84
- * @return {?}
85
- */
86
- removeList(idList, rootId) {
87
- /** @type {?} */
88
- let url;
89
- //url = "http://localhost:5000/api/runtime/dfs/v1.0/formdoc/list";
90
- url = "/api/runtime/dfs/v1.0/formdoc/list";
91
- /** @type {?} */
92
- var idListInfo = new GspFormRemoveListEntity;
93
- idListInfo.metadataIdList = idList;
94
- idListInfo.mode = OperatingModes.Temp;
95
- idListInfo.rootId = rootId;
96
- return this.http.delete(url, idListInfo).pipe();
97
- }
98
- /**
99
- * @param {?} metadataId
100
- * @param {?} rootId
101
- * @return {?}
102
- */
103
- getFile(metadataId, rootId) {
104
- /** @type {?} */
105
- let url;
106
- if (rootId == "")
107
- url = "/api/runtime/dfs/v1.0/formdoc/file/" + metadataId;
108
- else
109
- url = "/api/runtime/dfs/v1.0/formdoc/file/" + metadataId + "/" + rootId;
110
- return this.http.get(url).pipe(tap((/**
111
- * @param {?} res
112
- * @return {?}
113
- */
114
- res => { })), catchError((/**
115
- * @param {?} error
116
- * @return {?}
117
- */
118
- (error) => {
119
- return of(error);
120
- })));
121
- }
122
- /**
123
- * @param {?} docInfo
124
- * @return {?}
125
- */
126
- uploadFile(docInfo) {
127
- /** @type {?} */
128
- let url = "/api/runtime/dfs/v1.0/formdoc";
129
- //url = "/api/runtime/dfs/v1.0/formdoc/list";
130
- return this.http.post(url, docInfo).pipe(tap((/**
131
- * @param {?} res
132
- * @return {?}
133
- */
134
- res => { })), catchError((/**
135
- * @param {?} error
136
- * @return {?}
137
- */
138
- (error) => {
139
- return of(error);
140
- })));
141
- }
142
- /**
143
- * @param {?} formdata
144
- * @return {?}
145
- */
146
- uploadSliceFile(formdata) {
147
- /** @type {?} */
148
- let url = "/api/runtime/dfs/v1.0/formdoc/slice";
149
- //url = "/api/runtime/dfs/v1.0/formdoc/list";
150
- /** @type {?} */
151
- const baseUrl = BasePathService.convertPath(url);
152
- return this.httpclient.post(baseUrl, formdata).pipe(tap((/**
153
- * @param {?} res
154
- * @return {?}
155
- */
156
- res => { })), catchError((/**
157
- * @param {?} error
158
- * @return {?}
159
- */
160
- (error) => {
161
- return of(error);
162
- })));
163
- }
164
- /**
165
- * @return {?}
166
- */
167
- getStorageExtensionInfo() {
168
- /** @type {?} */
169
- let url = "/api/runtime/dfs/v1.0/storagestrategy/extension";
170
- //url = "/api/runtime/dfs/v1.0/formdoc/list";
171
- return this.http.get(url).pipe(tap((/**
172
- * @param {?} res
173
- * @return {?}
174
- */
175
- res => { })), catchError((/**
176
- * @param {?} error
177
- * @return {?}
178
- */
179
- (error) => {
180
- return of(error);
181
- })));
182
- }
183
- /**
184
- * @param {?} baseInfo
185
- * @return {?}
186
- */
187
- getSecurityInfoList(baseInfo) {
188
- /** @type {?} */
189
- let url = "/api/runtime/dfs/v1.0/storagestrategy/security";
190
- url = url + "?id=" + baseInfo.securityId + "&level=" + baseInfo.securityLevel;
191
- return this.http.get(url).pipe(tap((/**
192
- * @param {?} res
193
- * @return {?}
194
- */
195
- res => { })), catchError((/**
196
- * @param {?} error
197
- * @return {?}
198
- */
199
- (error) => {
200
- return of(error);
201
- })));
202
- }
203
- /**
204
- * @param {?} storageInfoList
205
- * @param {?} rootId
206
- * @return {?}
207
- */
208
- changeStorageInstance(storageInfoList, rootId) {
209
- /** @type {?} */
210
- let url = "/api/runtime/dfs/v1.0/formdoc/changeinstance";
211
- /** @type {?} */
212
- let request = new ChangeInstanceRequest;
213
- request.fileInfoList = storageInfoList;
214
- request.rootId = rootId;
215
- return this.http.post(url, request).pipe(tap((/**
216
- * @param {?} res
217
- * @return {?}
218
- */
219
- res => { })), catchError((/**
220
- * @param {?} error
221
- * @return {?}
222
- */
223
- (error) => {
224
- return of(error);
225
- })));
226
- }
227
- /**
228
- * @param {?} metadataId
229
- * @param {?} rootId
230
- * @param {?} path
231
- * @return {?}
232
- */
233
- copyFile(metadataId, rootId, path) {
234
- /** @type {?} */
235
- let url = "/api/runtime/dfs/v1.0/formdoc/copy";
236
- /** @type {?} */
237
- const baseUrl = BasePathService.convertPath(url);
238
- /** @type {?} */
239
- let request = new CopyFileRequest;
240
- request.metadataId = metadataId;
241
- request.rootId = rootId;
242
- request.path = path;
243
- return this.httpclient.post(baseUrl, request, { responseType: 'text' }).pipe(tap((/**
244
- * @param {?} res
245
- * @return {?}
246
- */
247
- res => { })));
248
- }
249
- /**
250
- * @param {?} uploadFileInfoList
251
- * @param {?} rootId
252
- * @return {?}
253
- */
254
- saveSecurityInfo(uploadFileInfoList, rootId) {
255
- /** @type {?} */
256
- let url = "/api/runtime/dfs/v1.0/doc/exproperty";
257
- /** @type {?} */
258
- let reqList = [];
259
- uploadFileInfoList.forEach((/**
260
- * @param {?} element
261
- * @return {?}
262
- */
263
- element => {
264
- /** @type {?} */
265
- let request = { id: element.metadataId, rootId: rootId, exProperty: JSON.stringify(element.securityInfo) };
266
- reqList.push(request);
267
- }));
268
- return this.http.post(url, reqList).pipe(tap((/**
269
- * @param {?} res
270
- * @return {?}
271
- */
272
- res => { })), catchError((/**
273
- * @param {?} error
274
- * @return {?}
275
- */
276
- (error) => {
277
- return of(error);
278
- })));
279
- }
280
- /**
281
- * @param {?} formId
282
- * @param {?} rootId
283
- * @return {?}
284
- */
285
- getUploadedFileInfoList(formId, rootId) {
286
- /** @type {?} */
287
- let url = "/api/runtime/dfs/v1.0/formdoc/uploadedfile/infolist" + "?formid=" + formId + "&rootid=" + rootId;
288
- //url = "/api/runtime/dfs/v1.0/formdoc/list";
289
- return this.http.get(url).pipe(tap((/**
290
- * @param {?} res
291
- * @return {?}
292
- */
293
- res => { })), catchError((/**
294
- * @param {?} error
295
- * @return {?}
296
- */
297
- (error) => {
298
- return of(error);
299
- })));
300
- }
301
- /**
302
- * @param {?} rootId
303
- * @return {?}
304
- */
305
- getUploadInfo(rootId) {
306
- /** @type {?} */
307
- let url = "/api/runtime/dfs/v1.0/rootsetting/info?id=" + rootId;
308
- return this.http.get(url).pipe(tap((/**
309
- * @param {?} res
310
- * @return {?}
311
- */
312
- res => { })), catchError((/**
313
- * @param {?} error
314
- * @return {?}
315
- */
316
- (error) => {
317
- return of(error);
318
- })));
319
- }
320
- }
321
- UploadService.decorators = [
322
- { type: Injectable }
323
- ];
324
- /** @nocollapse */
325
- UploadService.ctorParameters = () => [
326
- { type: HttpService },
327
- { type: HttpClient }
328
- ];
329
- if (false) {
330
- /**
331
- * @type {?}
332
- * @private
333
- */
334
- UploadService.prototype.http;
335
- /**
336
- * @type {?}
337
- * @private
338
- */
339
- UploadService.prototype.httpclient;
340
- }
341
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ3NwLXN2Yy9mb3JtZG9jLXVwbG9hZC8iLCJzb3VyY2VzIjpbImxpYi91cGxvYWQvdXBsb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBcUIsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFJM0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXpELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSTlDLE1BQU0sT0FBTyxhQUFhOzs7OztJQUV4QixZQUFvQixJQUFpQixFQUFVLFVBQXNCO1FBQWpELFNBQUksR0FBSixJQUFJLENBQWE7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUksQ0FBQzs7Ozs7O0lBRTFFLFVBQVUsQ0FBQyxXQUFvQyxFQUFFLE1BQWM7O1lBQ3pELEdBQUc7UUFDUCxXQUFXLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUU1QixHQUFHLEdBQUcsb0NBQW9DLENBQUM7UUFDM0MsNkNBQTZDO1FBRTdDLE9BQU8sSUFBSSxDQUFD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LEdBQUcsNENBQTRDLEdBQUcsTUFBTTtRQUUvRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDNUIsR0FBRzs7OztRQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFDLEVBQ2YsVUFBVTs7OztRQUFDLENBQUMsS0FBd0IsRUFBRSxFQUFFO1lBQ3RDLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25CLENBQUMsRUFBQyxDQUFDLENBQUM7SUFDUixDQUFDOzs7WUEvS0YsVUFBVTs7OztZQWxCRixXQUFXO1lBRVgsVUFBVTs7Ozs7OztJQW1CTCw2QkFBeUI7Ozs7O0lBQUUsbUNBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEdzcEZvcm1VcGxvYWRMaXN0RW50aXR5IH0gZnJvbSAnLi9lbnRpdHkvZ3NwZm9ybXVwbG9hZGxpc3RlbnRpdHknO1xyXG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJ0BlY3AtY2FmL2NhZi1jb21tb24nO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBHc3BGb3JtUmVtb3ZlTGlzdEVudGl0eSB9IGZyb20gJy4vZW50aXR5L2dzcGZvcm1yZW1vdmVsaXN0ZW50aXR5JztcclxuaW1wb3J0IHsgb2YgfSBmcm9tICdyeGpzL29ic2VydmFibGUvb2YnO1xyXG5pbXBvcnQgeyBHc3BGb3JtRG9jT3BlcmF0ZUVudGl0eSB9IGZyb20gJy4vZW50aXR5L2dzcGZvcm1kb2NvcGVyYXRlZW50aXR5JztcclxuXHJcbmltcG9ydCB7IEdzcEZvcm1VcGxvYWRFbnRpdHkgfSBmcm9tICcuL2VudGl0eS9nc3Bmb3JtdXBsb2FkZW50aXR5JztcclxuaW1wb3J0IHsgRXhTdG9yYWdlRmlsZUluZm8gfSBmcm9tICcuL2VudGl0eS9leHRlbnNpb25zdG9yYWdlZmlsZWluZm8nO1xyXG5pbXBvcnQgeyBDaGFuZ2VJbnN0YW5jZVJlcXVlc3QgfSBmcm9tICcuL2VudGl0eS9jaGFuZ2VpbnN0YW5jZXJlcXVlc3QnO1xyXG5pbXBvcnQgeyBPcGVyYXRpbmdNb2RlcyB9IGZyb20gJy4vZW50aXR5L29wZXJhdGluZ21vZGVzJztcclxuaW1wb3J0IHsgR3NwRG9jU2VjdXJpdHlCYXNlSW5mbyB9IGZyb20gJy4vZW50aXR5L2dzcGRvY3NlY3VyaXR5YmFzZWluZm8nO1xyXG5pbXBvcnQgeyBVcGxvYWRGaWxlSW5mbyB9IGZyb20gJy4vZW50aXR5L3VwbG9hZGZpbGVpbmZvJztcclxuaW1wb3J0IHsgRXhQcm9wZXJ0eVJlcXVlc3QgfSBmcm9tICcuL2VudGl0eS9leHByb3BlcnR5cmVxdWVzdCc7XHJcbmltcG9ydCB7IENvcHlGaWxlUmVxdWVzdCB9IGZyb20gJy4vZW50aXR5L2NvcHlmaWxlcmVxdWVzdCc7XHJcbmltcG9ydCB7IEJhc2VQYXRoU2VydmljZSB9IGZyb20gJ0BmYXJyaXMvcnRmJztcclxuXHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBVcGxvYWRTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwU2VydmljZSwgcHJpdmF0ZSBodHRwY2xpZW50OiBIdHRwQ2xpZW50KSB7IH1cclxuXHJcbiAgdXBsb2FkTGlzdChkb2NMaXN0SW5mbzogR3NwRm9ybVVwbG9hZExpc3RFbnRpdHksIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCB1cmw7XHJcbiAgICBkb2NMaXN0SW5mby5yb290SWQgPSByb290SWQ7XHJcblxyXG4gICAgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XHJcbiAgICAvL3VybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIGRvY0xpc3RJbmZvKS5waXBlKFxyXG4gICAgICB0YXAocmVzID0+IHsgfSksXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XHJcbiAgICAgIH0pKTtcclxuICB9XHJcblxyXG5cclxuICBjb21taXQobWV0YWRhdGFJZExpc3Q6IHN0cmluZ1tdLCByb290SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgdXJsO1xyXG4gICAgbGV0IGVudGl0eTogR3NwRm9ybURvY09wZXJhdGVFbnRpdHkgPSBuZXcgR3NwRm9ybURvY09wZXJhdGVFbnRpdHk7XHJcbiAgICBlbnRpdHkubWV0YWRhdGFJZExpc3QgPSBtZXRhZGF0YUlkTGlzdDtcclxuICAgIGVudGl0eS5yb290SWQgPSByb290SWQ7XHJcbiAgICB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2NvbW1pdFwiO1xyXG4gICAgLy91cmwgPSBcImh0dHA6Ly9sb2NhbGhvc3Q6NTAwMC9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2NvbW1pdFwiO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIGVudGl0eSkucGlwZSgpO1xyXG4gIH1cclxuXHJcbiAgY2FuY2VsKG1ldGFkYXRhSWRMaXN0OiBzdHJpbmdbXSwgcm9vdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHVybDtcclxuICAgIGxldCBlbnRpdHk6IEdzcEZvcm1Eb2NPcGVyYXRlRW50aXR5ID0gbmV3IEdzcEZvcm1Eb2NPcGVyYXRlRW50aXR5O1xyXG4gICAgZW50aXR5Lm1ldGFkYXRhSWRMaXN0ID0gbWV0YWRhdGFJZExpc3Q7XHJcbiAgICBlbnRpdHkucm9vdElkID0gcm9vdElkO1xyXG4gICAgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9jYW5jZWxcIjtcclxuICAgIC8vdXJsID0gXCJodHRwOi8vbG9jYWxob3N0OjUwMDAvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9jYW5jZWxcIjtcclxuICAgIC8vbG9jYWxTdG9yYWdlLnNldEl0ZW0oXCJTZXNzaW9uSWRcIixcImh1b2xpYW5nXCIpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQodXJsLCBlbnRpdHkpLnBpcGUoKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZUxpc3QoaWRMaXN0OiBzdHJpbmdbXSwgcm9vdElkOiBzdHJpbmcpIHtcclxuICAgIGxldCB1cmw7XHJcbiAgICAvL3VybCA9IFwiaHR0cDovL2xvY2FsaG9zdDo1MDAwL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xyXG4gICAgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XHJcbiAgICB2YXIgaWRMaXN0SW5mbyA9IG5ldyBHc3BGb3JtUmVtb3ZlTGlzdEVudGl0eTtcclxuICAgIGlkTGlzdEluZm8ubWV0YWRhdGFJZExpc3QgPSBpZExpc3Q7XHJcbiAgICBpZExpc3RJbmZvLm1vZGUgPSBPcGVyYXRpbmdNb2Rlcy5UZW1wO1xyXG4gICAgaWRMaXN0SW5mby5yb290SWQgPSByb290SWQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZSh1cmwsIGlkTGlzdEluZm8pLnBpcGUoKTtcclxuICB9XHJcblxyXG4gIGdldEZpbGUobWV0YWRhdGFJZDogc3RyaW5nLCByb290SWQ6IHN0cmluZykge1xyXG5cclxuICAgIGxldCB1cmw7XHJcbiAgICBpZiAocm9vdElkID09IFwiXCIpXHJcbiAgICAgIHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvZmlsZS9cIiArIG1ldGFkYXRhSWQ7XHJcbiAgICBlbHNlXHJcbiAgICAgIHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvZmlsZS9cIiArIG1ldGFkYXRhSWQgKyBcIi9cIiArIHJvb3RJZDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZSh0YXAocmVzID0+IHsgfSksXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XHJcbiAgICAgIH0pKTtcclxuXHJcbiAgfVxyXG5cclxuICB1cGxvYWRGaWxlKGRvY0luZm86IEdzcEZvcm1VcGxvYWRFbnRpdHkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cclxuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jXCI7XHJcbiAgICAvL3VybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIGRvY0luZm8pLnBpcGUoXHJcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcclxuICAgICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgdXBsb2FkU2xpY2VGaWxlKGZvcm1kYXRhOiBGb3JtRGF0YSk6IE9ic2VydmFibGU8YW55PiB7XHJcblxyXG4gICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2Mvc2xpY2VcIjtcclxuICAgIC8vdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XHJcbiAgICBjb25zdCBiYXNlVXJsID0gQmFzZVBhdGhTZXJ2aWNlLmNvbnZlcnRQYXRoKHVybCk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwY2xpZW50LnBvc3QoYmFzZVVybCwgZm9ybWRhdGEpLnBpcGUoXHJcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcclxuICAgICAgfSkpO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldFN0b3JhZ2VFeHRlbnNpb25JbmZvKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvc3RvcmFnZXN0cmF0ZWd5L2V4dGVuc2lvblwiO1xyXG4gICAgLy91cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2xpc3RcIjtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXHJcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcclxuICAgICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VjdXJpdHlJbmZvTGlzdChiYXNlSW5mbzogR3NwRG9jU2VjdXJpdHlCYXNlSW5mbyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvc3RvcmFnZXN0cmF0ZWd5L3NlY3VyaXR5XCI7XHJcbiAgICB1cmwgPSB1cmwgKyBcIj9pZD1cIiArIGJhc2VJbmZvLnNlY3VyaXR5SWQgKyBcIiZsZXZlbD1cIiArIGJhc2VJbmZvLnNlY3VyaXR5TGV2ZWw7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS5waXBlKFxyXG4gICAgICB0YXAocmVzID0+IHsgfSksXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XHJcbiAgICAgIH0pKTtcclxuICB9XHJcblxyXG4gIGNoYW5nZVN0b3JhZ2VJbnN0YW5jZShzdG9yYWdlSW5mb0xpc3Q6IEV4U3RvcmFnZUZpbGVJbmZvW10sIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2NoYW5nZWluc3RhbmNlXCI7XHJcbiAgICBsZXQgcmVxdWVzdDogQ2hhbmdlSW5zdGFuY2VSZXF1ZXN0ID0gbmV3IENoYW5nZUluc3RhbmNlUmVxdWVzdDtcclxuICAgIHJlcXVlc3QuZmlsZUluZm9MaXN0ID0gc3RvcmFnZUluZm9MaXN0O1xyXG4gICAgcmVxdWVzdC5yb290SWQgPSByb290SWQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCByZXF1ZXN0KS5waXBlKFxyXG4gICAgICB0YXAocmVzID0+IHsgfSksXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XHJcbiAgICAgIH0pKTtcclxuICB9XHJcblxyXG4gIGNvcHlGaWxlKG1ldGFkYXRhSWQ6IHN0cmluZywgcm9vdElkOiBzdHJpbmcsIHBhdGg6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9jb3B5XCI7XHJcbiAgICBjb25zdCBiYXNlVXJsID0gQmFzZVBhdGhTZXJ2aWNlLmNvbnZlcnRQYXRoKHVybCk7XHJcbiAgICBsZXQgcmVxdWVzdDogQ29weUZpbGVSZXF1ZXN0ID0gbmV3IENvcHlGaWxlUmVxdWVzdDtcclxuICAgIHJlcXVlc3QubWV0YWRhdGFJZCA9IG1ldGFkYXRhSWQ7XHJcbiAgICByZXF1ZXN0LnJvb3RJZCA9IHJvb3RJZDtcclxuICAgIHJlcXVlc3QucGF0aCA9IHBhdGg7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwY2xpZW50LnBvc3QoYmFzZVVybCwgcmVxdWVzdCwgeyByZXNwb25zZVR5cGU6ICd0ZXh0JyB9KS5waXBlKFxyXG4gICAgICB0YXAocmVzID0+IHsgfSksXHJcbiAgICAgIC8vIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgICAvLyAgIHJldHVybiBvZihlcnJvcik7XHJcbiAgICAgIC8vIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2F2ZVNlY3VyaXR5SW5mbyh1cGxvYWRGaWxlSW5mb0xpc3Q6IFVwbG9hZEZpbGVJbmZvW10sIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9kb2MvZXhwcm9wZXJ0eVwiO1xyXG4gICAgbGV0IHJlcUxpc3Q6IEV4UHJvcGVydHlSZXF1ZXN0W10gPSBbXTtcclxuICAgIHVwbG9hZEZpbGVJbmZvTGlzdC5mb3JFYWNoKGVsZW1lbnQgPT4ge1xyXG4gICAgICBsZXQgcmVxdWVzdDogRXhQcm9wZXJ0eVJlcXVlc3QgPSB7IGlkOiBlbGVtZW50Lm1ldGFkYXRhSWQsIHJvb3RJZDogcm9vdElkLCBleFByb3BlcnR5OiBKU09OLnN0cmluZ2lmeShlbGVtZW50LnNlY3VyaXR5SW5mbykgfTtcclxuICAgICAgcmVxTGlzdC5wdXNoKHJlcXVlc3QpO1xyXG4gICAgfSlcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIHJlcUxpc3QpLnBpcGUoXHJcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcclxuICAgICAgfSkpXHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0VXBsb2FkZWRGaWxlSW5mb0xpc3QoZm9ybUlkOiBzdHJpbmcsIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL3VwbG9hZGVkZmlsZS9pbmZvbGlzdFwiICsgXCI/Zm9ybWlkPVwiICsgZm9ybUlkICsgXCImcm9vdGlkPVwiICsgcm9vdElkO1xyXG4gICAgLy91cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2xpc3RcIjtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXHJcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcclxuICAgICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXBsb2FkSW5mbyhyb290SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvcm9vdHNldHRpbmcvaW5mbz9pZD1cIiArIHJvb3RJZDtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXHJcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcclxuICAgICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgLy8gZ2V0Um9vdFNldHRpbmcocm9vdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gIC8vICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL3Jvb3RzZXR0aW5nL1wiICsgcm9vdElkO1xyXG5cclxuICAvLyAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcclxuICAvLyAgICAgdGFwKHJlcyA9PiB7IH0pLFxyXG4gIC8vICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAvLyAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xyXG4gIC8vICAgICB9KSk7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBnZXRWYWxpZGF0aW9uKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gIC8vICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL3ZhbGlkYXRpb24vXCIgKyBpZDtcclxuXHJcbiAgLy8gICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXHJcbiAgLy8gICAgIHRhcChyZXMgPT4geyB9KSxcclxuICAvLyAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgLy8gICAgICAgcmV0dXJuIG9mKGVycm9yKTtcclxuICAvLyAgICAgfSkpO1xyXG4gIC8vIH1cclxuXHJcbn1cclxuIl19
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { Injectable } from '@angular/core';
6
+ import { HttpService } from '@ecp-caf/caf-common';
7
+ import { catchError, tap } from 'rxjs/operators';
8
+ import { HttpClient } from '@angular/common/http';
9
+ import { GspFormRemoveListEntity } from './entity/gspformremovelistentity';
10
+ import { of } from 'rxjs/observable/of';
11
+ import { GspFormDocOperateEntity } from './entity/gspformdocoperateentity';
12
+ import { ChangeInstanceRequest } from './entity/changeinstancerequest';
13
+ import { OperatingModes } from './entity/operatingmodes';
14
+ import { CopyFileRequest } from './entity/copyfilerequest';
15
+ import { BasePathService } from '@farris/rtf';
16
+ export class UploadService {
17
+ /**
18
+ * @param {?} http
19
+ * @param {?} httpclient
20
+ */
21
+ constructor(http, httpclient) {
22
+ this.http = http;
23
+ this.httpclient = httpclient;
24
+ }
25
+ /**
26
+ * @param {?} docListInfo
27
+ * @param {?} rootId
28
+ * @return {?}
29
+ */
30
+ uploadList(docListInfo, rootId) {
31
+ /** @type {?} */
32
+ let url;
33
+ docListInfo.rootId = rootId;
34
+ url = "/api/runtime/dfs/v1.0/formdoc/list";
35
+ //url = "/api/runtime/dfs/v1.0/formdoc/list";
36
+ return this.http.post(url, docListInfo).pipe(tap((/**
37
+ * @param {?} res
38
+ * @return {?}
39
+ */
40
+ res => { })), catchError((/**
41
+ * @param {?} error
42
+ * @return {?}
43
+ */
44
+ (error) => {
45
+ return of(error);
46
+ })));
47
+ }
48
+ /**
49
+ * @param {?} metadataIdList
50
+ * @param {?} rootId
51
+ * @return {?}
52
+ */
53
+ commit(metadataIdList, rootId) {
54
+ /** @type {?} */
55
+ let url;
56
+ /** @type {?} */
57
+ let entity = new GspFormDocOperateEntity;
58
+ entity.metadataIdList = metadataIdList;
59
+ entity.rootId = rootId;
60
+ url = "/api/runtime/dfs/v1.0/formdoc/commit";
61
+ //url = "http://localhost:5000/api/runtime/dfs/v1.0/formdoc/commit";
62
+ return this.http.post(url, entity).pipe();
63
+ }
64
+ /**
65
+ * @param {?} metadataIdList
66
+ * @param {?} rootId
67
+ * @return {?}
68
+ */
69
+ cancel(metadataIdList, rootId) {
70
+ /** @type {?} */
71
+ let url;
72
+ /** @type {?} */
73
+ let entity = new GspFormDocOperateEntity;
74
+ entity.metadataIdList = metadataIdList;
75
+ entity.rootId = rootId;
76
+ url = "/api/runtime/dfs/v1.0/formdoc/cancel";
77
+ //url = "http://localhost:5000/api/runtime/dfs/v1.0/formdoc/cancel";
78
+ //localStorage.setItem("SessionId","huoliang");
79
+ return this.http.put(url, entity).pipe();
80
+ }
81
+ /**
82
+ * @param {?} idList
83
+ * @param {?} rootId
84
+ * @return {?}
85
+ */
86
+ removeList(idList, rootId) {
87
+ /** @type {?} */
88
+ let url;
89
+ //url = "http://localhost:5000/api/runtime/dfs/v1.0/formdoc/list";
90
+ url = "/api/runtime/dfs/v1.0/formdoc/list";
91
+ /** @type {?} */
92
+ var idListInfo = new GspFormRemoveListEntity;
93
+ idListInfo.metadataIdList = idList;
94
+ idListInfo.mode = OperatingModes.Temp;
95
+ idListInfo.rootId = rootId;
96
+ return this.http.delete(url, idListInfo).pipe();
97
+ }
98
+ /**
99
+ * @param {?} metadataId
100
+ * @param {?} rootId
101
+ * @return {?}
102
+ */
103
+ getFile(metadataId, rootId) {
104
+ /** @type {?} */
105
+ let url;
106
+ if (rootId == "")
107
+ url = "/api/runtime/dfs/v1.0/formdoc/file/" + metadataId;
108
+ else
109
+ url = "/api/runtime/dfs/v1.0/formdoc/file/" + metadataId + "/" + rootId;
110
+ return this.http.get(url).pipe(tap((/**
111
+ * @param {?} res
112
+ * @return {?}
113
+ */
114
+ res => { })), catchError((/**
115
+ * @param {?} error
116
+ * @return {?}
117
+ */
118
+ (error) => {
119
+ return of(error);
120
+ })));
121
+ }
122
+ /**
123
+ * @param {?} docInfo
124
+ * @return {?}
125
+ */
126
+ uploadFile(docInfo) {
127
+ /** @type {?} */
128
+ let url = "/api/runtime/dfs/v1.0/formdoc";
129
+ //url = "/api/runtime/dfs/v1.0/formdoc/list";
130
+ return this.http.post(url, docInfo).pipe(tap((/**
131
+ * @param {?} res
132
+ * @return {?}
133
+ */
134
+ res => { })), catchError((/**
135
+ * @param {?} error
136
+ * @return {?}
137
+ */
138
+ (error) => {
139
+ return of(error);
140
+ })));
141
+ }
142
+ /**
143
+ * @param {?} formdata
144
+ * @return {?}
145
+ */
146
+ uploadSliceFile(formdata) {
147
+ /** @type {?} */
148
+ let url = "/api/runtime/dfs/v1.0/formdoc/slice";
149
+ //url = "/api/runtime/dfs/v1.0/formdoc/list";
150
+ /** @type {?} */
151
+ const baseUrl = BasePathService.convertPath(url);
152
+ return this.httpclient.post(baseUrl, formdata).pipe(tap((/**
153
+ * @param {?} res
154
+ * @return {?}
155
+ */
156
+ res => { })), catchError((/**
157
+ * @param {?} error
158
+ * @return {?}
159
+ */
160
+ (error) => {
161
+ return of(error);
162
+ })));
163
+ }
164
+ /**
165
+ * @return {?}
166
+ */
167
+ getStorageExtensionInfo() {
168
+ /** @type {?} */
169
+ let url = "/api/runtime/dfs/v1.0/storagestrategy/extension";
170
+ //url = "/api/runtime/dfs/v1.0/formdoc/list";
171
+ return this.http.get(url).pipe(tap((/**
172
+ * @param {?} res
173
+ * @return {?}
174
+ */
175
+ res => { })), catchError((/**
176
+ * @param {?} error
177
+ * @return {?}
178
+ */
179
+ (error) => {
180
+ return of(error);
181
+ })));
182
+ }
183
+ /**
184
+ * @param {?} baseInfo
185
+ * @return {?}
186
+ */
187
+ getSecurityInfoList(baseInfo) {
188
+ /** @type {?} */
189
+ let url = "/api/runtime/dfs/v1.0/storagestrategy/security";
190
+ url = url + "?id=" + baseInfo.securityId + "&level=" + baseInfo.securityLevel;
191
+ return this.http.get(url).pipe(tap((/**
192
+ * @param {?} res
193
+ * @return {?}
194
+ */
195
+ res => { })), catchError((/**
196
+ * @param {?} error
197
+ * @return {?}
198
+ */
199
+ (error) => {
200
+ return of(error);
201
+ })));
202
+ }
203
+ /**
204
+ * @param {?} storageInfoList
205
+ * @param {?} rootId
206
+ * @return {?}
207
+ */
208
+ changeStorageInstance(storageInfoList, rootId) {
209
+ /** @type {?} */
210
+ let url = "/api/runtime/dfs/v1.0/formdoc/changeinstance";
211
+ /** @type {?} */
212
+ let request = new ChangeInstanceRequest;
213
+ request.fileInfoList = storageInfoList;
214
+ request.rootId = rootId;
215
+ return this.http.post(url, request).pipe(tap((/**
216
+ * @param {?} res
217
+ * @return {?}
218
+ */
219
+ res => { })), catchError((/**
220
+ * @param {?} error
221
+ * @return {?}
222
+ */
223
+ (error) => {
224
+ return of(error);
225
+ })));
226
+ }
227
+ /**
228
+ * @param {?} metadataId
229
+ * @param {?} rootId
230
+ * @param {?} path
231
+ * @return {?}
232
+ */
233
+ copyFile(metadataId, rootId, path) {
234
+ /** @type {?} */
235
+ let url = "/api/runtime/dfs/v1.0/formdoc/copy";
236
+ /** @type {?} */
237
+ const baseUrl = BasePathService.convertPath(url);
238
+ /** @type {?} */
239
+ let request = new CopyFileRequest;
240
+ request.metadataId = metadataId;
241
+ request.rootId = rootId;
242
+ request.path = path;
243
+ return this.httpclient.post(baseUrl, request, { responseType: 'text' }).pipe(tap((/**
244
+ * @param {?} res
245
+ * @return {?}
246
+ */
247
+ res => { })));
248
+ }
249
+ /**
250
+ * @param {?} uploadFileInfoList
251
+ * @param {?} rootId
252
+ * @return {?}
253
+ */
254
+ saveSecurityInfo(uploadFileInfoList, rootId) {
255
+ /** @type {?} */
256
+ let url = "/api/runtime/dfs/v1.0/doc/exproperty";
257
+ /** @type {?} */
258
+ let reqList = [];
259
+ uploadFileInfoList.forEach((/**
260
+ * @param {?} element
261
+ * @return {?}
262
+ */
263
+ element => {
264
+ /** @type {?} */
265
+ let request = { id: element.metadataId, rootId: rootId, exProperty: JSON.stringify(element.securityInfo) };
266
+ reqList.push(request);
267
+ }));
268
+ return this.http.post(url, reqList).pipe(tap((/**
269
+ * @param {?} res
270
+ * @return {?}
271
+ */
272
+ res => { })), catchError((/**
273
+ * @param {?} error
274
+ * @return {?}
275
+ */
276
+ (error) => {
277
+ return of(error);
278
+ })));
279
+ }
280
+ /**
281
+ * @param {?} formId
282
+ * @param {?} rootId
283
+ * @return {?}
284
+ */
285
+ getUploadedFileInfoList(formId, rootId) {
286
+ /** @type {?} */
287
+ let url = "/api/runtime/dfs/v1.0/formdoc/uploadedfile/infolist" + "?formid=" + formId + "&rootid=" + rootId;
288
+ //url = "/api/runtime/dfs/v1.0/formdoc/list";
289
+ return this.http.get(url).pipe(tap((/**
290
+ * @param {?} res
291
+ * @return {?}
292
+ */
293
+ res => { })), catchError((/**
294
+ * @param {?} error
295
+ * @return {?}
296
+ */
297
+ (error) => {
298
+ return of(error);
299
+ })));
300
+ }
301
+ /**
302
+ * @param {?} rootId
303
+ * @return {?}
304
+ */
305
+ getUploadInfo(rootId) {
306
+ /** @type {?} */
307
+ let url = "/api/runtime/dfs/v1.0/rootsetting/info?id=" + rootId;
308
+ return this.http.get(url).pipe(tap((/**
309
+ * @param {?} res
310
+ * @return {?}
311
+ */
312
+ res => { })), catchError((/**
313
+ * @param {?} error
314
+ * @return {?}
315
+ */
316
+ (error) => {
317
+ return of(error);
318
+ })));
319
+ }
320
+ }
321
+ UploadService.decorators = [
322
+ { type: Injectable }
323
+ ];
324
+ /** @nocollapse */
325
+ UploadService.ctorParameters = () => [
326
+ { type: HttpService },
327
+ { type: HttpClient }
328
+ ];
329
+ if (false) {
330
+ /**
331
+ * @type {?}
332
+ * @private
333
+ */
334
+ UploadService.prototype.http;
335
+ /**
336
+ * @type {?}
337
+ * @private
338
+ */
339
+ UploadService.prototype.httpclient;
340
+ }
341
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ3NwLXN2Yy9mb3JtZG9jLXVwbG9hZC8iLCJzb3VyY2VzIjpbImxpYi91cGxvYWQvdXBsb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBcUIsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFJM0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXpELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSTlDLE1BQU0sT0FBTyxhQUFhOzs7OztJQUV4QixZQUFvQixJQUFpQixFQUFVLFVBQXNCO1FBQWpELFNBQUksR0FBSixJQUFJLENBQWE7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUksQ0FBQzs7Ozs7O0lBRTFFLFVBQVUsQ0FBQyxXQUFvQyxFQUFFLE1BQWM7O1lBQ3pELEdBQUc7UUFDUCxXQUFXLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUU1QixHQUFHLEdBQUcsb0NBQW9DLENBQUM7UUFDM0MsNkNBQTZDO1FBRTdDLE9BQU8sSUFBSSxDQUFD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LEdBQUcsNENBQTRDLEdBQUcsTUFBTTtRQUUvRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDNUIsR0FBRzs7OztRQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFDLEVBQ2YsVUFBVTs7OztRQUFDLENBQUMsS0FBd0IsRUFBRSxFQUFFO1lBQ3RDLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25CLENBQUMsRUFBQyxDQUFDLENBQUM7SUFDUixDQUFDOzs7WUEvS0YsVUFBVTs7OztZQWxCRixXQUFXO1lBRVgsVUFBVTs7Ozs7OztJQW1CTCw2QkFBeUI7Ozs7O0lBQUUsbUNBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgR3NwRm9ybVVwbG9hZExpc3RFbnRpdHkgfSBmcm9tICcuL2VudGl0eS9nc3Bmb3JtdXBsb2FkbGlzdGVudGl0eSc7XG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJ0BlY3AtY2FmL2NhZi1jb21tb24nO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBHc3BGb3JtUmVtb3ZlTGlzdEVudGl0eSB9IGZyb20gJy4vZW50aXR5L2dzcGZvcm1yZW1vdmVsaXN0ZW50aXR5JztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcy9vYnNlcnZhYmxlL29mJztcbmltcG9ydCB7IEdzcEZvcm1Eb2NPcGVyYXRlRW50aXR5IH0gZnJvbSAnLi9lbnRpdHkvZ3NwZm9ybWRvY29wZXJhdGVlbnRpdHknO1xuXG5pbXBvcnQgeyBHc3BGb3JtVXBsb2FkRW50aXR5IH0gZnJvbSAnLi9lbnRpdHkvZ3NwZm9ybXVwbG9hZGVudGl0eSc7XG5pbXBvcnQgeyBFeFN0b3JhZ2VGaWxlSW5mbyB9IGZyb20gJy4vZW50aXR5L2V4dGVuc2lvbnN0b3JhZ2VmaWxlaW5mbyc7XG5pbXBvcnQgeyBDaGFuZ2VJbnN0YW5jZVJlcXVlc3QgfSBmcm9tICcuL2VudGl0eS9jaGFuZ2VpbnN0YW5jZXJlcXVlc3QnO1xuaW1wb3J0IHsgT3BlcmF0aW5nTW9kZXMgfSBmcm9tICcuL2VudGl0eS9vcGVyYXRpbmdtb2Rlcyc7XG5pbXBvcnQgeyBHc3BEb2NTZWN1cml0eUJhc2VJbmZvIH0gZnJvbSAnLi9lbnRpdHkvZ3NwZG9jc2VjdXJpdHliYXNlaW5mbyc7XG5pbXBvcnQgeyBVcGxvYWRGaWxlSW5mbyB9IGZyb20gJy4vZW50aXR5L3VwbG9hZGZpbGVpbmZvJztcbmltcG9ydCB7IEV4UHJvcGVydHlSZXF1ZXN0IH0gZnJvbSAnLi9lbnRpdHkvZXhwcm9wZXJ0eXJlcXVlc3QnO1xuaW1wb3J0IHsgQ29weUZpbGVSZXF1ZXN0IH0gZnJvbSAnLi9lbnRpdHkvY29weWZpbGVyZXF1ZXN0JztcbmltcG9ydCB7IEJhc2VQYXRoU2VydmljZSB9IGZyb20gJ0BmYXJyaXMvcnRmJztcblxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVXBsb2FkU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwU2VydmljZSwgcHJpdmF0ZSBodHRwY2xpZW50OiBIdHRwQ2xpZW50KSB7IH1cblxuICB1cGxvYWRMaXN0KGRvY0xpc3RJbmZvOiBHc3BGb3JtVXBsb2FkTGlzdEVudGl0eSwgcm9vdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1cmw7XG4gICAgZG9jTGlzdEluZm8ucm9vdElkID0gcm9vdElkO1xuXG4gICAgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XG4gICAgLy91cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2xpc3RcIjtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIGRvY0xpc3RJbmZvKS5waXBlKFxuICAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSk7XG4gIH1cblxuXG4gIGNvbW1pdChtZXRhZGF0YUlkTGlzdDogc3RyaW5nW10sIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsO1xuICAgIGxldCBlbnRpdHk6IEdzcEZvcm1Eb2NPcGVyYXRlRW50aXR5ID0gbmV3IEdzcEZvcm1Eb2NPcGVyYXRlRW50aXR5O1xuICAgIGVudGl0eS5tZXRhZGF0YUlkTGlzdCA9IG1ldGFkYXRhSWRMaXN0O1xuICAgIGVudGl0eS5yb290SWQgPSByb290SWQ7XG4gICAgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9jb21taXRcIjtcbiAgICAvL3VybCA9IFwiaHR0cDovL2xvY2FsaG9zdDo1MDAwL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvY29tbWl0XCI7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCBlbnRpdHkpLnBpcGUoKTtcbiAgfVxuXG4gIGNhbmNlbChtZXRhZGF0YUlkTGlzdDogc3RyaW5nW10sIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsO1xuICAgIGxldCBlbnRpdHk6IEdzcEZvcm1Eb2NPcGVyYXRlRW50aXR5ID0gbmV3IEdzcEZvcm1Eb2NPcGVyYXRlRW50aXR5O1xuICAgIGVudGl0eS5tZXRhZGF0YUlkTGlzdCA9IG1ldGFkYXRhSWRMaXN0O1xuICAgIGVudGl0eS5yb290SWQgPSByb290SWQ7XG4gICAgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9jYW5jZWxcIjtcbiAgICAvL3VybCA9IFwiaHR0cDovL2xvY2FsaG9zdDo1MDAwL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvY2FuY2VsXCI7XG4gICAgLy9sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIlNlc3Npb25JZFwiLFwiaHVvbGlhbmdcIik7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQodXJsLCBlbnRpdHkpLnBpcGUoKTtcbiAgfVxuXG4gIHJlbW92ZUxpc3QoaWRMaXN0OiBzdHJpbmdbXSwgcm9vdElkOiBzdHJpbmcpIHtcbiAgICBsZXQgdXJsO1xuICAgIC8vdXJsID0gXCJodHRwOi8vbG9jYWxob3N0OjUwMDAvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XG4gICAgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XG4gICAgdmFyIGlkTGlzdEluZm8gPSBuZXcgR3NwRm9ybVJlbW92ZUxpc3RFbnRpdHk7XG4gICAgaWRMaXN0SW5mby5tZXRhZGF0YUlkTGlzdCA9IGlkTGlzdDtcbiAgICBpZExpc3RJbmZvLm1vZGUgPSBPcGVyYXRpbmdNb2Rlcy5UZW1wO1xuICAgIGlkTGlzdEluZm8ucm9vdElkID0gcm9vdElkO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHVybCwgaWRMaXN0SW5mbykucGlwZSgpO1xuICB9XG5cbiAgZ2V0RmlsZShtZXRhZGF0YUlkOiBzdHJpbmcsIHJvb3RJZDogc3RyaW5nKSB7XG5cbiAgICBsZXQgdXJsO1xuICAgIGlmIChyb290SWQgPT0gXCJcIilcbiAgICAgIHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvZmlsZS9cIiArIG1ldGFkYXRhSWQ7XG4gICAgZWxzZVxuICAgICAgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9maWxlL1wiICsgbWV0YWRhdGFJZCArIFwiL1wiICsgcm9vdElkO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZSh0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKTtcblxuICB9XG5cbiAgdXBsb2FkRmlsZShkb2NJbmZvOiBHc3BGb3JtVXBsb2FkRW50aXR5KTogT2JzZXJ2YWJsZTxhbnk+IHtcblxuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jXCI7XG4gICAgLy91cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2xpc3RcIjtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIGRvY0luZm8pLnBpcGUoXG4gICAgICB0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKTtcbiAgfVxuXG4gIHVwbG9hZFNsaWNlRmlsZShmb3JtZGF0YTogRm9ybURhdGEpOiBPYnNlcnZhYmxlPGFueT4ge1xuXG4gICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2Mvc2xpY2VcIjtcbiAgICAvL3VybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xuICAgIGNvbnN0IGJhc2VVcmwgPSBCYXNlUGF0aFNlcnZpY2UuY29udmVydFBhdGgodXJsKTtcbiAgICByZXR1cm4gdGhpcy5odHRwY2xpZW50LnBvc3QoYmFzZVVybCwgZm9ybWRhdGEpLnBpcGUoXG4gICAgICB0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKTtcbiAgfVxuXG5cbiAgZ2V0U3RvcmFnZUV4dGVuc2lvbkluZm8oKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvc3RvcmFnZXN0cmF0ZWd5L2V4dGVuc2lvblwiO1xuICAgIC8vdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXG4gICAgICB0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKTtcbiAgfVxuXG4gIGdldFNlY3VyaXR5SW5mb0xpc3QoYmFzZUluZm86IEdzcERvY1NlY3VyaXR5QmFzZUluZm8pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9zdG9yYWdlc3RyYXRlZ3kvc2VjdXJpdHlcIjtcbiAgICB1cmwgPSB1cmwgKyBcIj9pZD1cIiArIGJhc2VJbmZvLnNlY3VyaXR5SWQgKyBcIiZsZXZlbD1cIiArIGJhc2VJbmZvLnNlY3VyaXR5TGV2ZWw7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXG4gICAgICB0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKTtcbiAgfVxuXG4gIGNoYW5nZVN0b3JhZ2VJbnN0YW5jZShzdG9yYWdlSW5mb0xpc3Q6IEV4U3RvcmFnZUZpbGVJbmZvW10sIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9jaGFuZ2VpbnN0YW5jZVwiO1xuICAgIGxldCByZXF1ZXN0OiBDaGFuZ2VJbnN0YW5jZVJlcXVlc3QgPSBuZXcgQ2hhbmdlSW5zdGFuY2VSZXF1ZXN0O1xuICAgIHJlcXVlc3QuZmlsZUluZm9MaXN0ID0gc3RvcmFnZUluZm9MaXN0O1xuICAgIHJlcXVlc3Qucm9vdElkID0gcm9vdElkO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIHJlcXVlc3QpLnBpcGUoXG4gICAgICB0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKTtcbiAgfVxuXG4gIGNvcHlGaWxlKG1ldGFkYXRhSWQ6IHN0cmluZywgcm9vdElkOiBzdHJpbmcsIHBhdGg6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvY29weVwiO1xuICAgIGNvbnN0IGJhc2VVcmwgPSBCYXNlUGF0aFNlcnZpY2UuY29udmVydFBhdGgodXJsKTtcbiAgICBsZXQgcmVxdWVzdDogQ29weUZpbGVSZXF1ZXN0ID0gbmV3IENvcHlGaWxlUmVxdWVzdDtcbiAgICByZXF1ZXN0Lm1ldGFkYXRhSWQgPSBtZXRhZGF0YUlkO1xuICAgIHJlcXVlc3Qucm9vdElkID0gcm9vdElkO1xuICAgIHJlcXVlc3QucGF0aCA9IHBhdGg7XG4gICAgcmV0dXJuIHRoaXMuaHR0cGNsaWVudC5wb3N0KGJhc2VVcmwsIHJlcXVlc3QsIHsgcmVzcG9uc2VUeXBlOiAndGV4dCcgfSkucGlwZShcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcbiAgICAgIC8vIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgLy8gICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgLy8gfSlcbiAgICApO1xuICB9XG5cbiAgc2F2ZVNlY3VyaXR5SW5mbyh1cGxvYWRGaWxlSW5mb0xpc3Q6IFVwbG9hZEZpbGVJbmZvW10sIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZG9jL2V4cHJvcGVydHlcIjtcbiAgICBsZXQgcmVxTGlzdDogRXhQcm9wZXJ0eVJlcXVlc3RbXSA9IFtdO1xuICAgIHVwbG9hZEZpbGVJbmZvTGlzdC5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgbGV0IHJlcXVlc3Q6IEV4UHJvcGVydHlSZXF1ZXN0ID0geyBpZDogZWxlbWVudC5tZXRhZGF0YUlkLCByb290SWQ6IHJvb3RJZCwgZXhQcm9wZXJ0eTogSlNPTi5zdHJpbmdpZnkoZWxlbWVudC5zZWN1cml0eUluZm8pIH07XG4gICAgICByZXFMaXN0LnB1c2gocmVxdWVzdCk7XG4gICAgfSlcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCByZXFMaXN0KS5waXBlKFxuICAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSlcbiAgfVxuXG5cbiAgZ2V0VXBsb2FkZWRGaWxlSW5mb0xpc3QoZm9ybUlkOiBzdHJpbmcsIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy91cGxvYWRlZGZpbGUvaW5mb2xpc3RcIiArIFwiP2Zvcm1pZD1cIiArIGZvcm1JZCArIFwiJnJvb3RpZD1cIiArIHJvb3RJZDtcbiAgICAvL3VybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS5waXBlKFxuICAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSk7XG4gIH1cblxuICBnZXRVcGxvYWRJbmZvKHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvcm9vdHNldHRpbmcvaW5mbz9pZD1cIiArIHJvb3RJZDtcblxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgfSkpO1xuICB9XG5cbiAgLy8gZ2V0Um9vdFNldHRpbmcocm9vdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAvLyAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9yb290c2V0dGluZy9cIiArIHJvb3RJZDtcblxuICAvLyAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgLy8gICAgIHRhcChyZXMgPT4geyB9KSxcbiAgLy8gICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAvLyAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAvLyAgICAgfSkpO1xuICAvLyB9XG5cbiAgLy8gZ2V0VmFsaWRhdGlvbihpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgLy8gICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvdmFsaWRhdGlvbi9cIiArIGlkO1xuXG4gIC8vICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS5waXBlKFxuICAvLyAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAvLyAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gIC8vICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gIC8vICAgICB9KSk7XG4gIC8vIH1cblxufVxuIl19