@rs-pk/asset-management 1.0.24 → 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.
- package/README.md +24 -24
- package/bundles/rs-pk-asset-management.umd.js +6436 -6442
- 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 +169 -164
- package/esm2015/lib/asset-management.module.js +178 -178
- 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 -398
- package/esm2015/lib/components/partial/asset-item/asset-item.component.js +316 -316
- package/esm2015/lib/components/partial/asset-list/asset-list.component.js +285 -285
- package/esm2015/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +110 -123
- package/esm2015/lib/components/partial/asset-wrapper/asset-wrapper.component.js +119 -119
- 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 -126
- package/esm2015/lib/components/partial/folder-list/folder-list.component.js +81 -81
- package/esm2015/lib/components/partial/node-details/node-details.component.js +417 -417
- 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 +151 -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 +184 -179
- package/esm5/lib/asset-management.module.js +179 -179
- 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 -440
- package/esm5/lib/components/partial/asset-item/asset-item.component.js +350 -350
- package/esm5/lib/components/partial/asset-list/asset-list.component.js +318 -318
- package/esm5/lib/components/partial/asset-management-dialog/asset-management-dialog.component.js +125 -138
- package/esm5/lib/components/partial/asset-wrapper/asset-wrapper.component.js +137 -137
- 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 -138
- package/esm5/lib/components/partial/folder-list/folder-list.component.js +94 -94
- package/esm5/lib/components/partial/node-details/node-details.component.js +458 -458
- 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 +170 -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 +5636 -5642
- package/fesm2015/rs-pk-asset-management.js.map +1 -1
- package/fesm5/rs-pk-asset-management.js +6442 -6448
- package/fesm5/rs-pk-asset-management.js.map +1 -1
- package/lib/asset-management.component.d.ts +25 -25
- 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 -65
- package/lib/components/partial/asset-item/asset-item.component.d.ts +40 -40
- package/lib/components/partial/asset-list/asset-list.component.d.ts +27 -27
- package/lib/components/partial/asset-management-dialog/asset-management-dialog.component.d.ts +17 -20
- package/lib/components/partial/asset-wrapper/asset-wrapper.component.d.ts +23 -23
- 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 -17
- package/lib/components/partial/folder-list/folder-list.component.d.ts +14 -14
- package/lib/components/partial/node-details/node-details.component.d.ts +32 -32
- 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 +73 -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,126 +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
|
-
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()\">\
|
|
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,
|
|
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()\">\n <mat-icon class=\"folder__icon\">folder</mat-icon>\n <span class=\"folder__name\" [matTooltip]=\"folder.OriginalFileName\">\n {{ folder.OriginalFileName }}\n </span>\n <mat-icon class=\"folder__action\" [matMenuTriggerFor]=\"menu\"\n >more_vert</mat-icon\n >\n</div>\n<mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)=\"renameFolder()\" [disabled]=\"!hasModifyPermission\">\n <mat-icon>edit_outline</mat-icon> <span>Rename</span>\n </button>\n <button mat-menu-item (click)=\"deleteFolder()\" [disabled]=\"!hasArchivePermission\">\n <mat-icon color=\"warn\">delete_outline</mat-icon> <span>Delete</span>\n </button>\n</mat-menu>\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9sZGVyLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJzLXBrL2Fzc2V0LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9wYXJ0aWFsL2ZvbGRlci1pdGVtL2ZvbGRlci1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDL0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFPM0UsTUFBTSxPQUFPLG1CQUFtQjs7Ozs7SUFDOUIsWUFBb0IsTUFBaUIsRUFBVSxHQUEyQjtRQUF0RCxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBd0I7UUFFakUsd0JBQW1CLEdBQWEsSUFBSSxDQUFDO1FBQ3JDLHdCQUFtQixHQUFhLElBQUksQ0FBQztRQUNyQyx5QkFBb0IsR0FBYSxJQUFJLENBQUM7SUFKOEIsQ0FBQzs7OztJQU05RSxRQUFRLEtBQUksQ0FBQzs7OztJQUViLFVBQVU7UUFDUixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztZQUNoQixJQUFJLEVBQUUsV0FBVyxDQUFDLHFCQUFxQjtZQUN2QyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPO1NBQzdCLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7SUFFRCxZQUFZOztjQUNKLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsRUFBRTtZQUM1RCxJQUFJLEVBQUU7Z0JBQ0osT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTztnQkFDNUIsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCO2FBQ25DO1lBQ0QsVUFBVSxFQUFFLG1CQUFtQjtTQUNoQyxDQUFDO1FBRUYsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVM7Ozs7UUFBQyxHQUFHLENBQUMsRUFBRTtZQUN0QyxJQUFJLEdBQUcsRUFBRTtnQkFDUCxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztvQkFDaEIsSUFBSSxFQUFFLFdBQVcsQ0FBQyxxQkFBcUI7aUJBQ3hDLENBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7O0lBRUQsWUFBWTs7Y0FDSixTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDeEQsSUFBSSxFQUFFO2dCQUNKLElBQUksRUFBRSxRQUFRO2dCQUNkLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUMxQixJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0I7YUFDbkM7WUFDRCxVQUFVLEVBQUUsbUJBQW1CO1lBQy9CLFNBQVMsRUFBRSxLQUFLO1NBQ2pCLENBQUM7UUFFRixTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUzs7OztRQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3RDLElBQUksR0FBRyxFQUFFO2dCQUNQLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO29CQUNoQixJQUFJLEVBQUUsV0FBVyxDQUFDLHFCQUFxQjtpQkFDeEMsQ0FBQyxDQUFDO2FBQ0o7UUFDSCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7OztZQXpERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsdXRCQUEyQzs7YUFFNUM7Ozs7WUFYUSxTQUFTO1lBS1Qsc0JBQXNCOzs7cUJBUzVCLEtBQUs7a0NBQ0wsS0FBSztrQ0FDTCxLQUFLO21DQUNMLEtBQUs7Ozs7SUFITixxQ0FBNEI7O0lBQzVCLGtEQUE4Qzs7SUFDOUMsa0RBQThDOztJQUM5QyxtREFBK0M7Ozs7O0lBSm5DLHFDQUF5Qjs7Ozs7SUFBRSxrQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBBc3NldE1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEFjdGlvblR5cGVzIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvYWN0aW9ucy5hY3Rpb24nO1xuaW1wb3J0IHsgRWRpdEZvbGRlckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2VkaXQtZm9sZGVyLWRpYWxvZy9lZGl0LWZvbGRlci1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IERlbGV0ZURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2RlbGV0ZS1kaWFsb2cvZGVsZXRlLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXNzZXRNYW5hZ2VtZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2Fzc2V0LW1hbmFnZW1lbnQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1mb2xkZXItaXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb2xkZXItaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZvbGRlci1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZvbGRlckl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLCBwcml2YXRlIHN2YzogQXNzZXRNYW5hZ2VtZW50U2VydmljZSkge31cbiAgQElucHV0KCkgZm9sZGVyOiBBc3NldE1vZGVsO1xuICBASW5wdXQoKSBoYXNNb2RpZnlQZXJtaXNzaW9uPzogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGhhc0FjY2Vzc1Blcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgaGFzQXJjaGl2ZVBlcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcblxuICBuZ09uSW5pdCgpIHt9XG5cbiAgb3BlbkZvbGRlcigpIHtcbiAgICB0aGlzLnN2Yy5kaXNwYXRjaCh7XG4gICAgICB0eXBlOiBBY3Rpb25UeXBlcy5TRVRfQ1VSUkVOVF9GT0xERVJfSUQsXG4gICAgICBwYXlsb2FkOiB0aGlzLmZvbGRlci5Bc3NldElkLFxuICAgIH0pO1xuICB9XG5cbiAgcmVuYW1lRm9sZGVyKCkge1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oRWRpdEZvbGRlckRpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgZGF0YToge1xuICAgICAgICBhc3NldElkOiB0aGlzLmZvbGRlci5Bc3NldElkLFxuICAgICAgICBuYW1lOiB0aGlzLmZvbGRlci5PcmlnaW5hbEZpbGVOYW1lLFxuICAgICAgfSxcbiAgICAgIHBhbmVsQ2xhc3M6ICdsaWItZGlhbG9nLS1zbWFsbCcsXG4gICAgfSk7XG5cbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgdGhpcy5zdmMuZGlzcGF0Y2goe1xuICAgICAgICAgIHR5cGU6IEFjdGlvblR5cGVzLlJFTE9BRF9DVVJSRU5UX0ZPTERFUixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBkZWxldGVGb2xkZXIoKSB7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihEZWxldGVEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgdHlwZTogJ2ZvbGRlcicsXG4gICAgICAgIGlkczogW3RoaXMuZm9sZGVyLkFzc2V0SWRdLFxuICAgICAgICBuYW1lOiB0aGlzLmZvbGRlci5PcmlnaW5hbEZpbGVOYW1lLFxuICAgICAgfSxcbiAgICAgIHBhbmVsQ2xhc3M6ICdsaWItZGlhbG9nLS1zbWFsbCcsXG4gICAgICBhdXRvRm9jdXM6IGZhbHNlLFxuICAgIH0pO1xuXG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICBpZiAocmVzKSB7XG4gICAgICAgIHRoaXMuc3ZjLmRpc3BhdGNoKHtcbiAgICAgICAgICB0eXBlOiBBY3Rpb25UeXBlcy5SRUxPQURfQ1VSUkVOVF9GT0xERVIsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,81 +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.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\">\
|
|
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,
|
|
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\">\n <h6>Folders</h6>\n <div class=\"folder-list custom-scrollbar\">\n <lib-folder-item\n *ngFor=\"let folder of folders\"\n [folder]=\"folder\"\n [hasModifyPermission]=\"hasModifyPermission\"\n [hasAccessPermission]=\"hasAccessPermission\"\n [hasArchivePermission]=\"hasArchivePermission\"\n ></lib-folder-item>\n </div>\n <div class=\"folder-empty\" *ngIf=\"folders && !folders.length\">\n <span>This folder is empty.</span>\n </div>\n</div>\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9sZGVyLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJzLXBrL2Fzc2V0LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9wYXJ0aWFsL2ZvbGRlci1saXN0L2ZvbGRlci1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBT3hDLE1BQU0sT0FBTyxtQkFBbUI7SUFLOUI7UUFKUyx3QkFBbUIsR0FBYSxJQUFJLENBQUM7UUFDckMsd0JBQW1CLEdBQWEsSUFBSSxDQUFDO1FBQ3JDLHlCQUFvQixHQUFhLElBQUksQ0FBQztRQU94QyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2YsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBTHpDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDOzs7O0lBTUQsUUFBUSxLQUFJLENBQUM7Ozs7SUFFYixXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQy9CLENBQUM7Ozs7O0lBRU8sY0FBYztRQUNwQixNQUFNOzs7O1FBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFDO2FBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2xDLFNBQVM7Ozs7UUFBQyxhQUFhLENBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQztRQUMvQixDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7OztZQS9CRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsOGdCQUEyQzs7YUFFNUM7Ozs7O2tDQUVFLEtBQUs7a0NBQ0wsS0FBSzttQ0FDTCxLQUFLO3NCQU1MLEtBQUs7Ozs7SUFSTixrREFBOEM7O0lBQzlDLGtEQUE4Qzs7SUFDOUMsbURBQStDOztJQU0vQyxzQ0FBK0I7O0lBQy9CLHNDQUF1Qjs7Ozs7SUFDdkIsMkNBQTJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzL2ludGVybmFsL1N1YmplY3QnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQXNzZXRNb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBzZWxlY3QgfSBmcm9tICcuLi8uLi8uLi9zdG9yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1mb2xkZXItbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb2xkZXItbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZvbGRlci1saXN0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZvbGRlckxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGhhc01vZGlmeVBlcm1pc3Npb24/OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgaGFzQWNjZXNzUGVybWlzc2lvbj86IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBoYXNBcmNoaXZlUGVybWlzc2lvbj86IGJvb2xlYW4gPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuYmluZFN1YnNjcmliZXIoKTtcbiAgfVxuXG4gIEBJbnB1dCgpIGZvbGRlcnM6IEFzc2V0TW9kZWxbXTtcbiAgcHVibGljIGxvYWRpbmcgPSBmYWxzZTtcbiAgcHJpdmF0ZSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIG5nT25Jbml0KCkge31cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlJC5uZXh0KCk7XG4gICAgdGhpcy51bnN1YnNjcmliZSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgYmluZFN1YnNjcmliZXIoKSB7XG4gICAgc2VsZWN0KHN0YXRlID0+IHN0YXRlLmdsb2JhbExvYWRpbmcpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSQpKVxuICAgICAgLnN1YnNjcmliZShnbG9iYWxMb2FkaW5nID0+IHtcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZ2xvYmFsTG9hZGluZztcbiAgICAgIH0pO1xuICB9XG59XG4iXX0=
|