'use client'; import { useState } from 'react'; import { Plus, Pencil, X } from 'lucide-react'; import { useDashboardStore } from '@/stores/dashboardStore'; interface DashboardSidebarProps { onAddDashboard: () => void; onRenameDashboard: (id: string) => void; onDeleteDashboard: (id: string) => void; onSwitchDashboard: (id: string) => void; } export function DashboardSidebar({ onAddDashboard, onRenameDashboard, onDeleteDashboard, onSwitchDashboard, }: DashboardSidebarProps) { const dashboards = useDashboardStore((s) => s.dashboards); const activeDashboardId = useDashboardStore((s) => s.activeDashboardId); return (
내 대시보드
{dashboards.map((d) => { const id = d.dashboard_id ?? d.DASHBOARD_ID; const name = d.name ?? d.NAME ?? '대시보드'; const icon = d.icon ?? d.ICON ?? '📋'; const isActive = id === activeDashboardId; return (
onSwitchDashboard(id)} > {icon} {name}
); })}
); }