0b8c4618d6
把原型 check-ds 的「单一真源」纪律延伸到 Flutter 代码: - client/tool/check_ds_code.mjs:扫 lib/(排除.g.dart) 硬编码 Color(0x..)/Colors.具名色, --strict/--changed 报错挡提交,合理特例须显式 // ds-ignore: 理由 - tokens.css(单源,client+原型同步) 加 chrome 前景色 --brand-dot/--on-accent/--on-accent-faint, codegen 进 AppChrome;外壳 14 处硬编码(白字/品牌点/grace橙)全部改走 token - 外壳+3 新 widget 现 0 违规;全量存量 172→158(其余屏后续逐步清) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TSKEiHsvauyxYUW2itzUXX
25 lines
1.2 KiB
Dart
25 lines
1.2 KiB
Dart
// GENERATED by tool/gen_tokens.mjs — DO NOT EDIT.
|
||
// 源:lib/core/theme/token_source/tokens.css(:root 共享块的主题无关颜色)。改色请改源后重跑脚本。
|
||
// 外壳 chrome 色:状态栏/品牌/遮罩/Toast,固定不随 A/B/C 主题切换。
|
||
import 'package:flutter/material.dart';
|
||
|
||
class AppChrome {
|
||
AppChrome._();
|
||
static const Color statusbarBg = Color(0xFF37423D);
|
||
static const Color statusbarFg = Color(0xd1FFFFFF);
|
||
static const Color statusbarMuted = Color(0x75FFFFFF);
|
||
static const Color statusbarStrong = Color(0xFFFFFFFF);
|
||
static const Color statusbarDiv = Color(0x21FFFFFF);
|
||
static const Color statusbarOk = Color(0xFF7BC49A);
|
||
static const Color brandDeep = Color(0xFF0F3057);
|
||
static const Color brandMid = Color(0xFF1B4F8E);
|
||
static const Color brandWine = Color(0xFF8B2331);
|
||
static const Color brandDot = Color(0xFFC97B86);
|
||
static const Color onAccent = Color(0xFFFFFFFF);
|
||
static const Color onAccentFaint = Color(0xb8FFFFFF);
|
||
static const Color scrim = Color(0x6b0F141E);
|
||
static const Color heroGlass = Color(0x29FFFFFF);
|
||
static const Color heroGlassStrong = Color(0x3dFFFFFF);
|
||
static const Color toastBg = Color(0xFF1F2330);
|
||
}
|