My Profile
+Manage your personal information and preferences
+{name}
+{email}
+Delete Account
+Permanently delete your account and all associated data
+diff --git a/src/pages/Profile.tsx b/src/pages/Profile.tsx new file mode 100644 index 0000000..08213cc --- /dev/null +++ b/src/pages/Profile.tsx @@ -0,0 +1,147 @@ +import { useState } from "react"; +import { Card, CardContent, CardHeader, CardTitle, CardDescription } from "@/components/ui/card"; +import { Badge } from "@/components/ui/badge"; +import { Input } from "@/components/ui/input"; +import { Button } from "@/components/ui/button"; +import { Label } from "@/components/ui/label"; +import { Textarea } from "@/components/ui/textarea"; +import { Separator } from "@/components/ui/separator"; +import { Avatar, AvatarFallback } from "@/components/ui/avatar"; +import { toast } from "sonner"; +import { + Upload, Camera, Save, Trash2, AlertTriangle, Mail, Phone, User, Check +} from "lucide-react"; +import Sidebar from "@/components/Sidebar"; +import Header from "@/components/Header"; + +export default function ProfilePage() { + const [name, setName] = useState("Sarah Mitchell"); + const [email, setEmail] = useState("sarah@metricflow.com"); + const [phone, setPhone] = useState("+1 (555) 234-5678"); + const [bio, setBio] = useState("Product lead with a passion for data-driven decisions. Building better analytics tools for modern teams."); + const [profileSaved, setProfileSaved] = useState(false); + + const handleProfileSave = (e: React.FormEvent) => { + e.preventDefault(); + setProfileSaved(true); + toast.success("Profile updated!"); + setTimeout(() => setProfileSaved(false), 3000); + }; + + return ( +
Manage your personal information and preferences
+{email}
+Delete Account
+Permanently delete your account and all associated data
+