Skip to main content

systemprompt_provider_contracts/web_config/theme/
tokens.rs

1//! Cross-cutting design tokens: shadows, animation, z-index, touch targets.
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Serialize, Deserialize)]
6pub struct ShadowsConfig {
7    pub light: ShadowSet,
8    pub dark: ShadowSet,
9}
10
11#[derive(Debug, Clone, Serialize, Deserialize)]
12pub struct ShadowSet {
13    pub sm: String,
14    pub md: String,
15    pub lg: String,
16    pub accent: String,
17}
18
19#[derive(Debug, Clone, Serialize, Deserialize)]
20pub struct AnimationConfig {
21    pub fast: String,
22    pub normal: String,
23    pub slow: String,
24}
25
26#[derive(Debug, Clone, Copy, Serialize, Deserialize)]
27pub struct ZIndexConfig {
28    pub base: u32,
29    pub content: u32,
30    pub navigation: u32,
31    pub modal: u32,
32    pub tooltip: u32,
33}
34
35#[derive(Debug, Clone, Serialize, Deserialize)]
36pub struct TouchTargetsConfig {
37    pub default: String,
38    pub sm: String,
39    pub lg: String,
40}