feat(mobile-next): 建立 v2 Token 唯一入口、内网地址与功能开关

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
编码工程师
2026-08-20 02:30:09 +08:00
co-authored by Cursor multica-agent
parent 45d91684bc
commit d787c0a477
11 changed files with 384 additions and 81 deletions
@@ -0,0 +1,37 @@
import 'package:openim_common/openim_common.dart';
import 'app_tokens.dart';
/// 把官方 `Styles` 静态色值对齐到 v2 Token。
///
/// 官方页面继续读 `Styles.*`,公司页面读 `AppColors.*`。只改这一处映射,
/// 禁止在页面上再叠一套颜色覆盖。必须在首屏构建前调用。
void applyOfficialStylesFromTokens() {
Styles.c_0089FF = AppColors.primary;
Styles.c_0C1C33 = AppColors.textPrimary;
Styles.c_8E9AB0 = AppColors.textSecondary;
Styles.c_E8EAEF = AppColors.divider;
Styles.c_FF381F = AppColors.danger;
Styles.c_CCE7FE = AppColors.bubbleMine;
Styles.c_F4F5F7 = AppColors.chatBg;
Styles.c_F8F9FA = AppColors.pageBg;
Styles.c_F0F2F6 = AppColors.chatBg;
Styles.c_F2F8FF = AppColors.primaryActive;
Styles.c_18E875 = AppColors.success;
Styles.c_FFB300 = AppColors.warning;
Styles.c_6085B1 = AppColors.avatarGray;
Styles.c_0089FF_opacity10 = AppColors.primary.withOpacity(.1);
Styles.c_0089FF_opacity20 = AppColors.primary.withOpacity(.2);
Styles.c_0089FF_opacity50 = AppColors.primary.withOpacity(.5);
Styles.c_FF381F_opacity10 = AppColors.danger.withOpacity(.1);
Styles.c_8E9AB0_opacity13 = AppColors.textSecondary.withOpacity(.13);
Styles.c_8E9AB0_opacity15 = AppColors.textSecondary.withOpacity(.15);
Styles.c_8E9AB0_opacity16 = AppColors.textSecondary.withOpacity(.16);
Styles.c_8E9AB0_opacity30 = AppColors.textSecondary.withOpacity(.3);
Styles.c_8E9AB0_opacity50 = AppColors.textSecondary.withOpacity(.5);
Styles.c_0C1C33_opacity30 = AppColors.textPrimary.withOpacity(.3);
Styles.c_0C1C33_opacity60 = AppColors.textPrimary.withOpacity(.6);
Styles.c_0C1C33_opacity85 = AppColors.textPrimary.withOpacity(.85);
Styles.c_0C1C33_opacity80 = AppColors.textPrimary.withOpacity(.8);
}