{"version":3,"file":"ng-vagabond-lab-ng-dsv-ds-form-reactive.mjs","sources":["../../../projects/ng-dsv/ds/form/reactive/label/component/form.reactive.label.component.ts","../../../projects/ng-dsv/ds/form/reactive/label/component/form.reactive.label.component.html","../../../projects/ng-dsv/ds/form/reactive/checkbox/component/form.reactive.checkbox.component.ts","../../../projects/ng-dsv/ds/form/reactive/checkbox/component/form.reactive.checkbox.component.html","../../../projects/ng-dsv/ds/form/reactive/form/base/base.form.component.ts","../../../projects/ng-dsv/ds/form/reactive/form/component/form.reactive.component.ts","../../../projects/ng-dsv/ds/form/reactive/form/component/form.reactive.component.html","../../../projects/ng-dsv/ds/form/reactive/error/component/form.reactive.error.component.ts","../../../projects/ng-dsv/ds/form/reactive/error/component/form.reactive.error.component.html","../../../projects/ng-dsv/ds/form/reactive/input/component/form.reactive.input.component.ts","../../../projects/ng-dsv/ds/form/reactive/input/component/form.reactive.input.component.html","../../../projects/ng-dsv/ds/form/reactive/searchbar/component/reactive.searchbar.component.ts","../../../projects/ng-dsv/ds/form/reactive/searchbar/component/reactive.searchbar.component.html","../../../projects/ng-dsv/ds/form/reactive/select/component/form.reactive.select.component.ts","../../../projects/ng-dsv/ds/form/reactive/select/component/form.reactive.select.component.html","../../../projects/ng-dsv/ds/form/reactive/ng-vagabond-lab-ng-dsv-ds-form-reactive.ts"],"sourcesContent":["import { Component, effect, input, signal } from \"@angular/core\";\nimport { AbstractControl, Validators } from \"@angular/forms\";\n\n@Component({\n  selector: 'dsv-form-reactive-label',\n  templateUrl: './form.reactive.label.component.html',\n  styleUrls: ['./form.reactive.label.component.scss'],\n})\nexport class FormReactiveLabelComponent {\n  label = input.required<string>();\n  field = input<AbstractControl>();\n  show = input<boolean>(true);\n\n  isRequired = signal<boolean>(false);\n\n  constructor() {\n    effect(() => {\n      this.isRequired.set(this.field()?.hasValidator?.(Validators.required) ?? false);\n    })\n  }\n}","@if (show()) {\n  <label\n    [for]=\"label()\"\n    class=\"text\"\n    [class.error]=\"field()?.touched && field()?.invalid\"\n  >\n    {{ label() }} {{ isRequired() ? \"*\" : \"\" }}\n  </label>\n}\n","import { Component, input, output } from '@angular/core';\nimport { FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { FormReactiveLabelComponent } from '../../label/component/form.reactive.label.component';\n\n@Component({\n  selector: 'dsv-form-reactive-checkbox',\n  imports: [ReactiveFormsModule, FormReactiveLabelComponent],\n  templateUrl: './form.reactive.checkbox.component.html',\n  styleUrls: [\n    '../../input/component/form.reactive.input.component.scss',\n    './form.reactive.checkbox.component.scss',\n  ],\n})\nexport class FormReactiveCheckboxComponent {\n  form = input.required<FormGroup>();\n  field = input.required<string>();\n  withLabel = input<boolean>(true);\n\n  change = output<string>();\n\n  doChange() {\n    this.change.emit(this.form().value[this.field()]);\n  }\n}\n","<div [formGroup]=\"form()\">\n  <dsv-form-reactive-label\n    [label]=\"field()\"\n    [field]=\"form().get(field())!\"\n    [show]=\"withLabel()\"\n  />\n  <div>\n    <input\n      type=\"checkbox\"\n      [formControlName]=\"field()\"\n      class=\"form-control\"\n      [id]=\"field()\"\n    />\n  </div>\n</div>\n","import { Component, inject } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\n\n@Component({\n  template: '',\n})\nexport abstract class BaseFormReactiveComponent {\n  protected readonly formBuilder = inject(FormBuilder);\n  protected form!: FormGroup;\n}\n","import { Component, inject, input, output } from '@angular/core';\nimport { FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { RouterLink } from '@angular/router';\nimport { ApiDto } from '@ng-vagabond-lab/ng-dsv/api';\nimport { DsvButtonComponent } from '@ng-vagabond-lab/ng-dsv/ds/button';\nimport { ToastService } from '@ng-vagabond-lab/ng-dsv/ds/toast';\nimport { TranslatePipe } from '@ngx-translate/core';\n\n@Component({\n  selector: 'app-form-reactive',\n  imports: [ReactiveFormsModule, DsvButtonComponent, RouterLink, TranslatePipe],\n  templateUrl: './form.reactive.component.html',\n  styleUrl: './form.reactive.component.scss',\n})\nexport class FormReactiveComponent {\n  toastService = inject(ToastService);\n\n  form = input.required<FormGroup>();\n\n  urlBack = input<string>();\n  textValid = input<string>('ENREGISTRER');\n  formValid = input<string>('Formulaire envoyé !');\n\n  callback = output<ApiDto>();\n\n  onSubmit() {\n    this.form().markAllAsTouched();\n    if (this.form().valid) {\n      this.callback.emit(this.form().value);\n      if (this.textValid() !== '') {\n        this.toastService.showToast({\n          text: this.formValid(),\n        });\n      }\n    } else {\n      this.toastService.showToast({\n        text: 'Erreur dans le formulaire !',\n        type: 'error',\n      });\n    }\n  }\n}\n","<form [formGroup]=\"form()\" (ngSubmit)=\"onSubmit()\" class=\"form-container\">\n  <div>\n    <ng-content></ng-content>\n  </div>\n  <div class=\"form-buttons\" [class.hidden]=\"!(urlBack() && textValid() !== '')\">\n    @if (urlBack()) {\n      <dsv-button\n        color=\"default\"\n        variant=\"outlined\"\n        [routerLink]=\"urlBack()\"\n        [prevent]=\"false\"\n        >{{ \"RETOUR\" | translate }}</dsv-button\n      >\n    }\n    @if (textValid() && textValid() !== \"\") {\n      <dsv-button type=\"submit\" color=\"primary\">{{\n        textValid()! | translate\n      }}</dsv-button>\n    }\n  </div>\n</form>\n","import { Component, HostBinding, input } from \"@angular/core\";\nimport { AbstractControl } from \"@angular/forms\";\nimport { TranslatePipe } from \"@ngx-translate/core\";\n\n@Component({\n    selector: 'dsv-form-reactive-error',\n    imports: [TranslatePipe],\n    templateUrl: './form.reactive.error.component.html',\n    styleUrls: ['./form.reactive.error.component.scss']\n})\nexport class FormReactiveErrorComponent {\n    field = input.required<AbstractControl<any, any>>();\n\n    @HostBinding('class')\n    get hostClasses(): string {\n        const classes: string[] = ['text', 'error'];\n        return classes.join(' ');\n    }\n}","@if (field().touched && field().invalid) {\n  @if (field().errors?.[\"required\"]) {\n    <div>{{ \"Le champ est obligatoire.\" | translate }}</div>\n  }\n}\n","import { Component, input, output } from '@angular/core';\nimport { FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { INPUT_TYPE } from '@ng-vagabond-lab/ng-dsv/type';\nimport { FormReactiveErrorComponent } from '../../error/component/form.reactive.error.component';\nimport { FormReactiveLabelComponent } from '../../label/component/form.reactive.label.component';\n\n@Component({\n  selector: 'dsv-form-reactive-input',\n  imports: [ReactiveFormsModule, FormReactiveLabelComponent, FormReactiveErrorComponent],\n  templateUrl: './form.reactive.input.component.html',\n  styleUrl: './form.reactive.input.component.scss',\n})\nexport class FormReactiveInputComponent {\n  form = input.required<FormGroup>();\n  field = input.required<string>();\n  type = input<INPUT_TYPE>('text');\n  withLabel = input<boolean>(true);\n  required = input<boolean>(false);\n  icon = input<string>();\n\n  onSend = output<string>();\n\n  onEnter() {\n    this.onSend.emit(this.form().value[this.field()]);\n  }\n}\n","<div [formGroup]=\"form()\">\n  @if (withLabel()) {\n    <dsv-form-reactive-label [label]=\"field()\" [field]=\"form().get(field())!\" />\n  }\n  @if (type() === \"textarea\") {\n    <textarea\n      [id]=\"field()\"\n      [formControlName]=\"field()\"\n      class=\"form-control\"\n      [class.error]=\"\n        form().get(field())?.touched && form().get(field())?.invalid\n      \"\n    ></textarea>\n  } @else {\n    <input\n      [id]=\"field()\"\n      [type]=\"type()\"\n      [formControlName]=\"field()\"\n      class=\"form-control\"\n      [class.icon]=\"icon()\"\n      [class.error]=\"\n        form().get(field())?.touched && form().get(field())?.invalid\n      \"\n      (keydown.enter)=\"onEnter()\"\n    />\n  }\n  @if (icon()) {\n    <i [class]=\"icon()\"></i>\n  }\n  <dsv-form-reactive-error [field]=\"form().get(field())!\" />\n</div>\n","import { Component, effect, input, output } from '@angular/core';\nimport {\n  BaseFormReactiveComponent,\n  FormReactiveComponent,\n  FormReactiveInputComponent\n} from '../../public-api';\n\n@Component({\n  selector: 'form-reactive-searchbar',\n  imports: [FormReactiveComponent, FormReactiveInputComponent],\n  templateUrl: './reactive.searchbar.component.html',\n  styleUrls: ['./reactive.searchbar.component.scss'],\n})\nexport class ReactiveSearchbarComponent extends BaseFormReactiveComponent {\n  search = input<string>('');\n  onSearch = output<string>();\n\n  constructor() {\n    super();\n    effect(() => {\n      this.form = this.formBuilder.group({\n        search: [this.search()],\n      });\n    });\n  }\n\n  onSend(value: string) {\n    this.onSearch.emit(value);\n  }\n}\n","<app-form-reactive [form]=\"form\" textValid=\"\">\n  <dsv-form-reactive-input\n    [form]=\"form\"\n    field=\"search\"\n    type=\"search\"\n    [withLabel]=\"false\"\n    (onSend)=\"onSend($event)\"\n    icon=\"icon ri-search-line\"\n  />\n</app-form-reactive>\n","import { Component, input, output } from '@angular/core';\nimport { FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { ApiDto } from '@ng-vagabond-lab/ng-dsv/api';\nimport { FormReactiveErrorComponent } from '../../error/component/form.reactive.error.component';\nimport { FormReactiveLabelComponent } from '../../label/component/form.reactive.label.component';\n\n@Component({\n  selector: 'dsv-form-reactive-select',\n  imports: [ReactiveFormsModule, FormReactiveLabelComponent, FormReactiveErrorComponent],\n  templateUrl: './form.reactive.select.component.html',\n  styleUrls: [\n    '../../input/component/form.reactive.input.component.scss',\n    './form.reactive.select.component.scss',\n  ],\n})\nexport class FormReactiveSelectComponent {\n  form = input.required<FormGroup>();\n  field = input.required<string>();\n  withLabel = input<boolean>(true);\n\n  list = input<(ApiDto & { name: string })[]>([]);\n\n  change = output<string>();\n\n  doChange() {\n    this.change.emit(this.form().value[this.field()]);\n  }\n}\n","<div [formGroup]=\"form()\">\n  <dsv-form-reactive-label\n    [label]=\"field()\"\n    [field]=\"form().get(field())!\"\n    [show]=\"withLabel()\"\n  />\n  <div>\n    <select\n      [id]=\"field()\"\n      [formControlName]=\"field()\"\n      class=\"form-control\"\n      (change)=\"doChange()\"\n      [class.error]=\"\n        form().get(field())?.touched && form().get(field())?.invalid\n      \"\n    >\n      @for (list of list(); track list.id) {\n        <option [value]=\"list.id\">\n          {{ list.name }}\n        </option>\n      }\n    </select>\n    <dsv-form-reactive-error [field]=\"form().get(field())!\" />\n  </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}