@rs-pk/asset-management 1.0.22 → 1.0.24

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 +6444 -6327
  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 +164 -152
  7. package/esm2015/lib/asset-management.module.js +178 -179
  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 -395
  11. package/esm2015/lib/components/partial/asset-item/asset-item.component.js +316 -299
  12. package/esm2015/lib/components/partial/asset-list/asset-list.component.js +285 -273
  13. package/esm2015/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +123 -109
  14. package/esm2015/lib/components/partial/asset-wrapper/asset-wrapper.component.js +119 -100
  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 -114
  21. package/esm2015/lib/components/partial/folder-list/folder-list.component.js +81 -69
  22. package/esm2015/lib/components/partial/node-details/node-details.component.js +417 -403
  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 +149 -149
  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 +179 -167
  62. package/esm5/lib/asset-management.module.js +179 -180
  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 -437
  66. package/esm5/lib/components/partial/asset-item/asset-item.component.js +350 -333
  67. package/esm5/lib/components/partial/asset-list/asset-list.component.js +318 -306
  68. package/esm5/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +138 -124
  69. package/esm5/lib/components/partial/asset-wrapper/asset-wrapper.component.js +137 -115
  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 -126
  76. package/esm5/lib/components/partial/folder-list/folder-list.component.js +94 -82
  77. package/esm5/lib/components/partial/node-details/node-details.component.js +458 -444
  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 +168 -168
  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 +5642 -5528
  117. package/fesm2015/rs-pk-asset-management.js.map +1 -1
  118. package/fesm5/rs-pk-asset-management.js +6448 -6331
  119. package/fesm5/rs-pk-asset-management.js.map +1 -1
  120. package/lib/asset-management.component.d.ts +25 -22
  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 -60
  125. package/lib/components/partial/asset-item/asset-item.component.d.ts +40 -37
  126. package/lib/components/partial/asset-list/asset-list.component.d.ts +27 -24
  127. package/lib/components/partial/asset-management-dialog/asset-management-dialog.component.d.ts +20 -17
  128. package/lib/components/partial/asset-wrapper/asset-wrapper.component.d.ts +23 -19
  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 -14
  135. package/lib/components/partial/folder-list/folder-list.component.d.ts +14 -11
  136. package/lib/components/partial/node-details/node-details.component.d.ts +32 -29
  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 +68 -68
  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 -1
  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,167 +1,179 @@
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.assetChange = new EventEmitter();
20
- this.destroy$ = new Subject();
21
- }
22
- /**
23
- * @return {?}
24
- */
25
- AssetManagementComponent.prototype.ngOnInit = /**
26
- * @return {?}
27
- */
28
- function () {
29
- this.assetService.maxSize = this.maxSize;
30
- initialReducer(this.svc.getDispatcher());
31
- this.bindSubscriber();
32
- };
33
- /**
34
- * @return {?}
35
- */
36
- AssetManagementComponent.prototype.bindSubscriber = /**
37
- * @return {?}
38
- */
39
- function () {
40
- var _this = this;
41
- this.assetService
42
- .getDialogOpenStatus()
43
- .pipe(takeUntil(this.destroy$))
44
- .subscribe((/**
45
- * @param {?} res
46
- * @return {?}
47
- */
48
- function (res) {
49
- if (res) {
50
- _this.openAssetsDialog();
51
- }
52
- }));
53
- };
54
- /**
55
- * @param {?} assets
56
- * @return {?}
57
- */
58
- AssetManagementComponent.prototype.onAssetsChange = /**
59
- * @param {?} assets
60
- * @return {?}
61
- */
62
- function (assets) {
63
- if (!assets) {
64
- return;
65
- }
66
- this.assetChange.emit(assets);
67
- };
68
- /**
69
- * @return {?}
70
- */
71
- AssetManagementComponent.prototype.openAssetsDialog = /**
72
- * @return {?}
73
- */
74
- function () {
75
- var _this = this;
76
- /** @type {?} */
77
- var config = {
78
- limit: this.limit,
79
- allowedType: this.allowedType,
80
- maxSize: this.maxSize
81
- };
82
- /** @type {?} */
83
- var dialogRef = this.dialog.open(AssetManagementDialogComponent, {
84
- autoFocus: false,
85
- panelClass: 'lib-dialog--large',
86
- data: config,
87
- });
88
- dialogRef
89
- .afterClosed()
90
- .pipe(takeUntil(this.destroy$))
91
- .subscribe((/**
92
- * @param {?} res
93
- * @return {?}
94
- */
95
- function (res) {
96
- if (res) {
97
- _this.assetChange.emit(res);
98
- }
99
- }));
100
- };
101
- /**
102
- * @return {?}
103
- */
104
- AssetManagementComponent.prototype.ngOnDestroy = /**
105
- * @return {?}
106
- */
107
- function () {
108
- this.destroy$.next(true);
109
- this.destroy$.complete();
110
- };
111
- AssetManagementComponent.decorators = [
112
- { type: Component, args: [{
113
- selector: 'lib-asset-management',
114
- template: "<ng-container *ngIf=\"!isDialog\">\n <lib-asset-wrapper (assets)=\"onAssetsChange($event)\"></lib-asset-wrapper>\n</ng-container>\n<ng-content *ngIf=\"isDialog\"></ng-content>",
115
- providers: [AssetService],
116
- 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}"]
117
- }] }
118
- ];
119
- /** @nocollapse */
120
- AssetManagementComponent.ctorParameters = function () { return [
121
- { type: MatDialog },
122
- { type: AssetManagementService },
123
- { type: AssetService }
124
- ]; };
125
- AssetManagementComponent.propDecorators = {
126
- isDialog: [{ type: Input }],
127
- limit: [{ type: Input }],
128
- allowedType: [{ type: Input }],
129
- maxSize: [{ type: Input }],
130
- assetChange: [{ type: Output }]
131
- };
132
- return AssetManagementComponent;
133
- }());
134
- export { AssetManagementComponent };
135
- if (false) {
136
- /** @type {?} */
137
- AssetManagementComponent.prototype.isDialog;
138
- /** @type {?} */
139
- AssetManagementComponent.prototype.limit;
140
- /** @type {?} */
141
- AssetManagementComponent.prototype.allowedType;
142
- /** @type {?} */
143
- AssetManagementComponent.prototype.maxSize;
144
- /** @type {?} */
145
- AssetManagementComponent.prototype.assetChange;
146
- /**
147
- * @type {?}
148
- * @private
149
- */
150
- AssetManagementComponent.prototype.destroy$;
151
- /**
152
- * @type {?}
153
- * @private
154
- */
155
- AssetManagementComponent.prototype.dialog;
156
- /**
157
- * @type {?}
158
- * @private
159
- */
160
- AssetManagementComponent.prototype.svc;
161
- /**
162
- * @type {?}
163
- * @private
164
- */
165
- AssetManagementComponent.prototype.assetService;
166
- }
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtbWFuYWdlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcnMtcGsvYXNzZXQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9hc3NldC1tYW5hZ2VtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sZ0ZBQWdGLENBQUM7QUFFaEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFekM7SUFlRSxrQ0FDVSxNQUFpQixFQUNqQixHQUEyQixFQUMzQixZQUEwQjtRQUYxQixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2pCLFFBQUcsR0FBSCxHQUFHLENBQXdCO1FBQzNCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBWDNCLGFBQVEsR0FBSyxJQUFJLENBQUM7UUFJakIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUVqRCxhQUFRLEdBQXFCLElBQUksT0FBTyxFQUFFLENBQUM7SUFNaEQsQ0FBQzs7OztJQUVKLDJDQUFROzs7SUFBUjtRQUNFLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDekMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7OztJQUVELGlEQUFjOzs7SUFBZDtRQUFBLGlCQVNDO1FBUkMsSUFBSSxDQUFDLFlBQVk7YUFDZCxtQkFBbUIsRUFBRTthQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTOzs7O1FBQUMsVUFBQyxHQUFHO1lBQ2IsSUFBSSxHQUFHLEVBQUU7Z0JBQ1AsS0FBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7YUFDekI7UUFDSCxDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7O0lBRUQsaURBQWM7Ozs7SUFBZCxVQUFlLE1BQU07UUFDbkIsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7Ozs7SUFFRCxtREFBZ0I7OztJQUFoQjtRQUFBLGlCQW1CQzs7WUFsQk8sTUFBTSxHQUFpQjtZQUMzQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztTQUN0Qjs7WUFDSyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsOEJBQThCLEVBQUU7WUFDakUsU0FBUyxFQUFFLEtBQUs7WUFDaEIsVUFBVSxFQUFFLG1CQUFtQjtZQUMvQixJQUFJLEVBQUUsTUFBTTtTQUNiLENBQUM7UUFDRixTQUFTO2FBQ04sV0FBVyxFQUFFO2FBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUIsU0FBUzs7OztRQUFDLFVBQUMsR0FBRztZQUNiLElBQUksR0FBRyxFQUFFO2dCQUNQLEtBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQzVCO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7O0lBRUQsOENBQVc7OztJQUFYO1FBQ0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOztnQkFyRUYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLDRMQUFnRDtvQkFFaEQsU0FBUyxFQUFFLENBQUMsWUFBWSxDQUFDOztpQkFDMUI7Ozs7Z0JBZFEsU0FBUztnQkFHVCxzQkFBc0I7Z0JBR3RCLFlBQVk7OzsyQkFVbEIsS0FBSzt3QkFDTCxLQUFLOzhCQUNMLEtBQUs7MEJBQ0wsS0FBSzs4QkFDTCxNQUFNOztJQTJEVCwrQkFBQztDQUFBLEFBdEVELElBc0VDO1NBaEVZLHdCQUF3Qjs7O0lBQ25DLDRDQUEyQjs7SUFDM0IseUNBQXdCOztJQUN4QiwrQ0FBOEI7O0lBQzlCLDJDQUEwQjs7SUFDMUIsK0NBQXlEOzs7OztJQUV6RCw0Q0FBbUQ7Ozs7O0lBR2pELDBDQUF5Qjs7Ozs7SUFDekIsdUNBQW1DOzs7OztJQUNuQyxnREFBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFzc2V0TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuL2Fzc2V0LW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBc3NldE1hbmFnZW1lbnREaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcGFydGlhbC9hc3NldC1tYW5hZ2VtZW50LWRpYWxvZy9hc3NldC1tYW5hZ2VtZW50LWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXNzZXRNb2RlbCwgRGlhbG9nQ29uZmlnIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgQXNzZXRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9hc3NldC5zZXJ2aWNlJztcbmltcG9ydCB7IGluaXRpYWxSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1hc3NldC1tYW5hZ2VtZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fzc2V0LW1hbmFnZW1lbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hc3NldC1tYW5hZ2VtZW50LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW0Fzc2V0U2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgQXNzZXRNYW5hZ2VtZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBpc0RpYWxvZyA/ID0gdHJ1ZTtcbiAgQElucHV0KCkgbGltaXQ/OiBudW1iZXI7XG4gIEBJbnB1dCgpIGFsbG93ZWRUeXBlPzogc3RyaW5nO1xuICBASW5wdXQoKSBtYXhTaXplPzogbnVtYmVyO1xuICBAT3V0cHV0KCkgYXNzZXRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEFzc2V0TW9kZWxbXT4oKTtcblxuICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgIHByaXZhdGUgc3ZjOiBBc3NldE1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgYXNzZXRTZXJ2aWNlOiBBc3NldFNlcnZpY2VcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYXNzZXRTZXJ2aWNlLm1heFNpemUgPSB0aGlzLm1heFNpemU7XG4gICAgaW5pdGlhbFJlZHVjZXIodGhpcy5zdmMuZ2V0RGlzcGF0Y2hlcigpKTtcbiAgICB0aGlzLmJpbmRTdWJzY3JpYmVyKCk7XG4gIH1cblxuICBiaW5kU3Vic2NyaWJlcigpIHtcbiAgICB0aGlzLmFzc2V0U2VydmljZVxuICAgICAgLmdldERpYWxvZ09wZW5TdGF0dXMoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICB0aGlzLm9wZW5Bc3NldHNEaWFsb2coKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBvbkFzc2V0c0NoYW5nZShhc3NldHMpIHtcbiAgICBpZiAoIWFzc2V0cykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmFzc2V0Q2hhbmdlLmVtaXQoYXNzZXRzKTtcbiAgfVxuXG4gIG9wZW5Bc3NldHNEaWFsb2coKSB7XG4gICAgY29uc3QgY29uZmlnOiBEaWFsb2dDb25maWcgPSB7XG4gICAgICBsaW1pdDogdGhpcy5saW1pdCxcbiAgICAgIGFsbG93ZWRUeXBlOiB0aGlzLmFsbG93ZWRUeXBlLFxuICAgICAgbWF4U2l6ZTogdGhpcy5tYXhTaXplXG4gICAgfTtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEFzc2V0TWFuYWdlbWVudERpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgYXV0b0ZvY3VzOiBmYWxzZSxcbiAgICAgIHBhbmVsQ2xhc3M6ICdsaWItZGlhbG9nLS1sYXJnZScsXG4gICAgICBkYXRhOiBjb25maWcsXG4gICAgfSk7XG4gICAgZGlhbG9nUmVmXG4gICAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICB0aGlzLmFzc2V0Q2hhbmdlLmVtaXQocmVzKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
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
+ };
85
+ /** @type {?} */
86
+ var dialogRef = this.dialog.open(AssetManagementDialogComponent, {
87
+ autoFocus: false,
88
+ panelClass: 'lib-dialog--large',
89
+ data: config,
90
+ });
91
+ dialogRef
92
+ .afterClosed()
93
+ .pipe(takeUntil(this.destroy$))
94
+ .subscribe((/**
95
+ * @param {?} res
96
+ * @return {?}
97
+ */
98
+ function (res) {
99
+ if (res) {
100
+ _this.assetChange.emit(res);
101
+ }
102
+ }));
103
+ };
104
+ /**
105
+ * @return {?}
106
+ */
107
+ AssetManagementComponent.prototype.ngOnDestroy = /**
108
+ * @return {?}
109
+ */
110
+ function () {
111
+ this.destroy$.next(true);
112
+ this.destroy$.complete();
113
+ };
114
+ AssetManagementComponent.decorators = [
115
+ { type: Component, args: [{
116
+ selector: 'lib-asset-management',
117
+ 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>",
118
+ providers: [AssetService],
119
+ 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}"]
120
+ }] }
121
+ ];
122
+ /** @nocollapse */
123
+ AssetManagementComponent.ctorParameters = function () { return [
124
+ { type: MatDialog },
125
+ { type: AssetManagementService },
126
+ { type: AssetService }
127
+ ]; };
128
+ AssetManagementComponent.propDecorators = {
129
+ isDialog: [{ type: Input }],
130
+ limit: [{ type: Input }],
131
+ allowedType: [{ type: Input }],
132
+ maxSize: [{ type: Input }],
133
+ hasModifyPermission: [{ type: Input }],
134
+ hasAccessPermission: [{ type: Input }],
135
+ hasArchivePermission: [{ type: Input }],
136
+ assetChange: [{ type: Output }]
137
+ };
138
+ return AssetManagementComponent;
139
+ }());
140
+ export { AssetManagementComponent };
141
+ if (false) {
142
+ /** @type {?} */
143
+ AssetManagementComponent.prototype.isDialog;
144
+ /** @type {?} */
145
+ AssetManagementComponent.prototype.limit;
146
+ /** @type {?} */
147
+ AssetManagementComponent.prototype.allowedType;
148
+ /** @type {?} */
149
+ AssetManagementComponent.prototype.maxSize;
150
+ /** @type {?} */
151
+ AssetManagementComponent.prototype.hasModifyPermission;
152
+ /** @type {?} */
153
+ AssetManagementComponent.prototype.hasAccessPermission;
154
+ /** @type {?} */
155
+ AssetManagementComponent.prototype.hasArchivePermission;
156
+ /** @type {?} */
157
+ AssetManagementComponent.prototype.assetChange;
158
+ /**
159
+ * @type {?}
160
+ * @private
161
+ */
162
+ AssetManagementComponent.prototype.destroy$;
163
+ /**
164
+ * @type {?}
165
+ * @private
166
+ */
167
+ AssetManagementComponent.prototype.dialog;
168
+ /**
169
+ * @type {?}
170
+ * @private
171
+ */
172
+ AssetManagementComponent.prototype.svc;
173
+ /**
174
+ * @type {?}
175
+ * @private
176
+ */
177
+ AssetManagementComponent.prototype.assetService;
178
+ }
179
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtbWFuYWdlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcnMtcGsvYXNzZXQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9hc3NldC1tYW5hZ2VtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sZ0ZBQWdGLENBQUM7QUFFaEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFekM7SUFrQkUsa0NBQ1UsTUFBaUIsRUFDakIsR0FBMkIsRUFDM0IsWUFBMEI7UUFGMUIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixRQUFHLEdBQUgsR0FBRyxDQUF3QjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQWQzQixhQUFRLEdBQUssSUFBSSxDQUFDO1FBSWxCLHdCQUFtQixHQUFhLElBQUksQ0FBQztRQUNyQyx3QkFBbUIsR0FBYSxJQUFJLENBQUM7UUFDckMseUJBQW9CLEdBQWEsSUFBSSxDQUFDO1FBQ3JDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFFakQsYUFBUSxHQUFxQixJQUFJLE9BQU8sRUFBRSxDQUFDO0lBTWhELENBQUM7Ozs7SUFFSiwyQ0FBUTs7O0lBQVI7UUFDRSxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3pDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7Ozs7SUFFRCxpREFBYzs7O0lBQWQ7UUFBQSxpQkFTQztRQVJDLElBQUksQ0FBQyxZQUFZO2FBQ2QsbUJBQW1CLEVBQUU7YUFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUIsU0FBUzs7OztRQUFDLFVBQUMsR0FBRztZQUNiLElBQUksR0FBRyxFQUFFO2dCQUNQLEtBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7OztJQUVELGlEQUFjOzs7O0lBQWQsVUFBZSxNQUFNO1FBQ25CLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDOzs7O0lBRUQsbURBQWdCOzs7SUFBaEI7UUFBQSxpQkFtQkM7O1lBbEJPLE1BQU0sR0FBaUI7WUFDM0IsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDdEI7O1lBQ0ssU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDhCQUE4QixFQUFFO1lBQ2pFLFNBQVMsRUFBRSxLQUFLO1lBQ2hCLFVBQVUsRUFBRSxtQkFBbUI7WUFDL0IsSUFBSSxFQUFFLE1BQU07U0FDYixDQUFDO1FBQ0YsU0FBUzthQUNOLFdBQVcsRUFBRTthQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlCLFNBQVM7Ozs7UUFBQyxVQUFDLEdBQUc7WUFDYixJQUFJLEdBQUcsRUFBRTtnQkFDUCxLQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUM1QjtRQUNILENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7OztJQUVELDhDQUFXOzs7SUFBWDtRQUNFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7Z0JBeEVGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxnWEFBZ0Q7b0JBRWhELFNBQVMsRUFBRSxDQUFDLFlBQVksQ0FBQzs7aUJBQzFCOzs7O2dCQWRRLFNBQVM7Z0JBR1Qsc0JBQXNCO2dCQUd0QixZQUFZOzs7MkJBVWxCLEtBQUs7d0JBQ0wsS0FBSzs4QkFDTCxLQUFLOzBCQUNMLEtBQUs7c0NBQ0wsS0FBSztzQ0FDTCxLQUFLO3VDQUNMLEtBQUs7OEJBQ0wsTUFBTTs7SUEyRFQsK0JBQUM7Q0FBQSxBQXpFRCxJQXlFQztTQW5FWSx3QkFBd0I7OztJQUNuQyw0Q0FBMkI7O0lBQzNCLHlDQUF3Qjs7SUFDeEIsK0NBQThCOztJQUM5QiwyQ0FBMEI7O0lBQzFCLHVEQUE4Qzs7SUFDOUMsdURBQThDOztJQUM5Qyx3REFBK0M7O0lBQy9DLCtDQUF5RDs7Ozs7SUFFekQsNENBQW1EOzs7OztJQUdqRCwwQ0FBeUI7Ozs7O0lBQ3pCLHVDQUFtQzs7Ozs7SUFDbkMsZ0RBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBc3NldE1hbmFnZW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9hc3NldC1tYW5hZ2VtZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBc3NldE1hbmFnZW1lbnREaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcGFydGlhbC9hc3NldC1tYW5hZ2VtZW50LWRpYWxvZy9hc3NldC1tYW5hZ2VtZW50LWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBc3NldE1vZGVsLCBEaWFsb2dDb25maWcgfSBmcm9tICcuL21vZGVscyc7XHJcbmltcG9ydCB7IEFzc2V0U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvYXNzZXQuc2VydmljZSc7XHJcbmltcG9ydCB7IGluaXRpYWxSZWR1Y2VyIH0gZnJvbSAnLi9zdG9yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1hc3NldC1tYW5hZ2VtZW50JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYXNzZXQtbWFuYWdlbWVudC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYXNzZXQtbWFuYWdlbWVudC5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW0Fzc2V0U2VydmljZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFzc2V0TWFuYWdlbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoKSBpc0RpYWxvZyA/ID0gdHJ1ZTtcclxuICBASW5wdXQoKSBsaW1pdD86IG51bWJlcjtcclxuICBASW5wdXQoKSBhbGxvd2VkVHlwZT86IHN0cmluZztcclxuICBASW5wdXQoKSBtYXhTaXplPzogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGhhc01vZGlmeVBlcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBoYXNBY2Nlc3NQZXJtaXNzaW9uPzogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgaGFzQXJjaGl2ZVBlcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcclxuICBAT3V0cHV0KCkgYXNzZXRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEFzc2V0TW9kZWxbXT4oKTtcclxuXHJcbiAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcclxuICAgIHByaXZhdGUgc3ZjOiBBc3NldE1hbmFnZW1lbnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhc3NldFNlcnZpY2U6IEFzc2V0U2VydmljZVxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmFzc2V0U2VydmljZS5tYXhTaXplID0gdGhpcy5tYXhTaXplO1xyXG4gICAgaW5pdGlhbFJlZHVjZXIodGhpcy5zdmMuZ2V0RGlzcGF0Y2hlcigpKTtcclxuICAgIHRoaXMuYmluZFN1YnNjcmliZXIoKTtcclxuICB9XHJcblxyXG4gIGJpbmRTdWJzY3JpYmVyKCkge1xyXG4gICAgdGhpcy5hc3NldFNlcnZpY2VcclxuICAgICAgLmdldERpYWxvZ09wZW5TdGF0dXMoKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICAgIHRoaXMub3BlbkFzc2V0c0RpYWxvZygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkFzc2V0c0NoYW5nZShhc3NldHMpIHtcclxuICAgIGlmICghYXNzZXRzKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuYXNzZXRDaGFuZ2UuZW1pdChhc3NldHMpO1xyXG4gIH1cclxuXHJcbiAgb3BlbkFzc2V0c0RpYWxvZygpIHtcclxuICAgIGNvbnN0IGNvbmZpZzogRGlhbG9nQ29uZmlnID0ge1xyXG4gICAgICBsaW1pdDogdGhpcy5saW1pdCxcclxuICAgICAgYWxsb3dlZFR5cGU6IHRoaXMuYWxsb3dlZFR5cGUsXHJcbiAgICAgIG1heFNpemU6IHRoaXMubWF4U2l6ZVxyXG4gICAgfTtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQXNzZXRNYW5hZ2VtZW50RGlhbG9nQ29tcG9uZW50LCB7XHJcbiAgICAgIGF1dG9Gb2N1czogZmFsc2UsXHJcbiAgICAgIHBhbmVsQ2xhc3M6ICdsaWItZGlhbG9nLS1sYXJnZScsXHJcbiAgICAgIGRhdGE6IGNvbmZpZyxcclxuICAgIH0pO1xyXG4gICAgZGlhbG9nUmVmXHJcbiAgICAgIC5hZnRlckNsb3NlZCgpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcykge1xyXG4gICAgICAgICAgdGhpcy5hc3NldENoYW5nZS5lbWl0KHJlcyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=