"use client"; import * as React from "react"; import { Dialog, DialogContent, DialogDescription, DialogTitle, } from "@/components/ui/dialog"; import { Sidebar, SidebarContent, SidebarGroup, SidebarGroupContent, SidebarMenu, SidebarMenuButton, SidebarMenuItem, SidebarProvider, } from "@/components/ui/sidebar"; import { Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, } from "@/components/ui/breadcrumb"; import { useTranslations } from "next-intl"; import { ScrollArea } from "@/components/ui/scroll-area"; import { useSettingsStore } from "@/stores/useSettingsStore"; import { LocaleSwitcher } from "@/components/locale-switcher"; import AppearanceSettings from "@/components/appearance-settings"; import { CodeXml, Globe, Paintbrush, Settings } from "lucide-react"; export const SettingsDialog = () => { const t = useTranslations("SettingsDialog"); const data = { nav: [ { id: "Appearance", name: t("nav.Appearance"), icon: Paintbrush }, { id: "Language", name: t("nav.Language"), icon: Globe }, { id: "CodeEditor", name: t("nav.CodeEditor"), icon: CodeXml }, { id: "Advanced", name: t("nav.Advanced"), icon: Settings }, ], }; const { isDialogOpen, activeSetting, setDialogOpen, setActiveSetting } = useSettingsStore(); return ( {t("title")} {t("description")} {data.nav.map((item) => ( setActiveSetting(item.id)} > {item.name} ))}
{t("breadcrumb")} {t(`nav.${activeSetting}`)}
{activeSetting === "Appearance" && } {activeSetting === "Language" && }
); };