34 lines
1.1 KiB
TypeScript
34 lines
1.1 KiB
TypeScript
import { Component, inject} from '@angular/core';
|
|
import { CommonModule } from '@angular/common';
|
|
import { FormBuilder, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms';
|
|
import { RouterLink } from '@angular/router';
|
|
import {AuthStore} from '../auth.store';
|
|
import {environment} from '../../../environments/environment';
|
|
import { ValidationErrors } from '../../shared/validation-errors/validation-errors';
|
|
|
|
@Component({
|
|
selector: 'app-login',
|
|
standalone: true,
|
|
imports: [CommonModule, ReactiveFormsModule, RouterLink, ValidationErrors],
|
|
templateUrl: './login.html',
|
|
styleUrl: './login.css',
|
|
})
|
|
export class Login {
|
|
loginForm: FormGroup;
|
|
protected readonly authStore = inject(AuthStore);
|
|
|
|
constructor(private fb: FormBuilder) {
|
|
this.loginForm = this.fb.group({
|
|
email: ['', [Validators.required, Validators.email]],
|
|
password: ['', Validators.required]
|
|
});
|
|
}
|
|
|
|
login() {
|
|
if (this.loginForm.valid) {
|
|
if(!environment.production) console.log('Login submitted:', this.loginForm.value);
|
|
this.authStore.login(this.loginForm.value);
|
|
}
|
|
}
|
|
}
|