/* eslint-disable @typescript-eslint/no-explicit-any */ import { CommonModule } from '@angular/common'; import { Component } from '@angular/core'; import { FormBuilder, FormGroup, FormsModule, ReactiveFormsModule, Validators, } from '@angular/forms'; import { MatButtonModule } from '@angular/material/button'; import { MatCardModule } from '@angular/material/card'; import { MatDatepickerModule } from '@angular/material/datepicker'; import { MatDialogRef } from '@angular/material/dialog'; import { MatFormFieldModule } from '@angular/material/form-field'; import { MatIconModule } from '@angular/material/icon'; import { MatInputModule } from '@angular/material/input'; import { MatSelectModule } from '@angular/material/select'; import { MatSlideToggleModule, _MatSlideToggleRequiredValidatorModule, } from '@angular/material/slide-toggle'; @Component({ selector: 'bgui-charge-dialog', standalone: true, imports: [ CommonModule, ReactiveFormsModule, MatInputModule, MatFormFieldModule, MatDatepickerModule, MatButtonModule, MatIconModule, MatCardModule, MatSelectModule, MatSlideToggleModule, FormsModule, _MatSlideToggleRequiredValidatorModule, ], templateUrl: './charge-dialog.component.html', styleUrl: './charge-dialog.component.scss', }) export class ChargeDialogComponent { myForm!: FormGroup; showAlert: any; title: string = 'Ajouter une charge'; isChecked = true; cycles = [ { value: 'cycle1', viewValue: 'Cycle 1' }, { value: 'cycle2', viewValue: 'Cycle 2' }, { value: 'cycle3', viewValue: 'Cycle 3' }, ]; constructor( private fb: FormBuilder, private dialogRef: MatDialogRef ) {} ngOnInit(): void { this.myForm = this.fb.group({ charge: ['', Validators.required], montant: ['', Validators.required], description: [''], cursus: [''], status: [''], }); } onSubmit(): void { if (this.myForm.valid) { this.onSave(); } } onSave(): void { if (this.myForm.valid) { console.log(this.myForm.value); this.dialogRef.close(this.myForm.value); } } onCancel(): void { this.dialogRef.close(); } }