From cc58bde750f4e15fc8c1e19f7f652602a3026550 Mon Sep 17 00:00:00 2001 From: Ian Day Date: Sat, 23 Nov 2024 18:33:36 -0500 Subject: [PATCH] feat(Frontend): add name to user store --- frontend/src/components/user-nav.tsx | 44 ++++++++++--------- .../pages/auth/components/user-auth-form.tsx | 3 ++ frontend/src/store/user-store.ts | 3 ++ 3 files changed, 30 insertions(+), 20 deletions(-) diff --git a/frontend/src/components/user-nav.tsx b/frontend/src/components/user-nav.tsx index 3d99042..f5b7282 100644 --- a/frontend/src/components/user-nav.tsx +++ b/frontend/src/components/user-nav.tsx @@ -10,48 +10,52 @@ import { DropdownMenuShortcut, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu' +import { useUserStore } from '@/store/user-store' +import { Link } from 'react-router-dom' export function UserNav() { + const firstName = useUserStore.getState().user?.firstName + const lastName = useUserStore.getState().user?.lastName + const email = useUserStore.getState().user?.email + return (
-

satnaing

+

+ {firstName} {lastName} +

- satnaingdev@gmail.com + {email}

- - Profile - ⇧⌘P - - - Billing - ⌘B - - - Settings - ⌘S - - New Team + + Profile + + + Settings + - - Log out - ⇧⌘Q - + + + Logout +
) diff --git a/frontend/src/pages/auth/components/user-auth-form.tsx b/frontend/src/pages/auth/components/user-auth-form.tsx index c58148b..19ef54b 100644 --- a/frontend/src/pages/auth/components/user-auth-form.tsx +++ b/frontend/src/pages/auth/components/user-auth-form.tsx @@ -74,6 +74,9 @@ export function UserAuthForm({ className, ...props }: UserAuthFormProps) { setCredentials({ accessToken: data.access, refreshToken: data.refresh, + firstName: data.user.first_name, + lastName: data.user.last_name, + email: data.user.email, }) navigate('/') diff --git a/frontend/src/store/user-store.ts b/frontend/src/store/user-store.ts index 917a005..97867b9 100644 --- a/frontend/src/store/user-store.ts +++ b/frontend/src/store/user-store.ts @@ -5,6 +5,9 @@ import { persist } from 'zustand/middleware' interface User { accessToken: string refreshToken: string + firstName: string + lastName: string + email: string } interface UserState {