@tilde-nlp/ngx-common 1.0.3 → 1.0.4

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.
@@ -3,9 +3,10 @@ import { FileUploadErrorTypeEnum } from './models/file-upload-error-type.enum';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/material/progress-bar";
5
5
  import * as i2 from "@angular/material/button";
6
- import * as i3 from "@angular/flex-layout/extended";
7
- import * as i4 from "@angular/common";
8
- import * as i5 from "../directives/drag-and-drop/drag-and-drop.directive";
6
+ import * as i3 from "@angular/material/icon";
7
+ import * as i4 from "@angular/flex-layout/extended";
8
+ import * as i5 from "@angular/common";
9
+ import * as i6 from "../directives/drag-and-drop/drag-and-drop.directive";
9
10
  export class FileUploadComponent {
10
11
  constructor() {
11
12
  this.fileChange = new EventEmitter();
@@ -72,10 +73,10 @@ export class FileUploadComponent {
72
73
  }
73
74
  }
74
75
  FileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
75
- FileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: FileUploadComponent, selector: "tld-file-upload", inputs: { accept: "accept", maxSize: "maxSize", multiple: "multiple", filePreviewProgress: "filePreviewProgress", allowEmpty: "allowEmpty", disabled: "disabled", extendedAcceptList: "extendedAcceptList" }, outputs: { fileChange: "fileChange", errorEvent: "errorEvent" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }, { propertyName: "inputButton", first: true, predicate: ["inputButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"], components: [{ type: i1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i3.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.DragAndDropDirective, selector: "[tldDragAndDrop]", outputs: ["fileDropped"] }] });
76
+ FileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: FileUploadComponent, selector: "tld-file-upload", inputs: { accept: "accept", maxSize: "maxSize", multiple: "multiple", filePreviewProgress: "filePreviewProgress", allowEmpty: "allowEmpty", disabled: "disabled", uploadIconName: "uploadIconName", extendedAcceptList: "extendedAcceptList" }, outputs: { fileChange: "fileChange", errorEvent: "errorEvent" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }, { propertyName: "inputButton", first: true, predicate: ["inputButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <mat-icon *ngIf=\"uploadIconName\">{{uploadIconName}}</mat-icon>\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"], components: [{ type: i1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.DragAndDropDirective, selector: "[tldDragAndDrop]", outputs: ["fileDropped"] }] });
76
77
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadComponent, decorators: [{
77
78
  type: Component,
78
- args: [{ selector: 'tld-file-upload', template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"] }]
79
+ args: [{ selector: 'tld-file-upload', template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <mat-icon *ngIf=\"uploadIconName\">{{uploadIconName}}</mat-icon>\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"] }]
79
80
  }], propDecorators: { fileInput: [{
80
81
  type: ViewChild,
81
82
  args: ['fileInput']
@@ -98,7 +99,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
98
99
  type: Input
99
100
  }], disabled: [{
100
101
  type: Input
102
+ }], uploadIconName: [{
103
+ type: Input
101
104
  }], extendedAcceptList: [{
102
105
  type: Input
103
106
  }] } });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7QUFTL0UsTUFBTSxPQUFPLG1CQUFtQjtJQU5oQztRQVVZLGVBQVUsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUM5RCxlQUFVLEdBQWtDLElBQUksWUFBWSxFQUFtQixDQUFDO1FBQ2xGLFlBQU8sR0FBYSxFQUFFLENBQUM7UUFPdEIsYUFBUSxHQUFHLEtBQUssQ0FBQztLQXNFM0I7SUE1RUMsSUFBYSxNQUFNLENBQUMsR0FBYTtRQUMvQixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUNuQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDcEQsQ0FBQztJQUNELElBQUksTUFBTSxLQUFLLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQSxDQUFDLENBQUM7SUFZcEMsZUFBZSxDQUFDLEtBQVk7UUFDMUIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQTBCLENBQUM7UUFDaEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQWlCLENB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QVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQUMsOEJBQThCLENBQUM7U0FDaEw7SUFDSCxDQUFDOztnSEFsRlUsbUJBQW1CO29HQUFuQixtQkFBbUIsc2ZBRUksVUFBVSw2QkNaOUMsaXFCQVVBOzJGREFhLG1CQUFtQjtrQkFOL0IsU0FBUzsrQkFFRSxpQkFBaUI7OEJBS0gsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXO2dCQUMwQixXQUFXO3NCQUExRCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBRXBDLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFFTSxNQUFNO3NCQUFsQixLQUFLO2dCQUtHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR0csa0JBQWtCO3NCQUExQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGaWxlVXBsb2FkRXJyb3JUeXBlRW51bSB9IGZyb20gJy4vbW9kZWxzL2ZpbGUtdXBsb2FkLWVycm9yLXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IEZpbGVVcGxvYWRFcnJvciB9IGZyb20gJy4vbW9kZWxzL2ZpbGUtdXBsb2FkLWVycm9yLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICd0bGQtZmlsZS11cGxvYWQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRmlsZVVwbG9hZENvbXBvbmVudCB7XHJcbiAgQFZpZXdDaGlsZCgnZmlsZUlucHV0JykgZmlsZUlucHV0ITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdpbnB1dEJ1dHRvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBpbnB1dEJ1dHRvbiE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIEBPdXRwdXQoKSBmaWxlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RmlsZVtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZVtdPigpO1xyXG4gIEBPdXRwdXQoKSBlcnJvckV2ZW50OiBFdmVudEVtaXR0ZXI8RmlsZVVwbG9hZEVycm9yPiA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZVVwbG9hZEVycm9yPigpO1xyXG4gIHByaXZhdGUgX2FjY2VwdDogc3RyaW5nW10gPSBbXTtcclxuICBASW5wdXQoKSBzZXQgYWNjZXB0KHZhbDogc3RyaW5nW10pIHtcclxuICAgIHRoaXMuX2FjY2VwdCA9IHZhbDtcclxuICAgIHRoaXMuYWxsb3dlZEV4dGVuc2lvbnMgPSB2YWwgPyB2YWwuam9pbihcIixcIikgOiBcIlwiO1xyXG4gIH1cclxuICBnZXQgYWNjZXB0KCkgeyByZXR1cm4gdGhpcy5fYWNjZXB0IH1cclxuICBASW5wdXQoKSBtYXhTaXplITogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIG11bHRpcGxlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgZmlsZVByZXZpZXdQcm9ncmVzcyE6IG51bWJlcjtcclxuICBASW5wdXQoKSBhbGxvd0VtcHR5ITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBkaXNhYmxlZCE6IGJvb2xlYW47XHJcblxyXG4gIC8qKiBzYW1lIGFzIGFjY2VwdCBidXQgZm9yIHJlZ2lzdGVyZWQgdXNlcnMuIEl0IGNoYW5nZXMgZXJyb3IgbWVzc2FnZSBpZiBleHRlbnNpb24gaXMgc3VwcG9ydGVkIGZvciByZWdpc3RlcmVkIHVzZXJzLiAqL1xyXG4gIEBJbnB1dCgpIGV4dGVuZGVkQWNjZXB0TGlzdCE6IHN0cmluZ1tdO1xyXG5cclxuICBhbGxvd2VkRXh0ZW5zaW9ucyE6IHN0cmluZztcclxuXHJcbiAgaGFuZGxlRmlsZUlucHV0KGV2ZW50OiBFdmVudCkge1xyXG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XHJcbiAgICBjb25zdCBmaWxlcyA9IHRhcmdldC5maWxlcyBhcyBGaWxlTGlzdDtcclxuICAgIHRoaXMudmFsaWRhdGUoZmlsZXMpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgb25GaWxlRHJvcChmaWxlczogYW55KSB7XHJcbiAgICB0aGlzLnZhbGlkYXRlKGZpbGVzKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZW1pdChmaWxlczogRmlsZVtdKSB7XHJcbiAgICBpZiAoZmlsZXMgJiYgZmlsZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLmZpbGVDaGFuZ2UuZW1pdChmaWxlcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGVtaXRFcnJvcihlcnJvcjogRmlsZVVwbG9hZEVycm9yKSB7XHJcbiAgICB0aGlzLmVycm9yRXZlbnQuZW1pdChlcnJvcik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHZhbGlkYXRlKGZpbGVzOiBGaWxlTGlzdCkge1xyXG4gICAgLy9sZXQgc2l6ZSA9IDA7XHJcbiAgICBjb25zdCB2YWxpZEZpbGVzOiBGaWxlW10gPSBbXTtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsZXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgY29uc3QgZmlsZSA9IGZpbGVzW2ldO1xyXG4gICAgICBpZiAoIXRoaXMuYWxsb3dFbXB0eSAmJiBmaWxlLnNpemUgPT0gMCkge1xyXG4gICAgICAgIHRoaXMuZW1pdEVycm9yKHsgY29kZTogRmlsZVVwbG9hZEVycm9yVHlwZUVudW0uRklMRV9FTVBUWSwgZXJyb3I6IFwiRmlsZSBpcyBlbXB0eVwiLCBmaWxlTmFtZTogZmlsZS5uYW1lIH0pO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICAvL3NpemUgKz0gZmlsZS5zaXplO1xyXG4gICAgICBjb25zdCBleHRlbnNpb25FcnJvckNvZGUgPSB0aGlzLmdldEV4dGVuc2lvbkVycm9yQ29kZShmaWxlLm5hbWUpO1xyXG4gICAgICBpZiAoZXh0ZW5zaW9uRXJyb3JDb2RlKSB7XHJcbiAgICAgICAgY29uc3QgZXJyb3IgPSB7IGNvZGU6IGV4dGVuc2lvbkVycm9yQ29kZSwgZXJyb3I6IFwiTm90IHZhbGlkIGV4dGVuc2lvbi5cIiwgZmlsZU5hbWU6IGZpbGUubmFtZSB9O1xyXG4gICAgICAgIHRoaXMuZW1pdEVycm9yKGVycm9yKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmICh0aGlzLm1heFNpemUgJiYgZmlsZS5zaXplID4gdGhpcy5tYXhTaXplKSB7XHJcbiAgICAgICAgY29uc3QgZXJyb3IgPSB7IGNvZGU6IEZpbGVVcGxvYWRFcnJvclR5cGVFbnVtLk1BWF9TSVpFLCBlcnJvcjogXCJNYXhpbXVtIGFsbG93ZWQgZmlsZSBzaXplIGV4Y2VlZGVkLlwiLCBmaWxlTmFtZTogZmlsZS5uYW1lIH07XHJcbiAgICAgICAgdGhpcy5lbWl0RXJyb3IoZXJyb3IpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHZhbGlkRmlsZXMucHVzaChmaWxlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZW1pdCh2YWxpZEZpbGVzKTtcclxuICAgIHRoaXMuZmlsZUlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0RXh0ZW5zaW9uRXJyb3JDb2RlKGZpbGVOYW1lOiBzdHJpbmcpOiBGaWxlVXBsb2FkRXJyb3JUeXBlRW51bSB8IG51bGwge1xyXG4gICAgY29uc3QgZXh0ZW5zaW9uID0gZmlsZU5hbWUuc2xpY2UoZmlsZU5hbWUubGFzdEluZGV4T2YoJy4nKSkudG9Mb3dlckNhc2UoKVxyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmFjY2VwdC5sZW5ndGggPT0gMCB8fCAodGhpcy5hY2NlcHQubGVuZ3RoID09IDEgJiYgdGhpcy5hY2NlcHRbMF0gPT0gJyonKSB8fCB0aGlzLmFjY2VwdC5pbmNsdWRlcyhleHRlbnNpb24pKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmV4dGVuZGVkQWNjZXB0TGlzdD8uaW5jbHVkZXMoZXh0ZW5zaW9uKSA/IEZpbGVVcGxvYWRFcnJvclR5cGVFbnVtLkZJTEVfVVBMT0FEX1VOU1VQUE9SVEVEX0ZPUk1BVF9SRUdJU1RFUiA6IEZpbGVVcGxvYWRFcnJvclR5cGVFbnVtLkZJTEVfVVBMT0FEX1VOU1VQUE9SVEVEX0ZPUk1BVDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkXCIgW25nQ2xhc3MubHQtc21dPVwiJ2ZpbGUtdXBsb2FkLW1vYmlsZSdcIj5cclxuICA8bWF0LXByb2dyZXNzLWJhciBjbGFzcz1cInRsZC1maWxlLXVwbG9hZC1wcm9ncmVzc1wiIGNvbG9yPVwicHJpbWFyeVwiIFt2YWx1ZV09XCJmaWxlUHJldmlld1Byb2dyZXNzXCJcclxuICAgICpuZ0lmPVwiZmlsZVByZXZpZXdQcm9ncmVzc1wiPjwvbWF0LXByb2dyZXNzLWJhcj5cclxuICA8YnV0dG9uIHRsZERyYWdBbmREcm9wICNpbnB1dEJ1dHRvbiBtYXQtYnV0dG9uIChmaWxlRHJvcHBlZCk9XCJvbkZpbGVEcm9wKCRldmVudClcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiIGNsYXNzPVwidXBsb2FkLWJ1dHRvbiB0ZXh0LWxcIj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8L2J1dHRvbj5cclxuPC9kaXY+XHJcbjxpbnB1dCAjZmlsZUlucHV0IHR5cGU9XCJmaWxlXCIgKGNoYW5nZSk9XCJoYW5kbGVGaWxlSW5wdXQoJGV2ZW50KVwiIG5hbWU9XCJmaWxlc1wiIGNsYXNzPVwibmF0aXZlLWZpbGUtaW5wdXRcIlxyXG4gIFthY2NlcHRdPVwiYWxsb3dlZEV4dGVuc2lvbnNcIiBbbXVsdGlwbGVdPVwibXVsdGlwbGVcIiAvPlxyXG4iXX0=
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7O0FBUy9FLE1BQU0sT0FBTyxtQkFBbUI7SUFOaEM7UUFVWSxlQUFVLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFDOUQsZUFBVSxHQUFrQyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUNsRixZQUFPLEdBQWEsRUFBRSxDQUFDO1FBT3RCLGFBQVEsR0FBRyxLQUFLLENBQUM7S0F1RTNCO0lBN0VDLElBQWEsTUFBTSxDQUFDLEdBQWE7UUFDL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7UUFDbkIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3BELENBQUM7SUFDRCxJQUFJLE1BQU0sS0FBSyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUEsQ0FBQyxDQUFDO0lBYXBDLGVBQWUsQ0FBQyxLQUFZO1FBQzFCLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUEwQixDQUFDO1FBQ2hELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFpQixD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QUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLDhCQUE4QixDQUFDO1NBQ2hMO0lBQ0gsQ0FBQzs7Z0hBbkZVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLHdoQkFFSSxVQUFVLDZCQ1o5Qyx5dUJBV0E7MkZERGEsbUJBQW1CO2tCQU4vQixTQUFTOytCQUVFLGlCQUFpQjs4QkFLSCxTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVc7Z0JBQzBCLFdBQVc7c0JBQTFELFNBQVM7dUJBQUMsYUFBYSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFFcEMsVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUVNLE1BQU07c0JBQWxCLEtBQUs7Z0JBS0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUdHLGtCQUFrQjtzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRmlsZVVwbG9hZEVycm9yVHlwZUVudW0gfSBmcm9tICcuL21vZGVscy9maWxlLXVwbG9hZC1lcnJvci10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBGaWxlVXBsb2FkRXJyb3IgfSBmcm9tICcuL21vZGVscy9maWxlLXVwbG9hZC1lcnJvci5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAndGxkLWZpbGUtdXBsb2FkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ2ZpbGVJbnB1dCcpIGZpbGVJbnB1dCE6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSkgaW5wdXRCdXR0b24hOiBFbGVtZW50UmVmO1xyXG5cclxuICBAT3V0cHV0KCkgZmlsZUNoYW5nZTogRXZlbnRFbWl0dGVyPEZpbGVbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGVbXT4oKTtcclxuICBAT3V0cHV0KCkgZXJyb3JFdmVudDogRXZlbnRFbWl0dGVyPEZpbGVVcGxvYWRFcnJvcj4gPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGVVcGxvYWRFcnJvcj4oKTtcclxuICBwcml2YXRlIF9hY2NlcHQ6IHN0cmluZ1tdID0gW107XHJcbiAgQElucHV0KCkgc2V0IGFjY2VwdCh2YWw6IHN0cmluZ1tdKSB7XHJcbiAgICB0aGlzLl9hY2NlcHQgPSB2YWw7XHJcbiAgICB0aGlzLmFsbG93ZWRFeHRlbnNpb25zID0gdmFsID8gdmFsLmpvaW4oXCIsXCIpIDogXCJcIjtcclxuICB9XHJcbiAgZ2V0IGFjY2VwdCgpIHsgcmV0dXJuIHRoaXMuX2FjY2VwdCB9XHJcbiAgQElucHV0KCkgbWF4U2l6ZSE6IG51bWJlcjtcclxuICBASW5wdXQoKSBtdWx0aXBsZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGZpbGVQcmV2aWV3UHJvZ3Jlc3MhOiBudW1iZXI7XHJcbiAgQElucHV0KCkgYWxsb3dFbXB0eSE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGlzYWJsZWQhOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHVwbG9hZEljb25OYW1lITogc3RyaW5nO1xyXG5cclxuICAvKiogc2FtZSBhcyBhY2NlcHQgYnV0IGZvciByZWdpc3RlcmVkIHVzZXJzLiBJdCBjaGFuZ2VzIGVycm9yIG1lc3NhZ2UgaWYgZXh0ZW5zaW9uIGlzIHN1cHBvcnRlZCBmb3IgcmVnaXN0ZXJlZCB1c2Vycy4gKi9cclxuICBASW5wdXQoKSBleHRlbmRlZEFjY2VwdExpc3QhOiBzdHJpbmdbXTtcclxuXHJcbiAgYWxsb3dlZEV4dGVuc2lvbnMhOiBzdHJpbmc7XHJcblxyXG4gIGhhbmRsZUZpbGVJbnB1dChldmVudDogRXZlbnQpIHtcclxuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xyXG4gICAgY29uc3QgZmlsZXMgPSB0YXJnZXQuZmlsZXMgYXMgRmlsZUxpc3Q7XHJcbiAgICB0aGlzLnZhbGlkYXRlKGZpbGVzKTtcclxuICB9XHJcblxyXG5cclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIG9uRmlsZURyb3AoZmlsZXM6IGFueSkge1xyXG4gICAgdGhpcy52YWxpZGF0ZShmaWxlcyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGVtaXQoZmlsZXM6IEZpbGVbXSkge1xyXG4gICAgaWYgKGZpbGVzICYmIGZpbGVzLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5maWxlQ2hhbmdlLmVtaXQoZmlsZXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBlbWl0RXJyb3IoZXJyb3I6IEZpbGVVcGxvYWRFcnJvcikge1xyXG4gICAgdGhpcy5lcnJvckV2ZW50LmVtaXQoZXJyb3IpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB2YWxpZGF0ZShmaWxlczogRmlsZUxpc3QpIHtcclxuICAgIC8vbGV0IHNpemUgPSAwO1xyXG4gICAgY29uc3QgdmFsaWRGaWxlczogRmlsZVtdID0gW107XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZpbGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGNvbnN0IGZpbGUgPSBmaWxlc1tpXTtcclxuICAgICAgaWYgKCF0aGlzLmFsbG93RW1wdHkgJiYgZmlsZS5zaXplID09IDApIHtcclxuICAgICAgICB0aGlzLmVtaXRFcnJvcih7IGNvZGU6IEZpbGVVcGxvYWRFcnJvclR5cGVFbnVtLkZJTEVfRU1QVFksIGVycm9yOiBcIkZpbGUgaXMgZW1wdHlcIiwgZmlsZU5hbWU6IGZpbGUubmFtZSB9KTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgLy9zaXplICs9IGZpbGUuc2l6ZTtcclxuICAgICAgY29uc3QgZXh0ZW5zaW9uRXJyb3JDb2RlID0gdGhpcy5nZXRFeHRlbnNpb25FcnJvckNvZGUoZmlsZS5uYW1lKTtcclxuICAgICAgaWYgKGV4dGVuc2lvbkVycm9yQ29kZSkge1xyXG4gICAgICAgIGNvbnN0IGVycm9yID0geyBjb2RlOiBleHRlbnNpb25FcnJvckNvZGUsIGVycm9yOiBcIk5vdCB2YWxpZCBleHRlbnNpb24uXCIsIGZpbGVOYW1lOiBmaWxlLm5hbWUgfTtcclxuICAgICAgICB0aGlzLmVtaXRFcnJvcihlcnJvcik7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAodGhpcy5tYXhTaXplICYmIGZpbGUuc2l6ZSA+IHRoaXMubWF4U2l6ZSkge1xyXG4gICAgICAgIGNvbnN0IGVycm9yID0geyBjb2RlOiBGaWxlVXBsb2FkRXJyb3JUeXBlRW51bS5NQVhfU0laRSwgZXJyb3I6IFwiTWF4aW11bSBhbGxvd2VkIGZpbGUgc2l6ZSBleGNlZWRlZC5cIiwgZmlsZU5hbWU6IGZpbGUubmFtZSB9O1xyXG4gICAgICAgIHRoaXMuZW1pdEVycm9yKGVycm9yKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB2YWxpZEZpbGVzLnB1c2goZmlsZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmVtaXQodmFsaWRGaWxlcyk7XHJcbiAgICB0aGlzLmZpbGVJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEV4dGVuc2lvbkVycm9yQ29kZShmaWxlTmFtZTogc3RyaW5nKTogRmlsZVVwbG9hZEVycm9yVHlwZUVudW0gfCBudWxsIHtcclxuICAgIGNvbnN0IGV4dGVuc2lvbiA9IGZpbGVOYW1lLnNsaWNlKGZpbGVOYW1lLmxhc3RJbmRleE9mKCcuJykpLnRvTG93ZXJDYXNlKClcclxuICAgIGlmIChcclxuICAgICAgdGhpcy5hY2NlcHQubGVuZ3RoID09IDAgfHwgKHRoaXMuYWNjZXB0Lmxlbmd0aCA9PSAxICYmIHRoaXMuYWNjZXB0WzBdID09ICcqJykgfHwgdGhpcy5hY2NlcHQuaW5jbHVkZXMoZXh0ZW5zaW9uKSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5leHRlbmRlZEFjY2VwdExpc3Q/LmluY2x1ZGVzKGV4dGVuc2lvbikgPyBGaWxlVXBsb2FkRXJyb3JUeXBlRW51bS5GSUxFX1VQTE9BRF9VTlNVUFBPUlRFRF9GT1JNQVRfUkVHSVNURVIgOiBGaWxlVXBsb2FkRXJyb3JUeXBlRW51bS5GSUxFX1VQTE9BRF9VTlNVUFBPUlRFRF9GT1JNQVQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZFwiIFtuZ0NsYXNzLmx0LXNtXT1cIidmaWxlLXVwbG9hZC1tb2JpbGUnXCI+XHJcbiAgPG1hdC1wcm9ncmVzcy1iYXIgY2xhc3M9XCJ0bGQtZmlsZS11cGxvYWQtcHJvZ3Jlc3NcIiBjb2xvcj1cInByaW1hcnlcIiBbdmFsdWVdPVwiZmlsZVByZXZpZXdQcm9ncmVzc1wiXHJcbiAgICAqbmdJZj1cImZpbGVQcmV2aWV3UHJvZ3Jlc3NcIj48L21hdC1wcm9ncmVzcy1iYXI+XHJcbiAgPGJ1dHRvbiB0bGREcmFnQW5kRHJvcCAjaW5wdXRCdXR0b24gbWF0LWJ1dHRvbiAoZmlsZURyb3BwZWQpPVwib25GaWxlRHJvcCgkZXZlbnQpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAoY2xpY2spPVwiZmlsZUlucHV0LmNsaWNrKClcIiBjbGFzcz1cInVwbG9hZC1idXR0b24gdGV4dC1sXCI+XHJcbiAgICA8bWF0LWljb24gKm5nSWY9XCJ1cGxvYWRJY29uTmFtZVwiPnt7dXBsb2FkSWNvbk5hbWV9fTwvbWF0LWljb24+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgPC9idXR0b24+XHJcbjwvZGl2PlxyXG48aW5wdXQgI2ZpbGVJbnB1dCB0eXBlPVwiZmlsZVwiIChjaGFuZ2UpPVwiaGFuZGxlRmlsZUlucHV0KCRldmVudClcIiBuYW1lPVwiZmlsZXNcIiBjbGFzcz1cIm5hdGl2ZS1maWxlLWlucHV0XCJcclxuICBbYWNjZXB0XT1cImFsbG93ZWRFeHRlbnNpb25zXCIgW211bHRpcGxlXT1cIm11bHRpcGxlXCIgLz5cclxuIl19
@@ -5,6 +5,7 @@ import { MatProgressBarModule } from '@angular/material/progress-bar';
5
5
  import { FlexLayoutModule } from '@angular/flex-layout';
6
6
  import { MatButtonModule } from '@angular/material/button';
7
7
  import { DragAndDropModule } from '../directives/drag-and-drop/drag-and-drop.module';
8
+ import { MatIconModule } from '@angular/material/icon';
8
9
  import * as i0 from "@angular/core";
9
10
  export class FileUploadModule {
10
11
  }
@@ -13,13 +14,15 @@ FileUploadModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versio
13
14
  MatProgressBarModule,
14
15
  FlexLayoutModule,
15
16
  MatButtonModule,
16
- DragAndDropModule], exports: [FileUploadComponent] });
17
+ DragAndDropModule,
18
+ MatIconModule], exports: [FileUploadComponent] });
17
19
  FileUploadModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadModule, imports: [[
18
20
  CommonModule,
19
21
  MatProgressBarModule,
20
22
  FlexLayoutModule,
21
23
  MatButtonModule,
22
- DragAndDropModule
24
+ DragAndDropModule,
25
+ MatIconModule
23
26
  ]] });
24
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadModule, decorators: [{
25
28
  type: NgModule,
@@ -30,11 +33,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
30
33
  MatProgressBarModule,
31
34
  FlexLayoutModule,
32
35
  MatButtonModule,
33
- DragAndDropModule
36
+ DragAndDropModule,
37
+ MatIconModule
34
38
  ],
35
39
  exports: [
36
40
  FileUploadComponent
37
41
  ]
38
42
  }]
39
43
  }] });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0RBQWtELENBQUM7O0FBZXJGLE1BQU0sT0FBTyxnQkFBZ0I7OzZHQUFoQixnQkFBZ0I7OEdBQWhCLGdCQUFnQixpQkFaWixtQkFBbUIsYUFFaEMsWUFBWTtRQUNaLG9CQUFvQjtRQUNwQixnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLGlCQUFpQixhQUdqQixtQkFBbUI7OEdBR1YsZ0JBQWdCLFlBWGxCO1lBQ1AsWUFBWTtZQUNaLG9CQUFvQjtZQUNwQixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLGlCQUFpQjtTQUNsQjsyRkFLVSxnQkFBZ0I7a0JBYjVCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQ25DLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG9CQUFvQjt3QkFDcEIsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjtxQkFDcEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGaWxlVXBsb2FkQ29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXVwbG9hZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLWJhcic7XHJcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IERyYWdBbmREcm9wTW9kdWxlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9kcmFnLWFuZC1kcm9wL2RyYWctYW5kLWRyb3AubW9kdWxlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbRmlsZVVwbG9hZENvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTWF0UHJvZ3Jlc3NCYXJNb2R1bGUsXHJcbiAgICBGbGV4TGF5b3V0TW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgRHJhZ0FuZERyb3BNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkTW9kdWxlIHsgfVxyXG4iXX0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDckYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQWlCdkQsTUFBTSxPQUFPLGdCQUFnQjs7NkdBQWhCLGdCQUFnQjs4R0FBaEIsZ0JBQWdCLGlCQWJaLG1CQUFtQixhQUVoQyxZQUFZO1FBQ1osb0JBQW9CO1FBQ3BCLGdCQUFnQjtRQUNoQixlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGFBQWEsYUFHYixtQkFBbUI7OEdBR1YsZ0JBQWdCLFlBWmxCO1lBQ1AsWUFBWTtZQUNaLG9CQUFvQjtZQUNwQixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLGlCQUFpQjtZQUNqQixhQUFhO1NBQ2Q7MkZBS1UsZ0JBQWdCO2tCQWQ1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUNuQyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixvQkFBb0I7d0JBQ3BCLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLGFBQWE7cUJBQ2Q7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjtxQkFDcEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGaWxlVXBsb2FkQ29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXVwbG9hZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLWJhcic7XHJcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IERyYWdBbmREcm9wTW9kdWxlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9kcmFnLWFuZC1kcm9wL2RyYWctYW5kLWRyb3AubW9kdWxlJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbRmlsZVVwbG9hZENvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTWF0UHJvZ3Jlc3NCYXJNb2R1bGUsXHJcbiAgICBGbGV4TGF5b3V0TW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgRHJhZ0FuZERyb3BNb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRmlsZVVwbG9hZE1vZHVsZSB7IH1cclxuIl19
@@ -1,6 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, Directive, Input, HostListener, NgModule, Component, Pipe, EventEmitter, Output, HostBinding, ViewChild, ElementRef } from '@angular/core';
3
3
  import * as i1 from '@angular/material/icon';
4
+ import { MatIconModule } from '@angular/material/icon';
4
5
  import * as i2 from '@angular/platform-browser';
5
6
  import * as i5 from '@angular/common';
6
7
  import { CommonModule } from '@angular/common';
@@ -850,10 +851,10 @@ class FileUploadComponent {
850
851
  }
851
852
  }
852
853
  FileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
853
- FileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: FileUploadComponent, selector: "tld-file-upload", inputs: { accept: "accept", maxSize: "maxSize", multiple: "multiple", filePreviewProgress: "filePreviewProgress", allowEmpty: "allowEmpty", disabled: "disabled", extendedAcceptList: "extendedAcceptList" }, outputs: { fileChange: "fileChange", errorEvent: "errorEvent" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }, { propertyName: "inputButton", first: true, predicate: ["inputButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"], components: [{ type: i1$2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: DragAndDropDirective, selector: "[tldDragAndDrop]", outputs: ["fileDropped"] }] });
854
+ FileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: FileUploadComponent, selector: "tld-file-upload", inputs: { accept: "accept", maxSize: "maxSize", multiple: "multiple", filePreviewProgress: "filePreviewProgress", allowEmpty: "allowEmpty", disabled: "disabled", uploadIconName: "uploadIconName", extendedAcceptList: "extendedAcceptList" }, outputs: { fileChange: "fileChange", errorEvent: "errorEvent" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }, { propertyName: "inputButton", first: true, predicate: ["inputButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <mat-icon *ngIf=\"uploadIconName\">{{uploadIconName}}</mat-icon>\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"], components: [{ type: i1$2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: DragAndDropDirective, selector: "[tldDragAndDrop]", outputs: ["fileDropped"] }] });
854
855
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadComponent, decorators: [{
855
856
  type: Component,
856
- args: [{ selector: 'tld-file-upload', template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"] }]
857
+ args: [{ selector: 'tld-file-upload', template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <mat-icon *ngIf=\"uploadIconName\">{{uploadIconName}}</mat-icon>\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"] }]
857
858
  }], propDecorators: { fileInput: [{
858
859
  type: ViewChild,
859
860
  args: ['fileInput']
@@ -876,6 +877,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
876
877
  type: Input
877
878
  }], disabled: [{
878
879
  type: Input
880
+ }], uploadIconName: [{
881
+ type: Input
879
882
  }], extendedAcceptList: [{
880
883
  type: Input
881
884
  }] } });
@@ -887,13 +890,15 @@ FileUploadModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versio
887
890
  MatProgressBarModule,
888
891
  FlexLayoutModule,
889
892
  MatButtonModule,
890
- DragAndDropModule], exports: [FileUploadComponent] });
893
+ DragAndDropModule,
894
+ MatIconModule], exports: [FileUploadComponent] });
891
895
  FileUploadModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadModule, imports: [[
892
896
  CommonModule,
893
897
  MatProgressBarModule,
894
898
  FlexLayoutModule,
895
899
  MatButtonModule,
896
- DragAndDropModule
900
+ DragAndDropModule,
901
+ MatIconModule
897
902
  ]] });
898
903
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadModule, decorators: [{
899
904
  type: NgModule,
@@ -904,7 +909,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
904
909
  MatProgressBarModule,
905
910
  FlexLayoutModule,
906
911
  MatButtonModule,
907
- DragAndDropModule
912
+ DragAndDropModule,
913
+ MatIconModule
908
914
  ],
909
915
  exports: [
910
916
  FileUploadComponent
@@ -1 +1 @@
1
- {"version":3,"file":"tilde-nlp-ngx-common.mjs","sources":["../../../projects/ngx-common/src/lib/services/icon.service.ts","../../../projects/ngx-common/src/lib/services/dom.service.ts","../../../projects/ngx-common/src/lib/plausible/plausible.helper.ts","../../../projects/ngx-common/src/lib/plausible/plausible-event.directive.ts","../../../projects/ngx-common/src/lib/plausible/plausible.module.ts","../../../projects/ngx-common/src/lib/inline-message/models/inline-message-icon-position.enum.ts","../../../projects/ngx-common/src/lib/inline-message/inline-message.component.ts","../../../projects/ngx-common/src/lib/inline-message/inline-message.component.html","../../../projects/ngx-common/src/lib/inline-message/inline-message.module.ts","../../../projects/ngx-common/src/lib/inline-message/models/inline-message-type.enum.ts","../../../projects/ngx-common/src/lib/pipes/filter-with-highlight/filter-with-highlight.pipe.ts","../../../projects/ngx-common/src/lib/pipes/filter-with-highlight/filter-with-highlight.module.ts","../../../projects/ngx-common/src/lib/pipes/sort-translations/sort-translations.pipe.ts","../../../projects/ngx-common/src/lib/pipes/sort-translations/sort-translations.module.ts","../../../projects/ngx-common/src/lib/directives/click-outside/click-outside.directive.ts","../../../projects/ngx-common/src/lib/directives/click-outside/click-outside.module.ts","../../../projects/ngx-common/src/lib/directives/drag-and-drop/drag-and-drop.directive.ts","../../../projects/ngx-common/src/lib/directives/drag-and-drop/drag-and-drop.module.ts","../../../projects/ngx-common/src/lib/close-button/close-button.component.ts","../../../projects/ngx-common/src/lib/close-button/close-button.component.html","../../../projects/ngx-common/src/lib/close-button/close-button.module.ts","../../../projects/ngx-common/src/lib/notification-message/notification-message.component.ts","../../../projects/ngx-common/src/lib/notification-message/notification-message.component.html","../../../projects/ngx-common/src/lib/notification-message/notification-message.module.ts","../../../projects/ngx-common/src/lib/notification-message/enums/notification-message-type.enum.ts","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.component.ts","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.component.html","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.module.ts","../../../projects/ngx-common/src/lib/helpers/missing-translation-helper.ts","../../../projects/ngx-common/src/lib/company-product/company-product.component.ts","../../../projects/ngx-common/src/lib/company-product/company-product.component.html","../../../projects/ngx-common/src/lib/company-product/company-product.module.ts","../../../projects/ngx-common/src/lib/footer/footer.component.ts","../../../projects/ngx-common/src/lib/footer/footer.component.html","../../../projects/ngx-common/src/lib/footer/footer.module.ts","../../../projects/ngx-common/src/lib/file-upload/models/file-upload-error-type.enum.ts","../../../projects/ngx-common/src/lib/file-upload/file-upload.component.ts","../../../projects/ngx-common/src/lib/file-upload/file-upload.component.html","../../../projects/ngx-common/src/lib/file-upload/file-upload.module.ts","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.component.ts","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.component.html","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.module.ts","../../../projects/ngx-common/src/public-api.ts","../../../projects/ngx-common/src/tilde-nlp-ngx-common.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { MatIconRegistry } from '@angular/material/icon';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IconService {\r\n constructor(private readonly iconRegistry: MatIconRegistry,\r\n private readonly sanitizer: DomSanitizer) {\r\n }\r\n\r\n //https://material.angular.io/components/icon/examples\r\n /** Registers svg icons to mat icon registry. Icon SVG's should be under some key in object. Icon name can be used with property name in lowercase. */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n registerIcons(icons: any) {\r\n for (const key in icons) {\r\n this.iconRegistry.addSvgIconLiteral(key.toLowerCase(), this.sanitizer.bypassSecurityTrustHtml(icons[key]));\r\n }\r\n }\r\n\r\n registerIconFromUrl(name: string, url: string) {\r\n this.iconRegistry.addSvgIcon(name, this.sanitizer.bypassSecurityTrustResourceUrl(url));\r\n }\r\n\r\n addSvgIconSet(path: string, namespace?: string) {\r\n namespace ?\r\n this.iconRegistry.addSvgIconSetInNamespace(namespace, this.sanitizer.bypassSecurityTrustResourceUrl(path)) :\r\n this.iconRegistry.addSvgIconSet(this.sanitizer.bypassSecurityTrustResourceUrl(path));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nconst _localStorage: Storage | null = typeof localStorage !== 'undefined' ? localStorage : null;\r\nconst _window: Window | null = typeof window !== 'undefined' ? window : null;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DOMService {\r\n\r\n get window(): Window | null {\r\n return _window;\r\n }\r\n\r\n get localStorage(): Storage | null {\r\n return _localStorage;\r\n }\r\n\r\n\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { DOMService } from \"../services\";\r\n\r\nexport class PlausibleHelper {\r\n /**\r\n * Adds plausible for selected domain and adds additional script for custom event (goal) triggering\r\n * @param domain domain that is registered in your plausible account\r\n * @returns\r\n */\r\n static addPlausible(domain: string) {\r\n const domService = new DOMService();\r\n const windowObj: any = domService.window;\r\n if (!windowObj || !domain) {\r\n return;\r\n }\r\n\r\n const plausibleSrc = \"https://plausible.io/js/plausible.js\";\r\n const script = document.createElement(\"script\");\r\n script.src = plausibleSrc;\r\n script.setAttribute(\"data-domain\", domain);\r\n document.head.append(script);\r\n\r\n // Add plausible custom event functionality https://plausible.io/docs/custom-event-goals#code-example-for-tracking-link-clicks\r\n windowObj.plausible = windowObj.plausible || ((...params: any) => { (windowObj.plausible.q = windowObj.plausible.q || []).push(params) })\r\n }\r\n\r\n /**\r\n * Emits custom plausible event\r\n * @param id plausible event id that should be the same as registered in plausible\r\n * @param properties an object with custom properties for the event\r\n * @returns\r\n */\r\n static customEvent(id: string, properties?: any) {\r\n const windowObj: any = window;\r\n if (!windowObj?.plausible) {\r\n return;\r\n }\r\n windowObj.plausible(id, { props: properties });\r\n }\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\nimport { PlausibleEvent } from './models';\r\nimport { PlausibleHelper } from './plausible.helper';\r\n\r\n@Directive({\r\n selector: '[libPlausibleEvent]'\r\n})\r\nexport class PlausibleEventDirective {\r\n private id = \"\";\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n private properties: any = null;\r\n /** Plausible event id. */\r\n @Input() set libPlausibleEvent(value: PlausibleEvent | undefined) {\r\n if (!value) {\r\n return;\r\n }\r\n this.id = value.eventId;\r\n\r\n if (value.properties) {\r\n this.properties = {}\r\n value.properties.forEach(item => this.properties[item.key] = item.value);\r\n }\r\n\r\n }\r\n\r\n @HostListener(\"click\") onClick() {\r\n if (this.id.length) {\r\n PlausibleHelper.customEvent(this.id, this.properties);\r\n }\r\n }\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PlausibleEventDirective } from './plausible-event.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PlausibleEventDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n PlausibleEventDirective\r\n ]\r\n})\r\nexport class PlausibleModule { }\r\n","export enum InlineMessageIconPosition {\r\n START,\r\n END\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { InlineMessageIconPosition } from './models/inline-message-icon-position.enum';\r\nimport { InlineMessage } from './models/inline-message.model';\r\n\r\n@Component({\r\n selector: 'lib-inline-message',\r\n templateUrl: './inline-message.component.html',\r\n styleUrls: ['./inline-message.component.scss']\r\n})\r\nexport class InlineMessageComponent {\r\n readonly END_ICON_POSITION = InlineMessageIconPosition.END;\r\n\r\n @Input() iconName = \"info\";\r\n @Input() message!: InlineMessage;\r\n}\r\n","<div class=\"tld-inline-message {{message.type}}\">\r\n <span class=\"material-icons\" [class.order-end]=\"message.iconPosition === END_ICON_POSITION\"\r\n [matTooltip]=\"message.iconTooltip? (message.iconTooltip | translate: message.localizationParams) : ''\" *ngIf=\"iconName\">{{iconName}}</span>\r\n <section *ngIf=\"message\">\r\n <div class=\"text-s-semi-bold title\" *ngIf=\"message.title\"\r\n [innerHtml]=\"message.title | translate: message.localizationParams\">\r\n </div>\r\n <p class=\"text-s description\" *ngIf=\"message.description\" [innerHtml]=\"message.description | translate:\r\n message.localizationParams\"></p>\r\n </section>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { InlineMessageComponent } from './inline-message.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n InlineMessageComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n TranslateModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n InlineMessageComponent\r\n ]\r\n})\r\nexport class InlineMessageModule { }\r\n","export enum InlineMessageType {\r\n INFO = 'info',\r\n WARNING = 'warning',\r\n ERROR = 'error'\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'filterWithHighlight'\r\n})\r\nexport class FilterWithHighlightPipe implements PipeTransform {\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n transform(value: any[], filter: string, key?: string): any[] {\r\n if (!filter.length) {\r\n return [...value];\r\n }\r\n\r\n const filteredArr = [];\r\n const regex = new RegExp(filter, 'gi');\r\n\r\n for (let element of value) {\r\n const elementText: string = key ? element[key] : element;\r\n const match = elementText.match(regex);\r\n if (!match) {\r\n continue;\r\n }\r\n let newElement;\r\n\r\n const textWithHighlight = elementText.replace(regex, (match) => `<span class=\"filter-highlight\">${match}</span>`);\r\n if (key) {\r\n newElement = { ...element };\r\n newElement[key] = textWithHighlight;\r\n }\r\n else {\r\n element = textWithHighlight;\r\n }\r\n\r\n filteredArr.push(newElement ?? element);\r\n }\r\n return filteredArr;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FilterWithHighlightPipe } from './filter-with-highlight.pipe';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FilterWithHighlightPipe\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n FilterWithHighlightPipe\r\n ]\r\n})\r\nexport class FilterWithHighlightModule { }\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Pipe({\r\n name: 'sortTranslations'\r\n})\r\n/**\r\n * Pipe used to sort translated values.\r\n */\r\nexport class SortTranslationsPipe implements PipeTransform {\r\n\r\n constructor(private translate: TranslateService) { }\r\n\r\n /**\r\n *\r\n * @param objects array of objects to be sorted\r\n * @param localizationPrefix prefix for localization code. This is used to get necessary object translations.\r\n * @param key Which object property needs to be used for sorting.\r\n * @param currentLanguage This is necessary to update values if language is changed.\r\n * @returns \r\n */\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n transform(objects: Array<any>, localizationPrefix: string | null, key: string | null = null, currentLanguage: string, translationKey: string | null = null): Observable<Array<any>> {\r\n const arrayCopy = [...objects];\r\n if (localizationPrefix) {\r\n return new Observable<string[]>((subscriber) => {\r\n this.translate.get(localizationPrefix ?? \"\").subscribe((translations) => {\r\n const array = this.sortObjects(arrayCopy, key, translations);\r\n subscriber.next(array);\r\n subscriber.complete();\r\n })\r\n });\r\n }\r\n else {\r\n return of(this.sortObjects(arrayCopy, key));\r\n }\r\n }\r\n\r\n private sortObjects(array: any[], key?: string | null, translations?: any):any[] {\r\n return array.sort((a: any, b: any) => {\r\n const aValue = key ? a[key] : a;\r\n const aTranslation = translations ? translations[aValue.toUpperCase()] : aValue;\r\n\r\n const bValue = key ? b[key] : b;\r\n const bTranslation = translations ? translations[bValue.toUpperCase()] : bValue;\r\n\r\n if (aTranslation < bTranslation)\r\n return -1;\r\n else if (aTranslation > bTranslation)\r\n return 1;\r\n else\r\n return 0;\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SortTranslationsPipe } from './sort-translations.pipe';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [SortTranslationsPipe],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n SortTranslationsPipe\r\n ]\r\n})\r\nexport class SortTranslationsModule { }\r\n","import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: '[clickOutside]'\r\n})\r\nexport class ClickOutsideDirective {\r\n @Output() clickOutside = new EventEmitter<void>();\r\n\r\n constructor(private elementRef: ElementRef) { }\r\n\r\n @HostListener('document:click', ['$event.target'])\r\n public onClick(target: HTMLElement) {\r\n const clickedInside = this.elementRef.nativeElement.contains(target);\r\n if (!clickedInside) {\r\n this.clickOutside.emit();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ClickOutsideDirective } from './click-outside.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ClickOutsideDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n ClickOutsideDirective\r\n ]\r\n})\r\nexport class ClickOutsideModule { }\r\n","import { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: '[tldDragAndDrop]'\r\n})\r\nexport class DragAndDropDirective {\r\n\r\n get disabled() { return this.element.nativeElement.disabled }\r\n\r\n @HostBinding('class.tld-file-over') active!: boolean;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @Output() fileDropped = new EventEmitter<any>();\r\n\r\n // Dragover listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('dragover', ['$event']) onDragOver(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = !this.disabled;\r\n }\r\n\r\n // Dragleave listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('dragleave', ['$event']) public onDragLeave(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = false;\r\n }\r\n\r\n // Drop listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('drop', ['$event']) public ondrop(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = false;\r\n if (this.disabled) {\r\n return;\r\n }\r\n const files = evt.dataTransfer.files;\r\n if (files.length > 0) {\r\n this.fileDropped.emit(files);\r\n }\r\n }\r\n\r\n constructor(private readonly element: ElementRef) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DragAndDropDirective } from './drag-and-drop.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n DragAndDropDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n DragAndDropDirective\r\n ]\r\n})\r\nexport class DragAndDropModule { }\r\n","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { MatButton } from '@angular/material/button';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-close-button',\r\n templateUrl: './close-button.component.html'\r\n})\r\nexport class CloseButtonComponent {\r\n // any type because emitter doesn't really need a value\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @Output() tldClick: EventEmitter<any> = new EventEmitter();\r\n @Input() ariaCode = \"CLOSE_BUTTON\";\r\n // This property is created so it is easier to access real button from outside component.\r\n @ViewChild(\"clearButton\") clearButton!: MatButton;\r\n @Input() disabled!: boolean;\r\n @Input() tooltip!: string;\r\n\r\n clicked() {\r\n this.tldClick.emit(null);\r\n }\r\n}\r\n","<button [matTooltip]=\"tooltip | translate\"\r\n#clearButton mat-icon-button (click)=\"clicked()\" [attr.aria-label]=\"'ARIA_LABELS.'+ariaCode | translate\"\r\n [disabled]=\"disabled\">\r\n <span class=\"material-icons\">\r\n close\r\n </span>\r\n</button>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CloseButtonComponent } from './close-button.component';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CloseButtonComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatButtonModule,\r\n TranslateModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n CloseButtonComponent\r\n ]\r\n})\r\nexport class CloseButtonModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { NotificationMessageType } from './enums/notification-message-type.enum';\r\nimport { NotificationMessage } from './interfaces/notification-message.model';\r\n\r\n@Component({\r\n selector: 'lib-tld-notification-message',\r\n templateUrl: './notification-message.component.html',\r\n styleUrls: ['./notification-message.component.scss']\r\n})\r\nexport class NotificationMessageComponent implements OnInit {\r\n @Input() message!: NotificationMessage;\r\n\r\n @Output() buttonClicked = new EventEmitter();\r\n @Output() closeClicked = new EventEmitter();\r\n @Output() linkClicked = new EventEmitter();\r\n /** Adds additional class that makes message to take less space on screen. */\r\n @Input() inline!: boolean;\r\n\r\n readonly iconNames: { [key in NotificationMessageType]: string } = {\r\n \"BASIC\": \"info\",\r\n \"ERROR\": \"error\",\r\n \"SUCCESS\": \"check_circle\",\r\n \"WARNING\": \"info\",\r\n }\r\n className!: string;\r\n\r\n ngOnInit(): void {\r\n this.className = this.message.type.toLocaleLowerCase();\r\n }\r\n\r\n buttonClick() {\r\n this.buttonClicked.next(null)\r\n }\r\n\r\n closeClick() {\r\n this.closeClicked.next(null)\r\n }\r\n\r\n linkClick(){\r\n this.linkClicked.next(null)\r\n }\r\n\r\n}\r\n","<div class=\"notification-message {{className}}\">\r\n <div class=\"notification-message-container tld-default-border\" [ngClass.lt-md]=\"'mobile'\" [class.inline]=\"inline\"\r\n fxLayout=\"row\" fxLayoutAlign=\"start start\" [attr.id]=\"message.id\" aria-live=\"polite\" fxLayout=\"row\">\r\n <span class=\"material-icons message-icon\">\r\n {{iconNames[message.type]}}\r\n </span>\r\n <div class=\"items-container\" fxFlex>\r\n <div fxLayout=\"row\">\r\n <div class=\"text-container\" fxFlex>\r\n <h1 *ngIf=\"message.title\" class=\"message-title\"\r\n [innerHtml]=\"message.title | translate: message.localizationParams\"></h1>\r\n <p *ngIf=\"message.body\" class=\"message-body\">\r\n <span [innerHtml]=\"message.body | translate: message.localizationParams\"></span>\r\n <span *ngIf=\"message.support\" [innerHtml]=\"message.support | translate: message.localizationParams\"></span>\r\n </p>\r\n </div>\r\n <tld-close-button *ngIf=\"!message.hideClose\" class=\"close-button\" (tldClick)=\"closeClick()\">\r\n </tld-close-button>\r\n </div>\r\n <div fxLayout=\"row\" fxLayoutGap=\"16px\" fxLayoutAlign=\"start center\"\r\n *ngIf=\"message.buttonText || message.linkHref || message.routerLink\">\r\n <button class=\"message-action-button\" color=\"accent\" mat-flat-button *ngIf=\"message.buttonText\"\r\n (click)=\"buttonClick()\">{{message.buttonText | translate}} </button>\r\n <a class=\"message-action-link\" *ngIf=\"message.linkHref && message.linkText\" (click)=\"linkClick()\"\r\n [attr.href]=\"message.linkHref\">{{message.linkText |\r\n translate}}</a>\r\n <a class=\"message-action-link\" *ngIf=\"message.routerLink && message.linkText\" (click)=\"linkClick()\"\r\n [routerLink]=\"[message.routerLink]\">{{message.linkText |\r\n translate}}</a>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { RouterModule } from '@angular/router';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { CloseButtonModule } from '../close-button/close-button.module';\r\nimport { NotificationMessageComponent } from './notification-message.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NotificationMessageComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FlexLayoutModule,\r\n CloseButtonModule,\r\n MatButtonModule,\r\n TranslateModule,\r\n RouterModule\r\n ],\r\n exports: [\r\n NotificationMessageComponent\r\n ]\r\n})\r\nexport class NotificationMessageModule { }\r\n","export enum NotificationMessageType{\r\n BASIC = \"BASIC\",\r\n WARNING = \"WARNING\",\r\n SUCCESS = \"SUCCESS\",\r\n ERROR = \"ERROR\"\r\n}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-tld-loader',\r\n templateUrl: './tld-loader.component.html',\r\n styleUrls: ['./tld-loader.component.scss']\r\n})\r\nexport class TldLoaderComponent {\r\n}\r\n","<div class=\"tld-loader accent-color\" fxLayout=\"row\" fxLayoutGap=\"10px\">\r\n <div class=\"accent-bg-color tld-loader-element element-1\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-2\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-3\"></div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { TldLoaderComponent } from './tld-loader.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n TldLoaderComponent\r\n ],\r\n exports: [\r\n TldLoaderComponent\r\n ]\r\n})\r\nexport class TldLoaderModule { }\r\n","import { MissingTranslationHandler, MissingTranslationHandlerParams } from \"@ngx-translate/core\";\r\n\r\nexport class MissingTranslationHelper implements MissingTranslationHandler {\r\n handle(params: MissingTranslationHandlerParams) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n return (params.interpolateParams as any)?.default || params.key;\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-company-product',\r\n templateUrl: './company-product.component.html',\r\n styleUrls: ['./company-product.component.scss']\r\n})\r\nexport class CompanyProductComponent{\r\n\r\n @Input() company = \"\";\r\n @Input() product = \"\";\r\n\r\n}\r\n","<div fxHide.lt-md class=\"tilde-product-title\">\r\n <span class=\"company\">\r\n {{company | uppercase}}\r\n </span>\r\n <span class=\"product\">\r\n {{product}}\r\n </span>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CompanyProductComponent } from './company-product.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CompanyProductComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [CompanyProductComponent]\r\n})\r\nexport class CompanyProductModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n currentYear!: number;\r\n\r\n readonly defaultTermsRoute = \"terms-of-use\";\r\n readonly defaultPrivacyRoute = \"privacy-policy\"\r\n\r\n @Input() privacyRoute = this.defaultPrivacyRoute;\r\n @Input() termsOfUseRoute = this.defaultTermsRoute;\r\n @Input() contactUsRoute = \"https://tilde.com/about/get-in-touch\";\r\n\r\n @Input() baseUrl!: string;\r\n\r\n constructor() {\r\n this.currentYear = new Date().getFullYear();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.baseUrl) {\r\n this.privacyRoute = this.baseUrl + this.privacyRoute;\r\n this.termsOfUseRoute = this.baseUrl + this.termsOfUseRoute;\r\n }\r\n }\r\n\r\n}\r\n","<footer fxLayout=\"row\" class=\"text-m\">\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutAlign.xs=\"center center\" fxLayout.xs=\"column\"\r\n fxLayoutGap=\"16px\">\r\n <div>\r\n {{ 'FOOTER.TITLE' | translate: {currentYear: currentYear} }}\r\n </div>\r\n <div fxLayoutGap=\"1rem\">\r\n <ng-container *ngIf=\"baseUrl; else localRoutes\">\r\n <a class=\"semi-bold\" *ngIf=\"termsOfUseRoute\" [attr.href]=\"termsOfUseRoute\" target=\"_blank\"> {{\r\n 'FOOTER.TERMS_OF_USE' |\r\n translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"privacyRoute\" [attr.href]=\"privacyRoute\" target=\"_blank\"> {{ 'FOOTER.PRIVACY'\r\n | translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"contactUsRoute\" [routerLink]=\"[contactUsRoute]\"> {{ 'FOOTER.CONTACT_US'| translate\r\n }}</a>\r\n\r\n </ng-container>\r\n <ng-template #localRoutes>\r\n <a class=\"semi-bold\" *ngIf=\"termsOfUseRoute\" [routerLink]=\"[termsOfUseRoute]\"> {{ 'FOOTER.TERMS_OF_USE' |\r\n translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"privacyRoute\" [routerLink]=\"[privacyRoute]\"> {{ 'FOOTER.PRIVACY'| translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"contactUsRoute\" [routerLink]=\"[contactUsRoute]\"> {{ 'FOOTER.CONTACT_US'| translate\r\n }}</a>\r\n </ng-template>\r\n </div>\r\n </div>\r\n</footer>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FooterComponent } from './footer.component';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FooterComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FlexLayoutModule,\r\n TranslateModule,\r\n RouterModule\r\n ],\r\n exports: [FooterComponent]\r\n})\r\nexport class FooterModule { }\r\n","export enum FileUploadErrorTypeEnum{\r\n FILE_UPLOAD_UNSUPPORTED_FORMAT = \"FILE_UPLOAD_UNSUPPORTED_FORMAT\",\r\n FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER = \"FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER\",\r\n MAX_SIZE = \"FILE_UPLOAD_MAX_SIZE\",\r\n FILE_EMPTY = \"FILE_UPLOAD_EMPTY\"\r\n}\r\n","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { FileUploadErrorTypeEnum } from './models/file-upload-error-type.enum';\r\nimport { FileUploadError } from './models/file-upload-error.model';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-file-upload',\r\n templateUrl: './file-upload.component.html',\r\n styleUrls: ['./file-upload.component.scss']\r\n})\r\nexport class FileUploadComponent {\r\n @ViewChild('fileInput') fileInput!: ElementRef;\r\n @ViewChild('inputButton', { read: ElementRef }) inputButton!: ElementRef;\r\n\r\n @Output() fileChange: EventEmitter<File[]> = new EventEmitter<File[]>();\r\n @Output() errorEvent: EventEmitter<FileUploadError> = new EventEmitter<FileUploadError>();\r\n private _accept: string[] = [];\r\n @Input() set accept(val: string[]) {\r\n this._accept = val;\r\n this.allowedExtensions = val ? val.join(\",\") : \"\";\r\n }\r\n get accept() { return this._accept }\r\n @Input() maxSize!: number;\r\n @Input() multiple = false;\r\n @Input() filePreviewProgress!: number;\r\n @Input() allowEmpty!: boolean;\r\n @Input() disabled!: boolean;\r\n\r\n /** same as accept but for registered users. It changes error message if extension is supported for registered users. */\r\n @Input() extendedAcceptList!: string[];\r\n\r\n allowedExtensions!: string;\r\n\r\n handleFileInput(event: Event) {\r\n const target = event.target as HTMLInputElement;\r\n const files = target.files as FileList;\r\n this.validate(files);\r\n }\r\n\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onFileDrop(files: any) {\r\n this.validate(files);\r\n }\r\n\r\n private emit(files: File[]) {\r\n if (files && files.length > 0) {\r\n this.fileChange.emit(files);\r\n }\r\n }\r\n\r\n private emitError(error: FileUploadError) {\r\n this.errorEvent.emit(error);\r\n }\r\n\r\n private validate(files: FileList) {\r\n //let size = 0;\r\n const validFiles: File[] = [];\r\n for (let i = 0; i < files.length; i++) {\r\n const file = files[i];\r\n if (!this.allowEmpty && file.size == 0) {\r\n this.emitError({ code: FileUploadErrorTypeEnum.FILE_EMPTY, error: \"File is empty\", fileName: file.name });\r\n return;\r\n }\r\n //size += file.size;\r\n const extensionErrorCode = this.getExtensionErrorCode(file.name);\r\n if (extensionErrorCode) {\r\n const error = { code: extensionErrorCode, error: \"Not valid extension.\", fileName: file.name };\r\n this.emitError(error);\r\n }\r\n else if (this.maxSize && file.size > this.maxSize) {\r\n const error = { code: FileUploadErrorTypeEnum.MAX_SIZE, error: \"Maximum allowed file size exceeded.\", fileName: file.name };\r\n this.emitError(error);\r\n }\r\n else {\r\n validFiles.push(file);\r\n }\r\n }\r\n\r\n this.emit(validFiles);\r\n this.fileInput.nativeElement.value = '';\r\n }\r\n\r\n private getExtensionErrorCode(fileName: string): FileUploadErrorTypeEnum | null {\r\n const extension = fileName.slice(fileName.lastIndexOf('.')).toLowerCase()\r\n if (\r\n this.accept.length == 0 || (this.accept.length == 1 && this.accept[0] == '*') || this.accept.includes(extension)) {\r\n return null;\r\n }\r\n else {\r\n return this.extendedAcceptList?.includes(extension) ? FileUploadErrorTypeEnum.FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER : FileUploadErrorTypeEnum.FILE_UPLOAD_UNSUPPORTED_FORMAT;\r\n }\r\n }\r\n}\r\n","<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FileUploadComponent } from './file-upload.component';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { DragAndDropModule } from '../directives/drag-and-drop/drag-and-drop.module';\r\n\r\n@NgModule({\r\n declarations: [FileUploadComponent],\r\n imports: [\r\n CommonModule,\r\n MatProgressBarModule,\r\n FlexLayoutModule,\r\n MatButtonModule,\r\n DragAndDropModule\r\n ],\r\n exports: [\r\n FileUploadComponent\r\n ]\r\n})\r\nexport class FileUploadModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { MatSelectChange } from '@angular/material/select';\r\nimport { FilterBarFilter, FilterBarFilterItem } from './models';\r\nimport { FilterBarChangeEvent } from './models/filter-bar-change-event.model';\r\nimport { FilterBarSettings } from './models/filter-bar-settings.model';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-filter-bar',\r\n templateUrl: './filter-bar.component.html',\r\n styleUrls: ['./filter-bar.component.scss']\r\n})\r\nexport class FilterBarComponent implements OnInit {\r\n private _inputText = \"\";\r\n get inputText() {\r\n return this._inputText;\r\n }\r\n set inputText(value) {\r\n this._inputText = value;\r\n this.filters.input = this._inputText;\r\n this.emitFilters();\r\n }\r\n\r\n searchTitle!: string;\r\n searchTooltip!: string;\r\n suffixIcon!: string;\r\n prefixIcon!: string;\r\n showSuffixIcon!: boolean;\r\n\r\n filters: FilterBarChangeEvent = {\r\n filters: {},\r\n input: \"\"\r\n };\r\n @Output() filterBarChange: EventEmitter<FilterBarChangeEvent> = new EventEmitter<FilterBarChangeEvent>();\r\n\r\n get showSearch() {\r\n return !this.settings?.hideSearch;\r\n }\r\n\r\n get fields() {\r\n return this.settings?.filters ?? [];\r\n }\r\n @Input() settings!: FilterBarSettings;\r\n\r\n ngOnInit() {\r\n this.searchTooltip = this.settings?.searchTooltip ?? 'FILTER_BAR.SEARCH_TOOLTIP';\r\n this.searchTitle = this.settings?.searchTitle ?? 'FILTER_BAR.SEARCH';\r\n this.prefixIcon = this.settings?.prefixIcon ?? \"filter_alt\";\r\n this.suffixIcon = this.settings?.suffixIcon ?? \"question_mark\";\r\n this.showSuffixIcon = this.settings?.showSuffixIcon ?? true;\r\n }\r\n\r\n filterChange(filter: FilterBarFilter, event: MatSelectChange) {\r\n this.filters.filters[filter.fieldName] = (event.value as FilterBarFilterItem[]).map(item => item.value);\r\n this.emitFilters();\r\n }\r\n\r\n emitFilters() {\r\n this.filterBarChange.next(this.filters);\r\n }\r\n}\r\n","<div fxLayout=\"row\">\r\n <mat-form-field fxFlex *ngIf=\"showSearch\" class=\"filter-bar-search-input\">\r\n <span matPrefix class=\"material-icons-outlined\">\r\n {{prefixIcon}}\r\n </span>\r\n <span matSuffix class=\"material-icons-outlined\" *ngIf=\"showSuffixIcon\" [matTooltip]=\"searchTooltip | translate\">\r\n {{suffixIcon}}\r\n </span>\r\n <input class=\"search-input\" matInput [(ngModel)]=\"inputText\" [placeholder]=\"searchTitle | translate\">\r\n </mat-form-field>\r\n <mat-form-field *ngFor=\"let filter of fields\">\r\n <mat-label>{{filter.title | translate}}</mat-label>\r\n <mat-select multiple (selectionChange)=\"filterChange(filter, $event)\">\r\n <mat-option *ngFor=\"let value of filter.values\" [value]=\"value\">\r\n {{value.key | translate : {default: value.value | titlecase } }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FilterBarComponent } from './filter-bar.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FilterBarComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n TranslateModule,\r\n MatInputModule,\r\n MatFormFieldModule,\r\n FlexLayoutModule,\r\n MatSelectModule,\r\n FormsModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n FilterBarComponent\r\n ]\r\n})\r\nexport class FilterBarModule { }\r\n","/*\r\n * Public API Surface of ngx-common\r\n */\r\n\r\nexport * from './lib/services';\r\nexport * from './lib/plausible';\r\nexport * from './lib/inline-message';\r\nexport * from './lib/pipes';\r\nexport * from './lib/directives';\r\nexport * from './lib/close-button';\r\nexport * from './lib/notification-message';\r\nexport * from './lib/tld-loader'\r\nexport * from './lib/helpers';\r\nexport * from './lib/company-product';\r\nexport * from './lib/footer';\r\nexport * from './lib/file-upload';\r\nexport * from './lib/filter-bar';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3","i1.CloseButtonComponent","i7","i4","i5.DragAndDropDirective","i6","i9"],"mappings":"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"}
1
+ {"version":3,"file":"tilde-nlp-ngx-common.mjs","sources":["../../../projects/ngx-common/src/lib/services/icon.service.ts","../../../projects/ngx-common/src/lib/services/dom.service.ts","../../../projects/ngx-common/src/lib/plausible/plausible.helper.ts","../../../projects/ngx-common/src/lib/plausible/plausible-event.directive.ts","../../../projects/ngx-common/src/lib/plausible/plausible.module.ts","../../../projects/ngx-common/src/lib/inline-message/models/inline-message-icon-position.enum.ts","../../../projects/ngx-common/src/lib/inline-message/inline-message.component.ts","../../../projects/ngx-common/src/lib/inline-message/inline-message.component.html","../../../projects/ngx-common/src/lib/inline-message/inline-message.module.ts","../../../projects/ngx-common/src/lib/inline-message/models/inline-message-type.enum.ts","../../../projects/ngx-common/src/lib/pipes/filter-with-highlight/filter-with-highlight.pipe.ts","../../../projects/ngx-common/src/lib/pipes/filter-with-highlight/filter-with-highlight.module.ts","../../../projects/ngx-common/src/lib/pipes/sort-translations/sort-translations.pipe.ts","../../../projects/ngx-common/src/lib/pipes/sort-translations/sort-translations.module.ts","../../../projects/ngx-common/src/lib/directives/click-outside/click-outside.directive.ts","../../../projects/ngx-common/src/lib/directives/click-outside/click-outside.module.ts","../../../projects/ngx-common/src/lib/directives/drag-and-drop/drag-and-drop.directive.ts","../../../projects/ngx-common/src/lib/directives/drag-and-drop/drag-and-drop.module.ts","../../../projects/ngx-common/src/lib/close-button/close-button.component.ts","../../../projects/ngx-common/src/lib/close-button/close-button.component.html","../../../projects/ngx-common/src/lib/close-button/close-button.module.ts","../../../projects/ngx-common/src/lib/notification-message/notification-message.component.ts","../../../projects/ngx-common/src/lib/notification-message/notification-message.component.html","../../../projects/ngx-common/src/lib/notification-message/notification-message.module.ts","../../../projects/ngx-common/src/lib/notification-message/enums/notification-message-type.enum.ts","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.component.ts","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.component.html","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.module.ts","../../../projects/ngx-common/src/lib/helpers/missing-translation-helper.ts","../../../projects/ngx-common/src/lib/company-product/company-product.component.ts","../../../projects/ngx-common/src/lib/company-product/company-product.component.html","../../../projects/ngx-common/src/lib/company-product/company-product.module.ts","../../../projects/ngx-common/src/lib/footer/footer.component.ts","../../../projects/ngx-common/src/lib/footer/footer.component.html","../../../projects/ngx-common/src/lib/footer/footer.module.ts","../../../projects/ngx-common/src/lib/file-upload/models/file-upload-error-type.enum.ts","../../../projects/ngx-common/src/lib/file-upload/file-upload.component.ts","../../../projects/ngx-common/src/lib/file-upload/file-upload.component.html","../../../projects/ngx-common/src/lib/file-upload/file-upload.module.ts","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.component.ts","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.component.html","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.module.ts","../../../projects/ngx-common/src/public-api.ts","../../../projects/ngx-common/src/tilde-nlp-ngx-common.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { MatIconRegistry } from '@angular/material/icon';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IconService {\r\n constructor(private readonly iconRegistry: MatIconRegistry,\r\n private readonly sanitizer: DomSanitizer) {\r\n }\r\n\r\n //https://material.angular.io/components/icon/examples\r\n /** Registers svg icons to mat icon registry. Icon SVG's should be under some key in object. Icon name can be used with property name in lowercase. */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n registerIcons(icons: any) {\r\n for (const key in icons) {\r\n this.iconRegistry.addSvgIconLiteral(key.toLowerCase(), this.sanitizer.bypassSecurityTrustHtml(icons[key]));\r\n }\r\n }\r\n\r\n registerIconFromUrl(name: string, url: string) {\r\n this.iconRegistry.addSvgIcon(name, this.sanitizer.bypassSecurityTrustResourceUrl(url));\r\n }\r\n\r\n addSvgIconSet(path: string, namespace?: string) {\r\n namespace ?\r\n this.iconRegistry.addSvgIconSetInNamespace(namespace, this.sanitizer.bypassSecurityTrustResourceUrl(path)) :\r\n this.iconRegistry.addSvgIconSet(this.sanitizer.bypassSecurityTrustResourceUrl(path));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nconst _localStorage: Storage | null = typeof localStorage !== 'undefined' ? localStorage : null;\r\nconst _window: Window | null = typeof window !== 'undefined' ? window : null;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DOMService {\r\n\r\n get window(): Window | null {\r\n return _window;\r\n }\r\n\r\n get localStorage(): Storage | null {\r\n return _localStorage;\r\n }\r\n\r\n\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { DOMService } from \"../services\";\r\n\r\nexport class PlausibleHelper {\r\n /**\r\n * Adds plausible for selected domain and adds additional script for custom event (goal) triggering\r\n * @param domain domain that is registered in your plausible account\r\n * @returns\r\n */\r\n static addPlausible(domain: string) {\r\n const domService = new DOMService();\r\n const windowObj: any = domService.window;\r\n if (!windowObj || !domain) {\r\n return;\r\n }\r\n\r\n const plausibleSrc = \"https://plausible.io/js/plausible.js\";\r\n const script = document.createElement(\"script\");\r\n script.src = plausibleSrc;\r\n script.setAttribute(\"data-domain\", domain);\r\n document.head.append(script);\r\n\r\n // Add plausible custom event functionality https://plausible.io/docs/custom-event-goals#code-example-for-tracking-link-clicks\r\n windowObj.plausible = windowObj.plausible || ((...params: any) => { (windowObj.plausible.q = windowObj.plausible.q || []).push(params) })\r\n }\r\n\r\n /**\r\n * Emits custom plausible event\r\n * @param id plausible event id that should be the same as registered in plausible\r\n * @param properties an object with custom properties for the event\r\n * @returns\r\n */\r\n static customEvent(id: string, properties?: any) {\r\n const windowObj: any = window;\r\n if (!windowObj?.plausible) {\r\n return;\r\n }\r\n windowObj.plausible(id, { props: properties });\r\n }\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\nimport { PlausibleEvent } from './models';\r\nimport { PlausibleHelper } from './plausible.helper';\r\n\r\n@Directive({\r\n selector: '[libPlausibleEvent]'\r\n})\r\nexport class PlausibleEventDirective {\r\n private id = \"\";\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n private properties: any = null;\r\n /** Plausible event id. */\r\n @Input() set libPlausibleEvent(value: PlausibleEvent | undefined) {\r\n if (!value) {\r\n return;\r\n }\r\n this.id = value.eventId;\r\n\r\n if (value.properties) {\r\n this.properties = {}\r\n value.properties.forEach(item => this.properties[item.key] = item.value);\r\n }\r\n\r\n }\r\n\r\n @HostListener(\"click\") onClick() {\r\n if (this.id.length) {\r\n PlausibleHelper.customEvent(this.id, this.properties);\r\n }\r\n }\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PlausibleEventDirective } from './plausible-event.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PlausibleEventDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n PlausibleEventDirective\r\n ]\r\n})\r\nexport class PlausibleModule { }\r\n","export enum InlineMessageIconPosition {\r\n START,\r\n END\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { InlineMessageIconPosition } from './models/inline-message-icon-position.enum';\r\nimport { InlineMessage } from './models/inline-message.model';\r\n\r\n@Component({\r\n selector: 'lib-inline-message',\r\n templateUrl: './inline-message.component.html',\r\n styleUrls: ['./inline-message.component.scss']\r\n})\r\nexport class InlineMessageComponent {\r\n readonly END_ICON_POSITION = InlineMessageIconPosition.END;\r\n\r\n @Input() iconName = \"info\";\r\n @Input() message!: InlineMessage;\r\n}\r\n","<div class=\"tld-inline-message {{message.type}}\">\r\n <span class=\"material-icons\" [class.order-end]=\"message.iconPosition === END_ICON_POSITION\"\r\n [matTooltip]=\"message.iconTooltip? (message.iconTooltip | translate: message.localizationParams) : ''\" *ngIf=\"iconName\">{{iconName}}</span>\r\n <section *ngIf=\"message\">\r\n <div class=\"text-s-semi-bold title\" *ngIf=\"message.title\"\r\n [innerHtml]=\"message.title | translate: message.localizationParams\">\r\n </div>\r\n <p class=\"text-s description\" *ngIf=\"message.description\" [innerHtml]=\"message.description | translate:\r\n message.localizationParams\"></p>\r\n </section>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { InlineMessageComponent } from './inline-message.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n InlineMessageComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n TranslateModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n InlineMessageComponent\r\n ]\r\n})\r\nexport class InlineMessageModule { }\r\n","export enum InlineMessageType {\r\n INFO = 'info',\r\n WARNING = 'warning',\r\n ERROR = 'error'\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'filterWithHighlight'\r\n})\r\nexport class FilterWithHighlightPipe implements PipeTransform {\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n transform(value: any[], filter: string, key?: string): any[] {\r\n if (!filter.length) {\r\n return [...value];\r\n }\r\n\r\n const filteredArr = [];\r\n const regex = new RegExp(filter, 'gi');\r\n\r\n for (let element of value) {\r\n const elementText: string = key ? element[key] : element;\r\n const match = elementText.match(regex);\r\n if (!match) {\r\n continue;\r\n }\r\n let newElement;\r\n\r\n const textWithHighlight = elementText.replace(regex, (match) => `<span class=\"filter-highlight\">${match}</span>`);\r\n if (key) {\r\n newElement = { ...element };\r\n newElement[key] = textWithHighlight;\r\n }\r\n else {\r\n element = textWithHighlight;\r\n }\r\n\r\n filteredArr.push(newElement ?? element);\r\n }\r\n return filteredArr;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FilterWithHighlightPipe } from './filter-with-highlight.pipe';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FilterWithHighlightPipe\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n FilterWithHighlightPipe\r\n ]\r\n})\r\nexport class FilterWithHighlightModule { }\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Pipe({\r\n name: 'sortTranslations'\r\n})\r\n/**\r\n * Pipe used to sort translated values.\r\n */\r\nexport class SortTranslationsPipe implements PipeTransform {\r\n\r\n constructor(private translate: TranslateService) { }\r\n\r\n /**\r\n *\r\n * @param objects array of objects to be sorted\r\n * @param localizationPrefix prefix for localization code. This is used to get necessary object translations.\r\n * @param key Which object property needs to be used for sorting.\r\n * @param currentLanguage This is necessary to update values if language is changed.\r\n * @returns \r\n */\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n transform(objects: Array<any>, localizationPrefix: string | null, key: string | null = null, currentLanguage: string, translationKey: string | null = null): Observable<Array<any>> {\r\n const arrayCopy = [...objects];\r\n if (localizationPrefix) {\r\n return new Observable<string[]>((subscriber) => {\r\n this.translate.get(localizationPrefix ?? \"\").subscribe((translations) => {\r\n const array = this.sortObjects(arrayCopy, key, translations);\r\n subscriber.next(array);\r\n subscriber.complete();\r\n })\r\n });\r\n }\r\n else {\r\n return of(this.sortObjects(arrayCopy, key));\r\n }\r\n }\r\n\r\n private sortObjects(array: any[], key?: string | null, translations?: any):any[] {\r\n return array.sort((a: any, b: any) => {\r\n const aValue = key ? a[key] : a;\r\n const aTranslation = translations ? translations[aValue.toUpperCase()] : aValue;\r\n\r\n const bValue = key ? b[key] : b;\r\n const bTranslation = translations ? translations[bValue.toUpperCase()] : bValue;\r\n\r\n if (aTranslation < bTranslation)\r\n return -1;\r\n else if (aTranslation > bTranslation)\r\n return 1;\r\n else\r\n return 0;\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SortTranslationsPipe } from './sort-translations.pipe';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [SortTranslationsPipe],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n SortTranslationsPipe\r\n ]\r\n})\r\nexport class SortTranslationsModule { }\r\n","import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: '[clickOutside]'\r\n})\r\nexport class ClickOutsideDirective {\r\n @Output() clickOutside = new EventEmitter<void>();\r\n\r\n constructor(private elementRef: ElementRef) { }\r\n\r\n @HostListener('document:click', ['$event.target'])\r\n public onClick(target: HTMLElement) {\r\n const clickedInside = this.elementRef.nativeElement.contains(target);\r\n if (!clickedInside) {\r\n this.clickOutside.emit();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ClickOutsideDirective } from './click-outside.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ClickOutsideDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n ClickOutsideDirective\r\n ]\r\n})\r\nexport class ClickOutsideModule { }\r\n","import { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: '[tldDragAndDrop]'\r\n})\r\nexport class DragAndDropDirective {\r\n\r\n get disabled() { return this.element.nativeElement.disabled }\r\n\r\n @HostBinding('class.tld-file-over') active!: boolean;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @Output() fileDropped = new EventEmitter<any>();\r\n\r\n // Dragover listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('dragover', ['$event']) onDragOver(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = !this.disabled;\r\n }\r\n\r\n // Dragleave listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('dragleave', ['$event']) public onDragLeave(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = false;\r\n }\r\n\r\n // Drop listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('drop', ['$event']) public ondrop(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = false;\r\n if (this.disabled) {\r\n return;\r\n }\r\n const files = evt.dataTransfer.files;\r\n if (files.length > 0) {\r\n this.fileDropped.emit(files);\r\n }\r\n }\r\n\r\n constructor(private readonly element: ElementRef) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DragAndDropDirective } from './drag-and-drop.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n DragAndDropDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n DragAndDropDirective\r\n ]\r\n})\r\nexport class DragAndDropModule { }\r\n","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { MatButton } from '@angular/material/button';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-close-button',\r\n templateUrl: './close-button.component.html'\r\n})\r\nexport class CloseButtonComponent {\r\n // any type because emitter doesn't really need a value\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @Output() tldClick: EventEmitter<any> = new EventEmitter();\r\n @Input() ariaCode = \"CLOSE_BUTTON\";\r\n // This property is created so it is easier to access real button from outside component.\r\n @ViewChild(\"clearButton\") clearButton!: MatButton;\r\n @Input() disabled!: boolean;\r\n @Input() tooltip!: string;\r\n\r\n clicked() {\r\n this.tldClick.emit(null);\r\n }\r\n}\r\n","<button [matTooltip]=\"tooltip | translate\"\r\n#clearButton mat-icon-button (click)=\"clicked()\" [attr.aria-label]=\"'ARIA_LABELS.'+ariaCode | translate\"\r\n [disabled]=\"disabled\">\r\n <span class=\"material-icons\">\r\n close\r\n </span>\r\n</button>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CloseButtonComponent } from './close-button.component';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CloseButtonComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatButtonModule,\r\n TranslateModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n CloseButtonComponent\r\n ]\r\n})\r\nexport class CloseButtonModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { NotificationMessageType } from './enums/notification-message-type.enum';\r\nimport { NotificationMessage } from './interfaces/notification-message.model';\r\n\r\n@Component({\r\n selector: 'lib-tld-notification-message',\r\n templateUrl: './notification-message.component.html',\r\n styleUrls: ['./notification-message.component.scss']\r\n})\r\nexport class NotificationMessageComponent implements OnInit {\r\n @Input() message!: NotificationMessage;\r\n\r\n @Output() buttonClicked = new EventEmitter();\r\n @Output() closeClicked = new EventEmitter();\r\n @Output() linkClicked = new EventEmitter();\r\n /** Adds additional class that makes message to take less space on screen. */\r\n @Input() inline!: boolean;\r\n\r\n readonly iconNames: { [key in NotificationMessageType]: string } = {\r\n \"BASIC\": \"info\",\r\n \"ERROR\": \"error\",\r\n \"SUCCESS\": \"check_circle\",\r\n \"WARNING\": \"info\",\r\n }\r\n className!: string;\r\n\r\n ngOnInit(): void {\r\n this.className = this.message.type.toLocaleLowerCase();\r\n }\r\n\r\n buttonClick() {\r\n this.buttonClicked.next(null)\r\n }\r\n\r\n closeClick() {\r\n this.closeClicked.next(null)\r\n }\r\n\r\n linkClick(){\r\n this.linkClicked.next(null)\r\n }\r\n\r\n}\r\n","<div class=\"notification-message {{className}}\">\r\n <div class=\"notification-message-container tld-default-border\" [ngClass.lt-md]=\"'mobile'\" [class.inline]=\"inline\"\r\n fxLayout=\"row\" fxLayoutAlign=\"start start\" [attr.id]=\"message.id\" aria-live=\"polite\" fxLayout=\"row\">\r\n <span class=\"material-icons message-icon\">\r\n {{iconNames[message.type]}}\r\n </span>\r\n <div class=\"items-container\" fxFlex>\r\n <div fxLayout=\"row\">\r\n <div class=\"text-container\" fxFlex>\r\n <h1 *ngIf=\"message.title\" class=\"message-title\"\r\n [innerHtml]=\"message.title | translate: message.localizationParams\"></h1>\r\n <p *ngIf=\"message.body\" class=\"message-body\">\r\n <span [innerHtml]=\"message.body | translate: message.localizationParams\"></span>\r\n <span *ngIf=\"message.support\" [innerHtml]=\"message.support | translate: message.localizationParams\"></span>\r\n </p>\r\n </div>\r\n <tld-close-button *ngIf=\"!message.hideClose\" class=\"close-button\" (tldClick)=\"closeClick()\">\r\n </tld-close-button>\r\n </div>\r\n <div fxLayout=\"row\" fxLayoutGap=\"16px\" fxLayoutAlign=\"start center\"\r\n *ngIf=\"message.buttonText || message.linkHref || message.routerLink\">\r\n <button class=\"message-action-button\" color=\"accent\" mat-flat-button *ngIf=\"message.buttonText\"\r\n (click)=\"buttonClick()\">{{message.buttonText | translate}} </button>\r\n <a class=\"message-action-link\" *ngIf=\"message.linkHref && message.linkText\" (click)=\"linkClick()\"\r\n [attr.href]=\"message.linkHref\">{{message.linkText |\r\n translate}}</a>\r\n <a class=\"message-action-link\" *ngIf=\"message.routerLink && message.linkText\" (click)=\"linkClick()\"\r\n [routerLink]=\"[message.routerLink]\">{{message.linkText |\r\n translate}}</a>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { RouterModule } from '@angular/router';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { CloseButtonModule } from '../close-button/close-button.module';\r\nimport { NotificationMessageComponent } from './notification-message.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NotificationMessageComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FlexLayoutModule,\r\n CloseButtonModule,\r\n MatButtonModule,\r\n TranslateModule,\r\n RouterModule\r\n ],\r\n exports: [\r\n NotificationMessageComponent\r\n ]\r\n})\r\nexport class NotificationMessageModule { }\r\n","export enum NotificationMessageType{\r\n BASIC = \"BASIC\",\r\n WARNING = \"WARNING\",\r\n SUCCESS = \"SUCCESS\",\r\n ERROR = \"ERROR\"\r\n}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-tld-loader',\r\n templateUrl: './tld-loader.component.html',\r\n styleUrls: ['./tld-loader.component.scss']\r\n})\r\nexport class TldLoaderComponent {\r\n}\r\n","<div class=\"tld-loader accent-color\" fxLayout=\"row\" fxLayoutGap=\"10px\">\r\n <div class=\"accent-bg-color tld-loader-element element-1\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-2\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-3\"></div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { TldLoaderComponent } from './tld-loader.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n TldLoaderComponent\r\n ],\r\n exports: [\r\n TldLoaderComponent\r\n ]\r\n})\r\nexport class TldLoaderModule { }\r\n","import { MissingTranslationHandler, MissingTranslationHandlerParams } from \"@ngx-translate/core\";\r\n\r\nexport class MissingTranslationHelper implements MissingTranslationHandler {\r\n handle(params: MissingTranslationHandlerParams) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n return (params.interpolateParams as any)?.default || params.key;\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-company-product',\r\n templateUrl: './company-product.component.html',\r\n styleUrls: ['./company-product.component.scss']\r\n})\r\nexport class CompanyProductComponent{\r\n\r\n @Input() company = \"\";\r\n @Input() product = \"\";\r\n\r\n}\r\n","<div fxHide.lt-md class=\"tilde-product-title\">\r\n <span class=\"company\">\r\n {{company | uppercase}}\r\n </span>\r\n <span class=\"product\">\r\n {{product}}\r\n </span>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CompanyProductComponent } from './company-product.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CompanyProductComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [CompanyProductComponent]\r\n})\r\nexport class CompanyProductModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n currentYear!: number;\r\n\r\n readonly defaultTermsRoute = \"terms-of-use\";\r\n readonly defaultPrivacyRoute = \"privacy-policy\"\r\n\r\n @Input() privacyRoute = this.defaultPrivacyRoute;\r\n @Input() termsOfUseRoute = this.defaultTermsRoute;\r\n @Input() contactUsRoute = \"https://tilde.com/about/get-in-touch\";\r\n\r\n @Input() baseUrl!: string;\r\n\r\n constructor() {\r\n this.currentYear = new Date().getFullYear();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.baseUrl) {\r\n this.privacyRoute = this.baseUrl + this.privacyRoute;\r\n this.termsOfUseRoute = this.baseUrl + this.termsOfUseRoute;\r\n }\r\n }\r\n\r\n}\r\n","<footer fxLayout=\"row\" class=\"text-m\">\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutAlign.xs=\"center center\" fxLayout.xs=\"column\"\r\n fxLayoutGap=\"16px\">\r\n <div>\r\n {{ 'FOOTER.TITLE' | translate: {currentYear: currentYear} }}\r\n </div>\r\n <div fxLayoutGap=\"1rem\">\r\n <ng-container *ngIf=\"baseUrl; else localRoutes\">\r\n <a class=\"semi-bold\" *ngIf=\"termsOfUseRoute\" [attr.href]=\"termsOfUseRoute\" target=\"_blank\"> {{\r\n 'FOOTER.TERMS_OF_USE' |\r\n translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"privacyRoute\" [attr.href]=\"privacyRoute\" target=\"_blank\"> {{ 'FOOTER.PRIVACY'\r\n | translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"contactUsRoute\" [routerLink]=\"[contactUsRoute]\"> {{ 'FOOTER.CONTACT_US'| translate\r\n }}</a>\r\n\r\n </ng-container>\r\n <ng-template #localRoutes>\r\n <a class=\"semi-bold\" *ngIf=\"termsOfUseRoute\" [routerLink]=\"[termsOfUseRoute]\"> {{ 'FOOTER.TERMS_OF_USE' |\r\n translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"privacyRoute\" [routerLink]=\"[privacyRoute]\"> {{ 'FOOTER.PRIVACY'| translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"contactUsRoute\" [routerLink]=\"[contactUsRoute]\"> {{ 'FOOTER.CONTACT_US'| translate\r\n }}</a>\r\n </ng-template>\r\n </div>\r\n </div>\r\n</footer>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FooterComponent } from './footer.component';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FooterComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FlexLayoutModule,\r\n TranslateModule,\r\n RouterModule\r\n ],\r\n exports: [FooterComponent]\r\n})\r\nexport class FooterModule { }\r\n","export enum FileUploadErrorTypeEnum{\r\n FILE_UPLOAD_UNSUPPORTED_FORMAT = \"FILE_UPLOAD_UNSUPPORTED_FORMAT\",\r\n FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER = \"FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER\",\r\n MAX_SIZE = \"FILE_UPLOAD_MAX_SIZE\",\r\n FILE_EMPTY = \"FILE_UPLOAD_EMPTY\"\r\n}\r\n","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { FileUploadErrorTypeEnum } from './models/file-upload-error-type.enum';\r\nimport { FileUploadError } from './models/file-upload-error.model';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-file-upload',\r\n templateUrl: './file-upload.component.html',\r\n styleUrls: ['./file-upload.component.scss']\r\n})\r\nexport class FileUploadComponent {\r\n @ViewChild('fileInput') fileInput!: ElementRef;\r\n @ViewChild('inputButton', { read: ElementRef }) inputButton!: ElementRef;\r\n\r\n @Output() fileChange: EventEmitter<File[]> = new EventEmitter<File[]>();\r\n @Output() errorEvent: EventEmitter<FileUploadError> = new EventEmitter<FileUploadError>();\r\n private _accept: string[] = [];\r\n @Input() set accept(val: string[]) {\r\n this._accept = val;\r\n this.allowedExtensions = val ? val.join(\",\") : \"\";\r\n }\r\n get accept() { return this._accept }\r\n @Input() maxSize!: number;\r\n @Input() multiple = false;\r\n @Input() filePreviewProgress!: number;\r\n @Input() allowEmpty!: boolean;\r\n @Input() disabled!: boolean;\r\n @Input() uploadIconName!: string;\r\n\r\n /** same as accept but for registered users. It changes error message if extension is supported for registered users. */\r\n @Input() extendedAcceptList!: string[];\r\n\r\n allowedExtensions!: string;\r\n\r\n handleFileInput(event: Event) {\r\n const target = event.target as HTMLInputElement;\r\n const files = target.files as FileList;\r\n this.validate(files);\r\n }\r\n\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onFileDrop(files: any) {\r\n this.validate(files);\r\n }\r\n\r\n private emit(files: File[]) {\r\n if (files && files.length > 0) {\r\n this.fileChange.emit(files);\r\n }\r\n }\r\n\r\n private emitError(error: FileUploadError) {\r\n this.errorEvent.emit(error);\r\n }\r\n\r\n private validate(files: FileList) {\r\n //let size = 0;\r\n const validFiles: File[] = [];\r\n for (let i = 0; i < files.length; i++) {\r\n const file = files[i];\r\n if (!this.allowEmpty && file.size == 0) {\r\n this.emitError({ code: FileUploadErrorTypeEnum.FILE_EMPTY, error: \"File is empty\", fileName: file.name });\r\n return;\r\n }\r\n //size += file.size;\r\n const extensionErrorCode = this.getExtensionErrorCode(file.name);\r\n if (extensionErrorCode) {\r\n const error = { code: extensionErrorCode, error: \"Not valid extension.\", fileName: file.name };\r\n this.emitError(error);\r\n }\r\n else if (this.maxSize && file.size > this.maxSize) {\r\n const error = { code: FileUploadErrorTypeEnum.MAX_SIZE, error: \"Maximum allowed file size exceeded.\", fileName: file.name };\r\n this.emitError(error);\r\n }\r\n else {\r\n validFiles.push(file);\r\n }\r\n }\r\n\r\n this.emit(validFiles);\r\n this.fileInput.nativeElement.value = '';\r\n }\r\n\r\n private getExtensionErrorCode(fileName: string): FileUploadErrorTypeEnum | null {\r\n const extension = fileName.slice(fileName.lastIndexOf('.')).toLowerCase()\r\n if (\r\n this.accept.length == 0 || (this.accept.length == 1 && this.accept[0] == '*') || this.accept.includes(extension)) {\r\n return null;\r\n }\r\n else {\r\n return this.extendedAcceptList?.includes(extension) ? FileUploadErrorTypeEnum.FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER : FileUploadErrorTypeEnum.FILE_UPLOAD_UNSUPPORTED_FORMAT;\r\n }\r\n }\r\n}\r\n","<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <mat-icon *ngIf=\"uploadIconName\">{{uploadIconName}}</mat-icon>\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FileUploadComponent } from './file-upload.component';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { DragAndDropModule } from '../directives/drag-and-drop/drag-and-drop.module';\r\nimport { MatIconModule } from '@angular/material/icon';\r\n\r\n\r\n@NgModule({\r\n declarations: [FileUploadComponent],\r\n imports: [\r\n CommonModule,\r\n MatProgressBarModule,\r\n FlexLayoutModule,\r\n MatButtonModule,\r\n DragAndDropModule,\r\n MatIconModule\r\n ],\r\n exports: [\r\n FileUploadComponent\r\n ]\r\n})\r\nexport class FileUploadModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { MatSelectChange } from '@angular/material/select';\r\nimport { FilterBarFilter, FilterBarFilterItem } from './models';\r\nimport { FilterBarChangeEvent } from './models/filter-bar-change-event.model';\r\nimport { FilterBarSettings } from './models/filter-bar-settings.model';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-filter-bar',\r\n templateUrl: './filter-bar.component.html',\r\n styleUrls: ['./filter-bar.component.scss']\r\n})\r\nexport class FilterBarComponent implements OnInit {\r\n private _inputText = \"\";\r\n get inputText() {\r\n return this._inputText;\r\n }\r\n set inputText(value) {\r\n this._inputText = value;\r\n this.filters.input = this._inputText;\r\n this.emitFilters();\r\n }\r\n\r\n searchTitle!: string;\r\n searchTooltip!: string;\r\n suffixIcon!: string;\r\n prefixIcon!: string;\r\n showSuffixIcon!: boolean;\r\n\r\n filters: FilterBarChangeEvent = {\r\n filters: {},\r\n input: \"\"\r\n };\r\n @Output() filterBarChange: EventEmitter<FilterBarChangeEvent> = new EventEmitter<FilterBarChangeEvent>();\r\n\r\n get showSearch() {\r\n return !this.settings?.hideSearch;\r\n }\r\n\r\n get fields() {\r\n return this.settings?.filters ?? [];\r\n }\r\n @Input() settings!: FilterBarSettings;\r\n\r\n ngOnInit() {\r\n this.searchTooltip = this.settings?.searchTooltip ?? 'FILTER_BAR.SEARCH_TOOLTIP';\r\n this.searchTitle = this.settings?.searchTitle ?? 'FILTER_BAR.SEARCH';\r\n this.prefixIcon = this.settings?.prefixIcon ?? \"filter_alt\";\r\n this.suffixIcon = this.settings?.suffixIcon ?? \"question_mark\";\r\n this.showSuffixIcon = this.settings?.showSuffixIcon ?? true;\r\n }\r\n\r\n filterChange(filter: FilterBarFilter, event: MatSelectChange) {\r\n this.filters.filters[filter.fieldName] = (event.value as FilterBarFilterItem[]).map(item => item.value);\r\n this.emitFilters();\r\n }\r\n\r\n emitFilters() {\r\n this.filterBarChange.next(this.filters);\r\n }\r\n}\r\n","<div fxLayout=\"row\">\r\n <mat-form-field fxFlex *ngIf=\"showSearch\" class=\"filter-bar-search-input\">\r\n <span matPrefix class=\"material-icons-outlined\">\r\n {{prefixIcon}}\r\n </span>\r\n <span matSuffix class=\"material-icons-outlined\" *ngIf=\"showSuffixIcon\" [matTooltip]=\"searchTooltip | translate\">\r\n {{suffixIcon}}\r\n </span>\r\n <input class=\"search-input\" matInput [(ngModel)]=\"inputText\" [placeholder]=\"searchTitle | translate\">\r\n </mat-form-field>\r\n <mat-form-field *ngFor=\"let filter of fields\">\r\n <mat-label>{{filter.title | translate}}</mat-label>\r\n <mat-select multiple (selectionChange)=\"filterChange(filter, $event)\">\r\n <mat-option *ngFor=\"let value of filter.values\" [value]=\"value\">\r\n {{value.key | translate : {default: value.value | titlecase } }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FilterBarComponent } from './filter-bar.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FilterBarComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n TranslateModule,\r\n MatInputModule,\r\n MatFormFieldModule,\r\n FlexLayoutModule,\r\n MatSelectModule,\r\n FormsModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n FilterBarComponent\r\n ]\r\n})\r\nexport class FilterBarModule { }\r\n","/*\r\n * Public API Surface of ngx-common\r\n */\r\n\r\nexport * from './lib/services';\r\nexport * from './lib/plausible';\r\nexport * from './lib/inline-message';\r\nexport * from './lib/pipes';\r\nexport * from './lib/directives';\r\nexport * from './lib/close-button';\r\nexport * from './lib/notification-message';\r\nexport * from './lib/tld-loader'\r\nexport * from './lib/helpers';\r\nexport * from './lib/company-product';\r\nexport * from './lib/footer';\r\nexport * from './lib/file-upload';\r\nexport * from './lib/filter-bar';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3","i1.CloseButtonComponent","i7","i4","i6.DragAndDropDirective","i6","i9"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, Directive, Input, HostListener, NgModule, Component, Pipe, EventEmitter, Output, HostBinding, ViewChild, ElementRef } from '@angular/core';
3
3
  import * as i1 from '@angular/material/icon';
4
+ import { MatIconModule } from '@angular/material/icon';
4
5
  import * as i2 from '@angular/platform-browser';
5
6
  import * as i5 from '@angular/common';
6
7
  import { CommonModule } from '@angular/common';
@@ -848,10 +849,10 @@ class FileUploadComponent {
848
849
  }
849
850
  }
850
851
  FileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
851
- FileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: FileUploadComponent, selector: "tld-file-upload", inputs: { accept: "accept", maxSize: "maxSize", multiple: "multiple", filePreviewProgress: "filePreviewProgress", allowEmpty: "allowEmpty", disabled: "disabled", extendedAcceptList: "extendedAcceptList" }, outputs: { fileChange: "fileChange", errorEvent: "errorEvent" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }, { propertyName: "inputButton", first: true, predicate: ["inputButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"], components: [{ type: i1$2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: DragAndDropDirective, selector: "[tldDragAndDrop]", outputs: ["fileDropped"] }] });
852
+ FileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: FileUploadComponent, selector: "tld-file-upload", inputs: { accept: "accept", maxSize: "maxSize", multiple: "multiple", filePreviewProgress: "filePreviewProgress", allowEmpty: "allowEmpty", disabled: "disabled", uploadIconName: "uploadIconName", extendedAcceptList: "extendedAcceptList" }, outputs: { fileChange: "fileChange", errorEvent: "errorEvent" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }, { propertyName: "inputButton", first: true, predicate: ["inputButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <mat-icon *ngIf=\"uploadIconName\">{{uploadIconName}}</mat-icon>\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"], components: [{ type: i1$2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: DragAndDropDirective, selector: "[tldDragAndDrop]", outputs: ["fileDropped"] }] });
852
853
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadComponent, decorators: [{
853
854
  type: Component,
854
- args: [{ selector: 'tld-file-upload', template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"] }]
855
+ args: [{ selector: 'tld-file-upload', template: "<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <mat-icon *ngIf=\"uploadIconName\">{{uploadIconName}}</mat-icon>\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n", styles: [".file-upload{max-width:100%;width:100%}.file-upload .upload-button{width:100%;font-size:1em;border:1px dashed #9aa5b1;border-radius:16px;background-color:#fff;font-family:var(--tld-font);padding:1em;white-space:normal;line-height:normal;text-align:left}.file-upload-mobile .upload-button{border:2px dashed grey;padding:.5em 1em!important}.tld-file-over{background-color:#e5e7e8!important;border-color:#00f!important}.mat-stroked-button .mat-button-wrapper{pointer-events:none}.native-file-input{display:none}.tld-file-upload-progress ::ng-deep .mat-progress-bar-fill:after{background-color:#1e457c}.tld-file-upload-progress ::ng-deep .mat-progress-bar-buffer{background:white}\n"] }]
855
856
  }], propDecorators: { fileInput: [{
856
857
  type: ViewChild,
857
858
  args: ['fileInput']
@@ -874,6 +875,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
874
875
  type: Input
875
876
  }], disabled: [{
876
877
  type: Input
878
+ }], uploadIconName: [{
879
+ type: Input
877
880
  }], extendedAcceptList: [{
878
881
  type: Input
879
882
  }] } });
@@ -885,13 +888,15 @@ FileUploadModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versio
885
888
  MatProgressBarModule,
886
889
  FlexLayoutModule,
887
890
  MatButtonModule,
888
- DragAndDropModule], exports: [FileUploadComponent] });
891
+ DragAndDropModule,
892
+ MatIconModule], exports: [FileUploadComponent] });
889
893
  FileUploadModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadModule, imports: [[
890
894
  CommonModule,
891
895
  MatProgressBarModule,
892
896
  FlexLayoutModule,
893
897
  MatButtonModule,
894
- DragAndDropModule
898
+ DragAndDropModule,
899
+ MatIconModule
895
900
  ]] });
896
901
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: FileUploadModule, decorators: [{
897
902
  type: NgModule,
@@ -902,7 +907,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
902
907
  MatProgressBarModule,
903
908
  FlexLayoutModule,
904
909
  MatButtonModule,
905
- DragAndDropModule
910
+ DragAndDropModule,
911
+ MatIconModule
906
912
  ],
907
913
  exports: [
908
914
  FileUploadComponent
@@ -1 +1 @@
1
- {"version":3,"file":"tilde-nlp-ngx-common.mjs","sources":["../../../projects/ngx-common/src/lib/services/icon.service.ts","../../../projects/ngx-common/src/lib/services/dom.service.ts","../../../projects/ngx-common/src/lib/plausible/plausible.helper.ts","../../../projects/ngx-common/src/lib/plausible/plausible-event.directive.ts","../../../projects/ngx-common/src/lib/plausible/plausible.module.ts","../../../projects/ngx-common/src/lib/inline-message/models/inline-message-icon-position.enum.ts","../../../projects/ngx-common/src/lib/inline-message/inline-message.component.ts","../../../projects/ngx-common/src/lib/inline-message/inline-message.component.html","../../../projects/ngx-common/src/lib/inline-message/inline-message.module.ts","../../../projects/ngx-common/src/lib/inline-message/models/inline-message-type.enum.ts","../../../projects/ngx-common/src/lib/pipes/filter-with-highlight/filter-with-highlight.pipe.ts","../../../projects/ngx-common/src/lib/pipes/filter-with-highlight/filter-with-highlight.module.ts","../../../projects/ngx-common/src/lib/pipes/sort-translations/sort-translations.pipe.ts","../../../projects/ngx-common/src/lib/pipes/sort-translations/sort-translations.module.ts","../../../projects/ngx-common/src/lib/directives/click-outside/click-outside.directive.ts","../../../projects/ngx-common/src/lib/directives/click-outside/click-outside.module.ts","../../../projects/ngx-common/src/lib/directives/drag-and-drop/drag-and-drop.directive.ts","../../../projects/ngx-common/src/lib/directives/drag-and-drop/drag-and-drop.module.ts","../../../projects/ngx-common/src/lib/close-button/close-button.component.ts","../../../projects/ngx-common/src/lib/close-button/close-button.component.html","../../../projects/ngx-common/src/lib/close-button/close-button.module.ts","../../../projects/ngx-common/src/lib/notification-message/notification-message.component.ts","../../../projects/ngx-common/src/lib/notification-message/notification-message.component.html","../../../projects/ngx-common/src/lib/notification-message/notification-message.module.ts","../../../projects/ngx-common/src/lib/notification-message/enums/notification-message-type.enum.ts","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.component.ts","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.component.html","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.module.ts","../../../projects/ngx-common/src/lib/helpers/missing-translation-helper.ts","../../../projects/ngx-common/src/lib/company-product/company-product.component.ts","../../../projects/ngx-common/src/lib/company-product/company-product.component.html","../../../projects/ngx-common/src/lib/company-product/company-product.module.ts","../../../projects/ngx-common/src/lib/footer/footer.component.ts","../../../projects/ngx-common/src/lib/footer/footer.component.html","../../../projects/ngx-common/src/lib/footer/footer.module.ts","../../../projects/ngx-common/src/lib/file-upload/models/file-upload-error-type.enum.ts","../../../projects/ngx-common/src/lib/file-upload/file-upload.component.ts","../../../projects/ngx-common/src/lib/file-upload/file-upload.component.html","../../../projects/ngx-common/src/lib/file-upload/file-upload.module.ts","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.component.ts","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.component.html","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.module.ts","../../../projects/ngx-common/src/public-api.ts","../../../projects/ngx-common/src/tilde-nlp-ngx-common.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { MatIconRegistry } from '@angular/material/icon';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IconService {\r\n constructor(private readonly iconRegistry: MatIconRegistry,\r\n private readonly sanitizer: DomSanitizer) {\r\n }\r\n\r\n //https://material.angular.io/components/icon/examples\r\n /** Registers svg icons to mat icon registry. Icon SVG's should be under some key in object. Icon name can be used with property name in lowercase. */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n registerIcons(icons: any) {\r\n for (const key in icons) {\r\n this.iconRegistry.addSvgIconLiteral(key.toLowerCase(), this.sanitizer.bypassSecurityTrustHtml(icons[key]));\r\n }\r\n }\r\n\r\n registerIconFromUrl(name: string, url: string) {\r\n this.iconRegistry.addSvgIcon(name, this.sanitizer.bypassSecurityTrustResourceUrl(url));\r\n }\r\n\r\n addSvgIconSet(path: string, namespace?: string) {\r\n namespace ?\r\n this.iconRegistry.addSvgIconSetInNamespace(namespace, this.sanitizer.bypassSecurityTrustResourceUrl(path)) :\r\n this.iconRegistry.addSvgIconSet(this.sanitizer.bypassSecurityTrustResourceUrl(path));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nconst _localStorage: Storage | null = typeof localStorage !== 'undefined' ? localStorage : null;\r\nconst _window: Window | null = typeof window !== 'undefined' ? window : null;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DOMService {\r\n\r\n get window(): Window | null {\r\n return _window;\r\n }\r\n\r\n get localStorage(): Storage | null {\r\n return _localStorage;\r\n }\r\n\r\n\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { DOMService } from \"../services\";\r\n\r\nexport class PlausibleHelper {\r\n /**\r\n * Adds plausible for selected domain and adds additional script for custom event (goal) triggering\r\n * @param domain domain that is registered in your plausible account\r\n * @returns\r\n */\r\n static addPlausible(domain: string) {\r\n const domService = new DOMService();\r\n const windowObj: any = domService.window;\r\n if (!windowObj || !domain) {\r\n return;\r\n }\r\n\r\n const plausibleSrc = \"https://plausible.io/js/plausible.js\";\r\n const script = document.createElement(\"script\");\r\n script.src = plausibleSrc;\r\n script.setAttribute(\"data-domain\", domain);\r\n document.head.append(script);\r\n\r\n // Add plausible custom event functionality https://plausible.io/docs/custom-event-goals#code-example-for-tracking-link-clicks\r\n windowObj.plausible = windowObj.plausible || ((...params: any) => { (windowObj.plausible.q = windowObj.plausible.q || []).push(params) })\r\n }\r\n\r\n /**\r\n * Emits custom plausible event\r\n * @param id plausible event id that should be the same as registered in plausible\r\n * @param properties an object with custom properties for the event\r\n * @returns\r\n */\r\n static customEvent(id: string, properties?: any) {\r\n const windowObj: any = window;\r\n if (!windowObj?.plausible) {\r\n return;\r\n }\r\n windowObj.plausible(id, { props: properties });\r\n }\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\nimport { PlausibleEvent } from './models';\r\nimport { PlausibleHelper } from './plausible.helper';\r\n\r\n@Directive({\r\n selector: '[libPlausibleEvent]'\r\n})\r\nexport class PlausibleEventDirective {\r\n private id = \"\";\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n private properties: any = null;\r\n /** Plausible event id. */\r\n @Input() set libPlausibleEvent(value: PlausibleEvent | undefined) {\r\n if (!value) {\r\n return;\r\n }\r\n this.id = value.eventId;\r\n\r\n if (value.properties) {\r\n this.properties = {}\r\n value.properties.forEach(item => this.properties[item.key] = item.value);\r\n }\r\n\r\n }\r\n\r\n @HostListener(\"click\") onClick() {\r\n if (this.id.length) {\r\n PlausibleHelper.customEvent(this.id, this.properties);\r\n }\r\n }\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PlausibleEventDirective } from './plausible-event.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PlausibleEventDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n PlausibleEventDirective\r\n ]\r\n})\r\nexport class PlausibleModule { }\r\n","export enum InlineMessageIconPosition {\r\n START,\r\n END\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { InlineMessageIconPosition } from './models/inline-message-icon-position.enum';\r\nimport { InlineMessage } from './models/inline-message.model';\r\n\r\n@Component({\r\n selector: 'lib-inline-message',\r\n templateUrl: './inline-message.component.html',\r\n styleUrls: ['./inline-message.component.scss']\r\n})\r\nexport class InlineMessageComponent {\r\n readonly END_ICON_POSITION = InlineMessageIconPosition.END;\r\n\r\n @Input() iconName = \"info\";\r\n @Input() message!: InlineMessage;\r\n}\r\n","<div class=\"tld-inline-message {{message.type}}\">\r\n <span class=\"material-icons\" [class.order-end]=\"message.iconPosition === END_ICON_POSITION\"\r\n [matTooltip]=\"message.iconTooltip? (message.iconTooltip | translate: message.localizationParams) : ''\" *ngIf=\"iconName\">{{iconName}}</span>\r\n <section *ngIf=\"message\">\r\n <div class=\"text-s-semi-bold title\" *ngIf=\"message.title\"\r\n [innerHtml]=\"message.title | translate: message.localizationParams\">\r\n </div>\r\n <p class=\"text-s description\" *ngIf=\"message.description\" [innerHtml]=\"message.description | translate:\r\n message.localizationParams\"></p>\r\n </section>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { InlineMessageComponent } from './inline-message.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n InlineMessageComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n TranslateModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n InlineMessageComponent\r\n ]\r\n})\r\nexport class InlineMessageModule { }\r\n","export enum InlineMessageType {\r\n INFO = 'info',\r\n WARNING = 'warning',\r\n ERROR = 'error'\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'filterWithHighlight'\r\n})\r\nexport class FilterWithHighlightPipe implements PipeTransform {\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n transform(value: any[], filter: string, key?: string): any[] {\r\n if (!filter.length) {\r\n return [...value];\r\n }\r\n\r\n const filteredArr = [];\r\n const regex = new RegExp(filter, 'gi');\r\n\r\n for (let element of value) {\r\n const elementText: string = key ? element[key] : element;\r\n const match = elementText.match(regex);\r\n if (!match) {\r\n continue;\r\n }\r\n let newElement;\r\n\r\n const textWithHighlight = elementText.replace(regex, (match) => `<span class=\"filter-highlight\">${match}</span>`);\r\n if (key) {\r\n newElement = { ...element };\r\n newElement[key] = textWithHighlight;\r\n }\r\n else {\r\n element = textWithHighlight;\r\n }\r\n\r\n filteredArr.push(newElement ?? element);\r\n }\r\n return filteredArr;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FilterWithHighlightPipe } from './filter-with-highlight.pipe';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FilterWithHighlightPipe\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n FilterWithHighlightPipe\r\n ]\r\n})\r\nexport class FilterWithHighlightModule { }\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Pipe({\r\n name: 'sortTranslations'\r\n})\r\n/**\r\n * Pipe used to sort translated values.\r\n */\r\nexport class SortTranslationsPipe implements PipeTransform {\r\n\r\n constructor(private translate: TranslateService) { }\r\n\r\n /**\r\n *\r\n * @param objects array of objects to be sorted\r\n * @param localizationPrefix prefix for localization code. This is used to get necessary object translations.\r\n * @param key Which object property needs to be used for sorting.\r\n * @param currentLanguage This is necessary to update values if language is changed.\r\n * @returns \r\n */\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n transform(objects: Array<any>, localizationPrefix: string | null, key: string | null = null, currentLanguage: string, translationKey: string | null = null): Observable<Array<any>> {\r\n const arrayCopy = [...objects];\r\n if (localizationPrefix) {\r\n return new Observable<string[]>((subscriber) => {\r\n this.translate.get(localizationPrefix ?? \"\").subscribe((translations) => {\r\n const array = this.sortObjects(arrayCopy, key, translations);\r\n subscriber.next(array);\r\n subscriber.complete();\r\n })\r\n });\r\n }\r\n else {\r\n return of(this.sortObjects(arrayCopy, key));\r\n }\r\n }\r\n\r\n private sortObjects(array: any[], key?: string | null, translations?: any):any[] {\r\n return array.sort((a: any, b: any) => {\r\n const aValue = key ? a[key] : a;\r\n const aTranslation = translations ? translations[aValue.toUpperCase()] : aValue;\r\n\r\n const bValue = key ? b[key] : b;\r\n const bTranslation = translations ? translations[bValue.toUpperCase()] : bValue;\r\n\r\n if (aTranslation < bTranslation)\r\n return -1;\r\n else if (aTranslation > bTranslation)\r\n return 1;\r\n else\r\n return 0;\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SortTranslationsPipe } from './sort-translations.pipe';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [SortTranslationsPipe],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n SortTranslationsPipe\r\n ]\r\n})\r\nexport class SortTranslationsModule { }\r\n","import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: '[clickOutside]'\r\n})\r\nexport class ClickOutsideDirective {\r\n @Output() clickOutside = new EventEmitter<void>();\r\n\r\n constructor(private elementRef: ElementRef) { }\r\n\r\n @HostListener('document:click', ['$event.target'])\r\n public onClick(target: HTMLElement) {\r\n const clickedInside = this.elementRef.nativeElement.contains(target);\r\n if (!clickedInside) {\r\n this.clickOutside.emit();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ClickOutsideDirective } from './click-outside.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ClickOutsideDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n ClickOutsideDirective\r\n ]\r\n})\r\nexport class ClickOutsideModule { }\r\n","import { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: '[tldDragAndDrop]'\r\n})\r\nexport class DragAndDropDirective {\r\n\r\n get disabled() { return this.element.nativeElement.disabled }\r\n\r\n @HostBinding('class.tld-file-over') active!: boolean;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @Output() fileDropped = new EventEmitter<any>();\r\n\r\n // Dragover listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('dragover', ['$event']) onDragOver(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = !this.disabled;\r\n }\r\n\r\n // Dragleave listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('dragleave', ['$event']) public onDragLeave(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = false;\r\n }\r\n\r\n // Drop listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('drop', ['$event']) public ondrop(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = false;\r\n if (this.disabled) {\r\n return;\r\n }\r\n const files = evt.dataTransfer.files;\r\n if (files.length > 0) {\r\n this.fileDropped.emit(files);\r\n }\r\n }\r\n\r\n constructor(private readonly element: ElementRef) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DragAndDropDirective } from './drag-and-drop.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n DragAndDropDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n DragAndDropDirective\r\n ]\r\n})\r\nexport class DragAndDropModule { }\r\n","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { MatButton } from '@angular/material/button';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-close-button',\r\n templateUrl: './close-button.component.html'\r\n})\r\nexport class CloseButtonComponent {\r\n // any type because emitter doesn't really need a value\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @Output() tldClick: EventEmitter<any> = new EventEmitter();\r\n @Input() ariaCode = \"CLOSE_BUTTON\";\r\n // This property is created so it is easier to access real button from outside component.\r\n @ViewChild(\"clearButton\") clearButton!: MatButton;\r\n @Input() disabled!: boolean;\r\n @Input() tooltip!: string;\r\n\r\n clicked() {\r\n this.tldClick.emit(null);\r\n }\r\n}\r\n","<button [matTooltip]=\"tooltip | translate\"\r\n#clearButton mat-icon-button (click)=\"clicked()\" [attr.aria-label]=\"'ARIA_LABELS.'+ariaCode | translate\"\r\n [disabled]=\"disabled\">\r\n <span class=\"material-icons\">\r\n close\r\n </span>\r\n</button>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CloseButtonComponent } from './close-button.component';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CloseButtonComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatButtonModule,\r\n TranslateModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n CloseButtonComponent\r\n ]\r\n})\r\nexport class CloseButtonModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { NotificationMessageType } from './enums/notification-message-type.enum';\r\nimport { NotificationMessage } from './interfaces/notification-message.model';\r\n\r\n@Component({\r\n selector: 'lib-tld-notification-message',\r\n templateUrl: './notification-message.component.html',\r\n styleUrls: ['./notification-message.component.scss']\r\n})\r\nexport class NotificationMessageComponent implements OnInit {\r\n @Input() message!: NotificationMessage;\r\n\r\n @Output() buttonClicked = new EventEmitter();\r\n @Output() closeClicked = new EventEmitter();\r\n @Output() linkClicked = new EventEmitter();\r\n /** Adds additional class that makes message to take less space on screen. */\r\n @Input() inline!: boolean;\r\n\r\n readonly iconNames: { [key in NotificationMessageType]: string } = {\r\n \"BASIC\": \"info\",\r\n \"ERROR\": \"error\",\r\n \"SUCCESS\": \"check_circle\",\r\n \"WARNING\": \"info\",\r\n }\r\n className!: string;\r\n\r\n ngOnInit(): void {\r\n this.className = this.message.type.toLocaleLowerCase();\r\n }\r\n\r\n buttonClick() {\r\n this.buttonClicked.next(null)\r\n }\r\n\r\n closeClick() {\r\n this.closeClicked.next(null)\r\n }\r\n\r\n linkClick(){\r\n this.linkClicked.next(null)\r\n }\r\n\r\n}\r\n","<div class=\"notification-message {{className}}\">\r\n <div class=\"notification-message-container tld-default-border\" [ngClass.lt-md]=\"'mobile'\" [class.inline]=\"inline\"\r\n fxLayout=\"row\" fxLayoutAlign=\"start start\" [attr.id]=\"message.id\" aria-live=\"polite\" fxLayout=\"row\">\r\n <span class=\"material-icons message-icon\">\r\n {{iconNames[message.type]}}\r\n </span>\r\n <div class=\"items-container\" fxFlex>\r\n <div fxLayout=\"row\">\r\n <div class=\"text-container\" fxFlex>\r\n <h1 *ngIf=\"message.title\" class=\"message-title\"\r\n [innerHtml]=\"message.title | translate: message.localizationParams\"></h1>\r\n <p *ngIf=\"message.body\" class=\"message-body\">\r\n <span [innerHtml]=\"message.body | translate: message.localizationParams\"></span>\r\n <span *ngIf=\"message.support\" [innerHtml]=\"message.support | translate: message.localizationParams\"></span>\r\n </p>\r\n </div>\r\n <tld-close-button *ngIf=\"!message.hideClose\" class=\"close-button\" (tldClick)=\"closeClick()\">\r\n </tld-close-button>\r\n </div>\r\n <div fxLayout=\"row\" fxLayoutGap=\"16px\" fxLayoutAlign=\"start center\"\r\n *ngIf=\"message.buttonText || message.linkHref || message.routerLink\">\r\n <button class=\"message-action-button\" color=\"accent\" mat-flat-button *ngIf=\"message.buttonText\"\r\n (click)=\"buttonClick()\">{{message.buttonText | translate}} </button>\r\n <a class=\"message-action-link\" *ngIf=\"message.linkHref && message.linkText\" (click)=\"linkClick()\"\r\n [attr.href]=\"message.linkHref\">{{message.linkText |\r\n translate}}</a>\r\n <a class=\"message-action-link\" *ngIf=\"message.routerLink && message.linkText\" (click)=\"linkClick()\"\r\n [routerLink]=\"[message.routerLink]\">{{message.linkText |\r\n translate}}</a>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { RouterModule } from '@angular/router';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { CloseButtonModule } from '../close-button/close-button.module';\r\nimport { NotificationMessageComponent } from './notification-message.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NotificationMessageComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FlexLayoutModule,\r\n CloseButtonModule,\r\n MatButtonModule,\r\n TranslateModule,\r\n RouterModule\r\n ],\r\n exports: [\r\n NotificationMessageComponent\r\n ]\r\n})\r\nexport class NotificationMessageModule { }\r\n","export enum NotificationMessageType{\r\n BASIC = \"BASIC\",\r\n WARNING = \"WARNING\",\r\n SUCCESS = \"SUCCESS\",\r\n ERROR = \"ERROR\"\r\n}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-tld-loader',\r\n templateUrl: './tld-loader.component.html',\r\n styleUrls: ['./tld-loader.component.scss']\r\n})\r\nexport class TldLoaderComponent {\r\n}\r\n","<div class=\"tld-loader accent-color\" fxLayout=\"row\" fxLayoutGap=\"10px\">\r\n <div class=\"accent-bg-color tld-loader-element element-1\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-2\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-3\"></div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { TldLoaderComponent } from './tld-loader.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n TldLoaderComponent\r\n ],\r\n exports: [\r\n TldLoaderComponent\r\n ]\r\n})\r\nexport class TldLoaderModule { }\r\n","import { MissingTranslationHandler, MissingTranslationHandlerParams } from \"@ngx-translate/core\";\r\n\r\nexport class MissingTranslationHelper implements MissingTranslationHandler {\r\n handle(params: MissingTranslationHandlerParams) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n return (params.interpolateParams as any)?.default || params.key;\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-company-product',\r\n templateUrl: './company-product.component.html',\r\n styleUrls: ['./company-product.component.scss']\r\n})\r\nexport class CompanyProductComponent{\r\n\r\n @Input() company = \"\";\r\n @Input() product = \"\";\r\n\r\n}\r\n","<div fxHide.lt-md class=\"tilde-product-title\">\r\n <span class=\"company\">\r\n {{company | uppercase}}\r\n </span>\r\n <span class=\"product\">\r\n {{product}}\r\n </span>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CompanyProductComponent } from './company-product.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CompanyProductComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [CompanyProductComponent]\r\n})\r\nexport class CompanyProductModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n currentYear!: number;\r\n\r\n readonly defaultTermsRoute = \"terms-of-use\";\r\n readonly defaultPrivacyRoute = \"privacy-policy\"\r\n\r\n @Input() privacyRoute = this.defaultPrivacyRoute;\r\n @Input() termsOfUseRoute = this.defaultTermsRoute;\r\n @Input() contactUsRoute = \"https://tilde.com/about/get-in-touch\";\r\n\r\n @Input() baseUrl!: string;\r\n\r\n constructor() {\r\n this.currentYear = new Date().getFullYear();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.baseUrl) {\r\n this.privacyRoute = this.baseUrl + this.privacyRoute;\r\n this.termsOfUseRoute = this.baseUrl + this.termsOfUseRoute;\r\n }\r\n }\r\n\r\n}\r\n","<footer fxLayout=\"row\" class=\"text-m\">\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutAlign.xs=\"center center\" fxLayout.xs=\"column\"\r\n fxLayoutGap=\"16px\">\r\n <div>\r\n {{ 'FOOTER.TITLE' | translate: {currentYear: currentYear} }}\r\n </div>\r\n <div fxLayoutGap=\"1rem\">\r\n <ng-container *ngIf=\"baseUrl; else localRoutes\">\r\n <a class=\"semi-bold\" *ngIf=\"termsOfUseRoute\" [attr.href]=\"termsOfUseRoute\" target=\"_blank\"> {{\r\n 'FOOTER.TERMS_OF_USE' |\r\n translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"privacyRoute\" [attr.href]=\"privacyRoute\" target=\"_blank\"> {{ 'FOOTER.PRIVACY'\r\n | translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"contactUsRoute\" [routerLink]=\"[contactUsRoute]\"> {{ 'FOOTER.CONTACT_US'| translate\r\n }}</a>\r\n\r\n </ng-container>\r\n <ng-template #localRoutes>\r\n <a class=\"semi-bold\" *ngIf=\"termsOfUseRoute\" [routerLink]=\"[termsOfUseRoute]\"> {{ 'FOOTER.TERMS_OF_USE' |\r\n translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"privacyRoute\" [routerLink]=\"[privacyRoute]\"> {{ 'FOOTER.PRIVACY'| translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"contactUsRoute\" [routerLink]=\"[contactUsRoute]\"> {{ 'FOOTER.CONTACT_US'| translate\r\n }}</a>\r\n </ng-template>\r\n </div>\r\n </div>\r\n</footer>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FooterComponent } from './footer.component';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FooterComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FlexLayoutModule,\r\n TranslateModule,\r\n RouterModule\r\n ],\r\n exports: [FooterComponent]\r\n})\r\nexport class FooterModule { }\r\n","export enum FileUploadErrorTypeEnum{\r\n FILE_UPLOAD_UNSUPPORTED_FORMAT = \"FILE_UPLOAD_UNSUPPORTED_FORMAT\",\r\n FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER = \"FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER\",\r\n MAX_SIZE = \"FILE_UPLOAD_MAX_SIZE\",\r\n FILE_EMPTY = \"FILE_UPLOAD_EMPTY\"\r\n}\r\n","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { FileUploadErrorTypeEnum } from './models/file-upload-error-type.enum';\r\nimport { FileUploadError } from './models/file-upload-error.model';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-file-upload',\r\n templateUrl: './file-upload.component.html',\r\n styleUrls: ['./file-upload.component.scss']\r\n})\r\nexport class FileUploadComponent {\r\n @ViewChild('fileInput') fileInput!: ElementRef;\r\n @ViewChild('inputButton', { read: ElementRef }) inputButton!: ElementRef;\r\n\r\n @Output() fileChange: EventEmitter<File[]> = new EventEmitter<File[]>();\r\n @Output() errorEvent: EventEmitter<FileUploadError> = new EventEmitter<FileUploadError>();\r\n private _accept: string[] = [];\r\n @Input() set accept(val: string[]) {\r\n this._accept = val;\r\n this.allowedExtensions = val ? val.join(\",\") : \"\";\r\n }\r\n get accept() { return this._accept }\r\n @Input() maxSize!: number;\r\n @Input() multiple = false;\r\n @Input() filePreviewProgress!: number;\r\n @Input() allowEmpty!: boolean;\r\n @Input() disabled!: boolean;\r\n\r\n /** same as accept but for registered users. It changes error message if extension is supported for registered users. */\r\n @Input() extendedAcceptList!: string[];\r\n\r\n allowedExtensions!: string;\r\n\r\n handleFileInput(event: Event) {\r\n const target = event.target as HTMLInputElement;\r\n const files = target.files as FileList;\r\n this.validate(files);\r\n }\r\n\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onFileDrop(files: any) {\r\n this.validate(files);\r\n }\r\n\r\n private emit(files: File[]) {\r\n if (files && files.length > 0) {\r\n this.fileChange.emit(files);\r\n }\r\n }\r\n\r\n private emitError(error: FileUploadError) {\r\n this.errorEvent.emit(error);\r\n }\r\n\r\n private validate(files: FileList) {\r\n //let size = 0;\r\n const validFiles: File[] = [];\r\n for (let i = 0; i < files.length; i++) {\r\n const file = files[i];\r\n if (!this.allowEmpty && file.size == 0) {\r\n this.emitError({ code: FileUploadErrorTypeEnum.FILE_EMPTY, error: \"File is empty\", fileName: file.name });\r\n return;\r\n }\r\n //size += file.size;\r\n const extensionErrorCode = this.getExtensionErrorCode(file.name);\r\n if (extensionErrorCode) {\r\n const error = { code: extensionErrorCode, error: \"Not valid extension.\", fileName: file.name };\r\n this.emitError(error);\r\n }\r\n else if (this.maxSize && file.size > this.maxSize) {\r\n const error = { code: FileUploadErrorTypeEnum.MAX_SIZE, error: \"Maximum allowed file size exceeded.\", fileName: file.name };\r\n this.emitError(error);\r\n }\r\n else {\r\n validFiles.push(file);\r\n }\r\n }\r\n\r\n this.emit(validFiles);\r\n this.fileInput.nativeElement.value = '';\r\n }\r\n\r\n private getExtensionErrorCode(fileName: string): FileUploadErrorTypeEnum | null {\r\n const extension = fileName.slice(fileName.lastIndexOf('.')).toLowerCase()\r\n if (\r\n this.accept.length == 0 || (this.accept.length == 1 && this.accept[0] == '*') || this.accept.includes(extension)) {\r\n return null;\r\n }\r\n else {\r\n return this.extendedAcceptList?.includes(extension) ? FileUploadErrorTypeEnum.FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER : FileUploadErrorTypeEnum.FILE_UPLOAD_UNSUPPORTED_FORMAT;\r\n }\r\n }\r\n}\r\n","<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FileUploadComponent } from './file-upload.component';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { DragAndDropModule } from '../directives/drag-and-drop/drag-and-drop.module';\r\n\r\n@NgModule({\r\n declarations: [FileUploadComponent],\r\n imports: [\r\n CommonModule,\r\n MatProgressBarModule,\r\n FlexLayoutModule,\r\n MatButtonModule,\r\n DragAndDropModule\r\n ],\r\n exports: [\r\n FileUploadComponent\r\n ]\r\n})\r\nexport class FileUploadModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { MatSelectChange } from '@angular/material/select';\r\nimport { FilterBarFilter, FilterBarFilterItem } from './models';\r\nimport { FilterBarChangeEvent } from './models/filter-bar-change-event.model';\r\nimport { FilterBarSettings } from './models/filter-bar-settings.model';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-filter-bar',\r\n templateUrl: './filter-bar.component.html',\r\n styleUrls: ['./filter-bar.component.scss']\r\n})\r\nexport class FilterBarComponent implements OnInit {\r\n private _inputText = \"\";\r\n get inputText() {\r\n return this._inputText;\r\n }\r\n set inputText(value) {\r\n this._inputText = value;\r\n this.filters.input = this._inputText;\r\n this.emitFilters();\r\n }\r\n\r\n searchTitle!: string;\r\n searchTooltip!: string;\r\n suffixIcon!: string;\r\n prefixIcon!: string;\r\n showSuffixIcon!: boolean;\r\n\r\n filters: FilterBarChangeEvent = {\r\n filters: {},\r\n input: \"\"\r\n };\r\n @Output() filterBarChange: EventEmitter<FilterBarChangeEvent> = new EventEmitter<FilterBarChangeEvent>();\r\n\r\n get showSearch() {\r\n return !this.settings?.hideSearch;\r\n }\r\n\r\n get fields() {\r\n return this.settings?.filters ?? [];\r\n }\r\n @Input() settings!: FilterBarSettings;\r\n\r\n ngOnInit() {\r\n this.searchTooltip = this.settings?.searchTooltip ?? 'FILTER_BAR.SEARCH_TOOLTIP';\r\n this.searchTitle = this.settings?.searchTitle ?? 'FILTER_BAR.SEARCH';\r\n this.prefixIcon = this.settings?.prefixIcon ?? \"filter_alt\";\r\n this.suffixIcon = this.settings?.suffixIcon ?? \"question_mark\";\r\n this.showSuffixIcon = this.settings?.showSuffixIcon ?? true;\r\n }\r\n\r\n filterChange(filter: FilterBarFilter, event: MatSelectChange) {\r\n this.filters.filters[filter.fieldName] = (event.value as FilterBarFilterItem[]).map(item => item.value);\r\n this.emitFilters();\r\n }\r\n\r\n emitFilters() {\r\n this.filterBarChange.next(this.filters);\r\n }\r\n}\r\n","<div fxLayout=\"row\">\r\n <mat-form-field fxFlex *ngIf=\"showSearch\" class=\"filter-bar-search-input\">\r\n <span matPrefix class=\"material-icons-outlined\">\r\n {{prefixIcon}}\r\n </span>\r\n <span matSuffix class=\"material-icons-outlined\" *ngIf=\"showSuffixIcon\" [matTooltip]=\"searchTooltip | translate\">\r\n {{suffixIcon}}\r\n </span>\r\n <input class=\"search-input\" matInput [(ngModel)]=\"inputText\" [placeholder]=\"searchTitle | translate\">\r\n </mat-form-field>\r\n <mat-form-field *ngFor=\"let filter of fields\">\r\n <mat-label>{{filter.title | translate}}</mat-label>\r\n <mat-select multiple (selectionChange)=\"filterChange(filter, $event)\">\r\n <mat-option *ngFor=\"let value of filter.values\" [value]=\"value\">\r\n {{value.key | translate : {default: value.value | titlecase } }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FilterBarComponent } from './filter-bar.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FilterBarComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n TranslateModule,\r\n MatInputModule,\r\n MatFormFieldModule,\r\n FlexLayoutModule,\r\n MatSelectModule,\r\n FormsModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n FilterBarComponent\r\n ]\r\n})\r\nexport class FilterBarModule { }\r\n","/*\r\n * Public API Surface of ngx-common\r\n */\r\n\r\nexport * from './lib/services';\r\nexport * from './lib/plausible';\r\nexport * from './lib/inline-message';\r\nexport * from './lib/pipes';\r\nexport * from './lib/directives';\r\nexport * from './lib/close-button';\r\nexport * from './lib/notification-message';\r\nexport * from './lib/tld-loader'\r\nexport * from './lib/helpers';\r\nexport * from './lib/company-product';\r\nexport * from './lib/footer';\r\nexport * from './lib/file-upload';\r\nexport * from './lib/filter-bar';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3","i1.CloseButtonComponent","i7","i4","i5.DragAndDropDirective","i6","i9"],"mappings":"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"}
1
+ {"version":3,"file":"tilde-nlp-ngx-common.mjs","sources":["../../../projects/ngx-common/src/lib/services/icon.service.ts","../../../projects/ngx-common/src/lib/services/dom.service.ts","../../../projects/ngx-common/src/lib/plausible/plausible.helper.ts","../../../projects/ngx-common/src/lib/plausible/plausible-event.directive.ts","../../../projects/ngx-common/src/lib/plausible/plausible.module.ts","../../../projects/ngx-common/src/lib/inline-message/models/inline-message-icon-position.enum.ts","../../../projects/ngx-common/src/lib/inline-message/inline-message.component.ts","../../../projects/ngx-common/src/lib/inline-message/inline-message.component.html","../../../projects/ngx-common/src/lib/inline-message/inline-message.module.ts","../../../projects/ngx-common/src/lib/inline-message/models/inline-message-type.enum.ts","../../../projects/ngx-common/src/lib/pipes/filter-with-highlight/filter-with-highlight.pipe.ts","../../../projects/ngx-common/src/lib/pipes/filter-with-highlight/filter-with-highlight.module.ts","../../../projects/ngx-common/src/lib/pipes/sort-translations/sort-translations.pipe.ts","../../../projects/ngx-common/src/lib/pipes/sort-translations/sort-translations.module.ts","../../../projects/ngx-common/src/lib/directives/click-outside/click-outside.directive.ts","../../../projects/ngx-common/src/lib/directives/click-outside/click-outside.module.ts","../../../projects/ngx-common/src/lib/directives/drag-and-drop/drag-and-drop.directive.ts","../../../projects/ngx-common/src/lib/directives/drag-and-drop/drag-and-drop.module.ts","../../../projects/ngx-common/src/lib/close-button/close-button.component.ts","../../../projects/ngx-common/src/lib/close-button/close-button.component.html","../../../projects/ngx-common/src/lib/close-button/close-button.module.ts","../../../projects/ngx-common/src/lib/notification-message/notification-message.component.ts","../../../projects/ngx-common/src/lib/notification-message/notification-message.component.html","../../../projects/ngx-common/src/lib/notification-message/notification-message.module.ts","../../../projects/ngx-common/src/lib/notification-message/enums/notification-message-type.enum.ts","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.component.ts","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.component.html","../../../projects/ngx-common/src/lib/tld-loader/tld-loader.module.ts","../../../projects/ngx-common/src/lib/helpers/missing-translation-helper.ts","../../../projects/ngx-common/src/lib/company-product/company-product.component.ts","../../../projects/ngx-common/src/lib/company-product/company-product.component.html","../../../projects/ngx-common/src/lib/company-product/company-product.module.ts","../../../projects/ngx-common/src/lib/footer/footer.component.ts","../../../projects/ngx-common/src/lib/footer/footer.component.html","../../../projects/ngx-common/src/lib/footer/footer.module.ts","../../../projects/ngx-common/src/lib/file-upload/models/file-upload-error-type.enum.ts","../../../projects/ngx-common/src/lib/file-upload/file-upload.component.ts","../../../projects/ngx-common/src/lib/file-upload/file-upload.component.html","../../../projects/ngx-common/src/lib/file-upload/file-upload.module.ts","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.component.ts","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.component.html","../../../projects/ngx-common/src/lib/filter-bar/filter-bar.module.ts","../../../projects/ngx-common/src/public-api.ts","../../../projects/ngx-common/src/tilde-nlp-ngx-common.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { MatIconRegistry } from '@angular/material/icon';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IconService {\r\n constructor(private readonly iconRegistry: MatIconRegistry,\r\n private readonly sanitizer: DomSanitizer) {\r\n }\r\n\r\n //https://material.angular.io/components/icon/examples\r\n /** Registers svg icons to mat icon registry. Icon SVG's should be under some key in object. Icon name can be used with property name in lowercase. */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n registerIcons(icons: any) {\r\n for (const key in icons) {\r\n this.iconRegistry.addSvgIconLiteral(key.toLowerCase(), this.sanitizer.bypassSecurityTrustHtml(icons[key]));\r\n }\r\n }\r\n\r\n registerIconFromUrl(name: string, url: string) {\r\n this.iconRegistry.addSvgIcon(name, this.sanitizer.bypassSecurityTrustResourceUrl(url));\r\n }\r\n\r\n addSvgIconSet(path: string, namespace?: string) {\r\n namespace ?\r\n this.iconRegistry.addSvgIconSetInNamespace(namespace, this.sanitizer.bypassSecurityTrustResourceUrl(path)) :\r\n this.iconRegistry.addSvgIconSet(this.sanitizer.bypassSecurityTrustResourceUrl(path));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nconst _localStorage: Storage | null = typeof localStorage !== 'undefined' ? localStorage : null;\r\nconst _window: Window | null = typeof window !== 'undefined' ? window : null;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DOMService {\r\n\r\n get window(): Window | null {\r\n return _window;\r\n }\r\n\r\n get localStorage(): Storage | null {\r\n return _localStorage;\r\n }\r\n\r\n\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { DOMService } from \"../services\";\r\n\r\nexport class PlausibleHelper {\r\n /**\r\n * Adds plausible for selected domain and adds additional script for custom event (goal) triggering\r\n * @param domain domain that is registered in your plausible account\r\n * @returns\r\n */\r\n static addPlausible(domain: string) {\r\n const domService = new DOMService();\r\n const windowObj: any = domService.window;\r\n if (!windowObj || !domain) {\r\n return;\r\n }\r\n\r\n const plausibleSrc = \"https://plausible.io/js/plausible.js\";\r\n const script = document.createElement(\"script\");\r\n script.src = plausibleSrc;\r\n script.setAttribute(\"data-domain\", domain);\r\n document.head.append(script);\r\n\r\n // Add plausible custom event functionality https://plausible.io/docs/custom-event-goals#code-example-for-tracking-link-clicks\r\n windowObj.plausible = windowObj.plausible || ((...params: any) => { (windowObj.plausible.q = windowObj.plausible.q || []).push(params) })\r\n }\r\n\r\n /**\r\n * Emits custom plausible event\r\n * @param id plausible event id that should be the same as registered in plausible\r\n * @param properties an object with custom properties for the event\r\n * @returns\r\n */\r\n static customEvent(id: string, properties?: any) {\r\n const windowObj: any = window;\r\n if (!windowObj?.plausible) {\r\n return;\r\n }\r\n windowObj.plausible(id, { props: properties });\r\n }\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\nimport { PlausibleEvent } from './models';\r\nimport { PlausibleHelper } from './plausible.helper';\r\n\r\n@Directive({\r\n selector: '[libPlausibleEvent]'\r\n})\r\nexport class PlausibleEventDirective {\r\n private id = \"\";\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n private properties: any = null;\r\n /** Plausible event id. */\r\n @Input() set libPlausibleEvent(value: PlausibleEvent | undefined) {\r\n if (!value) {\r\n return;\r\n }\r\n this.id = value.eventId;\r\n\r\n if (value.properties) {\r\n this.properties = {}\r\n value.properties.forEach(item => this.properties[item.key] = item.value);\r\n }\r\n\r\n }\r\n\r\n @HostListener(\"click\") onClick() {\r\n if (this.id.length) {\r\n PlausibleHelper.customEvent(this.id, this.properties);\r\n }\r\n }\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PlausibleEventDirective } from './plausible-event.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PlausibleEventDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n PlausibleEventDirective\r\n ]\r\n})\r\nexport class PlausibleModule { }\r\n","export enum InlineMessageIconPosition {\r\n START,\r\n END\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { InlineMessageIconPosition } from './models/inline-message-icon-position.enum';\r\nimport { InlineMessage } from './models/inline-message.model';\r\n\r\n@Component({\r\n selector: 'lib-inline-message',\r\n templateUrl: './inline-message.component.html',\r\n styleUrls: ['./inline-message.component.scss']\r\n})\r\nexport class InlineMessageComponent {\r\n readonly END_ICON_POSITION = InlineMessageIconPosition.END;\r\n\r\n @Input() iconName = \"info\";\r\n @Input() message!: InlineMessage;\r\n}\r\n","<div class=\"tld-inline-message {{message.type}}\">\r\n <span class=\"material-icons\" [class.order-end]=\"message.iconPosition === END_ICON_POSITION\"\r\n [matTooltip]=\"message.iconTooltip? (message.iconTooltip | translate: message.localizationParams) : ''\" *ngIf=\"iconName\">{{iconName}}</span>\r\n <section *ngIf=\"message\">\r\n <div class=\"text-s-semi-bold title\" *ngIf=\"message.title\"\r\n [innerHtml]=\"message.title | translate: message.localizationParams\">\r\n </div>\r\n <p class=\"text-s description\" *ngIf=\"message.description\" [innerHtml]=\"message.description | translate:\r\n message.localizationParams\"></p>\r\n </section>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { InlineMessageComponent } from './inline-message.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n InlineMessageComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n TranslateModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n InlineMessageComponent\r\n ]\r\n})\r\nexport class InlineMessageModule { }\r\n","export enum InlineMessageType {\r\n INFO = 'info',\r\n WARNING = 'warning',\r\n ERROR = 'error'\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'filterWithHighlight'\r\n})\r\nexport class FilterWithHighlightPipe implements PipeTransform {\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n transform(value: any[], filter: string, key?: string): any[] {\r\n if (!filter.length) {\r\n return [...value];\r\n }\r\n\r\n const filteredArr = [];\r\n const regex = new RegExp(filter, 'gi');\r\n\r\n for (let element of value) {\r\n const elementText: string = key ? element[key] : element;\r\n const match = elementText.match(regex);\r\n if (!match) {\r\n continue;\r\n }\r\n let newElement;\r\n\r\n const textWithHighlight = elementText.replace(regex, (match) => `<span class=\"filter-highlight\">${match}</span>`);\r\n if (key) {\r\n newElement = { ...element };\r\n newElement[key] = textWithHighlight;\r\n }\r\n else {\r\n element = textWithHighlight;\r\n }\r\n\r\n filteredArr.push(newElement ?? element);\r\n }\r\n return filteredArr;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FilterWithHighlightPipe } from './filter-with-highlight.pipe';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FilterWithHighlightPipe\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n FilterWithHighlightPipe\r\n ]\r\n})\r\nexport class FilterWithHighlightModule { }\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Pipe({\r\n name: 'sortTranslations'\r\n})\r\n/**\r\n * Pipe used to sort translated values.\r\n */\r\nexport class SortTranslationsPipe implements PipeTransform {\r\n\r\n constructor(private translate: TranslateService) { }\r\n\r\n /**\r\n *\r\n * @param objects array of objects to be sorted\r\n * @param localizationPrefix prefix for localization code. This is used to get necessary object translations.\r\n * @param key Which object property needs to be used for sorting.\r\n * @param currentLanguage This is necessary to update values if language is changed.\r\n * @returns \r\n */\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n transform(objects: Array<any>, localizationPrefix: string | null, key: string | null = null, currentLanguage: string, translationKey: string | null = null): Observable<Array<any>> {\r\n const arrayCopy = [...objects];\r\n if (localizationPrefix) {\r\n return new Observable<string[]>((subscriber) => {\r\n this.translate.get(localizationPrefix ?? \"\").subscribe((translations) => {\r\n const array = this.sortObjects(arrayCopy, key, translations);\r\n subscriber.next(array);\r\n subscriber.complete();\r\n })\r\n });\r\n }\r\n else {\r\n return of(this.sortObjects(arrayCopy, key));\r\n }\r\n }\r\n\r\n private sortObjects(array: any[], key?: string | null, translations?: any):any[] {\r\n return array.sort((a: any, b: any) => {\r\n const aValue = key ? a[key] : a;\r\n const aTranslation = translations ? translations[aValue.toUpperCase()] : aValue;\r\n\r\n const bValue = key ? b[key] : b;\r\n const bTranslation = translations ? translations[bValue.toUpperCase()] : bValue;\r\n\r\n if (aTranslation < bTranslation)\r\n return -1;\r\n else if (aTranslation > bTranslation)\r\n return 1;\r\n else\r\n return 0;\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SortTranslationsPipe } from './sort-translations.pipe';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [SortTranslationsPipe],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n SortTranslationsPipe\r\n ]\r\n})\r\nexport class SortTranslationsModule { }\r\n","import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: '[clickOutside]'\r\n})\r\nexport class ClickOutsideDirective {\r\n @Output() clickOutside = new EventEmitter<void>();\r\n\r\n constructor(private elementRef: ElementRef) { }\r\n\r\n @HostListener('document:click', ['$event.target'])\r\n public onClick(target: HTMLElement) {\r\n const clickedInside = this.elementRef.nativeElement.contains(target);\r\n if (!clickedInside) {\r\n this.clickOutside.emit();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ClickOutsideDirective } from './click-outside.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ClickOutsideDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n ClickOutsideDirective\r\n ]\r\n})\r\nexport class ClickOutsideModule { }\r\n","import { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: '[tldDragAndDrop]'\r\n})\r\nexport class DragAndDropDirective {\r\n\r\n get disabled() { return this.element.nativeElement.disabled }\r\n\r\n @HostBinding('class.tld-file-over') active!: boolean;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @Output() fileDropped = new EventEmitter<any>();\r\n\r\n // Dragover listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('dragover', ['$event']) onDragOver(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = !this.disabled;\r\n }\r\n\r\n // Dragleave listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('dragleave', ['$event']) public onDragLeave(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = false;\r\n }\r\n\r\n // Drop listener\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @HostListener('drop', ['$event']) public ondrop(evt: any) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = false;\r\n if (this.disabled) {\r\n return;\r\n }\r\n const files = evt.dataTransfer.files;\r\n if (files.length > 0) {\r\n this.fileDropped.emit(files);\r\n }\r\n }\r\n\r\n constructor(private readonly element: ElementRef) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DragAndDropDirective } from './drag-and-drop.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n DragAndDropDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n DragAndDropDirective\r\n ]\r\n})\r\nexport class DragAndDropModule { }\r\n","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { MatButton } from '@angular/material/button';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-close-button',\r\n templateUrl: './close-button.component.html'\r\n})\r\nexport class CloseButtonComponent {\r\n // any type because emitter doesn't really need a value\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n @Output() tldClick: EventEmitter<any> = new EventEmitter();\r\n @Input() ariaCode = \"CLOSE_BUTTON\";\r\n // This property is created so it is easier to access real button from outside component.\r\n @ViewChild(\"clearButton\") clearButton!: MatButton;\r\n @Input() disabled!: boolean;\r\n @Input() tooltip!: string;\r\n\r\n clicked() {\r\n this.tldClick.emit(null);\r\n }\r\n}\r\n","<button [matTooltip]=\"tooltip | translate\"\r\n#clearButton mat-icon-button (click)=\"clicked()\" [attr.aria-label]=\"'ARIA_LABELS.'+ariaCode | translate\"\r\n [disabled]=\"disabled\">\r\n <span class=\"material-icons\">\r\n close\r\n </span>\r\n</button>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CloseButtonComponent } from './close-button.component';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CloseButtonComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatButtonModule,\r\n TranslateModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n CloseButtonComponent\r\n ]\r\n})\r\nexport class CloseButtonModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { NotificationMessageType } from './enums/notification-message-type.enum';\r\nimport { NotificationMessage } from './interfaces/notification-message.model';\r\n\r\n@Component({\r\n selector: 'lib-tld-notification-message',\r\n templateUrl: './notification-message.component.html',\r\n styleUrls: ['./notification-message.component.scss']\r\n})\r\nexport class NotificationMessageComponent implements OnInit {\r\n @Input() message!: NotificationMessage;\r\n\r\n @Output() buttonClicked = new EventEmitter();\r\n @Output() closeClicked = new EventEmitter();\r\n @Output() linkClicked = new EventEmitter();\r\n /** Adds additional class that makes message to take less space on screen. */\r\n @Input() inline!: boolean;\r\n\r\n readonly iconNames: { [key in NotificationMessageType]: string } = {\r\n \"BASIC\": \"info\",\r\n \"ERROR\": \"error\",\r\n \"SUCCESS\": \"check_circle\",\r\n \"WARNING\": \"info\",\r\n }\r\n className!: string;\r\n\r\n ngOnInit(): void {\r\n this.className = this.message.type.toLocaleLowerCase();\r\n }\r\n\r\n buttonClick() {\r\n this.buttonClicked.next(null)\r\n }\r\n\r\n closeClick() {\r\n this.closeClicked.next(null)\r\n }\r\n\r\n linkClick(){\r\n this.linkClicked.next(null)\r\n }\r\n\r\n}\r\n","<div class=\"notification-message {{className}}\">\r\n <div class=\"notification-message-container tld-default-border\" [ngClass.lt-md]=\"'mobile'\" [class.inline]=\"inline\"\r\n fxLayout=\"row\" fxLayoutAlign=\"start start\" [attr.id]=\"message.id\" aria-live=\"polite\" fxLayout=\"row\">\r\n <span class=\"material-icons message-icon\">\r\n {{iconNames[message.type]}}\r\n </span>\r\n <div class=\"items-container\" fxFlex>\r\n <div fxLayout=\"row\">\r\n <div class=\"text-container\" fxFlex>\r\n <h1 *ngIf=\"message.title\" class=\"message-title\"\r\n [innerHtml]=\"message.title | translate: message.localizationParams\"></h1>\r\n <p *ngIf=\"message.body\" class=\"message-body\">\r\n <span [innerHtml]=\"message.body | translate: message.localizationParams\"></span>\r\n <span *ngIf=\"message.support\" [innerHtml]=\"message.support | translate: message.localizationParams\"></span>\r\n </p>\r\n </div>\r\n <tld-close-button *ngIf=\"!message.hideClose\" class=\"close-button\" (tldClick)=\"closeClick()\">\r\n </tld-close-button>\r\n </div>\r\n <div fxLayout=\"row\" fxLayoutGap=\"16px\" fxLayoutAlign=\"start center\"\r\n *ngIf=\"message.buttonText || message.linkHref || message.routerLink\">\r\n <button class=\"message-action-button\" color=\"accent\" mat-flat-button *ngIf=\"message.buttonText\"\r\n (click)=\"buttonClick()\">{{message.buttonText | translate}} </button>\r\n <a class=\"message-action-link\" *ngIf=\"message.linkHref && message.linkText\" (click)=\"linkClick()\"\r\n [attr.href]=\"message.linkHref\">{{message.linkText |\r\n translate}}</a>\r\n <a class=\"message-action-link\" *ngIf=\"message.routerLink && message.linkText\" (click)=\"linkClick()\"\r\n [routerLink]=\"[message.routerLink]\">{{message.linkText |\r\n translate}}</a>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { RouterModule } from '@angular/router';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { CloseButtonModule } from '../close-button/close-button.module';\r\nimport { NotificationMessageComponent } from './notification-message.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NotificationMessageComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FlexLayoutModule,\r\n CloseButtonModule,\r\n MatButtonModule,\r\n TranslateModule,\r\n RouterModule\r\n ],\r\n exports: [\r\n NotificationMessageComponent\r\n ]\r\n})\r\nexport class NotificationMessageModule { }\r\n","export enum NotificationMessageType{\r\n BASIC = \"BASIC\",\r\n WARNING = \"WARNING\",\r\n SUCCESS = \"SUCCESS\",\r\n ERROR = \"ERROR\"\r\n}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-tld-loader',\r\n templateUrl: './tld-loader.component.html',\r\n styleUrls: ['./tld-loader.component.scss']\r\n})\r\nexport class TldLoaderComponent {\r\n}\r\n","<div class=\"tld-loader accent-color\" fxLayout=\"row\" fxLayoutGap=\"10px\">\r\n <div class=\"accent-bg-color tld-loader-element element-1\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-2\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-3\"></div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { TldLoaderComponent } from './tld-loader.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n TldLoaderComponent\r\n ],\r\n exports: [\r\n TldLoaderComponent\r\n ]\r\n})\r\nexport class TldLoaderModule { }\r\n","import { MissingTranslationHandler, MissingTranslationHandlerParams } from \"@ngx-translate/core\";\r\n\r\nexport class MissingTranslationHelper implements MissingTranslationHandler {\r\n handle(params: MissingTranslationHandlerParams) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n return (params.interpolateParams as any)?.default || params.key;\r\n }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-company-product',\r\n templateUrl: './company-product.component.html',\r\n styleUrls: ['./company-product.component.scss']\r\n})\r\nexport class CompanyProductComponent{\r\n\r\n @Input() company = \"\";\r\n @Input() product = \"\";\r\n\r\n}\r\n","<div fxHide.lt-md class=\"tilde-product-title\">\r\n <span class=\"company\">\r\n {{company | uppercase}}\r\n </span>\r\n <span class=\"product\">\r\n {{product}}\r\n </span>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CompanyProductComponent } from './company-product.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CompanyProductComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [CompanyProductComponent]\r\n})\r\nexport class CompanyProductModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n currentYear!: number;\r\n\r\n readonly defaultTermsRoute = \"terms-of-use\";\r\n readonly defaultPrivacyRoute = \"privacy-policy\"\r\n\r\n @Input() privacyRoute = this.defaultPrivacyRoute;\r\n @Input() termsOfUseRoute = this.defaultTermsRoute;\r\n @Input() contactUsRoute = \"https://tilde.com/about/get-in-touch\";\r\n\r\n @Input() baseUrl!: string;\r\n\r\n constructor() {\r\n this.currentYear = new Date().getFullYear();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.baseUrl) {\r\n this.privacyRoute = this.baseUrl + this.privacyRoute;\r\n this.termsOfUseRoute = this.baseUrl + this.termsOfUseRoute;\r\n }\r\n }\r\n\r\n}\r\n","<footer fxLayout=\"row\" class=\"text-m\">\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutAlign.xs=\"center center\" fxLayout.xs=\"column\"\r\n fxLayoutGap=\"16px\">\r\n <div>\r\n {{ 'FOOTER.TITLE' | translate: {currentYear: currentYear} }}\r\n </div>\r\n <div fxLayoutGap=\"1rem\">\r\n <ng-container *ngIf=\"baseUrl; else localRoutes\">\r\n <a class=\"semi-bold\" *ngIf=\"termsOfUseRoute\" [attr.href]=\"termsOfUseRoute\" target=\"_blank\"> {{\r\n 'FOOTER.TERMS_OF_USE' |\r\n translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"privacyRoute\" [attr.href]=\"privacyRoute\" target=\"_blank\"> {{ 'FOOTER.PRIVACY'\r\n | translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"contactUsRoute\" [routerLink]=\"[contactUsRoute]\"> {{ 'FOOTER.CONTACT_US'| translate\r\n }}</a>\r\n\r\n </ng-container>\r\n <ng-template #localRoutes>\r\n <a class=\"semi-bold\" *ngIf=\"termsOfUseRoute\" [routerLink]=\"[termsOfUseRoute]\"> {{ 'FOOTER.TERMS_OF_USE' |\r\n translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"privacyRoute\" [routerLink]=\"[privacyRoute]\"> {{ 'FOOTER.PRIVACY'| translate }}</a>\r\n <a class=\"semi-bold\" *ngIf=\"contactUsRoute\" [routerLink]=\"[contactUsRoute]\"> {{ 'FOOTER.CONTACT_US'| translate\r\n }}</a>\r\n </ng-template>\r\n </div>\r\n </div>\r\n</footer>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FooterComponent } from './footer.component';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FooterComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FlexLayoutModule,\r\n TranslateModule,\r\n RouterModule\r\n ],\r\n exports: [FooterComponent]\r\n})\r\nexport class FooterModule { }\r\n","export enum FileUploadErrorTypeEnum{\r\n FILE_UPLOAD_UNSUPPORTED_FORMAT = \"FILE_UPLOAD_UNSUPPORTED_FORMAT\",\r\n FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER = \"FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER\",\r\n MAX_SIZE = \"FILE_UPLOAD_MAX_SIZE\",\r\n FILE_EMPTY = \"FILE_UPLOAD_EMPTY\"\r\n}\r\n","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { FileUploadErrorTypeEnum } from './models/file-upload-error-type.enum';\r\nimport { FileUploadError } from './models/file-upload-error.model';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-file-upload',\r\n templateUrl: './file-upload.component.html',\r\n styleUrls: ['./file-upload.component.scss']\r\n})\r\nexport class FileUploadComponent {\r\n @ViewChild('fileInput') fileInput!: ElementRef;\r\n @ViewChild('inputButton', { read: ElementRef }) inputButton!: ElementRef;\r\n\r\n @Output() fileChange: EventEmitter<File[]> = new EventEmitter<File[]>();\r\n @Output() errorEvent: EventEmitter<FileUploadError> = new EventEmitter<FileUploadError>();\r\n private _accept: string[] = [];\r\n @Input() set accept(val: string[]) {\r\n this._accept = val;\r\n this.allowedExtensions = val ? val.join(\",\") : \"\";\r\n }\r\n get accept() { return this._accept }\r\n @Input() maxSize!: number;\r\n @Input() multiple = false;\r\n @Input() filePreviewProgress!: number;\r\n @Input() allowEmpty!: boolean;\r\n @Input() disabled!: boolean;\r\n @Input() uploadIconName!: string;\r\n\r\n /** same as accept but for registered users. It changes error message if extension is supported for registered users. */\r\n @Input() extendedAcceptList!: string[];\r\n\r\n allowedExtensions!: string;\r\n\r\n handleFileInput(event: Event) {\r\n const target = event.target as HTMLInputElement;\r\n const files = target.files as FileList;\r\n this.validate(files);\r\n }\r\n\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onFileDrop(files: any) {\r\n this.validate(files);\r\n }\r\n\r\n private emit(files: File[]) {\r\n if (files && files.length > 0) {\r\n this.fileChange.emit(files);\r\n }\r\n }\r\n\r\n private emitError(error: FileUploadError) {\r\n this.errorEvent.emit(error);\r\n }\r\n\r\n private validate(files: FileList) {\r\n //let size = 0;\r\n const validFiles: File[] = [];\r\n for (let i = 0; i < files.length; i++) {\r\n const file = files[i];\r\n if (!this.allowEmpty && file.size == 0) {\r\n this.emitError({ code: FileUploadErrorTypeEnum.FILE_EMPTY, error: \"File is empty\", fileName: file.name });\r\n return;\r\n }\r\n //size += file.size;\r\n const extensionErrorCode = this.getExtensionErrorCode(file.name);\r\n if (extensionErrorCode) {\r\n const error = { code: extensionErrorCode, error: \"Not valid extension.\", fileName: file.name };\r\n this.emitError(error);\r\n }\r\n else if (this.maxSize && file.size > this.maxSize) {\r\n const error = { code: FileUploadErrorTypeEnum.MAX_SIZE, error: \"Maximum allowed file size exceeded.\", fileName: file.name };\r\n this.emitError(error);\r\n }\r\n else {\r\n validFiles.push(file);\r\n }\r\n }\r\n\r\n this.emit(validFiles);\r\n this.fileInput.nativeElement.value = '';\r\n }\r\n\r\n private getExtensionErrorCode(fileName: string): FileUploadErrorTypeEnum | null {\r\n const extension = fileName.slice(fileName.lastIndexOf('.')).toLowerCase()\r\n if (\r\n this.accept.length == 0 || (this.accept.length == 1 && this.accept[0] == '*') || this.accept.includes(extension)) {\r\n return null;\r\n }\r\n else {\r\n return this.extendedAcceptList?.includes(extension) ? FileUploadErrorTypeEnum.FILE_UPLOAD_UNSUPPORTED_FORMAT_REGISTER : FileUploadErrorTypeEnum.FILE_UPLOAD_UNSUPPORTED_FORMAT;\r\n }\r\n }\r\n}\r\n","<div class=\"file-upload\" [ngClass.lt-sm]=\"'file-upload-mobile'\">\r\n <mat-progress-bar class=\"tld-file-upload-progress\" color=\"primary\" [value]=\"filePreviewProgress\"\r\n *ngIf=\"filePreviewProgress\"></mat-progress-bar>\r\n <button tldDragAndDrop #inputButton mat-button (fileDropped)=\"onFileDrop($event)\" [disabled]=\"disabled\" type=\"button\"\r\n (click)=\"fileInput.click()\" class=\"upload-button text-l\">\r\n <mat-icon *ngIf=\"uploadIconName\">{{uploadIconName}}</mat-icon>\r\n <ng-content></ng-content>\r\n </button>\r\n</div>\r\n<input #fileInput type=\"file\" (change)=\"handleFileInput($event)\" name=\"files\" class=\"native-file-input\"\r\n [accept]=\"allowedExtensions\" [multiple]=\"multiple\" />\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FileUploadComponent } from './file-upload.component';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { DragAndDropModule } from '../directives/drag-and-drop/drag-and-drop.module';\r\nimport { MatIconModule } from '@angular/material/icon';\r\n\r\n\r\n@NgModule({\r\n declarations: [FileUploadComponent],\r\n imports: [\r\n CommonModule,\r\n MatProgressBarModule,\r\n FlexLayoutModule,\r\n MatButtonModule,\r\n DragAndDropModule,\r\n MatIconModule\r\n ],\r\n exports: [\r\n FileUploadComponent\r\n ]\r\n})\r\nexport class FileUploadModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { MatSelectChange } from '@angular/material/select';\r\nimport { FilterBarFilter, FilterBarFilterItem } from './models';\r\nimport { FilterBarChangeEvent } from './models/filter-bar-change-event.model';\r\nimport { FilterBarSettings } from './models/filter-bar-settings.model';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'tld-filter-bar',\r\n templateUrl: './filter-bar.component.html',\r\n styleUrls: ['./filter-bar.component.scss']\r\n})\r\nexport class FilterBarComponent implements OnInit {\r\n private _inputText = \"\";\r\n get inputText() {\r\n return this._inputText;\r\n }\r\n set inputText(value) {\r\n this._inputText = value;\r\n this.filters.input = this._inputText;\r\n this.emitFilters();\r\n }\r\n\r\n searchTitle!: string;\r\n searchTooltip!: string;\r\n suffixIcon!: string;\r\n prefixIcon!: string;\r\n showSuffixIcon!: boolean;\r\n\r\n filters: FilterBarChangeEvent = {\r\n filters: {},\r\n input: \"\"\r\n };\r\n @Output() filterBarChange: EventEmitter<FilterBarChangeEvent> = new EventEmitter<FilterBarChangeEvent>();\r\n\r\n get showSearch() {\r\n return !this.settings?.hideSearch;\r\n }\r\n\r\n get fields() {\r\n return this.settings?.filters ?? [];\r\n }\r\n @Input() settings!: FilterBarSettings;\r\n\r\n ngOnInit() {\r\n this.searchTooltip = this.settings?.searchTooltip ?? 'FILTER_BAR.SEARCH_TOOLTIP';\r\n this.searchTitle = this.settings?.searchTitle ?? 'FILTER_BAR.SEARCH';\r\n this.prefixIcon = this.settings?.prefixIcon ?? \"filter_alt\";\r\n this.suffixIcon = this.settings?.suffixIcon ?? \"question_mark\";\r\n this.showSuffixIcon = this.settings?.showSuffixIcon ?? true;\r\n }\r\n\r\n filterChange(filter: FilterBarFilter, event: MatSelectChange) {\r\n this.filters.filters[filter.fieldName] = (event.value as FilterBarFilterItem[]).map(item => item.value);\r\n this.emitFilters();\r\n }\r\n\r\n emitFilters() {\r\n this.filterBarChange.next(this.filters);\r\n }\r\n}\r\n","<div fxLayout=\"row\">\r\n <mat-form-field fxFlex *ngIf=\"showSearch\" class=\"filter-bar-search-input\">\r\n <span matPrefix class=\"material-icons-outlined\">\r\n {{prefixIcon}}\r\n </span>\r\n <span matSuffix class=\"material-icons-outlined\" *ngIf=\"showSuffixIcon\" [matTooltip]=\"searchTooltip | translate\">\r\n {{suffixIcon}}\r\n </span>\r\n <input class=\"search-input\" matInput [(ngModel)]=\"inputText\" [placeholder]=\"searchTitle | translate\">\r\n </mat-form-field>\r\n <mat-form-field *ngFor=\"let filter of fields\">\r\n <mat-label>{{filter.title | translate}}</mat-label>\r\n <mat-select multiple (selectionChange)=\"filterChange(filter, $event)\">\r\n <mat-option *ngFor=\"let value of filter.values\" [value]=\"value\">\r\n {{value.key | translate : {default: value.value | titlecase } }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FilterBarComponent } from './filter-bar.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FilterBarComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n TranslateModule,\r\n MatInputModule,\r\n MatFormFieldModule,\r\n FlexLayoutModule,\r\n MatSelectModule,\r\n FormsModule,\r\n MatTooltipModule\r\n ],\r\n exports: [\r\n FilterBarComponent\r\n ]\r\n})\r\nexport class FilterBarModule { }\r\n","/*\r\n * Public API Surface of ngx-common\r\n */\r\n\r\nexport * from './lib/services';\r\nexport * from './lib/plausible';\r\nexport * from './lib/inline-message';\r\nexport * from './lib/pipes';\r\nexport * from './lib/directives';\r\nexport * from './lib/close-button';\r\nexport * from './lib/notification-message';\r\nexport * from './lib/tld-loader'\r\nexport * from './lib/helpers';\r\nexport * from './lib/company-product';\r\nexport * from './lib/footer';\r\nexport * from './lib/file-upload';\r\nexport * from './lib/filter-bar';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3","i1.CloseButtonComponent","i7","i4","i6.DragAndDropDirective","i6","i9"],"mappings":"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"}
@@ -14,6 +14,7 @@ export declare class FileUploadComponent {
14
14
  filePreviewProgress: number;
15
15
  allowEmpty: boolean;
16
16
  disabled: boolean;
17
+ uploadIconName: string;
17
18
  /** same as accept but for registered users. It changes error message if extension is supported for registered users. */
18
19
  extendedAcceptList: string[];
19
20
  allowedExtensions: string;
@@ -24,5 +25,5 @@ export declare class FileUploadComponent {
24
25
  private validate;
25
26
  private getExtensionErrorCode;
26
27
  static ɵfac: i0.ɵɵFactoryDeclaration<FileUploadComponent, never>;
27
- static ɵcmp: i0.ɵɵComponentDeclaration<FileUploadComponent, "tld-file-upload", never, { "accept": "accept"; "maxSize": "maxSize"; "multiple": "multiple"; "filePreviewProgress": "filePreviewProgress"; "allowEmpty": "allowEmpty"; "disabled": "disabled"; "extendedAcceptList": "extendedAcceptList"; }, { "fileChange": "fileChange"; "errorEvent": "errorEvent"; }, never, ["*"]>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<FileUploadComponent, "tld-file-upload", never, { "accept": "accept"; "maxSize": "maxSize"; "multiple": "multiple"; "filePreviewProgress": "filePreviewProgress"; "allowEmpty": "allowEmpty"; "disabled": "disabled"; "uploadIconName": "uploadIconName"; "extendedAcceptList": "extendedAcceptList"; }, { "fileChange": "fileChange"; "errorEvent": "errorEvent"; }, never, ["*"]>;
28
29
  }
@@ -5,8 +5,9 @@ import * as i3 from "@angular/material/progress-bar";
5
5
  import * as i4 from "@angular/flex-layout";
6
6
  import * as i5 from "@angular/material/button";
7
7
  import * as i6 from "../directives/drag-and-drop/drag-and-drop.module";
8
+ import * as i7 from "@angular/material/icon";
8
9
  export declare class FileUploadModule {
9
10
  static ɵfac: i0.ɵɵFactoryDeclaration<FileUploadModule, never>;
10
- static ɵmod: i0.ɵɵNgModuleDeclaration<FileUploadModule, [typeof i1.FileUploadComponent], [typeof i2.CommonModule, typeof i3.MatProgressBarModule, typeof i4.FlexLayoutModule, typeof i5.MatButtonModule, typeof i6.DragAndDropModule], [typeof i1.FileUploadComponent]>;
11
+ static ɵmod: i0.ɵɵNgModuleDeclaration<FileUploadModule, [typeof i1.FileUploadComponent], [typeof i2.CommonModule, typeof i3.MatProgressBarModule, typeof i4.FlexLayoutModule, typeof i5.MatButtonModule, typeof i6.DragAndDropModule, typeof i7.MatIconModule], [typeof i1.FileUploadComponent]>;
11
12
  static ɵinj: i0.ɵɵInjectorDeclaration<FileUploadModule>;
12
13
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tilde-nlp/ngx-common",
3
- "version": "1.0.3",
3
+ "version": "1.0.4",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0 || ^14.0.0 || ^15.0.0",
6
6
  "@angular/core": "^13.0.0 || ^14.0.0 || ^15.0.0",