TUIDropdown
DocsTUIDropdown

Dropdown

Selection list component for autocomplete menus

Quick Start

main.py
from connectonion.tui import Dropdown, DropdownItem # Create items items = [ DropdownItem(display="/today", value="/today", description="Daily briefing"), DropdownItem(display="/inbox", value="/inbox", description="Show emails"), ] # Create dropdown and set its items dropdown = Dropdown(max_visible=5, show_icons=True) dropdown.set_items(items)

DropdownItem

Structured item with rich metadata:

Simple Item

main.py
from connectonion.tui import DropdownItem # Simple item item = DropdownItem(display="/today", value="/today")

With Description

main.py
item = DropdownItem( display="/today", value="/today", description="Daily email briefing", icon="๐Ÿ“…" )

Contact Style

main.py
item = DropdownItem( display="Davis Baer", value="davis@oneupapp.io", description="davis@oneupapp.io", subtitle="OneUp ยท founder", icon="๐Ÿ‘ค" )

API

DropdownItem

main.py
DropdownItem( display: str, # Main text to show value: Any, # Value returned when selected score: int = 0, # Match score for sorting positions: list = [], # Matched char positions (for highlighting) description: str = "", # Secondary text subtitle: str = "", # Third line icon: str = "", # Left icon (emoji) style: str = "", # Rich style )

Dropdown

main.py
Dropdown( max_visible: int = 8, # Max items shown at once show_icons: bool = True, ) # Populate/replace items after construction: dropdown.set_items(items: list[DropdownItem]) dropdown.clear() # Navigate and read selection: dropdown.down() / dropdown.up() dropdown.selected_value # currently selected item's value dropdown.selected_display # currently selected item's display text dropdown.is_empty # True if no items

File Icons

Built-in icons for common file types:

IconType
๐Ÿ“folder
๐Ÿ“„file (default)
๐Ÿ.py
๐Ÿ“œ.js, .ts
โš™๏ธ.json, .yaml

Star us on GitHub

If ConnectOnion saves you time, a โญ goes a long way โ€” and earns you a coffee chat with our founder.