openyida 2026.9.21 → 2026.9.22-beta.2
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 +148 -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/lib/core/locales/en.js
CHANGED
|
@@ -4,37 +4,10 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
module.exports = {
|
|
7
|
-
design_plan: {
|
|
8
|
-
rebase_required: 'Before first materialization, repair the matching facts in business.json/visual.json and preserve the source baseline. If the source changed, add --rebase-parts to the original materialize command to reconcile against the saved baseline. Do not invent a digest, delete drafts, or run init again.',
|
|
9
|
-
baseline_missing: 'No trusted baseline matches these parts. Preserve the plan and facts; restore .build-plan-base.json from the original workspace. If unavailable, report the blocker instead of inventing a digest or rebuilding.',
|
|
10
|
-
rebase_stage_invalid: 'Rebasing is limited to drafts before first materialization. For presented or materialized plans use patch --materialize on the current build-plan.json, without merging initial parts again.',
|
|
11
|
-
rebase_conflict: 'The source and part changed the same field differently. Review conflicts and explicitly select the current or baseline value in the part before retrying; preserve other facts. No files were saved.',
|
|
12
|
-
repair_page_bindings: 'Repair pageApplications in visual.json to match customPageDetails in business.json one to one; exclude native forms. Each visualMemoryApplications must be an array; use [] when none apply. Keep the existing draft, fix the listed fields and retry the original command. Do not delete the directory or run init again.',
|
|
13
|
-
},
|
|
14
|
-
design_document: {
|
|
15
|
-
update_conflict: 'Cannot update {0} ({1}): the existing content differs from the last generated version. Read this section, reconcile the local edit with the plan source, and retry. No files were saved.',
|
|
16
|
-
theme_css_invalid: 'Theme CSS near line {0} has an unclosed or mismatched delimiter, string, or comment. Fix it and retry.',
|
|
17
|
-
invalid: 'Design validation failed: {0} ({1})',
|
|
18
|
-
yaml: 'Design document frontmatter is not valid YAML',
|
|
19
|
-
token_value: 'Token {0} must be a resolved single-line CSS value',
|
|
20
|
-
token_conflict: 'Token {0} has duplicate or conflicting values',
|
|
21
|
-
tokens_required: 'design.md requires frontmatter containing tokens',
|
|
22
|
-
brand_required: 'design.md is missing brand tokens: {0}',
|
|
23
|
-
usage: 'Usage: openyida check-design <design.md> [--prd <prd.md>] [--base-dir <dir>] [--json]',
|
|
24
|
-
read_error: 'Cannot read design validation file: {0}',
|
|
25
|
-
checked: 'Design validation passed: {0}; {1} pages, {2} tokens',
|
|
26
|
-
},
|
|
27
|
-
asset: {
|
|
28
|
-
sourceRecords: 'Record assetId, creator, sourcePage, license, licenseUrl, licenseCheckedAt (YYYY-MM-DD), and authorizationEvidence (an array of evidence URLs or file paths) in assets[] via --input. The manifest preserves these records; missing values remain empty and do not establish commercial authorization.',
|
|
29
|
-
executionReview: 'Review asset execution evidence: {0}. Check background dispatch receipts, business intervals and synchronous fallback reasons.',
|
|
30
|
-
localFileUnavailable: 'Image file not found: {0}. Check the command working directory or use an absolute path.',
|
|
31
|
-
invalidStrategy: 'Image requirements must be an object listing image slots by page.',
|
|
32
|
-
},
|
|
33
7
|
// ── 通用 ──────────────────────────────────────────
|
|
34
8
|
|
|
35
9
|
// ── bin/yida.js printHelp() ────────────────────────
|
|
36
10
|
help: {
|
|
37
|
-
cmd_check_design: 'Validate design documents, theme tokens and PRD handoff',
|
|
38
11
|
subtitle: 'AI-powered low-code development tool for Yida',
|
|
39
12
|
usage: 'Usage:',
|
|
40
13
|
alias: 'Alias:',
|
|
@@ -52,9 +25,8 @@ module.exports = {
|
|
|
52
25
|
cmd_design_plan_preview: 'Update plan drafts by module',
|
|
53
26
|
design_plan_preview_invalid: 'Draft update failed; check the error details',
|
|
54
27
|
cmd_design_plan_init: 'Initialize a plan draft from confirmed requirements',
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
cmd_design_plan_patch: 'Patch plan fields and optionally sync documents and theme',
|
|
28
|
+
cmd_design_plan_materialize: 'Generate and validate design-plan artifacts from build-plan.json',
|
|
29
|
+
cmd_design_plan_patch: 'Patch a design plan by field path and invalidate prior confirmation',
|
|
58
30
|
cmd_update_app: 'Update app info',
|
|
59
31
|
cmd_app_online: 'Enable a Yida app',
|
|
60
32
|
cmd_app_offline: 'Disable a Yida app',
|
|
@@ -83,7 +55,6 @@ module.exports = {
|
|
|
83
55
|
cmd_get_form_config: 'Query form configuration',
|
|
84
56
|
group_data: 'Data & Permissions',
|
|
85
57
|
cmd_data: 'Unified data management (form/process/task/subform)',
|
|
86
|
-
data_notes: 'DateField uses numeric Unix timestamps in milliseconds; CascadeDateField uses an array of millisecond timestamps. Convert using the business timezone; date strings and Unix seconds are not accepted. --resolve-aliases only resolves field names.',
|
|
87
58
|
cmd_task_center: 'Global task center (todo/processed/cc etc.)',
|
|
88
59
|
cmd_basic_info: 'Query organization basic info, capacity, quotas, and domain settings',
|
|
89
60
|
cmd_read_dingtalk_doc: 'Fetch Markdown content from a DingTalk document',
|
|
@@ -95,7 +66,6 @@ module.exports = {
|
|
|
95
66
|
group_process: 'Process',
|
|
96
67
|
cmd_configure_process: 'Configure and publish process rules; Supports append/forward via JSON nodes[].actions.normalActions/appendActions',
|
|
97
68
|
cmd_create_process: 'Create process form (all-in-one); Supports append/forward via JSON nodes[].actions.normalActions/appendActions',
|
|
98
|
-
create_process_notes: 'formMode=create|reuse identifies new and reused forms. On reuse, formTitle and fieldCount are null (not queried); creation returns the title and field count. This also applies to configuration failure output; check success and verificationLevel. Use --replace only for explicitly authorized whole-flow replacement of an existing draft or published process.',
|
|
99
69
|
cmd_ai_form_setting: 'Manage process form AI approval prompts',
|
|
100
70
|
cmd_process_preview: 'Preview process instance (visual flowchart)',
|
|
101
71
|
group_share: 'Page Config & Sharing',
|
|
@@ -181,10 +151,6 @@ module.exports = {
|
|
|
181
151
|
},
|
|
182
152
|
|
|
183
153
|
cli: {
|
|
184
|
-
design_plan_entry_mode_required: 'Choose an entry mode: shared business pages (unified), separate frontend and business backend (service-management), frontend only (frontend-only), or business backend only (backend-only).',
|
|
185
|
-
design_plan_backend_only_roles: 'For backend-only, every entry must use role management.',
|
|
186
|
-
design_plan_local_menu_binding: 'Local menu {0} requires a host page and viewKey: entry {1} sceneKey must match the page sceneKey, menu resource must equal the page name, and viewKey must be nonempty. This applies to every entry role.',
|
|
187
|
-
design_plan_visual_object_required: '{0} must be an object, not a string or array. Preserve the structure generated by init and fill in its values. Example: {1}.',
|
|
188
154
|
help: `
|
|
189
155
|
openyida - Yida CLI Tool
|
|
190
156
|
|
|
@@ -199,7 +165,7 @@ Commands:
|
|
|
199
165
|
create-app --name "<name>" Create an app and output appType; configure theme resources and Logo source with update-app
|
|
200
166
|
create-page <appType> "<pageName>" [--mode dashboard] [--hide-nav] Create a custom page, output pageId
|
|
201
167
|
update-app <appType> [--name "..."] [--hide-app-nav|--show-app-nav] Update app info
|
|
202
|
-
create-form create <appType> "<formName>" <fieldsJSON> [--layout
|
|
168
|
+
create-form create <appType> "<formName>" <fieldsJSON> [--layout <layout>] [--theme <theme>] [--label-align <align>] Create a form page
|
|
203
169
|
create-form update <appType> <formUuid> <changesJSON> Update a form page
|
|
204
170
|
list-forms <appType> [--keyword <text>] List forms/pages in an app
|
|
205
171
|
get-schema <appType> <formUuid|--all> Get one form Schema or all form Schemas
|
|
@@ -233,7 +199,7 @@ Commands:
|
|
|
233
199
|
get-permission <appType> <formUuid> Query form permission config
|
|
234
200
|
save-permission <appType> <formUuid> [--data-permission <json>] [--action-permission <json>] Save form permission config
|
|
235
201
|
configure-process <appType> <formUuid> <processDefinitionFile> [processCode] [--replace] Configure and publish process
|
|
236
|
-
create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile>
|
|
202
|
+
create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile> Create process form (all-in-one)
|
|
237
203
|
create-process <appType> --formUuid <formUuid> <processDefinitionFile> [--replace] Reuse existing form for process
|
|
238
204
|
connector list [options] List HTTP connectors
|
|
239
205
|
connector create "<name>" "<domain>" --operations <file> [options] Create connector
|
|
@@ -325,13 +291,13 @@ Examples:
|
|
|
325
291
|
integration_enable_example: 'Example: openyida integration enable APP_XXX FORM-XXX LPROC-XXX',
|
|
326
292
|
integration_disable_usage: 'Usage: openyida integration disable <appType> <formUuid> <processCode>',
|
|
327
293
|
integration_disable_example: 'Example: openyida integration disable APP_XXX FORM-XXX LPROC-XXX',
|
|
328
|
-
compile_usage: 'Usage: openyida compile <sourceFile>
|
|
294
|
+
compile_usage: 'Usage: openyida compile <sourceFile>',
|
|
329
295
|
compile_example: 'Example: openyida compile pages/src/home.oyd.jsx',
|
|
330
296
|
check_page_usage: 'Usage: openyida check-page <sourceFile> [--compat] [--json]',
|
|
331
297
|
check_page_example: 'Example: openyida check-page pages/src/home.oyd.jsx --json',
|
|
332
298
|
build_page_usage: 'Usage: openyida build-page <sourceFile> [--output pages/build/page.yida.jsx|--write] [--json]',
|
|
333
299
|
build_page_example: 'Example: openyida build-page pages/src/dashboard.oyd.jsx --output pages/build/dashboard.yida.jsx',
|
|
334
|
-
publish_usage: 'Usage: openyida publish <sourceFile> <appType> <formUuid> [--health-check] [--
|
|
300
|
+
publish_usage: 'Usage: openyida publish <sourceFile> <appType> <formUuid> [--health-check] [--canvas] [--auto-nav-order]',
|
|
335
301
|
publish_example: 'Example: openyida publish pages/src/home.canvas.jsx APP_XXX FORM-XXX --health-check',
|
|
336
302
|
check_prd_completeness_usage: 'Usage: openyida check-prd-completeness <prd.md> --app-type <appType> [--build-manifest <file>] [--json]',
|
|
337
303
|
check_prd_completeness_example: 'Example: openyida check-prd-completeness prd/order-management/prd.md --app-type APP_XXX --build-manifest prd/order-management/build-manifest.json --json',
|
|
@@ -355,7 +321,7 @@ Examples:
|
|
|
355
321
|
import_example2: ' openyida import ./yida-export.json "Quality System (Production)"',
|
|
356
322
|
configure_process_usage: 'Usage: openyida configure-process <appType> <formUuid> <processDefinitionFile> [processCode] [--replace]',
|
|
357
323
|
configure_process_example: 'Example: openyida configure-process "APP_XXX" "FORM-YYY" .cache/openyida/process/process-definition.json',
|
|
358
|
-
create_process_usage: 'Usage: openyida create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile
|
|
324
|
+
create_process_usage: 'Usage: openyida create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile>\n openyida create-process <appType> --formUuid <formUuid> <processDefinitionFile> [--replace]',
|
|
359
325
|
create_process_example: 'Example: openyida create-process "APP_XXX" "Order Form" .cache/openyida/process/fields.json .cache/openyida/process/process-definition.json',
|
|
360
326
|
process_usage: 'Usage: openyida process <subcommand>\n\nSubcommands:\n preview <appType> <processInstanceId> [--output <path>] Preview process instance (generate visual flowchart)',
|
|
361
327
|
process_preview_usage: 'Usage: openyida process preview <appType> <processInstanceId> [--output <path>]',
|
|
@@ -368,7 +334,7 @@ Examples:
|
|
|
368
334
|
login_usage: 'Usage: openyida login [entryUrl|--public|--alibaba|--intl] [--no-browser] [--check-only] [--json] [--client-id <clientId>]',
|
|
369
335
|
login_example: 'Examples:\n openyida login # Automatically open the browser via OAuth loopback login\n openyida login --no-browser # Let the caller handle the authorization URL\n openyida login --check-only --json # Check token auth status only\n openyida login --intl # Login against the international environment\n OPENYIDA_NO_BROWSER=1 openyida login # Suppress auto-opening the browser with an environment variable\n openyida auth login # Login alias',
|
|
370
336
|
login_unsupported_option: 'Removed legacy login option is no longer supported: {0}. Use token/OAuth login; env token mode reads only OPENYIDA_* tokens.',
|
|
371
|
-
auth_usage: 'Usage: openyida auth <status|login|refresh|logout|profiles|profile switch>',
|
|
337
|
+
auth_usage: 'Usage: openyida auth <status|login|sync-dws|refresh|logout|profiles|profile switch>',
|
|
372
338
|
auth_example: 'Examples:\n openyida auth status # View login status\n openyida auth profiles # List existing login profiles\n openyida auth profile switch <auth_profile> # Switch current project to an existing profile\n openyida auth login # Add a profile when the target does not exist\n openyida auth refresh # Refresh login session\n openyida auth logout # Unbind current project auth\n openyida auth logout --profile <auth_profile> # Delete a shared profile explicitly',
|
|
373
339
|
org_usage: 'Usage: openyida org <list|switch> [--json] [--corp-id <corpId>]',
|
|
374
340
|
org_example: 'Examples:\n openyida org list --json # List accessible organizations\n openyida org switch --corp-id dingXXX # Switch existing profiles first; login to add one if missing',
|
|
@@ -737,7 +703,7 @@ Examples:
|
|
|
737
703
|
// ── lib/create-page.js ─────────────────────────────
|
|
738
704
|
create_page: {
|
|
739
705
|
title: ' openyida create-page - Yida Custom Page Creation Tool',
|
|
740
|
-
usage: 'Usage: openyida create-page <appType> "<pageName>" [--mode dashboard] [--hide-nav]
|
|
706
|
+
usage: 'Usage: openyida create-page <appType> "<pageName>" [--mode dashboard] [--hide-nav]',
|
|
741
707
|
example: 'Example: openyida create-page "APP_XXX" "Game Home" --mode dashboard; explicitly hide page nav: openyida create-page "APP_XXX" "Fullscreen Dashboard" --mode dashboard --hide-nav',
|
|
742
708
|
app_id: ' App ID: {0}',
|
|
743
709
|
page_name: ' Page name: {0}',
|
|
@@ -747,7 +713,6 @@ Examples:
|
|
|
747
713
|
step_dashboard_config: '\n🖥️ Step 3: Configure page-level hidden navigation',
|
|
748
714
|
dashboard_config_ok: ' ✅ Page navigation hidden by explicit request, chromeless custom URL enabled',
|
|
749
715
|
dashboard_config_failed: ' ⚠️ Page-level hidden navigation config failed: {0}',
|
|
750
|
-
navigation_unverified: 'The page was created, but readback did not confirm hidden navigation. Repair and verify the returned pageId; do not create another page.',
|
|
751
716
|
err_mode_invalid: 'Unsupported page mode: {0}',
|
|
752
717
|
mode_hint: 'Available modes: default, dashboard. Page navigation is visible by default; pass --hide-nav or --render-nav false to hide page navigation. Use update-app --hide-app-nav to hide app navigation.',
|
|
753
718
|
page_id_label: ' pageId: {0}',
|
|
@@ -798,7 +763,6 @@ Examples:
|
|
|
798
763
|
|
|
799
764
|
// ── lib/create-form.js ─────────────────────────────
|
|
800
765
|
create_form: {
|
|
801
|
-
divider_type_invalid: 'Unsupported divider style: {0}. Supported values: {1}',
|
|
802
766
|
batch_invalid: 'Invalid form batch; check the error details',
|
|
803
767
|
create_title: ' yida-create-form-page - Yida Form Page Creation Tool',
|
|
804
768
|
update_title: ' yida-create-form-page - Yida Form Page Update Tool',
|
|
@@ -857,12 +821,12 @@ Examples:
|
|
|
857
821
|
changes_applied: ' Changes applied: {0}',
|
|
858
822
|
create_post_failure_retry_advice: 'Do not repeat create directly. First run openyida list-forms {0} --keyword "{1}" to check for an existing same-title form; if this run already created a blank/existing form, prefer create-form update or a future --resume-form-uuid flow.',
|
|
859
823
|
error: '\n❌ Error: {0}',
|
|
860
|
-
usage_create: 'Usage: openyida create-form create <appType> <formTitle> <fieldsJsonFile>
|
|
824
|
+
usage_create: 'Usage: openyida create-form create <appType> <formTitle> <fieldsJsonFile>',
|
|
861
825
|
example_create: 'Example: openyida create-form create "APP_XXX" "Employee Info" .cache/openyida/forms/employee-fields.json',
|
|
862
826
|
usage_update: 'Usage: openyida create-form update <appType> <formUuid> <changesJsonOrFile>',
|
|
863
827
|
example_update: 'Example: openyida create-form update "APP_XXX" "FORM-YYY" \'[{"action":"add","field":{"type":"TextField","label":"Note"}}]\'',
|
|
864
828
|
usage_label: 'Usage:',
|
|
865
|
-
usage_create_short: ' create: openyida create-form create <appType> <formTitle> <fieldsJsonFile>
|
|
829
|
+
usage_create_short: ' create: openyida create-form create <appType> <formTitle> <fieldsJsonFile>',
|
|
866
830
|
usage_update_short: ' update: openyida create-form update <appType> <formUuid> <changesJsonOrFile> or --data-file <changesJsonOrFile>',
|
|
867
831
|
resume_readback_failed: 'Unable to read the target form before resume.',
|
|
868
832
|
resume_ownership_unverified: 'The target form does not belong to the requested app; resume stopped.',
|
|
@@ -1006,7 +970,7 @@ Examples:
|
|
|
1006
970
|
|
|
1007
971
|
import_example2: ' openyida import ./yida-export.json "Quality Traceability System (Production)"',
|
|
1008
972
|
exec_failed: '\n❌ Execution failed: {0}',
|
|
1009
|
-
auth_usage: 'Usage: openyida auth <status|login|refresh|logout|profiles|profile switch>',
|
|
973
|
+
auth_usage: 'Usage: openyida auth <status|login|sync-dws|refresh|logout|profiles|profile switch>',
|
|
1010
974
|
auth_example: 'Examples:\n openyida auth status # View login status\n openyida auth profiles # List existing login profiles\n openyida auth profile switch <auth_profile> # Switch current project to an existing profile\n openyida auth login # Add a profile when the target does not exist\n openyida auth refresh # Refresh login session\n openyida auth logout # Unbind current project auth\n openyida auth logout --profile <auth_profile> # Delete a shared profile explicitly',
|
|
1011
975
|
org_usage: 'Usage: openyida org <list|switch> [--json] [--corp-id <corpId>]',
|
|
1012
976
|
org_example: 'Examples:\n openyida org list --json # List accessible organizations\n openyida org switch --corp-id dingXXX # Switch existing profiles first; login to add one if missing',
|
|
@@ -1161,10 +1125,9 @@ Examples:
|
|
|
1161
1125
|
theme_preset_conflict: 'A preset colour cannot be combined with custom CSS or themeColor. Use --colour custom or omit --colour.',
|
|
1162
1126
|
custom_theme_color_required: 'colour=custom requires a theme file or a valid themeColor. Pass --theme-file or --theme-color.',
|
|
1163
1127
|
theme_not_persisted: 'App theme readback failed or did not match the saved settings. The CSS resource binding is unverified. Inspect themeVerification and retry update-app <appType> --theme-file <css>; do not refresh the app.',
|
|
1164
|
-
navigation_not_persisted: 'App navigation readback failed or did not match the requested settings. Navigation changes remain unverified. Inspect the expected values, actual values and readback error in navigationVerification, then check the current app settings.',
|
|
1165
1128
|
usage: 'openyida update-app <appType> [--name "New Name"] [--theme-file ./theme.css] [--nav-theme light|dark|white|gray] [--logo-source appIcon|customImage] [--layout side|top|l_shape]',
|
|
1166
1129
|
example: 'openyida update-app APP_XXX --theme-file ./app-theme.css --nav-theme light --logo-source appIcon --layout side',
|
|
1167
|
-
options: 'Options:\n --name, -n App name (specify at least one update field)\n --desc, -d App description\n --icon Icon name (e.g. xian-yingyong)\n --icon-color Icon color (default: #0089FF)\n --colour, --theme podBlue | podGreen | podOrange | deepBlue | teal | black | custom ...\n --theme-color
|
|
1130
|
+
options: 'Options:\n --name, -n App name (specify at least one update field)\n --desc, -d App description\n --icon Icon name (e.g. xian-yingyong)\n --icon-color Icon color (default: #0089FF)\n --colour, --theme podBlue | podGreen | podOrange | deepBlue | teal | black | custom ...\n --theme-color Legacy standalone theme color; ignored when a theme file is imported\n --theme-file Custom app theme CSS file (up to 20 MB; must declare --color-brand1-6)\n --nav-theme Navigation theme: light, dark, white, or gray\n --logo-source Navigation logo source: appIcon or customImage\n --layout Modern navigation layout: side, top, or l_shape\n --hide-app-nav Hide app navigation in visit mode, only for custom pages with self-rendered top/side navigation\n --show-app-nav Restore app navigation in visit mode',
|
|
1168
1131
|
missing_app_type: 'Error: missing appType argument',
|
|
1169
1132
|
missing_update_field: 'Error: at least one update field must be specified (--name, --desc, --icon, --theme, --theme-color, --theme-file, --nav-theme, --logo-source, --layout, --hide-app-nav, --show-app-nav)',
|
|
1170
1133
|
title: ' update-app - Yida App Info Update Tool',
|
|
@@ -1335,14 +1298,6 @@ Examples:
|
|
|
1335
1298
|
failed: 'Page lint check failed',
|
|
1336
1299
|
},
|
|
1337
1300
|
publish: {
|
|
1338
|
-
canvas_path_missing_app_type: 'Line {0}: navigation is missing appType. Use the canvas-navigation sample and verified IDs to build /{appType}/{pageType}/{formUuid}, not a bare /custom/ route.',
|
|
1339
|
-
canvas_theme_fixed_brand: 'Line {0}: ConfigProvider fixes a brand interaction color to a string. Use canvas-theme and resolved application colors; CSS var belongs in DOM styles, not unresolved antd color tokens.',
|
|
1340
|
-
canvas_navigation_local_platform: 'Line {0} filters local views through platform navigation. Use mode=local or local view state; bind real pages to formUuid/navUuid and continue checking declared access.',
|
|
1341
|
-
canvas_navigation_document_flex: 'Line {0} uses a zero-basis workspace flex layout for document content. Refresh canvas-nav-content: document pages need natural height and block flow; fixed-height flex belongs to workspace.',
|
|
1342
|
-
canvas_theme_not_assembled: 'The theme marker on line {0} is not assembled. Run build-canvas-theme.js and compile/publish its separate output file. Pages with an integrated Provider do not need this marker.',
|
|
1343
|
-
canvas_theme_provider_missing: 'The page near line {0} has no mounted theme provider. Return <CanvasThemeProvider><PageContent /></CanvasThemeProvider> from YidaComp so the content can read the application theme.',
|
|
1344
|
-
canvas_theme_root_hook: 'Theme is read before its provider is active near line {0}. Move useCanvasThemeContext into PageContent and wrap <PageContent /> with CanvasThemeProvider in YidaComp.',
|
|
1345
|
-
canvas_theme_context_scope: 'CanvasThemeContext is declared inside a function near line {0}. Declare the context and provider at module scope and wrap the business component at the page entry.',
|
|
1346
1301
|
canvas_inline_css_invalid: 'Inline CSS near line {0} has an unclosed or mismatched delimiter, string, or comment. Fix it before publishing.',
|
|
1347
1302
|
title: ' yida-publish - Yida Page Publishing Tool',
|
|
1348
1303
|
platform: ' Platform: {0}',
|
|
@@ -1378,7 +1333,7 @@ Examples:
|
|
|
1378
1333
|
lint_controlled_input: 'input uses controlled value mode. Yida pages should use defaultValue + onChange to update _customState',
|
|
1379
1334
|
lint_native_select_ui: 'Found a native <select>. In normal custom pages, use a button+menu+option custom dropdown with an arrow, selected marker, and focus reset; do not render a form SelectField as a page filter component.',
|
|
1380
1335
|
lint_iframe_self_navigation: 'Yida custom pages run in an iframe. Use target="_top"/target="_blank" or window.top.location for Yida page navigation to avoid nested pages.',
|
|
1381
|
-
lint_form_open_container: '
|
|
1336
|
+
lint_form_open_container: 'Opening Yida form submission/detail pages from a custom page must use FormOpenContainer: a 50vw drawer iframe on desktop, and full/new page only on mobile. Button handlers should call openForm({ type: "submission" | "detail", ... }).',
|
|
1382
1337
|
lint_form_detail_link: 'Yida form detail pages must use a real formInstId: read row.formInstId first, and disable or warn when the instance id is missing instead of opening a formDetail link with an empty formInstId.',
|
|
1383
1338
|
lint_page_size_limit: 'pageSize={0} exceeds the Yida API limit of 100; use 100 or less',
|
|
1384
1339
|
lint_page_size_recommend: 'pageSize={0} is large; the recommended value is 50 (best performance, max 100). Prefer 10/20/50',
|
|
@@ -1388,7 +1343,6 @@ Examples:
|
|
|
1388
1343
|
lint_searchformdata_http_query_params: 'The direct searchFormDatas.json URL query is missing required params: {0}. Use URLSearchParams with appType, formUuid, currentPage, pageSize, and searchFieldJson',
|
|
1389
1344
|
lint_searchformdata_http_csrf: 'A direct searchFormDatas.json call must put the runtime CSRF token in both the _csrf_token URL query and the global_csrf_token request header',
|
|
1390
1345
|
lint_searchformdata_http_credentials: 'A direct searchFormDatas.json call must set credentials: "include" so the browser sends same-origin login cookies',
|
|
1391
|
-
lint_searchformdata_bridge_unwrap: 'Yida searchFormDatas returns rows in payload.data and the count in payload.totalCount. Do not read only payload.data.data; normalize array data before rendering, and use currentPage for pagination. See yida-canvas-data-binding.',
|
|
1392
1346
|
lint_searchformdata_http_unwrap: 'The browser searchFormDatas.json response nests the list under content.data (returns { content: { data: [...] } }); reading json.data only yields 0 rows — unwrap via (json.content && json.content.data)',
|
|
1393
1347
|
lint_searchformdata_dynamic_order_metadata: 'searchFormDatas.dynamicOrder cannot use record metadata field {0}; use a real business field ID returned by get-schema. If no sortable business date field exists, remove dynamicOrder and only sort the fetched page by row.createTime for display',
|
|
1394
1348
|
lint_canvas_yida_api_bridge_missing: 'YidaCodeCanvas form data reads must consume window.__OPENYIDA_YIDA_API__ first (the publish layer injects the this.utils.yida bridge from outer didMount); do not default to handwritten internal searchFormDatas fetch',
|
|
@@ -1441,7 +1395,6 @@ Examples:
|
|
|
1441
1395
|
canvas_compiling: ' 🎨 Compiling custom page source locally...',
|
|
1442
1396
|
canvas_compile_done: ' ✅ Custom page compiled!',
|
|
1443
1397
|
canvas_compile_failed: ' ❌ Custom page compile failed: {0}',
|
|
1444
|
-
canvas_icon_export_unavailable: 'Line {2}: the Yida runtime icon library {0} does not export {1}. Choose a supported runtime icon and recompile. Suggested alternatives: {3}.',
|
|
1445
1398
|
canvas_unbound_identifiers: 'Code Canvas source contains undeclared identifiers: {0}. Add the missing import, function, ref, state, or local declaration in the same file and keep every reference under the same name. If a non-standard runtime provides the identifier, access it explicitly through window.<name> or parentWindow.<name> and check that it exists first.',
|
|
1446
1399
|
canvas_instance_api_unavailable: 'Code Canvas components cannot use platform JSX instance APIs: {0}. Use React hooks, props, or the window.__OPENYIDA_YIDA_API__ data bridge.',
|
|
1447
1400
|
step_login: '\n🔑 Step 2: Read login credentials',
|
|
@@ -1467,7 +1420,7 @@ Examples:
|
|
|
1467
1420
|
error: '\n❌ Publish error: {0}',
|
|
1468
1421
|
source_not_found: '❌ Source file not found: {0}',
|
|
1469
1422
|
source_path_hint: '💡 Try this source file path: {0}',
|
|
1470
|
-
usage: 'Usage: openyida publish <sourceFile> <appType> <formUuid> [--health-check] [--
|
|
1423
|
+
usage: 'Usage: openyida publish <sourceFile> <appType> <formUuid> [--health-check] [--canvas] [--auto-nav-order]',
|
|
1471
1424
|
example: 'Example: openyida publish pages/src/xxx.js APP_XXX FORM-XXX --health-check --auto-nav-order',
|
|
1472
1425
|
},
|
|
1473
1426
|
|
|
@@ -1796,7 +1749,6 @@ Options:
|
|
|
1796
1749
|
|
|
1797
1750
|
// ── lib/process/create-process.js ─────────────────
|
|
1798
1751
|
create_process: {
|
|
1799
|
-
invalid_argument: 'Missing or invalid argument {0}. Correct it using the syntax below.',
|
|
1800
1752
|
title: 'Yida Process Form Creation',
|
|
1801
1753
|
app_id: 'App ID',
|
|
1802
1754
|
mode: 'Mode',
|
|
@@ -1826,12 +1778,11 @@ Options:
|
|
|
1826
1778
|
configuring_process: 'Configuring and publishing process',
|
|
1827
1779
|
configure_failed: 'Failed to configure process',
|
|
1828
1780
|
retry_hint: 'Process configuration failed, but the form was created. Fix the process definition and retry with this command:',
|
|
1829
|
-
preserve_existing_form: 'The original form exists. Inspect its state and failure cause using the returned formUuid and preserve it. Do not remove --formUuid, recreate the form, or create a same-name replacement to recover. Never retry writes when noWriteRetry=true.',
|
|
1830
1781
|
fields_not_found: 'Fields definition file not found',
|
|
1831
1782
|
process_def_not_found: 'Process definition file not found',
|
|
1832
1783
|
done: 'Process form creation completed',
|
|
1833
1784
|
url: 'URL',
|
|
1834
|
-
usage: 'Usage: openyida create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile>
|
|
1785
|
+
usage: 'Usage: openyida create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile>',
|
|
1835
1786
|
usage2: ' openyida create-process <appType> --formUuid <formUuid> <processDefinitionFile> [--replace]',
|
|
1836
1787
|
example: 'Example: openyida create-process "APP_XXX" "Order Form" .cache/openyida/process/fields.json .cache/openyida/process/process-definition.json',
|
|
1837
1788
|
example2: ' openyida create-process "APP_XXX" --formUuid FORM-YYY .cache/openyida/process/process-definition.json',
|
|
@@ -2022,8 +1973,7 @@ Object.assign(module.exports.create_process || (module.exports.create_process =
|
|
|
2022
1973
|
login_required: 'No valid Yida login session was found. Run openyida login first.',
|
|
2023
1974
|
});
|
|
2024
1975
|
module.exports.connector_test = {
|
|
2025
|
-
usage: 'Usage: openyida connector test --connector-id <id> --action <actionId> [--params <json>] [--path-json <json>] [--query-json <json>] [--header-json <json>] [--body-json <json>] [--account-id <id>] [--system-token-app <appType>] [--
|
|
2026
|
-
ignore_defaults_system_token_warning: 'Saved default parameter values are ignored via --ignore-defaults (they contain a non-empty systemToken and are not used in this run); clean up the action defaults in the designer before production use.',
|
|
1976
|
+
usage: 'Usage: openyida connector test --connector-id <id> --action <actionId> [--params <json>] [--path-json <json>] [--query-json <json>] [--header-json <json>] [--body-json <json>] [--account-id <id>] [--system-token-app <appType>] [--json]',
|
|
2027
1977
|
invalid_json: '{0} is not valid JSON: {1}',
|
|
2028
1978
|
json_object_required: '{0} must be a JSON object',
|
|
2029
1979
|
unknown_flat_param: 'Parameter {0} is not in the action schema; use the matching structured JSON option',
|
|
@@ -2133,10 +2083,3 @@ module.exports.connector_e2e = {
|
|
|
2133
2083
|
Object.assign(module.exports.process_errors || (module.exports.process_errors = {}), {
|
|
2134
2084
|
action_config_invalid: 'Invalid approval action configuration for node {0}: {1}',
|
|
2135
2085
|
});
|
|
2136
|
-
|
|
2137
|
-
module.exports.cli_argument = { invalid: 'Invalid or missing argument value: {0}. Follow the command help.' };
|
|
2138
|
-
|
|
2139
|
-
module.exports.sample_options = {
|
|
2140
|
-
'theme_help': 'app-theme: --output is a CSS file; --design-file reads a completed design. Omitting it resets CSS. Set theme values in the design.',
|
|
2141
|
-
'style_help': 'application-style: --style-id is required and accepts every catalog theme; --output is a directory for three files. Existing bundle files cause an error.'
|
|
2142
|
-
};
|
package/lib/core/locales/zh.js
CHANGED
|
@@ -4,37 +4,10 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
module.exports = {
|
|
7
|
-
design_plan: {
|
|
8
|
-
rebase_required: '首次物化前请修正 business.json/visual.json 中的对应 facts,保留主计划基线。如果主计划已改变,在原 materialize 命令加 --rebase-parts,CLI 会根据保存的基线核对差异;不要手填 digest、删除草稿或重新 init。',
|
|
9
|
-
baseline_missing: '未找到与片段匹配的可信原始基线。保留当前计划与 facts;从原工作区恢复 .build-plan-base.json 后重试。无法恢复时明确告知用户阻塞,不伪造摘要或自动重建。',
|
|
10
|
-
rebase_stage_invalid: '基线恢复仅用于首次物化前的草稿。已展示或已物化方案请沿用当前 build-plan.json,通过 patch --materialize 调整,不再合并初始化片段。',
|
|
11
|
-
rebase_conflict: '主计划和片段对同一字段有不同修改。按 conflicts 核对并在片段中明确采用当前值或原基线值后重试;其他 facts 保留。本次未保存文件。',
|
|
12
|
-
repair_page_bindings: '按 business.json 的 customPageDetails 逐一修复 visual.json 的 pageApplications;原生表单不加入绑定。每项 visualMemoryApplications 必须为数组,无适用项用 []。保留现有草稿,按列出的字段修复后重试原命令;不要删除目录或重新 init。',
|
|
13
|
-
},
|
|
14
|
-
design_document: {
|
|
15
|
-
update_conflict: '无法更新 {0}({1}):现有内容与上次生成结果冲突。请读取这一部分,将本地修改与计划源对齐后重试;本次未保存任何文件。',
|
|
16
|
-
theme_css_invalid: '主题 CSS 第 {0} 行附近存在未闭合或不匹配的括号、字符串或注释,请修复后重试。',
|
|
17
|
-
invalid: '设计文档校验失败:{0}({1})',
|
|
18
|
-
yaml: '设计文档 frontmatter 不是有效的 YAML',
|
|
19
|
-
token_value: 'token {0} 必须是已确定的单行 CSS 值',
|
|
20
|
-
token_conflict: 'token {0} 存在重复或冲突值',
|
|
21
|
-
tokens_required: 'design.md 缺少包含 token 的 frontmatter',
|
|
22
|
-
brand_required: 'design.md 缺少品牌 token:{0}',
|
|
23
|
-
usage: '用法: openyida check-design <design.md> [--prd <prd.md>] [--base-dir <dir>] [--json]',
|
|
24
|
-
read_error: '无法读取设计检查文件:{0}',
|
|
25
|
-
checked: '设计文档校验通过:{0};{1} 个页面,{2} 个 token',
|
|
26
|
-
},
|
|
27
|
-
asset: {
|
|
28
|
-
sourceRecords: '在 --input 的 assets[] 中填写 assetId、creator、sourcePage、license、licenseUrl、licenseCheckedAt(YYYY-MM-DD)和 authorizationEvidence(凭证链接或文件路径数组)。清单保留这些记录;未提供的留空,不自动认定已获商用授权。',
|
|
29
|
-
executionReview: '素材执行记录需复核:{0}。请检查后台派发回执、业务执行时间及同步退化原因。',
|
|
30
|
-
localFileUnavailable: '找不到图片文件:{0}。请检查命令工作目录,或使用绝对路径。',
|
|
31
|
-
invalidStrategy: '图片要求应填写为对象,按页面列出图片位置。',
|
|
32
|
-
},
|
|
33
7
|
// ── 通用 ──────────────────────────────────────────
|
|
34
8
|
|
|
35
9
|
// ── bin/yida.js printHelp() ────────────────────────
|
|
36
10
|
help: {
|
|
37
|
-
cmd_check_design: '检查设计文档、主题变量与 PRD 交接',
|
|
38
11
|
subtitle: '宜搭低代码 AI 开发工具',
|
|
39
12
|
usage: '用法:',
|
|
40
13
|
alias: '别名:',
|
|
@@ -52,9 +25,8 @@ module.exports = {
|
|
|
52
25
|
cmd_design_plan_preview: '按模块更新方案草稿',
|
|
53
26
|
design_plan_preview_invalid: '方案草稿更新失败,请检查错误详情',
|
|
54
27
|
cmd_design_plan_init: '从已确认需求初始化计划草稿',
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
cmd_design_plan_patch: '按字段修改方案,按需同步文档和主题',
|
|
28
|
+
cmd_design_plan_materialize: '从 build-plan.json 生成并校验搭建计划产物',
|
|
29
|
+
cmd_design_plan_patch: '按字段路径调整搭建计划并使旧确认失效',
|
|
58
30
|
cmd_update_app: '更新应用信息',
|
|
59
31
|
cmd_app_online: '启用宜搭应用',
|
|
60
32
|
cmd_app_offline: '停用宜搭应用',
|
|
@@ -83,7 +55,6 @@ module.exports = {
|
|
|
83
55
|
cmd_get_form_config: '查询表单配置',
|
|
84
56
|
group_data: '数据 & 权限',
|
|
85
57
|
cmd_data: '统一数据管理(表单/流程/任务/子表单)',
|
|
86
|
-
data_notes: 'DateField 传毫秒时间戳数字;CascadeDateField 传毫秒时间戳数组。先按业务时区转换,不接受日期字符串或秒级时间戳。--resolve-aliases 只转换字段名称。',
|
|
87
58
|
cmd_task_center: '全局任务中心(待办/已处理/抄送等)',
|
|
88
59
|
cmd_basic_info: '查询组织基本信息、容量、额度和域名设置',
|
|
89
60
|
cmd_read_dingtalk_doc: '获取钉钉文档的 Markdown 内容',
|
|
@@ -95,7 +66,6 @@ module.exports = {
|
|
|
95
66
|
group_process: '流程',
|
|
96
67
|
cmd_configure_process: '配置并发布流程规则; 支持加签/转交,配置位于 JSON nodes[].actions.normalActions/appendActions',
|
|
97
68
|
cmd_create_process: '创建流程表单(一体化); 支持加签/转交,配置位于 JSON nodes[].actions.normalActions/appendActions',
|
|
98
|
-
create_process_notes: 'formMode=create|reuse 区分新建和复用。复用时 formTitle、fieldCount 为 null,表示未查询;新建时返回名称和字段数。成功和配置失败输出均遵守此约定,结果看 success 与 verificationLevel。--replace 仅用于已获明确授权的现有草稿或已发布流程整图替换。',
|
|
99
69
|
cmd_ai_form_setting: '管理流程表单 AI 审批提示',
|
|
100
70
|
cmd_process_preview: '预览流程实例(可视化流程图)',
|
|
101
71
|
group_share: '页面配置 & 分享',
|
|
@@ -181,10 +151,6 @@ module.exports = {
|
|
|
181
151
|
},
|
|
182
152
|
|
|
183
153
|
cli: {
|
|
184
|
-
design_plan_entry_mode_required: '请明确入口方式:不分前后台(unified)、分前后台(service-management)、只有访问前台(frontend-only)或只有访问后台(backend-only)。',
|
|
185
|
-
design_plan_backend_only_roles: '只有访问后台(backend-only)时,每个入口的 role 必须为 management。',
|
|
186
|
-
design_plan_local_menu_binding: '本地菜单 {0} 必须关联承载页面和 viewKey:入口 {1} 的 sceneKey 对应页面 sceneKey,菜单 resource 等于页面 name,并填写非空 viewKey。此规则适用于所有入口身份。',
|
|
187
|
-
design_plan_visual_object_required: '{0} 必须为对象,不能写成字符串或数组。沿用 init 生成的字段结构,只补齐值;示例:{1}。',
|
|
188
154
|
help: `
|
|
189
155
|
openyida - 宜搭命令行工具
|
|
190
156
|
|
|
@@ -199,7 +165,7 @@ openyida - 宜搭命令行工具
|
|
|
199
165
|
create-app --name "<名称>" 创建应用并输出 appType;主题资源与 Logo 来源使用 update-app 配置
|
|
200
166
|
create-page <appType> "<页面名>" [--mode dashboard] [--hide-nav] 创建自定义页面,输出 pageId
|
|
201
167
|
update-app <appType> [--name "..."] [--hide-app-nav|--show-app-nav] 更新应用信息
|
|
202
|
-
create-form create <appType> "<表单名>" <字段JSON> [--layout
|
|
168
|
+
create-form create <appType> "<表单名>" <字段JSON> [--layout <布局>] [--theme <主题>] [--label-align <对齐>] 创建表单页面
|
|
203
169
|
create-form update <appType> <formUuid> <修改JSON> 更新表单页面
|
|
204
170
|
list-forms <appType> [--keyword <关键词>] 列出应用下的表单/页面
|
|
205
171
|
get-schema <appType> <formUuid|--all> 获取单个或全部表单 Schema
|
|
@@ -233,7 +199,7 @@ openyida - 宜搭命令行工具
|
|
|
233
199
|
get-permission <appType> <formUuid> 查询表单权限配置
|
|
234
200
|
save-permission <appType> <formUuid> [--data-permission <json>] [--action-permission <json>] 保存表单权限配置
|
|
235
201
|
configure-process <appType> <formUuid> <processDefinitionFile> [processCode] [--replace] 配置并发布流程
|
|
236
|
-
create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile>
|
|
202
|
+
create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile> 创建流程表单(一体化)
|
|
237
203
|
create-process <appType> --formUuid <formUuid> <processDefinitionFile> [--replace] 复用已有表单创建流程
|
|
238
204
|
connector list [选项] 列出 HTTP 连接器
|
|
239
205
|
connector create "名称" "域名" --operations <file> [选项] 创建连接器
|
|
@@ -325,13 +291,13 @@ openyida - 宜搭命令行工具
|
|
|
325
291
|
integration_enable_example: '示例: openyida integration enable APP_XXX FORM-XXX LPROC-XXX',
|
|
326
292
|
integration_disable_usage: '用法: openyida integration disable <appType> <formUuid> <processCode>',
|
|
327
293
|
integration_disable_example: '示例: openyida integration disable APP_XXX FORM-XXX LPROC-XXX',
|
|
328
|
-
compile_usage: '用法: openyida compile <源文件路径>
|
|
294
|
+
compile_usage: '用法: openyida compile <源文件路径>',
|
|
329
295
|
compile_example: '示例: openyida compile pages/src/home.oyd.jsx',
|
|
330
296
|
check_page_usage: '用法: openyida check-page <源文件路径> [--compat] [--json]',
|
|
331
297
|
check_page_example: '示例: openyida check-page pages/src/home.oyd.jsx --json',
|
|
332
298
|
build_page_usage: '用法: openyida build-page <源文件路径> [--output pages/build/page.yida.jsx|--write] [--json]',
|
|
333
299
|
build_page_example: '示例: openyida build-page pages/src/dashboard.oyd.jsx --output pages/build/dashboard.yida.jsx',
|
|
334
|
-
publish_usage: '用法: openyida publish <源文件路径> <appType> <formUuid> [--health-check] [--
|
|
300
|
+
publish_usage: '用法: openyida publish <源文件路径> <appType> <formUuid> [--health-check] [--canvas] [--auto-nav-order]',
|
|
335
301
|
publish_example: '示例: openyida publish pages/src/home.canvas.jsx APP_XXX FORM-XXX --health-check',
|
|
336
302
|
check_prd_completeness_usage: '用法: openyida check-prd-completeness <prd.md> --app-type <appType> [--build-manifest <file>] [--json]',
|
|
337
303
|
check_prd_completeness_example: '示例: openyida check-prd-completeness prd/订单管理/prd.md --app-type APP_XXX --build-manifest prd/订单管理/build-manifest.json --json',
|
|
@@ -355,7 +321,7 @@ openyida - 宜搭命令行工具
|
|
|
355
321
|
import_example2: ' openyida import ./yida-export.json "质量追溯系统(生产环境)"',
|
|
356
322
|
configure_process_usage: '用法: openyida configure-process <appType> <formUuid> <processDefinitionFile> [processCode] [--replace]',
|
|
357
323
|
configure_process_example: '示例: openyida configure-process "APP_XXX" "FORM-YYY" .cache/openyida/process/process-definition.json',
|
|
358
|
-
create_process_usage: '用法: openyida create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile
|
|
324
|
+
create_process_usage: '用法: openyida create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile>\n openyida create-process <appType> --formUuid <formUuid> <processDefinitionFile> [--replace]',
|
|
359
325
|
create_process_example: '示例: openyida create-process "APP_XXX" "订单处理表" .cache/openyida/process/fields.json .cache/openyida/process/process-definition.json',
|
|
360
326
|
process_usage: '用法: openyida process <子命令>\n\n子命令:\n preview <appType> <processInstanceId> [--output <path>] 预览流程实例(生成可视化流程图)',
|
|
361
327
|
process_preview_usage: '用法: openyida process preview <appType> <processInstanceId> [--output <path>]',
|
|
@@ -708,7 +674,7 @@ openyida - 宜搭命令行工具
|
|
|
708
674
|
// ── lib/create-page.js ─────────────────────────────
|
|
709
675
|
create_page: {
|
|
710
676
|
title: ' openyida create-page - 宜搭自定义页面创建工具',
|
|
711
|
-
usage: '用法: openyida create-page <appType> "<pageName>" [--mode dashboard] [--hide-nav]
|
|
677
|
+
usage: '用法: openyida create-page <appType> "<pageName>" [--mode dashboard] [--hide-nav]',
|
|
712
678
|
example: '示例: openyida create-page "APP_XXX" "驾驶舱" --mode dashboard;显式隐藏页面导航: openyida create-page "APP_XXX" "全屏看板" --mode dashboard --hide-nav',
|
|
713
679
|
app_id: ' 应用 ID: {0}',
|
|
714
680
|
page_name: ' 页面名称: {0}',
|
|
@@ -718,7 +684,6 @@ openyida - 宜搭命令行工具
|
|
|
718
684
|
step_dashboard_config: '\n🖥️ Step 3: 配置页面级隐藏导航',
|
|
719
685
|
dashboard_config_ok: ' ✅ 已按显式要求隐藏页面导航,并输出页面级隐藏导航的 custom URL',
|
|
720
686
|
dashboard_config_failed: ' ⚠️ 页面级隐藏导航配置失败: {0}',
|
|
721
|
-
navigation_unverified: '页面已创建,但未能回读确认导航已隐藏。请使用返回的 pageId 修复配置并回读,不要重复创建页面。',
|
|
722
687
|
err_mode_invalid: '不支持的页面模式: {0}',
|
|
723
688
|
mode_hint: '可用模式: default, dashboard;默认页面导航可见,只有传 --hide-nav 或 --render-nav false 才隐藏页面导航;应用导航隐藏请用 update-app --hide-app-nav',
|
|
724
689
|
page_id_label: ' pageId: {0}',
|
|
@@ -769,7 +734,6 @@ openyida - 宜搭命令行工具
|
|
|
769
734
|
|
|
770
735
|
// ── lib/create-form.js ─────────────────────────────
|
|
771
736
|
create_form: {
|
|
772
|
-
divider_type_invalid: '不支持的分割线样式:{0}。可选值:{1}',
|
|
773
737
|
batch_invalid: '表单批量任务配置无效,请检查错误详情',
|
|
774
738
|
create_title: ' yida-create-form-page - 宜搭表单页面创建工具',
|
|
775
739
|
update_title: ' yida-create-form-page - 宜搭表单页面更新工具',
|
|
@@ -828,12 +792,12 @@ openyida - 宜搭命令行工具
|
|
|
828
792
|
changes_applied: ' 已应用变更: {0}',
|
|
829
793
|
create_post_failure_retry_advice: '不要直接重复 create。先运行 openyida list-forms {0} --keyword "{1}" 确认同名表单;若是本轮创建的空白/已有表单,优先使用 create-form update 或后续 --resume-form-uuid 复用。',
|
|
830
794
|
error: '\n❌ 错误: {0}',
|
|
831
|
-
usage_create: '用法: openyida create-form create <appType> <formTitle> <fieldsJsonFile>
|
|
795
|
+
usage_create: '用法: openyida create-form create <appType> <formTitle> <fieldsJsonFile>',
|
|
832
796
|
example_create: '示例:openyida create-form create "APP_XXX" "员工信息登记" .cache/openyida/forms/employee-fields.json',
|
|
833
797
|
usage_update: '用法: openyida create-form update <appType> <formUuid> <changesJsonOrFile>',
|
|
834
798
|
example_update: '示例:openyida create-form update "APP_XXX" "FORM-YYY" \'[{"action":"add","field":{"type":"TextField","label":"备注"}}]\'',
|
|
835
799
|
usage_label: '用法:',
|
|
836
|
-
usage_create_short: ' 创建: openyida create-form create <appType> <formTitle> <fieldsJsonFile>
|
|
800
|
+
usage_create_short: ' 创建: openyida create-form create <appType> <formTitle> <fieldsJsonFile>',
|
|
837
801
|
usage_update_short: ' 更新: openyida create-form update <appType> <formUuid> <changesJsonOrFile> 或 --data-file <changesJsonOrFile>',
|
|
838
802
|
resume_readback_failed: '恢复前无法回读目标表单。',
|
|
839
803
|
resume_ownership_unverified: '目标表单不属于指定应用,已停止恢复。',
|
|
@@ -978,7 +942,7 @@ openyida - 宜搭命令行工具
|
|
|
978
942
|
// ── lib/import-app.js ──────────────────────────────
|
|
979
943
|
import_example2: ' openyida import ./yida-export.json "质量追溯系统(生产环境)"',
|
|
980
944
|
exec_failed: '\n❌ 执行失败: {0}',
|
|
981
|
-
auth_usage: '用法: openyida auth <status|login|refresh|logout|profiles|profile switch>',
|
|
945
|
+
auth_usage: '用法: openyida auth <status|login|sync-dws|refresh|logout|profiles|profile switch>',
|
|
982
946
|
auth_example: '示例:\n openyida auth status # 查看登录状态\n openyida auth profiles # 列出已有登录 profile\n openyida auth profile switch <auth_profile> # 切换当前项目到已有 profile\n openyida auth login # 目标 profile 不存在时登录新增\n openyida auth refresh # 刷新登录态\n openyida auth logout # 解绑当前项目登录态\n openyida auth logout --profile <auth_profile> # 删除指定共享 profile',
|
|
983
947
|
org_usage: '用法: openyida org <list|switch> [--json] [--corp-id <corpId>]',
|
|
984
948
|
org_example: '示例:\n openyida org list --json # 列出可访问的组织\n openyida org switch --corp-id dingXXX # 优先切换已有 profile;不存在时登录新增',
|
|
@@ -1091,10 +1055,9 @@ openyida - 宜搭命令行工具
|
|
|
1091
1055
|
theme_preset_conflict: '平台预置 colour 不能与自定义 CSS 或 themeColor 同传;请使用 colour=custom 或省略 --colour。',
|
|
1092
1056
|
custom_theme_color_required: 'colour=custom 需要主题文件或有效 themeColor;请传 --theme-file 或 --theme-color。',
|
|
1093
1057
|
theme_not_persisted: '应用主题保存后回读不一致或查询失败,CSS 资源尚未确认绑定。请查看 themeVerification,并使用 update-app <appType> --theme-file <css> 重试;不要重复创建应用。',
|
|
1094
|
-
navigation_not_persisted: '应用导航保存后回读不一致或查询失败,导航设置尚未确认生效。请查看 navigationVerification 中的期望值、实际值和查询错误,核实应用当前设置。',
|
|
1095
1058
|
usage: 'openyida update-app <appType> [--name "新名称"] [--theme-file ./theme.css] [--nav-theme light|dark|white|gray] [--logo-source appIcon|customImage] [--layout side|top|l_shape]',
|
|
1096
1059
|
example: 'openyida update-app APP_XXX --theme-file ./app-theme.css --nav-theme light --logo-source appIcon --layout side',
|
|
1097
|
-
options: '选项:\n --name, -n 应用名称(至少指定一个更新字段)\n --desc, -d 应用描述\n --icon 图标名称(如: xian-yingyong)\n --icon-color 图标颜色(默认: #0089FF)\n --colour, --theme podBlue | podGreen | podOrange | deepBlue | teal | black | custom ...\n --theme-color
|
|
1060
|
+
options: '选项:\n --name, -n 应用名称(至少指定一个更新字段)\n --desc, -d 应用描述\n --icon 图标名称(如: xian-yingyong)\n --icon-color 图标颜色(默认: #0089FF)\n --colour, --theme podBlue | podGreen | podOrange | deepBlue | teal | black | custom ...\n --theme-color 兼容旧流程的独立主题色;导入主题文件时忽略此值\n --theme-file 自定义应用主题 CSS 文件(最大 20 MB,必须声明 --color-brand1-6)\n --nav-theme 导航主题 light、dark、white 或 gray\n --logo-source 导航 Logo 来源 appIcon 或 customImage\n --layout 新版导航布局 side、top 或 l_shape\n --hide-app-nav 隐藏访问态应用导航,仅在自定义页自绘顶部/侧边导航壳时使用\n --show-app-nav 恢复访问态应用导航',
|
|
1098
1061
|
missing_app_type: '错误: 缺少 appType 参数',
|
|
1099
1062
|
missing_update_field: '错误: 至少需要指定一个更新字段(--name, --desc, --icon, --theme, --theme-color, --theme-file, --nav-theme, --logo-source, --layout, --hide-app-nav, --show-app-nav)',
|
|
1100
1063
|
title: ' update-app - 宜搭应用信息更新工具',
|
|
@@ -1125,7 +1088,6 @@ openyida - 宜搭命令行工具
|
|
|
1125
1088
|
|
|
1126
1089
|
// ── lib/process/create-process.js ─────────────────
|
|
1127
1090
|
create_process: {
|
|
1128
|
-
invalid_argument: '参数 {0} 缺失或无效,请按以下用法修正。',
|
|
1129
1091
|
title: '宜搭流程表单一体化创建',
|
|
1130
1092
|
app_id: '应用 ID',
|
|
1131
1093
|
mode: '模式',
|
|
@@ -1155,12 +1117,11 @@ openyida - 宜搭命令行工具
|
|
|
1155
1117
|
configuring_process: '配置并发布流程',
|
|
1156
1118
|
configure_failed: '流程配置失败',
|
|
1157
1119
|
retry_hint: '流程配置失败,但表单已创建。请修复流程定义后,使用以下命令复用该表单重试:',
|
|
1158
|
-
preserve_existing_form: '原表单已存在。先只读核实该 formUuid 的状态和失败原因,保留原表;禁止移除 --formUuid、再次创建表单或另建同名表来恢复。noWriteRetry=true 时禁止写重试。',
|
|
1159
1120
|
fields_not_found: '字段定义文件不存在',
|
|
1160
1121
|
process_def_not_found: '流程定义文件不存在',
|
|
1161
1122
|
done: '流程表单创建完成',
|
|
1162
1123
|
url: '访问地址',
|
|
1163
|
-
usage: '用法: openyida create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile>
|
|
1124
|
+
usage: '用法: openyida create-process <appType> <formTitle> <fieldsJsonFile> <processDefinitionFile>',
|
|
1164
1125
|
usage2: ' openyida create-process <appType> --formUuid <formUuid> <processDefinitionFile> [--replace]',
|
|
1165
1126
|
example: '示例: openyida create-process "APP_XXX" "订单处理表" .cache/openyida/process/fields.json .cache/openyida/process/process-definition.json',
|
|
1166
1127
|
example2: ' openyida create-process "APP_XXX" --formUuid FORM-YYY .cache/openyida/process/process-definition.json',
|
|
@@ -1332,14 +1293,6 @@ openyida - 宜搭命令行工具
|
|
|
1332
1293
|
failed: '页面规范检查失败',
|
|
1333
1294
|
},
|
|
1334
1295
|
publish: {
|
|
1335
|
-
canvas_path_missing_app_type: '第 {0} 行的跳转地址缺少 appType。请提取 canvas-navigation,使用真实 appType 与页面 ID 构造 /{appType}/{pageType}/{formUuid};不要直接跳转 /custom/ 等裸路径。',
|
|
1336
|
-
canvas_theme_fixed_brand: '第 {0} 行的 ConfigProvider 将品牌交互色固定为字符串。请提取 canvas-theme,使用应用主题解析值;CSS var 仅直接用于 DOM 样式,不能替代 antd 色值解析。',
|
|
1337
|
-
canvas_navigation_local_platform: '第 {0} 行把页内菜单交给平台导航过滤。请使用 mode=local 或直接切换本地视图;真实页面绑定 formUuid/navUuid,声明的权限仍需校验。',
|
|
1338
|
-
canvas_navigation_document_flex: '第 {0} 行的导航内容仍使用工作区 flex 零基准布局,会压缩 document 长页。请重新提取 canvas-nav-content:document 使用自然高度与块布局,workspace 才使用定高 flex。',
|
|
1339
|
-
canvas_theme_not_assembled: '第 {0} 行的主题标记尚未装配。请运行 build-canvas-theme.js 生成独立页面并编译发布输出文件;已直接接好 Provider 的页面无需此标记。',
|
|
1340
|
-
canvas_theme_provider_missing: '第 {0} 行的页面未接入主题容器。请在 YidaComp 中返回 <CanvasThemeProvider><PageContent /></CanvasThemeProvider>,让业务内容读取应用主题。',
|
|
1341
|
-
canvas_theme_root_hook: '第 {0} 行在主题容器生效前读取了主题。请把 useCanvasThemeContext 移到 PageContent 中,并在 YidaComp 中用 CanvasThemeProvider 包住 <PageContent />。',
|
|
1342
|
-
canvas_theme_context_scope: '第 {0} 行的 CanvasThemeContext 定义在函数内。请将主题上下文和 Provider 放在模块顶层,由页面入口包住业务组件。',
|
|
1343
1296
|
canvas_inline_css_invalid: '第 {0} 行附近的内嵌 CSS 存在未闭合或不匹配的括号、字符串或注释,请修复后再发布。',
|
|
1344
1297
|
title: ' yida-publish - 宜搭页面发布工具',
|
|
1345
1298
|
platform: ' 平台地址: {0}',
|
|
@@ -1375,7 +1328,7 @@ openyida - 宜搭命令行工具
|
|
|
1375
1328
|
lint_controlled_input: 'input 使用了 value 受控模式,宜搭页面应使用 defaultValue + onChange 写入 _customState',
|
|
1376
1329
|
lint_native_select_ui: '检测到原生 <select>,样式不一致且移动端兼容性差。普通自定义页请用 button+menu+option 自定义下拉,并带下箭头、选中标记和 focus reset;不要直接把表单 SelectField 当页面筛选组件渲染。',
|
|
1377
1330
|
lint_iframe_self_navigation: '宜搭自定义页面运行在 iframe 中,跳转宜搭页面时请使用 target="_top"/target="_blank" 或 window.top.location,避免页面套娃',
|
|
1378
|
-
lint_form_open_container: '
|
|
1331
|
+
lint_form_open_container: '自定义页内打开表单提交/详情只能使用 FormOpenContainer:PC 端用 50vw 抽屉 iframe,移动端才整页或新页打开。按钮事件请调用 openForm({ type: "submission" | "detail", ... })。',
|
|
1379
1332
|
lint_form_detail_link: '表单详情页必须使用真实 formInstId:优先读取 row.formInstId,缺少实例 ID 时禁用详情入口或提示,不能打开空 formInstId 的 formDetail 链接。',
|
|
1380
1333
|
lint_page_size_limit: 'pageSize={0} 超过宜搭接口上限 100,请改为 100 或更小',
|
|
1381
1334
|
lint_page_size_recommend: 'pageSize={0} 偏大,推荐使用 50(性能最佳,最大 100),优先选择 10/20/50',
|
|
@@ -1385,7 +1338,6 @@ openyida - 宜搭命令行工具
|
|
|
1385
1338
|
lint_searchformdata_http_query_params: '直连 searchFormDatas.json 的 URL query 缺少必要参数:{0};请用 URLSearchParams 写入 appType、formUuid、currentPage、pageSize 和 searchFieldJson',
|
|
1386
1339
|
lint_searchformdata_http_csrf: '直连 searchFormDatas.json 需要把运行态 CSRF 同时放入 URL query 的 _csrf_token 和请求头 global_csrf_token',
|
|
1387
1340
|
lint_searchformdata_http_credentials: '直连 searchFormDatas.json 必须设置 credentials: "include",让浏览器携带同源登录态',
|
|
1388
|
-
lint_searchformdata_bridge_unwrap: 'Yida searchFormDatas 的行数据位于 payload.data,总数位于 payload.totalCount。不能只读取 payload.data.data;请先归一化数组,分页使用 currentPage。参考 yida-canvas-data-binding。',
|
|
1389
1341
|
lint_searchformdata_http_unwrap: 'searchFormDatas.json 浏览器直连的列表在 content.data(返回 { content: { data: [...] } }),只读 json.data 会得到 0 条;请用 (json.content && json.content.data) 兜底解包',
|
|
1390
1342
|
lint_searchformdata_dynamic_order_metadata: 'searchFormDatas.dynamicOrder 不能使用记录元数据字段 {0};请改用 get-schema 返回的真实业务字段 ID。没有可排序的业务日期字段时请删除 dynamicOrder,只在当前已取回页内按 row.createTime 做展示排序',
|
|
1391
1343
|
lint_canvas_yida_api_bridge_missing: 'YidaCodeCanvas 表单数据读取必须优先消费 window.__OPENYIDA_YIDA_API__(发布层由外层 didMount 注入 this.utils.yida 桥);不要默认手写内部 searchFormDatas fetch',
|
|
@@ -1438,7 +1390,6 @@ openyida - 宜搭命令行工具
|
|
|
1438
1390
|
canvas_compiling: ' 🎨 本地编译自定义页面源码...',
|
|
1439
1391
|
canvas_compile_done: ' ✅ 自定义页面编译完成!',
|
|
1440
1392
|
canvas_compile_failed: ' ❌ 自定义页面编译失败:{0}',
|
|
1441
|
-
canvas_icon_export_unavailable: '第 {2} 行:宜搭运行时图标库 {0} 未导出 {1}。请选择运行时支持的图标后重新编译;可选替代:{3}。',
|
|
1442
1393
|
canvas_unbound_identifiers: 'Code Canvas 源码存在未声明标识符:{0}。请在同一文件中补齐 import、函数、Ref、状态或局部变量声明,并保持声明与全部引用同名。若标识符由非标准运行时提供,请改用 window.<name> 或 parentWindow.<name> 显式访问并先检查是否存在。',
|
|
1443
1394
|
canvas_instance_api_unavailable: 'Code Canvas 组件不能使用平台 JSX 实例 API:{0}。请使用 React hooks、props 或 window.__OPENYIDA_YIDA_API__ 数据桥。',
|
|
1444
1395
|
step_login: '\n🔑 Step 2: 读取登录态',
|
|
@@ -1464,7 +1415,7 @@ openyida - 宜搭命令行工具
|
|
|
1464
1415
|
error: '\n❌ 发布异常: {0}',
|
|
1465
1416
|
source_not_found: '❌ 源文件不存在:{0}',
|
|
1466
1417
|
source_path_hint: '💡 可尝试使用源文件路径:{0}',
|
|
1467
|
-
usage: '用法: openyida publish <源文件路径> <appType> <formUuid> [--health-check] [--
|
|
1418
|
+
usage: '用法: openyida publish <源文件路径> <appType> <formUuid> [--health-check] [--canvas] [--auto-nav-order]',
|
|
1468
1419
|
example: '示例:openyida publish pages/src/xxx.js APP_XXX FORM-XXX --health-check --auto-nav-order',
|
|
1469
1420
|
},
|
|
1470
1421
|
|
|
@@ -1976,8 +1927,7 @@ Object.assign(module.exports.create_process || (module.exports.create_process =
|
|
|
1976
1927
|
login_required: '未获取到有效宜搭登录态,请先执行 openyida login。',
|
|
1977
1928
|
});
|
|
1978
1929
|
module.exports.connector_test = {
|
|
1979
|
-
usage: '用法: openyida connector test --connector-id <id> --action <actionId> [--params <json>] [--path-json <json>] [--query-json <json>] [--header-json <json>] [--body-json <json>] [--account-id <id>] [--system-token-app <appType>] [--
|
|
1980
|
-
ignore_defaults_system_token_warning: '已按 --ignore-defaults 忽略动作保存的默认参数值(其中包含非空 systemToken,本次请求不会使用);生产使用前请先在设计器清理默认值。',
|
|
1930
|
+
usage: '用法: openyida connector test --connector-id <id> --action <actionId> [--params <json>] [--path-json <json>] [--query-json <json>] [--header-json <json>] [--body-json <json>] [--account-id <id>] [--system-token-app <appType>] [--json]',
|
|
1981
1931
|
invalid_json: '{0} 不是合法 JSON: {1}',
|
|
1982
1932
|
json_object_required: '{0} 必须是 JSON 对象',
|
|
1983
1933
|
unknown_flat_param: '参数 {0} 不在动作 Schema 中;请改用对应的结构化 JSON 参数',
|
|
@@ -2087,10 +2037,3 @@ module.exports.connector_e2e = {
|
|
|
2087
2037
|
Object.assign(module.exports.process_errors || (module.exports.process_errors = {}), {
|
|
2088
2038
|
action_config_invalid: '节点 {0} 的审批动作配置无效:{1}',
|
|
2089
2039
|
});
|
|
2090
|
-
|
|
2091
|
-
module.exports.cli_argument = { invalid: '参数无效或缺少值:{0}。请按命令帮助填写。' };
|
|
2092
|
-
|
|
2093
|
-
module.exports.sample_options = {
|
|
2094
|
-
'theme_help': 'app-theme:--output 指向 CSS 文件;--design-file 读取已完成的设计。省略设计文件会重置 CSS,主题值通过设计填写。',
|
|
2095
|
-
'style_help': 'application-style:--style-id 必填,支持目录中全部主题;--output 指向目录,输出三文件,有同名文件时报错。'
|
|
2096
|
-
};
|