ngx-techlify-core 18.7.1 → 18.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,19 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { TechlifyServiceBaseClass } from '../base-model';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../core";
5
+ export class ClientService extends TechlifyServiceBaseClass {
6
+ constructor(httpService) {
7
+ super(httpService, 'clients');
8
+ this.httpService = httpService;
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientService, deps: [{ token: i1.HttpService }], target: i0.ɵɵFactoryTarget.Injectable }); }
11
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientService, providedIn: 'root' }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientService, decorators: [{
14
+ type: Injectable,
15
+ args: [{
16
+ providedIn: 'root'
17
+ }]
18
+ }], ctorParameters: () => [{ type: i1.HttpService }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2NvbXBhbnktaW5mb3JtYXRpb24vY2xpZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU16RCxNQUFNLE9BQU8sYUFBYyxTQUFRLHdCQUF3QjtJQUV6RCxZQUNZLFdBQXdCO1FBRWxDLEtBQUssQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFGcEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFHcEMsQ0FBQzsrR0FOVSxhQUFhO21IQUFiLGFBQWEsY0FGWixNQUFNOzs0RkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRlY2hsaWZ5U2VydmljZUJhc2VDbGFzcyB9IGZyb20gJy4uL2Jhc2UtbW9kZWwnO1xuaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tICcuLi9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2xpZW50U2VydmljZSBleHRlbmRzIFRlY2hsaWZ5U2VydmljZUJhc2VDbGFzcyB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGh0dHBTZXJ2aWNlOiBIdHRwU2VydmljZVxuICApIHtcbiAgICBzdXBlcihodHRwU2VydmljZSwgJ2NsaWVudHMnKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,16 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { NgIf } from '@angular/common';
3
+ import * as i0 from "@angular/core";
4
+ export class CompanyInfoDisplayComponent {
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CompanyInfoDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CompanyInfoDisplayComponent, isStandalone: true, selector: "app-company-info-display", inputs: { client: "client" }, ngImport: i0, template: "<div *ngIf=\"client\" class=\"d-flex justify-content-start align-items-start gap-2\">\n <img *ngIf=\"client?.logo\" [src]=\"client?.logo\" class=\"img img-thumbnail\" style=\"max-height: 75px\" alt=\"\">\n <div>\n <h3 class=\"text-dark mb-1\">{{ client?.name }}</h3>\n <p class=\"mb-1 text-secondary\" *ngIf=\"client?.address\">\n {{ client?.address }}\n </p>\n <p class=\"mb-1 text-secondary\" *ngIf=\"client?.phone\">\n {{ client?.phone }}\n </p>\n <p class=\"mb-1 text-secondary\" *ngIf=\"client?.email\">\n {{ client?.email }}\n </p>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
7
+ }
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CompanyInfoDisplayComponent, decorators: [{
9
+ type: Component,
10
+ args: [{ selector: 'app-company-info-display', standalone: true, imports: [
11
+ NgIf
12
+ ], template: "<div *ngIf=\"client\" class=\"d-flex justify-content-start align-items-start gap-2\">\n <img *ngIf=\"client?.logo\" [src]=\"client?.logo\" class=\"img img-thumbnail\" style=\"max-height: 75px\" alt=\"\">\n <div>\n <h3 class=\"text-dark mb-1\">{{ client?.name }}</h3>\n <p class=\"mb-1 text-secondary\" *ngIf=\"client?.address\">\n {{ client?.address }}\n </p>\n <p class=\"mb-1 text-secondary\" *ngIf=\"client?.phone\">\n {{ client?.phone }}\n </p>\n <p class=\"mb-1 text-secondary\" *ngIf=\"client?.email\">\n {{ client?.email }}\n </p>\n </div>\n</div>\n" }]
13
+ }], propDecorators: { client: [{
14
+ type: Input
15
+ }] } });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGFueS1pbmZvLWRpc3BsYXkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi9jb21wYW55LWluZm9ybWF0aW9uL2NvbXBhbnktaW5mby1kaXNwbGF5L2NvbXBhbnktaW5mby1kaXNwbGF5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvY29tcGFueS1pbmZvcm1hdGlvbi9jb21wYW55LWluZm8tZGlzcGxheS9jb21wYW55LWluZm8tZGlzcGxheS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBV3JDLE1BQU0sT0FBTywyQkFBMkI7K0dBQTNCLDJCQUEyQjttR0FBM0IsMkJBQTJCLGtIQ1p4QyxxbEJBZUEsMEREUkksSUFBSTs7NEZBS0ssMkJBQTJCO2tCQVR2QyxTQUFTOytCQUNFLDBCQUEwQixjQUN4QixJQUFJLFdBQ1A7d0JBQ1AsSUFBSTtxQkFDTDs4QkFLUSxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY29tcGFueS1pbmZvLWRpc3BsYXknLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZlxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tcGFueS1pbmZvLWRpc3BsYXkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY29tcGFueS1pbmZvLWRpc3BsYXkuY29tcG9uZW50LnNjc3MnXG59KVxuZXhwb3J0IGNsYXNzIENvbXBhbnlJbmZvRGlzcGxheUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNsaWVudCE6IGFueTtcbn1cbiIsIjxkaXYgKm5nSWY9XCJjbGllbnRcIiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgYWxpZ24taXRlbXMtc3RhcnQgZ2FwLTJcIj5cbiAgPGltZyAqbmdJZj1cImNsaWVudD8ubG9nb1wiIFtzcmNdPVwiY2xpZW50Py5sb2dvXCIgY2xhc3M9XCJpbWcgaW1nLXRodW1ibmFpbFwiIHN0eWxlPVwibWF4LWhlaWdodDogNzVweFwiIGFsdD1cIlwiPlxuICA8ZGl2PlxuICAgIDxoMyBjbGFzcz1cInRleHQtZGFyayBtYi0xXCI+e3sgY2xpZW50Py5uYW1lIH19PC9oMz5cbiAgICA8cCBjbGFzcz1cIm1iLTEgdGV4dC1zZWNvbmRhcnlcIiAqbmdJZj1cImNsaWVudD8uYWRkcmVzc1wiPlxuICAgICAge3sgY2xpZW50Py5hZGRyZXNzIH19XG4gICAgPC9wPlxuICAgIDxwIGNsYXNzPVwibWItMSB0ZXh0LXNlY29uZGFyeVwiICpuZ0lmPVwiY2xpZW50Py5waG9uZVwiPlxuICAgICAge3sgY2xpZW50Py5waG9uZSB9fVxuICAgIDwvcD5cbiAgICA8cCBjbGFzcz1cIm1iLTEgdGV4dC1zZWNvbmRhcnlcIiAqbmdJZj1cImNsaWVudD8uZW1haWxcIj5cbiAgICAgIHt7IGNsaWVudD8uZW1haWwgfX1cbiAgICA8L3A+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,94 @@
1
+ import { Component } from '@angular/core';
2
+ import { MatCard, MatCardContent, MatCardTitle } from '@angular/material/card';
3
+ import { MatError, MatFormField, MatLabel } from '@angular/material/form-field';
4
+ import { MatInput } from '@angular/material/input';
5
+ import { MatButton } from '@angular/material/button';
6
+ import { ReactiveFormsModule, Validators } from '@angular/forms';
7
+ import { NgIf } from '@angular/common';
8
+ import { FileUploadButtonComponent } from '../../file-upload-button/file-upload-button.component';
9
+ import { ImagePreviewComponent } from '../../image-preview/image-preview.component';
10
+ import { TechlifyFormComponentInterface } from '../../base-model';
11
+ import * as i0 from "@angular/core";
12
+ import * as i1 from "../../core";
13
+ import * as i2 from "@angular/forms";
14
+ import * as i3 from "../../user";
15
+ import * as i4 from "../client.service";
16
+ import * as i5 from "@angular/common";
17
+ export class CompanyInformationComponent extends TechlifyFormComponentInterface {
18
+ constructor(formValidatorService, formBuilder, currentUserService, clientService, alertService, location) {
19
+ super(formValidatorService);
20
+ this.formBuilder = formBuilder;
21
+ this.currentUserService = currentUserService;
22
+ this.clientService = clientService;
23
+ this.alertService = alertService;
24
+ this.location = location;
25
+ this.errorMessages = {
26
+ name: {
27
+ required: 'The name field is required.'
28
+ }
29
+ };
30
+ this.form = this.formBuilder.group({
31
+ id: [''],
32
+ name: ['', Validators.required],
33
+ email: [''],
34
+ phone: [''],
35
+ address: [''],
36
+ logo: [''],
37
+ letterhead_image: [''],
38
+ tin: ['']
39
+ });
40
+ }
41
+ ngOnInit() {
42
+ this.user = this.currentUserService.getUser();
43
+ const client = this.user?.client;
44
+ if (client) {
45
+ this.form.patchValue({ ...client });
46
+ }
47
+ }
48
+ save() {
49
+ this.form.markAllAsTouched();
50
+ if (this.form.invalid) {
51
+ this.alertService.addAlert('Please check the form for errors.', 'error');
52
+ return;
53
+ }
54
+ const data = { ...this.form.value };
55
+ this.isWorking = true;
56
+ this.clientService.update(data).subscribe({
57
+ next: () => {
58
+ this.isWorking = false;
59
+ // update user
60
+ this.currentUserService.getUserObservable(true).subscribe();
61
+ this.alertService.addAlert('The company information saved successfully!', 'success');
62
+ },
63
+ error: () => (this.isWorking = false)
64
+ });
65
+ }
66
+ onFileUploaded(uploadedFile, field) {
67
+ if (uploadedFile && uploadedFile.length > 0) {
68
+ this.form.get(field)?.patchValue(uploadedFile[0]?.item?.url);
69
+ }
70
+ }
71
+ redirectBack() {
72
+ this.location.back();
73
+ }
74
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CompanyInformationComponent, deps: [{ token: i1.FormValidatorService }, { token: i2.FormBuilder }, { token: i3.CurrentUserService }, { token: i4.ClientService }, { token: i1.AlertService }, { token: i5.Location }], target: i0.ɵɵFactoryTarget.Component }); }
75
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CompanyInformationComponent, isStandalone: true, selector: "app-company-information", usesInheritance: true, ngImport: i0, template: "<div class=\"d-flex justify-content-center align-items-center\">\n <mat-card style=\"width: 50%\">\n <mat-card-content>\n <mat-card-title>Company Information</mat-card-title>\n </mat-card-content>\n <mat-card-content class=\"mt-3\">\n <form\n [formGroup]=\"form\"\n class=\"d-flex flex-wrap justify-content-start align-items-center gap-2\"\n (submit)=\"save()\"\n >\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Name</mat-label>\n <input matInput formControlName=\"name\">\n <mat-error *ngIf=\"isFieldValid('name')\">\n {{ getErrorMessage('name') }}\n </mat-error>\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(50% - 0.5rem)\">\n <mat-label>Email</mat-label>\n <input matInput formControlName=\"email\">\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(50%)\">\n <mat-label>Phone</mat-label>\n <input matInput formControlName=\"phone\">\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Address</mat-label>\n <textarea matInput formControlName=\"address\" rows=\"3\"></textarea>\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>TIN</mat-label>\n <input matInput formControlName=\"tin\">\n </mat-form-field>\n\n <div style=\"width: calc(50% - 0.5rem)\">\n <p>Logo</p>\n <app-file-upload-button\n *ngIf=\"!form?.value?.logo\"\n [config]=\"{ fileId: 'client-logo-' + this.form.value?.id, accept: 'image/*'}\"\n (uploaded)=\"onFileUploaded($event, 'logo')\"\n ></app-file-upload-button>\n <app-image-preview\n *ngIf=\"form.value?.logo\"\n [path]=\"form.value?.logo\"\n (removed)=\"form.get('logo')?.setValue('')\"\n ></app-image-preview>\n </div>\n\n <div style=\"width: calc(50% - 0.5rem)\">\n <p>Letterhead Image</p>\n <app-file-upload-button\n *ngIf=\"!form.value?.letterhead_image\"\n [config]=\"{ fileId: 'client-letterhead-' + this.form.value?.id, accept: 'image/*'}\"\n (uploaded)=\"onFileUploaded($event, 'letterhead_image')\"\n ></app-file-upload-button>\n <app-image-preview\n *ngIf=\"form.value?.letterhead_image\"\n [path]=\"form.value?.letterhead_image\"\n (removed)=\"form.get('letterhead_image')?.setValue('')\"\n ></app-image-preview>\n </div>\n\n <div style=\"width: calc(100%)\" class=\"d-flex justify-content-end align-items-center gap-3\">\n <button [disabled]=\"isWorking\" mat-raised-button color=\"primary\" type=\"submit\">\n Save\n </button>\n <button [disabled]=\"isWorking\" mat-flat-button type=\"button\" (click)=\"redirectBack()\">\n Cancel\n </button>\n </div>\n </form>\n </mat-card-content>\n </mat-card>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: MatCardContent, selector: "mat-card-content" }, { kind: "component", type: MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FileUploadButtonComponent, selector: "app-file-upload-button", inputs: ["config"], outputs: ["uploaded"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: ImagePreviewComponent, selector: "app-image-preview", inputs: ["path", "height"], outputs: ["removed"] }] }); }
76
+ }
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CompanyInformationComponent, decorators: [{
78
+ type: Component,
79
+ args: [{ selector: 'app-company-information', standalone: true, imports: [
80
+ MatCardContent,
81
+ MatCard,
82
+ MatCardTitle,
83
+ MatFormField,
84
+ MatLabel,
85
+ MatInput,
86
+ MatButton,
87
+ ReactiveFormsModule,
88
+ FileUploadButtonComponent,
89
+ NgIf,
90
+ MatError,
91
+ ImagePreviewComponent,
92
+ ], template: "<div class=\"d-flex justify-content-center align-items-center\">\n <mat-card style=\"width: 50%\">\n <mat-card-content>\n <mat-card-title>Company Information</mat-card-title>\n </mat-card-content>\n <mat-card-content class=\"mt-3\">\n <form\n [formGroup]=\"form\"\n class=\"d-flex flex-wrap justify-content-start align-items-center gap-2\"\n (submit)=\"save()\"\n >\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Name</mat-label>\n <input matInput formControlName=\"name\">\n <mat-error *ngIf=\"isFieldValid('name')\">\n {{ getErrorMessage('name') }}\n </mat-error>\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(50% - 0.5rem)\">\n <mat-label>Email</mat-label>\n <input matInput formControlName=\"email\">\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(50%)\">\n <mat-label>Phone</mat-label>\n <input matInput formControlName=\"phone\">\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Address</mat-label>\n <textarea matInput formControlName=\"address\" rows=\"3\"></textarea>\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>TIN</mat-label>\n <input matInput formControlName=\"tin\">\n </mat-form-field>\n\n <div style=\"width: calc(50% - 0.5rem)\">\n <p>Logo</p>\n <app-file-upload-button\n *ngIf=\"!form?.value?.logo\"\n [config]=\"{ fileId: 'client-logo-' + this.form.value?.id, accept: 'image/*'}\"\n (uploaded)=\"onFileUploaded($event, 'logo')\"\n ></app-file-upload-button>\n <app-image-preview\n *ngIf=\"form.value?.logo\"\n [path]=\"form.value?.logo\"\n (removed)=\"form.get('logo')?.setValue('')\"\n ></app-image-preview>\n </div>\n\n <div style=\"width: calc(50% - 0.5rem)\">\n <p>Letterhead Image</p>\n <app-file-upload-button\n *ngIf=\"!form.value?.letterhead_image\"\n [config]=\"{ fileId: 'client-letterhead-' + this.form.value?.id, accept: 'image/*'}\"\n (uploaded)=\"onFileUploaded($event, 'letterhead_image')\"\n ></app-file-upload-button>\n <app-image-preview\n *ngIf=\"form.value?.letterhead_image\"\n [path]=\"form.value?.letterhead_image\"\n (removed)=\"form.get('letterhead_image')?.setValue('')\"\n ></app-image-preview>\n </div>\n\n <div style=\"width: calc(100%)\" class=\"d-flex justify-content-end align-items-center gap-3\">\n <button [disabled]=\"isWorking\" mat-raised-button color=\"primary\" type=\"submit\">\n Save\n </button>\n <button [disabled]=\"isWorking\" mat-flat-button type=\"button\" (click)=\"redirectBack()\">\n Cancel\n </button>\n </div>\n </form>\n </mat-card-content>\n </mat-card>\n</div>\n" }]
93
+ }], ctorParameters: () => [{ type: i1.FormValidatorService }, { type: i2.FormBuilder }, { type: i3.CurrentUserService }, { type: i4.ClientService }, { type: i1.AlertService }, { type: i5.Location }] });
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGFueS1pbmZvcm1hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2NvbXBhbnktaW5mb3JtYXRpb24vY29tcGFueS1pbmZvcm1hdGlvbi9jb21wYW55LWluZm9ybWF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvY29tcGFueS1pbmZvcm1hdGlvbi9jb21wYW55LWluZm9ybWF0aW9uL2NvbXBhbnktaW5mb3JtYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RSxPQUFPLEVBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDakQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ25ELE9BQU8sRUFBYyxtQkFBbUIsRUFBRSxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RSxPQUFPLEVBQVcsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sdURBQXVELENBQUM7QUFDaEcsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDbEYsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sa0JBQWtCLENBQUM7Ozs7Ozs7QUF3QmhFLE1BQU0sT0FBTywyQkFBNEIsU0FBUSw4QkFBOEI7SUFJN0UsWUFD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LFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDOytHQXRFVSwyQkFBMkI7bUdBQTNCLDJCQUEyQiwwR0NsQ3hDLDJpR0ErRUEsMEREN0RJLGNBQWMsNkRBQ2QsT0FBTyxvR0FDUCxZQUFZLDZGQUNaLFlBQVksNExBQ1osUUFBUSxzREFDUixRQUFRLGlVQUNSLFNBQVMsZ0xBQ1QsbUJBQW1CLDY4QkFDbkIseUJBQXlCLDhHQUN6QixJQUFJLDZGQUNKLFFBQVEsa0ZBQ1IscUJBQXFCOzs0RkFLWiwyQkFBMkI7a0JBcEJ2QyxTQUFTOytCQUNFLHlCQUF5QixjQUN2QixJQUFJLFdBQ1A7d0JBQ1AsY0FBYzt3QkFDZCxPQUFPO3dCQUNQLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixRQUFRO3dCQUNSLFFBQVE7d0JBQ1IsU0FBUzt3QkFDVCxtQkFBbUI7d0JBQ25CLHlCQUF5Qjt3QkFDekIsSUFBSTt3QkFDSixRQUFRO3dCQUNSLHFCQUFxQjtxQkFDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWF0Q2FyZCwgTWF0Q2FyZENvbnRlbnQsIE1hdENhcmRUaXRsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2FyZCc7XG5pbXBvcnQge01hdEVycm9yLCBNYXRGb3JtRmllbGQsIE1hdExhYmVsfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7TWF0SW5wdXR9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7TWF0QnV0dG9ufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtGb3JtQnVpbGRlciwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9yc30gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtMb2NhdGlvbiwgTmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2xpZW50U2VydmljZX0gZnJvbSAnLi4vY2xpZW50LnNlcnZpY2UnO1xuaW1wb3J0IHtGaWxlVXBsb2FkQnV0dG9uQ29tcG9uZW50fSBmcm9tICcuLi8uLi9maWxlLXVwbG9hZC1idXR0b24vZmlsZS11cGxvYWQtYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQge0ltYWdlUHJldmlld0NvbXBvbmVudH0gZnJvbSAnLi4vLi4vaW1hZ2UtcHJldmlldy9pbWFnZS1wcmV2aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQge1RlY2hsaWZ5Rm9ybUNvbXBvbmVudEludGVyZmFjZX0gZnJvbSAnLi4vLi4vYmFzZS1tb2RlbCc7XG5pbXBvcnQge0N1cnJlbnRVc2VyU2VydmljZSwgVXNlcn0gZnJvbSAnLi4vLi4vdXNlcic7XG5pbXBvcnQge0FsZXJ0U2VydmljZSwgRm9ybVZhbGlkYXRvclNlcnZpY2V9IGZyb20gJy4uLy4uL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY29tcGFueS1pbmZvcm1hdGlvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRDYXJkQ29udGVudCxcbiAgICBNYXRDYXJkLFxuICAgIE1hdENhcmRUaXRsZSxcbiAgICBNYXRGb3JtRmllbGQsXG4gICAgTWF0TGFiZWwsXG4gICAgTWF0SW5wdXQsXG4gICAgTWF0QnV0dG9uLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgRmlsZVVwbG9hZEJ1dHRvbkNvbXBvbmVudCxcbiAgICBOZ0lmLFxuICAgIE1hdEVycm9yLFxuICAgIEltYWdlUHJldmlld0NvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbXBhbnktaW5mb3JtYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY29tcGFueS1pbmZvcm1hdGlvbi5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgQ29tcGFueUluZm9ybWF0aW9uQ29tcG9uZW50IGV4dGVuZHMgVGVjaGxpZnlGb3JtQ29tcG9uZW50SW50ZXJmYWNlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgaXNXb3JraW5nITogYm9vbGVhbjtcbiAgdXNlciE6IFVzZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZm9ybVZhbGlkYXRvclNlcnZpY2U6IEZvcm1WYWxpZGF0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgY3VycmVudFVzZXJTZXJ2aWNlOiBDdXJyZW50VXNlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjbGllbnRTZXJ2aWNlOiBDbGllbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsb2NhdGlvbjogTG9jYXRpb25cbiAgKSB7XG4gICAgc3VwZXIoZm9ybVZhbGlkYXRvclNlcnZpY2UpO1xuXG4gICAgdGhpcy5lcnJvck1lc3NhZ2VzID0ge1xuICAgICAgbmFtZToge1xuICAgICAgICByZXF1aXJlZDogJ1RoZSBuYW1lIGZpZWxkIGlzIHJlcXVpcmVkLidcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBpZDogWycnXSxcbiAgICAgIG5hbWU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICBlbWFpbDogWycnXSxcbiAgICAgIHBob25lOiBbJyddLFxuICAgICAgYWRkcmVzczogWycnXSxcbiAgICAgIGxvZ286IFsnJ10sXG4gICAgICBsZXR0ZXJoZWFkX2ltYWdlOiBbJyddLFxuICAgICAgdGluOiBbJyddXG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnVzZXIgPSB0aGlzLmN1cnJlbnRVc2VyU2VydmljZS5nZXRVc2VyKCk7XG4gICAgY29uc3QgY2xpZW50ID0gdGhpcy51c2VyPy5jbGllbnQ7XG4gICAgaWYgKGNsaWVudCkge1xuICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoXG4gICAgICAgIHsgLi4uY2xpZW50IH1cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgc2F2ZSgpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkge1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYWRkQWxlcnQoJ1BsZWFzZSBjaGVjayB0aGUgZm9ybSBmb3IgZXJyb3JzLicsICdlcnJvcicpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGRhdGE6IGFueSA9IHsgLi4udGhpcy5mb3JtLnZhbHVlIH07XG4gICAgdGhpcy5pc1dvcmtpbmcgPSB0cnVlO1xuICAgIHRoaXMuY2xpZW50U2VydmljZS51cGRhdGUoZGF0YSkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6ICgpID0+IHtcbiAgICAgICAgdGhpcy5pc1dvcmtpbmcgPSBmYWxzZTtcbiAgICAgICAgLy8gdXBkYXRlIHVzZXJcbiAgICAgICAgdGhpcy5jdXJyZW50VXNlclNlcnZpY2UuZ2V0VXNlck9ic2VydmFibGUodHJ1ZSkuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZEFsZXJ0KCdUaGUgY29tcGFueSBpbmZvcm1hdGlvbiBzYXZlZCBzdWNjZXNzZnVsbHkhJywgJ3N1Y2Nlc3MnKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKCkgPT4gKHRoaXMuaXNXb3JraW5nID0gZmFsc2UpXG4gICAgfSk7XG4gIH1cblxuICBvbkZpbGVVcGxvYWRlZCh1cGxvYWRlZEZpbGU6IGFueVtdLCBmaWVsZDogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKHVwbG9hZGVkRmlsZSAmJiB1cGxvYWRlZEZpbGUubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5mb3JtLmdldChmaWVsZCk/LnBhdGNoVmFsdWUodXBsb2FkZWRGaWxlWzBdPy5pdGVtPy51cmwpO1xuICAgIH1cbiAgfVxuXG4gIHJlZGlyZWN0QmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2F0aW9uLmJhY2soKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICA8bWF0LWNhcmQgc3R5bGU9XCJ3aWR0aDogNTAlXCI+XG4gICAgPG1hdC1jYXJkLWNvbnRlbnQ+XG4gICAgICA8bWF0LWNhcmQtdGl0bGU+Q29tcGFueSBJbmZvcm1hdGlvbjwvbWF0LWNhcmQtdGl0bGU+XG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxuICAgIDxtYXQtY2FyZC1jb250ZW50IGNsYXNzPVwibXQtM1wiPlxuICAgICAgPGZvcm1cbiAgICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC13cmFwIGp1c3RpZnktY29udGVudC1zdGFydCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTJcIlxuICAgICAgICAoc3VibWl0KT1cInNhdmUoKVwiXG4gICAgICA+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBzdHlsZT1cIndpZHRoOiBjYWxjKDEwMCUpXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD5OYW1lPC9tYXQtbGFiZWw+XG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIj5cbiAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiaXNGaWVsZFZhbGlkKCduYW1lJylcIj5cbiAgICAgICAgICAgIHt7IGdldEVycm9yTWVzc2FnZSgnbmFtZScpIH19XG4gICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIHN0eWxlPVwid2lkdGg6IGNhbGMoNTAlIC0gMC41cmVtKVwiPlxuICAgICAgICAgIDxtYXQtbGFiZWw+RW1haWw8L21hdC1sYWJlbD5cbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiZW1haWxcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgc3R5bGU9XCJ3aWR0aDogY2FsYyg1MCUpXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD5QaG9uZTwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJwaG9uZVwiPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBzdHlsZT1cIndpZHRoOiBjYWxjKDEwMCUpXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD5BZGRyZXNzPC9tYXQtbGFiZWw+XG4gICAgICAgICAgPHRleHRhcmVhIG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cImFkZHJlc3NcIiByb3dzPVwiM1wiPjwvdGV4dGFyZWE+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIHN0eWxlPVwid2lkdGg6IGNhbGMoMTAwJSlcIj5cbiAgICAgICAgICA8bWF0LWxhYmVsPlRJTjwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ0aW5cIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IGNhbGMoNTAlIC0gMC41cmVtKVwiPlxuICAgICAgICAgIDxwPkxvZ288L3A+XG4gICAgICAgICAgPGFwcC1maWxlLXVwbG9hZC1idXR0b25cbiAgICAgICAgICAgICpuZ0lmPVwiIWZvcm0/LnZhbHVlPy5sb2dvXCJcbiAgICAgICAgICAgIFtjb25maWddPVwieyBmaWxlSWQ6ICdjbGllbnQtbG9nby0nICsgdGhpcy5mb3JtLnZhbHVlPy5pZCwgYWNjZXB0OiAnaW1hZ2UvKid9XCJcbiAgICAgICAgICAgICh1cGxvYWRlZCk9XCJvbkZpbGVVcGxvYWRlZCgkZXZlbnQsICdsb2dvJylcIlxuICAgICAgICAgID48L2FwcC1maWxlLXVwbG9hZC1idXR0b24+XG4gICAgICAgICAgPGFwcC1pbWFnZS1wcmV2aWV3XG4gICAgICAgICAgICAqbmdJZj1cImZvcm0udmFsdWU/LmxvZ29cIlxuICAgICAgICAgICAgW3BhdGhdPVwiZm9ybS52YWx1ZT8ubG9nb1wiXG4gICAgICAgICAgICAocmVtb3ZlZCk9XCJmb3JtLmdldCgnbG9nbycpPy5zZXRWYWx1ZSgnJylcIlxuICAgICAgICAgID48L2FwcC1pbWFnZS1wcmV2aWV3PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IGNhbGMoNTAlIC0gMC41cmVtKVwiPlxuICAgICAgICAgIDxwPkxldHRlcmhlYWQgSW1hZ2U8L3A+XG4gICAgICAgICAgPGFwcC1maWxlLXVwbG9hZC1idXR0b25cbiAgICAgICAgICAgICpuZ0lmPVwiIWZvcm0udmFsdWU/LmxldHRlcmhlYWRfaW1hZ2VcIlxuICAgICAgICAgICAgW2NvbmZpZ109XCJ7IGZpbGVJZDogJ2NsaWVudC1sZXR0ZXJoZWFkLScgKyB0aGlzLmZvcm0udmFsdWU/LmlkLCBhY2NlcHQ6ICdpbWFnZS8qJ31cIlxuICAgICAgICAgICAgKHVwbG9hZGVkKT1cIm9uRmlsZVVwbG9hZGVkKCRldmVudCwgJ2xldHRlcmhlYWRfaW1hZ2UnKVwiXG4gICAgICAgICAgPjwvYXBwLWZpbGUtdXBsb2FkLWJ1dHRvbj5cbiAgICAgICAgICA8YXBwLWltYWdlLXByZXZpZXdcbiAgICAgICAgICAgICpuZ0lmPVwiZm9ybS52YWx1ZT8ubGV0dGVyaGVhZF9pbWFnZVwiXG4gICAgICAgICAgICBbcGF0aF09XCJmb3JtLnZhbHVlPy5sZXR0ZXJoZWFkX2ltYWdlXCJcbiAgICAgICAgICAgIChyZW1vdmVkKT1cImZvcm0uZ2V0KCdsZXR0ZXJoZWFkX2ltYWdlJyk/LnNldFZhbHVlKCcnKVwiXG4gICAgICAgICAgPjwvYXBwLWltYWdlLXByZXZpZXc+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDogY2FsYygxMDAlKVwiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmQgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0zXCI+XG4gICAgICAgICAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiaXNXb3JraW5nXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgdHlwZT1cInN1Ym1pdFwiPlxuICAgICAgICAgICAgU2F2ZVxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxidXR0b24gW2Rpc2FibGVkXT1cImlzV29ya2luZ1wiIG1hdC1mbGF0LWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInJlZGlyZWN0QmFjaygpXCI+XG4gICAgICAgICAgICBDYW5jZWxcbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Zvcm0+XG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxuICA8L21hdC1jYXJkPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,47 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { MatButtonModule } from '@angular/material/button';
4
+ import { MatIconModule } from '@angular/material/icon';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../entity-files";
7
+ import * as i2 from "@angular/material/button";
8
+ import * as i3 from "@angular/material/icon";
9
+ export class FileUploadButtonComponent {
10
+ constructor(entityFileService) {
11
+ this.entityFileService = entityFileService;
12
+ this.uploaded = new EventEmitter();
13
+ this.DEFAULT_FILE_ID = 'file-upload-button';
14
+ }
15
+ async onFileChange(event) {
16
+ if (event.target.files && event.target.files.length) {
17
+ const fileArray = Array.from(event.target.files);
18
+ const fileInput = document.getElementById(this.config?.fileId ?? this.DEFAULT_FILE_ID);
19
+ fileInput.value = '';
20
+ this.isUploading = true;
21
+ const results = await this.uploadFiles(fileArray);
22
+ this.uploaded.emit(results);
23
+ this.isUploading = false;
24
+ }
25
+ }
26
+ selectFiles(event) {
27
+ event.preventDefault();
28
+ document
29
+ .getElementById(this.config?.fileId ?? this.DEFAULT_FILE_ID)
30
+ ?.click();
31
+ }
32
+ async uploadFiles(files) {
33
+ const uploadPromises = files.map((file) => this.entityFileService.uploadEntityFile(file));
34
+ return await Promise.all(uploadPromises);
35
+ }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileUploadButtonComponent, deps: [{ token: i1.EntityFileService }], target: i0.ɵɵFactoryTarget.Component }); }
37
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FileUploadButtonComponent, isStandalone: true, selector: "app-file-upload-button", inputs: { config: "config" }, outputs: { uploaded: "uploaded" }, ngImport: i0, template: "<button\n [disabled]=\"isUploading\"\n mat-stroked-button\n type=\"button\"\n (click)=\"selectFiles($event)\"\n>\n <mat-icon>attachment</mat-icon> Attach\n</button>\n\n<input\n type=\"file\"\n id=\"{{ config.fileId ?? DEFAULT_FILE_ID }}\"\n [accept]=\"config.accept ?? '*'\"\n (change)=\"onFileChange($event)\"\n [multiple]=\"config.multiple ?? false\"\n class=\"d-none\"\n/>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileUploadButtonComponent, decorators: [{
40
+ type: Component,
41
+ args: [{ selector: 'app-file-upload-button', standalone: true, imports: [CommonModule, MatButtonModule, MatIconModule], template: "<button\n [disabled]=\"isUploading\"\n mat-stroked-button\n type=\"button\"\n (click)=\"selectFiles($event)\"\n>\n <mat-icon>attachment</mat-icon> Attach\n</button>\n\n<input\n type=\"file\"\n id=\"{{ config.fileId ?? DEFAULT_FILE_ID }}\"\n [accept]=\"config.accept ?? '*'\"\n (change)=\"onFileChange($event)\"\n [multiple]=\"config.multiple ?? false\"\n class=\"d-none\"\n/>\n" }]
42
+ }], ctorParameters: () => [{ type: i1.EntityFileService }], propDecorators: { config: [{
43
+ type: Input
44
+ }], uploaded: [{
45
+ type: Output
46
+ }] } });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZmlsZS11cGxvYWQtYnV0dG9uL2ZpbGUtdXBsb2FkLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2ZpbGUtdXBsb2FkLWJ1dHRvbi9maWxlLXVwbG9hZC1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFVdkQsTUFBTSxPQUFPLHlCQUF5QjtJQVdwQyxZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUw5QyxhQUFRLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7UUFFM0Qsb0JBQWUsR0FBRyxvQkFBb0IsQ0FBQztJQUdXLENBQUM7SUFFNUQsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFVO1FBQzNCLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDcEQsTUFBTSxTQUFTLEdBQVcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pELE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQ3ZDLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQ3hCLENBQUM7WUFDdEIsU0FBUyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2xELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQVU7UUFDcEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLFFBQVE7YUFDTCxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQztZQUM1RCxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVPLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBYTtRQUNyQyxNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDeEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUM5QyxDQUFDO1FBQ0YsT0FBTyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDM0MsQ0FBQzsrR0F2Q1UseUJBQXlCO21HQUF6Qix5QkFBeUIsbUpDYnRDLHNZQWlCQSx5RERSWSxZQUFZLDhCQUFFLGVBQWUsMk5BQUUsYUFBYTs7NEZBSTNDLHlCQUF5QjtrQkFQckMsU0FBUzsrQkFDRSx3QkFBd0IsY0FDdEIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLENBQUM7c0ZBSzlDLE1BQU07c0JBQWQsS0FBSztnQkFLSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgRW50aXR5RmlsZVNlcnZpY2UgfSBmcm9tICcuLi9lbnRpdHktZmlsZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtZmlsZS11cGxvYWQtYnV0dG9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRJY29uTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRCdXR0b25Db21wb25lbnQgIHtcbiAgQElucHV0KCkgY29uZmlnIToge1xuICAgIGZpbGVJZD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICBtdWx0aXBsZT86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gICAgYWNjZXB0Pzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB9O1xuICBAT3V0cHV0KCkgdXBsb2FkZWQ6IEV2ZW50RW1pdHRlcjxhbnlbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xuXG4gIHJlYWRvbmx5IERFRkFVTFRfRklMRV9JRCA9ICdmaWxlLXVwbG9hZC1idXR0b24nO1xuICBpc1VwbG9hZGluZyE6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbnRpdHlGaWxlU2VydmljZTogRW50aXR5RmlsZVNlcnZpY2UpIHt9XG5cbiAgYXN5bmMgb25GaWxlQ2hhbmdlKGV2ZW50OiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoZXZlbnQudGFyZ2V0LmZpbGVzICYmIGV2ZW50LnRhcmdldC5maWxlcy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IGZpbGVBcnJheTogRmlsZVtdID0gQXJyYXkuZnJvbShldmVudC50YXJnZXQuZmlsZXMpO1xuICAgICAgY29uc3QgZmlsZUlucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXG4gICAgICAgIHRoaXMuY29uZmlnPy5maWxlSWQgPz8gdGhpcy5ERUZBVUxUX0ZJTEVfSURcbiAgICAgICkgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICAgIGZpbGVJbnB1dC52YWx1ZSA9ICcnO1xuICAgICAgdGhpcy5pc1VwbG9hZGluZyA9IHRydWU7XG4gICAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgdGhpcy51cGxvYWRGaWxlcyhmaWxlQXJyYXkpO1xuICAgICAgdGhpcy51cGxvYWRlZC5lbWl0KHJlc3VsdHMpO1xuICAgICAgdGhpcy5pc1VwbG9hZGluZyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdEZpbGVzKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGRvY3VtZW50XG4gICAgICAuZ2V0RWxlbWVudEJ5SWQodGhpcy5jb25maWc/LmZpbGVJZCA/PyB0aGlzLkRFRkFVTFRfRklMRV9JRClcbiAgICAgID8uY2xpY2soKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgdXBsb2FkRmlsZXMoZmlsZXM6IEZpbGVbXSk6IFByb21pc2U8YW55W10+IHtcbiAgICBjb25zdCB1cGxvYWRQcm9taXNlcyA9IGZpbGVzLm1hcCgoZmlsZSkgPT5cbiAgICAgIHRoaXMuZW50aXR5RmlsZVNlcnZpY2UudXBsb2FkRW50aXR5RmlsZShmaWxlKVxuICAgICk7XG4gICAgcmV0dXJuIGF3YWl0IFByb21pc2UuYWxsKHVwbG9hZFByb21pc2VzKTtcbiAgfVxufVxuIiwiPGJ1dHRvblxuICBbZGlzYWJsZWRdPVwiaXNVcGxvYWRpbmdcIlxuICBtYXQtc3Ryb2tlZC1idXR0b25cbiAgdHlwZT1cImJ1dHRvblwiXG4gIChjbGljayk9XCJzZWxlY3RGaWxlcygkZXZlbnQpXCJcbj5cbiAgPG1hdC1pY29uPmF0dGFjaG1lbnQ8L21hdC1pY29uPiBBdHRhY2hcbjwvYnV0dG9uPlxuXG48aW5wdXRcbiAgdHlwZT1cImZpbGVcIlxuICBpZD1cInt7IGNvbmZpZy5maWxlSWQgPz8gREVGQVVMVF9GSUxFX0lEIH19XCJcbiAgW2FjY2VwdF09XCJjb25maWcuYWNjZXB0ID8/ICcqJ1wiXG4gIChjaGFuZ2UpPVwib25GaWxlQ2hhbmdlKCRldmVudClcIlxuICBbbXVsdGlwbGVdPVwiY29uZmlnLm11bHRpcGxlID8/IGZhbHNlXCJcbiAgY2xhc3M9XCJkLW5vbmVcIlxuLz5cbiJdfQ==
@@ -0,0 +1,26 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { NgIf } from '@angular/common';
3
+ import { MatIcon } from '@angular/material/icon';
4
+ import * as i0 from "@angular/core";
5
+ export class ImagePreviewComponent {
6
+ constructor() {
7
+ this.height = 100;
8
+ this.removed = new EventEmitter();
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ImagePreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ImagePreviewComponent, isStandalone: true, selector: "app-image-preview", inputs: { path: "path", height: "height" }, outputs: { removed: "removed" }, ngImport: i0, template: "<img\n *ngIf=\"path\"\n [src]=\"path\" [alt]=\"path\"\n [style.height.px]=\"height\"\n class=\"img-thumbnail\"\n>\n<mat-icon (click)=\"removed.emit()\" class=\"cursor-pointer\">close</mat-icon>\n", styles: [""], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ImagePreviewComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ selector: 'app-image-preview', standalone: true, imports: [
16
+ NgIf,
17
+ MatIcon
18
+ ], template: "<img\n *ngIf=\"path\"\n [src]=\"path\" [alt]=\"path\"\n [style.height.px]=\"height\"\n class=\"img-thumbnail\"\n>\n<mat-icon (click)=\"removed.emit()\" class=\"cursor-pointer\">close</mat-icon>\n" }]
19
+ }], propDecorators: { path: [{
20
+ type: Input
21
+ }], height: [{
22
+ type: Input
23
+ }], removed: [{
24
+ type: Output
25
+ }] } });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtcHJldmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2ltYWdlLXByZXZpZXcvaW1hZ2UtcHJldmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2ltYWdlLXByZXZpZXcvaW1hZ2UtcHJldmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7O0FBWS9DLE1BQU0sT0FBTyxxQkFBcUI7SUFWbEM7UUFZVyxXQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ1osWUFBTyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0tBQ2hFOytHQUpZLHFCQUFxQjttR0FBckIscUJBQXFCLDBKQ2RsQyx5TUFPQSwwRERDSSxJQUFJLDZGQUNKLE9BQU87OzRGQUtFLHFCQUFxQjtrQkFWakMsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQO3dCQUNQLElBQUk7d0JBQ0osT0FBTztxQkFDUjs4QkFLUSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNJLE9BQU87c0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TWF0SWNvbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1pbWFnZS1wcmV2aWV3JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgTWF0SWNvblxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vaW1hZ2UtcHJldmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9pbWFnZS1wcmV2aWV3LmNvbXBvbmVudC5zY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBJbWFnZVByZXZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBwYXRoITogc3RyaW5nO1xuICBASW5wdXQoKSBoZWlnaHQgPSAxMDA7XG4gIEBPdXRwdXQoKSByZW1vdmVkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xufVxuIiwiPGltZ1xuICAqbmdJZj1cInBhdGhcIlxuICBbc3JjXT1cInBhdGhcIiBbYWx0XT1cInBhdGhcIlxuICBbc3R5bGUuaGVpZ2h0LnB4XT1cImhlaWdodFwiXG4gIGNsYXNzPVwiaW1nLXRodW1ibmFpbFwiXG4+XG48bWF0LWljb24gKGNsaWNrKT1cInJlbW92ZWQuZW1pdCgpXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPmNsb3NlPC9tYXQtaWNvbj5cbiJdfQ==
@@ -136,11 +136,11 @@ export class FieldMappingComponent {
136
136
  this.onReUpload.emit(true);
137
137
  }
138
138
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FieldMappingComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.FormValidatorService }, { token: i0.ChangeDetectorRef }, { token: i3.Location }], target: i0.ɵɵFactoryTarget.Component }); }
139
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FieldMappingComponent, selector: "app-field-mapping", inputs: { data: "data", config: "config" }, outputs: { onSave: "onSave", onReUpload: "onReUpload" }, ngImport: i0, template: "<div fxLayout=\"column\" class=\"mt-2\">\n <div fxLayout=\"row wrap\" class=\"pb-3\">\n <h5 fxFlex=\"30%\" class=\"primary-color\">Summary</h5>\n <div fxFlex=\"70%\" fxLayoutAlign=\"center center\">\n <h5 class=\"secondary-color\">\n <span class=\"font-weight-bold\">{{data.length}}</span>\n </h5>\n <span class=\"text-muted ml-2\"> Records Found In Uploaded File</span>\n </div>\n </div>\n\n <div>\n <mat-divider></mat-divider>\n </div>\n\n <form [formGroup]=\"importMappingForm\" (ngSubmit)=\"next()\" fxLayout=\"column\" class=\"pt-3\">\n <h5 class=\"primary-color pb-2\">Properties</h5>\n <table style=\"width: 100%;\" class=\"table table-sm table-striped\">\n <tr class=\"table-header-row\">\n <th>Column Headers From File</th>\n <th>Preview Information</th>\n <th>Property</th>\n </tr>\n <ng-container formArrayName=\"fields\">\n <tr *ngFor=\"let field of fieldsArray.controls; let i = index\" [formGroupName]=\"i\">\n <td>{{ field.get('label').value }}</td>\n <td>{{ field.get('value').value }}</td>\n <td>\n <mat-form-field fxFlex=\"100%\" appearance=\"outline\">\n <mat-label>Select Property</mat-label>\n <mat-select placeholder=\"Select Property\" formControlName=\"property\" required\n (selectionChange)=\"updatePropertyType($event, i)\">\n <mat-option *ngFor=\"let property of properties\" [value]=\"property.value\">\n {{property.label}}\n </mat-option>\n </mat-select>\n <mat-error *ngIf=\"isFieldValid('property', fieldsArray.controls[i])\">\n {{getErrorMessage('property', fieldsArray.controls[i])}}\n </mat-error>\n </mat-form-field>\n <button type=\"button\" mat-icon-button (click)=\"removeField(i)\" *ngIf=\"fieldsArray.length > 1\"\n matTooltip=\"Remove column\" matTooltipPosition=\"right\">\n <mat-icon class=\"text-danger\">remove_circle</mat-icon>\n </button>\n </td>\n </tr>\n </ng-container>\n </table>\n\n <div class=\"mt-1 d-flex flex-row gap-2\">\n <button mat-button class=\"mt-2 mr-2\" type=\"button\" (click)=\"location.back()\">\n Cancel\n </button>\n <button mat-stroked-button class=\"mt-2 mr-2 primary-color\" type=\"button\" (click)=\"reUpload()\">\n <mat-icon>\n <span class=\"material-icons-outlined\">\n file_upload\n </span>\n </mat-icon>\n Re-upload\n </button>\n <button mat-stroked-button class=\"mt-2 primary-bg\" type=\"submit\">\n Next\n <mat-icon>\n chevron_right\n </mat-icon>\n </button>\n </div>\n </form>\n</div>", styles: ["table{width:100%}th,td{padding:1%}.table-header-row{background-color:#e6e4e4;color:#000;font-weight:bolder}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i9.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i10.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i11.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
139
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FieldMappingComponent, selector: "app-field-mapping", inputs: { data: "data", config: "config" }, outputs: { onSave: "onSave", onReUpload: "onReUpload" }, ngImport: i0, template: "<div fxLayout=\"column\" class=\"mt-2\">\n <div fxLayout=\"row wrap\" class=\"pb-3\">\n <h5 fxFlex=\"30%\" class=\"primary-color\">Summary</h5>\n <div fxFlex=\"70%\" fxLayoutAlign=\"center center\">\n <h5 class=\"secondary-color\">\n <span class=\"font-weight-bold\">{{data.length}}</span>\n </h5>\n <span class=\"text-muted ml-2\"> Records Found In Uploaded File</span>\n </div>\n </div>\n\n <div>\n <mat-divider></mat-divider>\n </div>\n\n <form [formGroup]=\"importMappingForm\" (ngSubmit)=\"next()\" fxLayout=\"column\" class=\"pt-3\">\n <h5 class=\"primary-color pb-2\">Properties</h5>\n <table style=\"width: 100%;\" class=\"table table-sm table-striped\">\n <tr class=\"table-header-row\">\n <th>Column Headers From File</th>\n <th>Preview Information</th>\n <th>Property</th>\n </tr>\n <ng-container formArrayName=\"fields\">\n <tr *ngFor=\"let field of fieldsArray.controls; let i = index\" [formGroupName]=\"i\">\n <td>{{ field.get('label').value }}</td>\n <td>{{ field.get('value').value }}</td>\n <td>\n <mat-form-field fxFlex=\"100%\" appearance=\"outline\">\n <mat-label>Select Property</mat-label>\n <mat-select placeholder=\"Select Property\" formControlName=\"property\" required\n (selectionChange)=\"updatePropertyType($event, i)\">\n <mat-option *ngFor=\"let property of properties\" [value]=\"property.value\">\n {{property.label}}\n </mat-option>\n </mat-select>\n <mat-error *ngIf=\"isFieldValid('property', fieldsArray.controls[i])\">\n {{getErrorMessage('property', fieldsArray.controls[i])}}\n </mat-error>\n </mat-form-field>\n <button type=\"button\" mat-icon-button (click)=\"removeField(i)\" *ngIf=\"fieldsArray.length > 1\"\n matTooltip=\"Remove column\" matTooltipPosition=\"right\">\n <mat-icon class=\"text-danger\">remove_circle</mat-icon>\n </button>\n </td>\n </tr>\n </ng-container>\n </table>\n\n <div class=\"mt-1 d-flex flex-row gap-2 justify-content-end align-items-center\">\n <button mat-button class=\"mt-2 mr-2\" type=\"button\" (click)=\"location.back()\">\n Cancel\n </button>\n <button mat-stroked-button class=\"mt-2 mr-2 primary-color\" type=\"button\" (click)=\"reUpload()\">\n <mat-icon>\n <span class=\"material-icons-outlined\">\n file_upload\n </span>\n </mat-icon>\n Re-upload\n </button>\n <button mat-stroked-button class=\"mt-2 primary-bg\" type=\"submit\">\n Next\n <mat-icon>\n chevron_right\n </mat-icon>\n </button>\n </div>\n </form>\n</div>", styles: ["table{width:100%}th,td{padding:1%}.table-header-row{background-color:#e6e4e4;color:#000;font-weight:bolder}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i9.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i10.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i11.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
140
140
  }
141
141
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FieldMappingComponent, decorators: [{
142
142
  type: Component,
143
- args: [{ selector: 'app-field-mapping', template: "<div fxLayout=\"column\" class=\"mt-2\">\n <div fxLayout=\"row wrap\" class=\"pb-3\">\n <h5 fxFlex=\"30%\" class=\"primary-color\">Summary</h5>\n <div fxFlex=\"70%\" fxLayoutAlign=\"center center\">\n <h5 class=\"secondary-color\">\n <span class=\"font-weight-bold\">{{data.length}}</span>\n </h5>\n <span class=\"text-muted ml-2\"> Records Found In Uploaded File</span>\n </div>\n </div>\n\n <div>\n <mat-divider></mat-divider>\n </div>\n\n <form [formGroup]=\"importMappingForm\" (ngSubmit)=\"next()\" fxLayout=\"column\" class=\"pt-3\">\n <h5 class=\"primary-color pb-2\">Properties</h5>\n <table style=\"width: 100%;\" class=\"table table-sm table-striped\">\n <tr class=\"table-header-row\">\n <th>Column Headers From File</th>\n <th>Preview Information</th>\n <th>Property</th>\n </tr>\n <ng-container formArrayName=\"fields\">\n <tr *ngFor=\"let field of fieldsArray.controls; let i = index\" [formGroupName]=\"i\">\n <td>{{ field.get('label').value }}</td>\n <td>{{ field.get('value').value }}</td>\n <td>\n <mat-form-field fxFlex=\"100%\" appearance=\"outline\">\n <mat-label>Select Property</mat-label>\n <mat-select placeholder=\"Select Property\" formControlName=\"property\" required\n (selectionChange)=\"updatePropertyType($event, i)\">\n <mat-option *ngFor=\"let property of properties\" [value]=\"property.value\">\n {{property.label}}\n </mat-option>\n </mat-select>\n <mat-error *ngIf=\"isFieldValid('property', fieldsArray.controls[i])\">\n {{getErrorMessage('property', fieldsArray.controls[i])}}\n </mat-error>\n </mat-form-field>\n <button type=\"button\" mat-icon-button (click)=\"removeField(i)\" *ngIf=\"fieldsArray.length > 1\"\n matTooltip=\"Remove column\" matTooltipPosition=\"right\">\n <mat-icon class=\"text-danger\">remove_circle</mat-icon>\n </button>\n </td>\n </tr>\n </ng-container>\n </table>\n\n <div class=\"mt-1 d-flex flex-row gap-2\">\n <button mat-button class=\"mt-2 mr-2\" type=\"button\" (click)=\"location.back()\">\n Cancel\n </button>\n <button mat-stroked-button class=\"mt-2 mr-2 primary-color\" type=\"button\" (click)=\"reUpload()\">\n <mat-icon>\n <span class=\"material-icons-outlined\">\n file_upload\n </span>\n </mat-icon>\n Re-upload\n </button>\n <button mat-stroked-button class=\"mt-2 primary-bg\" type=\"submit\">\n Next\n <mat-icon>\n chevron_right\n </mat-icon>\n </button>\n </div>\n </form>\n</div>", styles: ["table{width:100%}th,td{padding:1%}.table-header-row{background-color:#e6e4e4;color:#000;font-weight:bolder}\n"] }]
143
+ args: [{ selector: 'app-field-mapping', template: "<div fxLayout=\"column\" class=\"mt-2\">\n <div fxLayout=\"row wrap\" class=\"pb-3\">\n <h5 fxFlex=\"30%\" class=\"primary-color\">Summary</h5>\n <div fxFlex=\"70%\" fxLayoutAlign=\"center center\">\n <h5 class=\"secondary-color\">\n <span class=\"font-weight-bold\">{{data.length}}</span>\n </h5>\n <span class=\"text-muted ml-2\"> Records Found In Uploaded File</span>\n </div>\n </div>\n\n <div>\n <mat-divider></mat-divider>\n </div>\n\n <form [formGroup]=\"importMappingForm\" (ngSubmit)=\"next()\" fxLayout=\"column\" class=\"pt-3\">\n <h5 class=\"primary-color pb-2\">Properties</h5>\n <table style=\"width: 100%;\" class=\"table table-sm table-striped\">\n <tr class=\"table-header-row\">\n <th>Column Headers From File</th>\n <th>Preview Information</th>\n <th>Property</th>\n </tr>\n <ng-container formArrayName=\"fields\">\n <tr *ngFor=\"let field of fieldsArray.controls; let i = index\" [formGroupName]=\"i\">\n <td>{{ field.get('label').value }}</td>\n <td>{{ field.get('value').value }}</td>\n <td>\n <mat-form-field fxFlex=\"100%\" appearance=\"outline\">\n <mat-label>Select Property</mat-label>\n <mat-select placeholder=\"Select Property\" formControlName=\"property\" required\n (selectionChange)=\"updatePropertyType($event, i)\">\n <mat-option *ngFor=\"let property of properties\" [value]=\"property.value\">\n {{property.label}}\n </mat-option>\n </mat-select>\n <mat-error *ngIf=\"isFieldValid('property', fieldsArray.controls[i])\">\n {{getErrorMessage('property', fieldsArray.controls[i])}}\n </mat-error>\n </mat-form-field>\n <button type=\"button\" mat-icon-button (click)=\"removeField(i)\" *ngIf=\"fieldsArray.length > 1\"\n matTooltip=\"Remove column\" matTooltipPosition=\"right\">\n <mat-icon class=\"text-danger\">remove_circle</mat-icon>\n </button>\n </td>\n </tr>\n </ng-container>\n </table>\n\n <div class=\"mt-1 d-flex flex-row gap-2 justify-content-end align-items-center\">\n <button mat-button class=\"mt-2 mr-2\" type=\"button\" (click)=\"location.back()\">\n Cancel\n </button>\n <button mat-stroked-button class=\"mt-2 mr-2 primary-color\" type=\"button\" (click)=\"reUpload()\">\n <mat-icon>\n <span class=\"material-icons-outlined\">\n file_upload\n </span>\n </mat-icon>\n Re-upload\n </button>\n <button mat-stroked-button class=\"mt-2 primary-bg\" type=\"submit\">\n Next\n <mat-icon>\n chevron_right\n </mat-icon>\n </button>\n </div>\n </form>\n</div>", styles: ["table{width:100%}th,td{padding:1%}.table-header-row{background-color:#e6e4e4;color:#000;font-weight:bolder}\n"] }]
144
144
  }], ctorParameters: () => [{ type: i1.UntypedFormBuilder }, { type: i2.FormValidatorService }, { type: i0.ChangeDetectorRef }, { type: i3.Location }], propDecorators: { data: [{
145
145
  type: Input
146
146
  }], config: [{
@@ -150,4 +150,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
150
150
  }], onReUpload: [{
151
151
  type: Output
152
152
  }] } });
153
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtbWFwcGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2ltcG9ydC1jc3YvZmllbGQtbWFwcGluZy9maWVsZC1tYXBwaW5nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvaW1wb3J0LWNzdi9maWVsZC1tYXBwaW5nL2ZpZWxkLW1hcHBpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUF3QyxrQkFBa0IsRUFBb0IsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFJeEgsTUFBTSxhQUFhLEdBQVE7SUFDekIsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLHNCQUFzQjtRQUNoQyxXQUFXLEVBQUUsaUJBQWlCO0tBQy9CO0NBQ0YsQ0FBQztBQU9GLE1BQU0sT0FBTyxxQkFBcUI7SUFVaEMsWUFDVSxFQUFzQixFQUN0QixvQkFBMEMsRUFDMUMsaUJBQW9DLEVBQ3JDLFFBQWtCO1FBSGpCLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3RCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNyQyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBVDNCLG1CQUFjLEdBQVUsRUFBRSxDQUFDO1FBQzNCLGVBQVUsR0FBVSxFQUFFLENBQUM7UUFDYixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM1QixlQUFVLEdBQUUsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVF2QyxJQUFJLENBQUMsdUJBQXVCLEVBQUUs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OytHQTVJVSxxQkFBcUI7bUdBQXJCLHFCQUFxQiw4SkNsQmxDLDR4RkFxRU07OzRGRG5ETyxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsbUJBQW1CO2lMQU9wQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUdJLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybVZhbGlkYXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2Zvcm0tdmFsaWRhdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQXJyYXksIFVudHlwZWRGb3JtQnVpbGRlciwgVW50eXBlZEZvcm1Db250cm9sLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW1wb3J0Q3N2Q29uZmlnIH0gZnJvbSAnLi4vaW1wb3J0LWNzdi1jb25maWcnO1xuXG5jb25zdCBlcnJvck1lc3NhZ2VzOiBhbnkgPSB7XG4gIHByb3BlcnR5OiB7XG4gICAgcmVxdWlyZWQ6IFwiUHJvcGVydHkgaXMgcmVxdWlyZWRcIixcbiAgICB1bmF2YWlsYWJsZTogXCJEdXBsaWNhdGUgZW50cnlcIlxuICB9LFxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZpZWxkLW1hcHBpbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmllbGQtbWFwcGluZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpZWxkLW1hcHBpbmcuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZE1hcHBpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGltcG9ydE1hcHBpbmdGb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBASW5wdXQoKSBkYXRhOiBhbnlbXTtcbiAgQElucHV0KCkgY29uZmlnOiBJbXBvcnRDc3ZDb25maWc7XG4gIGZpcnN0RGF0YUFycmF5OiBhbnlbXSA9IFtdO1xuICBwcm9wZXJ0aWVzOiBhbnlbXSA9IFtdO1xuICBAT3V0cHV0KCkgb25TYXZlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25SZVVwbG9hZD0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGZvcm1WYWxpZGF0b3JTZXJ2aWNlOiBGb3JtVmFsaWRhdG9yU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwdWJsaWMgbG9jYXRpb246IExvY2F0aW9uXG4gICkge1xuICAgIHRoaXMuY3JlYXRlSW1wb3J0TWFwcGluZ0Zvcm0oKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucHJvcGVydGllcyA9IHRoaXMuY29uZmlnLnByb3BlcnRpZXM7O1xuICAgIHRoaXMucmVGZWN0b3JBdHRyaWJ1dGVzKHRoaXMuZGF0YVswXSk7XG4gIH1cblxuICBjcmVhdGVJbXBvcnRNYXBwaW5nRm9ybSgpIHtcbiAgICB0aGlzLmltcG9ydE1hcHBpbmdGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBmaWVsZHM6IHRoaXMuZmIuYXJyYXkoW10pLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGZpZWxkc0FycmF5KCk6IFVudHlwZWRGb3JtQXJyYXkge1xuICAgIHJldHVybiB0aGlzLmltcG9ydE1hcHBpbmdGb3JtLmdldCgnZmllbGRzJykgYXMgVW50eXBlZEZvcm1BcnJheTtcbiAgfVxuXG4gIGNyZWF0ZUZpZWxkKGZpZWxkOiBhbnkpOiBVbnR5cGVkRm9ybUdyb3VwIHtcbiAgICB2YXIgZmllbGRGb3JtOiBVbnR5cGVkRm9ybUdyb3VwID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBpZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChmaWVsZC5pZCksXG4gICAgICBsYWJlbDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChmaWVsZC5sYWJlbCksXG4gICAgICB2YWx1ZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChmaWVsZC52YWx1ZSksXG4gICAgICBwcm9wZXJ0eTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChmaWVsZC5wcm9wZXJ0eSxcbiAgICAgICAgVmFsaWRhdG9ycy5jb21wb3NlKFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIFZhbGlkYXRvcnMucmVxdWlyZWRcbiAgICAgICAgICBdXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICBwcm9wZXJ0eVR5cGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woZmllbGQucHJvcGVydHlUeXBlKVxuICAgIH0pO1xuICAgIHJldHVybiBmaWVsZEZvcm07XG4gIH1cblxuICByZUZlY3RvckF0dHJpYnV0ZXMoZGF0YSkge1xuICAgIGZvciAodmFyIGsgaW4gZGF0YSkge1xuICAgICAgaWYgKGRhdGEuaGFzT3duUHJvcGVydHkoaykpIHtcbiAgICAgICAgdmFyIGRhdGFWYWx1ZSA9IHtcbiAgICAgICAgICBpZDogJycsXG4gICAgICAgICAgbGFiZWw6IGssXG4gICAgICAgICAgdmFsdWU6IGRhdGFba10sXG4gICAgICAgICAgcHJvcGVydHk6ICcnLFxuICAgICAgICAgIHByb3BlcnR5VHlwZTogJydcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5maXJzdERhdGFBcnJheS5wdXNoKGRhdGFWYWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuZmlyc3REYXRhQXJyYXkuZm9yRWFjaCgoZWxlbWVudDogYW55LCBtYWluSW5kZXg6IGFueSkgPT4ge1xuICAgICAgZWxlbWVudC5pZCA9IG1haW5JbmRleDtcbiAgICAgIHRoaXMucHJvcGVydGllcy5maW5kKChwcm9wZXJ0eTogYW55LCBpbmRleDogYW55KSA9PiB7XG4gICAgICAgIGlmIChwcm9wZXJ0eS5sYWJlbC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGVsZW1lbnQubGFiZWwudG9Mb3dlckNhc2UoKSkpIHtcbiAgICAgICAgICBlbGVtZW50LnByb3BlcnR5ID0gcHJvcGVydHkudmFsdWU7XG4gICAgICAgICAgZWxlbWVudC5wcm9wZXJ0eVR5cGUgPSBwcm9wZXJ0eS50eXBlO1xuICAgICAgICAgIHJldHVybiBlbGVtZW50O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIG5leHQoKSB7XG4gICAgdGhpcy5pbXBvcnRNYXBwaW5nRm9ybS5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gICAgaWYgKCF0aGlzLmltcG9ydE1hcHBpbmdGb3JtLnZhbGlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMub25TYXZlLmVtaXQodGhpcy5pbXBvcnRNYXBwaW5nRm9ybS52YWx1ZSk7XG4gIH1cblxuICAvKiogTWV0aG9kIHRvIGV2YWx1YXRlIGZvcm0gZmllbGRzKi9cbiAgaXNGaWVsZFZhbGlkKGZpZWxkOiBzdHJpbmcsIGZvcm06IGFueSkge1xuICAgIHJldHVybiB0aGlzLmZvcm1WYWxpZGF0b3JTZXJ2aWNlLmlzRmllbGRWYWxpZChmaWVsZCwgZm9ybSk7XG4gIH1cblxuICAvKiogTWV0aG9kIHRvIGZpbmQgZXJyb3IgaW4gZm9ybSBmaWVsZHMqL1xuICBnZXRFcnJvck1lc3NhZ2UoZmllbGQ6IHN0cmluZywgZm9ybTogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybVZhbGlkYXRvclNlcnZpY2UuZ2V0RXJyb3JNZXNzYWdlKGZpZWxkLCBmb3JtLCBlcnJvck1lc3NhZ2VzKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAvL0NhbGxlZCBhZnRlciBuZ0FmdGVyQ29udGVudEluaXQgd2hlbiB0aGUgY29tcG9uZW50J3MgdmlldyBoYXMgYmVlbiBpbml0aWFsaXplZC4gQXBwbGllcyB0byBjb21wb25lbnRzIG9ubHkuXG4gICAgLy9BZGQgJ2ltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCcgdG8gdGhlIGNsYXNzLlxuICAgIHNldFRpbWVvdXQoeCA9PiB7XG4gICAgICB0aGlzLmZpcnN0RGF0YUFycmF5LmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmZpZWxkc0FycmF5LnB1c2godGhpcy5jcmVhdGVGaWVsZChlbGVtZW50KSk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0sIDUwMCk7XG4gIH1cblxuICB1cGRhdGVQcm9wZXJ0eVR5cGUoZXZlbnQ6IGFueSwgaW5kZXg6IGFueSk6IHZvaWQge1xuICAgIHZhciBmaWVsZCA9IHRoaXMucHJvcGVydGllcy5maW5kKChmaWVsZDogYW55KSA9PiBmaWVsZC52YWx1ZSA9PSBldmVudC52YWx1ZSk7XG4gICAgaWYgKGZpZWxkKSB7XG4gICAgICB0aGlzLmZpZWxkc0FycmF5LmNvbnRyb2xzW2luZGV4XS5nZXQoJ3Byb3BlcnR5VHlwZScpLnNldFZhbHVlKGZpZWxkLnR5cGUpO1xuICAgICAgdGhpcy51bmlxdWVWYWxpZGF0b3IoKTtcbiAgICB9XG4gIH1cblxuICB1bmlxdWVWYWxpZGF0b3IoKSB7XG4gICAgdGhpcy5maWVsZHNBcnJheS52YWx1ZS5mb3JFYWNoKChmaWVsZDogYW55LCBpbmRleDogYW55KSA9PiB7XG4gICAgICB2YXIgY29udHJvbCA9IHRoaXMuZmllbGRzQXJyYXkuY29udHJvbHNbaW5kZXhdLmdldCgncHJvcGVydHknKTtcbiAgICAgIGNvbnN0IGlzTmFtZVVuaXF1ZSA9IHRoaXMuZmllbGRzQXJyYXkudmFsdWUuZmluZChwcm9wZXJ0eURhdGEgPT5cbiAgICAgICAgcHJvcGVydHlEYXRhLnByb3BlcnR5ID09PSBjb250cm9sLnZhbHVlXG4gICAgICAgICYmIHByb3BlcnR5RGF0YS5pZCAhPSB0aGlzLmZpZWxkc0FycmF5LmNvbnRyb2xzW2luZGV4XS5nZXQoJ2lkJykudmFsdWVcbiAgICAgIClcbiAgICAgICAgPyBmYWxzZVxuICAgICAgICA6IHRydWU7XG4gICAgICBpZiAoIWlzTmFtZVVuaXF1ZSkge1xuICAgICAgICBjb250cm9sLnNldEVycm9ycyh7IHVuYXZhaWxhYmxlOiB0cnVlIH0pO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGNvbnRyb2wuc2V0RXJyb3JzKG51bGwpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmVtb3ZlRmllbGQoaW5kZXg6IG51bWJlcikge1xuICAgIGlmIChpbmRleCA9PSAtMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZpZWxkc0FycmF5LnJlbW92ZUF0KGluZGV4KTtcbiAgfVxuXG4gIHJlVXBsb2FkKCkge1xuICAgIHRoaXMub25SZVVwbG9hZC5lbWl0KHRydWUpO1xuICB9XG5cbn1cbiIsIjxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIiBjbGFzcz1cIm10LTJcIj5cbiAgPGRpdiBmeExheW91dD1cInJvdyB3cmFwXCIgY2xhc3M9XCJwYi0zXCI+XG4gICAgPGg1IGZ4RmxleD1cIjMwJVwiIGNsYXNzPVwicHJpbWFyeS1jb2xvclwiPlN1bW1hcnk8L2g1PlxuICAgIDxkaXYgZnhGbGV4PVwiNzAlXCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICAgIDxoNSBjbGFzcz1cInNlY29uZGFyeS1jb2xvclwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImZvbnQtd2VpZ2h0LWJvbGRcIj57e2RhdGEubGVuZ3RofX08L3NwYW4+XG4gICAgICA8L2g1PlxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW11dGVkIG1sLTJcIj4gUmVjb3JkcyBGb3VuZCBJbiBVcGxvYWRlZCBGaWxlPC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2PlxuICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxuICA8L2Rpdj5cblxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImltcG9ydE1hcHBpbmdGb3JtXCIgKG5nU3VibWl0KT1cIm5leHQoKVwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgY2xhc3M9XCJwdC0zXCI+XG4gICAgPGg1IGNsYXNzPVwicHJpbWFyeS1jb2xvciBwYi0yXCI+UHJvcGVydGllczwvaDU+XG4gICAgPHRhYmxlIHN0eWxlPVwid2lkdGg6IDEwMCU7XCIgY2xhc3M9XCJ0YWJsZSB0YWJsZS1zbSB0YWJsZS1zdHJpcGVkXCI+XG4gICAgICA8dHIgY2xhc3M9XCJ0YWJsZS1oZWFkZXItcm93XCI+XG4gICAgICAgIDx0aD5Db2x1bW4gSGVhZGVycyBGcm9tIEZpbGU8L3RoPlxuICAgICAgICA8dGg+UHJldmlldyBJbmZvcm1hdGlvbjwvdGg+XG4gICAgICAgIDx0aD5Qcm9wZXJ0eTwvdGg+XG4gICAgICA8L3RyPlxuICAgICAgPG5nLWNvbnRhaW5lciBmb3JtQXJyYXlOYW1lPVwiZmllbGRzXCI+XG4gICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZmllbGRzQXJyYXkuY29udHJvbHM7IGxldCBpID0gaW5kZXhcIiBbZm9ybUdyb3VwTmFtZV09XCJpXCI+XG4gICAgICAgICAgPHRkPnt7IGZpZWxkLmdldCgnbGFiZWwnKS52YWx1ZSB9fTwvdGQ+XG4gICAgICAgICAgPHRkPnt7IGZpZWxkLmdldCgndmFsdWUnKS52YWx1ZSB9fTwvdGQ+XG4gICAgICAgICAgPHRkPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGZ4RmxleD1cIjEwMCVcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxuICAgICAgICAgICAgICA8bWF0LWxhYmVsPlNlbGVjdCBQcm9wZXJ0eTwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICA8bWF0LXNlbGVjdCBwbGFjZWhvbGRlcj1cIlNlbGVjdCBQcm9wZXJ0eVwiIGZvcm1Db250cm9sTmFtZT1cInByb3BlcnR5XCIgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cInVwZGF0ZVByb3BlcnR5VHlwZSgkZXZlbnQsIGkpXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHByb3BlcnR5IG9mIHByb3BlcnRpZXNcIiBbdmFsdWVdPVwicHJvcGVydHkudmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgIHt7cHJvcGVydHkubGFiZWx9fVxuICAgICAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiaXNGaWVsZFZhbGlkKCdwcm9wZXJ0eScsIGZpZWxkc0FycmF5LmNvbnRyb2xzW2ldKVwiPlxuICAgICAgICAgICAgICAgIHt7Z2V0RXJyb3JNZXNzYWdlKCdwcm9wZXJ0eScsIGZpZWxkc0FycmF5LmNvbnRyb2xzW2ldKX19XG4gICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwicmVtb3ZlRmllbGQoaSlcIiAqbmdJZj1cImZpZWxkc0FycmF5Lmxlbmd0aCA+IDFcIlxuICAgICAgICAgICAgICBtYXRUb29sdGlwPVwiUmVtb3ZlIGNvbHVtblwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cInJpZ2h0XCI+XG4gICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+cmVtb3ZlX2NpcmNsZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L3RkPlxuICAgICAgICA8L3RyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC90YWJsZT5cblxuICAgIDxkaXYgY2xhc3M9XCJtdC0xIGQtZmxleCBmbGV4LXJvdyBnYXAtMlwiPlxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGNsYXNzPVwibXQtMiBtci0yXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJsb2NhdGlvbi5iYWNrKClcIj5cbiAgICAgICAgQ2FuY2VsXG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwibXQtMiBtci0yIHByaW1hcnktY29sb3JcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInJlVXBsb2FkKClcIj5cbiAgICAgICAgPG1hdC1pY29uPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWRcIj5cbiAgICAgICAgICAgIGZpbGVfdXBsb2FkXG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICBSZS11cGxvYWRcbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJtdC0yIHByaW1hcnktYmdcIiB0eXBlPVwic3VibWl0XCI+XG4gICAgICAgIE5leHRcbiAgICAgICAgPG1hdC1pY29uPlxuICAgICAgICAgIGNoZXZyb25fcmlnaHRcbiAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Zvcm0+XG48L2Rpdj4iXX0=
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtbWFwcGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2ltcG9ydC1jc3YvZmllbGQtbWFwcGluZy9maWVsZC1tYXBwaW5nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvaW1wb3J0LWNzdi9maWVsZC1tYXBwaW5nL2ZpZWxkLW1hcHBpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUF3QyxrQkFBa0IsRUFBb0IsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFJeEgsTUFBTSxhQUFhLEdBQVE7SUFDekIsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLHNCQUFzQjtRQUNoQyxXQUFXLEVBQUUsaUJBQWlCO0tBQy9CO0NBQ0YsQ0FBQztBQU9GLE1BQU0sT0FBTyxxQkFBcUI7SUFVaEMsWUFDVSxFQUFzQixFQUN0QixvQkFBMEMsRUFDMUMsaUJBQW9DLEVBQ3JDLFFBQWtCO1FBSGpCLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3RCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNyQyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBVDNCLG1CQUFjLEdBQVUsRUFBRSxDQUFDO1FBQzNCLGVBQVUsR0FBVSxFQUFFLENBQUM7UUFDYixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM1QixlQUFVLEdBQUUsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVF2QyxJQUFJLENBQUMsdUJBQXVCLEVBQUUs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OytHQTVJVSxxQkFBcUI7bUdBQXJCLHFCQUFxQiw4SkNsQmxDLG0wRkFxRU07OzRGRG5ETyxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsbUJBQW1CO2lMQU9wQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUdJLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybVZhbGlkYXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2Zvcm0tdmFsaWRhdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQXJyYXksIFVudHlwZWRGb3JtQnVpbGRlciwgVW50eXBlZEZvcm1Db250cm9sLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW1wb3J0Q3N2Q29uZmlnIH0gZnJvbSAnLi4vaW1wb3J0LWNzdi1jb25maWcnO1xuXG5jb25zdCBlcnJvck1lc3NhZ2VzOiBhbnkgPSB7XG4gIHByb3BlcnR5OiB7XG4gICAgcmVxdWlyZWQ6IFwiUHJvcGVydHkgaXMgcmVxdWlyZWRcIixcbiAgICB1bmF2YWlsYWJsZTogXCJEdXBsaWNhdGUgZW50cnlcIlxuICB9LFxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZpZWxkLW1hcHBpbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmllbGQtbWFwcGluZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpZWxkLW1hcHBpbmcuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZE1hcHBpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGltcG9ydE1hcHBpbmdGb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBASW5wdXQoKSBkYXRhOiBhbnlbXTtcbiAgQElucHV0KCkgY29uZmlnOiBJbXBvcnRDc3ZDb25maWc7XG4gIGZpcnN0RGF0YUFycmF5OiBhbnlbXSA9IFtdO1xuICBwcm9wZXJ0aWVzOiBhbnlbXSA9IFtdO1xuICBAT3V0cHV0KCkgb25TYXZlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25SZVVwbG9hZD0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGZvcm1WYWxpZGF0b3JTZXJ2aWNlOiBGb3JtVmFsaWRhdG9yU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwdWJsaWMgbG9jYXRpb246IExvY2F0aW9uXG4gICkge1xuICAgIHRoaXMuY3JlYXRlSW1wb3J0TWFwcGluZ0Zvcm0oKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucHJvcGVydGllcyA9IHRoaXMuY29uZmlnLnByb3BlcnRpZXM7O1xuICAgIHRoaXMucmVGZWN0b3JBdHRyaWJ1dGVzKHRoaXMuZGF0YVswXSk7XG4gIH1cblxuICBjcmVhdGVJbXBvcnRNYXBwaW5nRm9ybSgpIHtcbiAgICB0aGlzLmltcG9ydE1hcHBpbmdGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBmaWVsZHM6IHRoaXMuZmIuYXJyYXkoW10pLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGZpZWxkc0FycmF5KCk6IFVudHlwZWRGb3JtQXJyYXkge1xuICAgIHJldHVybiB0aGlzLmltcG9ydE1hcHBpbmdGb3JtLmdldCgnZmllbGRzJykgYXMgVW50eXBlZEZvcm1BcnJheTtcbiAgfVxuXG4gIGNyZWF0ZUZpZWxkKGZpZWxkOiBhbnkpOiBVbnR5cGVkRm9ybUdyb3VwIHtcbiAgICB2YXIgZmllbGRGb3JtOiBVbnR5cGVkRm9ybUdyb3VwID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBpZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChmaWVsZC5pZCksXG4gICAgICBsYWJlbDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChmaWVsZC5sYWJlbCksXG4gICAgICB2YWx1ZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChmaWVsZC52YWx1ZSksXG4gICAgICBwcm9wZXJ0eTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChmaWVsZC5wcm9wZXJ0eSxcbiAgICAgICAgVmFsaWRhdG9ycy5jb21wb3NlKFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIFZhbGlkYXRvcnMucmVxdWlyZWRcbiAgICAgICAgICBdXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICBwcm9wZXJ0eVR5cGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woZmllbGQucHJvcGVydHlUeXBlKVxuICAgIH0pO1xuICAgIHJldHVybiBmaWVsZEZvcm07XG4gIH1cblxuICByZUZlY3RvckF0dHJpYnV0ZXMoZGF0YSkge1xuICAgIGZvciAodmFyIGsgaW4gZGF0YSkge1xuICAgICAgaWYgKGRhdGEuaGFzT3duUHJvcGVydHkoaykpIHtcbiAgICAgICAgdmFyIGRhdGFWYWx1ZSA9IHtcbiAgICAgICAgICBpZDogJycsXG4gICAgICAgICAgbGFiZWw6IGssXG4gICAgICAgICAgdmFsdWU6IGRhdGFba10sXG4gICAgICAgICAgcHJvcGVydHk6ICcnLFxuICAgICAgICAgIHByb3BlcnR5VHlwZTogJydcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5maXJzdERhdGFBcnJheS5wdXNoKGRhdGFWYWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuZmlyc3REYXRhQXJyYXkuZm9yRWFjaCgoZWxlbWVudDogYW55LCBtYWluSW5kZXg6IGFueSkgPT4ge1xuICAgICAgZWxlbWVudC5pZCA9IG1haW5JbmRleDtcbiAgICAgIHRoaXMucHJvcGVydGllcy5maW5kKChwcm9wZXJ0eTogYW55LCBpbmRleDogYW55KSA9PiB7XG4gICAgICAgIGlmIChwcm9wZXJ0eS5sYWJlbC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGVsZW1lbnQubGFiZWwudG9Mb3dlckNhc2UoKSkpIHtcbiAgICAgICAgICBlbGVtZW50LnByb3BlcnR5ID0gcHJvcGVydHkudmFsdWU7XG4gICAgICAgICAgZWxlbWVudC5wcm9wZXJ0eVR5cGUgPSBwcm9wZXJ0eS50eXBlO1xuICAgICAgICAgIHJldHVybiBlbGVtZW50O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIG5leHQoKSB7XG4gICAgdGhpcy5pbXBvcnRNYXBwaW5nRm9ybS5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gICAgaWYgKCF0aGlzLmltcG9ydE1hcHBpbmdGb3JtLnZhbGlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMub25TYXZlLmVtaXQodGhpcy5pbXBvcnRNYXBwaW5nRm9ybS52YWx1ZSk7XG4gIH1cblxuICAvKiogTWV0aG9kIHRvIGV2YWx1YXRlIGZvcm0gZmllbGRzKi9cbiAgaXNGaWVsZFZhbGlkKGZpZWxkOiBzdHJpbmcsIGZvcm06IGFueSkge1xuICAgIHJldHVybiB0aGlzLmZvcm1WYWxpZGF0b3JTZXJ2aWNlLmlzRmllbGRWYWxpZChmaWVsZCwgZm9ybSk7XG4gIH1cblxuICAvKiogTWV0aG9kIHRvIGZpbmQgZXJyb3IgaW4gZm9ybSBmaWVsZHMqL1xuICBnZXRFcnJvck1lc3NhZ2UoZmllbGQ6IHN0cmluZywgZm9ybTogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybVZhbGlkYXRvclNlcnZpY2UuZ2V0RXJyb3JNZXNzYWdlKGZpZWxkLCBmb3JtLCBlcnJvck1lc3NhZ2VzKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAvL0NhbGxlZCBhZnRlciBuZ0FmdGVyQ29udGVudEluaXQgd2hlbiB0aGUgY29tcG9uZW50J3MgdmlldyBoYXMgYmVlbiBpbml0aWFsaXplZC4gQXBwbGllcyB0byBjb21wb25lbnRzIG9ubHkuXG4gICAgLy9BZGQgJ2ltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCcgdG8gdGhlIGNsYXNzLlxuICAgIHNldFRpbWVvdXQoeCA9PiB7XG4gICAgICB0aGlzLmZpcnN0RGF0YUFycmF5LmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmZpZWxkc0FycmF5LnB1c2godGhpcy5jcmVhdGVGaWVsZChlbGVtZW50KSk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0sIDUwMCk7XG4gIH1cblxuICB1cGRhdGVQcm9wZXJ0eVR5cGUoZXZlbnQ6IGFueSwgaW5kZXg6IGFueSk6IHZvaWQge1xuICAgIHZhciBmaWVsZCA9IHRoaXMucHJvcGVydGllcy5maW5kKChmaWVsZDogYW55KSA9PiBmaWVsZC52YWx1ZSA9PSBldmVudC52YWx1ZSk7XG4gICAgaWYgKGZpZWxkKSB7XG4gICAgICB0aGlzLmZpZWxkc0FycmF5LmNvbnRyb2xzW2luZGV4XS5nZXQoJ3Byb3BlcnR5VHlwZScpLnNldFZhbHVlKGZpZWxkLnR5cGUpO1xuICAgICAgdGhpcy51bmlxdWVWYWxpZGF0b3IoKTtcbiAgICB9XG4gIH1cblxuICB1bmlxdWVWYWxpZGF0b3IoKSB7XG4gICAgdGhpcy5maWVsZHNBcnJheS52YWx1ZS5mb3JFYWNoKChmaWVsZDogYW55LCBpbmRleDogYW55KSA9PiB7XG4gICAgICB2YXIgY29udHJvbCA9IHRoaXMuZmllbGRzQXJyYXkuY29udHJvbHNbaW5kZXhdLmdldCgncHJvcGVydHknKTtcbiAgICAgIGNvbnN0IGlzTmFtZVVuaXF1ZSA9IHRoaXMuZmllbGRzQXJyYXkudmFsdWUuZmluZChwcm9wZXJ0eURhdGEgPT5cbiAgICAgICAgcHJvcGVydHlEYXRhLnByb3BlcnR5ID09PSBjb250cm9sLnZhbHVlXG4gICAgICAgICYmIHByb3BlcnR5RGF0YS5pZCAhPSB0aGlzLmZpZWxkc0FycmF5LmNvbnRyb2xzW2luZGV4XS5nZXQoJ2lkJykudmFsdWVcbiAgICAgIClcbiAgICAgICAgPyBmYWxzZVxuICAgICAgICA6IHRydWU7XG4gICAgICBpZiAoIWlzTmFtZVVuaXF1ZSkge1xuICAgICAgICBjb250cm9sLnNldEVycm9ycyh7IHVuYXZhaWxhYmxlOiB0cnVlIH0pO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGNvbnRyb2wuc2V0RXJyb3JzKG51bGwpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmVtb3ZlRmllbGQoaW5kZXg6IG51bWJlcikge1xuICAgIGlmIChpbmRleCA9PSAtMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZpZWxkc0FycmF5LnJlbW92ZUF0KGluZGV4KTtcbiAgfVxuXG4gIHJlVXBsb2FkKCkge1xuICAgIHRoaXMub25SZVVwbG9hZC5lbWl0KHRydWUpO1xuICB9XG5cbn1cbiIsIjxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIiBjbGFzcz1cIm10LTJcIj5cbiAgPGRpdiBmeExheW91dD1cInJvdyB3cmFwXCIgY2xhc3M9XCJwYi0zXCI+XG4gICAgPGg1IGZ4RmxleD1cIjMwJVwiIGNsYXNzPVwicHJpbWFyeS1jb2xvclwiPlN1bW1hcnk8L2g1PlxuICAgIDxkaXYgZnhGbGV4PVwiNzAlXCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICAgIDxoNSBjbGFzcz1cInNlY29uZGFyeS1jb2xvclwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImZvbnQtd2VpZ2h0LWJvbGRcIj57e2RhdGEubGVuZ3RofX08L3NwYW4+XG4gICAgICA8L2g1PlxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW11dGVkIG1sLTJcIj4gUmVjb3JkcyBGb3VuZCBJbiBVcGxvYWRlZCBGaWxlPC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2PlxuICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxuICA8L2Rpdj5cblxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImltcG9ydE1hcHBpbmdGb3JtXCIgKG5nU3VibWl0KT1cIm5leHQoKVwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgY2xhc3M9XCJwdC0zXCI+XG4gICAgPGg1IGNsYXNzPVwicHJpbWFyeS1jb2xvciBwYi0yXCI+UHJvcGVydGllczwvaDU+XG4gICAgPHRhYmxlIHN0eWxlPVwid2lkdGg6IDEwMCU7XCIgY2xhc3M9XCJ0YWJsZSB0YWJsZS1zbSB0YWJsZS1zdHJpcGVkXCI+XG4gICAgICA8dHIgY2xhc3M9XCJ0YWJsZS1oZWFkZXItcm93XCI+XG4gICAgICAgIDx0aD5Db2x1bW4gSGVhZGVycyBGcm9tIEZpbGU8L3RoPlxuICAgICAgICA8dGg+UHJldmlldyBJbmZvcm1hdGlvbjwvdGg+XG4gICAgICAgIDx0aD5Qcm9wZXJ0eTwvdGg+XG4gICAgICA8L3RyPlxuICAgICAgPG5nLWNvbnRhaW5lciBmb3JtQXJyYXlOYW1lPVwiZmllbGRzXCI+XG4gICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZmllbGRzQXJyYXkuY29udHJvbHM7IGxldCBpID0gaW5kZXhcIiBbZm9ybUdyb3VwTmFtZV09XCJpXCI+XG4gICAgICAgICAgPHRkPnt7IGZpZWxkLmdldCgnbGFiZWwnKS52YWx1ZSB9fTwvdGQ+XG4gICAgICAgICAgPHRkPnt7IGZpZWxkLmdldCgndmFsdWUnKS52YWx1ZSB9fTwvdGQ+XG4gICAgICAgICAgPHRkPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGZ4RmxleD1cIjEwMCVcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxuICAgICAgICAgICAgICA8bWF0LWxhYmVsPlNlbGVjdCBQcm9wZXJ0eTwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICA8bWF0LXNlbGVjdCBwbGFjZWhvbGRlcj1cIlNlbGVjdCBQcm9wZXJ0eVwiIGZvcm1Db250cm9sTmFtZT1cInByb3BlcnR5XCIgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cInVwZGF0ZVByb3BlcnR5VHlwZSgkZXZlbnQsIGkpXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHByb3BlcnR5IG9mIHByb3BlcnRpZXNcIiBbdmFsdWVdPVwicHJvcGVydHkudmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgIHt7cHJvcGVydHkubGFiZWx9fVxuICAgICAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiaXNGaWVsZFZhbGlkKCdwcm9wZXJ0eScsIGZpZWxkc0FycmF5LmNvbnRyb2xzW2ldKVwiPlxuICAgICAgICAgICAgICAgIHt7Z2V0RXJyb3JNZXNzYWdlKCdwcm9wZXJ0eScsIGZpZWxkc0FycmF5LmNvbnRyb2xzW2ldKX19XG4gICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwicmVtb3ZlRmllbGQoaSlcIiAqbmdJZj1cImZpZWxkc0FycmF5Lmxlbmd0aCA+IDFcIlxuICAgICAgICAgICAgICBtYXRUb29sdGlwPVwiUmVtb3ZlIGNvbHVtblwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cInJpZ2h0XCI+XG4gICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+cmVtb3ZlX2NpcmNsZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L3RkPlxuICAgICAgICA8L3RyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC90YWJsZT5cblxuICAgIDxkaXYgY2xhc3M9XCJtdC0xIGQtZmxleCBmbGV4LXJvdyBnYXAtMiBqdXN0aWZ5LWNvbnRlbnQtZW5kIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGNsYXNzPVwibXQtMiBtci0yXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJsb2NhdGlvbi5iYWNrKClcIj5cbiAgICAgICAgQ2FuY2VsXG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwibXQtMiBtci0yIHByaW1hcnktY29sb3JcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInJlVXBsb2FkKClcIj5cbiAgICAgICAgPG1hdC1pY29uPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMtb3V0bGluZWRcIj5cbiAgICAgICAgICAgIGZpbGVfdXBsb2FkXG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICBSZS11cGxvYWRcbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJtdC0yIHByaW1hcnktYmdcIiB0eXBlPVwic3VibWl0XCI+XG4gICAgICAgIE5leHRcbiAgICAgICAgPG1hdC1pY29uPlxuICAgICAgICAgIGNoZXZyb25fcmlnaHRcbiAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Zvcm0+XG48L2Rpdj4iXX0=
@@ -129,4 +129,7 @@ export * from './lib/number-input-button';
129
129
  export * from './lib/column-selector';
130
130
  export * from './lib/reset-password';
131
131
  export * from './lib/reset-password/reset-password.module';
132
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBRTNCLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLDREQUE0RCxDQUFDO0FBRTNFLGNBQWMsaUZBQWlGLENBQUM7QUFDaEcsY0FBYyx5RkFBeUYsQ0FBQztBQUN4RyxjQUFjLG1IQUFtSCxDQUFDO0FBQ2xJLGNBQWMsMkhBQTJILENBQUM7QUFDMUksY0FBYyxtSEFBbUgsQ0FBQztBQUNsSSxjQUFjLDJIQUEySCxD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QkFBMEIsQ0FBQztBQUN6QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsc0ZBQXNGLENBQUM7QUFDckcsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsdUJBQXVCLENBQUM7QUFFdEMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDRDQUE0QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtdGVjaGxpZnktY29yZVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbi1wb3B1cCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9iYXNlLW1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGEtdGFibGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZG9jdW1lbnQtdmlld2VyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudGl0eS1maWxlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWxlLWRyb3BwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbm90ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZWFyY2hhYmxlLXNlbGVjdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWxpdHknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGltZWxpbmUtZmlsdGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvbWF0ZXJpYWwubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvY29yZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWN0aW9uLXBvcHVwL2FjdGlvbi1wb3B1cC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0YS10YWJsZS9kYXRhLXRhYmxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kb2N1bWVudC12aWV3ZXIvZG9jdW1lbnQtdmlld2VyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnRpdHktZmlsZXMvZW50aXR5LWZpbGVzLXZpZXctYWxsLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWxlLWRyb3BwZXIvZmlsZS1kcm9wcGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub3RlL25vdGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlYXJjaGFibGUtc2VsZWN0b3Ivc2VhcmNoYWJsZS1zZWxlY3Rvci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbGl0eS91dGlsaXR5Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90aW1lbGluZS1maWx0ZXIvdGltZWxpbmUtZmlsdGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2FkZXIvbG9hZGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90ZWNobGlmeS1ub3RpZmljYXRpb25zJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi1yb3V0aW5nLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci1mb3JtL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWZvcm0ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci1mb3JtL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWZvcm0tcm91dGluZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QvZW1haWwtc3Vic2NyaXB0aW9uLXVzZXItbGlzdC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QvZW1haWwtc3Vic2NyaXB0aW9uLXVzZXItbGlzdC1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbWFpbC1zdWJzY3JpcHRpb24vZW1haWwtc3Vic2NyaXB0aW9uLXVzZXIvZW1haWwtc3Vic2NyaXB0aW9uLXVzZXItbGlzdC1maWx0ZXIvZW1haWwtc3Vic2NyaXB0aW9uLXVzZXItbGlzdC1maWx0ZXItcm91dGluZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QtZmlsdGVyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QtZmlsdGVyLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbWFpbC1zdWJzY3JpcHRpb24vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUvZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1mb3JtL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWZvcm0tcm91dGluZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWZvcm0vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtZm9ybS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3QvZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtbGlzdC1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbWFpbC1zdWJzY3JpcHRpb24vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUvZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtbGlzdC9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1saXN0Lm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXIvZW1haWwtc3Vic2NyaXB0aW9uLWZvci11c2VyLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXIvZW1haWwtc3Vic2NyaXB0aW9uLWZvci11c2VyLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QtZmlsdGVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdXBkYXRlL3RlY2hsaWZ5LXVwZGF0ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdXBkYXRlL3RlY2hsaWZ5LXVwZGF0ZS1oaXN0b3J5L3RlY2hsaWZ5LXVwZGF0ZS1oaXN0b3J5Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90ZWNobGlmeS11cGRhdGUvdXBkYXRlLW5vdGlmaWVyL3VwZGF0ZS1ub3RpZmllci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdXBkYXRlL3VwZGF0ZS1ub3RpZmllci91cGRhdGUtbm90aWZpZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LXVwZGF0ZS90ZWNobGlmeS11cGRhdGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90ZWNobGlmeS11cGRhdGUvdGVjaGxpZnktdXBkYXRlcy10ZWFzZXIvdGVjaGxpZnktdXBkYXRlcy10ZWFzZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LXVwZGF0ZS90ZWNobGlmeS11cGRhdGVzLXRlYXNlci90ZWNobGlmeS11cGRhdGVzLXRlYXNlci5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9leHBvcnQtZXhjZWwvZXhwb3J0LWV4Y2VsLWJ1dHRvbi9leHBvcnQtZXhjZWwtYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9leHBvcnQtZXhjZWwvZXhwb3J0LWV4Y2VsLm1vZHVsZSc7XG5cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1mb3ItbW9kZWwvYXVkaXQtbG9nLWZvci1tb2RlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1mb3ItbW9kZWwvYXVkaXQtbG9nLWZvci1tb2RlbC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1mb3ItbW9kZWwvYXVkaXQtbG9nLWZvci1tb2RlbC1yb3V0aW5nLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1ZGl0LWxvZy9hdWRpdC1sb2ctbGlzdC9hdWRpdC1sb2ctbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1saXN0L2F1ZGl0LWxvZy1saXN0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdWRpdC1sb2cvYXVkaXQtbG9nLWxpc3QvYXVkaXQtbG9nLWxpc3Qtcm91dGluZy5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdWRpdC1sb2cvYXVkaXQtbG9nLWxpc3QtZmlsdGVyL2F1ZGl0LWxvZy1saXN0LWZpbHRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1saXN0LWZpbHRlci9hdWRpdC1sb2ctbGlzdC1maWx0ZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1ZGl0LWxvZy9hdWRpdC1sb2ctbGlzdC1maWx0ZXIvYXVkaXQtbG9nLWxpc3QtZmlsdGVyLXJvdXRpbmcubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy12aWV3L2F1ZGl0LWxvZy12aWV3LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdWRpdC1sb2cvYXVkaXQtbG9nLXZpZXcvYXVkaXQtbG9nLXZpZXcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1ZGl0LWxvZy9hdWRpdC1sb2ctdmlldy9hdWRpdC1sb2ctdmlldy1yb3V0aW5nLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1ZGl0LWxvZy9hdWRpdC1sb2ctdmlldy1tb2RlbC9hdWRpdC1sb2ctdmlldy1tb2RlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy12aWV3LW1vZGVsL2F1ZGl0LWxvZy12aWV3LW1vZGVsLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdWRpdC1sb2cvYXVkaXQtbG9nLXZpZXctbW9kZWwvYXVkaXQtbG9nLXZpZXctbW9kZWwtcm91dGluZy5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdWRpdC1sb2cvYXVkaXQtbG9ncy12aWV3LW1vZGVsL2F1ZGl0LWxvZ3Mtdmlldy1tb2RlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZ3Mtdmlldy1tb2RlbC9hdWRpdC1sb2dzLXZpZXctbW9kZWwubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1ZGl0LWxvZy9hdWRpdC1sb2dzLXZpZXctbW9kZWwvYXVkaXQtbG9ncy12aWV3LW1vZGVsLXJvdXRpbmcubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1yb3V0aW5nLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtdmFsaWRhdG9yJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW1wb3J0LWNzdi9pbXBvcnQtY3N2Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbXBvcnQtY3N2L2ltcG9ydC1jc3YuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ltcG9ydC1jc3YvaW1wb3J0LWNzdi1jb25maWcnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2dpbi1oaXN0b3J5LWZvci11c2VyL2xvZ2luLWhpc3RvcnktZm9yLXVzZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvZ2luLWhpc3RvcnktZm9yLXVzZXIvbG9naW4taGlzdG9yeS1mb3ItdXNlci1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2dpbi1oaXN0b3J5LWZvci11c2VyL2xvZ2luLWhpc3RvcnktZm9yLXVzZXIuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdGFnZ2VyLXRhZy1mb3JtLWZpZWxkL3RlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1jb25maWcubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdGFnZ2VyLXRhZy1mb3JtLWZpZWxkL3RlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdGFnZ2VyLXRhZy1mb3JtLWZpZWxkL3RlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1maWVsZC5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi90ZWNobGlmeS10YWdnZXItdGFnLXNlbGVjdG9yL3RlY2hsaWZ5LXRhZ2dlci10YWctc2VsZWN0b3IubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LXRhZ2dlci10YWctc2VsZWN0b3IvdGVjaGxpZnktdGFnZ2VyLXRhZy1zZWxlY3Rvci5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9yZWFkLW1vcmUvcmVhZC1tb3JlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9yZWFkLW1vcmUvcmVhZC1tb3JlLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LWZlYXR1cmUvdGVjaGxpZnktZmVhdHVyZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktZmVhdHVyZS90ZWNobGlmeS1mZWF0dXJlLnJvdXRpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktZmVhdHVyZS90ZWNobGlmeS1mZWF0dXJlLWxpc3RpbmcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LWZlYXR1cmUvdGVjaGxpZnktZmVhdHVyZS1lbmFibGVkLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3JlcXVlc3QtaGVscGVyL3JlcXVlc3QtaGVscGVyLnNlcnZpY2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3Jnb3QtcGFzc3dvcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbG9naW4nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJvZmlsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9yb2xlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NpZ251cCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyLWNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyLXNlbGVjdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGEtdGFibGUvZGF0YS10YWJsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0YS10YWJsZS9kYXRhLXRhYmxlLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VzZXIvdXNlci1lbmFibGUtYnV0dG9uLWNvbXBvbmVudC91c2VyLWVuYWJsZS1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VzZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9yZ290LXBhc3N3b3JkL2ZvcmdvdC1wYXNzd29yZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbG9naW4vbG9naW4ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Byb2ZpbGUvcHJvZmlsZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcm9sZS9yb2xlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9yb2xlL3Blcm1pc3Npb24vcGVybWlzc2lvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2lnbnVwL3NpZ251cC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXNlci1zZWxlY3Rvci91c2VyLXNlbGVjdG9yLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyL3VzZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjY2Vzcy1jb250cm9sLWNvbmZpZy9hY2Nlc3MtY29udHJvbC1jb25maWcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25neC10ZWNobGlmeS11c2Vycy9uZ3gtdGVjaGxpZnktdXNlcnMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jlc3RyaWN0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LWNvbXBhbnktc3dpdGNoZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWxlLWRyYWdkcm9wLXVwbG9hZGVyL2ZpbGUtZHJhZ2Ryb3AtdXBsb2FkZXIvZmlsZS1kcmFnZHJvcC11cGxvYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZmlsZS1kcmFnZHJvcC11cGxvYWRlci9maWxlLWRyYWdkcm9wLXVwbG9hZGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9udW1iZXItaW5wdXQtYnV0dG9uJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbHVtbi1zZWxlY3Rvcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jlc2V0LXBhc3N3b3JkJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jlc2V0LXBhc3N3b3JkL3Jlc2V0LXBhc3N3b3JkLm1vZHVsZSc7XG4iXX0=
132
+ export * from './lib/company-information/company-information/company-information.component';
133
+ export * from './lib/company-information/company-info-display/company-info-display.component';
134
+ export * from './lib/company-information/client.service';
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBRTNCLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLDREQUE0RCxDQUFDO0FBRTNFLGNBQWMsaUZBQWlGLENBQUM7QUFDaEcsY0FBYyx5RkFBeUYsQ0FBQztBQUN4RyxjQUFjLG1IQUFtSCxDQUFDO0FBQ2xJLGNBQWMsMkhBQTJILENBQUM7QUFDMUksY0FBYyxtSEFBbUgsQ0FBQztBQUNsSSxjQUFjLDJIQUEySCxD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QkFBMEIsQ0FBQztBQUN6QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsc0ZBQXNGLENBQUM7QUFDckcsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsdUJBQXVCLENBQUM7QUFFdEMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDRDQUE0QyxDQUFDO0FBRTNELGNBQWMsNkVBQTZFLENBQUM7QUFDNUYsY0FBYywrRUFBK0UsQ0FBQztBQUM5RixjQUFjLDBDQUEwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtdGVjaGxpZnktY29yZVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbi1wb3B1cCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9iYXNlLW1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGEtdGFibGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZG9jdW1lbnQtdmlld2VyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudGl0eS1maWxlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWxlLWRyb3BwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbm90ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZWFyY2hhYmxlLXNlbGVjdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWxpdHknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGltZWxpbmUtZmlsdGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvbWF0ZXJpYWwubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvY29yZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWN0aW9uLXBvcHVwL2FjdGlvbi1wb3B1cC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0YS10YWJsZS9kYXRhLXRhYmxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kb2N1bWVudC12aWV3ZXIvZG9jdW1lbnQtdmlld2VyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnRpdHktZmlsZXMvZW50aXR5LWZpbGVzLXZpZXctYWxsLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWxlLWRyb3BwZXIvZmlsZS1kcm9wcGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub3RlL25vdGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlYXJjaGFibGUtc2VsZWN0b3Ivc2VhcmNoYWJsZS1zZWxlY3Rvci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbGl0eS91dGlsaXR5Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90aW1lbGluZS1maWx0ZXIvdGltZWxpbmUtZmlsdGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2FkZXIvbG9hZGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90ZWNobGlmeS1ub3RpZmljYXRpb25zJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi1yb3V0aW5nLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci1mb3JtL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWZvcm0ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci9lbWFpbC1zdWJzY3JpcHRpb24tdXNlci1mb3JtL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWZvcm0tcm91dGluZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QvZW1haWwtc3Vic2NyaXB0aW9uLXVzZXItbGlzdC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QvZW1haWwtc3Vic2NyaXB0aW9uLXVzZXItbGlzdC1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbWFpbC1zdWJzY3JpcHRpb24vZW1haWwtc3Vic2NyaXB0aW9uLXVzZXIvZW1haWwtc3Vic2NyaXB0aW9uLXVzZXItbGlzdC1maWx0ZXIvZW1haWwtc3Vic2NyaXB0aW9uLXVzZXItbGlzdC1maWx0ZXItcm91dGluZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QtZmlsdGVyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QtZmlsdGVyLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbWFpbC1zdWJzY3JpcHRpb24vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUvZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1mb3JtL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWZvcm0tcm91dGluZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWZvcm0vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtZm9ybS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3QvZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtbGlzdC1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbWFpbC1zdWJzY3JpcHRpb24vZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUvZW1haWwtc3Vic2NyaXB0aW9uLXR5cGUtbGlzdC9lbWFpbC1zdWJzY3JpcHRpb24tdHlwZS1saXN0Lm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXIvZW1haWwtc3Vic2NyaXB0aW9uLWZvci11c2VyLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXIvZW1haWwtc3Vic2NyaXB0aW9uLWZvci11c2VyLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2VtYWlsLXN1YnNjcmlwdGlvbi9lbWFpbC1zdWJzY3JpcHRpb24tZm9yLXVzZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlL2VtYWlsLXN1YnNjcmlwdGlvbi10eXBlLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW1haWwtc3Vic2NyaXB0aW9uL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyL2VtYWlsLXN1YnNjcmlwdGlvbi11c2VyLWxpc3QtZmlsdGVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdXBkYXRlL3RlY2hsaWZ5LXVwZGF0ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdXBkYXRlL3RlY2hsaWZ5LXVwZGF0ZS1oaXN0b3J5L3RlY2hsaWZ5LXVwZGF0ZS1oaXN0b3J5Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90ZWNobGlmeS11cGRhdGUvdXBkYXRlLW5vdGlmaWVyL3VwZGF0ZS1ub3RpZmllci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdXBkYXRlL3VwZGF0ZS1ub3RpZmllci91cGRhdGUtbm90aWZpZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LXVwZGF0ZS90ZWNobGlmeS11cGRhdGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90ZWNobGlmeS11cGRhdGUvdGVjaGxpZnktdXBkYXRlcy10ZWFzZXIvdGVjaGxpZnktdXBkYXRlcy10ZWFzZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LXVwZGF0ZS90ZWNobGlmeS11cGRhdGVzLXRlYXNlci90ZWNobGlmeS11cGRhdGVzLXRlYXNlci5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9leHBvcnQtZXhjZWwvZXhwb3J0LWV4Y2VsLWJ1dHRvbi9leHBvcnQtZXhjZWwtYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9leHBvcnQtZXhjZWwvZXhwb3J0LWV4Y2VsLm1vZHVsZSc7XG5cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1mb3ItbW9kZWwvYXVkaXQtbG9nLWZvci1tb2RlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1mb3ItbW9kZWwvYXVkaXQtbG9nLWZvci1tb2RlbC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1mb3ItbW9kZWwvYXVkaXQtbG9nLWZvci1tb2RlbC1yb3V0aW5nLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1ZGl0LWxvZy9hdWRpdC1sb2ctbGlzdC9hdWRpdC1sb2ctbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1saXN0L2F1ZGl0LWxvZy1saXN0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdWRpdC1sb2cvYXVkaXQtbG9nLWxpc3QvYXVkaXQtbG9nLWxpc3Qtcm91dGluZy5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdWRpdC1sb2cvYXVkaXQtbG9nLWxpc3QtZmlsdGVyL2F1ZGl0LWxvZy1saXN0LWZpbHRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1saXN0LWZpbHRlci9hdWRpdC1sb2ctbGlzdC1maWx0ZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1ZGl0LWxvZy9hdWRpdC1sb2ctbGlzdC1maWx0ZXIvYXVkaXQtbG9nLWxpc3QtZmlsdGVyLXJvdXRpbmcubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy12aWV3L2F1ZGl0LWxvZy12aWV3LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdWRpdC1sb2cvYXVkaXQtbG9nLXZpZXcvYXVkaXQtbG9nLXZpZXcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1ZGl0LWxvZy9hdWRpdC1sb2ctdmlldy9hdWRpdC1sb2ctdmlldy1yb3V0aW5nLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1ZGl0LWxvZy9hdWRpdC1sb2ctdmlldy1tb2RlbC9hdWRpdC1sb2ctdmlldy1tb2RlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy12aWV3LW1vZGVsL2F1ZGl0LWxvZy12aWV3LW1vZGVsLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdWRpdC1sb2cvYXVkaXQtbG9nLXZpZXctbW9kZWwvYXVkaXQtbG9nLXZpZXctbW9kZWwtcm91dGluZy5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hdWRpdC1sb2cvYXVkaXQtbG9ncy12aWV3LW1vZGVsL2F1ZGl0LWxvZ3Mtdmlldy1tb2RlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZ3Mtdmlldy1tb2RlbC9hdWRpdC1sb2dzLXZpZXctbW9kZWwubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1ZGl0LWxvZy9hdWRpdC1sb2dzLXZpZXctbW9kZWwvYXVkaXQtbG9ncy12aWV3LW1vZGVsLXJvdXRpbmcubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXVkaXQtbG9nL2F1ZGl0LWxvZy1yb3V0aW5nLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtdmFsaWRhdG9yJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW1wb3J0LWNzdi9pbXBvcnQtY3N2Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbXBvcnQtY3N2L2ltcG9ydC1jc3YuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ltcG9ydC1jc3YvaW1wb3J0LWNzdi1jb25maWcnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2dpbi1oaXN0b3J5LWZvci11c2VyL2xvZ2luLWhpc3RvcnktZm9yLXVzZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvZ2luLWhpc3RvcnktZm9yLXVzZXIvbG9naW4taGlzdG9yeS1mb3ItdXNlci1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2dpbi1oaXN0b3J5LWZvci11c2VyL2xvZ2luLWhpc3RvcnktZm9yLXVzZXIuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdGFnZ2VyLXRhZy1mb3JtLWZpZWxkL3RlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1jb25maWcubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdGFnZ2VyLXRhZy1mb3JtLWZpZWxkL3RlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktdGFnZ2VyLXRhZy1mb3JtLWZpZWxkL3RlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1maWVsZC5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi90ZWNobGlmeS10YWdnZXItdGFnLXNlbGVjdG9yL3RlY2hsaWZ5LXRhZ2dlci10YWctc2VsZWN0b3IubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LXRhZ2dlci10YWctc2VsZWN0b3IvdGVjaGxpZnktdGFnZ2VyLXRhZy1zZWxlY3Rvci5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9yZWFkLW1vcmUvcmVhZC1tb3JlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9yZWFkLW1vcmUvcmVhZC1tb3JlLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LWZlYXR1cmUvdGVjaGxpZnktZmVhdHVyZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktZmVhdHVyZS90ZWNobGlmeS1mZWF0dXJlLnJvdXRpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVjaGxpZnktZmVhdHVyZS90ZWNobGlmeS1mZWF0dXJlLWxpc3RpbmcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LWZlYXR1cmUvdGVjaGxpZnktZmVhdHVyZS1lbmFibGVkLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3JlcXVlc3QtaGVscGVyL3JlcXVlc3QtaGVscGVyLnNlcnZpY2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3Jnb3QtcGFzc3dvcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbG9naW4nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJvZmlsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9yb2xlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NpZ251cCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyLWNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyLXNlbGVjdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGEtdGFibGUvZGF0YS10YWJsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0YS10YWJsZS9kYXRhLXRhYmxlLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VzZXIvdXNlci1lbmFibGUtYnV0dG9uLWNvbXBvbmVudC91c2VyLWVuYWJsZS1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VzZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9yZ290LXBhc3N3b3JkL2ZvcmdvdC1wYXNzd29yZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbG9naW4vbG9naW4ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Byb2ZpbGUvcHJvZmlsZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcm9sZS9yb2xlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9yb2xlL3Blcm1pc3Npb24vcGVybWlzc2lvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2lnbnVwL3NpZ251cC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXNlci1zZWxlY3Rvci91c2VyLXNlbGVjdG9yLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91c2VyL3VzZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjY2Vzcy1jb250cm9sLWNvbmZpZy9hY2Nlc3MtY29udHJvbC1jb25maWcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25neC10ZWNobGlmeS11c2Vycy9uZ3gtdGVjaGxpZnktdXNlcnMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jlc3RyaWN0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RlY2hsaWZ5LWNvbXBhbnktc3dpdGNoZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWxlLWRyYWdkcm9wLXVwbG9hZGVyL2ZpbGUtZHJhZ2Ryb3AtdXBsb2FkZXIvZmlsZS1kcmFnZHJvcC11cGxvYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZmlsZS1kcmFnZHJvcC11cGxvYWRlci9maWxlLWRyYWdkcm9wLXVwbG9hZGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9udW1iZXItaW5wdXQtYnV0dG9uJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbHVtbi1zZWxlY3Rvcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jlc2V0LXBhc3N3b3JkJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jlc2V0LXBhc3N3b3JkL3Jlc2V0LXBhc3N3b3JkLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBhbnktaW5mb3JtYXRpb24vY29tcGFueS1pbmZvcm1hdGlvbi9jb21wYW55LWluZm9ybWF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wYW55LWluZm9ybWF0aW9uL2NvbXBhbnktaW5mby1kaXNwbGF5L2NvbXBhbnktaW5mby1kaXNwbGF5LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wYW55LWluZm9ybWF0aW9uL2NsaWVudC5zZXJ2aWNlJztcbiJdfQ==