Кm
Size: a a a
Кm
DB
t
t
DB
M
DB
AV
t
t
t
t
DB
AR
M
Л
AR
t
7
MP
public static adminValidator(adminService: AdminUserService): AsyncValidatorFn | any {
return async (control: AbstractControl) => {
const username = control?.value;
let unique = await adminService.isUsernameUnique(username);
return !unique;
}
}
public static adminUserUniqueValidator(adminService: AdminUserService): AsyncValidatorFn {
return control => control.valueChanges
?.pipe(
debounceTime(300),
distinctUntilChanged(),
switchMap((value: string) => adminService.isUsernameUnique(value)),
map((unique: boolean) =>
unique ? null : {'usernameUniquenessViolated': true}
),
first());
}