Editable input with a floating listbox. Soma owns input text, open state, selection,
keyboard navigation, groups and form values; Eidos owns the control layout, trigger icon,
selected item indicator and panel recipe.
Combobox has two semantic commits: selecting is affirmative; unselecting is
neutral. Typing, filtering, opening and highlighting are intentionally silent.
Name
Family
Verb
Sequence
Intent
Target
Play
{#each events as action}
{action.name}
{action.semantic.family}
{action.semantic.verb ?? '-'}
{action.semantic.sequence ?? 'pre'}
{action.semantic.intent ?? '-'}
{action.target}
{/each}
{/if}
{#if tab === 'recipe'}
Eidos recipe
Selectors live in src/uix/eidos/components/combobox/combobox.css.
Morfo provides structure/state; Eidos-only attrs provide visual treatment.
Selector
Source
[data-combobox]
morfo
[data-combobox-control]
eidos-only
[data-combobox-input][data-state]
morfo
[data-combobox-content][data-side]
runtime
[data-combobox-item][data-state='checked']
morfo
[data-combobox-input][data-size]
eidos
[data-combobox-indicator]
eidos-only
[data-combobox-item-indicator]
eidos-only
{/if}
{#if tab === 'a11y'}
Accessibility
Concern
Contract
Pattern
Input is role="combobox"; content is role="listbox"; items are role="option".
Keyboard
Arrows navigate, Home/End jump, Enter selects, Escape closes.
Focus
Typing keeps focus in the input; highlighted item id is exposed via aria-activedescendant.
Form
name renders hidden inputs for submission.
Disabled
Disabled input, trigger and items are removed from interaction.