@rs-pk/asset-management 1.0.26 → 1.0.28

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 (44) hide show
  1. package/bundles/rs-pk-asset-management.umd.js +398 -63
  2. package/bundles/rs-pk-asset-management.umd.js.map +1 -1
  3. package/bundles/rs-pk-asset-management.umd.min.js +2 -2
  4. package/bundles/rs-pk-asset-management.umd.min.js.map +1 -1
  5. package/esm2015/lib/components/partial/asset-dialog/asset-dialog.component.js +1 -2
  6. package/esm2015/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +1 -2
  7. package/esm2015/lib/components/partial/asset-wrapper/asset-wrapper.component.js +2 -9
  8. package/esm2015/lib/components/partial/folder-item/folder-item.component.js +2 -2
  9. package/esm2015/lib/components/partial/folder-list/folder-list.component.js +33 -5
  10. package/esm2015/lib/components/partial/node-details/node-details.component.js +64 -12
  11. package/esm2015/lib/components/partial/node-tree/node-tree.component.js +148 -10
  12. package/esm2015/lib/components/partial/search-box/search-box.component.js +2 -2
  13. package/esm2015/lib/models/asset.model.js +15 -1
  14. package/esm2015/lib/models/index.js +2 -2
  15. package/esm2015/lib/services/asset.service.js +47 -7
  16. package/esm2015/lib/services/env-config.service.js +3 -1
  17. package/esm2015/lib/services/node-tree.service.js +14 -6
  18. package/esm5/lib/components/partial/asset-dialog/asset-dialog.component.js +1 -2
  19. package/esm5/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +1 -2
  20. package/esm5/lib/components/partial/asset-wrapper/asset-wrapper.component.js +2 -12
  21. package/esm5/lib/components/partial/folder-item/folder-item.component.js +2 -2
  22. package/esm5/lib/components/partial/folder-list/folder-list.component.js +40 -5
  23. package/esm5/lib/components/partial/node-details/node-details.component.js +82 -15
  24. package/esm5/lib/components/partial/node-tree/node-tree.component.js +184 -19
  25. package/esm5/lib/components/partial/search-box/search-box.component.js +2 -2
  26. package/esm5/lib/models/asset.model.js +15 -1
  27. package/esm5/lib/models/index.js +2 -2
  28. package/esm5/lib/services/asset.service.js +61 -8
  29. package/esm5/lib/services/env-config.service.js +3 -1
  30. package/esm5/lib/services/node-tree.service.js +23 -9
  31. package/fesm2015/rs-pk-asset-management.js +317 -47
  32. package/fesm2015/rs-pk-asset-management.js.map +1 -1
  33. package/fesm5/rs-pk-asset-management.js +401 -66
  34. package/fesm5/rs-pk-asset-management.js.map +1 -1
  35. package/lib/components/partial/asset-wrapper/asset-wrapper.component.d.ts +0 -1
  36. package/lib/components/partial/folder-list/folder-list.component.d.ts +8 -2
  37. package/lib/components/partial/node-details/node-details.component.d.ts +10 -0
  38. package/lib/components/partial/node-tree/node-tree.component.d.ts +15 -1
  39. package/lib/models/asset.model.d.ts +7 -0
  40. package/lib/services/asset.service.d.ts +9 -2
  41. package/lib/services/env-config.service.d.ts +1 -0
  42. package/lib/services/node-tree.service.d.ts +2 -1
  43. package/package.json +1 -1
  44. package/rs-pk-asset-management.metadata.json +1 -1
@@ -6,7 +6,7 @@ import { HttpParams } from '@angular/common/http';
6
6
  import { Inject, Injectable } from '@angular/core';
7
7
  import { MatDialog } from '@angular/material/dialog';
8
8
  import { BehaviorSubject } from 'rxjs';
9
- import { DialogConfig, SortFilesBy, TypeSort, } from '../models';
9
+ import { DialogConfig, SortFilesBy, TypeSort, MAX_FOLDER_TREE_SIZE, DEFAULT_FOLDER_TREE_INDEX } from '../models';
10
10
  import { BaseHttpClient } from './base.service';
11
11
  import { AM_CONFIG } from './env-config.service';
12
12
  var AssetService = /** @class */ (function () {
@@ -21,6 +21,18 @@ var AssetService = /** @class */ (function () {
21
21
  this.baseUrl = this._env.asset2Url;
22
22
  this.initOptionFiles();
23
23
  }
24
+ Object.defineProperty(AssetService.prototype, "AMConfig", {
25
+ get: /**
26
+ * @return {?}
27
+ */
28
+ function () {
29
+ return {
30
+ pageFolderSize: this._env.pageFolderSize
31
+ };
32
+ },
33
+ enumerable: true,
34
+ configurable: true
35
+ });
24
36
  /**
25
37
  * @private
26
38
  * @return {?}
@@ -33,6 +45,8 @@ var AssetService = /** @class */ (function () {
33
45
  this.keyword = '';
34
46
  this.pageSize = 12;
35
47
  this.pageIndex = 0;
48
+ this.pageFolderSize = this._env.pageFolderSize || MAX_FOLDER_TREE_SIZE;
49
+ this.pageFolderIndex = 0;
36
50
  this.folderTotal = 0;
37
51
  this.fileTotal = 0;
38
52
  this.sortBy = SortFilesBy.MODIFIED_DATE;
@@ -71,16 +85,17 @@ var AssetService = /** @class */ (function () {
71
85
  };
72
86
  /**
73
87
  * @param {?} folders
74
- * @param {?=} folderTotal
88
+ * @param {?=} pagination
75
89
  * @return {?}
76
90
  */
77
91
  AssetService.prototype.setFolderList = /**
78
92
  * @param {?} folders
79
- * @param {?=} folderTotal
93
+ * @param {?=} pagination
80
94
  * @return {?}
81
95
  */
82
- function (folders, folderTotal) {
83
- this.folderTotal = folderTotal || 0;
96
+ function (folders, pagination) {
97
+ this.setFolderTreePagination(pagination);
98
+ this.setFolderPagination(pagination);
84
99
  this.folderList$.next(folders);
85
100
  };
86
101
  /**
@@ -143,6 +158,36 @@ var AssetService = /** @class */ (function () {
143
158
  this.pageSize = pagination.PageSize;
144
159
  }
145
160
  };
161
+ /**
162
+ * @private
163
+ * @param {?} pagination
164
+ * @return {?}
165
+ */
166
+ AssetService.prototype.setFolderPagination = /**
167
+ * @private
168
+ * @param {?} pagination
169
+ * @return {?}
170
+ */
171
+ function (pagination) {
172
+ if (pagination) {
173
+ this.folderTotal = pagination.Total;
174
+ this.pageFolderIndex = pagination.PageIndex;
175
+ this.pageFolderSize = pagination.PageSize;
176
+ }
177
+ };
178
+ /**
179
+ * @param {?} pagination
180
+ * @return {?}
181
+ */
182
+ AssetService.prototype.setFolderTreePagination = /**
183
+ * @param {?} pagination
184
+ * @return {?}
185
+ */
186
+ function (pagination) {
187
+ if (pagination) {
188
+ this.folderTotal = pagination.Total;
189
+ }
190
+ };
146
191
  /**
147
192
  * @param {?} assetId
148
193
  * @return {?}
@@ -165,11 +210,15 @@ var AssetService = /** @class */ (function () {
165
210
  * @return {?}
166
211
  */
167
212
  function (_a) {
168
- var assetId = _a.assetId, _b = _a.isFilter, isFilter = _b === void 0 ? true : _b;
213
+ var assetId = _a.assetId, _b = _a.isFilter, isFilter = _b === void 0 ? true : _b, _c = _a.pageIndex, pageIndex = _c === void 0 ? DEFAULT_FOLDER_TREE_INDEX : _c, _d = _a.pageSize, pageSize = _d === void 0 ? this._env.pageFolderSize || MAX_FOLDER_TREE_SIZE : _d;
169
214
  /** @type {?} */
170
215
  var url = this.baseUrl + "/File/GetChildren";
171
216
  /** @type {?} */
172
- var params = new HttpParams().set('getAll', 'true').set('isFolder', 'true');
217
+ var params = new HttpParams()
218
+ .set('getAll', 'true')
219
+ .set('isFolder', 'true')
220
+ .set('pageSize', "" + pageSize)
221
+ .set('pageIndex', "" + pageIndex);
173
222
  if (assetId) {
174
223
  params = params.set('assetId', assetId);
175
224
  }
@@ -247,6 +296,10 @@ if (false) {
247
296
  /** @type {?} */
248
297
  AssetService.prototype.pageIndex;
249
298
  /** @type {?} */
299
+ AssetService.prototype.pageFolderSize;
300
+ /** @type {?} */
301
+ AssetService.prototype.pageFolderIndex;
302
+ /** @type {?} */
250
303
  AssetService.prototype.folderTotal;
251
304
  /** @type {?} */
252
305
  AssetService.prototype.fileTotal;
@@ -276,4 +329,4 @@ if (false) {
276
329
  */
277
330
  AssetService.prototype._api;
278
331
  }
279
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bycy1way9hc3NldC1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2Fzc2V0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBR0wsWUFBWSxFQUlaLFdBQVcsRUFDWCxRQUFRLEdBQ1QsTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVqRDtJQWtCRSxzQkFDNkIsSUFBSSxFQUN4QixNQUFpQixFQUNoQixJQUFvQjtRQUZELFNBQUksR0FBSixJQUFJLENBQUE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNoQixTQUFJLEdBQUosSUFBSSxDQUFnQjtRQW5CdEIsZ0JBQVcsR0FBcUMsSUFBSSxlQUFlLENBQ3pFLElBQUksQ0FDTCxDQUFDO1FBQ00sZUFBVSxHQUFrQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0RSxnQkFBVyxHQUE2QixJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQVFuRSxpQkFBWSxHQUFpQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBU3JELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbkMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7Ozs7O0lBRU8sc0NBQWU7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QUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDdkIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUM7U0FDcEQ7UUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFO1lBQ2pDLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ2hFO1FBRUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBbUIsR0FBRyxFQUFFLEVBQUUsTUFBTSxRQUFBLEVBQUUsQ0FBQyxDQUFDO0lBQzFELENBQUM7O2dCQTdIRixVQUFVOzs7O2dEQW1CTixNQUFNLFNBQUMsU0FBUztnQkFsQ1osU0FBUztnQkFZVCxjQUFjOztJQWlJdkIsbUJBQUM7Q0FBQSxBQTlIRCxJQThIQztTQTdIWSxZQUFZOzs7Ozs7SUFDdkIsbUNBRUU7Ozs7O0lBQ0Ysa0NBQThFOzs7OztJQUM5RSxtQ0FBMEU7O0lBQzFFLCtCQUF1Qjs7SUFDdkIsZ0NBQXdCOztJQUN4QixpQ0FBeUI7O0lBQ3pCLG1DQUEyQjs7SUFDM0IsaUNBQXlCOztJQUN6Qiw4QkFBMkI7O0lBQzNCLGlDQUEyQjs7SUFDM0Isb0NBQXVEOztJQUN2RCwrQkFBd0I7Ozs7O0lBQ3hCLCtCQUF3Qjs7Ozs7SUFHdEIsNEJBQStCOztJQUMvQiw4QkFBd0I7Ozs7O0lBQ3hCLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIEFzc2V0TW9kZWwsXG4gIEFzc2V0UmVzdWx0TW9kZWwsXG4gIERpYWxvZ0NvbmZpZyxcbiAgRm9sZGVyVHJlZU1vZGVsLFxuICBJQXNzZXRCeUlkUGF5bG9hZCxcbiAgSUNoaWxkcmVuQXNzZXRQYXlsb2FkLFxuICBTb3J0RmlsZXNCeSxcbiAgVHlwZVNvcnQsXG59IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBCYXNlSHR0cENsaWVudCB9IGZyb20gJy4vYmFzZS5zZXJ2aWNlJztcbmltcG9ydCB7IEFNX0NPTkZJRyB9IGZyb20gJy4vZW52LWNvbmZpZy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFzc2V0U2VydmljZSB7XG4gIHByaXZhdGUgZm9sZGVyTGlzdCQ6IEJlaGF2aW9yU3ViamVjdDxGb2xkZXJUcmVlTW9kZWw+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChcbiAgICBudWxsXG4gICk7XG4gIHByaXZhdGUgYXNzZXRMaXN0JDogQmVoYXZpb3JTdWJqZWN0PEFzc2V0TW9kZWxbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwpO1xuICBwcml2YXRlIG9wZW5EaWFsb2ckOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwpO1xuICBwdWJsaWMga2V5d29yZDogc3RyaW5nO1xuICBwdWJsaWMgcGFnZVNpemU6IG51bWJlcjtcbiAgcHVibGljIHBhZ2VJbmRleDogbnVtYmVyO1xuICBwdWJsaWMgZm9sZGVyVG90YWw6IG51bWJlcjtcbiAgcHVibGljIGZpbGVUb3RhbDogbnVtYmVyO1xuICBwdWJsaWMgc29ydEJ5OiBTb3J0RmlsZXNCeTtcbiAgcHVibGljIHNvcnRPcmRlcjogVHlwZVNvcnQ7XG4gIHB1YmxpYyBkaWFsb2dDb25maWc6IERpYWxvZ0NvbmZpZyA9IG5ldyBEaWFsb2dDb25maWcoKTtcbiAgcHVibGljIG1heFNpemU/OiBudW1iZXI7XG4gIHByaXZhdGUgYmFzZVVybDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoQU1fQ09ORklHKSBwcml2YXRlIF9lbnYsXG4gICAgcHVibGljIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgIHByaXZhdGUgX2FwaTogQmFzZUh0dHBDbGllbnRcbiAgKSB7XG4gICAgdGhpcy5iYXNlVXJsID0gdGhpcy5fZW52LmFzc2V0MlVybDtcbiAgICB0aGlzLmluaXRPcHRpb25GaWxlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0T3B0aW9uRmlsZXMoKSB7XG4gICAgdGhpcy5rZXl3b3JkID0gJyc7XG4gICAgdGhpcy5wYWdlU2l6ZSA9IDEyO1xuICAgIHRoaXMucGFnZUluZGV4ID0gMDtcbiAgICB0aGlzLmZvbGRlclRvdGFsID0gMDtcbiAgICB0aGlzLmZpbGVUb3RhbCA9IDA7XG4gICAgdGhpcy5zb3J0QnkgPSBTb3J0RmlsZXNCeS5NT0RJRklFRF9EQVRFO1xuICAgIHRoaXMuc29ydE9yZGVyID0gVHlwZVNvcnQuREVTQztcbiAgfVxuXG4gIHByaXZhdGUgcmVzZXREYXRhKCkge1xuICAgIHRoaXMuc2V0QXNzZXRMaXN0KG51bGwpO1xuICAgIHRoaXMuc2V0Rm9sZGVyTGlzdChudWxsKTtcbiAgfVxuXG4gIHJlc2V0QXNzZXQoKSB7XG4gICAgdGhpcy5pbml0T3B0aW9uRmlsZXMoKTtcbiAgICB0aGlzLnJlc2V0RGF0YSgpO1xuICB9XG5cbiAgZ2V0Rm9sZGVyTGlzdCgpOiBPYnNlcnZhYmxlPEZvbGRlclRyZWVNb2RlbD4ge1xuICAgIHJldHVybiB0aGlzLmZvbGRlckxpc3QkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgc2V0Rm9sZGVyTGlzdChmb2xkZXJzOiBGb2xkZXJUcmVlTW9kZWwsIGZvbGRlclRvdGFsPzogbnVtYmVyKSB7XG4gICAgdGhpcy5mb2xkZXJUb3RhbCA9IGZvbGRlclRvdGFsIHx8IDA7XG4gICAgdGhpcy5mb2xkZXJMaXN0JC5uZXh0KGZvbGRlcnMpO1xuICB9XG5cbiAgZ2V0QXNzZXRMaXN0KCk6IE9ic2VydmFibGU8QXNzZXRNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuYXNzZXRMaXN0JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHNldEFzc2V0TGlzdChhc3NldHM6IEFzc2V0TW9kZWxbXSwgcGFnaW5hdGlvbj86IGFueSkge1xuICAgIHRoaXMuc2V0UGFnaW5hdGlvbihwYWdpbmF0aW9uKTtcbiAgICB0aGlzLmFzc2V0TGlzdCQubmV4dChhc3NldHMpO1xuICB9XG5cbiAgc2V0RGlhbG9nT3BlblN0YXR1cyhzdGF0dXM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgIHRoaXMub3BlbkRpYWxvZyQubmV4dChzdGF0dXMpO1xuICB9XG5cbiAgZ2V0RGlhbG9nT3BlblN0YXR1cygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5vcGVuRGlhbG9nJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG5cbiAgcHJpdmF0ZSBzZXRQYWdpbmF0aW9uKHBhZ2luYXRpb24pIHtcbiAgICBpZiAocGFnaW5hdGlvbikge1xuICAgICAgdGhpcy5maWxlVG90YWwgPSBwYWdpbmF0aW9uLlRvdGFsO1xuICAgICAgdGhpcy5wYWdlSW5kZXggPSBwYWdpbmF0aW9uLlBhZ2VJbmRleDtcbiAgICAgIHRoaXMucGFnZVNpemUgPSBwYWdpbmF0aW9uLlBhZ2VTaXplO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRBc3NldEJ5SWQoYXNzZXRJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgdXJsID0gYCR7dGhpcy5iYXNlVXJsfS9GaWxlL0dldEJ5SWQvJHthc3NldElkfWA7XG4gICAgcmV0dXJuIHRoaXMuX2FwaS5nZXQ8QXNzZXRSZXN1bHRNb2RlbD4odXJsKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDaGlsZHJlbkZvbGRlcnMoeyBhc3NldElkLCBpc0ZpbHRlciA9IHRydWUgfTogSUFzc2V0QnlJZFBheWxvYWQpIHtcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLmJhc2VVcmx9L0ZpbGUvR2V0Q2hpbGRyZW5gO1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpLnNldCgnZ2V0QWxsJywgJ3RydWUnKS5zZXQoJ2lzRm9sZGVyJywgJ3RydWUnKTtcblxuICAgIGlmIChhc3NldElkKSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdhc3NldElkJywgYXNzZXRJZCk7XG4gICAgfVxuICAgIGlmIChpc0ZpbHRlciAmJiB0aGlzLmtleXdvcmQubGVuZ3RoKSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdrZXl3b3JkJywgdGhpcy5rZXl3b3JkIHx8ICcnKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZGlhbG9nQ29uZmlnLmFsbG93ZWRUeXBlKSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdmaWxlVHlwZScsIHRoaXMuZGlhbG9nQ29uZmlnLmFsbG93ZWRUeXBlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fYXBpLmdldDxBc3NldFJlc3VsdE1vZGVsPih1cmwsIHsgcGFyYW1zIH0pO1xuICB9XG5cbiAgcHVibGljIGdldENoaWxkcmVuQXNzZXRzKHsgYXNzZXRJZCwgcGFnZUluZGV4IH06IElDaGlsZHJlbkFzc2V0UGF5bG9hZCkge1xuICAgIGNvbnN0IHVybCA9IGAke3RoaXMuYmFzZVVybH0vRmlsZS9HZXRDaGlsZHJlbmA7XG4gICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKClcbiAgICAgIC5zZXQoJ3BhZ2VTaXplJywgdGhpcy5wYWdlU2l6ZS50b1N0cmluZygpKVxuICAgICAgLnNldCgncGFnZUluZGV4JywgcGFnZUluZGV4IHx8IHRoaXMucGFnZUluZGV4LnRvU3RyaW5nKCkpXG4gICAgICAuc2V0KCdnZXRBbGwnLCAnZmFsc2UnKVxuICAgICAgLnNldCgnaXNGb2xkZXInLCAnZmFsc2UnKVxuICAgICAgLnNldCgnVHlwZVNvcnQnLCB0aGlzLnNvcnRPcmRlci50b1N0cmluZygpKVxuICAgICAgLnNldCgnU29ydEZpbGVzQnknLCB0aGlzLnNvcnRCeS50b1N0cmluZygpKTtcblxuICAgIGlmIChhc3NldElkKSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdhc3NldElkJywgYXNzZXRJZCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmtleXdvcmQubGVuZ3RoKSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdrZXl3b3JkJywgdGhpcy5rZXl3b3JkIHx8ICcnKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZGlhbG9nQ29uZmlnLmFsbG93ZWRUeXBlKSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdmaWxlVHlwZScsIHRoaXMuZGlhbG9nQ29uZmlnLmFsbG93ZWRUeXBlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fYXBpLmdldDxBc3NldFJlc3VsdE1vZGVsPih1cmwsIHsgcGFyYW1zIH0pO1xuICB9XG59XG4iXX0=
332
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bycy1way9hc3NldC1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2Fzc2V0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBR0wsWUFBWSxFQUlaLFdBQVcsRUFDWCxRQUFRLEVBQ1Isb0JBQW9CLEVBQ3BCLHlCQUF5QixFQUMxQixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWpEO0lBb0JFLHNCQUM2QixJQUFJLEVBQ3hCLE1BQWlCLEVBQ2hCLElBQW9CO1FBRkQsU0FBSSxHQUFKLElBQUksQ0FBQTtRQUN4QixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2hCLFNBQUksR0FBSixJQUFJLENBQWdCO1FBckJ0QixnQkFBVyxHQUFxQyxJQUFJLGVBQWUsQ0FDekUsSUFBSSxDQUNMLENBQUM7UUFDTSxlQUFVLEdBQWtDLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RFLGdCQUFXLEdBQTZCLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBVW5FLGlCQUFZLEdBQWlCLElBQUksWUFBWSxFQUFFLENBQUM7UUFTckQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNuQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELHNCQUFJLGtDQUFROzs7O1FBQVo7WUFDRSxPQUFPO2dCQUNMLGNBQWMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWM7YUFDekMsQ0FBQTtRQUNILENBQUM7OztPQUFBOzs7OztJQUVPLHNDQUFlOzs7O0lBQXZCO1FBQ0UsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxvQkFBb0IsQ0FBQztRQUN2RSxJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQyxhQUFhLENBQUM7UUFDeEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDO0lBQ2pDLENBQUM7Ozs7O0lBRU8sZ0NBQVM7Ozs7SUFBakI7UUFDRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQzs7OztJQUVELGlDQUFVOzs7SUFBVjtRQUNFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7OztJQUVELG9DQUFhOzs7SUFBYjtRQUNFLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QyxDQUFDOzs7Ozs7SUFFRCxvQ0FBYTs7Ozs7SUFBYixVQUFjLE9BQXdCLEVBQUUsVUFBZ0I7UUFDdEQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQyxDQUFDOzs7O0lBRUQsbUNBQVk7OztJQUFaO1FBQ0UsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hDLENBQUM7Ozs7OztJQUVELG1DQUFZOzs7OztJQUFaLFVBQWEsTUFBb0IsRUFBRSxVQUFnQjtRQUNqRCxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9CLENBQUM7Ozs7O0lBRUQsMENBQW1COzs7O0lBQW5CLFVBQW9CLE1BQWU7UUFDbEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDL0IsQ0FBQzs7OztJQUVELDBDQUFtQjs7O0lBQW5CO1FBQ0UsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7Ozs7OztJQUdPLG9DQUFhOzs7OztJQUFyQixVQUFzQixVQUFVO1FBQzlCLElBQUksVUFBVSxFQUFFO1lBQ2QsSUFBSSxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDO1lBQ2xDLElBQUksQ0FBQyxTQUFTLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQztZQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDckM7SUFDSCxDQUFDOzs7Ozs7SUFFTywwQ0FBbUI7Ozs7O0lBQTNCLFVBQTRCLFVBQVU7UUFDcEMsSUFBSSxVQUFVLEVBQUU7WUFDZCxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7WUFDcEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxVQUFVLENBQUMsU0FBUyxDQUFDO1lBQzVDLElBQUksQ0FBQyxjQUFjLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQztTQUMzQztJQUNILENBQUM7Ozs7O0lBRU0sOENBQXVCOzs7O0lBQTlCLFVBQStCLFVBQVU7UUFDdkMsSUFBSSxVQUFVLEVBQUU7WUFDZCxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7U0FDckM7SUFDSCxDQUFDOzs7OztJQUVNLG1DQUFZOzs7O0lBQW5CLFVBQW9CLE9BQWU7O1lBQzNCLEdBQUcsR0FBTSxJQUFJLENBQUMsT0FBTyxzQkFBaUIsT0FBUztRQUNyRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFtQixHQUFHLENBQUMsQ0FBQztJQUM5QyxDQUFDOzs7OztJQUVNLHlDQUFrQjs7OztJQUF6QixVQUEwQixFQUFtSjtZQUFqSixvQkFBTyxFQUFFLGdCQUFlLEVBQWYsb0NBQWUsRUFBRSxpQkFBcUMsRUFBckMsMERBQXFDLEVBQUUsZ0JBQTJELEVBQTNELGdGQUEyRDs7WUFDaEosR0FBRyxHQUFNLElBQUksQ0FBQyxPQUFPLHNCQUFtQjs7WUFDMUMsTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFO2FBQzFCLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDO2FBQ3JCLEdBQUcsQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDO2FBQ3ZCLEdBQUcsQ0FBQyxVQUFVLEVBQUUsS0FBRyxRQUFVLENBQUM7YUFDOUIsR0FBRyxDQUFDLFdBQVcsRUFBRSxLQUFHLFNBQVcsQ0FBQztRQUVuQyxJQUFJLE9BQU8sRUFBRTtZQUNYLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUN6QztRQUNELElBQUksUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFO1lBQ25DLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ3BEO1FBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRTtZQUNqQyxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUNoRTtRQUVELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQW1CLEdBQUcsRUFBRSxFQUFFLE1BQU0sUUFBQSxFQUFFLENBQUMsQ0FBQztJQUMxRCxDQUFDOzs7OztJQUVNLHdDQUFpQjs7OztJQUF4QixVQUF5QixFQUE2QztZQUEzQyxvQkFBTyxFQUFFLHdCQUFTOztZQUNyQyxHQUFHLEdBQU0sSUFBSSxDQUFDLE9BQU8sc0JBQW1COztZQUMxQyxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUU7YUFDMUIsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQ3pDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDeEQsR0FBRyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUM7YUFDdEIsR0FBRyxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUM7YUFDeEIsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQzFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUU3QyxJQUFJLE9BQU8sRUFBRTtZQUNYLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUN6QztRQUNELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDdkIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUM7U0FDcEQ7UUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFO1lBQ2pDLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ2hFO1FBRUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBbUIsR0FBRyxFQUFFLEVBQUUsTUFBTSxRQUFBLEVBQUUsQ0FBQyxDQUFDO0lBQzFELENBQUM7O2dCQTFKRixVQUFVOzs7O2dEQXFCTixNQUFNLFNBQUMsU0FBUztnQkF0Q1osU0FBUztnQkFjVCxjQUFjOztJQThKdkIsbUJBQUM7Q0FBQSxBQTNKRCxJQTJKQztTQTFKWSxZQUFZOzs7Ozs7SUFDdkIsbUNBRUU7Ozs7O0lBQ0Ysa0NBQThFOzs7OztJQUM5RSxtQ0FBMEU7O0lBQzFFLCtCQUF1Qjs7SUFDdkIsZ0NBQXdCOztJQUN4QixpQ0FBeUI7O0lBQ3pCLHNDQUE4Qjs7SUFDOUIsdUNBQStCOztJQUMvQixtQ0FBMkI7O0lBQzNCLGlDQUF5Qjs7SUFDekIsOEJBQTJCOztJQUMzQixpQ0FBMkI7O0lBQzNCLG9DQUF1RDs7SUFDdkQsK0JBQXdCOzs7OztJQUN4QiwrQkFBd0I7Ozs7O0lBR3RCLDRCQUErQjs7SUFDL0IsOEJBQXdCOzs7OztJQUN4Qiw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBBc3NldE1vZGVsLFxuICBBc3NldFJlc3VsdE1vZGVsLFxuICBEaWFsb2dDb25maWcsXG4gIEZvbGRlclRyZWVNb2RlbCxcbiAgSUFzc2V0QnlJZFBheWxvYWQsXG4gIElDaGlsZHJlbkFzc2V0UGF5bG9hZCxcbiAgU29ydEZpbGVzQnksXG4gIFR5cGVTb3J0LFxuICBNQVhfRk9MREVSX1RSRUVfU0laRSxcbiAgREVGQVVMVF9GT0xERVJfVFJFRV9JTkRFWFxufSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgQmFzZUh0dHBDbGllbnQgfSBmcm9tICcuL2Jhc2Uuc2VydmljZSc7XG5pbXBvcnQgeyBBTV9DT05GSUcgfSBmcm9tICcuL2Vudi1jb25maWcuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBc3NldFNlcnZpY2Uge1xuICBwcml2YXRlIGZvbGRlckxpc3QkOiBCZWhhdmlvclN1YmplY3Q8Rm9sZGVyVHJlZU1vZGVsPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoXG4gICAgbnVsbFxuICApO1xuICBwcml2YXRlIGFzc2V0TGlzdCQ6IEJlaGF2aW9yU3ViamVjdDxBc3NldE1vZGVsW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgcHJpdmF0ZSBvcGVuRGlhbG9nJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgcHVibGljIGtleXdvcmQ6IHN0cmluZztcbiAgcHVibGljIHBhZ2VTaXplOiBudW1iZXI7XG4gIHB1YmxpYyBwYWdlSW5kZXg6IG51bWJlcjtcbiAgcHVibGljIHBhZ2VGb2xkZXJTaXplOiBudW1iZXI7XG4gIHB1YmxpYyBwYWdlRm9sZGVySW5kZXg6IG51bWJlcjtcbiAgcHVibGljIGZvbGRlclRvdGFsOiBudW1iZXI7XG4gIHB1YmxpYyBmaWxlVG90YWw6IG51bWJlcjtcbiAgcHVibGljIHNvcnRCeTogU29ydEZpbGVzQnk7XG4gIHB1YmxpYyBzb3J0T3JkZXI6IFR5cGVTb3J0O1xuICBwdWJsaWMgZGlhbG9nQ29uZmlnOiBEaWFsb2dDb25maWcgPSBuZXcgRGlhbG9nQ29uZmlnKCk7XG4gIHB1YmxpYyBtYXhTaXplPzogbnVtYmVyO1xuICBwcml2YXRlIGJhc2VVcmw6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KEFNX0NPTkZJRykgcHJpdmF0ZSBfZW52LFxuICAgIHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICBwcml2YXRlIF9hcGk6IEJhc2VIdHRwQ2xpZW50XG4gICkge1xuICAgIHRoaXMuYmFzZVVybCA9IHRoaXMuX2Vudi5hc3NldDJVcmw7XG4gICAgdGhpcy5pbml0T3B0aW9uRmlsZXMoKTtcbiAgfVxuXG4gIGdldCBBTUNvbmZpZygpe1xuICAgIHJldHVybiB7XG4gICAgICBwYWdlRm9sZGVyU2l6ZTogdGhpcy5fZW52LnBhZ2VGb2xkZXJTaXplXG4gICAgfVxuICB9IFxuXG4gIHByaXZhdGUgaW5pdE9wdGlvbkZpbGVzKCkge1xuICAgIHRoaXMua2V5d29yZCA9ICcnO1xuICAgIHRoaXMucGFnZVNpemUgPSAxMjtcbiAgICB0aGlzLnBhZ2VJbmRleCA9IDA7XG4gICAgdGhpcy5wYWdlRm9sZGVyU2l6ZSA9IHRoaXMuX2Vudi5wYWdlRm9sZGVyU2l6ZSB8fCBNQVhfRk9MREVSX1RSRUVfU0laRTtcbiAgICB0aGlzLnBhZ2VGb2xkZXJJbmRleCA9IDA7XG4gICAgdGhpcy5mb2xkZXJUb3RhbCA9IDA7XG4gICAgdGhpcy5maWxlVG90YWwgPSAwO1xuICAgIHRoaXMuc29ydEJ5ID0gU29ydEZpbGVzQnkuTU9ESUZJRURfREFURTtcbiAgICB0aGlzLnNvcnRPcmRlciA9IFR5cGVTb3J0LkRFU0M7XG4gIH1cblxuICBwcml2YXRlIHJlc2V0RGF0YSgpIHtcbiAgICB0aGlzLnNldEFzc2V0TGlzdChudWxsKTtcbiAgICB0aGlzLnNldEZvbGRlckxpc3QobnVsbCk7XG4gIH1cblxuICByZXNldEFzc2V0KCkge1xuICAgIHRoaXMuaW5pdE9wdGlvbkZpbGVzKCk7XG4gICAgdGhpcy5yZXNldERhdGEoKTtcbiAgfVxuXG4gIGdldEZvbGRlckxpc3QoKTogT2JzZXJ2YWJsZTxGb2xkZXJUcmVlTW9kZWw+IHtcbiAgICByZXR1cm4gdGhpcy5mb2xkZXJMaXN0JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHNldEZvbGRlckxpc3QoZm9sZGVyczogRm9sZGVyVHJlZU1vZGVsLCBwYWdpbmF0aW9uPzogYW55KSB7XG4gICAgdGhpcy5zZXRGb2xkZXJUcmVlUGFnaW5hdGlvbihwYWdpbmF0aW9uKTtcbiAgICB0aGlzLnNldEZvbGRlclBhZ2luYXRpb24ocGFnaW5hdGlvbik7XG4gICAgdGhpcy5mb2xkZXJMaXN0JC5uZXh0KGZvbGRlcnMpO1xuICB9XG5cbiAgZ2V0QXNzZXRMaXN0KCk6IE9ic2VydmFibGU8QXNzZXRNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuYXNzZXRMaXN0JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHNldEFzc2V0TGlzdChhc3NldHM6IEFzc2V0TW9kZWxbXSwgcGFnaW5hdGlvbj86IGFueSkge1xuICAgIHRoaXMuc2V0UGFnaW5hdGlvbihwYWdpbmF0aW9uKTtcbiAgICB0aGlzLmFzc2V0TGlzdCQubmV4dChhc3NldHMpO1xuICB9XG5cbiAgc2V0RGlhbG9nT3BlblN0YXR1cyhzdGF0dXM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgIHRoaXMub3BlbkRpYWxvZyQubmV4dChzdGF0dXMpO1xuICB9XG5cbiAgZ2V0RGlhbG9nT3BlblN0YXR1cygpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5vcGVuRGlhbG9nJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG5cbiAgcHJpdmF0ZSBzZXRQYWdpbmF0aW9uKHBhZ2luYXRpb24pIHtcbiAgICBpZiAocGFnaW5hdGlvbikge1xuICAgICAgdGhpcy5maWxlVG90YWwgPSBwYWdpbmF0aW9uLlRvdGFsO1xuICAgICAgdGhpcy5wYWdlSW5kZXggPSBwYWdpbmF0aW9uLlBhZ2VJbmRleDtcbiAgICAgIHRoaXMucGFnZVNpemUgPSBwYWdpbmF0aW9uLlBhZ2VTaXplO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0Rm9sZGVyUGFnaW5hdGlvbihwYWdpbmF0aW9uKSB7XG4gICAgaWYgKHBhZ2luYXRpb24pIHtcbiAgICAgIHRoaXMuZm9sZGVyVG90YWwgPSBwYWdpbmF0aW9uLlRvdGFsO1xuICAgICAgdGhpcy5wYWdlRm9sZGVySW5kZXggPSBwYWdpbmF0aW9uLlBhZ2VJbmRleDtcbiAgICAgIHRoaXMucGFnZUZvbGRlclNpemUgPSBwYWdpbmF0aW9uLlBhZ2VTaXplO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZXRGb2xkZXJUcmVlUGFnaW5hdGlvbihwYWdpbmF0aW9uKSB7XG4gICAgaWYgKHBhZ2luYXRpb24pIHtcbiAgICAgIHRoaXMuZm9sZGVyVG90YWwgPSBwYWdpbmF0aW9uLlRvdGFsO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRBc3NldEJ5SWQoYXNzZXRJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgdXJsID0gYCR7dGhpcy5iYXNlVXJsfS9GaWxlL0dldEJ5SWQvJHthc3NldElkfWA7XG4gICAgcmV0dXJuIHRoaXMuX2FwaS5nZXQ8QXNzZXRSZXN1bHRNb2RlbD4odXJsKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDaGlsZHJlbkZvbGRlcnMoeyBhc3NldElkLCBpc0ZpbHRlciA9IHRydWUsIHBhZ2VJbmRleCA9IERFRkFVTFRfRk9MREVSX1RSRUVfSU5ERVgsIHBhZ2VTaXplID0gdGhpcy5fZW52LnBhZ2VGb2xkZXJTaXplIHx8IE1BWF9GT0xERVJfVFJFRV9TSVpFIH06IElBc3NldEJ5SWRQYXlsb2FkKSB7XG4gICAgY29uc3QgdXJsID0gYCR7dGhpcy5iYXNlVXJsfS9GaWxlL0dldENoaWxkcmVuYDtcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKVxuICAgICAgLnNldCgnZ2V0QWxsJywgJ3RydWUnKVxuICAgICAgLnNldCgnaXNGb2xkZXInLCAndHJ1ZScpXG4gICAgICAuc2V0KCdwYWdlU2l6ZScsIGAke3BhZ2VTaXplfWApXG4gICAgICAuc2V0KCdwYWdlSW5kZXgnLCBgJHtwYWdlSW5kZXh9YCk7XG4gICAgXG4gICAgaWYgKGFzc2V0SWQpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2Fzc2V0SWQnLCBhc3NldElkKTtcbiAgICB9XG4gICAgaWYgKGlzRmlsdGVyICYmIHRoaXMua2V5d29yZC5sZW5ndGgpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2tleXdvcmQnLCB0aGlzLmtleXdvcmQgfHwgJycpO1xuICAgIH1cbiAgICBpZiAodGhpcy5kaWFsb2dDb25maWcuYWxsb3dlZFR5cGUpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2ZpbGVUeXBlJywgdGhpcy5kaWFsb2dDb25maWcuYWxsb3dlZFR5cGUpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9hcGkuZ2V0PEFzc2V0UmVzdWx0TW9kZWw+KHVybCwgeyBwYXJhbXMgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q2hpbGRyZW5Bc3NldHMoeyBhc3NldElkLCBwYWdlSW5kZXggfTogSUNoaWxkcmVuQXNzZXRQYXlsb2FkKSB7XG4gICAgY29uc3QgdXJsID0gYCR7dGhpcy5iYXNlVXJsfS9GaWxlL0dldENoaWxkcmVuYDtcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKVxuICAgICAgLnNldCgncGFnZVNpemUnLCB0aGlzLnBhZ2VTaXplLnRvU3RyaW5nKCkpXG4gICAgICAuc2V0KCdwYWdlSW5kZXgnLCBwYWdlSW5kZXggfHwgdGhpcy5wYWdlSW5kZXgudG9TdHJpbmcoKSlcbiAgICAgIC5zZXQoJ2dldEFsbCcsICdmYWxzZScpXG4gICAgICAuc2V0KCdpc0ZvbGRlcicsICdmYWxzZScpXG4gICAgICAuc2V0KCdUeXBlU29ydCcsIHRoaXMuc29ydE9yZGVyLnRvU3RyaW5nKCkpXG4gICAgICAuc2V0KCdTb3J0RmlsZXNCeScsIHRoaXMuc29ydEJ5LnRvU3RyaW5nKCkpO1xuXG4gICAgaWYgKGFzc2V0SWQpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2Fzc2V0SWQnLCBhc3NldElkKTtcbiAgICB9XG4gICAgaWYgKHRoaXMua2V5d29yZC5sZW5ndGgpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2tleXdvcmQnLCB0aGlzLmtleXdvcmQgfHwgJycpO1xuICAgIH1cbiAgICBpZiAodGhpcy5kaWFsb2dDb25maWcuYWxsb3dlZFR5cGUpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2ZpbGVUeXBlJywgdGhpcy5kaWFsb2dDb25maWcuYWxsb3dlZFR5cGUpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9hcGkuZ2V0PEFzc2V0UmVzdWx0TW9kZWw+KHVybCwgeyBwYXJhbXMgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -12,7 +12,9 @@ if (false) {
12
12
  AMConfig.prototype.asset2Url;
13
13
  /** @type {?|undefined} */
14
14
  AMConfig.prototype.requestHeader;
15
+ /** @type {?|undefined} */
16
+ AMConfig.prototype.pageFolderSize;
15
17
  }
16
18
  /** @type {?} */
17
19
  export var AM_CONFIG = new InjectionToken('asset.man.config.angular');
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52LWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJzLXBrL2Fzc2V0LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvZW52LWNvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBRS9DLDhCQUdDOzs7SUFGQyw2QkFBa0I7O0lBQ2xCLGlDQUE0Qjs7O0FBRzlCLE1BQU0sS0FBTyxTQUFTLEdBQUcsSUFBSSxjQUFjLENBQ3pDLDBCQUEwQixDQUMzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBBTUNvbmZpZyB7XG4gIGFzc2V0MlVybDogc3RyaW5nO1xuICByZXF1ZXN0SGVhZGVyPzogSHR0cEhlYWRlcnM7XG59XG5cbmV4cG9ydCBjb25zdCBBTV9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48QU1Db25maWc+KFxuICAnYXNzZXQubWFuLmNvbmZpZy5hbmd1bGFyJ1xuKTtcbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52LWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJzLXBrL2Fzc2V0LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvZW52LWNvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBRS9DLDhCQUlDOzs7SUFIQyw2QkFBa0I7O0lBQ2xCLGlDQUE0Qjs7SUFDNUIsa0NBQXdCOzs7QUFHMUIsTUFBTSxLQUFPLFNBQVMsR0FBRyxJQUFJLGNBQWMsQ0FDekMsMEJBQTBCLENBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFNQ29uZmlnIHtcbiAgYXNzZXQyVXJsOiBzdHJpbmc7XG4gIHJlcXVlc3RIZWFkZXI/OiBIdHRwSGVhZGVycztcbiAgcGFnZUZvbGRlclNpemU/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjb25zdCBBTV9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48QU1Db25maWc+KFxuICAnYXNzZXQubWFuLmNvbmZpZy5hbmd1bGFyJ1xuKTtcbiJdfQ==
@@ -6,7 +6,7 @@ import * as tslib_1 from "tslib";
6
6
  import { Injectable } from '@angular/core';
7
7
  import { BehaviorSubject } from 'rxjs/internal/BehaviorSubject';
8
8
  import { AssetManagementService } from '../asset-management.service';
9
- import { DynamicFlatNode } from '../models';
9
+ import { DynamicFlatNode, MAX_FOLDER_TREE_SIZE } from '../models';
10
10
  import { ActionTypes } from '../store';
11
11
  import { AssetService } from './asset.service';
12
12
  var NodeTreeService = /** @class */ (function () {
@@ -78,19 +78,19 @@ var NodeTreeService = /** @class */ (function () {
78
78
  * @return {?}
79
79
  */
80
80
  function (_a) {
81
- var dispatchRootId = _a.dispatchRootId;
81
+ var dispatchRootId = _a.dispatchRootId, _b = _a.pageSize, pageSize = _b === void 0 ? this.assetService.AMConfig.pageFolderSize || MAX_FOLDER_TREE_SIZE : _b;
82
82
  return tslib_1.__awaiter(this, void 0, void 0, function () {
83
83
  var result, initData;
84
84
  var _this = this;
85
- return tslib_1.__generator(this, function (_b) {
86
- switch (_b.label) {
85
+ return tslib_1.__generator(this, function (_c) {
86
+ switch (_c.label) {
87
87
  case 0:
88
88
  if (dispatchRootId) {
89
89
  this.loading$.next(true);
90
90
  }
91
- return [4 /*yield*/, this.assetService.getChildrenFolders({ isFilter: false }).toPromise()];
91
+ return [4 /*yield*/, this.assetService.getChildrenFolders({ isFilter: false, pageIndex: 0, pageSize: pageSize }).toPromise()];
92
92
  case 1:
93
- result = _b.sent();
93
+ result = _c.sent();
94
94
  if (!result) {
95
95
  return [2 /*return*/];
96
96
  }
@@ -109,7 +109,7 @@ var NodeTreeService = /** @class */ (function () {
109
109
  * @param {?} folder
110
110
  * @return {?}
111
111
  */
112
- function (folder) { return new DynamicFlatNode(folder, 0, _this.isExpandable(folder)); }));
112
+ function (folder) { return _this.getDynamicFlatNode(folder, 0); }));
113
113
  this.initialData$.next(initData);
114
114
  if (dispatchRootId) {
115
115
  this.loading$.next(false);
@@ -119,6 +119,20 @@ var NodeTreeService = /** @class */ (function () {
119
119
  });
120
120
  });
121
121
  };
122
+ /**
123
+ * @param {?} node
124
+ * @param {?=} level
125
+ * @return {?}
126
+ */
127
+ NodeTreeService.prototype.getDynamicFlatNode = /**
128
+ * @param {?} node
129
+ * @param {?=} level
130
+ * @return {?}
131
+ */
132
+ function (node, level) {
133
+ if (level === void 0) { level = 0; }
134
+ return new DynamicFlatNode(node, level, this.isExpandable(node));
135
+ };
122
136
  /**
123
137
  * @param {?} node
124
138
  * @return {?}
@@ -146,7 +160,7 @@ var NodeTreeService = /** @class */ (function () {
146
160
  * @return {?}
147
161
  */
148
162
  function (node) {
149
- return node.HaveChildren;
163
+ return Boolean(node.HaveChildren);
150
164
  };
151
165
  /** Add asset to stored data */
152
166
  /**
@@ -275,4 +289,4 @@ if (false) {
275
289
  */
276
290
  NodeTreeService.prototype.svc;
277
291
  }
278
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10cmVlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcnMtcGsvYXNzZXQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9ub2RlLXRyZWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBYyxlQUFlLEVBQThDLE1BQU0sV0FBVyxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDdkMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DO0lBRUUseUJBQW9CLFlBQTBCLEVBQVUsR0FBMkI7UUFBL0QsaUJBQVksR0FBWixZQUFZLENBQWM7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUF3QjtRQUU1RSxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFlLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELGFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUMvQyxpQkFBWSxHQUF1QyxJQUFJLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUpLLENBQUM7SUFPeEYsc0JBQUksaUNBQUk7Ozs7UUFBUjtZQUNFLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNyQyxDQUFDOzs7OztRQUNELFVBQVMsTUFBb0I7WUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEMsQ0FBQzs7O09BSEE7Ozs7OztJQUthLDZDQUFtQjs7Ozs7SUFBakMsVUFBa0MsRUFBVTs7Ozs7Ozt3QkFFekIscUJBQU0sSUFBSSxDQUFDLFlBQVks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Ozs7SUFHMUIsc0NBQTJEOztJQUMzRCxtQ0FBc0Q7O0lBQ3RELHVDQUFrRjs7SUFDbEYscUNBQThCOzs7OztJQUxsQix1Q0FBa0M7Ozs7O0lBQUUsOEJBQW1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcy9pbnRlcm5hbC9CZWhhdmlvclN1YmplY3QnO1xuaW1wb3J0IHsgQXNzZXRNYW5hZ2VtZW50U2VydmljZSB9IGZyb20gJy4uL2Fzc2V0LW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBc3NldE1vZGVsLCBEeW5hbWljRmxhdE5vZGUsIEZvbGRlclRyZWVNb2RlbCwgSUluaXRpYWxGb2xkZXJUcmVlT3B0aW9ucyB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBBY3Rpb25UeXBlcyB9IGZyb20gJy4uL3N0b3JlJztcbmltcG9ydCB7IEFzc2V0U2VydmljZSB9IGZyb20gJy4vYXNzZXQuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOb2RlVHJlZVNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFzc2V0U2VydmljZTogQXNzZXRTZXJ2aWNlLCBwcml2YXRlIHN2YzogQXNzZXRNYW5hZ2VtZW50U2VydmljZSkgeyB9XG5cbiAgcHVibGljIHN0b3JlZERhdGEkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBc3NldE1vZGVsW10+KFtdKTtcbiAgcHVibGljIGxvYWRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyBpbml0aWFsRGF0YSQ6IEJlaGF2aW9yU3ViamVjdDxEeW5hbWljRmxhdE5vZGVbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFtdKTtcbiAgcHVibGljIHJvb3RGb2xkZXI6IEFzc2V0TW9kZWw7XG5cbiAgZ2V0IGRhdGEoKTogQXNzZXRNb2RlbFtdIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZWREYXRhJC5nZXRWYWx1ZSgpO1xuICB9XG4gIHNldCBkYXRhKHZhbHVlczogQXNzZXRNb2RlbFtdKSB7XG4gICAgdGhpcy5zdG9yZWREYXRhJC5uZXh0KHZhbHVlcyk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGZldGNoQ2hpbGRyZW5Gb2xkZXIoaWQ6IHN0cmluZyk6IFByb21pc2U8Rm9sZGVyVHJlZU1vZGVsPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuYXNzZXRTZXJ2aWNlLmdldENoaWxkcmVuRm9sZGVycyh7IGFzc2V0SWQ6IGlkLCBpc0ZpbHRlcjogZmFsc2UgfSkudG9Qcm9taXNlKCk7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIHJldHVybiByZXN1bHQuRGF0YTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHsgfVxuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKiBJbml0aWFsIGRhdGEgZnJvbSBkYXRhYmFzZSAqL1xuICBwdWJsaWMgYXN5bmMgaW5pdGlhbERhdGEoXG4gICAgeyBkaXNwYXRjaFJvb3RJZCB9OiBJSW5pdGlhbEZvbGRlclRyZWVPcHRpb25zXG4gICk6IFByb21pc2U8RHluYW1pY0ZsYXROb2RlW10+IHtcbiAgICBpZiAoZGlzcGF0Y2hSb290SWQpIHsgdGhpcy5sb2FkaW5nJC5uZXh0KHRydWUpOyB9XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5hc3NldFNlcnZpY2UuZ2V0Q2hpbGRyZW5Gb2xkZXJzKHsgaXNGaWx0ZXI6IGZhbHNlIH0pLnRvUHJvbWlzZSgpO1xuICAgIGlmICghcmVzdWx0KSB7IHJldHVybjsgfVxuICAgIGlmIChkaXNwYXRjaFJvb3RJZCkge1xuICAgICAgdGhpcy5zdmMuZGlzcGF0Y2goe1xuICAgICAgICB0eXBlOiBBY3Rpb25UeXBlcy5TRVRfQ1VSUkVOVF9GT0xERVJfSUQsXG4gICAgICAgIHBheWxvYWQ6IHJlc3VsdC5EYXRhLkFzc2V0SWQsXG4gICAgICB9KTtcbiAgICAgIHRoaXMuc3ZjLmRpc3BhdGNoKHtcbiAgICAgICAgdHlwZTogQWN0aW9uVHlwZXMuU0VUX0NVUlJFTlRfRk9MREVSX0hJRVJBUkNIWSxcbiAgICAgICAgcGF5bG9hZDogW10sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5yb290Rm9sZGVyID0gcmVzdWx0LkRhdGE7XG4gICAgY29uc3QgaW5pdERhdGEgPSByZXN1bHQuRGF0YS5DaGlsZHJlbi5tYXAoXG4gICAgICAoZm9sZGVyKSA9PiBuZXcgRHluYW1pY0ZsYXROb2RlKGZvbGRlciwgMCwgdGhpcy5pc0V4cGFuZGFibGUoZm9sZGVyKSlcbiAgICApO1xuICAgIHRoaXMuaW5pdGlhbERhdGEkLm5leHQoaW5pdERhdGEpO1xuXG4gICAgaWYgKGRpc3BhdGNoUm9vdElkKSB7IHRoaXMubG9hZGluZyQubmV4dChmYWxzZSk7IH1cbiAgICByZXR1cm4gdGhpcy5pbml0aWFsRGF0YSQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRDaGlsZHJlbihub2RlOiBGb2xkZXJUcmVlTW9kZWwpOiBQcm9taXNlPEZvbGRlclRyZWVNb2RlbD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmZldGNoQ2hpbGRyZW5Gb2xkZXIobm9kZS5Bc3NldElkKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0V4cGFuZGFibGUobm9kZTogRm9sZGVyVHJlZU1vZGVsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIG5vZGUuSGF2ZUNoaWxkcmVuO1xuICB9XG5cbiAgLyoqIEFkZCBhc3NldCB0byBzdG9yZWQgZGF0YSAqL1xuICBwdWJsaWMgYWRkTm9kZShhc3NldDogQXNzZXRNb2RlbCwgcGFyZW50SWQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBsZXQgZGF0YSA9IFsuLi50aGlzLmRhdGFdO1xuICAgIGNvbnN0IGluZGV4ID0gZGF0YS5maW5kSW5kZXgoKG5vZGUpID0+IG5vZGUuQXNzZXRJZCA9PT0gYXNzZXQuQXNzZXRJZCk7XG4gICAgaWYgKGluZGV4IDwgMCkge1xuICAgICAgZGF0YSA9IFsuLi5kYXRhLCB7IC4uLmFzc2V0LCBQYXJlbnRJZDogcGFyZW50SWQgPyBwYXJlbnRJZCA6IG51bGwgfV07XG4gICAgfVxuICAgIHRoaXMuZGF0YSA9IGRhdGE7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgdXBkYXRlQnJlYWRjcnVtYihpZDogc3RyaW5nKSB7XG4gICAgY29uc3QgZm9sZGVyID0gdGhpcy5kYXRhLmZpbmQoKG4pID0+IG4uQXNzZXRJZCA9PT0gaWQpO1xuICAgIGlmIChmb2xkZXIpIHtcbiAgICAgIGNvbnN0IGhpZXJhcmNoeSA9IHRoaXMuZ2V0Rm9sZGVySGllcmFyY2h5KGZvbGRlcik7XG4gICAgICB0aGlzLnN2Yy5kaXNwYXRjaCh7XG4gICAgICAgIHR5cGU6IEFjdGlvblR5cGVzLlNFVF9DVVJSRU5UX0ZPTERFUl9ISUVSQVJDSFksXG4gICAgICAgIHBheWxvYWQ6IGhpZXJhcmNoeSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0QXNzZXRQYXJlbnQobm9kZTogQXNzZXRNb2RlbCk6IEFzc2V0TW9kZWwge1xuICAgIHJldHVybiB0aGlzLmRhdGEuZmluZCgobikgPT4gbi5Bc3NldElkID09PSBub2RlLlBhcmVudElkKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Rm9sZGVySGllcmFyY2h5KG5vZGU6IEZvbGRlclRyZWVNb2RlbCk6IEFycmF5PEZvbGRlclRyZWVNb2RlbD4ge1xuICAgIGlmICghbm9kZSkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgICBsZXQgcGFyZW50SGllcmFyY2h5OiBBcnJheTxGb2xkZXJUcmVlTW9kZWw+ID0gW107XG4gICAgbGV0IHBhcmVudCA9IHRoaXMuZ2V0QXNzZXRQYXJlbnQobm9kZSk7XG4gICAgd2hpbGUgKHBhcmVudCkge1xuICAgICAgcGFyZW50SGllcmFyY2h5ID0gW3BhcmVudCwgLi4ucGFyZW50SGllcmFyY2h5XTtcbiAgICAgIHBhcmVudCA9IHRoaXMuZ2V0QXNzZXRQYXJlbnQocGFyZW50KTtcbiAgICB9XG4gICAgcmV0dXJuIFsuLi5wYXJlbnRIaWVyYXJjaHksIG5vZGVdO1xuICB9XG59XG4iXX0=
292
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10cmVlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcnMtcGsvYXNzZXQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9ub2RlLXRyZWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBYyxlQUFlLEVBQThDLG9CQUFvQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzFILE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDdkMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DO0lBRUUseUJBQW9CLFlBQTBCLEVBQVUsR0FBMkI7UUFBL0QsaUJBQVksR0FBWixZQUFZLENBQWM7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUF3QjtRQUU1RSxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFlLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELGFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUMvQyxpQkFBWSxHQUF1QyxJQUFJLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUpLLENBQUM7SUFPeEYsc0JBQUksaUNBQUk7Ozs7UUFBUjtZQUNFLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNyQyxDQUFDOzs7OztRQUNELFVBQVMsTUFBb0I7WUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEMsQ0FBQzs7O09BSEE7Ozs7OztJQUthLDZDQUFtQjs7Ozs7SUFBakMsVUFBa0MsRUFBVTs7Ozs7Ozt3QkFFekIscUJBQU0sSUFB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RUFBRTtZQUNiLGVBQWUscUJBQUksTUFBTSxHQUFLLGVBQWUsQ0FBQyxDQUFDO1lBQy9DLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3RDO1FBQ0Qsd0JBQVcsZUFBZSxHQUFFLElBQUksR0FBRTtJQUNwQyxDQUFDOztnQkFyR0YsVUFBVTs7OztnQkFGRixZQUFZO2dCQUhaLHNCQUFzQjs7SUEyRy9CLHNCQUFDO0NBQUEsQUF0R0QsSUFzR0M7U0FyR1ksZUFBZTs7O0lBRzFCLHNDQUEyRDs7SUFDM0QsbUNBQXNEOztJQUN0RCx1Q0FBa0Y7O0lBQ2xGLHFDQUE4Qjs7Ozs7SUFMbEIsdUNBQWtDOzs7OztJQUFFLDhCQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMvaW50ZXJuYWwvQmVoYXZpb3JTdWJqZWN0JztcbmltcG9ydCB7IEFzc2V0TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuLi9hc3NldC1tYW5hZ2VtZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQXNzZXRNb2RlbCwgRHluYW1pY0ZsYXROb2RlLCBGb2xkZXJUcmVlTW9kZWwsIElJbml0aWFsRm9sZGVyVHJlZU9wdGlvbnMsIE1BWF9GT0xERVJfVFJFRV9TSVpFIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IEFjdGlvblR5cGVzIH0gZnJvbSAnLi4vc3RvcmUnO1xuaW1wb3J0IHsgQXNzZXRTZXJ2aWNlIH0gZnJvbSAnLi9hc3NldC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5vZGVUcmVlU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXNzZXRTZXJ2aWNlOiBBc3NldFNlcnZpY2UsIHByaXZhdGUgc3ZjOiBBc3NldE1hbmFnZW1lbnRTZXJ2aWNlKSB7IH1cblxuICBwdWJsaWMgc3RvcmVkRGF0YSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFzc2V0TW9kZWxbXT4oW10pO1xuICBwdWJsaWMgbG9hZGluZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHVibGljIGluaXRpYWxEYXRhJDogQmVoYXZpb3JTdWJqZWN0PER5bmFtaWNGbGF0Tm9kZVtdPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoW10pO1xuICBwdWJsaWMgcm9vdEZvbGRlcjogQXNzZXRNb2RlbDtcblxuICBnZXQgZGF0YSgpOiBBc3NldE1vZGVsW10ge1xuICAgIHJldHVybiB0aGlzLnN0b3JlZERhdGEkLmdldFZhbHVlKCk7XG4gIH1cbiAgc2V0IGRhdGEodmFsdWVzOiBBc3NldE1vZGVsW10pIHtcbiAgICB0aGlzLnN0b3JlZERhdGEkLm5leHQodmFsdWVzKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZmV0Y2hDaGlsZHJlbkZvbGRlcihpZDogc3RyaW5nKTogUHJvbWlzZTxGb2xkZXJUcmVlTW9kZWw+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5hc3NldFNlcnZpY2UuZ2V0Q2hpbGRyZW5Gb2xkZXJzKHsgYXNzZXRJZDogaWQsIGlzRmlsdGVyOiBmYWxzZSB9KS50b1Byb21pc2UoKTtcbiAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5EYXRhO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikgeyB9XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqIEluaXRpYWwgZGF0YSBmcm9tIGRhdGFiYXNlICovXG4gIHB1YmxpYyBhc3luYyBpbml0aWFsRGF0YShcbiAgICB7IGRpc3BhdGNoUm9vdElkLCBwYWdlU2l6ZSA9IHRoaXMuYXNzZXRTZXJ2aWNlLkFNQ29uZmlnLnBhZ2VGb2xkZXJTaXplIHx8IE1BWF9GT0xERVJfVFJFRV9TSVpFIH06IElJbml0aWFsRm9sZGVyVHJlZU9wdGlvbnNcbiAgKTogUHJvbWlzZTxEeW5hbWljRmxhdE5vZGVbXT4ge1xuICAgIGlmIChkaXNwYXRjaFJvb3RJZCkgeyB0aGlzLmxvYWRpbmckLm5leHQodHJ1ZSk7IH1cbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmFzc2V0U2VydmljZS5nZXRDaGlsZHJlbkZvbGRlcnMoeyBpc0ZpbHRlcjogZmFsc2UsIHBhZ2VJbmRleDogMCwgcGFnZVNpemUgfSkudG9Qcm9taXNlKCk7XG4gICAgaWYgKCFyZXN1bHQpIHsgcmV0dXJuOyB9XG4gICAgaWYgKGRpc3BhdGNoUm9vdElkKSB7XG4gICAgICB0aGlzLnN2Yy5kaXNwYXRjaCh7XG4gICAgICAgIHR5cGU6IEFjdGlvblR5cGVzLlNFVF9DVVJSRU5UX0ZPTERFUl9JRCxcbiAgICAgICAgcGF5bG9hZDogcmVzdWx0LkRhdGEuQXNzZXRJZCxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5zdmMuZGlzcGF0Y2goe1xuICAgICAgICB0eXBlOiBBY3Rpb25UeXBlcy5TRVRfQ1VSUkVOVF9GT0xERVJfSElFUkFSQ0hZLFxuICAgICAgICBwYXlsb2FkOiBbXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLnJvb3RGb2xkZXIgPSByZXN1bHQuRGF0YTtcbiAgICBjb25zdCBpbml0RGF0YSA9IHJlc3VsdC5EYXRhLkNoaWxkcmVuLm1hcChcbiAgICAgIChmb2xkZXIpID0+IHRoaXMuZ2V0RHluYW1pY0ZsYXROb2RlKGZvbGRlciwgMClcbiAgICApO1xuICAgIHRoaXMuaW5pdGlhbERhdGEkLm5leHQoaW5pdERhdGEpO1xuXG4gICAgaWYgKGRpc3BhdGNoUm9vdElkKSB7IHRoaXMubG9hZGluZyQubmV4dChmYWxzZSk7IH1cbiAgICByZXR1cm4gdGhpcy5pbml0aWFsRGF0YSQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXREeW5hbWljRmxhdE5vZGUobm9kZTogRm9sZGVyVHJlZU1vZGVsLCBsZXZlbCA9IDApOiBEeW5hbWljRmxhdE5vZGUge1xuICAgIHJldHVybiBuZXcgRHluYW1pY0ZsYXROb2RlKG5vZGUsIGxldmVsLCB0aGlzLmlzRXhwYW5kYWJsZShub2RlKSk7IFxuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldENoaWxkcmVuKG5vZGU6IEZvbGRlclRyZWVNb2RlbCk6IFByb21pc2U8Rm9sZGVyVHJlZU1vZGVsPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuZmV0Y2hDaGlsZHJlbkZvbGRlcihub2RlLkFzc2V0SWQpO1xuICB9XG5cbiAgcHVibGljIGlzRXhwYW5kYWJsZShub2RlOiBGb2xkZXJUcmVlTW9kZWwpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQm9vbGVhbihub2RlLkhhdmVDaGlsZHJlbik7XG4gIH1cblxuICAvKiogQWRkIGFzc2V0IHRvIHN0b3JlZCBkYXRhICovXG4gIHB1YmxpYyBhZGROb2RlKGFzc2V0OiBBc3NldE1vZGVsLCBwYXJlbnRJZD86IHN0cmluZyk6IHZvaWQge1xuICAgIGxldCBkYXRhID0gWy4uLnRoaXMuZGF0YV07XG4gICAgY29uc3QgaW5kZXggPSBkYXRhLmZpbmRJbmRleCgobm9kZSkgPT4gbm9kZS5Bc3NldElkID09PSBhc3NldC5Bc3NldElkKTtcbiAgICBpZiAoaW5kZXggPCAwKSB7XG4gICAgICBkYXRhID0gWy4uLmRhdGEsIHsgLi4uYXNzZXQsIFBhcmVudElkOiBwYXJlbnRJZCA/IHBhcmVudElkIDogbnVsbCB9XTtcbiAgICB9XG4gICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyB1cGRhdGVCcmVhZGNydW1iKGlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBmb2xkZXIgPSB0aGlzLmRhdGEuZmluZCgobikgPT4gbi5Bc3NldElkID09PSBpZCk7XG4gICAgaWYgKGZvbGRlcikge1xuICAgICAgY29uc3QgaGllcmFyY2h5ID0gdGhpcy5nZXRGb2xkZXJIaWVyYXJjaHkoZm9sZGVyKTtcbiAgICAgIHRoaXMuc3ZjLmRpc3BhdGNoKHtcbiAgICAgICAgdHlwZTogQWN0aW9uVHlwZXMuU0VUX0NVUlJFTlRfRk9MREVSX0hJRVJBUkNIWSxcbiAgICAgICAgcGF5bG9hZDogaGllcmFyY2h5LFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRBc3NldFBhcmVudChub2RlOiBBc3NldE1vZGVsKTogQXNzZXRNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YS5maW5kKChuKSA9PiBuLkFzc2V0SWQgPT09IG5vZGUuUGFyZW50SWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGb2xkZXJIaWVyYXJjaHkobm9kZTogRm9sZGVyVHJlZU1vZGVsKTogQXJyYXk8Rm9sZGVyVHJlZU1vZGVsPiB7XG4gICAgaWYgKCFub2RlKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGxldCBwYXJlbnRIaWVyYXJjaHk6IEFycmF5PEZvbGRlclRyZWVNb2RlbD4gPSBbXTtcbiAgICBsZXQgcGFyZW50ID0gdGhpcy5nZXRBc3NldFBhcmVudChub2RlKTtcbiAgICB3aGlsZSAocGFyZW50KSB7XG4gICAgICBwYXJlbnRIaWVyYXJjaHkgPSBbcGFyZW50LCAuLi5wYXJlbnRIaWVyYXJjaHldO1xuICAgICAgcGFyZW50ID0gdGhpcy5nZXRBc3NldFBhcmVudChwYXJlbnQpO1xuICAgIH1cbiAgICByZXR1cm4gWy4uLnBhcmVudEhpZXJhcmNoeSwgbm9kZV07XG4gIH1cbn1cbiJdfQ==