components/forms 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.
UiButton
Token-driven labeled action button.
UiButtonMetrics
Shared sizing ratios used by UiButton and any other trigger-shaped surface (selects, menu triggers, etc.).
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.
UiFileUpload
File-selection / dropzone display control.
UiFilterChip
Selectable chip for compact filters and option toggles.
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.
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.
UiSelect<T>
Generic dropdown select.
UiSelectOption<T>
Single item in a UiSelect.
UiSelectState<T>
UiSlider
A single-value range slider (min/max/value/onChanged) — think volume or brightness, not a two-handle range selector.
UiSmartActionGroup
Experimental inline action group for replacing "More" sheets with morphing buttons.
UiSmartActionGroupAction
One command rendered by UiSmartActionGroup.
UiSwitch

Enums

UiInputVariant
UiIntent
Semantic emphasis shared by intent-aware UI components.
UiSelectPlacement
Placement strategy used when the dropdown opens.
UiSize
Component sizing scale.
UiSmartActionGroupExpandedLayout
How flexible actions divide the wide layout after an overflow group expands.

Constants

kUiPressGrowScale → const double
How far a small pressed surface grows past kUiPressGrowThreshold, as a scale factor. Content inside is counter-scaled by 1 / this so it stays visually fixed size while only the surface grows around it.
kUiPressGrowThreshold → const double
Below this visual size, a pressed button grows its surface instead of shrinking its content (see UiIconButton's press treatment) — small enough that a shrink is barely visible, and a thumb covering the control benefits from seeing it get bigger rather than smaller underneath.

Typedefs

UiComboboxFilter<T> = bool Function(UiSelectOption<T> option, String query)
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)
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.