components/surfaces library

Classes

UiAdaptiveSheetScope
Presents focused content as a bottom sheet on phones and a constrained floating surface on tablet/desktop.
UiDrawer
Drawer content wrapper. Usually presented by UiDrawerScope.show.
UiDrawerController<T>
Controls an open modal drawer.
UiDrawerFooter
Standard padded footer content for a structured UiDrawer.
UiDrawerHeader
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.
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.
UiResponsiveNavigationScaffold
Navigation shell that picks a different chrome strategy per breakpoint.
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.
UiSheetFooter
Action row pinned to the bottom of the sheet.
UiSheetHandle
Default drag-handle affordance rendered at the top of UiSheets.
UiSheetHeader
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.
UiSidebar
Persistent navigation surface for tablet/desktop layouts.
UiSidebarGroup
Labelled cluster of items; renders an optional caption above rows.
UiSidebarItem
Clickable sidebar row.
UiSidebarNode
Shared node contract for sidebar children.
UiSidebarSection
Static section with an optional header + arbitrary body widget.
UiSidebarSeparator
Horizontal separator between groups/sections.

Enums

UiDrawerSide
Edge a drawer attaches to.
UiDrawerVariant
Visual treatment for modal drawers.
UiNavigationFormFactor
Breakpoint form factors surfaced by UiResponsiveNavigationScaffold.
UiSheetSnapKind
How a sheet sizes itself along the vertical axis.

Constants

persistentSheetSurfaceKey → const ValueKey<String>
Test hook: identifies the sized surface that represents the current sheet height. Exposed so integration tests can measure the rendered sheet directly (the surrounding UiPersistentSheet fills its parent layout and therefore reports the wrong height).

Typedefs

UiControlledDrawerBuilder<T> = Widget Function(BuildContext context, UiDrawerController<T> controller)
UiResponsiveNavigationBuilder = Widget Function(BuildContext context, UiNavigationFormFactor formFactor)
Builder signature for responsive navigation.