From 3cb1ead5e2e435e407934b961df2e371b530cc4e Mon Sep 17 00:00:00 2001 From: indifferentketchup Date: Sat, 16 May 2026 15:23:33 +0000 Subject: [PATCH] feat(mobile): add hamburger + file explorer button to root empty state --- apps/web/src/pages/Home.tsx | 41 ++++++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 5 deletions(-) diff --git a/apps/web/src/pages/Home.tsx b/apps/web/src/pages/Home.tsx index f9079a4..b2d27d0 100644 --- a/apps/web/src/pages/Home.tsx +++ b/apps/web/src/pages/Home.tsx @@ -1,5 +1,5 @@ import { useEffect, useState } from 'react'; -import { ChevronDown, ChevronRight, Folder, RotateCcw } from 'lucide-react'; +import { ChevronDown, ChevronRight, Folder, FolderTree, Menu, RotateCcw } from 'lucide-react'; import { toast } from 'sonner'; import { Button } from '@/components/ui/button'; import { AddProjectModal } from '@/components/AddProjectModal'; @@ -8,6 +8,9 @@ import { api } from '@/api/client'; import type { Project } from '@/api/types'; import { sessionEvents } from '@/hooks/sessionEvents'; import { useSidebar } from '@/hooks/useSidebar'; +import { useSidebarDrawer } from '@/hooks/useSidebarDrawer'; +import { useRightRailDrawer } from '@/hooks/useRightRailDrawer'; +import { useViewport } from '@/hooks/useViewport'; export function Home() { const { data } = useSidebar(); @@ -15,6 +18,9 @@ export function Home() { const [createOpen, setCreateOpen] = useState(false); const [archived, setArchived] = useState(null); const [showArchived, setShowArchived] = useState(false); + const { setOpen: setSidebarOpen } = useSidebarDrawer(); + const { toggle: toggleRightRail } = useRightRailDrawer(); + const { isMobile } = useViewport(); const empty = data ? data.projects.length === 0 : false; @@ -70,8 +76,32 @@ export function Home() { } return ( -
-
+
+ {isMobile && ( +
+ + +
+ )} +
+
{empty ? ( <> @@ -127,9 +157,10 @@ export function Home() { )}
)} +
+ {}} /> +
- {}} /> -
); }