{"version":3,"file":"ngx-mat-form-errors.mjs","sources":["../../../projects/ngx-form-errors/src/lib/ngx-form-errors.component.ts","../../../projects/ngx-form-errors/src/lib/services/error.service.ts","../../../projects/ngx-form-errors/src/lib/error/error.component.ts","../../../projects/ngx-form-errors/src/lib/error/error.component.html","../../../projects/ngx-form-errors/src/lib/ngx-form-errors.module.ts","../../../projects/ngx-form-errors/src/public-api.ts","../../../projects/ngx-form-errors/src/ngx-mat-form-errors.ts"],"sourcesContent":["import { Component } from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'lib-ngx-form-errors',\r\n  standalone: true,\r\n  imports: [],\r\n  template: `\r\n    <p>\r\n      ngx-form-errors works!\r\n    </p>\r\n  `,\r\n  styles: ``\r\n})\r\nexport class NgxFormErrorsComponent {\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class ErrorService {\r\n\r\n  getErrorMessage(errors: any, label: string): string {\r\n\r\n    if (errors['required']) {\r\n      return `${label} is required`;\r\n    }\r\n\r\n    if (errors['email']) {\r\n      return `Invalid email format`;\r\n    }\r\n\r\n    if (errors['minlength']) {\r\n      return `${label} must be at least ${errors['minlength'].requiredLength} characters`;\r\n    }\r\n\r\n    if (errors['maxlength']) {\r\n      return `${label} cannot exceed ${errors['maxlength'].requiredLength} characters`;\r\n    }\r\n\r\n    if (errors['pattern']) {\r\n      return `Invalid ${label} format`;\r\n    }\r\n\r\n    return `Invalid ${label}`;\r\n  }\r\n\r\n}","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ControlContainer, FormGroup, ReactiveFormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ErrorService } from '../services/error.service';\r\nimport { Subject, takeUntil } from 'rxjs';\r\n\r\n\r\n@Component({\r\n  selector: 'ngx-error',\r\n  standalone: true,\r\n  imports: [CommonModule, ReactiveFormsModule],\r\n  templateUrl: './error.component.html'\r\n})\r\nexport class ErrorComponent implements OnInit {\r\n\r\n destroy$ = new Subject<void>();\r\n  @Input() field!: string;\r\n  @Input() label?: string;\r\n\r\n  form!: FormGroup;\r\n  errorMessage = '';\r\n\r\n  constructor(\r\n    private controlContainer: ControlContainer,\r\n    private errorService: ErrorService\r\n  ) {}\r\n\r\n  ngOnInit() {\r\n    this.form = this.controlContainer.control as FormGroup;\r\n\r\n    const control = this.form.get(this.field);\r\n    if (!control) return;\r\n\r\n    control.statusChanges.pipe(takeUntil(this.destroy$))\r\n.subscribe(() => {\r\n      if (control.errors && (control.touched || control.dirty)) {\r\n        this.errorMessage = this.errorService.getErrorMessage(\r\n          control.errors,\r\n          this.label || this.field\r\n        );\r\n      } else {\r\n        this.errorMessage = '';\r\n      }\r\n    });\r\n  }\r\n\r\n  ngOnDestroy() {\r\n  this.destroy$.next();\r\n  this.destroy$.complete();\r\n}\r\n}","<div class=\"ngx-error\" *ngIf=\"errorMessage\">\r\n  {{ errorMessage }}\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { NgxFormErrorsComponent } from './ngx-form-errors.component';\r\nimport { ErrorComponent } from './error/error.component';\r\n\r\n@NgModule({\r\n  imports: [NgxFormErrorsComponent,ErrorComponent],   // 👈 standalone component import\r\n  exports: [NgxFormErrorsComponent,ErrorComponent]    // 👈 expose to users\r\n})\r\nexport class NgxFormErrorsModule {}","/*\r\n * Public API Surface of ngx-form-errors\r\n */\r\n\r\nexport * from './lib/ngx-form-errors.module';\r\nexport * from './lib/ngx-form-errors.component';\r\nexport * from './lib/error/error.component';\r\nexport * from './lib/services/error.service';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.ErrorService"],"mappings":"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"}