// Copyright (c) Laserfiche.
// Licensed under the MIT License. See LICENSE in the project root for license information.
import { Component } from '@angular/core';
import { BaseFieldDirective } from '../base-field/base-field.directive';
import { ErrorStateMatcher, ShowOnDirtyErrorStateMatcher } from '@angular/material/core';
import * as i0 from "@angular/core";
import * as i1 from "../lf-field-token.service";
import * as i2 from "@laserfiche/lf-ui-components/internal-shared";
import * as i3 from "@angular/common";
import * as i4 from "@angular/forms";
import * as i5 from "@angular/material/form-field";
import * as i6 from "@angular/material/input";
import * as i7 from "../../lf-token-picker/lf-token-picker.component";
import * as i8 from "../dynamic-field/dynamic-field.component";
export class TextFieldComponent extends BaseFieldDirective {
    getValidationTextForFieldType(validationRuleName) {
        return undefined;
    }
    get isShortField() {
        return (!this.lf_field_info.length || this.lf_field_info.length <= 40);
    }
    constructor(tokenService, ref, localizationService) {
        super(tokenService, ref, localizationService);
        this.tokenService = tokenService;
        this.ref = ref;
        this.localizationService = localizationService;
    }
    serializeFieldFormControlValue() {
        return this.getLfFieldFormControlValue()?.trim();
    }
    deserializeLfFieldValue() {
        return this.lf_field_value?.trim() ?? '';
    }
    getAdditionalValidatorsForFieldType() {
        return [];
    }
    createNewFieldValueWithToken(token) {
        let newValue = '';
        if (this.tokenTarget) {
            const originalFieldVal = this.tokenTarget.nativeElement.value;
            const selectionStart = this.tokenTarget.nativeElement.selectionStart;
            const selectionEnd = this.tokenTarget.nativeElement.selectionEnd;
            const formattedToken = `%(${token})`;
            const textBeforeToken = originalFieldVal.substring(0, selectionStart);
            const textAfterToken = originalFieldVal.substring(selectionEnd);
            newValue = textBeforeToken + formattedToken + textAfterToken;
        }
        return newValue;
    }
    onFocusIn() {
        this.focusState = true;
        this.ref.detectChanges();
    }
    onFocusOut() {
        this.focusState = false;
        this.ref.detectChanges();
    }
    onEveryInputChange() {
        this.ref.detectChanges();
        if (this.containsToken) {
            this.lf_field_form_control.clearValidators();
        }
        else {
            this.resetToDefaultValidators();
        }
        this.lf_field_form_control.updateValueAndValidity();
        super.onValueChanged(false);
    }
    fieldOnValueChanged() {
        const currentValue = this.lf_field_form_control.value;
        this.lf_field_form_control.setValue(currentValue ?? '');
    }
    onTextValueChanged() {
        if (this.containsToken) {
            this.lf_field_form_control.clearValidators();
        }
        else {
            this.resetToDefaultValidators();
        }
        this.lf_field_form_control.updateValueAndValidity();
        super.onValueChanged();
    }
    onTextTokenChosen(token) {
        const newFieldVal = this.createNewFieldValueWithToken(token);
        if (this.tokenService.containsTokenForFieldType(newFieldVal, this.lf_field_info.fieldType, this.is_import_mode)) {
            this.lf_field_form_control.clearValidators();
            this.lf_field_form_control.updateValueAndValidity();
        }
        this.onTokenChosen(token);
    }
    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextFieldComponent, deps: [{ token: i1.LfFieldTokenService }, { token: i0.ChangeDetectorRef }, { token: i2.AppLocalizationService }], target: i0.ɵɵFactoryTarget.Component }); }
    static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: TextFieldComponent, selector: "lf-text-field-component", providers: [
            { provide: BaseFieldDirective, useExisting: TextFieldComponent },
            { provide: ErrorStateMatcher, useClass: ShowOnDirtyErrorStateMatcher }
        ], usesInheritance: true, ngImport: i0, template: "<!--Copyright (c) Laserfiche.\r\nLicensed under the MIT License. See LICENSE in the project root for license information.-->\r\n\r\n<span class=\"token-picker-field-box\" *ngIf=\"!isDynamic else dynamic\">\r\n  <mat-form-field *ngIf=\"isShortField\" title=\"{{lf_field_info.displayName}}\" appearance=\"outline\" class=\"lf-field\">\r\n    <input #tokenTarget matInput type=\"text\" [formControl]=\"lf_field_form_control\" title=\"{{lf_field_form_control.value}}\"\r\n      (change)=\"onTextValueChanged()\" (focus)=\"onFocusIn()\" (focusout)=\"onFocusOut()\"\r\n      (input)=\"onEveryInputChange()\">\r\n    <mat-hint *ngIf=\"focusState && this.lf_field_info.length\" align=\"end\">\r\n      {{containsToken ? (tokenCharacterCountHint | async) : (noTokenCharacterCountHint | async)}}\r\n    </mat-hint>\r\n    <mat-error *ngIf=\"getBrokenValidationRule()\">{{fieldValidationErrorMsg | async}}</mat-error>\r\n  </mat-form-field>\r\n  <mat-form-field *ngIf=\"!isShortField\" title=\"{{lf_field_info.displayName}}\" appearance=\"outline\" class=\"lf-textarea\">\r\n    <textarea #tokenTarget matInput type=\"text\" [formControl]=\"lf_field_form_control\" title=\"{{lf_field_form_control.value}}\"\r\n      (change)=\"onTextValueChanged()\" (focus)=\"onFocusIn()\" (focusout)=\"onFocusOut()\"\r\n      (input)=\"onEveryInputChange()\"></textarea>\r\n    <mat-hint *ngIf=\"focusState && this.lf_field_info?.length\" align=\"end\">\r\n      {{containsToken ? (tokenCharacterCountHint | async) : (noTokenCharacterCountHint | async)}}\r\n    </mat-hint>\r\n    <mat-error *ngIf=\"getBrokenValidationRule()\">{{fieldValidationErrorMsg | async}}</mat-error>\r\n  </mat-form-field>\r\n  <lf-token-picker-component class=\"lf-field-token-picker\" (tokenPicked)=\"onTextTokenChosen($event)\" [data]=\"lfFieldTokenData\">\r\n  </lf-token-picker-component>\r\n</span>\r\n<ng-template #dynamic>\r\n  <lf-dynamic-field-component ngDefaultControl [options]=\"dynamic_field_value_options\" [formControl]=\"lf_field_form_control\"\r\n    [title]=\"lf_field_info.displayName\" [fieldValidationErrorMsg]=\"fieldValidationErrorMsg\"\r\n    [getBrokenValidationRule]=\"getBrokenValidationRule.bind(this)\" (valueChange)=\"onTextValueChanged()\">\r\n  </lf-dynamic-field-component>\r\n</ng-template>\r\n", styles: ["", ".lf-field,.lf-textarea{width:100%;min-width:50px}.mat-mdc-input-element{caret-color:#000}.token-picker-field-box{width:100%;display:flex;font-size:14px}.field-box{flex-grow:1;flex-shrink:1;display:inline-block;width:100%}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix,::ng-deep mat-form-field.lf-textarea>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix{padding:0;border:none}::ng-deep mat-form-field.lf-field.lf-date-field>.mat-mdc-form-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix{line-height:0}::ng-deep .lf-field .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__leading,::ng-deep .lf-field .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__notch,::ng-deep .lf-field .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__trailing,::ng-deep .lf-textarea .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__leading,::ng-deep .lf-textarea .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__notch,::ng-deep .lf-textarea .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__trailing{border-color:#ccc}::ng-deep .mdc-text-field--outlined{--mdc-outlined-text-field-focus-outline-color: black;&:hover{--mdc-outlined-text-field-outline-width: 2px}}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix>.mat-mdc-select>.mat-mdc-select-trigger>.mat-mdc-select-arrow-wrapper>.mat-mdc-select-arrow{color:#0000008a}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mdc-notched-outline{height:28px;color:#ccc}::ng-deep mat-form-field.lf-textarea>.mat-mdc-form-field-wrapper>.mat-mdc-form-field-flex>.mdc-notched-outline{color:#ccc}::ng-deep mat-form-field.lf-field>.mat-mdc-form-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick,::ng-deep mat-form-field.lf-textarea>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick{color:#000}::ng-deep mat-form-field.lf-field.ng-invalid>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick,::ng-deep mat-form-field.lf-textarea.ng-invalid>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick{color:red}::ng-deep mat-form-field.lf-field.ng-invalid.ng-pristine>.mat-mdc-form-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick,::ng-deep mat-form-field.lf-textarea.ng-invalid.ng-pristine>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick{color:#000}::ng-deep mat-form-field.lf-field .mat-mdc-form-field-subscript-wrapper,::ng-deep mat-form-field.lf-textarea .mat-mdc-form-field-subscript-wrapper{display:flex;flex-direction:column}::ng-deep lf-field-template-container-component .lf-template-picker>.mat-mdc-form-field-subscript-wrapper{height:0px}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper,::ng-deep mat-form-field.lf-textarea>.mat-mdc-text-field-wrapper{padding-bottom:0;padding-left:10px;padding-right:10px}::ng-deep mat-form-field.lf-date-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-icon-suffix{top:-.2em;position:unset}.lf-field-token-picker{flex-grow:0;flex-shrink:0;margin-left:1px;vertical-align:top}.mat-mdc-form-field{font-size:inherit;font-weight:400;line-height:1.125;font-family:Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}::ng-deep .mdc-floating-label.mat-mdc-floating-label{display:none}::ng-deep .lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex{height:28px}::ng-deep .lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix{height:inherit;min-height:0px}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix>.mat-mdc-select,::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix>.mat-mdc-select>.mat-mdc-select-trigger{height:inherit;font-size:14px}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix>.mat-mdc-input-element{height:inherit}::ng-deep .mdc-line-ripple{display:none}::ng-deep mat-form-field>.mat-mdc-form-field-subscript-wrapper>.mat-mdc-form-field-hint-wrapper,::ng-deep mat-form-field>.mat-mdc-form-field-subscript-wrapper>.mat-mdc-form-field-error-wrapper{position:unset;padding:0;min-height:1.25rem}::ng-deep .mat-mdc-form-field-hint-spacer{flex-basis:0!important}::ng-deep mat-hint{color:#0009}::ng-deep .mat-mdc-form-field-hint,::ng-deep .mat-mdc-form-field-error{padding:0 1rem;line-height:1rem;font-size:var(--mat-form-field-subscript-text-size)}::ng-deep mat-form-field>.mat-mdc-form-field-subscript-wrapper.mat-mdc-form-field-bottom-align:before{height:unset;display:block}::ng-deep .lf-checklist-item .mat-form-field-invalid .mat-mdc-form-field-subscript-wrapper{padding-top:0!important}::ng-deep .lf-field .mdc-text-field{border-radius:0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i5.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i6.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: i7.LfTokenPickerComponent, selector: "lf-token-picker-component", inputs: ["data"], outputs: ["tokenPicked"] }, { kind: "component", type: i8.DynamicFieldComponent, selector: "lf-dynamic-field-component", inputs: ["options", "formControl", "title", "fieldValidationErrorMsg", "getBrokenValidationRule", "compareWith"], outputs: ["valueChange"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextFieldComponent, decorators: [{
            type: Component,
            args: [{ selector: 'lf-text-field-component', providers: [
                        { provide: BaseFieldDirective, useExisting: TextFieldComponent },
                        { provide: ErrorStateMatcher, useClass: ShowOnDirtyErrorStateMatcher }
                    ], template: "<!--Copyright (c) Laserfiche.\r\nLicensed under the MIT License. See LICENSE in the project root for license information.-->\r\n\r\n<span class=\"token-picker-field-box\" *ngIf=\"!isDynamic else dynamic\">\r\n  <mat-form-field *ngIf=\"isShortField\" title=\"{{lf_field_info.displayName}}\" appearance=\"outline\" class=\"lf-field\">\r\n    <input #tokenTarget matInput type=\"text\" [formControl]=\"lf_field_form_control\" title=\"{{lf_field_form_control.value}}\"\r\n      (change)=\"onTextValueChanged()\" (focus)=\"onFocusIn()\" (focusout)=\"onFocusOut()\"\r\n      (input)=\"onEveryInputChange()\">\r\n    <mat-hint *ngIf=\"focusState && this.lf_field_info.length\" align=\"end\">\r\n      {{containsToken ? (tokenCharacterCountHint | async) : (noTokenCharacterCountHint | async)}}\r\n    </mat-hint>\r\n    <mat-error *ngIf=\"getBrokenValidationRule()\">{{fieldValidationErrorMsg | async}}</mat-error>\r\n  </mat-form-field>\r\n  <mat-form-field *ngIf=\"!isShortField\" title=\"{{lf_field_info.displayName}}\" appearance=\"outline\" class=\"lf-textarea\">\r\n    <textarea #tokenTarget matInput type=\"text\" [formControl]=\"lf_field_form_control\" title=\"{{lf_field_form_control.value}}\"\r\n      (change)=\"onTextValueChanged()\" (focus)=\"onFocusIn()\" (focusout)=\"onFocusOut()\"\r\n      (input)=\"onEveryInputChange()\"></textarea>\r\n    <mat-hint *ngIf=\"focusState && this.lf_field_info?.length\" align=\"end\">\r\n      {{containsToken ? (tokenCharacterCountHint | async) : (noTokenCharacterCountHint | async)}}\r\n    </mat-hint>\r\n    <mat-error *ngIf=\"getBrokenValidationRule()\">{{fieldValidationErrorMsg | async}}</mat-error>\r\n  </mat-form-field>\r\n  <lf-token-picker-component class=\"lf-field-token-picker\" (tokenPicked)=\"onTextTokenChosen($event)\" [data]=\"lfFieldTokenData\">\r\n  </lf-token-picker-component>\r\n</span>\r\n<ng-template #dynamic>\r\n  <lf-dynamic-field-component ngDefaultControl [options]=\"dynamic_field_value_options\" [formControl]=\"lf_field_form_control\"\r\n    [title]=\"lf_field_info.displayName\" [fieldValidationErrorMsg]=\"fieldValidationErrorMsg\"\r\n    [getBrokenValidationRule]=\"getBrokenValidationRule.bind(this)\" (valueChange)=\"onTextValueChanged()\">\r\n  </lf-dynamic-field-component>\r\n</ng-template>\r\n", styles: [".lf-field,.lf-textarea{width:100%;min-width:50px}.mat-mdc-input-element{caret-color:#000}.token-picker-field-box{width:100%;display:flex;font-size:14px}.field-box{flex-grow:1;flex-shrink:1;display:inline-block;width:100%}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix,::ng-deep mat-form-field.lf-textarea>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix{padding:0;border:none}::ng-deep mat-form-field.lf-field.lf-date-field>.mat-mdc-form-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix{line-height:0}::ng-deep .lf-field .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__leading,::ng-deep .lf-field .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__notch,::ng-deep .lf-field .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__trailing,::ng-deep .lf-textarea .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__leading,::ng-deep .lf-textarea .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__notch,::ng-deep .lf-textarea .mdc-text-field--outlined:not(.mdc-text-field--focused) .mdc-notched-outline__trailing{border-color:#ccc}::ng-deep .mdc-text-field--outlined{--mdc-outlined-text-field-focus-outline-color: black;&:hover{--mdc-outlined-text-field-outline-width: 2px}}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix>.mat-mdc-select>.mat-mdc-select-trigger>.mat-mdc-select-arrow-wrapper>.mat-mdc-select-arrow{color:#0000008a}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mdc-notched-outline{height:28px;color:#ccc}::ng-deep mat-form-field.lf-textarea>.mat-mdc-form-field-wrapper>.mat-mdc-form-field-flex>.mdc-notched-outline{color:#ccc}::ng-deep mat-form-field.lf-field>.mat-mdc-form-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick,::ng-deep mat-form-field.lf-textarea>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick{color:#000}::ng-deep mat-form-field.lf-field.ng-invalid>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick,::ng-deep mat-form-field.lf-textarea.ng-invalid>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick{color:red}::ng-deep mat-form-field.lf-field.ng-invalid.ng-pristine>.mat-mdc-form-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick,::ng-deep mat-form-field.lf-textarea.ng-invalid.ng-pristine>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-form-field-outline-thick{color:#000}::ng-deep mat-form-field.lf-field .mat-mdc-form-field-subscript-wrapper,::ng-deep mat-form-field.lf-textarea .mat-mdc-form-field-subscript-wrapper{display:flex;flex-direction:column}::ng-deep lf-field-template-container-component .lf-template-picker>.mat-mdc-form-field-subscript-wrapper{height:0px}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper,::ng-deep mat-form-field.lf-textarea>.mat-mdc-text-field-wrapper{padding-bottom:0;padding-left:10px;padding-right:10px}::ng-deep mat-form-field.lf-date-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-icon-suffix{top:-.2em;position:unset}.lf-field-token-picker{flex-grow:0;flex-shrink:0;margin-left:1px;vertical-align:top}.mat-mdc-form-field{font-size:inherit;font-weight:400;line-height:1.125;font-family:Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}::ng-deep .mdc-floating-label.mat-mdc-floating-label{display:none}::ng-deep .lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex{height:28px}::ng-deep .lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix{height:inherit;min-height:0px}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix>.mat-mdc-select,::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix>.mat-mdc-select>.mat-mdc-select-trigger{height:inherit;font-size:14px}::ng-deep mat-form-field.lf-field>.mat-mdc-text-field-wrapper>.mat-mdc-form-field-flex>.mat-mdc-form-field-infix>.mat-mdc-input-element{height:inherit}::ng-deep .mdc-line-ripple{display:none}::ng-deep mat-form-field>.mat-mdc-form-field-subscript-wrapper>.mat-mdc-form-field-hint-wrapper,::ng-deep mat-form-field>.mat-mdc-form-field-subscript-wrapper>.mat-mdc-form-field-error-wrapper{position:unset;padding:0;min-height:1.25rem}::ng-deep .mat-mdc-form-field-hint-spacer{flex-basis:0!important}::ng-deep mat-hint{color:#0009}::ng-deep .mat-mdc-form-field-hint,::ng-deep .mat-mdc-form-field-error{padding:0 1rem;line-height:1rem;font-size:var(--mat-form-field-subscript-text-size)}::ng-deep mat-form-field>.mat-mdc-form-field-subscript-wrapper.mat-mdc-form-field-bottom-align:before{height:unset;display:block}::ng-deep .lf-checklist-item .mat-form-field-invalid .mat-mdc-form-field-subscript-wrapper{padding-top:0!important}::ng-deep .lf-field .mdc-text-field{border-radius:0}\n"] }]
        }], ctorParameters: () => [{ type: i1.LfFieldTokenService }, { type: i0.ChangeDetectorRef }, { type: i2.AppLocalizationService }] });
//# sourceMappingURL=data:application/json;base64, 