auris_widgets library
Auris custom HUD widget library — standalone widgets for patterns that
ThemeData cannot express (chamfered toggles, segmented meters, terminals,
ornaments, stat tiles).
All widgets read their design-defining values from the resolved
AurisScheme via Theme.of(context).extension<AurisScheme>(), so they
honor customization overrides and future brightness variants.
The widgets themselves are added in later batches; this barrel exists now so the public surface is stable. The shared scheme/tokens are re-exported here for convenience.
Classes
- AurisBadge
- A small text-only status tag in monospace, colored by variant (§spec:custom-widgets).
- AurisBevelScale
- The bevel (chamfer) scale, expressed as semantic roles rather than the raw primitive sizes, so a customization override can multiply the whole scale at once.
- AurisContainer
- The foundation primitive of the Auris custom-widget library: a chamfered box that paints a fill, an AurisChamferBorder outline, and an optional depth glow, then clips its child to the same notched silhouette via a ChamferClipper (§spec:custom-widgets).
- AurisDataRow
- A fixed-height key/value row with a bottom divider: the label on the left, a monospace value on the right, an optional trailing widget, and an optional highlight state that brightens the value and glows it (§spec:custom-widgets).
- AurisDepth
- A resolved depth cue — the concrete result of requesting depth by intent.
- AurisHexOrnament
- A non-interactive cluster of hexagons for ambient page-background detail (§spec:custom-widgets).
- AurisNotification
- An inline alert banner with a left accent bar + matching glow, a variant icon, a title, and an optional message / code and onDismiss action (§spec:custom-widgets).
- AurisPanel
- A titled card with a header strip, corner-bracket ornaments flanking the title, an optional status code, and an accent mode (gold border + subtle glow) (§spec:custom-widgets).
- AurisProgressBar
-
A segmented meter:
segmentsparallelogram-slanted cells, of which the leadingvalue-fraction are filled in the variant color. Trailing filled cells sit slightly dimmed and the leading cell is full-strength with the variant's depth glow, so the "wavefront" reads as luminous (§spec:custom-widgets — the preferred linear-progress replacement Material'sLinearProgressIndicatorcannot segment). -
AurisRadio<
T> - A single-select radio with a chamfered indicator — Material's Radio is circular with no shape hook, so this is the geometric replacement (§spec:custom-widgets). The selected state shows a filled chamfered pip inside a chamfered box; an empty box otherwise.
- AurisScanBracket
-
Targeting-reticle corner brackets drawn around a child, with an optional
opacity pulse on
durationSlow(§spec:custom-widgets). - AurisScheme
- The single resolved design scheme every Auris consumer reads.
-
AurisSelect<
T> -
A custom dropdown matching the intended HUD look the native
DropdownMenucannot reach (§spec:custom-widgets): a chamfered trigger box showing the value in monospace with a gold caret that rotates 180° when open, and a chamfered popup panel (gold-tinted border, amber depth glow) of monospace rows. Each row istextMidat rest /textBrighton hover; the selected row isbrighton a faint gold tint; rows are separated by a 1px divider in the border color. -
AurisSelectOption<
T> - A single option in an AurisSelect.
- AurisStatCard
- A KPI / metric tile: a label, a large glowing value with an optional unit, and an optional signed delta (a success/danger arrow plus the delta text) (§spec:custom-widgets).
- AurisStepIndicator
-
A chamfered step marker for use with
Stepper.stepIconBuilderor standalone (§spec:custom-widgets). The four AurisStepStates — inactive, active, complete, error — are distinguished by border/fill color and glyph, all resolved from the AurisScheme; the active marker carries the active depth glow. - AurisSwitch
-
A toggle with a true slanted (parallelogram) track and thumb — the
data-control HUD motif (§spec:design-tokens) Material's
Switchcannot express, since its track is a fixed stadium shape (§spec:custom-widgets, §spec:theme-layer "known limits"). - AurisTerminal
- An auto-scrolling monospace log that scrolls to the newest line as lines are appended; each line is colored by its AurisTerminalLineType, and an optional blinking block cursor trails the last line (§spec:custom-widgets). Wraps AurisPanel so it shares the titled, chamfered HUD frame.
- AurisTerminalLine
- A single terminal log line: its text and semantic type.
- AurisTokens
- Primitive design tokens — the lowest tier of the two-tier design model.
- ChamferClipper
- A CustomClipper that clips a child to the signature Auris notched silhouette — the asymmetric 45° chamfer cutting only the top-left and bottom-right corners (§spec:design-tokens "Shape").
Enums
- AurisBadgeVariant
- The semantic intent of an AurisBadge, mapped to a scheme role color.
- AurisNotificationVariant
- The semantic intent of an AurisNotification.
- AurisProgressVariant
- The semantic intent of an AurisProgressBar, mapped to a scheme role color and its depth-by-intent glow.
- AurisStepState
- The state of an AurisStepIndicator marker.
- AurisTerminalLineType
- The semantic type of an AurisTerminalLine, mapped to a scheme role color.
Functions
-
lerpDouble(
double a, double b, double t) → double - Non-nullable lerpDouble for the bevel scale, where all inputs are concrete.