Feature: Added Login / Register Feature #3
|
@ -19,8 +19,6 @@ import {
|
|||
} from '@angular/forms';
|
||||
import { ButtonModule } from 'primeng/button';
|
||||
import { CheckboxModule } from 'primeng/checkbox';
|
||||
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
||||
import { debounceTime } from 'rxjs/operators';
|
||||
|
||||
type AuthAction = 'register' | 'signup';
|
||||
|
||||
|
@ -46,7 +44,7 @@ export class RegisterRootComponent implements OnInit {
|
|||
public isSignupSignal: WritableSignal<boolean> = signal(false);
|
||||
public isDisplayButtons: WritableSignal<boolean> = signal(true);
|
||||
|
||||
public emailInvalid: WritableSignal<boolean | null> = signal(true);
|
||||
public emailInvalid: WritableSignal<boolean | null> = signal(null);
|
||||
public passwordInvalid: WritableSignal<boolean | null> = signal(null);
|
||||
public termsInvalid: WritableSignal<boolean | null> = signal(null);
|
||||
|
||||
|
@ -74,12 +72,6 @@ export class RegisterRootComponent implements OnInit {
|
|||
password: ['', [Validators.required, Validators.minLength(6)]],
|
||||
terms: [false, [Validators.requiredTrue]],
|
||||
});
|
||||
|
||||
this.form.statusChanges
|
||||
.pipe(debounceTime(500), takeUntilDestroyed(this.destroyRef))
|
||||
.subscribe(() => {
|
||||
this.updateFieldInvalidity();
|
||||
});
|
||||
}
|
||||
|
||||
public toggleAction(action: AuthAction): void {
|
||||
|
@ -108,6 +100,10 @@ export class RegisterRootComponent implements OnInit {
|
|||
this.isRegisterSignal.set(false);
|
||||
this.isSignupSignal.set(false);
|
||||
this.isDisplayButtons.set(true);
|
||||
|
||||
this.emailInvalid.set(false);
|
||||
this.passwordInvalid.set(false);
|
||||
this.termsInvalid.set(false);
|
||||
}
|
||||
|
||||
private updateFieldInvalidity(): void {
|
||||
|
|
Loading…
Reference in New Issue