Tuto Site
Thème
StyleThemeContent = ColorScheme Material. Appliqué par l’onion : Theme(data: parent.copyWith(colorScheme: colorContext)). Live : s_theme_content.dart.
Champs JSON (slots *S)
| Clé | Rôle |
|---|---|
site panel same | 0|1 où le theme s’applique |
primaryS onPrimaryS primaryContainerS | marque / texte sur primary |
secondaryS onSecondaryS | accent CTA |
surfaceS surfaceContainerS | fill folder |
onSurfaceS | texte |
outlineS | couleur des border view |
error* shadowS inverse* |
Chaque *S = {"light":"#aarrggbb","dark":"#aarrggbb"} ou {}.
{
"uuid": "f81ad0b2-fc67-45a8-aff9-f48d608d5f95",
"name": "TextButtonBackTransparent",
"site": 0,
"text": 1,
"primaryS": { "dark": "#ff04f2f9", "light": "#ff04f2f9" },
"onPrimaryS": { "dark": "#ffd7e0e8", "light": "#ff2a2a2a" },
"secondaryS": { "dark": "#ff057f83", "light": "#ffb300d6" }
}
View :
"uuid_theme": { "l": { "i": "f81ad0b2-fc67-45a8-aff9-f48d608d5f95" } }
Après onion : context.colors.primary / secondary / surface / onSurface / outline. Folder avec theme : customDecoration.color = surface si uuid_theme non vide, sinon transparent.
Back : "uuid_theme": "019a7779-5530-7692-84e7-ceee5f8942b3" — string nue.
Piège.
theme[] (gate visibilité "light"/"dark") ≠ uuid_theme (ColorScheme une fois visible).