@microi.net/cli 5.7.7 → 5.7.9
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/.codebuddy-plugin/marketplace.json +2 -2
- package/.codebuddy-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.workbuddy-plugin/marketplace.json +2 -2
- package/.workbuddy-plugin/plugin.json +1 -1
- package/LICENSE +21 -21
- package/README.md +71 -71
- package/assets/build-meta.json +6 -6
- package/assets/feature-matrix.json +138 -138
- package/assets/logo.svg +4 -4
- package/cordis.patch.yml +1 -1
- package/package.json +1 -1
- package/scripts/mcp-codex-stdio-adapter.js +0 -0
- package/scripts/mcp-server.js +102 -101
- package/scripts/microi-cli.js +57 -57
- package/scripts/microi-codex-broker.js +450 -450
- package/scripts/microi-codex-router.js +0 -0
- package/scripts/microi-skills.meta.json +366 -366
- package/skills/.microi-skills-version.json +2 -2
- package/skills/.progressive-disclosure-manifest.json +27 -27
- package/skills/README.md +286 -286
- package/skills/ai-engine/SKILL.md +265 -265
- package/skills/ai-engine/agents/openai.yaml +4 -4
- package/skills/ai-platform-governance/SKILL.md +177 -177
- package/skills/ai-platform-governance/references/progressive-01-/345/212/237/350/203/275/345/274/200/345/205/263.md +190 -190
- package/skills/app-store/SKILL.md +392 -396
- package/skills/app-store/agents/openai.yaml +4 -4
- package/skills/business-blueprint/SKILL.md +193 -193
- package/skills/datasource-engine/SKILL.md +90 -90
- package/skills/datasource-engine/agents/openai.yaml +4 -4
- package/skills/dos-orm/references/api-reference.md +229 -229
- package/skills/email-engine/SKILL.md +78 -78
- package/skills/email-engine/references/v8-email.md +34 -34
- package/skills/job-engine/SKILL.md +171 -172
- package/skills/job-engine/agents/openai.yaml +4 -4
- package/skills/message-notification/SKILL.md +155 -156
- package/skills/message-notification/agents/openai.yaml +5 -5
- package/skills/message-notification/references/contracts.md +102 -102
- package/skills/microi-ai-app-auth.js +652 -652
- package/skills/microi-ai-application/SKILL.md +102 -106
- package/skills/microi-ai-application/agents/openai.yaml +4 -4
- package/skills/microi-ai-application/references/frontend-baseline.md +164 -164
- package/skills/microi-client-frontend/SKILL.md +235 -240
- package/skills/microi-client-frontend/references/progressive-01-3-/345/212/250/346/200/201/346/214/211/351/222/256/347/263/273/347/273/237.md +144 -144
- package/skills/microi-client-frontend/references/progressive-02-8-/350/277/220/350/241/214/346/227/266/351/253/230/351/242/221/345/235/221/345/244/215/347/233/230.md +196 -196
- package/skills/microi-client-frontend/references/progressive-03-vue3-/345/211/215/347/253/257/345/276/256/346/234/215/345/212/241/345/256/277/344/270/273/350/247/204/345/210/231.md +167 -167
- package/skills/microi-codex/SKILL.md +75 -75
- package/skills/microi-codex-installer/SKILL.md +225 -223
- package/skills/microi-codex-installer/agents/openai.yaml +7 -7
- package/skills/microi-datasource-mapping/SKILL.md +107 -111
- package/skills/microi-db-schema/SKILL.md +175 -175
- package/skills/microi-db-schema/agents/openai.yaml +4 -4
- package/skills/microi-db-schema/references/core-tables.md +695 -695
- package/skills/microi-db-schema/references/form-component-options.md +256 -256
- package/skills/microi-db-schema/references/schema-overview.md +202 -202
- package/skills/microi-db-schema/references/schema.md +646 -646
- package/skills/microi-db-schema/references/table-catalog.md +1599 -1599
- package/skills/microi-deployment/references/deployment-matrix.md +101 -101
- package/skills/microi-docs-coverage/references/capability-map.md +0 -1
- package/skills/microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs +894 -894
- package/skills/microi-form-engine/SKILL.md +226 -226
- package/skills/microi-form-engine/references/component-catalog.md +216 -216
- package/skills/microi-form-engine/references/data-source-events.md +124 -124
- package/skills/microi-form-layout/SKILL.md +205 -205
- package/skills/microi-form-layout/references/progressive-01-3-/344/270/211/347/247/215/345/210/206/347/273/204/347/232/204/345/255/230/345/202/250/344/270/216/351/205/215/347/275/256.md +235 -235
- package/skills/microi-frontend-sdk/SKILL.md +188 -188
- package/skills/microi-frontend-sdk/references/progressive-01-token-/345/275/223/345/211/215/347/231/273/345/275/225/347/224/250/346/210/267/344/270/216/345/275/223/345/211/215/347/273/210/347/253/257/347/231/273/345/275/225/345/215/217/350/256/256.md +176 -176
- package/skills/microi-left-right-layout/SKILL.md +141 -141
- package/skills/microi-microservice/SKILL.md +322 -323
- package/skills/microi-microservice/references/runtime-delivery.md +278 -278
- package/skills/microi-mobile-app-quality/SKILL.md +181 -181
- package/skills/microi-mobile-app-quality/references/progressive-01-4-/351/207/215/350/246/201/346/214/211/351/222/256/345/277/205/351/241/273/345/270/246/345/233/276/346/240/207.md +213 -213
- package/skills/microi-mobile-app-quality/references/progressive-02-9-/344/270/273/351/242/230/345/210/207/346/215/242/345/277/205/351/241/273/347/234/237/345/256/236/344/270/224/345/205/250/345/261/200/347/224/237/346/225/210.md +128 -128
- package/skills/microi-solution-quotation/SKILL.md +78 -78
- package/skills/microi-solution-quotation/agents/openai.yaml +4 -4
- package/skills/microi-solution-quotation/scripts/build_solution_quote.py +296 -296
- package/skills/microi-sso/references/acceptance.md +49 -49
- package/skills/microi-sso/references/configuration-and-security.md +53 -53
- package/skills/microi-sso/references/inbound.md +53 -53
- package/skills/microi-sso/references/outbound.md +39 -39
- package/skills/microi-system-delivery/SKILL.md +134 -134
- package/skills/microi-system-delivery/references/progressive-01-/346/240/207/345/207/206/345/267/245/344/275/234/346/265/201.md +193 -193
- package/skills/microi-system-delivery/references/progressive-02-/350/207/252/345/212/250/345/214/226/346/265/213/350/257/225/345/277/205/351/241/273/350/246/206/347/233/226/347/232/204/345/235/221.md +189 -189
- package/skills/microi-ui/SKILL.md +174 -174
- package/skills/microi-ui/references/progressive-01-/347/247/273/345/212/250/347/253/257/345/234/272/346/231/257/350/223/235/345/233/276.md +183 -183
- package/skills/microi-uniapp-frontend/SKILL.md +193 -193
- package/skills/microi-uniapp-frontend/references/progressive-01-/347/247/273/345/212/250/347/253/257/345/210/206/347/261/273-/345/217/214/346/240/217/345/210/227/350/241/250/347/213/254/347/253/213/346/273/232/345/212/250.md +225 -225
- package/skills/microi-uniapp-frontend/references/progressive-02-/345/205/263/351/224/256/344/270/232/345/212/241/350/265/204/344/272/247/344/270/215/345/276/227/351/273/230/350/256/244/351/200/211/344/270/255.md +154 -154
- package/skills/microi.v8.js +1921 -1921
- package/skills/module-engine/SKILL.md +237 -250
- package/skills/module-engine/references/module-config.md +204 -204
- package/skills/ocr-engine/SKILL.md +113 -113
- package/skills/ocr-engine/agents/openai.yaml +4 -4
- package/skills/page-engine/SKILL.md +180 -191
- package/skills/page-engine/references/progressive-01-/346/211/200/346/234/211/347/273/204/344/273/266/347/261/273/345/236/213.md +234 -234
- package/skills/page-engine/references/progressive-02-/347/211/210/346/234/254/345/216/206/345/217/262-/345/271/266/345/217/221/344/277/235/345/255/230/344/270/216/345/233/236/346/273/232.md +60 -60
- package/skills/performance-testing/SKILL.md +221 -221
- package/skills/playwright-e2e/SKILL.md +197 -197
- package/skills/playwright-e2e/references/progressive-01-/345/205/250/350/207/252/345/212/250/347/231/273/345/275/225-/345/205/215/351/252/214/350/257/201/347/240/201-/344/275/206/344/270/215/345/205/215/345/257/206/347/240/201-/345/277/205/350/257/273.md +173 -173
- package/skills/playwright-e2e/references/progressive-02-/346/226/207/345/255/227/345/257/271/346/257/224/345/272/246/344/270/216/345/217/257/350/257/273/346/200/247/350/207/252/345/212/250/345/214/226/346/243/200/346/237/245-/345/277/205/345/201/232.md +183 -183
- package/skills/playwright-e2e/references/progressive-03-microi-helper-/346/250/241/346/235/277.md +221 -221
- package/skills/playwright-e2e/references/progressive-04-ci-/345/273/272/350/256/256.md +115 -115
- package/skills/print-engine/SKILL.md +259 -259
- package/skills/production-readonly-audit/SKILL.md +41 -41
- package/skills/report-engine/SKILL.md +71 -71
- package/skills/report-engine/agents/openai.yaml +4 -4
- package/skills/scripts/optimize-progressive-disclosure.mjs +204 -204
- package/skills/scripts/refresh-progressive-disclosure.mjs +64 -64
- package/skills/search-engine/SKILL.md +75 -75
- package/skills/search-engine/agents/openai.yaml +4 -4
- package/skills/spider-engine/SKILL.md +190 -190
- package/skills/system-observability/SKILL.md +238 -238
- package/skills/system-observability/references/memory-incident-triage.md +70 -70
- package/skills/translate-engine/SKILL.md +140 -140
- package/skills/translate-engine/agents/openai.yaml +4 -4
- package/skills/ui-design/SKILL.md +191 -191
- package/skills/ui-design/assets/templates/MCI-DESIGN.md +198 -198
- package/skills/ui-design/references/design-pattern-library.md +184 -184
- package/skills/ui-design/references/mci-design-contract.md +163 -163
- package/skills/ui-design/references/progressive-01-/351/242/234/350/211/262/344/275/223/347/263/273-css-variables-/346/224/257/346/214/201/344/270/273/351/242/230/345/210/207/346/215/242.md +218 -218
- package/skills/ui-design/references/progressive-02-/345/255/227/344/275/223.md +137 -137
- package/skills/ui-design/references/progressive-03-/345/212/250/346/225/210/350/247/204/350/214/203-/344/270/260/345/257/214/344/275/206/344/270/215/345/215/241.md +235 -235
- package/skills/ui-design/references/progressive-04-/347/273/204/344/273/266/351/243/216/346/240/274/351/200/237/346/237/245.md +152 -152
- package/skills/ui-design/references/progressive-05-/347/247/273/345/212/250/347/253/257/344/270/223/347/224/250/350/247/204/350/214/203.md +238 -238
- package/skills/ui-design/references/progressive-06-/344/270/273/351/242/230/345/210/207/346/215/242/345/256/236/347/216/260.md +194 -194
- package/skills/ui-design/references/progressive-07-/351/200/237/346/237/245-/344/273/216/345/244/264/346/220/255/345/273/272/344/270/200/344/270/252/347/247/273/345/212/250/347/253/257/351/241/265/351/235/242.md +207 -207
- package/skills/ui-design/references/progressive-08-/350/241/250/345/215/225/345/210/206/347/273/204/350/247/204/350/214/203-tabs-vs-collapsegroup-/345/274/272/345/210/266.md +117 -117
- package/skills/uniapp-mall-assets/SKILL.md +176 -176
- package/skills/unity-integration/SKILL.md +155 -155
- package/skills/unity-integration/agents/openai.yaml +4 -4
- package/skills/unity-integration/references/ai-app-delivery.md +103 -103
- package/skills/unity-integration/references/sdk-api.md +82 -82
- package/skills/unity-integration/references/toolbox-migration.md +66 -66
- package/skills/unity-integration/references/webgl-hosting.md +57 -57
- package/skills/v8-cache-pattern/SKILL.md +306 -306
- package/skills/v8-crud-api/SKILL.md +175 -175
- package/skills/v8-crud-api/references/progressive-01-/346/237/245/350/257/242/345/210/227/350/241/250-/345/210/206/351/241/265.md +226 -226
- package/skills/v8-crud-api/references/progressive-02-where-/346/235/241/344/273/266/350/257/255/346/263/225/351/200/237/346/237/245.md +49 -49
- package/skills/v8-debugging/SKILL.md +284 -284
- package/skills/v8-explorer-tree/SKILL.md +228 -228
- package/skills/v8-export-import/SKILL.md +209 -209
- package/skills/v8-export-import/references/progressive-01-excellayout-/351/253/230/347/272/247/350/207/252/347/224/261/345/270/203/345/261/200.md +211 -211
- package/skills/v8-export-import/references/progressive-02-powerpoint-/345/257/274/345/207/272.md +202 -202
- package/skills/v8-export-import/references/progressive-03-/345/256/211/345/205/250-/346/200/247/350/203/275/346/263/250/346/204/217.md +42 -42
- package/skills/v8-file-upload/SKILL.md +256 -263
- package/skills/v8-file-upload/references/progressive-01-/345/205/254/346/234/211/346/241/266-vs-/347/247/201/346/234/211/346/241/266.md +101 -101
- package/skills/v8-file-upload/references/progressive-02-office-/346/226/207/344/273/266/345/234/250/347/272/277/347/274/226/350/276/221/347/211/210/346/234/254/345/217/267/350/247/204/345/210/231.md +150 -150
- package/skills/v8-formengine-http/SKILL.md +219 -219
- package/skills/v8-frontend-events/SKILL.md +178 -178
- package/skills/v8-frontend-events/references/bluetooth-print-api.md +135 -135
- package/skills/v8-frontend-events/references/bluetooth-print.md +246 -246
- package/skills/v8-frontend-events/references/progressive-01-/345/210/227/350/241/250/344/272/213/344/273/266.md +219 -219
- package/skills/v8-http-integration/SKILL.md +182 -182
- package/skills/v8-http-integration/references/progressive-01-get-/350/257/267/346/261/202.md +220 -220
- package/skills/v8-http-integration/references/progressive-02-/351/224/231/350/257/257/345/244/204/347/220/206/346/250/241/345/274/217.md +44 -44
- package/skills/v8-image-processing/SKILL.md +190 -190
- package/skills/v8-image-processing/agents/openai.yaml +4 -4
- package/skills/v8-image-processing/references/api-reference.md +623 -623
- package/skills/v8-menu-buttons/SKILL.md +180 -180
- package/skills/v8-menu-buttons/references/progressive-01-2-/346/214/211/351/222/256/345/257/271/350/261/241-schema.md +222 -222
- package/skills/v8-menu-buttons/references/progressive-02-8-/346/250/241/345/274/217-f-/345/220/216/345/217/260/344/273/273/345/212/241/346/214/211/351/222/256-/351/225/277/344/273/273/345/212/241.md +228 -228
- package/skills/v8-menu-buttons/references/progressive-03-10-/345/217/215/346/250/241/345/274/217-/351/201/277/345/205/215.md +104 -104
- package/skills/v8-mongodb/SKILL.md +192 -192
- package/skills/v8-mq-mqtt/SKILL.md +175 -176
- package/skills/v8-mq-mqtt/references/mqtt-production.md +342 -342
- package/skills/v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-/347/211/251/350/201/224/347/275/221.md +181 -181
- package/skills/v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs +203 -203
- package/skills/v8-saas-multi-tenant/SKILL.md +219 -219
- package/skills/v8-security/SKILL.md +168 -168
- package/skills/v8-security/references/progressive-01-2-/346/235/203/351/231/220/346/240/241/351/252/214.md +198 -198
- package/skills/v8-security/references/progressive-02-7-/346/227/245/345/277/227/350/256/260/345/275/225.md +158 -158
- package/skills/v8-sql-query/SKILL.md +302 -302
- package/skills/v8-table-event/SKILL.md +144 -144
- package/skills/v8-table-event/references/progressive-01-informv8-js-/350/241/250/345/215/225/346/211/223/345/274/200/344/272/213/344/273/266.md +197 -197
- package/skills/v8-table-event/references/progressive-02-/345/211/215/347/253/257/344/272/213/344/273/266/345/220/215-v8-eventname-/345/217/257/350/203/275/347/232/204/345/200/274.md +46 -46
- package/skills/v8-tcp-integration/SKILL.md +147 -147
- package/skills/v8-tcp-integration/agents/openai.yaml +4 -4
- package/skills/v8-template-engine/SKILL.md +167 -167
- package/skills/v8-utilities/SKILL.md +90 -90
- package/skills/v8-utilities/references/client-api-index.md +143 -143
- package/skills/v8-utilities/references/platform-http-routes.md +83 -83
- package/skills/v8-utilities/references/server-api-index.md +188 -188
- package/skills/v8-workflow/SKILL.md +216 -243
- package/skills/v8-workflow/references/progressive-01-/350/212/202/347/202/271/345/274/200/345/247/213-v8-/344/272/213/344/273/266.md +180 -180
- package/skills/vision-engine/SKILL.md +159 -159
- package/skills/vision-engine/agents/openai.yaml +4 -4
- package/skills/vision-engine/references/architecture-and-acceptance.md +194 -194
- package/skills/workspace-conventions/SKILL.md +261 -261
- package/skills/workspace-conventions/references/progressive-01-/347/211/210/346/234/254/346/233/264/346/226/260/346/227/245/345/277/227/344/277/235/346/212/244/350/247/204/345/210/231-/345/274/272/345/210/266.md +208 -208
- package/skills/workspace-conventions/references/progressive-02-microi-net-api-/346/234/254/345/234/260/345/220/257/345/212/250/347/272/246/345/256/232.md +216 -216
- package/skills/workspace-conventions/references/progressive-03-cli-/344/270/216-ide-/346/217/222/344/273/266/351/224/231/347/211/210/345/205/261/345/255/230/347/272/246/345/256/232.md +27 -27
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ui-design
|
|
3
|
-
description: Microi UI 设计系统指南。用于设计 PC Vue、Element Plus、uni-app H5、仪表盘、表单、卡片、渐变、响应式布局、骨架屏、移动安全区和视觉打磨。
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
> **Codex 非阻塞自动更新:** 当前宿主为 Codex 时,吾码 CLI、Codex 插件与工作区 AI/MCP 由后台自动更新;需要诊断时读取 `../microi-codex-installer/SKILL.md`。更新失败、等待空闲或尚未重载均不得阻断当前、正在进行或新建任务。非 Codex 宿主跳过此项。
|
|
7
|
-
|
|
8
|
-
# Microi吾码设计规范
|
|
9
|
-
|
|
10
|
-
你正在为 Microi 吾码平台创建界面。所有页面、组件、弹窗必须遵循本规范,打造高级、克制、具有科技感和品牌识别度的视觉体验。
|
|
11
|
-
|
|
1
|
+
---
|
|
2
|
+
name: ui-design
|
|
3
|
+
description: Microi UI 设计系统指南。用于设计 PC Vue、Element Plus、uni-app H5、仪表盘、表单、卡片、渐变、响应式布局、骨架屏、移动安全区和视觉打磨。
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
> **Codex 非阻塞自动更新:** 当前宿主为 Codex 时,吾码 CLI、Codex 插件与工作区 AI/MCP 由后台自动更新;需要诊断时读取 `../microi-codex-installer/SKILL.md`。更新失败、等待空闲或尚未重载均不得阻断当前、正在进行或新建任务。非 Codex 宿主跳过此项。
|
|
7
|
+
|
|
8
|
+
# Microi吾码设计规范
|
|
9
|
+
|
|
10
|
+
你正在为 Microi 吾码平台创建界面。所有页面、组件、弹窗必须遵循本规范,打造高级、克制、具有科技感和品牌识别度的视觉体验。
|
|
11
|
+
|
|
12
12
|
> **适用平台**:PC 端(Vue 3 + Element Plus + SCSS)、移动端 H5/uni-app/原生 WebView(纯 CSS / 无第三方组件库)
|
|
13
13
|
> **核心理念**:高级但不浮夸,动效丰富但可维护,多端统一同时尊重平台差异
|
|
14
14
|
> **变量前缀**:所有 CSS 变量统一使用 `--mci-` 前缀(Microi Interface)
|
|
15
15
|
|
|
16
16
|
---
|
|
17
|
-
|
|
18
|
-
<!-- microi-progressive:begin -->
|
|
17
|
+
|
|
18
|
+
<!-- microi-progressive:begin -->
|
|
19
19
|
<!-- microi-progressive:chunk id=ui-design-000 sha256=ba7fc233da47ef8d477540bc5a2b982eb0fef852cfffe9da12e5c0d03a57614d -->
|
|
20
20
|
## 整体风格定义
|
|
21
21
|
|
|
@@ -28,173 +28,173 @@ description: Microi UI 设计系统指南。用于设计 PC Vue、Element Plus
|
|
|
28
28
|
- **主题适配**:所有颜色、表面、边界、阴影和交互状态必须使用语义 token,适配任意租户主题色,并同时覆盖亮色、暗色模式;不得只在默认主题下成立。
|
|
29
29
|
- **视觉验收**:至少选择浅色、暗色及一个非默认租户主题色,检查文本对比度、焦点态、状态色、悬停与禁用状态。
|
|
30
30
|
- **风格关键词**:高级、通透、科技感、品牌化、轻量精致、视觉张力。
|
|
31
|
-
- **质感**:柔和多层阴影、清晰边界、结构化光影、细腻纹理、精致微动效。
|
|
32
|
-
- **氛围**:默认亮色多彩主题(colorful + gradient + soft shadow),暗黑主题作为可选切换;避免廉价装饰,优先用布局、层级、动效和真实内容建立高级感。
|
|
33
|
-
- **参考吸收**:可参考成熟移动端 UI 灵感库的组件完整度、色彩节奏、入场动效和模板化能力,但 Microi 视觉必须通过 `--mci-*` token 与 MCI-UI 组件形成自己的品牌系统,不照搬第三方外观,也不在吾码源码、文档或样式命名中保留外部 UI 品牌痕迹。
|
|
34
|
-
|
|
35
|
-
### Microi 设计模式选择(必须)
|
|
36
|
-
|
|
37
|
-
- 当需求只描述“高级、主流、好看”而没有明确视觉方向时,先从 Microi 内置模式中确定一种主结构:品牌叙事、真实产品流程、趋势构图、沉浸互动、动态首屏或数据工作台;再选择至多两种辅助能力。禁止把多套视觉语言堆成拼盘。
|
|
38
|
-
- 设计结果必须被拆成可执行规则:首屏目标、信息层级、栅格与最大宽度、字体层级、语义颜色、间距、圆角/阴影、组件状态、动效时间线、响应式重排、低性能降级和 `prefers-reduced-motion`。
|
|
39
|
-
- 先完成默认、加载、空、错误、成功、权限、禁用等真实业务状态,再增加装饰和动效;任何看起来可点击的元素都必须有真实结果。
|
|
40
|
-
- 所有异步内容加载统一使用贴合最终几何的主题骨架;菜单切换、首页、表格、表单/详情、弹窗和远程媒体都不得退回半透明黑色遮罩。具体实现、主题令牌与状态边界读取 [references/progressive-02-字体.md](references/progressive-02-字体.md)。
|
|
41
|
-
- 所有成品只使用 Microi 自有内容、`--mci-*` token、`mci-*` 组件/类名和项目合法资产。禁止复制第三方页面、源码、图片、字体、3D 模型、商标或原始设计 token。
|
|
42
|
-
- 设计前必须读取 [references/design-pattern-library.md](references/design-pattern-library.md);涉及登录、订阅、支付、权限、搜索、设置等流程时再读 [references/product-flow-recipes.md](references/product-flow-recipes.md);涉及滚动、3D、Canvas/WebGL 或动态 Hero 时再读 [references/motion-and-media.md](references/motion-and-media.md);生成整站或交给 AI 延续设计时使用 [references/mci-design-contract.md](references/mci-design-contract.md)。
|
|
43
|
-
- 可运行原创案例位于 [assets/pattern-showcase/index.html](assets/pattern-showcase/index.html),用于理解结构和状态,不作为需要逐像素复制的模板。
|
|
44
|
-
|
|
45
|
-
### 可执行设计契约(整站与长期项目强制)
|
|
46
|
-
|
|
47
|
-
- `MCI-DESIGN.md` 必须同时维护机器可读层和人类可读层:前者保存精确 token、引用和组件状态,后者保存目标用户、情绪、具体视觉隐喻、选择理由和禁区。只有 token 会失去取舍依据,只有形容词无法稳定实现。
|
|
48
|
-
- 设计意图按“用户任务 → 主情绪 → 具体视觉隐喻 → 应当/禁止 → token 与组件”收敛。具体隐喻必须能自然约束色彩、材质、密度、形状和动效;禁止只堆“高级、现代、极简、科技”等宽泛词。
|
|
49
|
-
- 核心章节固定为:产品与用户、视觉性格、颜色、字体、布局与间距、层级与形状、组件与状态、页面模式、动效与媒体、响应式、安全与降级、应当与禁止。扩展章节放在末尾,未知扩展要保留,核心章节不得重复或用近似拼写另起一套。
|
|
50
|
-
- token 使用语义命名并允许组件以 `{路径}` 复用;必须检查缺失/循环引用、错误类型、主色缺失、透明色叠加底、对比度、孤立 token、未覆盖状态和无理由省略。组件至少按适用场景定义 default/hover/focus/pressed/loading/empty/error/disabled/selected/success。
|
|
51
|
-
- 契约与实现必须一起评审差异;意外删除、重命名、大范围 token 漂移或只改契约不改页面都视为未完成。运行时变量或其它主题格式只能从已校验的机器块派生,禁止维护第二份手工 token。
|
|
52
|
-
- 契约格式必须锁定版本,升级时先检查语义差异再迁移;跨平台校验脚本提供稳定入口。完整结构、示例与验收见 [references/mci-design-contract.md](references/mci-design-contract.md),新项目复制 [assets/templates/MCI-DESIGN.md](assets/templates/MCI-DESIGN.md)。
|
|
53
|
-
|
|
54
|
-
---
|
|
55
|
-
|
|
56
|
-
<!-- /microi-progressive:chunk -->
|
|
57
|
-
<!-- microi-progressive:chunk id=ui-design-001 sha256=9593e1ab2bf4931cf4f0d96b87ce59c04a8d340dbf30c705f90375ec38d131fd -->
|
|
58
|
-
## 样式隔离与抗覆盖
|
|
59
|
-
|
|
60
|
-
- Microi.UI 页面或局部 UI 必须使用 `.mci-page`、`data-mci-ui-root` 或项目级 `.mci-*` 根容器包裹,避免被宿主项目、第三方组件库、Markdown 渲染器的全局 CSS 意外覆盖。
|
|
61
|
-
- 所有可复用组件必须使用 `mci-` 前缀和 BEM 风格类名;不要写全局 `button`、`input`、`img`、`table`、`div` 选择器。确实需要 reset 时必须限制在 `.mci-page` 或 `[data-mci-ui-root]` 内。
|
|
62
|
-
- 业务页面不得用高优先级全局选择器覆盖 MCI 组件,例如 `.card *`、`button {}`、`img {}`、`.page .mci-card {}`。需要定制时用组件 props、CSS 变量或项目级 wrapper。
|
|
63
|
-
- 第三方 UI 组件必须放在项目 wrapper 内,例如 `.mci-third-party-scope`,颜色、圆角、阴影、间距映射到 `--mci-*` token,而不是直接把第三方默认主题暴露到页面。
|
|
64
|
-
- Web 项目优先用 Vue `scoped` / CSS Modules / 明确命名空间;uni-app 项目优先用页面级 `mci-*` 根类和组件根类。新增全局样式前必须检查是否会影响其它项目页面。
|
|
65
|
-
- 文档站、官网、企业站这类 Markdown/VitePress 项目,应在主题层统一收口视觉,不要在每一篇文档里写互相竞争的散装 CSS。
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
<!-- /microi-progressive:chunk -->
|
|
70
|
-
<!-- microi-progressive:chunk id=ui-design-002 sha256=0d1bac0d19d61d288a6eb25f18fc15a045bca3df9a01399d5ce5224c8accffd3 -->
|
|
71
|
-
## 高端视觉标准
|
|
72
|
-
|
|
73
|
-
- 每个新页面必须有首屏视觉重心:核心数据、主任务、产品/品牌对象或可操作内容应在第一屏明确出现,不能只有说明文字或空白装饰。
|
|
74
|
-
- 页面进入必须有轻量入场动效,默认使用 `mci-page-enter` / `mci-fade-up`;列表、商品、指标卡使用 30-60ms 交错延迟,不能整页同时僵硬出现。
|
|
75
|
-
- 页面停留时允许微弱的停留动效:扫光、细线流动、图标轻浮动、状态光标闪烁等;振幅必须小,且只用 `transform` / `opacity` / `background-position`。
|
|
76
|
-
- 所有可点击元素必须有三态反馈:默认、hover/focus、active/pressed;PC 使用 hover lift,移动端使用按压缩放或背景反馈。
|
|
77
|
-
- 扁平风格也要有层次:减少圆角不等于没有阴影,必须保留细边框、柔和投影、hover 伪元素阴影和清晰分组。
|
|
78
|
-
- 背景装饰优先使用结构化方案:网格、细线、扫描高光、低透明纹理、内容相关图片或 3D 场景;不要使用离散光球、散点噪声、模糊色块堆叠作为主要视觉。
|
|
79
|
-
- 导航栏必须和首屏背景属于同一视觉语境:深色英雄区使用深色玻璃或透明暗底导航,浅色内容页才使用浅色导航;导航文字、Logo、搜索框和下拉入口必须截图检查对比度。
|
|
80
|
-
- 主按钮/胶囊按钮必须使用 `inline-flex` 或等价布局垂直居中,明确 `align-items:center`、`justify-content:center`、稳定高度和 `line-height:1`;不能只靠 padding 让文字“看起来差不多”。
|
|
81
|
-
- 按钮、标签、Tab、空态行动按钮、登录/授权入口等只要文字语义是居中呈现,就必须同时做到上下居中和左右居中;截图或视觉断言发现文字偏上、偏下、偏左、偏右都算未完成。
|
|
31
|
+
- **质感**:柔和多层阴影、清晰边界、结构化光影、细腻纹理、精致微动效。
|
|
32
|
+
- **氛围**:默认亮色多彩主题(colorful + gradient + soft shadow),暗黑主题作为可选切换;避免廉价装饰,优先用布局、层级、动效和真实内容建立高级感。
|
|
33
|
+
- **参考吸收**:可参考成熟移动端 UI 灵感库的组件完整度、色彩节奏、入场动效和模板化能力,但 Microi 视觉必须通过 `--mci-*` token 与 MCI-UI 组件形成自己的品牌系统,不照搬第三方外观,也不在吾码源码、文档或样式命名中保留外部 UI 品牌痕迹。
|
|
34
|
+
|
|
35
|
+
### Microi 设计模式选择(必须)
|
|
36
|
+
|
|
37
|
+
- 当需求只描述“高级、主流、好看”而没有明确视觉方向时,先从 Microi 内置模式中确定一种主结构:品牌叙事、真实产品流程、趋势构图、沉浸互动、动态首屏或数据工作台;再选择至多两种辅助能力。禁止把多套视觉语言堆成拼盘。
|
|
38
|
+
- 设计结果必须被拆成可执行规则:首屏目标、信息层级、栅格与最大宽度、字体层级、语义颜色、间距、圆角/阴影、组件状态、动效时间线、响应式重排、低性能降级和 `prefers-reduced-motion`。
|
|
39
|
+
- 先完成默认、加载、空、错误、成功、权限、禁用等真实业务状态,再增加装饰和动效;任何看起来可点击的元素都必须有真实结果。
|
|
40
|
+
- 所有异步内容加载统一使用贴合最终几何的主题骨架;菜单切换、首页、表格、表单/详情、弹窗和远程媒体都不得退回半透明黑色遮罩。具体实现、主题令牌与状态边界读取 [references/progressive-02-字体.md](references/progressive-02-字体.md)。
|
|
41
|
+
- 所有成品只使用 Microi 自有内容、`--mci-*` token、`mci-*` 组件/类名和项目合法资产。禁止复制第三方页面、源码、图片、字体、3D 模型、商标或原始设计 token。
|
|
42
|
+
- 设计前必须读取 [references/design-pattern-library.md](references/design-pattern-library.md);涉及登录、订阅、支付、权限、搜索、设置等流程时再读 [references/product-flow-recipes.md](references/product-flow-recipes.md);涉及滚动、3D、Canvas/WebGL 或动态 Hero 时再读 [references/motion-and-media.md](references/motion-and-media.md);生成整站或交给 AI 延续设计时使用 [references/mci-design-contract.md](references/mci-design-contract.md)。
|
|
43
|
+
- 可运行原创案例位于 [assets/pattern-showcase/index.html](assets/pattern-showcase/index.html),用于理解结构和状态,不作为需要逐像素复制的模板。
|
|
44
|
+
|
|
45
|
+
### 可执行设计契约(整站与长期项目强制)
|
|
46
|
+
|
|
47
|
+
- `MCI-DESIGN.md` 必须同时维护机器可读层和人类可读层:前者保存精确 token、引用和组件状态,后者保存目标用户、情绪、具体视觉隐喻、选择理由和禁区。只有 token 会失去取舍依据,只有形容词无法稳定实现。
|
|
48
|
+
- 设计意图按“用户任务 → 主情绪 → 具体视觉隐喻 → 应当/禁止 → token 与组件”收敛。具体隐喻必须能自然约束色彩、材质、密度、形状和动效;禁止只堆“高级、现代、极简、科技”等宽泛词。
|
|
49
|
+
- 核心章节固定为:产品与用户、视觉性格、颜色、字体、布局与间距、层级与形状、组件与状态、页面模式、动效与媒体、响应式、安全与降级、应当与禁止。扩展章节放在末尾,未知扩展要保留,核心章节不得重复或用近似拼写另起一套。
|
|
50
|
+
- token 使用语义命名并允许组件以 `{路径}` 复用;必须检查缺失/循环引用、错误类型、主色缺失、透明色叠加底、对比度、孤立 token、未覆盖状态和无理由省略。组件至少按适用场景定义 default/hover/focus/pressed/loading/empty/error/disabled/selected/success。
|
|
51
|
+
- 契约与实现必须一起评审差异;意外删除、重命名、大范围 token 漂移或只改契约不改页面都视为未完成。运行时变量或其它主题格式只能从已校验的机器块派生,禁止维护第二份手工 token。
|
|
52
|
+
- 契约格式必须锁定版本,升级时先检查语义差异再迁移;跨平台校验脚本提供稳定入口。完整结构、示例与验收见 [references/mci-design-contract.md](references/mci-design-contract.md),新项目复制 [assets/templates/MCI-DESIGN.md](assets/templates/MCI-DESIGN.md)。
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
<!-- /microi-progressive:chunk -->
|
|
57
|
+
<!-- microi-progressive:chunk id=ui-design-001 sha256=9593e1ab2bf4931cf4f0d96b87ce59c04a8d340dbf30c705f90375ec38d131fd -->
|
|
58
|
+
## 样式隔离与抗覆盖
|
|
59
|
+
|
|
60
|
+
- Microi.UI 页面或局部 UI 必须使用 `.mci-page`、`data-mci-ui-root` 或项目级 `.mci-*` 根容器包裹,避免被宿主项目、第三方组件库、Markdown 渲染器的全局 CSS 意外覆盖。
|
|
61
|
+
- 所有可复用组件必须使用 `mci-` 前缀和 BEM 风格类名;不要写全局 `button`、`input`、`img`、`table`、`div` 选择器。确实需要 reset 时必须限制在 `.mci-page` 或 `[data-mci-ui-root]` 内。
|
|
62
|
+
- 业务页面不得用高优先级全局选择器覆盖 MCI 组件,例如 `.card *`、`button {}`、`img {}`、`.page .mci-card {}`。需要定制时用组件 props、CSS 变量或项目级 wrapper。
|
|
63
|
+
- 第三方 UI 组件必须放在项目 wrapper 内,例如 `.mci-third-party-scope`,颜色、圆角、阴影、间距映射到 `--mci-*` token,而不是直接把第三方默认主题暴露到页面。
|
|
64
|
+
- Web 项目优先用 Vue `scoped` / CSS Modules / 明确命名空间;uni-app 项目优先用页面级 `mci-*` 根类和组件根类。新增全局样式前必须检查是否会影响其它项目页面。
|
|
65
|
+
- 文档站、官网、企业站这类 Markdown/VitePress 项目,应在主题层统一收口视觉,不要在每一篇文档里写互相竞争的散装 CSS。
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
<!-- /microi-progressive:chunk -->
|
|
70
|
+
<!-- microi-progressive:chunk id=ui-design-002 sha256=0d1bac0d19d61d288a6eb25f18fc15a045bca3df9a01399d5ce5224c8accffd3 -->
|
|
71
|
+
## 高端视觉标准
|
|
72
|
+
|
|
73
|
+
- 每个新页面必须有首屏视觉重心:核心数据、主任务、产品/品牌对象或可操作内容应在第一屏明确出现,不能只有说明文字或空白装饰。
|
|
74
|
+
- 页面进入必须有轻量入场动效,默认使用 `mci-page-enter` / `mci-fade-up`;列表、商品、指标卡使用 30-60ms 交错延迟,不能整页同时僵硬出现。
|
|
75
|
+
- 页面停留时允许微弱的停留动效:扫光、细线流动、图标轻浮动、状态光标闪烁等;振幅必须小,且只用 `transform` / `opacity` / `background-position`。
|
|
76
|
+
- 所有可点击元素必须有三态反馈:默认、hover/focus、active/pressed;PC 使用 hover lift,移动端使用按压缩放或背景反馈。
|
|
77
|
+
- 扁平风格也要有层次:减少圆角不等于没有阴影,必须保留细边框、柔和投影、hover 伪元素阴影和清晰分组。
|
|
78
|
+
- 背景装饰优先使用结构化方案:网格、细线、扫描高光、低透明纹理、内容相关图片或 3D 场景;不要使用离散光球、散点噪声、模糊色块堆叠作为主要视觉。
|
|
79
|
+
- 导航栏必须和首屏背景属于同一视觉语境:深色英雄区使用深色玻璃或透明暗底导航,浅色内容页才使用浅色导航;导航文字、Logo、搜索框和下拉入口必须截图检查对比度。
|
|
80
|
+
- 主按钮/胶囊按钮必须使用 `inline-flex` 或等价布局垂直居中,明确 `align-items:center`、`justify-content:center`、稳定高度和 `line-height:1`;不能只靠 padding 让文字“看起来差不多”。
|
|
81
|
+
- 按钮、标签、Tab、空态行动按钮、登录/授权入口等只要文字语义是居中呈现,就必须同时做到上下居中和左右居中;截图或视觉断言发现文字偏上、偏下、偏左、偏右都算未完成。
|
|
82
82
|
- 所有弹窗/对话框默认必须上下左右居中;PC 端应支持通过标题栏拖动,拖动后仍保持在可视区域内;移动端如改为底部抽屉或全屏弹层必须有明确业务理由。弹窗不得贴在左上角、底部或被遮罩/导航/输入框遮挡,截图验收必须覆盖默认居中态和至少一次拖动后的可用状态。
|
|
83
83
|
- 菜单微服务中的“平台级详情/确认弹窗”必须通过宿主 `setGlobalOverlay` 能力让遮罩覆盖 Logo、侧栏、顶部页签和内容区,并锁定宿主滚动;子应用自身弹层仍保持可访问焦点、Esc 关闭和 body 滚动恢复。关闭、路由离开、异常及卸载都必须幂等撤销宿主遮罩,禁止只在 iframe/微应用内容矩形内铺一层假全屏遮罩。
|
|
84
|
-
- 禁止在任何交付界面中直接调用浏览器原生 `window.alert`、`window.confirm`、`window.prompt` 或其无前缀别名。简单提示优先使用吾码平台 `Tips`/`DiyCommon.Tips`,确认操作使用 `V8.ConfirmTips`、Element Plus `ElMessageBox`,独立微服务则使用符合本规范的可访问确认弹层;原生浏览器对话框会阻塞线程、无法主题化,也无法满足吾码视觉与自动化标准。
|
|
85
|
-
- Toast、错误反馈、提交结果和二次确认必须脱离业务滚动容器:优先 teleport/append 到 `body`,使用 `position:fixed`、明确遮罩和高于宿主弹窗的层级,并在当前可视区域上下左右居中。用户把长弹窗滚到任意位置后仍必须立刻看到完整提示;禁止把反馈放在内容顶部、滚动层内部或仅靠 `top: 0` 伪装固定。
|
|
86
|
-
- 确认框必须说明“即将执行什么、作用范围、当前任务状态、确认与取消动作”。只有真实检测到正在执行/排队任务时才能写“已有任务”;没有检测到时应明确“提交后新建任务”,并把并发到来时的排队策略作为条件说明,不能用固定模板误导用户。
|
|
87
|
-
- 同一类 UI 在两个及以上页面出现时,必须优先封装为 `Mci*` 或项目级 `mci-*` 组件,通过 props/slots/events 配置标题、说明、图标、按钮、路由、状态和少量变体;不要复制两份卡片、空态、登录提示、按钮组、筛选栏或底部操作栏。
|
|
84
|
+
- 禁止在任何交付界面中直接调用浏览器原生 `window.alert`、`window.confirm`、`window.prompt` 或其无前缀别名。简单提示优先使用吾码平台 `Tips`/`DiyCommon.Tips`,确认操作使用 `V8.ConfirmTips`、Element Plus `ElMessageBox`,独立微服务则使用符合本规范的可访问确认弹层;原生浏览器对话框会阻塞线程、无法主题化,也无法满足吾码视觉与自动化标准。
|
|
85
|
+
- Toast、错误反馈、提交结果和二次确认必须脱离业务滚动容器:优先 teleport/append 到 `body`,使用 `position:fixed`、明确遮罩和高于宿主弹窗的层级,并在当前可视区域上下左右居中。用户把长弹窗滚到任意位置后仍必须立刻看到完整提示;禁止把反馈放在内容顶部、滚动层内部或仅靠 `top: 0` 伪装固定。
|
|
86
|
+
- 确认框必须说明“即将执行什么、作用范围、当前任务状态、确认与取消动作”。只有真实检测到正在执行/排队任务时才能写“已有任务”;没有检测到时应明确“提交后新建任务”,并把并发到来时的排队策略作为条件说明,不能用固定模板误导用户。
|
|
87
|
+
- 同一类 UI 在两个及以上页面出现时,必须优先封装为 `Mci*` 或项目级 `mci-*` 组件,通过 props/slots/events 配置标题、说明、图标、按钮、路由、状态和少量变体;不要复制两份卡片、空态、登录提示、按钮组、筛选栏或底部操作栏。
|
|
88
88
|
- 卡片背景必须服务页面氛围:暗色科技背景上的展示卡、价格卡、聊天卡不应突然变成大面积灰白卡;浅色卡片只在整体页面转为浅色内容区时使用,并且要有过渡带或区块背景承接。
|
|
89
89
|
- 日志、告警、监控和审计表格的主标题与副标题默认各最多两行,使用 CSS line clamp 与原文 Tooltip/title 保留完整可读性;异常行、异常值和风险标签必须使用主题兼容的红色语义,并在悬停/聚焦时同时说明“可能原因、排查顺序、解决方案”,不能只显示红色数字。
|
|
90
90
|
- 驾驶舱/数据大屏风格必须跟随当前主题令牌并保持紧凑信息密度。持续动效仅允许少量低振幅 `transform`、`opacity`、`background-position`,页面隐藏、微服务 `afterhidden` 或低性能模式时暂停;必须实现 `prefers-reduced-motion` 静态降级,长表格启用虚拟化或 `content-visibility`,禁止每个单元格独立定时器、持续阴影/模糊重绘和高频全量图表重算。
|
|
91
|
-
|
|
92
|
-
---
|
|
93
|
-
|
|
94
|
-
<!-- /microi-progressive:chunk -->
|
|
95
|
-
<!-- microi-progressive:chunk id=ui-design-003 sha256=62b9d5696d23ded43a0a7c82d520b69ee8182269579c7171808325877144abd3 -->
|
|
96
|
-
## PC 后台菜单宫格 / 入口页规范
|
|
97
|
-
|
|
98
|
-
适用于 `sys_menu` 子菜单入口、工作台快捷入口、后台功能入口页。此类页面是操作入口,不是营销卡片墙,重点是密度克制、对齐稳定、快速识别。
|
|
99
|
-
|
|
100
|
-
- 宽屏不能无上限铺满一整行。1366-1920 宽度下推荐 6-8 个入口/行;超宽屏也不要因为 `repeat(auto-fill, minmax(..., 1fr))` 自动挤出 10 个以上入口。应使用固定/上限列宽、`max-width`、`justify-content:start` 控制节奏。
|
|
101
|
-
- 同一宫格内所有入口卡片必须宽高一致,优先使用固定 `width/height` 或 `aspect-ratio + max-width`。禁止让卡片随标题长度、是否有统计信息而高度不一致。
|
|
102
|
-
- 卡片内部必须建立固定槽位:图标区、标题区、辅助信息区。每张卡的图标、标题首行、统计胶囊应在同一水平线上;有无辅助信息都要通过固定 body 高度或预留槽位保持对齐。
|
|
103
|
-
- 标题与子菜单统计/辅助胶囊的间距控制在 4-6px,不能贴底,也不能和标题隔得很远。统计胶囊应跟随标题成为一个信息组。
|
|
104
|
-
- PC 卡片内边距不小于 14-18px,图标背景到卡片边缘不小于 16px;移动端内边距不小于 12px。不能出现图标、文字、统计贴边的效果。
|
|
105
|
-
- 标题最多两行并截断或自然换行,长词必须 `overflow-wrap:anywhere`,不允许撑破卡片。图标按钮、标题、统计文本都要垂直和水平对齐。
|
|
106
|
-
- 修改后必须截图验收 1366/1440/1920 桌面宽度和 390 左右移动宽度,检查每行数量、行列对齐、卡片内边距、标题与统计间距、文字溢出和横向滚动。
|
|
107
|
-
|
|
108
|
-
<!-- /microi-progressive:chunk -->
|
|
109
|
-
<!-- microi-progressive:chunk id=ui-design-004 sha256=5d3aebaa07bf0df572b5eadfbc567fa58138a78816f0edf25fcff1a93d914ac7 -->
|
|
110
|
-
## PC 后台数据卡片模式规范
|
|
111
|
-
|
|
112
|
-
适用于 `diy-table` 卡片模式、任务/应用/客户/资产列表。它是高频数据操作容器,不是营销海报或入口宫格。
|
|
113
|
-
|
|
114
|
-
- 信息顺序固定为“真实图片或紧凑身份标记 → 标题与状态 → 2—4 个关键字段 → 时间/辅助标签 → 操作区”。标题与状态在首屏可扫读,次要字段不能抢占标题层级。
|
|
115
|
-
- 配置了图片但某行无图时,用 40—44px 首字或业务图标承接身份;禁止生成大面积渐变、发光字母、旋转方块等伪图片占据内容高度。真实图片按稳定比例使用 `cover/contain`。
|
|
116
|
-
- 无显式配置时桌面默认四列,以最小可读宽度优先;显式 `TableCardCol` 配置必须保留。中等宽度降为三列/两列,移动端单列,禁止为“同屏更多”把标题和四个操作挤进过窄卡片。
|
|
117
|
-
- 卡片依靠表面、细边框、轻阴影和 1—2px hover lift 建立层级;不要给每张卡加顶部霓虹线、径向光斑、彩虹渐变或重投影。选中态只改边框/焦点环,不能导致网格跳动。
|
|
118
|
-
- 操作区优先一个主动作、一至两个次动作,其余进入“更多”;危险动作不得与主动作同权。按钮使用 8—10px 软圆角而非满屏胶囊,移动端高度不小于 44px。
|
|
119
|
-
- 整卡可打开详情时提供可见 `focus-visible`、Enter/Space 触发;内部按钮和选择控件阻止冒泡。骨架屏要复刻图片(如有)、标题、字段和按钮的最终几何,不能先显示大图骨架再塌缩为空白。
|
|
120
|
-
- 视觉验收至少覆盖:无图/有图、长标题、多个按钮、选中态、加载/空态、亮/暗主题、1366/1440/1920 桌面与 390 移动。
|
|
121
|
-
|
|
122
|
-
---
|
|
123
|
-
|
|
124
|
-
<!-- /microi-progressive:chunk -->
|
|
125
|
-
<!-- microi-progressive:chunk id=ui-design-005 sha256=99d3734279a75fe306ebf09943b0c550433d311c1df0b9cc63137aca835b9972 -->
|
|
126
|
-
## 形态模式(圆角 / 扁平)
|
|
127
|
-
|
|
128
|
-
Microi 项目必须支持用户或项目级形态偏好:`data-mci-shape="rounded"` 与 `data-mci-shape="flat"`。
|
|
129
|
-
|
|
130
|
-
```css
|
|
131
|
-
:root {
|
|
132
|
-
--mci-shape-card: var(--mci-radius-xl);
|
|
133
|
-
--mci-shape-panel: var(--mci-radius-lg);
|
|
134
|
-
--mci-shape-button: var(--mci-radius-pill);
|
|
135
|
-
--mci-shape-input: var(--mci-radius-md);
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
:root[data-mci-shape="rounded"] {
|
|
139
|
-
--mci-shape-card: 20px;
|
|
140
|
-
--mci-shape-panel: 16px;
|
|
141
|
-
--mci-shape-button: 999px;
|
|
142
|
-
--mci-shape-input: 12px;
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
:root[data-mci-shape="flat"] {
|
|
146
|
-
--mci-shape-card: 6px;
|
|
147
|
-
--mci-shape-panel: 4px;
|
|
148
|
-
--mci-shape-button: 4px;
|
|
149
|
-
--mci-shape-input: 4px;
|
|
150
|
-
}
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
- 圆角风格适合移动端商城、会员中心、消费类应用、品牌展示页。
|
|
154
|
-
- 扁平风格适合 B 端官网、数据看板、工具型 Web、强调效率的页面。
|
|
155
|
-
- 所有组件只引用 `--mci-shape-*`,不要在业务页面硬编码一堆 `border-radius`。
|
|
156
|
-
- 切换形态时只改变圆角 token,不改变布局尺寸,避免切换主题时页面跳动。
|
|
157
|
-
|
|
158
|
-
---
|
|
159
|
-
|
|
160
|
-
<!-- /microi-progressive:chunk -->
|
|
161
|
-
<!-- microi-progressive:chunk id=ui-design-006 sha256=f8d9a7c96a2c2696f82b596bdf1a7d02bed72ff796036c05d771ca3954bf68ba -->
|
|
162
|
-
## 圆角
|
|
163
|
-
|
|
164
|
-
```css
|
|
165
|
-
:root {
|
|
166
|
-
--mci-radius-sm: 8px;
|
|
167
|
-
--mci-radius-md: 12px;
|
|
168
|
-
--mci-radius-lg: 16px;
|
|
169
|
-
--mci-radius-xl: 20px;
|
|
170
|
-
--mci-radius-2xl: 24px;
|
|
171
|
-
--mci-radius-full: 9999px; /* 胶囊按钮 */
|
|
172
|
-
}
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
| 元素 | 圆角 |
|
|
176
|
-
|------|------|
|
|
177
|
-
| 小按钮/标签 | `--mci-radius-sm` (8px) |
|
|
178
|
-
| 常规按钮 | `--mci-radius-md` (12px) |
|
|
179
|
-
| 卡片 | `--mci-radius-xl` (20px) |
|
|
180
|
-
| 弹窗 | `--mci-radius-2xl` (24px) |
|
|
181
|
-
| 胶囊按钮/搜索框 | `--mci-radius-full` |
|
|
182
|
-
|
|
183
|
-
---
|
|
184
|
-
|
|
185
|
-
<!-- /microi-progressive:chunk -->
|
|
186
|
-
## 详细参考路由(渐进披露)
|
|
187
|
-
|
|
188
|
-
仅在当前任务涉及对应主题时读取;下列文件合计保留了原 SKILL.md 的全部详细知识。
|
|
189
|
-
|
|
190
|
-
- [references/progressive-01-颜色体系-css-variables-支持主题切换.md](references/progressive-01-颜色体系-css-variables-支持主题切换.md):颜色体系(CSS Variables — 支持主题切换);阴影体系(层次与质感)
|
|
191
|
-
- [references/progressive-02-字体.md](references/progressive-02-字体.md):字体;间距与触摸目标;骨架屏 Loading 设计规范
|
|
192
|
-
- [references/progressive-03-动效规范-丰富但不卡.md](references/progressive-03-动效规范-丰富但不卡.md):动效规范(丰富但不卡);Vue 3 过渡动画
|
|
193
|
-
- [references/progressive-04-组件风格速查.md](references/progressive-04-组件风格速查.md):组件风格速查
|
|
194
|
-
- [references/progressive-05-移动端专用规范.md](references/progressive-05-移动端专用规范.md):移动端专用规范;装饰性背景(低性能消耗方案);性能检查清单
|
|
195
|
-
- [references/progressive-06-主题切换实现.md](references/progressive-06-主题切换实现.md):主题切换实现;命名规范
|
|
196
|
-
- [references/progressive-07-速查-从头搭建一个移动端页面.md](references/progressive-07-速查-从头搭建一个移动端页面.md):速查:从头搭建一个移动端页面;🚨 移动端低代码项目落地踩坑(必读,2026.5);🔗 关联字段:保存真实 Id,界面展示可读标签;表单布局规范(Column)
|
|
197
|
-
- [references/progressive-08-表单分组规范-tabs-vs-collapsegroup-强制.md](references/progressive-08-表单分组规范-tabs-vs-collapsegroup-强制.md):表单分组规范:Tabs vs CollapseGroup(强制);缓存刷新(解决"我改了字段但页面不变"问题);接口引擎匿名访问;MCI-UI 与第三方组件库策略;MCI-UI 源码落地位置;VitePress 中文文档布局规范
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
<!-- /microi-progressive:chunk -->
|
|
95
|
+
<!-- microi-progressive:chunk id=ui-design-003 sha256=62b9d5696d23ded43a0a7c82d520b69ee8182269579c7171808325877144abd3 -->
|
|
96
|
+
## PC 后台菜单宫格 / 入口页规范
|
|
97
|
+
|
|
98
|
+
适用于 `sys_menu` 子菜单入口、工作台快捷入口、后台功能入口页。此类页面是操作入口,不是营销卡片墙,重点是密度克制、对齐稳定、快速识别。
|
|
99
|
+
|
|
100
|
+
- 宽屏不能无上限铺满一整行。1366-1920 宽度下推荐 6-8 个入口/行;超宽屏也不要因为 `repeat(auto-fill, minmax(..., 1fr))` 自动挤出 10 个以上入口。应使用固定/上限列宽、`max-width`、`justify-content:start` 控制节奏。
|
|
101
|
+
- 同一宫格内所有入口卡片必须宽高一致,优先使用固定 `width/height` 或 `aspect-ratio + max-width`。禁止让卡片随标题长度、是否有统计信息而高度不一致。
|
|
102
|
+
- 卡片内部必须建立固定槽位:图标区、标题区、辅助信息区。每张卡的图标、标题首行、统计胶囊应在同一水平线上;有无辅助信息都要通过固定 body 高度或预留槽位保持对齐。
|
|
103
|
+
- 标题与子菜单统计/辅助胶囊的间距控制在 4-6px,不能贴底,也不能和标题隔得很远。统计胶囊应跟随标题成为一个信息组。
|
|
104
|
+
- PC 卡片内边距不小于 14-18px,图标背景到卡片边缘不小于 16px;移动端内边距不小于 12px。不能出现图标、文字、统计贴边的效果。
|
|
105
|
+
- 标题最多两行并截断或自然换行,长词必须 `overflow-wrap:anywhere`,不允许撑破卡片。图标按钮、标题、统计文本都要垂直和水平对齐。
|
|
106
|
+
- 修改后必须截图验收 1366/1440/1920 桌面宽度和 390 左右移动宽度,检查每行数量、行列对齐、卡片内边距、标题与统计间距、文字溢出和横向滚动。
|
|
107
|
+
|
|
108
|
+
<!-- /microi-progressive:chunk -->
|
|
109
|
+
<!-- microi-progressive:chunk id=ui-design-004 sha256=5d3aebaa07bf0df572b5eadfbc567fa58138a78816f0edf25fcff1a93d914ac7 -->
|
|
110
|
+
## PC 后台数据卡片模式规范
|
|
111
|
+
|
|
112
|
+
适用于 `diy-table` 卡片模式、任务/应用/客户/资产列表。它是高频数据操作容器,不是营销海报或入口宫格。
|
|
113
|
+
|
|
114
|
+
- 信息顺序固定为“真实图片或紧凑身份标记 → 标题与状态 → 2—4 个关键字段 → 时间/辅助标签 → 操作区”。标题与状态在首屏可扫读,次要字段不能抢占标题层级。
|
|
115
|
+
- 配置了图片但某行无图时,用 40—44px 首字或业务图标承接身份;禁止生成大面积渐变、发光字母、旋转方块等伪图片占据内容高度。真实图片按稳定比例使用 `cover/contain`。
|
|
116
|
+
- 无显式配置时桌面默认四列,以最小可读宽度优先;显式 `TableCardCol` 配置必须保留。中等宽度降为三列/两列,移动端单列,禁止为“同屏更多”把标题和四个操作挤进过窄卡片。
|
|
117
|
+
- 卡片依靠表面、细边框、轻阴影和 1—2px hover lift 建立层级;不要给每张卡加顶部霓虹线、径向光斑、彩虹渐变或重投影。选中态只改边框/焦点环,不能导致网格跳动。
|
|
118
|
+
- 操作区优先一个主动作、一至两个次动作,其余进入“更多”;危险动作不得与主动作同权。按钮使用 8—10px 软圆角而非满屏胶囊,移动端高度不小于 44px。
|
|
119
|
+
- 整卡可打开详情时提供可见 `focus-visible`、Enter/Space 触发;内部按钮和选择控件阻止冒泡。骨架屏要复刻图片(如有)、标题、字段和按钮的最终几何,不能先显示大图骨架再塌缩为空白。
|
|
120
|
+
- 视觉验收至少覆盖:无图/有图、长标题、多个按钮、选中态、加载/空态、亮/暗主题、1366/1440/1920 桌面与 390 移动。
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
<!-- /microi-progressive:chunk -->
|
|
125
|
+
<!-- microi-progressive:chunk id=ui-design-005 sha256=99d3734279a75fe306ebf09943b0c550433d311c1df0b9cc63137aca835b9972 -->
|
|
126
|
+
## 形态模式(圆角 / 扁平)
|
|
127
|
+
|
|
128
|
+
Microi 项目必须支持用户或项目级形态偏好:`data-mci-shape="rounded"` 与 `data-mci-shape="flat"`。
|
|
129
|
+
|
|
130
|
+
```css
|
|
131
|
+
:root {
|
|
132
|
+
--mci-shape-card: var(--mci-radius-xl);
|
|
133
|
+
--mci-shape-panel: var(--mci-radius-lg);
|
|
134
|
+
--mci-shape-button: var(--mci-radius-pill);
|
|
135
|
+
--mci-shape-input: var(--mci-radius-md);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
:root[data-mci-shape="rounded"] {
|
|
139
|
+
--mci-shape-card: 20px;
|
|
140
|
+
--mci-shape-panel: 16px;
|
|
141
|
+
--mci-shape-button: 999px;
|
|
142
|
+
--mci-shape-input: 12px;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
:root[data-mci-shape="flat"] {
|
|
146
|
+
--mci-shape-card: 6px;
|
|
147
|
+
--mci-shape-panel: 4px;
|
|
148
|
+
--mci-shape-button: 4px;
|
|
149
|
+
--mci-shape-input: 4px;
|
|
150
|
+
}
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
- 圆角风格适合移动端商城、会员中心、消费类应用、品牌展示页。
|
|
154
|
+
- 扁平风格适合 B 端官网、数据看板、工具型 Web、强调效率的页面。
|
|
155
|
+
- 所有组件只引用 `--mci-shape-*`,不要在业务页面硬编码一堆 `border-radius`。
|
|
156
|
+
- 切换形态时只改变圆角 token,不改变布局尺寸,避免切换主题时页面跳动。
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
<!-- /microi-progressive:chunk -->
|
|
161
|
+
<!-- microi-progressive:chunk id=ui-design-006 sha256=f8d9a7c96a2c2696f82b596bdf1a7d02bed72ff796036c05d771ca3954bf68ba -->
|
|
162
|
+
## 圆角
|
|
163
|
+
|
|
164
|
+
```css
|
|
165
|
+
:root {
|
|
166
|
+
--mci-radius-sm: 8px;
|
|
167
|
+
--mci-radius-md: 12px;
|
|
168
|
+
--mci-radius-lg: 16px;
|
|
169
|
+
--mci-radius-xl: 20px;
|
|
170
|
+
--mci-radius-2xl: 24px;
|
|
171
|
+
--mci-radius-full: 9999px; /* 胶囊按钮 */
|
|
172
|
+
}
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
| 元素 | 圆角 |
|
|
176
|
+
|------|------|
|
|
177
|
+
| 小按钮/标签 | `--mci-radius-sm` (8px) |
|
|
178
|
+
| 常规按钮 | `--mci-radius-md` (12px) |
|
|
179
|
+
| 卡片 | `--mci-radius-xl` (20px) |
|
|
180
|
+
| 弹窗 | `--mci-radius-2xl` (24px) |
|
|
181
|
+
| 胶囊按钮/搜索框 | `--mci-radius-full` |
|
|
182
|
+
|
|
183
|
+
---
|
|
184
|
+
|
|
185
|
+
<!-- /microi-progressive:chunk -->
|
|
186
|
+
## 详细参考路由(渐进披露)
|
|
187
|
+
|
|
188
|
+
仅在当前任务涉及对应主题时读取;下列文件合计保留了原 SKILL.md 的全部详细知识。
|
|
189
|
+
|
|
190
|
+
- [references/progressive-01-颜色体系-css-variables-支持主题切换.md](references/progressive-01-颜色体系-css-variables-支持主题切换.md):颜色体系(CSS Variables — 支持主题切换);阴影体系(层次与质感)
|
|
191
|
+
- [references/progressive-02-字体.md](references/progressive-02-字体.md):字体;间距与触摸目标;骨架屏 Loading 设计规范
|
|
192
|
+
- [references/progressive-03-动效规范-丰富但不卡.md](references/progressive-03-动效规范-丰富但不卡.md):动效规范(丰富但不卡);Vue 3 过渡动画
|
|
193
|
+
- [references/progressive-04-组件风格速查.md](references/progressive-04-组件风格速查.md):组件风格速查
|
|
194
|
+
- [references/progressive-05-移动端专用规范.md](references/progressive-05-移动端专用规范.md):移动端专用规范;装饰性背景(低性能消耗方案);性能检查清单
|
|
195
|
+
- [references/progressive-06-主题切换实现.md](references/progressive-06-主题切换实现.md):主题切换实现;命名规范
|
|
196
|
+
- [references/progressive-07-速查-从头搭建一个移动端页面.md](references/progressive-07-速查-从头搭建一个移动端页面.md):速查:从头搭建一个移动端页面;🚨 移动端低代码项目落地踩坑(必读,2026.5);🔗 关联字段:保存真实 Id,界面展示可读标签;表单布局规范(Column)
|
|
197
|
+
- [references/progressive-08-表单分组规范-tabs-vs-collapsegroup-强制.md](references/progressive-08-表单分组规范-tabs-vs-collapsegroup-强制.md):表单分组规范:Tabs vs CollapseGroup(强制);缓存刷新(解决"我改了字段但页面不变"问题);接口引擎匿名访问;MCI-UI 与第三方组件库策略;MCI-UI 源码落地位置;VitePress 中文文档布局规范
|
|
198
198
|
<!-- microi-progressive:end -->
|
|
199
199
|
|
|
200
200
|
## 按钮文本可读性与多端验收(强制)
|
|
@@ -205,19 +205,19 @@ Microi 项目必须支持用户或项目级形态偏好:`data-mci-shape="round
|
|
|
205
205
|
- 禁止仅凭桌面截图、DOM 中存在文字或构建成功判定按钮验收通过。手机端折行、响应式覆盖、Markdown/VitePress 全局链接样式、主题切换和浏览器已访问链接状态都必须纳入回归检查;任一关键按钮在任一目标主题或宽度下看不清,即视为未完成。
|
|
206
206
|
|
|
207
207
|
## Microi 低代码工作台默认清爽体验(强制)
|
|
208
|
-
|
|
209
|
-
`diy-form`、`diy-table`、模块卡片、设计器弹窗和框架导航默认采用清爽、紧凑、层次明确的现代视觉;经典样式只能作为显式兼容模式保留,不能继续作为新页面或未配置页面的默认外观。
|
|
210
|
-
|
|
211
|
-
- **只升级呈现,不改变业务链路**:不得删除、合并或绕开页面 V8 按钮、行 V8 按钮、批量按钮、字段事件、表单事件、权限判断、校验、工作流与保存逻辑。按钮仍应出现在其业务语义对应的位置;只有原本属于“更多”的操作才进入更多菜单。
|
|
212
|
-
- **普通表单使用连续画布**:弹窗/页面的表单区使用柔和底色,普通字段外壳透明、无独立边框和阴影,只有输入、选择、日期、文本域等真实控件使用白色/主题高亮表面;禁止把每个字段切成一张小卡片。系统设置、控制中心等明确配置为工作台的模式可以保留分区卡片。字段间距以一屏可读更多信息为目标,布局字段、富文本、上传、地图、代码编辑器、子表等重型控件不强制固定高度。
|
|
213
|
-
- **尊重三种标签布局**:`left`、`right`、`top` 三种 `FormLabelPosition` 必须完整保留,标签宽度继续服从表单配置;移动窄屏允许回落到顶部标签,但不能破坏桌面配置语义。字段存在说明文字时,`left/right` 把灰色小字放在 Label 与控件整行下方,默认最多两行并压缩上下间距;`top` 把说明放在 Label 右侧,单行省略并通过原生 `title` 或等价可访问方式查看全文。不得再以孤立 `i` 图标和仅鼠标悬停 Tooltip 作为默认说明入口。
|
|
214
|
-
- **Label 与紧凑控件共用中心线**:左右标签布局下,普通字段 Label、输入控件、日期文字与日期前缀图标必须共用同一控件高度和垂直中心线;不得保留会把 Label 单独上抬/下压的底部外边距。多行文本、上传、子表等高控件才切换为顶部对齐。
|
|
215
|
-
- **弹窗与抽屉边界有区别**:表单对话框采用中性细边界、柔和遮罩与模糊背景,标题顶部不加装饰色线;抽屉必须贴边且无圆角,可在顶部保留克制的 2–3px 主题色识别线。两者都使用连续的柔和表单画布和紧凑操作区;设计器双击字段弹窗必须可拖动,并继续提供控件专项配置入口。
|
|
216
|
-
- **平台 Dialog 统一壳**:除 Drawer 外,框架弹层、微应用弹层、系统设置、商城、通知与业务表单默认使用 20–24px 大圆角、上下左右居中、标题栏可拖动的 Dialog;禁止页面自行恢复方角壳或顶部主题色粗线。标题栏左侧依次提供语义图标、英文眉题、大字标题和可选小字副标题;右上关闭按钮与标题区垂直居中并必须有可辨识的按钮底色。内容区使用连续、固定的柔和背景和整齐栅格;底部操作区右对齐大号关闭/保存按钮,两者都带语义图标。拖动与窗口缩放必须按弹层真实宽高重新约束,四边至少保留 8–18px 可视余量,不得把内容拖出视口。Teleport 到 `body` 的微应用弹层必须在弹层根同步 `data-mci-ui-root`、主题与必要 token,不能只依赖原祖先 CSS 变量。遮罩毛玻璃由 `sys_config.FormMaskBlur=1/true` 全局显式开启,缺失或 `0/false` 默认关闭;`prefers-reduced-motion` 只能停止动画与过渡,不得擅自反转静态毛玻璃配置。
|
|
217
|
-
- **Dialog 关闭按钮可见性**:右上关闭按钮固定使用 40×40px(移动端不低于 40px)中性灰底、细边框和 10–12px 圆角,不能只显示悬空的细线 X;亮色和暗色主题都必须保持可辨识背景。hover/focus-visible 时使用更深一级灰底、主题色图标和清晰焦点环。底部关闭/取消/保存按钮高度不低于 42px、最小宽度 96px,并保持右对齐与 12px 间距。
|
|
218
|
-
- **Tabs 统一视觉**:顶部工作区、数据列表 PageTabs、表单 Tabs 与右侧关联数据 Tabs 使用同一套清爽、独立标签视觉。横向 Tabs 禁止铺设贯穿整行的有色轨道、边框底板、下划线或其它装饰线;未选项保持透明,悬停与选中只使用克制的文字色、浅色独立表面和轻阴影。纵向 Tabs 可使用截图式中性浅色分组容器,选中项是独立浅色卡片。数字角标放在标签文本之后且不得挤压标题;过渡只用于交互,并尊重 `prefers-reduced-motion`。
|
|
219
|
-
- **表格与卡片行为完整**:桌面数据卡片采用连续白色表面、弱边界和轻阴影,操作区不得再叠加有色底板或硬分割线;表格模块门头的标题/副标题卡片与每个动态统计卡片必须彼此独立,父布局保持透明,禁止用一个大卡片或外框把标题和全部统计项包在一起。表格默认取消无意义的纵向网格,只保留浅表头与轻量横向行节奏,工具栏和分页不得层层套框。`PageBtns`、`BatchSelect`、行内/行外 V8 按钮均不可因改版丢失;需多选而当前未选中时,应先把当前记录纳入选中集再执行。
|
|
220
|
-
- **启动状态可理解、可恢复**:Vue 挂载和业务就绪是两个状态。进度到 100% 后若仍在初始化,应显示“正在连接/后端响应较慢/仍在等待”等阶段文字;明确失败时提供原因摘要与刷新重试,禁止撤掉启动层后留下空白页。
|
|
221
|
-
- **侧栏清爽但层级清晰**:压缩无效间距,保留足够点击区域、选中态、父子层级和键盘焦点;颜色、圆角、阴影必须来自主题 token。
|
|
222
|
-
- **纵向导航使用短圆角侧标**:侧栏、纵向 Tab、分组导航等选中态的左/右侧强调线统一参照平台左侧菜单:宽 3–4px、高度约为选中项的 45%–60%,垂直居中,端点使用小圆角;禁止铺满 100% 高度,也禁止做折线或包边。右侧 Tab 镜像到右边;横向 Tabs 不使用这条侧标,也不额外增加上下指示线。
|
|
223
|
-
- **主题与可访问性验收**:至少验证亮色/暗色、租户主题色、1366/1440/1920 桌面与 390px 移动宽度、三种标签对齐、慢接口和接口失败;动效必须服从 `prefers-reduced-motion`。
|
|
208
|
+
|
|
209
|
+
`diy-form`、`diy-table`、模块卡片、设计器弹窗和框架导航默认采用清爽、紧凑、层次明确的现代视觉;经典样式只能作为显式兼容模式保留,不能继续作为新页面或未配置页面的默认外观。
|
|
210
|
+
|
|
211
|
+
- **只升级呈现,不改变业务链路**:不得删除、合并或绕开页面 V8 按钮、行 V8 按钮、批量按钮、字段事件、表单事件、权限判断、校验、工作流与保存逻辑。按钮仍应出现在其业务语义对应的位置;只有原本属于“更多”的操作才进入更多菜单。
|
|
212
|
+
- **普通表单使用连续画布**:弹窗/页面的表单区使用柔和底色,普通字段外壳透明、无独立边框和阴影,只有输入、选择、日期、文本域等真实控件使用白色/主题高亮表面;禁止把每个字段切成一张小卡片。系统设置、控制中心等明确配置为工作台的模式可以保留分区卡片。字段间距以一屏可读更多信息为目标,布局字段、富文本、上传、地图、代码编辑器、子表等重型控件不强制固定高度。
|
|
213
|
+
- **尊重三种标签布局**:`left`、`right`、`top` 三种 `FormLabelPosition` 必须完整保留,标签宽度继续服从表单配置;移动窄屏允许回落到顶部标签,但不能破坏桌面配置语义。字段存在说明文字时,`left/right` 把灰色小字放在 Label 与控件整行下方,默认最多两行并压缩上下间距;`top` 把说明放在 Label 右侧,单行省略并通过原生 `title` 或等价可访问方式查看全文。不得再以孤立 `i` 图标和仅鼠标悬停 Tooltip 作为默认说明入口。
|
|
214
|
+
- **Label 与紧凑控件共用中心线**:左右标签布局下,普通字段 Label、输入控件、日期文字与日期前缀图标必须共用同一控件高度和垂直中心线;不得保留会把 Label 单独上抬/下压的底部外边距。多行文本、上传、子表等高控件才切换为顶部对齐。
|
|
215
|
+
- **弹窗与抽屉边界有区别**:表单对话框采用中性细边界、柔和遮罩与模糊背景,标题顶部不加装饰色线;抽屉必须贴边且无圆角,可在顶部保留克制的 2–3px 主题色识别线。两者都使用连续的柔和表单画布和紧凑操作区;设计器双击字段弹窗必须可拖动,并继续提供控件专项配置入口。
|
|
216
|
+
- **平台 Dialog 统一壳**:除 Drawer 外,框架弹层、微应用弹层、系统设置、商城、通知与业务表单默认使用 20–24px 大圆角、上下左右居中、标题栏可拖动的 Dialog;禁止页面自行恢复方角壳或顶部主题色粗线。标题栏左侧依次提供语义图标、英文眉题、大字标题和可选小字副标题;右上关闭按钮与标题区垂直居中并必须有可辨识的按钮底色。内容区使用连续、固定的柔和背景和整齐栅格;底部操作区右对齐大号关闭/保存按钮,两者都带语义图标。拖动与窗口缩放必须按弹层真实宽高重新约束,四边至少保留 8–18px 可视余量,不得把内容拖出视口。Teleport 到 `body` 的微应用弹层必须在弹层根同步 `data-mci-ui-root`、主题与必要 token,不能只依赖原祖先 CSS 变量。遮罩毛玻璃由 `sys_config.FormMaskBlur=1/true` 全局显式开启,缺失或 `0/false` 默认关闭;`prefers-reduced-motion` 只能停止动画与过渡,不得擅自反转静态毛玻璃配置。
|
|
217
|
+
- **Dialog 关闭按钮可见性**:右上关闭按钮固定使用 40×40px(移动端不低于 40px)中性灰底、细边框和 10–12px 圆角,不能只显示悬空的细线 X;亮色和暗色主题都必须保持可辨识背景。hover/focus-visible 时使用更深一级灰底、主题色图标和清晰焦点环。底部关闭/取消/保存按钮高度不低于 42px、最小宽度 96px,并保持右对齐与 12px 间距。
|
|
218
|
+
- **Tabs 统一视觉**:顶部工作区、数据列表 PageTabs、表单 Tabs 与右侧关联数据 Tabs 使用同一套清爽、独立标签视觉。横向 Tabs 禁止铺设贯穿整行的有色轨道、边框底板、下划线或其它装饰线;未选项保持透明,悬停与选中只使用克制的文字色、浅色独立表面和轻阴影。纵向 Tabs 可使用截图式中性浅色分组容器,选中项是独立浅色卡片。数字角标放在标签文本之后且不得挤压标题;过渡只用于交互,并尊重 `prefers-reduced-motion`。
|
|
219
|
+
- **表格与卡片行为完整**:桌面数据卡片采用连续白色表面、弱边界和轻阴影,操作区不得再叠加有色底板或硬分割线;表格模块门头的标题/副标题卡片与每个动态统计卡片必须彼此独立,父布局保持透明,禁止用一个大卡片或外框把标题和全部统计项包在一起。表格默认取消无意义的纵向网格,只保留浅表头与轻量横向行节奏,工具栏和分页不得层层套框。`PageBtns`、`BatchSelect`、行内/行外 V8 按钮均不可因改版丢失;需多选而当前未选中时,应先把当前记录纳入选中集再执行。
|
|
220
|
+
- **启动状态可理解、可恢复**:Vue 挂载和业务就绪是两个状态。进度到 100% 后若仍在初始化,应显示“正在连接/后端响应较慢/仍在等待”等阶段文字;明确失败时提供原因摘要与刷新重试,禁止撤掉启动层后留下空白页。
|
|
221
|
+
- **侧栏清爽但层级清晰**:压缩无效间距,保留足够点击区域、选中态、父子层级和键盘焦点;颜色、圆角、阴影必须来自主题 token。
|
|
222
|
+
- **纵向导航使用短圆角侧标**:侧栏、纵向 Tab、分组导航等选中态的左/右侧强调线统一参照平台左侧菜单:宽 3–4px、高度约为选中项的 45%–60%,垂直居中,端点使用小圆角;禁止铺满 100% 高度,也禁止做折线或包边。右侧 Tab 镜像到右边;横向 Tabs 不使用这条侧标,也不额外增加上下指示线。
|
|
223
|
+
- **主题与可访问性验收**:至少验证亮色/暗色、租户主题色、1366/1440/1920 桌面与 390px 移动宽度、三种标签对齐、慢接口和接口失败;动效必须服从 `prefers-reduced-motion`。
|