@teamix-evo/skills 0.5.0 → 0.7.0
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.
- package/manifest.json +23 -37
- package/package.json +2 -2
- package/src/teamix-evo-design-opentrek/SKILL.md +210 -42
- package/src/teamix-evo-design-opentrek/boundaries.md +3 -3
- package/src/teamix-evo-design-opentrek/components.md +41 -40
- package/src/teamix-evo-design-opentrek/examples/detail-ai-gateway-1.html +1069 -0
- package/src/teamix-evo-design-opentrek/examples/detail-ai-gateway-instance.html +941 -0
- package/src/teamix-evo-design-opentrek/examples/detail-page-api-doc.html +906 -0
- package/src/teamix-evo-design-opentrek/examples/detail-page-config.html +993 -0
- package/src/teamix-evo-design-opentrek/examples/detail-page-monitor.html +1339 -0
- package/src/teamix-evo-design-opentrek/examples/detail-page.html +933 -0
- package/src/teamix-evo-design-opentrek/examples/settings-page.html +1119 -0
- package/src/teamix-evo-design-opentrek/examples/standard-card-list.html +1094 -0
- package/src/teamix-evo-design-opentrek/examples/standard-table-list.html +1361 -0
- package/src/teamix-evo-design-opentrek/examples/wizard-form-page.html +877 -0
- package/src/teamix-evo-design-opentrek/flows.md +85 -12
- package/src/teamix-evo-design-opentrek/foundations.md +9 -9
- package/src/teamix-evo-design-opentrek/generation-flow.md +15 -3
- package/src/teamix-evo-design-opentrek/pages/detail-page/SKILL.md +260 -0
- package/src/teamix-evo-design-opentrek/pages/detail-page/patterns/api-doc-detail.md +163 -0
- package/src/teamix-evo-design-opentrek/pages/detail-page/patterns/comparison-detail.md +100 -0
- package/src/teamix-evo-design-opentrek/pages/detail-page/patterns/monitor-detail.md +190 -0
- package/src/teamix-evo-design-opentrek/pages/detail-page/patterns/resource-detail.md +148 -0
- package/src/teamix-evo-design-opentrek/pages/form-page/SKILL.md +362 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/SKILL.md +286 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/_shared/action-column-spec.md +60 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/_shared/column-meta-rules.md +117 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/_shared/search-combo-spec.md +194 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/_shared/state-action-pattern.md +51 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/patterns/advanced-filter-list.md +94 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/patterns/card-list.md +558 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/patterns/drawer-list.md +76 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/patterns/expandable-list.md +70 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/patterns/l2-sidebar-list.md +73 -0
- package/src/teamix-evo-design-opentrek/pages/list-page/patterns/standard-list.md +198 -0
- package/src/teamix-evo-design-opentrek/patterns/color-mapping.md +1 -1
- package/src/teamix-evo-design-opentrek/patterns/detail-page.md +217 -152
- package/src/teamix-evo-design-opentrek/patterns/form-page.md +437 -231
- package/src/teamix-evo-design-opentrek/patterns/list-page.md +220 -292
- package/src/teamix-evo-design-opentrek/patterns/page-types.md +40 -130
- package/src/teamix-evo-design-opentrek/rules/_assets/OP_AGENT RUNTIME.svg +1 -0
- package/src/teamix-evo-design-opentrek/rules/_assets/OP_AI GATEWAY.svg +1 -0
- package/src/teamix-evo-design-opentrek/rules/_assets/OP_AI STUDIO.svg +1 -0
- package/src/teamix-evo-design-opentrek/rules/_assets/OP_DEV-2.svg +1 -0
- package/src/teamix-evo-design-opentrek/rules/_assets/OP_LOGO.svg +1 -0
- package/src/teamix-evo-design-opentrek/rules/_assets/OP_OPS.svg +1 -0
- package/src/teamix-evo-design-opentrek/rules/boundaries.rules.json +3 -3
- package/src/teamix-evo-design-opentrek/rules/business-mapping.json +124 -0
- package/src/teamix-evo-design-opentrek/rules/common-components.json +924 -0
- package/src/teamix-evo-design-opentrek/rules/component-specs.json +1083 -0
- package/src/teamix-evo-design-opentrek/rules/design-tokens.css +433 -0
- package/src/teamix-evo-design-opentrek/rules/design-tokens.json +2798 -0
- package/src/teamix-evo-design-opentrek/rules/layout-rules.json +218 -0
- package/src/teamix-evo-design-opentrek/rules/page-flow.json +351 -0
- package/src/teamix-evo-design-opentrek/rules/page-frame.json +241 -0
- package/src/teamix-evo-design-opentrek/rules/page-header-spec.md +123 -0
- package/src/teamix-evo-design-opentrek/rules/page-types.json +206 -0
- package/src/teamix-evo-design-opentrek/rules/sidebar-spec.md +217 -0
- package/src/teamix-evo-design-opentrek/rules/styling.json +188 -0
- package/src/teamix-evo-design-opentrek/rules/token-mapping.md +284 -0
- package/src/teamix-evo-design-uni-manager/SKILL.md +1 -1
- package/src/teamix-evo-design-uni-manager/boundaries.md +3 -3
- package/src/teamix-evo-design-uni-manager/brand.md +1 -1
- package/src/teamix-evo-design-uni-manager/components.md +30 -28
- package/src/teamix-evo-design-uni-manager/foundations.md +21 -21
- package/src/teamix-evo-design-uni-manager/generation-flow.md +3 -1
- package/src/teamix-evo-design-uni-manager/patterns/detail-page.md +1 -1
- package/src/teamix-evo-design-uni-manager/patterns/form-page.md +18 -18
- package/src/teamix-evo-design-uni-manager/patterns/list-page.md +29 -29
- package/src/teamix-evo-design-uni-manager/patterns/page-types.md +11 -11
- package/src/teamix-evo-design-uni-manager/philosophy.md +1 -1
- package/src/teamix-evo-design-uni-manager/rules/boundaries.rules.json +3 -3
- package/src/teamix-evo-manage/SKILL.md +288 -121
- package/src/teamix-evo-upgrade/SKILL.md +298 -0
- package/src/teamix-evo-design-opentrek/patterns/sidebar.md +0 -122
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
# Token Mapping — TrekClaw v4.1 → teamix-evo
|
|
2
|
+
|
|
3
|
+
> **目标**:建立 `rules/design-tokens.{json,css}` 中 TrekClaw v4.1 token 命名 → `@teamix-evo/tokens/variants/opentrek/theme.css` Tailwind v4 `@theme` 命名 的对照关系。
|
|
4
|
+
>
|
|
5
|
+
> **背景**:本目录下的 `design-tokens.json` / `design-tokens.css` 来自 teamixDsgSys 仓库的 TrekClaw v4.1 token 体系,作为 OpenTrek skill 的参考规则;已按本文件迁移为 teamix-evo 命名。
|
|
6
|
+
>
|
|
7
|
+
> **使用提示**:AI 生成代码时优先使用 Tailwind v4 utility(`bg-primary` / `text-foreground` / `rounded-md` 等),底层即映射到 `--color-*` / `--radius-*`。仅在需要原生 CSS 时引用 `var(--color-token-name)`。
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 1. 映射策略总览
|
|
12
|
+
|
|
13
|
+
| 类别 | 命名变化 | 数量 | 备注 |
|
|
14
|
+
| --------------------------------------------------------- | ----------------------------------------------------- | ------- | ------------------------------------------------- |
|
|
15
|
+
| **颜色 token** | `--xxx` → `--color-xxx` | 105 | 对齐 Tailwind v4 `@theme { --color-* }` 命名 |
|
|
16
|
+
| **状态语义重命名** | `--primary-click` → `--color-primary-pressed` | 1 | teamix-evo 用 `pressed` 命名按下态 |
|
|
17
|
+
| **Shadow 命名空间统一** | `--dialog-shadow` → `--shadow-dialog` | 1 | teamix-evo 命名空间为 `--shadow-*` |
|
|
18
|
+
| **非颜色 token**(spacing / radius / font / duration 等) | 保持原名 | 60+ | 已与 teamix-evo 一致,无需重命名 |
|
|
19
|
+
| **legacy 别名 / 无对应 token** | 保留原名,标记 TODO | 28 | 见下表「无 teamix-evo 对应的 token (TODO)」 |
|
|
20
|
+
|
|
21
|
+
迁移规则总数:**107 项**(颜色 105 + 显式重命名 2)。
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## 2. 颜色 Token 完整对照表
|
|
26
|
+
|
|
27
|
+
### 2.1 Brand / 主色
|
|
28
|
+
|
|
29
|
+
| TrekClaw v4.1 | teamix-evo | 备注 |
|
|
30
|
+
| ------------------------ | -------------------------------- | --------------------------------- |
|
|
31
|
+
| `--primary` | `--color-primary` | #0055EE |
|
|
32
|
+
| `--primary-foreground` | `--color-primary-foreground` | |
|
|
33
|
+
| `--primary-hover` | `--color-primary-hover` | |
|
|
34
|
+
| `--primary-click` | `--color-primary-pressed` | **重命名**:click → pressed |
|
|
35
|
+
| `--primary-glow` | `--color-primary-glow` | |
|
|
36
|
+
|
|
37
|
+
### 2.2 Accent 10 色
|
|
38
|
+
|
|
39
|
+
| TrekClaw v4.1 | teamix-evo |
|
|
40
|
+
| --------------------- | --------------------------- |
|
|
41
|
+
| `--accent-blue` | `--color-accent-blue` |
|
|
42
|
+
| `--accent-violet` | `--color-accent-violet` |
|
|
43
|
+
| `--accent-apricot` | `--color-accent-apricot` |
|
|
44
|
+
| `--accent-indigo` | `--color-accent-indigo` |
|
|
45
|
+
| `--accent-green` | `--color-accent-green` |
|
|
46
|
+
| `--accent-magenta` | `--color-accent-magenta` |
|
|
47
|
+
| `--accent-turquoise` | `--color-accent-turquoise` |
|
|
48
|
+
| `--accent-orange` | `--color-accent-orange` |
|
|
49
|
+
| `--accent-berry` | `--color-accent-berry` |
|
|
50
|
+
| `--accent-olive` | `--color-accent-olive` |
|
|
51
|
+
|
|
52
|
+
### 2.3 Gray 8 级语义
|
|
53
|
+
|
|
54
|
+
| TrekClaw v4.1 | teamix-evo |
|
|
55
|
+
| -------------------------------- | --------------------------------------- |
|
|
56
|
+
| `--gray-primary` | `--color-gray-primary` |
|
|
57
|
+
| `--gray-primary-foreground` | `--color-gray-primary-foreground` |
|
|
58
|
+
| `--gray-secondary-foreground` | `--color-gray-secondary-foreground` |
|
|
59
|
+
| `--muted-foreground` | `--color-muted-foreground` |
|
|
60
|
+
| `--gray-disabled` | `--color-gray-disabled` |
|
|
61
|
+
| `--gray-line` | `--color-gray-line` |
|
|
62
|
+
| `--gray-sidebar-accent` | `--color-gray-sidebar-accent` |
|
|
63
|
+
| `--gray-muted` | `--color-gray-muted` |
|
|
64
|
+
| `--gray-white` | `--color-gray-white` |
|
|
65
|
+
|
|
66
|
+
### 2.4 shadcn 标准语义
|
|
67
|
+
|
|
68
|
+
| TrekClaw v4.1 | teamix-evo |
|
|
69
|
+
| ------------------------ | ------------------------------ |
|
|
70
|
+
| `--foreground` | `--color-foreground` |
|
|
71
|
+
| `--border` | `--color-border` |
|
|
72
|
+
| `--input` | `--color-input` |
|
|
73
|
+
| `--ring` | `--color-ring` |
|
|
74
|
+
| `--card` | `--color-card` |
|
|
75
|
+
| `--card-foreground` | `--color-card-foreground` |
|
|
76
|
+
| `--popover` | `--color-popover` |
|
|
77
|
+
| `--popover-foreground` | `--color-popover-foreground` |
|
|
78
|
+
| `--secondary` | `--color-secondary` |
|
|
79
|
+
| `--secondary-foreground` | `--color-secondary-foreground` |
|
|
80
|
+
| `--muted` | `--color-muted` |
|
|
81
|
+
| `--accent` | `--color-accent` |
|
|
82
|
+
| `--accent-foreground` | `--color-accent-foreground` |
|
|
83
|
+
|
|
84
|
+
### 2.5 Background
|
|
85
|
+
|
|
86
|
+
| TrekClaw v4.1 | teamix-evo |
|
|
87
|
+
| ---------------------- | ---------------------------- |
|
|
88
|
+
| `--background` | `--color-background` |
|
|
89
|
+
| `--background-dark` | `--color-background-dark` |
|
|
90
|
+
| `--background-panel` | `--color-background-panel` |
|
|
91
|
+
|
|
92
|
+
### 2.6 状态色(Success / Destructive / Warning / Info)
|
|
93
|
+
|
|
94
|
+
| TrekClaw v4.1 | teamix-evo |
|
|
95
|
+
| --------------------------- | ----------------------------------- |
|
|
96
|
+
| `--success` | `--color-success` |
|
|
97
|
+
| `--success-foreground` | `--color-success-foreground` |
|
|
98
|
+
| `--success-hover` | `--color-success-hover` |
|
|
99
|
+
| `--success-pressed` | `--color-success-pressed` |
|
|
100
|
+
| `--success-bg` | `--color-success-bg` |
|
|
101
|
+
| `--success-border` | `--color-success-border` |
|
|
102
|
+
| `--destructive` | `--color-destructive` |
|
|
103
|
+
| `--destructive-foreground` | `--color-destructive-foreground` |
|
|
104
|
+
| `--destructive-hover` | `--color-destructive-hover` |
|
|
105
|
+
| `--destructive-pressed` | `--color-destructive-pressed` |
|
|
106
|
+
| `--destructive-bg` | `--color-destructive-bg` |
|
|
107
|
+
| `--destructive-border` | `--color-destructive-border` |
|
|
108
|
+
| `--warning` | `--color-warning` |
|
|
109
|
+
| `--warning-foreground` | `--color-warning-foreground` |
|
|
110
|
+
| `--warning-hover` | `--color-warning-hover` |
|
|
111
|
+
| `--warning-pressed` | `--color-warning-pressed` |
|
|
112
|
+
| `--warning-bg` | `--color-warning-bg` |
|
|
113
|
+
| `--warning-border` | `--color-warning-border` |
|
|
114
|
+
| `--info` | `--color-info` |
|
|
115
|
+
| `--info-foreground` | `--color-info-foreground` |
|
|
116
|
+
| `--info-hover` | `--color-info-hover` |
|
|
117
|
+
| `--info-pressed` | `--color-info-pressed` |
|
|
118
|
+
| `--info-bg` | `--color-info-bg` |
|
|
119
|
+
| `--info-border` | `--color-info-border` |
|
|
120
|
+
| `--info-light` | `--color-info-light` |
|
|
121
|
+
|
|
122
|
+
> teamix-evo 额外提供 `--color-success-subtle` / `--color-warning-subtle` / `--color-info-subtle`(`*-bg` 的 legacy 别名),TrekClaw 无对应别名,AI 生成时直接使用 `--color-*-bg` 即可。
|
|
123
|
+
>
|
|
124
|
+
> teamix-evo 额外提供 Help 档(黄色 `--color-help` / `--color-help-foreground` / `--color-help-bg` / `--color-help-border`,色相 45°),用于 Tag 的 `status='help'` 档位;TrekClaw v4.1 无此档,AI 在 OpenTrek 业务页中暂不需要使用。
|
|
125
|
+
|
|
126
|
+
### 2.7 Charts 10 色
|
|
127
|
+
|
|
128
|
+
| TrekClaw v4.1 | teamix-evo |
|
|
129
|
+
| --------------- | --------------------- |
|
|
130
|
+
| `--chart-1` | `--color-chart-1` |
|
|
131
|
+
| `--chart-2` | `--color-chart-2` |
|
|
132
|
+
| `--chart-3` | `--color-chart-3` |
|
|
133
|
+
| `--chart-4` | `--color-chart-4` |
|
|
134
|
+
| `--chart-5` | `--color-chart-5` |
|
|
135
|
+
| `--chart-6` | `--color-chart-6` |
|
|
136
|
+
| `--chart-7` | `--color-chart-7` |
|
|
137
|
+
| `--chart-8` | `--color-chart-8` |
|
|
138
|
+
| `--chart-9` | `--color-chart-9` |
|
|
139
|
+
| `--chart-10` | `--color-chart-10` |
|
|
140
|
+
|
|
141
|
+
### 2.8 Topbar / Sidebar / 类型标识 / 状态点 / 终端
|
|
142
|
+
|
|
143
|
+
| TrekClaw v4.1 | teamix-evo |
|
|
144
|
+
| ----------------------------------- | ------------------------------------------- |
|
|
145
|
+
| `--topbar` | `--color-topbar` |
|
|
146
|
+
| `--topbar-foreground` | `--color-topbar-foreground` |
|
|
147
|
+
| `--topbar-divider` | `--color-topbar-divider` |
|
|
148
|
+
| `--sidebar` | `--color-sidebar` |
|
|
149
|
+
| `--sidebar-foreground` | `--color-sidebar-foreground` |
|
|
150
|
+
| `--sidebar-active` | `--color-sidebar-active` |
|
|
151
|
+
| `--sidebar-active-foreground` | `--color-sidebar-active-foreground` |
|
|
152
|
+
| `--sidebar-hover` | `--color-sidebar-hover` |
|
|
153
|
+
| `--sidebar-title` | `--color-sidebar-title` |
|
|
154
|
+
| `--sidebar-group` | `--color-sidebar-group` |
|
|
155
|
+
| `--sidebar-item` | `--color-sidebar-item` |
|
|
156
|
+
| `--sidebar-item-muted` | `--color-sidebar-item-muted` |
|
|
157
|
+
| `--sidebar-accent` | `--color-sidebar-accent` |
|
|
158
|
+
| `--sidebar-accent-foreground` | `--color-sidebar-accent-foreground` |
|
|
159
|
+
| `--sidebar-border` | `--color-sidebar-border` |
|
|
160
|
+
| `--sidebar-ring` | `--color-sidebar-ring` |
|
|
161
|
+
| `--sidebar-primary` | `--color-sidebar-primary` |
|
|
162
|
+
| `--sidebar-primary-foreground` | `--color-sidebar-primary-foreground` |
|
|
163
|
+
| `--avatar-bg` | `--color-avatar-bg` |
|
|
164
|
+
| `--type-api` | `--color-type-api` |
|
|
165
|
+
| `--type-api-light` | `--color-type-api-light` |
|
|
166
|
+
| `--type-api-border` | `--color-type-api-border` |
|
|
167
|
+
| `--type-mcp` | `--color-type-mcp` |
|
|
168
|
+
| `--type-mcp-light` | `--color-type-mcp-light` |
|
|
169
|
+
| `--type-mcp-border` | `--color-type-mcp-border` |
|
|
170
|
+
| `--status-running` | `--color-status-running` |
|
|
171
|
+
| `--status-stopped` | `--color-status-stopped` |
|
|
172
|
+
| `--status-error` | `--color-status-error` |
|
|
173
|
+
| `--terminal` | `--color-terminal` |
|
|
174
|
+
| `--terminal-foreground` | `--color-terminal-foreground` |
|
|
175
|
+
| `--input-placeholder` | `--color-input-placeholder` |
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
## 3. 非颜色 Token(保持原名,已对齐)
|
|
180
|
+
|
|
181
|
+
以下 token 在 TrekClaw v4.1 与 `@teamix-evo/tokens/variants/opentrek/theme.css` 中**命名一致**,迁移不需重命名:
|
|
182
|
+
|
|
183
|
+
| 类别 | Token 列表 |
|
|
184
|
+
| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
185
|
+
| **Font Family** | `--font-sans`, `--font-mono` |
|
|
186
|
+
| **Font Size** | `--font-size-base`/`-lg`/`-xl`/`-2xl`, `--font-size-page-header`* |
|
|
187
|
+
| **Font Weight** | `--font-weight-normal`/`-medium`/`-black` |
|
|
188
|
+
| **Line Height** | `--line-height-input`/`-normal`/`-dialog-title` |
|
|
189
|
+
| **Letter Spacing**| `--letter-spacing-tight`/`-normal` |
|
|
190
|
+
| **Spacing** | `--gap-xs`, `--btn-padding-x`/`-sm`, `--button-gap`, `--tabs-gap`, `--card-gap`, `--page-container-gap`/`-padding`/`-padding-left`, `--card-padding-x`, `--action-toolbar-search-combo-gap` |
|
|
191
|
+
| **Layout** | `--layout-sidebar-width`, `--page-header-height`, `--breadcrumb-height`, `--sidebar-collapsed-width`, `--sidebar-menu-item-height`, `--sidebar-menu-item-size-collapsed`/`-gap-collapsed`, `--sidebar-header-padding-collapsed`, `--sidebar-footer-padding-collapsed`, `--sidebar-flyout-z-index`/`-min-width`/`-item-height`, `--sidebar-centered-axis`, `--sidebar-expand-icon-size`, `--topbar-height` |
|
|
192
|
+
| **Table** | `--table-cell-padding-x`, `--table-first-cell-padding-left`, `--table-last-cell-padding-right` |
|
|
193
|
+
| **Card Grid** | `--card-grid-min-compact`/`-standard`/`-comfortable`/`-feature` |
|
|
194
|
+
| **Radius** | `--radius`, `--radius-sm`/`-md`/`-lg`/`-xl`/`-full`, `--card-radius`, `--input-radius` |
|
|
195
|
+
| **Input** | `--input-height`, `--input-font-size`, `--text-font-size`, `--input-line-height`, `--input-padding-x`/`-y`, `--input-icon-size` |
|
|
196
|
+
| **Dialog** | `--dialog-width-s`/`-m`/`-l`/`-xl`, `--dialog-header-height`, `--dialog-footer-height`, `--dialog-body-padding-x`/`-y` |
|
|
197
|
+
| **Drawer** | `--drawer-width-s`/`-m`/`-l`/`-xl` |
|
|
198
|
+
| **Shadow** | `--shadow-none`/`-sm`/`-DEFAULT`/`-md`/`-lg`/`-xl`/`-2xl`, `--shadow-dialog`*, `--shadow-select-content` |
|
|
199
|
+
| **Animation** | `--duration-fast`/`-normal`/`-slow`/`-slower`, `--easing-linear`/`-ease`/`-ease-in`/`-ease-out`/`-ease-in-out` |
|
|
200
|
+
| **Z-index** | `--z-base`/`-dropdown`/`-sticky`/`-overlay`/`-modal`/`-tooltip` |
|
|
201
|
+
| **Form** | `--form-label-width`, `--form-control-max-width`, `--form-row-gap`, `--form-row-padding-y`, `--form-description-font-size`, `--form-required-indicator-margin-left` |
|
|
202
|
+
| **Pagination** | `--pagination-button-size`, `--pagination-arrow-icon-size`, `--pagination-ellipsis-icon-size`, `--button-sm-height` |
|
|
203
|
+
| **Stepper** | `--stepper-button-width`/`-height`, `--stepper-input-width`/`-height` |
|
|
204
|
+
|
|
205
|
+
> ⚠ **shadow 命名空间重命名**:TrekClaw 的 `--dialog-shadow` 已重命名为 `--shadow-dialog`(统一 `--shadow-*` 命名空间,与 teamix-evo 一致)。
|
|
206
|
+
>
|
|
207
|
+
> ℹ️ **font-size-* 注意事项**:teamix-evo 主推 Tailwind utility(`text-xs`/`text-sm`/`text-base`/`text-lg`),但 `--font-size-page-header` 等业务专用 token 与 TrekClaw 完全一致;`--font-size-base`/`-lg`/`-xl`/`-2xl` 名称在 teamix-evo theme.css 中没有显式声明,但作为 OpenTrek 设计规则的命名约定保留,AI 在生成原生 CSS 时仍可使用,建议优先用 Tailwind utility。
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
## 4. 无 teamix-evo 对应的 Token(TODO,保留原名)
|
|
212
|
+
|
|
213
|
+
以下 28 个 token 是 TrekClaw v4.1 的 **legacy 别名 / 衍生态 / 项目专用**,teamix-evo `theme.css` 中暂无对应声明。**保留原名**写入 `design-tokens.{json,css}`,AI 生成代码时**不应使用这些 token**,应使用括号中的现役替代:
|
|
214
|
+
|
|
215
|
+
### 4.1 Gray Legacy 别名(v7.4 起合并)
|
|
216
|
+
|
|
217
|
+
| TrekClaw 旧名 | 现役替代(teamix-evo) | TODO 原因 |
|
|
218
|
+
| --------------------- | ------------------------------------- | -------------------------------------- |
|
|
219
|
+
| `--gray-title` | `--color-gray-primary` | v7.4 已合并为 gray-primary |
|
|
220
|
+
| `--gray-secondary` | `--color-gray-secondary-foreground` | v7.4 已重命名为 secondary-foreground |
|
|
221
|
+
| `--gray-tertiary` | `--color-muted-foreground` | v7.4 已重命名为 muted-foreground |
|
|
222
|
+
| `--gray-border` | `--color-gray-line` | v7.4 已合并为 gray-line |
|
|
223
|
+
| `--gray-fill` | `--color-gray-muted` | v7.4 已合并为 gray-muted |
|
|
224
|
+
| `--gray-bg-dark` | `--color-gray-muted` | v7.4 已合并为 gray-muted |
|
|
225
|
+
| `--gray-bg` | `--color-gray-muted` | v7.4 已合并为 gray-muted |
|
|
226
|
+
|
|
227
|
+
### 4.2 Semantic / Background Legacy
|
|
228
|
+
|
|
229
|
+
| TrekClaw 旧名 | 现役替代(teamix-evo) | TODO 原因 |
|
|
230
|
+
| --------------------- | ------------------------------------- | -------------------------------------- |
|
|
231
|
+
| `--page-title` | `--color-foreground` | v7.4 已合并为 foreground |
|
|
232
|
+
| `--background-end` | `--color-background` | 与 background 同值,无渐变需求时用 background |
|
|
233
|
+
|
|
234
|
+
### 4.3 状态色 Legacy 衍生态(v4.1 已废弃)
|
|
235
|
+
|
|
236
|
+
| TrekClaw 旧名 | 现役替代(teamix-evo) | TODO 原因 |
|
|
237
|
+
| --------------------- | ------------------------------------- | -------------------------------------- |
|
|
238
|
+
| `--success-dark` | `--color-success-hover` | dark 改用 hover 槽位 |
|
|
239
|
+
| `--success-medium` | `--color-success-border` | medium 改用 border 槽位 |
|
|
240
|
+
| `--success-light` | `--color-success-bg` | light 改用 bg 槽位 |
|
|
241
|
+
| `--success-aura` | _无替代_ | box-shadow 光晕(teamix-evo 暂未声明) |
|
|
242
|
+
| `--destructive-dark` | `--color-destructive-hover` | dark 改用 hover 槽位 |
|
|
243
|
+
| `--destructive-light` | `--color-destructive-bg` | light 改用 bg 槽位 |
|
|
244
|
+
| `--destructive-aura` | _无替代_ | box-shadow 光晕(teamix-evo 暂未声明) |
|
|
245
|
+
| `--warning-dark` | `--color-warning-hover` | dark 改用 hover 槽位 |
|
|
246
|
+
| `--warning-light` | `--color-warning-bg` | light 改用 bg 槽位 |
|
|
247
|
+
| `--warning-aura` | _无替代_ | box-shadow 光晕(teamix-evo 暂未声明) |
|
|
248
|
+
| `--info-aura` | _无替代_ | box-shadow 光晕(teamix-evo 暂未声明) |
|
|
249
|
+
|
|
250
|
+
### 4.4 图表 Legacy 别名(v4.1 已废弃)
|
|
251
|
+
|
|
252
|
+
| TrekClaw 旧名 | 现役替代(teamix-evo) |
|
|
253
|
+
| --------------------- | ------------------------------ |
|
|
254
|
+
| `--data-1` ~ `--data-10` | `--color-chart-1` ~ `--color-chart-10`(10 项) |
|
|
255
|
+
|
|
256
|
+
> **TODO 处理建议**:当 teamix-evo `@teamix-evo/tokens/variants/opentrek/theme.css` 后续版本补齐这些别名时,可统一删除本文件 legacy 别名段,由消费方根 tokens/ 提供。当前阶段 AI 生成代码请避免使用上述 28 项 token。
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
## 5. 值格式差异(important)
|
|
261
|
+
|
|
262
|
+
| 维度 | TrekClaw v4.1(本文件) | teamix-evo `theme.css` |
|
|
263
|
+
| ------------- | ----------------------------------------------- | ------------------------------------------- |
|
|
264
|
+
| 颜色值格式 | HSL 三元组裸值:`218.6 100% 46.7%` | hsl() 包裹:`hsl(218.6 100% 46.7%)` |
|
|
265
|
+
| 使用方式 | `color: hsl(var(--color-primary))` | `color: var(--color-primary)` 或 Tailwind utility |
|
|
266
|
+
| 适用场景 | Skill 参考文档(保留 TrekClaw 原始色值供 AI 查询) | 运行时 CSS(消费方根 tokens/tokens.theme.css) |
|
|
267
|
+
|
|
268
|
+
**实际开发中**:
|
|
269
|
+
- **首选** Tailwind v4 utility:`bg-primary` / `text-foreground` / `border-border`,自动从 teamix-evo `@theme` 块解析。
|
|
270
|
+
- **次选** 原生 CSS 引用:`background-color: var(--color-primary)`(teamix-evo 已带 hsl() 包裹,**无需再嵌套 hsl()**)。
|
|
271
|
+
- **本文件 `design-tokens.{json,css}` 仅作为 OpenTrek skill 设计规则的 AI 参考文档**,不参与运行时构建。生成页面代码时遵循上面两条即可。
|
|
272
|
+
|
|
273
|
+
---
|
|
274
|
+
|
|
275
|
+
## 6. 维护规则
|
|
276
|
+
|
|
277
|
+
1. **新增 token**:先在 `@teamix-evo/tokens/variants/opentrek/theme.css` 加 `--color-xxx`,再同步本目录 `design-tokens.json`/`.css`;保持本文件对照表更新。
|
|
278
|
+
2. **TODO 收敛**:当 teamix-evo theme.css 补齐 §4 列出的 token 时,删除本目录对应 legacy 别名行,并从本文件 §4 移到 §2 对照表。
|
|
279
|
+
3. **值变更**:色值只在 `@teamix-evo/tokens/variants/opentrek/{theme.css, base.tokens.json}` 修改;本目录 design-tokens.{json,css} 同步更新作为 skill 参考。
|
|
280
|
+
4. **冲突裁决**:teamix-evo `@teamix-evo/tokens` 是运行时唯一真相源;本文件与 teamix-evo theme.css 不一致时,**以 teamix-evo 为准**,本文件需同步修正。
|
|
281
|
+
|
|
282
|
+
---
|
|
283
|
+
|
|
284
|
+
_最后更新:2026-06-09(teamix-evo 对齐迁移)_
|
|
@@ -54,7 +54,7 @@ description: |
|
|
|
54
54
|
| [patterns/page-types.md](./patterns/page-types.md) | 5 种页面类型 + Console Home + 一致性三件套 |
|
|
55
55
|
| [patterns/list-page.md](./patterns/list-page.md) | 列表页模式(多租户 / 多区域筛选) |
|
|
56
56
|
| [patterns/detail-page.md](./patterns/detail-page.md) | 详情页模式(资源详情 / 跨云资源关联) |
|
|
57
|
-
| [patterns/form-page.md](./patterns/form-page.md) | 表单页模式(含 wizard /
|
|
57
|
+
| [patterns/form-page.md](./patterns/form-page.md) | 表单页模式(含 wizard / Sheet 内联表单) |
|
|
58
58
|
| [patterns/dashboard.md](./patterns/dashboard.md) | Dashboard / Console Home(StatCard / Chart 标准结构) |
|
|
59
59
|
| [flows.md](./flows.md) | 5 条核心用户旅程 + 上下文切换(租户/项目/区域) |
|
|
60
60
|
| [brand.md](./brand.md) | Uni-Manager 品牌调性 + 文案语气 + 正反例(B50 + 锐利风) |
|
|
@@ -259,7 +259,7 @@ CSS 变量已在 dark 模式下自动切换(uni-manager `theme.css` 内置)
|
|
|
259
259
|
+ <Dialog><DialogContent>
|
|
260
260
|
```
|
|
261
261
|
|
|
262
|
-
适用:`Dialog / Sheet /
|
|
262
|
+
适用:`Dialog / Sheet / Popover / Tooltip / DropdownMenu / HoverCard`。
|
|
263
263
|
|
|
264
264
|
> 检查: 无 lint (运行时 / 评审)
|
|
265
265
|
|
|
@@ -304,7 +304,7 @@ CSS 变量已在 dark 模式下自动切换(uni-manager `theme.css` 内置)
|
|
|
304
304
|
|
|
305
305
|
> 检查: 无 lint (后续可加 ESLint JSX 结构规则)
|
|
306
306
|
|
|
307
|
-
### [ERROR] C2 · Dialog / Sheet
|
|
307
|
+
### [ERROR] C2 · Dialog / Sheet 必须有 Title
|
|
308
308
|
|
|
309
309
|
```diff
|
|
310
310
|
- <DialogContent>...</DialogContent>
|
|
@@ -550,7 +550,7 @@ CSS 变量已在 dark 模式下自动切换(uni-manager `theme.css` 内置)
|
|
|
550
550
|
| 需要输入的任务 | `Dialog` |
|
|
551
551
|
| 危险操作确认 | `AlertDialog variant="destructive"` |
|
|
552
552
|
| 侧面板(详情 / 筛选) | `Sheet` |
|
|
553
|
-
| 移动端底部面板 | `
|
|
553
|
+
| 移动端底部面板 | `Sheet side="bottom"` |
|
|
554
554
|
| 悬浮信息(hover 触发) | `HoverCard` |
|
|
555
555
|
| 点击弹出小内容 | `Popover` |
|
|
556
556
|
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
- 表格行高默认 36px(OpenTrek 默认 40-44)
|
|
41
41
|
- 字段标签字号 12px(`text-xs`)— 而非 OpenTrek 14px
|
|
42
42
|
- DescriptionList 默认 `column: 2`,宽屏可至 4
|
|
43
|
-
-
|
|
43
|
+
- Sheet(抽屉)内表单字段 gap = 12px(详情页 `density="detail"`)
|
|
44
44
|
|
|
45
45
|
### 3.2 一致性三件套(uni-manager 专有约束)
|
|
46
46
|
|
|
@@ -46,15 +46,15 @@ ui 原子组件最小拼装 (兜底)
|
|
|
46
46
|
|
|
47
47
|
## 1. 双层组件架构(实物归属)
|
|
48
48
|
|
|
49
|
-
| 层级 | 来源 | 实物清单(截至当前 variant)
|
|
50
|
-
| --------------------------------------------- | -------------------------------- |
|
|
51
|
-
| **业务扩展层(biz-ui,uni-manager variant)** | `@teamix-evo/biz-ui/uni-manager` |
|
|
52
|
-
| **ui 实现层(shadcn 原子)** | `@teamix-evo/ui` | ≈
|
|
49
|
+
| 层级 | 来源 | 实物清单(截至当前 variant) |
|
|
50
|
+
| --------------------------------------------- | -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
51
|
+
| **业务扩展层(biz-ui,uni-manager variant)** | `@teamix-evo/biz-ui/uni-manager` | 3 个实物:`um-topbar`(含 ContextSwitcher + Logo + 用户菜单 + 通知中心)、`um-sidebar`、`um-page-container`。其余 `business/` 目录为文档草稿,**不可 import**。 |
|
|
52
|
+
| **ui 实现层(shadcn 原子)** | `@teamix-evo/ui` | ≈ 76 个原子/复合组件。包含 **PageHeader / Pagination / Steps / Tabs / Tooltip / DataTable / FilterBar / Command / Combobox / DatePicker / Sheet / Dialog / AlertDialog / Card / Badge / Tag / Alert / Sonner / Form** 等高频件。 |
|
|
53
53
|
|
|
54
54
|
### 1.1 选型铁律
|
|
55
55
|
|
|
56
|
-
1. **优先 biz-ui/uni-manager 实物层** — 已封装变体 + 文案规范,但**注意 uni-manager
|
|
57
|
-
2. **biz-ui 无实物 → ui 实现层** —
|
|
56
|
+
1. **优先 biz-ui/uni-manager 实物层** — 已封装变体 + 文案规范,但**注意 uni-manager 当前有 3 个实物**。
|
|
57
|
+
2. **biz-ui 无实物 → ui 实现层** — 76 个原子件覆盖绝大部分场景。
|
|
58
58
|
3. **ui 仍无 → §5 拼凑配方** — 用 ui 多个原子件最小组合(不私造)。
|
|
59
59
|
4. **禁止**自造同名组件(违反 reuse-first,详见 §0)。
|
|
60
60
|
|
|
@@ -79,7 +79,7 @@ ui 原子组件最小拼装 (兜底)
|
|
|
79
79
|
|
|
80
80
|
## 3. 选型决策树
|
|
81
81
|
|
|
82
|
-
### 3.1 反馈与确认 — Dialog vs Sheet vs
|
|
82
|
+
### 3.1 反馈与确认 — Dialog vs Sheet vs Popover
|
|
83
83
|
|
|
84
84
|
```text
|
|
85
85
|
需要用户做出决定 / 阻塞主流程?
|
|
@@ -88,7 +88,7 @@ ui 原子组件最小拼装 (兜底)
|
|
|
88
88
|
│ └─ 复杂表单(< 8 字段)→ Dialog
|
|
89
89
|
└─ 否
|
|
90
90
|
├─ 临时编辑/筛选(侧边滑出)→ Sheet
|
|
91
|
-
├─ 多级下探查看(侧边可叠层)→
|
|
91
|
+
├─ 多级下探查看(侧边可叠层)→ Sheet(多层叠加模式)
|
|
92
92
|
├─ 内容预览/上下文操作(小气泡)→ Popover
|
|
93
93
|
└─ 仅展示信息(鼠标悬浮)→ Tooltip
|
|
94
94
|
```
|
|
@@ -104,17 +104,17 @@ ui 原子组件最小拼装 (兜底)
|
|
|
104
104
|
|
|
105
105
|
> 来源:Teamix-UI 容器规范(doc 10)。
|
|
106
106
|
|
|
107
|
-
| 类别 | 容器
|
|
108
|
-
| ---------- |
|
|
109
|
-
| **操作型** | 全页面(FormPage)
|
|
110
|
-
| **操作型** | 弹窗模态(Dialog)
|
|
111
|
-
| **操作型** | 气泡(Popconfirm)
|
|
112
|
-
| **展示型** | 全页面(DetailPage)
|
|
113
|
-
| **展示型** | 抽屉非模态(Sheet)
|
|
114
|
-
| **展示型** | 抽屉模态(
|
|
115
|
-
| **展示型** | 弹窗模态(Dialog)
|
|
116
|
-
| **展示型** | 卡片(Card)
|
|
117
|
-
| **展示型** | 通知反馈(
|
|
107
|
+
| 类别 | 容器 | 何时使用 |
|
|
108
|
+
| ---------- | -------------------------- | ------------------------------------------------ |
|
|
109
|
+
| **操作型** | 全页面(FormPage) | 字段多 / 步骤多 / 需要持久 URL |
|
|
110
|
+
| **操作型** | 弹窗模态(Dialog) | 阻塞主流程的简短确认或表单;最多 2 级,不再深入 |
|
|
111
|
+
| **操作型** | 气泡(Popconfirm) | 二次确认(删除/解绑),轻量提示 |
|
|
112
|
+
| **展示型** | 全页面(DetailPage) | 完整信息查看,路由可分享 |
|
|
113
|
+
| **展示型** | 抽屉非模态(Sheet) | 不阻塞主流程,可保留上下文(如侧栏 Detail) |
|
|
114
|
+
| **展示型** | 抽屉模态(Sheet 多层叠加) | 多级下探查看(如资源 → 子资源 → 配置),逐层推出 |
|
|
115
|
+
| **展示型** | 弹窗模态(Dialog) | 一次性展示重要信息 |
|
|
116
|
+
| **展示型** | 卡片(Card) | 同级信息分组;卡片之间间距 16px |
|
|
117
|
+
| **展示型** | 通知反馈(Sonner / Alert) | 瞬时反馈 / 页面级横幅 / 系统通知 |
|
|
118
118
|
|
|
119
119
|
### 3.3 状态展示 — Badge vs Tag vs Alert
|
|
120
120
|
|
|
@@ -155,12 +155,12 @@ ui 原子组件最小拼装 (兜底)
|
|
|
155
155
|
```text
|
|
156
156
|
枚举值 ≤ 7 → RadioGroup(一屏可见)
|
|
157
157
|
枚举值 8~30 → Select
|
|
158
|
-
枚举值 > 30 / 需搜索 → Combobox
|
|
159
|
-
多选 →
|
|
158
|
+
枚举值 > 30 / 需搜索 → Combobox(输入即建议,支持 multiple 多选)或 Command + Popover 拼装
|
|
159
|
+
多选 → Combobox (multiple={true}) / Checkbox
|
|
160
160
|
日期 → DatePicker / DateRangePicker
|
|
161
|
-
富文本 → Textarea
|
|
161
|
+
富文本 → Textarea
|
|
162
162
|
文件 → Upload
|
|
163
|
-
自动补全 →
|
|
163
|
+
自动补全 → Combobox
|
|
164
164
|
```
|
|
165
165
|
|
|
166
166
|
---
|
|
@@ -182,14 +182,16 @@ ui 原子组件最小拼装 (兜底)
|
|
|
182
182
|
|
|
183
183
|
## 5. 业务扩展层(候补)— 实物 vs 概念 + 拼凑配方
|
|
184
184
|
|
|
185
|
-
> uni-manager variant
|
|
185
|
+
> uni-manager variant 当前有 **3 个**实物业务组件:`um-topbar`、`um-sidebar`、`um-page-container`。
|
|
186
186
|
> 以下表格区分"已实物化"与"概念占位(用 ui 拼装)"。
|
|
187
187
|
|
|
188
188
|
### 5.1 已实物化(直接使用)
|
|
189
189
|
|
|
190
|
-
| 组件
|
|
191
|
-
|
|
|
192
|
-
| **um-topbar**
|
|
190
|
+
| 组件 | 用途 | 归属 |
|
|
191
|
+
| --------------------- | ----------------------------------------------------------------- | ------------------ |
|
|
192
|
+
| **um-topbar** | 全局顶部壳层(ContextSwitcher + Logo + UserMenu + Notifications) | biz-ui/uni-manager |
|
|
193
|
+
| **um-sidebar** | 左侧导航侧栏 | biz-ui/uni-manager |
|
|
194
|
+
| **um-page-container** | 页面容器(白卡 + 间距 + PageHeader 插槽) | biz-ui/uni-manager |
|
|
193
195
|
|
|
194
196
|
### 5.2 概念占位(按配方拼装)
|
|
195
197
|
|
|
@@ -249,7 +251,7 @@ ui 原子组件最小拼装 (兜底)
|
|
|
249
251
|
|
|
250
252
|
- [ ] 已先用 `find_components` 验证组件存在性(不靠默认)
|
|
251
253
|
- [ ] biz-ui/uni-manager 命中失败 → 改用 ui 原子件,按 §5.2 配方拼装并加注释
|
|
252
|
-
- [ ] 反馈 / 确认场景按容量选 Dialog / Sheet /
|
|
254
|
+
- [ ] 反馈 / 确认场景按容量选 Dialog / Sheet / Popover
|
|
253
255
|
- [ ] 容器层级 ≤ 3,弹窗最多 2 级,超过则跳转全页面
|
|
254
256
|
- [ ] 全局壳层使用 `um-topbar`(boundaries.md UM1)
|
|
255
257
|
- [ ] 跨云资源列表必含 cloud Badge 列(boundaries.md UM3)
|
|
@@ -94,11 +94,11 @@ hardcoded 数值 ← 仅限 token 真空地带,
|
|
|
94
94
|
|
|
95
95
|
### 3.2 信息密度 3 档(来自 doc 04)
|
|
96
96
|
|
|
97
|
-
| 密度 | 行间距 / 区间距 | 适用
|
|
98
|
-
| ---- | --------------- |
|
|
99
|
-
| 高 | 32 / 48 | Dashboard / 运营首页
|
|
100
|
-
| 中 | 16 / 24 | 列表页 / 详情页(默认)
|
|
101
|
-
| 低 | 8 / 12 | 紧凑表格 /
|
|
97
|
+
| 密度 | 行间距 / 区间距 | 适用 |
|
|
98
|
+
| ---- | --------------- | ------------------------------ |
|
|
99
|
+
| 高 | 32 / 48 | Dashboard / 运营首页 |
|
|
100
|
+
| 中 | 16 / 24 | 列表页 / 详情页(默认) |
|
|
101
|
+
| 低 | 8 / 12 | 紧凑表格 / Sheet(抽屉)内表单 |
|
|
102
102
|
|
|
103
103
|
### 3.3 Form 间距三档(hardcode token,禁手写)
|
|
104
104
|
|
|
@@ -187,7 +187,7 @@ hardcoded 数值 ← 仅限 token 真空地带,
|
|
|
187
187
|
| `rounded-none` | 0 | 表格行 / 全屏 banner |
|
|
188
188
|
| `rounded-sm` | 0px | ✱ 输入控件 / 表格 / Tag 边角(uni-manager 默认) |
|
|
189
189
|
| `rounded-md` | 2px | ✱ 按钮 / Card 默认 / Dialog(与 OpenTrek 6px 不同) |
|
|
190
|
-
| `rounded-lg` | 4px | ✱ Card 强调 /
|
|
190
|
+
| `rounded-lg` | 4px | ✱ Card 强调 / Sheet / 弹层 |
|
|
191
191
|
| `rounded-xl` | 8px | ✱ 大型 Card / 营销卡 |
|
|
192
192
|
| `rounded-2xl` | 12px | ✱ 营销 / 大屏数据卡 |
|
|
193
193
|
| `rounded-full` | 9999px | Avatar / Badge dot / 圆形按钮 |
|
|
@@ -214,19 +214,19 @@ hardcoded 数值 ← 仅限 token 真空地带,
|
|
|
214
214
|
| `shadow-2xs`/`xs`/`sm` | 0 1px 2px rgba(0,0,0,0.04~0.05) | base | 微弱浮起(罕用) |
|
|
215
215
|
| `shadow-md` | 0 3px 8px rgba(0,0,0,0.06) | hybridcloud S1.down | Card / Form hover |
|
|
216
216
|
| `shadow-lg` | 0 3px 8px rgba(0,0,0,0.18) | hybridcloud S2.down | Dropdown / Popover / Tooltip |
|
|
217
|
-
| `shadow-xl` | 0 6px 24px rgba(0,0,0,0.10) | hybridcloud S3.down | Sheet /
|
|
217
|
+
| `shadow-xl` | 0 6px 24px rgba(0,0,0,0.10) | hybridcloud S3.down | Sheet / Dialog |
|
|
218
218
|
| `shadow-2xl` | 0 12px 48px rgba(0,0,0,0.20) | 顶层模态 | AlertDialog / 全屏 modal |
|
|
219
219
|
|
|
220
220
|
### 6.1 圆角 × 阴影对应表(不可乱配)
|
|
221
221
|
|
|
222
|
-
| 容器
|
|
223
|
-
|
|
|
224
|
-
| 表单输入
|
|
225
|
-
| 表格行
|
|
226
|
-
| Card
|
|
227
|
-
| Dropdown
|
|
228
|
-
| Sheet
|
|
229
|
-
| Dialog
|
|
222
|
+
| 容器 | radius | shadow | 备注 |
|
|
223
|
+
| -------- | ------------------------------------ | --------------------------------- | -------------------- |
|
|
224
|
+
| 表单输入 | `rounded-sm` | `shadow-none` (hover `shadow-md`) | scoped CSS 自动接管 |
|
|
225
|
+
| 表格行 | `rounded-none` | `shadow-none` | — |
|
|
226
|
+
| Card | `rounded-md` | `shadow-md` | hybridcloud 默认浮起 |
|
|
227
|
+
| Dropdown | `rounded-md` | `shadow-lg` | — |
|
|
228
|
+
| Sheet | `rounded-lg` | `shadow-xl` | 大尺寸弹层 |
|
|
229
|
+
| Dialog | `rounded-md`(`--radius-dialog: 2px`) | `shadow-xl` | cd hybridcloud 锐利 |
|
|
230
230
|
|
|
231
231
|
### 6.2 Form 控件特殊行为
|
|
232
232
|
|
|
@@ -242,12 +242,12 @@ AI 生成时 **不要** 写 `focus:ring-2 focus:ring-primary`,否则与 scoped
|
|
|
242
242
|
|
|
243
243
|
## 7. 动效(Motion)
|
|
244
244
|
|
|
245
|
-
| 时长 | 用途
|
|
246
|
-
| -------------- |
|
|
247
|
-
| `duration-75` | 微交互(hover 色变)
|
|
248
|
-
| `duration-150` | 默认(按钮 / 输入态)
|
|
249
|
-
| `duration-200` | 中等(折叠 / 展开)
|
|
250
|
-
| `duration-300` | 较慢(
|
|
245
|
+
| 时长 | 用途 |
|
|
246
|
+
| -------------- | --------------------------- |
|
|
247
|
+
| `duration-75` | 微交互(hover 色变) |
|
|
248
|
+
| `duration-150` | 默认(按钮 / 输入态) |
|
|
249
|
+
| `duration-200` | 中等(折叠 / 展开) |
|
|
250
|
+
| `duration-300` | 较慢(Sheet / Dialog 进出) |
|
|
251
251
|
|
|
252
252
|
缓动统一 `ease-out`(进场)/ `ease-in`(退场)。**禁止** 自定义 `cubic-bezier(...)` 字面量。
|
|
253
253
|
|
|
@@ -89,10 +89,12 @@ Step 6 自检 ← Step 5 视觉填充 ← Step 4 组件挑选
|
|
|
89
89
|
1. 优先使用 `@teamix-evo/ui` 注册表中的稳定组件
|
|
90
90
|
2. 通过 MCP `list_components(status: "stable")` 查可用列表
|
|
91
91
|
3. 通过 MCP `get_component_meta(id)` 查具体 Props/Examples
|
|
92
|
+
- **Props**:确定必传 / 可选 / 默认值,明确接口契约
|
|
93
|
+
- **Examples**:作为实现参考(含组合用法、常见模式、边界处理),优先复用示例中的写法而非自由发挥
|
|
92
94
|
4. 复合场景按 [components.md](./components.md) §5.2 拼装配方装配(SearchCombo / ContextSwitcher / CardGrid 等概念占位)
|
|
93
95
|
5. um-topbar / um-side-nav 等实物业务组件位于 `@teamix-evo/biz-ui/uni-manager/*`
|
|
94
96
|
|
|
95
|
-
**输出**:组件清单 + 每个组件的关键 Props
|
|
97
|
+
**输出**:组件清单 + 每个组件的关键 Props + 参考的 Example 片段(若有启发性写法)。
|
|
96
98
|
|
|
97
99
|
## Step 5 · 视觉填充(Token 绑定)
|
|
98
100
|
|
|
@@ -201,7 +201,7 @@
|
|
|
201
201
|
|
|
202
202
|
| 禁项 | 原因 |
|
|
203
203
|
| -------------------------- | ------------------------------------- |
|
|
204
|
-
| Form 直接在主内容区 | 编辑应通过
|
|
204
|
+
| Form 直接在主内容区 | 编辑应通过 Sheet/Dialog/FormPage |
|
|
205
205
|
| DataTable 在主内容区 | 关联数据应用 Tabs 子面板 |
|
|
206
206
|
| Chart 替代 DescriptionList | 图表属 Dashboard,监控用 MonitorPanel |
|
|
207
207
|
| QueryFilter | 详情页无筛选需求 |
|