@rs-pk/asset-management 1.0.25 → 1.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/bundles/rs-pk-asset-management.umd.js +6436 -6436
- 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 -169
- 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 -110
- 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 -151
- 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 -184
- 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 -125
- 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 -170
- 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 +5635 -5635
- package/fesm2015/rs-pk-asset-management.js.map +1 -1
- package/fesm5/rs-pk-asset-management.js +6441 -6441
- 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 -17
- 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 -73
- 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 -2
- 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,207 +1,207 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import * as tslib_1 from "tslib";
|
|
6
|
-
import { Inject, Injectable } from '@angular/core';
|
|
7
|
-
import { MatDialog } from '@angular/material/dialog';
|
|
8
|
-
import { BehaviorSubject } from 'rxjs';
|
|
9
|
-
import { BaseHttpClient } from './base.service';
|
|
10
|
-
import { AM_CONFIG } from './env-config.service';
|
|
11
|
-
var UploadAssetsService = /** @class */ (function () {
|
|
12
|
-
function UploadAssetsService(_env, dialog, _api) {
|
|
13
|
-
this._env = _env;
|
|
14
|
-
this.dialog = dialog;
|
|
15
|
-
this._api = _api;
|
|
16
|
-
this.files = [];
|
|
17
|
-
this.fileNames = [];
|
|
18
|
-
this.supportedSize = 10 * 1024 * 1024; // 10MB
|
|
19
|
-
// 10MB
|
|
20
|
-
this.documentExtension = ['.pdf', '.csv'];
|
|
21
|
-
this.compressedExtension = ['.zip'];
|
|
22
|
-
this.imageExtension = [
|
|
23
|
-
'.png',
|
|
24
|
-
'.gif',
|
|
25
|
-
'.jpeg',
|
|
26
|
-
'.jpg',
|
|
27
|
-
'.svg',
|
|
28
|
-
'.svg+xml',
|
|
29
|
-
];
|
|
30
|
-
this.supportedTypes = tslib_1.__spread(this.imageExtension, this.compressedExtension, this.documentExtension);
|
|
31
|
-
this.messageErrors = {
|
|
32
|
-
size: "File size should be upto",
|
|
33
|
-
ext: "Only supported file extension:",
|
|
34
|
-
replace: "The replacement file should be the same extension with old one:",
|
|
35
|
-
maxLength: "The character limit is 200 characters",
|
|
36
|
-
};
|
|
37
|
-
this.errorObs$ = new BehaviorSubject(true);
|
|
38
|
-
this.baseUrl = this._env.asset2Url;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* @return {?}
|
|
42
|
-
*/
|
|
43
|
-
UploadAssetsService.prototype.getErrorObs = /**
|
|
44
|
-
* @return {?}
|
|
45
|
-
*/
|
|
46
|
-
function () {
|
|
47
|
-
return this.errorObs$.asObservable();
|
|
48
|
-
};
|
|
49
|
-
/**
|
|
50
|
-
* @param {?} error
|
|
51
|
-
* @return {?}
|
|
52
|
-
*/
|
|
53
|
-
UploadAssetsService.prototype.setErrorObs = /**
|
|
54
|
-
* @param {?} error
|
|
55
|
-
* @return {?}
|
|
56
|
-
*/
|
|
57
|
-
function (error) {
|
|
58
|
-
this.errorObs$.next(error);
|
|
59
|
-
};
|
|
60
|
-
Object.defineProperty(UploadAssetsService.prototype, "getFiles", {
|
|
61
|
-
get: /**
|
|
62
|
-
* @return {?}
|
|
63
|
-
*/
|
|
64
|
-
function () {
|
|
65
|
-
return this.files;
|
|
66
|
-
},
|
|
67
|
-
enumerable: true,
|
|
68
|
-
configurable: true
|
|
69
|
-
});
|
|
70
|
-
Object.defineProperty(UploadAssetsService.prototype, "setFiles", {
|
|
71
|
-
set: /**
|
|
72
|
-
* @param {?} files
|
|
73
|
-
* @return {?}
|
|
74
|
-
*/
|
|
75
|
-
function (files) {
|
|
76
|
-
this.files = files;
|
|
77
|
-
},
|
|
78
|
-
enumerable: true,
|
|
79
|
-
configurable: true
|
|
80
|
-
});
|
|
81
|
-
Object.defineProperty(UploadAssetsService.prototype, "errorFiles", {
|
|
82
|
-
get: /**
|
|
83
|
-
* @return {?}
|
|
84
|
-
*/
|
|
85
|
-
function () {
|
|
86
|
-
/** @type {?} */
|
|
87
|
-
var invalidFiles = this.fileNames.filter((/**
|
|
88
|
-
* @param {?} file
|
|
89
|
-
* @return {?}
|
|
90
|
-
*/
|
|
91
|
-
function (file) { return !file.valid; }));
|
|
92
|
-
return this.fileNames.length && invalidFiles.length > 0;
|
|
93
|
-
},
|
|
94
|
-
enumerable: true,
|
|
95
|
-
configurable: true
|
|
96
|
-
});
|
|
97
|
-
Object.defineProperty(UploadAssetsService.prototype, "errorLength", {
|
|
98
|
-
get: /**
|
|
99
|
-
* @return {?}
|
|
100
|
-
*/
|
|
101
|
-
function () {
|
|
102
|
-
return this.fileNames.filter((/**
|
|
103
|
-
* @param {?} file
|
|
104
|
-
* @return {?}
|
|
105
|
-
*/
|
|
106
|
-
function (file) { return !file.valid; })).length;
|
|
107
|
-
},
|
|
108
|
-
enumerable: true,
|
|
109
|
-
configurable: true
|
|
110
|
-
});
|
|
111
|
-
/**
|
|
112
|
-
* @param {?} index
|
|
113
|
-
* @return {?}
|
|
114
|
-
*/
|
|
115
|
-
UploadAssetsService.prototype.deleteFile = /**
|
|
116
|
-
* @param {?} index
|
|
117
|
-
* @return {?}
|
|
118
|
-
*/
|
|
119
|
-
function (index) {
|
|
120
|
-
this.files.splice(index, 1);
|
|
121
|
-
this.fileNames.splice(index, 1);
|
|
122
|
-
};
|
|
123
|
-
/**
|
|
124
|
-
* @param {?} parentAssetId
|
|
125
|
-
* @return {?}
|
|
126
|
-
*/
|
|
127
|
-
UploadAssetsService.prototype.uploadMultipleAssets = /**
|
|
128
|
-
* @param {?} parentAssetId
|
|
129
|
-
* @return {?}
|
|
130
|
-
*/
|
|
131
|
-
function (parentAssetId) {
|
|
132
|
-
var files = this.files;
|
|
133
|
-
/** @type {?} */
|
|
134
|
-
var fileNames = this.fileNames.map((/**
|
|
135
|
-
* @param {?} file
|
|
136
|
-
* @return {?}
|
|
137
|
-
*/
|
|
138
|
-
function (file) { return file.name; }));
|
|
139
|
-
/** @type {?} */
|
|
140
|
-
var formData = new FormData();
|
|
141
|
-
formData.append('parentAssetId', parentAssetId);
|
|
142
|
-
formData.append('companyId', '732DA8D2-04EC-4BE0-A168-63EE0DCF50D8');
|
|
143
|
-
for (var i = 0; i < files.length; i++) {
|
|
144
|
-
/** @type {?} */
|
|
145
|
-
var nameSplit = files[i].name.split('.');
|
|
146
|
-
/** @type {?} */
|
|
147
|
-
var ext = "." + nameSplit.splice(nameSplit.length - 1, 1)[0];
|
|
148
|
-
formData.append('files', files[i], "" + fileNames[i] + ext);
|
|
149
|
-
}
|
|
150
|
-
return this._api.post(this.baseUrl + "/File/Upload", formData);
|
|
151
|
-
};
|
|
152
|
-
UploadAssetsService.decorators = [
|
|
153
|
-
{ type: Injectable }
|
|
154
|
-
];
|
|
155
|
-
/** @nocollapse */
|
|
156
|
-
UploadAssetsService.ctorParameters = function () { return [
|
|
157
|
-
{ type: undefined, decorators: [{ type: Inject, args: [AM_CONFIG,] }] },
|
|
158
|
-
{ type: MatDialog },
|
|
159
|
-
{ type: BaseHttpClient }
|
|
160
|
-
]; };
|
|
161
|
-
return UploadAssetsService;
|
|
162
|
-
}());
|
|
163
|
-
export { UploadAssetsService };
|
|
164
|
-
if (false) {
|
|
165
|
-
/**
|
|
166
|
-
* @type {?}
|
|
167
|
-
* @private
|
|
168
|
-
*/
|
|
169
|
-
UploadAssetsService.prototype.files;
|
|
170
|
-
/** @type {?} */
|
|
171
|
-
UploadAssetsService.prototype.fileNames;
|
|
172
|
-
/** @type {?} */
|
|
173
|
-
UploadAssetsService.prototype.supportedSize;
|
|
174
|
-
/** @type {?} */
|
|
175
|
-
UploadAssetsService.prototype.documentExtension;
|
|
176
|
-
/** @type {?} */
|
|
177
|
-
UploadAssetsService.prototype.compressedExtension;
|
|
178
|
-
/** @type {?} */
|
|
179
|
-
UploadAssetsService.prototype.imageExtension;
|
|
180
|
-
/** @type {?} */
|
|
181
|
-
UploadAssetsService.prototype.supportedTypes;
|
|
182
|
-
/** @type {?} */
|
|
183
|
-
UploadAssetsService.prototype.messageErrors;
|
|
184
|
-
/**
|
|
185
|
-
* @type {?}
|
|
186
|
-
* @private
|
|
187
|
-
*/
|
|
188
|
-
UploadAssetsService.prototype.errorObs$;
|
|
189
|
-
/**
|
|
190
|
-
* @type {?}
|
|
191
|
-
* @private
|
|
192
|
-
*/
|
|
193
|
-
UploadAssetsService.prototype.baseUrl;
|
|
194
|
-
/**
|
|
195
|
-
* @type {?}
|
|
196
|
-
* @private
|
|
197
|
-
*/
|
|
198
|
-
UploadAssetsService.prototype._env;
|
|
199
|
-
/** @type {?} */
|
|
200
|
-
UploadAssetsService.prototype.dialog;
|
|
201
|
-
/**
|
|
202
|
-
* @type {?}
|
|
203
|
-
* @private
|
|
204
|
-
*/
|
|
205
|
-
UploadAssetsService.prototype._api;
|
|
206
|
-
}
|
|
207
|
-
//# 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 * as tslib_1 from "tslib";
|
|
6
|
+
import { Inject, Injectable } from '@angular/core';
|
|
7
|
+
import { MatDialog } from '@angular/material/dialog';
|
|
8
|
+
import { BehaviorSubject } from 'rxjs';
|
|
9
|
+
import { BaseHttpClient } from './base.service';
|
|
10
|
+
import { AM_CONFIG } from './env-config.service';
|
|
11
|
+
var UploadAssetsService = /** @class */ (function () {
|
|
12
|
+
function UploadAssetsService(_env, dialog, _api) {
|
|
13
|
+
this._env = _env;
|
|
14
|
+
this.dialog = dialog;
|
|
15
|
+
this._api = _api;
|
|
16
|
+
this.files = [];
|
|
17
|
+
this.fileNames = [];
|
|
18
|
+
this.supportedSize = 10 * 1024 * 1024; // 10MB
|
|
19
|
+
// 10MB
|
|
20
|
+
this.documentExtension = ['.pdf', '.csv'];
|
|
21
|
+
this.compressedExtension = ['.zip'];
|
|
22
|
+
this.imageExtension = [
|
|
23
|
+
'.png',
|
|
24
|
+
'.gif',
|
|
25
|
+
'.jpeg',
|
|
26
|
+
'.jpg',
|
|
27
|
+
'.svg',
|
|
28
|
+
'.svg+xml',
|
|
29
|
+
];
|
|
30
|
+
this.supportedTypes = tslib_1.__spread(this.imageExtension, this.compressedExtension, this.documentExtension);
|
|
31
|
+
this.messageErrors = {
|
|
32
|
+
size: "File size should be upto",
|
|
33
|
+
ext: "Only supported file extension:",
|
|
34
|
+
replace: "The replacement file should be the same extension with old one:",
|
|
35
|
+
maxLength: "The character limit is 200 characters",
|
|
36
|
+
};
|
|
37
|
+
this.errorObs$ = new BehaviorSubject(true);
|
|
38
|
+
this.baseUrl = this._env.asset2Url;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* @return {?}
|
|
42
|
+
*/
|
|
43
|
+
UploadAssetsService.prototype.getErrorObs = /**
|
|
44
|
+
* @return {?}
|
|
45
|
+
*/
|
|
46
|
+
function () {
|
|
47
|
+
return this.errorObs$.asObservable();
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* @param {?} error
|
|
51
|
+
* @return {?}
|
|
52
|
+
*/
|
|
53
|
+
UploadAssetsService.prototype.setErrorObs = /**
|
|
54
|
+
* @param {?} error
|
|
55
|
+
* @return {?}
|
|
56
|
+
*/
|
|
57
|
+
function (error) {
|
|
58
|
+
this.errorObs$.next(error);
|
|
59
|
+
};
|
|
60
|
+
Object.defineProperty(UploadAssetsService.prototype, "getFiles", {
|
|
61
|
+
get: /**
|
|
62
|
+
* @return {?}
|
|
63
|
+
*/
|
|
64
|
+
function () {
|
|
65
|
+
return this.files;
|
|
66
|
+
},
|
|
67
|
+
enumerable: true,
|
|
68
|
+
configurable: true
|
|
69
|
+
});
|
|
70
|
+
Object.defineProperty(UploadAssetsService.prototype, "setFiles", {
|
|
71
|
+
set: /**
|
|
72
|
+
* @param {?} files
|
|
73
|
+
* @return {?}
|
|
74
|
+
*/
|
|
75
|
+
function (files) {
|
|
76
|
+
this.files = files;
|
|
77
|
+
},
|
|
78
|
+
enumerable: true,
|
|
79
|
+
configurable: true
|
|
80
|
+
});
|
|
81
|
+
Object.defineProperty(UploadAssetsService.prototype, "errorFiles", {
|
|
82
|
+
get: /**
|
|
83
|
+
* @return {?}
|
|
84
|
+
*/
|
|
85
|
+
function () {
|
|
86
|
+
/** @type {?} */
|
|
87
|
+
var invalidFiles = this.fileNames.filter((/**
|
|
88
|
+
* @param {?} file
|
|
89
|
+
* @return {?}
|
|
90
|
+
*/
|
|
91
|
+
function (file) { return !file.valid; }));
|
|
92
|
+
return this.fileNames.length && invalidFiles.length > 0;
|
|
93
|
+
},
|
|
94
|
+
enumerable: true,
|
|
95
|
+
configurable: true
|
|
96
|
+
});
|
|
97
|
+
Object.defineProperty(UploadAssetsService.prototype, "errorLength", {
|
|
98
|
+
get: /**
|
|
99
|
+
* @return {?}
|
|
100
|
+
*/
|
|
101
|
+
function () {
|
|
102
|
+
return this.fileNames.filter((/**
|
|
103
|
+
* @param {?} file
|
|
104
|
+
* @return {?}
|
|
105
|
+
*/
|
|
106
|
+
function (file) { return !file.valid; })).length;
|
|
107
|
+
},
|
|
108
|
+
enumerable: true,
|
|
109
|
+
configurable: true
|
|
110
|
+
});
|
|
111
|
+
/**
|
|
112
|
+
* @param {?} index
|
|
113
|
+
* @return {?}
|
|
114
|
+
*/
|
|
115
|
+
UploadAssetsService.prototype.deleteFile = /**
|
|
116
|
+
* @param {?} index
|
|
117
|
+
* @return {?}
|
|
118
|
+
*/
|
|
119
|
+
function (index) {
|
|
120
|
+
this.files.splice(index, 1);
|
|
121
|
+
this.fileNames.splice(index, 1);
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* @param {?} parentAssetId
|
|
125
|
+
* @return {?}
|
|
126
|
+
*/
|
|
127
|
+
UploadAssetsService.prototype.uploadMultipleAssets = /**
|
|
128
|
+
* @param {?} parentAssetId
|
|
129
|
+
* @return {?}
|
|
130
|
+
*/
|
|
131
|
+
function (parentAssetId) {
|
|
132
|
+
var files = this.files;
|
|
133
|
+
/** @type {?} */
|
|
134
|
+
var fileNames = this.fileNames.map((/**
|
|
135
|
+
* @param {?} file
|
|
136
|
+
* @return {?}
|
|
137
|
+
*/
|
|
138
|
+
function (file) { return file.name; }));
|
|
139
|
+
/** @type {?} */
|
|
140
|
+
var formData = new FormData();
|
|
141
|
+
formData.append('parentAssetId', parentAssetId);
|
|
142
|
+
formData.append('companyId', '732DA8D2-04EC-4BE0-A168-63EE0DCF50D8');
|
|
143
|
+
for (var i = 0; i < files.length; i++) {
|
|
144
|
+
/** @type {?} */
|
|
145
|
+
var nameSplit = files[i].name.split('.');
|
|
146
|
+
/** @type {?} */
|
|
147
|
+
var ext = "." + nameSplit.splice(nameSplit.length - 1, 1)[0];
|
|
148
|
+
formData.append('files', files[i], "" + fileNames[i] + ext);
|
|
149
|
+
}
|
|
150
|
+
return this._api.post(this.baseUrl + "/File/Upload", formData);
|
|
151
|
+
};
|
|
152
|
+
UploadAssetsService.decorators = [
|
|
153
|
+
{ type: Injectable }
|
|
154
|
+
];
|
|
155
|
+
/** @nocollapse */
|
|
156
|
+
UploadAssetsService.ctorParameters = function () { return [
|
|
157
|
+
{ type: undefined, decorators: [{ type: Inject, args: [AM_CONFIG,] }] },
|
|
158
|
+
{ type: MatDialog },
|
|
159
|
+
{ type: BaseHttpClient }
|
|
160
|
+
]; };
|
|
161
|
+
return UploadAssetsService;
|
|
162
|
+
}());
|
|
163
|
+
export { UploadAssetsService };
|
|
164
|
+
if (false) {
|
|
165
|
+
/**
|
|
166
|
+
* @type {?}
|
|
167
|
+
* @private
|
|
168
|
+
*/
|
|
169
|
+
UploadAssetsService.prototype.files;
|
|
170
|
+
/** @type {?} */
|
|
171
|
+
UploadAssetsService.prototype.fileNames;
|
|
172
|
+
/** @type {?} */
|
|
173
|
+
UploadAssetsService.prototype.supportedSize;
|
|
174
|
+
/** @type {?} */
|
|
175
|
+
UploadAssetsService.prototype.documentExtension;
|
|
176
|
+
/** @type {?} */
|
|
177
|
+
UploadAssetsService.prototype.compressedExtension;
|
|
178
|
+
/** @type {?} */
|
|
179
|
+
UploadAssetsService.prototype.imageExtension;
|
|
180
|
+
/** @type {?} */
|
|
181
|
+
UploadAssetsService.prototype.supportedTypes;
|
|
182
|
+
/** @type {?} */
|
|
183
|
+
UploadAssetsService.prototype.messageErrors;
|
|
184
|
+
/**
|
|
185
|
+
* @type {?}
|
|
186
|
+
* @private
|
|
187
|
+
*/
|
|
188
|
+
UploadAssetsService.prototype.errorObs$;
|
|
189
|
+
/**
|
|
190
|
+
* @type {?}
|
|
191
|
+
* @private
|
|
192
|
+
*/
|
|
193
|
+
UploadAssetsService.prototype.baseUrl;
|
|
194
|
+
/**
|
|
195
|
+
* @type {?}
|
|
196
|
+
* @private
|
|
197
|
+
*/
|
|
198
|
+
UploadAssetsService.prototype._env;
|
|
199
|
+
/** @type {?} */
|
|
200
|
+
UploadAssetsService.prototype.dialog;
|
|
201
|
+
/**
|
|
202
|
+
* @type {?}
|
|
203
|
+
* @private
|
|
204
|
+
*/
|
|
205
|
+
UploadAssetsService.prototype._api;
|
|
206
|
+
}
|
|
207
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWFzc2V0cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJzLXBrL2Fzc2V0LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvdXBsb2FkLWFzc2V0cy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVqRDtJQTBCRSw2QkFDNkIsSUFBSSxFQUN4QixNQUFpQixFQUNoQixJQUFvQjtRQUZELFNBQUksR0FBSixJQUFJLENBQUE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNoQixTQUFJLEdBQUosSUFBSSxDQUFnQjtRQTNCdEIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNwQixjQUFTLEdBQTBDLEVBQUUsQ0FBQztRQUN0RCxrQkFBYSxHQUFHLEVBQUUsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsT0FBTzs7UUFDaEMsc0JBQWlCLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDckMsd0JBQW1CLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQixtQkFBYyxHQUFHO1lBQy9CLE1BQU07WUFDTixNQUFNO1lBQ04sT0FBTztZQUNQLE1BQU07WUFDTixNQUFNO1lBQ04sVUFBVTtTQUNYLENBQUM7UUFDSyxtQkFBYyxvQkFBTyxJQUFJLENBQUMsY0FBYyxFQUFLLElBQUksQ0FBQyxtQkFBbUIsRUFBSyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7UUFDekYsa0JBQWEsR0FB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QUFPLGlCQUFjLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdEUsQ0FBQzs7Z0JBOUVGLFVBQVU7Ozs7Z0RBMkJOLE1BQU0sU0FBQyxTQUFTO2dCQWhDWixTQUFTO2dCQUVULGNBQWM7O0lBa0Z2QiwwQkFBQztDQUFBLEFBL0VELElBK0VDO1NBOUVZLG1CQUFtQjs7Ozs7O0lBQzlCLG9DQUEyQjs7SUFDM0Isd0NBQTZEOztJQUM3RCw0Q0FBd0M7O0lBQ3hDLGdEQUFxRDs7SUFDckQsa0RBQStDOztJQUMvQyw2Q0FPRTs7SUFDRiw2Q0FBeUc7O0lBQ3pHLDRDQUtFOzs7OztJQUVGLHdDQUFvRTs7Ozs7SUFDcEUsc0NBQXdCOzs7OztJQUd0QixtQ0FBK0I7O0lBQy9CLHFDQUF3Qjs7Ozs7SUFDeEIsbUNBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCYXNlSHR0cENsaWVudCB9IGZyb20gJy4vYmFzZS5zZXJ2aWNlJztcbmltcG9ydCB7IEFNX0NPTkZJRyB9IGZyb20gJy4vZW52LWNvbmZpZy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFVwbG9hZEFzc2V0c1NlcnZpY2Uge1xuICBwcml2YXRlIGZpbGVzOiBGaWxlW10gPSBbXTtcbiAgcHVibGljIGZpbGVOYW1lczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBib29sZWFuIH1bXSA9IFtdO1xuICBwdWJsaWMgc3VwcG9ydGVkU2l6ZSA9IDEwICogMTAyNCAqIDEwMjQ7IC8vIDEwTUJcbiAgcHVibGljIHJlYWRvbmx5IGRvY3VtZW50RXh0ZW5zaW9uID0gWycucGRmJywgJy5jc3YnXTtcbiAgcHVibGljIHJlYWRvbmx5IGNvbXByZXNzZWRFeHRlbnNpb24gPSBbJy56aXAnXTtcbiAgcHVibGljIHJlYWRvbmx5IGltYWdlRXh0ZW5zaW9uID0gW1xuICAgICcucG5nJyxcbiAgICAnLmdpZicsXG4gICAgJy5qcGVnJyxcbiAgICAnLmpwZycsXG4gICAgJy5zdmcnLFxuICAgICcuc3ZnK3htbCcsXG4gIF07XG4gIHB1YmxpYyBzdXBwb3J0ZWRUeXBlcyA9IFsuLi50aGlzLmltYWdlRXh0ZW5zaW9uLCAuLi50aGlzLmNvbXByZXNzZWRFeHRlbnNpb24sIC4uLnRoaXMuZG9jdW1lbnRFeHRlbnNpb25dO1xuICBwdWJsaWMgcmVhZG9ubHkgbWVzc2FnZUVycm9ycyA9IHtcbiAgICBzaXplOiBgRmlsZSBzaXplIHNob3VsZCBiZSB1cHRvYCxcbiAgICBleHQ6IGBPbmx5IHN1cHBvcnRlZCBmaWxlIGV4dGVuc2lvbjpgLFxuICAgIHJlcGxhY2U6IGBUaGUgcmVwbGFjZW1lbnQgZmlsZSBzaG91bGQgYmUgdGhlIHNhbWUgZXh0ZW5zaW9uIHdpdGggb2xkIG9uZTpgLFxuICAgIG1heExlbmd0aDogYFRoZSBjaGFyYWN0ZXIgbGltaXQgaXMgMjAwIGNoYXJhY3RlcnNgLFxuICB9O1xuXG4gIHByaXZhdGUgZXJyb3JPYnMkOiBCZWhhdmlvclN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3QodHJ1ZSk7XG4gIHByaXZhdGUgYmFzZVVybDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoQU1fQ09ORklHKSBwcml2YXRlIF9lbnYsXG4gICAgcHVibGljIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgIHByaXZhdGUgX2FwaTogQmFzZUh0dHBDbGllbnRcbiAgKSB7XG4gICAgdGhpcy5iYXNlVXJsID0gdGhpcy5fZW52LmFzc2V0MlVybDtcbiAgfVxuXG4gIGdldEVycm9yT2JzKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuZXJyb3JPYnMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgc2V0RXJyb3JPYnMoZXJyb3I6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmVycm9yT2JzJC5uZXh0KGVycm9yKTtcbiAgfVxuXG4gIGdldCBnZXRGaWxlcygpOiBGaWxlW10ge1xuICAgIHJldHVybiB0aGlzLmZpbGVzO1xuICB9XG5cbiAgc2V0IHNldEZpbGVzKGZpbGVzOiBGaWxlW10pIHtcbiAgICB0aGlzLmZpbGVzID0gZmlsZXM7XG4gIH1cblxuICBnZXQgZXJyb3JGaWxlcygpOiBib29sZWFuIHtcbiAgICBjb25zdCBpbnZhbGlkRmlsZXMgPSB0aGlzLmZpbGVOYW1lcy5maWx0ZXIoZmlsZSA9PiAhZmlsZS52YWxpZCk7XG4gICAgcmV0dXJuIHRoaXMuZmlsZU5hbWVzLmxlbmd0aCAmJiBpbnZhbGlkRmlsZXMubGVuZ3RoID4gMDtcbiAgfVxuXG4gIGdldCBlcnJvckxlbmd0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5maWxlTmFtZXMuZmlsdGVyKGZpbGUgPT4gIWZpbGUudmFsaWQpLmxlbmd0aDtcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGVGaWxlKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmZpbGVzLnNwbGljZShpbmRleCwgMSk7XG4gICAgdGhpcy5maWxlTmFtZXMuc3BsaWNlKGluZGV4LCAxKTtcbiAgfVxuXG4gIHVwbG9hZE11bHRpcGxlQXNzZXRzKHBhcmVudEFzc2V0SWQ6IHN0cmluZykge1xuICAgIGNvbnN0IHsgZmlsZXMgfSA9IHRoaXM7XG4gICAgY29uc3QgZmlsZU5hbWVzID0gdGhpcy5maWxlTmFtZXMubWFwKGZpbGUgPT4gZmlsZS5uYW1lKTtcbiAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgncGFyZW50QXNzZXRJZCcsIHBhcmVudEFzc2V0SWQpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgnY29tcGFueUlkJywgJzczMkRBOEQyLTA0RUMtNEJFMC1BMTY4LTYzRUUwRENGNTBEOCcpO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgbmFtZVNwbGl0ID0gZmlsZXNbaV0ubmFtZS5zcGxpdCgnLicpO1xuICAgICAgY29uc3QgZXh0ID0gYC4ke25hbWVTcGxpdC5zcGxpY2UobmFtZVNwbGl0Lmxlbmd0aCAtIDEsIDEpWzBdfWA7XG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGVzJywgZmlsZXNbaV0sIGAke2ZpbGVOYW1lc1tpXX0ke2V4dH1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fYXBpLnBvc3Q8YW55PihgJHt0aGlzLmJhc2VVcmx9L0ZpbGUvVXBsb2FkYCwgZm9ybURhdGEpO1xuICB9XG59XG4iXX0=
|