"use client"; import { Key, User } from "lucide-react"; import { motion } from "motion/react"; import { useRouter } from "next/navigation"; import { useTranslations } from "next-intl"; import { useCallback, useState } from "react"; import { ApiKeyContent } from "./components/ApiKeyContent"; import { ProfileContent } from "./components/ProfileContent"; import { type SettingsNavItem, UserSettingsSidebar } from "./components/UserSettingsSidebar"; export default function UserSettingsPage() { const t = useTranslations("userSettings"); const router = useRouter(); const [activeSection, setActiveSection] = useState("profile"); const [isSidebarOpen, setIsSidebarOpen] = useState(false); const navItems: SettingsNavItem[] = [ { id: "profile", label: t("profile_nav_label"), description: t("profile_nav_description"), icon: User, }, { id: "api-key", label: t("api_key_nav_label"), description: t("api_key_nav_description"), icon: Key, }, ]; const handleBackToApp = useCallback(() => { router.back(); }, [router]); return (
setIsSidebarOpen(false)} navItems={navItems} /> {activeSection === "profile" && ( setIsSidebarOpen(true)} /> )} {activeSection === "api-key" && ( setIsSidebarOpen(true)} /> )}
); }