From 1036e1ff5e85ce32947b892541a60564d0eb853a Mon Sep 17 00:00:00 2001 From: v0 Date: Wed, 11 Mar 2026 07:20:17 +0000 Subject: [PATCH] feat: make app fully mobile-responsive Update layout, headers, tables, kanban, comms, forms, and modals for mobile. Co-authored-by: Moheeb Zara <1184415+virgilvox@users.noreply.github.com> --- app/(app)/comms/comms-client.tsx | 37 ++-- app/(app)/contacts/contacts-client.tsx | 10 +- app/(app)/dashboard/page.tsx | 13 +- app/(app)/layout.tsx | 2 +- app/(app)/members/members-client.tsx | 22 ++- app/(app)/ops/ops-client.tsx | 8 +- app/(app)/payments/payments-client.tsx | 14 +- app/(app)/projects/projects-client.tsx | 10 +- app/(app)/settings/settings-client.tsx | 8 +- app/(app)/tasks/tasks-client.tsx | 14 +- components/app-sidebar.tsx | 253 ++++++++++--------------- 11 files changed, 181 insertions(+), 210 deletions(-) diff --git a/app/(app)/comms/comms-client.tsx b/app/(app)/comms/comms-client.tsx index a090d17..f57d184 100644 --- a/app/(app)/comms/comms-client.tsx +++ b/app/(app)/comms/comms-client.tsx @@ -2,7 +2,7 @@ import { useState, useEffect, useRef } from 'react' import { createClient } from '@/lib/supabase/client' -import { Hash, Users2, Send } from 'lucide-react' +import { Hash, Users2, Send, ChevronLeft } from 'lucide-react' interface Props { member: any @@ -15,6 +15,7 @@ export default function CommsClient({ member, space, channels }: Props) { const [messages, setMessages] = useState([]) const [newMessage, setNewMessage] = useState('') const [sending, setSending] = useState(false) + const [showChannelList, setShowChannelList] = useState(true) const messagesEndRef = useRef(null) useEffect(() => { @@ -140,26 +141,32 @@ export default function CommsClient({ member, space, channels }: Props) { const projectChannels = channels.filter(c => c.channel_type === 'project') return ( -
-
+
+
-

Comms

+ {/* Mobile back to channels */} + {!showChannelList && selectedChannel && ( + + )} +

+ {!showChannelList && selectedChannel ? `#${selectedChannel.name}` : 'Comms'} +

-
- {/* Channels sidebar */} -