@nocobase/plugin-ai 2.2.0-beta.1 → 2.2.0-beta.3
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/dist/ai/docs/nocobase/ai/ai-quick-start.md +1 -1
- package/dist/ai/docs/nocobase/ai/claude-code/index.md +2 -2
- package/dist/ai/docs/nocobase/ai/codex/index.md +2 -2
- package/dist/ai/docs/nocobase/ai/hermes-agent/index.md +2 -2
- package/dist/ai/docs/nocobase/ai/index.md +1 -1
- package/dist/ai/docs/nocobase/ai/install-nocobase-app.md +117 -0
- package/dist/ai/docs/nocobase/ai/local-development-setup.md +94 -0
- package/dist/ai/docs/nocobase/ai/openclaw/index.md +2 -2
- package/dist/ai/docs/nocobase/ai/opencode/index.md +2 -2
- package/dist/ai/docs/nocobase/ai/quick-start.mdx +22 -15
- package/dist/ai/docs/nocobase/ai/upgrade-from-2-0-to-2-1.md +57 -0
- package/dist/ai/docs/nocobase/ai/upgrade-nocobase-app.md +111 -0
- package/dist/ai/docs/nocobase/ai/windows-wsl.md +409 -0
- package/dist/ai/docs/nocobase/ai/workbuddy/index.md +2 -2
- package/dist/ai/docs/nocobase/ai-builder/index.md +17 -2
- package/dist/ai/docs/nocobase/ai-builder/version-control.md +120 -0
- package/dist/ai/docs/nocobase/ai-dev/index.md +1 -1
- package/dist/ai/docs/nocobase/api/cli/init.md +2 -2
- package/dist/ai/docs/nocobase/api/cli/plugin/import.md +1 -1
- package/dist/ai/docs/nocobase/api/cli/skills/install.md +1 -0
- package/dist/ai/docs/nocobase/api/cli/skills/update.md +1 -0
- package/dist/ai/docs/nocobase/get-started/how-nocobase-works.mdx +8 -1
- package/dist/ai/docs/nocobase/get-started/quickstart.md +6 -1
- package/dist/ai/docs/nocobase/get-started/system-requirements.md +9 -1
- package/dist/ai/docs/nocobase/index.md +7 -10
- package/dist/ai/docs/nocobase/interface-builder/blocks/data-blocks/gantt.md +204 -0
- package/dist/ai/docs/nocobase/interface-builder/blocks/data-blocks/map.md +105 -0
- package/dist/ai/docs/nocobase/interface-builder/fields/field-settings/scan-input.md +43 -0
- package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/index.md +6 -6
- package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/installation/cli.md +3 -9
- package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/installation/env.md +3 -3
- package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/installation/migration.md +1 -1
- package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/production/index.md +1 -1
- package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/production/reverse-proxy/caddy.md +1 -1
- package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/production/reverse-proxy/index.md +1 -1
- package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/production/reverse-proxy/nginx.md +1 -1
- package/dist/ai/docs/nocobase/ops-management/version-control/index.md +21 -6
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-acl/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-action-bulk-edit/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-action-bulk-update/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-action-custom-request/index.md +5 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-action-duplicate/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-action-export/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-action-export-pro/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-action-import/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-action-import-pro/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-action-print/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-action-template-print/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-ai/index.md +6 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-ai-gigachat/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-ai-knowledge-base/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-api-doc/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-api-keys/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-app-sso/index.md +16 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-app-supervisor/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-async-task-manager/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-audit-logger/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-audit-logs/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-auth/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-auth-cas/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-auth-dingtalk/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-auth-ldap/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-auth-oidc/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-auth-saml/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-auth-sms/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-auth-wecom/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-backup-restore/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-backups/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-grid-card/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-iframe/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-list/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-markdown/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-multi-step-form/index.md +6 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-template/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-tree/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-workbench/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-calendar/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-charts/index.md +5 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-client/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-collection-fdw/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-collection-sql/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-collection-tree/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-comments/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-custom-brand/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-custom-variables/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-external-clickhouse/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-external-doris/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-external-mariadb/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-external-mssql/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-external-mysql/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-external-nocobase/index.md +16 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-external-oracle/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-external-postgres/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-kingbase/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-main/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-manager/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-source-rest-api/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-visualization/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-data-visualization-echarts/index.md +8 -4
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-departments/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-email-manager/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-embed/index.md +4 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-environment-variables/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-error-handler/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-attachment-url/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-china-region/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-code/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-component-mask/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-encryption/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-formula/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-m2m-array/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-markdown-vditor/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-sequence/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-signature/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-field-sort/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-file-manager/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-file-previewer-office/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-file-storage-s3-pro/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-flow-engine/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-form-drafts/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-gantt/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-graph-collection-manager/index.md +8 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-idp-oauth/index.md +14 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-ip-restriction/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-kanban/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-license/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-locale-tester/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-localization/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-lock-adapter-redis/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-logger/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-map/index.md +87 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-mcp-server/index.md +14 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-migration-manager/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-mobile/index.md +8 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-mobile-client/index.md +7 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-multi-app-manager/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-multi-app-share-collection/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-multi-keyword-filter/index.md +4 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-multi-space/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-notification-email/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-notification-in-app-message/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-notification-manager/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-password-policy/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-public-forms/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-pubsub-adapter-redis/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-queue-adapter-rabbitmq/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-queue-adapter-redis/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-record-history/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-request-encryption/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-snapshot-field/index.md +6 -4
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-system-settings/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-telemetry/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-telemetry-prometheus/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-text-copy/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-theme-editor/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-two-factor-authentication/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-ui-schema-storage/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-ui-templates/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-user-data-sync/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-users/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-verification/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-verification-totp-authenticator/index.md +2 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-version-control/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workerid-allocator-redis/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-action-trigger/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-aggregate/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-approval/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-cc/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-custom-action-trigger/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-date-calculation/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-delay/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-dynamic-calculation/index.md +6 -4
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-javascript/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-json-query/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-json-variable-mapping/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-loop/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-mailer/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-manual/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-notification/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-parallel/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-request/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-request-interceptor/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-response-message/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-sql/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-subflow/index.md +3 -1
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-test/index.md +4 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-transaction/index.md +16 -0
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-variable/index.md +5 -3
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-workflow-webhook/index.md +4 -2
- package/dist/ai/docs/nocobase/workflow/nodes/index.md +2 -1
- package/dist/ai/docs/nocobase/workflow/nodes/transaction.md +81 -0
- package/dist/client/561.7ec804ef39ec7dcd.js +10 -0
- package/dist/client/{646.b0ed728921b007d4.js → 646.d4483b4ff23da0a0.js} +1 -1
- package/dist/client/components/ListCollapse.d.ts +2 -1
- package/dist/client/features/components.d.ts +9 -0
- package/dist/client/features/feature-manager.d.ts +1 -9
- package/dist/client/features/index.d.ts +1 -9
- package/dist/client/features/vector-database-provider.d.ts +1 -10
- package/dist/client/features/vector-store-provider.d.ts +9 -0
- package/dist/client/index.d.ts +1 -0
- package/dist/client/index.js +2 -2
- package/dist/client/manager/ai-feature-manager.d.ts +1 -6
- package/dist/client-v2/features/components.d.ts +14 -0
- package/dist/client-v2/features/feature-manager.d.ts +19 -0
- package/dist/client-v2/features/index.d.ts +22 -0
- package/dist/client-v2/features/vector-database-provider.d.ts +18 -0
- package/dist/client-v2/features/vector-store-provider.d.ts +38 -0
- package/dist/client-v2/index.d.ts +5 -0
- package/dist/client-v2/index.js +1 -1
- package/dist/client-v2/manager/ai-feature-manager.d.ts +15 -0
- package/dist/externalVersion.js +17 -17
- package/dist/node_modules/@langchain/xai/package.json +1 -1
- package/dist/node_modules/fs-extra/package.json +1 -1
- package/dist/node_modules/jsonrepair/package.json +1 -1
- package/dist/node_modules/just-bash/package.json +1 -1
- package/dist/node_modules/nodejs-snowflake/package.json +1 -1
- package/dist/node_modules/openai/package.json +1 -1
- package/dist/node_modules/zod/package.json +1 -1
- package/dist/server/ai-employees/ai-knowledge-base.js +1 -1
- package/dist/server/features/feature-manager.d.ts +2 -2
- package/dist/server/features/vector-store-provider.d.ts +1 -0
- package/dist/server/llm-providers/dashscope.js +2 -2
- package/dist/server/llm-providers/kimi/provider.js +2 -2
- package/dist/server/llm-providers/mimo.js +2 -2
- package/dist/server/llm-providers/openai/completions.js +2 -2
- package/dist/server/llm-providers/openai/responses.js +8 -4
- package/dist/server/llm-providers/provider.d.ts +2 -2
- package/dist/server/llm-providers/provider.js +1 -0
- package/dist/server/types/knowledge-base.type.d.ts +1 -1
- package/dist/server/workflow/nodes/llm/index.js +3 -0
- package/package.json +3 -2
- package/dist/client/561.776886c5308e3c26.js +0 -10
- /package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/cli-design/nb-app-design-intent.md +0 -0
- /package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/cli-design/nb-proxy-design-intent.md +0 -0
- /package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/installation/airgap.md +0 -0
- /package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/installation/docker-compose.md +0 -0
- /package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/operations/backup-restore.md +0 -0
- /package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/operations/manage-app.md +0 -0
- /package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/operations/multi-environment.md +0 -0
- /package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/plugins/third-party.md +0 -0
- /package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/production/autostart.md +0 -0
- /package/dist/ai/docs/nocobase/{quickstart → nocobase-cli}/release-management.md +0 -0
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
---
|
|
2
|
+
pkg: '@nocobase/plugin-workflow-transaction'
|
|
3
|
+
title: "Workflow node - Database transaction"
|
|
4
|
+
description: "Database transaction node: run data operations from the same data source in one transaction, commit on success, and roll back on failure."
|
|
5
|
+
keywords: "workflow,database transaction,Transaction,rollback,commit,data operation,NocoBase"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Database Transaction
|
|
9
|
+
|
|
10
|
+
## Introduction
|
|
11
|
+
|
|
12
|
+
The database transaction node runs a group of database operations in the same transaction. It is suitable for scenarios where multiple data steps must either all succeed or all roll back, such as creating an order, deducting inventory, writing order details, and updating status.
|
|
13
|
+
|
|
14
|
+
The transaction node currently supports database data sources only. Data operations from the same data source inside the node are automatically included in the transaction; other data sources do not use this transaction.
|
|
15
|
+
|
|
16
|
+
This node has been supported since 2.2.0.
|
|
17
|
+
|
|
18
|
+
## Create Node
|
|
19
|
+
|
|
20
|
+
In the workflow configuration interface, click the plus ("+") button in the flow to add a "Database transaction" node.
|
|
21
|
+
|
|
22
|
+

|
|
23
|
+
|
|
24
|
+
After creation, two branches are generated:
|
|
25
|
+
|
|
26
|
+
- **Run**: The main branch executed inside the transaction. If all nodes in this branch succeed, the transaction is committed automatically. If any node fails or throws an error, the transaction is rolled back automatically.
|
|
27
|
+
- **After rollback**: The branch executed after rollback. This branch runs outside the transaction and can be used to record logs, send notifications, or perform compensation handling.
|
|
28
|
+
|
|
29
|
+

|
|
30
|
+
|
|
31
|
+
## Node Configuration
|
|
32
|
+
|
|
33
|
+

|
|
34
|
+
|
|
35
|
+
### Data Source
|
|
36
|
+
|
|
37
|
+
Select the database data source controlled by this transaction. Only data operation nodes from the same data source are automatically included in the transaction.
|
|
38
|
+
|
|
39
|
+
### Isolation Level
|
|
40
|
+
|
|
41
|
+
Set the transaction isolation level. The default value is `READ UNCOMMITTED`. If your business requires stricter data consistency, choose another isolation level based on database capabilities and concurrency requirements.
|
|
42
|
+
|
|
43
|
+
### Continue Workflow After Rollback
|
|
44
|
+
|
|
45
|
+
When enabled, the workflow continues to the nodes after the transaction node after the `After rollback` branch finishes.
|
|
46
|
+
|
|
47
|
+
When disabled, the workflow stops at the transaction node after the `After rollback` branch finishes, and subsequent nodes are not executed.
|
|
48
|
+
|
|
49
|
+
## Usage
|
|
50
|
+
|
|
51
|
+
### Constraints
|
|
52
|
+
|
|
53
|
+
The `Run` branch does not support asynchronous nodes that suspend the workflow, such as manual handling and delay nodes. The transaction must be committed or rolled back during the current execution. If the `Run` branch enters a waiting state, the system rolls back the transaction and marks the workflow as failed.
|
|
54
|
+
|
|
55
|
+
The `After rollback` branch runs outside the transaction, so it is not subject to the above restriction. You can use asynchronous nodes in this branch as needed, such as sending requests, waiting for manual confirmation, or delaying processing.
|
|
56
|
+
|
|
57
|
+
:::warning Note
|
|
58
|
+
Transactions occupy database connections until they are committed or rolled back. Avoid long-running operations in the `Run` branch and keep only the necessary data reads, writes, and checks there.
|
|
59
|
+
:::
|
|
60
|
+
|
|
61
|
+
### Nested Transactions
|
|
62
|
+
|
|
63
|
+
Transaction nodes can be nested, but you need to pay attention to the data source scope:
|
|
64
|
+
|
|
65
|
+
- If the inner and outer transactions use the same data source, the inner transaction is created within the outer transaction scope and is handled according to the database and Sequelize capabilities.
|
|
66
|
+
- If the inner transaction uses a different data source, it does not reuse the outer transaction and creates an independent transaction for that data source.
|
|
67
|
+
- If the workflow is triggered by a synchronous collection event, the trigger itself may already provide a top-level transaction for the same data source. The transaction node preferentially reuses the outer transaction of the same data source and does not reuse transactions from different data sources.
|
|
68
|
+
|
|
69
|
+
Nested transactions increase the cost of understanding and troubleshooting. In general, use nested transactions only when you really need a local rollback boundary. Otherwise, prefer wrapping the complete data processing flow in a single transaction node.
|
|
70
|
+
|
|
71
|
+
### Common Scenario
|
|
72
|
+
|
|
73
|
+
A typical flow is as follows:
|
|
74
|
+
|
|
75
|
+
1. Query or create related data in the `Run` branch.
|
|
76
|
+
2. Continue updating inventory, status, details, and other data from the same data source in the `Run` branch.
|
|
77
|
+
3. If all steps succeed, the transaction is committed automatically.
|
|
78
|
+
4. If any node fails or throws an error, the transaction is rolled back automatically and the workflow enters the `After rollback` branch.
|
|
79
|
+
5. Record the failure reason, send notifications, or perform compensation logic in the `After rollback` branch.
|
|
80
|
+
|
|
81
|
+
If the workflow needs to continue after rollback, enable "Continue workflow after rollback".
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
"use strict";(self.webpackChunk_nocobase_plugin_ai=self.webpackChunk_nocobase_plugin_ai||[]).push([["561"],{3392:function(e,t,r){r.r(t),r.d(t,{Messages:function(){return v},MessagesSettings:function(){return g}});var o=r(3342),n=r(9155),a=r.n(n),s=r(3079),l=r(7768),c=r(418),p=r(166),i=r(5230),m=r(1990),u=r(2333),y=r(2059),d=(0,i.observer)(function(e){var t,r,o=(0,i.useField)(),n=(0,i.useFieldSchema)(),s=Array.isArray(o.value)?o.value:[],l=e.header,m=e.itemTitle;return a().createElement(c.ArrayBase,null,a().createElement(u.Ay,(t=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){var o;o=r[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}({},e),r=r={value:s,onChange:function(e){o.form.setValuesIn(o.path,e)},getDefaultValue:function(){return(0,p.clone)(e.defaultValue)},renderHeader:function(e,t){var r=o.form.queryFeedbacks({type:"error",address:"".concat(o.address.concat(t),".**")}),n=null!=l?l:m;return r.length?a().createElement(y.Badge,{size:"small",className:"errors-badge",count:r.length},n):n},renderItem:function(e,t){var r=Array.isArray(n.items)?n.items[t]||n.items[0]:n.items;return r?a().createElement(c.ArrayBase.Item,{index:t,record:e},a().createElement(i.RecursionField,{schema:r,name:t})):null}},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}),t)))}),b=(0,i.observer)(function(){var e=(0,s.kj)(),t=(0,i.useField)().query(".type").take();return(null==t?void 0:t.value)==="image_url"||(null==t?void 0:t.value)==="image_base64"?a().createElement(o.SchemaComponent,{components:{WorkflowVariableInput:m.WorkflowVariableInput},schema:{type:"void",properties:{image_url:{type:"object",properties:{url:{title:(0,l.tval)("Image",{ns:s.MF}),type:"string","x-decorator":"FormItem","x-component":"WorkflowVariableInput","x-component-props":{changeOnSelect:!0}}}}}}}):a().createElement(o.SchemaComponent,{components:{WorkflowVariableRawTextArea:m.WorkflowVariableRawTextArea},schema:{type:"void",properties:{content:{title:e("Content"),type:"string","x-decorator":"FormItem","x-component":"WorkflowVariableRawTextArea","x-component-props":{autoSize:{minRows:5}}}}}})}),f=(0,i.observer)(function(){var e=(0,s.kj)(),t=(0,i.useField)().query(".role").take();return t?"user"===t.value?a().createElement(o.SchemaComponent,{components:{FormLayout:c.FormLayout,ListCollapse:d,UserMessage:b},schema:{type:"void",properties:{content:{type:"array","x-component":"ListCollapse","x-component-props":{size:"small",bordered:!1,addText:(0,l.tval)("Add content",{ns:s.MF}),defaultValue:{type:"text"},header:e("Content"),itemTitle:e("Content")},default:[{type:"text"}],"x-decorator":"FormItem",items:{type:"object",properties:{form:{type:"void","x-component":"FormLayout","x-component-props":{layout:"vertical"},properties:{type:{title:e("Type"),type:"string","x-decorator":"FormItem","x-component":"Select",enum:[{label:e("Text"),value:"text"},{label:e("Image (send via URL)"),value:"image_url"},{label:e("Image (send via Base64)"),value:"image_base64"}],default:"text"},user:{type:"void","x-component":"UserMessage"}}}}}}}}}):a().createElement(o.SchemaComponent,{components:{WorkflowVariableRawTextArea:m.WorkflowVariableRawTextArea},schema:{type:"void",properties:{message:{title:(0,l.tval)("Content",{ns:s.MF}),type:"string","x-decorator":"FormItem","x-component":"WorkflowVariableRawTextArea"}}}}):null}),v=function(){var e=(0,s.kj)();return a().createElement(o.SchemaComponent,{components:{Content:f,FormLayout:c.FormLayout,ListCollapse:d},schema:{type:"void",properties:{messages:{type:"array","x-component":"ListCollapse","x-component-props":{size:"small",addText:(0,l.tval)("Add prompt",{ns:s.MF}),defaultValue:{role:"user",content:[{type:"text"}]},header:e("Message"),itemTitle:e("Message")},"x-decorator":"FormItem",default:[{role:"user",content:[{type:"text"}]}],items:{type:"object",properties:{form:{type:"void","x-component":"FormLayout","x-component-props":{layout:"vertical"},properties:{role:{title:(0,l.tval)("Role",{ns:s.MF}),type:"string","x-decorator":"FormItem","x-component":"Select",enum:[{label:"System",value:"system"},{label:"User",value:"user"},{label:"Assistant",value:"assistant"}],default:"user"},content:{type:"void","x-component":"Content"}}}}}}}}})},g=function(){return a().createElement(o.SchemaComponent,{components:{Messages:v},schema:{type:"void",properties:{messages:{type:"void","x-component":"Messages"}}}})}}}]);
|