openyida 2026.9.20 → 2026.9.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. package/README.md +1 -1
  2. package/lib/app/application-style.js +3 -1
  3. package/lib/app/theme-from-design.js +38 -13
  4. package/lib/app/update-app.js +63 -13
  5. package/lib/core/command-manifest.js +32 -20
  6. package/lib/core/locales/en.js +17 -0
  7. package/lib/core/locales/zh.js +17 -0
  8. package/lib/core/sample.js +17 -14
  9. package/lib/design-plan/confirmation.js +13 -0
  10. package/lib/design-plan/design-plan.js +44 -2
  11. package/lib/design-plan/entry-navigation.js +10 -2
  12. package/lib/design-plan/init.js +11 -7
  13. package/lib/design-plan/materialize.js +62 -43
  14. package/lib/design-plan/normalize.js +13 -14
  15. package/lib/design-plan/parallel.js +62 -13
  16. package/lib/design-plan/patch.js +21 -7
  17. package/lib/design-plan/rebase.js +60 -0
  18. package/lib/design-plan/themes.js +16 -1
  19. package/lib/design-plan/validate.js +6 -1
  20. package/lib/design-plan/visual-policy.js +18 -4
  21. package/lib/samples/openyida-scaffold/canvas-form-drawer.canvas.jsx +3 -3
  22. package/lib/samples/openyida-scaffold/canvas-nav/mixed.jsx +6 -4
  23. package/lib/samples/openyida-scaffold/canvas-nav/shared.jsx +5 -5
  24. package/lib/samples/openyida-scaffold/canvas-nav/side.jsx +1 -2
  25. package/lib/samples/openyida-scaffold/canvas-nav/sidebar.jsx +1 -1
  26. package/lib/samples/openyida-scaffold/canvas-nav/top.jsx +5 -4
  27. package/package.json +1 -1
  28. package/yida-skills/SKILL.md +2 -2
  29. package/yida-skills/references/yida-api.md +4 -0
  30. package/yida-skills/skills/yida-app/SKILL.md +12 -4
  31. package/yida-skills/skills/yida-app/references/entry-navigation.md +11 -9
  32. package/yida-skills/skills/yida-app/workflow/plan/step-4-deliver.md +1 -1
  33. package/yida-skills/skills/yida-app/workflow/plan/workflow.md +11 -4
  34. package/yida-skills/skills/yida-app/workflow/step-2-design.md +3 -3
  35. package/yida-skills/skills/yida-app/workflow/step-3-create-or-reuse-app.md +2 -2
  36. package/yida-skills/skills/yida-app/workflow/step-8-publish-navigation.md +3 -3
  37. package/yida-skills/skills/yida-app/workflow/step-9-output-finish.md +3 -2
  38. package/yida-skills/skills/yida-canvas-custom-page/SKILL.md +2 -2
  39. package/yida-skills/skills/yida-canvas-custom-page/references/canvas-style-implementation-guide.md +1 -1
  40. package/yida-skills/skills/yida-canvas-custom-page/references/canvas-theme-provider.md +1 -1
  41. package/yida-skills/skills/yida-canvas-custom-page/references/data-bridge-guide.md +140 -1
  42. package/yida-skills/skills/yida-canvas-custom-page/references/navigation-and-entry-guide.md +1 -1
  43. package/yida-skills/skills/yida-canvas-custom-page/scripts/canvas-theme-provider.template.jsx +1 -1
  44. package/yida-skills/skills/yida-canvas-data-binding/SKILL.md +7 -0
  45. package/yida-skills/skills/yida-create-form-page/SKILL.md +1 -1
  46. package/yida-skills/skills/yida-design/SKILL.md +5 -3
  47. package/yida-skills/skills/yida-design/references/application-style-library.md +22 -7
  48. package/yida-skills/skills/yida-design/references/application-theme-consistency.md +45 -5
  49. package/yida-skills/skills/yida-design/references/ask-human-interaction-contract.md +1 -1
  50. package/yida-skills/skills/yida-design/references/native-form-styles.md +1 -1
  51. package/yida-skills/skills/yida-design/references/navigation-decision.md +6 -4
  52. package/yida-skills/skills/yida-design/references/theme/app-custom-theme-template.css +62 -0
  53. package/yida-skills/skills/yida-design/references/theme-selection.md +10 -9
  54. package/yida-skills/skills/yida-design/references/visual-decision-engine.md +1 -1
  55. package/yida-skills/skills/yida-design/scripts/validate_design_themes.py +35 -9
  56. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/SKILL.md +13 -3
  57. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/build-plan-compact-schema.md +4 -2
  58. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/build-plan-schema.md +4 -2
  59. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/visual-design.md +3 -1
  60. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/visual-theme-selection.md +15 -17
  61. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/scripts/render_build_plan.py +2 -0
  62. package/yida-skills/skills/yida-design/templates/design-themes/README.md +15 -10
  63. package/yida-skills/skills/yida-design/templates/design-themes/app-amber/app_theme.css +224 -83
  64. package/yida-skills/skills/yida-design/templates/design-themes/app-amber/design.md +69 -14
  65. package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/app_theme.css +224 -83
  66. package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/design.md +69 -14
  67. package/yida-skills/skills/yida-design/templates/design-themes/app-executive/app_theme.css +244 -103
  68. package/yida-skills/skills/yida-design/templates/design-themes/app-executive/design.md +68 -13
  69. package/yida-skills/skills/yida-design/templates/design-themes/app-finance/app_theme.css +223 -82
  70. package/yida-skills/skills/yida-design/templates/design-themes/app-finance/design.md +68 -13
  71. package/yida-skills/skills/yida-design/templates/design-themes/app-glass/app_theme.css +225 -84
  72. package/yida-skills/skills/yida-design/templates/design-themes/app-glass/design.md +69 -14
  73. package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/app_theme.css +244 -103
  74. package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/design.md +68 -13
  75. package/yida-skills/skills/yida-design/templates/design-themes/app-line/app_theme.css +224 -83
  76. package/yida-skills/skills/yida-design/templates/design-themes/app-line/design.md +69 -14
  77. package/yida-skills/skills/yida-design/templates/design-themes/app-neon/app_theme.css +244 -103
  78. package/yida-skills/skills/yida-design/templates/design-themes/app-neon/design.md +68 -13
  79. package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/app_theme.css +236 -89
  80. package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/design.md +74 -14
  81. package/yida-skills/skills/yida-design/templates/design-themes/app-paper/app_theme.css +224 -83
  82. package/yida-skills/skills/yida-design/templates/design-themes/app-paper/design.md +68 -13
  83. package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/app_theme.css +223 -82
  84. package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/design.md +68 -13
  85. package/yida-skills/skills/yida-design/templates/design-themes/app-plum/app_theme.css +224 -83
  86. package/yida-skills/skills/yida-design/templates/design-themes/app-plum/design.md +68 -13
  87. package/yida-skills/skills/yida-design/templates/design-themes/app-pop/app_theme.css +240 -89
  88. package/yida-skills/skills/yida-design/templates/design-themes/app-pop/design.md +76 -14
  89. package/yida-skills/skills/yida-design/templates/design-themes/app-sage/app_theme.css +224 -83
  90. package/yida-skills/skills/yida-design/templates/design-themes/app-sage/design.md +69 -14
  91. package/yida-skills/skills/yida-design/templates/design-themes/app-teal/app_theme.css +224 -83
  92. package/yida-skills/skills/yida-design/templates/design-themes/app-teal/design.md +68 -13
  93. package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/app_theme.css +254 -107
  94. package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/design.md +74 -14
  95. package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/app_theme.css +233 -88
  96. package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/design.md +73 -14
  97. package/yida-skills/skills/yida-design/templates/design-themes/app-wire/app_theme.css +224 -83
  98. package/yida-skills/skills/yida-design/templates/design-themes/app-wire/design.md +69 -14
  99. package/yida-skills/skills/yida-design/templates/design-themes/basic-tokens.json +2 -1
  100. package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/app_theme.css +690 -0
  101. package/yida-skills/skills/yida-design/templates/design-themes/{dark-inset-hairline.md → dark-inset-hairline/design.md} +103 -58
  102. package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/form-layout.json +13 -0
  103. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/app_theme.css +691 -0
  104. package/yida-skills/skills/yida-design/templates/design-themes/{dark-rail-fine-lines.md → dark-rail-fine-lines/design.md} +102 -50
  105. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/form-layout.json +13 -0
  106. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/app_theme.css +696 -0
  107. package/yida-skills/skills/yida-design/templates/design-themes/{dark-rail-signal-panels.md → dark-rail-signal-panels/design.md} +62 -12
  108. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/form-layout.json +13 -0
  109. package/yida-skills/skills/yida-design/templates/design-themes/free-creative/app_theme.css +278 -115
  110. package/yida-skills/skills/yida-design/templates/design-themes/free-creative/design.md +57 -10
  111. package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/app_theme.css +692 -0
  112. package/yida-skills/skills/yida-design/templates/design-themes/{graphite-bevel-grid.md → graphite-bevel-grid/design.md} +60 -10
  113. package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/form-layout.json +13 -0
  114. package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/app_theme.css +691 -0
  115. package/yida-skills/skills/yida-design/templates/design-themes/{hairline-shared-bands.md → hairline-shared-bands/design.md} +62 -12
  116. package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/form-layout.json +13 -0
  117. package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/app_theme.css +691 -0
  118. package/yida-skills/skills/yida-design/templates/design-themes/{hairline-soft-blocks.md → hairline-soft-blocks/design.md} +57 -9
  119. package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/form-layout.json +13 -0
  120. package/yida-skills/skills/yida-design/templates/design-themes/index.json +141 -48
  121. package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/app_theme.css +701 -0
  122. package/yida-skills/skills/yida-design/templates/design-themes/{ink-glow-soft-panels.md → ink-glow-soft-panels/design.md} +58 -8
  123. package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/form-layout.json +13 -0
  124. package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/app_theme.css +691 -0
  125. package/yida-skills/skills/yida-design/templates/design-themes/{inset-frame-pixel-rhythm.md → inset-frame-pixel-rhythm/design.md} +59 -9
  126. package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/form-layout.json +13 -0
  127. package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/app_theme.css +698 -0
  128. package/yida-skills/skills/yida-design/templates/design-themes/{outlined-texture-duotone.md → outlined-texture-duotone/design.md} +62 -12
  129. package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/form-layout.json +13 -0
  130. package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/app_theme.css +691 -0
  131. package/yida-skills/skills/yida-design/templates/design-themes/{soft-inset-surfaces.md → soft-inset-surfaces/design.md} +59 -11
  132. package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/form-layout.json +13 -0
  133. package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/app_theme.css +690 -0
  134. package/yida-skills/skills/yida-design/templates/design-themes/{soft-outline-rhythm.md → soft-outline-rhythm/design.md} +60 -26
  135. package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/form-layout.json +13 -0
  136. package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/app_theme.css +698 -0
  137. package/yida-skills/skills/yida-design/templates/design-themes/{soft-rail-bold-band.md → soft-rail-bold-band/design.md} +99 -49
  138. package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/form-layout.json +13 -0
  139. package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/app_theme.css +692 -0
  140. package/yida-skills/skills/yida-design/templates/design-themes/{soft-spectral-panels.md → soft-spectral-panels/design.md} +63 -13
  141. package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/form-layout.json +13 -0
  142. package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/app_theme.css +711 -0
  143. package/yida-skills/skills/yida-design/templates/design-themes/{warm-canvas-contrast-panels.md → warm-canvas-contrast-panels/design.md} +60 -10
  144. package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/form-layout.json +13 -0
  145. package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/app_theme.css +692 -0
  146. package/yida-skills/skills/yida-design/templates/design-themes/{warm-rail-muted-panels.md → warm-rail-muted-panels/design.md} +98 -50
  147. package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/form-layout.json +13 -0
  148. package/yida-skills/skills/yida-design/templates/navigation-styles.json +769 -0
  149. package/yida-skills/skills/yida-design/workflow/output-design.md +5 -5
  150. package/yida-skills/skills/yida-design/workflow/step-2-theme-system.md +5 -3
  151. package/yida-skills/skills/yida-design/workflow/step-6-handoff.md +1 -1
  152. package/yida-skills/skills/yida-form-permission/SKILL.md +6 -0
  153. package/yida-skills/skills/yida-nav-shell/SKILL.md +1 -1
  154. package/yida-skills/skills/yida-nav-shell/references/nav-shell-patterns.md +6 -0
  155. package/yida-skills/skills/yida-page-config/SKILL.md +9 -0
  156. package/yida-skills/skills/yida-prd/SKILL.md +1 -0
  157. package/yida-skills/skills/yida-prd/workflow/output-prd.md +2 -2
  158. package/yida-skills/skills/yida-prd/workflow/step-2-information-architecture.md +1 -1
  159. package/yida-skills/skills/yida-requirement-analysis/references/experience-groups.md +45 -9
  160. package/yida-skills/skills/yida-requirement-analysis/references/handoff.md +5 -5
  161. package/yida-skills/skills/yida-requirement-analysis/workflow/prepare-brief.md +17 -4
  162. package/yida-skills/skills-index.json +2 -2
@@ -2,6 +2,7 @@
2
2
  name: "{{PROJECT_NAME}}"
3
3
  description: "独立导航与近白工作区形成分区,白色圆角面板以浅边线和微弱投影建立层级;低饱和主题色图形、近黑选中标记和局部独立分类色,让密集信息保持安静、清楚的阅读节奏。"
4
4
  themeId: warm-rail-muted-panels
5
+ navTheme: light
5
6
  tokens:
6
7
  application-global:
7
8
  appearance:
@@ -12,12 +13,57 @@ tokens:
12
13
  "--pod-card-bg-color": "#FFFFFF" # neutral-gray;内容面板、表单、详情主表面
13
14
  "--pod-table-cell-color": "var(--pod-card-bg-color)" # 表格正文跟随卡片表面
14
15
  navigation:
15
- "--pod-shell-theme-bg-color": "var(--color-brand1-2)" # 独立导航角色;主题色浅变体
16
- "--pod-nav-item-text-color": "#777777" # neutral-gray;普通菜单和图标
17
- "--pod-nav-item-text-hover-color": "var(--color-brand1-5)" # 主题色深色变体;悬停前景
18
- "--pod-nav-item-text-selected-color": "var(--color-brand1-5)" # 主题色深色变体;选中前景,与选中浅面配对
19
- "--pod-nav-menu-bg-hover-color": "var(--color-brand1-3)" # 主题色极浅变体;悬停表面
20
- "--pod-nav-menu-bg-selected-color": "#FFFFFF" # neutral-gray;选中亮面,与主题色深前景配对
16
+ "--pod-shell-theme-bg-color": "var(--color-brand1-2)"
17
+ "--pod-nav-item-text-color": "#595959"
18
+ "--pod-nav-item-text-hover-color": "var(--color-brand1-5)"
19
+ "--pod-nav-item-text-selected-color": "var(--color-brand1-5)"
20
+ "--pod-nav-menu-bg-hover-color": "var(--color-brand1-3)"
21
+ "--pod-nav-menu-bg-selected-color": "#FFFFFF"
22
+ "--pod-nav-menu-item-selected-shadow": "none"
23
+ "--pod-page-header-bg-color": "var(--pod-shell-theme-bg-color)"
24
+ "--pod-nav-l-sub-main-bg-color": "var(--pod-shell-theme-bg-color)"
25
+ "--pod-nav-top-main-border-width": "1px"
26
+ "--pod-nav-top-main-border-color": "#DEDEDE"
27
+ "--pod-nav-top-tab-indicator-width": "0px"
28
+ "--pod-nav-logo-text": "var(--pod-nav-item-text-hover-color)"
29
+ "--pod-nav-logo-bg": "var(--pod-nav-menu-bg-selected-color)"
30
+ "--pod-nav-logo-icon": "var(--pod-nav-item-text-selected-color)"
31
+ "--pod-nav-logo-border": "1px solid #DEDEDE"
32
+ "--pod-nav-logo-border-radius": "8px"
33
+ "--pod-nav-sub-divider-color": "#DEDEDE"
34
+ "--pod-nav-item-text-disabled-color": "rgba(24,28,31,.30)"
35
+ "--pod-nav-l-container-bg": "var(--pod-shell-theme-bg-color)"
36
+ "--pod-nav-l-group-label-color": "var(--pod-nav-item-text-color)"
37
+ "--pod-nav-l-search-border-color": "#DEDEDE"
38
+ "--pod-nav-popup-bg-color": "var(--pod-shell-theme-bg-color)"
39
+ "--pod-nav-popup-border-radius": "8px"
40
+ "--pod-nav-popup-shadow": "0 8px 24px rgba(24,28,31,.10)"
41
+ "--pod-nav-tab-line-hover-color": "var(--pod-nav-item-text-hover-color)"
42
+ "--pod-nav-tab-line-selected-color": "var(--pod-nav-item-text-hover-color)"
43
+ "--pod-nav-search-bg-color": "var(--pod-nav-menu-bg-hover-color)"
44
+ "--pod-nav-search-bg-hover-color": "var(--pod-nav-menu-bg-hover-color)"
45
+ "--pod-nav-search-bg-active-color": "var(--pod-nav-menu-bg-hover-color)"
46
+ "--pod-nav-search-placeholder-color": "var(--pod-nav-item-text-color)"
47
+ "--pod-nav-search-text-color": "var(--pod-nav-item-text-hover-color)"
48
+ "--pod-nav-search-icon-color": "var(--pod-nav-item-text-color)"
49
+ "--pod-nav-search-border-color": "#DEDEDE"
50
+ "--pod-nav-search-border-hover-color": "var(--pod-nav-item-text-hover-color)"
51
+ "--pod-nav-search-border-active-color": "var(--pod-nav-item-text-hover-color)"
52
+ "--pod-nav-action-icon-color": "var(--pod-nav-item-text-color)"
53
+ "--pod-nav-action-border-color": "#DEDEDE"
54
+ "--pod-nav-action-border": "1px solid #DEDEDE"
55
+ "--pod-nav-action-bg-hover-color": "var(--pod-nav-menu-bg-hover-color)"
56
+ "--pod-nav-action-bg-active-color": "var(--pod-nav-menu-bg-hover-color)"
57
+ "--pod-nav-menu-item-height": "34px"
58
+ "--pod-nav-menu-item-radius": "4px"
59
+ "--pod-nav-menu-item-border": "1px solid transparent"
60
+ "--pod-nav-menu-item-hover-border": "1px solid #A6A6A6"
61
+ "--pod-nav-menu-item-selected-border": "1px solid #737373"
62
+ "--pod-nav-menu-font-size": "14px"
63
+ "--pod-nav-menu-item-selected-font-weight": "500"
64
+ "--pod-nav-menu-line-height": "20px"
65
+ "--pod-nav-menu-gap": "8px"
66
+ "--pod-shell-lshape-border-radius": "8px"
21
67
  colors:
22
68
  "--color-white": "var(--pod-card-bg-color)" # 全应用基础表面,跟随内容明暗;不承担反色文字或固定亮面职责
23
69
  "--color-brand1-1": "<生成实际色值:--color-brand1-6 88% + #FFFFFF 12%,sRGB 逐通道混合>" # 品牌交互悬停
@@ -71,11 +117,11 @@ tokens:
71
117
  rounded:
72
118
  "--corner-zero": 0px # 连体指标、拼接表格与趋势图水平段
73
119
  "--corner-1": 4px # 小型图标盒、分段条和标签
74
- "--corner-2": 6px # 输入、按钮、菜单项
120
+ "--corner-2": 8px # 输入、按钮、菜单项
75
121
  "--corner-3": 8px # 气泡、下拉和弹窗
76
122
  "--corner-4": 10px # 内部组合容器与已有账户条
77
- "--corner-5": 12px # 一级面板、表单主容器和抽屉
78
- "--corner-circle": 50% # 头像、图例圆点与图表焦点
123
+ "--corner-5": 8px # 一级面板、表单主容器和抽屉
124
+ "--corner-circle": "var(--corner-2)" # 等宽高头像、图例圆点
79
125
  "--corner-semicircle": 500px # 确需圆头的普通进度或开关;不用于默认按钮
80
126
  shadow:
81
127
  "--shadow-1": "0px 2px 4px 0px rgba(0, 0, 0, 0.12)"
@@ -107,13 +153,13 @@ tokens:
107
153
 
108
154
  独立导航与近白工作区形成柔和的明度分区。白色面板有轻圆角、浅边线和几乎不可察的底部投影,主文字与选中标记接近黑色;品牌色从项目输入派生,强调面积很小。页面的辨识度来自温和底色、清楚的对齐和细线图形,而不是大色块。出现统计内容时,大数字、低饱和主题色趋势图和局部彩色分段建立阅读焦点。
109
155
 
110
- | 核心特征 | 可见表现 | 主要偏离风险 |
111
- | --- | --- | --- |
112
- | 导航与内容各自配色 | 导航与选中项使用专用配色;工作区保持近白 | 将导航配色覆盖到内容区,或让整行选中抢走业务焦点 |
113
- | 微弱边界、平整表面 | 白卡片靠细线、微阴影和留白划分,工具是小圆角描边矩形 | 给普通面板加厚阴影、玻璃模糊或明显材质 |
114
- | 近黑选中与弱品牌强调 | 激活项可用细黑顶线、反白小图标;明显品牌强调只进入必要标志和数据,框架保留低比例染色 | 把所有激活项、标题和按钮都变成品牌实底 |
115
- | 数据图形轻而准确 | 有相应数据时,使用低饱和主题色水平顶线、渐隐填充、虚线对照或紫蓝分段 | 用高饱和大面积图表、无数据含义的纹理或随机分块制造装饰 |
116
- | 数值与说明分层 | 关键数值放大,周期、单位和比较说明使用主题浅灰,涨跌标记保持紧凑 | 过粗字重、过浅关键文字或符号与单位不一致 |
156
+ | 核心特征 | 可见表现 | 主要偏离风险 |
157
+ | -------------------- | ------------------------------------------------------------------------------------ | ------------------------------------------------------ |
158
+ | 导航与内容各自配色 | 导航与选中项使用专用配色;工作区保持近白 | 将导航配色覆盖到内容区,或让整行选中抢走业务焦点 |
159
+ | 微弱边界、平整表面 | 白卡片靠细线、微阴影和留白划分,工具是小圆角描边矩形 | 给普通面板加厚阴影、玻璃模糊或明显材质 |
160
+ | 近黑选中与弱品牌强调 | 激活项可用细黑顶线、反白小图标;明显品牌强调只进入必要标志和数据,框架保留低比例染色 | 把所有激活项、标题和按钮都变成品牌实底 |
161
+ | 数据图形轻而准确 | 有相应数据时,使用低饱和主题色水平顶线、渐隐填充、虚线对照或紫蓝分段 | 用高饱和大面积图表、无数据含义的纹理或随机分块制造装饰 |
162
+ | 数值与说明分层 | 关键数值放大,周期、单位和比较说明使用主题浅灰,涨跌标记保持紧凑 | 过粗字重、过浅关键文字或符号与单位不一致 |
117
163
 
118
164
  页面数量、功能和内容由实际需求确定。普通表单或列表通过浅色框架、白色轻边面板、克制的图标和文字层级即可体现主题;不要求每页具备趋势图、统计指标或状态条。
119
165
 
@@ -123,18 +169,18 @@ tokens:
123
169
 
124
170
  层次优先来自背景微差、边界与留白。局部阴影只提供轻微分离感,不让页面变成一组高悬卡片。以下线宽、阴影和图形局部尺寸属于实施推断,不把图片导出尺寸当作 CSS 尺寸。
125
171
 
126
- | 对象 | 背景与必要前景 | 边界、形状与阴影 |
127
- | --- | --- | --- |
128
- | 应用根背景 | `--pod-app-root-bg-color`,背景图由 `--pod-app-root-bg-image` 控制 | 默认无图;背景图若启用,只作用于应用根节点 |
129
- | 页面画布 | `--pod-page-bg-color`,自定义页使用 `--oyd-page-bg` | 平整近白,不铺纹理、不做全局模糊 |
130
- | 已有应用页头 | `--pod-card-bg-color`,文字用 `--color-text1-4` | 底部一条 `--color-line1-1`;无明显投影 |
131
- | 一级面板、表单主容器与详情面板 | `--pod-card-bg-color`,主文字用 `--color-text1-4` | 1px `--color-line1-1`,`--corner-5`;可用局部微阴影 |
132
- | 表格正文 | `--pod-table-cell-color` | 连续白面,横向分隔,拼接处使用 `--corner-zero` |
133
- | 内部分段与中性选中 | 默认延续白面;需要选中填充时用 `--color-fill1-2`,较重填充用 `--color-fill1-3` | 空白或单条分隔线优先,避免多层完整卡片嵌套 |
134
- | 下拉、浮层、气泡、弹窗、弹出日历、导航弹出层 | `--color-fill1-5`;正文用 `--color-text1-4`,说明用 `--color-text1-10` | `--corner-3`;小浮层可用 `--shadow-1`,模态弹窗可用 `--shadow-2` |
135
- | 抽屉 | `--color-fill1-5`;文字按浅色表面配套 | 露出角用 `--corner-5`,贴边处直角;必要时使用 `--shadow-2` |
136
- | 图表读数浮卡 | `--color-fill1-5`;主数值用 `--color-text1-4`,日期与说明用 `--color-text1-10` | `--corner-3`、细边框和局部弱投影,保持小体量 |
137
- | 简短 Tooltip | `--color-fill1-10` 配 `--color-text1-5` | 固定深底浅字,`--corner-3`;不与白色数据浮卡混用 |
172
+ | 对象 | 背景与必要前景 | 边界、形状与阴影 |
173
+ | -------------------------------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------------------------- |
174
+ | 应用根背景 | `--pod-app-root-bg-color`,背景图由 `--pod-app-root-bg-image` 控制 | 默认无图;背景图若启用,只作用于应用根节点 |
175
+ | 页面画布 | `--pod-page-bg-color`,自定义页使用 `--oyd-page-bg` | 平整近白,不铺纹理、不做全局模糊 |
176
+ | 已有应用页头 | `--pod-card-bg-color`,文字用 `--color-text1-4` | 底部一条 `--color-line1-1`;无明显投影 |
177
+ | 一级面板、表单主容器与详情面板 | `--pod-card-bg-color`,主文字用 `--color-text1-4` | 1px `--color-line1-1`,`--corner-5`;可用局部微阴影 |
178
+ | 表格正文 | `--pod-table-cell-color` | 连续白面,横向分隔,拼接处使用 `--corner-zero` |
179
+ | 内部分段与中性选中 | 默认延续白面;需要选中填充时用 `--color-fill1-2`,较重填充用 `--color-fill1-3` | 空白或单条分隔线优先,避免多层完整卡片嵌套 |
180
+ | 下拉、浮层、气泡、弹窗、弹出日历、导航弹出层 | `--color-fill1-5`;正文用 `--color-text1-4`,说明用 `--color-text1-10` | `--corner-3`;小浮层可用 `--shadow-1`,模态弹窗可用 `--shadow-2` |
181
+ | 抽屉 | `--color-fill1-5`;文字按浅色表面配套 | 露出角用 `--corner-5`,贴边处直角;必要时使用 `--shadow-2` |
182
+ | 图表读数浮卡 | `--color-fill1-5`;主数值用 `--color-text1-4`,日期与说明用 `--color-text1-10` | `--corner-3`、细边框和局部弱投影,保持小体量 |
183
+ | 简短 Tooltip | `--color-fill1-10` 配 `--color-text1-5` | 固定深底浅字,`--corner-3`;不与白色数据浮卡混用 |
138
184
 
139
185
  常驻面板的局部微阴影为 `0 1px 3px rgba(37,37,37,0.035)`;图表读数可使用 `0 5px 14px rgba(37,37,37,0.07)`。二者为弱化层次的实施推断,不能直接升级到大范围投影。`--shadow-3` 保留为完整平台档位,本主题未指定默认使用对象。
140
186
 
@@ -142,15 +188,17 @@ tokens:
142
188
 
143
189
  ### 2.2 应用导航
144
190
 
145
- 导航按项目确定的明暗成组配色,独立于内容画布。背景使用 `--pod-shell-theme-bg-color`,普通文字与图标使用 `--pod-nav-item-text-color`;悬停文字与背景使用 `--pod-nav-item-text-hover-color`、`--pod-nav-menu-bg-hover-color`,选中文字与背景使用 `--pod-nav-item-text-selected-color`、`--pod-nav-menu-bg-selected-color`。图标跟随对应文字状态,颜色以项目 tokens 为准。
191
+ 低饱和浅灰导航承托白色选中项,短间距、小圆角和细线延续工作区的轻量秩序。
146
192
 
147
- 原生导航只配置这六项颜色,结构、尺寸、排序、折叠和收纳由平台处理。页头不被额外解释为第二套导航;主题不会创建业务入口或项目分组。
193
+ 菜单轮廓使用 --pod-nav-menu-item-radius、--pod-nav-menu-item-border、--pod-nav-menu-item-hover-border、--pod-nav-menu-item-selected-border。侧栏和顶部菜单共用轮廓,各状态保持相同边框宽度,文字位置稳定;具体数值以本项目 Token 为准。
148
194
 
149
- 项目明确采用自绘导航时,菜单使用 `--corner-2`,行内左右留白使用 `--s-3` 或 `--s-4`,图标与文字间距使用 `--s-2`。组标题用小号导航文字,分组间距使用 `--s-6`;上部主要导航与底部已有设置、账户区域之间保留自然空白。已有账户条可采用近白表面与 `--corner-4`,头像为小圆形,不新增身份信息。
195
+ 导航与应用框架、表单、自定义页面和详情页共用设计语言。先按业务入口安排菜单、分组、搜索、品牌区与常用操作,再一起确定导航与正文的明暗、表面、字体、边界、圆角和密度。平台导航使用真实页面菜单;自绘导航按同一套导航 Token 实现。命名模板沿用自身 navTheme,换主色保持导航明暗与内容画布;需要另一导航明暗时改选主题,自由创意按项目明确设计。
150
196
 
151
- 导航图标以紧凑、轮廓清楚的实心符号为主,选中图标使用选中文字色。已有项目或分类允许使用 `--oyd-category-a`、`--oyd-category-b`、`--oyd-category-c` 为小图标编码,但颜色必须与实际类别稳定对应,不自动从品牌色生成所有分类。导航弹出层使用白色覆盖层规则,前景按其自身背景配套。
197
+ 导航底色使用 --pod-shell-theme-bg-color;普通、悬停和选中文字分别使用 --pod-nav-item-text-color、--pod-nav-item-text-hover-color、--pod-nav-item-text-selected-color;悬停和选中背景使用 --pod-nav-menu-bg-hover-color、--pod-nav-menu-bg-selected-color。图标跟随对应文字状态,当前入口同时用背景或字重表达。
152
198
 
153
- 导航六色独立成组维护,不引用内容文字或填充;需要主题色的导航角色直接引用品牌浅深变体。改变导航明暗时不改写内容区和 pop-up 表面。
199
+ 菜单高度、圆角与间距使用 --pod-nav-menu-item-height、--pod-nav-menu-item-radius、--pod-nav-menu-gap;搜索、品牌区、分组、操作和弹出菜单使用 navigation 分组中的对应 Token。弹出菜单的底色、文字与搜索状态成组配套,导航与内容可以分别选择明暗。选中项使用 --pod-nav-menu-item-selected-shadow:none 关闭额外标记,完整 box-shadow 值可表达左、右或底部内阴影,不占据菜单布局空间;该 Token 独立于导航明暗。菜单高度、文字行高、内距和框架留白一起调整,给外阴影、长标题与键盘焦点留出空间。
200
+
201
+ 桌面检查菜单、搜索、选中态与表单的协调;折叠后保留可识别图标和入口名称;窄屏保持菜单可展开、当前页面可定位、键盘焦点可见。提交、编辑、详情与自定义页都沿用这一导航设计。
154
202
 
155
203
  ### 2.3 页面标题与操作
156
204
 
@@ -164,14 +212,14 @@ tokens:
164
212
 
165
213
  使用 `--font-family-base`,字体属于中性无衬线实现方案,不假定截图使用的准确字体。全局字体和间距保持固定基线,独立指标使用页面层排版。
166
214
 
167
- | 文字角色 | 字号、字重与行高 | 颜色与安排 |
168
- | --- | --- | --- |
169
- | 页面或页头标题 | `--font-size-subhead`、`--font-weight-subhead`、`--font-lineheight-subhead` | `--color-text1-4`,克制加重 |
170
- | 面板标题、重要分组名 | `--font-size-body-2`、`--font-weight-body-2`、`--font-lineheight-body-2` | `--color-text1-4`,不增加有色标题底条 |
171
- | 正文、标签、按钮和输入 | `--font-size-body-1`、`--font-weight-body-1`、`--font-lineheight-body-1` | 主文字色;次级标签可用 `--color-text1-10` |
172
- | 表格与对齐明细 | `--font-size-table`、`--font-weight-table`、`--font-lineheight-table` | 表头用 `--color-text1-10`,重要数据用 `--color-text1-4` |
173
- | 日期、单位、比较口径、坐标 | `--font-size-caption`、`--font-weight-caption`、`--font-lineheight-caption` | `--color-text1-3`;关键说明提高到 `--color-text1-10` |
174
- | 关键数值 | `--oyd-font-size-metric`、`--oyd-font-weight-metric`、`--oyd-font-lineheight-metric` | `--color-text1-4`;单位与变化值低于主数值层级 |
215
+ | 文字角色 | 字号、字重与行高 | 颜色与安排 |
216
+ | -------------------------- | ------------------------------------------------------------------------------------ | ------------------------------------------------------- |
217
+ | 页面或页头标题 | `--font-size-subhead`、`--font-weight-subhead`、`--font-lineheight-subhead` | `--color-text1-4`,克制加重 |
218
+ | 面板标题、重要分组名 | `--font-size-body-2`、`--font-weight-body-2`、`--font-lineheight-body-2` | `--color-text1-4`,不增加有色标题底条 |
219
+ | 正文、标签、按钮和输入 | `--font-size-body-1`、`--font-weight-body-1`、`--font-lineheight-body-1` | 主文字色;次级标签可用 `--color-text1-10` |
220
+ | 表格与对齐明细 | `--font-size-table`、`--font-weight-table`、`--font-lineheight-table` | 表头用 `--color-text1-10`,重要数据用 `--color-text1-4` |
221
+ | 日期、单位、比较口径、坐标 | `--font-size-caption`、`--font-weight-caption`、`--font-lineheight-caption` | `--color-text1-3`;关键说明提高到 `--color-text1-10` |
222
+ | 关键数值 | `--oyd-font-size-metric`、`--oyd-font-weight-metric`、`--oyd-font-lineheight-metric` | `--color-text1-4`;单位与变化值低于主数值层级 |
175
223
 
176
224
  数字启用等宽数字特性,金额、百分比、单位和精度保持一致。主数值与单位沿基线对齐,数值列对齐以便比较。缺失值、零和不适用分别表达,不以示例中的金额、百分比或日期作为固定格式。
177
225
 
@@ -233,15 +281,15 @@ tokens:
233
281
 
234
282
  ### 状态与反馈
235
283
 
236
- | 状态 | 视觉处理 |
237
- | --- | --- |
238
- | Hover | 中性控件保持 `--color-fill1-1`,通过边界和文字加深表达;品牌操作使用 `--color-brand1-1`。普通卡片不整体抬升 |
239
- | Active / pressed | 中性操作使用 `--color-fill1-2`,品牌操作使用 `--color-brand1-9`,不缩放改变布局 |
240
- | Selected | 中性浅底配近黑标记,真实指标选择用顶线和小图标反白;导航使用六项专用配色 |
241
- | Focus | 使用约 2px 品牌色轮廓及可见外间隔(推断),不只依赖微弱阴影 |
242
- | Disabled | 使用 `--color-text1-2` 或 `--color-brand1-10`,保留文字轮廓;正常次级信息不按禁用态处理 |
243
- | Error / warning / success / info | 沿用平台语义色,配必要文字与图标;错误输入保持结构稳定并显示说明 |
244
- | Loading / empty | 骨架使用 `--color-fill1-3`;空态以简短说明与已有可用操作表达,不绘制假走势或随机占比 |
284
+ | 状态 | 视觉处理 |
285
+ | -------------------------------- | ----------------------------------------------------------------------------------------------------------- |
286
+ | Hover | 中性控件保持 `--color-fill1-1`,通过边界和文字加深表达;品牌操作使用 `--color-brand1-1`。普通卡片不整体抬升 |
287
+ | Active / pressed | 中性操作使用 `--color-fill1-2`,品牌操作使用 `--color-brand1-9`,不缩放改变布局 |
288
+ | Selected | 中性浅底配近黑标记,真实指标选择用顶线和小图标反白;导航使用六项专用配色 |
289
+ | Focus | 使用约 2px 品牌色轮廓及可见外间隔(推断),不只依赖微弱阴影 |
290
+ | Disabled | 使用 `--color-text1-2` 或 `--color-brand1-10`,保留文字轮廓;正常次级信息不按禁用态处理 |
291
+ | Error / warning / success / info | 沿用平台语义色,配必要文字与图标;错误输入保持结构稳定并显示说明 |
292
+ | Loading / empty | 骨架使用 `--color-fill1-3`;空态以简短说明与已有可用操作表达,不绘制假走势或随机占比 |
245
293
 
246
294
  轻量过渡可使用约 120–160ms 的颜色、透明度变化(推断),不增加持续播放的数字动画。未展示的输入、焦点、错误和加载状态是由基础规则推导的实施方案。
247
295
 
@@ -0,0 +1,13 @@
1
+ [
2
+ {
3
+ "type": "ColumnContainer",
4
+ "layout": "12",
5
+ "columnGap": "16px",
6
+ "rowGap": "16px",
7
+ "display": "VERTICAL",
8
+ "mobileRowGap": "16px",
9
+ "children": [
10
+ []
11
+ ]
12
+ }
13
+ ]