diff --git a/packages/web/src/dashboard/dashboard-sidebar.tsx b/packages/web/src/dashboard/dashboard-sidebar.tsx index a5e35e5..a1ad35b 100644 --- a/packages/web/src/dashboard/dashboard-sidebar.tsx +++ b/packages/web/src/dashboard/dashboard-sidebar.tsx @@ -2,8 +2,8 @@ import { api } from "@fileone/convex/_generated/api" import { Link, useLocation } from "@tanstack/react-router" import { useAuth } from "@workos-inc/authkit-react" import { useQuery as useConvexQuery } from "convex/react" +import { useAtomValue } from "jotai" import { - ChevronDownIcon, FilesIcon, HomeIcon, LogOutIcon, @@ -19,12 +19,17 @@ import { } from "@/components/ui/dropdown-menu" import { Sidebar, + SidebarContent, + SidebarFooter, + SidebarGroup, SidebarHeader, SidebarMenu, SidebarMenuButton, SidebarMenuItem, SidebarRail, } from "@/components/ui/sidebar" +import { LoadingSpinner } from "../components/ui/loading-spinner" +import { backgroundTaskProgressAtom } from "./state" export function DashboardSidebar() { return ( @@ -35,8 +40,17 @@ export function DashboardSidebar() { - + + + + + + + + + + ) @@ -110,6 +124,19 @@ function TrashItem() { ) } +function BackgroundTaskProgressItem() { + const backgroundTaskProgress = useAtomValue(backgroundTaskProgressAtom) + + if (!backgroundTaskProgress) return null + + return ( + + + {backgroundTaskProgress.label} + + ) +} + function UserMenu() { const { signOut } = useAuth() @@ -120,12 +147,18 @@ function UserMenu() { return ( - -
- -
- Kenneth - + + +
+ +
+
+ + Acme Inc + + Enterprise +
+
diff --git a/packages/web/src/dashboard/state.ts b/packages/web/src/dashboard/state.ts new file mode 100644 index 0000000..8a3cc49 --- /dev/null +++ b/packages/web/src/dashboard/state.ts @@ -0,0 +1,9 @@ +import { atom } from "jotai" + +type BackgroundTaskProgress = { + label: string +} + +export const backgroundTaskProgressAtom = atom( + null, +)