/* 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 { MatDialogModule, MatDialogRef } from '@angular/material/dialog'; import { MatIconModule } from '@angular/material/icon'; import { MatInputModule } from '@angular/material/input'; import { MatPaginatorModule } from '@angular/material/paginator'; import { MatTableModule } from '@angular/material/table'; import { MatTabsModule } from '@angular/material/tabs'; import { Router, RouterLink } from '@angular/router'; import { AuthService } from 'src/app/_helpers/services/auth.service'; import { MatFormFieldModule } from '@angular/material/form-field'; import { MatSelectModule } from '@angular/material/select'; import { MatDatepickerModule } from '@angular/material/datepicker'; import { provideNativeDateAdapter } from '@angular/material/core'; import { MatCheckboxModule } from '@angular/material/checkbox'; import { MatSlideToggleModule } from '@angular/material/slide-toggle'; @Component({ selector: 'bgui-create-tpe', standalone: true, imports: [ CommonModule, MatButtonModule, MatIconModule, MatTabsModule, MatTableModule, MatInputModule, MatIconModule, RouterLink, FormsModule, MatCardModule, MatPaginatorModule, MatDialogModule, ReactiveFormsModule, MatFormFieldModule, MatSelectModule, MatDatepickerModule, MatCheckboxModule, MatSlideToggleModule, ], providers: [provideNativeDateAdapter()], templateUrl: './create-tpe.component.html', styleUrl: './create-tpe.component.scss', }) export class CreateTpeComponent { showAlert: any; status: any; minDate: any; maxDate: any; statusList: string[] = ['Actif', 'Inactif']; groupes: string[] = ['Groupe A', 'Groupe B', 'Groupe C']; services: string[] = ['Service 1', 'Service 2', 'Service 3']; fonctions: string[] = ['Fonction 1', 'Fonction2']; activites: string[] = ['Activité 1', 'Activité']; isChecked: boolean = false; login() { throw new Error('Method not implemented.'); } hide = true; public myForm!: FormGroup; constructor( private fb: FormBuilder, private authservice: AuthService, private dialogRef: MatDialogRef, private router: Router ) {} ngOnInit() { this.myForm = this.fb.group({ groupe: ['', Validators.required], service: ['', Validators.required], nom: ['', Validators.required], fonction: ['', Validators.required], activite: ['', Validators.required], solde: ['', Validators.required], statut: [false], date: ['', Validators.required], }); } onSubmit(): void { if (this.myForm.valid) { console.log('Form Submitted', this.myForm.value); } } onCancel(): void { this.myForm.reset(); console.log('Form Cancelled'); } }