Onboarding
This commit is contained in:
@@ -39,6 +39,18 @@ export class AuthService {
|
||||
return this.http.get<VerifyEmailResponse>(`${this.apiUrl}/verify-email`, { params });
|
||||
}
|
||||
|
||||
loadCurrentUser(): Observable<PublicUser> {
|
||||
return this.http
|
||||
.get<PublicUser>(`${this.apiUrl}/me`)
|
||||
.pipe(tap((user) => this.storeUser(user)));
|
||||
}
|
||||
|
||||
updateOnboardingCompleted(completed: boolean): Observable<PublicUser> {
|
||||
return this.http
|
||||
.patch<PublicUser>(`${this.apiUrl}/me/onboarding`, { completed })
|
||||
.pipe(tap((user) => this.storeUser(user)));
|
||||
}
|
||||
|
||||
accessToken(): string | null {
|
||||
return this.storage?.getItem(ACCESS_TOKEN_KEY) ?? null;
|
||||
}
|
||||
@@ -77,8 +89,12 @@ export class AuthService {
|
||||
private storeSession(response: AuthTokenResponse): void {
|
||||
this.storage?.setItem(ACCESS_TOKEN_KEY, response.accessToken);
|
||||
this.storage?.setItem(REFRESH_TOKEN_KEY, response.refreshToken);
|
||||
this.storage?.setItem(USER_KEY, JSON.stringify(response.user));
|
||||
this.userSignal.set(response.user);
|
||||
this.storeUser(response.user);
|
||||
}
|
||||
|
||||
private storeUser(user: PublicUser): void {
|
||||
this.storage?.setItem(USER_KEY, JSON.stringify(user));
|
||||
this.userSignal.set(user);
|
||||
}
|
||||
|
||||
private readStoredUser(): PublicUser | null {
|
||||
|
||||
Reference in New Issue
Block a user