@rs-pk/asset-management 1.0.25 → 1.0.26

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 (176) hide show
  1. package/README.md +24 -24
  2. package/bundles/rs-pk-asset-management.umd.js +6436 -6436
  3. package/bundles/rs-pk-asset-management.umd.js.map +1 -1
  4. package/bundles/rs-pk-asset-management.umd.min.js +2 -2
  5. package/bundles/rs-pk-asset-management.umd.min.js.map +1 -1
  6. package/esm2015/lib/asset-management.component.js +169 -169
  7. package/esm2015/lib/asset-management.module.js +178 -178
  8. package/esm2015/lib/asset-management.service.js +45 -45
  9. package/esm2015/lib/components/partial/add-folder-dialog/add-folder-dialog.component.js +146 -146
  10. package/esm2015/lib/components/partial/asset-dialog/asset-dialog.component.js +398 -398
  11. package/esm2015/lib/components/partial/asset-item/asset-item.component.js +316 -316
  12. package/esm2015/lib/components/partial/asset-list/asset-list.component.js +285 -285
  13. package/esm2015/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +110 -110
  14. package/esm2015/lib/components/partial/asset-wrapper/asset-wrapper.component.js +119 -119
  15. package/esm2015/lib/components/partial/breadcrumb/breadcrumb.component.js +121 -121
  16. package/esm2015/lib/components/partial/delete-dialog/delete-dialog.component.js +139 -139
  17. package/esm2015/lib/components/partial/edit-folder-dialog/edit-folder-dialog.component.js +151 -151
  18. package/esm2015/lib/components/partial/file-item/file-item.component.js +181 -181
  19. package/esm2015/lib/components/partial/file-list/file-list.component.js +73 -73
  20. package/esm2015/lib/components/partial/folder-item/folder-item.component.js +126 -126
  21. package/esm2015/lib/components/partial/folder-list/folder-list.component.js +81 -81
  22. package/esm2015/lib/components/partial/node-details/node-details.component.js +417 -417
  23. package/esm2015/lib/components/partial/node-tree/node-tree.component.js +330 -330
  24. package/esm2015/lib/components/partial/search-box/search-box.component.js +158 -158
  25. package/esm2015/lib/components/partial/sort-items/sort-items.component.js +99 -99
  26. package/esm2015/lib/components/partial/upload-dialog/upload-dialog.component.js +141 -141
  27. package/esm2015/lib/components/partial/upload-file/upload-file.component.js +85 -85
  28. package/esm2015/lib/components/ui/drag-to-resize/drag-to-resize.component.js +96 -96
  29. package/esm2015/lib/components/ui/input-file/input-file.component.js +49 -49
  30. package/esm2015/lib/components/ui/modal/modal.component.js +34 -34
  31. package/esm2015/lib/components/ui/search-not-found/search-not-found.component.js +41 -41
  32. package/esm2015/lib/configs/admin.config.js +22 -22
  33. package/esm2015/lib/contanst/data-image.js +20 -20
  34. package/esm2015/lib/contanst/index.js +6 -6
  35. package/esm2015/lib/datasources/index.js +6 -6
  36. package/esm2015/lib/datasources/node-tree.datasource.js +179 -179
  37. package/esm2015/lib/directives/dialogTrigger.directive.js +47 -47
  38. package/esm2015/lib/directives/directives.module.js +20 -20
  39. package/esm2015/lib/directives/dnd.directive.js +57 -57
  40. package/esm2015/lib/models/asset-file.model.js +57 -57
  41. package/esm2015/lib/models/asset.model.js +151 -151
  42. package/esm2015/lib/models/file-type.enum.js +11 -11
  43. package/esm2015/lib/models/file.model.js +91 -91
  44. package/esm2015/lib/models/index.js +12 -12
  45. package/esm2015/lib/models/node-tree.model.js +32 -32
  46. package/esm2015/lib/models/sort.enum.js +23 -23
  47. package/esm2015/lib/pipes/datetime.pipe.js +79 -79
  48. package/esm2015/lib/pipes/file-size.pipe.js +54 -54
  49. package/esm2015/lib/services/asset.service.js +229 -229
  50. package/esm2015/lib/services/base.service.js +49 -49
  51. package/esm2015/lib/services/env-config.service.js +18 -18
  52. package/esm2015/lib/services/file.service.js +106 -106
  53. package/esm2015/lib/services/index.js +11 -11
  54. package/esm2015/lib/services/node-tree.service.js +212 -212
  55. package/esm2015/lib/services/upload-assets.service.js +178 -178
  56. package/esm2015/lib/store/actions.action.js +125 -125
  57. package/esm2015/lib/store/index.js +7 -7
  58. package/esm2015/lib/store/reducer.js +115 -115
  59. package/esm2015/public-api.js +34 -34
  60. package/esm2015/rs-pk-asset-management.js +16 -16
  61. package/esm5/lib/asset-management.component.js +184 -184
  62. package/esm5/lib/asset-management.module.js +179 -179
  63. package/esm5/lib/asset-management.service.js +54 -54
  64. package/esm5/lib/components/partial/add-folder-dialog/add-folder-dialog.component.js +164 -164
  65. package/esm5/lib/components/partial/asset-dialog/asset-dialog.component.js +440 -440
  66. package/esm5/lib/components/partial/asset-item/asset-item.component.js +350 -350
  67. package/esm5/lib/components/partial/asset-list/asset-list.component.js +318 -318
  68. package/esm5/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +125 -125
  69. package/esm5/lib/components/partial/asset-wrapper/asset-wrapper.component.js +137 -137
  70. package/esm5/lib/components/partial/breadcrumb/breadcrumb.component.js +143 -143
  71. package/esm5/lib/components/partial/delete-dialog/delete-dialog.component.js +154 -154
  72. package/esm5/lib/components/partial/edit-folder-dialog/edit-folder-dialog.component.js +169 -169
  73. package/esm5/lib/components/partial/file-item/file-item.component.js +206 -206
  74. package/esm5/lib/components/partial/file-list/file-list.component.js +93 -93
  75. package/esm5/lib/components/partial/folder-item/folder-item.component.js +138 -138
  76. package/esm5/lib/components/partial/folder-list/folder-list.component.js +94 -94
  77. package/esm5/lib/components/partial/node-details/node-details.component.js +458 -458
  78. package/esm5/lib/components/partial/node-tree/node-tree.component.js +413 -413
  79. package/esm5/lib/components/partial/search-box/search-box.component.js +184 -184
  80. package/esm5/lib/components/partial/sort-items/sort-items.component.js +107 -107
  81. package/esm5/lib/components/partial/upload-dialog/upload-dialog.component.js +156 -156
  82. package/esm5/lib/components/partial/upload-file/upload-file.component.js +102 -102
  83. package/esm5/lib/components/ui/drag-to-resize/drag-to-resize.component.js +117 -117
  84. package/esm5/lib/components/ui/input-file/input-file.component.js +55 -55
  85. package/esm5/lib/components/ui/modal/modal.component.js +39 -39
  86. package/esm5/lib/components/ui/search-not-found/search-not-found.component.js +43 -43
  87. package/esm5/lib/configs/admin.config.js +22 -22
  88. package/esm5/lib/contanst/data-image.js +20 -20
  89. package/esm5/lib/contanst/index.js +6 -6
  90. package/esm5/lib/datasources/index.js +6 -6
  91. package/esm5/lib/datasources/node-tree.datasource.js +239 -239
  92. package/esm5/lib/directives/dialogTrigger.directive.js +53 -53
  93. package/esm5/lib/directives/directives.module.js +25 -25
  94. package/esm5/lib/directives/dnd.directive.js +80 -80
  95. package/esm5/lib/models/asset-file.model.js +69 -69
  96. package/esm5/lib/models/asset.model.js +170 -170
  97. package/esm5/lib/models/file-type.enum.js +11 -11
  98. package/esm5/lib/models/file.model.js +99 -99
  99. package/esm5/lib/models/index.js +12 -12
  100. package/esm5/lib/models/node-tree.model.js +37 -37
  101. package/esm5/lib/models/sort.enum.js +23 -23
  102. package/esm5/lib/pipes/datetime.pipe.js +83 -83
  103. package/esm5/lib/pipes/file-size.pipe.js +63 -63
  104. package/esm5/lib/services/asset.service.js +279 -279
  105. package/esm5/lib/services/base.service.js +57 -57
  106. package/esm5/lib/services/env-config.service.js +18 -18
  107. package/esm5/lib/services/file.service.js +127 -127
  108. package/esm5/lib/services/index.js +11 -11
  109. package/esm5/lib/services/node-tree.service.js +278 -278
  110. package/esm5/lib/services/upload-assets.service.js +207 -207
  111. package/esm5/lib/store/actions.action.js +143 -143
  112. package/esm5/lib/store/index.js +7 -7
  113. package/esm5/lib/store/reducer.js +116 -116
  114. package/esm5/public-api.js +34 -34
  115. package/esm5/rs-pk-asset-management.js +16 -16
  116. package/fesm2015/rs-pk-asset-management.js +5635 -5635
  117. package/fesm2015/rs-pk-asset-management.js.map +1 -1
  118. package/fesm5/rs-pk-asset-management.js +6441 -6441
  119. package/fesm5/rs-pk-asset-management.js.map +1 -1
  120. package/lib/asset-management.component.d.ts +25 -25
  121. package/lib/asset-management.module.d.ts +5 -5
  122. package/lib/asset-management.service.d.ts +7 -7
  123. package/lib/components/partial/add-folder-dialog/add-folder-dialog.component.d.ts +27 -27
  124. package/lib/components/partial/asset-dialog/asset-dialog.component.d.ts +65 -65
  125. package/lib/components/partial/asset-item/asset-item.component.d.ts +40 -40
  126. package/lib/components/partial/asset-list/asset-list.component.d.ts +27 -27
  127. package/lib/components/partial/asset-management-dialog/asset-management-dialog.component.d.ts +17 -17
  128. package/lib/components/partial/asset-wrapper/asset-wrapper.component.d.ts +23 -23
  129. package/lib/components/partial/breadcrumb/breadcrumb.component.d.ts +18 -18
  130. package/lib/components/partial/delete-dialog/delete-dialog.component.d.ts +24 -24
  131. package/lib/components/partial/edit-folder-dialog/edit-folder-dialog.component.d.ts +28 -28
  132. package/lib/components/partial/file-item/file-item.component.d.ts +36 -36
  133. package/lib/components/partial/file-list/file-list.component.d.ts +15 -15
  134. package/lib/components/partial/folder-item/folder-item.component.d.ts +17 -17
  135. package/lib/components/partial/folder-list/folder-list.component.d.ts +14 -14
  136. package/lib/components/partial/node-details/node-details.component.d.ts +32 -32
  137. package/lib/components/partial/node-tree/node-tree.component.d.ts +34 -34
  138. package/lib/components/partial/search-box/search-box.component.d.ts +18 -18
  139. package/lib/components/partial/sort-items/sort-items.component.d.ts +21 -21
  140. package/lib/components/partial/upload-dialog/upload-dialog.component.d.ts +25 -25
  141. package/lib/components/partial/upload-file/upload-file.component.d.ts +16 -16
  142. package/lib/components/ui/drag-to-resize/drag-to-resize.component.d.ts +15 -15
  143. package/lib/components/ui/input-file/input-file.component.d.ts +9 -9
  144. package/lib/components/ui/modal/modal.component.d.ts +7 -7
  145. package/lib/components/ui/search-not-found/search-not-found.component.d.ts +8 -8
  146. package/lib/configs/admin.config.d.ts +3 -3
  147. package/lib/contanst/data-image.d.ts +6 -6
  148. package/lib/contanst/index.d.ts +1 -1
  149. package/lib/datasources/index.d.ts +1 -1
  150. package/lib/datasources/node-tree.datasource.d.ts +24 -24
  151. package/lib/directives/dialogTrigger.directive.d.ts +7 -7
  152. package/lib/directives/directives.module.d.ts +5 -5
  153. package/lib/directives/dnd.directive.d.ts +7 -7
  154. package/lib/models/asset-file.model.d.ts +26 -26
  155. package/lib/models/asset.model.d.ts +73 -73
  156. package/lib/models/file-type.enum.d.ts +4 -4
  157. package/lib/models/file.model.d.ts +41 -41
  158. package/lib/models/index.d.ts +7 -7
  159. package/lib/models/node-tree.model.d.ts +9 -9
  160. package/lib/models/sort.enum.d.ts +9 -9
  161. package/lib/pipes/datetime.pipe.d.ts +13 -13
  162. package/lib/pipes/file-size.pipe.d.ts +5 -5
  163. package/lib/services/asset.service.d.ts +36 -36
  164. package/lib/services/base.service.d.ts +20 -20
  165. package/lib/services/env-config.service.d.ts +7 -7
  166. package/lib/services/file.service.d.ts +13 -13
  167. package/lib/services/index.d.ts +6 -6
  168. package/lib/services/node-tree.service.d.ts +24 -24
  169. package/lib/services/upload-assets.service.d.ts +34 -34
  170. package/lib/store/actions.action.d.ts +51 -51
  171. package/lib/store/index.d.ts +2 -2
  172. package/lib/store/reducer.d.ts +18 -18
  173. package/package.json +1 -2
  174. package/public-api.d.ts +26 -26
  175. package/rs-pk-asset-management.d.ts +12 -12
  176. package/rs-pk-asset-management.metadata.json +1 -1
@@ -1,184 +1,184 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { Component, EventEmitter, Input, Output } from '@angular/core';
6
- import { MatDialog } from '@angular/material/dialog';
7
- import { Subject } from 'rxjs';
8
- import { takeUntil } from 'rxjs/operators';
9
- import { AssetManagementService } from './asset-management.service';
10
- import { AssetManagementDialogComponent } from './components/partial/asset-management-dialog/asset-management-dialog.component';
11
- import { AssetService } from './services/asset.service';
12
- import { initialReducer } from './store';
13
- var AssetManagementComponent = /** @class */ (function () {
14
- function AssetManagementComponent(dialog, svc, assetService) {
15
- this.dialog = dialog;
16
- this.svc = svc;
17
- this.assetService = assetService;
18
- this.isDialog = true;
19
- this.hasModifyPermission = true;
20
- this.hasAccessPermission = true;
21
- this.hasArchivePermission = true;
22
- this.assetChange = new EventEmitter();
23
- this.destroy$ = new Subject();
24
- }
25
- /**
26
- * @return {?}
27
- */
28
- AssetManagementComponent.prototype.ngOnInit = /**
29
- * @return {?}
30
- */
31
- function () {
32
- this.assetService.maxSize = this.maxSize;
33
- initialReducer(this.svc.getDispatcher());
34
- this.bindSubscriber();
35
- };
36
- /**
37
- * @return {?}
38
- */
39
- AssetManagementComponent.prototype.bindSubscriber = /**
40
- * @return {?}
41
- */
42
- function () {
43
- var _this = this;
44
- this.assetService
45
- .getDialogOpenStatus()
46
- .pipe(takeUntil(this.destroy$))
47
- .subscribe((/**
48
- * @param {?} res
49
- * @return {?}
50
- */
51
- function (res) {
52
- if (res) {
53
- _this.openAssetsDialog();
54
- }
55
- }));
56
- };
57
- /**
58
- * @param {?} assets
59
- * @return {?}
60
- */
61
- AssetManagementComponent.prototype.onAssetsChange = /**
62
- * @param {?} assets
63
- * @return {?}
64
- */
65
- function (assets) {
66
- if (!assets) {
67
- return;
68
- }
69
- this.assetChange.emit(assets);
70
- };
71
- /**
72
- * @return {?}
73
- */
74
- AssetManagementComponent.prototype.openAssetsDialog = /**
75
- * @return {?}
76
- */
77
- function () {
78
- var _this = this;
79
- /** @type {?} */
80
- var config = {
81
- limit: this.limit,
82
- allowedType: this.allowedType,
83
- maxSize: this.maxSize,
84
- permission: {
85
- access: this.hasAccessPermission,
86
- modify: this.hasModifyPermission,
87
- archive: this.hasArchivePermission,
88
- }
89
- };
90
- /** @type {?} */
91
- var dialogRef = this.dialog.open(AssetManagementDialogComponent, {
92
- autoFocus: false,
93
- panelClass: 'lib-dialog--large',
94
- data: config,
95
- });
96
- dialogRef
97
- .afterClosed()
98
- .pipe(takeUntil(this.destroy$))
99
- .subscribe((/**
100
- * @param {?} res
101
- * @return {?}
102
- */
103
- function (res) {
104
- if (res) {
105
- _this.assetChange.emit(res);
106
- }
107
- }));
108
- };
109
- /**
110
- * @return {?}
111
- */
112
- AssetManagementComponent.prototype.ngOnDestroy = /**
113
- * @return {?}
114
- */
115
- function () {
116
- this.destroy$.next(true);
117
- this.destroy$.complete();
118
- };
119
- AssetManagementComponent.decorators = [
120
- { type: Component, args: [{
121
- selector: 'lib-asset-management',
122
- template: "<ng-container *ngIf=\"!isDialog\">\r\n <lib-asset-wrapper\r\n [hasModifyPermission]=\"hasModifyPermission\"\r\n [hasAccessPermission]=\"hasAccessPermission\"\r\n [hasArchivePermission]=\"hasArchivePermission\"\r\n (assets)=\"onAssetsChange($event)\"\r\n ></lib-asset-wrapper>\r\n</ng-container>\r\n<ng-content *ngIf=\"isDialog\"></ng-content>",
123
- providers: [AssetService],
124
- styles: ["::ng-deep .custom-scrollbar::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.3);background-color:#f5f5f5;border-radius:10px}::ng-deep .custom-scrollbar::-webkit-scrollbar{width:5px;height:5px;background-color:#f5f5f5}::ng-deep .custom-scrollbar::-webkit-scrollbar-thumb{border-radius:10px;background-color:#bdbbbb}"]
125
- }] }
126
- ];
127
- /** @nocollapse */
128
- AssetManagementComponent.ctorParameters = function () { return [
129
- { type: MatDialog },
130
- { type: AssetManagementService },
131
- { type: AssetService }
132
- ]; };
133
- AssetManagementComponent.propDecorators = {
134
- isDialog: [{ type: Input }],
135
- limit: [{ type: Input }],
136
- allowedType: [{ type: Input }],
137
- maxSize: [{ type: Input }],
138
- hasModifyPermission: [{ type: Input }],
139
- hasAccessPermission: [{ type: Input }],
140
- hasArchivePermission: [{ type: Input }],
141
- assetChange: [{ type: Output }]
142
- };
143
- return AssetManagementComponent;
144
- }());
145
- export { AssetManagementComponent };
146
- if (false) {
147
- /** @type {?} */
148
- AssetManagementComponent.prototype.isDialog;
149
- /** @type {?} */
150
- AssetManagementComponent.prototype.limit;
151
- /** @type {?} */
152
- AssetManagementComponent.prototype.allowedType;
153
- /** @type {?} */
154
- AssetManagementComponent.prototype.maxSize;
155
- /** @type {?} */
156
- AssetManagementComponent.prototype.hasModifyPermission;
157
- /** @type {?} */
158
- AssetManagementComponent.prototype.hasAccessPermission;
159
- /** @type {?} */
160
- AssetManagementComponent.prototype.hasArchivePermission;
161
- /** @type {?} */
162
- AssetManagementComponent.prototype.assetChange;
163
- /**
164
- * @type {?}
165
- * @private
166
- */
167
- AssetManagementComponent.prototype.destroy$;
168
- /**
169
- * @type {?}
170
- * @private
171
- */
172
- AssetManagementComponent.prototype.dialog;
173
- /**
174
- * @type {?}
175
- * @private
176
- */
177
- AssetManagementComponent.prototype.svc;
178
- /**
179
- * @type {?}
180
- * @private
181
- */
182
- AssetManagementComponent.prototype.assetService;
183
- }
184
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtbWFuYWdlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcnMtcGsvYXNzZXQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9hc3NldC1tYW5hZ2VtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sZ0ZBQWdGLENBQUM7QUFFaEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFekM7SUFrQkUsa0NBQ1UsTUFBaUIsRUFDakIsR0FBMkIsRUFDM0IsWUFBMEI7UUFGMUIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixRQUFHLEdBQUgsR0FBRyxDQUF3QjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQWQzQixhQUFRLEdBQUssSUFBSSxDQUFDO1FBSWxCLHdCQUFtQixHQUFhLElBQUksQ0FBQztRQUNyQyx3QkFBbUIsR0FBYSxJQUFJLENBQUM7UUFDckMseUJBQW9CLEdBQWEsSUFBSSxDQUFDO1FBQ3JDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFFakQsYUFBUSxHQUFxQixJQUFJLE9BQU8sRUFBRSxDQUFDO0lBTWhELENBQUM7Ozs7SUFFSiwyQ0FBUTs7O0lBQVI7UUFDRSxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3pDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7Ozs7SUFFRCxpREFBYzs7O0lBQWQ7UUFBQSxpQkFTQztRQVJDLElBQUksQ0FBQyxZQUFZO2FBQ2QsbUJBQW1CLEVBQUU7YUFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUIsU0FBUzs7OztRQUFDLFVBQUMsR0FBRztZQUNiLElBQUksR0FBRyxFQUFFO2dCQUNQLEtBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7OztJQUVELGlEQUFjOzs7O0lBQWQsVUFBZSxNQUFNO1FBQ25CLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDOzs7O0lBRUQsbURBQWdCOzs7SUFBaEI7UUFBQSxpQkF3QkM7O1lBdkJPLE1BQU0sR0FBaUI7WUFDM0IsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsVUFBVSxFQUFFO2dCQUNWLE1BQU0sRUFBRSxJQUFJLENBQUMsbUJBQW1CO2dCQUNoQyxNQUFNLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtnQkFDaEMsT0FBTyxFQUFFLElBQUksQ0FBQyxvQkFBb0I7YUFDbkM7U0FDRjs7WUFDSyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsOEJBQThCLEVBQUU7WUFDakUsU0FBUyxFQUFFLEtBQUs7WUFDaEIsVUFBVSxFQUFFLG1CQUFtQjtZQUMvQixJQUFJLEVBQUUsTUFBTTtTQUNiLENBQUM7UUFDRixTQUFTO2FBQ04sV0FBVyxFQUFFO2FBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUIsU0FBUzs7OztRQUFDLFVBQUMsR0FBRztZQUNiLElBQUksR0FBRyxFQUFFO2dCQUNQLEtBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQzVCO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7O0lBRUQsOENBQVc7OztJQUFYO1FBQ0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOztnQkE3RUYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLGdYQUFnRDtvQkFFaEQsU0FBUyxFQUFFLENBQUMsWUFBWSxDQUFDOztpQkFDMUI7Ozs7Z0JBZFEsU0FBUztnQkFHVCxzQkFBc0I7Z0JBR3RCLFlBQVk7OzsyQkFVbEIsS0FBSzt3QkFDTCxLQUFLOzhCQUNMLEtBQUs7MEJBQ0wsS0FBSztzQ0FDTCxLQUFLO3NDQUNMLEtBQUs7dUNBQ0wsS0FBSzs4QkFDTCxNQUFNOztJQWdFVCwrQkFBQztDQUFBLEFBOUVELElBOEVDO1NBeEVZLHdCQUF3Qjs7O0lBQ25DLDRDQUEyQjs7SUFDM0IseUNBQXdCOztJQUN4QiwrQ0FBOEI7O0lBQzlCLDJDQUEwQjs7SUFDMUIsdURBQThDOztJQUM5Qyx1REFBOEM7O0lBQzlDLHdEQUErQzs7SUFDL0MsK0NBQXlEOzs7OztJQUV6RCw0Q0FBbUQ7Ozs7O0lBR2pELDBDQUF5Qjs7Ozs7SUFDekIsdUNBQW1DOzs7OztJQUNuQyxnREFBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEFzc2V0TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuL2Fzc2V0LW1hbmFnZW1lbnQuc2VydmljZSc7XHJcbmltcG9ydCB7IEFzc2V0TWFuYWdlbWVudERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYXJ0aWFsL2Fzc2V0LW1hbmFnZW1lbnQtZGlhbG9nL2Fzc2V0LW1hbmFnZW1lbnQtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFzc2V0TW9kZWwsIERpYWxvZ0NvbmZpZyB9IGZyb20gJy4vbW9kZWxzJztcclxuaW1wb3J0IHsgQXNzZXRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9hc3NldC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgaW5pdGlhbFJlZHVjZXIgfSBmcm9tICcuL3N0b3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWFzc2V0LW1hbmFnZW1lbnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hc3NldC1tYW5hZ2VtZW50LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hc3NldC1tYW5hZ2VtZW50LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbQXNzZXRTZXJ2aWNlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXNzZXRNYW5hZ2VtZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIGlzRGlhbG9nID8gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGxpbWl0PzogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGFsbG93ZWRUeXBlPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIG1heFNpemU/OiBudW1iZXI7XHJcbiAgQElucHV0KCkgaGFzTW9kaWZ5UGVybWlzc2lvbj86IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGhhc0FjY2Vzc1Blcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBoYXNBcmNoaXZlUGVybWlzc2lvbj86IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBPdXRwdXQoKSBhc3NldENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8QXNzZXRNb2RlbFtdPigpO1xyXG5cclxuICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSBzdmM6IEFzc2V0TWFuYWdlbWVudFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFzc2V0U2VydmljZTogQXNzZXRTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuYXNzZXRTZXJ2aWNlLm1heFNpemUgPSB0aGlzLm1heFNpemU7XHJcbiAgICBpbml0aWFsUmVkdWNlcih0aGlzLnN2Yy5nZXREaXNwYXRjaGVyKCkpO1xyXG4gICAgdGhpcy5iaW5kU3Vic2NyaWJlcigpO1xyXG4gIH1cclxuXHJcbiAgYmluZFN1YnNjcmliZXIoKSB7XHJcbiAgICB0aGlzLmFzc2V0U2VydmljZVxyXG4gICAgICAuZ2V0RGlhbG9nT3BlblN0YXR1cygpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcykge1xyXG4gICAgICAgICAgdGhpcy5vcGVuQXNzZXRzRGlhbG9nKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uQXNzZXRzQ2hhbmdlKGFzc2V0cykge1xyXG4gICAgaWYgKCFhc3NldHMpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5hc3NldENoYW5nZS5lbWl0KGFzc2V0cyk7XHJcbiAgfVxyXG5cclxuICBvcGVuQXNzZXRzRGlhbG9nKCkge1xyXG4gICAgY29uc3QgY29uZmlnOiBEaWFsb2dDb25maWcgPSB7XHJcbiAgICAgIGxpbWl0OiB0aGlzLmxpbWl0LFxyXG4gICAgICBhbGxvd2VkVHlwZTogdGhpcy5hbGxvd2VkVHlwZSxcclxuICAgICAgbWF4U2l6ZTogdGhpcy5tYXhTaXplLFxyXG4gICAgICBwZXJtaXNzaW9uOiB7XHJcbiAgICAgICAgYWNjZXNzOiB0aGlzLmhhc0FjY2Vzc1Blcm1pc3Npb24sXHJcbiAgICAgICAgbW9kaWZ5OiB0aGlzLmhhc01vZGlmeVBlcm1pc3Npb24sXHJcbiAgICAgICAgYXJjaGl2ZTogdGhpcy5oYXNBcmNoaXZlUGVybWlzc2lvbixcclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQXNzZXRNYW5hZ2VtZW50RGlhbG9nQ29tcG9uZW50LCB7XHJcbiAgICAgIGF1dG9Gb2N1czogZmFsc2UsXHJcbiAgICAgIHBhbmVsQ2xhc3M6ICdsaWItZGlhbG9nLS1sYXJnZScsXHJcbiAgICAgIGRhdGE6IGNvbmZpZyxcclxuICAgIH0pO1xyXG4gICAgZGlhbG9nUmVmXHJcbiAgICAgIC5hZnRlckNsb3NlZCgpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcykge1xyXG4gICAgICAgICAgdGhpcy5hc3NldENoYW5nZS5lbWl0KHJlcyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
6
+ import { MatDialog } from '@angular/material/dialog';
7
+ import { Subject } from 'rxjs';
8
+ import { takeUntil } from 'rxjs/operators';
9
+ import { AssetManagementService } from './asset-management.service';
10
+ import { AssetManagementDialogComponent } from './components/partial/asset-management-dialog/asset-management-dialog.component';
11
+ import { AssetService } from './services/asset.service';
12
+ import { initialReducer } from './store';
13
+ var AssetManagementComponent = /** @class */ (function () {
14
+ function AssetManagementComponent(dialog, svc, assetService) {
15
+ this.dialog = dialog;
16
+ this.svc = svc;
17
+ this.assetService = assetService;
18
+ this.isDialog = true;
19
+ this.hasModifyPermission = true;
20
+ this.hasAccessPermission = true;
21
+ this.hasArchivePermission = true;
22
+ this.assetChange = new EventEmitter();
23
+ this.destroy$ = new Subject();
24
+ }
25
+ /**
26
+ * @return {?}
27
+ */
28
+ AssetManagementComponent.prototype.ngOnInit = /**
29
+ * @return {?}
30
+ */
31
+ function () {
32
+ this.assetService.maxSize = this.maxSize;
33
+ initialReducer(this.svc.getDispatcher());
34
+ this.bindSubscriber();
35
+ };
36
+ /**
37
+ * @return {?}
38
+ */
39
+ AssetManagementComponent.prototype.bindSubscriber = /**
40
+ * @return {?}
41
+ */
42
+ function () {
43
+ var _this = this;
44
+ this.assetService
45
+ .getDialogOpenStatus()
46
+ .pipe(takeUntil(this.destroy$))
47
+ .subscribe((/**
48
+ * @param {?} res
49
+ * @return {?}
50
+ */
51
+ function (res) {
52
+ if (res) {
53
+ _this.openAssetsDialog();
54
+ }
55
+ }));
56
+ };
57
+ /**
58
+ * @param {?} assets
59
+ * @return {?}
60
+ */
61
+ AssetManagementComponent.prototype.onAssetsChange = /**
62
+ * @param {?} assets
63
+ * @return {?}
64
+ */
65
+ function (assets) {
66
+ if (!assets) {
67
+ return;
68
+ }
69
+ this.assetChange.emit(assets);
70
+ };
71
+ /**
72
+ * @return {?}
73
+ */
74
+ AssetManagementComponent.prototype.openAssetsDialog = /**
75
+ * @return {?}
76
+ */
77
+ function () {
78
+ var _this = this;
79
+ /** @type {?} */
80
+ var config = {
81
+ limit: this.limit,
82
+ allowedType: this.allowedType,
83
+ maxSize: this.maxSize,
84
+ permission: {
85
+ access: this.hasAccessPermission,
86
+ modify: this.hasModifyPermission,
87
+ archive: this.hasArchivePermission,
88
+ }
89
+ };
90
+ /** @type {?} */
91
+ var dialogRef = this.dialog.open(AssetManagementDialogComponent, {
92
+ autoFocus: false,
93
+ panelClass: 'lib-dialog--large',
94
+ data: config,
95
+ });
96
+ dialogRef
97
+ .afterClosed()
98
+ .pipe(takeUntil(this.destroy$))
99
+ .subscribe((/**
100
+ * @param {?} res
101
+ * @return {?}
102
+ */
103
+ function (res) {
104
+ if (res) {
105
+ _this.assetChange.emit(res);
106
+ }
107
+ }));
108
+ };
109
+ /**
110
+ * @return {?}
111
+ */
112
+ AssetManagementComponent.prototype.ngOnDestroy = /**
113
+ * @return {?}
114
+ */
115
+ function () {
116
+ this.destroy$.next(true);
117
+ this.destroy$.complete();
118
+ };
119
+ AssetManagementComponent.decorators = [
120
+ { type: Component, args: [{
121
+ selector: 'lib-asset-management',
122
+ template: "<ng-container *ngIf=\"!isDialog\">\n <lib-asset-wrapper\n [hasModifyPermission]=\"hasModifyPermission\"\n [hasAccessPermission]=\"hasAccessPermission\"\n [hasArchivePermission]=\"hasArchivePermission\"\n (assets)=\"onAssetsChange($event)\"\n ></lib-asset-wrapper>\n</ng-container>\n<ng-content *ngIf=\"isDialog\"></ng-content>",
123
+ providers: [AssetService],
124
+ styles: ["::ng-deep .custom-scrollbar::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.3);background-color:#f5f5f5;border-radius:10px}::ng-deep .custom-scrollbar::-webkit-scrollbar{width:5px;height:5px;background-color:#f5f5f5}::ng-deep .custom-scrollbar::-webkit-scrollbar-thumb{border-radius:10px;background-color:#bdbbbb}"]
125
+ }] }
126
+ ];
127
+ /** @nocollapse */
128
+ AssetManagementComponent.ctorParameters = function () { return [
129
+ { type: MatDialog },
130
+ { type: AssetManagementService },
131
+ { type: AssetService }
132
+ ]; };
133
+ AssetManagementComponent.propDecorators = {
134
+ isDialog: [{ type: Input }],
135
+ limit: [{ type: Input }],
136
+ allowedType: [{ type: Input }],
137
+ maxSize: [{ type: Input }],
138
+ hasModifyPermission: [{ type: Input }],
139
+ hasAccessPermission: [{ type: Input }],
140
+ hasArchivePermission: [{ type: Input }],
141
+ assetChange: [{ type: Output }]
142
+ };
143
+ return AssetManagementComponent;
144
+ }());
145
+ export { AssetManagementComponent };
146
+ if (false) {
147
+ /** @type {?} */
148
+ AssetManagementComponent.prototype.isDialog;
149
+ /** @type {?} */
150
+ AssetManagementComponent.prototype.limit;
151
+ /** @type {?} */
152
+ AssetManagementComponent.prototype.allowedType;
153
+ /** @type {?} */
154
+ AssetManagementComponent.prototype.maxSize;
155
+ /** @type {?} */
156
+ AssetManagementComponent.prototype.hasModifyPermission;
157
+ /** @type {?} */
158
+ AssetManagementComponent.prototype.hasAccessPermission;
159
+ /** @type {?} */
160
+ AssetManagementComponent.prototype.hasArchivePermission;
161
+ /** @type {?} */
162
+ AssetManagementComponent.prototype.assetChange;
163
+ /**
164
+ * @type {?}
165
+ * @private
166
+ */
167
+ AssetManagementComponent.prototype.destroy$;
168
+ /**
169
+ * @type {?}
170
+ * @private
171
+ */
172
+ AssetManagementComponent.prototype.dialog;
173
+ /**
174
+ * @type {?}
175
+ * @private
176
+ */
177
+ AssetManagementComponent.prototype.svc;
178
+ /**
179
+ * @type {?}
180
+ * @private
181
+ */
182
+ AssetManagementComponent.prototype.assetService;
183
+ }
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtbWFuYWdlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcnMtcGsvYXNzZXQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9hc3NldC1tYW5hZ2VtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sZ0ZBQWdGLENBQUM7QUFFaEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFekM7SUFrQkUsa0NBQ1UsTUFBaUIsRUFDakIsR0FBMkIsRUFDM0IsWUFBMEI7UUFGMUIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixRQUFHLEdBQUgsR0FBRyxDQUF3QjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQWQzQixhQUFRLEdBQUssSUFBSSxDQUFDO1FBSWxCLHdCQUFtQixHQUFhLElBQUksQ0FBQztRQUNyQyx3QkFBbUIsR0FBYSxJQUFJLENBQUM7UUFDckMseUJBQW9CLEdBQWEsSUFBSSxDQUFDO1FBQ3JDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFFakQsYUFBUSxHQUFxQixJQUFJLE9BQU8sRUFBRSxDQUFDO0lBTWhELENBQUM7Ozs7SUFFSiwyQ0FBUTs7O0lBQVI7UUFDRSxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3pDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7Ozs7SUFFRCxpREFBYzs7O0lBQWQ7UUFBQSxpQkFTQztRQVJDLElBQUksQ0FBQyxZQUFZO2FBQ2QsbUJBQW1CLEVBQUU7YUFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUIsU0FBUzs7OztRQUFDLFVBQUMsR0FBRztZQUNiLElBQUksR0FBRyxFQUFFO2dCQUNQLEtBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7OztJQUVELGlEQUFjOzs7O0lBQWQsVUFBZSxNQUFNO1FBQ25CLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDOzs7O0lBRUQsbURBQWdCOzs7SUFBaEI7UUFBQSxpQkF3QkM7O1lBdkJPLE1BQU0sR0FBaUI7WUFDM0IsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsVUFBVSxFQUFFO2dCQUNWLE1BQU0sRUFBRSxJQUFJLENBQUMsbUJBQW1CO2dCQUNoQyxNQUFNLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtnQkFDaEMsT0FBTyxFQUFFLElBQUksQ0FBQyxvQkFBb0I7YUFDbkM7U0FDRjs7WUFDSyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsOEJBQThCLEVBQUU7WUFDakUsU0FBUyxFQUFFLEtBQUs7WUFDaEIsVUFBVSxFQUFFLG1CQUFtQjtZQUMvQixJQUFJLEVBQUUsTUFBTTtTQUNiLENBQUM7UUFDRixTQUFTO2FBQ04sV0FBVyxFQUFFO2FBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUIsU0FBUzs7OztRQUFDLFVBQUMsR0FBRztZQUNiLElBQUksR0FBRyxFQUFFO2dCQUNQLEtBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQzVCO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7O0lBRUQsOENBQVc7OztJQUFYO1FBQ0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOztnQkE3RUYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLGdXQUFnRDtvQkFFaEQsU0FBUyxFQUFFLENBQUMsWUFBWSxDQUFDOztpQkFDMUI7Ozs7Z0JBZFEsU0FBUztnQkFHVCxzQkFBc0I7Z0JBR3RCLFlBQVk7OzsyQkFVbEIsS0FBSzt3QkFDTCxLQUFLOzhCQUNMLEtBQUs7MEJBQ0wsS0FBSztzQ0FDTCxLQUFLO3NDQUNMLEtBQUs7dUNBQ0wsS0FBSzs4QkFDTCxNQUFNOztJQWdFVCwrQkFBQztDQUFBLEFBOUVELElBOEVDO1NBeEVZLHdCQUF3Qjs7O0lBQ25DLDRDQUEyQjs7SUFDM0IseUNBQXdCOztJQUN4QiwrQ0FBOEI7O0lBQzlCLDJDQUEwQjs7SUFDMUIsdURBQThDOztJQUM5Qyx1REFBOEM7O0lBQzlDLHdEQUErQzs7SUFDL0MsK0NBQXlEOzs7OztJQUV6RCw0Q0FBbUQ7Ozs7O0lBR2pELDBDQUF5Qjs7Ozs7SUFDekIsdUNBQW1DOzs7OztJQUNuQyxnREFBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQXNzZXRNYW5hZ2VtZW50U2VydmljZSB9IGZyb20gJy4vYXNzZXQtbWFuYWdlbWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEFzc2V0TWFuYWdlbWVudERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYXJ0aWFsL2Fzc2V0LW1hbmFnZW1lbnQtZGlhbG9nL2Fzc2V0LW1hbmFnZW1lbnQtZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBc3NldE1vZGVsLCBEaWFsb2dDb25maWcgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBBc3NldFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2Fzc2V0LnNlcnZpY2UnO1xuaW1wb3J0IHsgaW5pdGlhbFJlZHVjZXIgfSBmcm9tICcuL3N0b3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWFzc2V0LW1hbmFnZW1lbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXNzZXQtbWFuYWdlbWVudC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Fzc2V0LW1hbmFnZW1lbnQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbQXNzZXRTZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBBc3NldE1hbmFnZW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGlzRGlhbG9nID8gPSB0cnVlO1xuICBASW5wdXQoKSBsaW1pdD86IG51bWJlcjtcbiAgQElucHV0KCkgYWxsb3dlZFR5cGU/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIG1heFNpemU/OiBudW1iZXI7XG4gIEBJbnB1dCgpIGhhc01vZGlmeVBlcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgaGFzQWNjZXNzUGVybWlzc2lvbj86IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBoYXNBcmNoaXZlUGVybWlzc2lvbj86IGJvb2xlYW4gPSB0cnVlO1xuICBAT3V0cHV0KCkgYXNzZXRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEFzc2V0TW9kZWxbXT4oKTtcblxuICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgIHByaXZhdGUgc3ZjOiBBc3NldE1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgYXNzZXRTZXJ2aWNlOiBBc3NldFNlcnZpY2VcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYXNzZXRTZXJ2aWNlLm1heFNpemUgPSB0aGlzLm1heFNpemU7XG4gICAgaW5pdGlhbFJlZHVjZXIodGhpcy5zdmMuZ2V0RGlzcGF0Y2hlcigpKTtcbiAgICB0aGlzLmJpbmRTdWJzY3JpYmVyKCk7XG4gIH1cblxuICBiaW5kU3Vic2NyaWJlcigpIHtcbiAgICB0aGlzLmFzc2V0U2VydmljZVxuICAgICAgLmdldERpYWxvZ09wZW5TdGF0dXMoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICB0aGlzLm9wZW5Bc3NldHNEaWFsb2coKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBvbkFzc2V0c0NoYW5nZShhc3NldHMpIHtcbiAgICBpZiAoIWFzc2V0cykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmFzc2V0Q2hhbmdlLmVtaXQoYXNzZXRzKTtcbiAgfVxuXG4gIG9wZW5Bc3NldHNEaWFsb2coKSB7XG4gICAgY29uc3QgY29uZmlnOiBEaWFsb2dDb25maWcgPSB7XG4gICAgICBsaW1pdDogdGhpcy5saW1pdCxcbiAgICAgIGFsbG93ZWRUeXBlOiB0aGlzLmFsbG93ZWRUeXBlLFxuICAgICAgbWF4U2l6ZTogdGhpcy5tYXhTaXplLFxuICAgICAgcGVybWlzc2lvbjoge1xuICAgICAgICBhY2Nlc3M6IHRoaXMuaGFzQWNjZXNzUGVybWlzc2lvbixcbiAgICAgICAgbW9kaWZ5OiB0aGlzLmhhc01vZGlmeVBlcm1pc3Npb24sXG4gICAgICAgIGFyY2hpdmU6IHRoaXMuaGFzQXJjaGl2ZVBlcm1pc3Npb24sXG4gICAgICB9XG4gICAgfTtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEFzc2V0TWFuYWdlbWVudERpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgYXV0b0ZvY3VzOiBmYWxzZSxcbiAgICAgIHBhbmVsQ2xhc3M6ICdsaWItZGlhbG9nLS1sYXJnZScsXG4gICAgICBkYXRhOiBjb25maWcsXG4gICAgfSk7XG4gICAgZGlhbG9nUmVmXG4gICAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICB0aGlzLmFzc2V0Q2hhbmdlLmVtaXQocmVzKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=