123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input, Output, forwardRef, } from '@angular/core';
- import { TypeEnum } from '../../model/components/type.enum';
- import { NgClass } from '@angular/common';
- import { provideControlContainer, provideValueAccessor } from '../../utils/form.util';
- import { FormGenericComponent } from '../../services/form-generic.abstract';
- import { FormErrorComponent } from '../error/error.component';
- import { LabelComponent } from '../label/label.component';
- import * as i0 from "@angular/core";
- import * as i1 from "@angular/forms";
- export class InputComponent extends FormGenericComponent {
- onFocusOut() {
- this.triggerTouched();
- }
- constructor(formGroupDirective) {
- super(formGroupDirective);
- this.key = '';
- this.label = '';
- this.placeholder = '';
- this.value = '';
- this.type = TypeEnum.PRIMARY;
- this.fullSize = true;
- this.typed = new EventEmitter();
- }
- input(event) {
- this.setValue(event.target.value);
- }
- setValue(value, propagate = true) {
- this.value = value;
- if (propagate) {
- this.triggerChange(value);
- this.typed.emit(value);
- }
- }
- writeValue(value) {
- this.triggerChangeDetection();
- this.setValue(value, false);
- }
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: InputComponent, deps: [{ token: i1.FormGroupDirective }], target: i0.ɵɵFactoryTarget.Component }); }
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.2", type: InputComponent, isStandalone: true, selector: "ct-input", inputs: { formControlName: "formControlName", key: "key", label: "label", placeholder: "placeholder", value: "value", type: "type", fullSize: "fullSize" }, outputs: { typed: "typed" }, host: { listeners: { "focusout": "onFocusOut()" } }, providers: [provideValueAccessor(forwardRef(() => InputComponent))], usesInheritance: true, ngImport: i0, template: "<ct-form-label [text]=\"label\" [hasError]=\"hasErrors(formControl)\" />\n<input\n tabindex=\"0\"\n class=\"rounded-md border bg-surface-variant px-4 py-2 text-sm text-on-surface-variant outline-none dark:bg-surface-variant-dark dark:text-on-surface-variant-dark\"\n [class.w-fit]=\"!fullSize\"\n [class.w-full]=\"fullSize\"\n [class.border-neutral-400]=\"formControl && (formControl.pristine || formControl.valid)\"\n [class.border-error]=\"hasErrors(formControl)\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n (input)=\"input($event)\" />\n@if (hasErrors(formControl)) {\n <ct-form-error [errors]=\"formControl.errors ?? {}\" />\n}\n", dependencies: [{ kind: "component", type: LabelComponent, selector: "ct-form-label", inputs: ["text", "type", "formControlName", "hasError"] }, { kind: "component", type: FormErrorComponent, selector: "ct-form-error", inputs: ["errors"] }], viewProviders: [provideControlContainer()], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
- }
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: InputComponent, decorators: [{
- type: Component,
- args: [{ selector: 'ct-input', standalone: true, imports: [NgClass, LabelComponent, FormErrorComponent], providers: [provideValueAccessor(forwardRef(() => InputComponent))], viewProviders: [provideControlContainer()], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ct-form-label [text]=\"label\" [hasError]=\"hasErrors(formControl)\" />\n<input\n tabindex=\"0\"\n class=\"rounded-md border bg-surface-variant px-4 py-2 text-sm text-on-surface-variant outline-none dark:bg-surface-variant-dark dark:text-on-surface-variant-dark\"\n [class.w-fit]=\"!fullSize\"\n [class.w-full]=\"fullSize\"\n [class.border-neutral-400]=\"formControl && (formControl.pristine || formControl.valid)\"\n [class.border-error]=\"hasErrors(formControl)\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n (input)=\"input($event)\" />\n@if (hasErrors(formControl)) {\n <ct-form-error [errors]=\"formControl.errors ?? {}\" />\n}\n" }]
- }], ctorParameters: () => [{ type: i1.FormGroupDirective }], propDecorators: { formControlName: [{
- type: Input,
- args: [{ required: true }]
- }], key: [{
- type: Input,
- args: [{ required: true }]
- }], label: [{
- type: Input
- }], placeholder: [{
- type: Input
- }], value: [{
- type: Input
- }], type: [{
- type: Input
- }], fullSize: [{
- type: Input
- }], typed: [{
- type: Output
- }], onFocusOut: [{
- type: HostListener,
- args: ['focusout']
- }] } });
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2lyY2xldG9uZS9zcmMvbGliL2Zvcm1zL2lucHV0L2lucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NpcmNsZXRvbmUvc3JjL2xpYi9mb3Jtcy9pbnB1dC9pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUU1RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFXMUQsTUFBTSxPQUFPLGNBQWUsU0FBUSxvQkFBb0I7SUFXdEQsVUFBVTtRQUNSLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsWUFBWSxrQkFBc0M7UUFDaEQsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFkRCxRQUFHLEdBQUcsRUFBRSxDQUFDO1FBQzNCLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixVQUFLLEdBQVEsRUFBRSxDQUFDO1FBQ2hCLFNBQUksR0FBc0IsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUMzQyxhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3hCLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0lBUzdDLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBWTtRQUNoQixJQUFJLENBQUMsUUFBUSxDQUFFLEtBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFVLEVBQUUsU0FBUyxHQUFHLElBQUk7UUFDbkMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekIsQ0FBQztJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDOzhHQWxDVSxjQUFjO2tHQUFkLGNBQWMscVNBSmQsQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxpREN0QnJFLGdwQkFjQSw0Q0RNcUIsY0FBYyxtSEFBRSxrQkFBa0IsbUVBR3RDLENBQUMsdUJBQXVCLEVBQUUsQ0FBQzs7MkZBRy9CLGNBQWM7a0JBVDFCLFNBQVM7K0JBQ0UsVUFBVSxjQUNSLElBQUksV0FDUCxDQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsa0JBQWtCLENBQUMsYUFFM0MsQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsaUJBQ3BELENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxtQkFDekIsdUJBQXVCLENBQUMsTUFBTTt1RkFHcEIsZUFBZTtzQkFBekMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ0UsR0FBRztzQkFBN0IsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ2hCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxLQUFLO3NCQUFkLE1BQU07Z0JBR1AsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUeXBlRW51bSB9IGZyb20gJy4uLy4uL21vZGVsL2NvbXBvbmVudHMvdHlwZS5lbnVtJztcbmltcG9ydCB7IEZvcm1Hcm91cERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgcHJvdmlkZUNvbnRyb2xDb250YWluZXIsIHByb3ZpZGVWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybS51dGlsJztcbmltcG9ydCB7IEZvcm1HZW5lcmljQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZm9ybS1nZW5lcmljLmFic3RyYWN0JztcbmltcG9ydCB7IEZvcm1FcnJvckNvbXBvbmVudCB9IGZyb20gJy4uL2Vycm9yL2Vycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYWJlbENvbXBvbmVudCB9IGZyb20gJy4uL2xhYmVsL2xhYmVsLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N0LWlucHV0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nQ2xhc3MsIExhYmVsQ29tcG9uZW50LCBGb3JtRXJyb3JDb21wb25lbnRdLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtwcm92aWRlVmFsdWVBY2Nlc3Nvcihmb3J3YXJkUmVmKCgpID0+IElucHV0Q29tcG9uZW50KSldLFxuICB2aWV3UHJvdmlkZXJzOiBbcHJvdmlkZUNvbnRyb2xDb250YWluZXIoKV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dENvbXBvbmVudCBleHRlbmRzIEZvcm1HZW5lcmljQ29tcG9uZW50IHtcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgZm9ybUNvbnRyb2xOYW1lITogc3RyaW5nO1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBrZXkgPSAnJztcbiAgQElucHV0KCkgbGFiZWwgPSAnJztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnJztcbiAgQElucHV0KCkgdmFsdWU6IGFueSA9ICcnO1xuICBASW5wdXQoKSB0eXBlOiBUeXBlRW51bSB8IHN0cmluZyA9IFR5cGVFbnVtLlBSSU1BUlk7XG4gIEBJbnB1dCgpIGZ1bGxTaXplOiBib29sZWFuID0gdHJ1ZTtcbiAgQE91dHB1dCgpIHR5cGVkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnKVxuICBvbkZvY3VzT3V0KCkge1xuICAgIHRoaXMudHJpZ2dlclRvdWNoZWQoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKGZvcm1Hcm91cERpcmVjdGl2ZTogRm9ybUdyb3VwRGlyZWN0aXZlKSB7XG4gICAgc3VwZXIoZm9ybUdyb3VwRGlyZWN0aXZlKTtcbiAgfVxuXG4gIGlucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuc2V0VmFsdWUoKGV2ZW50IGFzIGFueSkudGFyZ2V0LnZhbHVlKTtcbiAgfVxuXG4gIHNldFZhbHVlKHZhbHVlOiBhbnksIHByb3BhZ2F0ZSA9IHRydWUpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgaWYgKHByb3BhZ2F0ZSkge1xuICAgICAgdGhpcy50cmlnZ2VyQ2hhbmdlKHZhbHVlKTtcbiAgICAgIHRoaXMudHlwZWQuZW1pdCh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgdGhpcy50cmlnZ2VyQ2hhbmdlRGV0ZWN0aW9uKCk7XG4gICAgdGhpcy5zZXRWYWx1ZSh2YWx1ZSwgZmFsc2UpO1xuICB9XG59XG4iLCI8Y3QtZm9ybS1sYWJlbCBbdGV4dF09XCJsYWJlbFwiIFtoYXNFcnJvcl09XCJoYXNFcnJvcnMoZm9ybUNvbnRyb2wpXCIgLz5cbjxpbnB1dFxuICB0YWJpbmRleD1cIjBcIlxuICBjbGFzcz1cInJvdW5kZWQtbWQgYm9yZGVyIGJnLXN1cmZhY2UtdmFyaWFudCBweC00IHB5LTIgdGV4dC1zbSB0ZXh0LW9uLXN1cmZhY2UtdmFyaWFudCBvdXRsaW5lLW5vbmUgZGFyazpiZy1zdXJmYWNlLXZhcmlhbnQtZGFyayBkYXJrOnRleHQtb24tc3VyZmFjZS12YXJpYW50LWRhcmtcIlxuICBbY2xhc3Mudy1maXRdPVwiIWZ1bGxTaXplXCJcbiAgW2NsYXNzLnctZnVsbF09XCJmdWxsU2l6ZVwiXG4gIFtjbGFzcy5ib3JkZXItbmV1dHJhbC00MDBdPVwiZm9ybUNvbnRyb2wgJiYgKGZvcm1Db250cm9sLnByaXN0aW5lIHx8IGZvcm1Db250cm9sLnZhbGlkKVwiXG4gIFtjbGFzcy5ib3JkZXItZXJyb3JdPVwiaGFzRXJyb3JzKGZvcm1Db250cm9sKVwiXG4gIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gIChpbnB1dCk9XCJpbnB1dCgkZXZlbnQpXCIgLz5cbkBpZiAoaGFzRXJyb3JzKGZvcm1Db250cm9sKSkge1xuICA8Y3QtZm9ybS1lcnJvciBbZXJyb3JzXT1cImZvcm1Db250cm9sLmVycm9ycyA/PyB7fVwiIC8+XG59XG4iXX0=
|