import { useCallback, useEffect } from 'react' import { NoteTitleIcon } from './NoteTitleIcon' import { focusNoteIconPropertyEditor } from './noteIconPropertyEvents' import { resolveNoteIcon } from '../utils/noteIcon' interface NoteIconProps { icon: string | null editable?: boolean } export function NoteIcon({ icon, editable = true }: NoteIconProps) { const hasIcon = resolveNoteIcon(icon).kind !== 'none' // Listen for command palette "Set Note Icon" event useEffect(() => { if (!editable) return const handler = () => focusNoteIconPropertyEditor() window.addEventListener('laputa:open-icon-picker', handler) return () => window.removeEventListener('laputa:open-icon-picker', handler) }, [editable]) const handleActivate = useCallback(() => { if (!editable) return focusNoteIconPropertyEditor() }, [editable]) return (