From 88722f414820e5cadc6ba224d3c3b8f874103f04 Mon Sep 17 00:00:00 2001
From: "gpt-engineer-app[bot]"
<159125892+gpt-engineer-app[bot]@users.noreply.github.com>
Date: Thu, 16 Oct 2025 18:52:14 +0000
Subject: [PATCH] feat: Implement folder management and sidebar collapse
---
src/components/Layout.tsx | 39 +++++-
src/components/chat/ChatSidebar.tsx | 205 +++++++++++++++++++++++++---
src/components/chat/ChatView.tsx | 6 +-
3 files changed, 220 insertions(+), 30 deletions(-)
diff --git a/src/components/Layout.tsx b/src/components/Layout.tsx
index 5e23ff9..9bf3d2c 100644
--- a/src/components/Layout.tsx
+++ b/src/components/Layout.tsx
@@ -1,4 +1,5 @@
-import { MessageSquare, Image, Mic, Settings, Plus } from "lucide-react";
+import { useState } from "react";
+import { MessageSquare, Image, Mic, Settings, Plus, ChevronLeft, ChevronRight } from "lucide-react";
import { Button } from "@/components/ui/button";
import { Separator } from "@/components/ui/separator";
@@ -11,6 +12,7 @@ interface LayoutProps {
type TabType = "chat" | "images" | "audio";
export const Layout = ({ children, activeTab, onTabChange }: LayoutProps) => {
+ const [isSidebarCollapsed, setIsSidebarCollapsed] = useState(false);
const tabs = [
{ id: "chat" as TabType, label: "Bate-papo", icon: MessageSquare },
@@ -21,12 +23,23 @@ export const Layout = ({ children, activeTab, onTabChange }: LayoutProps) => {
return (
{/* Sidebar */}
-