components
library
Classes
UiActionGroupGeometry
Solved size and child slots for one action-group frame.
UiActionGroupGeometryItem
Minimal input item for testing the geometry engine without widgets.
UiActionGroupGeometrySlot
Solved physical placement for one action-group slot.
UiActionGroupGeometrySolver
Geometry-first layout engine used by the smart action renderers.
UiAdaptiveSheetScope
Presents focused content as a bottom sheet on phones and a constrained
floating surface on tablet/desktop.
UiAlert
Inline alert banner.
UiAlertDialog
A single modal alert — shadcn's AlertDialog ported.
UiAlertDialogScope
Imperative helpers for presenting UiAlertDialog .
UiAttachment
A media attachment with metadata and deterministic transfer state.
UiAttachmentGroup
Horizontally browsable attachment collection with compact spacing.
UiAvatar
Token-driven avatar primitive.
UiAvatarEntry
UiAvatarGroup
Stacked avatar group primitive.
UiBadge
Compact label surface for statuses and counts.
UiBottomTabAccessory
A contextual control that sits beside a floating bottom tab dock.
UiBottomTabBar
UiBottomTabItem
One slot in a UiBottomTabBar .
UiBottomTabRailConfig
UiBottomTabScaffold
Page shell with a UiBottomTabBar and per-tab state preservation.
UiBubble
The visual message surface. Sender identity, metadata, and row alignment
belong to UiMessage .
UiBubbleGroup
UiButton
Token-driven labeled action button.
UiButtonMetrics
Shared sizing ratios used by UiButton and any other
trigger-shaped surface (selects, menu triggers, etc.).
UiCalendarEvent
A dated event rendered by Open UI calendar components.
UiCalendarTimeGrid
Token-driven, platform-neutral calendar time grid.
UiCard
Neutral card surface.
Convenience header cell with title + optional subtitle/trailing.
UiCardSkeleton
Card-shaped loading placeholder.
UiCheckbox
UiCombobox <T >
Searchable select for larger option sets.
UiCompactChoiceFilter <T >
A compact choice control whose resting surface becomes its floating menu.
UiConfirmActionGroup
Two-button confirmation group with coordinated width and label morphs.
UiDataColumn
UiDataRow
UiDataTable
UiDatePicker
Month-grid calendar with forward/back navigation and direct
month/year selection.
UiDateRange
Inclusive date range.
UiDateRangePicker
Two-step date range picker.
UiDateTimePicker
Combined date + time picker. Emits a single DateTime on change.
UiDateTimeRange
Inclusive date-time range.
UiDateTimeRangePicker
Composite picker for a date range and a time range. Emits a
UiDateTimeRange whose start uses the range's first date + start
time, and whose end uses the last date + end time.
UiDialog
Modal dialog surface.
UiDialogScope
Imperative helpers for showing a UiDialog .
UiDrawer
Drawer content wrapper. Usually presented by UiDrawerScope.show .
UiDrawerController <T >
Controls an open modal drawer.
Standard padded footer content for a structured UiDrawer .
Standard header content for a structured UiDrawer .
UiDrawerNavigator
Accessor for the drawer stack owned by the current modal drawer route.
UiDrawerScope
Imperative helpers for showing a UiDrawer overlay.
UiDrawerSection
Labelled group for use inside the structured drawer body.
UiDrawerStackController
Controls the nested stack inside a single modal drawer route.
Dropdown menu surface + trigger.
UiEmptyState
Placeholder shown when a view has no data.
UiErrorState
Placeholder shown when loading failed.
UiFileUpload
File-selection / dropzone display control.
UiFilterChip
Selectable chip for compact filters and option toggles.
UiFormatAction
UiFormattedText
Renders lightweight, operator-based rich text while preserving plain source.
UiFormattedTextController
A controller that previews formatting without hiding its source operators.
UiFormattedTextMatch
UiFormattedTextParser
Stateless parser shared by display text and composing controllers.
UiFormattedTextRule
A delimiter pair and the visual treatment of the text it encloses.
UiFormatToolbar
Horizontally scrolling formatting actions sized for native touch targets.
UiFormControllerField
A TextEditingController -backed field to track, with an optional
validator run on every edit.
UiFormSubmitController
Gates a form's submit button behind a single canSubmit signal, so a
button doesn't read as active before the form is actually ready.
UiIconButton
Icon-only button primitive.
UiInput
Text input component.
UiInputState
UiIntentPalette
Rest-state colors shared by intent-aware surfaces.
UiLoadingState
Placeholder shown while data is loading.
UiMarker
UiMediaGallery
Full-screen gallery chrome for images, video, documents, or custom media.
UiMediaGalleryAction
An accessible icon action in the gallery chrome.
UiMediaGalleryItem
Application-owned media content displayed by UiMediaGallery .
UiMediaPreview
Generic media surface with an image and a centered fallback.
Labelled cluster of items; renders an optional caption + items.
Single actionable row in the menu.
Base type for anything that can appear in a UiDropdownMenu .
Horizontal separator between groups/items.
Shortcut display widget (kept alongside items, not an item itself).
Long-press / hover submenu. Rendered inline as a row that opens a
nested menu on tap.
UiMessage
A conversation row that owns identity, alignment, metadata, and actions.
UiMessageGroup
UiMessageQueueBadge
Compact count displayed over the live-edge control for queued arrivals.
UiMessageReplyReturnButton
Returns to a message whose quoted reply was followed elsewhere.
UiMessageScrollControls
Animated conversation scroll controls inspired by compact messaging UIs.
UiMessageScroller
A chat viewport that follows new content only while the reader is at the
live edge and preserves their position when older items are prepended.
UiMessageScrollerController
Imperative access to a UiMessageScroller 's live-edge state.
UiMessageScrollerItem
UiMessageScrollToBottomButton
Circular control that returns a conversation to its live edge.
UiMessageUtilityAction
UiMessageUtilityStrip
A compact, keyboard-dock-friendly command surface for selected messages.
UiNavigationCountBadge
Standard numeric badge used by navigation surfaces.
UiNavigationDrawer
Navigation-specific drawer composition with the same region model as
UiNavigationRail : primary destinations in the body and persistent
actions/destinations in the footer.
UiNavigationDrawerAction
Non-selectable command rendered by UiNavigationDrawer .
UiNavigationDrawerDestination
Selectable destination rendered by UiNavigationDrawer .
UiNavigationRail
Floating navigation rail for tablet/desktop shells.
UiNavigationRailAction
UiNavigationRailAvatar
UiNavigationRailDestination
UiNavigationRailGeometry
Size and spacing configuration for UiNavigationRail .
UiPersistentSheet
A non-modal, persistent bottom sheet that keeps the host body
visible and interactive — the design used by Apple Maps / Google
Maps filter panels and modern search sheets.
UiPersistentSheetController
Controls a UiPersistentSheet . Exposes imperative snap navigation
and observes snap changes via ChangeNotifier .
UiRadio <T >
UiRadioGroup <T >
Controlled, accessible group of radio options.
UiRadioGroupOption <T >
One selectable item rendered by UiRadioGroup .
UiRating
Star (or configurable-icon) rating input.
UiRefresher
Pull-to-refresh behavior for any vertical, non-reversed Scrollable .
UiRefresherController
Imperative companion for UiRefresher .
UiRefreshIndicator
Token-driven default indicator used by both refresher variants.
UiRefreshIndicatorDetails
Immutable input passed to a UiRefreshIndicatorBuilder .
UiResponsiveNavigationScaffold
Navigation shell that picks a different chrome strategy per
breakpoint.
UiSelect <T >
Generic dropdown select.
UiSelectOption <T >
Single item in a UiSelect .
UiSelectState <T >
UiSheet
Canonical sheet surface — use directly inside UiSheetScope.show or
drop into a route body for non-modal presentations.
UiSheetBody
Semantic wrapper used when sheet body is split across helpers.
UiSheetController <T >
Controls an open sheet. Exposed via UiSheetScope.show so callers
can dismiss the sheet from inside the sheet body.
Action row pinned to the bottom of the sheet.
UiSheetHandle
Default drag-handle affordance rendered at the top of UiSheet s.
Pre-composed header with optional title/subtitle and trailing slot.
UiSheetScope
Imperative helpers for presenting a UiSheet as a modal overlay.
UiSheetSnap
Snap-point model for UiSheet presentation.
Persistent navigation surface for tablet/desktop layouts.
Labelled cluster of items; renders an optional caption above rows.
Clickable sidebar row.
Shared node contract for sidebar children.
Static section with an optional header + arbitrary body widget.
Horizontal separator between groups/sections.
UiSkeleton
Shared loading placeholder surface and animation scope.
UiSkeletonBar
Rectangular loading mark for text, icons, chips, and media blocks.
UiSkeletonText
Stack of text-line skeleton bars with optional per-line widths.
UiSlider
A single-value range slider (min/max/value/onChanged) — think volume or
brightness, not a two-handle range selector.
UiSliverDataTable
A table that participates directly in an ancestor CustomScrollView .
UiSliverRefresher
Sliver-native refresh control for a CustomScrollView .
UiSmartActionGroup
Experimental inline action group for replacing "More" sheets with morphing
buttons.
UiSmartActionGroupAction
One command rendered by UiSmartActionGroup .
UiSwitch
UiTab
Tab list item.
UiTabs
Shadcn-style segmented tab list.
UiTabViews
Cross-fade + subtle upward slide between tab panels.
UiTimeGridPicker
Compact column-based time picker inspired by popover time controls.
UiTimeline
A grouped, reverse-chronological activity timeline.
UiTimelineActor
A person or system identity associated with a timeline event.
UiTimelineChange
A before/after value shown within a timeline event.
UiTimelineEvent
Immutable content model for one UiTimeline entry.
UiTimelineTag
A compact label attached to a timeline event.
UiTimePicker
Simple hour/minute wheel picker (24-hour clock).
UiTimePickerField
Read-only form trigger that opens UiTimeGridPicker in an anchored overlay.
UiTimeRange
Inclusive time range.
UiTimeRangePicker
Pair of UiTimeGridPicker s for a start/end time range.
UiTimeValue
24-hour clock value (hour 0..23, minute 0..59).
UiToast
Sonner-like toast surface.
UiToastAction
Optional action button attached to a toast.
UiToaster
Sonner-like toaster.
UiToastOverlay
Back-compat shim for the older API.
UiTooltip
UiTypingIndicator
A compact, WhatsApp-inspired incoming bubble for active composition.
UiTypingUser
A participant currently composing a chat message.
UiUnreadMessagesMarker
A quiet, semantic boundary between previously seen and unread messages.
UiWavatar
A deterministic, locally rendered abstract avatar.
UiWavatarCharacteristics
Optional context that gently directs UiWavatar 's generated geometry.
UiWavatarParticipant
One distinct identity within a multi-participant UiWavatar .
Typedefs
UiBottomTabOverflowDrawerBuilder
= Widget Function(BuildContext context , UiDrawerController <void > controller )
UiBottomTabRailBuilder
= Widget Function(BuildContext context , UiBottomTabRailConfig config )
UiCalendarTimeLabelBuilder
= String Function(int hour )
UiComboboxFilter <T >
= bool Function(UiSelectOption <T > option , String query )
UiControlledDrawerBuilder <T >
= Widget Function(BuildContext context , UiDrawerController <T > controller )
UiDataRowBuilder
= UiDataRow Function(BuildContext context , int index )
UiDatePredicate
= bool Function(DateTime date )
Predicate the picker consults before accepting a date — return
true for dates that should be non-selectable (e.g. weekends).
UiFormattedTextStyleBuilder
= TextStyle Function(BuildContext context , TextStyle baseStyle )
UiFormFieldValidator
= String ? Function(String value )
Validates a single form field's current text. Returns null when valid,
otherwise an error message — same shape as UiInput.validator, so
factories like an emailField(msg) helper work as either.
UiInputValidator
= String ? Function(String value )
UiNavigationRailLeadingBuilder
= Widget Function(BuildContext context , Color foreground )
UiRefreshErrorCallback
= void Function(Object error , StackTrace stackTrace )
UiRefreshIndicatorBuilder
= Widget Function(BuildContext context , UiRefreshIndicatorDetails details )
UiResponsiveNavigationBuilder
= Widget Function(BuildContext context , UiNavigationFormFactor formFactor )
Builder signature for responsive navigation.
UiSelectOptionBuilder <T >
= Widget Function(BuildContext context , UiSelectOption <T > option , bool selected )
Builder for the dropdown option row.
UiSelectOptionLabelBuilder <T >
= Widget Function(BuildContext context , UiSelectOption <T > option , bool selected )
Builder for the label slot inside an option row — replaces the
default Text(option.label) while keeping the row's default chrome
(padding, hover background, selected check).
UiSelectValidator <T >
= String ? Function(T? value )
UiSelectValueBuilder <T >
= Widget Function(BuildContext context , UiSelectOption <T > ? selected )
Builder for the value shown inside the closed trigger.
UiTimelineDateLabelBuilder
= String Function(DateTime date )
UiTimelineLoadMoreLabelBuilder
= String Function(int remaining )
UiTimelineTimeLabelBuilder
= String Function(DateTime date )
UiTypingLabelBuilder
= String Function(List <UiTypingUser > users )
Builds the visible and spoken typing-state label.
UiUnreadMarkerBuilder
= Widget Function(BuildContext context )