UNPKG

@ngx-uk-frontend/core

Version:

Core utilities and shared functionality for ngx-uk-frontend libraries

41 lines 4.84 kB
import { Directive, inject, input } from '@angular/core'; import { CommonFormInputDirective, injectNgControl, } from '@ngx-uk-frontend/core/form-utils'; import * as i0 from "@angular/core"; /** * Core textarea directive that provides common functionality * for textarea components across different design systems. * * This directive handles: * - Basic textarea configuration * - Form control integration * - Accessibility attributes * - Common input attributes */ export class TextareaDirective { // Form control integration ngControl = injectNgControl(); commonFormInput = inject(CommonFormInputDirective); // Basic textarea configuration rows = input(2, ...(ngDevMode ? [{ debugName: "rows" }] : [])); cols = input(...(ngDevMode ? [undefined, { debugName: "cols" }] : [])); wrap = input(...(ngDevMode ? [undefined, { debugName: "wrap" }] : [])); // Input attributes placeholder = input(...(ngDevMode ? [undefined, { debugName: "placeholder" }] : [])); maxlength = input(...(ngDevMode ? [undefined, { debugName: "maxlength" }] : [])); minlength = input(...(ngDevMode ? [undefined, { debugName: "minlength" }] : [])); readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly" }] : [])); disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : [])); // Accessibility and form attributes autocomplete = input(...(ngDevMode ? [undefined, { debugName: "autocomplete" }] : [])); spellcheck = input(...(ngDevMode ? [undefined, { debugName: "spellcheck" }] : [])); autocapitalize = input(...(ngDevMode ? [undefined, { debugName: "autocapitalize" }] : [])); static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: TextareaDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.6", type: TextareaDirective, isStandalone: true, selector: "[libTextarea]", inputs: { rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, cols: { classPropertyName: "cols", publicName: "cols", isSignal: true, isRequired: false, transformFunction: null }, wrap: { classPropertyName: "wrap", publicName: "wrap", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, minlength: { classPropertyName: "minlength", publicName: "minlength", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: "autocomplete", publicName: "autocomplete", isSignal: true, isRequired: false, transformFunction: null }, spellcheck: { classPropertyName: "spellcheck", publicName: "spellcheck", isSignal: true, isRequired: false, transformFunction: null }, autocapitalize: { classPropertyName: "autocapitalize", publicName: "autocapitalize", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: TextareaDirective, decorators: [{ type: Directive, args: [{ selector: '[libTextarea]', }] }], propDecorators: { rows: [{ type: i0.Input, args: [{ isSignal: true, alias: "rows", required: false }] }], cols: [{ type: i0.Input, args: [{ isSignal: true, alias: "cols", required: false }] }], wrap: [{ type: i0.Input, args: [{ isSignal: true, alias: "wrap", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], maxlength: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxlength", required: false }] }], minlength: [{ type: i0.Input, args: [{ isSignal: true, alias: "minlength", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], autocomplete: [{ type: i0.Input, args: [{ isSignal: true, alias: "autocomplete", required: false }] }], spellcheck: [{ type: i0.Input, args: [{ isSignal: true, alias: "spellcheck", required: false }] }], autocapitalize: [{ type: i0.Input, args: [{ isSignal: true, alias: "autocapitalize", required: false }] }] } }); //# sourceMappingURL=textarea.directive.js.map