Browse Source

feat(client): improve type safety for delete own user form

pull/7302/head
KenTandrian 3 days ago
parent
commit
232ea5deab
  1. 14
      apps/client/src/app/components/user-account-settings/user-account-settings.component.ts

14
apps/client/src/app/components/user-account-settings/user-account-settings.component.ts

@ -25,8 +25,7 @@ import {
} from '@angular/core'; } from '@angular/core';
import { takeUntilDestroyed } from '@angular/core/rxjs-interop'; import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
import { import {
FormBuilder, NonNullableFormBuilder,
FormGroup,
FormsModule, FormsModule,
ReactiveFormsModule, ReactiveFormsModule,
Validators Validators
@ -75,7 +74,9 @@ export class GfUserAccountSettingsComponent implements OnInit {
protected readonly baseCurrency: string; protected readonly baseCurrency: string;
protected closeUserAccountMail: string; protected closeUserAccountMail: string;
protected readonly currencies: string[] = []; protected readonly currencies: string[] = [];
protected readonly deleteOwnUserForm: FormGroup; protected readonly deleteOwnUserForm = inject(NonNullableFormBuilder).group({
accessToken: ['', Validators.required]
});
protected hasPermissionToDeleteOwnUser: boolean; protected hasPermissionToDeleteOwnUser: boolean;
protected hasPermissionToRequestOwnUserDeletion: boolean; protected hasPermissionToRequestOwnUserDeletion: boolean;
protected hasPermissionToUpdateViewMode: boolean; protected hasPermissionToUpdateViewMode: boolean;
@ -107,7 +108,6 @@ export class GfUserAccountSettingsComponent implements OnInit {
private readonly changeDetectorRef = inject(ChangeDetectorRef); private readonly changeDetectorRef = inject(ChangeDetectorRef);
private readonly dataService = inject(DataService); private readonly dataService = inject(DataService);
private readonly destroyRef = inject(DestroyRef); private readonly destroyRef = inject(DestroyRef);
private readonly formBuilder = inject(FormBuilder);
private readonly notificationService = inject(NotificationService); private readonly notificationService = inject(NotificationService);
private readonly settingsStorageService = inject(SettingsStorageService); private readonly settingsStorageService = inject(SettingsStorageService);
private readonly snackBar = inject(MatSnackBar); private readonly snackBar = inject(MatSnackBar);
@ -115,10 +115,6 @@ export class GfUserAccountSettingsComponent implements OnInit {
private readonly webAuthnService = inject(WebAuthnService); private readonly webAuthnService = inject(WebAuthnService);
public constructor() { public constructor() {
this.deleteOwnUserForm = this.formBuilder.group({
accessToken: ['', Validators.required]
});
const { baseCurrency, currencies } = this.dataService.fetchInfo(); const { baseCurrency, currencies } = this.dataService.fetchInfo();
this.baseCurrency = baseCurrency; this.baseCurrency = baseCurrency;
@ -201,7 +197,7 @@ export class GfUserAccountSettingsComponent implements OnInit {
confirmFn: () => { confirmFn: () => {
this.dataService this.dataService
.deleteOwnUser({ .deleteOwnUser({
accessToken: this.deleteOwnUserForm.get('accessToken')?.value ?? '' accessToken: this.deleteOwnUserForm.controls.accessToken.value
}) })
.pipe( .pipe(
catchError(() => { catchError(() => {

Loading…
Cancel
Save