@gsp-svc/formdoc-upload 0.1.35 → 0.1.37
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/bundles/gsp-svc-formdoc-upload.umd.js +97 -49
- package/bundles/gsp-svc-formdoc-upload.umd.js.map +1 -1
- package/bundles/gsp-svc-formdoc-upload.umd.min.js +1 -1
- package/bundles/gsp-svc-formdoc-upload.umd.min.js.map +1 -1
- package/esm2015/lib/formdoc-upload.module.js +7 -4
- package/esm2015/lib/upload/entity/gspformdocinfo.js +3 -1
- package/esm2015/lib/upload/file-upload/file-upload.component.js +67 -46
- package/esm2015/lib/upload/upload.module.js +6 -4
- package/esm2015/lib/upload/upload.service.js +32 -3
- package/esm5/lib/formdoc-upload.module.js +7 -4
- package/esm5/lib/upload/entity/gspformdocinfo.js +3 -1
- package/esm5/lib/upload/file-upload/file-upload.component.js +71 -46
- package/esm5/lib/upload/upload.module.js +6 -4
- package/esm5/lib/upload/upload.service.js +35 -3
- package/fesm2015/gsp-svc-formdoc-upload.js +97 -53
- package/fesm2015/gsp-svc-formdoc-upload.js.map +1 -1
- package/fesm5/gsp-svc-formdoc-upload.js +104 -53
- package/fesm5/gsp-svc-formdoc-upload.js.map +1 -1
- package/gsp-svc-formdoc-upload.metadata.json +1 -1
- package/lib/upload/entity/gspformdocinfo.d.ts +1 -0
- package/lib/upload/file-upload/file-upload.component.d.ts +3 -0
- package/lib/upload/upload.service.d.ts +4 -2
- package/package.json +1 -1
|
@@ -5,14 +5,16 @@
|
|
|
5
5
|
import { Injectable } from '@angular/core';
|
|
6
6
|
import { HttpService } from '@ecp-caf/caf-common';
|
|
7
7
|
import { catchError, tap } from 'rxjs/operators';
|
|
8
|
+
import { HttpClient } from '@angular/common/http';
|
|
8
9
|
import { GspFormRemoveListEntity } from './entity/gspformremovelistentity';
|
|
9
10
|
import { of } from 'rxjs/observable/of';
|
|
10
11
|
import { GspFormDocOperateEntity } from './entity/gspformdocoperateentity';
|
|
11
12
|
import { ChangeInstanceRequest } from './entity/changeinstancerequest';
|
|
12
13
|
import { OperatingModes } from './entity/operatingmodes';
|
|
13
14
|
var UploadService = /** @class */ (function () {
|
|
14
|
-
function UploadService(http) {
|
|
15
|
+
function UploadService(http, httpclient) {
|
|
15
16
|
this.http = http;
|
|
17
|
+
this.httpclient = httpclient;
|
|
16
18
|
}
|
|
17
19
|
/**
|
|
18
20
|
* @param {?} docListInfo
|
|
@@ -160,6 +162,30 @@ var UploadService = /** @class */ (function () {
|
|
|
160
162
|
return of(error);
|
|
161
163
|
})));
|
|
162
164
|
};
|
|
165
|
+
/**
|
|
166
|
+
* @param {?} formdata
|
|
167
|
+
* @return {?}
|
|
168
|
+
*/
|
|
169
|
+
UploadService.prototype.uploadSliceFile = /**
|
|
170
|
+
* @param {?} formdata
|
|
171
|
+
* @return {?}
|
|
172
|
+
*/
|
|
173
|
+
function (formdata) {
|
|
174
|
+
/** @type {?} */
|
|
175
|
+
var url = "/api/runtime/dfs/v1.0/formdoc/slice";
|
|
176
|
+
//url = "/api/runtime/dfs/v1.0/formdoc/list";
|
|
177
|
+
return this.httpclient.post(url, formdata).pipe(tap((/**
|
|
178
|
+
* @param {?} res
|
|
179
|
+
* @return {?}
|
|
180
|
+
*/
|
|
181
|
+
function (res) { })), catchError((/**
|
|
182
|
+
* @param {?} error
|
|
183
|
+
* @return {?}
|
|
184
|
+
*/
|
|
185
|
+
function (error) {
|
|
186
|
+
return of(error);
|
|
187
|
+
})));
|
|
188
|
+
};
|
|
163
189
|
/**
|
|
164
190
|
* @return {?}
|
|
165
191
|
*/
|
|
@@ -348,7 +374,8 @@ var UploadService = /** @class */ (function () {
|
|
|
348
374
|
];
|
|
349
375
|
/** @nocollapse */
|
|
350
376
|
UploadService.ctorParameters = function () { return [
|
|
351
|
-
{ type: HttpService }
|
|
377
|
+
{ type: HttpService },
|
|
378
|
+
{ type: HttpClient }
|
|
352
379
|
]; };
|
|
353
380
|
return UploadService;
|
|
354
381
|
}());
|
|
@@ -359,5 +386,10 @@ if (false) {
|
|
|
359
386
|
* @private
|
|
360
387
|
*/
|
|
361
388
|
UploadService.prototype.http;
|
|
389
|
+
/**
|
|
390
|
+
* @type {?}
|
|
391
|
+
* @private
|
|
392
|
+
*/
|
|
393
|
+
UploadService.prototype.httpclient;
|
|
362
394
|
}
|
|
363
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ3NwLXN2Yy9mb3JtZG9jLXVwbG9hZC8iLCJzb3VyY2VzIjpbImxpYi91cGxvYWQvdXBsb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDM0UsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBSTNFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQU96RDtJQUdFLHVCQUFvQixJQUFpQjtRQUFqQixTQUFJLEdBQUosSUFBSSxDQUFhO0lBQUksQ0FBQzs7Ozs7O0lBRTFDLGtDQUFVOzs7OztJQUFWLFVBQVcsV0FBb0MsRUFBRSxNQUFjOztZQUN6RCxHQUFHO1FBQ1AsV0FBVyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFFNUIsR0FBRyxHQUFHLG9DQUFvQyxDQUFDO1FBQzNDLDZDQUE2QztRQUU3QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQzFDLEdBQUc7Ozs7UUFBQyxVQUFBLEdBQUcsSUFBTSxDQUFDLEVBQUMsRUFDZixVQUFVOzs7O1FBQUMsVUFBQyxLQUF3QjtZQUNsQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQixDQUFDLEVB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LElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUM1QixHQUFHOzs7O1FBQUMsVUFBQSxHQUFHLElBQU0sQ0FBQyxFQUFDLEVBQ2YsVUFBVTs7OztRQUFDLFVBQUMsS0FBd0I7WUFDbEMsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkIsQ0FBQyxFQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7Ozs7O0lBRUQscUNBQWE7Ozs7SUFBYixVQUFjLEVBQVU7O1lBQ2xCLEdBQUcsR0FBRyxtQ0FBbUMsR0FBRyxFQUFFO1FBRWxELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUM1QixHQUFHOzs7O1FBQUMsVUFBQSxHQUFHLElBQU0sQ0FBQyxFQUFDLEVBQ2YsVUFBVTs7OztRQUFDLFVBQUMsS0FBd0I7WUFDbEMsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkIsQ0FBQyxFQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7O2dCQTlKRixVQUFVOzs7O2dCQWpCRixXQUFXOztJQWlMcEIsb0JBQUM7Q0FBQSxBQWhLRCxJQWdLQztTQS9KWSxhQUFhOzs7Ozs7SUFFWiw2QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHc3BGb3JtVXBsb2FkTGlzdEVudGl0eSB9IGZyb20gJy4vZW50aXR5L2dzcGZvcm11cGxvYWRsaXN0ZW50aXR5JztcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnQGVjcC1jYWYvY2FmLWNvbW1vbic7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEdzcEZvcm1SZW1vdmVMaXN0RW50aXR5IH0gZnJvbSAnLi9lbnRpdHkvZ3NwZm9ybXJlbW92ZWxpc3RlbnRpdHknO1xuaW1wb3J0IHsgb2YgfSBmcm9tICdyeGpzL29ic2VydmFibGUvb2YnO1xuaW1wb3J0IHsgR3NwRm9ybURvY09wZXJhdGVFbnRpdHkgfSBmcm9tICcuL2VudGl0eS9nc3Bmb3JtZG9jb3BlcmF0ZWVudGl0eSc7XG5cbmltcG9ydCB7IEdzcEZvcm1VcGxvYWRFbnRpdHkgfSBmcm9tICcuL2VudGl0eS9nc3Bmb3JtdXBsb2FkZW50aXR5JztcbmltcG9ydCB7IEV4U3RvcmFnZUZpbGVJbmZvIH0gZnJvbSAnLi9lbnRpdHkvZXh0ZW5zaW9uc3RvcmFnZWZpbGVpbmZvJztcbmltcG9ydCB7IENoYW5nZUluc3RhbmNlUmVxdWVzdCB9IGZyb20gJy4vZW50aXR5L2NoYW5nZWluc3RhbmNlcmVxdWVzdCc7XG5pbXBvcnQgeyBPcGVyYXRpbmdNb2RlcyB9IGZyb20gJy4vZW50aXR5L29wZXJhdGluZ21vZGVzJztcbmltcG9ydCB7IEdzcERvY1NlY3VyaXR5QmFzZUluZm8gfSBmcm9tICcuL2VudGl0eS9nc3Bkb2NzZWN1cml0eW5hc2VpbmZvJztcbmltcG9ydCB7IFVwbG9hZEZpbGVJbmZvIH0gZnJvbSAnLi9lbnRpdHkvdXBsb2FkZmlsZWluZm8nO1xuaW1wb3J0IHsgRXhQcm9wZXJ0eVJlcXVlc3QgfSBmcm9tICcuL2VudGl0eS9leHByb3BlcnR5cmVxdWVzdCc7XG5cblxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVXBsb2FkU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwU2VydmljZSkgeyB9XG5cbiAgdXBsb2FkTGlzdChkb2NMaXN0SW5mbzogR3NwRm9ybVVwbG9hZExpc3RFbnRpdHksIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsO1xuICAgIGRvY0xpc3RJbmZvLnJvb3RJZCA9IHJvb3RJZDtcblxuICAgIHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xuICAgIC8vdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCBkb2NMaXN0SW5mbykucGlwZShcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgfSkpO1xuICB9XG5cblxuICBjb21taXQobWV0YWRhdGFJZExpc3Q6IHN0cmluZ1tdLCByb290SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHVybDtcbiAgICBsZXQgZW50aXR5OiBHc3BGb3JtRG9jT3BlcmF0ZUVudGl0eSA9IG5ldyBHc3BGb3JtRG9jT3BlcmF0ZUVudGl0eTtcbiAgICBlbnRpdHkubWV0YWRhdGFJZExpc3QgPSBtZXRhZGF0YUlkTGlzdDtcbiAgICBlbnRpdHkucm9vdElkID0gcm9vdElkO1xuICAgIHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvY29tbWl0XCI7XG4gICAgLy91cmwgPSBcImh0dHA6Ly9sb2NhbGhvc3Q6NTAwMC9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2NvbW1pdFwiO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgZW50aXR5KS5waXBlKCk7XG4gIH1cblxuICBjYW5jZWwobWV0YWRhdGFJZExpc3Q6IHN0cmluZ1tdLCByb290SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHVybDtcbiAgICBsZXQgZW50aXR5OiBHc3BGb3JtRG9jT3BlcmF0ZUVudGl0eSA9IG5ldyBHc3BGb3JtRG9jT3BlcmF0ZUVudGl0eTtcbiAgICBlbnRpdHkubWV0YWRhdGFJZExpc3QgPSBtZXRhZGF0YUlkTGlzdDtcbiAgICBlbnRpdHkucm9vdElkID0gcm9vdElkO1xuICAgIHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvY2FuY2VsXCI7XG4gICAgLy91cmwgPSBcImh0dHA6Ly9sb2NhbGhvc3Q6NTAwMC9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2NhbmNlbFwiO1xuICAgIC8vbG9jYWxTdG9yYWdlLnNldEl0ZW0oXCJTZXNzaW9uSWRcIixcImh1b2xpYW5nXCIpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KHVybCwgZW50aXR5KS5waXBlKCk7XG4gIH1cblxuICByZW1vdmVMaXN0KGlkTGlzdDogc3RyaW5nW10sIHJvb3RJZDogc3RyaW5nKSB7XG4gICAgbGV0IHVybDtcbiAgICAvL3VybCA9IFwiaHR0cDovL2xvY2FsaG9zdDo1MDAwL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xuICAgIHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xuICAgIHZhciBpZExpc3RJbmZvID0gbmV3IEdzcEZvcm1SZW1vdmVMaXN0RW50aXR5O1xuICAgIGlkTGlzdEluZm8ubWV0YWRhdGFJZExpc3QgPSBpZExpc3Q7XG4gICAgaWRMaXN0SW5mby5tb2RlID0gT3BlcmF0aW5nTW9kZXMuVGVtcDtcbiAgICBpZExpc3RJbmZvLnJvb3RJZCA9IHJvb3RJZDtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZSh1cmwsIGlkTGlzdEluZm8pLnBpcGUoKTtcbiAgfVxuXG4gIGdldEZpbGUobWV0YWRhdGFJZDogc3RyaW5nLCByb290SWQ6IHN0cmluZykge1xuXG4gICAgbGV0IHVybDtcbiAgICBpZiAocm9vdElkID09IFwiXCIpXG4gICAgICB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2ZpbGUvXCIgKyBtZXRhZGF0YUlkO1xuICAgIGVsc2VcbiAgICAgIHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvZmlsZS9cIiArIG1ldGFkYXRhSWQgKyBcIi9cIiArIHJvb3RJZDtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUodGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSk7XG5cbiAgfVxuXG4gIHVwbG9hZEZpbGUoZG9jSW5mbzogR3NwRm9ybVVwbG9hZEVudGl0eSk6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvY1wiO1xuICAgIC8vdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCBkb2NJbmZvKS5waXBlKFxuICAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSk7XG4gIH1cblxuXG4gIGdldFN0b3JhZ2VFeHRlbnNpb25JbmZvKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL3N0b3JhZ2VzdHJhdGVneS9leHRlbnNpb25cIjtcbiAgICAvL3VybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS5waXBlKFxuICAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSk7XG4gIH1cblxuICBnZXRTZWN1cml0eUluZm9MaXN0KGJhc2VJbmZvOiBHc3BEb2NTZWN1cml0eUJhc2VJbmZvKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvc3RvcmFnZXN0cmF0ZWd5L3NlY3VyaXR5XCI7XG4gICAgdXJsID0gdXJsICsgXCI/aWQ9XCIgKyBiYXNlSW5mby5zZWN1cml0eUlkICsgXCImbGV2ZWw9XCIgKyBiYXNlSW5mby5zZWN1cml0eUxldmVsO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS5waXBlKFxuICAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSk7XG4gIH1cblxuICBjaGFuZ2VTdG9yYWdlSW5zdGFuY2Uoc3RvcmFnZUluZm9MaXN0OiBFeFN0b3JhZ2VGaWxlSW5mb1tdLCByb290SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvY2hhbmdlaW5zdGFuY2VcIjtcbiAgICBsZXQgcmVxdWVzdDogQ2hhbmdlSW5zdGFuY2VSZXF1ZXN0ID0gbmV3IENoYW5nZUluc3RhbmNlUmVxdWVzdDtcbiAgICByZXF1ZXN0LmZpbGVJbmZvTGlzdCA9IHN0b3JhZ2VJbmZvTGlzdDtcbiAgICByZXF1ZXN0LnJvb3RJZCA9IHJvb3RJZDtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCByZXF1ZXN0KS5waXBlKFxuICAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSk7XG4gIH1cblxuICBzYXZlU2VjdXJpdHlJbmZvKHVwbG9hZEZpbGVJbmZvTGlzdDogVXBsb2FkRmlsZUluZm9bXSwgcm9vdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9kb2MvZXhwcm9wZXJ0eVwiO1xuICAgIGxldCByZXFMaXN0OiBFeFByb3BlcnR5UmVxdWVzdFtdID0gW107XG4gICAgdXBsb2FkRmlsZUluZm9MaXN0LmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICBsZXQgcmVxdWVzdDogRXhQcm9wZXJ0eVJlcXVlc3QgPSB7IGlkOiBlbGVtZW50Lm1ldGFkYXRhSWQsIHJvb3RJZDogcm9vdElkLCBleFByb3BlcnR5OiBKU09OLnN0cmluZ2lmeShlbGVtZW50LnNlY3VyaXR5SW5mbykgfTtcbiAgICAgIHJlcUxpc3QucHVzaChyZXF1ZXN0KTtcbiAgICB9KVxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIHJlcUxpc3QpLnBpcGUoXG4gICAgICB0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKVxuICB9XG5cblxuICBnZXRVcGxvYWRlZEZpbGVJbmZvTGlzdChmb3JtSWQ6IHN0cmluZywgcm9vdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL3VwbG9hZGVkZmlsZS9pbmZvbGlzdFwiICsgXCI/Zm9ybWlkPVwiICsgZm9ybUlkICsgXCImcm9vdGlkPVwiICsgcm9vdElkO1xuICAgIC8vdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXG4gICAgICB0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKTtcbiAgfVxuXG4gIGdldFJvb3RTZXR0aW5nKHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvcm9vdHNldHRpbmcvXCIgKyByb290SWQ7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXG4gICAgICB0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKTtcbiAgfVxuXG4gIGdldFZhbGlkYXRpb24oaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL3ZhbGlkYXRpb24vXCIgKyBpZDtcblxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgfSkpO1xuICB9XG5cbn1cbiJdfQ==
|
|
395
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ3NwLXN2Yy9mb3JtZG9jLXVwbG9hZC8iLCJzb3VyY2VzIjpbImxpYi91cGxvYWQvdXBsb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBcUIsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFJM0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBT3pEO0lBR0UsdUJBQW9CLElBQWlCLEVBQVUsVUFBc0I7UUFBakQsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7SUFBSSxDQUFDOzs7Ozs7SUFFMUUsa0NBQVU7Ozs7O0lBQVYsVUFBVyxXQUFvQyxFQUFFLE1BQWM7O1lBQ3pELEdBQUc7UUFDUCxXQUFXLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUU1QixHQUFHLEdBQUcsb0NBQW9DLENBQUM7UUFDM0MsNkNBQTZDO1FBRTdDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDMUMsR0FBRzs7OztRQUFDLFVBQUEsR0FBRyxJQUFNLENBQUMsRUFB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S1ksYUFBYTs7Ozs7O0lBRVosNkJBQXlCOzs7OztJQUFFLG1DQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEdzcEZvcm1VcGxvYWRMaXN0RW50aXR5IH0gZnJvbSAnLi9lbnRpdHkvZ3NwZm9ybXVwbG9hZGxpc3RlbnRpdHknO1xuaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tICdAZWNwLWNhZi9jYWYtY29tbW9uJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgR3NwRm9ybVJlbW92ZUxpc3RFbnRpdHkgfSBmcm9tICcuL2VudGl0eS9nc3Bmb3JtcmVtb3ZlbGlzdGVudGl0eSc7XG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMvb2JzZXJ2YWJsZS9vZic7XG5pbXBvcnQgeyBHc3BGb3JtRG9jT3BlcmF0ZUVudGl0eSB9IGZyb20gJy4vZW50aXR5L2dzcGZvcm1kb2NvcGVyYXRlZW50aXR5JztcblxuaW1wb3J0IHsgR3NwRm9ybVVwbG9hZEVudGl0eSB9IGZyb20gJy4vZW50aXR5L2dzcGZvcm11cGxvYWRlbnRpdHknO1xuaW1wb3J0IHsgRXhTdG9yYWdlRmlsZUluZm8gfSBmcm9tICcuL2VudGl0eS9leHRlbnNpb25zdG9yYWdlZmlsZWluZm8nO1xuaW1wb3J0IHsgQ2hhbmdlSW5zdGFuY2VSZXF1ZXN0IH0gZnJvbSAnLi9lbnRpdHkvY2hhbmdlaW5zdGFuY2VyZXF1ZXN0JztcbmltcG9ydCB7IE9wZXJhdGluZ01vZGVzIH0gZnJvbSAnLi9lbnRpdHkvb3BlcmF0aW5nbW9kZXMnO1xuaW1wb3J0IHsgR3NwRG9jU2VjdXJpdHlCYXNlSW5mbyB9IGZyb20gJy4vZW50aXR5L2dzcGRvY3NlY3VyaXR5bmFzZWluZm8nO1xuaW1wb3J0IHsgVXBsb2FkRmlsZUluZm8gfSBmcm9tICcuL2VudGl0eS91cGxvYWRmaWxlaW5mbyc7XG5pbXBvcnQgeyBFeFByb3BlcnR5UmVxdWVzdCB9IGZyb20gJy4vZW50aXR5L2V4cHJvcGVydHlyZXF1ZXN0JztcblxuXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBVcGxvYWRTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBTZXJ2aWNlLCBwcml2YXRlIGh0dHBjbGllbnQ6IEh0dHBDbGllbnQpIHsgfVxuXG4gIHVwbG9hZExpc3QoZG9jTGlzdEluZm86IEdzcEZvcm1VcGxvYWRMaXN0RW50aXR5LCByb290SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHVybDtcbiAgICBkb2NMaXN0SW5mby5yb290SWQgPSByb290SWQ7XG5cbiAgICB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2xpc3RcIjtcbiAgICAvL3VybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgZG9jTGlzdEluZm8pLnBpcGUoXG4gICAgICB0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKTtcbiAgfVxuXG5cbiAgY29tbWl0KG1ldGFkYXRhSWRMaXN0OiBzdHJpbmdbXSwgcm9vdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1cmw7XG4gICAgbGV0IGVudGl0eTogR3NwRm9ybURvY09wZXJhdGVFbnRpdHkgPSBuZXcgR3NwRm9ybURvY09wZXJhdGVFbnRpdHk7XG4gICAgZW50aXR5Lm1ldGFkYXRhSWRMaXN0ID0gbWV0YWRhdGFJZExpc3Q7XG4gICAgZW50aXR5LnJvb3RJZCA9IHJvb3RJZDtcbiAgICB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2NvbW1pdFwiO1xuICAgIC8vdXJsID0gXCJodHRwOi8vbG9jYWxob3N0OjUwMDAvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9jb21taXRcIjtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIGVudGl0eSkucGlwZSgpO1xuICB9XG5cbiAgY2FuY2VsKG1ldGFkYXRhSWRMaXN0OiBzdHJpbmdbXSwgcm9vdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1cmw7XG4gICAgbGV0IGVudGl0eTogR3NwRm9ybURvY09wZXJhdGVFbnRpdHkgPSBuZXcgR3NwRm9ybURvY09wZXJhdGVFbnRpdHk7XG4gICAgZW50aXR5Lm1ldGFkYXRhSWRMaXN0ID0gbWV0YWRhdGFJZExpc3Q7XG4gICAgZW50aXR5LnJvb3RJZCA9IHJvb3RJZDtcbiAgICB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2NhbmNlbFwiO1xuICAgIC8vdXJsID0gXCJodHRwOi8vbG9jYWxob3N0OjUwMDAvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9jYW5jZWxcIjtcbiAgICAvL2xvY2FsU3RvcmFnZS5zZXRJdGVtKFwiU2Vzc2lvbklkXCIsXCJodW9saWFuZ1wiKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dCh1cmwsIGVudGl0eSkucGlwZSgpO1xuICB9XG5cbiAgcmVtb3ZlTGlzdChpZExpc3Q6IHN0cmluZ1tdLCByb290SWQ6IHN0cmluZykge1xuICAgIGxldCB1cmw7XG4gICAgLy91cmwgPSBcImh0dHA6Ly9sb2NhbGhvc3Q6NTAwMC9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2xpc3RcIjtcbiAgICB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2xpc3RcIjtcbiAgICB2YXIgaWRMaXN0SW5mbyA9IG5ldyBHc3BGb3JtUmVtb3ZlTGlzdEVudGl0eTtcbiAgICBpZExpc3RJbmZvLm1ldGFkYXRhSWRMaXN0ID0gaWRMaXN0O1xuICAgIGlkTGlzdEluZm8ubW9kZSA9IE9wZXJhdGluZ01vZGVzLlRlbXA7XG4gICAgaWRMaXN0SW5mby5yb290SWQgPSByb290SWQ7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUodXJsLCBpZExpc3RJbmZvKS5waXBlKCk7XG4gIH1cblxuICBnZXRGaWxlKG1ldGFkYXRhSWQ6IHN0cmluZywgcm9vdElkOiBzdHJpbmcpIHtcblxuICAgIGxldCB1cmw7XG4gICAgaWYgKHJvb3RJZCA9PSBcIlwiKVxuICAgICAgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9maWxlL1wiICsgbWV0YWRhdGFJZDtcbiAgICBlbHNlXG4gICAgICB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2ZpbGUvXCIgKyBtZXRhZGF0YUlkICsgXCIvXCIgKyByb290SWQ7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS5waXBlKHRhcChyZXMgPT4geyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgfSkpO1xuXG4gIH1cblxuICB1cGxvYWRGaWxlKGRvY0luZm86IEdzcEZvcm1VcGxvYWRFbnRpdHkpOiBPYnNlcnZhYmxlPGFueT4ge1xuXG4gICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2NcIjtcbiAgICAvL3VybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgZG9jSW5mbykucGlwZShcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgfSkpO1xuICB9XG5cbiAgdXBsb2FkU2xpY2VGaWxlKGZvcm1kYXRhOiBGb3JtRGF0YSk6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9zbGljZVwiO1xuICAgIC8vdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy9saXN0XCI7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwY2xpZW50LnBvc3QodXJsLCBmb3JtZGF0YSkucGlwZShcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgfSkpO1xuICB9XG5cblxuICBnZXRTdG9yYWdlRXh0ZW5zaW9uSW5mbygpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9zdG9yYWdlc3RyYXRlZ3kvZXh0ZW5zaW9uXCI7XG4gICAgLy91cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2xpc3RcIjtcblxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgfSkpO1xuICB9XG5cbiAgZ2V0U2VjdXJpdHlJbmZvTGlzdChiYXNlSW5mbzogR3NwRG9jU2VjdXJpdHlCYXNlSW5mbyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL3N0b3JhZ2VzdHJhdGVneS9zZWN1cml0eVwiO1xuICAgIHVybCA9IHVybCArIFwiP2lkPVwiICsgYmFzZUluZm8uc2VjdXJpdHlJZCArIFwiJmxldmVsPVwiICsgYmFzZUluZm8uc2VjdXJpdHlMZXZlbDtcblxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgfSkpO1xuICB9XG5cbiAgY2hhbmdlU3RvcmFnZUluc3RhbmNlKHN0b3JhZ2VJbmZvTGlzdDogRXhTdG9yYWdlRmlsZUluZm9bXSwgcm9vdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC9mb3JtZG9jL2NoYW5nZWluc3RhbmNlXCI7XG4gICAgbGV0IHJlcXVlc3Q6IENoYW5nZUluc3RhbmNlUmVxdWVzdCA9IG5ldyBDaGFuZ2VJbnN0YW5jZVJlcXVlc3Q7XG4gICAgcmVxdWVzdC5maWxlSW5mb0xpc3QgPSBzdG9yYWdlSW5mb0xpc3Q7XG4gICAgcmVxdWVzdC5yb290SWQgPSByb290SWQ7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgcmVxdWVzdCkucGlwZShcbiAgICAgIHRhcChyZXMgPT4geyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgfSkpO1xuICB9XG5cbiAgc2F2ZVNlY3VyaXR5SW5mbyh1cGxvYWRGaWxlSW5mb0xpc3Q6IFVwbG9hZEZpbGVJbmZvW10sIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZG9jL2V4cHJvcGVydHlcIjtcbiAgICBsZXQgcmVxTGlzdDogRXhQcm9wZXJ0eVJlcXVlc3RbXSA9IFtdO1xuICAgIHVwbG9hZEZpbGVJbmZvTGlzdC5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgbGV0IHJlcXVlc3Q6IEV4UHJvcGVydHlSZXF1ZXN0ID0geyBpZDogZWxlbWVudC5tZXRhZGF0YUlkLCByb290SWQ6IHJvb3RJZCwgZXhQcm9wZXJ0eTogSlNPTi5zdHJpbmdpZnkoZWxlbWVudC5zZWN1cml0eUluZm8pIH07XG4gICAgICByZXFMaXN0LnB1c2gocmVxdWVzdCk7XG4gICAgfSlcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCByZXFMaXN0KS5waXBlKFxuICAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSlcbiAgfVxuXG5cbiAgZ2V0VXBsb2FkZWRGaWxlSW5mb0xpc3QoZm9ybUlkOiBzdHJpbmcsIHJvb3RJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgdXJsID0gXCIvYXBpL3J1bnRpbWUvZGZzL3YxLjAvZm9ybWRvYy91cGxvYWRlZGZpbGUvaW5mb2xpc3RcIiArIFwiP2Zvcm1pZD1cIiArIGZvcm1JZCArIFwiJnJvb3RpZD1cIiArIHJvb3RJZDtcbiAgICAvL3VybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL2Zvcm1kb2MvbGlzdFwiO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS5waXBlKFxuICAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSk7XG4gIH1cblxuICBnZXRSb290U2V0dGluZyhyb290SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHVybCA9IFwiL2FwaS9ydW50aW1lL2Rmcy92MS4wL3Jvb3RzZXR0aW5nL1wiICsgcm9vdElkO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS5waXBlKFxuICAgICAgdGFwKHJlcyA9PiB7IH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICB9KSk7XG4gIH1cblxuICBnZXRWYWxpZGF0aW9uKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1cmwgPSBcIi9hcGkvcnVudGltZS9kZnMvdjEuMC92YWxpZGF0aW9uL1wiICsgaWQ7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXG4gICAgICB0YXAocmVzID0+IHsgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKGVycm9yKTtcbiAgICAgIH0pKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -10,11 +10,11 @@ import { LoadingService, LoadingModule } from '@farris/ui-loading';
|
|
|
10
10
|
import { ProgressModule } from '@farris/ui-progress';
|
|
11
11
|
import { FormsModule } from '@angular/forms';
|
|
12
12
|
import { ComboListModule } from '@farris/ui-combo-list';
|
|
13
|
-
import {
|
|
14
|
-
import { Injectable, Pipe, Inject, LOCALE_ID, Injector, ComponentFactoryResolver, NgModule,
|
|
13
|
+
import { CacheService, HttpService, LanguageService, SessionService } from '@ecp-caf/caf-common';
|
|
14
|
+
import { Injectable, Pipe, Inject, LOCALE_ID, Component, Injector, ComponentFactoryResolver, NgModule, Input, ViewChild, defineInjectable } from '@angular/core';
|
|
15
15
|
import { BsModalService } from '@farris/ui-modal';
|
|
16
16
|
import { of as of$1 } from 'rxjs';
|
|
17
|
-
import { HttpClientModule } from '@angular/common/http';
|
|
17
|
+
import { HttpClientModule, HttpClient } from '@angular/common/http';
|
|
18
18
|
import { NotifyModule } from '@farris/ui-notify';
|
|
19
19
|
|
|
20
20
|
/**
|
|
@@ -68,9 +68,11 @@ class FormdocUploadModule {
|
|
|
68
68
|
FormdocUploadModule.decorators = [
|
|
69
69
|
{ type: NgModule, args: [{
|
|
70
70
|
declarations: [FormdocUploadComponent],
|
|
71
|
-
imports: [
|
|
71
|
+
imports: [
|
|
72
|
+
HttpClientModule
|
|
73
|
+
],
|
|
72
74
|
exports: [FormdocUploadComponent],
|
|
73
|
-
providers: [LanguageService,
|
|
75
|
+
providers: [LanguageService, HttpService, CacheService, SessionService,
|
|
74
76
|
{ provide: LOCALE_ID, useValue: ɵ0 },]
|
|
75
77
|
},] }
|
|
76
78
|
];
|
|
@@ -144,9 +146,11 @@ class ChangeInstanceRequest {
|
|
|
144
146
|
class UploadService {
|
|
145
147
|
/**
|
|
146
148
|
* @param {?} http
|
|
149
|
+
* @param {?} httpclient
|
|
147
150
|
*/
|
|
148
|
-
constructor(http) {
|
|
151
|
+
constructor(http, httpclient) {
|
|
149
152
|
this.http = http;
|
|
153
|
+
this.httpclient = httpclient;
|
|
150
154
|
}
|
|
151
155
|
/**
|
|
152
156
|
* @param {?} docListInfo
|
|
@@ -265,6 +269,26 @@ class UploadService {
|
|
|
265
269
|
return of(error);
|
|
266
270
|
})));
|
|
267
271
|
}
|
|
272
|
+
/**
|
|
273
|
+
* @param {?} formdata
|
|
274
|
+
* @return {?}
|
|
275
|
+
*/
|
|
276
|
+
uploadSliceFile(formdata) {
|
|
277
|
+
/** @type {?} */
|
|
278
|
+
let url = "/api/runtime/dfs/v1.0/formdoc/slice";
|
|
279
|
+
//url = "/api/runtime/dfs/v1.0/formdoc/list";
|
|
280
|
+
return this.httpclient.post(url, formdata).pipe(tap((/**
|
|
281
|
+
* @param {?} res
|
|
282
|
+
* @return {?}
|
|
283
|
+
*/
|
|
284
|
+
res => { })), catchError((/**
|
|
285
|
+
* @param {?} error
|
|
286
|
+
* @return {?}
|
|
287
|
+
*/
|
|
288
|
+
(error) => {
|
|
289
|
+
return of(error);
|
|
290
|
+
})));
|
|
291
|
+
}
|
|
268
292
|
/**
|
|
269
293
|
* @return {?}
|
|
270
294
|
*/
|
|
@@ -424,7 +448,8 @@ UploadService.decorators = [
|
|
|
424
448
|
];
|
|
425
449
|
/** @nocollapse */
|
|
426
450
|
UploadService.ctorParameters = () => [
|
|
427
|
-
{ type: HttpService }
|
|
451
|
+
{ type: HttpService },
|
|
452
|
+
{ type: HttpClient }
|
|
428
453
|
];
|
|
429
454
|
|
|
430
455
|
/**
|
|
@@ -676,6 +701,7 @@ class FileUploadComponent {
|
|
|
676
701
|
this.totalLoad = null;
|
|
677
702
|
this.exStorageFileList = [];
|
|
678
703
|
if (this.injector) {
|
|
704
|
+
this.httpclient = this.injector.get(HttpClient);
|
|
679
705
|
this.localeid = localStorage.getItem("languageCode") || this.injector.get(LOCALE_ID);
|
|
680
706
|
this.localepipe = new LocalLangPipe(this.localeid);
|
|
681
707
|
}
|
|
@@ -901,12 +927,6 @@ class FileUploadComponent {
|
|
|
901
927
|
continue;
|
|
902
928
|
}
|
|
903
929
|
}
|
|
904
|
-
// if (this.files.find(x => x.name == selectedFile.name) != null) {
|
|
905
|
-
// this.errFileList.push(selectedFile.name);
|
|
906
|
-
// continue;
|
|
907
|
-
// }
|
|
908
|
-
//this.flag += Math.ceil(selectedFile.size / this.bufferSize);
|
|
909
|
-
//let reader = new FileReader();
|
|
910
930
|
this.uploadFile(uuid, selectedFile, selectedFile.name);
|
|
911
931
|
}
|
|
912
932
|
// if (this.uploadedNameList.length > 0) {
|
|
@@ -1016,49 +1036,52 @@ class FileUploadComponent {
|
|
|
1016
1036
|
let nextSize = Math.min((chunkIndex + 1) * this.bufferSize, selectedFile.size);
|
|
1017
1037
|
/** @type {?} */
|
|
1018
1038
|
let fileData = selectedFile.slice(chunkIndex * this.bufferSize, nextSize);
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
reader.readAsBinaryString(fileData);
|
|
1039
|
+
// let reader = new FileReader();
|
|
1040
|
+
// reader.readAsBinaryString(fileData);
|
|
1022
1041
|
/** @type {?} */
|
|
1023
1042
|
let innerIndex = chunkIndex;
|
|
1024
|
-
reader.onload = (
|
|
1043
|
+
// reader.onload = () => {
|
|
1044
|
+
// docInfo.fileContent = btoa(reader.result.toString());
|
|
1045
|
+
docInfo.size = selectedFile.size;
|
|
1046
|
+
docInfo.index = innerIndex;
|
|
1047
|
+
docInfo.fileContent = "";
|
|
1048
|
+
//chunkIndex++;
|
|
1049
|
+
if (this.haveExtensionProperty)
|
|
1050
|
+
docInfo.exPropertyName = this.defaultPropertyName;
|
|
1051
|
+
//docInfo.isLast = true;
|
|
1052
|
+
uploadInfo.docInfo = docInfo;
|
|
1053
|
+
// let info = uploadInfo;
|
|
1054
|
+
// this.requestArray.push(this.uploadService.uploadFile(uploadInfo));
|
|
1055
|
+
// this.requestBodyArray.push(info);
|
|
1056
|
+
//封装请求formdata
|
|
1057
|
+
/** @type {?} */
|
|
1058
|
+
let formData = new FormData();
|
|
1059
|
+
formData.append('uploadInfo', JSON.stringify(uploadInfo));
|
|
1060
|
+
formData.append('docInfo', JSON.stringify(docInfo));
|
|
1061
|
+
formData.append('file', fileData);
|
|
1062
|
+
this.uploadSliceFile(formData).subscribe((/**
|
|
1063
|
+
* @param {?} res
|
|
1025
1064
|
* @return {?}
|
|
1026
1065
|
*/
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
this.requestBodyArray.push(info);
|
|
1039
|
-
this.uploadService.uploadFile(info).subscribe((/**
|
|
1040
|
-
* @param {?} res
|
|
1041
|
-
* @return {?}
|
|
1042
|
-
*/
|
|
1043
|
-
res => {
|
|
1044
|
-
if (res != null) {
|
|
1045
|
-
this.files[this.files.indexOf(fileInfo)].uploadResult = false;
|
|
1066
|
+
res => {
|
|
1067
|
+
if (res != null) {
|
|
1068
|
+
this.files[this.files.indexOf(fileInfo)].uploadResult = false;
|
|
1069
|
+
this.files[this.files.indexOf(fileInfo)].isUploading = false;
|
|
1070
|
+
this.files[this.files.indexOf(fileInfo)].errorMessage = res.error.Message;
|
|
1071
|
+
}
|
|
1072
|
+
else {
|
|
1073
|
+
this.uploadedChunk[docInfo.metadataId]++;
|
|
1074
|
+
this.files[this.files.indexOf(fileInfo)].uploadProcess = Number.parseInt((this.uploadedChunk[docInfo.metadataId] / this.fileTotalChunk[docInfo.metadataId] * 100).toFixed(0));
|
|
1075
|
+
if (this.uploadedChunk[docInfo.metadataId] == this.fileTotalChunk[docInfo.metadataId]) {
|
|
1076
|
+
this.files[this.files.indexOf(fileInfo)].uploadResult = true;
|
|
1046
1077
|
this.files[this.files.indexOf(fileInfo)].isUploading = false;
|
|
1047
|
-
this.
|
|
1078
|
+
this.uploadFileInfoList = this.uploadFileInfoList.concat(uploadFileInfo);
|
|
1079
|
+
this.uploadedFileInfoList = this.uploadedFileInfoList.concat(uploadFileInfo);
|
|
1080
|
+
this.uploadedFileTotal++;
|
|
1048
1081
|
}
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
if (this.uploadedChunk[docInfo.metadataId] == this.fileTotalChunk[docInfo.metadataId]) {
|
|
1053
|
-
this.files[this.files.indexOf(fileInfo)].uploadResult = true;
|
|
1054
|
-
this.files[this.files.indexOf(fileInfo)].isUploading = false;
|
|
1055
|
-
this.uploadFileInfoList = this.uploadFileInfoList.concat(uploadFileInfo);
|
|
1056
|
-
this.uploadedFileInfoList = this.uploadedFileInfoList.concat(uploadFileInfo);
|
|
1057
|
-
this.uploadedFileTotal++;
|
|
1058
|
-
}
|
|
1059
|
-
}
|
|
1060
|
-
}));
|
|
1061
|
-
});
|
|
1082
|
+
}
|
|
1083
|
+
}));
|
|
1084
|
+
// }
|
|
1062
1085
|
//console.log(chunkIndex + 1);
|
|
1063
1086
|
chunkIndex = chunkIndex + 1;
|
|
1064
1087
|
}
|
|
@@ -1110,6 +1133,26 @@ class FileUploadComponent {
|
|
|
1110
1133
|
this.uploadedFileTotal--;
|
|
1111
1134
|
}
|
|
1112
1135
|
}
|
|
1136
|
+
/**
|
|
1137
|
+
* @param {?} formdata
|
|
1138
|
+
* @return {?}
|
|
1139
|
+
*/
|
|
1140
|
+
uploadSliceFile(formdata) {
|
|
1141
|
+
/** @type {?} */
|
|
1142
|
+
let url = "/api/runtime/dfs/v1.0/formdoc/slice";
|
|
1143
|
+
//url = "/api/runtime/dfs/v1.0/formdoc/list";
|
|
1144
|
+
return this.httpclient.post(url, formdata).pipe(tap((/**
|
|
1145
|
+
* @param {?} res
|
|
1146
|
+
* @return {?}
|
|
1147
|
+
*/
|
|
1148
|
+
res => { })), catchError((/**
|
|
1149
|
+
* @param {?} error
|
|
1150
|
+
* @return {?}
|
|
1151
|
+
*/
|
|
1152
|
+
(error) => {
|
|
1153
|
+
return of$1(error);
|
|
1154
|
+
})));
|
|
1155
|
+
}
|
|
1113
1156
|
/**
|
|
1114
1157
|
* @return {?}
|
|
1115
1158
|
*/
|
|
@@ -1528,7 +1571,7 @@ FileUploadComponent.decorators = [
|
|
|
1528
1571
|
{ type: Component, args: [{
|
|
1529
1572
|
selector: 'app-file-upload',
|
|
1530
1573
|
template: "<div *ngIf=\"hasSelectedFile\">\n\n <div class=\"farris-header\" style=\"height: 50px; width: 100%\">\n <div class=\"btn btn-secondary upload_button\">\n <img [src]=\"uploadLittleIconAddress\">\n <span>{{'uploadFile' | locale}} </span>\n <input type=\"file\" (focus)=\"showLoading()\" (change)=\"fileSelected($event)\" id=\"file\" multiple=\"multiple\"\n title=\"\" [accept]=\"fileType\">\n </div>\n\n\n <button *ngIf=\"showType==0 && !fileAllSelected && files.length >0 \" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"selectAllFile()\">{{'selectAll' | locale}}</button>\n <button *ngIf=\"showType==0 && fileAllSelected && files.length >0 \" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"selectAllFile()\">{{'selectNull' | locale}}</button>\n <button *ngIf=\"showType==0 && selectedFileCount>0\" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"listMultipleDeleteFile()\">{{'delete' | locale}}</button>\n\n <button *ngIf=\"showType==1 && selectedFileCount>0\" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"listMultipleDeleteFile()\">{{'delete' | locale}}</button>\n\n <kendo-buttongroup [selection]=\"'single'\" class=\"button_group_upload \"\n style=\"background-color: #ffffff; color: #388FFF;border: 1px solid #ddd;\" look=\"flat\">\n <button kendoButton [selected]=\"true\" [toggleable]=\"true\"\n [imageUrl]=\"'/platform/runtime/dfs/images/piclist.png'\" (click)=\"showByGroup()\"></button>\n <button kendoButton [toggleable]=\"true\" [imageUrl]=\"'/platform/runtime/dfs/images/queuelist.png'\"\n (click)=\"showByList()\"></button>\n </kendo-buttongroup>\n\n\n </div>\n\n <!-- <div class=\"progress\" style=\"height: 12px;\">\n <div class=\"progress-bar\" role=\"progressbar\" [ngStyle]=\"uploadProcess\"></div>\n </div> -->\n\n <div class=\"pic_list\" *ngIf=\"showType==0\">\n <ul *ngFor=\"let file of files\">\n <li (mouseenter)=\"mouseOver(file)\" (mouseleave)=\"mouseOut(file)\">\n <div *ngIf=\"file.isUploading\">\n <farris-progress [type]=\"'circle'\" [percent]=\"file.uploadProcess\" [strokeLinecap]=\"'square'\"\n [status]=\"'active'\"></farris-progress>\n </div>\n\n <table *ngIf=\"!file.uploadResult && !file.isUploading\"\n style=\"margin: 0 auto; border: 1px solid #ddd; width: 135px; height: 160px;\">\n <tr style=\"margin: 0 auto ; height: 80px;\">\n <td style=\"text-align: center\"><span class=\"f-icon f-icon-warn\"></span></td>\n </tr>\n <tr style=\"margin: 0 auto ; height: 30px;\">\n <td style=\"text-align: center\"> {{'uploadFailure' | locale}} </td>\n </tr>\n <tr>\n <td style=\"text-align: center\"><button style=\"margin: 0 auto ; height: 20px; \"\n class=\"btn-link btn ng-star-inserted\" (click)=\"showErrorMessage(file)\">{{'detail' |\n locale}}</button></td>\n </tr>\n </table>\n <div *ngIf=\"!file.isUploading && file.uploadResult\" style=\"border: 1px solid #ddd;\">\n <img [src]='file.source'>\n <div *ngIf=\"haveExtensionProperty\"\n style=\"width: 133px; height: 25px; background-color: white; position: absolute;bottom: 0; \">\n\n <div style=\"width: 100px;height: 25px;position:absolute;margin: 0 17px;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"propertiesNames\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"typeChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </div>\n </div>\n <div *ngIf=\"haveSecurityInfo\"\n style=\"width: 133px; height: 25px; background-color: white; position: absolute;bottom: 0; \">\n\n <div style=\"width: 100px;height: 25px;position:absolute;margin: 0 17px;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"securityInfoList\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"securityChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </div>\n </div>\n </div>\n <table *ngIf=\"!file.isUploading\">\n <tr style=\"height: 20px\">\n <td style=\"width: 15px; vertical-align: middle; text-align: center\">\n <!-- <input type=\"checkbox\" [id]=\"file.name\" (click)=\"checkoutSelectFile(file.name)\"> -->\n <div class=\"farris-input-wrap\" style=\"height: 20px\" (click)=\"checkoutSelectFile(file)\">\n <div class=\"custom-control custom-checkbox\" style=\"margin: 4px 0 0;height: 20px;\"\n [ngStyle]=\"checkboxPos\">\n <input class=\"custom-control-input\" type=\"checkbox\" [id]=\"file.name\"\n [(ngModel)]=\"file.selectd\">\n <label class=\"custom-control-label\"\n style=\"padding: 0 0 10px 0; position: relative; top: -8px;\"></label>\n </div>\n </div>\n </td>\n <td style=\"width: 120px; vertical-align: middle; text-align: center\" [title]=\"file.name\">\n {{file.picListDisplayName}}</td>\n </tr>\n </table>\n <!-- <span>{{file.picListDisplayName}}</span> -->\n <!-- <p class=\"filename\">{{file.picListDisplayName}}</p> -->\n <button *ngIf=\"!file.isUploading && file.mouseOn\"\n style=\"position: absolute; top: 0; right: 0px; width: 24px; height: 24px;\" kendoButton\n [icon]=\"'delete'\" (click)=\"listDeleteFile(file)\"></button>\n <!-- <button *ngIf=\"file.hasUploaded\" class=\"k-primary\" kendoButton [icon]=\"'check'\" [disabled]=\"true\"></button> -->\n </li>\n </ul>\n <br>\n </div>\n\n <div class=\"queue_list\" *ngIf=\"showType==1\">\n <table>\n <tr style=\"height: 50px; table-layout:fixed;\">\n <th style=\"width: 40px; vertical-align: middle; text-align: center\">\n <!-- <input type=\"checkbox\" id=\"allCheckBox\" (click)=\"selectAllFile()\"> -->\n <div class=\"farris-input-wrap\" (click)=\"selectAllFile()\">\n <div class=\"custom-control custom-checkbox\" style=\"margin: 4px 0 0\">\n <input class=\"custom-control-input\" type=\"checkbox\" id=\"allCheckBox\"\n [(ngModel)]=\"fileAllSelected\">\n <label class=\"custom-control-label\" style=\"padding: 0\"></label>\n </div>\n </div>\n </th>\n <th style=\"vertical-align: middle\" [ngStyle]=\"queueListStyle\">{{'fileName' | locale}}</th>\n <th style=\"width: 100px; vertical-align: middle\">{{'size' | locale}}</th>\n <th style=\"width: 170px; vertical-align: middle; text-align: center\">{{'state' | locale}}</th>\n <th *ngIf=\"haveExtensionProperty\" style=\"width: 100px; vertical-align: middle; text-align: center\">\n {{storageExtension.extensionName}}\n </th>\n <th style=\"width: 140px; vertical-align: middle; text-align: center\">{{'operation' | locale}}</th>\n </tr>\n </table>\n <div style=\"height: 370px; overflow: auto;\">\n <table>\n <tr *ngFor=\"let file of files\" style=\"height: 40px\">\n <td colspan=\"5\" *ngIf=\"file.isUploading\">\n <!-- <div style=\"width:100%; display: table-cell; vertical-align: middle; text-align: center; \"> -->\n <div style=\"width: 500px;margin:0 auto\">\n <farris-progress [percent]=\"file.uploadProcess\" [status]=\"'active'\">\n </farris-progress>\n </div>\n\n </td>\n <td *ngIf=\"!file.isUploading\" style=\" width: 40px; vertical-align: middle; text-align: center\">\n <!-- <input type=\"checkbox\" [id]=\"file.name\" (click)=\"checkoutSelectFile(file.name)\"> -->\n <div class=\"farris-input-wrap\" (click)=\"checkoutSelectFile(file)\">\n <div class=\"custom-control custom-checkbox\" style=\"margin: 4px 0 0\">\n <input class=\"custom-control-input\" type=\"checkbox\" [id]=\"file.name\"\n [(ngModel)]=\"file.selectd\">\n <label class=\"custom-control-label\" style=\"padding: 0\"></label>\n </div>\n </div>\n </td>\n <td *ngIf=\"!file.isUploading\" style=\"vertical-align: middle\" [ngStyle]=\"queueListStyle\">\n {{file.queueListDisplayName}}</td>\n <td *ngIf=\"!file.isUploading\" style=\"width: 100px; vertical-align: middle\">{{file.size}}</td>\n <td *ngIf=\"!file.isUploading\" style=\"text-align: center; width: 170px; vertical-align: middle;\">\n <table *ngIf=\"!file.uploadResult\" style=\"margin: 0 auto\">\n <tr style=\"margin: 0 auto\">\n <td><span class=\"f-icon f-icon-error\"></span></td>\n <td> {{'uploadFailure' | locale}} </td>\n <td><button style=\"height: 24px\" class=\"btn-link btn ng-star-inserted\"\n (click)=\"showErrorMessage(file)\">{{'detail' | locale}}</button></td>\n </tr>\n </table>\n <!-- <span *ngIf=\"!file.uploadResult\"><span class=\"f-icon f-icon-error\"></span> \u4E0A\u4F20\u5931\u8D25 <button\n class=\"btn-link btn ng-star-inserted\" (click)=\"showErrorMessage(file)\">\u8BE6\u60C5</button></span> -->\n <span *ngIf=\"file.uploadResult\"><span class=\"f-icon f-icon-success\"></span> {{'uploadSucceed' |\n locale}}</span>\n </td>\n <td *ngIf=\"!file.isUploading&&haveExtensionProperty\"\n style=\"text-align: center; width: 100px; vertical-align: middle;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"propertiesNames\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"typeChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </td>\n <td *ngIf=\"!file.isUploading&&haveSecurityInfo\"\n style=\"text-align: center; width: 100px; vertical-align: middle;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"securityInfoList\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"securityChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </td>\n\n <td *ngIf=\"!file.isUploading\" style=\"text-align: center; width: 140px; vertical-align: middle;\">\n <!-- <button *ngIf=\"file.uploadResult\" class=\"btn-link btn ng-star-inserted\" (click)=\"retryUploadFile(file.name)\">\u91CD\u8BD5</button> -->\n <button class=\"btn-link btn ng-star-inserted\" style=\"margin: 0 auto\"\n (click)=\"listDeleteFile(file)\">{{'delete' | locale}}</button>\n </td>\n\n </tr>\n </table>\n </div>\n </div>\n</div>\n\n<div *ngIf=\"!hasSelectedFile\" class='home_page'>\n <img [src]=\"uploadIconAddress\">\n <div>\n <span class=\"btn btn-primary btn-lg\">{{'uploadFile' | locale}} </span>\n <input type=\"file\" (change)=\"fileSelected($event)\" id=\"file\" multiple=\"multiple\" title=\"\" [accept]=\"fileType\">\n <!-- <input type=\"file\" (focus)=\"showLoading()\" (change)=\"fileSelected($event)\" id=\"file\" multiple=\"multiple\" title=\"\" [accept]=\"fileType\"> -->\n </div>\n</div>",
|
|
1531
|
-
styles: [".home_page{text-align:center}.home_page img{position:absolute;top:180px;margin-left:-35px;width:70px;height:56px}.home_page div{position:absolute;left:50%;top:255px;margin-left:-75px;width:150px;height:32px;overflow:hidden}.home_page div span{width:150px;height:32px;position:absolute;z-index:10;left:0}.home_page div input{position:absolute;left:0;top:0;opacity:0;filter:'alpha(opacity=0)';z-index:11}.upload_button{width:110px;height:32px;overflow:hidden}.upload_button span{position:relative;right:-4px;top:4px;width:56px;height:22px;font-size:14px}.upload_button input{height:32px;width:110px;position:absolute;left:22px;top:12px;opacity:0;filter:'alpha(opacity=0)';overflow:hidden}.upload_button img{position:relative;left:-6px;top:3px;width:14px;height:14px}.button_group_upload{position:absolute;right:18px;top:12px;height:26px;width:53px}.button_group_upload button{height:26px;width:26px}.fileinput-button{position:absolute;right:60px;bottom:40px;overflow:hidden;width:24px;height:24px;border-radius:12px;transform:scale(2.5);-ms-transform:scale(2.5);-moz-transform:scale(2.5);-webkit-transform:scale(2.5);-o-transform:scale(2.5);color:#0686fd}.fileinput-button input{position:absolute;left:0;top:0;opacity:0;filter:'alpha(opacity=0)'}.pic-droplist{height:24px;color:#e0e1e2;background-color:#e0e1e2}.pic-droplist input-group{display:table-cell;width:100px;text-align:center;border:0}.pic-droplist input-group div{border:0}.pic-droplist input-group div div,.pic-droplist input-group div input{background-color:#e0e1e2}.pic_list{padding:0;height:
|
|
1574
|
+
styles: [".home_page{text-align:center}.home_page img{position:absolute;top:180px;margin-left:-35px;width:70px;height:56px}.home_page div{position:absolute;left:50%;top:255px;margin-left:-75px;width:150px;height:32px;overflow:hidden}.home_page div span{width:150px;height:32px;position:absolute;z-index:10;left:0}.home_page div input{position:absolute;left:0;top:0;opacity:0;filter:'alpha(opacity=0)';z-index:11}.upload_button{width:110px;height:32px;overflow:hidden}.upload_button span{position:relative;right:-4px;top:4px;width:56px;height:22px;font-size:14px}.upload_button input{height:32px;width:110px;position:absolute;left:22px;top:12px;opacity:0;filter:'alpha(opacity=0)';overflow:hidden}.upload_button img{position:relative;left:-6px;top:3px;width:14px;height:14px}.button_group_upload{position:absolute;right:18px;top:12px;height:26px;width:53px}.button_group_upload button{height:26px;width:26px}.fileinput-button{position:absolute;right:60px;bottom:40px;overflow:hidden;width:24px;height:24px;border-radius:12px;transform:scale(2.5);-ms-transform:scale(2.5);-moz-transform:scale(2.5);-webkit-transform:scale(2.5);-o-transform:scale(2.5);color:#0686fd}.fileinput-button input{position:absolute;left:0;top:0;opacity:0;filter:'alpha(opacity=0)'}.pic-droplist{height:24px;color:#e0e1e2;background-color:#e0e1e2}.pic-droplist input-group{display:table-cell;width:100px;text-align:center;border:0}.pic-droplist input-group div{border:0}.pic-droplist input-group div div,.pic-droplist input-group div input{background-color:#e0e1e2}.pic_list{padding:0;height:415px;overflow-y:auto;overflow-x:hidden}.pic_list ul{padding:0;list-style:none;width:100%;margin:20px 0 0 20px}.pic_list ul li{height:179px;width:135px;margin:8px 0 8px 12px;float:left;overflow:hidden;align-items:center;position:relative}.pic_list ul li div{width:135px;height:159px;margin:auto;display:table-cell;vertical-align:middle;text-align:center;position:relative}.pic_list ul li div img{max-width:120px;max-height:118px;align-items:center;margin:auto;vertical-align:middle;text-align:center}.pic_list ul li span.filename{width:100px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue_list{display:block;height:420px;overflow-y:auto}.file_list{list-style:none;margin:0;padding:0;overflow-x:hidden;overflow-y:auto}.file_list li{height:50px;line-height:35px;font-size:16px;position:relative}.file_list li button{float:right;top:6px;right:10px;width:20px}.file_list li p.title{padding:0 0 0 6px;margin:0 210px 0 0}.file_list li p.size{position:absolute;width:100px;top:0;right:100px}"]
|
|
1532
1575
|
}] }
|
|
1533
1576
|
];
|
|
1534
1577
|
/** @nocollapse */
|
|
@@ -1689,11 +1732,12 @@ UploadModule.decorators = [
|
|
|
1689
1732
|
LoadingModule.forRoot(),
|
|
1690
1733
|
ProgressModule,
|
|
1691
1734
|
FormsModule,
|
|
1692
|
-
ComboListModule
|
|
1735
|
+
ComboListModule,
|
|
1736
|
+
HttpClientModule
|
|
1693
1737
|
],
|
|
1694
1738
|
exports: [FileUploadComponent],
|
|
1695
1739
|
entryComponents: [FileUploadComponent],
|
|
1696
|
-
providers: [UploadService, DownloadService, LanguageService,
|
|
1740
|
+
providers: [UploadService, DownloadService, LanguageService, HttpService, CacheService, SessionService,
|
|
1697
1741
|
{ provide: LOCALE_ID, useValue: ɵ0$1 },]
|
|
1698
1742
|
},] }
|
|
1699
1743
|
];
|