UNPKG

@ngx-formly/material

Version:

Formly is a dynamic (JSON powered) form library for Angular that bring unmatched maintainability to your application's forms.

77 lines 8.21 kB
import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FieldType } from '@ngx-formly/material/form-field'; import { MAT_INPUT_VALUE_ACCESSOR } from '@angular/material/input'; import * as i0 from "@angular/core"; import * as i1 from "@angular/material/input"; import * as i2 from "@angular/forms"; import * as i3 from "@angular/cdk/text-field"; import * as i4 from "@ngx-formly/core"; export class FormlyFieldTextArea extends FieldType { constructor() { super(...arguments); this.defaultOptions = { props: { cols: 1, rows: 1, }, }; } } FormlyFieldTextArea.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FormlyFieldTextArea, deps: null, target: i0.ɵɵFactoryTarget.Component }); FormlyFieldTextArea.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FormlyFieldTextArea, selector: "formly-field-mat-textarea", providers: [ // fix for https://github.com/ngx-formly/ngx-formly/issues/1688 // rely on formControl value instead of elementRef which return empty value in Firefox. { provide: MAT_INPUT_VALUE_ACCESSOR, useExisting: FormlyFieldTextArea }, ], usesInheritance: true, ngImport: i0, template: ` <textarea matInput [id]="id" [name]="field.name" [readonly]="props.readonly" [required]="required" [formControl]="formControl" [errorStateMatcher]="errorStateMatcher" [cols]="props.cols" [rows]="props.rows" [formlyAttributes]="field" [placeholder]="props.placeholder" [tabindex]="props.tabindex" [cdkTextareaAutosize]="props.autosize" [cdkAutosizeMinRows]="props.autosizeMinRows" [cdkAutosizeMaxRows]="props.autosizeMaxRows" [class.cdk-textarea-autosize]="props.autosize" ></textarea> `, isInline: true, directives: [{ type: i1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i4.ɵFormlyAttributes, selector: "[formlyAttributes]", inputs: ["formlyAttributes", "id"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FormlyFieldTextArea, decorators: [{ type: Component, args: [{ selector: 'formly-field-mat-textarea', template: ` <textarea matInput [id]="id" [name]="field.name" [readonly]="props.readonly" [required]="required" [formControl]="formControl" [errorStateMatcher]="errorStateMatcher" [cols]="props.cols" [rows]="props.rows" [formlyAttributes]="field" [placeholder]="props.placeholder" [tabindex]="props.tabindex" [cdkTextareaAutosize]="props.autosize" [cdkAutosizeMinRows]="props.autosizeMinRows" [cdkAutosizeMaxRows]="props.autosizeMaxRows" [class.cdk-textarea-autosize]="props.autosize" ></textarea> `, providers: [ // fix for https://github.com/ngx-formly/ngx-formly/issues/1688 // rely on formControl value instead of elementRef which return empty value in Firefox. { provide: MAT_INPUT_VALUE_ACCESSOR, useExisting: FormlyFieldTextArea }, ], changeDetection: ChangeDetectionStrategy.OnPush, }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy91aS9tYXRlcmlhbC90ZXh0YXJlYS9zcmMvdGV4dGFyZWEudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFRLE1BQU0sZUFBZSxDQUFDO0FBRXpFLE9BQU8sRUFBRSxTQUFTLEVBQW9CLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQXlDbkUsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFNBQXlDO0lBN0JsRjs7UUE4QlcsbUJBQWMsR0FBRztZQUN4QixLQUFLLEVBQUU7Z0JBQ0wsSUFBSSxFQUFFLENBQUM7Z0JBQ1AsSUFBSSxFQUFFLENBQUM7YUFDUjtTQUNGLENBQUM7S0FDSDs7aUhBUFksbUJBQW1CO3FHQUFuQixtQkFBbUIsb0RBUG5CO1FBQ1QsK0RBQStEO1FBQy9ELHVGQUF1RjtRQUN2RixFQUFFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUU7S0FDeEUsaURBeEJTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJUOzRGQVFVLG1CQUFtQjtrQkE3Qi9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJUO29CQUNELFNBQVMsRUFBRTt3QkFDVCwrREFBK0Q7d0JBQy9ELHVGQUF1Rjt3QkFDdkYsRUFBRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsV0FBVyxxQkFBcUIsRUFBRTtxQkFDeEU7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlQ29uZmlnLCBGb3JtbHlGaWVsZENvbmZpZyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlLCBGb3JtbHlGaWVsZFByb3BzIH0gZnJvbSAnQG5neC1mb3JtbHkvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNQVRfSU5QVVRfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5cbmludGVyZmFjZSBUZXh0QXJlYVByb3BzIGV4dGVuZHMgRm9ybWx5RmllbGRQcm9wcyB7XG4gIGF1dG9zaXplPzogYm9vbGVhbjtcbiAgYXV0b3NpemVNaW5Sb3dzPzogbnVtYmVyO1xuICBhdXRvc2l6ZU1heFJvd3M/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWx5VGV4dEFyZWFGaWVsZENvbmZpZyBleHRlbmRzIEZvcm1seUZpZWxkQ29uZmlnPFRleHRBcmVhUHJvcHM+IHtcbiAgdHlwZTogJ3RleHRhcmVhJyB8IFR5cGU8Rm9ybWx5RmllbGRUZXh0QXJlYT47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Zvcm1seS1maWVsZC1tYXQtdGV4dGFyZWEnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDx0ZXh0YXJlYVxuICAgICAgbWF0SW5wdXRcbiAgICAgIFtpZF09XCJpZFwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5uYW1lXCJcbiAgICAgIFtyZWFkb25seV09XCJwcm9wcy5yZWFkb25seVwiXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCJcbiAgICAgIFtlcnJvclN0YXRlTWF0Y2hlcl09XCJlcnJvclN0YXRlTWF0Y2hlclwiXG4gICAgICBbY29sc109XCJwcm9wcy5jb2xzXCJcbiAgICAgIFtyb3dzXT1cInByb3BzLnJvd3NcIlxuICAgICAgW2Zvcm1seUF0dHJpYnV0ZXNdPVwiZmllbGRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInByb3BzLnBsYWNlaG9sZGVyXCJcbiAgICAgIFt0YWJpbmRleF09XCJwcm9wcy50YWJpbmRleFwiXG4gICAgICBbY2RrVGV4dGFyZWFBdXRvc2l6ZV09XCJwcm9wcy5hdXRvc2l6ZVwiXG4gICAgICBbY2RrQXV0b3NpemVNaW5Sb3dzXT1cInByb3BzLmF1dG9zaXplTWluUm93c1wiXG4gICAgICBbY2RrQXV0b3NpemVNYXhSb3dzXT1cInByb3BzLmF1dG9zaXplTWF4Um93c1wiXG4gICAgICBbY2xhc3MuY2RrLXRleHRhcmVhLWF1dG9zaXplXT1cInByb3BzLmF1dG9zaXplXCJcbiAgICA+PC90ZXh0YXJlYT5cbiAgYCxcbiAgcHJvdmlkZXJzOiBbXG4gICAgLy8gZml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vbmd4LWZvcm1seS9uZ3gtZm9ybWx5L2lzc3Vlcy8xNjg4XG4gICAgLy8gcmVseSBvbiBmb3JtQ29udHJvbCB2YWx1ZSBpbnN0ZWFkIG9mIGVsZW1lbnRSZWYgd2hpY2ggcmV0dXJuIGVtcHR5IHZhbHVlIGluIEZpcmVmb3guXG4gICAgeyBwcm92aWRlOiBNQVRfSU5QVVRfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBGb3JtbHlGaWVsZFRleHRBcmVhIH0sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtbHlGaWVsZFRleHRBcmVhIGV4dGVuZHMgRmllbGRUeXBlPEZpZWxkVHlwZUNvbmZpZzxUZXh0QXJlYVByb3BzPj4ge1xuICBvdmVycmlkZSBkZWZhdWx0T3B0aW9ucyA9IHtcbiAgICBwcm9wczoge1xuICAgICAgY29sczogMSxcbiAgICAgIHJvd3M6IDEsXG4gICAgfSxcbiAgfTtcbn1cbiJdfQ==