@cleavelandprice/ngx-lib 4.4.0 → 4.4.2
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 +5 -5
- package/active-directory/material/components/user-chooser/user-chooser.component.d.ts +18 -18
- package/authentication/model/abstract-authentication-service.d.ts +4 -4
- package/authentication/object/services/authentication-object.service.d.ts +4 -3
- package/authentication/token/services/authentication-token.service.d.ts +4 -3
- package/fesm2022/cleavelandprice-ngx-lib-active-directory-material.mjs +13 -13
- package/fesm2022/cleavelandprice-ngx-lib-active-directory-material.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-active-directory.mjs +7 -7
- package/fesm2022/cleavelandprice-ngx-lib-active-directory.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-authentication-material.mjs +17 -17
- package/fesm2022/cleavelandprice-ngx-lib-authentication-material.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-authentication-object.mjs +22 -12
- package/fesm2022/cleavelandprice-ngx-lib-authentication-object.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-authentication-token.mjs +22 -12
- package/fesm2022/cleavelandprice-ngx-lib-authentication-token.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-authentication.mjs +4 -4
- package/fesm2022/cleavelandprice-ngx-lib-authentication.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-dialog.mjs +25 -25
- package/fesm2022/cleavelandprice-ngx-lib-dialog.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-msgraph.mjs +4 -4
- package/fesm2022/cleavelandprice-ngx-lib-msgraph.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-quill-mention.mjs +10 -10
- package/fesm2022/cleavelandprice-ngx-lib-quill-mention.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-quill.mjs +15 -15
- package/fesm2022/cleavelandprice-ngx-lib-quill.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-sharepoint.mjs +14 -14
- package/fesm2022/cleavelandprice-ngx-lib-sharepoint.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-table.mjs +14 -14
- package/fesm2022/cleavelandprice-ngx-lib-table.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-upload.mjs +15 -16
- package/fesm2022/cleavelandprice-ngx-lib-upload.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-url-utilities.mjs +13 -13
- package/fesm2022/cleavelandprice-ngx-lib-url-utilities.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib.mjs +7 -7
- package/fesm2022/cleavelandprice-ngx-lib.mjs.map +1 -1
- package/package.json +3 -33
- package/esm2022/active-directory/active-directory.api.mjs +0 -11
- package/esm2022/active-directory/active-directory.module.mjs +0 -40
- package/esm2022/active-directory/cleavelandprice-ngx-lib-active-directory.mjs +0 -5
- package/esm2022/active-directory/material/cleavelandprice-ngx-lib-active-directory-material.mjs +0 -5
- package/esm2022/active-directory/material/components/user-chooser/user-chooser.component.mjs +0 -437
- package/esm2022/active-directory/material/components/user-form-field/user-form-field.component.mjs +0 -159
- package/esm2022/active-directory/material/mat-active-directory.api.mjs +0 -11
- package/esm2022/active-directory/material/mat-active-directory.module.mjs +0 -100
- package/esm2022/active-directory/material/model/default-user-chooser-data.mjs +0 -15
- package/esm2022/active-directory/material/model/default-user-chooser-filter-options.mjs +0 -8
- package/esm2022/active-directory/material/model/selectable-group.mjs +0 -2
- package/esm2022/active-directory/material/model/selectable-user.mjs +0 -2
- package/esm2022/active-directory/material/model/user-chooser-data.mjs +0 -2
- package/esm2022/active-directory/material/model/user-chooser-filter-options.mjs +0 -3
- package/esm2022/active-directory/material/model/user-chooser-mode.mjs +0 -6
- package/esm2022/active-directory/material/model/user-chooser-pre-processing-group.mjs +0 -3
- package/esm2022/active-directory/model/active-directory-service-options-token.mjs +0 -3
- package/esm2022/active-directory/model/active-directory-service-options.mjs +0 -2
- package/esm2022/active-directory/model/ad-object-with-children.mjs +0 -2
- package/esm2022/active-directory/model/ad-object.mjs +0 -2
- package/esm2022/active-directory/model/cache-object.mjs +0 -3
- package/esm2022/active-directory/model/cleaveland-price-user.mjs +0 -2
- package/esm2022/active-directory/model/group.mjs +0 -2
- package/esm2022/active-directory/model/user-or-group.mjs +0 -2
- package/esm2022/active-directory/model/user.mjs +0 -2
- package/esm2022/active-directory/services/active-directory.service.mjs +0 -125
- package/esm2022/authentication/authentication.api.mjs +0 -7
- package/esm2022/authentication/authentication.base.module.mjs +0 -40
- package/esm2022/authentication/cleavelandprice-ngx-lib-authentication.mjs +0 -5
- package/esm2022/authentication/material/cleavelandprice-ngx-lib-authentication-material.mjs +0 -5
- package/esm2022/authentication/material/components/login/login.component.mjs +0 -49
- package/esm2022/authentication/material/components/login-form/login-form.component.mjs +0 -82
- package/esm2022/authentication/material/mat-authentication.api.mjs +0 -8
- package/esm2022/authentication/material/mat-authentication.module.mjs +0 -84
- package/esm2022/authentication/material/model/login-form-data.mjs +0 -2
- package/esm2022/authentication/material/model/mat-authentication-service-options-token.mjs +0 -3
- package/esm2022/authentication/material/model/mat-authentication-service-options.mjs +0 -2
- package/esm2022/authentication/material/services/mat-authentication.service.mjs +0 -67
- package/esm2022/authentication/model/abstract-authentication-service.mjs +0 -2
- package/esm2022/authentication/model/authenticated-user.mjs +0 -2
- package/esm2022/authentication/model/authentication-request.mjs +0 -2
- package/esm2022/authentication/model/authentication-service-options-token.mjs +0 -3
- package/esm2022/authentication/model/authentication-service-options.mjs +0 -2
- package/esm2022/authentication/object/authentication-object.api.mjs +0 -6
- package/esm2022/authentication/object/authentication-object.module.mjs +0 -40
- package/esm2022/authentication/object/cleavelandprice-ngx-lib-authentication-object.mjs +0 -5
- package/esm2022/authentication/object/services/authentication-object.service.mjs +0 -119
- package/esm2022/authentication/token/authentication-token.api.mjs +0 -6
- package/esm2022/authentication/token/authetiction-token.module.mjs +0 -40
- package/esm2022/authentication/token/cleavelandprice-ngx-lib-authentication-token.mjs +0 -5
- package/esm2022/authentication/token/model/authentication-token-service-options-token.mjs +0 -3
- package/esm2022/authentication/token/model/authentication-token-service-options.mjs +0 -2
- package/esm2022/authentication/token/model/authentication-token.mjs +0 -2
- package/esm2022/authentication/token/services/authentication-token.service.mjs +0 -128
- package/esm2022/cleavelandprice-ngx-lib.mjs +0 -5
- package/esm2022/dialog/cleavelandprice-ngx-lib-dialog.mjs +0 -5
- package/esm2022/dialog/components/base/base.component.mjs +0 -102
- package/esm2022/dialog/components/choice/choice.component.mjs +0 -21
- package/esm2022/dialog/components/confirmation/confirmation.component.mjs +0 -21
- package/esm2022/dialog/components/input/input.component.mjs +0 -21
- package/esm2022/dialog/components/message/message.component.mjs +0 -21
- package/esm2022/dialog/dialog.api.mjs +0 -20
- package/esm2022/dialog/dialog.module.mjs +0 -73
- package/esm2022/dialog/model/confirmation-dialog-mode.mjs +0 -8
- package/esm2022/dialog/model/dialog-base-data.mjs +0 -2
- package/esm2022/dialog/model/dialog-choice-data.mjs +0 -2
- package/esm2022/dialog/model/dialog-type.mjs +0 -8
- package/esm2022/lib/model/app-path-config.mjs +0 -2
- package/esm2022/lib/model/app-type.mjs +0 -2
- package/esm2022/lib/model/app.mjs +0 -2
- package/esm2022/lib/model/caching-config.mjs +0 -2
- package/esm2022/lib/model/credentials.mjs +0 -2
- package/esm2022/lib/model/logging-config.mjs +0 -2
- package/esm2022/lib/model/service-options-token.mjs +0 -3
- package/esm2022/lib/model/service-options.mjs +0 -2
- package/esm2022/lib/ngx-lib.module.mjs +0 -37
- package/esm2022/lib/services/app-path-config.service.mjs +0 -50
- package/esm2022/lib/services/service-base.mjs +0 -26
- package/esm2022/msgraph/cleavelandprice-ngx-lib-msgraph.mjs +0 -5
- package/esm2022/msgraph/model/address.mjs +0 -2
- package/esm2022/msgraph/model/attendee.mjs +0 -2
- package/esm2022/msgraph/model/bulk-calendar-events.mjs +0 -2
- package/esm2022/msgraph/model/bulk-calendar-request.mjs +0 -2
- package/esm2022/msgraph/model/calendar-event.mjs +0 -2
- package/esm2022/msgraph/model/coordinates.mjs +0 -2
- package/esm2022/msgraph/model/email-address.mjs +0 -2
- package/esm2022/msgraph/model/location.mjs +0 -2
- package/esm2022/msgraph/model/online-meeting-info.mjs +0 -2
- package/esm2022/msgraph/model/patterned-recurrence.mjs +0 -2
- package/esm2022/msgraph/model/phone.mjs +0 -2
- package/esm2022/msgraph/model/recipient.mjs +0 -2
- package/esm2022/msgraph/model/recurrence-pattern.mjs +0 -2
- package/esm2022/msgraph/model/recurrence-range.mjs +0 -2
- package/esm2022/msgraph/model/response-status.mjs +0 -2
- package/esm2022/msgraph/model/room.mjs +0 -6
- package/esm2022/msgraph/model/user.mjs +0 -132
- package/esm2022/msgraph/msgraph.api.mjs +0 -19
- package/esm2022/msgraph/msgraph.module.mjs +0 -27
- package/esm2022/public_api.mjs +0 -15
- package/esm2022/quill/cleavelandprice-ngx-lib-quill.mjs +0 -5
- package/esm2022/quill/components/editor/editor.component.mjs +0 -282
- package/esm2022/quill/components/raw/raw.component.mjs +0 -30
- package/esm2022/quill/mention/cleavelandprice-ngx-lib-quill-mention.mjs +0 -5
- package/esm2022/quill/mention/components/editor/editor.component.mjs +0 -151
- package/esm2022/quill/mention/model/dialog-data.mjs +0 -2
- package/esm2022/quill/mention/quill-mention.api.mjs +0 -9
- package/esm2022/quill/mention/quill-mention.module.mjs +0 -65
- package/esm2022/quill/model/buttons.mjs +0 -3
- package/esm2022/quill/model/config.mjs +0 -3
- package/esm2022/quill/model/default-buttons.mjs +0 -50
- package/esm2022/quill/model/default-config.mjs +0 -28
- package/esm2022/quill/model/default-icons.mjs +0 -7
- package/esm2022/quill/model/default-tooltips.mjs +0 -53
- package/esm2022/quill/model/dialog-data.mjs +0 -2
- package/esm2022/quill/model/icons.mjs +0 -3
- package/esm2022/quill/model/tooltips.mjs +0 -3
- package/esm2022/quill/quill.api.mjs +0 -13
- package/esm2022/quill/quill.module.mjs +0 -75
- package/esm2022/sharepoint/cleavelandprice-ngx-lib-sharepoint.mjs +0 -5
- package/esm2022/sharepoint/components/user-photo/user-photo.component.mjs +0 -40
- package/esm2022/sharepoint/default-credentials.mjs +0 -6
- package/esm2022/sharepoint/model/base-item.mjs +0 -2
- package/esm2022/sharepoint/model/base-request-credential.mjs +0 -2
- package/esm2022/sharepoint/model/base-request.mjs +0 -2
- package/esm2022/sharepoint/model/cache-object.mjs +0 -3
- package/esm2022/sharepoint/model/file-request.mjs +0 -2
- package/esm2022/sharepoint/model/folder-request.mjs +0 -2
- package/esm2022/sharepoint/model/list-item.mjs +0 -2
- package/esm2022/sharepoint/model/list-items-request.mjs +0 -2
- package/esm2022/sharepoint/model/photo-item.mjs +0 -2
- package/esm2022/sharepoint/model/sharepoint-service-options.mjs +0 -3
- package/esm2022/sharepoint/model/uri-request.mjs +0 -2
- package/esm2022/sharepoint/model/user-request.mjs +0 -2
- package/esm2022/sharepoint/model/user.mjs +0 -2
- package/esm2022/sharepoint/pipes/user-photo-url.pipe.mjs +0 -37
- package/esm2022/sharepoint/services/sharepoint.service.mjs +0 -155
- package/esm2022/sharepoint/sharepoint.api.mjs +0 -17
- package/esm2022/sharepoint/sharepoint.module.mjs +0 -50
- package/esm2022/table/cleavelandprice-ngx-lib-table.mjs +0 -5
- package/esm2022/table/components/table/table.component.mjs +0 -120
- package/esm2022/table/model/table-column.mjs +0 -2
- package/esm2022/table/pipes/decimalPoints.mjs +0 -14
- package/esm2022/table/pipes/roundNumber.mjs +0 -14
- package/esm2022/table/table.api.mjs +0 -6
- package/esm2022/table/table.module.mjs +0 -78
- package/esm2022/upload/cleavelandprice-ngx-lib-upload.mjs +0 -5
- package/esm2022/upload/components/upload/upload.component.mjs +0 -32
- package/esm2022/upload/components/upload-dialog/upload-dialog.component.mjs +0 -98
- package/esm2022/upload/model/database-file-info.mjs +0 -2
- package/esm2022/upload/model/file-upload-request.mjs +0 -2
- package/esm2022/upload/model/filesystem-file-info.mjs +0 -2
- package/esm2022/upload/model/msg-file-content.mjs +0 -5
- package/esm2022/upload/model/upload-service-options-token.mjs +0 -3
- package/esm2022/upload/model/upload-service-options.mjs +0 -3
- package/esm2022/upload/model/upload-status.mjs +0 -2
- package/esm2022/upload/services/upload.service.mjs +0 -106
- package/esm2022/upload/upload.api.mjs +0 -11
- package/esm2022/upload/upload.module.mjs +0 -68
- package/esm2022/url-utilities/cleavelandprice-ngx-lib-url-utilities.mjs +0 -5
- package/esm2022/url-utilities/pipes/safe-resource-url.pipe.mjs +0 -19
- package/esm2022/url-utilities/pipes/safe-url.pipe.mjs +0 -19
- package/esm2022/url-utilities/pipes/uri-scheme.pipe.mjs +0 -106
- package/esm2022/url-utilities/url-utilities.api.mjs +0 -13
- package/esm2022/url-utilities/url-utilities.module.mjs +0 -34
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
import { Component, input, output, viewChild } from '@angular/core';
|
|
2
|
-
import { MatPaginator } from '@angular/material/paginator';
|
|
3
|
-
import { MatSort, MatSortHeader } from '@angular/material/sort';
|
|
4
|
-
import { MatCell, MatCellDef, MatColumnDef, MatHeaderCell, MatHeaderCellDef, MatHeaderRow, MatHeaderRowDef, MatNoDataRow, MatRow, MatRowDef, MatTable, MatTableDataSource } from '@angular/material/table';
|
|
5
|
-
import { DatePipe, DecimalPipe, NgClass, NgStyle } from '@angular/common';
|
|
6
|
-
import { FormsModule } from '@angular/forms';
|
|
7
|
-
import { MatButton, MatIconButton } from '@angular/material/button';
|
|
8
|
-
import { MatCheckbox } from '@angular/material/checkbox';
|
|
9
|
-
import { MatFormField, MatLabel, MatPrefix } from '@angular/material/form-field';
|
|
10
|
-
import { MatIcon } from '@angular/material/icon';
|
|
11
|
-
import { MatInput } from '@angular/material/input';
|
|
12
|
-
import { MatTooltip } from '@angular/material/tooltip';
|
|
13
|
-
import { RoundNumberPipe } from '../../pipes/roundNumber';
|
|
14
|
-
import { DecimalPointsPipe } from '../../pipes/decimalPoints';
|
|
15
|
-
import * as i0 from "@angular/core";
|
|
16
|
-
import * as i1 from "@angular/forms";
|
|
17
|
-
export class TableComponent {
|
|
18
|
-
constructor() {
|
|
19
|
-
//#region Inputs
|
|
20
|
-
this.title = input('');
|
|
21
|
-
this.tableData = input.required();
|
|
22
|
-
this.columns = input([]);
|
|
23
|
-
this.showPaginator = input(true);
|
|
24
|
-
this.showSearch = input(true);
|
|
25
|
-
this.maxTableHeight = input('50em');
|
|
26
|
-
this.shrinkTable = input(false);
|
|
27
|
-
this.paginatorSticky = input(false);
|
|
28
|
-
this.pageinatorDefaultIncrement = input(50);
|
|
29
|
-
this.sortingDataAccessor = input();
|
|
30
|
-
//#endregion
|
|
31
|
-
this.buttonClicked = output();
|
|
32
|
-
this.isMobile = false;
|
|
33
|
-
this.paginator = viewChild(MatPaginator);
|
|
34
|
-
this.sort = viewChild(MatSort);
|
|
35
|
-
}
|
|
36
|
-
ngOnInit() {
|
|
37
|
-
this.dataSource = new MatTableDataSource(this.tableData());
|
|
38
|
-
if (this.sortingDataAccessor()) {
|
|
39
|
-
this.dataSource.sortingDataAccessor = this.sortingDataAccessor();
|
|
40
|
-
}
|
|
41
|
-
this.columnNames = this.columns().map(c => c.field);
|
|
42
|
-
this.#setTablePageSizeOptions(this.pageinatorDefaultIncrement());
|
|
43
|
-
}
|
|
44
|
-
ngAfterViewInit() {
|
|
45
|
-
if (this.paginator() && !this.dataSource.paginator) {
|
|
46
|
-
this.dataSource.paginator = this.paginator();
|
|
47
|
-
}
|
|
48
|
-
if (this.sort() && !this.dataSource.sort) {
|
|
49
|
-
this.dataSource.sort = this.sort();
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
searchFilterChange(event) {
|
|
53
|
-
const filterValue = event.target.value;
|
|
54
|
-
this.dataSource.filter = filterValue.trim().toLowerCase();
|
|
55
|
-
}
|
|
56
|
-
buttonClick(rowData, field) {
|
|
57
|
-
this.buttonClicked.emit({ rowData, field });
|
|
58
|
-
}
|
|
59
|
-
editableFieldChange(rowData, field, value) {
|
|
60
|
-
rowData[field] = value;
|
|
61
|
-
this.buttonClicked.emit({ rowData, field });
|
|
62
|
-
}
|
|
63
|
-
getNestedFieldValue(rowData, nestedField) {
|
|
64
|
-
if (!nestedField) {
|
|
65
|
-
return;
|
|
66
|
-
}
|
|
67
|
-
return rowData[nestedField];
|
|
68
|
-
}
|
|
69
|
-
getDoubleNestedFieldValue(rowData, field, nestedField) {
|
|
70
|
-
if (!field || !nestedField) {
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
return rowData[field][nestedField];
|
|
74
|
-
}
|
|
75
|
-
#setTablePageSizeOptions(defaultPageIncrement = 50) {
|
|
76
|
-
this.pageSizeOptions = [];
|
|
77
|
-
for (let i = defaultPageIncrement; i < this.dataSource.data.length; i = i + (defaultPageIncrement * 2)) {
|
|
78
|
-
this.pageSizeOptions.push(i);
|
|
79
|
-
}
|
|
80
|
-
this.pageSizeOptions.push(this.dataSource.data.length);
|
|
81
|
-
}
|
|
82
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
83
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: TableComponent, isStandalone: true, selector: "lib-table", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, tableData: { classPropertyName: "tableData", publicName: "tableData", isSignal: true, isRequired: true, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, showPaginator: { classPropertyName: "showPaginator", publicName: "showPaginator", isSignal: true, isRequired: false, transformFunction: null }, showSearch: { classPropertyName: "showSearch", publicName: "showSearch", isSignal: true, isRequired: false, transformFunction: null }, maxTableHeight: { classPropertyName: "maxTableHeight", publicName: "maxTableHeight", isSignal: true, isRequired: false, transformFunction: null }, shrinkTable: { classPropertyName: "shrinkTable", publicName: "shrinkTable", isSignal: true, isRequired: false, transformFunction: null }, paginatorSticky: { classPropertyName: "paginatorSticky", publicName: "paginatorSticky", isSignal: true, isRequired: false, transformFunction: null }, pageinatorDefaultIncrement: { classPropertyName: "pageinatorDefaultIncrement", publicName: "pageinatorDefaultIncrement", isSignal: true, isRequired: false, transformFunction: null }, sortingDataAccessor: { classPropertyName: "sortingDataAccessor", publicName: "sortingDataAccessor", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { buttonClicked: "buttonClicked" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, isSignal: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true, isSignal: true }], ngImport: i0, template: "<h3>{{title()}}</h3>\r\n\r\n@if (showSearch()) {\r\n <mat-form-field appearance=\"outline\">\r\n <mat-label>Search</mat-label>\r\n <mat-icon matPrefix>search</mat-icon>\r\n <input type=\"text\" matInput (keyup)=\"searchFilterChange($event)\">\r\n </mat-form-field>\r\n}\r\n\r\n<div class=\"table-container\" [ngStyle]=\"{'max-height': maxTableHeight()}\" [class.shrink-table]=\"shrinkTable()\">\r\n <table mat-table [dataSource]=\"dataSource\" matSort>\r\n @for (column of columns(); track column) {\r\n <ng-container [matColumnDef]=\"column.field\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header [class.hide-mobile]=\"column.hideOnMobile && isMobile\" [ngStyle]=\"{ 'width': column.columnWidth }\">\r\n <div>{{ column.fieldColumnTitle }}</div>\r\n </th>\r\n\r\n <td mat-cell *matCellDef=\"let data\" [class.hide-mobile]=\"column.hideOnMobile && isMobile\" [ngStyle]=\"{ 'width': column.columnWidth }\">\r\n @if(column.isDate) {\r\n {{ data[column.field] | date:'shortDate' }}\r\n }\r\n @else if (column.isNumber) {\r\n @if (column.isNumber.needsRounded) {\r\n @if (column.isNumber.percentage) {\r\n {{ data[column.field] | number:'0.0-0' }}%\r\n }\r\n @else if (column.isNumber.money) {\r\n ${{ data[column.field] | number:'0.0-0' }}\r\n }\r\n @else {\r\n {{ data[column.field] | number:'0.0-0' }}\r\n }\r\n } @else {\r\n @if (column.isNumber.percentage) {\r\n {{ data[column.field] | number:'.2-2' }}%\r\n }\r\n @else if (column.isNumber.money) {\r\n ${{ data[column.field] | number:'.2-2' }}\r\n }\r\n @else {\r\n {{ data[column.field] | number:'.2-2' }}\r\n }\r\n }\r\n }\r\n @else if (column.isCheckbox) {\r\n <mat-checkbox [(ngModel)]=\"data[column.field]\" [disabled]=\"column.isCheckbox['isDisabled']\" />\r\n }\r\n @else if (column.isHyperlink) {\r\n <a [href]=\"data[column.isHyperlink.linkField]\" target=\"_blank\">\r\n {{ data[column.field] }}\r\n </a>\r\n }\r\n @else if (column.isButton) {\r\n @if (column.isButton.isIcon) {\r\n <button mat-icon-button [matTooltip]=\"column.isButton.isIcon.toolTip\" [disabled]=\"column.isButton.isDisabled\"\r\n (click)=\"column.isButton.isDisabled ? undefined : buttonClick(data, column.field)\">\r\n <mat-icon>{{column.isButton.isIcon.iconName}}</mat-icon>\r\n </button>\r\n } @else if (column.isButton.isCheckbox) {\r\n <mat-checkbox [matTooltip]=\"column.isButton.isCheckbox.toolTip\"\r\n [(ngModel)]=\"data[column.field]\" (click)=\"buttonClick(data, column.field)\" />\r\n } @else {\r\n <button mat-raised-button [disabled]=\"column.isButton.isDisabled\"\r\n [color]=\"column.isButton.isDisabled ? undefined : 'primary'\"\r\n [class.button-extra-padding]=\"column.isButton.extraPadding\"\r\n (click)=\"column.isButton.isDisabled ? undefined : buttonClick(data, column.field)\">\r\n {{column.isButton.text}}\r\n </button>\r\n }\r\n }\r\n @else if (column.nestedField) {\r\n {{ getNestedFieldValue(data[column.field], column.nestedField) }}\r\n }\r\n @else if (column.doubleNestedField) {\r\n {{ getDoubleNestedFieldValue(data, column.doubleNestedField.field, column.doubleNestedField.nestedField) }}\r\n }\r\n @else if (column.isEditable) {\r\n @if (column.isEditable.type === 'textarea') {\r\n <textarea style=\"width: 100%;\" [rows]=\"3\" [(ngModel)]=\"data[column.field]\" [disabled]=\"column.isEditable.disable !== undefined && column.isEditable.disable\"></textarea>\r\n }\r\n @else if (column.isEditable.isNumber) {\r\n @if (column.isEditable.isNumber.needsRounded) {\r\n <input [ngModel]=\"data[column.field] | roundNumber\" style=\"width: 55%;\" [disabled]=\"column.isEditable.disable !== undefined && column.isEditable.disable\" type=\"number\">\r\n }\r\n @else if (column.isEditable.isNumber.decimalPoints) {\r\n <input [ngModel]=\"data[column.field] | decimalPoints:column.isEditable.isNumber.decimalPoints\" (ngModelChange)=\"editableFieldChange(data, column.field, $event)\" style=\"width: 55%;\" [disabled]=\"column.isEditable.disable !== undefined && column.isEditable.disable\" type=\"number\">\r\n }\r\n @else {\r\n <input [ngModel]=\"data[column.field]\" (ngModelChange)=\"editableFieldChange(data, column.field, $event)\" style=\"width: 55%;\" [disabled]=\"column.isEditable.disable !== undefined && column.isEditable.disable\" type=\"number\">\r\n }\r\n }\r\n @else {\r\n <input [(ngModel)]=\"data[column.field]\" (ngModelChange)=\"editableFieldChange(data, column.field, $event)\" style=\"width: 55%;\" [disabled]=\"column.isEditable.disable !== undefined && column.isEditable.disable\" type=\"text\">\r\n }\r\n }\r\n @else {\r\n {{ data[column.field] }}\r\n }\r\n </td>\r\n </ng-container>\r\n }\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnNames; sticky: true\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: columnNames;\" class=\"table-row\"></tr>\r\n <tr mat-row *matNoDataRow>\r\n <td class=\"mat-cell\" colspan=\"9999\">\r\n No records exist.\r\n </td>\r\n </tr>\r\n </table>\r\n\r\n @if (showPaginator()) {\r\n <mat-paginator [class.paginator-sticky]=\"paginatorSticky()\" [pageSizeOptions]=\"pageSizeOptions\" showFirstLastButtons />\r\n }\r\n</div>\r\n", styles: [".mat-form-field{width:100%!important}.table-container{display:grid;grid-template-columns:1fr;max-height:50em;overflow:auto;margin:1em .5em .5em;text-align:center!important}.table-container .table{width:100%}:host ::ng-deep .mat-sort-header-container{display:flex;justify-content:center;margin-left:1.25em}td,th{text-align:center!important;vertical-align:middle!important}.shrink-table .mat-mdc-unelevated-button{line-height:1.75em}.shrink-table .mat-mdc-outlined-button{line-height:1.5em;height:1.5em}.shrink-table .mat-mdc-row:hover{background-color:#8f8f8f18;font-weight:700}.shrink-table .mat-mdc-row,tr.mat-row{min-height:1.5em;height:1.5em}.shrink-table .mat-mdc-header-row{min-height:40px}.shrink-table tr.mat-mdc-header-row{height:1.5em;border-radius:5px}.shrink-table .mat-column-tools{min-width:225px;max-width:225px}.shrink-table .mat-mdc-header-cell{font-weight:700}.paginator-sticky{bottom:0;position:sticky;z-index:10}.button-extra-padding{padding-top:1.75em;padding-bottom:1.75em}\n"], dependencies: [{ kind: "pipe", type: DatePipe, name: "date" }, { kind: "pipe", type: DecimalPipe, name: "number" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: MatCellDef, selector: "[matCellDef]" }, { kind: "component", type: MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "component", type: MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "directive", type: MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }, { kind: "directive", type: MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "component", type: MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: MatSortHeader, selector: "[mat-sort-header]", inputs: ["mat-sort-header", "arrowPosition", "start", "disabled", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "component", type: MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: RoundNumberPipe, name: "roundNumber" }, { kind: "pipe", type: DecimalPointsPipe, name: "decimalPoints" }] }); }
|
|
84
|
-
}
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TableComponent, decorators: [{
|
|
86
|
-
type: Component,
|
|
87
|
-
args: [{ selector: 'lib-table', standalone: true, imports: [
|
|
88
|
-
DatePipe,
|
|
89
|
-
DecimalPipe,
|
|
90
|
-
FormsModule,
|
|
91
|
-
MatButton,
|
|
92
|
-
MatCell,
|
|
93
|
-
MatCellDef,
|
|
94
|
-
MatCheckbox,
|
|
95
|
-
MatColumnDef,
|
|
96
|
-
MatFormField,
|
|
97
|
-
MatHeaderCell,
|
|
98
|
-
MatHeaderCellDef,
|
|
99
|
-
MatHeaderRow,
|
|
100
|
-
MatHeaderRowDef,
|
|
101
|
-
MatIcon,
|
|
102
|
-
MatIconButton,
|
|
103
|
-
MatInput,
|
|
104
|
-
MatLabel,
|
|
105
|
-
MatNoDataRow,
|
|
106
|
-
MatPaginator,
|
|
107
|
-
MatPrefix,
|
|
108
|
-
MatRow,
|
|
109
|
-
MatRowDef,
|
|
110
|
-
MatSort,
|
|
111
|
-
MatSortHeader,
|
|
112
|
-
MatTable,
|
|
113
|
-
MatTooltip,
|
|
114
|
-
NgClass,
|
|
115
|
-
NgStyle,
|
|
116
|
-
RoundNumberPipe,
|
|
117
|
-
DecimalPointsPipe
|
|
118
|
-
], template: "<h3>{{title()}}</h3>\r\n\r\n@if (showSearch()) {\r\n <mat-form-field appearance=\"outline\">\r\n <mat-label>Search</mat-label>\r\n <mat-icon matPrefix>search</mat-icon>\r\n <input type=\"text\" matInput (keyup)=\"searchFilterChange($event)\">\r\n </mat-form-field>\r\n}\r\n\r\n<div class=\"table-container\" [ngStyle]=\"{'max-height': maxTableHeight()}\" [class.shrink-table]=\"shrinkTable()\">\r\n <table mat-table [dataSource]=\"dataSource\" matSort>\r\n @for (column of columns(); track column) {\r\n <ng-container [matColumnDef]=\"column.field\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header [class.hide-mobile]=\"column.hideOnMobile && isMobile\" [ngStyle]=\"{ 'width': column.columnWidth }\">\r\n <div>{{ column.fieldColumnTitle }}</div>\r\n </th>\r\n\r\n <td mat-cell *matCellDef=\"let data\" [class.hide-mobile]=\"column.hideOnMobile && isMobile\" [ngStyle]=\"{ 'width': column.columnWidth }\">\r\n @if(column.isDate) {\r\n {{ data[column.field] | date:'shortDate' }}\r\n }\r\n @else if (column.isNumber) {\r\n @if (column.isNumber.needsRounded) {\r\n @if (column.isNumber.percentage) {\r\n {{ data[column.field] | number:'0.0-0' }}%\r\n }\r\n @else if (column.isNumber.money) {\r\n ${{ data[column.field] | number:'0.0-0' }}\r\n }\r\n @else {\r\n {{ data[column.field] | number:'0.0-0' }}\r\n }\r\n } @else {\r\n @if (column.isNumber.percentage) {\r\n {{ data[column.field] | number:'.2-2' }}%\r\n }\r\n @else if (column.isNumber.money) {\r\n ${{ data[column.field] | number:'.2-2' }}\r\n }\r\n @else {\r\n {{ data[column.field] | number:'.2-2' }}\r\n }\r\n }\r\n }\r\n @else if (column.isCheckbox) {\r\n <mat-checkbox [(ngModel)]=\"data[column.field]\" [disabled]=\"column.isCheckbox['isDisabled']\" />\r\n }\r\n @else if (column.isHyperlink) {\r\n <a [href]=\"data[column.isHyperlink.linkField]\" target=\"_blank\">\r\n {{ data[column.field] }}\r\n </a>\r\n }\r\n @else if (column.isButton) {\r\n @if (column.isButton.isIcon) {\r\n <button mat-icon-button [matTooltip]=\"column.isButton.isIcon.toolTip\" [disabled]=\"column.isButton.isDisabled\"\r\n (click)=\"column.isButton.isDisabled ? undefined : buttonClick(data, column.field)\">\r\n <mat-icon>{{column.isButton.isIcon.iconName}}</mat-icon>\r\n </button>\r\n } @else if (column.isButton.isCheckbox) {\r\n <mat-checkbox [matTooltip]=\"column.isButton.isCheckbox.toolTip\"\r\n [(ngModel)]=\"data[column.field]\" (click)=\"buttonClick(data, column.field)\" />\r\n } @else {\r\n <button mat-raised-button [disabled]=\"column.isButton.isDisabled\"\r\n [color]=\"column.isButton.isDisabled ? undefined : 'primary'\"\r\n [class.button-extra-padding]=\"column.isButton.extraPadding\"\r\n (click)=\"column.isButton.isDisabled ? undefined : buttonClick(data, column.field)\">\r\n {{column.isButton.text}}\r\n </button>\r\n }\r\n }\r\n @else if (column.nestedField) {\r\n {{ getNestedFieldValue(data[column.field], column.nestedField) }}\r\n }\r\n @else if (column.doubleNestedField) {\r\n {{ getDoubleNestedFieldValue(data, column.doubleNestedField.field, column.doubleNestedField.nestedField) }}\r\n }\r\n @else if (column.isEditable) {\r\n @if (column.isEditable.type === 'textarea') {\r\n <textarea style=\"width: 100%;\" [rows]=\"3\" [(ngModel)]=\"data[column.field]\" [disabled]=\"column.isEditable.disable !== undefined && column.isEditable.disable\"></textarea>\r\n }\r\n @else if (column.isEditable.isNumber) {\r\n @if (column.isEditable.isNumber.needsRounded) {\r\n <input [ngModel]=\"data[column.field] | roundNumber\" style=\"width: 55%;\" [disabled]=\"column.isEditable.disable !== undefined && column.isEditable.disable\" type=\"number\">\r\n }\r\n @else if (column.isEditable.isNumber.decimalPoints) {\r\n <input [ngModel]=\"data[column.field] | decimalPoints:column.isEditable.isNumber.decimalPoints\" (ngModelChange)=\"editableFieldChange(data, column.field, $event)\" style=\"width: 55%;\" [disabled]=\"column.isEditable.disable !== undefined && column.isEditable.disable\" type=\"number\">\r\n }\r\n @else {\r\n <input [ngModel]=\"data[column.field]\" (ngModelChange)=\"editableFieldChange(data, column.field, $event)\" style=\"width: 55%;\" [disabled]=\"column.isEditable.disable !== undefined && column.isEditable.disable\" type=\"number\">\r\n }\r\n }\r\n @else {\r\n <input [(ngModel)]=\"data[column.field]\" (ngModelChange)=\"editableFieldChange(data, column.field, $event)\" style=\"width: 55%;\" [disabled]=\"column.isEditable.disable !== undefined && column.isEditable.disable\" type=\"text\">\r\n }\r\n }\r\n @else {\r\n {{ data[column.field] }}\r\n }\r\n </td>\r\n </ng-container>\r\n }\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnNames; sticky: true\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: columnNames;\" class=\"table-row\"></tr>\r\n <tr mat-row *matNoDataRow>\r\n <td class=\"mat-cell\" colspan=\"9999\">\r\n No records exist.\r\n </td>\r\n </tr>\r\n </table>\r\n\r\n @if (showPaginator()) {\r\n <mat-paginator [class.paginator-sticky]=\"paginatorSticky()\" [pageSizeOptions]=\"pageSizeOptions\" showFirstLastButtons />\r\n }\r\n</div>\r\n", styles: [".mat-form-field{width:100%!important}.table-container{display:grid;grid-template-columns:1fr;max-height:50em;overflow:auto;margin:1em .5em .5em;text-align:center!important}.table-container .table{width:100%}:host ::ng-deep .mat-sort-header-container{display:flex;justify-content:center;margin-left:1.25em}td,th{text-align:center!important;vertical-align:middle!important}.shrink-table .mat-mdc-unelevated-button{line-height:1.75em}.shrink-table .mat-mdc-outlined-button{line-height:1.5em;height:1.5em}.shrink-table .mat-mdc-row:hover{background-color:#8f8f8f18;font-weight:700}.shrink-table .mat-mdc-row,tr.mat-row{min-height:1.5em;height:1.5em}.shrink-table .mat-mdc-header-row{min-height:40px}.shrink-table tr.mat-mdc-header-row{height:1.5em;border-radius:5px}.shrink-table .mat-column-tools{min-width:225px;max-width:225px}.shrink-table .mat-mdc-header-cell{font-weight:700}.paginator-sticky{bottom:0;position:sticky;z-index:10}.button-extra-padding{padding-top:1.75em;padding-bottom:1.75em}\n"] }]
|
|
119
|
-
}] });
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvdGFibGUvc3JjL2NvbXBvbmVudHMvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvdGFibGUvc3JjL2NvbXBvbmVudHMvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTNNLE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFD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QUNSLFdBQVcsOENBQ1gsV0FBVyxpeEJBQ1gsU0FBUyxpTEFDVCxPQUFPLG1FQUNQLFVBQVUseURBQ1YsV0FBVyxpVUFDWCxZQUFZLHFGQUNaLFlBQVksNExBQ1osYUFBYSxpRkFDYixnQkFBZ0IsK0RBQ2hCLFlBQVksMkdBQ1osZUFBZSxvSEFDZixPQUFPLDJJQUNQLGFBQWEsNkZBQ2IsUUFBUSxpVUFDUixRQUFRLHNEQUNSLFlBQVksc0VBQ1osWUFBWSxzUEFDWixTQUFTLHFIQUNULE1BQU0sdUZBQ04sU0FBUyx1R0FDVCxPQUFPLGtOQUNQLGFBQWEsdU1BQ2IsUUFBUSxnR0FDUixVQUFVLGlSQUVWLE9BQU8sc0VBQ1AsZUFBZSwrQ0FDZixpQkFBaUI7OzJGQUtSLGNBQWM7a0JBdEMxQixTQUFTOytCQUNFLFdBQVcsY0FDVCxJQUFJLFdBQ1A7d0JBQ1AsUUFBUTt3QkFDUixXQUFXO3dCQUNYLFdBQVc7d0JBQ1gsU0FBUzt3QkFDVCxPQUFPO3dCQUNQLFVBQVU7d0JBQ1YsV0FBVzt3QkFDWCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixPQUFPO3dCQUNQLGFBQWE7d0JBQ2IsUUFBUTt3QkFDUixRQUFRO3dCQUNSLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixTQUFTO3dCQUNULE1BQU07d0JBQ04sU0FBUzt3QkFDVCxPQUFPO3dCQUNQLGFBQWE7d0JBQ2IsUUFBUTt3QkFDUixVQUFVO3dCQUNWLE9BQU87d0JBQ1AsT0FBTzt3QkFDUCxlQUFlO3dCQUNmLGlCQUFpQjtxQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIGlucHV0LCBvdXRwdXQsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgTWF0UGFnaW5hdG9yIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcclxuaW1wb3J0IHsgTWF0U29ydCwgTWF0U29ydEhlYWRlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xyXG5pbXBvcnQgeyBNYXRDZWxsLCBNYXRDZWxsRGVmLCBNYXRDb2x1bW5EZWYsIE1hdEhlYWRlckNlbGwsIE1hdEhlYWRlckNlbGxEZWYsIE1hdEhlYWRlclJvdywgTWF0SGVhZGVyUm93RGVmLCBNYXROb0RhdGFSb3csIE1hdFJvdywgTWF0Um93RGVmLCBNYXRUYWJsZSwgTWF0VGFibGVEYXRhU291cmNlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xyXG5cclxuaW1wb3J0IHsgRGF0ZVBpcGUsIERlY2ltYWxQaXBlLCBOZ0NsYXNzLCBOZ1N0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbiwgTWF0SWNvbkJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdENoZWNrYm94IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGQsIE1hdExhYmVsLCBNYXRQcmVmaXggfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgTWF0SWNvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBUYWJsZUNvbHVtbiB9IGZyb20gJy4uLy4uL21vZGVsL3RhYmxlLWNvbHVtbic7XHJcbmltcG9ydCB7IFJvdW5kTnVtYmVyUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL3JvdW5kTnVtYmVyJztcclxuaW1wb3J0IHsgRGVjaW1hbFBvaW50c1BpcGUgfSBmcm9tICcuLi8uLi9waXBlcy9kZWNpbWFsUG9pbnRzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXRhYmxlJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIERhdGVQaXBlLFxyXG4gICAgRGVjaW1hbFBpcGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdEJ1dHRvbixcclxuICAgIE1hdENlbGwsXHJcbiAgICBNYXRDZWxsRGVmLFxyXG4gICAgTWF0Q2hlY2tib3gsXHJcbiAgICBNYXRDb2x1bW5EZWYsXHJcbiAgICBNYXRGb3JtRmllbGQsXHJcbiAgICBNYXRIZWFkZXJDZWxsLFxyXG4gICAgTWF0SGVhZGVyQ2VsbERlZixcclxuICAgIE1hdEhlYWRlclJvdyxcclxuICAgIE1hdEhlYWRlclJvd0RlZixcclxuICAgIE1hdEljb24sXHJcbiAgICBNYXRJY29uQnV0dG9uLFxyXG4gICAgTWF0SW5wdXQsXHJcbiAgICBNYXRMYWJlbCxcclxuICAgIE1hdE5vRGF0YVJvdyxcclxuICAgIE1hdFBhZ2luYXRvcixcclxuICAgIE1hdFByZWZpeCxcclxuICAgIE1hdFJvdyxcclxuICAgIE1hdFJvd0RlZixcclxuICAgIE1hdFNvcnQsXHJcbiAgICBNYXRTb3J0SGVhZGVyLFxyXG4gICAgTWF0VGFibGUsXHJcbiAgICBNYXRUb29sdGlwLFxyXG4gICAgTmdDbGFzcyxcclxuICAgIE5nU3R5bGUsXHJcbiAgICBSb3VuZE51bWJlclBpcGUsXHJcbiAgICBEZWNpbWFsUG9pbnRzUGlwZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdGFibGUuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG4gIC8vI3JlZ2lvbiBJbnB1dHNcclxuICB0aXRsZSA9IGlucHV0KCcnKTtcclxuICB0YWJsZURhdGEgPSBpbnB1dC5yZXF1aXJlZDxhbnlbXT4oKTtcclxuICBjb2x1bW5zID0gaW5wdXQ8VGFibGVDb2x1bW5bXT4oW10pO1xyXG4gIHNob3dQYWdpbmF0b3IgPSBpbnB1dCh0cnVlKTtcclxuICBzaG93U2VhcmNoID0gaW5wdXQodHJ1ZSk7XHJcbiAgbWF4VGFibGVIZWlnaHQgPSBpbnB1dCgnNTBlbScpO1xyXG4gIHNocmlua1RhYmxlID0gaW5wdXQoZmFsc2UpO1xyXG4gIHBhZ2luYXRvclN0aWNreSA9IGlucHV0KGZhbHNlKTtcclxuICBwYWdlaW5hdG9yRGVmYXVsdEluY3JlbWVudCA9IGlucHV0KDUwKTtcclxuICBzb3J0aW5nRGF0YUFjY2Vzc29yID0gaW5wdXQ8KGRhdGE6IGFueSwgc29ydEhlYWRlcklkOiBzdHJpbmcpID0+IHN0cmluZz4oKTtcclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgYnV0dG9uQ2xpY2tlZCA9IG91dHB1dDx7IHJvd0RhdGE6IGFueSwgZmllbGQ6IHN0cmluZyB9PigpO1xyXG5cclxuICBpc01vYmlsZSA9IGZhbHNlO1xyXG4gIGRhdGFTb3VyY2UhOiBNYXRUYWJsZURhdGFTb3VyY2U8YW55PjtcclxuICBwYWdlU2l6ZU9wdGlvbnMhOiBudW1iZXJbXTsgLy8gPSBbMTAsIDIwLCAxMDAsIDUwMF07XHJcbiAgY29sdW1uTmFtZXMhOiBzdHJpbmdbXTtcclxuXHJcbiAgcGFnaW5hdG9yID0gdmlld0NoaWxkKE1hdFBhZ2luYXRvcik7XHJcbiAgc29ydCA9IHZpZXdDaGlsZChNYXRTb3J0KTtcclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhdGFTb3VyY2UgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlKHRoaXMudGFibGVEYXRhKCkpO1xyXG5cclxuICAgIGlmICh0aGlzLnNvcnRpbmdEYXRhQWNjZXNzb3IoKSkge1xyXG4gICAgICB0aGlzLmRhdGFTb3VyY2Uuc29ydGluZ0RhdGFBY2Nlc3NvciA9IHRoaXMuc29ydGluZ0RhdGFBY2Nlc3NvcigpITtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNvbHVtbk5hbWVzID0gdGhpcy5jb2x1bW5zKCkubWFwKGMgPT4gYy5maWVsZCk7XHJcblxyXG4gICAgdGhpcy4jc2V0VGFibGVQYWdlU2l6ZU9wdGlvbnModGhpcy5wYWdlaW5hdG9yRGVmYXVsdEluY3JlbWVudCgpKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnBhZ2luYXRvcigpICYmICF0aGlzLmRhdGFTb3VyY2UucGFnaW5hdG9yKSB7XHJcbiAgICAgIHRoaXMuZGF0YVNvdXJjZS5wYWdpbmF0b3IgPSB0aGlzLnBhZ2luYXRvcigpITtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnNvcnQoKSAmJiAhdGhpcy5kYXRhU291cmNlLnNvcnQpIHtcclxuICAgICAgdGhpcy5kYXRhU291cmNlLnNvcnQgPSB0aGlzLnNvcnQoKSE7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWFyY2hGaWx0ZXJDaGFuZ2UoZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XHJcbiAgICB0aGlzLmRhdGFTb3VyY2UuZmlsdGVyID0gZmlsdGVyVmFsdWUudHJpbSgpLnRvTG93ZXJDYXNlKCk7XHJcbiAgfVxyXG5cclxuICBidXR0b25DbGljayhyb3dEYXRhOiBhbnksIGZpZWxkOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuYnV0dG9uQ2xpY2tlZC5lbWl0KHsgcm93RGF0YSwgZmllbGQgfSk7XHJcbiAgfVxyXG5cclxuICBlZGl0YWJsZUZpZWxkQ2hhbmdlKHJvd0RhdGE6IGFueSwgZmllbGQ6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgcm93RGF0YVtmaWVsZF0gPSB2YWx1ZTtcclxuXHJcbiAgICB0aGlzLmJ1dHRvbkNsaWNrZWQuZW1pdCh7IHJvd0RhdGEsIGZpZWxkIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0TmVzdGVkRmllbGRWYWx1ZShyb3dEYXRhOiBhbnksIG5lc3RlZEZpZWxkOiBzdHJpbmcpIHtcclxuICAgIGlmICghbmVzdGVkRmllbGQpIHsgcmV0dXJuOyB9XHJcblxyXG4gICAgcmV0dXJuIHJvd0RhdGFbbmVzdGVkRmllbGRdO1xyXG4gIH1cclxuXHJcbiAgZ2V0RG91YmxlTmVzdGVkRmllbGRWYWx1ZShyb3dEYXRhOiBhbnksIGZpZWxkOiBzdHJpbmcsIG5lc3RlZEZpZWxkOiBzdHJpbmcpIHtcclxuICAgIGlmICghZmllbGQgfHwgIW5lc3RlZEZpZWxkKSB7IHJldHVybjsgfVxyXG5cclxuICAgIHJldHVybiByb3dEYXRhW2ZpZWxkXVtuZXN0ZWRGaWVsZF07XHJcbiAgfVxyXG5cclxuICAjc2V0VGFibGVQYWdlU2l6ZU9wdGlvbnMoZGVmYXVsdFBhZ2VJbmNyZW1lbnQ6IG51bWJlciA9IDUwKSB7XHJcbiAgICB0aGlzLnBhZ2VTaXplT3B0aW9ucyA9IFtdO1xyXG5cclxuICAgIGZvciAobGV0IGkgPSBkZWZhdWx0UGFnZUluY3JlbWVudDsgaSA8IHRoaXMuZGF0YVNvdXJjZS5kYXRhLmxlbmd0aDsgaSA9IGkgKyAoZGVmYXVsdFBhZ2VJbmNyZW1lbnQgKiAyKSkge1xyXG4gICAgICB0aGlzLnBhZ2VTaXplT3B0aW9ucy5wdXNoKGkpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucGFnZVNpemVPcHRpb25zLnB1c2godGhpcy5kYXRhU291cmNlLmRhdGEubGVuZ3RoKTtcclxuICB9XHJcbn1cclxuIiwiPGgzPnt7dGl0bGUoKX19PC9oMz5cclxuXHJcbkBpZiAoc2hvd1NlYXJjaCgpKSB7XHJcbiAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICAgIDxtYXQtbGFiZWw+U2VhcmNoPC9tYXQtbGFiZWw+XHJcbiAgICAgIDxtYXQtaWNvbiBtYXRQcmVmaXg+c2VhcmNoPC9tYXQtaWNvbj5cclxuICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbWF0SW5wdXQgKGtleXVwKT1cInNlYXJjaEZpbHRlckNoYW5nZSgkZXZlbnQpXCI+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxufVxyXG5cclxuPGRpdiBjbGFzcz1cInRhYmxlLWNvbnRhaW5lclwiIFtuZ1N0eWxlXT1cInsnbWF4LWhlaWdodCc6IG1heFRhYmxlSGVpZ2h0KCl9XCIgW2NsYXNzLnNocmluay10YWJsZV09XCJzaHJpbmtUYWJsZSgpXCI+XHJcbiAgICA8dGFibGUgbWF0LXRhYmxlIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIiBtYXRTb3J0PlxyXG4gICAgICBAZm9yIChjb2x1bW4gb2YgY29sdW1ucygpOyB0cmFjayBjb2x1bW4pIHtcclxuICAgICAgICA8bmctY29udGFpbmVyIFttYXRDb2x1bW5EZWZdPVwiY29sdW1uLmZpZWxkXCI+XHJcbiAgICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIG1hdC1zb3J0LWhlYWRlciBbY2xhc3MuaGlkZS1tb2JpbGVdPVwiY29sdW1uLmhpZGVPbk1vYmlsZSAmJiBpc01vYmlsZVwiIFtuZ1N0eWxlXT1cInsgJ3dpZHRoJzogY29sdW1uLmNvbHVtbldpZHRoIH1cIj5cclxuICAgICAgICAgICAgPGRpdj57eyBjb2x1bW4uZmllbGRDb2x1bW5UaXRsZSB9fTwvZGl2PlxyXG4gICAgICAgICAgPC90aD5cclxuXHJcbiAgICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZGF0YVwiIFtjbGFzcy5oaWRlLW1vYmlsZV09XCJjb2x1bW4uaGlkZU9uTW9iaWxlICYmIGlzTW9iaWxlXCIgW25nU3R5bGVdPVwieyAnd2lkdGgnOiBjb2x1bW4uY29sdW1uV2lkdGggfVwiPlxyXG4gICAgICAgICAgICBAaWYoY29sdW1uLmlzRGF0ZSkge1xyXG4gICAgICAgICAgICAgIHt7IGRhdGFbY29sdW1uLmZpZWxkXSB8IGRhdGU6J3Nob3J0RGF0ZScgfX1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAZWxzZSBpZiAoY29sdW1uLmlzTnVtYmVyKSB7XHJcbiAgICAgICAgICAgICAgQGlmIChjb2x1bW4uaXNOdW1iZXIubmVlZHNSb3VuZGVkKSB7XHJcbiAgICAgICAgICAgICAgICBAaWYgKGNvbHVtbi5pc051bWJlci5wZXJjZW50YWdlKSB7XHJcbiAgICAgICAgICAgICAgICAgIHt7IGRhdGFbY29sdW1uLmZpZWxkXSB8IG51bWJlcjonMC4wLTAnIH19JVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGVsc2UgaWYgKGNvbHVtbi5pc051bWJlci5tb25leSkge1xyXG4gICAgICAgICAgICAgICAgICAke3sgZGF0YVtjb2x1bW4uZmllbGRdIHwgbnVtYmVyOicwLjAtMCcgfX1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAge3sgZGF0YVtjb2x1bW4uZmllbGRdIHwgbnVtYmVyOicwLjAtMCcgfX1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgICAgICAgIEBpZiAoY29sdW1uLmlzTnVtYmVyLnBlcmNlbnRhZ2UpIHtcclxuICAgICAgICAgICAgICAgICAge3sgZGF0YVtjb2x1bW4uZmllbGRdIHwgbnVtYmVyOicuMi0yJyB9fSVcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBlbHNlIGlmIChjb2x1bW4uaXNOdW1iZXIubW9uZXkpIHtcclxuICAgICAgICAgICAgICAgICAgJHt7IGRhdGFbY29sdW1uLmZpZWxkXSB8IG51bWJlcjonLjItMicgfX1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAge3sgZGF0YVtjb2x1bW4uZmllbGRdIHwgbnVtYmVyOicuMi0yJyB9fVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAZWxzZSBpZiAoY29sdW1uLmlzQ2hlY2tib3gpIHtcclxuICAgICAgICAgICAgICA8bWF0LWNoZWNrYm94IFsobmdNb2RlbCldPVwiZGF0YVtjb2x1bW4uZmllbGRdXCIgW2Rpc2FibGVkXT1cImNvbHVtbi5pc0NoZWNrYm94Wydpc0Rpc2FibGVkJ11cIiAvPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBlbHNlIGlmIChjb2x1bW4uaXNIeXBlcmxpbmspIHtcclxuICAgICAgICAgICAgICA8YSBbaHJlZl09XCJkYXRhW2NvbHVtbi5pc0h5cGVybGluay5saW5rRmllbGRdXCIgdGFyZ2V0PVwiX2JsYW5rXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBkYXRhW2NvbHVtbi5maWVsZF0gfX1cclxuICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGVsc2UgaWYgKGNvbHVtbi5pc0J1dHRvbikge1xyXG4gICAgICAgICAgICAgIEBpZiAoY29sdW1uLmlzQnV0dG9uLmlzSWNvbikge1xyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdFRvb2x0aXBdPVwiY29sdW1uLmlzQnV0dG9uLmlzSWNvbi50b29sVGlwXCIgW2Rpc2FibGVkXT1cImNvbHVtbi5pc0J1dHRvbi5pc0Rpc2FibGVkXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvbHVtbi5pc0J1dHRvbi5pc0Rpc2FibGVkID8gdW5kZWZpbmVkIDogYnV0dG9uQ2xpY2soZGF0YSwgY29sdW1uLmZpZWxkKVwiPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWljb24+e3tjb2x1bW4uaXNCdXR0b24uaXNJY29uLmljb25OYW1lfX08L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgfSBAZWxzZSBpZiAoY29sdW1uLmlzQnV0dG9uLmlzQ2hlY2tib3gpIHtcclxuICAgICAgICAgICAgICAgIDxtYXQtY2hlY2tib3ggW21hdFRvb2x0aXBdPVwiY29sdW1uLmlzQnV0dG9uLmlzQ2hlY2tib3gudG9vbFRpcFwiXHJcbiAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZGF0YVtjb2x1bW4uZmllbGRdXCIgKGNsaWNrKT1cImJ1dHRvbkNsaWNrKGRhdGEsIGNvbHVtbi5maWVsZClcIiAvPlxyXG4gICAgICAgICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBbZGlzYWJsZWRdPVwiY29sdW1uLmlzQnV0dG9uLmlzRGlzYWJsZWRcIlxyXG4gICAgICAgICAgICAgICAgICBbY29sb3JdPVwiY29sdW1uLmlzQnV0dG9uLmlzRGlzYWJsZWQgPyB1bmRlZmluZWQgOiAncHJpbWFyeSdcIlxyXG4gICAgICAgICAgICAgICAgICBbY2xhc3MuYnV0dG9uLWV4dHJhLXBhZGRpbmddPVwiY29sdW1uLmlzQnV0dG9uLmV4dHJhUGFkZGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjb2x1bW4uaXNCdXR0b24uaXNEaXNhYmxlZCA/IHVuZGVmaW5lZCA6IGJ1dHRvbkNsaWNrKGRhdGEsIGNvbHVtbi5maWVsZClcIj5cclxuICAgICAgICAgICAgICAgICAge3tjb2x1bW4uaXNCdXR0b24udGV4dH19XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGVsc2UgaWYgKGNvbHVtbi5uZXN0ZWRGaWVsZCkge1xyXG4gICAgICAgICAgICAgIHt7IGdldE5lc3RlZEZpZWxkVmFsdWUoZGF0YVtjb2x1bW4uZmllbGRdLCBjb2x1bW4ubmVzdGVkRmllbGQpIH19XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGVsc2UgaWYgKGNvbHVtbi5kb3VibGVOZXN0ZWRGaWVsZCkge1xyXG4gICAgICAgICAgICAgIHt7IGdldERvdWJsZU5lc3RlZEZpZWxkVmFsdWUoZGF0YSwgY29sdW1uLmRvdWJsZU5lc3RlZEZpZWxkLmZpZWxkLCBjb2x1bW4uZG91YmxlTmVzdGVkRmllbGQubmVzdGVkRmllbGQpIH19XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGVsc2UgaWYgKGNvbHVtbi5pc0VkaXRhYmxlKSB7XHJcbiAgICAgICAgICAgICAgICBAaWYgKGNvbHVtbi5pc0VkaXRhYmxlLnR5cGUgPT09ICd0ZXh0YXJlYScpIHtcclxuICAgICAgICAgICAgICAgICAgPHRleHRhcmVhIHN0eWxlPVwid2lkdGg6IDEwMCU7XCIgW3Jvd3NdPVwiM1wiIFsobmdNb2RlbCldPVwiZGF0YVtjb2x1bW4uZmllbGRdXCIgW2Rpc2FibGVkXT1cImNvbHVtbi5pc0VkaXRhYmxlLmRpc2FibGUgIT09IHVuZGVmaW5lZCAmJiBjb2x1bW4uaXNFZGl0YWJsZS5kaXNhYmxlXCI+PC90ZXh0YXJlYT5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBlbHNlIGlmIChjb2x1bW4uaXNFZGl0YWJsZS5pc051bWJlcikge1xyXG4gICAgICAgICAgICAgICAgICBAaWYgKGNvbHVtbi5pc0VkaXRhYmxlLmlzTnVtYmVyLm5lZWRzUm91bmRlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCBbbmdNb2RlbF09XCJkYXRhW2NvbHVtbi5maWVsZF0gfCByb3VuZE51bWJlclwiICBzdHlsZT1cIndpZHRoOiA1NSU7XCIgIFtkaXNhYmxlZF09XCJjb2x1bW4uaXNFZGl0YWJsZS5kaXNhYmxlICE9PSB1bmRlZmluZWQgJiYgY29sdW1uLmlzRWRpdGFibGUuZGlzYWJsZVwiIHR5cGU9XCJudW1iZXJcIj5cclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICBAZWxzZSBpZiAoY29sdW1uLmlzRWRpdGFibGUuaXNOdW1iZXIuZGVjaW1hbFBvaW50cykge1xyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCBbbmdNb2RlbF09XCJkYXRhW2NvbHVtbi5maWVsZF0gfCBkZWNpbWFsUG9pbnRzOmNvbHVtbi5pc0VkaXRhYmxlLmlzTnVtYmVyLmRlY2ltYWxQb2ludHNcIiAobmdNb2RlbENoYW5nZSk9XCJlZGl0YWJsZUZpZWxkQ2hhbmdlKGRhdGEsIGNvbHVtbi5maWVsZCwgJGV2ZW50KVwiIHN0eWxlPVwid2lkdGg6IDU1JTtcIiAgW2Rpc2FibGVkXT1cImNvbHVtbi5pc0VkaXRhYmxlLmRpc2FibGUgIT09IHVuZGVmaW5lZCAmJiBjb2x1bW4uaXNFZGl0YWJsZS5kaXNhYmxlXCIgdHlwZT1cIm51bWJlclwiPlxyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgW25nTW9kZWxdPVwiZGF0YVtjb2x1bW4uZmllbGRdXCIgKG5nTW9kZWxDaGFuZ2UpPVwiZWRpdGFibGVGaWVsZENoYW5nZShkYXRhLCBjb2x1bW4uZmllbGQsICRldmVudClcIiBzdHlsZT1cIndpZHRoOiA1NSU7XCIgIFtkaXNhYmxlZF09XCJjb2x1bW4uaXNFZGl0YWJsZS5kaXNhYmxlICE9PSB1bmRlZmluZWQgJiYgY29sdW1uLmlzRWRpdGFibGUuZGlzYWJsZVwiIHR5cGU9XCJudW1iZXJcIj5cclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICA8aW5wdXQgWyhuZ01vZGVsKV09XCJkYXRhW2NvbHVtbi5maWVsZF1cIiAobmdNb2RlbENoYW5nZSk9XCJlZGl0YWJsZUZpZWxkQ2hhbmdlKGRhdGEsIGNvbHVtbi5maWVsZCwgJGV2ZW50KVwiIHN0eWxlPVwid2lkdGg6IDU1JTtcIiAgW2Rpc2FibGVkXT1cImNvbHVtbi5pc0VkaXRhYmxlLmRpc2FibGUgIT09IHVuZGVmaW5lZCAmJiBjb2x1bW4uaXNFZGl0YWJsZS5kaXNhYmxlXCIgdHlwZT1cInRleHRcIj5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAZWxzZSB7XHJcbiAgICAgICAgICAgICAge3sgZGF0YVtjb2x1bW4uZmllbGRdIH19XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiY29sdW1uTmFtZXM7IHN0aWNreTogdHJ1ZVwiPjwvdHI+XHJcbiAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBjb2x1bW5OYW1lcztcIiBjbGFzcz1cInRhYmxlLXJvd1wiPjwvdHI+XHJcbiAgICAgIDx0ciBtYXQtcm93ICptYXROb0RhdGFSb3c+XHJcbiAgICAgICAgPHRkIGNsYXNzPVwibWF0LWNlbGxcIiBjb2xzcGFuPVwiOTk5OVwiPlxyXG4gICAgICAgICAgTm8gcmVjb3JkcyBleGlzdC5cclxuICAgICAgICA8L3RkPlxyXG4gICAgICA8L3RyPlxyXG4gICAgPC90YWJsZT5cclxuXHJcbiAgICBAaWYgKHNob3dQYWdpbmF0b3IoKSkge1xyXG4gICAgICA8bWF0LXBhZ2luYXRvciBbY2xhc3MucGFnaW5hdG9yLXN0aWNreV09XCJwYWdpbmF0b3JTdGlja3koKVwiIFtwYWdlU2l6ZU9wdGlvbnNdPVwicGFnZVNpemVPcHRpb25zXCIgc2hvd0ZpcnN0TGFzdEJ1dHRvbnMgLz5cclxuICAgIH1cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvdGFibGUvc3JjL21vZGVsL3RhYmxlLWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBUYWJsZUNvbHVtbiB7XHJcbiAgZmllbGQ6IHN0cmluZztcclxuICBmaWVsZENvbHVtblRpdGxlOiBzdHJpbmc7XHJcbiAgY29sdW1uV2lkdGg/OiBzdHJpbmc7XHJcblxyXG4gIGlzRGF0ZT86IGJvb2xlYW47XHJcbiAgaXNQZXJjZW50PzogYm9vbGVhbjtcclxuXHJcbiAgaXNOdW1iZXI/OiB7IG5lZWRzUm91bmRlZDogYm9vbGVhbiwgcGVyY2VudGFnZT86IGJvb2xlYW4sIG1vbmV5PzogYm9vbGVhbiB9O1xyXG5cclxuICBpc0NoZWNrYm94PzogeyBpc0Rpc2FibGVkOiBib29sZWFuIH07XHJcblxyXG4gIGlzQnV0dG9uPzogeyBpc0Rpc2FibGVkOiBib29sZWFuLCB0ZXh0Pzogc3RyaW5nLCBpc0ljb24/OiB7IGljb25OYW1lOiBzdHJpbmcsIHRvb2xUaXA6IHN0cmluZyB9LCBpc0NoZWNrYm94PzogeyB0b29sVGlwOiBzdHJpbmcsIG11bHRpcGxlU2VsZWN0OiBib29sZWFuIH0sIGV4dHJhUGFkZGluZz86IGJvb2xlYW4gfTtcclxuXHJcbiAgaXNFZGl0YWJsZT86IHtcclxuICAgIHR5cGU6IHN0cmluZyxcclxuICAgIGRpc2FibGU/OiBib29sZWFuLFxyXG4gICAgaXNOdW1iZXI/OiB7IG5lZWRzUm91bmRlZDogYm9vbGVhbiwgZGVjaW1hbFBvaW50cz86IG51bWJlciB9XHJcbiAgfTtcclxuXHJcbiAgaGlkZU9uTW9iaWxlPzogYm9vbGVhbjtcclxuXHJcbiAgbmVzdGVkRmllbGQ/OiBzdHJpbmc7XHJcbiAgZG91YmxlTmVzdGVkRmllbGQ/OiB7IGZpZWxkOiBzdHJpbmcsIG5lc3RlZEZpZWxkOiBzdHJpbmcgfVxyXG5cclxuICBpc0h5cGVybGluaz86IHsgbGlua0ZpZWxkOiBzdHJpbmcgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class DecimalPointsPipe {
|
|
4
|
-
transform(val, numberOfDecimalPoints) {
|
|
5
|
-
return parseFloat(val.toString()).toFixed(numberOfDecimalPoints);
|
|
6
|
-
}
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DecimalPointsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
8
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: DecimalPointsPipe, isStandalone: true, name: "decimalPoints" }); }
|
|
9
|
-
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DecimalPointsPipe, decorators: [{
|
|
11
|
-
type: Pipe,
|
|
12
|
-
args: [{ name: 'decimalPoints', standalone: true }]
|
|
13
|
-
}] });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjaW1hbFBvaW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3RhYmxlL3NyYy9waXBlcy9kZWNpbWFsUG9pbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUdwRCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFNBQVMsQ0FBQyxHQUFRLEVBQUUscUJBQTZCO1FBQy9DLE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ25FLENBQUM7OEdBSFUsaUJBQWlCOzRHQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBRDdCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbkBQaXBlKHsgbmFtZTogJ2RlY2ltYWxQb2ludHMnLCBzdGFuZGFsb25lOiB0cnVlIH0pXHJcbmV4cG9ydCBjbGFzcyBEZWNpbWFsUG9pbnRzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm17XHJcbiAgdHJhbnNmb3JtKHZhbDogYW55LCBudW1iZXJPZkRlY2ltYWxQb2ludHM6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHBhcnNlRmxvYXQodmFsLnRvU3RyaW5nKCkpLnRvRml4ZWQobnVtYmVyT2ZEZWNpbWFsUG9pbnRzKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class RoundNumberPipe {
|
|
4
|
-
transform(val) {
|
|
5
|
-
return Math.round(+val);
|
|
6
|
-
}
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: RoundNumberPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
8
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: RoundNumberPipe, isStandalone: true, name: "roundNumber" }); }
|
|
9
|
-
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: RoundNumberPipe, decorators: [{
|
|
11
|
-
type: Pipe,
|
|
12
|
-
args: [{ name: 'roundNumber', standalone: true }]
|
|
13
|
-
}] });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91bmROdW1iZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi90YWJsZS9zcmMvcGlwZXMvcm91bmROdW1iZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBR3BELE1BQU0sT0FBTyxlQUFlO0lBQzFCLFNBQVMsQ0FBQyxHQUFRO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLENBQUM7OEdBSFUsZUFBZTs0R0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQUQzQixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5AUGlwZSh7IG5hbWU6ICdyb3VuZE51bWJlcicsIHN0YW5kYWxvbmU6IHRydWUgfSlcclxuZXhwb3J0IGNsYXNzIFJvdW5kTnVtYmVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm17XHJcbiAgdHJhbnNmb3JtKHZhbDogYW55KSB7XHJcbiAgICByZXR1cm4gTWF0aC5yb3VuZCgrdmFsKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export * from './model/table-column';
|
|
2
|
-
export * from './components/table/table.component';
|
|
3
|
-
export * from './table.module';
|
|
4
|
-
export * from './pipes/roundNumber';
|
|
5
|
-
export * from './pipes/decimalPoints';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvdGFibGUvc3JjL3RhYmxlLmFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDO0FBRXJDLGNBQWMsb0NBQW9DLENBQUM7QUFFbkQsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVsL3RhYmxlLWNvbHVtbic7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvdGFibGUvdGFibGUuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUubW9kdWxlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvcm91bmROdW1iZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL2RlY2ltYWxQb2ludHMnO1xyXG4iXX0=
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
5
|
-
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
6
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
7
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
8
|
-
import { MatInputModule } from '@angular/material/input';
|
|
9
|
-
import { MatPaginatorModule } from '@angular/material/paginator';
|
|
10
|
-
import { MatSortModule } from '@angular/material/sort';
|
|
11
|
-
import { MatTableModule } from '@angular/material/table';
|
|
12
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
13
|
-
import { TableComponent } from './components/table/table.component';
|
|
14
|
-
import { RoundNumberPipe } from './pipes/roundNumber';
|
|
15
|
-
import { DecimalPointsPipe } from './pipes/decimalPoints';
|
|
16
|
-
import * as i0 from "@angular/core";
|
|
17
|
-
export class TableModule {
|
|
18
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
19
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: TableModule, imports: [CommonModule,
|
|
20
|
-
FormsModule,
|
|
21
|
-
ReactiveFormsModule,
|
|
22
|
-
MatButtonModule,
|
|
23
|
-
MatCheckboxModule,
|
|
24
|
-
MatFormFieldModule,
|
|
25
|
-
MatInputModule,
|
|
26
|
-
MatTableModule,
|
|
27
|
-
MatSortModule,
|
|
28
|
-
MatPaginatorModule,
|
|
29
|
-
MatTooltipModule,
|
|
30
|
-
MatIconModule,
|
|
31
|
-
TableComponent,
|
|
32
|
-
RoundNumberPipe,
|
|
33
|
-
DecimalPointsPipe], exports: [TableComponent,
|
|
34
|
-
RoundNumberPipe,
|
|
35
|
-
DecimalPointsPipe] }); }
|
|
36
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TableModule, imports: [CommonModule,
|
|
37
|
-
FormsModule,
|
|
38
|
-
ReactiveFormsModule,
|
|
39
|
-
MatButtonModule,
|
|
40
|
-
MatCheckboxModule,
|
|
41
|
-
MatFormFieldModule,
|
|
42
|
-
MatInputModule,
|
|
43
|
-
MatTableModule,
|
|
44
|
-
MatSortModule,
|
|
45
|
-
MatPaginatorModule,
|
|
46
|
-
MatTooltipModule,
|
|
47
|
-
MatIconModule,
|
|
48
|
-
TableComponent] }); }
|
|
49
|
-
}
|
|
50
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TableModule, decorators: [{
|
|
51
|
-
type: NgModule,
|
|
52
|
-
args: [{
|
|
53
|
-
declarations: [],
|
|
54
|
-
imports: [
|
|
55
|
-
CommonModule,
|
|
56
|
-
FormsModule,
|
|
57
|
-
ReactiveFormsModule,
|
|
58
|
-
MatButtonModule,
|
|
59
|
-
MatCheckboxModule,
|
|
60
|
-
MatFormFieldModule,
|
|
61
|
-
MatInputModule,
|
|
62
|
-
MatTableModule,
|
|
63
|
-
MatSortModule,
|
|
64
|
-
MatPaginatorModule,
|
|
65
|
-
MatTooltipModule,
|
|
66
|
-
MatIconModule,
|
|
67
|
-
TableComponent,
|
|
68
|
-
RoundNumberPipe,
|
|
69
|
-
DecimalPointsPipe
|
|
70
|
-
],
|
|
71
|
-
exports: [
|
|
72
|
-
TableComponent,
|
|
73
|
-
RoundNumberPipe,
|
|
74
|
-
DecimalPointsPipe
|
|
75
|
-
]
|
|
76
|
-
}]
|
|
77
|
-
}] });
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvdGFibGUvc3JjL3RhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQThCMUQsTUFBTSxPQUFPLFdBQVc7OEdBQVgsV0FBVzsrR0FBWCxXQUFXLFlBeEJwQixZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUVuQixlQUFlO1lBQ2YsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsY0FBYztZQUNkLGFBQWE7WUFDYixrQkFBa0I7WUFDbEIsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFFYixjQUFjO1lBQ2QsZUFBZTtZQUNmLGlCQUFpQixhQUdqQixjQUFjO1lBQ2QsZUFBZTtZQUNmLGlCQUFpQjsrR0FHUixXQUFXLFlBeEJwQixZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUVuQixlQUFlO1lBQ2YsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsY0FBYztZQUNkLGFBQWE7WUFDYixrQkFBa0I7WUFDbEIsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFFYixjQUFjOzsyRkFVTCxXQUFXO2tCQTVCdkIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsRUFDYjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFFbkIsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBRWIsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixpQkFBaUI7cUJBQ2xCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbmltcG9ydCB7IE1hdFBhZ2luYXRvck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XHJcbmltcG9ydCB7IE1hdFNvcnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcclxuaW1wb3J0IHsgTWF0VGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuXHJcbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJvdW5kTnVtYmVyUGlwZSB9IGZyb20gJy4vcGlwZXMvcm91bmROdW1iZXInO1xyXG5pbXBvcnQgeyBEZWNpbWFsUG9pbnRzUGlwZSB9IGZyb20gJy4vcGlwZXMvZGVjaW1hbFBvaW50cyc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG5cclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIE1hdENoZWNrYm94TW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBNYXRUYWJsZU1vZHVsZSxcclxuICAgIE1hdFNvcnRNb2R1bGUsXHJcbiAgICBNYXRQYWdpbmF0b3JNb2R1bGUsXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuXHJcbiAgICBUYWJsZUNvbXBvbmVudCxcclxuICAgIFJvdW5kTnVtYmVyUGlwZSxcclxuICAgIERlY2ltYWxQb2ludHNQaXBlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBUYWJsZUNvbXBvbmVudCxcclxuICAgIFJvdW5kTnVtYmVyUGlwZSxcclxuICAgIERlY2ltYWxQb2ludHNQaXBlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVNb2R1bGUgeyB9XHJcbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './upload.api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXZlbGFuZHByaWNlLW5neC1saWItdXBsb2FkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvdXBsb2FkL3NyYy9jbGVhdmVsYW5kcHJpY2Utbmd4LWxpYi11cGxvYWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi91cGxvYWQuYXBpJztcbiJdfQ==
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Component, inject, output } from '@angular/core';
|
|
2
|
-
import { MatDialog } from '@angular/material/dialog';
|
|
3
|
-
import { MatButton } from '@angular/material/button';
|
|
4
|
-
import { UploadService } from './../../services/upload.service';
|
|
5
|
-
import { UploadDialogComponent } from './../upload-dialog/upload-dialog.component';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class UploadComponent {
|
|
8
|
-
constructor() {
|
|
9
|
-
this.#dialogService = inject(MatDialog);
|
|
10
|
-
this.uploadService = inject(UploadService);
|
|
11
|
-
this.dialogClosed = output();
|
|
12
|
-
}
|
|
13
|
-
#dialogService;
|
|
14
|
-
openUploadDialog() {
|
|
15
|
-
this.#dialogService.open(UploadDialogComponent, { width: '50%' })
|
|
16
|
-
.afterClosed().subscribe(() => this.dialogClosed.emit());
|
|
17
|
-
}
|
|
18
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: UploadComponent, isStandalone: true, selector: "cp-upload", outputs: { dialogClosed: "dialogClosed" }, ngImport: i0, template: '<button mat-raised-button (click)="openUploadDialog()">{{ uploadService.options.uploadButtonText }}</button>', isInline: true, dependencies: [{ kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
|
|
20
|
-
}
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UploadComponent, decorators: [{
|
|
22
|
-
type: Component,
|
|
23
|
-
args: [{
|
|
24
|
-
selector: 'cp-upload',
|
|
25
|
-
standalone: true,
|
|
26
|
-
imports: [
|
|
27
|
-
MatButton
|
|
28
|
-
],
|
|
29
|
-
template: '<button mat-raised-button (click)="openUploadDialog()">{{ uploadService.options.uploadButtonText }}</button>'
|
|
30
|
-
}]
|
|
31
|
-
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvY29tcG9uZW50cy91cGxvYWQvdXBsb2FkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXJELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDaEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7O0FBVW5GLE1BQU0sT0FBTyxlQUFlO0lBUjVCO1FBU0ksbUJBQWMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkMsa0JBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFdEMsaUJBQVksR0FBRyxNQUFNLEVBQUUsQ0FBQztLQU0zQjtJQVRHLGNBQWMsQ0FBcUI7SUFLbkMsZ0JBQWdCO1FBQ1osSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7YUFDNUQsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNqRSxDQUFDOzhHQVRRLGVBQWU7a0dBQWYsZUFBZSxnSEFGZCw4R0FBOEcsNERBRnBILFNBQVM7OzJGQUlKLGVBQWU7a0JBUjNCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUU7d0JBQ0wsU0FBUztxQkFDWjtvQkFDRCxRQUFRLEVBQUUsOEdBQThHO2lCQUMzSCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuXHJcbmltcG9ydCB7IE1hdEJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IFVwbG9hZFNlcnZpY2UgfSBmcm9tICcuLy4uLy4uL3NlcnZpY2VzL3VwbG9hZC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXBsb2FkRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi8uLi91cGxvYWQtZGlhbG9nL3VwbG9hZC1kaWFsb2cuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjcC11cGxvYWQnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBNYXRCdXR0b25cclxuICAgIF0sXHJcbiAgICB0ZW1wbGF0ZTogJzxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cIm9wZW5VcGxvYWREaWFsb2coKVwiPnt7IHVwbG9hZFNlcnZpY2Uub3B0aW9ucy51cGxvYWRCdXR0b25UZXh0IH19PC9idXR0b24+J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVXBsb2FkQ29tcG9uZW50IHtcclxuICAgICNkaWFsb2dTZXJ2aWNlID0gaW5qZWN0KE1hdERpYWxvZyk7XHJcbiAgICB1cGxvYWRTZXJ2aWNlID0gaW5qZWN0KFVwbG9hZFNlcnZpY2UpO1xyXG5cclxuICAgIGRpYWxvZ0Nsb3NlZCA9IG91dHB1dCgpO1xyXG5cclxuICAgIG9wZW5VcGxvYWREaWFsb2coKSB7XHJcbiAgICAgICAgdGhpcy4jZGlhbG9nU2VydmljZS5vcGVuKFVwbG9hZERpYWxvZ0NvbXBvbmVudCwgeyB3aWR0aDogJzUwJScgfSlcclxuICAgICAgICAgICAgLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKCgpID0+IHRoaXMuZGlhbG9nQ2xvc2VkLmVtaXQoKSk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { AsyncPipe } from '@angular/common';
|
|
2
|
-
import { Component, inject, viewChild } from '@angular/core';
|
|
3
|
-
import { MatButton } from '@angular/material/button';
|
|
4
|
-
import { MatDialogActions, MatDialogClose, MatDialogContent, MatDialogRef } from '@angular/material/dialog';
|
|
5
|
-
import { MatList, MatListItem } from '@angular/material/list';
|
|
6
|
-
import { MatProgressBar } from '@angular/material/progress-bar';
|
|
7
|
-
import { forkJoin } from 'rxjs';
|
|
8
|
-
import { UploadService } from './../../services/upload.service';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export class UploadDialogComponent {
|
|
11
|
-
constructor() {
|
|
12
|
-
this.services = {
|
|
13
|
-
dialogRef: inject((MatDialogRef)),
|
|
14
|
-
upload: inject(UploadService)
|
|
15
|
-
};
|
|
16
|
-
this.file = viewChild.required('file');
|
|
17
|
-
this.files = new Set();
|
|
18
|
-
this.canBeClosed = true;
|
|
19
|
-
this.primaryButtonText = this.services.upload.options.uploadDialogUploadButtonText;
|
|
20
|
-
this.showCancelButton = true;
|
|
21
|
-
this.uploading = false;
|
|
22
|
-
this.uploadSuccessful = false;
|
|
23
|
-
}
|
|
24
|
-
addFiles() {
|
|
25
|
-
this.file().nativeElement.click();
|
|
26
|
-
}
|
|
27
|
-
onFilesAdded() {
|
|
28
|
-
const files = this.file().nativeElement.files;
|
|
29
|
-
for (const key in files) {
|
|
30
|
-
if (!isNaN(parseInt(key))) {
|
|
31
|
-
// See if the file already exists
|
|
32
|
-
this.services.upload.exists(files[key].name)
|
|
33
|
-
.subscribe(exists => {
|
|
34
|
-
if (exists) {
|
|
35
|
-
this.existingFileConflict = files[key].name;
|
|
36
|
-
}
|
|
37
|
-
if (!exists) {
|
|
38
|
-
this.files.add(files[key]);
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
closeDialog() {
|
|
45
|
-
// if everything was uploaded already, just close the dialog
|
|
46
|
-
if (this.uploadSuccessful) {
|
|
47
|
-
return this.services.dialogRef.close();
|
|
48
|
-
}
|
|
49
|
-
// set the component state to "uploading"
|
|
50
|
-
this.uploading = true;
|
|
51
|
-
// start the upload and save the progress map
|
|
52
|
-
this.progress = this.services.upload.upload(this.files);
|
|
53
|
-
// convert the progress map into an array
|
|
54
|
-
const allProgressObservables$ = [];
|
|
55
|
-
for (let key in this.progress) {
|
|
56
|
-
allProgressObservables$.push(this.progress[key].progress);
|
|
57
|
-
}
|
|
58
|
-
// Adjust the state variables
|
|
59
|
-
// The OK-button should have the text "Finish" now
|
|
60
|
-
this.primaryButtonText = this.services.upload.options.uploadDialogFinishButtonText;
|
|
61
|
-
// The dialog should not be closed while uploading
|
|
62
|
-
this.canBeClosed = false;
|
|
63
|
-
this.services.dialogRef.disableClose = true;
|
|
64
|
-
// Hide the cancel-button
|
|
65
|
-
this.showCancelButton = false;
|
|
66
|
-
// When all progress-observables are completed...
|
|
67
|
-
forkJoin(allProgressObservables$)
|
|
68
|
-
.subscribe({
|
|
69
|
-
complete: () => {
|
|
70
|
-
// ... the dialog can be closed again...
|
|
71
|
-
this.canBeClosed = true;
|
|
72
|
-
this.services.dialogRef.disableClose = false;
|
|
73
|
-
// ... the upload was successful...
|
|
74
|
-
this.uploadSuccessful = true;
|
|
75
|
-
// ... and the component is no longer uploading
|
|
76
|
-
this.uploading = false;
|
|
77
|
-
console.log('Upload complete', this.files);
|
|
78
|
-
this.services.dialogRef.close();
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UploadDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
83
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: UploadDialogComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "file", first: true, predicate: ["file"], descendants: true, isSignal: true }], ngImport: i0, template: "<input type=\"file\" #file style=\"display: none\" (change)=\"onFilesAdded()\" multiple />\r\n\r\n<div mat-dialog-title id=\"title\">\r\n <div>{{ services.upload.options.uploadDialogTitle }}</div>\r\n <button [disabled]=\"uploading || uploadSuccessful\" mat-raised-button color=\"primary\" class=\"add-files-btn\" (click)=\"addFiles()\">\r\n {{ services.upload.options.uploadDialogAddFilesButtonText }}\r\n </button>\r\n</div>\r\n\r\n@if (existingFileConflict) {\r\n <div id=\"conflict\">\r\n {{ existingFileConflict }} already exists on the server and cannot be overwritten\r\n </div>\r\n}\r\n\r\n<mat-dialog-content>\r\n <mat-list>\r\n @for (file of files; track file) {\r\n <mat-list-item>\r\n <h4 mat-line>{{file.name}}</h4>\r\n @if (progress) {\r\n <mat-progress-bar mode=\"determinate\" [value]=\"progress[file.name].progress | async\"/>\r\n }\r\n </mat-list-item>\r\n }\r\n </mat-list>\r\n</mat-dialog-content>\r\n\r\n<mat-dialog-actions id=\"actions\">\r\n @if (showCancelButton) {\r\n <button mat-button mat-dialog-close>{{ services.upload.options.uploadDialogCancelButtonText }}</button>\r\n }\r\n @if (files.size > 0) {\r\n <button mat-raised-button color=\"primary\" [disabled]=\"!canBeClosed\" (click)=\"closeDialog()\">{{ primaryButtonText }}</button>\r\n }\r\n</mat-dialog-actions>\r\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: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "component", type: MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }] }); }
|
|
84
|
-
}
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UploadDialogComponent, decorators: [{
|
|
86
|
-
type: Component,
|
|
87
|
-
args: [{ standalone: true, imports: [
|
|
88
|
-
AsyncPipe,
|
|
89
|
-
MatButton,
|
|
90
|
-
MatDialogActions,
|
|
91
|
-
MatDialogClose,
|
|
92
|
-
MatDialogContent,
|
|
93
|
-
MatList,
|
|
94
|
-
MatListItem,
|
|
95
|
-
MatProgressBar
|
|
96
|
-
], template: "<input type=\"file\" #file style=\"display: none\" (change)=\"onFilesAdded()\" multiple />\r\n\r\n<div mat-dialog-title id=\"title\">\r\n <div>{{ services.upload.options.uploadDialogTitle }}</div>\r\n <button [disabled]=\"uploading || uploadSuccessful\" mat-raised-button color=\"primary\" class=\"add-files-btn\" (click)=\"addFiles()\">\r\n {{ services.upload.options.uploadDialogAddFilesButtonText }}\r\n </button>\r\n</div>\r\n\r\n@if (existingFileConflict) {\r\n <div id=\"conflict\">\r\n {{ existingFileConflict }} already exists on the server and cannot be overwritten\r\n </div>\r\n}\r\n\r\n<mat-dialog-content>\r\n <mat-list>\r\n @for (file of files; track file) {\r\n <mat-list-item>\r\n <h4 mat-line>{{file.name}}</h4>\r\n @if (progress) {\r\n <mat-progress-bar mode=\"determinate\" [value]=\"progress[file.name].progress | async\"/>\r\n }\r\n </mat-list-item>\r\n }\r\n </mat-list>\r\n</mat-dialog-content>\r\n\r\n<mat-dialog-actions id=\"actions\">\r\n @if (showCancelButton) {\r\n <button mat-button mat-dialog-close>{{ services.upload.options.uploadDialogCancelButtonText }}</button>\r\n }\r\n @if (files.size > 0) {\r\n <button mat-raised-button color=\"primary\" [disabled]=\"!canBeClosed\" (click)=\"closeDialog()\">{{ primaryButtonText }}</button>\r\n }\r\n</mat-dialog-actions>\r\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"] }]
|
|
97
|
-
}] });
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi91cGxvYWQvc3JjL2NvbXBvbmVudHMvdXBsb2FkLWRpYWxvZy91cGxvYWQtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvY29tcG9uZW50cy91cGxvYWQtZGlhbG9nL3VwbG9hZC1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQWMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RyxPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQWMsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFpQmhFLE1BQU0sT0FBTyxxQkFBcUI7SUFmbEM7UUFnQkUsYUFBUSxHQUFHO1lBQ1QsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFBLFlBQW1DLENBQUEsQ0FBQztZQUN0RCxNQUFNLEVBQUUsTUFBTSxDQUFDLGFBQWEsQ0FBQztTQUM5QixDQUFDO1FBRUYsU0FBSSxHQUFHLFNB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LEdBQUcsS0FBSyxDQUFDO2dCQUU3QyxtQ0FBbUM7Z0JBQ25DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7Z0JBRTdCLCtDQUErQztnQkFDL0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7Z0JBRXZCLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUUzQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0E1RlUscUJBQXFCO2tHQUFyQixxQkFBcUIsc0xDekJsQywyMUNBb0NBLDJNRHRCSSxTQUFTLDhDQUNULFNBQVMsaUxBQ1QsZ0JBQWdCLDRIQUNoQixjQUFjLHFMQUNkLGdCQUFnQix5R0FDaEIsT0FBTyw0RUFDUCxXQUFXLHFKQUNYLGNBQWM7OzJGQUlMLHFCQUFxQjtrQkFmakMsU0FBUztpQ0FFSSxJQUFJLFdBQ1A7d0JBQ1AsU0FBUzt3QkFDVCxTQUFTO3dCQUNULGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLE9BQU87d0JBQ1AsV0FBVzt3QkFDWCxjQUFjO3FCQUNmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBpbmplY3QsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dBY3Rpb25zLCBNYXREaWFsb2dDbG9zZSwgTWF0RGlhbG9nQ29udGVudCwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgTWF0TGlzdCwgTWF0TGlzdEl0ZW0gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcclxuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1iYXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmb3JrSm9pbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBVcGxvYWRTdGF0dXMgfSBmcm9tICcuLi8uLi9tb2RlbC91cGxvYWQtc3RhdHVzJztcclxuaW1wb3J0IHsgVXBsb2FkU2VydmljZSB9IGZyb20gJy4vLi4vLi4vc2VydmljZXMvdXBsb2FkLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGVVcmw6ICcuL3VwbG9hZC1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQXN5bmNQaXBlLFxyXG4gICAgTWF0QnV0dG9uLFxyXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcclxuICAgIE1hdERpYWxvZ0Nsb3NlLFxyXG4gICAgTWF0RGlhbG9nQ29udGVudCxcclxuICAgIE1hdExpc3QsXHJcbiAgICBNYXRMaXN0SXRlbSxcclxuICAgIE1hdFByb2dyZXNzQmFyXHJcbiAgXSxcclxuICBzdHlsZVVybDogJy4vdXBsb2FkLWRpYWxvZy5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFVwbG9hZERpYWxvZ0NvbXBvbmVudCB7XHJcbiAgc2VydmljZXMgPSB7XHJcbiAgICBkaWFsb2dSZWY6IGluamVjdChNYXREaWFsb2dSZWY8VXBsb2FkRGlhbG9nQ29tcG9uZW50PiksXHJcbiAgICB1cGxvYWQ6IGluamVjdChVcGxvYWRTZXJ2aWNlKVxyXG4gIH07XHJcblxyXG4gIGZpbGUgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZj4oJ2ZpbGUnKTtcclxuXHJcbiAgZmlsZXM6IFNldDxGaWxlPiA9IG5ldyBTZXQoKTtcclxuICBleGlzdGluZ0ZpbGVDb25mbGljdD86IHN0cmluZztcclxuXHJcbiAgLy8gU3RhdGVcclxuICBwcm9ncmVzcz86IFVwbG9hZFN0YXR1cztcclxuICBjYW5CZUNsb3NlZCA9IHRydWU7XHJcbiAgcHJpbWFyeUJ1dHRvblRleHQgPSB0aGlzLnNlcnZpY2VzLnVwbG9hZC5vcHRpb25zLnVwbG9hZERpYWxvZ1VwbG9hZEJ1dHRvblRleHQ7XHJcbiAgc2hvd0NhbmNlbEJ1dHRvbiA9IHRydWU7XHJcbiAgdXBsb2FkaW5nID0gZmFsc2U7XHJcbiAgdXBsb2FkU3VjY2Vzc2Z1bCA9IGZhbHNlO1xyXG5cclxuICBhZGRGaWxlcygpIHtcclxuICAgIHRoaXMuZmlsZSgpLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcclxuICB9XHJcblxyXG4gIG9uRmlsZXNBZGRlZCgpIHtcclxuICAgIGNvbnN0IGZpbGVzOiB7IFtrZXk6IHN0cmluZ106IEZpbGUgfSA9IHRoaXMuZmlsZSgpLm5hdGl2ZUVsZW1lbnQuZmlsZXM7XHJcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBmaWxlcykge1xyXG4gICAgICBpZiAoIWlzTmFOKHBhcnNlSW50KGtleSkpKSB7XHJcbiAgICAgICAgLy8gU2VlIGlmIHRoZSBmaWxlIGFscmVhZHkgZXhpc3RzXHJcbiAgICAgICAgdGhpcy5zZXJ2aWNlcy51cGxvYWQuZXhpc3RzKGZpbGVzW2tleV0ubmFtZSlcclxuICAgICAgICAgIC5zdWJzY3JpYmUoZXhpc3RzID0+IHtcclxuICAgICAgICAgICAgaWYgKGV4aXN0cykge1xyXG4gICAgICAgICAgICAgIHRoaXMuZXhpc3RpbmdGaWxlQ29uZmxpY3QgPSBmaWxlc1trZXldLm5hbWU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICghZXhpc3RzKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5maWxlcy5hZGQoZmlsZXNba2V5XSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbG9zZURpYWxvZygpIHtcclxuICAgIC8vIGlmIGV2ZXJ5dGhpbmcgd2FzIHVwbG9hZGVkIGFscmVhZHksIGp1c3QgY2xvc2UgdGhlIGRpYWxvZ1xyXG4gICAgaWYgKHRoaXMudXBsb2FkU3VjY2Vzc2Z1bCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlcy5kaWFsb2dSZWYuY2xvc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBzZXQgdGhlIGNvbXBvbmVudCBzdGF0ZSB0byBcInVwbG9hZGluZ1wiXHJcbiAgICB0aGlzLnVwbG9hZGluZyA9IHRydWU7XHJcblxyXG4gICAgLy8gc3RhcnQgdGhlIHVwbG9hZCBhbmQgc2F2ZSB0aGUgcHJvZ3Jlc3MgbWFwXHJcbiAgICB0aGlzLnByb2dyZXNzID0gdGhpcy5zZXJ2aWNlcy51cGxvYWQudXBsb2FkKHRoaXMuZmlsZXMpO1xyXG5cclxuICAgIC8vIGNvbnZlcnQgdGhlIHByb2dyZXNzIG1hcCBpbnRvIGFuIGFycmF5XHJcbiAgICBjb25zdCBhbGxQcm9ncmVzc09ic2VydmFibGVzJDogT2JzZXJ2YWJsZTxudW1iZXI+W10gPSBbXTtcclxuXHJcbiAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5wcm9ncmVzcykge1xyXG4gICAgICBhbGxQcm9ncmVzc09ic2VydmFibGVzJC5wdXNoKHRoaXMucHJvZ3Jlc3Nba2V5XS5wcm9ncmVzcyk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWRqdXN0IHRoZSBzdGF0ZSB2YXJpYWJsZXNcclxuXHJcbiAgICAvLyBUaGUgT0stYnV0dG9uIHNob3VsZCBoYXZlIHRoZSB0ZXh0IFwiRmluaXNoXCIgbm93XHJcbiAgICB0aGlzLnByaW1hcnlCdXR0b25UZXh0ID0gdGhpcy5zZXJ2aWNlcy51cGxvYWQub3B0aW9ucy51cGxvYWREaWFsb2dGaW5pc2hCdXR0b25UZXh0O1xyXG5cclxuICAgIC8vIFRoZSBkaWFsb2cgc2hvdWxkIG5vdCBiZSBjbG9zZWQgd2hpbGUgdXBsb2FkaW5nXHJcbiAgICB0aGlzLmNhbkJlQ2xvc2VkID0gZmFsc2U7XHJcbiAgICB0aGlzLnNlcnZpY2VzLmRpYWxvZ1JlZi5kaXNhYmxlQ2xvc2UgPSB0cnVlO1xyXG5cclxuICAgIC8vIEhpZGUgdGhlIGNhbmNlbC1idXR0b25cclxuICAgIHRoaXMuc2hvd0NhbmNlbEJ1dHRvbiA9IGZhbHNlO1xyXG5cclxuICAgIC8vIFdoZW4gYWxsIHByb2dyZXNzLW9ic2VydmFibGVzIGFyZSBjb21wbGV0ZWQuLi5cclxuICAgIGZvcmtKb2luKGFsbFByb2dyZXNzT2JzZXJ2YWJsZXMkKVxyXG4gICAgLnN1YnNjcmliZSh7XHJcbiAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgLy8gLi4uIHRoZSBkaWFsb2cgY2FuIGJlIGNsb3NlZCBhZ2Fpbi4uLlxyXG4gICAgICAgIHRoaXMuY2FuQmVDbG9zZWQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuc2VydmljZXMuZGlhbG9nUmVmLmRpc2FibGVDbG9zZSA9IGZhbHNlO1xyXG4gICAgXHJcbiAgICAgICAgLy8gLi4uIHRoZSB1cGxvYWQgd2FzIHN1Y2Nlc3NmdWwuLi5cclxuICAgICAgICB0aGlzLnVwbG9hZFN1Y2Nlc3NmdWwgPSB0cnVlO1xyXG4gICAgXHJcbiAgICAgICAgLy8gLi4uIGFuZCB0aGUgY29tcG9uZW50IGlzIG5vIGxvbmdlciB1cGxvYWRpbmdcclxuICAgICAgICB0aGlzLnVwbG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgICAgICBjb25zb2xlLmxvZygnVXBsb2FkIGNvbXBsZXRlJywgdGhpcy5maWxlcyk7XHJcblxyXG4gICAgICAgIHRoaXMuc2VydmljZXMuZGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8aW5wdXQgdHlwZT1cImZpbGVcIiAjZmlsZSBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIiAoY2hhbmdlKT1cIm9uRmlsZXNBZGRlZCgpXCIgbXVsdGlwbGUgLz5cclxuXHJcbjxkaXYgbWF0LWRpYWxvZy10aXRsZSBpZD1cInRpdGxlXCI+XHJcbiAgPGRpdj57eyBzZXJ2aWNlcy51cGxvYWQub3B0aW9ucy51cGxvYWREaWFsb2dUaXRsZSB9fTwvZGl2PlxyXG4gIDxidXR0b24gW2Rpc2FibGVkXT1cInVwbG9hZGluZyB8fCB1cGxvYWRTdWNjZXNzZnVsXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJhZGQtZmlsZXMtYnRuXCIgKGNsaWNrKT1cImFkZEZpbGVzKClcIj5cclxuICAgIHt7IHNlcnZpY2VzLnVwbG9hZC5vcHRpb25zLnVwbG9hZERpYWxvZ0FkZEZpbGVzQnV0dG9uVGV4dCB9fVxyXG4gIDwvYnV0dG9uPlxyXG48L2Rpdj5cclxuXHJcbkBpZiAoZXhpc3RpbmdGaWxlQ29uZmxpY3QpIHtcclxuICA8ZGl2IGlkPVwiY29uZmxpY3RcIj5cclxuICAgIHt7IGV4aXN0aW5nRmlsZUNvbmZsaWN0IH19IGFscmVhZHkgZXhpc3RzIG9uIHRoZSBzZXJ2ZXIgYW5kIGNhbm5vdCBiZSBvdmVyd3JpdHRlblxyXG4gIDwvZGl2PlxyXG59XHJcblxyXG48bWF0LWRpYWxvZy1jb250ZW50PlxyXG4gIDxtYXQtbGlzdD5cclxuICAgIEBmb3IgKGZpbGUgb2YgZmlsZXM7IHRyYWNrIGZpbGUpIHtcclxuICAgICAgPG1hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPGg0IG1hdC1saW5lPnt7ZmlsZS5uYW1lfX08L2g0PlxyXG4gICAgICAgIEBpZiAocHJvZ3Jlc3MpIHtcclxuICAgICAgICAgIDxtYXQtcHJvZ3Jlc3MtYmFyIG1vZGU9XCJkZXRlcm1pbmF0ZVwiIFt2YWx1ZV09XCJwcm9ncmVzc1tmaWxlLm5hbWVdLnByb2dyZXNzIHwgYXN5bmNcIi8+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICB9XHJcbiAgPC9tYXQtbGlzdD5cclxuPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XHJcblxyXG48bWF0LWRpYWxvZy1hY3Rpb25zIGlkPVwiYWN0aW9uc1wiPlxyXG4gIEBpZiAoc2hvd0NhbmNlbEJ1dHRvbikge1xyXG4gICAgPGJ1dHRvbiBtYXQtYnV0dG9uIG1hdC1kaWFsb2ctY2xvc2U+e3sgc2VydmljZXMudXBsb2FkLm9wdGlvbnMudXBsb2FkRGlhbG9nQ2FuY2VsQnV0dG9uVGV4dCB9fTwvYnV0dG9uPlxyXG4gIH1cclxuICBAaWYgKGZpbGVzLnNpemUgPiAwKSB7XHJcbiAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIFtkaXNhYmxlZF09XCIhY2FuQmVDbG9zZWRcIiAoY2xpY2spPVwiY2xvc2VEaWFsb2coKVwiPnt7IHByaW1hcnlCdXR0b25UZXh0IH19PC9idXR0b24+XHJcbiAgfVxyXG48L21hdC1kaWFsb2ctYWN0aW9ucz5cclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UtZmlsZS1pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvdXBsb2FkL3NyYy9tb2RlbC9kYXRhYmFzZS1maWxlLWluZm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRGF0YWJhc2VGaWxlSW5mbyB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICB0aW1lc3RhbXA6IHN0cmluZzsgLy9EYXRlO1xyXG4gICAgZGJBcHBJZDogc3RyaW5nO1xyXG4gICAgZXh0ZXJuYWxSZWZlcmVuY2VJZD86IG51bWJlcjtcclxuICAgIGNvbW1lbnQ/OiBzdHJpbmc7XHJcbn1cclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQtcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvbW9kZWwvZmlsZS11cGxvYWQtcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBGaWxlVXBsb2FkUmVxdWVzdCB7XHJcbiAgICBhcHBJZD86IHN0cmluZztcclxuICAgIG5hbWU/OiBzdHJpbmc7XHJcbiAgICBleHRlcm5hbFJlZmVyZW5jZUlkPzogbnVtYmVyO1xyXG4gICAgZm9sZGVyPzogc3RyaW5nO1xyXG59XHJcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXN5c3RlbS1maWxlLWluZm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi91cGxvYWQvc3JjL21vZGVsL2ZpbGVzeXN0ZW0tZmlsZS1pbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEZpbGVzeXN0ZW1GaWxlSW5mbyB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBhdHRyaWJ1dGVzPzogbnVtYmVyO1xyXG4gICAgY3JlYXRpb25UaW1lOiBzdHJpbmc7IC8vRGF0ZTtcclxuICAgIGRpcmVjdG9yeTogc3RyaW5nO1xyXG4gICAgZXh0ZW5zaW9uOiBzdHJpbmc7XHJcbiAgICBmdWxsbmFtZTogc3RyaW5nO1xyXG4gICAgbGFzdEFjY2Vzc1RpbWU6IHN0cmluZzsgLy9EYXRlO1xyXG4gICAgbGFzdFdyaXRlVGltZTogc3RyaW5nOyAvL0RhdGU7XHJcbiAgICByZWFkT25seTogYm9vbGVhbjtcclxuICAgIHNpemU6IG51bWJlcjtcclxufVxyXG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
;
|
|
2
|
-
;
|
|
3
|
-
;
|
|
4
|
-
export {};
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXNnLWZpbGUtY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvbW9kZWwvbXNnLWZpbGUtY29udGVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQyxDQUFDO0FBSUQsQ0FBQztBQWFELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbnRlcmZhY2UgTXNnRmlsZUNvbnRhY3Qge1xyXG4gICAgZGlzcGxheU5hbWU6IHN0cmluZztcclxuICAgIGVtYWlsOiBzdHJpbmc7XHJcbiAgICByYXc6IHN0cmluZztcclxufTtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTXNnRmlsZVJlY2lwaWVudCBleHRlbmRzIE1zZ0ZpbGVDb250YWN0IHtcclxuICAgIHR5cGU6IHN0cmluZztcclxufTtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTXNnRmlsZUNvbnRlbnQge1xyXG4gICAgYXR0YWNobWVudHM6IHN0cmluZ1tdO1xyXG4gICAgYm9keUh0bWw6IHN0cmluZztcclxuICAgIGJvZHlUZXh0OiBzdHJpbmc7XHJcbiAgICBjcmVhdGlvblRpbWU6IHN0cmluZztcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICBpbXBvcnRhbmNlOiBzdHJpbmc7XHJcbiAgICByZWNpcGllbnRzOiBNc2dGaWxlUmVjaXBpZW50W11cclxuICAgIHNlbmRlcjogTXNnRmlsZUNvbnRhY3Q7XHJcbiAgICBzZW50T246IHN0cmluZztcclxuICAgIHN1YmplY3Q6IHN0cmluZztcclxufTsiXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { InjectionToken } from "@angular/core";
|
|
2
|
-
export const UploadServiceOptionsToken = new InjectionToken('');
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXNlcnZpY2Utb3B0aW9ucy10b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvbW9kZWwvdXBsb2FkLXNlcnZpY2Utb3B0aW9ucy10b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLElBQUksY0FBYyxDQUF1QixFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgVXBsb2FkU2VydmljZU9wdGlvbnMgfSBmcm9tIFwiLi91cGxvYWQtc2VydmljZS1vcHRpb25zXCI7XHJcblxyXG5leHBvcnQgY29uc3QgVXBsb2FkU2VydmljZU9wdGlvbnNUb2tlbiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxVcGxvYWRTZXJ2aWNlT3B0aW9ucz4oJycpOyJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
;
|
|
2
|
-
export {};
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXNlcnZpY2Utb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvbW9kZWwvdXBsb2FkLXNlcnZpY2Utb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFlQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmd4TGliU2VydmljZU9wdGlvbnMgfSBmcm9tIFwiQGNsZWF2ZWxhbmRwcmljZS9uZ3gtbGliXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFVwbG9hZFNlcnZpY2VPcHRpb25zIGV4dGVuZHMgTmd4TGliU2VydmljZU9wdGlvbnMge1xyXG4gICAgZGF0YWJhc2VFbmRwb2ludD86IHN0cmluZztcclxuICAgIHVwbG9hZFBhdGg/OiBzdHJpbmc7XHJcbiAgICBjb21tZW50Pzogc3RyaW5nO1xyXG4gICAgZGJBcHBJZD86IHN0cmluZztcclxuICAgIGV4dGVybmFsUmVmZXJlbmNlSWQ/OiBzdHJpbmc7XHJcbiAgICAvLyBVSSBjb25maWd1cmF0aW9uXHJcbiAgICB1cGxvYWREaWFsb2dUaXRsZT86IHN0cmluZztcclxuICAgIHVwbG9hZEJ1dHRvblRleHQ/OiBzdHJpbmc7XHJcbiAgICB1cGxvYWREaWFsb2dDYW5jZWxCdXR0b25UZXh0Pzogc3RyaW5nO1xyXG4gICAgdXBsb2FkRGlhbG9nRmluaXNoQnV0dG9uVGV4dD86IHN0cmluZztcclxuICAgIHVwbG9hZERpYWxvZ1VwbG9hZEJ1dHRvblRleHQ/OiBzdHJpbmc7XHJcbiAgICB1cGxvYWREaWFsb2dBZGRGaWxlc0J1dHRvblRleHQ/OiBzdHJpbmc7XHJcbn07Il19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLXN0YXR1cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3VwbG9hZC9zcmMvbW9kZWwvdXBsb2FkLXN0YXR1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFVwbG9hZFN0YXR1cyB7XHJcbiAgICBba2V5OiBzdHJpbmddOiB7XHJcbiAgICAgICAgcHJvZ3Jlc3M6IE9ic2VydmFibGU8bnVtYmVyPlxyXG4gICAgfVxyXG59Il19
|