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.
UiFormController
Coordinates field validation and submission over UiFormSubmitController.
UiFormControllerField
A TextEditingController-backed field to track, with an optional validator run on every edit.
UiFormErrorSummary
Visible validation errors with actions that focus the corresponding field.
UiFormFieldController<T>
State owned by UiFormController for one typed field. Values should be immutable; use a new collection when changing selections.
UiFormFieldView<T>
Field presentation for custom controls. Bind the child's value, onChanged, and focus node to field; leave its own label/helper/error slots empty.
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.
UiFormTextField
Text adapter that synchronizes edits and form resets without recreating focus.
UiIconButton
Icon-only button primitive.
UiInput
Text input component.
UiInputState
UiIntentPalette
Rest-state colors shared by intent-aware surfaces.
UiMultiSelect<T>
Controlled searchable multi-selection with removable values and lazy options.
UiOtpInput
A single accessible text field rendered as grouped verification-code slots.
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
UiTextSelectionToolbar
Widgets-layer port of Flutter's Material text selection toolbar: the floating pill with text actions that Android users expect after a long press. iOS uses SystemContextMenu; this covers every platform where the system menu is unavailable without pulling Material into the kit.

Enums

UiInputVariant
UiIntent
Semantic emphasis shared by intent-aware UI components.
UiOtpInputType
Characters accepted by UiOtpInput. Codes always read left to right.
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

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