"use client" import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select" import { Label } from "@/components/ui/label" import { cn } from "@/lib/utils" import { FontName, fontList, fonts } from "@/lib/fonts" import { Input } from "@/components/ui/input" import { defaultPreset, getPreset, presets } from "@/app/engine/presets" import { useState } from "react" import { useStore } from "@/app/store" export function TopMenu() { const font = useStore(state => state.font) const setFont = useStore(state => state.setFont) const preset = useStore(state => state.preset) const setPreset = useStore(state => state.setPreset) const prompt = useStore(state => state.prompt) const setPrompt = useStore(state => state.setPrompt) const atLeastOnePanelIsBusy = useStore(state => state.atLeastOnePanelIsBusy) const [draft, setDraft] = useState("") return (
{ setDraft(e.target.value) }} onBlur={(e) => { if (draft !== prompt) { if (draft.trim() !== prompt.trim()) { setPrompt(draft.trim()) } } }} onKeyDown={({ key }) => { if (key === 'Enter') { if (draft.trim() !== prompt.trim()) { setPrompt(draft.trim()) } } }} value={draft} />
) }