{"__symbolic":"module","version":4,"metadata":{"MaterialModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":57,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/material/stepper","name":"MatStepperModule","line":31,"character":2},{"__symbolic":"reference","module":"@angular/material/slide-toggle","name":"MatSlideToggleModule","line":32,"character":2},{"__symbolic":"reference","module":"@angular/material/expansion","name":"MatExpansionModule","line":33,"character":2},{"__symbolic":"reference","module":"@angular/material/datepicker","name":"MatDatepickerModule","line":34,"character":2},{"__symbolic":"reference","module":"@angular/material-moment-adapter","name":"MatMomentDateModule","line":35,"character":2},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":36,"character":2},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":37,"character":2},{"__symbolic":"reference","module":"@angular/material/select","name":"MatSelectModule","line":38,"character":2},{"__symbolic":"reference","module":"@angular/material/autocomplete","name":"MatAutocompleteModule","line":39,"character":2},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":40,"character":2},{"__symbolic":"reference","module":"@angular/material/grid-list","name":"MatGridListModule","line":41,"character":2},{"__symbolic":"reference","module":"@angular/material/checkbox","name":"MatCheckboxModule","line":42,"character":2},{"__symbolic":"reference","module":"@angular/material/table","name":"MatTableModule","line":43,"character":2},{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginatorModule","line":44,"character":2},{"__symbolic":"reference","module":"@angular/material/sort","name":"MatSortModule","line":45,"character":2},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":46,"character":2},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogModule","line":47,"character":2},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":48,"character":2},{"__symbolic":"reference","module":"@angular/material/progress-spinner","name":"MatProgressSpinnerModule","line":49,"character":2},{"__symbolic":"reference","module":"@angular/material/radio","name":"MatRadioModule","line":50,"character":2},{"__symbolic":"reference","module":"@angular/material/card","name":"MatCardModule","line":51,"character":2},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":52,"character":2},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":53,"character":2},{"__symbolic":"reference","module":"@angular/material/chips","name":"MatChipsModule","line":54,"character":2}],"exports":[{"__symbolic":"reference","module":"@angular/material/stepper","name":"MatStepperModule","line":31,"character":2},{"__symbolic":"reference","module":"@angular/material/slide-toggle","name":"MatSlideToggleModule","line":32,"character":2},{"__symbolic":"reference","module":"@angular/material/expansion","name":"MatExpansionModule","line":33,"character":2},{"__symbolic":"reference","module":"@angular/material/datepicker","name":"MatDatepickerModule","line":34,"character":2},{"__symbolic":"reference","module":"@angular/material-moment-adapter","name":"MatMomentDateModule","line":35,"character":2},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":36,"character":2},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":37,"character":2},{"__symbolic":"reference","module":"@angular/material/select","name":"MatSelectModule","line":38,"character":2},{"__symbolic":"reference","module":"@angular/material/autocomplete","name":"MatAutocompleteModule","line":39,"character":2},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":40,"character":2},{"__symbolic":"reference","module":"@angular/material/grid-list","name":"MatGridListModule","line":41,"character":2},{"__symbolic":"reference","module":"@angular/material/checkbox","name":"MatCheckboxModule","line":42,"character":2},{"__symbolic":"reference","module":"@angular/material/table","name":"MatTableModule","line":43,"character":2},{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginatorModule","line":44,"character":2},{"__symbolic":"reference","module":"@angular/material/sort","name":"MatSortModule","line":45,"character":2},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":46,"character":2},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogModule","line":47,"character":2},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":48,"character":2},{"__symbolic":"reference","module":"@angular/material/progress-spinner","name":"MatProgressSpinnerModule","line":49,"character":2},{"__symbolic":"reference","module":"@angular/material/radio","name":"MatRadioModule","line":50,"character":2},{"__symbolic":"reference","module":"@angular/material/card","name":"MatCardModule","line":51,"character":2},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":52,"character":2},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":53,"character":2},{"__symbolic":"reference","module":"@angular/material/chips","name":"MatChipsModule","line":54,"character":2}],"providers":[{"provide":{"__symbolic":"reference","module":"@angular/material/core","name":"MAT_DATE_LOCALE","line":61,"character":15},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"navigator"},"member":"language"}},{"provide":{"__symbolic":"reference","module":"@angular/material/core","name":"DateAdapter","line":62,"character":15},"useClass":{"__symbolic":"reference","module":"@angular/material-moment-adapter","name":"MomentDateAdapter","line":62,"character":38},"deps":[{"__symbolic":"reference","module":"@angular/material/core","name":"MAT_DATE_LOCALE","line":62,"character":64},{"__symbolic":"reference","module":"@angular/material-moment-adapter","name":"MAT_MOMENT_DATE_ADAPTER_OPTIONS","line":62,"character":81}]},{"provide":{"__symbolic":"reference","module":"@angular/material-moment-adapter","name":"MAT_MOMENT_DATE_ADAPTER_OPTIONS","line":63,"character":15},"useValue":{"useUtc":true}},{"provide":{"__symbolic":"reference","module":"@angular/material/form-field","name":"MAT_FORM_FIELD_DEFAULT_OPTIONS","line":64,"character":15},"useValue":{"appearance":"outline","hideRequiredMarker":false}}]}]}],"members":{}},"FormMaterialComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"selector":"dr-form-material","template":"\r\n<div class=\"w-100 h-50\" *ngIf=\"showSpinner\">\r\n    <div class=\"spinner-absolute-container\">\r\n        <div class=\"spinner-absolute\">\r\n            <mat-spinner class=\"mx-auto\"></mat-spinner>\r\n        </div>\r\n    </div>\r\n</div>\r\n\r\n<div class=\"w-100 h-50\" *ngIf=\"errorMessage\">\r\n    <div class=\"spinner-absolute-container\">\r\n        <div class=\"spinner-absolute text-danger h3\" [innerHTML]=\"errorMessage\">\r\n        </div>\r\n    </div>\r\n</div>\r\n\r\n<div *ngIf=\"showForm && !errorMessage\" [hidden]=\"showSpinner\">\r\n\r\n    <h3>{{jsonCustomForm.title}}</h3>\r\n\r\n    <form [formGroup]=\"customForm\" (ngSubmit)=\"matSubmit()\">\r\n\r\n        <mat-horizontal-stepper #stepper labelPosition=\"bottom\" linear (selectionChange)=\"changeStep($event)\"\r\n            [selectedIndex]=\"selectedIndexStep\" [ngClass]=\"{\r\n                'mat-stepper-hidden': (!jsonCustomForm.showStepper) || (jsonCustomForm.pages.length <= 1),\r\n                'mat-stepper-slider': matStepperSlider,\r\n                'mat-stepper-tab': jsonCustomForm.stepperStyle === 'TABS'\r\n            }\">\r\n\r\n            <mat-step *ngFor=\"let page of jsonCustomForm.pages\"\r\n                [completed]=\"(jsonCustomForm.buttonNextAlwaysEnabled) || getValidPage(page)\">\r\n\r\n                <ng-template matStepLabel>\r\n                    <div [ngClass]=\"{'mat-step-warning': !jsonCustomForm.readonly && !getValidPage(page)}\">\r\n                        {{page.title}}\r\n                    </div>\r\n                </ng-template>\r\n\r\n                <div *ngIf=\"!matStepperSlider\">\r\n                    <ng-container *ngTemplateOutlet=\"_page; context: {$implicit: page}\"></ng-container>\r\n                </div>\r\n\r\n            </mat-step>\r\n\r\n        </mat-horizontal-stepper>\r\n\r\n        <div class=\"page-label\" fxLayout=\"row\" *ngIf=\"jsonCustomForm.positionPageLabel && jsonCustomForm.positionPageLabel.split(' ')[1] === 'TOP' && jsonCustomForm.pages.length > 1\"\r\n          [fxLayoutAlign]=\"(jsonCustomForm.positionPageLabel.split(' ')[0] | lowercase) + ' center'\">\r\n          {{selectedIndexStep + 1}} / {{jsonCustomForm.pages.length}}\r\n        </div>\r\n\r\n        <div *ngIf=\"matStepperSlider\">\r\n            <ng-container *ngTemplateOutlet=\"_page; context: { $implicit: jsonCustomForm.pages[selectedIndexStep] }\">\r\n            </ng-container>\r\n        </div>\r\n\r\n        <ng-template #_page let-page>\r\n\r\n            <fieldset>\r\n\r\n                <legend>{{page.title}}</legend>\r\n\r\n                <fieldset *ngFor=\"let section of page.sections\" class=\"p-3\"\r\n                    [ngClass]=\"{'error': !!getSectionError(section)}\">\r\n\r\n                    <div *ngIf=\"!getSectionHidden(section.hidden)\">\r\n\r\n                        <legend class=\"ml-3\">{{section.title}}</legend>\r\n\r\n                        <div *ngFor=\"let row of section.rows\" [ngClass]=\"row.class\" fxLayout=\"row wrap\" fxFlexFill\r\n                            fxLayout.lt-sm=\"column\" fxLayoutAlign=\"space-between stretch\">\r\n\r\n                            <div *ngFor=\"let cell of row.cells\" class=\"my-auto px-2\" ngClass.lt-sm=\"px-0\"\r\n                                [fxFlex]=\"(100 / (row.rowSize||getSum(row.cells,'cellSize'))) * (cell.cellSize||1)\"\r\n                                [fxFlex.md]=\"(100 / (getSum(row.cells,'cellSize')) * (cell.cellSize||1))\"\r\n                                [fxFlex.sm]=\"100 / row.cells.length\" [fxFlex.xs]=\"100\"\r\n                                [hidden]=\"getHiddenExpressions(cell.hidden)\">\r\n\r\n                                <div [ngSwitch]=\"cell.type | uppercase\" class=\"w-100\" ngClass.lt-md=\"text-center\">\r\n\r\n                                    <mat-form-field *ngSwitchCase=\"'TEXT'\"\r\n                                        [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                        [appearance]=\"(cell.fieldAppearance || jsonCustomForm.formAppearance) | lowercase\">\r\n                                        <mat-label>{{cell.label}}</mat-label>\r\n                                        <input matInput [formControlName]=\"cell.controlName\"\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\"\r\n                                            [placeholder]=\"cell.placeholder || null\" [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\"\r\n                                            [matTooltip]=\"cell.tooltip\" [attr.minLength]=\"cell.min || null\"\r\n                                            [attr.maxLength]=\"cell.max || null\">\r\n                                        <mat-hint *ngIf=\"!!cell.max\" align=\"end\">\r\n                                            {{customForm.get(cell.controlName)?.value?.length || 0}} / {{cell.max}}\r\n                                        </mat-hint>\r\n                                            <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                            <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                        <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                            {{ getFieldError(cell) }}</mat-error>\r\n                                    </mat-form-field>\r\n\r\n                                    <mat-form-field *ngSwitchCase=\"'PASSWORD'\"\r\n                                        [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                        [appearance]=\"(cell.fieldAppearance || jsonCustomForm.formAppearance) | lowercase\">\r\n                                        <mat-label>{{cell.label}}</mat-label>\r\n                                        <input matInput [formControlName]=\"cell.controlName\"\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\"\r\n                                            [placeholder]=\"cell.placeholder || null\" [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\"\r\n                                            [matTooltip]=\"cell.tooltip\" [attr.minLength]=\"cell.min || null\"\r\n                                            [attr.maxLength]=\"cell.max || null\" type=\"password\">\r\n                                        <mat-hint *ngIf=\"!!cell.max\" align=\"end\">\r\n                                            {{customForm.get(cell.controlName)?.value?.length || 0}} / {{cell.max}}\r\n                                        </mat-hint>\r\n                                            <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                            <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                        <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                            {{ getFieldError(cell) }}</mat-error>\r\n                                    </mat-form-field>\r\n\r\n                                    <mat-form-field *ngSwitchCase=\"'AMOUNT'\"\r\n                                        [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                        [appearance]=\"(cell.fieldAppearance || jsonCustomForm.formAppearance) | lowercase\">\r\n                                        <mat-label>{{cell.label}}</mat-label>\r\n                                        <input matInput [drAmount]=\"jsonCustomForm.language\" [formControlName]=\"cell.controlName\"\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\"\r\n                                            [placeholder]=\"cell.placeholder || null\" [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\"\r\n                                            [matTooltip]=\"cell.tooltip\" [attr.minLength]=\"cell.min || null\"\r\n                                            [attr.maxLength]=\"cell.max || null\">\r\n                                        <mat-hint *ngIf=\"!!cell.max\" align=\"end\">\r\n                                            {{customForm.get(cell.controlName)?.value?.length || 0}} / {{cell.max}}\r\n                                        </mat-hint>\r\n                                            <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                            <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                        <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                            {{ getFieldError(cell) }}</mat-error>\r\n                                    </mat-form-field>\r\n\r\n                                    <mat-form-field *ngSwitchCase=\"'NUMBER'\"\r\n                                        [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                        [appearance]=\"(cell.fieldAppearance || jsonCustomForm.formAppearance) | lowercase\">\r\n                                        <mat-label>{{cell.label}}</mat-label>\r\n                                        <input matInput type=\"number\" [formControlName]=\"cell.controlName\"\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\"\r\n                                            [placeholder]=\"cell.placeholder || null\" [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\"\r\n                                            [matTooltip]=\"cell.tooltip\" [attr.min]=\"cell.min || null\"\r\n                                            [attr.max]=\"cell.max || null\">\r\n                                                <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                                <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                        <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                            {{ getFieldError(cell) }}</mat-error>\r\n                                    </mat-form-field>\r\n\r\n                                    <mat-form-field *ngSwitchCase=\"'TEXTAREA'\"\r\n                                        [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                        [appearance]=\"(cell.fieldAppearance || jsonCustomForm.formAppearance) | lowercase\">\r\n                                        <mat-label>{{cell.label}}</mat-label>\r\n                                        <textarea matInput [formControlName]=\"cell.controlName\" rows=\"1\"\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\"\r\n                                            [placeholder]=\"cell.placeholder || null\" [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\"\r\n                                            [matTooltip]=\"cell.tooltip\" [attr.minLength]=\"cell.min || null\"\r\n                                            [attr.maxLength]=\"cell.max || null\"></textarea>\r\n                                        <mat-hint *ngIf=\"!!cell.max\" align=\"end\">\r\n                                            {{customForm.get(cell.controlName)?.value?.length || 0}} / {{cell.max}}\r\n                                        </mat-hint>\r\n                                            <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                            <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                        <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                            {{ getFieldError(cell) }}</mat-error>\r\n                                    </mat-form-field>\r\n\r\n                                    <!-- <mat-label class=\"mb-4\" *ngSwitchCase=\"'CHECKBOX'\">{{cell.label}}<br>\r\n                                <mat-checkbox [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n\r\n                             [formControlName]=\"cell.controlName\" labelPosition=\"before\"\r\n                                    [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\" [matTooltip]=\"cell.tooltip\">\r\n                                </mat-checkbox>\r\n                            </mat-label> -->\r\n\r\n                                    <div *ngSwitchCase=\"'RADIO'\">\r\n                                        <mat-label>{{cell.label}}<br>\r\n                                        <mat-radio-group [formControlName]=\"cell.controlName\"\r\n                                            [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\"\r\n                                            [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\" [matTooltip]=\"cell.tooltip\">\r\n                                            <mat-radio-button class=\"mr-3\" *ngFor=\"let option of cell.observe | async\"\r\n                                                [value]=\"!!cell.valueName ? getProperty(option, cell.valueName) : option\">\r\n                                                {{!!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}}\r\n                                            </mat-radio-button>\r\n                                            <mat-radio-button class=\"mr-3\" *ngFor=\"let option of (cell.options || [])\"\r\n                                                [value]=\"!!cell.valueName ? getProperty(option, cell.valueName) : option\">\r\n                                                {{!!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}}\r\n                                            </mat-radio-button>\r\n                                        </mat-radio-group>\r\n                                    </mat-label>\r\n                                    </div>\r\n\r\n                                    <div *ngSwitchCase=\"'CHECKBOX'\">\r\n                                        <mat-label>\r\n                                            <mat-checkbox\r\n                                                [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                                [formControlName]=\"cell.controlName\" labelPosition=\"after\"\r\n                                                [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\" [matTooltip]=\"cell.tooltip\"\r\n                                                >\r\n                                                {{cell.label}}\r\n                                            </mat-checkbox>\r\n                                        </mat-label>\r\n                                    </div>\r\n\r\n                                    <div *ngSwitchCase=\"'FILE'\">\r\n                                        <mat-label>\r\n                                            <div class=\"file-height\">\r\n                                                <file-upload [formControlName]=\"cell.controlName\" multiple=\"true\"\r\n                                                    [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\" animation=\"true\">\r\n                                                    <div file-drop-zone *ngIf=\"cell.placeholder\">\r\n                                                        <ng-template #placeholder>\r\n                                                            <svg height=\"4rem\" viewBox=\"0 0 96 96\">\r\n                                                                <path\r\n                                                                    d=\"M62.8,68.1c0-0.6-0.2-1.1-0.6-1.5c-0.4-0.4-0.9-0.6-1.5-0.6s-1.1,0.2-1.5,0.6c-0.4,0.4-0.6,0.9-0.6,1.5c0,0.6,0.2,1.1,0.6,1.5c0.4,0.4,0.9,0.6,1.5,0.6s1.1-0.2,1.5-0.6S62.8,68.7,62.8,68.1z M71.3,68.1c0-0.6-0.2-1.1-0.6-1.5c-0.4-0.4-0.9-0.6-1.5-0.6c-0.6,0-1.1,0.2-1.5,0.6C67.2,67,67,67.5,67,68.1c0,0.6,0.2,1.1,0.6,1.5s0.9,0.6,1.5,0.6c0.6,0,1.1-0.2,1.5-0.6C71.1,69.2,71.3,68.7,71.3,68.1z M75.5,60.7v10.6c0,0.9-0.3,1.6-0.9,2.2c-0.6,0.6-1.4,0.9-2.2,0.9H23.7c-0.9,0-1.6-0.3-2.2-0.9c-0.6-0.6-0.9-1.4-0.9-2.2V60.7c0-0.9,0.3-1.6,0.9-2.2c0.6-0.6,1.4-0.9,2.2-0.9h14.1c0.5,1.2,1.2,2.2,2.3,3c1.1,0.8,2.3,1.2,3.7,1.2h8.5c1.3,0,2.6-0.4,3.7-1.2c1.1-0.8,1.9-1.8,2.3-3h14.1c0.9,0,1.6,0.3,2.2,0.9C75.2,59.1,75.5,59.8,75.5,60.7z M64.8,39.3c-0.4,0.9-1,1.3-2,1.3h-8.5v14.8c0,0.6-0.2,1.1-0.6,1.5c-0.4,0.4-0.9,0.6-1.5,0.6h-8.5c-0.6,0-1.1-0.2-1.5-0.6c-0.4-0.4-0.6-0.9-0.6-1.5V40.6h-8.5c-0.9,0-1.6-0.4-2-1.3c-0.4-0.9-0.2-1.6,0.5-2.3l14.8-14.8c0.4-0.4,0.9-0.6,1.5-0.6s1.1,0.2,1.5,0.6L64.3,37C65,37.7,65.1,38.4,64.8,39.3z\">\r\n                                                                </path>\r\n                                                            </svg>\r\n                                                            <svg *ngIf=\"false\" viewBox=\"0 0 50 43\">\r\n                                                                <path\r\n                                                                    d=\"M48.4 26.5c-.9 0-1.7.7-1.7 1.7v11.6h-43.3v-11.6c0-.9-.7-1.7-1.7-1.7s-1.7.7-1.7 1.7v13.2c0 .9.7 1.7 1.7 1.7h46.7c.9 0 1.7-.7 1.7-1.7v-13.2c0-1-.7-1.7-1.7-1.7zm-24.5 6.1c.3.3.8.5 1.2.5.4 0 .9-.2 1.2-.5l10-11.6c.7-.7.7-1.7 0-2.4s-1.7-.7-2.4 0l-7.1 8.3v-25.3c0-.9-.7-1.7-1.7-1.7s-1.7.7-1.7 1.7v25.3l-7.1-8.3c-.7-.7-1.7-.7-2.4 0s-.7 1.7 0 2.4l10 11.6z\">\r\n                                                                </path>\r\n                                                            </svg>\r\n                                                            <p> {{cell.placeholder}} </p>\r\n                                                        </ng-template>\r\n                                                    </div>\r\n                                                </file-upload>\r\n                                            </div>\r\n                                                <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                                <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                            <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                                {{ getFieldError(cell) }}</mat-error>\r\n                                        </mat-label>\r\n                                    </div>\r\n\r\n                                    <mat-form-field *ngSwitchCase=\"'DATE'\"\r\n                                        [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                        [appearance]=\"(cell.fieldAppearance || jsonCustomForm.formAppearance) | lowercase\">\r\n                                        <mat-label>{{cell.label}}</mat-label>\r\n                                        <input matInput [matDatepicker]=\"Dp\" [formControlName]=\"cell.controlName\"\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\"\r\n                                            [placeholder]=\"cell.placeholder || null\" [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\"\r\n                                            [matTooltip]=\"cell.tooltip\" [attr.min]=\"cell.min || null\"\r\n                                            [attr.max]=\"cell.max || null\" readonly>\r\n                                        <mat-datepicker-toggle matSuffix [for]=\"Dp\"></mat-datepicker-toggle>\r\n                                        <mat-datepicker #Dp></mat-datepicker>\r\n                                            <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                            <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                        <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                            {{ getFieldError(cell) }}</mat-error>\r\n                                    </mat-form-field>\r\n\r\n                                    <mat-form-field *ngSwitchCase=\"'DATETIME'\"\r\n                                        [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                        [appearance]=\"(cell.fieldAppearance || jsonCustomForm.formAppearance) | lowercase\">\r\n                                        <mat-label>{{cell.label}}</mat-label>\r\n                                        <input matInput [matDatepicker]=\"Dp\" [formControlName]=\"cell.controlName\"\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\"\r\n                                            [placeholder]=\"cell.placeholder || null\" [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\"\r\n                                            [matTooltip]=\"cell.tooltip\" [attr.min]=\"cell.min || null\"\r\n                                            [attr.max]=\"cell.max || null\" readonly>\r\n                                        <mat-datepicker-toggle matSuffix [for]=\"Dp\"></mat-datepicker-toggle>\r\n                                        <mat-datepicker #Dp></mat-datepicker>\r\n                                            <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                            <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                        <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                            {{ getFieldError(cell) }}</mat-error>\r\n                                    </mat-form-field>\r\n\r\n                                    <mat-form-field *ngSwitchCase=\"'SELECT'\"\r\n                                        [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                        [appearance]=\"(cell.fieldAppearance || jsonCustomForm.formAppearance) | lowercase\">\r\n                                        <mat-label>{{cell.label}}</mat-label>\r\n                                        <mat-select [formControlName]=\"cell.controlName\"\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\"\r\n                                            [placeholder]=\"cell.placeholder || null\" [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\"\r\n                                            [matTooltip]=\"cell.tooltip\" [attr.minLength]=\"cell.min || null\"\r\n                                            [attr.maxLength]=\"cell.max || null\">\r\n                                            <mat-option *ngFor=\"let option of cell.observe | async\"\r\n                                                [value]=\"!!cell.valueName ? getProperty(option, cell.valueName) : option\">\r\n                                                {{!!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}}\r\n                                            </mat-option>\r\n                                            <mat-option *ngFor=\"let option of (cell.options || [])\"\r\n                                                [value]=\"!!cell.valueName ? getProperty(option, cell.valueName) : option\">\r\n                                                {{!!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}}\r\n                                            </mat-option>\r\n                                        </mat-select>\r\n                                        <mat-hint *ngIf=\"!!cell.max\" align=\"end\">\r\n                                            {{customForm.get(cell.controlName)?.value?.length || 0}} / {{cell.max}}\r\n                                        </mat-hint>\r\n                                            <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                            <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                        <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                            {{ getFieldError(cell) }}</mat-error>\r\n                                    </mat-form-field>\r\n\r\n                                    <mat-form-field *ngSwitchCase=\"'AUTOCOMPLETE'\"\r\n                                        [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                        [appearance]=\"(cell.fieldAppearance || jsonCustomForm.formAppearance) | lowercase\">\r\n                                        <mat-label>{{cell.label}}</mat-label>\r\n                                        <input matInput [formControlName]=\"cell.controlName\"\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\"\r\n                                            [placeholder]=\"cell.placeholder || null\" [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\"\r\n                                            [matTooltip]=\"cell.tooltip\" [attr.minLength]=\"cell.min || null\"\r\n                                            [attr.maxLength]=\"cell.max || null\" [matAutocomplete]=\"autoc\">\r\n                                        <mat-autocomplete autoActiveFirstOption #autoc=\"matAutocomplete\"\r\n                                            [displayWith]=\"fnDisplayAutocomplete.bind(this)\">\r\n                                            <mat-option *ngFor=\"let option of cell.observe | async\"\r\n                                                [value]=\"{autocompleteValue: !!cell.valueName ? getProperty(option, cell.valueName) : option, display: !!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}\">\r\n                                                {{option}}\r\n                                            </mat-option>\r\n                                            <mat-option *ngFor=\"let option of (cell.options || [])\"\r\n                                                [value]=\"{autocompleteValue: !!cell.valueName ? getProperty(option, cell.valueName) : option, display: !!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}\">\r\n                                                {{!!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}}\r\n                                            </mat-option>\r\n                                        </mat-autocomplete>\r\n                                        <mat-hint *ngIf=\"!!cell.max\" align=\"end\">\r\n                                            {{customForm.get(cell.controlName)?.value?.length || 0}} / {{cell.max}}\r\n                                        </mat-hint>\r\n                                            <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                            <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                        <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                            {{ getFieldError(cell) }}</mat-error>\r\n                                    </mat-form-field>\r\n\r\n                                    <mat-form-field *ngSwitchCase=\"'CHIPS'\"\r\n                                        [color]=\"((cell.fieldColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                        [appearance]=\"(cell.fieldAppearance || jsonCustomForm.formAppearance) | lowercase\">\r\n                                        <mat-label>{{cell.label}}</mat-label>\r\n\r\n                                        <mat-chip-list #chipList [formControlName]=\"cell.controlName\">\r\n                                          <mat-chip *ngFor=\"let chip of jsonValues[jsonControls[cell.controlName]]; let last = last\"\r\n                                            (removed)=\"removeChip(cell.controlName, chip)\">\r\n\r\n                                              <!-- {{chip?.display || chip}} -->\r\n                                              <!-- {{!!cell.descriptionName && !chip?.display ? getProperty(find(cell.options, cell.valueName, chip), cell.descriptionName) : chip?.display || chip}} -->\r\n\r\n                                              <div *ngIf=\"cell.observe | async; let options; else _options\">\r\n                                                {{(!!cell.descriptionName && !chip?.display ? getProperty(getLabelChip(options, cell.options, cell.valueName, chip), cell.descriptionName) : chip?.display || chip) || chip?.display || chip}}\r\n                                              </div>\r\n                                              <ng-template #_options>\r\n                                                {{(!!cell.descriptionName && !chip?.display ? getProperty(getLabelChip([], cell.options, cell.valueName, chip), cell.descriptionName) : chip?.display || chip) || chip?.display || chip}}\r\n                                              </ng-template>\r\n\r\n                                            <mat-icon matChipRemove>cancel</mat-icon>\r\n                                          </mat-chip>\r\n                                          <input matInput [placeholder]=\"cell.placeholder || null\"\r\n                                            #chip_input\r\n                                            [required]=\"!!(customForm.controls[cell.controlName].errors||{}).required\" [matTooltip]=\"cell.tooltip\"\r\n                                            [attr.minLength]=\"cell.min || null\" [attr.maxLength]=\"cell.max || null\" [matChipInputFor]=\"chipList\"\r\n                                            [matAutocomplete]=\"chips\"\r\n                                            [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\"\r\n                                            (matChipInputTokenEnd)=\"addChip(cell.controlName, $event, cell)\"\r\n                                            (keypress.backspace)=\"removeChip(cell.controlName, last)\"\r\n                                            (focusout)=\"addChip(cell.controlName, $event, cell)\"\r\n                                            >\r\n                                        </mat-chip-list>\r\n\r\n                                        <mat-autocomplete [displayWith]=\"fnDisplayChip.bind(this)\"\r\n                                          #chips=\"matAutocomplete\" (optionSelected)=\"selectedChip(cell.controlName, $event)\">\r\n                                            <mat-label class=\"ml-3\" *ngIf=\"cell.can_add && chip_input.value\">\r\n\r\n                                              <span [hidden]=\"!(!!cell.valueName && !!cell.descriptionName)\">\r\n                                                label: <b>{{chip_input.value}}</b> -\r\n                                                value: <input type=\"text\" #add_chip_value> -\r\n                                                <button mat-mini-fab type=\"button\" color=\"primary\"\r\n                                                  (click)=\"addChipToList(add_chip_value.value, chip_input.value, cell, chip_input);\"\r\n                                                  [matTooltip]=\"!add_chip_value.value ? 'Add value' : null\" [disabled]=\"!add_chip_value.value\">\r\n                                                  <mat-icon>add</mat-icon>\r\n                                                </button>\r\n                                              </span>\r\n\r\n                                              <span [hidden]=\"!!(!!cell.valueName && !!cell.descriptionName)\">\r\n                                                label: <b>{{chip_input.value}}</b> -\r\n                                                <button mat-mini-fab type=\"button\" color=\"primary\"\r\n                                                  (click)=\"addChipToList(null, chip_input.value, cell, chip_input);\">\r\n                                                  <mat-icon>add</mat-icon>\r\n                                                </button>\r\n                                              </span>\r\n\r\n                                            </mat-label>\r\n                                          <mat-option *ngFor=\"let option of cell.observe | async\"\r\n                                              [value]=\"{autocompleteValue: !!cell.valueName ? getProperty(option, cell.valueName) : option, display: !!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}\"\r\n                                              [hidden]=\"jsonValues[jsonControls[cell.controlName]].includes(getProperty(option, cell.valueName))\"\r\n                                            > {{!!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}}\r\n                                          </mat-option>\r\n                                          <mat-option *ngFor=\"let option of (cell.options || [])\"\r\n                                              [value]=\"{autocompleteValue: !!cell.valueName ? getProperty(option, cell.valueName) : option, display: !!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}\"\r\n                                              [hidden]=\"jsonValues[jsonControls[cell.controlName]].includes(getProperty(option, cell.valueName))\"\r\n                                            > {{!!cell.descriptionName ? getProperty(option, cell.descriptionName) : option}}\r\n                                          </mat-option>\r\n                                        </mat-autocomplete>\r\n                                        <mat-hint *ngIf=\"!!cell.max\" align=\"end\">\r\n                                          {{customForm.get(cell.controlName)?.value?.length || 0}} / {{cell.max}}\r\n                                        </mat-hint>\r\n                                          <span matPrefix *ngIf=\"!!cell.prefix\" class=\"mr-1\">{{cell.prefix}}</span>\r\n                                          <span matSuffix *ngIf=\"!!cell.suffix\" class=\"ml-1\">{{cell.suffix}}</span>\r\n                                        <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                          {{ getFieldError(cell) }}</mat-error>\r\n                                    </mat-form-field>\r\n\r\n                                    <div *ngSwitchCase=\"'LINK'\">\r\n                                        <!-- <a #a [attr.href]=\"cell.link\" [target]=\"cell.newPage ? '_blank' : null\" hidden></a> -->\r\n                                        <button mat-button *ngIf=\"!jsonCustomForm.readonly\"\r\n                                            [class.mat-button]=\"(cell.buttonStyle==='BASIC') || (jsonCustomForm.buttonStyle==='BASIC') || !jsonCustomForm.buttonStyle\"\r\n                                            [class.mat-raised-button]=\"(cell.buttonStyle==='RAISED') || (jsonCustomForm.buttonStyle==='RAISED')\"\r\n                                            [class.mat-stroked-button]=\"(cell.buttonStyle==='STROKED') || (jsonCustomForm.buttonStyle==='STROKED')\"\r\n                                            [class.mat-flat-button]=\"(cell.buttonStyle==='FLAT') || (jsonCustomForm.buttonStyle==='FLAT')\"\r\n                                            [color]=\"((cell.buttonColor || jsonCustomForm.buttonColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                                            [disabled]=\"getDisabledExpressions(cell.disabled) || jsonCustomForm.readonly\"\r\n                                            type=\"button\" (click)=\"fnClickEvent(cell)\">\r\n                                            {{cell.label}}</button>\r\n                                    </div>\r\n\r\n                                    <div *ngSwitchCase=\"'INFO'\">\r\n                                      <mat-card>\r\n                                        <mat-card-header> Info </mat-card-header>\r\n                                        <mat-card-content>\r\n                                          <input type=\"hidden\" [formControlName]=\"cell.controlName\" [(ngModel)]=\"jsonValues[jsonControls[cell.controlName]]\">\r\n                                          <p [innerHTML]=\"createPanel(cell.template) | drsafe : html\"></p>\r\n                                        </mat-card-content>\r\n                                      </mat-card>\r\n                                   </div>\r\n\r\n                                    <div *ngSwitchCase=\"'HIDDEN'\">\r\n                                      <mat-error *ngIf=\"customForm.controls[cell.controlName].invalid\">\r\n                                        {{ getFieldError(cell) }}\r\n                                      </mat-error>\r\n                                    </div>\r\n\r\n                                </div>\r\n\r\n                            </div>\r\n\r\n                        </div>\r\n\r\n                        <p class=\"ml-2 section-error\">\r\n                            <mat-error>{{ getSectionError(section) }}</mat-error>\r\n                        </p>\r\n\r\n                    </div>\r\n\r\n                </fieldset>\r\n\r\n            </fieldset>\r\n\r\n        </ng-template>\r\n\r\n        <div class=\"page-label\" fxLayout=\"row\" *ngIf=\"jsonCustomForm.positionPageLabel && jsonCustomForm.positionPageLabel.split(' ')[1] === 'BOTTOM' && jsonCustomForm.pages.length > 1\"\r\n          [fxLayoutAlign]=\"(jsonCustomForm.positionPageLabel.split(' ')[0] | lowercase) + ' center'\">\r\n          {{selectedIndexStep + 1}} / {{jsonCustomForm.pages.length}}\r\n        </div>\r\n\r\n        <div fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\r\n            <div fxFlex>\r\n                <button mat-button *ngIf=\"(jsonCustomForm.showResetButton) && (!jsonCustomForm.readonly)\"\r\n                    [class.mat-button]=\"jsonCustomForm.buttonStyle==='BASIC' || !jsonCustomForm.buttonStyle\"\r\n                    [class.mat-raised-button]=\"jsonCustomForm.buttonStyle==='RAISED'\"\r\n                    [class.mat-stroked-button]=\"jsonCustomForm.buttonStyle==='STROKED'\"\r\n                    [class.mat-flat-button]=\"jsonCustomForm.buttonStyle==='FLAT'\"\r\n                    [color]=\"((jsonCustomForm.buttonColor || jsonCustomForm.formColor) | lowercase) || 'primary'\" type=\"button\"\r\n                    (click)=\"fnReset()\">{{jsonCustomForm.buttonResetName || 'Reset'}}</button>\r\n            </div>\r\n            <div fxFlex=\"100\"></div>\r\n            <div fxFlex *ngIf=\"selectedIndexStep > 0\">\r\n                <button mat-button [class.mat-button]=\"jsonCustomForm.buttonStyle==='BASIC' || !jsonCustomForm.buttonStyle\"\r\n                    [class.mat-raised-button]=\"jsonCustomForm.buttonStyle==='RAISED'\"\r\n                    [class.mat-stroked-button]=\"jsonCustomForm.buttonStyle==='STROKED'\"\r\n                    [class.mat-flat-button]=\"jsonCustomForm.buttonStyle==='FLAT'\"\r\n                    [color]=\"((jsonCustomForm.buttonColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                    (click)=\"fnPrevious()\" type=\"button\">{{jsonCustomForm.buttonPrevName || 'Prev'}}</button>\r\n            </div>\r\n            <div fxFlex *ngIf=\"selectedIndexStep < (jsonCustomForm.pages.length - 1)\">\r\n                <button mat-button [class.mat-button]=\"jsonCustomForm.buttonStyle==='BASIC' || !jsonCustomForm.buttonStyle\"\r\n                    [class.mat-raised-button]=\"jsonCustomForm.buttonStyle==='RAISED'\"\r\n                    [class.mat-stroked-button]=\"jsonCustomForm.buttonStyle==='STROKED'\"\r\n                    [class.mat-flat-button]=\"jsonCustomForm.buttonStyle==='FLAT'\"\r\n                    [color]=\"((jsonCustomForm.buttonColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                    [disabled]=\"(!jsonCustomForm.buttonNextAlwaysEnabled) && !getValidPage(jsonCustomForm.pages[selectedIndexStep])\"\r\n                    (click)=\"fnNext()\" type=\"button\">{{jsonCustomForm.buttonNextName || 'Next'}}</button>\r\n            </div>\r\n            <div fxFlex\r\n                *ngIf=\"(!jsonCustomForm.readonly) && (jsonCustomForm.buttonSubmitAlwaysPresent || selectedIndexStep === (jsonCustomForm.pages.length - 1))\">\r\n                <button mat-button [class.mat-button]=\"jsonCustomForm.buttonStyle==='BASIC' || !jsonCustomForm.buttonStyle\"\r\n                    [class.mat-raised-button]=\"jsonCustomForm.buttonStyle==='RAISED'\"\r\n                    [class.mat-stroked-button]=\"jsonCustomForm.buttonStyle==='STROKED'\"\r\n                    [class.mat-flat-button]=\"jsonCustomForm.buttonStyle==='FLAT'\"\r\n                    [color]=\"((jsonCustomForm.buttonColor || jsonCustomForm.formColor) | lowercase) || 'primary'\"\r\n                    [disabled]=\"disabledSubmit\">{{jsonCustomForm.buttonSubmitName || 'Submit'}}</button>\r\n            </div>\r\n\r\n        </div>\r\n\r\n    </form>\r\n\r\n</div>\r\n","styles":["@import \"https://fonts.googleapis.com/css?family=Roboto:300,400,500,700,400italic|Roboto+Mono:400,500|Material+Icons\";.spinner-absolute-container{left:0;position:fixed;top:0;z-index:1}.spinner-absolute-container .spinner-absolute{left:50%;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:1}mat-form-field{width:100%}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}button.no-event{pointer-events:none}::ng-deep button.mat-focus-indicator.mat-icon-button.mat-button-base:focus,button:focus{outline:none}fieldset{border-radius:8px;margin:2px 2px 20px}fieldset>.section-error{visibility:hidden}fieldset.error{background-color:rgba(255,0,0,.06666666666666667);border:2px solid rgba(255,0,0,.3333333333333333);box-shadow:-3px 3px 5px rgba(255,0,0,.3333333333333333);margin:0}fieldset.error>.section-error{visibility:visible}fieldset>legend{margin-left:8px;padding:8px;width:-webkit-max-content;width:-moz-max-content;width:max-content}:not(.mat-form-field)>.mat-error{font-size:75%}.file-height{margin-top:-2rem;max-height:150px;overflow-y:auto}.file-height::-webkit-scrollbar{width:5px}.file-height::-webkit-scrollbar-track{background:#f1f1f1}.file-height::-webkit-scrollbar-thumb{background:#888}.file-height::-webkit-scrollbar-thumb:hover{background:#555}file-upload{background-color:transparent;outline:none}::ng-deep file-upload label{text-align:center}::ng-deep file-upload label:hover svg{fill:#80a9d2}::ng-deep .mat-step-icon{font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol!important;font-weight:700!important;padding:1rem!important}::ng-deep mat-horizontal-stepper{margin-bottom:24px}::ng-deep mat-horizontal-stepper>.mat-horizontal-content-container{padding:0}::ng-deep mat-horizontal-stepper::-webkit-scrollbar{height:10px;width:10px}::ng-deep mat-horizontal-stepper::-webkit-scrollbar-track{background:#f1f1f1}::ng-deep mat-horizontal-stepper::-webkit-scrollbar-thumb{background:#888;border-radius:50vmin}::ng-deep mat-horizontal-stepper::-webkit-scrollbar-thumb::-webkit-scrollbar-thumb:hover{background:#555}::ng-deep mat-horizontal-stepper.mat-stepper-hidden .mat-horizontal-stepper-header-container{display:none!important}::ng-deep mat-horizontal-stepper.mat-stepper-hidden .mat-horizontal-content-container{padding:0 24px}::ng-deep mat-horizontal-stepper.mat-stepper-slider{overflow-x:auto;overflow-y:hidden;white-space:nowrap;width:100%}::ng-deep mat-horizontal-stepper.mat-stepper-tab>.mat-horizontal-stepper-header-container>mat-step-header{-ms-grid-row-align:center;align-self:center;border:2px solid #ddd;border-radius:.5rem;box-shadow:-3px 3px 5px #ddd;height:76px;margin:.5rem!important;padding:.5rem}::ng-deep mat-horizontal-stepper.mat-stepper-tab>.mat-horizontal-stepper-header-container>mat-step-header[aria-selected=true]{border-color:#3f51b5;box-shadow:-3px 3px 5px #3f51b5}::ng-deep mat-horizontal-stepper.mat-stepper-tab>.mat-horizontal-stepper-header-container>mat-step-header:after,::ng-deep mat-horizontal-stepper.mat-stepper-tab>.mat-horizontal-stepper-header-container>mat-step-header:before{border:0 solid transparent}::ng-deep mat-horizontal-stepper.mat-stepper-tab>.mat-horizontal-stepper-header-container>mat-step-header>.mat-step-icon{display:none}::ng-deep mat-horizontal-stepper.mat-stepper-tab>.mat-horizontal-stepper-header-container>mat-step-header>.mat-step-label{margin-bottom:auto;margin-top:auto;padding:0}::ng-deep mat-horizontal-stepper.mat-stepper-tab>.mat-horizontal-stepper-header-container .mat-stepper-horizontal-line{display:none}::ng-deep mat-horizontal-stepper .mat-horizontal-stepper-header-container{display:flex;margin-left:auto;width:-webkit-max-content;width:-moz-max-content;width:max-content}::ng-deep mat-horizontal-stepper .mat-horizontal-stepper-header-container>mat-step-header{margin-left:auto!important}::ng-deep mat-horizontal-stepper .mat-horizontal-stepper-header-container>mat-step-header .mat-step-label{font-weight:700!important;text-overflow:inherit;white-space:normal;width:200px!important}::ng-deep mat-horizontal-stepper .mat-horizontal-stepper-header-container>mat-step-header .mat-step-warning{color:red!important}"]}]}],"members":{"formSubmit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":35,"character":3}}]}],"formChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":36,"character":3}}]}],"formPrevious":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":37,"character":3}}]}],"formNext":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":38,"character":3}}]}],"formEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":39,"character":3}}]}],"jsonFormChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":40,"character":3}}]}],"jsonForm":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":41,"character":3}}]}],"selectedIndexStep":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":42,"character":3}}]}],"showSpinner":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":3}}]}],"externalVariables":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":44,"character":3}}]}],"changeValues":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":45,"character":3}}]}],"stepper":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":58,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/material/stepper","name":"MatHorizontalStepper","line":58,"character":13}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":62,"character":29},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":62,"character":53}]}],"handleChangeValues":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"changeStep":[{"__symbolic":"method"}],"initVerifyDuplicates":[{"__symbolic":"method"}],"initJustify":[{"__symbolic":"method"}],"initDisable":[{"__symbolic":"method"}],"isValidDate":[{"__symbolic":"method"}],"createPanel":[{"__symbolic":"method"}],"createForm":[{"__symbolic":"method"}],"initValidators":[{"__symbolic":"method"}],"getHiddenExpressions":[{"__symbolic":"method"}],"getDisabledExpressions":[{"__symbolic":"method"}],"getDisabledExpression":[{"__symbolic":"method"}],"formChanges":[{"__symbolic":"method"}],"initForm":[{"__symbolic":"method"}],"getValidPage":[{"__symbolic":"method"}],"getSectionHidden":[{"__symbolic":"method"}],"getSectionHiddenAsync":[{"__symbolic":"method"}],"getSectionDisabled":[{"__symbolic":"method"}],"getSectionError":[{"__symbolic":"method"}],"getFieldError":[{"__symbolic":"method"}],"getProperty":[{"__symbolic":"method"}],"fnClickEvent":[{"__symbolic":"method"}],"manageFieldsByType":[{"__symbolic":"method"}],"matSimpleForm":[{"__symbolic":"method"}],"matSubmit":[{"__symbolic":"method"}],"fnPrevious":[{"__symbolic":"method"}],"fnReset":[{"__symbolic":"method"}],"fnNext":[{"__symbolic":"method"}],"getLabelChip":[{"__symbolic":"method"}],"addChipToList":[{"__symbolic":"method"}],"addChip":[{"__symbolic":"method"}],"removeChip":[{"__symbolic":"method"}],"selectedChip":[{"__symbolic":"method"}],"getSum":[{"__symbolic":"method"}],"fnDisplayAutocomplete":[{"__symbolic":"method"}],"fnDisplayChip":[{"__symbolic":"method"}],"NativeValidator":[{"__symbolic":"method"}],"InlineExpression":[{"__symbolic":"method"}],"ExpressionValidator":[{"__symbolic":"method"}]}},"FormMaterialModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":17,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"FormMaterialComponent"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵb"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":20,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":21,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":21,"character":25},{"__symbolic":"reference","module":"@iplab/ngx-file-upload","name":"FileUploadModule","line":22,"character":4},{"__symbolic":"reference","module":"@angular/flex-layout","name":"FlexLayoutModule","line":23,"character":4},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClientModule","line":24,"character":4},{"__symbolic":"reference","name":"MaterialModule"}],"exports":[[{"__symbolic":"reference","name":"FormMaterialComponent"}]],"entryComponents":[[{"__symbolic":"reference","name":"FormMaterialComponent"}]]}]}],"members":{}},"IFormMaterialElement":{"__symbolic":"interface"},"IDynamicForm":{"__symbolic":"interface"},"IFormPage":{"__symbolic":"interface"},"IFormSection":{"__symbolic":"interface"},"IFormRow":{"__symbolic":"interface"},"IFormValidatorSection":{"__symbolic":"interface"},"IFormValidator":{"__symbolic":"interface"},"IFormTextarea":{"__symbolic":"interface"},"IFormText":{"__symbolic":"interface"},"IFormPassword":{"__symbolic":"interface"},"IFormNumber":{"__symbolic":"interface"},"IFormDate":{"__symbolic":"interface"},"IFormFile":{"__symbolic":"interface"},"IFormSelect":{"__symbolic":"interface"},"IFormChips":{"__symbolic":"interface"},"IFormAutocomplete":{"__symbolic":"interface"},"IFormRadio":{"__symbolic":"interface"},"IFormCheckbox":{"__symbolic":"interface"},"IFormAmount":{"__symbolic":"interface"},"IFormLink":{"__symbolic":"interface"},"IFormInfo":{"__symbolic":"interface"},"IFormHidden":{"__symbolic":"interface"},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[drAmount]"}]}],"members":{"language":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":6,"character":3},"arguments":["drAmount"]}]}],"onKeyDown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":7,"character":3},"arguments":["keydown"]}]}],"onChange":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":10,"character":3},"arguments":["change"]}]}],"setValue":[{"__symbolic":"method"}],"onSubmit":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":41,"character":3},"arguments":["submit"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":45,"character":37,"context":{"typeName":"HTMLInputElement"},"module":"./lib/directives/amount.directive"}]}]}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":3,"character":1},"arguments":[{"name":"drsafe"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":7,"character":32}]}],"transform":[{"__symbolic":"method"}]}}},"origins":{"MaterialModule":"./lib/modules/material.module","FormMaterialComponent":"./lib/form-material.component","FormMaterialModule":"./lib/form-material.module","IFormMaterialElement":"./lib/models/form","IDynamicForm":"./lib/models/form","IFormPage":"./lib/models/form","IFormSection":"./lib/models/form","IFormRow":"./lib/models/form","IFormValidatorSection":"./lib/models/form","IFormValidator":"./lib/models/form-cell","IFormTextarea":"./lib/models/form-cell","IFormText":"./lib/models/form-cell","IFormPassword":"./lib/models/form-cell","IFormNumber":"./lib/models/form-cell","IFormDate":"./lib/models/form-cell","IFormFile":"./lib/models/form-cell","IFormSelect":"./lib/models/form-cell","IFormChips":"./lib/models/form-cell","IFormAutocomplete":"./lib/models/form-cell","IFormRadio":"./lib/models/form-cell","IFormCheckbox":"./lib/models/form-cell","IFormAmount":"./lib/models/form-cell","IFormLink":"./lib/models/form-cell","IFormInfo":"./lib/models/form-cell","IFormHidden":"./lib/models/form-cell","ɵa":"./lib/directives/amount.directive","ɵb":"./lib/pipe/safe.pipe"},"importAs":"@dr-angular/form-material"}