openyida 2026.9.21 → 2026.9.22-beta.1
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/README.md +14 -20
- package/bin/yida.js +6 -11
- package/lib/app/app-list.js +3 -7
- package/lib/app/canvas-compile.js +12 -22
- package/lib/app/check-prd-completeness.js +0 -7
- package/lib/app/create-app.js +1 -4
- package/lib/app/create-form/args.js +12 -37
- package/lib/app/create-form/batch.js +11 -86
- package/lib/app/create-form.js +86 -193
- package/lib/app/create-page.js +17 -84
- package/lib/app/custom-theme.js +0 -11
- package/lib/app/form-field-validator.js +41 -26
- package/lib/app/form-open-guard.js +10 -97
- package/lib/app/get-form-config.js +0 -1
- package/lib/app/inline-css-guard.js +31 -1
- package/lib/app/services/form-compiler.js +4 -2
- package/lib/app/theme-from-design.js +41 -144
- package/lib/app/theme-presets.js +1 -1
- package/lib/app/update-app.js +13 -63
- package/lib/asset/ai-image.js +9 -59
- package/lib/asset/asset-cmd.js +7 -18
- package/lib/asset/asset-plan.js +9 -102
- package/lib/asset/asset-resolve.js +10 -55
- package/lib/asset/asset-status.js +4 -5
- package/lib/asset/host-capabilities.js +2 -11
- package/lib/asset/url-verify.js +4 -19
- package/lib/auth/dws-sync.js +145 -0
- package/lib/auth/token-auth.js +73 -9
- package/lib/auth/token-store.js +50 -0
- package/lib/connector/connector-test.js +5 -19
- package/lib/connector/contract.js +1 -3
- package/lib/core/agent-capabilities.js +16 -19
- package/lib/core/command-manifest.js +40 -329
- package/lib/core/locales/en.js +17 -74
- package/lib/core/locales/zh.js +16 -73
- package/lib/core/redact.js +10 -15
- package/lib/core/sample.js +30 -72
- package/lib/core/utils.js +4 -0
- package/lib/design-plan/design-plan.js +4 -51
- package/lib/design-plan/init.js +26 -121
- package/lib/design-plan/materialize.js +348 -451
- package/lib/design-plan/normalize.js +29 -74
- package/lib/design-plan/parallel.js +16 -71
- package/lib/design-plan/patch.js +16 -63
- package/lib/design-plan/preview.js +8 -6
- package/lib/design-plan/validate.js +11 -71
- package/lib/process/create-process.js +50 -84
- package/lib/samples/openyida-scaffold/canvas-form-drawer.canvas.jsx +90 -20
- package/lib/samples/openyida-scaffold/canvas-nav/content.jsx +13 -93
- package/lib/samples/openyida-scaffold/canvas-nav/data.jsx +18 -100
- package/lib/samples/openyida-scaffold/canvas-nav/mixed.jsx +4 -6
- package/lib/samples/openyida-scaffold/canvas-nav/shared.jsx +5 -5
- package/lib/samples/openyida-scaffold/canvas-nav/side.jsx +2 -1
- package/lib/samples/openyida-scaffold/canvas-nav/sidebar.jsx +1 -1
- package/lib/samples/openyida-scaffold/canvas-nav/top.jsx +9 -15
- package/lib/samples/yida-canvas-table-form/table-form-batch-submit.canvas.jsx +83 -9
- package/lib/samples/yida-rechart/trend-combo.canvas.jsx +87 -14
- package/package.json +1 -3
- package/scripts/postinstall.js +3 -3
- package/yida-skills/SKILL.md +16 -19
- package/yida-skills/references/official-example-schema-patterns.md +1 -1
- package/yida-skills/references/yida-api.md +0 -4
- package/yida-skills/skills/yida-app/SKILL.md +23 -46
- package/yida-skills/skills/yida-app/workflow/parallel-work.md +6 -15
- package/yida-skills/skills/yida-app/workflow/plan/step-1-understand.md +1 -1
- package/yida-skills/skills/yida-app/workflow/plan/step-2-confirm.md +1 -1
- package/yida-skills/skills/yida-app/workflow/plan/step-4-deliver.md +15 -29
- package/yida-skills/skills/yida-app/workflow/plan/workflow.md +11 -29
- package/yida-skills/skills/yida-app/workflow/step-1-resource-context.md +2 -4
- package/yida-skills/skills/yida-app/workflow/step-2-design.md +9 -23
- package/yida-skills/skills/yida-app/workflow/step-3-create-or-reuse-app.md +4 -6
- package/yida-skills/skills/yida-app/workflow/step-4-forms-processes.md +4 -15
- package/yida-skills/skills/yida-app/workflow/step-6-main-page.md +4 -6
- package/yida-skills/skills/yida-app/workflow/step-7-page-code.md +9 -15
- package/yida-skills/skills/yida-app/workflow/step-8-publish-navigation.md +11 -25
- package/yida-skills/skills/yida-app/workflow/step-9-output-finish.md +28 -68
- package/yida-skills/skills/yida-canvas-custom-page/SKILL.md +43 -42
- package/yida-skills/skills/yida-canvas-custom-page/references/canvas-style-implementation-guide.md +44 -60
- package/yida-skills/skills/yida-canvas-custom-page/references/canvas-theme-provider.md +50 -72
- package/yida-skills/skills/yida-canvas-custom-page/references/component-library-guide.md +1 -13
- package/yida-skills/skills/yida-canvas-custom-page/references/data-bridge-guide.md +1 -140
- package/yida-skills/skills/yida-canvas-custom-page/references/navigation-and-entry-guide.md +72 -101
- package/yida-skills/skills/yida-canvas-custom-page/references/page-generation-guide.md +32 -35
- package/yida-skills/skills/yida-canvas-custom-page/scripts/build-canvas-theme.js +3 -29
- package/yida-skills/skills/yida-canvas-custom-page/scripts/canvas-theme-provider.template.jsx +6 -69
- package/yida-skills/skills/yida-canvas-data-binding/SKILL.md +0 -26
- package/yida-skills/skills/yida-create-app/SKILL.md +0 -2
- package/yida-skills/skills/yida-create-form-page/SKILL.md +58 -72
- package/yida-skills/skills/yida-create-form-page/references/advanced-form-modes.md +5 -5
- package/yida-skills/skills/yida-create-form-page/references/association-form-field.md +4 -4
- package/yida-skills/skills/yida-create-form-page/references/batch-forms.md +5 -6
- package/yida-skills/skills/yida-create-form-page/references/field-definition-guide.md +19 -7
- package/yida-skills/skills/yida-create-form-page/references/form-field-properties.md +44 -62
- package/yida-skills/skills/yida-create-page/SKILL.md +6 -14
- package/yida-skills/skills/yida-create-process/SKILL.md +2 -13
- package/yida-skills/skills/yida-custom-page/SKILL.md +0 -2
- package/yida-skills/skills/yida-custom-page/references/design-system.md +1 -1
- package/yida-skills/skills/yida-dashboard/SKILL.md +4 -5
- package/yida-skills/skills/yida-data-management/SKILL.md +2 -4
- package/yida-skills/skills/yida-data-management/references/data-format-guide.md +4 -4
- package/yida-skills/skills/yida-design/SKILL.md +14 -29
- package/yida-skills/skills/yida-design/references/app/blueprint.md +70 -0
- package/yida-skills/skills/yida-design/references/app/navigation-patterns.md +43 -0
- package/yida-skills/skills/yida-design/references/app/role-journey.md +30 -0
- package/yida-skills/skills/yida-design/references/ask-human-interaction-contract.md +42 -67
- package/yida-skills/skills/yida-design/references/asset-workflow.md +2 -6
- package/yida-skills/skills/yida-design/references/design-mode.md +4 -4
- package/yida-skills/skills/yida-design/references/page-quality-gates.md +38 -26
- package/yida-skills/skills/yida-design/references/style-design-selection.md +137 -0
- package/yida-skills/skills/yida-design/references/style-designs/_design-md-template.md +185 -0
- package/yida-skills/skills/yida-design/references/style-designs/aqua-service-progress-dashboard.md +242 -0
- package/yida-skills/skills/yida-design/references/style-designs/blue-insight-operations-dashboard.md +243 -0
- package/yida-skills/skills/yida-design/references/style-designs/blue-productivity-insight-workbench.md +242 -0
- package/yida-skills/skills/yida-design/references/style-designs/command-filter-card-console.md +304 -0
- package/yida-skills/skills/yida-design/references/style-designs/contrast-command-analytics-workbench.md +261 -0
- package/yida-skills/skills/yida-design/references/style-designs/dark-stage-analytic-dashboard.md +369 -0
- package/yida-skills/skills/yida-design/references/style-designs/filterable-card-catalog.md +354 -0
- package/yida-skills/skills/yida-design/references/style-designs/green-timeline-progress-workbench.md +250 -0
- package/yida-skills/skills/yida-design/references/style-designs/registry.md +117 -0
- package/yida-skills/skills/yida-design/references/style-designs/soft-analytic-workbench.md +348 -0
- package/yida-skills/skills/yida-design/references/style-designs/soft-blue-grid-analytic-dashboard.md +658 -0
- package/yida-skills/skills/yida-design/references/style-designs/soft-bordered-analytic-workbench.md +385 -0
- package/yida-skills/skills/yida-design/references/style-designs/soft-curated-filter-gallery.md +300 -0
- package/yida-skills/skills/yida-design/references/style-designs/soft-modular-analytic-workbench.md +404 -0
- package/yida-skills/skills/yida-design/references/style-designs/soft-progress-analytics-workbench.md +382 -0
- package/yida-skills/skills/yida-design/references/style-designs/soft-timeline-analytics-workbench.md +367 -0
- package/yida-skills/skills/yida-design/references/style-designs/teal-rail-analytics-workbench.md +341 -0
- package/yida-skills/skills/yida-design/references/theme/app-custom-theme-template.css +432 -350
- package/yida-skills/skills/yida-design/references/visual-decision-engine.md +143 -19
- package/yida-skills/skills/yida-design/references/visual-scaffold-recipes.md +27 -15
- package/yida-skills/skills/yida-design/sub_skill/page-design/SKILL.md +0 -4
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/SKILL.md +8 -22
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/assets/README.md +10 -14
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/assets/build-plan-template.html +4 -9
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/build-plan-compact-schema.md +27 -49
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/build-plan-schema.md +154 -33
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/visual-design.md +127 -48
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/visual-theme-selection.md +51 -37
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/scripts/render_build_plan.py +48 -43
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/scripts/validate_design_themes.py +190 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/README.md +98 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/airy-media-grid.md +339 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/airy-modular-clarity.md +348 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/airy-structured-clarity.md +344 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/ambient-halo-layered.md +345 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/dark-focus-layered.md +355 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/dark-luminous-modular.md +377 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/deep-stage-duotone.md +352 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/hairline-runway-clarity.md +389 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/high-contrast-modular.md +364 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/index.json +329 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/interlocked-vivid-modules.md +348 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/matrix-grid-focus.md +345 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/media-rail-inspector.md +379 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/mist-layered-signal.md +347 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/modular-rail-signal.md +352 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/mono-grid-signal.md +386 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/ribbon-ledger-lift.md +384 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/segmented-meter-clarity.md +388 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/split-rail-precision.md +341 -0
- package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/status-framed-media-grid.md +361 -0
- package/yida-skills/skills/yida-design/workflow/output-design.md +375 -117
- package/yida-skills/skills/yida-design/workflow/output-prd.md +185 -0
- package/yida-skills/skills/yida-design/workflow/step-1-read-brief.md +1 -1
- package/yida-skills/skills/yida-design/workflow/step-2-theme-system.md +29 -33
- package/yida-skills/skills/yida-design/workflow/step-4-wireframe-interaction.md +1 -3
- package/yida-skills/skills/yida-design/workflow/step-5-visual-states.md +106 -22
- package/yida-skills/skills/yida-design/workflow/step-6-handoff.md +22 -15
- package/yida-skills/skills/yida-form-permission/SKILL.md +0 -6
- package/yida-skills/skills/yida-image-assets/SKILL.md +50 -73
- package/yida-skills/skills/yida-image-assets/references/manifest-contract.md +52 -82
- package/yida-skills/skills/yida-image-assets/references/source-policy.md +15 -14
- package/yida-skills/skills/yida-integration/SKILL.md +0 -1
- package/yida-skills/skills/yida-login/SKILL.md +0 -2
- package/yida-skills/skills/yida-nav-group/SKILL.md +2 -4
- package/yida-skills/skills/yida-nav-shell/SKILL.md +12 -36
- package/yida-skills/skills/yida-nav-shell/references/nav-shell-patterns.md +136 -79
- package/yida-skills/skills/yida-page-config/SKILL.md +4 -13
- package/yida-skills/skills/yida-prd/SKILL.md +3 -5
- package/yida-skills/skills/yida-prd/references/app/blueprint.md +4 -4
- package/yida-skills/skills/yida-prd/references/app/navigation-patterns.md +3 -6
- package/yida-skills/skills/yida-prd/references/app/role-journey.md +3 -5
- package/yida-skills/skills/yida-prd/references/plan-content.md +0 -4
- package/yida-skills/skills/yida-prd/workflow/output-prd.md +11 -18
- package/yida-skills/skills/yida-prd/workflow/plan-business.md +4 -4
- package/yida-skills/skills/yida-prd/workflow/step-2-information-architecture.md +8 -11
- package/yida-skills/skills/yida-publish-page/SKILL.md +1 -9
- package/yida-skills/skills/yida-requirement-analysis/SKILL.md +39 -10
- package/yida-skills/skills/yida-requirement-analysis/workflow/prepare-brief.md +71 -40
- package/yida-skills/skills-index.json +16 -36
- package/lib/app/application-entry-urls.js +0 -31
- package/lib/app/application-style.js +0 -69
- package/lib/app/canvas-icon-exports.json +0 -6160
- package/lib/app/canvas-icon-guard.js +0 -87
- package/lib/app/canvas-navigation-guard.js +0 -84
- package/lib/app/canvas-path-guard.js +0 -78
- package/lib/app/canvas-theme-guard.js +0 -184
- package/lib/app/form-data-response-guard.js +0 -57
- package/lib/asset/asset-execution.js +0 -79
- package/lib/core/css-structure.js +0 -37
- package/lib/design/check-design.js +0 -51
- package/lib/design/document.js +0 -458
- package/lib/design/icon-contrast.js +0 -85
- package/lib/design/page-content.js +0 -11
- package/lib/design-plan/artifact-updates.js +0 -117
- package/lib/design-plan/confirmation.js +0 -13
- package/lib/design-plan/entry-navigation.js +0 -97
- package/lib/design-plan/navigation-policy.js +0 -38
- package/lib/design-plan/rebase.js +0 -60
- package/lib/design-plan/themes.js +0 -101
- package/lib/design-plan/visual-policy.js +0 -42
- package/lib/samples/openyida-scaffold/canvas-admin-entry.jsx +0 -62
- package/lib/samples/openyida-scaffold/canvas-navigation.jsx +0 -56
- package/lib/samples/openyida-scaffold/canvas-view-state.jsx +0 -74
- package/yida-skills/skills/yida-app/references/entry-navigation.md +0 -193
- package/yida-skills/skills/yida-canvas-custom-page/references/view-state-recovery.md +0 -52
- package/yida-skills/skills/yida-canvas-data-binding/references/business-action-permissions.md +0 -31
- package/yida-skills/skills/yida-design/references/application-style-library.md +0 -93
- package/yida-skills/skills/yida-design/references/application-theme-consistency.md +0 -150
- package/yida-skills/skills/yida-design/references/native-form-styles.md +0 -208
- package/yida-skills/skills/yida-design/references/navigation-decision.md +0 -53
- package/yida-skills/skills/yida-design/references/page-continuity.md +0 -42
- package/yida-skills/skills/yida-design/references/theme/application-style-recipes.css +0 -58
- package/yida-skills/skills/yida-design/references/theme-selection.md +0 -67
- package/yida-skills/skills/yida-design/scripts/validate_design_themes.py +0 -302
- package/yida-skills/skills/yida-design/templates/application-styles.json +0 -398
- package/yida-skills/skills/yida-design/templates/design-themes/README.md +0 -73
- package/yida-skills/skills/yida-design/templates/design-themes/app-amber/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-amber/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-amber/form-layout.json +0 -15
- package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-executive/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-executive/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-executive/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/app-finance/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-finance/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-finance/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-glass/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-glass/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-glass/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-line/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-line/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-line/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/app-neon/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-neon/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-neon/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/app_theme.css +0 -754
- package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/design.md +0 -279
- package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/app-paper/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-paper/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-paper/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-plum/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-plum/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-plum/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-pop/app_theme.css +0 -758
- package/yida-skills/skills/yida-design/templates/design-themes/app-pop/design.md +0 -281
- package/yida-skills/skills/yida-design/templates/design-themes/app-pop/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-sage/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-sage/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-sage/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-teal/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-teal/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-teal/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/app_theme.css +0 -754
- package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/design.md +0 -279
- package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/app_theme.css +0 -752
- package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/design.md +0 -278
- package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/app-wire/app_theme.css +0 -748
- package/yida-skills/skills/yida-design/templates/design-themes/app-wire/design.md +0 -274
- package/yida-skills/skills/yida-design/templates/design-themes/app-wire/form-layout.json +0 -14
- package/yida-skills/skills/yida-design/templates/design-themes/basic-tokens.json +0 -118
- package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/app_theme.css +0 -690
- package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/design.md +0 -382
- package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/app_theme.css +0 -691
- package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/design.md +0 -380
- package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/app_theme.css +0 -696
- package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/design.md +0 -378
- package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/free-creative/app_theme.css +0 -689
- package/yida-skills/skills/yida-design/templates/design-themes/free-creative/design.md +0 -238
- package/yida-skills/skills/yida-design/templates/design-themes/free-creative/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/app_theme.css +0 -692
- package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/design.md +0 -375
- package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/app_theme.css +0 -691
- package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/design.md +0 -362
- package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/app_theme.css +0 -691
- package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/design.md +0 -409
- package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/index.json +0 -464
- package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/app_theme.css +0 -701
- package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/design.md +0 -379
- package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/app_theme.css +0 -691
- package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/design.md +0 -404
- package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/app_theme.css +0 -698
- package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/design.md +0 -389
- package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/app_theme.css +0 -691
- package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/design.md +0 -372
- package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/app_theme.css +0 -690
- package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/design.md +0 -455
- package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/app_theme.css +0 -698
- package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/design.md +0 -394
- package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/app_theme.css +0 -692
- package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/design.md +0 -391
- package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/app_theme.css +0 -711
- package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/design.md +0 -408
- package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/app_theme.css +0 -692
- package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/design.md +0 -383
- package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/form-layout.json +0 -13
- package/yida-skills/skills/yida-design/templates/navigation-styles.json +0 -769
- package/yida-skills/skills/yida-requirement-analysis/references/experience-groups.md +0 -79
- package/yida-skills/skills/yida-requirement-analysis/references/handoff.md +0 -68
package/yida-skills/skills/yida-design/references/style-designs/blue-insight-operations-dashboard.md
ADDED
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: alpha
|
|
3
|
+
template_type: visual_dna_preset
|
|
4
|
+
name: blue-insight-operations-dashboard
|
|
5
|
+
design_id: blue-insight-operations-dashboard
|
|
6
|
+
design_status: draft
|
|
7
|
+
description: "适用于顶部指标、主趋势图、右侧洞察卡、活动表和团队列表的蓝色运营分析仪表盘视觉 DNA。"
|
|
8
|
+
scenes: [dashboard, analytics_home, operations_overview, executive_summary, team_overview]
|
|
9
|
+
density: medium-high
|
|
10
|
+
layout: metric_row_chart_insight_table_side_list
|
|
11
|
+
tone: [clean, confident, structured, crisp, analytical]
|
|
12
|
+
tags: [blue_dashboard, sparkline_metrics, area_chart, insight_cards, activity_table]
|
|
13
|
+
avoid: [media_gallery, marketing_landing_page, single_form, immersive_dark_screen]
|
|
14
|
+
selection:
|
|
15
|
+
best_for: [运营概览页, 管理看板, 指标分析页, 团队概览页, 活动追踪页]
|
|
16
|
+
user_intent: [查看核心指标, 分析主趋势, 阅读洞察提醒, 跟进近期活动, 对比成员或对象状态]
|
|
17
|
+
visual_tone: [浅灰背景, 白色圆角卡片, 蓝色主图表, 彩色洞察卡片, 清晰表格]
|
|
18
|
+
avoid_for: [强图片展示, 低信息门户, 纯录入流程, 暗色大屏]
|
|
19
|
+
policies:
|
|
20
|
+
prd_first: true
|
|
21
|
+
content_neutral: true
|
|
22
|
+
no_source_locked_content: true
|
|
23
|
+
quick_actions_rendered_by_prd: true
|
|
24
|
+
theme_can_change_hue_not_dna: true
|
|
25
|
+
visual_dna:
|
|
26
|
+
- id: sparkline_metric_cards
|
|
27
|
+
name: 火花线指标卡组
|
|
28
|
+
confidence: observed
|
|
29
|
+
hooks: [metric_card, pastel_icon_square, large_number, delta_text, sparkline]
|
|
30
|
+
invariant: [顶部四张指标卡等宽横排, 左上为浅色图标方块, 中部大数字, 下方变化文本, 右下角有彩色火花线]
|
|
31
|
+
variable: [指标数量, 图标语义, 数值格式, 变化方向, 火花线颜色]
|
|
32
|
+
- id: primary_area_trend_panel
|
|
33
|
+
name: 主面积趋势面板
|
|
34
|
+
confidence: observed
|
|
35
|
+
hooks: [area_chart, smooth_line, tooltip_card, vertical_marker, range_select]
|
|
36
|
+
invariant: [左侧主面板占据最大面积, 标题区显示主数值和变化, 折线使用蓝色实线与浅色面积填充, hover 有垂直虚线和白色 tooltip]
|
|
37
|
+
variable: [指标类型, 时间范围, 数据单位, tooltip 内容, 主题色]
|
|
38
|
+
- id: pastel_insight_stack
|
|
39
|
+
name: 彩色洞察卡堆叠
|
|
40
|
+
confidence: observed
|
|
41
|
+
hooks: [insight_rail, pastel_card, icon_tile, chevron, soft_tint_background]
|
|
42
|
+
invariant: [右侧洞察面板内有 3 个左右浅色提示卡, 每张卡有图标方块、标题、两行摘要和右箭头, 色彩低饱和且不污染外层面板]
|
|
43
|
+
variable: [洞察数量, 图标语义, 状态级别, 文案长度, 主题色派生]
|
|
44
|
+
- id: activity_table_panel
|
|
45
|
+
name: 活动明细表面板
|
|
46
|
+
confidence: observed
|
|
47
|
+
hooks: [activity_table, avatar_cell, action_icon, status_pill, row_menu]
|
|
48
|
+
invariant: [底部左侧使用记录表, 行内头像或对象标识、动作图标、时间和状态胶囊齐全, 表格分隔线细且行高稳定]
|
|
49
|
+
variable: [列定义, 行数据, 状态集合, 行操作, 图标语义]
|
|
50
|
+
- id: compact_progress_side_list
|
|
51
|
+
name: 紧凑进度侧列表
|
|
52
|
+
confidence: observed
|
|
53
|
+
hooks: [side_list, avatar, progress_bar, percentage_text, view_all_link]
|
|
54
|
+
invariant: [右下侧列表在卡片内纵向排列, 每行头像/图标、两行文本、右侧进度条和百分比, 标题栏有查看入口]
|
|
55
|
+
variable: [列表对象, 进度含义, 行数, 排序方式, 头像或图标]
|
|
56
|
+
theme_adaptation:
|
|
57
|
+
accepts_theme_color: true
|
|
58
|
+
strategy: replace_hue_preserve_visual_mechanism
|
|
59
|
+
input: theme_color
|
|
60
|
+
replace_tokens: [tokens.colors.brand, tokens.colors.brand-strong, tokens.colors.brand-soft, tokens.colors.focus-ring]
|
|
61
|
+
derive_tokens: [tokens.colors.chart-primary, tokens.colors.chart-fill, tokens.colors.insight-positive, tokens.colors.insight-warning, tokens.colors.insight-info]
|
|
62
|
+
preserve_tokens: [tokens.colors.bg-page, tokens.colors.surface, tokens.colors.surface-muted, tokens.colors.text-primary, tokens.colors.text-secondary, tokens.colors.border-subtle]
|
|
63
|
+
rules:
|
|
64
|
+
- theme_color_only_changes_accent_hue
|
|
65
|
+
- preserve_light_gray_canvas
|
|
66
|
+
- keep_insight_cards_pastel
|
|
67
|
+
- do_not_tint_all_metric_cards
|
|
68
|
+
tokens:
|
|
69
|
+
colors:
|
|
70
|
+
bg-page: "#F3F6FA"
|
|
71
|
+
surface: "#FFFFFF"
|
|
72
|
+
surface-muted: "#F7F9FC"
|
|
73
|
+
text-primary: "#0F172A"
|
|
74
|
+
text-secondary: "#64748B"
|
|
75
|
+
text-tertiary: "#94A3B8"
|
|
76
|
+
border-subtle: "#E1E7F0"
|
|
77
|
+
brand: "#2169D9"
|
|
78
|
+
brand-strong: "#1756B8"
|
|
79
|
+
brand-soft: "#E8F1FF"
|
|
80
|
+
chart-primary: "#2169D9"
|
|
81
|
+
chart-fill: "rgba(33,105,217,0.14)"
|
|
82
|
+
insight-positive: "#EAF8EE"
|
|
83
|
+
insight-info: "#F5EDFF"
|
|
84
|
+
insight-warning: "#FFF8E6"
|
|
85
|
+
positive: "#18A957"
|
|
86
|
+
focus-ring: "#8CB8F5"
|
|
87
|
+
typography:
|
|
88
|
+
fontFamily: "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif"
|
|
89
|
+
page-title: { fontSize: 34, fontWeight: 750, lineHeight: 1.15, letterSpacing: 0 }
|
|
90
|
+
panel-title: { fontSize: 22, fontWeight: 750, lineHeight: 1.25, letterSpacing: 0 }
|
|
91
|
+
metric-number: { fontSize: 32, fontWeight: 800, lineHeight: 1.05, letterSpacing: 0 }
|
|
92
|
+
hero-number: { fontSize: 40, fontWeight: 800, lineHeight: 1, letterSpacing: 0 }
|
|
93
|
+
body: { fontSize: 16, fontWeight: 450, lineHeight: 1.45, letterSpacing: 0 }
|
|
94
|
+
caption: { fontSize: 14, fontWeight: 450, lineHeight: 1.35, letterSpacing: 0 }
|
|
95
|
+
spacing:
|
|
96
|
+
page-x-desktop: 40
|
|
97
|
+
page-y-desktop: 34
|
|
98
|
+
grid-gap: 28
|
|
99
|
+
panel-x: 28
|
|
100
|
+
panel-y: 28
|
|
101
|
+
rounded:
|
|
102
|
+
panel: 12
|
|
103
|
+
card: 12
|
|
104
|
+
control: 8
|
|
105
|
+
pill: 999
|
|
106
|
+
shadow:
|
|
107
|
+
panel: "0 1px 2px rgba(15,23,42,0.04)"
|
|
108
|
+
layout_stability:
|
|
109
|
+
grid_align_items: stretch
|
|
110
|
+
panel_display: flex-column
|
|
111
|
+
panel_height: "100%"
|
|
112
|
+
overflow_policy: internal_scroll_or_truncate
|
|
113
|
+
spacing_policy: parent_gap_only
|
|
114
|
+
equal_height_rule: same_row_panels_align
|
|
115
|
+
fixed_height_tokens:
|
|
116
|
+
metric_card: 190px
|
|
117
|
+
chart_panel: 560px
|
|
118
|
+
insight_panel: 560px
|
|
119
|
+
activity_panel: 420px
|
|
120
|
+
side_list_panel: 420px
|
|
121
|
+
table_row: 76px
|
|
122
|
+
quality_anchors:
|
|
123
|
+
- id: metric_sparkline_finish
|
|
124
|
+
name: 火花线指标完成度
|
|
125
|
+
required_when: PRD 包含多个核心指标
|
|
126
|
+
rule: 每张指标卡都需要图标方块、大数字、变化文本和右下火花线。
|
|
127
|
+
- id: chart_tooltip_marker
|
|
128
|
+
name: 趋势图浮层与垂直标记
|
|
129
|
+
required_when: PRD 包含主趋势或周期对比
|
|
130
|
+
rule: 主图表使用平滑折线、面积填充、点位、垂直虚线和白色 tooltip。
|
|
131
|
+
- id: pastel_insight_cards
|
|
132
|
+
name: 彩色洞察卡
|
|
133
|
+
required_when: PRD 包含建议、提醒、风险、机会或洞察摘要
|
|
134
|
+
rule: 洞察卡使用低饱和背景、图标方块、右箭头和两行摘要,色块不能过重。
|
|
135
|
+
- id: activity_status_table
|
|
136
|
+
name: 活动状态表格
|
|
137
|
+
required_when: PRD 包含活动记录或操作历史
|
|
138
|
+
rule: 表格行含头像/图标、动作、时间、状态胶囊和更多操作。
|
|
139
|
+
- id: progress_side_list
|
|
140
|
+
name: 进度侧列表
|
|
141
|
+
required_when: PRD 包含成员、对象或项目进度
|
|
142
|
+
rule: 每行有头像/图标、标题、副标题、进度条和百分比。
|
|
143
|
+
quality_floor:
|
|
144
|
+
target: polished_sample_level
|
|
145
|
+
avoid_default_admin_feel: true
|
|
146
|
+
requires_visible_micro_detail: true
|
|
147
|
+
minimum_craft_signals: [sparkline_cards, area_chart_tooltip, pastel_insight_stack, status_pills, progress_bars, subtle_borders]
|
|
148
|
+
components:
|
|
149
|
+
panel: { surface: tokens.colors.surface, rounded: tokens.rounded.panel, border: "1px solid tokens.colors.border-subtle", shadow: tokens.shadow.panel }
|
|
150
|
+
metric_card: { minHeight: 190, iconShape: pastel_square, sparkline: true }
|
|
151
|
+
chart: { height: 390, lineStyle: smooth, tooltip: white_card_with_marker }
|
|
152
|
+
insight_card: { height: 130, rounded: tokens.rounded.card, iconTile: true, chevron: true }
|
|
153
|
+
table: { rowHeight: 76, headerHeight: 58, statusStyle: pill }
|
|
154
|
+
progress_bar: { height: 8, rounded: tokens.rounded.pill }
|
|
155
|
+
modules:
|
|
156
|
+
quick_actions:
|
|
157
|
+
confidence: inferred
|
|
158
|
+
render_policy: prd_only
|
|
159
|
+
placement: page_header_or_after_metric_row
|
|
160
|
+
item_count: 2-6
|
|
161
|
+
insight_panel:
|
|
162
|
+
confidence: observed
|
|
163
|
+
render_policy: prd_only
|
|
164
|
+
placement: right_of_primary_chart
|
|
165
|
+
activity_table:
|
|
166
|
+
confidence: observed
|
|
167
|
+
render_policy: prd_only
|
|
168
|
+
placement: lower_left
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
# Blue Insight Operations Dashboard DESIGN.md
|
|
172
|
+
|
|
173
|
+
> front matter 是给流程和生成器读取的结构化配置;人工评审优先阅读下方正文。若两者冲突,风格选择、换色策略和 token 数值以前面的 YAML 为准,使用边界和业务取舍以正文为准。
|
|
174
|
+
|
|
175
|
+
## 1. 快速理解
|
|
176
|
+
|
|
177
|
+
这是一个经典、清晰、蓝色主导的运营分析仪表盘视觉 DNA。它由顶部火花线指标卡、主面积趋势图、右侧彩色洞察卡、底部活动表和进度侧列表组成。PRD 管业务内容,DESIGN.md 管视觉机制。主题色可以替换蓝色主图表和强调控件,但不能改变浅灰画布、白色卡片和彩色洞察堆叠。
|
|
178
|
+
|
|
179
|
+
## 2. 使用边界
|
|
180
|
+
|
|
181
|
+
适用于运营概览、管理看板、团队状态、活动追踪和指标分析。不适合单一表单、强媒体页面、暗色大屏或低信息门户。禁止复制任何视觉材料中的业务标题、人名、职位、项目、日期、金额、百分比和洞察文案。
|
|
182
|
+
|
|
183
|
+
## 3. 设计风格选择与换色逻辑
|
|
184
|
+
|
|
185
|
+
当 PRD 有多个 KPI、一个主趋势、若干洞察提醒、活动记录和进度列表时选择该风格。主题色只替换主图表、火花线、链接、focus ring 和部分图标底;背景、卡片、表格分隔线、低饱和洞察卡结构保持。
|
|
186
|
+
|
|
187
|
+
## 4. 视觉 DNA
|
|
188
|
+
|
|
189
|
+
`sparkline_metric_cards` 让指标卡既可扫读又有趋势细节。`primary_area_trend_panel` 是主视觉,需要面积填充和 tooltip。`pastel_insight_stack` 用柔和彩色卡表达提醒和建议。`activity_table_panel` 用表格承载近期记录。`compact_progress_side_list` 用头像或图标加进度条表达对象状态。
|
|
190
|
+
|
|
191
|
+
## 5. 视觉品质基线
|
|
192
|
+
|
|
193
|
+
指标卡必须有火花线,不能只是数字。主趋势图必须有渐变面积、垂直标记和 tooltip。洞察卡必须有低饱和背景、图标方块和右箭头。活动表要有状态胶囊和行操作。进度列表要有头像/图标、进度条和百分比。
|
|
194
|
+
|
|
195
|
+
## 6. 布局规则
|
|
196
|
+
|
|
197
|
+
```text
|
|
198
|
+
page_shell
|
|
199
|
+
page_identity + date_filter
|
|
200
|
+
metric_row
|
|
201
|
+
main_grid: primary_chart + insight_stack
|
|
202
|
+
lower_grid: activity_table + progress_side_list
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
主 grid 使用 `align-items: stretch`。同排面板等高。面板 `height: 100%`、`min-width: 0`、`min-height: 0`。图表和表格固定高度,长内容截断,间距由父级 `gap` 控制。
|
|
206
|
+
|
|
207
|
+
## 7. PRD 槽位映射
|
|
208
|
+
|
|
209
|
+
| PRD 内容类型 | 视觉槽位 | 规则 |
|
|
210
|
+
| --- | --- | --- |
|
|
211
|
+
| 多个核心指标 | `metric_row` | 等宽卡片加火花线。 |
|
|
212
|
+
| 主趋势或周期对比 | `primary_area_trend_panel` | 面积图加 tooltip。 |
|
|
213
|
+
| 洞察、提醒、风险、机会 | `insight_panel` | 彩色低饱和卡片堆叠。 |
|
|
214
|
+
| 活动或记录 | `activity_table` | 头像/图标、动作、时间、状态。 |
|
|
215
|
+
| 对象进度 | `progress_side_list` | 进度条和百分比。 |
|
|
216
|
+
|
|
217
|
+
## 8. 组件规则
|
|
218
|
+
|
|
219
|
+
卡片圆角 12px,细边框。指标卡图标方块 48px,火花线放右下。主图表线宽 3px,面积透明度 12-18%。洞察卡背景低饱和,行高稳定。状态胶囊使用浅底。进度条高度 8px。
|
|
220
|
+
|
|
221
|
+
## 9. 响应式与可访问性
|
|
222
|
+
|
|
223
|
+
桌面为两列主内容;中宽下右侧面板下移;移动端按指标、图表、洞察、活动、进度排列。图表 tooltip 在触控端可点击固定。状态不能只用颜色。
|
|
224
|
+
|
|
225
|
+
## 10. 禁止项
|
|
226
|
+
|
|
227
|
+
- 禁止复制具体业务内容、人物、项目和示例数据。
|
|
228
|
+
- 禁止默认图表、裸表格、无火花线指标卡。
|
|
229
|
+
- 禁止主题色污染洞察卡和背景。
|
|
230
|
+
- 禁止卡片自由高度造成错位。
|
|
231
|
+
- 禁止长内容撑破面板。
|
|
232
|
+
|
|
233
|
+
## 11. Agent 使用提示
|
|
234
|
+
|
|
235
|
+
先读 PRD,确认 KPI、趋势、洞察、活动和进度列表是否存在。再按主题色替换蓝色强调。实现时必须保留火花线、面积图 tooltip、洞察卡堆叠、状态表和进度侧列表。
|
|
236
|
+
|
|
237
|
+
## 12. 交付自检清单
|
|
238
|
+
|
|
239
|
+
- 内容是否全部来自 PRD。
|
|
240
|
+
- 视觉 DNA 是否按 PRD 条件落地。
|
|
241
|
+
- 主题色是否只改强调色。
|
|
242
|
+
- 图表、表格、列表是否有完整微细节。
|
|
243
|
+
- 响应式、键盘焦点和状态可访问性是否达标。
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: alpha
|
|
3
|
+
template_type: visual_dna_preset
|
|
4
|
+
name: blue-productivity-insight-workbench
|
|
5
|
+
design_id: blue-productivity-insight-workbench
|
|
6
|
+
design_status: draft
|
|
7
|
+
description: "适用于指标概览、柱状趋势、右侧行动栏和记录表并重的蓝色生产力工作台视觉 DNA。"
|
|
8
|
+
scenes: [dashboard, workbench, productivity_home, operations_overview, task_center]
|
|
9
|
+
density: medium-high
|
|
10
|
+
layout: metric_row_large_chart_right_rail_table
|
|
11
|
+
tone: [clean, focused, professional, bordered, calm]
|
|
12
|
+
tags: [blue_dashboard, metric_cards, bar_chart, right_rail, action_table]
|
|
13
|
+
avoid: [marketing_landing_page, immersive_media_page, dark_big_screen, freeform_canvas]
|
|
14
|
+
selection:
|
|
15
|
+
best_for: [生产力工作台, 任务概览页, 周期分析页, 行动中心, 记录管理页]
|
|
16
|
+
user_intent: [查看周期成果, 识别待处理事项, 跟进今日任务, 检索记录列表]
|
|
17
|
+
visual_tone: [白底浅灰画布, 细边框卡片, 蓝色主操作, 右侧纵向洞察栏, 克制高效]
|
|
18
|
+
avoid_for: [强视觉营销, 图片优先页面, 单一长表单, 没有行动队列的低信息页]
|
|
19
|
+
policies:
|
|
20
|
+
prd_first: true
|
|
21
|
+
content_neutral: true
|
|
22
|
+
no_source_locked_content: true
|
|
23
|
+
quick_actions_rendered_by_prd: true
|
|
24
|
+
theme_can_change_hue_not_dna: true
|
|
25
|
+
visual_dna:
|
|
26
|
+
- id: command_filter_header
|
|
27
|
+
name: 命令与筛选头部
|
|
28
|
+
confidence: observed
|
|
29
|
+
hooks: [primary_button, secondary_button, date_range_control, sort_filter_buttons, page_identity]
|
|
30
|
+
invariant: [顶部左侧为页面身份和辅助说明, 中部或右侧承载主次操作, 日期范围与排序筛选在同一水平线, 控件都使用细边框圆角]
|
|
31
|
+
variable: [标题文案, 操作数量, 筛选维度, 日期语义, 主题色]
|
|
32
|
+
- id: bordered_metric_row
|
|
33
|
+
name: 细边框指标横排
|
|
34
|
+
confidence: observed
|
|
35
|
+
hooks: [metric_card, large_number, split_caption, positive_delta, equal_width_grid]
|
|
36
|
+
invariant: [四个左右等宽指标卡横排, 卡片白底细边框, 数字大且紧凑, 辅助文本分两段或一段, 正向变化用小面积绿色文本]
|
|
37
|
+
variable: [指标数量, 指标名称, 数值格式, 变化语义, 卡片数量]
|
|
38
|
+
- id: large_bar_analytics_panel
|
|
39
|
+
name: 大幅柱状分析面板
|
|
40
|
+
confidence: observed
|
|
41
|
+
hooks: [bar_chart, dashed_threshold, metric_strip, insight_callout, panel_actions]
|
|
42
|
+
invariant: [主图表面板占左侧最大面积, 顶部有面板标题和操作图标, 图表上方有摘要条和浅色洞察块, 柱状图使用圆角竖条和虚线阈值]
|
|
43
|
+
variable: [图表类型, 时间粒度, 阈值数量, 洞察文案, 统计项]
|
|
44
|
+
- id: stacked_action_rail
|
|
45
|
+
name: 右侧堆叠行动栏
|
|
46
|
+
confidence: observed
|
|
47
|
+
hooks: [side_rail, focus_card, tabbed_panel, summary_card, avatar_stack, small_pills]
|
|
48
|
+
invariant: [右侧窄栏由多个等宽卡片纵向堆叠, 每个卡片内部有标题栏和右箭头或分页, 重点卡使用内嵌白卡和胶囊状态]
|
|
49
|
+
variable: [行动类型, 卡片数量, 状态集合, 参与者或对象展示, 标签页]
|
|
50
|
+
- id: utility_record_table
|
|
51
|
+
name: 工具化记录表
|
|
52
|
+
confidence: observed
|
|
53
|
+
hooks: [checkbox_table, filter_button, search_icon, row_actions, platform_or_type_chip]
|
|
54
|
+
invariant: [底部表格横跨左主栏, 表头轻量, 行高稳定, 首列复选框, 右上角有筛选搜索更多和跳转图标]
|
|
55
|
+
variable: [列定义, 行数据, 行操作, 图标语义, 搜索筛选]
|
|
56
|
+
theme_adaptation:
|
|
57
|
+
accepts_theme_color: true
|
|
58
|
+
strategy: replace_hue_preserve_visual_mechanism
|
|
59
|
+
input: theme_color
|
|
60
|
+
replace_tokens: [tokens.colors.brand, tokens.colors.brand-strong, tokens.colors.brand-soft, tokens.colors.focus-ring]
|
|
61
|
+
derive_tokens: [tokens.colors.chart-primary, tokens.colors.chart-threshold, tokens.colors.status-info, tokens.colors.insight-soft]
|
|
62
|
+
preserve_tokens: [tokens.colors.bg-page, tokens.colors.surface, tokens.colors.surface-muted, tokens.colors.text-primary, tokens.colors.text-secondary, tokens.colors.border-subtle]
|
|
63
|
+
rules:
|
|
64
|
+
- theme_color_only_changes_accent_hue
|
|
65
|
+
- do_not_tint_page_background
|
|
66
|
+
- preserve_thin_bordered_cards
|
|
67
|
+
- keep_primary_action_prominent_but_small_area
|
|
68
|
+
tokens:
|
|
69
|
+
colors:
|
|
70
|
+
bg-page: "#F7F8FA"
|
|
71
|
+
surface: "#FFFFFF"
|
|
72
|
+
surface-muted: "#F7F9FC"
|
|
73
|
+
text-primary: "#0F172A"
|
|
74
|
+
text-secondary: "#4B5563"
|
|
75
|
+
text-tertiary: "#8B95A1"
|
|
76
|
+
border-subtle: "#D9DEE7"
|
|
77
|
+
brand: "#2367C9"
|
|
78
|
+
brand-strong: "#1C55AA"
|
|
79
|
+
brand-soft: "#EAF2FF"
|
|
80
|
+
chart-primary: "#2D6CCB"
|
|
81
|
+
chart-threshold: "#2D6CCB"
|
|
82
|
+
insight-soft: "#F5FAFF"
|
|
83
|
+
positive: "#159447"
|
|
84
|
+
warning: "#D97706"
|
|
85
|
+
danger: "#D85C67"
|
|
86
|
+
focus-ring: "#8EB8F2"
|
|
87
|
+
typography:
|
|
88
|
+
fontFamily: "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif"
|
|
89
|
+
page-title: { fontSize: 28, fontWeight: 750, lineHeight: 1.2, letterSpacing: 0 }
|
|
90
|
+
panel-title: { fontSize: 18, fontWeight: 700, lineHeight: 1.3, letterSpacing: 0 }
|
|
91
|
+
metric-number: { fontSize: 40, fontWeight: 750, lineHeight: 1.05, letterSpacing: 0 }
|
|
92
|
+
body: { fontSize: 15, fontWeight: 450, lineHeight: 1.45, letterSpacing: 0 }
|
|
93
|
+
caption: { fontSize: 13, fontWeight: 450, lineHeight: 1.35, letterSpacing: 0 }
|
|
94
|
+
spacing:
|
|
95
|
+
page-x-desktop: 32
|
|
96
|
+
page-y-desktop: 28
|
|
97
|
+
grid-gap: 24
|
|
98
|
+
panel-x: 28
|
|
99
|
+
panel-y: 24
|
|
100
|
+
rounded:
|
|
101
|
+
panel: 16
|
|
102
|
+
card: 14
|
|
103
|
+
control: 10
|
|
104
|
+
pill: 999
|
|
105
|
+
shadow:
|
|
106
|
+
panel: "0 1px 2px rgba(15,23,42,0.03)"
|
|
107
|
+
layout_stability:
|
|
108
|
+
grid_align_items: stretch
|
|
109
|
+
panel_display: flex-column
|
|
110
|
+
panel_height: "100%"
|
|
111
|
+
overflow_policy: internal_scroll_or_truncate
|
|
112
|
+
spacing_policy: parent_gap_only
|
|
113
|
+
equal_height_rule: same_row_panels_align
|
|
114
|
+
fixed_height_tokens:
|
|
115
|
+
metric_card: 160px
|
|
116
|
+
chart_panel: 560px
|
|
117
|
+
side_card_large: 310px
|
|
118
|
+
side_card_small: 250px
|
|
119
|
+
table_row: 58px
|
|
120
|
+
quality_anchors:
|
|
121
|
+
- id: action_filter_header
|
|
122
|
+
name: 操作筛选头部
|
|
123
|
+
required_when: PRD 包含创建、开始、调度、排序或筛选
|
|
124
|
+
rule: 主次操作、日期范围、排序筛选要在同一视觉系统内,按钮边框和圆角一致。
|
|
125
|
+
- id: bordered_metric_cards
|
|
126
|
+
name: 细边框指标卡组
|
|
127
|
+
required_when: PRD 提供多个核心指标
|
|
128
|
+
rule: 指标卡横向等宽,数字、变化和补充文本层级清晰,不使用厚重阴影。
|
|
129
|
+
- id: threshold_bar_chart
|
|
130
|
+
name: 阈值柱状图
|
|
131
|
+
required_when: PRD 包含周期分布、频次、容量或用量数据
|
|
132
|
+
rule: 柱状图使用圆角竖条、虚线阈值、左侧标签和上方摘要条。
|
|
133
|
+
- id: stacked_right_rail
|
|
134
|
+
name: 堆叠右侧行动栏
|
|
135
|
+
required_when: PRD 包含今日焦点、下一步、摘要或提醒
|
|
136
|
+
rule: 右侧卡片等宽纵向堆叠,标题栏、箭头、胶囊和头像细节完整。
|
|
137
|
+
- id: table_toolbar_finish
|
|
138
|
+
name: 表格工具栏完成度
|
|
139
|
+
required_when: PRD 包含可检索记录
|
|
140
|
+
rule: 表格标题右侧必须有筛选、搜索、更多或跳转等工具,行内状态和操作齐全。
|
|
141
|
+
quality_floor:
|
|
142
|
+
target: polished_sample_level
|
|
143
|
+
avoid_default_admin_feel: true
|
|
144
|
+
requires_visible_micro_detail: true
|
|
145
|
+
minimum_craft_signals: [thin_borders, primary_secondary_actions, rounded_bar_chart, right_rail_cards, table_toolbar, avatar_pills]
|
|
146
|
+
components:
|
|
147
|
+
panel: { surface: tokens.colors.surface, rounded: tokens.rounded.panel, border: "1px solid tokens.colors.border-subtle", shadow: tokens.shadow.panel }
|
|
148
|
+
metric_card: { minHeight: 160, rounded: tokens.rounded.panel, border: "1px solid tokens.colors.border-subtle" }
|
|
149
|
+
button_primary: { height: 44, rounded: tokens.rounded.control, surface: tokens.colors.brand, text: "#FFFFFF" }
|
|
150
|
+
button_secondary: { height: 44, rounded: tokens.rounded.control, border: "1px solid tokens.colors.brand" }
|
|
151
|
+
chart: { height: 330, barRadius: 999, thresholdStyle: dashed }
|
|
152
|
+
table: { rowHeight: 58, headerHeight: 54, checkboxColumn: true }
|
|
153
|
+
modules:
|
|
154
|
+
quick_actions:
|
|
155
|
+
confidence: inferred
|
|
156
|
+
render_policy: prd_only
|
|
157
|
+
placement: top_command_bar_or_independent_section
|
|
158
|
+
item_count: 2-6
|
|
159
|
+
right_rail:
|
|
160
|
+
confidence: observed
|
|
161
|
+
render_policy: prd_only
|
|
162
|
+
placement: persistent_right_column
|
|
163
|
+
detail_table:
|
|
164
|
+
confidence: observed
|
|
165
|
+
render_policy: prd_only
|
|
166
|
+
placement: lower_main_column
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
# Blue Productivity Insight Workbench DESIGN.md
|
|
170
|
+
|
|
171
|
+
> front matter 是给流程和生成器读取的结构化配置;人工评审优先阅读下方正文。若两者冲突,风格选择、换色策略和 token 数值以前面的 YAML 为准,使用边界和业务取舍以正文为准。
|
|
172
|
+
|
|
173
|
+
## 1. 快速理解
|
|
174
|
+
|
|
175
|
+
这个视觉 DNA 是白底、细边框、蓝色主操作的生产力工作台。核心结构是顶部命令筛选、横排指标卡、大幅柱状分析面板、右侧堆叠行动栏和底部记录表。PRD 决定具体内容,DESIGN.md 决定视觉层级和组件工艺。主题色只替换主操作、图表和 focus ring,不改变细边框和右侧栏机制。
|
|
176
|
+
|
|
177
|
+
## 2. 使用边界
|
|
178
|
+
|
|
179
|
+
适合任务中心、周期分析、行动跟进、团队或项目概览等中高密工作台。不适合营销页、图片页面、沉浸大屏、纯表单。不得复制视觉材料中的个人名、专属活动名、工具品牌、具体日期、时间、数量或文案。没有行动队列时,不要强行渲染右侧栏。
|
|
180
|
+
|
|
181
|
+
## 3. 设计风格选择与换色逻辑
|
|
182
|
+
|
|
183
|
+
当 PRD 同时包含核心指标、周期图表、右侧焦点卡和记录列表时选择该风格。主题色替换 `brand`、图表柱、按钮和 focus ring;背景、白色面板、浅灰边框、表格分隔线和右栏堆叠结构保持。
|
|
184
|
+
|
|
185
|
+
## 4. 视觉 DNA
|
|
186
|
+
|
|
187
|
+
`command_filter_header` 负责把页面身份、主次操作和筛选控制组织在一行。`bordered_metric_row` 用等宽指标卡建立扫读入口。`large_bar_analytics_panel` 是主分析区域,柱状图必须有圆角条、阈值线和摘要条。`stacked_action_rail` 是右侧持续上下文,承载焦点、下一步和摘要。`utility_record_table` 是记录落地层,必须有工具栏和稳定行高。
|
|
188
|
+
|
|
189
|
+
## 5. 视觉品质基线
|
|
190
|
+
|
|
191
|
+
头部操作要呈现主次关系;指标卡要靠细边框和数字层级,而不是厚阴影;柱状图不能使用默认样式,需有圆角、阈值和轻网格;右侧栏卡片要有分页、箭头、胶囊、头像或状态细节;表格必须有筛选搜索和行操作。
|
|
192
|
+
|
|
193
|
+
## 6. 布局规则
|
|
194
|
+
|
|
195
|
+
```text
|
|
196
|
+
page_shell
|
|
197
|
+
command_filter_header
|
|
198
|
+
metric_row
|
|
199
|
+
main_grid
|
|
200
|
+
chart_and_table_column
|
|
201
|
+
stacked_right_rail
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
主 grid 使用 `align-items: stretch`。左主栏和右栏同高策略由父级控制。面板 `height: 100%`、`min-width: 0`、`min-height: 0`。柱状图固定高度,右栏内部可滚动,表格行固定高度,间距只用父级 `gap`。
|
|
205
|
+
|
|
206
|
+
## 7. PRD 槽位映射
|
|
207
|
+
|
|
208
|
+
| PRD 内容类型 | 视觉槽位 | 规则 |
|
|
209
|
+
| --- | --- | --- |
|
|
210
|
+
| 全局操作和筛选 | `command_filter_header` | 主次按钮、日期、筛选排序同层。 |
|
|
211
|
+
| 核心指标 | `metric_row` | 细边框等宽卡片,不强造数字。 |
|
|
212
|
+
| 周期分布或容量数据 | `large_chart_panel` | 优先圆角柱状图;无数据时用同等品质主内容面板。 |
|
|
213
|
+
| 今日焦点、下一步、提醒 | `right_rail` | 右侧堆叠卡片,由 PRD 决定数量。 |
|
|
214
|
+
| 记录列表 | `detail_table` | 表格工具栏、复选框、行操作齐全。 |
|
|
215
|
+
|
|
216
|
+
## 8. 组件规则
|
|
217
|
+
|
|
218
|
+
卡片圆角 14-16px,1px 边框,轻阴影或无阴影。主按钮使用实底,次按钮白底描边。指标数字 36-42px。柱状图条宽稳定、端点全圆角,阈值线虚线。右栏卡片内嵌子卡可用浅蓝或白底。表格首列复选框,末列更多操作。
|
|
219
|
+
|
|
220
|
+
## 9. 响应式与可访问性
|
|
221
|
+
|
|
222
|
+
桌面端右栏固定在右侧;中等宽度右栏下移;移动端按头部、指标、图表、右栏卡片、表格顺序纵向。触控目标不小于 44px。图标按钮有标签。状态用颜色加文字或图标。
|
|
223
|
+
|
|
224
|
+
## 10. 禁止项
|
|
225
|
+
|
|
226
|
+
- 禁止复制具体业务、人物、专属活动、工具品牌、日期和示例数字。
|
|
227
|
+
- 禁止让主题色污染背景或所有卡片。
|
|
228
|
+
- 禁止默认柱状图、裸表格、无工具栏列表。
|
|
229
|
+
- 禁止自由高度右栏卡片和零散 margin。
|
|
230
|
+
- 禁止 PRD 没有行动队列时强加右栏。
|
|
231
|
+
|
|
232
|
+
## 11. Agent 使用提示
|
|
233
|
+
|
|
234
|
+
先读 PRD 判断是否存在指标、周期分析、行动栏和记录表。再按主题色替换蓝色强调。实现时必须保留细边框、圆角柱状图、右栏堆叠卡片和工具化表格。
|
|
235
|
+
|
|
236
|
+
## 12. 交付自检清单
|
|
237
|
+
|
|
238
|
+
- 内容是否来自 PRD。
|
|
239
|
+
- 指标、图表、右栏、表格是否按 PRD 条件落地。
|
|
240
|
+
- 主题色是否只改写强调色。
|
|
241
|
+
- 面板边框、稳定高度和父级 gap 是否正确。
|
|
242
|
+
- 组件状态、响应式、可访问性是否完整。
|