1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
//! Design-token crate: the [`Theme`] aggregate and its token-group tables
//! (color, typography, shape, elevation, motion, glass, status), plus the
//! [`ThemeBuilder`] and [`ThemeExtensions`] seams a design system composes
//! its own token set through.
//!
//! **No design language lives here.** The one baseline this crate constructs
//! is [`Theme::neutral`](theme::Theme::neutral) — the language-free floor
//! every shell falls back to when nothing was installed. Material, Cupertino,
//! and Glyph each ship as their own plugin crate (`frust-material`,
//! `frust-cupertino`, `frust-glyph`), building their tables over the same
//! public constructors and attaching whatever they need through
//! [`ThemeExtensions`]. A [`DesignLanguage`] tag records *which* system
//! assembled a `Theme`; it never selects behaviour here.
//!
//! This crate is deliberately **pure data + constructors** — no
//! `frust-scene`, no `reactive_graph`. It depends on `peniko` (for
//! [`peniko::Color`], reused by [`color::ColorScheme`]), `frust-text` (for
//! [`frust_text::TextStyle`], reused by [`typography::TypeScale`]), and
//! `frust-core` (for the `PaintCtx`/`LayoutCtx` recovery helpers alone) — see
//! `docs/ARCHITECTURE.md`'s Layer Dependencies.
//!
//! Every token table below carries its own source URL and retrieval date in
//! its module's doc comments.
pub use ThemeBuilder;
pub use ;
pub use ;
pub use ThemeExtensions;
pub use ;
pub use ;
pub use ShapeScale;
pub use ;
pub use ;
pub use ;
pub use TypeScale;