@microi.net/cli 5.8.5 → 5.8.6
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/.mcp.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/codex-marketplace.json +20 -20
- package/scripts/mcp-codex-stdio-adapter.js +189 -189
- package/scripts/mcp-trae-windows-launcher.cmd +21 -21
- package/scripts/microi-cli-mcp.js +7 -7
- package/scripts/microi-cli.js +66 -65
- package/scripts/microi-codex-broker.js +450 -450
- package/scripts/microi-codex-router.js +618 -618
- package/scripts/microi-skills.meta.json +384 -384
- package/skills/.microi-skills-version.json +2 -2
- package/skills/.progressive-disclosure-manifest.json +3566 -3566
- package/skills/README.md +287 -287
- package/skills/ai-engine/SKILL.md +269 -265
- package/skills/ai-engine/agents/openai.yaml +4 -4
- package/skills/ai-engine/references/ai-employees.md +48 -48
- package/skills/ai-engine/references/self-hosted-digital-human.md +59 -59
- 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 +525 -525
- package/skills/app-store/agents/openai.yaml +4 -4
- package/skills/business-blueprint/SKILL.md +193 -193
- package/skills/datasource-engine/SKILL.md +93 -93
- package/skills/datasource-engine/agents/openai.yaml +4 -4
- package/skills/dos-orm/SKILL.md +97 -97
- package/skills/dos-orm/references/api-reference.md +229 -229
- package/skills/email-engine/SKILL.md +81 -81
- package/skills/email-engine/references/v8-email.md +34 -34
- package/skills/job-engine/SKILL.md +176 -176
- package/skills/job-engine/agents/openai.yaml +4 -4
- package/skills/message-notification/SKILL.md +156 -156
- package/skills/message-notification/agents/openai.yaml +5 -5
- package/skills/message-notification/references/contracts.md +102 -102
- package/skills/microi/SKILL.md +14 -14
- package/skills/microi-ai-app-auth.js +652 -652
- package/skills/microi-ai-application/SKILL.md +115 -115
- 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 +244 -244
- 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 +102 -102
- package/skills/microi-codex-installer/SKILL.md +231 -231
- package/skills/microi-codex-installer/agents/openai.yaml +7 -7
- package/skills/microi-datasource-mapping/SKILL.md +122 -122
- 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/SKILL.md +221 -221
- package/skills/microi-deployment/references/deployment-matrix.md +109 -109
- package/skills/microi-docs-coverage/SKILL.md +133 -133
- package/skills/microi-docs-coverage/references/capability-map.md +91 -91
- package/skills/microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs +894 -894
- package/skills/microi-form-engine/SKILL.md +333 -333
- package/skills/microi-form-engine/references/component-catalog.md +218 -218
- 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 +194 -194
- 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 +326 -324
- package/skills/microi-microservice/references/runtime-delivery.md +278 -278
- package/skills/microi-mobile-app-quality/SKILL.md +185 -185
- 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/SKILL.md +92 -92
- 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 +137 -137
- 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 +217 -217
- package/skills/microi-ui/SKILL.md +192 -192
- 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 +255 -255
- 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 +206 -206
- package/skills/page-engine/examples/compact-dashboard.json +1444 -1444
- 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 +196 -196
- 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/scripts/sync-embedded-skills.mjs +46 -46
- package/skills/scripts/validate-progressive-disclosure.mjs +57 -57
- 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 +248 -248
- package/skills/system-observability/references/memory-incident-triage.md +77 -77
- package/skills/translate-engine/SKILL.md +140 -140
- package/skills/translate-engine/agents/openai.yaml +4 -4
- package/skills/ui-design/SKILL.md +223 -223
- package/skills/ui-design/assets/pattern-showcase/app.js +54 -54
- package/skills/ui-design/assets/pattern-showcase/index.html +163 -163
- package/skills/ui-design/assets/pattern-showcase/styles.css +311 -311
- package/skills/ui-design/assets/templates/MCI-DESIGN.md +206 -206
- 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/motion-and-media.md +78 -78
- package/skills/ui-design/references/product-flow-recipes.md +94 -94
- 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 +164 -164
- 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 +142 -142
- package/skills/uniapp-mall-assets/SKILL.md +176 -176
- package/skills/unity-integration/SKILL.md +171 -171
- package/skills/unity-integration/agents/openai.yaml +4 -4
- package/skills/unity-integration/references/ai-app-delivery.md +119 -119
- 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-api-config/SKILL.md +388 -388
- package/skills/v8-cache-pattern/SKILL.md +312 -312
- package/skills/v8-crud-api/SKILL.md +178 -178
- 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 +219 -219
- 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 +284 -284
- 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 +263 -263
- 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 +161 -161
- package/skills/v8-formengine-http/SKILL.md +238 -238
- package/skills/v8-frontend-events/SKILL.md +180 -180
- package/skills/v8-frontend-events/references/bluetooth-print-api.md +135 -135
- package/skills/v8-frontend-events/references/bluetooth-print.md +258 -258
- 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 +186 -186
- 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 +200 -200
- package/skills/v8-mq-mqtt/SKILL.md +176 -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 +305 -305
- package/skills/v8-security/SKILL.md +210 -210
- package/skills/v8-security/references/progressive-01-2-/346/235/203/351/231/220/346/240/241/351/252/214.md +200 -200
- package/skills/v8-security/references/progressive-02-7-/346/227/245/345/277/227/350/256/260/345/275/225.md +160 -160
- package/skills/v8-sql-query/SKILL.md +302 -302
- package/skills/v8-table-event/SKILL.md +176 -176
- 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 +216 -216
- 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 +104 -104
- 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 +252 -252
- 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/v8-workflow/references/workflow-configuration.md +49 -49
- package/skills/vision-engine/SKILL.md +160 -160
- 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 +273 -273
- 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 +209 -209
- 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 +217 -217
- 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,54 +1,54 @@
|
|
|
1
|
-
(function () {
|
|
2
|
-
'use strict';
|
|
3
|
-
|
|
4
|
-
var root = document.documentElement;
|
|
5
|
-
var themeToggle = document.getElementById('themeToggle');
|
|
6
|
-
var filterButtons = Array.prototype.slice.call(document.querySelectorAll('[data-filter]'));
|
|
7
|
-
var cards = Array.prototype.slice.call(document.querySelectorAll('[data-kind]'));
|
|
8
|
-
var form = document.getElementById('flowForm');
|
|
9
|
-
var nameInput = document.getElementById('workspaceName');
|
|
10
|
-
var status = document.getElementById('formStatus');
|
|
11
|
-
var submit = document.getElementById('flowSubmit');
|
|
12
|
-
|
|
13
|
-
themeToggle.addEventListener('click', function () {
|
|
14
|
-
var nextTheme = root.dataset.mciTheme === 'dark' ? 'light' : 'dark';
|
|
15
|
-
root.dataset.mciTheme = nextTheme;
|
|
16
|
-
themeToggle.setAttribute('aria-pressed', nextTheme === 'light' ? 'true' : 'false');
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
filterButtons.forEach(function (button) {
|
|
20
|
-
button.addEventListener('click', function () {
|
|
21
|
-
var filter = button.dataset.filter;
|
|
22
|
-
filterButtons.forEach(function (item) { item.classList.toggle('is-active', item === button); });
|
|
23
|
-
cards.forEach(function (card) {
|
|
24
|
-
var visible = filter === 'all' || card.dataset.kind === filter;
|
|
25
|
-
card.classList.toggle('is-hidden', !visible);
|
|
26
|
-
});
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
form.addEventListener('submit', function (event) {
|
|
31
|
-
event.preventDefault();
|
|
32
|
-
var value = nameInput.value.trim();
|
|
33
|
-
status.className = 'mci-flow-card__status';
|
|
34
|
-
if (value.length < 2 || value.length > 24) {
|
|
35
|
-
status.textContent = '请输入 2—24 个字符的空间名称。';
|
|
36
|
-
status.classList.add('is-error');
|
|
37
|
-
nameInput.focus();
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
submit.disabled = true;
|
|
42
|
-
submit.classList.add('is-loading');
|
|
43
|
-
submit.querySelector('span').textContent = '正在创建';
|
|
44
|
-
status.textContent = '正在校验空间配置,请稍候…';
|
|
45
|
-
|
|
46
|
-
window.setTimeout(function () {
|
|
47
|
-
submit.disabled = false;
|
|
48
|
-
submit.classList.remove('is-loading');
|
|
49
|
-
submit.querySelector('span').textContent = '重新演示';
|
|
50
|
-
status.textContent = '“' + value + '”已准备好,可以继续邀请成员。';
|
|
51
|
-
status.classList.add('is-success');
|
|
52
|
-
}, 760);
|
|
53
|
-
});
|
|
54
|
-
}());
|
|
1
|
+
(function () {
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var root = document.documentElement;
|
|
5
|
+
var themeToggle = document.getElementById('themeToggle');
|
|
6
|
+
var filterButtons = Array.prototype.slice.call(document.querySelectorAll('[data-filter]'));
|
|
7
|
+
var cards = Array.prototype.slice.call(document.querySelectorAll('[data-kind]'));
|
|
8
|
+
var form = document.getElementById('flowForm');
|
|
9
|
+
var nameInput = document.getElementById('workspaceName');
|
|
10
|
+
var status = document.getElementById('formStatus');
|
|
11
|
+
var submit = document.getElementById('flowSubmit');
|
|
12
|
+
|
|
13
|
+
themeToggle.addEventListener('click', function () {
|
|
14
|
+
var nextTheme = root.dataset.mciTheme === 'dark' ? 'light' : 'dark';
|
|
15
|
+
root.dataset.mciTheme = nextTheme;
|
|
16
|
+
themeToggle.setAttribute('aria-pressed', nextTheme === 'light' ? 'true' : 'false');
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
filterButtons.forEach(function (button) {
|
|
20
|
+
button.addEventListener('click', function () {
|
|
21
|
+
var filter = button.dataset.filter;
|
|
22
|
+
filterButtons.forEach(function (item) { item.classList.toggle('is-active', item === button); });
|
|
23
|
+
cards.forEach(function (card) {
|
|
24
|
+
var visible = filter === 'all' || card.dataset.kind === filter;
|
|
25
|
+
card.classList.toggle('is-hidden', !visible);
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
form.addEventListener('submit', function (event) {
|
|
31
|
+
event.preventDefault();
|
|
32
|
+
var value = nameInput.value.trim();
|
|
33
|
+
status.className = 'mci-flow-card__status';
|
|
34
|
+
if (value.length < 2 || value.length > 24) {
|
|
35
|
+
status.textContent = '请输入 2—24 个字符的空间名称。';
|
|
36
|
+
status.classList.add('is-error');
|
|
37
|
+
nameInput.focus();
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
submit.disabled = true;
|
|
42
|
+
submit.classList.add('is-loading');
|
|
43
|
+
submit.querySelector('span').textContent = '正在创建';
|
|
44
|
+
status.textContent = '正在校验空间配置,请稍候…';
|
|
45
|
+
|
|
46
|
+
window.setTimeout(function () {
|
|
47
|
+
submit.disabled = false;
|
|
48
|
+
submit.classList.remove('is-loading');
|
|
49
|
+
submit.querySelector('span').textContent = '重新演示';
|
|
50
|
+
status.textContent = '“' + value + '”已准备好,可以继续邀请成员。';
|
|
51
|
+
status.classList.add('is-success');
|
|
52
|
+
}, 760);
|
|
53
|
+
});
|
|
54
|
+
}());
|
|
@@ -1,163 +1,163 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="zh-CN" data-mci-theme="dark" data-mci-shape="rounded">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8">
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
|
|
6
|
-
<meta name="color-scheme" content="dark light">
|
|
7
|
-
<title>Microi 设计模式实验室</title>
|
|
8
|
-
<link rel="stylesheet" href="./styles.css">
|
|
9
|
-
</head>
|
|
10
|
-
<body>
|
|
11
|
-
<main class="mci-lab" data-mci-ui-root>
|
|
12
|
-
<header class="mci-lab__nav">
|
|
13
|
-
<a class="mci-lab__brand" href="#top" aria-label="返回顶部">
|
|
14
|
-
<span class="mci-lab__brand-mark" aria-hidden="true">M</span>
|
|
15
|
-
<span>Microi Pattern Lab</span>
|
|
16
|
-
</a>
|
|
17
|
-
<nav class="mci-lab__nav-links" aria-label="页面导航">
|
|
18
|
-
<a href="#patterns">设计模式</a>
|
|
19
|
-
<a href="#flow">产品流程</a>
|
|
20
|
-
<a href="#contract">设计契约</a>
|
|
21
|
-
</nav>
|
|
22
|
-
<button class="mci-icon-button" id="themeToggle" type="button" aria-label="切换明暗主题" aria-pressed="false">
|
|
23
|
-
<span class="mci-icon-button__sun" aria-hidden="true">☀</span>
|
|
24
|
-
<span class="mci-icon-button__moon" aria-hidden="true">◐</span>
|
|
25
|
-
</button>
|
|
26
|
-
</header>
|
|
27
|
-
|
|
28
|
-
<section class="mci-hero" id="top">
|
|
29
|
-
<div class="mci-hero__ambient" aria-hidden="true">
|
|
30
|
-
<span></span><span></span><span></span>
|
|
31
|
-
</div>
|
|
32
|
-
<div class="mci-hero__content">
|
|
33
|
-
<span class="mci-eyebrow">MICROI ORIGINAL DESIGN SYSTEM</span>
|
|
34
|
-
<h1>让业务界面先有<br><em>清晰的设计意图</em></h1>
|
|
35
|
-
<p>六类内置设计模式覆盖品牌、产品流程、趋势构图、沉浸互动、动态首屏与数据工作台。每一种模式都复用同一套 Microi token、状态和响应式规则。</p>
|
|
36
|
-
<div class="mci-hero__actions">
|
|
37
|
-
<a class="mci-button mci-button--primary" href="#patterns">浏览设计模式 <span aria-hidden="true">↘</span></a>
|
|
38
|
-
<a class="mci-button mci-button--quiet" href="#flow">查看真实流程</a>
|
|
39
|
-
</div>
|
|
40
|
-
</div>
|
|
41
|
-
<div class="mci-hero__console" aria-label="设计系统实时状态">
|
|
42
|
-
<div class="mci-console__head"><span></span><span></span><span></span><b>MCI-DESIGN</b></div>
|
|
43
|
-
<div class="mci-console__orbit" aria-hidden="true"><i></i><i></i><i></i></div>
|
|
44
|
-
<div class="mci-console__metric"><small>组件状态覆盖率</small><strong>08</strong><span>default → error</span></div>
|
|
45
|
-
<div class="mci-console__footer"><span>responsive</span><span>accessible</span><span>reduced-motion</span></div>
|
|
46
|
-
</div>
|
|
47
|
-
</section>
|
|
48
|
-
|
|
49
|
-
<section class="mci-section" id="patterns">
|
|
50
|
-
<div class="mci-section__head">
|
|
51
|
-
<div><span class="mci-eyebrow">PATTERN LIBRARY</span><h2>六种模式,一套品牌语言</h2></div>
|
|
52
|
-
<div class="mci-filter" role="group" aria-label="设计模式筛选">
|
|
53
|
-
<button class="is-active" type="button" data-filter="all">全部</button>
|
|
54
|
-
<button type="button" data-filter="story">叙事</button>
|
|
55
|
-
<button type="button" data-filter="product">产品</button>
|
|
56
|
-
<button type="button" data-filter="motion">互动</button>
|
|
57
|
-
<button type="button" data-filter="data">数据</button>
|
|
58
|
-
</div>
|
|
59
|
-
</div>
|
|
60
|
-
|
|
61
|
-
<div class="mci-pattern-grid">
|
|
62
|
-
<article class="mci-pattern mci-pattern--story" data-kind="story">
|
|
63
|
-
<div class="mci-pattern__visual">
|
|
64
|
-
<span class="mci-pattern__index">01</span>
|
|
65
|
-
<div class="mci-story-word">MAKE<br><em>MEANING</em></div>
|
|
66
|
-
<i class="mci-story-line"></i>
|
|
67
|
-
</div>
|
|
68
|
-
<div class="mci-pattern__copy"><span>品牌叙事</span><h3>用观点建立首屏记忆</h3><p>大标题、单一主张、章节节奏与克制的行动路径。</p></div>
|
|
69
|
-
</article>
|
|
70
|
-
|
|
71
|
-
<article class="mci-pattern mci-pattern--product" data-kind="product">
|
|
72
|
-
<div class="mci-pattern__visual">
|
|
73
|
-
<span class="mci-pattern__index">02</span>
|
|
74
|
-
<div class="mci-phone-card">
|
|
75
|
-
<div class="mci-phone-card__bar"><i></i><span>新建空间</span><b>2 / 3</b></div>
|
|
76
|
-
<div class="mci-phone-card__progress"><i></i></div>
|
|
77
|
-
<strong>选择工作方式</strong>
|
|
78
|
-
<div class="mci-phone-card__choice is-selected"><i>✓</i><span>团队协作<small>角色与权限可配置</small></span></div>
|
|
79
|
-
<div class="mci-phone-card__choice"><i></i><span>个人项目<small>从轻量空间开始</small></span></div>
|
|
80
|
-
</div>
|
|
81
|
-
</div>
|
|
82
|
-
<div class="mci-pattern__copy"><span>真实产品流程</span><h3>状态比装饰更重要</h3><p>从登录到成功页,覆盖加载、空、错误、禁用与权限状态。</p></div>
|
|
83
|
-
</article>
|
|
84
|
-
|
|
85
|
-
<article class="mci-pattern mci-pattern--editorial" data-kind="story">
|
|
86
|
-
<div class="mci-pattern__visual">
|
|
87
|
-
<span class="mci-pattern__index">03</span>
|
|
88
|
-
<div class="mci-editorial-type"><b>32</b><span>结构化构图<br>打破均匀排版</span></div>
|
|
89
|
-
<div class="mci-editorial-card"><i></i><i></i><i></i><strong>一主两辅</strong></div>
|
|
90
|
-
</div>
|
|
91
|
-
<div class="mci-pattern__copy"><span>趋势构图</span><h3>不对称但保持秩序</h3><p>超大字号、编辑式留白、几何切片与明确阅读顺序。</p></div>
|
|
92
|
-
</article>
|
|
93
|
-
|
|
94
|
-
<article class="mci-pattern mci-pattern--immersive" data-kind="motion">
|
|
95
|
-
<div class="mci-pattern__visual">
|
|
96
|
-
<span class="mci-pattern__index">04</span>
|
|
97
|
-
<div class="mci-orb" aria-hidden="true"><i></i><i></i><i></i><b></b></div>
|
|
98
|
-
<div class="mci-orb-copy"><strong>FOCUS OBJECT</strong><span>界面 → 氛围 → 焦点对象</span></div>
|
|
99
|
-
</div>
|
|
100
|
-
<div class="mci-pattern__copy"><span>沉浸互动</span><h3>互动服务于理解</h3><p>场景只强化产品对象,并准备静态、低配和无动效降级。</p></div>
|
|
101
|
-
</article>
|
|
102
|
-
|
|
103
|
-
<article class="mci-pattern mci-pattern--motion" data-kind="motion">
|
|
104
|
-
<div class="mci-pattern__visual">
|
|
105
|
-
<span class="mci-pattern__index">05</span>
|
|
106
|
-
<div class="mci-motion-copy"><small>0—1200 MS</small><strong>第一秒<br>说清楚</strong></div>
|
|
107
|
-
<div class="mci-motion-track"><i></i><i></i><i></i><i></i></div>
|
|
108
|
-
</div>
|
|
109
|
-
<div class="mci-pattern__copy"><span>动态首屏</span><h3>用时间线组织注意力</h3><p>标题、说明、主操作依次出现;循环动效不制造操作噪声。</p></div>
|
|
110
|
-
</article>
|
|
111
|
-
|
|
112
|
-
<article class="mci-pattern mci-pattern--data" data-kind="data">
|
|
113
|
-
<div class="mci-pattern__visual">
|
|
114
|
-
<span class="mci-pattern__index">06</span>
|
|
115
|
-
<div class="mci-data-head"><span>运营总览</span><b>实时</b></div>
|
|
116
|
-
<div class="mci-data-metrics"><span><small>服务中</small><b>128</b></span><span><small>完成率</small><b>96%</b></span><span><small>风险项</small><b>07</b></span></div>
|
|
117
|
-
<div class="mci-data-chart" aria-hidden="true"><i></i><i></i><i></i><i></i><i></i><i></i><i></i></div>
|
|
118
|
-
</div>
|
|
119
|
-
<div class="mci-pattern__copy"><span>数据工作台</span><h3>先异常,再趋势,后明细</h3><p>紧凑密度、统一数值格式、筛选回显与可追溯数据状态。</p></div>
|
|
120
|
-
</article>
|
|
121
|
-
</div>
|
|
122
|
-
</section>
|
|
123
|
-
|
|
124
|
-
<section class="mci-flow" id="flow">
|
|
125
|
-
<div class="mci-flow__intro">
|
|
126
|
-
<span class="mci-eyebrow">REAL PRODUCT FLOW</span>
|
|
127
|
-
<h2>流程不是一张好看的静态图</h2>
|
|
128
|
-
<p>这个原创演示包含真实输入、校验、加载和成功反馈。界面在任何状态下都保持稳定尺寸,避免闪烁和跳动。</p>
|
|
129
|
-
<ul>
|
|
130
|
-
<li><span>01</span>默认状态可理解</li>
|
|
131
|
-
<li><span>02</span>错误状态可恢复</li>
|
|
132
|
-
<li><span>03</span>成功状态有下一步</li>
|
|
133
|
-
</ul>
|
|
134
|
-
</div>
|
|
135
|
-
<form class="mci-flow-card" id="flowForm" novalidate>
|
|
136
|
-
<div class="mci-flow-card__head"><span>创建协作空间</span><small>安全演示 · 不会提交数据</small></div>
|
|
137
|
-
<label class="mci-field"><span>空间名称</span><input id="workspaceName" name="workspace" autocomplete="organization" placeholder="例如:品牌增长中心"><small>2—24 个字符</small></label>
|
|
138
|
-
<fieldset class="mci-plan-group"><legend>协作规模</legend><label><input type="radio" name="plan" value="small" checked><span><b>轻量团队</b><small>1—10 人</small></span></label><label><input type="radio" name="plan" value="growth"><span><b>成长团队</b><small>11—50 人</small></span></label></fieldset>
|
|
139
|
-
<div class="mci-flow-card__status" id="formStatus" role="status" aria-live="polite">填写名称后即可创建演示空间。</div>
|
|
140
|
-
<button class="mci-button mci-button--primary mci-flow-card__submit" id="flowSubmit" type="submit"><span>创建演示空间</span><i aria-hidden="true">→</i></button>
|
|
141
|
-
</form>
|
|
142
|
-
</section>
|
|
143
|
-
|
|
144
|
-
<section class="mci-contract" id="contract">
|
|
145
|
-
<div class="mci-contract__copy"><span class="mci-eyebrow">MCI-DESIGN CONTRACT</span><h2>让下一位开发者与 AI 都能延续同一套界面</h2><p>设计模式、token、组件状态、页面顺序、响应式和降级策略都写进项目契约,不依赖口头描述。</p></div>
|
|
146
|
-
<div class="mci-contract__tokens" aria-label="设计 token 示例">
|
|
147
|
-
<span style="--token:#5b7cfa"><i></i><b>Primary</b><small>#5B7CFA</small></span>
|
|
148
|
-
<span style="--token:#26d7b0"><i></i><b>Success</b><small>#26D7B0</small></span>
|
|
149
|
-
<span style="--token:#ffca68"><i></i><b>Warning</b><small>#FFCA68</small></span>
|
|
150
|
-
<span style="--token:#ff6b88"><i></i><b>Danger</b><small>#FF6B88</small></span>
|
|
151
|
-
</div>
|
|
152
|
-
<pre class="mci-contract__code"><code><span>mode</span>: data-workspace
|
|
153
|
-
<span>density</span>: compact
|
|
154
|
-
<span>states</span>: [default, loading, empty, error, success]
|
|
155
|
-
<span>responsive</span>: [390, 768, 1440]
|
|
156
|
-
<span>motion</span>: reduced-motion-ready</code></pre>
|
|
157
|
-
</section>
|
|
158
|
-
|
|
159
|
-
<footer class="mci-lab__footer"><span>Microi.UI Original Pattern Asset</span><span>Local only · No external dependency</span></footer>
|
|
160
|
-
</main>
|
|
161
|
-
<script src="./app.js"></script>
|
|
162
|
-
</body>
|
|
163
|
-
</html>
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="zh-CN" data-mci-theme="dark" data-mci-shape="rounded">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
|
|
6
|
+
<meta name="color-scheme" content="dark light">
|
|
7
|
+
<title>Microi 设计模式实验室</title>
|
|
8
|
+
<link rel="stylesheet" href="./styles.css">
|
|
9
|
+
</head>
|
|
10
|
+
<body>
|
|
11
|
+
<main class="mci-lab" data-mci-ui-root>
|
|
12
|
+
<header class="mci-lab__nav">
|
|
13
|
+
<a class="mci-lab__brand" href="#top" aria-label="返回顶部">
|
|
14
|
+
<span class="mci-lab__brand-mark" aria-hidden="true">M</span>
|
|
15
|
+
<span>Microi Pattern Lab</span>
|
|
16
|
+
</a>
|
|
17
|
+
<nav class="mci-lab__nav-links" aria-label="页面导航">
|
|
18
|
+
<a href="#patterns">设计模式</a>
|
|
19
|
+
<a href="#flow">产品流程</a>
|
|
20
|
+
<a href="#contract">设计契约</a>
|
|
21
|
+
</nav>
|
|
22
|
+
<button class="mci-icon-button" id="themeToggle" type="button" aria-label="切换明暗主题" aria-pressed="false">
|
|
23
|
+
<span class="mci-icon-button__sun" aria-hidden="true">☀</span>
|
|
24
|
+
<span class="mci-icon-button__moon" aria-hidden="true">◐</span>
|
|
25
|
+
</button>
|
|
26
|
+
</header>
|
|
27
|
+
|
|
28
|
+
<section class="mci-hero" id="top">
|
|
29
|
+
<div class="mci-hero__ambient" aria-hidden="true">
|
|
30
|
+
<span></span><span></span><span></span>
|
|
31
|
+
</div>
|
|
32
|
+
<div class="mci-hero__content">
|
|
33
|
+
<span class="mci-eyebrow">MICROI ORIGINAL DESIGN SYSTEM</span>
|
|
34
|
+
<h1>让业务界面先有<br><em>清晰的设计意图</em></h1>
|
|
35
|
+
<p>六类内置设计模式覆盖品牌、产品流程、趋势构图、沉浸互动、动态首屏与数据工作台。每一种模式都复用同一套 Microi token、状态和响应式规则。</p>
|
|
36
|
+
<div class="mci-hero__actions">
|
|
37
|
+
<a class="mci-button mci-button--primary" href="#patterns">浏览设计模式 <span aria-hidden="true">↘</span></a>
|
|
38
|
+
<a class="mci-button mci-button--quiet" href="#flow">查看真实流程</a>
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
<div class="mci-hero__console" aria-label="设计系统实时状态">
|
|
42
|
+
<div class="mci-console__head"><span></span><span></span><span></span><b>MCI-DESIGN</b></div>
|
|
43
|
+
<div class="mci-console__orbit" aria-hidden="true"><i></i><i></i><i></i></div>
|
|
44
|
+
<div class="mci-console__metric"><small>组件状态覆盖率</small><strong>08</strong><span>default → error</span></div>
|
|
45
|
+
<div class="mci-console__footer"><span>responsive</span><span>accessible</span><span>reduced-motion</span></div>
|
|
46
|
+
</div>
|
|
47
|
+
</section>
|
|
48
|
+
|
|
49
|
+
<section class="mci-section" id="patterns">
|
|
50
|
+
<div class="mci-section__head">
|
|
51
|
+
<div><span class="mci-eyebrow">PATTERN LIBRARY</span><h2>六种模式,一套品牌语言</h2></div>
|
|
52
|
+
<div class="mci-filter" role="group" aria-label="设计模式筛选">
|
|
53
|
+
<button class="is-active" type="button" data-filter="all">全部</button>
|
|
54
|
+
<button type="button" data-filter="story">叙事</button>
|
|
55
|
+
<button type="button" data-filter="product">产品</button>
|
|
56
|
+
<button type="button" data-filter="motion">互动</button>
|
|
57
|
+
<button type="button" data-filter="data">数据</button>
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
|
|
61
|
+
<div class="mci-pattern-grid">
|
|
62
|
+
<article class="mci-pattern mci-pattern--story" data-kind="story">
|
|
63
|
+
<div class="mci-pattern__visual">
|
|
64
|
+
<span class="mci-pattern__index">01</span>
|
|
65
|
+
<div class="mci-story-word">MAKE<br><em>MEANING</em></div>
|
|
66
|
+
<i class="mci-story-line"></i>
|
|
67
|
+
</div>
|
|
68
|
+
<div class="mci-pattern__copy"><span>品牌叙事</span><h3>用观点建立首屏记忆</h3><p>大标题、单一主张、章节节奏与克制的行动路径。</p></div>
|
|
69
|
+
</article>
|
|
70
|
+
|
|
71
|
+
<article class="mci-pattern mci-pattern--product" data-kind="product">
|
|
72
|
+
<div class="mci-pattern__visual">
|
|
73
|
+
<span class="mci-pattern__index">02</span>
|
|
74
|
+
<div class="mci-phone-card">
|
|
75
|
+
<div class="mci-phone-card__bar"><i></i><span>新建空间</span><b>2 / 3</b></div>
|
|
76
|
+
<div class="mci-phone-card__progress"><i></i></div>
|
|
77
|
+
<strong>选择工作方式</strong>
|
|
78
|
+
<div class="mci-phone-card__choice is-selected"><i>✓</i><span>团队协作<small>角色与权限可配置</small></span></div>
|
|
79
|
+
<div class="mci-phone-card__choice"><i></i><span>个人项目<small>从轻量空间开始</small></span></div>
|
|
80
|
+
</div>
|
|
81
|
+
</div>
|
|
82
|
+
<div class="mci-pattern__copy"><span>真实产品流程</span><h3>状态比装饰更重要</h3><p>从登录到成功页,覆盖加载、空、错误、禁用与权限状态。</p></div>
|
|
83
|
+
</article>
|
|
84
|
+
|
|
85
|
+
<article class="mci-pattern mci-pattern--editorial" data-kind="story">
|
|
86
|
+
<div class="mci-pattern__visual">
|
|
87
|
+
<span class="mci-pattern__index">03</span>
|
|
88
|
+
<div class="mci-editorial-type"><b>32</b><span>结构化构图<br>打破均匀排版</span></div>
|
|
89
|
+
<div class="mci-editorial-card"><i></i><i></i><i></i><strong>一主两辅</strong></div>
|
|
90
|
+
</div>
|
|
91
|
+
<div class="mci-pattern__copy"><span>趋势构图</span><h3>不对称但保持秩序</h3><p>超大字号、编辑式留白、几何切片与明确阅读顺序。</p></div>
|
|
92
|
+
</article>
|
|
93
|
+
|
|
94
|
+
<article class="mci-pattern mci-pattern--immersive" data-kind="motion">
|
|
95
|
+
<div class="mci-pattern__visual">
|
|
96
|
+
<span class="mci-pattern__index">04</span>
|
|
97
|
+
<div class="mci-orb" aria-hidden="true"><i></i><i></i><i></i><b></b></div>
|
|
98
|
+
<div class="mci-orb-copy"><strong>FOCUS OBJECT</strong><span>界面 → 氛围 → 焦点对象</span></div>
|
|
99
|
+
</div>
|
|
100
|
+
<div class="mci-pattern__copy"><span>沉浸互动</span><h3>互动服务于理解</h3><p>场景只强化产品对象,并准备静态、低配和无动效降级。</p></div>
|
|
101
|
+
</article>
|
|
102
|
+
|
|
103
|
+
<article class="mci-pattern mci-pattern--motion" data-kind="motion">
|
|
104
|
+
<div class="mci-pattern__visual">
|
|
105
|
+
<span class="mci-pattern__index">05</span>
|
|
106
|
+
<div class="mci-motion-copy"><small>0—1200 MS</small><strong>第一秒<br>说清楚</strong></div>
|
|
107
|
+
<div class="mci-motion-track"><i></i><i></i><i></i><i></i></div>
|
|
108
|
+
</div>
|
|
109
|
+
<div class="mci-pattern__copy"><span>动态首屏</span><h3>用时间线组织注意力</h3><p>标题、说明、主操作依次出现;循环动效不制造操作噪声。</p></div>
|
|
110
|
+
</article>
|
|
111
|
+
|
|
112
|
+
<article class="mci-pattern mci-pattern--data" data-kind="data">
|
|
113
|
+
<div class="mci-pattern__visual">
|
|
114
|
+
<span class="mci-pattern__index">06</span>
|
|
115
|
+
<div class="mci-data-head"><span>运营总览</span><b>实时</b></div>
|
|
116
|
+
<div class="mci-data-metrics"><span><small>服务中</small><b>128</b></span><span><small>完成率</small><b>96%</b></span><span><small>风险项</small><b>07</b></span></div>
|
|
117
|
+
<div class="mci-data-chart" aria-hidden="true"><i></i><i></i><i></i><i></i><i></i><i></i><i></i></div>
|
|
118
|
+
</div>
|
|
119
|
+
<div class="mci-pattern__copy"><span>数据工作台</span><h3>先异常,再趋势,后明细</h3><p>紧凑密度、统一数值格式、筛选回显与可追溯数据状态。</p></div>
|
|
120
|
+
</article>
|
|
121
|
+
</div>
|
|
122
|
+
</section>
|
|
123
|
+
|
|
124
|
+
<section class="mci-flow" id="flow">
|
|
125
|
+
<div class="mci-flow__intro">
|
|
126
|
+
<span class="mci-eyebrow">REAL PRODUCT FLOW</span>
|
|
127
|
+
<h2>流程不是一张好看的静态图</h2>
|
|
128
|
+
<p>这个原创演示包含真实输入、校验、加载和成功反馈。界面在任何状态下都保持稳定尺寸,避免闪烁和跳动。</p>
|
|
129
|
+
<ul>
|
|
130
|
+
<li><span>01</span>默认状态可理解</li>
|
|
131
|
+
<li><span>02</span>错误状态可恢复</li>
|
|
132
|
+
<li><span>03</span>成功状态有下一步</li>
|
|
133
|
+
</ul>
|
|
134
|
+
</div>
|
|
135
|
+
<form class="mci-flow-card" id="flowForm" novalidate>
|
|
136
|
+
<div class="mci-flow-card__head"><span>创建协作空间</span><small>安全演示 · 不会提交数据</small></div>
|
|
137
|
+
<label class="mci-field"><span>空间名称</span><input id="workspaceName" name="workspace" autocomplete="organization" placeholder="例如:品牌增长中心"><small>2—24 个字符</small></label>
|
|
138
|
+
<fieldset class="mci-plan-group"><legend>协作规模</legend><label><input type="radio" name="plan" value="small" checked><span><b>轻量团队</b><small>1—10 人</small></span></label><label><input type="radio" name="plan" value="growth"><span><b>成长团队</b><small>11—50 人</small></span></label></fieldset>
|
|
139
|
+
<div class="mci-flow-card__status" id="formStatus" role="status" aria-live="polite">填写名称后即可创建演示空间。</div>
|
|
140
|
+
<button class="mci-button mci-button--primary mci-flow-card__submit" id="flowSubmit" type="submit"><span>创建演示空间</span><i aria-hidden="true">→</i></button>
|
|
141
|
+
</form>
|
|
142
|
+
</section>
|
|
143
|
+
|
|
144
|
+
<section class="mci-contract" id="contract">
|
|
145
|
+
<div class="mci-contract__copy"><span class="mci-eyebrow">MCI-DESIGN CONTRACT</span><h2>让下一位开发者与 AI 都能延续同一套界面</h2><p>设计模式、token、组件状态、页面顺序、响应式和降级策略都写进项目契约,不依赖口头描述。</p></div>
|
|
146
|
+
<div class="mci-contract__tokens" aria-label="设计 token 示例">
|
|
147
|
+
<span style="--token:#5b7cfa"><i></i><b>Primary</b><small>#5B7CFA</small></span>
|
|
148
|
+
<span style="--token:#26d7b0"><i></i><b>Success</b><small>#26D7B0</small></span>
|
|
149
|
+
<span style="--token:#ffca68"><i></i><b>Warning</b><small>#FFCA68</small></span>
|
|
150
|
+
<span style="--token:#ff6b88"><i></i><b>Danger</b><small>#FF6B88</small></span>
|
|
151
|
+
</div>
|
|
152
|
+
<pre class="mci-contract__code"><code><span>mode</span>: data-workspace
|
|
153
|
+
<span>density</span>: compact
|
|
154
|
+
<span>states</span>: [default, loading, empty, error, success]
|
|
155
|
+
<span>responsive</span>: [390, 768, 1440]
|
|
156
|
+
<span>motion</span>: reduced-motion-ready</code></pre>
|
|
157
|
+
</section>
|
|
158
|
+
|
|
159
|
+
<footer class="mci-lab__footer"><span>Microi.UI Original Pattern Asset</span><span>Local only · No external dependency</span></footer>
|
|
160
|
+
</main>
|
|
161
|
+
<script src="./app.js"></script>
|
|
162
|
+
</body>
|
|
163
|
+
</html>
|