@festo-ui/angular 5.0.0-dev.120 → 5.0.0-dev.140

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.
@@ -14,7 +14,7 @@ import * as i1$3 from '@angular/cdk/overlay';
14
14
  import { OverlayConfig, ConnectionPositionPair, OverlayModule } from '@angular/cdk/overlay';
15
15
  import { ComponentPortal } from '@angular/cdk/portal';
16
16
  import * as i3 from '@angular/forms';
17
- import { ReactiveFormsModule, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
17
+ import { NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule } from '@angular/forms';
18
18
  import * as i1$4 from 'swiper/angular';
19
19
  import { SwiperModule } from 'swiper/angular';
20
20
  import SwiperCore, { FreeMode, Navigation, Keyboard, Thumbs, Zoom } from 'swiper';
@@ -2721,6 +2721,207 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
2721
2721
  args: ['window:keyup', ['$event']]
2722
2722
  }] } });
2723
2723
 
2724
+ /**
2725
+ * A custom form element for text inputs.
2726
+ */
2727
+ class FngTextInputComponent {
2728
+ constructor() {
2729
+ /**
2730
+ * The text input label.
2731
+ */
2732
+ this.label = '';
2733
+ this.innerType = 'text';
2734
+ this.innerReadonly = false;
2735
+ this.step = undefined;
2736
+ this.min = undefined;
2737
+ this.max = undefined;
2738
+ this.tabindex = undefined;
2739
+ this.placeholder = undefined;
2740
+ this.name = '';
2741
+ this.innerDisabled = false;
2742
+ /**
2743
+ * The inner value.
2744
+ */
2745
+ this.innerValue = '';
2746
+ this.innerRequired = false;
2747
+ /**
2748
+ * Error description when invalid.
2749
+ */
2750
+ this.error = '';
2751
+ /**
2752
+ * Hint description when valid.
2753
+ */
2754
+ this.hint = undefined;
2755
+ /**
2756
+ * When true the text input has focus.
2757
+ */
2758
+ this.focused = false;
2759
+ }
2760
+ /**
2761
+ * A string specifying the type of control to render.
2762
+ */
2763
+ get type() {
2764
+ return this.innerType;
2765
+ }
2766
+ set type(value) {
2767
+ const supported = ['text', 'number', 'password', 'date', 'time', 'datetime-local'];
2768
+ if (value != null && supported.indexOf(value) !== -1) {
2769
+ this.innerType = value;
2770
+ }
2771
+ else {
2772
+ this.innerType = 'text';
2773
+ }
2774
+ }
2775
+ get readonly() {
2776
+ return this.innerReadonly;
2777
+ }
2778
+ set readonly(value) {
2779
+ this.innerReadonly = coerceBooleanProperty(value);
2780
+ }
2781
+ /**
2782
+ * When true the control's disabled attribute is set
2783
+ * and it gets addeed the .disabled css class.
2784
+ */
2785
+ get disabled() {
2786
+ return this.innerDisabled;
2787
+ }
2788
+ set disabled(value) {
2789
+ this.innerDisabled = coerceBooleanProperty(value);
2790
+ if (this.focused) {
2791
+ this.focused = false;
2792
+ }
2793
+ }
2794
+ /**
2795
+ * The getter for value.
2796
+ */
2797
+ get value() {
2798
+ return this.innerValue;
2799
+ }
2800
+ /**
2801
+ * The setter for value.
2802
+ */
2803
+ set value(value) {
2804
+ if (value != null) {
2805
+ value = '' + value;
2806
+ }
2807
+ this.innerValue = value;
2808
+ this.focused = !!value;
2809
+ if (this.onChange != null) {
2810
+ this.onChange(value);
2811
+ }
2812
+ if (this.onTouched != null) {
2813
+ this.onTouched();
2814
+ }
2815
+ }
2816
+ get required() {
2817
+ return this.innerRequired;
2818
+ }
2819
+ set required(value) {
2820
+ this.innerRequired = coerceBooleanProperty(value);
2821
+ }
2822
+ /**
2823
+ * Called on component initialisation.
2824
+ */
2825
+ ngOnInit() {
2826
+ this.onBlur();
2827
+ }
2828
+ /**
2829
+ * Writes the value.
2830
+ * @param value The value.
2831
+ */
2832
+ writeValue(value) {
2833
+ if (value != null) {
2834
+ value = '' + value;
2835
+ }
2836
+ this.innerValue = value;
2837
+ this.focused = !!value;
2838
+ }
2839
+ /**
2840
+ * Registers a function to onChange.
2841
+ * @param fn The registered function.
2842
+ */
2843
+ registerOnChange(fn) {
2844
+ this.onChange = fn;
2845
+ }
2846
+ /**
2847
+ * Registers a function to onTouched.
2848
+ * @param fn The registered function.
2849
+ */
2850
+ registerOnTouched(fn) {
2851
+ this.onTouched = fn;
2852
+ }
2853
+ /**
2854
+ * Called when the text input is in focus.
2855
+ */
2856
+ onFocus() {
2857
+ this.focused = true;
2858
+ }
2859
+ /**
2860
+ * Called when the text input blurs.
2861
+ */
2862
+ onBlur() {
2863
+ if (this.focused) {
2864
+ this.focused = false;
2865
+ }
2866
+ }
2867
+ /**
2868
+ * Sets the disabled state.
2869
+ * @param isDisabled When true the control is disabled
2870
+ */
2871
+ setDisabledState(isDisabled) {
2872
+ this.disabled = isDisabled;
2873
+ }
2874
+ }
2875
+ FngTextInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FngTextInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2876
+ FngTextInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: FngTextInputComponent, isStandalone: true, selector: "fng-text-input", inputs: { label: "label", type: "type", readonly: "readonly", step: "step", min: "min", max: "max", tabindex: "tabindex", placeholder: "placeholder", name: "name", disabled: "disabled", value: "value", required: "required", error: "error", hint: "hint" }, providers: [
2877
+ {
2878
+ provide: NG_VALUE_ACCESSOR,
2879
+ useExisting: forwardRef(() => FngTextInputComponent),
2880
+ multi: true
2881
+ }
2882
+ ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<label class=\"fwe-input-text\" [class.fwe-no-pointer-events]=\"readonly === true\">\n <input\n #inputElement\n [disabled]=\"disabled\"\n [required]=\"required === true || false\"\n [attr.readonly]=\"readonly === true || null\"\n [attr.placeholder]=\"placeholder || null\"\n [attr.type]=\"type\"\n [attr.step]=\"step\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.name]=\"name || null\"\n [attr.tabindex]=\"tabindex\"\n [class.fng-has-value]=\"value != null && value !== ''\"\n autocomplete=\"off\"\n (focus)=\"onFocus()\"\n [(ngModel)]=\"value\"\n (blur)=\"onBlur()\"\n />\n <span class=\"fwe-input-text-label\">{{ label }}</span>\n <span *ngIf=\"hint; else projectedHint\" class=\"fwe-input-text-info\">{{ hint }}</span>\n <span *ngIf=\"error; else projectedError\" class=\"fwe-input-text-invalid\">{{ error }}</span>\n\n <ng-template #projectedHint>\n <span class=\"fwe-input-text-info fng-projected\"><ng-content select=\".fng-hint\"></ng-content></span>\n </ng-template>\n\n <ng-template #projectedError>\n <span class=\"fwe-input-text-invalid fng-projected\"><ng-content select=\".fng-error\"></ng-content></span>\n </ng-template>\n</label>\n", styles: ["fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]{border-bottom:1px solid var(--fwe-red)!important;box-shadow:none;outline:none}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:focus{border-bottom:1px solid var(--fwe-red)!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled{border-bottom:1px solid var(--fwe-control-disabled)!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-info{color:var(--fwe-text-disabled)}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text .fwe-input-text-info{display:none!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text .fwe-input-text-invalid{display:block!important}fng-text-input.ng-valid label.fwe-input-text input[type=text]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=password]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=date]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=time]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=datetime-local]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=number]:hover:not(:disabled){border-bottom:1px solid var(--fwe-hero)!important}fng-text-input label.fwe-input-text.fwe-no-pointer-events{pointer-events:none!important}.fwe-input-text-invalid.fng-projected:empty{display:none}.fwe-input-text-info.fng-projected:empty{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
2883
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FngTextInputComponent, decorators: [{
2884
+ type: Component,
2885
+ args: [{ standalone: true, imports: [CommonModule, FormsModule], selector: 'fng-text-input', providers: [
2886
+ {
2887
+ provide: NG_VALUE_ACCESSOR,
2888
+ useExisting: forwardRef(() => FngTextInputComponent),
2889
+ multi: true
2890
+ }
2891
+ ], encapsulation: ViewEncapsulation.None, template: "<label class=\"fwe-input-text\" [class.fwe-no-pointer-events]=\"readonly === true\">\n <input\n #inputElement\n [disabled]=\"disabled\"\n [required]=\"required === true || false\"\n [attr.readonly]=\"readonly === true || null\"\n [attr.placeholder]=\"placeholder || null\"\n [attr.type]=\"type\"\n [attr.step]=\"step\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.name]=\"name || null\"\n [attr.tabindex]=\"tabindex\"\n [class.fng-has-value]=\"value != null && value !== ''\"\n autocomplete=\"off\"\n (focus)=\"onFocus()\"\n [(ngModel)]=\"value\"\n (blur)=\"onBlur()\"\n />\n <span class=\"fwe-input-text-label\">{{ label }}</span>\n <span *ngIf=\"hint; else projectedHint\" class=\"fwe-input-text-info\">{{ hint }}</span>\n <span *ngIf=\"error; else projectedError\" class=\"fwe-input-text-invalid\">{{ error }}</span>\n\n <ng-template #projectedHint>\n <span class=\"fwe-input-text-info fng-projected\"><ng-content select=\".fng-hint\"></ng-content></span>\n </ng-template>\n\n <ng-template #projectedError>\n <span class=\"fwe-input-text-invalid fng-projected\"><ng-content select=\".fng-error\"></ng-content></span>\n </ng-template>\n</label>\n", styles: ["fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]{border-bottom:1px solid var(--fwe-red)!important;box-shadow:none;outline:none}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:focus{border-bottom:1px solid var(--fwe-red)!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled{border-bottom:1px solid var(--fwe-control-disabled)!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-info{color:var(--fwe-text-disabled)}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text .fwe-input-text-info{display:none!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text .fwe-input-text-invalid{display:block!important}fng-text-input.ng-valid label.fwe-input-text input[type=text]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=password]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=date]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=time]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=datetime-local]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=number]:hover:not(:disabled){border-bottom:1px solid var(--fwe-hero)!important}fng-text-input label.fwe-input-text.fwe-no-pointer-events{pointer-events:none!important}.fwe-input-text-invalid.fng-projected:empty{display:none}.fwe-input-text-info.fng-projected:empty{display:none}\n"] }]
2892
+ }], propDecorators: { label: [{
2893
+ type: Input
2894
+ }], type: [{
2895
+ type: Input
2896
+ }], readonly: [{
2897
+ type: Input
2898
+ }], step: [{
2899
+ type: Input
2900
+ }], min: [{
2901
+ type: Input
2902
+ }], max: [{
2903
+ type: Input
2904
+ }], tabindex: [{
2905
+ type: Input
2906
+ }], placeholder: [{
2907
+ type: Input
2908
+ }], name: [{
2909
+ type: Input
2910
+ }], disabled: [{
2911
+ type: Input
2912
+ }], value: [{
2913
+ type: Input
2914
+ }], required: [{
2915
+ type: Input
2916
+ }], error: [{
2917
+ type: Input
2918
+ }], hint: [{
2919
+ type: Input
2920
+ }], inputElement: [{
2921
+ type: ViewChild,
2922
+ args: ['inputElement']
2923
+ }] } });
2924
+
2724
2925
  class FngPromptComponent {
2725
2926
  get text() {
2726
2927
  var _a, _b;
@@ -2767,6 +2968,7 @@ class FngPromptComponent {
2767
2968
  this.error = '';
2768
2969
  }
2769
2970
  });
2971
+ this.handleErrors();
2770
2972
  }
2771
2973
  ngAfterViewInit() {
2772
2974
  if (this.closeBtn) {
@@ -2803,10 +3005,10 @@ class FngPromptComponent {
2803
3005
  }
2804
3006
  }
2805
3007
  FngPromptComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FngPromptComponent, deps: [{ token: i3.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2806
- FngPromptComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: FngPromptComponent, isStandalone: true, selector: "fng-prompt", inputs: { data: "data" }, outputs: { close: "close", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, viewQueries: [{ propertyName: "closeBtn", first: true, predicate: ["closeBtn"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-modal\">\n <div class=\"fwe-modal-close\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onClose()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-close-small\"></i>\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n </div>\n <div class=\"fwe-modal-header\">\n <h2 *ngIf=\"data.subtitle\" class=\"fwe-modal-h2\">{{ data.subtitle }}</h2>\n <h1 class=\"fwe-modal-h1\">{{ data.title }}</h1>\n </div>\n <form [formGroup]=\"form\" class=\"fwe-modal-body\">\n <label class=\"fwe-input-text\">\n <input type=\"text\" value=\"\" placeholder=\"Productkey...\" onkeyup=\"this.setAttribute('value', this.value);\" />\n <span class=\"fwe-input-text-info\">{{data.hint}}</span>\n <span class=\"fwe-input-text-label\">{{data.label}}</span>\n <span class=\"fwe-input-text-invalid\">{{error}}</span>\n </label>\n </form>\n <div class=\"fwe-modal-footer\" *ngIf=\"data.cancel || data.ok\">\n <div class=\"fwe-modal-buttons\">\n <button *ngIf=\"data.cancel\" type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data.cancel }}\n </button>\n <button *ngIf=\"data.ok\" type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-hero fwe-btn-lg\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
3008
+ FngPromptComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: FngPromptComponent, isStandalone: true, selector: "fng-prompt", inputs: { data: "data" }, outputs: { close: "close", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, viewQueries: [{ propertyName: "closeBtn", first: true, predicate: ["closeBtn"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-modal\">\n <div class=\"fwe-modal-close\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onClose()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-close-small\"></i>\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n </div>\n <div class=\"fwe-modal-header\">\n <h2 *ngIf=\"data.subtitle\" class=\"fwe-modal-h2\">{{ data.subtitle }}</h2>\n <h1 class=\"fwe-modal-h1\">{{ data.title }}</h1>\n </div>\n <form [formGroup]=\"form\" class=\"fwe-modal-body\">\n <fng-text-input\n type=\"text\"\n [label]=\"data.label\"\n formControlName=\"text\"\n [error]=\"error\"\n [hint]=\"data.hint\"\n [placeholder]=\"data.placeholder\"\n >\n </fng-text-input>\n </form>\n <div class=\"fwe-modal-footer\" *ngIf=\"data.cancel || data.ok\">\n <div class=\"fwe-modal-buttons\">\n <button *ngIf=\"data.cancel\" type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data.cancel }}\n </button>\n <button *ngIf=\"data.ok\" type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-hero fwe-btn-lg\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FngTextInputComponent, selector: "fng-text-input", inputs: ["label", "type", "readonly", "step", "min", "max", "tabindex", "placeholder", "name", "disabled", "value", "required", "error", "hint"] }], encapsulation: i0.ViewEncapsulation.None });
2807
3009
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FngPromptComponent, decorators: [{
2808
3010
  type: Component,
2809
- args: [{ standalone: true, imports: [ReactiveFormsModule, FormsModule, CommonModule], selector: 'fng-prompt', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-modal\">\n <div class=\"fwe-modal-close\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onClose()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-close-small\"></i>\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n </div>\n <div class=\"fwe-modal-header\">\n <h2 *ngIf=\"data.subtitle\" class=\"fwe-modal-h2\">{{ data.subtitle }}</h2>\n <h1 class=\"fwe-modal-h1\">{{ data.title }}</h1>\n </div>\n <form [formGroup]=\"form\" class=\"fwe-modal-body\">\n <label class=\"fwe-input-text\">\n <input type=\"text\" value=\"\" placeholder=\"Productkey...\" onkeyup=\"this.setAttribute('value', this.value);\" />\n <span class=\"fwe-input-text-info\">{{data.hint}}</span>\n <span class=\"fwe-input-text-label\">{{data.label}}</span>\n <span class=\"fwe-input-text-invalid\">{{error}}</span>\n </label>\n </form>\n <div class=\"fwe-modal-footer\" *ngIf=\"data.cancel || data.ok\">\n <div class=\"fwe-modal-buttons\">\n <button *ngIf=\"data.cancel\" type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data.cancel }}\n </button>\n <button *ngIf=\"data.ok\" type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-hero fwe-btn-lg\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n </div>\n </div>\n</div>\n" }]
3011
+ args: [{ standalone: true, imports: [ReactiveFormsModule, FormsModule, CommonModule, FngTextInputComponent], selector: 'fng-prompt', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-modal\">\n <div class=\"fwe-modal-close\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onClose()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-close-small\"></i>\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n </div>\n <div class=\"fwe-modal-header\">\n <h2 *ngIf=\"data.subtitle\" class=\"fwe-modal-h2\">{{ data.subtitle }}</h2>\n <h1 class=\"fwe-modal-h1\">{{ data.title }}</h1>\n </div>\n <form [formGroup]=\"form\" class=\"fwe-modal-body\">\n <fng-text-input\n type=\"text\"\n [label]=\"data.label\"\n formControlName=\"text\"\n [error]=\"error\"\n [hint]=\"data.hint\"\n [placeholder]=\"data.placeholder\"\n >\n </fng-text-input>\n </form>\n <div class=\"fwe-modal-footer\" *ngIf=\"data.cancel || data.ok\">\n <div class=\"fwe-modal-buttons\">\n <button *ngIf=\"data.cancel\" type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data.cancel }}\n </button>\n <button *ngIf=\"data.ok\" type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-hero fwe-btn-lg\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n </div>\n </div>\n</div>\n" }]
2810
3012
  }], ctorParameters: function () { return [{ type: i3.FormBuilder }]; }, propDecorators: { data: [{
2811
3013
  type: Input
2812
3014
  }], close: [{
@@ -2898,20 +3100,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
2898
3100
  type: Output
2899
3101
  }] } });
2900
3102
 
2901
- class FestoAngularModalsModule {
2902
- }
2903
- FestoAngularModalsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FestoAngularModalsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2904
- FestoAngularModalsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent], exports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent] });
2905
- FestoAngularModalsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent] });
2906
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FestoAngularModalsModule, decorators: [{
2907
- type: NgModule,
2908
- args: [{
2909
- imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent],
2910
- exports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent],
2911
- providers: []
2912
- }]
2913
- }] });
2914
-
2915
3103
  SwiperCore.use([FreeMode, Navigation, Keyboard, Thumbs, Zoom]);
2916
3104
  class FngImageGalleryComponent {
2917
3105
  constructor(cd) {
@@ -2967,6 +3155,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
2967
3155
  args: ['window:keyup', ['$event']]
2968
3156
  }] } });
2969
3157
 
3158
+ class FestoAngularModalsModule {
3159
+ }
3160
+ FestoAngularModalsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FestoAngularModalsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3161
+ FestoAngularModalsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent], exports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent] });
3162
+ FestoAngularModalsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent] });
3163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FestoAngularModalsModule, decorators: [{
3164
+ type: NgModule,
3165
+ args: [{
3166
+ imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent],
3167
+ exports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent],
3168
+ providers: []
3169
+ }]
3170
+ }] });
3171
+
2970
3172
  class FngModalService {
2971
3173
  constructor(overlay, router) {
2972
3174
  this.overlay = overlay;
@@ -3703,207 +3905,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
3703
3905
  type: Input
3704
3906
  }] } });
3705
3907
 
3706
- /**
3707
- * A custom form element for text inputs.
3708
- */
3709
- class FngTextInputComponent {
3710
- constructor() {
3711
- /**
3712
- * The text input label.
3713
- */
3714
- this.label = '';
3715
- this.innerType = 'text';
3716
- this.innerReadonly = false;
3717
- this.step = 0;
3718
- this.min = 0;
3719
- this.max = 0;
3720
- this.tabindex = 0;
3721
- this.placeholder = '';
3722
- this.name = '';
3723
- this.innerDisabled = false;
3724
- /**
3725
- * The inner value.
3726
- */
3727
- this.innerValue = '';
3728
- this.innerRequired = false;
3729
- /**
3730
- * Error description when invalid.
3731
- */
3732
- this.error = '';
3733
- /**
3734
- * Hint description when valid.
3735
- */
3736
- this.hint = '';
3737
- /**
3738
- * When true the text input has focus.
3739
- */
3740
- this.focused = false;
3741
- }
3742
- /**
3743
- * A string specifying the type of control to render.
3744
- */
3745
- get type() {
3746
- return this.innerType;
3747
- }
3748
- set type(value) {
3749
- const supported = ['text', 'number', 'password', 'date', 'time', 'datetime-local'];
3750
- if (value != null && supported.indexOf(value) !== -1) {
3751
- this.innerType = value;
3752
- }
3753
- else {
3754
- this.innerType = 'text';
3755
- }
3756
- }
3757
- get readonly() {
3758
- return this.innerReadonly;
3759
- }
3760
- set readonly(value) {
3761
- this.innerReadonly = coerceBooleanProperty(value);
3762
- }
3763
- /**
3764
- * When true the control's disabled attribute is set
3765
- * and it gets addeed the .disabled css class.
3766
- */
3767
- get disabled() {
3768
- return this.innerDisabled;
3769
- }
3770
- set disabled(value) {
3771
- this.innerDisabled = coerceBooleanProperty(value);
3772
- if (this.focused) {
3773
- this.focused = false;
3774
- }
3775
- }
3776
- /**
3777
- * The getter for value.
3778
- */
3779
- get value() {
3780
- return this.innerValue;
3781
- }
3782
- /**
3783
- * The setter for value.
3784
- */
3785
- set value(value) {
3786
- if (value != null) {
3787
- value = '' + value;
3788
- }
3789
- this.innerValue = value;
3790
- this.focused = !!value;
3791
- if (this.onChange != null) {
3792
- this.onChange(value);
3793
- }
3794
- if (this.onTouched != null) {
3795
- this.onTouched();
3796
- }
3797
- }
3798
- get required() {
3799
- return this.innerRequired;
3800
- }
3801
- set required(value) {
3802
- this.innerRequired = coerceBooleanProperty(value);
3803
- }
3804
- /**
3805
- * Called on component initialisation.
3806
- */
3807
- ngOnInit() {
3808
- this.onBlur();
3809
- }
3810
- /**
3811
- * Writes the value.
3812
- * @param value The value.
3813
- */
3814
- writeValue(value) {
3815
- if (value != null) {
3816
- value = '' + value;
3817
- }
3818
- this.innerValue = value;
3819
- this.focused = !!value;
3820
- }
3821
- /**
3822
- * Registers a function to onChange.
3823
- * @param fn The registered function.
3824
- */
3825
- registerOnChange(fn) {
3826
- this.onChange = fn;
3827
- }
3828
- /**
3829
- * Registers a function to onTouched.
3830
- * @param fn The registered function.
3831
- */
3832
- registerOnTouched(fn) {
3833
- this.onTouched = fn;
3834
- }
3835
- /**
3836
- * Called when the text input is in focus.
3837
- */
3838
- onFocus() {
3839
- this.focused = true;
3840
- }
3841
- /**
3842
- * Called when the text input blurs.
3843
- */
3844
- onBlur() {
3845
- if (this.focused) {
3846
- this.focused = false;
3847
- }
3848
- }
3849
- /**
3850
- * Sets the disabled state.
3851
- * @param isDisabled When true the control is disabled
3852
- */
3853
- setDisabledState(isDisabled) {
3854
- this.disabled = isDisabled;
3855
- }
3856
- }
3857
- FngTextInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FngTextInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3858
- FngTextInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: FngTextInputComponent, isStandalone: true, selector: "fng-text-input", inputs: { label: "label", type: "type", readonly: "readonly", step: "step", min: "min", max: "max", tabindex: "tabindex", placeholder: "placeholder", name: "name", disabled: "disabled", value: "value", required: "required", error: "error", hint: "hint" }, providers: [
3859
- {
3860
- provide: NG_VALUE_ACCESSOR,
3861
- useExisting: forwardRef(() => FngTextInputComponent),
3862
- multi: true
3863
- }
3864
- ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<label class=\"fwe-input-text\" [class.fwe-no-pointer-events]=\"readonly === true\">\n <input\n #inputElement\n [disabled]=\"disabled\"\n [required]=\"required === true || false\"\n [attr.readonly]=\"readonly === true || null\"\n [attr.placeholder]=\"placeholder || null\"\n [attr.type]=\"type\"\n [attr.step]=\"step\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.name]=\"name || null\"\n [attr.tabindex]=\"tabindex\"\n [class.fng-has-value]=\"value != null && value !== ''\"\n autocomplete=\"off\"\n (focus)=\"onFocus()\"\n [(ngModel)]=\"value\"\n (blur)=\"onBlur()\"\n />\n <span class=\"fwe-input-text-label\">{{ label }}</span>\n <span *ngIf=\"hint; else projectedHint\" class=\"fwe-input-text-info\">{{ hint }}</span>\n <span *ngIf=\"error; else projectedError\" class=\"fwe-input-text-invalid\">{{ error }}</span>\n\n <ng-template #projectedHint>\n <span class=\"fwe-input-text-info fng-projected\"><ng-content select=\".fng-hint\"></ng-content></span>\n </ng-template>\n\n <ng-template #projectedError>\n <span class=\"fwe-input-text-invalid fng-projected\"><ng-content select=\".fng-error\"></ng-content></span>\n </ng-template>\n</label>\n", styles: ["fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]{border-bottom:1px solid var(--fwe-red)!important;box-shadow:none;outline:none}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:focus{border-bottom:1px solid var(--fwe-red)!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled{border-bottom:1px solid var(--fwe-control-disabled)!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-info{color:var(--fwe-text-disabled)}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text .fwe-input-text-info{display:none!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text .fwe-input-text-invalid{display:block!important}fng-text-input.ng-valid label.fwe-input-text input[type=text]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=password]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=date]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=time]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=datetime-local]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=number]:hover:not(:disabled){border-bottom:1px solid var(--fwe-hero)!important}fng-text-input label.fwe-input-text.fwe-no-pointer-events{pointer-events:none!important}.fwe-input-text-invalid.fng-projected:empty{display:none}.fwe-input-text-info.fng-projected:empty{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
3865
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FngTextInputComponent, decorators: [{
3866
- type: Component,
3867
- args: [{ standalone: true, imports: [CommonModule, FormsModule], selector: 'fng-text-input', providers: [
3868
- {
3869
- provide: NG_VALUE_ACCESSOR,
3870
- useExisting: forwardRef(() => FngTextInputComponent),
3871
- multi: true
3872
- }
3873
- ], encapsulation: ViewEncapsulation.None, template: "<label class=\"fwe-input-text\" [class.fwe-no-pointer-events]=\"readonly === true\">\n <input\n #inputElement\n [disabled]=\"disabled\"\n [required]=\"required === true || false\"\n [attr.readonly]=\"readonly === true || null\"\n [attr.placeholder]=\"placeholder || null\"\n [attr.type]=\"type\"\n [attr.step]=\"step\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.name]=\"name || null\"\n [attr.tabindex]=\"tabindex\"\n [class.fng-has-value]=\"value != null && value !== ''\"\n autocomplete=\"off\"\n (focus)=\"onFocus()\"\n [(ngModel)]=\"value\"\n (blur)=\"onBlur()\"\n />\n <span class=\"fwe-input-text-label\">{{ label }}</span>\n <span *ngIf=\"hint; else projectedHint\" class=\"fwe-input-text-info\">{{ hint }}</span>\n <span *ngIf=\"error; else projectedError\" class=\"fwe-input-text-invalid\">{{ error }}</span>\n\n <ng-template #projectedHint>\n <span class=\"fwe-input-text-info fng-projected\"><ng-content select=\".fng-hint\"></ng-content></span>\n </ng-template>\n\n <ng-template #projectedError>\n <span class=\"fwe-input-text-invalid fng-projected\"><ng-content select=\".fng-error\"></ng-content></span>\n </ng-template>\n</label>\n", styles: ["fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]{border-bottom:1px solid var(--fwe-red)!important;box-shadow:none;outline:none}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:focus{border-bottom:1px solid var(--fwe-red)!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled{border-bottom:1px solid var(--fwe-control-disabled)!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-info{color:var(--fwe-text-disabled)}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text .fwe-input-text-info{display:none!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text .fwe-input-text-invalid{display:block!important}fng-text-input.ng-valid label.fwe-input-text input[type=text]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=password]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=date]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=time]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=datetime-local]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=number]:hover:not(:disabled){border-bottom:1px solid var(--fwe-hero)!important}fng-text-input label.fwe-input-text.fwe-no-pointer-events{pointer-events:none!important}.fwe-input-text-invalid.fng-projected:empty{display:none}.fwe-input-text-info.fng-projected:empty{display:none}\n"] }]
3874
- }], propDecorators: { label: [{
3875
- type: Input
3876
- }], type: [{
3877
- type: Input
3878
- }], readonly: [{
3879
- type: Input
3880
- }], step: [{
3881
- type: Input
3882
- }], min: [{
3883
- type: Input
3884
- }], max: [{
3885
- type: Input
3886
- }], tabindex: [{
3887
- type: Input
3888
- }], placeholder: [{
3889
- type: Input
3890
- }], name: [{
3891
- type: Input
3892
- }], disabled: [{
3893
- type: Input
3894
- }], value: [{
3895
- type: Input
3896
- }], required: [{
3897
- type: Input
3898
- }], error: [{
3899
- type: Input
3900
- }], hint: [{
3901
- type: Input
3902
- }], inputElement: [{
3903
- type: ViewChild,
3904
- args: ['inputElement']
3905
- }] } });
3906
-
3907
3908
  class FngTimePickerDropdownComponent {
3908
3909
  constructor() {
3909
3910
  this.date = new Date();
@@ -5494,7 +5495,7 @@ FngSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ver
5494
5495
  useExisting: forwardRef(() => FngSelectComponent),
5495
5496
  multi: true
5496
5497
  }
5497
- ], queries: [{ propertyName: "fngSelectOptions", predicate: FngSelectOptionComponent }], viewQueries: [{ propertyName: "elementRef", first: true, predicate: ["div"], descendants: true }], ngImport: i0, template: "<div #div class=\"fwe-select-wrapper\" [class.fwe-disabled]=\"disabled\" [class.fng-hide-label]=\"hideLabel\">\n <div\n class=\"fwe-select\"\n (click)=\"toggle()\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n [class.fwe-focus]=\"showOptions\"\n [class.fwe-required]=\"required\"\n [class.fwe-disabled]=\"disabled\"\n [class.fwe-pty]=\"empty\"\n >\n <div class=\"fwe-select-content\">\n <ng-container *ngIf=\"!multiple; else chips\">\n {{ value != null && value | fngChipText: options:optionsValueKey:optionsTextKey }}\n </ng-container>\n <ng-template #chips>\n <div class=\"fwe-chip-container\">\n <div\n *ngFor=\"let v of value\"\n class=\"fwe-chip chip-text-truncate fwe-pr-4\"\n [style.max-width.px]=\"triggerWidth\"\n [title]=\"v | fngChipText: options:optionsValueKey:optionsTextKey\"\n >\n {{ v | fngChipText: options:optionsValueKey:optionsTextKey }}\n <span class=\"chip-removable\" (click)=\"removeChip($event, v)\"></span>\n </div>\n </div>\n </ng-template>\n </div>\n </div>\n <ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayMinWidth]=\"triggerWidth\"\n [cdkConnectedOverlayOpen]=\"showOptions\"\n [cdkConnectedOverlayPanelClass]=\"selectPanelClasses\"\n (backdropClick)=\"close()\"\n >\n <div class=\"fng-select-panel-wrap\">\n <ul class=\"fwe-select-options-container\">\n <li class=\"fwe-select-option\" *ngIf=\"resetOption != null && !multiple\" (click)=\"select(null, $event)\">{{ resetOption }}</li>\n <li\n class=\"fwe-select-option\"\n *ngFor=\"let option of options; let i = index\"\n (click)=\"select(getOptionValue(i), $event)\"\n [title]=\"getOptionText(i) || option?.text\"\n >\n <span class=\"fwe-select-option-content\">\n <span\n *ngIf=\"multiple\"\n class=\"fng-select-pseudo-checkbox\"\n [ngClass]=\"{ 'fng-select-pseudo-checkbox-checked': checked.get(getOptionValue(i)) === 'checked' }\"\n ></span>\n <span *ngIf=\"hasProjectedOptions; else defaultTemplate\" [innerHTML]=\"projectedHtml[i]\"></span>\n <ng-template #defaultTemplate>{{ getOptionText(i) || option?.text }}</ng-template>\n </span>\n </li>\n </ul>\n </div>\n </ng-template>\n <label class=\"fwe-select-label\" [for]=\"id\" [class.fwe-sr-only]=\"hideLabel\">{{ label }}</label>\n <div class=\"fwe-select-description\" *ngIf=\"hint\">\n {{ hint }}\n </div>\n <div class=\"fwe-select-invalid\" *ngIf=\"error\">\n {{ error }}\n </div>\n</div>\n<div class=\"fwe-d-none\" (cdkObserveContent)=\"onContentChange($event)\">\n <ng-content></ng-content>\n</div>\n", styles: [".fng-select-panel-open .fng-select-panel{opacity:1!important}fng-select{width:auto}fng-select.ng-invalid:not(.ng-pristine) .fwe-select:hover{border-color:var(--fwe-red)}fng-select.ng-invalid:not(.ng-pristine) .fwe-select.fwe-required~.fwe-select-invalid{display:block}fng-select.ng-invalid:not(.ng-pristine) .fwe-select.fwe-required~.fwe-select-description{display:none}.fng-select-panel{opacity:0!important}.fng-select-panel.fng-select-panel-options-3 .fwe-select-options-container{max-height:162px}.fng-select-panel.fng-select-panel-options-4 .fwe-select-options-container{max-height:210px}.fng-select-panel.fng-select-panel-options-5 .fwe-select-options-container{max-height:258px}.fng-select-panel.fng-select-panel-options-6 .fwe-select-options-container{max-height:306px}.fng-select-panel.fng-select-panel-options-7 .fwe-select-options-container{max-height:354px}.fng-select-panel.fng-select-panel-options-8 .fwe-select-options-container{max-height:402px}.fng-select-panel.fng-select-panel-options-9 .fwe-select-options-container{max-height:450px}.fng-select-panel.fng-select-panel-options-10 .fwe-select-options-container{max-height:498px}.fng-select-panel .fwe-select-options-container{scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) var(--fwe-gray-100)}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar{width:12px}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar-track{background:transparent}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:6px}.fng-select-panel-wrap{flex-basis:100%}.fwe-select-options-container{position:relative;top:4px;left:0;max-height:258px;min-width:calc(100% + 0px)!important;max-width:280px;overflow:auto;font-size:var(--fwe-font-size-base);background-color:var(--fwe-white);border-radius:4px;padding:8px;margin:0;border:1px solid var(--fwe-gray-200);box-shadow:0 1px 4px #00000029;list-style:none;outline:0}.fwe-select-options-container .fwe-select-option{position:relative;line-height:24px;padding:12px 8px;min-height:24px;cursor:pointer}.fwe-select-options-container .fwe-select-option:hover{background-color:var(--fwe-gray-100)}.fwe-select-options-container .fwe-select-option:last-child{border-bottom:none}.fwe-select-options-container .fwe-select-option .fwe-select-option-content{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;line-height:24px;min-height:24px}.fng-select-pseudo-checkbox{width:16px;height:16px;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;color:var(--fwe-control-border);border:1px solid;transition:none;margin-right:12px;top:-1px}.fng-select-pseudo-checkbox:after{color:var(--fwe-white);position:absolute;display:block;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0,0,.2,.1)}.fng-select-pseudo-checkbox.fng-select-pseudo-checkbox-checked{background:var(--fwe-caerul);border:1px solid var(--fwe-caerul)}.fng-select-pseudo-checkbox.fng-select-pseudo-checkbox-checked:after{top:3px;left:2px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.chip-text-truncate{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-removable:after{position:absolute;right:5px;top:4px;color:var(--fwe-text);font-family:var(--fwe-font-family-icons-16);font-size:var(--fwe-font-size-base);content:\"\\ea1c\";line-height:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fwe-select-wrapper{display:flex;width:inherit;min-width:48px}.fwe-select-wrapper:before{bottom:unset;top:24px}.fwe-select-wrapper.fng-hide-label{margin-top:18px}.fwe-select-wrapper.fng-hide-label:before{top:6px}.fwe-select-wrapper.fwe-disabled:before{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select{cursor:pointer;height:unset;min-height:33px}.fwe-select-wrapper .fwe-select .fwe-select-content{padding-right:24px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5rem}.fwe-select-wrapper .fwe-select.fwe-required:not(.fwe-disabled)~.fwe-select-label:after{position:relative;left:3px;display:inline-block;content:\"*\"}.fwe-select-wrapper .fwe-select.fwe-disabled{cursor:default;border-color:var(--fwe-control-disabled)!important}.fwe-select-wrapper .fwe-select.fwe-disabled~.fwe-select-label{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-select-content{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-chip{color:var(--fwe-text-disabled);border:1px solid var(--fwe-control-disabled);pointer-events:none}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-chip .chip-removable:after{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select-label:empty~.fwe-select-options-container,.fwe-select-wrapper .fwe-select-label.fwe-sr-only~.fwe-select-options-container{top:38px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: FngChipTextPipe, name: "fngChipText" }, { kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1$3.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1$3.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }], encapsulation: i0.ViewEncapsulation.None });
5498
+ ], queries: [{ propertyName: "fngSelectOptions", predicate: FngSelectOptionComponent }], viewQueries: [{ propertyName: "elementRef", first: true, predicate: ["div"], descendants: true }], ngImport: i0, template: "<div #div class=\"fwe-select-wrapper\" [class.fwe-disabled]=\"disabled\" [class.fng-hide-label]=\"hideLabel\">\n <div\n class=\"fwe-select\"\n (click)=\"toggle()\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n [class.fwe-focus]=\"showOptions\"\n [class.fwe-required]=\"required\"\n [class.fwe-disabled]=\"disabled\"\n [class.fwe-pty]=\"empty\"\n >\n <div class=\"fwe-select-content\">\n <ng-container *ngIf=\"!multiple; else chips\">\n {{ value != null && value | fngChipText: options:optionsValueKey:optionsTextKey }}\n </ng-container>\n <ng-template #chips>\n <div class=\"fwe-chip-container\">\n <div\n *ngFor=\"let v of value\"\n class=\"fwe-chip chip-text-truncate fwe-pr-4\"\n [style.max-width.px]=\"triggerWidth\"\n [title]=\"v | fngChipText: options:optionsValueKey:optionsTextKey\"\n >\n {{ v | fngChipText: options:optionsValueKey:optionsTextKey }}\n <span class=\"chip-removable\" (click)=\"removeChip($event, v)\"></span>\n </div>\n </div>\n </ng-template>\n </div>\n </div>\n <ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayMinWidth]=\"triggerWidth\"\n [cdkConnectedOverlayOpen]=\"showOptions\"\n [cdkConnectedOverlayPanelClass]=\"selectPanelClasses\"\n (backdropClick)=\"close()\"\n >\n <div class=\"fng-select-panel-wrap\">\n <ul class=\"fwe-select-options-container\">\n <li class=\"fwe-select-option\" *ngIf=\"resetOption != null && !multiple\" (click)=\"select(null, $event)\">{{ resetOption }}</li>\n <li\n class=\"fwe-select-option\"\n *ngFor=\"let option of options; let i = index\"\n (click)=\"select(getOptionValue(i), $event)\"\n [title]=\"getOptionText(i) || option?.text\"\n >\n <span class=\"fwe-select-option-content\">\n <span\n *ngIf=\"multiple\"\n class=\"fng-select-pseudo-checkbox\"\n [ngClass]=\"{ 'fng-select-pseudo-checkbox-checked': checked.get(getOptionValue(i)) === 'checked' }\"\n ></span>\n <span *ngIf=\"hasProjectedOptions; else defaultTemplate\" [innerHTML]=\"projectedHtml[i]\"></span>\n <ng-template #defaultTemplate>{{ getOptionText(i) || option?.text }}</ng-template>\n </span>\n </li>\n </ul>\n </div>\n </ng-template>\n <label class=\"fwe-select-label\" [for]=\"id\" [class.fwe-sr-only]=\"hideLabel\">{{ label }}</label>\n <div class=\"fwe-select-description\" *ngIf=\"hint\">\n {{ hint }}\n </div>\n <div class=\"fwe-select-invalid\" *ngIf=\"error\">\n {{ error }}\n </div>\n</div>\n<div class=\"fwe-d-none\" (cdkObserveContent)=\"onContentChange($event)\">\n <ng-content></ng-content>\n</div>\n", styles: [".fng-select-panel-open .fng-select-panel{opacity:1!important}fng-select{width:auto}fng-select.ng-invalid:not(.ng-pristine) .fwe-select:hover{border-color:var(--fwe-red)}fng-select.ng-invalid:not(.ng-pristine) .fwe-select.fwe-required~.fwe-select-invalid{display:block}fng-select.ng-invalid:not(.ng-pristine) .fwe-select.fwe-required~.fwe-select-description{display:none}.fng-select-panel{opacity:0!important}.fng-select-panel.fng-select-panel-options-3 .fwe-select-options-container{max-height:162px}.fng-select-panel.fng-select-panel-options-4 .fwe-select-options-container{max-height:210px}.fng-select-panel.fng-select-panel-options-5 .fwe-select-options-container{max-height:258px}.fng-select-panel.fng-select-panel-options-6 .fwe-select-options-container{max-height:306px}.fng-select-panel.fng-select-panel-options-7 .fwe-select-options-container{max-height:354px}.fng-select-panel.fng-select-panel-options-8 .fwe-select-options-container{max-height:402px}.fng-select-panel.fng-select-panel-options-9 .fwe-select-options-container{max-height:450px}.fng-select-panel.fng-select-panel-options-10 .fwe-select-options-container{max-height:498px}.fng-select-panel .fwe-select-options-container{scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) var(--fwe-gray-100)}@media (pointer: fine){.fng-select-panel .fwe-select-options-container::-webkit-scrollbar{width:14px}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar-track{background:transparent}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:8px}}.fng-select-panel-wrap{flex-basis:100%}.fwe-select-options-container{position:relative;top:4px;left:0;max-height:258px;min-width:calc(100% + 0px)!important;max-width:280px;overflow:auto;font-size:var(--fwe-font-size-base);background-color:var(--fwe-white);border-radius:4px;padding:8px;margin:0;border:1px solid var(--fwe-gray-200);box-shadow:0 1px 4px #00000029;list-style:none;outline:0}.fwe-select-options-container .fwe-select-option{position:relative;line-height:24px;padding:12px 8px;min-height:24px;cursor:pointer}.fwe-select-options-container .fwe-select-option:hover{background-color:var(--fwe-gray-100)}.fwe-select-options-container .fwe-select-option:last-child{border-bottom:none}.fwe-select-options-container .fwe-select-option .fwe-select-option-content{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;line-height:24px;min-height:24px}.fng-select-pseudo-checkbox{width:16px;height:16px;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;color:var(--fwe-control-border);border:1px solid;transition:none;margin-right:12px;top:-1px}.fng-select-pseudo-checkbox:after{color:var(--fwe-white);position:absolute;display:block;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0,0,.2,.1)}.fng-select-pseudo-checkbox.fng-select-pseudo-checkbox-checked{background:var(--fwe-caerul);border:1px solid var(--fwe-caerul)}.fng-select-pseudo-checkbox.fng-select-pseudo-checkbox-checked:after{top:3px;left:2px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.chip-text-truncate{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-removable:after{position:absolute;right:5px;top:4px;color:var(--fwe-text);font-family:var(--fwe-font-family-icons-16);font-size:var(--fwe-font-size-base);content:\"\\ea1c\";line-height:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fwe-select-wrapper{display:flex;width:inherit;min-width:48px}.fwe-select-wrapper:before{bottom:unset;top:24px}.fwe-select-wrapper.fng-hide-label{margin-top:18px}.fwe-select-wrapper.fng-hide-label:before{top:6px}.fwe-select-wrapper.fwe-disabled:before{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select{cursor:pointer;height:unset;min-height:33px}.fwe-select-wrapper .fwe-select .fwe-select-content{padding-right:24px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5rem}.fwe-select-wrapper .fwe-select.fwe-required:not(.fwe-disabled)~.fwe-select-label:after{position:relative;left:3px;display:inline-block;content:\"*\"}.fwe-select-wrapper .fwe-select.fwe-disabled{cursor:default;border-color:var(--fwe-control-disabled)!important}.fwe-select-wrapper .fwe-select.fwe-disabled~.fwe-select-label{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-select-content{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-chip{color:var(--fwe-text-disabled);border:1px solid var(--fwe-control-disabled);pointer-events:none}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-chip .chip-removable:after{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select-label:empty~.fwe-select-options-container,.fwe-select-wrapper .fwe-select-label.fwe-sr-only~.fwe-select-options-container{top:38px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: FngChipTextPipe, name: "fngChipText" }, { kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1$3.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1$3.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }], encapsulation: i0.ViewEncapsulation.None });
5498
5499
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FngSelectComponent, decorators: [{
5499
5500
  type: Component,
5500
5501
  args: [{ standalone: true, imports: [CommonModule, FngChipTextPipe, FngSelectOptionComponent, OverlayModule], selector: 'fng-select', encapsulation: ViewEncapsulation.None, providers: [
@@ -5503,7 +5504,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
5503
5504
  useExisting: forwardRef(() => FngSelectComponent),
5504
5505
  multi: true
5505
5506
  }
5506
- ], template: "<div #div class=\"fwe-select-wrapper\" [class.fwe-disabled]=\"disabled\" [class.fng-hide-label]=\"hideLabel\">\n <div\n class=\"fwe-select\"\n (click)=\"toggle()\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n [class.fwe-focus]=\"showOptions\"\n [class.fwe-required]=\"required\"\n [class.fwe-disabled]=\"disabled\"\n [class.fwe-pty]=\"empty\"\n >\n <div class=\"fwe-select-content\">\n <ng-container *ngIf=\"!multiple; else chips\">\n {{ value != null && value | fngChipText: options:optionsValueKey:optionsTextKey }}\n </ng-container>\n <ng-template #chips>\n <div class=\"fwe-chip-container\">\n <div\n *ngFor=\"let v of value\"\n class=\"fwe-chip chip-text-truncate fwe-pr-4\"\n [style.max-width.px]=\"triggerWidth\"\n [title]=\"v | fngChipText: options:optionsValueKey:optionsTextKey\"\n >\n {{ v | fngChipText: options:optionsValueKey:optionsTextKey }}\n <span class=\"chip-removable\" (click)=\"removeChip($event, v)\"></span>\n </div>\n </div>\n </ng-template>\n </div>\n </div>\n <ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayMinWidth]=\"triggerWidth\"\n [cdkConnectedOverlayOpen]=\"showOptions\"\n [cdkConnectedOverlayPanelClass]=\"selectPanelClasses\"\n (backdropClick)=\"close()\"\n >\n <div class=\"fng-select-panel-wrap\">\n <ul class=\"fwe-select-options-container\">\n <li class=\"fwe-select-option\" *ngIf=\"resetOption != null && !multiple\" (click)=\"select(null, $event)\">{{ resetOption }}</li>\n <li\n class=\"fwe-select-option\"\n *ngFor=\"let option of options; let i = index\"\n (click)=\"select(getOptionValue(i), $event)\"\n [title]=\"getOptionText(i) || option?.text\"\n >\n <span class=\"fwe-select-option-content\">\n <span\n *ngIf=\"multiple\"\n class=\"fng-select-pseudo-checkbox\"\n [ngClass]=\"{ 'fng-select-pseudo-checkbox-checked': checked.get(getOptionValue(i)) === 'checked' }\"\n ></span>\n <span *ngIf=\"hasProjectedOptions; else defaultTemplate\" [innerHTML]=\"projectedHtml[i]\"></span>\n <ng-template #defaultTemplate>{{ getOptionText(i) || option?.text }}</ng-template>\n </span>\n </li>\n </ul>\n </div>\n </ng-template>\n <label class=\"fwe-select-label\" [for]=\"id\" [class.fwe-sr-only]=\"hideLabel\">{{ label }}</label>\n <div class=\"fwe-select-description\" *ngIf=\"hint\">\n {{ hint }}\n </div>\n <div class=\"fwe-select-invalid\" *ngIf=\"error\">\n {{ error }}\n </div>\n</div>\n<div class=\"fwe-d-none\" (cdkObserveContent)=\"onContentChange($event)\">\n <ng-content></ng-content>\n</div>\n", styles: [".fng-select-panel-open .fng-select-panel{opacity:1!important}fng-select{width:auto}fng-select.ng-invalid:not(.ng-pristine) .fwe-select:hover{border-color:var(--fwe-red)}fng-select.ng-invalid:not(.ng-pristine) .fwe-select.fwe-required~.fwe-select-invalid{display:block}fng-select.ng-invalid:not(.ng-pristine) .fwe-select.fwe-required~.fwe-select-description{display:none}.fng-select-panel{opacity:0!important}.fng-select-panel.fng-select-panel-options-3 .fwe-select-options-container{max-height:162px}.fng-select-panel.fng-select-panel-options-4 .fwe-select-options-container{max-height:210px}.fng-select-panel.fng-select-panel-options-5 .fwe-select-options-container{max-height:258px}.fng-select-panel.fng-select-panel-options-6 .fwe-select-options-container{max-height:306px}.fng-select-panel.fng-select-panel-options-7 .fwe-select-options-container{max-height:354px}.fng-select-panel.fng-select-panel-options-8 .fwe-select-options-container{max-height:402px}.fng-select-panel.fng-select-panel-options-9 .fwe-select-options-container{max-height:450px}.fng-select-panel.fng-select-panel-options-10 .fwe-select-options-container{max-height:498px}.fng-select-panel .fwe-select-options-container{scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) var(--fwe-gray-100)}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar{width:12px}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar-track{background:transparent}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:6px}.fng-select-panel-wrap{flex-basis:100%}.fwe-select-options-container{position:relative;top:4px;left:0;max-height:258px;min-width:calc(100% + 0px)!important;max-width:280px;overflow:auto;font-size:var(--fwe-font-size-base);background-color:var(--fwe-white);border-radius:4px;padding:8px;margin:0;border:1px solid var(--fwe-gray-200);box-shadow:0 1px 4px #00000029;list-style:none;outline:0}.fwe-select-options-container .fwe-select-option{position:relative;line-height:24px;padding:12px 8px;min-height:24px;cursor:pointer}.fwe-select-options-container .fwe-select-option:hover{background-color:var(--fwe-gray-100)}.fwe-select-options-container .fwe-select-option:last-child{border-bottom:none}.fwe-select-options-container .fwe-select-option .fwe-select-option-content{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;line-height:24px;min-height:24px}.fng-select-pseudo-checkbox{width:16px;height:16px;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;color:var(--fwe-control-border);border:1px solid;transition:none;margin-right:12px;top:-1px}.fng-select-pseudo-checkbox:after{color:var(--fwe-white);position:absolute;display:block;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0,0,.2,.1)}.fng-select-pseudo-checkbox.fng-select-pseudo-checkbox-checked{background:var(--fwe-caerul);border:1px solid var(--fwe-caerul)}.fng-select-pseudo-checkbox.fng-select-pseudo-checkbox-checked:after{top:3px;left:2px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.chip-text-truncate{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-removable:after{position:absolute;right:5px;top:4px;color:var(--fwe-text);font-family:var(--fwe-font-family-icons-16);font-size:var(--fwe-font-size-base);content:\"\\ea1c\";line-height:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fwe-select-wrapper{display:flex;width:inherit;min-width:48px}.fwe-select-wrapper:before{bottom:unset;top:24px}.fwe-select-wrapper.fng-hide-label{margin-top:18px}.fwe-select-wrapper.fng-hide-label:before{top:6px}.fwe-select-wrapper.fwe-disabled:before{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select{cursor:pointer;height:unset;min-height:33px}.fwe-select-wrapper .fwe-select .fwe-select-content{padding-right:24px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5rem}.fwe-select-wrapper .fwe-select.fwe-required:not(.fwe-disabled)~.fwe-select-label:after{position:relative;left:3px;display:inline-block;content:\"*\"}.fwe-select-wrapper .fwe-select.fwe-disabled{cursor:default;border-color:var(--fwe-control-disabled)!important}.fwe-select-wrapper .fwe-select.fwe-disabled~.fwe-select-label{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-select-content{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-chip{color:var(--fwe-text-disabled);border:1px solid var(--fwe-control-disabled);pointer-events:none}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-chip .chip-removable:after{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select-label:empty~.fwe-select-options-container,.fwe-select-wrapper .fwe-select-label.fwe-sr-only~.fwe-select-options-container{top:38px}\n"] }]
5507
+ ], template: "<div #div class=\"fwe-select-wrapper\" [class.fwe-disabled]=\"disabled\" [class.fng-hide-label]=\"hideLabel\">\n <div\n class=\"fwe-select\"\n (click)=\"toggle()\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n [class.fwe-focus]=\"showOptions\"\n [class.fwe-required]=\"required\"\n [class.fwe-disabled]=\"disabled\"\n [class.fwe-pty]=\"empty\"\n >\n <div class=\"fwe-select-content\">\n <ng-container *ngIf=\"!multiple; else chips\">\n {{ value != null && value | fngChipText: options:optionsValueKey:optionsTextKey }}\n </ng-container>\n <ng-template #chips>\n <div class=\"fwe-chip-container\">\n <div\n *ngFor=\"let v of value\"\n class=\"fwe-chip chip-text-truncate fwe-pr-4\"\n [style.max-width.px]=\"triggerWidth\"\n [title]=\"v | fngChipText: options:optionsValueKey:optionsTextKey\"\n >\n {{ v | fngChipText: options:optionsValueKey:optionsTextKey }}\n <span class=\"chip-removable\" (click)=\"removeChip($event, v)\"></span>\n </div>\n </div>\n </ng-template>\n </div>\n </div>\n <ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayMinWidth]=\"triggerWidth\"\n [cdkConnectedOverlayOpen]=\"showOptions\"\n [cdkConnectedOverlayPanelClass]=\"selectPanelClasses\"\n (backdropClick)=\"close()\"\n >\n <div class=\"fng-select-panel-wrap\">\n <ul class=\"fwe-select-options-container\">\n <li class=\"fwe-select-option\" *ngIf=\"resetOption != null && !multiple\" (click)=\"select(null, $event)\">{{ resetOption }}</li>\n <li\n class=\"fwe-select-option\"\n *ngFor=\"let option of options; let i = index\"\n (click)=\"select(getOptionValue(i), $event)\"\n [title]=\"getOptionText(i) || option?.text\"\n >\n <span class=\"fwe-select-option-content\">\n <span\n *ngIf=\"multiple\"\n class=\"fng-select-pseudo-checkbox\"\n [ngClass]=\"{ 'fng-select-pseudo-checkbox-checked': checked.get(getOptionValue(i)) === 'checked' }\"\n ></span>\n <span *ngIf=\"hasProjectedOptions; else defaultTemplate\" [innerHTML]=\"projectedHtml[i]\"></span>\n <ng-template #defaultTemplate>{{ getOptionText(i) || option?.text }}</ng-template>\n </span>\n </li>\n </ul>\n </div>\n </ng-template>\n <label class=\"fwe-select-label\" [for]=\"id\" [class.fwe-sr-only]=\"hideLabel\">{{ label }}</label>\n <div class=\"fwe-select-description\" *ngIf=\"hint\">\n {{ hint }}\n </div>\n <div class=\"fwe-select-invalid\" *ngIf=\"error\">\n {{ error }}\n </div>\n</div>\n<div class=\"fwe-d-none\" (cdkObserveContent)=\"onContentChange($event)\">\n <ng-content></ng-content>\n</div>\n", styles: [".fng-select-panel-open .fng-select-panel{opacity:1!important}fng-select{width:auto}fng-select.ng-invalid:not(.ng-pristine) .fwe-select:hover{border-color:var(--fwe-red)}fng-select.ng-invalid:not(.ng-pristine) .fwe-select.fwe-required~.fwe-select-invalid{display:block}fng-select.ng-invalid:not(.ng-pristine) .fwe-select.fwe-required~.fwe-select-description{display:none}.fng-select-panel{opacity:0!important}.fng-select-panel.fng-select-panel-options-3 .fwe-select-options-container{max-height:162px}.fng-select-panel.fng-select-panel-options-4 .fwe-select-options-container{max-height:210px}.fng-select-panel.fng-select-panel-options-5 .fwe-select-options-container{max-height:258px}.fng-select-panel.fng-select-panel-options-6 .fwe-select-options-container{max-height:306px}.fng-select-panel.fng-select-panel-options-7 .fwe-select-options-container{max-height:354px}.fng-select-panel.fng-select-panel-options-8 .fwe-select-options-container{max-height:402px}.fng-select-panel.fng-select-panel-options-9 .fwe-select-options-container{max-height:450px}.fng-select-panel.fng-select-panel-options-10 .fwe-select-options-container{max-height:498px}.fng-select-panel .fwe-select-options-container{scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) var(--fwe-gray-100)}@media (pointer: fine){.fng-select-panel .fwe-select-options-container::-webkit-scrollbar{width:14px}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar-track{background:transparent}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:8px}}.fng-select-panel-wrap{flex-basis:100%}.fwe-select-options-container{position:relative;top:4px;left:0;max-height:258px;min-width:calc(100% + 0px)!important;max-width:280px;overflow:auto;font-size:var(--fwe-font-size-base);background-color:var(--fwe-white);border-radius:4px;padding:8px;margin:0;border:1px solid var(--fwe-gray-200);box-shadow:0 1px 4px #00000029;list-style:none;outline:0}.fwe-select-options-container .fwe-select-option{position:relative;line-height:24px;padding:12px 8px;min-height:24px;cursor:pointer}.fwe-select-options-container .fwe-select-option:hover{background-color:var(--fwe-gray-100)}.fwe-select-options-container .fwe-select-option:last-child{border-bottom:none}.fwe-select-options-container .fwe-select-option .fwe-select-option-content{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;line-height:24px;min-height:24px}.fng-select-pseudo-checkbox{width:16px;height:16px;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;color:var(--fwe-control-border);border:1px solid;transition:none;margin-right:12px;top:-1px}.fng-select-pseudo-checkbox:after{color:var(--fwe-white);position:absolute;display:block;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0,0,.2,.1)}.fng-select-pseudo-checkbox.fng-select-pseudo-checkbox-checked{background:var(--fwe-caerul);border:1px solid var(--fwe-caerul)}.fng-select-pseudo-checkbox.fng-select-pseudo-checkbox-checked:after{top:3px;left:2px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.chip-text-truncate{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-removable:after{position:absolute;right:5px;top:4px;color:var(--fwe-text);font-family:var(--fwe-font-family-icons-16);font-size:var(--fwe-font-size-base);content:\"\\ea1c\";line-height:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fwe-select-wrapper{display:flex;width:inherit;min-width:48px}.fwe-select-wrapper:before{bottom:unset;top:24px}.fwe-select-wrapper.fng-hide-label{margin-top:18px}.fwe-select-wrapper.fng-hide-label:before{top:6px}.fwe-select-wrapper.fwe-disabled:before{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select{cursor:pointer;height:unset;min-height:33px}.fwe-select-wrapper .fwe-select .fwe-select-content{padding-right:24px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5rem}.fwe-select-wrapper .fwe-select.fwe-required:not(.fwe-disabled)~.fwe-select-label:after{position:relative;left:3px;display:inline-block;content:\"*\"}.fwe-select-wrapper .fwe-select.fwe-disabled{cursor:default;border-color:var(--fwe-control-disabled)!important}.fwe-select-wrapper .fwe-select.fwe-disabled~.fwe-select-label{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-select-content{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-chip{color:var(--fwe-text-disabled);border:1px solid var(--fwe-control-disabled);pointer-events:none}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-chip .chip-removable:after{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select-label:empty~.fwe-select-options-container,.fwe-select-wrapper .fwe-select-label.fwe-sr-only~.fwe-select-options-container{top:38px}\n"] }]
5507
5508
  }], ctorParameters: function () {
5508
5509
  return [{ type: undefined, decorators: [{
5509
5510
  type: Inject,
@@ -6233,7 +6234,7 @@ FngTextEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
6233
6234
  useExisting: forwardRef(() => FngTextEditorComponent),
6234
6235
  multi: true
6235
6236
  }
6236
- ], viewQueries: [{ propertyName: "btnBold", first: true, predicate: ["btnBold"], descendants: true }, { propertyName: "btnItalic", first: true, predicate: ["btnItalic"], descendants: true }, { propertyName: "btnUnderline", first: true, predicate: ["btnUnderline"], descendants: true }, { propertyName: "btnAlignCenter", first: true, predicate: ["btnAlignCenter"], descendants: true }, { propertyName: "btnAlignRight", first: true, predicate: ["btnAlignRight"], descendants: true }, { propertyName: "btnLink", first: true, predicate: ["btnLink"], descendants: true }, { propertyName: "btnUl", first: true, predicate: ["btnUl"], descendants: true }, { propertyName: "btnOl", first: true, predicate: ["btnOl"], descendants: true }, { propertyName: "btnImage", first: true, predicate: ["btnImage"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<label class=\"fwe-input-text\" [class.fwe-disabled]=\"disabled\">\n <div class=\"fng-editor-toolbar\" [id]=\"'editor-toolbar-' + id\">\n <span class=\"ql-formats fwe-d-none\">\n <select class=\"ql-size\" aria-hidden=\"true\">\n <option value=\"small\"></option>\n <option selected></option>\n <option value=\"large\"></option>\n <option value=\"huge\"></option>\n </select>\n </span>\n <span class=\"ql-formats fng-editor-toolbar-buttons-container fwe-mr-3\">\n <ng-container *ngIf=\"config?.toolbar?.bold\">\n <button type=\"button\" #btnBold class=\"ql-bold fwe-d-none action-bold\" aria-hidden=\"true\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.underline || config.toolbar?.italic\"\n (click)=\"delegate($event, 'bold')\"\n [disabled]=\"disabled\"\n >\n <div class=\"fng-button-text fng-text-bold\">B</div>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.italic\">\n <button type=\"button\" #btnItalic class=\"ql-italic fwe-d-none action-italic\" aria-hidden=\"true\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.underline\"\n (click)=\"delegate($event, 'italic')\"\n [disabled]=\"disabled\"\n >\n <div class=\"fng-button-text fng-text-italic\">I</div>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.underline\">\n <button type=\"button\" #btnUnderline class=\"ql-underline fwe-d-none action-underline\" aria-hidden=\"true\"></button>\n <button type=\"button\" class=\"fwe-btn fng-button\" (click)=\"delegate($event, 'underline')\" [disabled]=\"disabled\">\n <div class=\"fng-button-text fng-text-underline\">U</div>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('typo')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.alignCenter\">\n <button type=\"button\" #btnAlignCenter class=\"ql-align fwe-d-none action-align-center\" aria-hidden=\"true\" value=\"center\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.alignRight\"\n (click)=\"delegate($event, 'align-center')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fng-icon-text-align-center fwe-pr-0\" [class.fng-gray]=\"disabled\"></i>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"config?.toolbar?.alignRight\">\n <button type=\"button\" #btnAlignRight class=\"ql-align fwe-d-none action-align-right\" aria-hidden=\"true\" value=\"right\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n (click)=\"delegate($event, 'align-right')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fng-icon-text-align-right fwe-pr-0\" [class.fng-gray]=\"disabled\"></i>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('text-align')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.bulletList\">\n <button type=\"button\" #btnUl class=\"ql-list fwe-d-none action-ul\" aria-hidden=\"true\" value=\"bullet\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.orderedList\"\n (click)=\"delegate($event, 'ul')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-list-list-view fwe-pr-0\"></i>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.orderedList\">\n <button type=\"button\" #btnOl class=\"ql-list fwe-d-none action-ol\" aria-hidden=\"true\" value=\"ordered\"></button>\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'ol')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-enumeration fwe-pr-0\"></i>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('lists')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.image\">\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'image')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-image-image fwe-pr-0\"></i>\n </button>\n <button type=\"button\" #btnImage class=\"ql-image fwe-d-none\" aria-hidden=\"true\"></button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('image')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.link\">\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'link')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-file-link fwe-pr-0\"></i>\n </button>\n <button type=\"button\" #btnLink class=\"ql-link fwe-d-none\" aria-hidden=\"true\"></button>\n </ng-container>\n </span>\n </div>\n <div class=\"fng-editor-container\" [id]=\"'editor-container-' + id\">\n <div class=\"fng-editor\" [id]=\"'editor-' + id\"></div>\n </div>\n <span class=\"fwe-input-text-label\" [id]=\"'editor-label-' + id\">{{ label }}</span>\n <span *ngIf=\"hint\" class=\"fng-text-editor-info\">{{ hint }}</span>\n <span *ngIf=\"error\" class=\"fng-text-editor-invalid\">{{ error }}</span>\n <span *ngIf=\"maxLength > 0 && value != null\" class=\"fwe-input-text-count\">{{ currentLength() }} / {{ maxLength }}</span>\n</label>\n", styles: ["@charset \"UTF-8\";/*!\n * Quill Editor v1.3.7\n * https://quilljs.com/\n * Copyright (c) 2014, Jason Chen\n * Copyright (c) 2013, salesforce.com\n */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:\"\\2022\"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:\"\\2611\"}.ql-editor ul[data-checked=false]>li:before{content:\"\\2610\"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) \". \"}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) \". \"}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) \". \"}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) \". \"}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) \". \"}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) \". \"}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) \". \"}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) \". \"}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) \". \"}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) \". \"}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:\"\";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:\"\";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=\"\"]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:\"Normal\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"1\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]:before{content:\"Heading 1\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"2\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]:before{content:\"Heading 2\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"3\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]:before{content:\"Heading 3\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"4\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]:before{content:\"Heading 4\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"5\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]:before{content:\"Heading 5\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"6\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]:before{content:\"Heading 6\"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:\"Sans Serif\"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:\"Serif\"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:\"Monospace\"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:\"Normal\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:\"Small\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:\"Large\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:\"Huge\"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:\"Visit URL:\";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:\"Edit\";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:\"Remove\";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:\"Save\";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:\"Enter link:\"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:\"Enter formula:\"}.ql-snow .ql-tooltip[data-mode=video]:before{content:\"Enter video:\"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}fng-text-editor .fng-divider-y{display:inline-flex;flex:0 0 1px;height:24px;width:1px;background-color:var(--fwe-gray-400)}fng-text-editor .fng-editor{min-height:100%}fng-text-editor .fng-editor-container{order:2;height:160px;min-height:100%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) var(--fwe-gray-100);padding-top:4px;padding-bottom:4px;padding-left:8px;border:var(--fwe-control-border) solid 1px}fng-text-editor .fng-editor-container::-webkit-scrollbar{width:12px}fng-text-editor .fng-editor-container::-webkit-scrollbar-track{background:transparent}fng-text-editor .fng-editor-container::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:6px}fng-text-editor .fng-editor-container:hover{border-color:var(--fwe-hero)}fng-text-editor .fng-editor-container[contenteditable=true]{outline:none}fng-text-editor .fng-editor-container[contenteditable=true]:focus{border-color:var(--fwe-hero)}fng-text-editor label.fwe-input-text{line-height:24px}fng-text-editor label.fwe-input-text .fwe-input-text-count{display:inline-block;line-height:var(--fwe-line-height-base);position:absolute;right:0;bottom:0;z-index:1;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}fng-text-editor label.fwe-input-text .fwe-input-text-label{order:-1}fng-text-editor label.fwe-input-text .fng-text-editor-info{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:var(--fwe-line-height-base);position:absolute;left:0;top:unset;bottom:0;z-index:2;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}fng-text-editor label.fwe-input-text.fwe-disabled{color:var(--fwe-text-disabled)}fng-text-editor label.fwe-input-text.fwe-disabled .fwe-input-text-label{color:var(--fwe-text-disabled)}fng-text-editor label.fwe-input-text.fwe-disabled .fng-editor-container{border-color:var(--fwe-control-disabled)!important}fng-text-editor label.fwe-input-text.fwe-disabled .fng-editor-container:hover{border-color:var(--fwe-control-disabled)!important}fng-text-editor label.fwe-input-text.fwe-disabled .fng-divider-y{background-color:var(--fwe-text-disabled)}fng-text-editor .fng-text-editor-invalid{display:none;line-height:1.5;position:absolute;left:0;bottom:0;z-index:2;color:var(--fwe-red);font-size:var(--fwe-font-size-small)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor{box-shadow:none;outline:none}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled{border-bottom:1px solid var(--fwe-control-disabled)!important}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fwe-input-text-label,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-invalid,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-info{color:var(--fwe-text-disabled)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fwe-input-text-label:after,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-invalid:after,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-info:after{color:var(--fwe-text-disabled)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor-container{border-color:var(--fwe-red)}fng-text-editor.ng-dirty.ng-invalid .fng-text-editor-info{display:none!important}fng-text-editor.ng-dirty.ng-invalid .fng-text-editor-invalid{display:block!important}fng-text-editor .fng-text-bold{font-weight:var(--fwe-font-weight-bold)}fng-text-editor .fng-text-italic{font-style:italic}fng-text-editor .fng-text-underline{text-decoration:underline}fng-text-editor .fng-icon-text-align-center{width:12px;height:10px;background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(51, 51, 51)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M5,7h6V9H5Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-center.fng-gray{background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(185, 186, 187)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M5,7h6V9H5Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-right{width:12px;height:10px;background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(51, 51, 51)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M8,7h6V9H8Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-right.fng-gray{background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(185, 186, 187)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M8,7h6V9H8Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .ql-tooltip{z-index:var(--fwe-z-index-tooltip)}fng-text-editor .ql-editor{font-family:var(--fwe-font-family-sans-serif);font-size:var(--fwe-font-size-base);padding:0;min-height:72px;overflow-x:hidden}fng-text-editor .ql-editor p::selection,fng-text-editor .ql-editor strong::selection,fng-text-editor .ql-editor em::selection,fng-text-editor .ql-editor u::selection,fng-text-editor .ql-editor ul::selection,fng-text-editor .ql-editor ol::selection,fng-text-editor .ql-editor li::selection,fng-text-editor .ql-editor a::selection{background:var(--fwe-icon-hero-light)}fng-text-editor .ql-container.ql-snow{border:0;background-color:var(--fwe-white)}fng-text-editor .ql-container.ql-snow .ql-tooltip{transform:translate(160px,12px);color:var(--fwe-black);box-shadow:-1px 1px 4px -1px #3333;border:1px solid var(--fwe-gray-200)}fng-text-editor .ql-container.ql-snow .ql-tooltip input{border:1px solid var(--fwe-gray-200)}fng-text-editor .ql-container.ql-snow .ql-tooltip input::selection{background:var(--fwe-icon-hero-light)}fng-text-editor .ql-container.ql-snow a{color:var(--fwe-caerul)}fng-text-editor .ql-toolbar.ql-snow{border:0;padding:4px 0}fng-text-editor .ql-toolbar.ql-snow .ql-formats.fng-editor-toolbar-buttons-container{display:flex;align-items:center;flex-wrap:wrap}fng-text-editor .ql-toolbar.ql-snow button{line-height:normal;box-sizing:border-box;display:inline-flex;text-align:center;padding:0 8px;height:32px;min-height:unset;color:var(--fwe-black);background:none;border-radius:4px;cursor:pointer;border:none;width:unset;max-width:24px;justify-content:center;align-items:center;float:unset}@media (hover: hover) and (pointer: fine){fng-text-editor .ql-toolbar.ql-snow button:hover{background-color:var(--fwe-control-dark);color:var(--fwe-black)}}fng-text-editor .ql-toolbar.ql-snow button:active{background-color:var(--fwe-control-darker)}fng-text-editor .ql-toolbar.ql-snow button.ql-active+button{background-color:var(--fwe-control)}fng-text-editor .ql-toolbar.ql-snow button.fng-btn-toolbar-list{padding:0 6px}fng-text-editor .ql-toolbar.ql-snow button.fng-button i{pointer-events:none}fng-text-editor .ql-toolbar.ql-snow button.fng-button div{pointer-events:none}fng-text-editor .ql-toolbar .fng-button-text{min-width:12px;line-height:16px}fng-text-editor label.fwe-input-text.fwe-disabled .ql-toolbar{pointer-events:none}fng-text-editor label.fwe-input-text.fwe-disabled .ql-toolbar button{color:var(--fwe-text-disabled)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: OverlayModule }, { kind: "ngmodule", type: ScrollingModule }, { kind: "ngmodule", type: DragDropModule }, { kind: "ngmodule", type: ObserversModule }], encapsulation: i0.ViewEncapsulation.None });
6237
+ ], viewQueries: [{ propertyName: "btnBold", first: true, predicate: ["btnBold"], descendants: true }, { propertyName: "btnItalic", first: true, predicate: ["btnItalic"], descendants: true }, { propertyName: "btnUnderline", first: true, predicate: ["btnUnderline"], descendants: true }, { propertyName: "btnAlignCenter", first: true, predicate: ["btnAlignCenter"], descendants: true }, { propertyName: "btnAlignRight", first: true, predicate: ["btnAlignRight"], descendants: true }, { propertyName: "btnLink", first: true, predicate: ["btnLink"], descendants: true }, { propertyName: "btnUl", first: true, predicate: ["btnUl"], descendants: true }, { propertyName: "btnOl", first: true, predicate: ["btnOl"], descendants: true }, { propertyName: "btnImage", first: true, predicate: ["btnImage"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<label class=\"fwe-input-text\" [class.fwe-disabled]=\"disabled\">\n <div class=\"fng-editor-toolbar\" [id]=\"'editor-toolbar-' + id\">\n <span class=\"ql-formats fwe-d-none\">\n <select class=\"ql-size\" aria-hidden=\"true\">\n <option value=\"small\"></option>\n <option selected></option>\n <option value=\"large\"></option>\n <option value=\"huge\"></option>\n </select>\n </span>\n <span class=\"ql-formats fng-editor-toolbar-buttons-container fwe-mr-3\">\n <ng-container *ngIf=\"config?.toolbar?.bold\">\n <button type=\"button\" #btnBold class=\"ql-bold fwe-d-none action-bold\" aria-hidden=\"true\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.underline || config.toolbar?.italic\"\n (click)=\"delegate($event, 'bold')\"\n [disabled]=\"disabled\"\n >\n <div class=\"fng-button-text fng-text-bold\">B</div>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.italic\">\n <button type=\"button\" #btnItalic class=\"ql-italic fwe-d-none action-italic\" aria-hidden=\"true\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.underline\"\n (click)=\"delegate($event, 'italic')\"\n [disabled]=\"disabled\"\n >\n <div class=\"fng-button-text fng-text-italic\">I</div>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.underline\">\n <button type=\"button\" #btnUnderline class=\"ql-underline fwe-d-none action-underline\" aria-hidden=\"true\"></button>\n <button type=\"button\" class=\"fwe-btn fng-button\" (click)=\"delegate($event, 'underline')\" [disabled]=\"disabled\">\n <div class=\"fng-button-text fng-text-underline\">U</div>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('typo')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.alignCenter\">\n <button type=\"button\" #btnAlignCenter class=\"ql-align fwe-d-none action-align-center\" aria-hidden=\"true\" value=\"center\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.alignRight\"\n (click)=\"delegate($event, 'align-center')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fng-icon-text-align-center fwe-pr-0\" [class.fng-gray]=\"disabled\"></i>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"config?.toolbar?.alignRight\">\n <button type=\"button\" #btnAlignRight class=\"ql-align fwe-d-none action-align-right\" aria-hidden=\"true\" value=\"right\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n (click)=\"delegate($event, 'align-right')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fng-icon-text-align-right fwe-pr-0\" [class.fng-gray]=\"disabled\"></i>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('text-align')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.bulletList\">\n <button type=\"button\" #btnUl class=\"ql-list fwe-d-none action-ul\" aria-hidden=\"true\" value=\"bullet\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.orderedList\"\n (click)=\"delegate($event, 'ul')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-list-list-view fwe-pr-0\"></i>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.orderedList\">\n <button type=\"button\" #btnOl class=\"ql-list fwe-d-none action-ol\" aria-hidden=\"true\" value=\"ordered\"></button>\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'ol')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-enumeration fwe-pr-0\"></i>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('lists')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.image\">\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'image')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-image-image fwe-pr-0\"></i>\n </button>\n <button type=\"button\" #btnImage class=\"ql-image fwe-d-none\" aria-hidden=\"true\"></button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('image')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.link\">\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'link')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-file-link fwe-pr-0\"></i>\n </button>\n <button type=\"button\" #btnLink class=\"ql-link fwe-d-none\" aria-hidden=\"true\"></button>\n </ng-container>\n </span>\n </div>\n <div class=\"fng-editor-container\" [id]=\"'editor-container-' + id\">\n <div class=\"fng-editor\" [id]=\"'editor-' + id\"></div>\n </div>\n <span class=\"fwe-input-text-label\" [id]=\"'editor-label-' + id\">{{ label }}</span>\n <span *ngIf=\"hint\" class=\"fng-text-editor-info\">{{ hint }}</span>\n <span *ngIf=\"error\" class=\"fng-text-editor-invalid\">{{ error }}</span>\n <span *ngIf=\"maxLength > 0 && value != null\" class=\"fwe-input-text-count\">{{ currentLength() }} / {{ maxLength }}</span>\n</label>\n", styles: ["@charset \"UTF-8\";/*!\n * Quill Editor v1.3.7\n * https://quilljs.com/\n * Copyright (c) 2014, Jason Chen\n * Copyright (c) 2013, salesforce.com\n */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:\"\\2022\"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:\"\\2611\"}.ql-editor ul[data-checked=false]>li:before{content:\"\\2610\"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) \". \"}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) \". \"}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) \". \"}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) \". \"}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) \". \"}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) \". \"}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) \". \"}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) \". \"}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) \". \"}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) \". \"}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:\"\";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:\"\";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=\"\"]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:\"Normal\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"1\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]:before{content:\"Heading 1\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"2\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]:before{content:\"Heading 2\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"3\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]:before{content:\"Heading 3\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"4\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]:before{content:\"Heading 4\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"5\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]:before{content:\"Heading 5\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"6\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]:before{content:\"Heading 6\"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:\"Sans Serif\"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:\"Serif\"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:\"Monospace\"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:\"Normal\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:\"Small\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:\"Large\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:\"Huge\"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:\"Visit URL:\";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:\"Edit\";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:\"Remove\";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:\"Save\";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:\"Enter link:\"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:\"Enter formula:\"}.ql-snow .ql-tooltip[data-mode=video]:before{content:\"Enter video:\"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}fng-text-editor .fng-divider-y{display:inline-flex;flex:0 0 1px;height:24px;width:1px;background-color:var(--fwe-gray-400)}fng-text-editor .fng-editor{min-height:100%}fng-text-editor .fng-editor-container{order:2;height:160px;min-height:100%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) var(--fwe-gray-100);padding-top:4px;padding-bottom:4px;padding-left:8px;border:var(--fwe-control-border) solid 1px}@media (pointer: fine){fng-text-editor .fng-editor-container::-webkit-scrollbar{width:14px}fng-text-editor .fng-editor-container::-webkit-scrollbar-track{background:transparent}fng-text-editor .fng-editor-container::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:8px}}fng-text-editor .fng-editor-container:hover{border-color:var(--fwe-hero)}fng-text-editor .fng-editor-container[contenteditable=true]{outline:none}fng-text-editor .fng-editor-container[contenteditable=true]:focus{border-color:var(--fwe-hero)}fng-text-editor label.fwe-input-text{line-height:24px}fng-text-editor label.fwe-input-text .fwe-input-text-count{display:inline-block;line-height:var(--fwe-line-height-base);position:absolute;right:0;bottom:0;z-index:1;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}fng-text-editor label.fwe-input-text .fwe-input-text-label{order:-1}fng-text-editor label.fwe-input-text .fng-text-editor-info{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:var(--fwe-line-height-base);position:absolute;left:0;top:unset;bottom:0;z-index:2;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}fng-text-editor label.fwe-input-text.fwe-disabled{color:var(--fwe-text-disabled)}fng-text-editor label.fwe-input-text.fwe-disabled .fwe-input-text-label{color:var(--fwe-text-disabled)}fng-text-editor label.fwe-input-text.fwe-disabled .fng-editor-container{border-color:var(--fwe-control-disabled)!important}fng-text-editor label.fwe-input-text.fwe-disabled .fng-editor-container:hover{border-color:var(--fwe-control-disabled)!important}fng-text-editor label.fwe-input-text.fwe-disabled .fng-divider-y{background-color:var(--fwe-text-disabled)}fng-text-editor .fng-text-editor-invalid{display:none;line-height:1.5;position:absolute;left:0;bottom:0;z-index:2;color:var(--fwe-red);font-size:var(--fwe-font-size-small)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor{box-shadow:none;outline:none}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled{border-bottom:1px solid var(--fwe-control-disabled)!important}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fwe-input-text-label,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-invalid,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-info{color:var(--fwe-text-disabled)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fwe-input-text-label:after,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-invalid:after,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-info:after{color:var(--fwe-text-disabled)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor-container{border-color:var(--fwe-red)}fng-text-editor.ng-dirty.ng-invalid .fng-text-editor-info{display:none!important}fng-text-editor.ng-dirty.ng-invalid .fng-text-editor-invalid{display:block!important}fng-text-editor .fng-text-bold{font-weight:var(--fwe-font-weight-bold)}fng-text-editor .fng-text-italic{font-style:italic}fng-text-editor .fng-text-underline{text-decoration:underline}fng-text-editor .fng-icon-text-align-center{width:12px;height:10px;background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(51, 51, 51)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M5,7h6V9H5Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-center.fng-gray{background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(185, 186, 187)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M5,7h6V9H5Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-right{width:12px;height:10px;background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(51, 51, 51)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M8,7h6V9H8Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-right.fng-gray{background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(185, 186, 187)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M8,7h6V9H8Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .ql-tooltip{z-index:var(--fwe-z-index-tooltip)}fng-text-editor .ql-editor{font-family:var(--fwe-font-family-sans-serif);font-size:var(--fwe-font-size-base);padding:0;min-height:72px;overflow-x:hidden}fng-text-editor .ql-editor p::selection,fng-text-editor .ql-editor strong::selection,fng-text-editor .ql-editor em::selection,fng-text-editor .ql-editor u::selection,fng-text-editor .ql-editor ul::selection,fng-text-editor .ql-editor ol::selection,fng-text-editor .ql-editor li::selection,fng-text-editor .ql-editor a::selection{background:var(--fwe-icon-hero-light)}fng-text-editor .ql-container.ql-snow{border:0;background-color:var(--fwe-white)}fng-text-editor .ql-container.ql-snow .ql-tooltip{transform:translate(160px,12px);color:var(--fwe-black);box-shadow:-1px 1px 4px -1px #3333;border:1px solid var(--fwe-gray-200)}fng-text-editor .ql-container.ql-snow .ql-tooltip input{border:1px solid var(--fwe-gray-200)}fng-text-editor .ql-container.ql-snow .ql-tooltip input::selection{background:var(--fwe-icon-hero-light)}fng-text-editor .ql-container.ql-snow a{color:var(--fwe-caerul)}fng-text-editor .ql-toolbar.ql-snow{border:0;padding:4px 0}fng-text-editor .ql-toolbar.ql-snow .ql-formats.fng-editor-toolbar-buttons-container{display:flex;align-items:center;flex-wrap:wrap}fng-text-editor .ql-toolbar.ql-snow button{line-height:normal;box-sizing:border-box;display:inline-flex;text-align:center;padding:0 8px;height:32px;min-height:unset;color:var(--fwe-black);background:none;border-radius:4px;cursor:pointer;border:none;width:unset;max-width:24px;justify-content:center;align-items:center;float:unset}@media (hover: hover) and (pointer: fine){fng-text-editor .ql-toolbar.ql-snow button:hover{background-color:var(--fwe-control-dark);color:var(--fwe-black)}}fng-text-editor .ql-toolbar.ql-snow button:active{background-color:var(--fwe-control-darker)}fng-text-editor .ql-toolbar.ql-snow button.ql-active+button{background-color:var(--fwe-control)}fng-text-editor .ql-toolbar.ql-snow button.fng-btn-toolbar-list{padding:0 6px}fng-text-editor .ql-toolbar.ql-snow button.fng-button i{pointer-events:none}fng-text-editor .ql-toolbar.ql-snow button.fng-button div{pointer-events:none}fng-text-editor .ql-toolbar .fng-button-text{min-width:12px;line-height:16px}fng-text-editor label.fwe-input-text.fwe-disabled .ql-toolbar{pointer-events:none}fng-text-editor label.fwe-input-text.fwe-disabled .ql-toolbar button{color:var(--fwe-text-disabled)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: OverlayModule }, { kind: "ngmodule", type: ScrollingModule }, { kind: "ngmodule", type: DragDropModule }, { kind: "ngmodule", type: ObserversModule }], encapsulation: i0.ViewEncapsulation.None });
6237
6238
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: FngTextEditorComponent, decorators: [{
6238
6239
  type: Component,
6239
6240
  args: [{ standalone: true, imports: [CommonModule, ReactiveFormsModule, FormsModule, CommonModule, OverlayModule, ScrollingModule, DragDropModule, ObserversModule], selector: 'fng-text-editor', encapsulation: ViewEncapsulation.None, providers: [
@@ -6242,7 +6243,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
6242
6243
  useExisting: forwardRef(() => FngTextEditorComponent),
6243
6244
  multi: true
6244
6245
  }
6245
- ], template: "<label class=\"fwe-input-text\" [class.fwe-disabled]=\"disabled\">\n <div class=\"fng-editor-toolbar\" [id]=\"'editor-toolbar-' + id\">\n <span class=\"ql-formats fwe-d-none\">\n <select class=\"ql-size\" aria-hidden=\"true\">\n <option value=\"small\"></option>\n <option selected></option>\n <option value=\"large\"></option>\n <option value=\"huge\"></option>\n </select>\n </span>\n <span class=\"ql-formats fng-editor-toolbar-buttons-container fwe-mr-3\">\n <ng-container *ngIf=\"config?.toolbar?.bold\">\n <button type=\"button\" #btnBold class=\"ql-bold fwe-d-none action-bold\" aria-hidden=\"true\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.underline || config.toolbar?.italic\"\n (click)=\"delegate($event, 'bold')\"\n [disabled]=\"disabled\"\n >\n <div class=\"fng-button-text fng-text-bold\">B</div>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.italic\">\n <button type=\"button\" #btnItalic class=\"ql-italic fwe-d-none action-italic\" aria-hidden=\"true\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.underline\"\n (click)=\"delegate($event, 'italic')\"\n [disabled]=\"disabled\"\n >\n <div class=\"fng-button-text fng-text-italic\">I</div>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.underline\">\n <button type=\"button\" #btnUnderline class=\"ql-underline fwe-d-none action-underline\" aria-hidden=\"true\"></button>\n <button type=\"button\" class=\"fwe-btn fng-button\" (click)=\"delegate($event, 'underline')\" [disabled]=\"disabled\">\n <div class=\"fng-button-text fng-text-underline\">U</div>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('typo')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.alignCenter\">\n <button type=\"button\" #btnAlignCenter class=\"ql-align fwe-d-none action-align-center\" aria-hidden=\"true\" value=\"center\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.alignRight\"\n (click)=\"delegate($event, 'align-center')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fng-icon-text-align-center fwe-pr-0\" [class.fng-gray]=\"disabled\"></i>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"config?.toolbar?.alignRight\">\n <button type=\"button\" #btnAlignRight class=\"ql-align fwe-d-none action-align-right\" aria-hidden=\"true\" value=\"right\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n (click)=\"delegate($event, 'align-right')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fng-icon-text-align-right fwe-pr-0\" [class.fng-gray]=\"disabled\"></i>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('text-align')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.bulletList\">\n <button type=\"button\" #btnUl class=\"ql-list fwe-d-none action-ul\" aria-hidden=\"true\" value=\"bullet\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.orderedList\"\n (click)=\"delegate($event, 'ul')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-list-list-view fwe-pr-0\"></i>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.orderedList\">\n <button type=\"button\" #btnOl class=\"ql-list fwe-d-none action-ol\" aria-hidden=\"true\" value=\"ordered\"></button>\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'ol')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-enumeration fwe-pr-0\"></i>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('lists')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.image\">\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'image')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-image-image fwe-pr-0\"></i>\n </button>\n <button type=\"button\" #btnImage class=\"ql-image fwe-d-none\" aria-hidden=\"true\"></button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('image')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.link\">\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'link')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-file-link fwe-pr-0\"></i>\n </button>\n <button type=\"button\" #btnLink class=\"ql-link fwe-d-none\" aria-hidden=\"true\"></button>\n </ng-container>\n </span>\n </div>\n <div class=\"fng-editor-container\" [id]=\"'editor-container-' + id\">\n <div class=\"fng-editor\" [id]=\"'editor-' + id\"></div>\n </div>\n <span class=\"fwe-input-text-label\" [id]=\"'editor-label-' + id\">{{ label }}</span>\n <span *ngIf=\"hint\" class=\"fng-text-editor-info\">{{ hint }}</span>\n <span *ngIf=\"error\" class=\"fng-text-editor-invalid\">{{ error }}</span>\n <span *ngIf=\"maxLength > 0 && value != null\" class=\"fwe-input-text-count\">{{ currentLength() }} / {{ maxLength }}</span>\n</label>\n", styles: ["@charset \"UTF-8\";/*!\n * Quill Editor v1.3.7\n * https://quilljs.com/\n * Copyright (c) 2014, Jason Chen\n * Copyright (c) 2013, salesforce.com\n */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:\"\\2022\"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:\"\\2611\"}.ql-editor ul[data-checked=false]>li:before{content:\"\\2610\"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) \". \"}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) \". \"}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) \". \"}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) \". \"}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) \". \"}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) \". \"}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) \". \"}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) \". \"}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) \". \"}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) \". \"}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:\"\";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:\"\";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=\"\"]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:\"Normal\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"1\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]:before{content:\"Heading 1\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"2\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]:before{content:\"Heading 2\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"3\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]:before{content:\"Heading 3\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"4\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]:before{content:\"Heading 4\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"5\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]:before{content:\"Heading 5\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"6\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]:before{content:\"Heading 6\"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:\"Sans Serif\"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:\"Serif\"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:\"Monospace\"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:\"Normal\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:\"Small\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:\"Large\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:\"Huge\"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:\"Visit URL:\";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:\"Edit\";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:\"Remove\";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:\"Save\";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:\"Enter link:\"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:\"Enter formula:\"}.ql-snow .ql-tooltip[data-mode=video]:before{content:\"Enter video:\"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}fng-text-editor .fng-divider-y{display:inline-flex;flex:0 0 1px;height:24px;width:1px;background-color:var(--fwe-gray-400)}fng-text-editor .fng-editor{min-height:100%}fng-text-editor .fng-editor-container{order:2;height:160px;min-height:100%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) var(--fwe-gray-100);padding-top:4px;padding-bottom:4px;padding-left:8px;border:var(--fwe-control-border) solid 1px}fng-text-editor .fng-editor-container::-webkit-scrollbar{width:12px}fng-text-editor .fng-editor-container::-webkit-scrollbar-track{background:transparent}fng-text-editor .fng-editor-container::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:6px}fng-text-editor .fng-editor-container:hover{border-color:var(--fwe-hero)}fng-text-editor .fng-editor-container[contenteditable=true]{outline:none}fng-text-editor .fng-editor-container[contenteditable=true]:focus{border-color:var(--fwe-hero)}fng-text-editor label.fwe-input-text{line-height:24px}fng-text-editor label.fwe-input-text .fwe-input-text-count{display:inline-block;line-height:var(--fwe-line-height-base);position:absolute;right:0;bottom:0;z-index:1;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}fng-text-editor label.fwe-input-text .fwe-input-text-label{order:-1}fng-text-editor label.fwe-input-text .fng-text-editor-info{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:var(--fwe-line-height-base);position:absolute;left:0;top:unset;bottom:0;z-index:2;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}fng-text-editor label.fwe-input-text.fwe-disabled{color:var(--fwe-text-disabled)}fng-text-editor label.fwe-input-text.fwe-disabled .fwe-input-text-label{color:var(--fwe-text-disabled)}fng-text-editor label.fwe-input-text.fwe-disabled .fng-editor-container{border-color:var(--fwe-control-disabled)!important}fng-text-editor label.fwe-input-text.fwe-disabled .fng-editor-container:hover{border-color:var(--fwe-control-disabled)!important}fng-text-editor label.fwe-input-text.fwe-disabled .fng-divider-y{background-color:var(--fwe-text-disabled)}fng-text-editor .fng-text-editor-invalid{display:none;line-height:1.5;position:absolute;left:0;bottom:0;z-index:2;color:var(--fwe-red);font-size:var(--fwe-font-size-small)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor{box-shadow:none;outline:none}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled{border-bottom:1px solid var(--fwe-control-disabled)!important}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fwe-input-text-label,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-invalid,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-info{color:var(--fwe-text-disabled)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fwe-input-text-label:after,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-invalid:after,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-info:after{color:var(--fwe-text-disabled)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor-container{border-color:var(--fwe-red)}fng-text-editor.ng-dirty.ng-invalid .fng-text-editor-info{display:none!important}fng-text-editor.ng-dirty.ng-invalid .fng-text-editor-invalid{display:block!important}fng-text-editor .fng-text-bold{font-weight:var(--fwe-font-weight-bold)}fng-text-editor .fng-text-italic{font-style:italic}fng-text-editor .fng-text-underline{text-decoration:underline}fng-text-editor .fng-icon-text-align-center{width:12px;height:10px;background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(51, 51, 51)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M5,7h6V9H5Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-center.fng-gray{background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(185, 186, 187)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M5,7h6V9H5Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-right{width:12px;height:10px;background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(51, 51, 51)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M8,7h6V9H8Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-right.fng-gray{background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(185, 186, 187)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M8,7h6V9H8Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .ql-tooltip{z-index:var(--fwe-z-index-tooltip)}fng-text-editor .ql-editor{font-family:var(--fwe-font-family-sans-serif);font-size:var(--fwe-font-size-base);padding:0;min-height:72px;overflow-x:hidden}fng-text-editor .ql-editor p::selection,fng-text-editor .ql-editor strong::selection,fng-text-editor .ql-editor em::selection,fng-text-editor .ql-editor u::selection,fng-text-editor .ql-editor ul::selection,fng-text-editor .ql-editor ol::selection,fng-text-editor .ql-editor li::selection,fng-text-editor .ql-editor a::selection{background:var(--fwe-icon-hero-light)}fng-text-editor .ql-container.ql-snow{border:0;background-color:var(--fwe-white)}fng-text-editor .ql-container.ql-snow .ql-tooltip{transform:translate(160px,12px);color:var(--fwe-black);box-shadow:-1px 1px 4px -1px #3333;border:1px solid var(--fwe-gray-200)}fng-text-editor .ql-container.ql-snow .ql-tooltip input{border:1px solid var(--fwe-gray-200)}fng-text-editor .ql-container.ql-snow .ql-tooltip input::selection{background:var(--fwe-icon-hero-light)}fng-text-editor .ql-container.ql-snow a{color:var(--fwe-caerul)}fng-text-editor .ql-toolbar.ql-snow{border:0;padding:4px 0}fng-text-editor .ql-toolbar.ql-snow .ql-formats.fng-editor-toolbar-buttons-container{display:flex;align-items:center;flex-wrap:wrap}fng-text-editor .ql-toolbar.ql-snow button{line-height:normal;box-sizing:border-box;display:inline-flex;text-align:center;padding:0 8px;height:32px;min-height:unset;color:var(--fwe-black);background:none;border-radius:4px;cursor:pointer;border:none;width:unset;max-width:24px;justify-content:center;align-items:center;float:unset}@media (hover: hover) and (pointer: fine){fng-text-editor .ql-toolbar.ql-snow button:hover{background-color:var(--fwe-control-dark);color:var(--fwe-black)}}fng-text-editor .ql-toolbar.ql-snow button:active{background-color:var(--fwe-control-darker)}fng-text-editor .ql-toolbar.ql-snow button.ql-active+button{background-color:var(--fwe-control)}fng-text-editor .ql-toolbar.ql-snow button.fng-btn-toolbar-list{padding:0 6px}fng-text-editor .ql-toolbar.ql-snow button.fng-button i{pointer-events:none}fng-text-editor .ql-toolbar.ql-snow button.fng-button div{pointer-events:none}fng-text-editor .ql-toolbar .fng-button-text{min-width:12px;line-height:16px}fng-text-editor label.fwe-input-text.fwe-disabled .ql-toolbar{pointer-events:none}fng-text-editor label.fwe-input-text.fwe-disabled .ql-toolbar button{color:var(--fwe-text-disabled)}\n"] }]
6246
+ ], template: "<label class=\"fwe-input-text\" [class.fwe-disabled]=\"disabled\">\n <div class=\"fng-editor-toolbar\" [id]=\"'editor-toolbar-' + id\">\n <span class=\"ql-formats fwe-d-none\">\n <select class=\"ql-size\" aria-hidden=\"true\">\n <option value=\"small\"></option>\n <option selected></option>\n <option value=\"large\"></option>\n <option value=\"huge\"></option>\n </select>\n </span>\n <span class=\"ql-formats fng-editor-toolbar-buttons-container fwe-mr-3\">\n <ng-container *ngIf=\"config?.toolbar?.bold\">\n <button type=\"button\" #btnBold class=\"ql-bold fwe-d-none action-bold\" aria-hidden=\"true\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.underline || config.toolbar?.italic\"\n (click)=\"delegate($event, 'bold')\"\n [disabled]=\"disabled\"\n >\n <div class=\"fng-button-text fng-text-bold\">B</div>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.italic\">\n <button type=\"button\" #btnItalic class=\"ql-italic fwe-d-none action-italic\" aria-hidden=\"true\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.underline\"\n (click)=\"delegate($event, 'italic')\"\n [disabled]=\"disabled\"\n >\n <div class=\"fng-button-text fng-text-italic\">I</div>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.underline\">\n <button type=\"button\" #btnUnderline class=\"ql-underline fwe-d-none action-underline\" aria-hidden=\"true\"></button>\n <button type=\"button\" class=\"fwe-btn fng-button\" (click)=\"delegate($event, 'underline')\" [disabled]=\"disabled\">\n <div class=\"fng-button-text fng-text-underline\">U</div>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('typo')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.alignCenter\">\n <button type=\"button\" #btnAlignCenter class=\"ql-align fwe-d-none action-align-center\" aria-hidden=\"true\" value=\"center\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.alignRight\"\n (click)=\"delegate($event, 'align-center')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fng-icon-text-align-center fwe-pr-0\" [class.fng-gray]=\"disabled\"></i>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"config?.toolbar?.alignRight\">\n <button type=\"button\" #btnAlignRight class=\"ql-align fwe-d-none action-align-right\" aria-hidden=\"true\" value=\"right\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n (click)=\"delegate($event, 'align-right')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fng-icon-text-align-right fwe-pr-0\" [class.fng-gray]=\"disabled\"></i>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('text-align')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.bulletList\">\n <button type=\"button\" #btnUl class=\"ql-list fwe-d-none action-ul\" aria-hidden=\"true\" value=\"bullet\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n [class.fwe-mr-3]=\"config.toolbar?.orderedList\"\n (click)=\"delegate($event, 'ul')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-list-list-view fwe-pr-0\"></i>\n </button>\n </ng-container>\n <ng-container *ngIf=\"config?.toolbar?.orderedList\">\n <button type=\"button\" #btnOl class=\"ql-list fwe-d-none action-ol\" aria-hidden=\"true\" value=\"ordered\"></button>\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'ol')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-enumeration fwe-pr-0\"></i>\n </button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('lists')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.image\">\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'image')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-image-image fwe-pr-0\"></i>\n </button>\n <button type=\"button\" #btnImage class=\"ql-image fwe-d-none\" aria-hidden=\"true\"></button>\n </ng-container>\n\n <div *ngIf=\"!hideDivider('image')\" class=\"fng-divider-y fwe-mx-4\"></div>\n\n <ng-container *ngIf=\"config?.toolbar?.link\">\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'link')\" [disabled]=\"disabled\">\n <i class=\"fwe-icon fwe-icon-toolbar-list fwe-icon-file-link fwe-pr-0\"></i>\n </button>\n <button type=\"button\" #btnLink class=\"ql-link fwe-d-none\" aria-hidden=\"true\"></button>\n </ng-container>\n </span>\n </div>\n <div class=\"fng-editor-container\" [id]=\"'editor-container-' + id\">\n <div class=\"fng-editor\" [id]=\"'editor-' + id\"></div>\n </div>\n <span class=\"fwe-input-text-label\" [id]=\"'editor-label-' + id\">{{ label }}</span>\n <span *ngIf=\"hint\" class=\"fng-text-editor-info\">{{ hint }}</span>\n <span *ngIf=\"error\" class=\"fng-text-editor-invalid\">{{ error }}</span>\n <span *ngIf=\"maxLength > 0 && value != null\" class=\"fwe-input-text-count\">{{ currentLength() }} / {{ maxLength }}</span>\n</label>\n", styles: ["@charset \"UTF-8\";/*!\n * Quill Editor v1.3.7\n * https://quilljs.com/\n * Copyright (c) 2014, Jason Chen\n * Copyright (c) 2013, salesforce.com\n */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:\"\\2022\"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:\"\\2611\"}.ql-editor ul[data-checked=false]>li:before{content:\"\\2610\"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) \". \"}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) \". \"}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) \". \"}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) \". \"}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) \". \"}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) \". \"}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) \". \"}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) \". \"}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) \". \"}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) \". \"}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:\"\";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:\"\";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=\"\"]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:\"Normal\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"1\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]:before{content:\"Heading 1\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"2\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]:before{content:\"Heading 2\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"3\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]:before{content:\"Heading 3\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"4\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]:before{content:\"Heading 4\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"5\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]:before{content:\"Heading 5\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"6\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]:before{content:\"Heading 6\"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:\"Sans Serif\"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:\"Serif\"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:\"Monospace\"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:\"Normal\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:\"Small\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:\"Large\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:\"Huge\"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:\"Visit URL:\";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:\"Edit\";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:\"Remove\";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:\"Save\";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:\"Enter link:\"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:\"Enter formula:\"}.ql-snow .ql-tooltip[data-mode=video]:before{content:\"Enter video:\"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}fng-text-editor .fng-divider-y{display:inline-flex;flex:0 0 1px;height:24px;width:1px;background-color:var(--fwe-gray-400)}fng-text-editor .fng-editor{min-height:100%}fng-text-editor .fng-editor-container{order:2;height:160px;min-height:100%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) var(--fwe-gray-100);padding-top:4px;padding-bottom:4px;padding-left:8px;border:var(--fwe-control-border) solid 1px}@media (pointer: fine){fng-text-editor .fng-editor-container::-webkit-scrollbar{width:14px}fng-text-editor .fng-editor-container::-webkit-scrollbar-track{background:transparent}fng-text-editor .fng-editor-container::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:8px}}fng-text-editor .fng-editor-container:hover{border-color:var(--fwe-hero)}fng-text-editor .fng-editor-container[contenteditable=true]{outline:none}fng-text-editor .fng-editor-container[contenteditable=true]:focus{border-color:var(--fwe-hero)}fng-text-editor label.fwe-input-text{line-height:24px}fng-text-editor label.fwe-input-text .fwe-input-text-count{display:inline-block;line-height:var(--fwe-line-height-base);position:absolute;right:0;bottom:0;z-index:1;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}fng-text-editor label.fwe-input-text .fwe-input-text-label{order:-1}fng-text-editor label.fwe-input-text .fng-text-editor-info{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:var(--fwe-line-height-base);position:absolute;left:0;top:unset;bottom:0;z-index:2;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}fng-text-editor label.fwe-input-text.fwe-disabled{color:var(--fwe-text-disabled)}fng-text-editor label.fwe-input-text.fwe-disabled .fwe-input-text-label{color:var(--fwe-text-disabled)}fng-text-editor label.fwe-input-text.fwe-disabled .fng-editor-container{border-color:var(--fwe-control-disabled)!important}fng-text-editor label.fwe-input-text.fwe-disabled .fng-editor-container:hover{border-color:var(--fwe-control-disabled)!important}fng-text-editor label.fwe-input-text.fwe-disabled .fng-divider-y{background-color:var(--fwe-text-disabled)}fng-text-editor .fng-text-editor-invalid{display:none;line-height:1.5;position:absolute;left:0;bottom:0;z-index:2;color:var(--fwe-red);font-size:var(--fwe-font-size-small)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor{box-shadow:none;outline:none}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled{border-bottom:1px solid var(--fwe-control-disabled)!important}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fwe-input-text-label,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-invalid,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-info{color:var(--fwe-text-disabled)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fwe-input-text-label:after,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-invalid:after,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-info:after{color:var(--fwe-text-disabled)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor-container{border-color:var(--fwe-red)}fng-text-editor.ng-dirty.ng-invalid .fng-text-editor-info{display:none!important}fng-text-editor.ng-dirty.ng-invalid .fng-text-editor-invalid{display:block!important}fng-text-editor .fng-text-bold{font-weight:var(--fwe-font-weight-bold)}fng-text-editor .fng-text-italic{font-style:italic}fng-text-editor .fng-text-underline{text-decoration:underline}fng-text-editor .fng-icon-text-align-center{width:12px;height:10px;background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(51, 51, 51)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M5,7h6V9H5Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-center.fng-gray{background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(185, 186, 187)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M5,7h6V9H5Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-right{width:12px;height:10px;background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(51, 51, 51)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M8,7h6V9H8Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-text-align-right.fng-gray{background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(185, 186, 187)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M8,7h6V9H8Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .ql-tooltip{z-index:var(--fwe-z-index-tooltip)}fng-text-editor .ql-editor{font-family:var(--fwe-font-family-sans-serif);font-size:var(--fwe-font-size-base);padding:0;min-height:72px;overflow-x:hidden}fng-text-editor .ql-editor p::selection,fng-text-editor .ql-editor strong::selection,fng-text-editor .ql-editor em::selection,fng-text-editor .ql-editor u::selection,fng-text-editor .ql-editor ul::selection,fng-text-editor .ql-editor ol::selection,fng-text-editor .ql-editor li::selection,fng-text-editor .ql-editor a::selection{background:var(--fwe-icon-hero-light)}fng-text-editor .ql-container.ql-snow{border:0;background-color:var(--fwe-white)}fng-text-editor .ql-container.ql-snow .ql-tooltip{transform:translate(160px,12px);color:var(--fwe-black);box-shadow:-1px 1px 4px -1px #3333;border:1px solid var(--fwe-gray-200)}fng-text-editor .ql-container.ql-snow .ql-tooltip input{border:1px solid var(--fwe-gray-200)}fng-text-editor .ql-container.ql-snow .ql-tooltip input::selection{background:var(--fwe-icon-hero-light)}fng-text-editor .ql-container.ql-snow a{color:var(--fwe-caerul)}fng-text-editor .ql-toolbar.ql-snow{border:0;padding:4px 0}fng-text-editor .ql-toolbar.ql-snow .ql-formats.fng-editor-toolbar-buttons-container{display:flex;align-items:center;flex-wrap:wrap}fng-text-editor .ql-toolbar.ql-snow button{line-height:normal;box-sizing:border-box;display:inline-flex;text-align:center;padding:0 8px;height:32px;min-height:unset;color:var(--fwe-black);background:none;border-radius:4px;cursor:pointer;border:none;width:unset;max-width:24px;justify-content:center;align-items:center;float:unset}@media (hover: hover) and (pointer: fine){fng-text-editor .ql-toolbar.ql-snow button:hover{background-color:var(--fwe-control-dark);color:var(--fwe-black)}}fng-text-editor .ql-toolbar.ql-snow button:active{background-color:var(--fwe-control-darker)}fng-text-editor .ql-toolbar.ql-snow button.ql-active+button{background-color:var(--fwe-control)}fng-text-editor .ql-toolbar.ql-snow button.fng-btn-toolbar-list{padding:0 6px}fng-text-editor .ql-toolbar.ql-snow button.fng-button i{pointer-events:none}fng-text-editor .ql-toolbar.ql-snow button.fng-button div{pointer-events:none}fng-text-editor .ql-toolbar .fng-button-text{min-width:12px;line-height:16px}fng-text-editor label.fwe-input-text.fwe-disabled .ql-toolbar{pointer-events:none}fng-text-editor label.fwe-input-text.fwe-disabled .ql-toolbar button{color:var(--fwe-text-disabled)}\n"] }]
6246
6247
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1$2.DomSanitizer }]; }, propDecorators: { btnBold: [{
6247
6248
  type: ViewChild,
6248
6249
  args: ['btnBold']
@@ -6426,5 +6427,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
6426
6427
  * Generated bundle index. Do not edit.
6427
6428
  */
6428
6429
 
6429
- export { ChipType, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularModule, FestoAngularSnackbarModule, FngAccordionActions, FngAccordionComponent, FngAccordionHeaderActions, FngAccordionHeaderComponent, FngAccordionItemBodyComponent, FngAccordionItemComponent, FngAccordionItemHeaderComponent, FngAlertComponent, FngBreadcrumbComponent, FngButtonComponent, FngCheckboxComponent, FngChipComponent, FngChipContainerComponent, FngClickOutsideDirective, FngColorIndicatorComponent, FngColorPickerComponent, FngConfirmComponent, FngCustomModalComponent, FngDatePickerComponent, FngDateRangePickerComponent, FngLegendComponent, FngLegendDirective, FngLinkButtonComponent, FngLoadingIndicatorComponent, FngMobileFlyoutComponent, FngMobileFlyoutItemComponent, FngMobileFlyoutPageComponent, FngModalService, FngPaginationComponent, FngPaginationType, FngPopoverComponent, FngPopoverContentComponent, FngPopoverContentDirective, FngPopoverContentTypes, FngPopoverMenuComponent, FngPopoverService, FngProgressComponent, FngPromptComponent, FngRadioChange, FngRadioComponent, FngRadioGroupDirective, FngSafeHtmlPipe, FngScrollableDirective, FngSearchInputComponent, FngSearchSuggestion, FngSegmentComponent, FngSegmentControlComponent, FngSelectComponent, FngSelectOptionComponent, FngSliderComponent, FngSnackbarComponent, FngSnackbarContainerComponent, FngSnackbarContainerDirective, FngSnackbarService, FngStepHorizontalComponent, FngStepVerticalComponent, FngStepperHorizontalComponent, FngStepperVerticalComponent, FngSwitchComponent, FngTabPaneComponent, FngTableHeaderCellDirective, FngTabsComponent, FngTextAreaComponent, FngTextEditorComponent, FngTextInputComponent, FngTimePickerComponent, FngTimePickerDropdownComponent, FngTooltipDirective, PREDEFINED_COLORS };
6430
+ export { ChipType, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularModule, FestoAngularSnackbarModule, FngAccordionActions, FngAccordionComponent, FngAccordionHeaderActions, FngAccordionHeaderComponent, FngAccordionItemBodyComponent, FngAccordionItemComponent, FngAccordionItemHeaderComponent, FngAlertComponent, FngBreadcrumbComponent, FngButtonComponent, FngCheckboxComponent, FngChipComponent, FngChipContainerComponent, FngClickOutsideDirective, FngColorIndicatorComponent, FngColorPickerComponent, FngConfirmComponent, FngCustomModalComponent, FngDatePickerComponent, FngDateRangePickerComponent, FngImageGalleryComponent, FngLegendComponent, FngLegendDirective, FngLinkButtonComponent, FngLoadingIndicatorComponent, FngMobileFlyoutComponent, FngMobileFlyoutItemComponent, FngMobileFlyoutPageComponent, FngModalService, FngPaginationComponent, FngPaginationType, FngPopoverComponent, FngPopoverContentComponent, FngPopoverContentDirective, FngPopoverContentTypes, FngPopoverMenuComponent, FngPopoverService, FngProgressComponent, FngPromptComponent, FngRadioChange, FngRadioComponent, FngRadioGroupDirective, FngSafeHtmlPipe, FngScrollableDirective, FngSearchInputComponent, FngSearchSuggestion, FngSegmentComponent, FngSegmentControlComponent, FngSelectComponent, FngSelectOptionComponent, FngSliderComponent, FngSnackbarComponent, FngSnackbarContainerComponent, FngSnackbarContainerDirective, FngSnackbarService, FngStepHorizontalComponent, FngStepVerticalComponent, FngStepperHorizontalComponent, FngStepperVerticalComponent, FngSwitchComponent, FngTabPaneComponent, FngTableHeaderCellDirective, FngTabsComponent, FngTextAreaComponent, FngTextEditorComponent, FngTextInputComponent, FngTimePickerComponent, FngTimePickerDropdownComponent, FngTooltipDirective, PREDEFINED_COLORS };
6430
6431
  //# sourceMappingURL=festo-ui-angular.mjs.map