uzmaps_ui library
uzmaps_ui — the UzMaps design system.
The Material 3 theme built from brand tokens, motion components, skeletons, the drag-sheet engine, toasts and state views. Everything visual lives here so screens compose instead of styling.
Classes
- CountUpText
- A number that counts up (or between values) when it changes — route durations and distances feel alive instead of snapping.
- EmptyState
- The "nothing here" view: icon, message, optionally an action.
- ErrorState
- An error with an optional retry — the retry re-runs the failing future.
- FadeThrough
- Fade-through: out with the old (fade + slight scale down), in with the new (fade + scale up). For swapping panel contents in place.
- OfflineBanner
- The sliding offline banner pinned above the sheet: shows while the server is unreachable, hides itself the moment a check succeeds.
- PressableScale
- Press feedback for anything tappable: scales to 0.97 with a haptic tick, and back with overshoot. The app's universal "this is a button" feel.
- PulseMarker
- Expanding pulse rings for the current-location marker and recording badge.
- Shimmer
- The shimmer behind every skeleton. Draws a moving highlight band over child; a skeleton is a grey shape wrapped in one of these.
- Skeleton
- Skeleton primitives — grey shapes wrapped in Shimmer.
- StaggeredList
- Staggered entrance for list children: each item slides up and fades in a beat after the previous one. Wrap the list; it animates once on first build.
- UzAvatar
- A circular letter avatar for the local profile.
- UzButton
- The filled action button with press-scale feedback. The app's primary CTA.
- UzCard
- A floating surface card over the map — the standard container.
- UzChip
- A category chip that morphs between states instead of snapping.
- UzColors
- The brand palette.
- UzDragSheet
- A draggable bottom sheet that lives in the tree — not a modal — so the map stays interactive beside it.
- UzIcons
- Icon mappings — result kinds, category ids and route manoeuvres to glyphs.
- UzListRow
- A leading-icon row for place facts — address, phone, hours — with optional copy.
- UzMotion
- Motion is a language, not a pile of durations: entering things decelerate, leaving things accelerate, and cross-fades happen at the standard pace.
- UzRadius
- Corner radii. Small things get small radii; sheets and cards read as one system.
- UzRatingStars
- The star rating row, used by the trip journal's "how was your tour?".
- UzShadows
- The three elevation levels a floating surface can sit at. Over a map, shadows carry the hierarchy — there are no opaque panels behind anything.
- UzSpacing
- Space, in multiples of 4.
- UzStatusPill
- A pill for open/closed state, animating between values.
- UzTheme
- The Material 3 theme built from the brand tokens, light and dark.
- UzThemeProvider
- Direct access to the brand tokens inside the widget tree, for the moments the Material scheme cannot express (pulse colors, route lines, status pills).
- UzToasts
- A transient message overlaid at the top of the screen, sliding in and out.
Functions
-
showUzSheet<
T> ({required BuildContext context, required WidgetBuilder builder, bool isScrollControlled = true}) → Future< T?> - A modal bottom sheet with the same visual language as UzDragSheet, for flows that do need to block (confirmations, editors).