@cleavelandprice/ngx-lib 2.2.2 → 2.3.8
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 +6 -616
- package/active-directory/active-directory.module.d.ts +11 -0
- package/active-directory/index.d.ts +5 -0
- package/active-directory/model/ad-object.d.ts +13 -0
- package/active-directory/model/cache-object.d.ts +4 -0
- package/active-directory/model/caching-config.d.ts +4 -0
- package/active-directory/model/default-caching-config.d.ts +2 -0
- package/active-directory/model/default-config.d.ts +2 -0
- package/active-directory/model/default-logging-config.d.ts +2 -0
- package/active-directory/model/logging-config.d.ts +6 -0
- package/active-directory/model/service-config.d.ts +7 -0
- package/active-directory/model/user-or-group.d.ts +7 -0
- package/active-directory/model/user.d.ts +23 -0
- package/active-directory/public_api.d.ts +8 -0
- package/active-directory/services/active-directory.service.d.ts +18 -0
- package/authentication/authentication.module.d.ts +20 -0
- package/authentication/components/login/login.component.d.ts +13 -0
- package/authentication/components/login-form/login-form.component.d.ts +23 -0
- package/authentication/index.d.ts +5 -0
- package/authentication/model/authenticated-user.d.ts +9 -0
- package/authentication/model/authentication-request.d.ts +6 -0
- package/{src/authentication → authentication}/model/authentication-token.d.ts +0 -0
- package/authentication/model/default-config.d.ts +2 -0
- package/authentication/model/login-form-data.d.ts +3 -0
- package/authentication/model/service-config.d.ts +3 -0
- package/authentication/public_api.d.ts +9 -0
- package/authentication/services/authentication.service.d.ts +25 -0
- package/dialog/components/base/base.component.d.ts +20 -0
- package/dialog/components/confirmation/confirmation.component.d.ts +12 -0
- package/dialog/components/input/input.component.d.ts +12 -0
- package/dialog/components/message/message.component.d.ts +12 -0
- package/dialog/dialog.module.d.ts +17 -0
- package/dialog/index.d.ts +5 -0
- package/{src/dialog/model/confirmation-dialog-mode.enum.d.ts → dialog/model/confirmation-dialog-mode.d.ts} +0 -0
- package/dialog/model/dialog-base-data.d.ts +10 -0
- package/dialog/model/dialog-type.d.ts +5 -0
- package/dialog/public_api.d.ts +8 -0
- package/esm2020/active-directory/active-directory.module.mjs +38 -0
- package/esm2020/active-directory/cleavelandprice-ngx-lib-active-directory.mjs +5 -0
- package/esm2020/active-directory/model/ad-object.mjs +2 -0
- package/esm2020/active-directory/model/cache-object.mjs +3 -0
- package/esm2020/active-directory/model/caching-config.mjs +2 -0
- package/esm2020/active-directory/model/default-caching-config.mjs +5 -0
- package/esm2020/active-directory/model/default-config.mjs +8 -0
- package/esm2020/active-directory/model/default-logging-config.mjs +7 -0
- package/esm2020/active-directory/model/logging-config.mjs +2 -0
- package/esm2020/active-directory/model/service-config.mjs +3 -0
- package/esm2020/active-directory/model/user-or-group.mjs +2 -0
- package/esm2020/active-directory/model/user.mjs +2 -0
- package/esm2020/active-directory/public_api.mjs +9 -0
- package/esm2020/active-directory/services/active-directory.service.mjs +89 -0
- package/esm2020/authentication/authentication.module.mjs +77 -0
- package/esm2020/authentication/cleavelandprice-ngx-lib-authentication.mjs +5 -0
- package/esm2020/authentication/components/login/login.component.mjs +39 -0
- package/esm2020/authentication/components/login-form/login-form.component.mjs +60 -0
- package/esm2020/authentication/model/authenticated-user.mjs +2 -0
- package/esm2020/authentication/model/authentication-request.mjs +2 -0
- package/esm2020/authentication/model/authentication-token.mjs +2 -0
- package/esm2020/authentication/model/default-config.mjs +4 -0
- package/esm2020/authentication/model/login-form-data.mjs +2 -0
- package/esm2020/authentication/model/service-config.mjs +3 -0
- package/esm2020/authentication/public_api.mjs +11 -0
- package/esm2020/authentication/services/authentication.service.mjs +120 -0
- package/esm2020/cleavelandprice-ngx-lib.mjs +1 -1
- package/esm2020/dialog/cleavelandprice-ngx-lib-dialog.mjs +5 -0
- package/esm2020/dialog/components/base/base.component.mjs +84 -0
- package/esm2020/dialog/components/confirmation/confirmation.component.mjs +23 -0
- package/esm2020/dialog/components/input/input.component.mjs +23 -0
- package/esm2020/dialog/components/message/message.component.mjs +23 -0
- package/esm2020/dialog/dialog.module.mjs +63 -0
- package/esm2020/dialog/model/confirmation-dialog-mode.mjs +8 -0
- package/esm2020/dialog/model/dialog-base-data.mjs +2 -0
- package/esm2020/dialog/model/dialog-type.mjs +7 -0
- package/esm2020/dialog/public_api.mjs +9 -0
- package/esm2020/lib/ngx-lib.module.mjs +16 -0
- package/esm2020/public_api.mjs +5 -8
- package/esm2020/sharepoint/cleavelandprice-ngx-lib-sharepoint.mjs +5 -0
- package/esm2020/sharepoint/model/base-item.mjs +2 -0
- package/esm2020/sharepoint/model/base-request-credential.mjs +2 -0
- package/esm2020/sharepoint/model/base-request.mjs +2 -0
- package/esm2020/sharepoint/model/cache-object.mjs +3 -0
- package/esm2020/sharepoint/model/caching-config.mjs +2 -0
- package/esm2020/sharepoint/model/default-config.mjs +25 -0
- package/esm2020/sharepoint/model/file-request.mjs +2 -0
- package/esm2020/sharepoint/model/folder-request.mjs +2 -0
- package/esm2020/sharepoint/model/list-item.mjs +2 -0
- package/esm2020/sharepoint/model/list-items-request.mjs +2 -0
- package/esm2020/sharepoint/model/logging-config.mjs +2 -0
- package/esm2020/sharepoint/model/photo-item.mjs +2 -0
- package/esm2020/sharepoint/model/service-config.mjs +3 -0
- package/esm2020/sharepoint/model/uri-request.mjs +2 -0
- package/esm2020/sharepoint/model/user-request.mjs +2 -0
- package/esm2020/sharepoint/model/user.mjs +2 -0
- package/esm2020/sharepoint/public_api.mjs +18 -0
- package/esm2020/sharepoint/services/sharepoint.service.mjs +152 -0
- package/esm2020/sharepoint/sharepoint.module.mjs +38 -0
- package/esm2020/upload/cleavelandprice-ngx-lib-upload.mjs +5 -0
- package/esm2020/upload/components/upload/upload.component.mjs +33 -0
- package/esm2020/upload/components/upload-dialog/upload-dialog.component.mjs +92 -0
- package/esm2020/upload/model/database-file-info.mjs +2 -0
- package/esm2020/upload/model/file-upload-request.mjs +2 -0
- package/esm2020/upload/model/filesystem-file-info.mjs +2 -0
- package/esm2020/upload/model/service-config.mjs +3 -0
- package/esm2020/upload/public_api.mjs +9 -0
- package/esm2020/upload/services/upload.service.mjs +93 -0
- package/esm2020/upload/upload.module.mjs +61 -0
- package/esm2020/url-utilities/cleavelandprice-ngx-lib-url-utilities.mjs +5 -0
- package/esm2020/url-utilities/pipes/safe-resource-url.pipe.mjs +20 -0
- package/esm2020/url-utilities/pipes/safe-url.pipe.mjs +20 -0
- package/esm2020/url-utilities/pipes/uri-scheme.pipe.mjs +105 -0
- package/esm2020/url-utilities/public_api.mjs +5 -0
- package/esm2020/url-utilities/url-utilities.module.mjs +34 -0
- package/fesm2015/cleavelandprice-ngx-lib-active-directory.mjs +156 -0
- package/fesm2015/cleavelandprice-ngx-lib-active-directory.mjs.map +1 -0
- package/fesm2015/cleavelandprice-ngx-lib-authentication.mjs +299 -0
- package/fesm2015/cleavelandprice-ngx-lib-authentication.mjs.map +1 -0
- package/fesm2015/cleavelandprice-ngx-lib-dialog.mjs +218 -0
- package/fesm2015/cleavelandprice-ngx-lib-dialog.mjs.map +1 -0
- package/fesm2015/cleavelandprice-ngx-lib-sharepoint.mjs +233 -0
- package/fesm2015/cleavelandprice-ngx-lib-sharepoint.mjs.map +1 -0
- package/fesm2015/cleavelandprice-ngx-lib-upload.mjs +280 -0
- package/fesm2015/cleavelandprice-ngx-lib-upload.mjs.map +1 -0
- package/fesm2015/cleavelandprice-ngx-lib-url-utilities.mjs +176 -0
- package/fesm2015/cleavelandprice-ngx-lib-url-utilities.mjs.map +1 -0
- package/fesm2015/cleavelandprice-ngx-lib.mjs +11 -1398
- package/fesm2015/cleavelandprice-ngx-lib.mjs.map +1 -1
- package/fesm2020/cleavelandprice-ngx-lib-active-directory.mjs +147 -0
- package/fesm2020/cleavelandprice-ngx-lib-active-directory.mjs.map +1 -0
- package/fesm2020/cleavelandprice-ngx-lib-authentication.mjs +290 -0
- package/fesm2020/cleavelandprice-ngx-lib-authentication.mjs.map +1 -0
- package/fesm2020/cleavelandprice-ngx-lib-dialog.mjs +212 -0
- package/fesm2020/cleavelandprice-ngx-lib-dialog.mjs.map +1 -0
- package/fesm2020/cleavelandprice-ngx-lib-sharepoint.mjs +219 -0
- package/fesm2020/cleavelandprice-ngx-lib-sharepoint.mjs.map +1 -0
- package/fesm2020/cleavelandprice-ngx-lib-upload.mjs +273 -0
- package/fesm2020/cleavelandprice-ngx-lib-upload.mjs.map +1 -0
- package/fesm2020/cleavelandprice-ngx-lib-url-utilities.mjs +176 -0
- package/fesm2020/cleavelandprice-ngx-lib-url-utilities.mjs.map +1 -0
- package/fesm2020/cleavelandprice-ngx-lib.mjs +11 -1370
- package/fesm2020/cleavelandprice-ngx-lib.mjs.map +1 -1
- package/lib/ngx-lib.module.d.ts +6 -0
- package/package.json +57 -12
- package/public_api.d.ts +1 -7
- package/sharepoint/index.d.ts +5 -0
- package/sharepoint/model/base-item.d.ts +4 -0
- package/sharepoint/model/base-request-credential.d.ts +4 -0
- package/sharepoint/model/base-request.d.ts +8 -0
- package/sharepoint/model/cache-object.d.ts +4 -0
- package/sharepoint/model/caching-config.d.ts +4 -0
- package/sharepoint/model/default-config.d.ts +2 -0
- package/sharepoint/model/file-request.d.ts +4 -0
- package/sharepoint/model/folder-request.d.ts +4 -0
- package/sharepoint/model/list-item.d.ts +10 -0
- package/sharepoint/model/list-items-request.d.ts +5 -0
- package/sharepoint/model/logging-config.d.ts +6 -0
- package/sharepoint/model/photo-item.d.ts +11 -0
- package/sharepoint/model/service-config.d.ts +16 -0
- package/sharepoint/model/uri-request.d.ts +4 -0
- package/sharepoint/model/user-request.d.ts +4 -0
- package/sharepoint/model/user.d.ts +12 -0
- package/sharepoint/public_api.d.ts +16 -0
- package/sharepoint/services/sharepoint.service.d.ts +25 -0
- package/sharepoint/sharepoint.module.d.ts +11 -0
- package/{src/file-upload → upload}/components/upload/upload.component.d.ts +0 -0
- package/{src/file-upload → upload}/components/upload-dialog/upload-dialog.component.d.ts +3 -3
- package/upload/index.d.ts +5 -0
- package/{src/file-upload → upload}/model/database-file-info.d.ts +0 -0
- package/{src/file-upload → upload}/model/file-upload-request.d.ts +0 -0
- package/{src/file-upload → upload}/model/filesystem-file-info.d.ts +0 -0
- package/{src/file-upload/model/upload.service.config.d.ts → upload/model/service-config.d.ts} +1 -1
- package/upload/public_api.d.ts +8 -0
- package/{src/file-upload → upload}/services/upload.service.d.ts +6 -8
- package/upload/upload.module.d.ts +16 -0
- package/url-utilities/index.d.ts +5 -0
- package/url-utilities/pipes/safe-resource-url.pipe.d.ts +10 -0
- package/{src/url → url-utilities}/pipes/safe-url.pipe.d.ts +0 -0
- package/{src/url → url-utilities}/pipes/uri-scheme.pipe.d.ts +1 -1
- package/url-utilities/public_api.d.ts +4 -0
- package/url-utilities/url-utilities.module.d.ts +10 -0
- package/esm2020/src/authentication/authentication.module.mjs +0 -112
- package/esm2020/src/authentication/components/login/login.component.mjs +0 -40
- package/esm2020/src/authentication/components/login-form/login-form.component.mjs +0 -45
- package/esm2020/src/authentication/model/authentication-token.mjs +0 -2
- package/esm2020/src/authentication/model/authentication.service.config.mjs +0 -3
- package/esm2020/src/authentication/services/authentication.service.mjs +0 -138
- package/esm2020/src/dialog/components/_dialog/dialog.component.mjs +0 -83
- package/esm2020/src/dialog/components/confirmation-dialog/confirmation-dialog.component.mjs +0 -21
- package/esm2020/src/dialog/components/input-dialog/input-dialog.component.mjs +0 -21
- package/esm2020/src/dialog/components/message-dialog/message-dialog.component.mjs +0 -21
- package/esm2020/src/dialog/dialog.module.mjs +0 -74
- package/esm2020/src/dialog/model/confirmation-dialog-mode.enum.mjs +0 -8
- package/esm2020/src/email/email.module.mjs +0 -47
- package/esm2020/src/email/model/email-dto.mjs +0 -2
- package/esm2020/src/email/model/email-sender.mjs +0 -2
- package/esm2020/src/email/model/email.mjs +0 -2
- package/esm2020/src/email/model/email.service.config.mjs +0 -3
- package/esm2020/src/email/services/email.service.mjs +0 -31
- package/esm2020/src/employee/employee.module.mjs +0 -91
- package/esm2020/src/employee/model/employee.mjs +0 -2
- package/esm2020/src/employee/model/employee.service.config.mjs +0 -3
- package/esm2020/src/employee/pipes/departments.pipe.mjs +0 -24
- package/esm2020/src/employee/pipes/employee-by-dn.pipe.mjs +0 -17
- package/esm2020/src/employee/pipes/employee-photo-url.pipe.mjs +0 -27
- package/esm2020/src/employee/pipes/employees-with-property-value.pipe.mjs +0 -17
- package/esm2020/src/employee/pipes/filter-employees.pipe.mjs +0 -22
- package/esm2020/src/employee/pipes/is-member-of.pipe.mjs +0 -17
- package/esm2020/src/employee/pipes/sort-employees.pipe.mjs +0 -44
- package/esm2020/src/employee/services/employee.service.mjs +0 -41
- package/esm2020/src/file-upload/components/upload/upload.component.mjs +0 -34
- package/esm2020/src/file-upload/components/upload-dialog/upload-dialog.component.mjs +0 -102
- package/esm2020/src/file-upload/model/database-file-info.mjs +0 -2
- package/esm2020/src/file-upload/model/file-upload-request.mjs +0 -2
- package/esm2020/src/file-upload/model/filesystem-file-info.mjs +0 -2
- package/esm2020/src/file-upload/model/upload.service.config.mjs +0 -3
- package/esm2020/src/file-upload/services/upload.service.mjs +0 -93
- package/esm2020/src/file-upload/upload.module.mjs +0 -93
- package/esm2020/src/sharepoint/model/sharepoint-calendar-event.mjs +0 -2
- package/esm2020/src/sharepoint/model/sharepoint-customer-visit.mjs +0 -2
- package/esm2020/src/sharepoint/model/sharepoint-employee-picture.mjs +0 -2
- package/esm2020/src/sharepoint/model/sharepoint-list-item.mjs +0 -2
- package/esm2020/src/sharepoint/model/sharepoint-list.mjs +0 -2
- package/esm2020/src/sharepoint/model/sharepoint-person.mjs +0 -2
- package/esm2020/src/sharepoint/model/sharepoint-picture.mjs +0 -2
- package/esm2020/src/sharepoint/model/sharepoint.service.config.mjs +0 -3
- package/esm2020/src/sharepoint/pipes/sharepoint-photo-url.pipe.mjs +0 -16
- package/esm2020/src/sharepoint/pipes/sharepoint-url.pipe.mjs +0 -16
- package/esm2020/src/sharepoint/services/sharepoint.service.mjs +0 -77
- package/esm2020/src/sharepoint/sharepoint.module.mjs +0 -69
- package/esm2020/src/url/pipes/safe-url.pipe.mjs +0 -21
- package/esm2020/src/url/pipes/uri-scheme.pipe.mjs +0 -103
- package/esm2020/src/url/url.module.mjs +0 -38
- package/src/authentication/authentication.module.d.ts +0 -31
- package/src/authentication/components/login/login.component.d.ts +0 -15
- package/src/authentication/components/login-form/login-form.component.d.ts +0 -20
- package/src/authentication/model/authentication.service.config.d.ts +0 -3
- package/src/authentication/services/authentication.service.d.ts +0 -68
- package/src/dialog/components/_dialog/dialog.component.d.ts +0 -22
- package/src/dialog/components/confirmation-dialog/confirmation-dialog.component.d.ts +0 -9
- package/src/dialog/components/input-dialog/input-dialog.component.d.ts +0 -9
- package/src/dialog/components/message-dialog/message-dialog.component.d.ts +0 -9
- package/src/dialog/dialog.module.d.ts +0 -20
- package/src/email/email.module.d.ts +0 -14
- package/src/email/model/email-dto.d.ts +0 -13
- package/src/email/model/email-sender.d.ts +0 -6
- package/src/email/model/email.d.ts +0 -9
- package/src/email/model/email.service.config.d.ts +0 -7
- package/src/email/services/email.service.d.ts +0 -13
- package/src/employee/employee.module.d.ts +0 -28
- package/src/employee/model/employee.d.ts +0 -35
- package/src/employee/model/employee.service.config.d.ts +0 -3
- package/src/employee/pipes/departments.pipe.d.ts +0 -8
- package/src/employee/pipes/employee-by-dn.pipe.d.ts +0 -8
- package/src/employee/pipes/employee-photo-url.pipe.d.ts +0 -9
- package/src/employee/pipes/employees-with-property-value.pipe.d.ts +0 -8
- package/src/employee/pipes/filter-employees.pipe.d.ts +0 -8
- package/src/employee/pipes/is-member-of.pipe.d.ts +0 -8
- package/src/employee/pipes/sort-employees.pipe.d.ts +0 -9
- package/src/employee/services/employee.service.d.ts +0 -15
- package/src/file-upload/upload.module.d.ts +0 -26
- package/src/sharepoint/model/sharepoint-calendar-event.d.ts +0 -6
- package/src/sharepoint/model/sharepoint-customer-visit.d.ts +0 -8
- package/src/sharepoint/model/sharepoint-employee-picture.d.ts +0 -5
- package/src/sharepoint/model/sharepoint-list-item.d.ts +0 -11
- package/src/sharepoint/model/sharepoint-list.d.ts +0 -8
- package/src/sharepoint/model/sharepoint-person.d.ts +0 -9
- package/src/sharepoint/model/sharepoint-picture.d.ts +0 -14
- package/src/sharepoint/model/sharepoint.service.config.d.ts +0 -5
- package/src/sharepoint/pipes/sharepoint-photo-url.pipe.d.ts +0 -8
- package/src/sharepoint/pipes/sharepoint-url.pipe.d.ts +0 -7
- package/src/sharepoint/services/sharepoint.service.d.ts +0 -23
- package/src/sharepoint/sharepoint.module.d.ts +0 -24
- package/src/url/url.module.d.ts +0 -11
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { Component, ViewChild } from '@angular/core';
|
|
2
|
+
import { forkJoin } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/material/dialog";
|
|
5
|
+
import * as i2 from "./../../services/upload.service";
|
|
6
|
+
import * as i3 from "@angular/common";
|
|
7
|
+
import * as i4 from "@angular/material/list";
|
|
8
|
+
import * as i5 from "@angular/material/core";
|
|
9
|
+
import * as i6 from "@angular/material/progress-bar";
|
|
10
|
+
export class UploadDialogComponent {
|
|
11
|
+
constructor(dialogRef, uploadService) {
|
|
12
|
+
this.dialogRef = dialogRef;
|
|
13
|
+
this.uploadService = uploadService;
|
|
14
|
+
this.files = new Set();
|
|
15
|
+
this.existingFileConflict = null;
|
|
16
|
+
this.canBeClosed = true;
|
|
17
|
+
this.showCancelButton = true;
|
|
18
|
+
this.uploading = false;
|
|
19
|
+
this.uploadSuccessful = false;
|
|
20
|
+
}
|
|
21
|
+
ngOnInit() {
|
|
22
|
+
this.uploadDialogTitle = this.uploadService.uploadDialogTitle ?? 'Upload Files';
|
|
23
|
+
this.uploadDialogAddFilesButtonText = this.uploadService.uploadDialogAddFilesButtonText ?? 'Add Files';
|
|
24
|
+
this.uploadDialogCancelButtonText = this.uploadService.uploadDialogCancelButtonText ?? 'Cancel';
|
|
25
|
+
this.uploadDialogUploadButtonText = this.uploadService.uploadDialogUploadButtonText ?? 'Upload';
|
|
26
|
+
this.uploadDialogFinishButtonText = this.uploadService.uploadDialogFinishButtonText ?? 'Finish';
|
|
27
|
+
this.primaryButtonText = this.uploadDialogUploadButtonText;
|
|
28
|
+
}
|
|
29
|
+
addFiles() {
|
|
30
|
+
this.file.nativeElement.click();
|
|
31
|
+
}
|
|
32
|
+
onFilesAdded() {
|
|
33
|
+
const files = this.file.nativeElement.files;
|
|
34
|
+
for (const key in files) {
|
|
35
|
+
if (!isNaN(parseInt(key))) {
|
|
36
|
+
// See if the file already exists
|
|
37
|
+
this.uploadService.exists(files[key].name)
|
|
38
|
+
.subscribe(exists => {
|
|
39
|
+
if (exists) {
|
|
40
|
+
this.existingFileConflict = files[key].name;
|
|
41
|
+
}
|
|
42
|
+
if (!exists) {
|
|
43
|
+
this.files.add(files[key]);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
closeDialog() {
|
|
50
|
+
// if everything was uploaded already, just close the dialog
|
|
51
|
+
if (this.uploadSuccessful) {
|
|
52
|
+
return this.dialogRef.close();
|
|
53
|
+
}
|
|
54
|
+
// set the component state to "uploading"
|
|
55
|
+
this.uploading = true;
|
|
56
|
+
// start the upload and save the progress map
|
|
57
|
+
this.progress = this.uploadService.upload(this.files);
|
|
58
|
+
// convert the progress map into an array
|
|
59
|
+
const allProgressObservables = [];
|
|
60
|
+
for (let key in this.progress) {
|
|
61
|
+
allProgressObservables.push(this.progress[key].progress);
|
|
62
|
+
}
|
|
63
|
+
// Adjust the state variables
|
|
64
|
+
// The OK-button should have the text "Finish" now
|
|
65
|
+
this.primaryButtonText = this.uploadDialogFinishButtonText;
|
|
66
|
+
// The dialog should not be closed while uploading
|
|
67
|
+
this.canBeClosed = false;
|
|
68
|
+
this.dialogRef.disableClose = true;
|
|
69
|
+
// Hide the cancel-button
|
|
70
|
+
this.showCancelButton = false;
|
|
71
|
+
// When all progress-observables are completed...
|
|
72
|
+
forkJoin(allProgressObservables).subscribe(end => {
|
|
73
|
+
// ... the dialog can be closed again...
|
|
74
|
+
this.canBeClosed = true;
|
|
75
|
+
this.dialogRef.disableClose = false;
|
|
76
|
+
// ... the upload was successful...
|
|
77
|
+
this.uploadSuccessful = true;
|
|
78
|
+
// ... and the component is no longer uploading
|
|
79
|
+
this.uploading = false;
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
UploadDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UploadDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: i2.UploadService }], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
+
UploadDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: UploadDialogComponent, selector: "cp-upload-dialog", viewQueries: [{ propertyName: "file", first: true, predicate: ["file"], descendants: true, static: true }], ngImport: i0, template: "<input type=\"file\" #file style=\"display: none\" (change)=\"onFilesAdded()\" multiple />\n\n<div mat-dialog-title id=\"title\">\n <div>{{ uploadDialogTitle }}</div>\n <button [disabled]=\"uploading || uploadSuccessful\" mat-raised-button color=\"primary\" class=\"add-files-btn\" (click)=\"addFiles()\">\n {{ uploadDialogAddFilesButtonText }}\n </button>\n</div>\n\n<div id=\"conflict\" *ngIf=\"existingFileConflict\">\n {{ existingFileConflict }} already exists on the server and cannot be overwritten\n</div>\n\n<mat-dialog-content>\n <mat-list>\n <mat-list-item *ngFor=\"let file of files\">\n <h4 mat-line>{{file.name}}</h4>\n <mat-progress-bar *ngIf=\"progress\" mode=\"determinate\" [value]=\"progress[file.name].progress | async\"></mat-progress-bar>\n </mat-list-item>\n </mat-list>\n</mat-dialog-content>\n\n<mat-dialog-actions id=\"actions\">\n <button *ngIf=\"showCancelButton\" mat-button mat-dialog-close>{{ uploadDialogCancelButtonText }}</button>\n <button *ngIf=\"files.size > 0\" mat-raised-button color=\"primary\" [disabled]=\"!canBeClosed\" (click)=\"closeDialog()\">{{ primaryButtonText }}</button>\n</mat-dialog-actions>\n", styles: ["#title{display:flex;justify-content:space-between}#actions{display:flex;justify-content:flex-end}#conflict{font-size:.8em;color:red;margin-top:.5em}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i4.MatList, selector: "mat-list, mat-action-list", inputs: ["disableRipple", "disabled"], exportAs: ["matList"] }, { kind: "component", type: i4.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { kind: "directive", type: i5.MatLine, selector: "[mat-line], [matLine]" }, { kind: "component", type: i6.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] });
|
|
85
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UploadDialogComponent, decorators: [{
|
|
86
|
+
type: Component,
|
|
87
|
+
args: [{ selector: 'cp-upload-dialog', template: "<input type=\"file\" #file style=\"display: none\" (change)=\"onFilesAdded()\" multiple />\n\n<div mat-dialog-title id=\"title\">\n <div>{{ uploadDialogTitle }}</div>\n <button [disabled]=\"uploading || uploadSuccessful\" mat-raised-button color=\"primary\" class=\"add-files-btn\" (click)=\"addFiles()\">\n {{ uploadDialogAddFilesButtonText }}\n </button>\n</div>\n\n<div id=\"conflict\" *ngIf=\"existingFileConflict\">\n {{ existingFileConflict }} already exists on the server and cannot be overwritten\n</div>\n\n<mat-dialog-content>\n <mat-list>\n <mat-list-item *ngFor=\"let file of files\">\n <h4 mat-line>{{file.name}}</h4>\n <mat-progress-bar *ngIf=\"progress\" mode=\"determinate\" [value]=\"progress[file.name].progress | async\"></mat-progress-bar>\n </mat-list-item>\n </mat-list>\n</mat-dialog-content>\n\n<mat-dialog-actions id=\"actions\">\n <button *ngIf=\"showCancelButton\" mat-button mat-dialog-close>{{ uploadDialogCancelButtonText }}</button>\n <button *ngIf=\"files.size > 0\" mat-raised-button color=\"primary\" [disabled]=\"!canBeClosed\" (click)=\"closeDialog()\">{{ primaryButtonText }}</button>\n</mat-dialog-actions>\n", styles: ["#title{display:flex;justify-content:space-between}#actions{display:flex;justify-content:flex-end}#conflict{font-size:.8em;color:red;margin-top:.5em}\n"] }]
|
|
88
|
+
}], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: i2.UploadService }]; }, propDecorators: { file: [{
|
|
89
|
+
type: ViewChild,
|
|
90
|
+
args: ['file', { static: true }]
|
|
91
|
+
}] } });
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi91cGxvYWQvc3JjL2NvbXBvbmVudHMvdXBsb2FkLWRpYWxvZy91cGxvYWQtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvY29tcG9uZW50cy91cGxvYWQtZGlhbG9nL3VwbG9hZC1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBc0IsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3pFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7O0FBT2hDLE1BQU0sT0FBTyxxQkFBcUI7SUFvQmhDLFlBQW1CLFNBQThDLEVBQVMsYUFBNEI7UUFBbkYsY0FBUyxHQUFULFNBQVMsQ0FBcUM7UUFBUyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQWxCL0YsVUFBSyxHQUFjLElBQUksR0FBRyxFQUFFLENBQUM7UUFDcEMseUJBQW9CLEdBQWtCLElBQUksQ0FBQztRQUkzQyxnQkFBVyxHQUFHLElBQUksQ0FBQztRQUVuQixxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDeEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFTaUYsQ0FBQztJQUUzRyxRQUFRO1FBQ04sSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLElBQUksY0FBYyxDQUFDO1FBRWhGLElBQUksQ0FBQyw4QkFBOEIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLDhCQUE4QixJQUFJLFdBQVcsQ0FBQztRQUV2RyxJQUFJLENBQUMsNEJB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LHFCQUFxQixvS0NWbEMsdXBDQTBCQTsyRkRoQmEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGtCQUFrQjsrSEFLUyxJQUFJO3NCQUF4QyxTQUFTO3VCQUFDLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgVXBsb2FkU2VydmljZSB9IGZyb20gJy4vLi4vLi4vc2VydmljZXMvdXBsb2FkLnNlcnZpY2UnO1xuaW1wb3J0IHsgZm9ya0pvaW4gfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3AtdXBsb2FkLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi91cGxvYWQtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdXBsb2FkLWRpYWxvZy5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVXBsb2FkRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQFZpZXdDaGlsZCgnZmlsZScsIHsgc3RhdGljOiB0cnVlIH0pIGZpbGUhOiBFbGVtZW50UmVmO1xuICBwdWJsaWMgZmlsZXM6IFNldDxGaWxlPiA9IG5ldyBTZXQoKTtcbiAgZXhpc3RpbmdGaWxlQ29uZmxpY3Q6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIC8vIFN0YXRlXG4gIHByb2dyZXNzOiBhbnk7XG4gIGNhbkJlQ2xvc2VkID0gdHJ1ZTtcbiAgcHJpbWFyeUJ1dHRvblRleHQhOiBzdHJpbmc7XG4gIHNob3dDYW5jZWxCdXR0b24gPSB0cnVlO1xuICB1cGxvYWRpbmcgPSBmYWxzZTtcbiAgdXBsb2FkU3VjY2Vzc2Z1bCA9IGZhbHNlO1xuXG4gIC8vIFVJIGNvbmZpZ3VyYXRpb25cbiAgdXBsb2FkRGlhbG9nVGl0bGUhOiBzdHJpbmc7XG4gIHVwbG9hZERpYWxvZ0FkZEZpbGVzQnV0dG9uVGV4dCE6IHN0cmluZztcbiAgdXBsb2FkRGlhbG9nQ2FuY2VsQnV0dG9uVGV4dCE6IHN0cmluZztcbiAgdXBsb2FkRGlhbG9nVXBsb2FkQnV0dG9uVGV4dCE6IHN0cmluZztcbiAgdXBsb2FkRGlhbG9nRmluaXNoQnV0dG9uVGV4dCE6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8VXBsb2FkRGlhbG9nQ29tcG9uZW50PiwgcHVibGljIHVwbG9hZFNlcnZpY2U6IFVwbG9hZFNlcnZpY2UpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudXBsb2FkRGlhbG9nVGl0bGUgPSB0aGlzLnVwbG9hZFNlcnZpY2UudXBsb2FkRGlhbG9nVGl0bGUgPz8gJ1VwbG9hZCBGaWxlcyc7XG5cbiAgICB0aGlzLnVwbG9hZERpYWxvZ0FkZEZpbGVzQnV0dG9uVGV4dCA9IHRoaXMudXBsb2FkU2VydmljZS51cGxvYWREaWFsb2dBZGRGaWxlc0J1dHRvblRleHQgPz8gJ0FkZCBGaWxlcyc7XG5cbiAgICB0aGlzLnVwbG9hZERpYWxvZ0NhbmNlbEJ1dHRvblRleHQgPSB0aGlzLnVwbG9hZFNlcnZpY2UudXBsb2FkRGlhbG9nQ2FuY2VsQnV0dG9uVGV4dCA/PyAnQ2FuY2VsJztcblxuICAgIHRoaXMudXBsb2FkRGlhbG9nVXBsb2FkQnV0dG9uVGV4dCA9IHRoaXMudXBsb2FkU2VydmljZS51cGxvYWREaWFsb2dVcGxvYWRCdXR0b25UZXh0ID8/ICdVcGxvYWQnO1xuXG4gICAgdGhpcy51cGxvYWREaWFsb2dGaW5pc2hCdXR0b25UZXh0ID0gdGhpcy51cGxvYWRTZXJ2aWNlLnVwbG9hZERpYWxvZ0ZpbmlzaEJ1dHRvblRleHQgPz8gJ0ZpbmlzaCc7XG5cbiAgICB0aGlzLnByaW1hcnlCdXR0b25UZXh0ID0gdGhpcy51cGxvYWREaWFsb2dVcGxvYWRCdXR0b25UZXh0O1xuICB9XG5cbiAgYWRkRmlsZXMoKSB7XG4gICAgdGhpcy5maWxlLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgfVxuXG4gIG9uRmlsZXNBZGRlZCgpIHtcbiAgICBjb25zdCBmaWxlczogeyBba2V5OiBzdHJpbmddOiBGaWxlIH0gPSB0aGlzLmZpbGUubmF0aXZlRWxlbWVudC5maWxlcztcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBmaWxlcykge1xuICAgICAgaWYgKCFpc05hTihwYXJzZUludChrZXkpKSkge1xuICAgICAgICAvLyBTZWUgaWYgdGhlIGZpbGUgYWxyZWFkeSBleGlzdHNcbiAgICAgICAgdGhpcy51cGxvYWRTZXJ2aWNlLmV4aXN0cyhmaWxlc1trZXldLm5hbWUpXG4gICAgICAgICAgLnN1YnNjcmliZShleGlzdHMgPT4ge1xuICAgICAgICAgICAgaWYgKGV4aXN0cykge1xuICAgICAgICAgICAgICB0aGlzLmV4aXN0aW5nRmlsZUNvbmZsaWN0ID0gZmlsZXNba2V5XS5uYW1lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIWV4aXN0cykge1xuICAgICAgICAgICAgICB0aGlzLmZpbGVzLmFkZChmaWxlc1trZXldKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjbG9zZURpYWxvZygpIHtcbiAgICAvLyBpZiBldmVyeXRoaW5nIHdhcyB1cGxvYWRlZCBhbHJlYWR5LCBqdXN0IGNsb3NlIHRoZSBkaWFsb2dcbiAgICBpZiAodGhpcy51cGxvYWRTdWNjZXNzZnVsKSB7XG4gICAgICByZXR1cm4gdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgICB9XG5cbiAgICAvLyBzZXQgdGhlIGNvbXBvbmVudCBzdGF0ZSB0byBcInVwbG9hZGluZ1wiXG4gICAgdGhpcy51cGxvYWRpbmcgPSB0cnVlO1xuXG4gICAgLy8gc3RhcnQgdGhlIHVwbG9hZCBhbmQgc2F2ZSB0aGUgcHJvZ3Jlc3MgbWFwXG4gICAgdGhpcy5wcm9ncmVzcyA9IHRoaXMudXBsb2FkU2VydmljZS51cGxvYWQodGhpcy5maWxlcyk7XG5cbiAgICAvLyBjb252ZXJ0IHRoZSBwcm9ncmVzcyBtYXAgaW50byBhbiBhcnJheVxuICAgIGNvbnN0IGFsbFByb2dyZXNzT2JzZXJ2YWJsZXMgPSBbXTtcblxuICAgIGZvciAobGV0IGtleSBpbiB0aGlzLnByb2dyZXNzKSB7XG4gICAgICBhbGxQcm9ncmVzc09ic2VydmFibGVzLnB1c2godGhpcy5wcm9ncmVzc1trZXldLnByb2dyZXNzKTtcbiAgICB9XG5cbiAgICAvLyBBZGp1c3QgdGhlIHN0YXRlIHZhcmlhYmxlc1xuXG4gICAgLy8gVGhlIE9LLWJ1dHRvbiBzaG91bGQgaGF2ZSB0aGUgdGV4dCBcIkZpbmlzaFwiIG5vd1xuICAgIHRoaXMucHJpbWFyeUJ1dHRvblRleHQgPSB0aGlzLnVwbG9hZERpYWxvZ0ZpbmlzaEJ1dHRvblRleHQ7XG5cbiAgICAvLyBUaGUgZGlhbG9nIHNob3VsZCBub3QgYmUgY2xvc2VkIHdoaWxlIHVwbG9hZGluZ1xuICAgIHRoaXMuY2FuQmVDbG9zZWQgPSBmYWxzZTtcbiAgICB0aGlzLmRpYWxvZ1JlZi5kaXNhYmxlQ2xvc2UgPSB0cnVlO1xuXG4gICAgLy8gSGlkZSB0aGUgY2FuY2VsLWJ1dHRvblxuICAgIHRoaXMuc2hvd0NhbmNlbEJ1dHRvbiA9IGZhbHNlO1xuXG4gICAgLy8gV2hlbiBhbGwgcHJvZ3Jlc3Mtb2JzZXJ2YWJsZXMgYXJlIGNvbXBsZXRlZC4uLlxuICAgIGZvcmtKb2luKGFsbFByb2dyZXNzT2JzZXJ2YWJsZXMpLnN1YnNjcmliZShlbmQgPT4ge1xuICAgICAgLy8gLi4uIHRoZSBkaWFsb2cgY2FuIGJlIGNsb3NlZCBhZ2Fpbi4uLlxuICAgICAgdGhpcy5jYW5CZUNsb3NlZCA9IHRydWU7XG4gICAgICB0aGlzLmRpYWxvZ1JlZi5kaXNhYmxlQ2xvc2UgPSBmYWxzZTtcblxuICAgICAgLy8gLi4uIHRoZSB1cGxvYWQgd2FzIHN1Y2Nlc3NmdWwuLi5cbiAgICAgIHRoaXMudXBsb2FkU3VjY2Vzc2Z1bCA9IHRydWU7XG5cbiAgICAgIC8vIC4uLiBhbmQgdGhlIGNvbXBvbmVudCBpcyBubyBsb25nZXIgdXBsb2FkaW5nXG4gICAgICB0aGlzLnVwbG9hZGluZyA9IGZhbHNlO1xuICAgIH0pO1xuICB9XG59XG4iLCI8aW5wdXQgdHlwZT1cImZpbGVcIiAjZmlsZSBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIiAoY2hhbmdlKT1cIm9uRmlsZXNBZGRlZCgpXCIgbXVsdGlwbGUgLz5cblxuPGRpdiBtYXQtZGlhbG9nLXRpdGxlIGlkPVwidGl0bGVcIj5cbiAgPGRpdj57eyB1cGxvYWREaWFsb2dUaXRsZSB9fTwvZGl2PlxuICA8YnV0dG9uIFtkaXNhYmxlZF09XCJ1cGxvYWRpbmcgfHwgdXBsb2FkU3VjY2Vzc2Z1bFwiIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIGNsYXNzPVwiYWRkLWZpbGVzLWJ0blwiIChjbGljayk9XCJhZGRGaWxlcygpXCI+XG4gICAge3sgdXBsb2FkRGlhbG9nQWRkRmlsZXNCdXR0b25UZXh0IH19XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG5cbjxkaXYgaWQ9XCJjb25mbGljdFwiICpuZ0lmPVwiZXhpc3RpbmdGaWxlQ29uZmxpY3RcIj5cbiAge3sgZXhpc3RpbmdGaWxlQ29uZmxpY3QgfX0gYWxyZWFkeSBleGlzdHMgb24gdGhlIHNlcnZlciBhbmQgY2Fubm90IGJlIG92ZXJ3cml0dGVuXG48L2Rpdj5cblxuPG1hdC1kaWFsb2ctY29udGVudD5cbiAgPG1hdC1saXN0PlxuICAgIDxtYXQtbGlzdC1pdGVtICpuZ0Zvcj1cImxldCBmaWxlIG9mIGZpbGVzXCI+XG4gICAgICA8aDQgbWF0LWxpbmU+e3tmaWxlLm5hbWV9fTwvaDQ+XG4gICAgICA8bWF0LXByb2dyZXNzLWJhciAqbmdJZj1cInByb2dyZXNzXCIgbW9kZT1cImRldGVybWluYXRlXCIgW3ZhbHVlXT1cInByb2dyZXNzW2ZpbGUubmFtZV0ucHJvZ3Jlc3MgfCBhc3luY1wiPjwvbWF0LXByb2dyZXNzLWJhcj5cbiAgICA8L21hdC1saXN0LWl0ZW0+XG4gIDwvbWF0LWxpc3Q+XG48L21hdC1kaWFsb2ctY29udGVudD5cblxuPG1hdC1kaWFsb2ctYWN0aW9ucyBpZD1cImFjdGlvbnNcIj5cbiAgPGJ1dHRvbiAqbmdJZj1cInNob3dDYW5jZWxCdXR0b25cIiBtYXQtYnV0dG9uIG1hdC1kaWFsb2ctY2xvc2U+e3sgdXBsb2FkRGlhbG9nQ2FuY2VsQnV0dG9uVGV4dCB9fTwvYnV0dG9uPlxuICA8YnV0dG9uICpuZ0lmPVwiZmlsZXMuc2l6ZSA+IDBcIiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBbZGlzYWJsZWRdPVwiIWNhbkJlQ2xvc2VkXCIgKGNsaWNrKT1cImNsb3NlRGlhbG9nKClcIj57eyBwcmltYXJ5QnV0dG9uVGV4dCB9fTwvYnV0dG9uPlxuPC9tYXQtZGlhbG9nLWFjdGlvbnM+XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UtZmlsZS1pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvdXBsb2FkL3NyYy9tb2RlbC9kYXRhYmFzZS1maWxlLWluZm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRGF0YWJhc2VGaWxlSW5mbyB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICB0aW1lc3RhbXA6IERhdGU7XHJcbiAgICBkYkFwcElkOiBzdHJpbmc7XHJcbiAgICBleHRlcm5hbFJlZmVyZW5jZUlkPzogbnVtYmVyO1xyXG4gICAgY29tbWVudD86IHN0cmluZztcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQtcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvbW9kZWwvZmlsZS11cGxvYWQtcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBGaWxlVXBsb2FkUmVxdWVzdCB7XHJcbiAgICBhcHBJZD86IHN0cmluZztcclxuICAgIG5hbWU/OiBzdHJpbmc7XHJcbiAgICBleHRlcm5hbFJlZmVyZW5jZUlkPzogbnVtYmVyO1xyXG4gICAgZm9sZGVyPzogc3RyaW5nO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXN5c3RlbS1maWxlLWluZm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi91cGxvYWQvc3JjL21vZGVsL2ZpbGVzeXN0ZW0tZmlsZS1pbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEZpbGVzeXN0ZW1GaWxlSW5mbyB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBhdHRyaWJ1dGVzPzogbnVtYmVyO1xyXG4gICAgY3JlYXRpb25UaW1lOiBEYXRlO1xyXG4gICAgZGlyZWN0b3J5OiBzdHJpbmc7XHJcbiAgICBleHRlbnNpb246IHN0cmluZztcclxuICAgIGZ1bGxuYW1lOiBzdHJpbmc7XHJcbiAgICBsYXN0QWNjZXNzVGltZTogRGF0ZTtcclxuICAgIGxhc3RXcml0ZVRpbWU6IERhdGU7XHJcbiAgICByZWFkT25seTogYm9vbGVhbjtcclxuICAgIHNpemU6IG51bWJlcjtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export class ServiceConfig {
|
|
2
|
+
}
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi91cGxvYWQvc3JjL21vZGVsL3NlcnZpY2UtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxhQUFhO0NBY3pCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFNlcnZpY2VDb25maWcge1xyXG4gICAgdXBsb2FkQXBpVXJsITogc3RyaW5nO1xyXG4gICAgdXBsb2FkUGF0aD86IHN0cmluZztcclxuICAgIGRiQXBwSWQ/OiBzdHJpbmc7XHJcbiAgICBleHRlcm5hbFJlZmVyZW5jZUlkPzogc3RyaW5nO1xyXG4gICAgY29tbWVudD86IHN0cmluZztcclxuXHJcbiAgICAvLyBVSSBjb25maWd1cmF0aW9uXHJcbiAgICB1cGxvYWRCdXR0b25UZXh0Pzogc3RyaW5nO1xyXG4gICAgdXBsb2FkRGlhbG9nVGl0bGU/OiBzdHJpbmc7XHJcbiAgICB1cGxvYWREaWFsb2dBZGRGaWxlc0J1dHRvblRleHQ/OiBzdHJpbmc7XHJcbiAgICB1cGxvYWREaWFsb2dDYW5jZWxCdXR0b25UZXh0Pzogc3RyaW5nO1xyXG4gICAgdXBsb2FkRGlhbG9nVXBsb2FkQnV0dG9uVGV4dD86IHN0cmluZztcclxuICAgIHVwbG9hZERpYWxvZ0ZpbmlzaEJ1dHRvblRleHQ/OiBzdHJpbmc7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './model/database-file-info';
|
|
2
|
+
export * from './model/file-upload-request';
|
|
3
|
+
export * from './model/filesystem-file-info';
|
|
4
|
+
export * from './model/service-config';
|
|
5
|
+
export * from './components/upload/upload.component';
|
|
6
|
+
export * from './components/upload-dialog/upload-dialog.component';
|
|
7
|
+
export * from './services/upload.service';
|
|
8
|
+
export * from './upload.module';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHdCQUF3QixDQUFDO0FBRXZDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxvREFBb0QsQ0FBQztBQUVuRSxjQUFjLDJCQUEyQixDQUFDO0FBRTFDLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVsL2RhdGFiYXNlLWZpbGUtaW5mbyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvZmlsZS11cGxvYWQtcmVxdWVzdCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvZmlsZXN5c3RlbS1maWxlLWluZm8nO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL3NlcnZpY2UtY29uZmlnJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy91cGxvYWQvdXBsb2FkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy91cGxvYWQtZGlhbG9nL3VwbG9hZC1kaWFsb2cuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvdXBsb2FkLnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi91cGxvYWQubW9kdWxlJzsiXX0=
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { Injectable, Optional } from '@angular/core';
|
|
2
|
+
import { HttpRequest, HttpEventType, HttpResponse, HttpHeaders } from '@angular/common/http';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common/http";
|
|
6
|
+
import * as i2 from "../model/service-config";
|
|
7
|
+
// https://malcoded.com/posts/angular-file-upload-component-with-express
|
|
8
|
+
export class UploadService {
|
|
9
|
+
constructor(http, config) {
|
|
10
|
+
this.http = http;
|
|
11
|
+
this.uploadApiUrl = config.uploadApiUrl;
|
|
12
|
+
this.uploadPath = config.uploadPath || '';
|
|
13
|
+
this.dbAppId = config.dbAppId || '';
|
|
14
|
+
this.externalReferenceId = config.externalReferenceId || '';
|
|
15
|
+
this.comment = config.comment || '';
|
|
16
|
+
// UI configuration
|
|
17
|
+
this.uploadButtonText = config.uploadButtonText ?? '';
|
|
18
|
+
this.uploadDialogTitle = config.uploadDialogTitle ?? '';
|
|
19
|
+
this.uploadDialogAddFilesButtonText = config.uploadDialogAddFilesButtonText ?? '';
|
|
20
|
+
this.uploadDialogCancelButtonText = config.uploadDialogCancelButtonText ?? '';
|
|
21
|
+
this.uploadDialogUploadButtonText = config.uploadDialogUploadButtonText ?? '';
|
|
22
|
+
this.uploadDialogFinishButtonText = config.uploadDialogFinishButtonText ?? '';
|
|
23
|
+
}
|
|
24
|
+
upload(files) {
|
|
25
|
+
// this will be the our resulting map
|
|
26
|
+
const status = {};
|
|
27
|
+
files.forEach(file => {
|
|
28
|
+
// create a new multipart-form for every file
|
|
29
|
+
const formData = new FormData();
|
|
30
|
+
formData.append('file', file, file.name);
|
|
31
|
+
// create a http-post request and pass the form
|
|
32
|
+
// tell it to report the upload progress
|
|
33
|
+
// A 'Destination' header is used to optionally configure the file upload destination (filesystem)
|
|
34
|
+
// A 'DbAppId' header is used to configure the unique identifier of database uploads
|
|
35
|
+
const req = new HttpRequest('POST', this.uploadApiUrl, formData, {
|
|
36
|
+
reportProgress: true,
|
|
37
|
+
responseType: 'blob',
|
|
38
|
+
headers: new HttpHeaders()
|
|
39
|
+
.set('Destination', this.uploadPath)
|
|
40
|
+
.set('DbAppId', this.dbAppId)
|
|
41
|
+
.set('ExternalReferenceId', this.externalReferenceId)
|
|
42
|
+
.set('Comment', this.comment)
|
|
43
|
+
/*headers: this.uploadPath ?
|
|
44
|
+
new HttpHeaders({ 'Destination': this.uploadPath }) :
|
|
45
|
+
this.dbAppId ?
|
|
46
|
+
new HttpHeaders({ 'DbAppId': this.dbAppId }) :
|
|
47
|
+
null*/
|
|
48
|
+
});
|
|
49
|
+
// create a new progress-subject for every file
|
|
50
|
+
const progress = new Subject();
|
|
51
|
+
// send the http-request and subscribe for progress-updates
|
|
52
|
+
this.http.request(req).subscribe(event => {
|
|
53
|
+
if (event.type === HttpEventType.UploadProgress) {
|
|
54
|
+
// calculate the progress percentage
|
|
55
|
+
const percentDone = Math.round(100 * event.loaded / (event.total ?? 1));
|
|
56
|
+
// pass the percentage into the progress-stream
|
|
57
|
+
progress.next(percentDone);
|
|
58
|
+
}
|
|
59
|
+
else if (event instanceof HttpResponse) {
|
|
60
|
+
// Close the progress-stream if we get an answer form the API
|
|
61
|
+
// The upload is complete
|
|
62
|
+
progress.complete();
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
// Save every progress-observable in a map of all observables
|
|
66
|
+
status[file.name] = {
|
|
67
|
+
progress: progress.asObservable()
|
|
68
|
+
};
|
|
69
|
+
});
|
|
70
|
+
// return the map of progress.observables
|
|
71
|
+
return status;
|
|
72
|
+
}
|
|
73
|
+
exists(fileName) {
|
|
74
|
+
const query = this.uploadApiUrl.toLowerCase().indexOf('filesystem') === -1 ?
|
|
75
|
+
{ name: fileName, dbAppId: this.dbAppId } :
|
|
76
|
+
{ name: fileName, destination: this.uploadPath };
|
|
77
|
+
return this.http.post(`${this.uploadApiUrl}/exists`, query);
|
|
78
|
+
}
|
|
79
|
+
download(request) {
|
|
80
|
+
return this.http.post(`${this.uploadApiUrl}/stream`, request, { responseType: 'blob' });
|
|
81
|
+
}
|
|
82
|
+
getUploadInfo(request) {
|
|
83
|
+
return this.http.post(`${this.uploadApiUrl}/info`, request);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
UploadService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UploadService, deps: [{ token: i1.HttpClient }, { token: i2.ServiceConfig, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
87
|
+
UploadService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UploadService });
|
|
88
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UploadService, decorators: [{
|
|
89
|
+
type: Injectable
|
|
90
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.ServiceConfig, decorators: [{
|
|
91
|
+
type: Optional
|
|
92
|
+
}] }]; } });
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi91cGxvYWQvc3JjL3NlcnZpY2VzL3VwbG9hZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBYyxXQUFXLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RyxPQUFPLEVBQUUsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQzs7OztBQU03Qyx3RUFBd0U7QUFHeEUsTUFBTSxPQUFPLGFBQWE7SUFleEIsWUFBb0IsSUFBZ0IsRUFDdEIsTUFBcUI7UUFEZixTQUFJLEdBQUosSUFBSSxDQUFZO1FBRWhDLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN4QyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsSUFBSSxFQUFFLENBQUM7UUFDNUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUVwQyxtQkFBbUI7UUFDbkIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLENBQUM7UUFDdEQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsSUFBSSxFQUFFLENBQUM7UUFDeEQsSUFBSSxDQUFDLDhCQUE4QixHQUFHLE1BQU0sQ0FBQyw4QkFBOEIsSUFBSSxFQUFF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SSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVNLFFBQVEsQ0FBQyxPQUEwQjtRQUN4QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksU0FBUyxFQUFFLE9BQU8sRUFBRSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFFTSxhQUFhLENBQUMsT0FBMEI7UUFFN0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDbEIsR0FBRyxJQUFJLENBQUMsWUFBWSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDM0MsQ0FBQzs7MEdBM0dVLGFBQWE7OEdBQWIsYUFBYTsyRkFBYixhQUFhO2tCQUR6QixVQUFVOzswQkFpQk4sUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUmVxdWVzdCwgSHR0cEV2ZW50VHlwZSwgSHR0cFJlc3BvbnNlLCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFN1YmplY3QgLCAgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2VydmljZUNvbmZpZyB9IGZyb20gJy4uL21vZGVsL3NlcnZpY2UtY29uZmlnJztcbmltcG9ydCB7IEZpbGVVcGxvYWRSZXF1ZXN0IH0gZnJvbSAnLi4vbW9kZWwvZmlsZS11cGxvYWQtcmVxdWVzdCc7XG5pbXBvcnQgeyBEYXRhYmFzZUZpbGVJbmZvIH0gZnJvbSAnLi4vbW9kZWwvZGF0YWJhc2UtZmlsZS1pbmZvJztcbmltcG9ydCB7IEZpbGVzeXN0ZW1GaWxlSW5mbyB9IGZyb20gJy4uL21vZGVsL2ZpbGVzeXN0ZW0tZmlsZS1pbmZvJztcblxuLy8gaHR0cHM6Ly9tYWxjb2RlZC5jb20vcG9zdHMvYW5ndWxhci1maWxlLXVwbG9hZC1jb21wb25lbnQtd2l0aC1leHByZXNzXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBVcGxvYWRTZXJ2aWNlIHtcbiAgcHVibGljIHVwbG9hZEFwaVVybDogc3RyaW5nO1xuICBwdWJsaWMgdXBsb2FkUGF0aDogc3RyaW5nO1xuICBwdWJsaWMgZGJBcHBJZDogc3RyaW5nO1xuICBwdWJsaWMgZXh0ZXJuYWxSZWZlcmVuY2VJZDogc3RyaW5nO1xuICBwdWJsaWMgY29tbWVudDogc3RyaW5nO1xuXG4gIC8vIFVJIGNvbmZpZ3VyYXRpb25cbiAgcHVibGljIHVwbG9hZEJ1dHRvblRleHQ6IHN0cmluZztcbiAgcHVibGljIHVwbG9hZERpYWxvZ1RpdGxlOiBzdHJpbmc7XG4gIHB1YmxpYyB1cGxvYWREaWFsb2dBZGRGaWxlc0J1dHRvblRleHQ6IHN0cmluZztcbiAgcHVibGljIHVwbG9hZERpYWxvZ0NhbmNlbEJ1dHRvblRleHQ6IHN0cmluZztcbiAgcHVibGljIHVwbG9hZERpYWxvZ1VwbG9hZEJ1dHRvblRleHQ6IHN0cmluZztcbiAgcHVibGljIHVwbG9hZERpYWxvZ0ZpbmlzaEJ1dHRvblRleHQ6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgQE9wdGlvbmFsKCkgY29uZmlnOiBTZXJ2aWNlQ29uZmlnKSB7XG4gICAgICB0aGlzLnVwbG9hZEFwaVVybCA9IGNvbmZpZy51cGxvYWRBcGlVcmw7XG4gICAgICB0aGlzLnVwbG9hZFBhdGggPSBjb25maWcudXBsb2FkUGF0aCB8fCAnJztcbiAgICAgIHRoaXMuZGJBcHBJZCA9IGNvbmZpZy5kYkFwcElkIHx8ICcnO1xuICAgICAgdGhpcy5leHRlcm5hbFJlZmVyZW5jZUlkID0gY29uZmlnLmV4dGVybmFsUmVmZXJlbmNlSWQgfHwgJyc7XG4gICAgICB0aGlzLmNvbW1lbnQgPSBjb25maWcuY29tbWVudCB8fCAnJztcblxuICAgICAgLy8gVUkgY29uZmlndXJhdGlvblxuICAgICAgdGhpcy51cGxvYWRCdXR0b25UZXh0ID0gY29uZmlnLnVwbG9hZEJ1dHRvblRleHQgPz8gJyc7XG4gICAgICB0aGlzLnVwbG9hZERpYWxvZ1RpdGxlID0gY29uZmlnLnVwbG9hZERpYWxvZ1RpdGxlID8/ICcnO1xuICAgICAgdGhpcy51cGxvYWREaWFsb2dBZGRGaWxlc0J1dHRvblRleHQgPSBjb25maWcudXBsb2FkRGlhbG9nQWRkRmlsZXNCdXR0b25UZXh0ID8/ICcnO1xuICAgICAgdGhpcy51cGxvYWREaWFsb2dDYW5jZWxCdXR0b25UZXh0ID0gY29uZmlnLnVwbG9hZERpYWxvZ0NhbmNlbEJ1dHRvblRleHQgPz8gJyc7XG4gICAgICB0aGlzLnVwbG9hZERpYWxvZ1VwbG9hZEJ1dHRvblRleHQgPSBjb25maWcudXBsb2FkRGlhbG9nVXBsb2FkQnV0dG9uVGV4dCA/PyAnJztcbiAgICAgIHRoaXMudXBsb2FkRGlhbG9nRmluaXNoQnV0dG9uVGV4dCA9IGNvbmZpZy51cGxvYWREaWFsb2dGaW5pc2hCdXR0b25UZXh0ID8/ICcnO1xuICAgIH1cblxuICBwdWJsaWMgdXBsb2FkKGZpbGVzOiBTZXQ8RmlsZT4pOiBhbnkgeyAvLyB7W2tleTogc3RyaW5nXTogT2JzZXJ2YWJsZTxudW1iZXI+fSB7XG4gICAgLy8gdGhpcyB3aWxsIGJlIHRoZSBvdXIgcmVzdWx0aW5nIG1hcFxuICAgIGNvbnN0IHN0YXR1czoge1trZXk6IHN0cmluZ106IHtwcm9ncmVzczogT2JzZXJ2YWJsZTxudW1iZXI+fX0gPSB7fTtcblxuICAgIGZpbGVzLmZvckVhY2goZmlsZSA9PiB7XG4gICAgICAvLyBjcmVhdGUgYSBuZXcgbXVsdGlwYXJ0LWZvcm0gZm9yIGV2ZXJ5IGZpbGVcbiAgICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlJywgZmlsZSwgZmlsZS5uYW1lKTtcblxuICAgICAgLy8gY3JlYXRlIGEgaHR0cC1wb3N0IHJlcXVlc3QgYW5kIHBhc3MgdGhlIGZvcm1cbiAgICAgIC8vIHRlbGwgaXQgdG8gcmVwb3J0IHRoZSB1cGxvYWQgcHJvZ3Jlc3NcblxuICAgICAgLy8gQSAnRGVzdGluYXRpb24nIGhlYWRlciBpcyB1c2VkIHRvIG9wdGlvbmFsbHkgY29uZmlndXJlIHRoZSBmaWxlIHVwbG9hZCBkZXN0aW5hdGlvbiAoZmlsZXN5c3RlbSlcbiAgICAgIC8vIEEgJ0RiQXBwSWQnIGhlYWRlciBpcyB1c2VkIHRvIGNvbmZpZ3VyZSB0aGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgZGF0YWJhc2UgdXBsb2Fkc1xuICAgICAgY29uc3QgcmVxID0gbmV3IEh0dHBSZXF1ZXN0KCdQT1NUJywgdGhpcy51cGxvYWRBcGlVcmwsIGZvcm1EYXRhLCB7XG4gICAgICAgIHJlcG9ydFByb2dyZXNzOiB0cnVlLFxuICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKClcbiAgICAgICAgICAuc2V0KCdEZXN0aW5hdGlvbicsIHRoaXMudXBsb2FkUGF0aClcbiAgICAgICAgICAuc2V0KCdEYkFwcElkJywgdGhpcy5kYkFwcElkKVxuICAgICAgICAgIC5zZXQoJ0V4dGVybmFsUmVmZXJlbmNlSWQnLCB0aGlzLmV4dGVybmFsUmVmZXJlbmNlSWQpXG4gICAgICAgICAgLnNldCgnQ29tbWVudCcsIHRoaXMuY29tbWVudClcbiAgICAgICAgLypoZWFkZXJzOiB0aGlzLnVwbG9hZFBhdGggP1xuICAgICAgICAgIG5ldyBIdHRwSGVhZGVycyh7ICdEZXN0aW5hdGlvbic6IHRoaXMudXBsb2FkUGF0aCB9KSA6XG4gICAgICAgICAgdGhpcy5kYkFwcElkID9cbiAgICAgICAgICAgIG5ldyBIdHRwSGVhZGVycyh7ICdEYkFwcElkJzogdGhpcy5kYkFwcElkIH0pIDpcbiAgICAgICAgICAgIG51bGwqL1xuICAgICAgfSk7XG5cbiAgICAgIC8vIGNyZWF0ZSBhIG5ldyBwcm9ncmVzcy1zdWJqZWN0IGZvciBldmVyeSBmaWxlXG4gICAgICBjb25zdCBwcm9ncmVzcyA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcblxuICAgICAgLy8gc2VuZCB0aGUgaHR0cC1yZXF1ZXN0IGFuZCBzdWJzY3JpYmUgZm9yIHByb2dyZXNzLXVwZGF0ZXNcbiAgICAgIHRoaXMuaHR0cC5yZXF1ZXN0KHJlcSkuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEh0dHBFdmVudFR5cGUuVXBsb2FkUHJvZ3Jlc3MpIHtcblxuICAgICAgICAgIC8vIGNhbGN1bGF0ZSB0aGUgcHJvZ3Jlc3MgcGVyY2VudGFnZVxuICAgICAgICAgIGNvbnN0IHBlcmNlbnREb25lID0gTWF0aC5yb3VuZCgxMDAgKiBldmVudC5sb2FkZWQgLyAoZXZlbnQudG90YWwgPz8gMSkpO1xuXG4gICAgICAgICAgLy8gcGFzcyB0aGUgcGVyY2VudGFnZSBpbnRvIHRoZSBwcm9ncmVzcy1zdHJlYW1cbiAgICAgICAgICBwcm9ncmVzcy5uZXh0KHBlcmNlbnREb25lKTtcbiAgICAgICAgfSBlbHNlIGlmIChldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSkge1xuXG4gICAgICAgICAgLy8gQ2xvc2UgdGhlIHByb2dyZXNzLXN0cmVhbSBpZiB3ZSBnZXQgYW4gYW5zd2VyIGZvcm0gdGhlIEFQSVxuICAgICAgICAgIC8vIFRoZSB1cGxvYWQgaXMgY29tcGxldGVcbiAgICAgICAgICBwcm9ncmVzcy5jb21wbGV0ZSgpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgLy8gU2F2ZSBldmVyeSBwcm9ncmVzcy1vYnNlcnZhYmxlIGluIGEgbWFwIG9mIGFsbCBvYnNlcnZhYmxlc1xuICAgICAgc3RhdHVzW2ZpbGUubmFtZV0gPSB7XG4gICAgICAgIHByb2dyZXNzOiBwcm9ncmVzcy5hc09ic2VydmFibGUoKVxuICAgICAgfTtcbiAgICB9KTtcblxuICAgIC8vIHJldHVybiB0aGUgbWFwIG9mIHByb2dyZXNzLm9ic2VydmFibGVzXG4gICAgcmV0dXJuIHN0YXR1cztcbiAgfVxuXG4gIHB1YmxpYyBleGlzdHMoZmlsZU5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy51cGxvYWRBcGlVcmwudG9Mb3dlckNhc2UoKS5pbmRleE9mKCdmaWxlc3lzdGVtJykgPT09IC0xID9cbiAgICAgIHsgbmFtZTogZmlsZU5hbWUsIGRiQXBwSWQ6IHRoaXMuZGJBcHBJZCB9IDpcbiAgICAgIHsgbmFtZTogZmlsZU5hbWUsIGRlc3RpbmF0aW9uOiB0aGlzLnVwbG9hZFBhdGggfTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxib29sZWFuPihgJHt0aGlzLnVwbG9hZEFwaVVybH0vZXhpc3RzYCwgcXVlcnkpO1xuICB9XG5cbiAgcHVibGljIGRvd25sb2FkKHJlcXVlc3Q6IEZpbGVVcGxvYWRSZXF1ZXN0KTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMudXBsb2FkQXBpVXJsfS9zdHJlYW1gLCByZXF1ZXN0LCB7IHJlc3BvbnNlVHlwZTogJ2Jsb2InIH0pO1xuICB9XG5cbiAgcHVibGljIGdldFVwbG9hZEluZm8ocmVxdWVzdDogRmlsZVVwbG9hZFJlcXVlc3QpOlxuICAgIE9ic2VydmFibGU8RGF0YWJhc2VGaWxlSW5mbyB8IERhdGFiYXNlRmlsZUluZm9bXSB8IEZpbGVzeXN0ZW1GaWxlSW5mbyB8IEZpbGVzeXN0ZW1GaWxlSW5mb1tdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PERhdGFiYXNlRmlsZUluZm8gfCBEYXRhYmFzZUZpbGVJbmZvW10gfCBGaWxlc3lzdGVtRmlsZUluZm8gfCBGaWxlc3lzdGVtRmlsZUluZm9bXT5cbiAgICAgIChgJHt0aGlzLnVwbG9hZEFwaVVybH0vaW5mb2AsIHJlcXVlc3QpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { NgModule, Optional, SkipSelf } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { MatDialogModule } from '@angular/material/dialog';
|
|
4
|
+
import { MatListModule } from '@angular/material/list';
|
|
5
|
+
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
6
|
+
import { UploadComponent } from './components/upload/upload.component';
|
|
7
|
+
import { UploadDialogComponent } from './components/upload-dialog/upload-dialog.component';
|
|
8
|
+
import { ServiceConfig } from './model/service-config';
|
|
9
|
+
import { UploadService } from './services/upload.service';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
export class UploadModule {
|
|
12
|
+
constructor(parentModule) {
|
|
13
|
+
if (parentModule) {
|
|
14
|
+
throw new Error('UploadModule is already loaded. Import it in the AppModule only');
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
static forRoot(uploadConfig) {
|
|
18
|
+
return {
|
|
19
|
+
ngModule: UploadModule,
|
|
20
|
+
providers: [
|
|
21
|
+
UploadService,
|
|
22
|
+
{ provide: ServiceConfig, useValue: uploadConfig }
|
|
23
|
+
]
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
UploadModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UploadModule, deps: [{ token: UploadModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule });
|
|
28
|
+
UploadModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: UploadModule, declarations: [UploadComponent,
|
|
29
|
+
UploadDialogComponent], imports: [CommonModule,
|
|
30
|
+
MatDialogModule,
|
|
31
|
+
MatListModule,
|
|
32
|
+
MatProgressBarModule], exports: [UploadComponent,
|
|
33
|
+
UploadDialogComponent] });
|
|
34
|
+
UploadModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UploadModule, imports: [CommonModule,
|
|
35
|
+
MatDialogModule,
|
|
36
|
+
MatListModule,
|
|
37
|
+
MatProgressBarModule] });
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UploadModule, decorators: [{
|
|
39
|
+
type: NgModule,
|
|
40
|
+
args: [{
|
|
41
|
+
declarations: [
|
|
42
|
+
UploadComponent,
|
|
43
|
+
UploadDialogComponent
|
|
44
|
+
],
|
|
45
|
+
imports: [
|
|
46
|
+
CommonModule,
|
|
47
|
+
MatDialogModule,
|
|
48
|
+
MatListModule,
|
|
49
|
+
MatProgressBarModule
|
|
50
|
+
],
|
|
51
|
+
exports: [
|
|
52
|
+
UploadComponent,
|
|
53
|
+
UploadDialogComponent
|
|
54
|
+
]
|
|
55
|
+
}]
|
|
56
|
+
}], ctorParameters: function () { return [{ type: UploadModule, decorators: [{
|
|
57
|
+
type: Optional
|
|
58
|
+
}, {
|
|
59
|
+
type: SkipSelf
|
|
60
|
+
}] }]; } });
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvdXBsb2FkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQWtCMUQsTUFBTSxPQUFPLFlBQVk7SUFXckIsWUFBb0MsWUFBMEI7UUFDNUQsSUFBSSxZQUFZLEVBQUU7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FDYixpRUFBaUUsQ0FBQyxDQUFDO1NBQ3RFO0lBQ0gsQ0FBQztJQWZILE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBMkI7UUFDdEMsT0FBTztZQUNMLFFBQVEsRUFBRSxZQUFZO1lBQ3RCLFNBQVMsRUFBRTtnQkFDVCxhQUFhO2dCQUNiLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFO2FBQ25EO1NBQ0YsQ0FBQztJQUNKLENBQUM7O3lHQVRRLFlBQVksa0JBVzZCLFlBQVk7MEdBWHJELFlBQVksaUJBZHJCLGVBQWU7UUFDZixxQkFBcUIsYUFHckIsWUFBWTtRQUNaLGVBQWU7UUFDZixhQUFhO1FBQ2Isb0JBQW9CLGFBR3BCLGVBQWU7UUFDZixxQkFBcUI7MEdBR1osWUFBWSxZQVZyQixZQUFZO1FBQ1osZUFBZTtRQUNmLGFBQWE7UUFDYixvQkFBb0I7MkZBT1gsWUFBWTtrQkFoQnhCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGVBQWU7d0JBQ2YscUJBQXFCO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGFBQWE7d0JBQ2Isb0JBQW9CO3FCQUNyQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZUFBZTt3QkFDZixxQkFBcUI7cUJBQ3RCO2lCQUNGOzBEQVlxRCxZQUFZOzBCQUFqRCxRQUFROzswQkFBSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIE9wdGlvbmFsLCBTa2lwU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcblxuaW1wb3J0IHsgVXBsb2FkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3VwbG9hZC91cGxvYWQuY29tcG9uZW50JztcbmltcG9ydCB7IFVwbG9hZERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy91cGxvYWQtZGlhbG9nL3VwbG9hZC1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IFNlcnZpY2VDb25maWcgfSBmcm9tICcuL21vZGVsL3NlcnZpY2UtY29uZmlnJztcbmltcG9ydCB7IFVwbG9hZFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3VwbG9hZC5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVXBsb2FkQ29tcG9uZW50LFxuICAgIFVwbG9hZERpYWxvZ0NvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdERpYWxvZ01vZHVsZSxcbiAgICBNYXRMaXN0TW9kdWxlLFxuICAgIE1hdFByb2dyZXNzQmFyTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBVcGxvYWRDb21wb25lbnQsXG4gICAgVXBsb2FkRGlhbG9nQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVXBsb2FkTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QodXBsb2FkQ29uZmlnOiBTZXJ2aWNlQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxVcGxvYWRNb2R1bGU+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG5nTW9kdWxlOiBVcGxvYWRNb2R1bGUsXG4gICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgIFVwbG9hZFNlcnZpY2UsXG4gICAgICAgICAgeyBwcm92aWRlOiBTZXJ2aWNlQ29uZmlnLCB1c2VWYWx1ZTogdXBsb2FkQ29uZmlnIH1cbiAgICAgICAgXVxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBwYXJlbnRNb2R1bGU6IFVwbG9hZE1vZHVsZSkge1xuICAgICAgaWYgKHBhcmVudE1vZHVsZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgJ1VwbG9hZE1vZHVsZSBpcyBhbHJlYWR5IGxvYWRlZC4gSW1wb3J0IGl0IGluIHRoZSBBcHBNb2R1bGUgb25seScpO1xuICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public_api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXZlbGFuZHByaWNlLW5neC1saWItdXJsLXV0aWxpdGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VybC11dGlsaXRpZXMvc3JjL2NsZWF2ZWxhbmRwcmljZS1uZ3gtbGliLXVybC11dGlsaXRpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/platform-browser";
|
|
4
|
+
export class SafeResourceUrlPipe {
|
|
5
|
+
constructor(domSanitizer) {
|
|
6
|
+
this.domSanitizer = domSanitizer;
|
|
7
|
+
}
|
|
8
|
+
transform(value) {
|
|
9
|
+
return this.domSanitizer.bypassSecurityTrustResourceUrl(value);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
SafeResourceUrlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SafeResourceUrlPipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
13
|
+
SafeResourceUrlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: SafeResourceUrlPipe, name: "safeResourceUrl" });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SafeResourceUrlPipe, decorators: [{
|
|
15
|
+
type: Pipe,
|
|
16
|
+
args: [{
|
|
17
|
+
name: 'safeResourceUrl'
|
|
18
|
+
}]
|
|
19
|
+
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; } });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS1yZXNvdXJjZS11cmwucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VybC11dGlsaXRpZXMvc3JjL3BpcGVzL3NhZmUtcmVzb3VyY2UtdXJsLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7OztBQU1wRCxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFlBQW9CLFlBQTBCO1FBQTFCLGlCQUFZLEdBQVosWUFBWSxDQUFjO0lBQUksQ0FBQztJQUVuRCxTQUFTLENBQUMsS0FBYTtRQUNyQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsOEJBQThCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakUsQ0FBQzs7Z0hBTFUsbUJBQW1COzhHQUFuQixtQkFBbUI7MkZBQW5CLG1CQUFtQjtrQkFIL0IsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsaUJBQWlCO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVVybCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdzYWZlUmVzb3VyY2VVcmwnXG59KVxuZXhwb3J0IGNsYXNzIFNhZmVSZXNvdXJjZVVybFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkb21TYW5pdGl6ZXI6IERvbVNhbml0aXplcikgeyB9XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBTYWZlVXJsIHtcbiAgICByZXR1cm4gdGhpcy5kb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHZhbHVlKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/platform-browser";
|
|
4
|
+
export class SafeUrlPipe {
|
|
5
|
+
constructor(domSanitizer) {
|
|
6
|
+
this.domSanitizer = domSanitizer;
|
|
7
|
+
}
|
|
8
|
+
transform(value) {
|
|
9
|
+
return this.domSanitizer.bypassSecurityTrustUrl(value);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
SafeUrlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SafeUrlPipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
13
|
+
SafeUrlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: SafeUrlPipe, name: "safeUrl" });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SafeUrlPipe, decorators: [{
|
|
15
|
+
type: Pipe,
|
|
16
|
+
args: [{
|
|
17
|
+
name: 'safeUrl'
|
|
18
|
+
}]
|
|
19
|
+
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; } });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS11cmwucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VybC11dGlsaXRpZXMvc3JjL3BpcGVzL3NhZmUtdXJsLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7OztBQU1wRCxNQUFNLE9BQU8sV0FBVztJQUV0QixZQUFvQixZQUEwQjtRQUExQixpQkFBWSxHQUFaLFlBQVksQ0FBYztJQUFJLENBQUM7SUFFbkQsU0FBUyxDQUFDLEtBQWE7UUFDckIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7O3dHQU5VLFdBQVc7c0dBQVgsV0FBVzsyRkFBWCxXQUFXO2tCQUh2QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxTQUFTO2lCQUNoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVVybCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdzYWZlVXJsJ1xufSlcbmV4cG9ydCBjbGFzcyBTYWZlVXJsUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZG9tU2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHsgfVxuXG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogU2FmZVVybCB7XG4gICAgcmV0dXJuIHRoaXMuZG9tU2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RVcmwodmFsdWUpO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class UriSchemePipe {
|
|
4
|
+
// https://docs.microsoft.com/en-us/office/client-developer/office-uri-schemes
|
|
5
|
+
transform(value, ignoreLocalStorage = false) {
|
|
6
|
+
if (!localStorage.getItem('useUriScheme') && !ignoreLocalStorage) {
|
|
7
|
+
return value;
|
|
8
|
+
}
|
|
9
|
+
const urlSplit = value.split('.');
|
|
10
|
+
const extension = urlSplit[urlSplit.length - 1];
|
|
11
|
+
if (!extension) {
|
|
12
|
+
return value;
|
|
13
|
+
}
|
|
14
|
+
const command = this.command(extension);
|
|
15
|
+
const app = this.app(extension);
|
|
16
|
+
return `ms-${app}:${command}|u|${value}`;
|
|
17
|
+
}
|
|
18
|
+
app(extension) {
|
|
19
|
+
switch (extension.toLowerCase()) {
|
|
20
|
+
// documents
|
|
21
|
+
case 'doc':
|
|
22
|
+
case 'docx':
|
|
23
|
+
case 'docm':
|
|
24
|
+
case 'docb':
|
|
25
|
+
case 'dot':
|
|
26
|
+
case 'dotx':
|
|
27
|
+
case 'dotm': // templates
|
|
28
|
+
return 'word';
|
|
29
|
+
case 'xls':
|
|
30
|
+
case 'xlsx':
|
|
31
|
+
case 'xlm':
|
|
32
|
+
case 'xlsm':
|
|
33
|
+
case 'xlsb':
|
|
34
|
+
case 'xlw':
|
|
35
|
+
case 'xlt':
|
|
36
|
+
case 'xltx':
|
|
37
|
+
case 'xltm': // templates
|
|
38
|
+
return 'excel';
|
|
39
|
+
case 'ppt':
|
|
40
|
+
case 'pptx':
|
|
41
|
+
case 'pps':
|
|
42
|
+
case 'ppsx':
|
|
43
|
+
case 'pptm':
|
|
44
|
+
case 'ppsm':
|
|
45
|
+
case 'sldx':
|
|
46
|
+
case 'sldm':
|
|
47
|
+
case 'pot':
|
|
48
|
+
case 'potx':
|
|
49
|
+
case 'potm': // templates
|
|
50
|
+
return 'powerpoint';
|
|
51
|
+
case 'vsd':
|
|
52
|
+
case 'vsdx':
|
|
53
|
+
case 'vst':
|
|
54
|
+
case 'vstx': // templates
|
|
55
|
+
return 'visio';
|
|
56
|
+
case 'mdb':
|
|
57
|
+
case 'accdb':
|
|
58
|
+
case 'accde':
|
|
59
|
+
case 'accdr':
|
|
60
|
+
case 'accdt': // templates
|
|
61
|
+
return 'access';
|
|
62
|
+
case 'mpp':
|
|
63
|
+
case 'mppx':
|
|
64
|
+
case 'mpt': // templates
|
|
65
|
+
return 'project';
|
|
66
|
+
case 'pub':
|
|
67
|
+
return 'publisher';
|
|
68
|
+
case 'xsn':
|
|
69
|
+
return 'infopath';
|
|
70
|
+
default:
|
|
71
|
+
return '';
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
command(extension) {
|
|
75
|
+
switch (extension.toLowerCase()) {
|
|
76
|
+
case 'dot':
|
|
77
|
+
case 'dotx':
|
|
78
|
+
case 'dotm':
|
|
79
|
+
case 'xlt':
|
|
80
|
+
case 'xltx':
|
|
81
|
+
case 'xltm':
|
|
82
|
+
case 'pot':
|
|
83
|
+
case 'potx':
|
|
84
|
+
case 'potm':
|
|
85
|
+
case 'vst':
|
|
86
|
+
case 'vstx':
|
|
87
|
+
case 'accdt':
|
|
88
|
+
case 'mpt':
|
|
89
|
+
return 'nft'; // new from template
|
|
90
|
+
default:
|
|
91
|
+
const openMode = 'v'; // for view, or 'e' or edit
|
|
92
|
+
return `of${openMode}`; // default: open file as view/edit
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
UriSchemePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UriSchemePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
97
|
+
UriSchemePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: UriSchemePipe, name: "uriScheme", pure: false });
|
|
98
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UriSchemePipe, decorators: [{
|
|
99
|
+
type: Pipe,
|
|
100
|
+
args: [{
|
|
101
|
+
name: 'uriScheme',
|
|
102
|
+
pure: false
|
|
103
|
+
}]
|
|
104
|
+
}] });
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJpLXNjaGVtZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvdXJsLXV0aWxpdGllcy9zcmMvcGlwZXMvdXJpLXNjaGVtZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8sYUFBYTtJQUN4Qiw4RUFBOEU7SUFFOUUsU0FBUyxDQUFDLEtBQWEsRUFBRSxrQkFBa0IsR0FBRyxLQUFLO1FBQ2pELElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFBRSxPQUFPLEtBQUssQ0FBQztTQUFFO1FBRW5GLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEMsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFaEQsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUFFLE9BQU8sS0FBSyxDQUFDO1NBQUU7UUFFakMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRWhDLE9BQU8sTUFBTSxHQUFHLElBQUksT0FBTyxNQUFNLEtBQUssRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFTyxHQUFHLENBQUMsU0FBaUI7UUFDM0IsUUFBUSxTQUFTLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDL0IsWUFBWTtZQUNaLEtBQUssS0FBSyxDQUFDO1lBQUMsS0FBSyxNQUFNLENBQUM7WUFDeEIsS0FBSyxNQUFNLENBQUM7WUFBQyxLQUFLLE1BQU0sQ0FBQztZQUN6QixLQUFLLEtBQUssQ0FBQztZQUFDLEtBQUssTUFBTSxDQUFDO1lBQUMsS0FBSyxNQUFNLEVBQUUsWUFBWTtnQkFDaEQsT0FBTyxNQUFNLENBQUM7WUFDaEIsS0FBSyxLQUFLLENBQUM7WUFBQyxLQUFLLE1BQU0sQ0FBQztZQUN4QixLQUFLLEtBQUssQ0FBQztZQUFDLEtBQUssTUFBTSxDQUFDO1lBQUMsS0FBSyxNQUFNLENBQUM7WUFBQyxLQUFLLEtBQUssQ0FBQztZQUNqRCxLQUFLLEtBQUssQ0FBQztZQUFDLEtBQUssTUFBTSxDQUFDO1lBQUMsS0FBSyxNQUFNLEVBQUUsWUFBWTtnQkFDaEQsT0FBTyxPQUFPLENBQUM7WUFDakIsS0FBSyxLQUFLLENBQUM7WUFBQyxLQUFLLE1BQU0sQ0FBQztZQUN4QixLQUFLLEtBQUssQ0FBQztZQUFDLEtBQUssTUFBTSxDQUFDO1lBQUMsS0FBSyxNQUFNLENBQUM7WUFBQyxLQUFLLE1BQU0sQ0FBQztZQUNsRCxLQUFLLE1BQU0sQ0FBQztZQUFDLEtBQUssTUFBTSxDQUFDO1lBQ3pCLEtBQUssS0FBSyxDQUFDO1lBQUMsS0FBSyxNQUFNLENBQUM7WUFBQyxLQUFLLE1BQU0sRUFBRSxZQUFZO2dCQUNoRCxPQUFPLFlBQVksQ0FBQztZQUN0QixLQUFLLEtBQUssQ0FBQztZQUFDLEtBQUssTUFBTSxDQUFDO1lBQ3hCLEtBQUssS0FBSyxDQUFDO1lBQUMsS0FBSyxNQUFNLEVBQUUsWUFBWTtnQkFDbkMsT0FBTyxPQUFPLENBQUM7WUFDakIsS0FBSyxLQUFLLENBQUM7WUFBQyxLQUFLLE9BQU8sQ0FBQztZQUFDLEtBQUssT0FBTyxDQUFDO1lBQUMsS0FBSyxPQUFPLENBQUM7WUFDckQsS0FBSyxPQUFPLEVBQUUsWUFBWTtnQkFDeEIsT0FBTyxRQUFRLENBQUM7WUFDbEIsS0FBSyxLQUFLLENBQUM7WUFBQyxLQUFLLE1BQU0sQ0FBQztZQUN4QixLQUFLLEtBQUssRUFBRSxZQUFZO2dCQUN0QixPQUFPLFNBQVMsQ0FBQztZQUNuQixLQUFLLEtBQUs7Z0JBQ1IsT0FBTyxXQUFXLENBQUM7WUFDckIsS0FBSyxLQUFLO2dCQUNSLE9BQU8sVUFBVSxDQUFDO1lBQ3BCO2dCQUNFLE9BQU8sRUFBRSxDQUFDO1NBQ2I7SUFDSCxDQUFDO0lBRU8sT0FBTyxDQUFDLFNBQWlCO1FBQy9CLFFBQVEsU0FBUyxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQy9CLEtBQUssS0FBSyxDQUFDO1lBQUMsS0FBSyxNQUFNLENBQUM7WUFBQyxLQUFLLE1BQU0sQ0FBQztZQUNyQyxLQUFLLEtBQUssQ0FBQztZQUFDLEtBQUssTUFBTSxDQUFDO1lBQUMsS0FBSyxNQUFNLENBQUM7WUFDckMsS0FBSyxLQUFLLENBQUM7WUFBQyxLQUFLLE1BQU0sQ0FBQztZQUFDLEtBQUssTUFBTSxDQUFDO1lBQ3JDLEtBQUssS0FBSyxDQUFDO1lBQUMsS0FBSyxNQUFNLENBQUM7WUFDeEIsS0FBSyxPQUFPLENBQUM7WUFDYixLQUFLLEtBQUs7Z0JBQ1IsT0FBTyxLQUFLLENBQUMsQ0FBQyxvQkFBb0I7WUFDcEM7Z0JBQ0UsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLENBQUMsMkJBQTJCO2dCQUNqRCxPQUFPLEtBQUssUUFBUSxFQUFFLENBQUMsQ0FBQyxrQ0FBa0M7U0FDN0Q7SUFDSCxDQUFDOzswR0FoRVUsYUFBYTt3R0FBYixhQUFhOzJGQUFiLGFBQWE7a0JBSnpCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFdBQVc7b0JBQ2pCLElBQUksRUFBRSxLQUFLO2lCQUNaIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICd1cmlTY2hlbWUnLFxuICBwdXJlOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBVcmlTY2hlbWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIC8vIGh0dHBzOi8vZG9jcy5taWNyb3NvZnQuY29tL2VuLXVzL29mZmljZS9jbGllbnQtZGV2ZWxvcGVyL29mZmljZS11cmktc2NoZW1lc1xuXG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nLCBpZ25vcmVMb2NhbFN0b3JhZ2UgPSBmYWxzZSk6IHN0cmluZyB7XG4gICAgaWYgKCFsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndXNlVXJpU2NoZW1lJykgJiYgIWlnbm9yZUxvY2FsU3RvcmFnZSkgeyByZXR1cm4gdmFsdWU7IH1cblxuICAgIGNvbnN0IHVybFNwbGl0ID0gdmFsdWUuc3BsaXQoJy4nKTtcbiAgICBjb25zdCBleHRlbnNpb24gPSB1cmxTcGxpdFt1cmxTcGxpdC5sZW5ndGggLSAxXTtcblxuICAgIGlmICghZXh0ZW5zaW9uKSB7IHJldHVybiB2YWx1ZTsgfVxuXG4gICAgY29uc3QgY29tbWFuZCA9IHRoaXMuY29tbWFuZChleHRlbnNpb24pO1xuICAgIGNvbnN0IGFwcCA9IHRoaXMuYXBwKGV4dGVuc2lvbik7XG5cbiAgICByZXR1cm4gYG1zLSR7YXBwfToke2NvbW1hbmR9fHV8JHt2YWx1ZX1gO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHAoZXh0ZW5zaW9uOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAoZXh0ZW5zaW9uLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgIC8vIGRvY3VtZW50c1xuICAgICAgY2FzZSAnZG9jJzogY2FzZSAnZG9jeCc6XG4gICAgICBjYXNlICdkb2NtJzogY2FzZSAnZG9jYic6XG4gICAgICBjYXNlICdkb3QnOiBjYXNlICdkb3R4JzogY2FzZSAnZG90bSc6IC8vIHRlbXBsYXRlc1xuICAgICAgICByZXR1cm4gJ3dvcmQnO1xuICAgICAgY2FzZSAneGxzJzogY2FzZSAneGxzeCc6XG4gICAgICBjYXNlICd4bG0nOiBjYXNlICd4bHNtJzogY2FzZSAneGxzYic6IGNhc2UgJ3hsdyc6XG4gICAgICBjYXNlICd4bHQnOiBjYXNlICd4bHR4JzogY2FzZSAneGx0bSc6IC8vIHRlbXBsYXRlc1xuICAgICAgICByZXR1cm4gJ2V4Y2VsJztcbiAgICAgIGNhc2UgJ3BwdCc6IGNhc2UgJ3BwdHgnOlxuICAgICAgY2FzZSAncHBzJzogY2FzZSAncHBzeCc6IGNhc2UgJ3BwdG0nOiBjYXNlICdwcHNtJzpcbiAgICAgIGNhc2UgJ3NsZHgnOiBjYXNlICdzbGRtJzpcbiAgICAgIGNhc2UgJ3BvdCc6IGNhc2UgJ3BvdHgnOiBjYXNlICdwb3RtJzogLy8gdGVtcGxhdGVzXG4gICAgICAgIHJldHVybiAncG93ZXJwb2ludCc7XG4gICAgICBjYXNlICd2c2QnOiBjYXNlICd2c2R4JzpcbiAgICAgIGNhc2UgJ3ZzdCc6IGNhc2UgJ3ZzdHgnOiAvLyB0ZW1wbGF0ZXNcbiAgICAgICAgcmV0dXJuICd2aXNpbyc7XG4gICAgICBjYXNlICdtZGInOiBjYXNlICdhY2NkYic6IGNhc2UgJ2FjY2RlJzogY2FzZSAnYWNjZHInOlxuICAgICAgY2FzZSAnYWNjZHQnOiAvLyB0ZW1wbGF0ZXNcbiAgICAgICAgcmV0dXJuICdhY2Nlc3MnO1xuICAgICAgY2FzZSAnbXBwJzogY2FzZSAnbXBweCc6XG4gICAgICBjYXNlICdtcHQnOiAvLyB0ZW1wbGF0ZXNcbiAgICAgICAgcmV0dXJuICdwcm9qZWN0JztcbiAgICAgIGNhc2UgJ3B1Yic6XG4gICAgICAgIHJldHVybiAncHVibGlzaGVyJztcbiAgICAgIGNhc2UgJ3hzbic6XG4gICAgICAgIHJldHVybiAnaW5mb3BhdGgnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY29tbWFuZChleHRlbnNpb246IHN0cmluZyk6IHN0cmluZyB7XG4gICAgc3dpdGNoIChleHRlbnNpb24udG9Mb3dlckNhc2UoKSkge1xuICAgICAgY2FzZSAnZG90JzogY2FzZSAnZG90eCc6IGNhc2UgJ2RvdG0nOlxuICAgICAgY2FzZSAneGx0JzogY2FzZSAneGx0eCc6IGNhc2UgJ3hsdG0nOlxuICAgICAgY2FzZSAncG90JzogY2FzZSAncG90eCc6IGNhc2UgJ3BvdG0nOlxuICAgICAgY2FzZSAndnN0JzogY2FzZSAndnN0eCc6XG4gICAgICBjYXNlICdhY2NkdCc6XG4gICAgICBjYXNlICdtcHQnOlxuICAgICAgICByZXR1cm4gJ25mdCc7IC8vIG5ldyBmcm9tIHRlbXBsYXRlXG4gICAgICBkZWZhdWx0OlxuICAgICAgICBjb25zdCBvcGVuTW9kZSA9ICd2JzsgLy8gZm9yIHZpZXcsIG9yICdlJyBvciBlZGl0XG4gICAgICAgIHJldHVybiBgb2Yke29wZW5Nb2RlfWA7IC8vIGRlZmF1bHQ6IG9wZW4gZmlsZSBhcyB2aWV3L2VkaXRcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from './pipes/safe-resource-url.pipe';
|
|
2
|
+
export * from './pipes/safe-url.pipe';
|
|
3
|
+
export * from './pipes/uri-scheme.pipe';
|
|
4
|
+
export * from './url-utilities.module';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VybC11dGlsaXRpZXMvc3JjL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMseUJBQXlCLENBQUM7QUFFeEMsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcGlwZXMvc2FmZS1yZXNvdXJjZS11cmwucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvc2FmZS11cmwucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvdXJpLXNjaGVtZS5waXBlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vdXJsLXV0aWxpdGllcy5tb2R1bGUnOyJdfQ==
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { SafeResourceUrlPipe } from './pipes/safe-resource-url.pipe';
|
|
4
|
+
import { SafeUrlPipe } from './pipes/safe-url.pipe';
|
|
5
|
+
import { UriSchemePipe } from './pipes/uri-scheme.pipe';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class UrlUtilitiesModule {
|
|
8
|
+
}
|
|
9
|
+
UrlUtilitiesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UrlUtilitiesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
|
+
UrlUtilitiesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: UrlUtilitiesModule, declarations: [SafeResourceUrlPipe,
|
|
11
|
+
SafeUrlPipe,
|
|
12
|
+
UriSchemePipe], imports: [CommonModule], exports: [SafeResourceUrlPipe,
|
|
13
|
+
SafeUrlPipe,
|
|
14
|
+
UriSchemePipe] });
|
|
15
|
+
UrlUtilitiesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UrlUtilitiesModule, imports: [CommonModule] });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: UrlUtilitiesModule, decorators: [{
|
|
17
|
+
type: NgModule,
|
|
18
|
+
args: [{
|
|
19
|
+
declarations: [
|
|
20
|
+
SafeResourceUrlPipe,
|
|
21
|
+
SafeUrlPipe,
|
|
22
|
+
UriSchemePipe
|
|
23
|
+
],
|
|
24
|
+
imports: [
|
|
25
|
+
CommonModule
|
|
26
|
+
],
|
|
27
|
+
exports: [
|
|
28
|
+
SafeResourceUrlPipe,
|
|
29
|
+
SafeUrlPipe,
|
|
30
|
+
UriSchemePipe
|
|
31
|
+
]
|
|
32
|
+
}]
|
|
33
|
+
}] });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXV0aWxpdGllcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi91cmwtdXRpbGl0aWVzL3NyYy91cmwtdXRpbGl0aWVzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQWlCeEQsTUFBTSxPQUFPLGtCQUFrQjs7K0dBQWxCLGtCQUFrQjtnSEFBbEIsa0JBQWtCLGlCQWIzQixtQkFBbUI7UUFDbkIsV0FBVztRQUNYLGFBQWEsYUFHYixZQUFZLGFBR1osbUJBQW1CO1FBQ25CLFdBQVc7UUFDWCxhQUFhO2dIQUdKLGtCQUFrQixZQVIzQixZQUFZOzJGQVFILGtCQUFrQjtrQkFmOUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQixXQUFXO3dCQUNYLGFBQWE7cUJBQ2Q7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsV0FBVzt3QkFDWCxhQUFhO3FCQUNkO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IFNhZmVSZXNvdXJjZVVybFBpcGUgfSBmcm9tICcuL3BpcGVzL3NhZmUtcmVzb3VyY2UtdXJsLnBpcGUnO1xuaW1wb3J0IHsgU2FmZVVybFBpcGUgfSBmcm9tICcuL3BpcGVzL3NhZmUtdXJsLnBpcGUnO1xuaW1wb3J0IHsgVXJpU2NoZW1lUGlwZSB9IGZyb20gJy4vcGlwZXMvdXJpLXNjaGVtZS5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2FmZVJlc291cmNlVXJsUGlwZSxcbiAgICBTYWZlVXJsUGlwZSxcbiAgICBVcmlTY2hlbWVQaXBlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFNhZmVSZXNvdXJjZVVybFBpcGUsXG4gICAgU2FmZVVybFBpcGUsXG4gICAgVXJpU2NoZW1lUGlwZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFVybFV0aWxpdGllc01vZHVsZSB7IH1cbiJdfQ==
|