2.0 KiB
2.0 KiB
状态语言
系统使用五种语义状态。业务模块保留自己的领域枚举,并在展示边界映射到共享
StatusTone,不要让展示文案、接口字符串或 Tailwind 原色类直接决定状态样式。
| Tone | 用途 | 典型状态 |
|---|---|---|
neutral |
尚未开始或不再活动 | 预约、草案、待办、取消、中止、跳过、未分级 |
info |
正在发生的过程 | 执行中、提交中、加载中、连接中 |
success |
已完成或健康 | 完成、在线、正常、已批准 |
warning |
需要关注但未达到异常 | 关注、降级、待复核、待复令、待确认 |
danger |
已异常或操作失败 | 异常、失败、离线、高风险、事故、权限拒绝 |
报告风险
报告风险固定为三档:
normal映射success,显示“正常”。attention映射warning,显示“关注”。critical映射danger,显示“异常”。
info 只表示过程,不参与风险等级。不得把 attention 合并到正常或异常。
表达规则
- 状态标签使用
StatusBadge,小型指示使用StatusDot,图标节点使用StatusIcon。 - 大面积容器只使用柔和背景,禁止实心红色或橙色状态卡片。
warning和danger必须同时提供文字或图标,不能只依赖颜色。- 只有进行中的状态可以使用
live或loading动效。 - “复令”是提交处置结果的动作,执行完成但尚未提交时显示“待复令”,使用静态
warning;不得继续显示为“执行中”或提前显示为完成态。 - 动效必须在
prefers-reduced-motion下停止。 - 蓝色选中态属于交互反馈,不作为业务风险状态。
- 紫色只表示 Agent 身份,不表示未知或更高风险。
地图状态
地图与面板共享语义,但保留独立色值以适应浅色底图、影像底图和白色 casing。
新增地图状态时,应先补充 map-colors.ts,再通过对比度测试验证,不要在图层定义中
写入新的颜色字面量。