'use client'; import { useState } from 'react'; import { ChevronDown, Terminal, Code2 } from 'lucide-react'; const languages = [ { id: 'curl', name: 'cURL', icon: Terminal, available: true }, { id: 'typescript', name: 'TypeScript', icon: Code2, available: false }, { id: 'python', name: 'Python', icon: Code2, available: false }, { id: 'go', name: 'Go', icon: Code2, available: false }, ] as const; type LanguageId = typeof languages[number]['id']; export function LanguageSelector() { const [selected, setSelected] = useState('curl'); const [open, setOpen] = useState(false); const selectedLang = languages.find(l => l.id === selected)!; const Icon = selectedLang.icon; return (
{open && ( <>
setOpen(false)} />
Code Examples
{languages.map((lang) => { const LangIcon = lang.icon; return ( ); })}
)}
); }