'use client'; import clsx from 'clsx'; import { Hammer, Sparkles } from 'lucide-react'; import { DebugName } from '@/components/game/debug/debug-context'; import { useCraftingStore } from '@/lib/game/stores/craftingStore'; import type { CraftingAttunement } from '@/lib/game/stores/craftingStore.types'; import { FabricatorSubTab } from './CraftingTab/FabricatorSubTab'; import { EnchanterSubTab } from './CraftingTab/EnchanterSubTab'; interface CraftingSubTab { key: CraftingAttunement; label: string; icon: typeof Hammer; } const CRAFTING_SUB_TABS: CraftingSubTab[] = [ { key: 'fabricator', label: 'Fabricator', icon: Hammer }, { key: 'enchanter', label: 'Enchanter', icon: Sparkles }, ]; export function CraftingTab() { const activeSubTab = useCraftingStore((s) => s.activeCraftingSubTab); const setActiveSubTab = useCraftingStore((s) => s.setActiveCraftingSubTab); return (
{/* Sub-tab bar — same clsx pattern as DisciplinesTab */}
{CRAFTING_SUB_TABS.map(({ key, label, icon: Icon }) => ( ))}
{/* Sub-tab content */} {activeSubTab === 'fabricator' && } {activeSubTab === 'enchanter' && }
); } CraftingTab.displayName = 'CraftingTab';