Logo FS-Skia-UI

Style Module

Feature 093 (E3) — the single, pure, total, deterministic state→style resolver that replaces procedural per-kind styling for the migrated controls. No selector matching, no specificity algebra, no cross-control cascade (permanent roadmap non-goals).

Functions and values

Function or value Description

resolve theme baseStyle classes state

Full Usage: resolve theme baseStyle classes state

Parameters:
Returns: ResolvedStyle
 Pure, total, deterministic. Precedence (FR-003), last-writer-wins per `ResolvedStyle`
 field:
   `baseStyle` (the migrated kind's default, supplied by the caller)
     < each class in attach order (earlier < later)
     < current visual state.
 A visual state's value for a field overrides any class's value for the same field; a
 later-attached class overrides an earlier one. `theme` carries the active palette
 (DTCG-generated `DesignTokens`); every colour the variant/state layers read originates
 from it — no inline literals (FR-008). For the default (no-class, `Normal`) case
 `resolve theme baseStyle [] Normal = baseStyle` exactly (parity, FR-005, SC-003).
 Total over every `(Theme, ResolvedStyle, StyleClass list, VisualState)`: every
 `StyleVariant`, any `Custom` string (unknown ⇒ identity delta, never an exception or
 silent drop), and all eight `VisualState` cases (FR-002, FR-004).
theme : Theme
baseStyle : ResolvedStyle
classes : StyleClass list
state : VisualState
Returns: ResolvedStyle

Type something to start searching.