@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.
- package/README.md +24 -24
- package/bundles/rs-pk-asset-management.umd.js +6444 -6327
- package/bundles/rs-pk-asset-management.umd.js.map +1 -1
- package/bundles/rs-pk-asset-management.umd.min.js +2 -2
- package/bundles/rs-pk-asset-management.umd.min.js.map +1 -1
- package/esm2015/lib/asset-management.component.js +164 -152
- package/esm2015/lib/asset-management.module.js +178 -179
- package/esm2015/lib/asset-management.service.js +45 -45
- package/esm2015/lib/components/partial/add-folder-dialog/add-folder-dialog.component.js +146 -146
- package/esm2015/lib/components/partial/asset-dialog/asset-dialog.component.js +398 -395
- package/esm2015/lib/components/partial/asset-item/asset-item.component.js +316 -299
- package/esm2015/lib/components/partial/asset-list/asset-list.component.js +285 -273
- package/esm2015/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +123 -109
- package/esm2015/lib/components/partial/asset-wrapper/asset-wrapper.component.js +119 -100
- package/esm2015/lib/components/partial/breadcrumb/breadcrumb.component.js +121 -121
- package/esm2015/lib/components/partial/delete-dialog/delete-dialog.component.js +139 -139
- package/esm2015/lib/components/partial/edit-folder-dialog/edit-folder-dialog.component.js +151 -151
- package/esm2015/lib/components/partial/file-item/file-item.component.js +181 -181
- package/esm2015/lib/components/partial/file-list/file-list.component.js +73 -73
- package/esm2015/lib/components/partial/folder-item/folder-item.component.js +126 -114
- package/esm2015/lib/components/partial/folder-list/folder-list.component.js +81 -69
- package/esm2015/lib/components/partial/node-details/node-details.component.js +417 -403
- package/esm2015/lib/components/partial/node-tree/node-tree.component.js +330 -330
- package/esm2015/lib/components/partial/search-box/search-box.component.js +158 -158
- package/esm2015/lib/components/partial/sort-items/sort-items.component.js +99 -99
- package/esm2015/lib/components/partial/upload-dialog/upload-dialog.component.js +141 -141
- package/esm2015/lib/components/partial/upload-file/upload-file.component.js +85 -85
- package/esm2015/lib/components/ui/drag-to-resize/drag-to-resize.component.js +96 -96
- package/esm2015/lib/components/ui/input-file/input-file.component.js +49 -49
- package/esm2015/lib/components/ui/modal/modal.component.js +34 -34
- package/esm2015/lib/components/ui/search-not-found/search-not-found.component.js +41 -41
- package/esm2015/lib/configs/admin.config.js +22 -22
- package/esm2015/lib/contanst/data-image.js +20 -20
- package/esm2015/lib/contanst/index.js +6 -6
- package/esm2015/lib/datasources/index.js +6 -6
- package/esm2015/lib/datasources/node-tree.datasource.js +179 -179
- package/esm2015/lib/directives/dialogTrigger.directive.js +47 -47
- package/esm2015/lib/directives/directives.module.js +20 -20
- package/esm2015/lib/directives/dnd.directive.js +57 -57
- package/esm2015/lib/models/asset-file.model.js +57 -57
- package/esm2015/lib/models/asset.model.js +149 -149
- package/esm2015/lib/models/file-type.enum.js +11 -11
- package/esm2015/lib/models/file.model.js +91 -91
- package/esm2015/lib/models/index.js +12 -12
- package/esm2015/lib/models/node-tree.model.js +32 -32
- package/esm2015/lib/models/sort.enum.js +23 -23
- package/esm2015/lib/pipes/datetime.pipe.js +79 -79
- package/esm2015/lib/pipes/file-size.pipe.js +54 -54
- package/esm2015/lib/services/asset.service.js +229 -229
- package/esm2015/lib/services/base.service.js +49 -49
- package/esm2015/lib/services/env-config.service.js +18 -18
- package/esm2015/lib/services/file.service.js +106 -106
- package/esm2015/lib/services/index.js +11 -11
- package/esm2015/lib/services/node-tree.service.js +212 -212
- package/esm2015/lib/services/upload-assets.service.js +178 -178
- package/esm2015/lib/store/actions.action.js +125 -125
- package/esm2015/lib/store/index.js +7 -7
- package/esm2015/lib/store/reducer.js +115 -115
- package/esm2015/public-api.js +34 -34
- package/esm2015/rs-pk-asset-management.js +16 -16
- package/esm5/lib/asset-management.component.js +179 -167
- package/esm5/lib/asset-management.module.js +179 -180
- package/esm5/lib/asset-management.service.js +54 -54
- package/esm5/lib/components/partial/add-folder-dialog/add-folder-dialog.component.js +164 -164
- package/esm5/lib/components/partial/asset-dialog/asset-dialog.component.js +440 -437
- package/esm5/lib/components/partial/asset-item/asset-item.component.js +350 -333
- package/esm5/lib/components/partial/asset-list/asset-list.component.js +318 -306
- package/esm5/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +138 -124
- package/esm5/lib/components/partial/asset-wrapper/asset-wrapper.component.js +137 -115
- package/esm5/lib/components/partial/breadcrumb/breadcrumb.component.js +143 -143
- package/esm5/lib/components/partial/delete-dialog/delete-dialog.component.js +154 -154
- package/esm5/lib/components/partial/edit-folder-dialog/edit-folder-dialog.component.js +169 -169
- package/esm5/lib/components/partial/file-item/file-item.component.js +206 -206
- package/esm5/lib/components/partial/file-list/file-list.component.js +93 -93
- package/esm5/lib/components/partial/folder-item/folder-item.component.js +138 -126
- package/esm5/lib/components/partial/folder-list/folder-list.component.js +94 -82
- package/esm5/lib/components/partial/node-details/node-details.component.js +458 -444
- package/esm5/lib/components/partial/node-tree/node-tree.component.js +413 -413
- package/esm5/lib/components/partial/search-box/search-box.component.js +184 -184
- package/esm5/lib/components/partial/sort-items/sort-items.component.js +107 -107
- package/esm5/lib/components/partial/upload-dialog/upload-dialog.component.js +156 -156
- package/esm5/lib/components/partial/upload-file/upload-file.component.js +102 -102
- package/esm5/lib/components/ui/drag-to-resize/drag-to-resize.component.js +117 -117
- package/esm5/lib/components/ui/input-file/input-file.component.js +55 -55
- package/esm5/lib/components/ui/modal/modal.component.js +39 -39
- package/esm5/lib/components/ui/search-not-found/search-not-found.component.js +43 -43
- package/esm5/lib/configs/admin.config.js +22 -22
- package/esm5/lib/contanst/data-image.js +20 -20
- package/esm5/lib/contanst/index.js +6 -6
- package/esm5/lib/datasources/index.js +6 -6
- package/esm5/lib/datasources/node-tree.datasource.js +239 -239
- package/esm5/lib/directives/dialogTrigger.directive.js +53 -53
- package/esm5/lib/directives/directives.module.js +25 -25
- package/esm5/lib/directives/dnd.directive.js +80 -80
- package/esm5/lib/models/asset-file.model.js +69 -69
- package/esm5/lib/models/asset.model.js +168 -168
- package/esm5/lib/models/file-type.enum.js +11 -11
- package/esm5/lib/models/file.model.js +99 -99
- package/esm5/lib/models/index.js +12 -12
- package/esm5/lib/models/node-tree.model.js +37 -37
- package/esm5/lib/models/sort.enum.js +23 -23
- package/esm5/lib/pipes/datetime.pipe.js +83 -83
- package/esm5/lib/pipes/file-size.pipe.js +63 -63
- package/esm5/lib/services/asset.service.js +279 -279
- package/esm5/lib/services/base.service.js +57 -57
- package/esm5/lib/services/env-config.service.js +18 -18
- package/esm5/lib/services/file.service.js +127 -127
- package/esm5/lib/services/index.js +11 -11
- package/esm5/lib/services/node-tree.service.js +278 -278
- package/esm5/lib/services/upload-assets.service.js +207 -207
- package/esm5/lib/store/actions.action.js +143 -143
- package/esm5/lib/store/index.js +7 -7
- package/esm5/lib/store/reducer.js +116 -116
- package/esm5/public-api.js +34 -34
- package/esm5/rs-pk-asset-management.js +16 -16
- package/fesm2015/rs-pk-asset-management.js +5642 -5528
- package/fesm2015/rs-pk-asset-management.js.map +1 -1
- package/fesm5/rs-pk-asset-management.js +6448 -6331
- package/fesm5/rs-pk-asset-management.js.map +1 -1
- package/lib/asset-management.component.d.ts +25 -22
- package/lib/asset-management.module.d.ts +5 -5
- package/lib/asset-management.service.d.ts +7 -7
- package/lib/components/partial/add-folder-dialog/add-folder-dialog.component.d.ts +27 -27
- package/lib/components/partial/asset-dialog/asset-dialog.component.d.ts +65 -60
- package/lib/components/partial/asset-item/asset-item.component.d.ts +40 -37
- package/lib/components/partial/asset-list/asset-list.component.d.ts +27 -24
- package/lib/components/partial/asset-management-dialog/asset-management-dialog.component.d.ts +20 -17
- package/lib/components/partial/asset-wrapper/asset-wrapper.component.d.ts +23 -19
- package/lib/components/partial/breadcrumb/breadcrumb.component.d.ts +18 -18
- package/lib/components/partial/delete-dialog/delete-dialog.component.d.ts +24 -24
- package/lib/components/partial/edit-folder-dialog/edit-folder-dialog.component.d.ts +28 -28
- package/lib/components/partial/file-item/file-item.component.d.ts +36 -36
- package/lib/components/partial/file-list/file-list.component.d.ts +15 -15
- package/lib/components/partial/folder-item/folder-item.component.d.ts +17 -14
- package/lib/components/partial/folder-list/folder-list.component.d.ts +14 -11
- package/lib/components/partial/node-details/node-details.component.d.ts +32 -29
- package/lib/components/partial/node-tree/node-tree.component.d.ts +34 -34
- package/lib/components/partial/search-box/search-box.component.d.ts +18 -18
- package/lib/components/partial/sort-items/sort-items.component.d.ts +21 -21
- package/lib/components/partial/upload-dialog/upload-dialog.component.d.ts +25 -25
- package/lib/components/partial/upload-file/upload-file.component.d.ts +16 -16
- package/lib/components/ui/drag-to-resize/drag-to-resize.component.d.ts +15 -15
- package/lib/components/ui/input-file/input-file.component.d.ts +9 -9
- package/lib/components/ui/modal/modal.component.d.ts +7 -7
- package/lib/components/ui/search-not-found/search-not-found.component.d.ts +8 -8
- package/lib/configs/admin.config.d.ts +3 -3
- package/lib/contanst/data-image.d.ts +6 -6
- package/lib/contanst/index.d.ts +1 -1
- package/lib/datasources/index.d.ts +1 -1
- package/lib/datasources/node-tree.datasource.d.ts +24 -24
- package/lib/directives/dialogTrigger.directive.d.ts +7 -7
- package/lib/directives/directives.module.d.ts +5 -5
- package/lib/directives/dnd.directive.d.ts +7 -7
- package/lib/models/asset-file.model.d.ts +26 -26
- package/lib/models/asset.model.d.ts +68 -68
- package/lib/models/file-type.enum.d.ts +4 -4
- package/lib/models/file.model.d.ts +41 -41
- package/lib/models/index.d.ts +7 -7
- package/lib/models/node-tree.model.d.ts +9 -9
- package/lib/models/sort.enum.d.ts +9 -9
- package/lib/pipes/datetime.pipe.d.ts +13 -13
- package/lib/pipes/file-size.pipe.d.ts +5 -5
- package/lib/services/asset.service.d.ts +36 -36
- package/lib/services/base.service.d.ts +20 -20
- package/lib/services/env-config.service.d.ts +7 -7
- package/lib/services/file.service.d.ts +13 -13
- package/lib/services/index.d.ts +6 -6
- package/lib/services/node-tree.service.d.ts +24 -24
- package/lib/services/upload-assets.service.d.ts +34 -34
- package/lib/store/actions.action.d.ts +51 -51
- package/lib/store/index.d.ts +2 -2
- package/lib/store/reducer.d.ts +18 -18
- package/package.json +1 -1
- package/public-api.d.ts +26 -26
- package/rs-pk-asset-management.d.ts +12 -12
- package/rs-pk-asset-management.metadata.json +1 -1
|
@@ -1,114 +1,126 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import { Component, Input } from '@angular/core';
|
|
6
|
-
import { MatDialog } from '@angular/material/dialog';
|
|
7
|
-
import { AssetModel } from '../../../models';
|
|
8
|
-
import { ActionTypes } from '../../../store/actions.action';
|
|
9
|
-
import { EditFolderDialogComponent } from '../edit-folder-dialog/edit-folder-dialog.component';
|
|
10
|
-
import { DeleteDialogComponent } from '../delete-dialog/delete-dialog.component';
|
|
11
|
-
import { AssetManagementService } from '../../../asset-management.service';
|
|
12
|
-
export class FolderItemComponent {
|
|
13
|
-
/**
|
|
14
|
-
* @param {?} dialog
|
|
15
|
-
* @param {?} svc
|
|
16
|
-
*/
|
|
17
|
-
constructor(dialog, svc) {
|
|
18
|
-
this.dialog = dialog;
|
|
19
|
-
this.svc = svc;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
]
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
FolderItemComponent.prototype.
|
|
113
|
-
}
|
|
114
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import { Component, Input } from '@angular/core';
|
|
6
|
+
import { MatDialog } from '@angular/material/dialog';
|
|
7
|
+
import { AssetModel } from '../../../models';
|
|
8
|
+
import { ActionTypes } from '../../../store/actions.action';
|
|
9
|
+
import { EditFolderDialogComponent } from '../edit-folder-dialog/edit-folder-dialog.component';
|
|
10
|
+
import { DeleteDialogComponent } from '../delete-dialog/delete-dialog.component';
|
|
11
|
+
import { AssetManagementService } from '../../../asset-management.service';
|
|
12
|
+
export class FolderItemComponent {
|
|
13
|
+
/**
|
|
14
|
+
* @param {?} dialog
|
|
15
|
+
* @param {?} svc
|
|
16
|
+
*/
|
|
17
|
+
constructor(dialog, svc) {
|
|
18
|
+
this.dialog = dialog;
|
|
19
|
+
this.svc = svc;
|
|
20
|
+
this.hasModifyPermission = true;
|
|
21
|
+
this.hasAccessPermission = true;
|
|
22
|
+
this.hasArchivePermission = true;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @return {?}
|
|
26
|
+
*/
|
|
27
|
+
ngOnInit() { }
|
|
28
|
+
/**
|
|
29
|
+
* @return {?}
|
|
30
|
+
*/
|
|
31
|
+
openFolder() {
|
|
32
|
+
this.svc.dispatch({
|
|
33
|
+
type: ActionTypes.SET_CURRENT_FOLDER_ID,
|
|
34
|
+
payload: this.folder.AssetId,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* @return {?}
|
|
39
|
+
*/
|
|
40
|
+
renameFolder() {
|
|
41
|
+
/** @type {?} */
|
|
42
|
+
const dialogRef = this.dialog.open(EditFolderDialogComponent, {
|
|
43
|
+
data: {
|
|
44
|
+
assetId: this.folder.AssetId,
|
|
45
|
+
name: this.folder.OriginalFileName,
|
|
46
|
+
},
|
|
47
|
+
panelClass: 'lib-dialog--small',
|
|
48
|
+
});
|
|
49
|
+
dialogRef.afterClosed().subscribe((/**
|
|
50
|
+
* @param {?} res
|
|
51
|
+
* @return {?}
|
|
52
|
+
*/
|
|
53
|
+
res => {
|
|
54
|
+
if (res) {
|
|
55
|
+
this.svc.dispatch({
|
|
56
|
+
type: ActionTypes.RELOAD_CURRENT_FOLDER,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}));
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* @return {?}
|
|
63
|
+
*/
|
|
64
|
+
deleteFolder() {
|
|
65
|
+
/** @type {?} */
|
|
66
|
+
const dialogRef = this.dialog.open(DeleteDialogComponent, {
|
|
67
|
+
data: {
|
|
68
|
+
type: 'folder',
|
|
69
|
+
ids: [this.folder.AssetId],
|
|
70
|
+
name: this.folder.OriginalFileName,
|
|
71
|
+
},
|
|
72
|
+
panelClass: 'lib-dialog--small',
|
|
73
|
+
autoFocus: false,
|
|
74
|
+
});
|
|
75
|
+
dialogRef.afterClosed().subscribe((/**
|
|
76
|
+
* @param {?} res
|
|
77
|
+
* @return {?}
|
|
78
|
+
*/
|
|
79
|
+
res => {
|
|
80
|
+
if (res) {
|
|
81
|
+
this.svc.dispatch({
|
|
82
|
+
type: ActionTypes.RELOAD_CURRENT_FOLDER,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}));
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
FolderItemComponent.decorators = [
|
|
89
|
+
{ type: Component, args: [{
|
|
90
|
+
selector: 'lib-folder-item',
|
|
91
|
+
template: "<div class=\"folder\" (dblclick)=\"openFolder()\">\r\n <mat-icon class=\"folder__icon\">folder</mat-icon>\r\n <span class=\"folder__name\" [matTooltip]=\"folder.OriginalFileName\">\r\n {{ folder.OriginalFileName }}\r\n </span>\r\n <mat-icon class=\"folder__action\" [matMenuTriggerFor]=\"menu\"\r\n >more_vert</mat-icon\r\n >\r\n</div>\r\n<mat-menu #menu=\"matMenu\">\r\n <button mat-menu-item (click)=\"renameFolder()\" [disabled]=\"!hasModifyPermission\">\r\n <mat-icon>edit_outline</mat-icon> <span>Rename</span>\r\n </button>\r\n <button mat-menu-item (click)=\"deleteFolder()\" [disabled]=\"!hasArchivePermission\">\r\n <mat-icon color=\"warn\">delete_outline</mat-icon> <span>Delete</span>\r\n </button>\r\n</mat-menu>\r\n",
|
|
92
|
+
styles: [":host::ng-deep .folder{width:180px;height:50px;display:flex;position:relative;align-items:center;padding:5px 20px 5px 10px;border-radius:10px;cursor:pointer;transition:.3s}:host::ng-deep .folder:hover{background-color:#f1f1f1}:host::ng-deep .folder:hover .folder__action{display:block}:host::ng-deep .folder__icon{display:flex;align-items:center;color:#6fc0ff;font-size:38px;margin-right:20px}:host::ng-deep .folder__name{font-size:14px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host::ng-deep .folder__action{display:none;right:0;position:absolute;color:#979797;transition:.3s}:host::ng-deep .folder__action:hover{color:#000}"]
|
|
93
|
+
}] }
|
|
94
|
+
];
|
|
95
|
+
/** @nocollapse */
|
|
96
|
+
FolderItemComponent.ctorParameters = () => [
|
|
97
|
+
{ type: MatDialog },
|
|
98
|
+
{ type: AssetManagementService }
|
|
99
|
+
];
|
|
100
|
+
FolderItemComponent.propDecorators = {
|
|
101
|
+
folder: [{ type: Input }],
|
|
102
|
+
hasModifyPermission: [{ type: Input }],
|
|
103
|
+
hasAccessPermission: [{ type: Input }],
|
|
104
|
+
hasArchivePermission: [{ type: Input }]
|
|
105
|
+
};
|
|
106
|
+
if (false) {
|
|
107
|
+
/** @type {?} */
|
|
108
|
+
FolderItemComponent.prototype.folder;
|
|
109
|
+
/** @type {?} */
|
|
110
|
+
FolderItemComponent.prototype.hasModifyPermission;
|
|
111
|
+
/** @type {?} */
|
|
112
|
+
FolderItemComponent.prototype.hasAccessPermission;
|
|
113
|
+
/** @type {?} */
|
|
114
|
+
FolderItemComponent.prototype.hasArchivePermission;
|
|
115
|
+
/**
|
|
116
|
+
* @type {?}
|
|
117
|
+
* @private
|
|
118
|
+
*/
|
|
119
|
+
FolderItemComponent.prototype.dialog;
|
|
120
|
+
/**
|
|
121
|
+
* @type {?}
|
|
122
|
+
* @private
|
|
123
|
+
*/
|
|
124
|
+
FolderItemComponent.prototype.svc;
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9sZGVyLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJzLXBrL2Fzc2V0LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9wYXJ0aWFsL2ZvbGRlci1pdGVtL2ZvbGRlci1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDL0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFPM0UsTUFBTSxPQUFPLG1CQUFtQjs7Ozs7SUFDOUIsWUFBb0IsTUFBaUIsRUFBVSxHQUEyQjtRQUF0RCxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBd0I7UUFFakUsd0JBQW1CLEdBQWEsSUFBSSxDQUFDO1FBQ3JDLHdCQUFtQixHQUFhLElBQUksQ0FBQztRQUNyQyx5QkFBb0IsR0FBYSxJQUFJLENBQUM7SUFKOEIsQ0FBQzs7OztJQU05RSxRQUFRLEtBQUksQ0FBQzs7OztJQUViLFVBQVU7UUFDUixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztZQUNoQixJQUFJLEVBQUUsV0FBVyxDQUFDLHFCQUFxQjtZQUN2QyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPO1NBQzdCLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7SUFFRCxZQUFZOztjQUNKLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsRUFBRTtZQUM1RCxJQUFJLEVBQUU7Z0JBQ0osT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTztnQkFDNUIsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCO2FBQ25DO1lBQ0QsVUFBVSxFQUFFLG1CQUFtQjtTQUNoQyxDQUFDO1FBRUYsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVM7Ozs7UUFBQyxHQUFHLENBQUMsRUFBRTtZQUN0QyxJQUFJLEdBQUcsRUFBRTtnQkFDUCxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztvQkFDaEIsSUFBSSxFQUFFLFdBQVcsQ0FBQyxxQkFBcUI7aUJBQ3hDLENBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7O0lBRUQsWUFBWTs7Y0FDSixTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDeEQsSUFBSSxFQUFFO2dCQUNKLElBQUksRUFBRSxRQUFRO2dCQUNkLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUMxQixJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0I7YUFDbkM7WUFDRCxVQUFVLEVBQUUsbUJBQW1CO1lBQy9CLFNBQVMsRUFBRSxLQUFLO1NBQ2pCLENBQUM7UUFFRixTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUzs7OztRQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3RDLElBQUksR0FBRyxFQUFFO2dCQUNQLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO29CQUNoQixJQUFJLEVBQUUsV0FBVyxDQUFDLHFCQUFxQjtpQkFDeEMsQ0FBQyxDQUFDO2FBQ0o7UUFDSCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7OztZQXpERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IseXZCQUEyQzs7YUFFNUM7Ozs7WUFYUSxTQUFTO1lBS1Qsc0JBQXNCOzs7cUJBUzVCLEtBQUs7a0NBQ0wsS0FBSztrQ0FDTCxLQUFLO21DQUNMLEtBQUs7Ozs7SUFITixxQ0FBNEI7O0lBQzVCLGtEQUE4Qzs7SUFDOUMsa0RBQThDOztJQUM5QyxtREFBK0M7Ozs7O0lBSm5DLHFDQUF5Qjs7Ozs7SUFBRSxrQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgQXNzZXRNb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscyc7XHJcbmltcG9ydCB7IEFjdGlvblR5cGVzIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvYWN0aW9ucy5hY3Rpb24nO1xyXG5pbXBvcnQgeyBFZGl0Rm9sZGVyRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vZWRpdC1mb2xkZXItZGlhbG9nL2VkaXQtZm9sZGVyLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEZWxldGVEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9kZWxldGUtZGlhbG9nL2RlbGV0ZS1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXNzZXRNYW5hZ2VtZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2Fzc2V0LW1hbmFnZW1lbnQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1mb2xkZXItaXRlbScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ZvbGRlci1pdGVtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9mb2xkZXItaXRlbS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9sZGVySXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZywgcHJpdmF0ZSBzdmM6IEFzc2V0TWFuYWdlbWVudFNlcnZpY2UpIHt9XHJcbiAgQElucHV0KCkgZm9sZGVyOiBBc3NldE1vZGVsO1xyXG4gIEBJbnB1dCgpIGhhc01vZGlmeVBlcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBoYXNBY2Nlc3NQZXJtaXNzaW9uPzogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgaGFzQXJjaGl2ZVBlcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgbmdPbkluaXQoKSB7fVxyXG5cclxuICBvcGVuRm9sZGVyKCkge1xyXG4gICAgdGhpcy5zdmMuZGlzcGF0Y2goe1xyXG4gICAgICB0eXBlOiBBY3Rpb25UeXBlcy5TRVRfQ1VSUkVOVF9GT0xERVJfSUQsXHJcbiAgICAgIHBheWxvYWQ6IHRoaXMuZm9sZGVyLkFzc2V0SWQsXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlbmFtZUZvbGRlcigpIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oRWRpdEZvbGRlckRpYWxvZ0NvbXBvbmVudCwge1xyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgYXNzZXRJZDogdGhpcy5mb2xkZXIuQXNzZXRJZCxcclxuICAgICAgICBuYW1lOiB0aGlzLmZvbGRlci5PcmlnaW5hbEZpbGVOYW1lLFxyXG4gICAgICB9LFxyXG4gICAgICBwYW5lbENsYXNzOiAnbGliLWRpYWxvZy0tc21hbGwnLFxyXG4gICAgfSk7XHJcblxyXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICB0aGlzLnN2Yy5kaXNwYXRjaCh7XHJcbiAgICAgICAgICB0eXBlOiBBY3Rpb25UeXBlcy5SRUxPQURfQ1VSUkVOVF9GT0xERVIsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlRm9sZGVyKCkge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihEZWxldGVEaWFsb2dDb21wb25lbnQsIHtcclxuICAgICAgZGF0YToge1xyXG4gICAgICAgIHR5cGU6ICdmb2xkZXInLFxyXG4gICAgICAgIGlkczogW3RoaXMuZm9sZGVyLkFzc2V0SWRdLFxyXG4gICAgICAgIG5hbWU6IHRoaXMuZm9sZGVyLk9yaWdpbmFsRmlsZU5hbWUsXHJcbiAgICAgIH0sXHJcbiAgICAgIHBhbmVsQ2xhc3M6ICdsaWItZGlhbG9nLS1zbWFsbCcsXHJcbiAgICAgIGF1dG9Gb2N1czogZmFsc2UsXHJcbiAgICB9KTtcclxuXHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgaWYgKHJlcykge1xyXG4gICAgICAgIHRoaXMuc3ZjLmRpc3BhdGNoKHtcclxuICAgICAgICAgIHR5cGU6IEFjdGlvblR5cGVzLlJFTE9BRF9DVVJSRU5UX0ZPTERFUixcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,69 +1,81 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import { Component, Input } from '@angular/core';
|
|
6
|
-
import { Subject } from 'rxjs/internal/Subject';
|
|
7
|
-
import { takeUntil } from 'rxjs/operators';
|
|
8
|
-
import { select } from '../../../store';
|
|
9
|
-
export class FolderListComponent {
|
|
10
|
-
constructor() {
|
|
11
|
-
this.
|
|
12
|
-
this.
|
|
13
|
-
this.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
]
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import { Component, Input } from '@angular/core';
|
|
6
|
+
import { Subject } from 'rxjs/internal/Subject';
|
|
7
|
+
import { takeUntil } from 'rxjs/operators';
|
|
8
|
+
import { select } from '../../../store';
|
|
9
|
+
export class FolderListComponent {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.hasModifyPermission = true;
|
|
12
|
+
this.hasAccessPermission = true;
|
|
13
|
+
this.hasArchivePermission = true;
|
|
14
|
+
this.loading = false;
|
|
15
|
+
this.unsubscribe$ = new Subject();
|
|
16
|
+
this.bindSubscriber();
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* @return {?}
|
|
20
|
+
*/
|
|
21
|
+
ngOnInit() { }
|
|
22
|
+
/**
|
|
23
|
+
* @return {?}
|
|
24
|
+
*/
|
|
25
|
+
ngOnDestroy() {
|
|
26
|
+
this.unsubscribe$.next();
|
|
27
|
+
this.unsubscribe$.complete();
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* @private
|
|
31
|
+
* @return {?}
|
|
32
|
+
*/
|
|
33
|
+
bindSubscriber() {
|
|
34
|
+
select((/**
|
|
35
|
+
* @param {?} state
|
|
36
|
+
* @return {?}
|
|
37
|
+
*/
|
|
38
|
+
state => state.globalLoading))
|
|
39
|
+
.pipe(takeUntil(this.unsubscribe$))
|
|
40
|
+
.subscribe((/**
|
|
41
|
+
* @param {?} globalLoading
|
|
42
|
+
* @return {?}
|
|
43
|
+
*/
|
|
44
|
+
globalLoading => {
|
|
45
|
+
this.loading = globalLoading;
|
|
46
|
+
}));
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
FolderListComponent.decorators = [
|
|
50
|
+
{ type: Component, args: [{
|
|
51
|
+
selector: 'lib-folder-list',
|
|
52
|
+
template: "<div class=\"folder-container\">\r\n <h6>Folders</h6>\r\n <div class=\"folder-list custom-scrollbar\">\r\n <lib-folder-item\r\n *ngFor=\"let folder of folders\"\r\n [folder]=\"folder\"\r\n [hasModifyPermission]=\"hasModifyPermission\"\r\n [hasAccessPermission]=\"hasAccessPermission\"\r\n [hasArchivePermission]=\"hasArchivePermission\"\r\n ></lib-folder-item>\r\n </div>\r\n <div class=\"folder-empty\" *ngIf=\"folders && !folders.length\">\r\n <span>This folder is empty.</span>\r\n </div>\r\n</div>\r\n",
|
|
53
|
+
styles: [":host::ng-deep .folder-container h6{color:#979797}:host::ng-deep .folder-container .folder-list{display:flex;flex-wrap:nowrap;overflow:auto;padding-bottom:10px}:host::ng-deep .folder-container .folder-empty{text-align:center;color:#979797;font-size:14px}"]
|
|
54
|
+
}] }
|
|
55
|
+
];
|
|
56
|
+
/** @nocollapse */
|
|
57
|
+
FolderListComponent.ctorParameters = () => [];
|
|
58
|
+
FolderListComponent.propDecorators = {
|
|
59
|
+
hasModifyPermission: [{ type: Input }],
|
|
60
|
+
hasAccessPermission: [{ type: Input }],
|
|
61
|
+
hasArchivePermission: [{ type: Input }],
|
|
62
|
+
folders: [{ type: Input }]
|
|
63
|
+
};
|
|
64
|
+
if (false) {
|
|
65
|
+
/** @type {?} */
|
|
66
|
+
FolderListComponent.prototype.hasModifyPermission;
|
|
67
|
+
/** @type {?} */
|
|
68
|
+
FolderListComponent.prototype.hasAccessPermission;
|
|
69
|
+
/** @type {?} */
|
|
70
|
+
FolderListComponent.prototype.hasArchivePermission;
|
|
71
|
+
/** @type {?} */
|
|
72
|
+
FolderListComponent.prototype.folders;
|
|
73
|
+
/** @type {?} */
|
|
74
|
+
FolderListComponent.prototype.loading;
|
|
75
|
+
/**
|
|
76
|
+
* @type {?}
|
|
77
|
+
* @private
|
|
78
|
+
*/
|
|
79
|
+
FolderListComponent.prototype.unsubscribe$;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9sZGVyLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJzLXBrL2Fzc2V0LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9wYXJ0aWFsL2ZvbGRlci1saXN0L2ZvbGRlci1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBT3hDLE1BQU0sT0FBTyxtQkFBbUI7SUFLOUI7UUFKUyx3QkFBbUIsR0FBYSxJQUFJLENBQUM7UUFDckMsd0JBQW1CLEdBQWEsSUFBSSxDQUFDO1FBQ3JDLHlCQUFvQixHQUFhLElBQUksQ0FBQztRQU94QyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2YsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBTHpDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDOzs7O0lBTUQsUUFBUSxLQUFJLENBQUM7Ozs7SUFFYixXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQy9CLENBQUM7Ozs7O0lBRU8sY0FBYztRQUNwQixNQUFNOzs7O1FBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFDO2FBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2xDLFNBQVM7Ozs7UUFBQyxhQUFhLENBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQztRQUMvQixDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7OztZQS9CRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsNGlCQUEyQzs7YUFFNUM7Ozs7O2tDQUVFLEtBQUs7a0NBQ0wsS0FBSzttQ0FDTCxLQUFLO3NCQU1MLEtBQUs7Ozs7SUFSTixrREFBOEM7O0lBQzlDLGtEQUE4Qzs7SUFDOUMsbURBQStDOztJQU0vQyxzQ0FBK0I7O0lBQy9CLHNDQUF1Qjs7Ozs7SUFDdkIsMkNBQTJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMvaW50ZXJuYWwvU3ViamVjdCc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQXNzZXRNb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscyc7XHJcbmltcG9ydCB7IHNlbGVjdCB9IGZyb20gJy4uLy4uLy4uL3N0b3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWZvbGRlci1saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZm9sZGVyLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2ZvbGRlci1saXN0LmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb2xkZXJMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIGhhc01vZGlmeVBlcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBoYXNBY2Nlc3NQZXJtaXNzaW9uPzogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgaGFzQXJjaGl2ZVBlcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLmJpbmRTdWJzY3JpYmVyKCk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBmb2xkZXJzOiBBc3NldE1vZGVsW107XHJcbiAgcHVibGljIGxvYWRpbmcgPSBmYWxzZTtcclxuICBwcml2YXRlIHVuc3Vic2NyaWJlJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gIG5nT25Jbml0KCkge31cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLnVuc3Vic2NyaWJlJC5uZXh0KCk7XHJcbiAgICB0aGlzLnVuc3Vic2NyaWJlJC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBiaW5kU3Vic2NyaWJlcigpIHtcclxuICAgIHNlbGVjdChzdGF0ZSA9PiBzdGF0ZS5nbG9iYWxMb2FkaW5nKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKGdsb2JhbExvYWRpbmcgPT4ge1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IGdsb2JhbExvYWRpbmc7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|