croco-html 2.13.0 → 2.14.0
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/esm2022/lib/components/upload-files-btn/upload-files-btn.component.mjs +2 -2
- package/esm2022/lib/services/file-upload.service.mjs +4 -41
- package/fesm2022/croco-html.mjs +4 -41
- package/fesm2022/croco-html.mjs.map +1 -1
- package/lib/components/upload-files-btn/upload-files-btn.component.d.ts +1 -1
- package/lib/index.d.ts +4 -4
- package/lib/services/file-upload.service.d.ts +0 -4
- package/package.json +1 -1
|
@@ -8,7 +8,7 @@ export class UploadFilesBtnComponent {
|
|
|
8
8
|
this.extAccepts = "*/*";
|
|
9
9
|
this.isMultiple = true;
|
|
10
10
|
this.btnText = "Загрузить файлы";
|
|
11
|
-
this.createLocalCopiesNow =
|
|
11
|
+
this.createLocalCopiesNow = true;
|
|
12
12
|
this.hidden = false;
|
|
13
13
|
this.postFilesStarted = new EventEmitter();
|
|
14
14
|
this.onFilesUploaded = new EventEmitter();
|
|
@@ -51,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
51
51
|
}], onFilesUploaded: [{
|
|
52
52
|
type: Output
|
|
53
53
|
}] } });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWZpbGVzLWJ0bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvY29tcG9uZW50cy91cGxvYWQtZmlsZXMtYnRuL3VwbG9hZC1maWxlcy1idG4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMvdXBsb2FkLWZpbGVzLWJ0bi91cGxvYWQtZmlsZXMtYnRuLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXRHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBY3JELE1BQU0sT0FBTyx1QkFBdUI7SUEwQmxDLFlBQW9CLGtCQUFxQztRQUFyQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBcEJ6RCxlQUFVLEdBQVcsS0FBSyxDQUFDO1FBRzNCLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFHbEIsWUFBTyxHQUFXLGlCQUFpQixDQUFDO1FBR3BDLHlCQUFvQixHQUFHLElBQUksQ0FBQztRQUc1QixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBR2YscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQXNCLENBQUM7UUFHMUQsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBK0IsQ0FBQztJQUVMLENBQUM7SUFFOUQsZUFBZSxDQUFDLEtBQWU7UUFDN0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQztZQUN6QixVQUFVLEVBQUUsS0FBSyxDQUFDLE1BQU07WUFDeEIsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtTQUNoRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbkYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxRQUFRO0lBQ1IsQ0FBQzs4R0E1Q1UsdUJBQXVCO2tHQUF2Qix1QkFBdUIsMGFDaEJwQyxnUkFDK0ksMEREYW5JLFNBQVM7OzJGQUVSLHVCQUF1QjtrQkFQbkMsU0FBUzsrQkFDRSw0QkFBNEIsY0FHMUIsSUFBSSxXQUNQLENBQUMsU0FBUyxDQUFDO3NGQUtaLFNBQVM7c0JBRGhCLFNBQVM7dUJBQUMsWUFBWTtnQkFJdkIsVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sb0JBQW9CO3NCQURuQixLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixnQkFBZ0I7c0JBRGYsTUFBTTtnQkFJUCxlQUFlO3NCQURkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VBcGlSZXNwb25zZVdpdGhGaWxlc0lkcywgRmlsZVVwbG9hZFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9maWxlLXVwbG9hZC5zZXJ2aWNlJztcbmltcG9ydCB7IE1hdEJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlsZVBvc3RpbmdTdGFydGVkIHtcbiAgZmlsZXNDb3VudDogbnVtYmVyO1xuICBjcmVhdGVMb2NhbENvcGllc05vdzogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3JvY28tYXBwLXVwbG9hZC1maWxlcy1idG4nLFxuICB0ZW1wbGF0ZVVybDogJy4vdXBsb2FkLWZpbGVzLWJ0bi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3VwbG9hZC1maWxlcy1idG4uY29tcG9uZW50LmNzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTWF0QnV0dG9uXVxufSlcbmV4cG9ydCBjbGFzcyBVcGxvYWRGaWxlc0J0bkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQFZpZXdDaGlsZCgnZmlsZXNJbnB1dCcpXG4gIHByaXZhdGUgZmlsZUlucHV0ITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICBASW5wdXQoKVxuICBleHRBY2NlcHRzOiBzdHJpbmcgPSBcIiovKlwiO1xuXG4gIEBJbnB1dCgpXG4gIGlzTXVsdGlwbGUgPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIGJ0blRleHQ6IHN0cmluZyA9IFwi0JfQsNCz0YDRg9C30LjRgtGMINGE0LDQudC70YtcIjtcblxuICBASW5wdXQoKVxuICBjcmVhdGVMb2NhbENvcGllc05vdyA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgaGlkZGVuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpXG4gIHBvc3RGaWxlc1N0YXJ0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGVQb3N0aW5nU3RhcnRlZD4oKTtcblxuICBAT3V0cHV0KClcbiAgb25GaWxlc1VwbG9hZGVkID0gbmV3IEV2ZW50RW1pdHRlcjxCYXNlQXBpUmVzcG9uc2VXaXRoRmlsZXNJZHM+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZmlsZVVwbG9hZFNlcnZpY2U6IEZpbGVVcGxvYWRTZXJ2aWNlKSB7IH1cblxuICBoYW5kbGVGaWxlSW5wdXQoZmlsZXM6IEZpbGVMaXN0KSB7XG4gICAgdGhpcy5wb3N0RmlsZXNTdGFydGVkLmVtaXQoe1xuICAgICAgZmlsZXNDb3VudDogZmlsZXMubGVuZ3RoLFxuICAgICAgY3JlYXRlTG9jYWxDb3BpZXNOb3c6IHRoaXMuY3JlYXRlTG9jYWxDb3BpZXNOb3dcbiAgICB9KTtcblxuICAgIHRoaXMuX2ZpbGVVcGxvYWRTZXJ2aWNlLnBvc3RGaWxlcyhmaWxlcywgdGhpcy5jcmVhdGVMb2NhbENvcGllc05vdykuc3Vic2NyaWJlKGRhdGEgPT4ge1xuICAgICAgdGhpcy5vbkZpbGVzVXBsb2FkZWQuZW1pdChkYXRhKTtcbiAgICB9KVxuICB9XG5cbiAgY2xpY2tGaWxlSW5wdXQoKSB7XG4gICAgdGhpcy5maWxlSW5wdXQubmF0aXZlRWxlbWVudC5jbGljaygpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cbn1cbiIsIjxidXR0b24gW2hpZGRlbl09XCJoaWRkZW5cIiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiZmlsZXNJbnB1dC5jbGljaygpXCI+e3tidG5UZXh0fX08L2J1dHRvbj5cbjxpbnB1dCBbaGlkZGVuXT1cInRydWVcIiBbYWNjZXB0XT1cImV4dEFjY2VwdHNcIiBbbXVsdGlwbGVdPVwiaXNNdWx0aXBsZVwiIHR5cGU9XCJmaWxlXCIgI2ZpbGVzSW5wdXQgKGNoYW5nZSk9XCJoYW5kbGVGaWxlSW5wdXQoJGV2ZW50LnRhcmdldC5maWxlcylcIiAvPiJdfQ==
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import { HttpEventType, HttpResponse } from '@angular/common/http';
|
|
2
1
|
import { Inject, Injectable } from '@angular/core';
|
|
3
|
-
import { throwError } from 'rxjs';
|
|
4
|
-
import { filter, switchMap } from 'rxjs/operators';
|
|
5
2
|
import * as i0 from "@angular/core";
|
|
6
3
|
import * as i1 from "@angular/common/http";
|
|
7
4
|
export class FileUploadService {
|
|
@@ -9,11 +6,6 @@ export class FileUploadService {
|
|
|
9
6
|
this._httpClient = _httpClient;
|
|
10
7
|
this.baseUrl = baseUrl;
|
|
11
8
|
}
|
|
12
|
-
postFile(file, createLocalCopiesNow = false, withProgress = false) {
|
|
13
|
-
const formData = new FormData();
|
|
14
|
-
formData.append(`fileKey1`, file, file.name);
|
|
15
|
-
return this.postFilesInner(formData, createLocalCopiesNow, withProgress);
|
|
16
|
-
}
|
|
17
9
|
postFiles(files, createLocalCopiesNow = false) {
|
|
18
10
|
const formData = new FormData();
|
|
19
11
|
for (let i = 0; i < files.length; i++) {
|
|
@@ -23,40 +15,11 @@ export class FileUploadService {
|
|
|
23
15
|
return this.postFilesInner(formData, createLocalCopiesNow);
|
|
24
16
|
}
|
|
25
17
|
postFilesInner(formData, createLocalCopiesNow = false, withProgress = false) {
|
|
26
|
-
let endpoint =
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
18
|
+
let endpoint = createLocalCopiesNow
|
|
19
|
+
? this.baseUrl + 'api/files/upload/now/with-handlers'
|
|
20
|
+
: this.baseUrl + 'Api/Files/UploadFiles';
|
|
30
21
|
return this._httpClient.post(endpoint, formData, withProgress ? { reportProgress: true, observe: 'events' } : undefined);
|
|
31
22
|
}
|
|
32
|
-
uploadFileWithProgress(file, createLocalCopiesNow = false) {
|
|
33
|
-
let uploadingLoaded;
|
|
34
|
-
let uploadingTotal;
|
|
35
|
-
return this.postFile(file, createLocalCopiesNow, true).pipe(filter((event) => {
|
|
36
|
-
return event.type === HttpEventType.UploadProgress || event instanceof HttpResponse;
|
|
37
|
-
}), switchMap((event) => {
|
|
38
|
-
if (event.type === HttpEventType.UploadProgress) {
|
|
39
|
-
uploadingLoaded = event.loaded;
|
|
40
|
-
uploadingTotal = event.total;
|
|
41
|
-
return [{ loading: true, uploadingLoaded, uploadingTotal }];
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
if (event.body.responseObject?.[0]) {
|
|
45
|
-
return [
|
|
46
|
-
{
|
|
47
|
-
loading: false,
|
|
48
|
-
fileId: event.body.responseObject[0],
|
|
49
|
-
uploadingLoaded,
|
|
50
|
-
uploadingTotal,
|
|
51
|
-
},
|
|
52
|
-
];
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
return throwError(() => new Error(event.body.message));
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}));
|
|
59
|
-
}
|
|
60
23
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: FileUploadService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
61
24
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: FileUploadService, providedIn: 'root' }); }
|
|
62
25
|
}
|
|
@@ -67,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
67
30
|
type: Inject,
|
|
68
31
|
args: ['BASE_URL']
|
|
69
32
|
}] }] });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9zZXJ2aWNlcy9maWxlLXVwbG9hZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUF3Qm5ELE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFDVSxXQUF1QixFQUNILE9BQWU7UUFEbkMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDSCxZQUFPLEdBQVAsT0FBTyxDQUFRO0lBQzFDLENBQUM7SUFFRyxTQUFTLENBQUMsS0FBZSxFQUFFLG9CQUFvQixHQUFHLEtBQUs7UUFDNUQsTUFBTSxRQUFRLEdBQWEsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUUxQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3RDLElBQUksWUFBWSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLFlBQW9CLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzNFLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLG9CQUFvQixDQUFDLENBQUM7SUFDN0QsQ0FBQztJQWtCTSxjQUFjLENBQ25CLFFBQWtCLEVBQ2xCLG9CQUFvQixHQUFHLEtBQUssRUFDNUIsWUFBWSxHQUFHLEtBQUs7UUFFcEIsSUFBSSxRQUFRLEdBQUcsb0JBQW9CO1lBQ2pDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLG9DQUFvQztZQUNyRCxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyx1QkFBdUIsQ0FBQztRQUUzQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUMxQixRQUFRLEVBQ1IsUUFBUSxFQUNSLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUN2RSxDQUFDO0lBQ0osQ0FBQzs4R0EvQ1UsaUJBQWlCLDRDQUdsQixVQUFVO2tIQUhULGlCQUFpQixjQURKLE1BQU07OzJGQUNuQixpQkFBaUI7a0JBRDdCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFJN0IsTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUFwaVJlc3BvbnNlIHtcbiAgaXNTdWNjZWVkZWQ6IGJvb2xlYW47XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZW5lcmljQmFzZUFwaVJlc3BvbnNlPFQ+IGV4dGVuZHMgQmFzZUFwaVJlc3BvbnNlIHtcbiAgcmVzcG9uc2VPYmplY3Q6IFQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUFwaVJlc3BvbnNlV2l0aEZpbGVzSWRzIGV4dGVuZHMgQmFzZUFwaVJlc3BvbnNlIHtcbiAgcmVzcG9uc2VPYmplY3Q6IG51bWJlcltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwbG9hZEZpbGVXaXRoUHJvZ3Jlc3NFdmVudCB7XG4gIGxvYWRpbmc6IGJvb2xlYW47XG4gIHJlc3BvbnNlPzogQmFzZUFwaVJlc3BvbnNlV2l0aEZpbGVzSWRzO1xuICB1cGxvYWRpbmdMb2FkZWQ6IG51bWJlcjtcbiAgdXBsb2FkaW5nVG90YWw6IG51bWJlcjtcbn1cblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2h0dHBDbGllbnQ6IEh0dHBDbGllbnQsXG4gICAgQEluamVjdCgnQkFTRV9VUkwnKSBwcml2YXRlIGJhc2VVcmw6IHN0cmluZyxcbiAgKSB7fVxuXG4gIHB1YmxpYyBwb3N0RmlsZXMoZmlsZXM6IEZpbGVMaXN0LCBjcmVhdGVMb2NhbENvcGllc05vdyA9IGZhbHNlKTogT2JzZXJ2YWJsZTxCYXNlQXBpUmVzcG9uc2VXaXRoRmlsZXNJZHM+IHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHZhciBmaWxlVG9VcGxvYWQgPSBmaWxlcy5pdGVtKGkpO1xuICAgICAgZm9ybURhdGEuYXBwZW5kKGBmaWxlS2V5JHtpfWAsIGZpbGVUb1VwbG9hZCBhcyBCbG9iLCBmaWxlVG9VcGxvYWQ/Lm5hbWUpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnBvc3RGaWxlc0lubmVyKGZvcm1EYXRhLCBjcmVhdGVMb2NhbENvcGllc05vdyk7XG4gIH1cblxuICBwdWJsaWMgcG9zdEZpbGVzSW5uZXIoXG4gICAgZm9ybURhdGE6IEZvcm1EYXRhLFxuICAgIGNyZWF0ZUxvY2FsQ29waWVzTm93OiBib29sZWFuLFxuICAgIHdpdGhQcm9ncmVzczogdHJ1ZSxcbiAgKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8QmFzZUFwaVJlc3BvbnNlV2l0aEZpbGVzSWRzPj47XG5cbiAgcHVibGljIHBvc3RGaWxlc0lubmVyKFxuICAgIGZvcm1EYXRhOiBGb3JtRGF0YSxcbiAgICBjcmVhdGVMb2NhbENvcGllc05vdz86IGJvb2xlYW4sXG4gICAgd2l0aFByb2dyZXNzPzogZmFsc2UsXG4gICk6IE9ic2VydmFibGU8QmFzZUFwaVJlc3BvbnNlV2l0aEZpbGVzSWRzPjtcbiAgcHVibGljIHBvc3RGaWxlc0lubmVyKFxuICAgIGZvcm1EYXRhOiBGb3JtRGF0YSxcbiAgICBjcmVhdGVMb2NhbENvcGllc05vdzogYm9vbGVhbixcbiAgICB3aXRoUHJvZ3Jlc3M6IGJvb2xlYW4sXG4gICk6IE9ic2VydmFibGU8QmFzZUFwaVJlc3BvbnNlV2l0aEZpbGVzSWRzPiB8IE9ic2VydmFibGU8SHR0cEV2ZW50PEJhc2VBcGlSZXNwb25zZVdpdGhGaWxlc0lkcz4+O1xuICBwdWJsaWMgcG9zdEZpbGVzSW5uZXIoXG4gICAgZm9ybURhdGE6IEZvcm1EYXRhLFxuICAgIGNyZWF0ZUxvY2FsQ29waWVzTm93ID0gZmFsc2UsXG4gICAgd2l0aFByb2dyZXNzID0gZmFsc2UsXG4gICk6IE9ic2VydmFibGU8QmFzZUFwaVJlc3BvbnNlV2l0aEZpbGVzSWRzPiB8IE9ic2VydmFibGU8SHR0cEV2ZW50PEJhc2VBcGlSZXNwb25zZVdpdGhGaWxlc0lkcz4+IHtcbiAgICBsZXQgZW5kcG9pbnQgPSBjcmVhdGVMb2NhbENvcGllc05vd1xuICAgICAgPyB0aGlzLmJhc2VVcmwgKyAnYXBpL2ZpbGVzL3VwbG9hZC9ub3cvd2l0aC1oYW5kbGVycydcbiAgICAgIDogdGhpcy5iYXNlVXJsICsgJ0FwaS9GaWxlcy9VcGxvYWRGaWxlcyc7XG5cbiAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudC5wb3N0PEJhc2VBcGlSZXNwb25zZVdpdGhGaWxlc0lkcz4oXG4gICAgICBlbmRwb2ludCxcbiAgICAgIGZvcm1EYXRhLFxuICAgICAgd2l0aFByb2dyZXNzID8geyByZXBvcnRQcm9ncmVzczogdHJ1ZSwgb2JzZXJ2ZTogJ2V2ZW50cycgfSA6IHVuZGVmaW5lZCxcbiAgICApO1xuICB9XG59XG4iXX0=
|
package/fesm2022/croco-html.mjs
CHANGED
|
@@ -3,9 +3,6 @@ import { Injectable, Inject, EventEmitter, Component, ViewChild, Input, Output,
|
|
|
3
3
|
import * as i2 from '@angular/material/button';
|
|
4
4
|
import { MatButton, MatButtonModule, MatIconButton } from '@angular/material/button';
|
|
5
5
|
import * as i1 from '@angular/common/http';
|
|
6
|
-
import { HttpEventType, HttpResponse } from '@angular/common/http';
|
|
7
|
-
import { throwError } from 'rxjs';
|
|
8
|
-
import { filter, switchMap } from 'rxjs/operators';
|
|
9
6
|
import * as i1$3 from '@angular/material/form-field';
|
|
10
7
|
import { MatFormFieldModule, MatFormField, MatLabel } from '@angular/material/form-field';
|
|
11
8
|
import * as i1$4 from '@angular/forms';
|
|
@@ -108,11 +105,6 @@ class FileUploadService {
|
|
|
108
105
|
this._httpClient = _httpClient;
|
|
109
106
|
this.baseUrl = baseUrl;
|
|
110
107
|
}
|
|
111
|
-
postFile(file, createLocalCopiesNow = false, withProgress = false) {
|
|
112
|
-
const formData = new FormData();
|
|
113
|
-
formData.append(`fileKey1`, file, file.name);
|
|
114
|
-
return this.postFilesInner(formData, createLocalCopiesNow, withProgress);
|
|
115
|
-
}
|
|
116
108
|
postFiles(files, createLocalCopiesNow = false) {
|
|
117
109
|
const formData = new FormData();
|
|
118
110
|
for (let i = 0; i < files.length; i++) {
|
|
@@ -122,40 +114,11 @@ class FileUploadService {
|
|
|
122
114
|
return this.postFilesInner(formData, createLocalCopiesNow);
|
|
123
115
|
}
|
|
124
116
|
postFilesInner(formData, createLocalCopiesNow = false, withProgress = false) {
|
|
125
|
-
let endpoint =
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
}
|
|
117
|
+
let endpoint = createLocalCopiesNow
|
|
118
|
+
? this.baseUrl + 'api/files/upload/now/with-handlers'
|
|
119
|
+
: this.baseUrl + 'Api/Files/UploadFiles';
|
|
129
120
|
return this._httpClient.post(endpoint, formData, withProgress ? { reportProgress: true, observe: 'events' } : undefined);
|
|
130
121
|
}
|
|
131
|
-
uploadFileWithProgress(file, createLocalCopiesNow = false) {
|
|
132
|
-
let uploadingLoaded;
|
|
133
|
-
let uploadingTotal;
|
|
134
|
-
return this.postFile(file, createLocalCopiesNow, true).pipe(filter((event) => {
|
|
135
|
-
return event.type === HttpEventType.UploadProgress || event instanceof HttpResponse;
|
|
136
|
-
}), switchMap((event) => {
|
|
137
|
-
if (event.type === HttpEventType.UploadProgress) {
|
|
138
|
-
uploadingLoaded = event.loaded;
|
|
139
|
-
uploadingTotal = event.total;
|
|
140
|
-
return [{ loading: true, uploadingLoaded, uploadingTotal }];
|
|
141
|
-
}
|
|
142
|
-
else {
|
|
143
|
-
if (event.body.responseObject?.[0]) {
|
|
144
|
-
return [
|
|
145
|
-
{
|
|
146
|
-
loading: false,
|
|
147
|
-
fileId: event.body.responseObject[0],
|
|
148
|
-
uploadingLoaded,
|
|
149
|
-
uploadingTotal,
|
|
150
|
-
},
|
|
151
|
-
];
|
|
152
|
-
}
|
|
153
|
-
else {
|
|
154
|
-
return throwError(() => new Error(event.body.message));
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
}));
|
|
158
|
-
}
|
|
159
122
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: FileUploadService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
160
123
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: FileUploadService, providedIn: 'root' }); }
|
|
161
124
|
}
|
|
@@ -173,7 +136,7 @@ class UploadFilesBtnComponent {
|
|
|
173
136
|
this.extAccepts = "*/*";
|
|
174
137
|
this.isMultiple = true;
|
|
175
138
|
this.btnText = "Загрузить файлы";
|
|
176
|
-
this.createLocalCopiesNow =
|
|
139
|
+
this.createLocalCopiesNow = true;
|
|
177
140
|
this.hidden = false;
|
|
178
141
|
this.postFilesStarted = new EventEmitter();
|
|
179
142
|
this.onFilesUploaded = new EventEmitter();
|