@rs-pk/asset-management 1.0.30 → 1.0.33

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 (120) hide show
  1. package/bundles/rs-pk-asset-management.umd.js +1923 -2324
  2. package/bundles/rs-pk-asset-management.umd.js.map +1 -1
  3. package/bundles/rs-pk-asset-management.umd.min.js +1 -15
  4. package/bundles/rs-pk-asset-management.umd.min.js.map +1 -1
  5. package/esm2015/lib/asset-management.component.js +3 -3
  6. package/esm2015/lib/asset-management.module.js +2 -2
  7. package/esm2015/lib/asset-management.service.js +2 -2
  8. package/esm2015/lib/components/partial/add-folder-dialog/add-folder-dialog.component.js +3 -3
  9. package/esm2015/lib/components/partial/asset-dialog/asset-dialog.component.js +3 -3
  10. package/esm2015/lib/components/partial/asset-item/asset-item.component.js +3 -3
  11. package/esm2015/lib/components/partial/asset-list/asset-list.component.js +3 -3
  12. package/esm2015/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +3 -3
  13. package/esm2015/lib/components/partial/asset-wrapper/asset-wrapper.component.js +3 -3
  14. package/esm2015/lib/components/partial/breadcrumb/breadcrumb.component.js +3 -3
  15. package/esm2015/lib/components/partial/delete-dialog/delete-dialog.component.js +2 -2
  16. package/esm2015/lib/components/partial/edit-folder-dialog/edit-folder-dialog.component.js +3 -3
  17. package/esm2015/lib/components/partial/file-item/file-item.component.js +3 -3
  18. package/esm2015/lib/components/partial/file-list/file-list.component.js +3 -3
  19. package/esm2015/lib/components/partial/folder-item/folder-item.component.js +3 -3
  20. package/esm2015/lib/components/partial/folder-list/folder-list.component.js +3 -3
  21. package/esm2015/lib/components/partial/node-details/node-details.component.js +3 -3
  22. package/esm2015/lib/components/partial/node-tree/node-tree.component.js +3 -3
  23. package/esm2015/lib/components/partial/search-box/search-box.component.js +3 -3
  24. package/esm2015/lib/components/partial/sort-items/sort-items.component.js +3 -3
  25. package/esm2015/lib/components/partial/upload-dialog/upload-dialog.component.js +3 -3
  26. package/esm2015/lib/components/partial/upload-file/upload-file.component.js +3 -3
  27. package/esm2015/lib/components/ui/drag-to-resize/drag-to-resize.component.js +3 -3
  28. package/esm2015/lib/components/ui/input-file/input-file.component.js +3 -3
  29. package/esm2015/lib/components/ui/modal/modal.component.js +3 -3
  30. package/esm2015/lib/components/ui/search-not-found/search-not-found.component.js +3 -3
  31. package/esm2015/lib/configs/admin.config.js +2 -2
  32. package/esm2015/lib/contanst/data-image.js +2 -2
  33. package/esm2015/lib/contanst/index.js +2 -2
  34. package/esm2015/lib/datasources/index.js +2 -2
  35. package/esm2015/lib/datasources/node-tree.datasource.js +2 -2
  36. package/esm2015/lib/directives/dialogTrigger.directive.js +2 -2
  37. package/esm2015/lib/directives/directives.module.js +2 -2
  38. package/esm2015/lib/directives/dnd.directive.js +2 -2
  39. package/esm2015/lib/models/asset-file.model.js +2 -2
  40. package/esm2015/lib/models/asset.model.js +2 -2
  41. package/esm2015/lib/models/file-type.enum.js +2 -2
  42. package/esm2015/lib/models/file.model.js +2 -2
  43. package/esm2015/lib/models/index.js +2 -2
  44. package/esm2015/lib/models/node-tree.model.js +2 -2
  45. package/esm2015/lib/models/sort.enum.js +2 -2
  46. package/esm2015/lib/pipes/datetime.pipe.js +2 -2
  47. package/esm2015/lib/pipes/file-size.pipe.js +2 -2
  48. package/esm2015/lib/services/asset.service.js +2 -2
  49. package/esm2015/lib/services/base.service.js +2 -2
  50. package/esm2015/lib/services/env-config.service.js +2 -2
  51. package/esm2015/lib/services/file.service.js +2 -2
  52. package/esm2015/lib/services/index.js +2 -2
  53. package/esm2015/lib/services/node-tree.service.js +2 -2
  54. package/esm2015/lib/services/upload-assets.service.js +2 -2
  55. package/esm2015/lib/store/actions.action.js +2 -2
  56. package/esm2015/lib/store/index.js +2 -2
  57. package/esm2015/lib/store/reducer.js +2 -2
  58. package/esm2015/public-api.js +2 -2
  59. package/esm2015/rs-pk-asset-management.js +2 -2
  60. package/fesm2015/rs-pk-asset-management.js +78 -78
  61. package/fesm2015/rs-pk-asset-management.js.map +1 -1
  62. package/package.json +14 -16
  63. package/rs-pk-asset-management.metadata.json +1 -1
  64. package/esm5/lib/asset-management.component.js +0 -185
  65. package/esm5/lib/asset-management.module.js +0 -169
  66. package/esm5/lib/asset-management.service.js +0 -55
  67. package/esm5/lib/components/partial/add-folder-dialog/add-folder-dialog.component.js +0 -165
  68. package/esm5/lib/components/partial/asset-dialog/asset-dialog.component.js +0 -440
  69. package/esm5/lib/components/partial/asset-item/asset-item.component.js +0 -354
  70. package/esm5/lib/components/partial/asset-list/asset-list.component.js +0 -326
  71. package/esm5/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +0 -125
  72. package/esm5/lib/components/partial/asset-wrapper/asset-wrapper.component.js +0 -131
  73. package/esm5/lib/components/partial/breadcrumb/breadcrumb.component.js +0 -143
  74. package/esm5/lib/components/partial/delete-dialog/delete-dialog.component.js +0 -155
  75. package/esm5/lib/components/partial/edit-folder-dialog/edit-folder-dialog.component.js +0 -170
  76. package/esm5/lib/components/partial/file-item/file-item.component.js +0 -207
  77. package/esm5/lib/components/partial/file-list/file-list.component.js +0 -94
  78. package/esm5/lib/components/partial/folder-item/folder-item.component.js +0 -139
  79. package/esm5/lib/components/partial/folder-list/folder-list.component.js +0 -130
  80. package/esm5/lib/components/partial/node-details/node-details.component.js +0 -532
  81. package/esm5/lib/components/partial/node-tree/node-tree.component.js +0 -590
  82. package/esm5/lib/components/partial/search-box/search-box.component.js +0 -188
  83. package/esm5/lib/components/partial/sort-items/sort-items.component.js +0 -108
  84. package/esm5/lib/components/partial/upload-dialog/upload-dialog.component.js +0 -157
  85. package/esm5/lib/components/partial/upload-file/upload-file.component.js +0 -103
  86. package/esm5/lib/components/ui/drag-to-resize/drag-to-resize.component.js +0 -118
  87. package/esm5/lib/components/ui/input-file/input-file.component.js +0 -56
  88. package/esm5/lib/components/ui/modal/modal.component.js +0 -40
  89. package/esm5/lib/components/ui/search-not-found/search-not-found.component.js +0 -44
  90. package/esm5/lib/configs/admin.config.js +0 -81
  91. package/esm5/lib/contanst/data-image.js +0 -21
  92. package/esm5/lib/contanst/index.js +0 -7
  93. package/esm5/lib/datasources/index.js +0 -7
  94. package/esm5/lib/datasources/node-tree.datasource.js +0 -244
  95. package/esm5/lib/directives/dialogTrigger.directive.js +0 -54
  96. package/esm5/lib/directives/directives.module.js +0 -26
  97. package/esm5/lib/directives/dnd.directive.js +0 -81
  98. package/esm5/lib/models/asset-file.model.js +0 -70
  99. package/esm5/lib/models/asset.model.js +0 -185
  100. package/esm5/lib/models/file-type.enum.js +0 -12
  101. package/esm5/lib/models/file.model.js +0 -100
  102. package/esm5/lib/models/index.js +0 -13
  103. package/esm5/lib/models/node-tree.model.js +0 -38
  104. package/esm5/lib/models/sort.enum.js +0 -24
  105. package/esm5/lib/pipes/datetime.pipe.js +0 -84
  106. package/esm5/lib/pipes/file-size.pipe.js +0 -64
  107. package/esm5/lib/services/asset.service.js +0 -337
  108. package/esm5/lib/services/base.service.js +0 -58
  109. package/esm5/lib/services/env-config.service.js +0 -21
  110. package/esm5/lib/services/file.service.js +0 -128
  111. package/esm5/lib/services/index.js +0 -12
  112. package/esm5/lib/services/node-tree.service.js +0 -299
  113. package/esm5/lib/services/upload-assets.service.js +0 -208
  114. package/esm5/lib/store/actions.action.js +0 -144
  115. package/esm5/lib/store/index.js +0 -8
  116. package/esm5/lib/store/reducer.js +0 -117
  117. package/esm5/public-api.js +0 -41
  118. package/esm5/rs-pk-asset-management.js +0 -12
  119. package/fesm5/rs-pk-asset-management.js +0 -7067
  120. package/fesm5/rs-pk-asset-management.js.map +0 -1
@@ -1,128 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/services/file.service.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { HttpHeaders, HttpParams } from '@angular/common/http';
7
- import { Inject, Injectable } from '@angular/core';
8
- import { BaseHttpClient } from './base.service';
9
- import { AM_CONFIG } from './env-config.service';
10
- var FileService = /** @class */ (function () {
11
- function FileService(_env, _api) {
12
- this._env = _env;
13
- this._api = _api;
14
- this.baseUrl = this._env.asset2Url;
15
- }
16
- /**
17
- * @param {?} __0
18
- * @return {?}
19
- */
20
- FileService.prototype.addFolder = /**
21
- * @param {?} __0
22
- * @return {?}
23
- */
24
- function (_a) {
25
- var parentAssetId = _a.parentAssetId, folderName = _a.folderName;
26
- /** @type {?} */
27
- var params = new HttpParams()
28
- .set('parentAssetId', parentAssetId)
29
- .set('folderName', folderName);
30
- return this._api.post(this.baseUrl + "/File/Addfolder", null, {
31
- params: params,
32
- });
33
- };
34
- /**
35
- * @param {?} __0
36
- * @return {?}
37
- */
38
- FileService.prototype.updateFile = /**
39
- * @param {?} __0
40
- * @return {?}
41
- */
42
- function (_a) {
43
- var assetId = _a.assetId, fileName = _a.fileName, description = _a.description;
44
- /** @type {?} */
45
- var params = new HttpParams()
46
- .set('assetId', assetId)
47
- .set('fileName', fileName);
48
- if (description) {
49
- params = params.set('Description', description);
50
- }
51
- return this._api.post(this.baseUrl + "/File/Update", null, { params: params });
52
- };
53
- /**
54
- * @param {?} assetId
55
- * @param {?} file
56
- * @return {?}
57
- */
58
- FileService.prototype.replaceAsset = /**
59
- * @param {?} assetId
60
- * @param {?} file
61
- * @return {?}
62
- */
63
- function (assetId, file) {
64
- /** @type {?} */
65
- var formData = new FormData();
66
- formData.append('AssetId', assetId);
67
- formData.append('files', file);
68
- formData.append('KeepOldName', 'true');
69
- return this._api.post(this.baseUrl + "/File/Replace", formData);
70
- };
71
- /**
72
- * @param {?} ids
73
- * @return {?}
74
- */
75
- FileService.prototype.deleteFile = /**
76
- * @param {?} ids
77
- * @return {?}
78
- */
79
- function (ids) {
80
- /** @type {?} */
81
- var headers = new HttpHeaders().set('Content-Type', 'application/json');
82
- return this._api.request('delete', this.baseUrl + "/File/Delete", {
83
- headers: headers,
84
- body: ids,
85
- });
86
- };
87
- /**
88
- * @param {?} id
89
- * @return {?}
90
- */
91
- FileService.prototype.getFileDetail = /**
92
- * @param {?} id
93
- * @return {?}
94
- */
95
- function (id) {
96
- /** @type {?} */
97
- var params = new HttpParams().set('IncludeDetailedWidth', 'true');
98
- return this._api.get(this.baseUrl + "/File/GetById/" + id, { params: params });
99
- };
100
- FileService.decorators = [
101
- { type: Injectable }
102
- ];
103
- /** @nocollapse */
104
- FileService.ctorParameters = function () { return [
105
- { type: undefined, decorators: [{ type: Inject, args: [AM_CONFIG,] }] },
106
- { type: BaseHttpClient }
107
- ]; };
108
- return FileService;
109
- }());
110
- export { FileService };
111
- if (false) {
112
- /**
113
- * @type {?}
114
- * @private
115
- */
116
- FileService.prototype.baseUrl;
117
- /**
118
- * @type {?}
119
- * @private
120
- */
121
- FileService.prototype._env;
122
- /**
123
- * @type {?}
124
- * @private
125
- */
126
- FileService.prototype._api;
127
- }
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJzLXBrL2Fzc2V0LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvZmlsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWpEO0lBSUUscUJBQXVDLElBQUksRUFBVSxJQUFvQjtRQUFsQyxTQUFJLEdBQUosSUFBSSxDQUFBO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBZ0I7UUFDdkUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUNyQyxDQUFDOzs7OztJQUVELCtCQUFTOzs7O0lBQVQsVUFBVSxFQUFnRDtZQUE5QyxnQ0FBYSxFQUFFLDBCQUFVOztZQUM3QixNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUU7YUFDNUIsR0FBRyxDQUFDLGVBQWUsRUFBRSxhQUFhLENBQUM7YUFDbkMsR0FBRyxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUM7UUFDaEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBUyxJQUFJLENBQUMsT0FBTyxvQkFBaUIsRUFBRSxJQUFJLEVBQUU7WUFDakUsTUFBTSxRQUFBO1NBQ1AsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7Ozs7SUFFRCxnQ0FBVTs7OztJQUFWLFVBQVcsRUFBc0Q7WUFBcEQsb0JBQU8sRUFBRSxzQkFBUSxFQUFFLDRCQUFXOztZQUNyQyxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUU7YUFDMUIsR0FBRyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUM7YUFDdkIsR0FBRyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUM7UUFDNUIsSUFBSSxXQUFXLEVBQUU7WUFDZixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUM7U0FDakQ7UUFDRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFTLElBQUksQ0FBQyxPQUFPLGlCQUFjLEVBQUUsSUFBSSxFQUFFLEVBQUUsTUFBTSxRQUFBLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7Ozs7OztJQUVELGtDQUFZOzs7OztJQUFaLFVBQWEsT0FBZSxFQUFFLElBQVU7O1lBQ2hDLFFBQVEsR0FBRyxJQUFJLFFBQVEsRUFBRTtRQUMvQixRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNwQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMvQixRQUFRLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUV2QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFTLElBQUksQ0FBQyxPQUFPLGtCQUFlLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdkUsQ0FBQzs7Ozs7SUFFRCxnQ0FBVTs7OztJQUFWLFVBQVcsR0FBYTs7WUFDaEIsT0FBTyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxrQkFBa0IsQ0FBQztRQUV6RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBSyxJQUFJLENBQUMsT0FBTyxpQkFBYyxFQUFFO1lBQ2hFLE9BQU8sU0FBQTtZQUNQLElBQUksRUFBRSxHQUFHO1NBQ1YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7Ozs7SUFFRCxtQ0FBYTs7OztJQUFiLFVBQWMsRUFBVTs7WUFDaEIsTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLHNCQUFzQixFQUFFLE1BQU0sQ0FBQztRQUVuRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFTLElBQUksQ0FBQyxPQUFPLHNCQUFpQixFQUFJLEVBQUUsRUFBRSxNQUFNLFFBQUEsRUFBRSxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7Z0JBakRGLFVBQVU7Ozs7Z0RBSUksTUFBTSxTQUFDLFNBQVM7Z0JBUHRCLGNBQWM7O0lBcUR2QixrQkFBQztDQUFBLEFBbERELElBa0RDO1NBakRZLFdBQVc7Ozs7OztJQUN0Qiw4QkFBd0I7Ozs7O0lBRVosMkJBQStCOzs7OztJQUFFLDJCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJQWRkRm9sZGVyUGF5bG9hZCwgSVVwZGF0ZUZpbGVQYXlsb2FkIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IEJhc2VIdHRwQ2xpZW50IH0gZnJvbSAnLi9iYXNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQU1fQ09ORklHIH0gZnJvbSAnLi9lbnYtY29uZmlnLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRmlsZVNlcnZpY2Uge1xuICBwcml2YXRlIGJhc2VVcmw6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEFNX0NPTkZJRykgcHJpdmF0ZSBfZW52LCBwcml2YXRlIF9hcGk6IEJhc2VIdHRwQ2xpZW50KSB7XG4gICAgdGhpcy5iYXNlVXJsID0gdGhpcy5fZW52LmFzc2V0MlVybDtcbiAgfVxuXG4gIGFkZEZvbGRlcih7IHBhcmVudEFzc2V0SWQsIGZvbGRlck5hbWUgfTogSUFkZEZvbGRlclBheWxvYWQpIHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpXG4gICAgICAuc2V0KCdwYXJlbnRBc3NldElkJywgcGFyZW50QXNzZXRJZClcbiAgICAgIC5zZXQoJ2ZvbGRlck5hbWUnLCBmb2xkZXJOYW1lKTtcbiAgICByZXR1cm4gdGhpcy5fYXBpLnBvc3Q8YW55PihgJHt0aGlzLmJhc2VVcmx9L0ZpbGUvQWRkZm9sZGVyYCwgbnVsbCwge1xuICAgICAgcGFyYW1zLFxuICAgIH0pO1xuICB9XG5cbiAgdXBkYXRlRmlsZSh7IGFzc2V0SWQsIGZpbGVOYW1lLCBkZXNjcmlwdGlvbiB9OiBJVXBkYXRlRmlsZVBheWxvYWQpIHtcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKVxuICAgICAgLnNldCgnYXNzZXRJZCcsIGFzc2V0SWQpXG4gICAgICAuc2V0KCdmaWxlTmFtZScsIGZpbGVOYW1lKTtcbiAgICBpZiAoZGVzY3JpcHRpb24pIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ0Rlc2NyaXB0aW9uJywgZGVzY3JpcHRpb24pO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fYXBpLnBvc3Q8YW55PihgJHt0aGlzLmJhc2VVcmx9L0ZpbGUvVXBkYXRlYCwgbnVsbCwgeyBwYXJhbXMgfSk7XG4gIH1cblxuICByZXBsYWNlQXNzZXQoYXNzZXRJZDogc3RyaW5nLCBmaWxlOiBGaWxlKSB7XG4gICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ0Fzc2V0SWQnLCBhc3NldElkKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGVzJywgZmlsZSk7XG4gICAgZm9ybURhdGEuYXBwZW5kKCdLZWVwT2xkTmFtZScsICd0cnVlJyk7XG5cbiAgICByZXR1cm4gdGhpcy5fYXBpLnBvc3Q8YW55PihgJHt0aGlzLmJhc2VVcmx9L0ZpbGUvUmVwbGFjZWAsIGZvcm1EYXRhKTtcbiAgfVxuXG4gIGRlbGV0ZUZpbGUoaWRzOiBzdHJpbmdbXSkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi9qc29uJyk7XG5cbiAgICByZXR1cm4gdGhpcy5fYXBpLnJlcXVlc3QoJ2RlbGV0ZScsIGAke3RoaXMuYmFzZVVybH0vRmlsZS9EZWxldGVgLCB7XG4gICAgICBoZWFkZXJzLFxuICAgICAgYm9keTogaWRzLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0RmlsZURldGFpbChpZDogc3RyaW5nKSB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ0luY2x1ZGVEZXRhaWxlZFdpZHRoJywgJ3RydWUnKTtcblxuICAgIHJldHVybiB0aGlzLl9hcGkuZ2V0PGFueT4oYCR7dGhpcy5iYXNlVXJsfS9GaWxlL0dldEJ5SWQvJHtpZH1gLCB7IHBhcmFtcyB9KTtcbiAgfVxufVxuIl19
@@ -1,12 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/services/index.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { AssetService } from './asset.service';
7
- import { NodeTreeService } from './node-tree.service';
8
- import { UploadAssetsService } from './upload-assets.service';
9
- import { FileService } from './file.service';
10
- import { BaseHttpClient } from './base.service';
11
- export { BaseHttpClient, UploadAssetsService, AssetService, FileService, NodeTreeService, };
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcnMtcGsvYXNzZXQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQ0wsY0FBYyxFQUNkLG1CQUFtQixFQUNuQixZQUFZLEVBQ1osV0FBVyxFQUNYLGVBQWUsR0FDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzc2V0U2VydmljZSB9IGZyb20gJy4vYXNzZXQuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlVHJlZVNlcnZpY2UgfSBmcm9tICcuL25vZGUtdHJlZS5zZXJ2aWNlJztcbmltcG9ydCB7IFVwbG9hZEFzc2V0c1NlcnZpY2UgfSBmcm9tICcuL3VwbG9hZC1hc3NldHMuc2VydmljZSc7XG5pbXBvcnQgeyBGaWxlU2VydmljZSB9IGZyb20gJy4vZmlsZS5zZXJ2aWNlJztcbmltcG9ydCB7IEJhc2VIdHRwQ2xpZW50IH0gZnJvbSAnLi9iYXNlLnNlcnZpY2UnO1xuXG5leHBvcnQge1xuICBCYXNlSHR0cENsaWVudCxcbiAgVXBsb2FkQXNzZXRzU2VydmljZSxcbiAgQXNzZXRTZXJ2aWNlLFxuICBGaWxlU2VydmljZSxcbiAgTm9kZVRyZWVTZXJ2aWNlLFxufTtcbiJdfQ==
@@ -1,299 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/services/node-tree.service.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { __assign, __awaiter, __generator, __read, __spread } from "tslib";
7
- import { Injectable } from "@angular/core";
8
- import { BehaviorSubject } from "rxjs";
9
- import { AssetManagementService } from "../asset-management.service";
10
- import { DynamicFlatNode, MAX_FOLDER_TREE_SIZE } from "../models";
11
- import { ActionTypes } from "../store";
12
- import { AssetService } from "./asset.service";
13
- var NodeTreeService = /** @class */ (function () {
14
- function NodeTreeService(assetService, svc) {
15
- this.assetService = assetService;
16
- this.svc = svc;
17
- this.storedData$ = new BehaviorSubject([]);
18
- this.loading$ = new BehaviorSubject(false);
19
- this.initialData$ = new BehaviorSubject([]);
20
- }
21
- Object.defineProperty(NodeTreeService.prototype, "data", {
22
- get: /**
23
- * @return {?}
24
- */
25
- function () {
26
- return this.storedData$.getValue();
27
- },
28
- set: /**
29
- * @param {?} values
30
- * @return {?}
31
- */
32
- function (values) {
33
- this.storedData$.next(values);
34
- },
35
- enumerable: true,
36
- configurable: true
37
- });
38
- /**
39
- * @private
40
- * @param {?} id
41
- * @param {?=} pageSize
42
- * @return {?}
43
- */
44
- NodeTreeService.prototype.fetchChildrenFolder = /**
45
- * @private
46
- * @param {?} id
47
- * @param {?=} pageSize
48
- * @return {?}
49
- */
50
- function (id, pageSize) {
51
- return __awaiter(this, void 0, void 0, function () {
52
- var result, err_1;
53
- return __generator(this, function (_a) {
54
- switch (_a.label) {
55
- case 0:
56
- _a.trys.push([0, 2, , 3]);
57
- return [4 /*yield*/, this.assetService
58
- .getChildrenFolders({ assetId: id, isFilter: false, pageSize: pageSize || this.assetService.AMConfig.pageFolderSize || MAX_FOLDER_TREE_SIZE })
59
- .toPromise()];
60
- case 1:
61
- result = _a.sent();
62
- if (result) {
63
- return [2 /*return*/, result.Data];
64
- }
65
- return [3 /*break*/, 3];
66
- case 2:
67
- err_1 = _a.sent();
68
- return [3 /*break*/, 3];
69
- case 3: return [2 /*return*/];
70
- }
71
- });
72
- });
73
- };
74
- /** Initial data from database */
75
- /**
76
- * Initial data from database
77
- * @param {?} __0
78
- * @return {?}
79
- */
80
- NodeTreeService.prototype.initialData = /**
81
- * Initial data from database
82
- * @param {?} __0
83
- * @return {?}
84
- */
85
- function (_a) {
86
- var dispatchRootId = _a.dispatchRootId, _b = _a.pageSize, pageSize = _b === void 0 ? this.assetService.AMConfig.pageFolderSize || MAX_FOLDER_TREE_SIZE : _b;
87
- return __awaiter(this, void 0, void 0, function () {
88
- var result, initData;
89
- var _this = this;
90
- return __generator(this, function (_c) {
91
- switch (_c.label) {
92
- case 0:
93
- if (dispatchRootId) {
94
- this.loading$.next(true);
95
- }
96
- return [4 /*yield*/, this.assetService.getChildrenFolders({ isFilter: false, pageIndex: 0, pageSize: pageSize }).toPromise()];
97
- case 1:
98
- result = _c.sent();
99
- if (!result) {
100
- return [2 /*return*/];
101
- }
102
- if (dispatchRootId) {
103
- this.svc.dispatch({
104
- type: ActionTypes.SET_CURRENT_FOLDER_ID,
105
- payload: result.Data.AssetId,
106
- });
107
- this.svc.dispatch({
108
- type: ActionTypes.SET_CURRENT_FOLDER_HIERARCHY,
109
- payload: [],
110
- });
111
- }
112
- this.rootFolder = result.Data;
113
- initData = result.Data.Children.map((/**
114
- * @param {?} folder
115
- * @return {?}
116
- */
117
- function (folder) { return _this.getDynamicFlatNode(folder, 0); }));
118
- this.initialData$.next(initData);
119
- if (dispatchRootId) {
120
- this.loading$.next(false);
121
- }
122
- return [2 /*return*/, this.initialData$.getValue()];
123
- }
124
- });
125
- });
126
- };
127
- /**
128
- * @param {?} node
129
- * @param {?=} level
130
- * @return {?}
131
- */
132
- NodeTreeService.prototype.getDynamicFlatNode = /**
133
- * @param {?} node
134
- * @param {?=} level
135
- * @return {?}
136
- */
137
- function (node, level) {
138
- if (level === void 0) { level = 0; }
139
- return new DynamicFlatNode(node, level, this.isExpandable(node));
140
- };
141
- /**
142
- * @param {?} node
143
- * @param {?=} pageSize
144
- * @return {?}
145
- */
146
- NodeTreeService.prototype.getChildren = /**
147
- * @param {?} node
148
- * @param {?=} pageSize
149
- * @return {?}
150
- */
151
- function (node, pageSize) {
152
- return __awaiter(this, void 0, void 0, function () {
153
- return __generator(this, function (_a) {
154
- switch (_a.label) {
155
- case 0: return [4 /*yield*/, this.fetchChildrenFolder(node.AssetId, pageSize)];
156
- case 1: return [2 /*return*/, _a.sent()];
157
- }
158
- });
159
- });
160
- };
161
- /**
162
- * @param {?} node
163
- * @return {?}
164
- */
165
- NodeTreeService.prototype.isExpandable = /**
166
- * @param {?} node
167
- * @return {?}
168
- */
169
- function (node) {
170
- return Boolean(node.HaveChildren);
171
- };
172
- /** Add asset to stored data */
173
- /**
174
- * Add asset to stored data
175
- * @param {?} asset
176
- * @param {?=} parentId
177
- * @return {?}
178
- */
179
- NodeTreeService.prototype.addNode = /**
180
- * Add asset to stored data
181
- * @param {?} asset
182
- * @param {?=} parentId
183
- * @return {?}
184
- */
185
- function (asset, parentId) {
186
- /** @type {?} */
187
- var data = __spread(this.data);
188
- /** @type {?} */
189
- var index = data.findIndex((/**
190
- * @param {?} node
191
- * @return {?}
192
- */
193
- function (node) { return node.AssetId === asset.AssetId; }));
194
- if (index < 0) {
195
- data = __spread(data, [__assign(__assign({}, asset), { ParentId: parentId ? parentId : null })]);
196
- }
197
- this.data = data;
198
- };
199
- /**
200
- * @param {?} id
201
- * @return {?}
202
- */
203
- NodeTreeService.prototype.updateBreadcrumb = /**
204
- * @param {?} id
205
- * @return {?}
206
- */
207
- function (id) {
208
- return __awaiter(this, void 0, void 0, function () {
209
- var folder, hierarchy;
210
- return __generator(this, function (_a) {
211
- folder = this.data.find((/**
212
- * @param {?} n
213
- * @return {?}
214
- */
215
- function (n) { return n.AssetId === id; }));
216
- if (folder) {
217
- hierarchy = this.getFolderHierarchy(folder);
218
- this.svc.dispatch({
219
- type: ActionTypes.SET_CURRENT_FOLDER_HIERARCHY,
220
- payload: hierarchy,
221
- });
222
- }
223
- return [2 /*return*/];
224
- });
225
- });
226
- };
227
- /**
228
- * @private
229
- * @param {?} node
230
- * @return {?}
231
- */
232
- NodeTreeService.prototype.getAssetParent = /**
233
- * @private
234
- * @param {?} node
235
- * @return {?}
236
- */
237
- function (node) {
238
- return this.data.find((/**
239
- * @param {?} n
240
- * @return {?}
241
- */
242
- function (n) { return n.AssetId === node.ParentId; }));
243
- };
244
- /**
245
- * @private
246
- * @param {?} node
247
- * @return {?}
248
- */
249
- NodeTreeService.prototype.getFolderHierarchy = /**
250
- * @private
251
- * @param {?} node
252
- * @return {?}
253
- */
254
- function (node) {
255
- if (!node) {
256
- return [];
257
- }
258
- /** @type {?} */
259
- var parentHierarchy = [];
260
- /** @type {?} */
261
- var parent = this.getAssetParent(node);
262
- while (parent) {
263
- parentHierarchy = __spread([parent], parentHierarchy);
264
- parent = this.getAssetParent(parent);
265
- }
266
- return __spread(parentHierarchy, [node]);
267
- };
268
- NodeTreeService.decorators = [
269
- { type: Injectable }
270
- ];
271
- /** @nocollapse */
272
- NodeTreeService.ctorParameters = function () { return [
273
- { type: AssetService },
274
- { type: AssetManagementService }
275
- ]; };
276
- return NodeTreeService;
277
- }());
278
- export { NodeTreeService };
279
- if (false) {
280
- /** @type {?} */
281
- NodeTreeService.prototype.storedData$;
282
- /** @type {?} */
283
- NodeTreeService.prototype.loading$;
284
- /** @type {?} */
285
- NodeTreeService.prototype.initialData$;
286
- /** @type {?} */
287
- NodeTreeService.prototype.rootFolder;
288
- /**
289
- * @type {?}
290
- * @private
291
- */
292
- NodeTreeService.prototype.assetService;
293
- /**
294
- * @type {?}
295
- * @private
296
- */
297
- NodeTreeService.prototype.svc;
298
- }
299
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10cmVlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcnMtcGsvYXNzZXQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9ub2RlLXRyZWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFjLGVBQWUsRUFBOEMsb0JBQW9CLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDMUgsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0M7SUFFRSx5QkFBb0IsWUFBMEIsRUFBVSxHQUEyQjtRQUEvRCxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUFVLFFBQUcsR0FBSCxHQUFHLENBQXdCO1FBRTVFLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQWUsRUFBRSxDQUFDLENBQUM7UUFDcEQsYUFBUSxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQy9DLGlCQUFZLEdBQXVDLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBSkksQ0FBQztJQU92RixzQkFBSSxpQ0FBSTs7OztRQUFSO1lBQ0UsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3JDLENBQUM7Ozs7O1FBQ0QsVUFBUyxNQUFvQjtZQUMzQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoQyxDQUFDOzs7T0FIQTs7Ozs7OztJQUthLDZDQUFtQjs7Ozs7O0lBQWpDLFVBQWtDLEVBQVUsRUFBRSxRQUFpQjs7Ozs7Ozt3QkFF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LE9BQU8sRUFBRSxDQUFDO1NBQ1g7O1lBQ0csZUFBZSxHQUEyQixFQUFFOztZQUM1QyxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7UUFDdEMsT0FBTyxNQUFNLEVBQUU7WUFDYixlQUFlLGFBQUksTUFBTSxHQUFLLGVBQWUsQ0FBQyxDQUFDO1lBQy9DLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3RDO1FBQ0QsZ0JBQVcsZUFBZSxHQUFFLElBQUksR0FBRTtJQUNwQyxDQUFDOztnQkE1R0YsVUFBVTs7OztnQkFGRixZQUFZO2dCQUhaLHNCQUFzQjs7SUFrSC9CLHNCQUFDO0NBQUEsQUE3R0QsSUE2R0M7U0E1R1ksZUFBZTs7O0lBRzFCLHNDQUEyRDs7SUFDM0QsbUNBQXNEOztJQUN0RCx1Q0FBa0Y7O0lBQ2xGLHFDQUE4Qjs7Ozs7SUFMbEIsdUNBQWtDOzs7OztJQUFFLDhCQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEFzc2V0TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tIFwiLi4vYXNzZXQtbWFuYWdlbWVudC5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBBc3NldE1vZGVsLCBEeW5hbWljRmxhdE5vZGUsIEZvbGRlclRyZWVNb2RlbCwgSUluaXRpYWxGb2xkZXJUcmVlT3B0aW9ucywgTUFYX0ZPTERFUl9UUkVFX1NJWkUgfSBmcm9tIFwiLi4vbW9kZWxzXCI7XG5pbXBvcnQgeyBBY3Rpb25UeXBlcyB9IGZyb20gXCIuLi9zdG9yZVwiO1xuaW1wb3J0IHsgQXNzZXRTZXJ2aWNlIH0gZnJvbSBcIi4vYXNzZXQuc2VydmljZVwiO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTm9kZVRyZWVTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhc3NldFNlcnZpY2U6IEFzc2V0U2VydmljZSwgcHJpdmF0ZSBzdmM6IEFzc2V0TWFuYWdlbWVudFNlcnZpY2UpIHt9XG5cbiAgcHVibGljIHN0b3JlZERhdGEkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBc3NldE1vZGVsW10+KFtdKTtcbiAgcHVibGljIGxvYWRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyBpbml0aWFsRGF0YSQ6IEJlaGF2aW9yU3ViamVjdDxEeW5hbWljRmxhdE5vZGVbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFtdKTtcbiAgcHVibGljIHJvb3RGb2xkZXI6IEFzc2V0TW9kZWw7XG5cbiAgZ2V0IGRhdGEoKTogQXNzZXRNb2RlbFtdIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZWREYXRhJC5nZXRWYWx1ZSgpO1xuICB9XG4gIHNldCBkYXRhKHZhbHVlczogQXNzZXRNb2RlbFtdKSB7XG4gICAgdGhpcy5zdG9yZWREYXRhJC5uZXh0KHZhbHVlcyk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGZldGNoQ2hpbGRyZW5Gb2xkZXIoaWQ6IHN0cmluZywgcGFnZVNpemU/OiBudW1iZXIpOiBQcm9taXNlPEZvbGRlclRyZWVNb2RlbD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmFzc2V0U2VydmljZVxuICAgICAgICAuZ2V0Q2hpbGRyZW5Gb2xkZXJzKHsgYXNzZXRJZDogaWQsIGlzRmlsdGVyOiBmYWxzZSwgcGFnZVNpemU6IHBhZ2VTaXplIHx8IHRoaXMuYXNzZXRTZXJ2aWNlLkFNQ29uZmlnLnBhZ2VGb2xkZXJTaXplIHx8IE1BWF9GT0xERVJfVFJFRV9TSVpFIH0pXG4gICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5EYXRhO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge31cbiAgICByZXR1cm47XG4gIH1cblxuICAvKiogSW5pdGlhbCBkYXRhIGZyb20gZGF0YWJhc2UgKi9cbiAgcHVibGljIGFzeW5jIGluaXRpYWxEYXRhKHtcbiAgICBkaXNwYXRjaFJvb3RJZCxcbiAgICBwYWdlU2l6ZSA9IHRoaXMuYXNzZXRTZXJ2aWNlLkFNQ29uZmlnLnBhZ2VGb2xkZXJTaXplIHx8IE1BWF9GT0xERVJfVFJFRV9TSVpFLFxuICB9OiBJSW5pdGlhbEZvbGRlclRyZWVPcHRpb25zKTogUHJvbWlzZTxEeW5hbWljRmxhdE5vZGVbXT4ge1xuICAgIGlmIChkaXNwYXRjaFJvb3RJZCkge1xuICAgICAgdGhpcy5sb2FkaW5nJC5uZXh0KHRydWUpO1xuICAgIH1cbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmFzc2V0U2VydmljZS5nZXRDaGlsZHJlbkZvbGRlcnMoeyBpc0ZpbHRlcjogZmFsc2UsIHBhZ2VJbmRleDogMCwgcGFnZVNpemUgfSkudG9Qcm9taXNlKCk7XG4gICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKGRpc3BhdGNoUm9vdElkKSB7XG4gICAgICB0aGlzLnN2Yy5kaXNwYXRjaCh7XG4gICAgICAgIHR5cGU6IEFjdGlvblR5cGVzLlNFVF9DVVJSRU5UX0ZPTERFUl9JRCxcbiAgICAgICAgcGF5bG9hZDogcmVzdWx0LkRhdGEuQXNzZXRJZCxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5zdmMuZGlzcGF0Y2goe1xuICAgICAgICB0eXBlOiBBY3Rpb25UeXBlcy5TRVRfQ1VSUkVOVF9GT0xERVJfSElFUkFSQ0hZLFxuICAgICAgICBwYXlsb2FkOiBbXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLnJvb3RGb2xkZXIgPSByZXN1bHQuRGF0YTtcbiAgICBjb25zdCBpbml0RGF0YSA9IHJlc3VsdC5EYXRhLkNoaWxkcmVuLm1hcCgoZm9sZGVyKSA9PiB0aGlzLmdldER5bmFtaWNGbGF0Tm9kZShmb2xkZXIsIDApKTtcbiAgICB0aGlzLmluaXRpYWxEYXRhJC5uZXh0KGluaXREYXRhKTtcblxuICAgIGlmIChkaXNwYXRjaFJvb3RJZCkge1xuICAgICAgdGhpcy5sb2FkaW5nJC5uZXh0KGZhbHNlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbERhdGEkLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0RHluYW1pY0ZsYXROb2RlKG5vZGU6IEZvbGRlclRyZWVNb2RlbCwgbGV2ZWwgPSAwKTogRHluYW1pY0ZsYXROb2RlIHtcbiAgICByZXR1cm4gbmV3IER5bmFtaWNGbGF0Tm9kZShub2RlLCBsZXZlbCwgdGhpcy5pc0V4cGFuZGFibGUobm9kZSkpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldENoaWxkcmVuKG5vZGU6IEZvbGRlclRyZWVNb2RlbCwgcGFnZVNpemU/OiBudW1iZXIpOiBQcm9taXNlPEZvbGRlclRyZWVNb2RlbD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmZldGNoQ2hpbGRyZW5Gb2xkZXIobm9kZS5Bc3NldElkLCBwYWdlU2l6ZSk7XG4gIH1cblxuICBwdWJsaWMgaXNFeHBhbmRhYmxlKG5vZGU6IEZvbGRlclRyZWVNb2RlbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBCb29sZWFuKG5vZGUuSGF2ZUNoaWxkcmVuKTtcbiAgfVxuXG4gIC8qKiBBZGQgYXNzZXQgdG8gc3RvcmVkIGRhdGEgKi9cbiAgcHVibGljIGFkZE5vZGUoYXNzZXQ6IEFzc2V0TW9kZWwsIHBhcmVudElkPzogc3RyaW5nKTogdm9pZCB7XG4gICAgbGV0IGRhdGEgPSBbLi4udGhpcy5kYXRhXTtcbiAgICBjb25zdCBpbmRleCA9IGRhdGEuZmluZEluZGV4KChub2RlKSA9PiBub2RlLkFzc2V0SWQgPT09IGFzc2V0LkFzc2V0SWQpO1xuICAgIGlmIChpbmRleCA8IDApIHtcbiAgICAgIGRhdGEgPSBbLi4uZGF0YSwgeyAuLi5hc3NldCwgUGFyZW50SWQ6IHBhcmVudElkID8gcGFyZW50SWQgOiBudWxsIH1dO1xuICAgIH1cbiAgICB0aGlzLmRhdGEgPSBkYXRhO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHVwZGF0ZUJyZWFkY3J1bWIoaWQ6IHN0cmluZykge1xuICAgIGNvbnN0IGZvbGRlciA9IHRoaXMuZGF0YS5maW5kKChuKSA9PiBuLkFzc2V0SWQgPT09IGlkKTtcbiAgICBpZiAoZm9sZGVyKSB7XG4gICAgICBjb25zdCBoaWVyYXJjaHkgPSB0aGlzLmdldEZvbGRlckhpZXJhcmNoeShmb2xkZXIpO1xuICAgICAgdGhpcy5zdmMuZGlzcGF0Y2goe1xuICAgICAgICB0eXBlOiBBY3Rpb25UeXBlcy5TRVRfQ1VSUkVOVF9GT0xERVJfSElFUkFSQ0hZLFxuICAgICAgICBwYXlsb2FkOiBoaWVyYXJjaHksXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEFzc2V0UGFyZW50KG5vZGU6IEFzc2V0TW9kZWwpOiBBc3NldE1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5kYXRhLmZpbmQoKG4pID0+IG4uQXNzZXRJZCA9PT0gbm9kZS5QYXJlbnRJZCk7XG4gIH1cblxuICBwcml2YXRlIGdldEZvbGRlckhpZXJhcmNoeShub2RlOiBGb2xkZXJUcmVlTW9kZWwpOiBBcnJheTxGb2xkZXJUcmVlTW9kZWw+IHtcbiAgICBpZiAoIW5vZGUpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gICAgbGV0IHBhcmVudEhpZXJhcmNoeTogQXJyYXk8Rm9sZGVyVHJlZU1vZGVsPiA9IFtdO1xuICAgIGxldCBwYXJlbnQgPSB0aGlzLmdldEFzc2V0UGFyZW50KG5vZGUpO1xuICAgIHdoaWxlIChwYXJlbnQpIHtcbiAgICAgIHBhcmVudEhpZXJhcmNoeSA9IFtwYXJlbnQsIC4uLnBhcmVudEhpZXJhcmNoeV07XG4gICAgICBwYXJlbnQgPSB0aGlzLmdldEFzc2V0UGFyZW50KHBhcmVudCk7XG4gICAgfVxuICAgIHJldHVybiBbLi4ucGFyZW50SGllcmFyY2h5LCBub2RlXTtcbiAgfVxufVxuIl19