n8n 2.30.3 → 2.31.0
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/agent-library-bundle.js +9 -0
- package/dist/blob-storage/azure-byte-store.ee.d.ts +1 -1
- package/dist/blob-storage/azure-byte-store.ee.js +3 -18
- package/dist/blob-storage/azure-byte-store.ee.js.map +1 -1
- package/dist/blob-storage/json-store.js +3 -0
- package/dist/blob-storage/json-store.js.map +1 -1
- package/dist/blob-storage/s3-byte-store.ee.d.ts +1 -1
- package/dist/blob-storage/s3-byte-store.ee.js +2 -17
- package/dist/blob-storage/s3-byte-store.ee.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/commands/base-command.d.ts +2 -2
- package/dist/commands/base-command.js +5 -5
- package/dist/commands/base-command.js.map +1 -1
- package/dist/commands/start.js +2 -0
- package/dist/commands/start.js.map +1 -1
- package/dist/constants/workflow-reviews.d.ts +4 -0
- package/dist/constants/workflow-reviews.js +14 -0
- package/dist/constants/workflow-reviews.js.map +1 -0
- package/dist/constants.js +2 -0
- package/dist/constants.js.map +1 -1
- package/dist/controllers/e2e.controller.js +1 -0
- package/dist/controllers/e2e.controller.js.map +1 -1
- package/dist/controllers/security-settings.controller.d.ts +15 -10
- package/dist/controllers/security-settings.controller.js +41 -65
- package/dist/controllers/security-settings.controller.js.map +1 -1
- package/dist/controllers/users.controller.d.ts +2 -2
- package/dist/credentials/credential-connection-status-provider.interface.d.ts +2 -1
- package/dist/credentials/credential-connection-status-proxy.d.ts +2 -1
- package/dist/credentials/credential-connection-status-proxy.js +7 -2
- package/dist/credentials/credential-connection-status-proxy.js.map +1 -1
- package/dist/credentials/credentials.controller.js +5 -5
- package/dist/credentials/credentials.controller.js.map +1 -1
- package/dist/credentials/credentials.service.d.ts +1 -0
- package/dist/credentials/credentials.service.ee.d.ts +3 -1
- package/dist/credentials/credentials.service.ee.js +10 -2
- package/dist/credentials/credentials.service.ee.js.map +1 -1
- package/dist/credentials/credentials.service.js +14 -0
- package/dist/credentials/credentials.service.js.map +1 -1
- package/dist/eventbus/event-message-classes/index.d.ts +2 -2
- package/dist/eventbus/event-message-classes/index.js +4 -2
- package/dist/eventbus/event-message-classes/index.js.map +1 -1
- package/dist/events/maps/relay.event-map.d.ts +19 -2
- package/dist/events/relays/log-streaming.event-relay.d.ts +2 -0
- package/dist/events/relays/log-streaming.event-relay.js +30 -2
- package/dist/events/relays/log-streaming.event-relay.js.map +1 -1
- package/dist/events/relays/telemetry.event-relay.d.ts +3 -0
- package/dist/events/relays/telemetry.event-relay.js +88 -10
- package/dist/events/relays/telemetry.event-relay.js.map +1 -1
- package/dist/execution-lifecycle/execution-lifecycle-hooks.js +21 -4
- package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
- package/dist/executions/execution-data/db-store.d.ts +8 -15
- package/dist/executions/execution-data/db-store.js +12 -25
- package/dist/executions/execution-data/db-store.js.map +1 -1
- package/dist/executions/execution-data/execution-data-json-store.d.ts +7 -0
- package/dist/executions/execution-data/execution-data-json-store.js +45 -0
- package/dist/executions/execution-data/execution-data-json-store.js.map +1 -0
- package/dist/executions/execution-data/types.d.ts +3 -14
- package/dist/executions/execution-data/types.js.map +1 -1
- package/dist/executions/execution-persistence.d.ts +7 -14
- package/dist/executions/execution-persistence.js +40 -88
- package/dist/executions/execution-persistence.js.map +1 -1
- package/dist/executions/execution.service.d.ts +3 -4
- package/dist/executions/execution.service.js +4 -13
- package/dist/executions/execution.service.js.map +1 -1
- package/dist/executions/executions.controller.js +1 -10
- package/dist/executions/executions.controller.js.map +1 -1
- package/dist/interfaces.d.ts +4 -1
- package/dist/load-nodes-and-credentials.js +1 -1
- package/dist/load-nodes-and-credentials.js.map +1 -1
- package/dist/metrics/prometheus/prometheus.service.d.ts +2 -1
- package/dist/metrics/prometheus/prometheus.service.js +5 -2
- package/dist/metrics/prometheus/prometheus.service.js.map +1 -1
- package/dist/metrics/prometheus/scheduler-metrics.service.d.ts +35 -0
- package/dist/metrics/prometheus/scheduler-metrics.service.js +187 -0
- package/dist/metrics/prometheus/scheduler-metrics.service.js.map +1 -0
- package/dist/modules/agents/adapters/agents-credential-provider.d.ts +1 -0
- package/dist/modules/agents/adapters/agents-credential-provider.js +13 -3
- package/dist/modules/agents/adapters/agents-credential-provider.js.map +1 -1
- package/dist/modules/agents/agent-config.service.js +11 -1
- package/dist/modules/agents/agent-config.service.js.map +1 -1
- package/dist/modules/agents/agent-knowledge.controller.js +1 -1
- package/dist/modules/agents/agent-knowledge.controller.js.map +1 -1
- package/dist/modules/agents/agent-upload.middleware.d.ts +2 -0
- package/dist/modules/agents/agent-upload.middleware.js +11 -0
- package/dist/modules/agents/agent-upload.middleware.js.map +1 -1
- package/dist/modules/agents/agent-validation.service.js +19 -2
- package/dist/modules/agents/agent-validation.service.js.map +1 -1
- package/dist/modules/agents/agent-vector-stores.controller.d.ts +11 -0
- package/dist/modules/agents/agent-vector-stores.controller.js +41 -0
- package/dist/modules/agents/agent-vector-stores.controller.js.map +1 -0
- package/dist/modules/agents/agent-vector-stores.service.d.ts +9 -0
- package/dist/modules/agents/agent-vector-stores.service.js +195 -0
- package/dist/modules/agents/agent-vector-stores.service.js.map +1 -0
- package/dist/modules/agents/agents-config.controller.d.ts +112 -69
- package/dist/modules/agents/agents.controller.d.ts +5 -1
- package/dist/modules/agents/agents.controller.js +11 -0
- package/dist/modules/agents/agents.controller.js.map +1 -1
- package/dist/modules/agents/agents.module.js +1 -0
- package/dist/modules/agents/agents.module.js.map +1 -1
- package/dist/modules/agents/agents.service.d.ts +7 -2
- package/dist/modules/agents/agents.service.js +65 -2
- package/dist/modules/agents/agents.service.js.map +1 -1
- package/dist/modules/agents/attachable-workflows.service.d.ts +12 -0
- package/dist/modules/agents/attachable-workflows.service.js +58 -0
- package/dist/modules/agents/attachable-workflows.service.js.map +1 -0
- package/dist/modules/agents/builder/agents-builder-model-recommendations.js +3 -2
- package/dist/modules/agents/builder/agents-builder-model-recommendations.js.map +1 -1
- package/dist/modules/agents/builder/agents-builder-prompts.d.ts +4 -4
- package/dist/modules/agents/builder/agents-builder-prompts.js +40 -27
- package/dist/modules/agents/builder/agents-builder-prompts.js.map +1 -1
- package/dist/modules/agents/builder/agents-builder-tools.service.d.ts +3 -5
- package/dist/modules/agents/builder/agents-builder-tools.service.js +48 -194
- package/dist/modules/agents/builder/agents-builder-tools.service.js.map +1 -1
- package/dist/modules/agents/builder/agents-builder.service.d.ts +10 -3
- package/dist/modules/agents/builder/agents-builder.service.js +22 -12
- package/dist/modules/agents/builder/agents-builder.service.js.map +1 -1
- package/dist/modules/agents/builder/builder-tool-names.js.map +1 -1
- package/dist/modules/agents/builder/errors.d.ts +3 -2
- package/dist/modules/agents/builder/errors.js +3 -2
- package/dist/modules/agents/builder/errors.js.map +1 -1
- package/dist/modules/agents/builder/get-resource-locator-options.tool.d.ts +99 -2
- package/dist/modules/agents/builder/get-resource-locator-options.tool.js +103 -101
- package/dist/modules/agents/builder/get-resource-locator-options.tool.js.map +1 -1
- package/dist/modules/agents/builder/interactive/ask-credential.tool.js +48 -32
- package/dist/modules/agents/builder/interactive/ask-credential.tool.js.map +1 -1
- package/dist/modules/agents/builder/interactive/ask-questions.tool.d.ts +2 -0
- package/dist/modules/agents/builder/interactive/ask-questions.tool.js +108 -0
- package/dist/modules/agents/builder/interactive/ask-questions.tool.js.map +1 -0
- package/dist/modules/agents/builder/interactive/configure-channel.tool.d.ts +7 -0
- package/dist/modules/agents/builder/interactive/configure-channel.tool.js +52 -0
- package/dist/modules/agents/builder/interactive/configure-channel.tool.js.map +1 -0
- package/dist/modules/agents/builder/interactive/index.d.ts +2 -2
- package/dist/modules/agents/builder/interactive/index.js +5 -5
- package/dist/modules/agents/builder/interactive/index.js.map +1 -1
- package/dist/modules/agents/builder/interactive/resolve-llm.tool.js +2 -2
- package/dist/modules/agents/builder/interactive/resolve-llm.tool.js.map +1 -1
- package/dist/modules/agents/builder/prompts/config-mutation.prompt.js +1 -1
- package/dist/modules/agents/builder/prompts/config-rules.prompt.js +2 -2
- package/dist/modules/agents/builder/prompts/llm-selection.prompt.js +10 -10
- package/dist/modules/agents/builder/prompts/llm-selection.prompt.js.map +1 -1
- package/dist/modules/agents/builder/prompts/memory.prompt.d.ts +1 -1
- package/dist/modules/agents/builder/prompts/memory.prompt.js +1 -1
- package/dist/modules/agents/builder/search-mcp-servers.tool.js +1 -63
- package/dist/modules/agents/builder/search-mcp-servers.tool.js.map +1 -1
- package/dist/modules/agents/builder/skills/index.d.ts +1 -1
- package/dist/modules/agents/builder/skills/index.js +5 -1
- package/dist/modules/agents/builder/skills/index.js.map +1 -1
- package/dist/modules/agents/builder/skills/integrations.skill.js +15 -6
- package/dist/modules/agents/builder/skills/integrations.skill.js.map +1 -1
- package/dist/modules/agents/builder/skills/mcp.skill.js +2 -2
- package/dist/modules/agents/builder/skills/mcp.skill.js.map +1 -1
- package/dist/modules/agents/builder/skills/resource-locators.skill.js +2 -2
- package/dist/modules/agents/builder/skills/resource-locators.skill.js.map +1 -1
- package/dist/modules/agents/builder/skills/sub-agents.skill.js +7 -5
- package/dist/modules/agents/builder/skills/sub-agents.skill.js.map +1 -1
- package/dist/modules/agents/builder/skills/target-skills.skill.js +5 -4
- package/dist/modules/agents/builder/skills/target-skills.skill.js.map +1 -1
- package/dist/modules/agents/builder/skills/target-tasks.skill.js +5 -5
- package/dist/modules/agents/builder/skills/target-tasks.skill.js.map +1 -1
- package/dist/modules/agents/instance-ai-builder-delegate.adapter.d.ts +14 -0
- package/dist/modules/agents/instance-ai-builder-delegate.adapter.js +96 -0
- package/dist/modules/agents/instance-ai-builder-delegate.adapter.js.map +1 -0
- package/dist/modules/agents/integrations/integration-action-executor.d.ts +72 -72
- package/dist/modules/agents/integrations/integration-tool-definitions.d.ts +574 -574
- package/dist/modules/agents/json-config/embedding-credential.d.ts +4 -0
- package/dist/modules/agents/json-config/embedding-credential.js +25 -0
- package/dist/modules/agents/json-config/embedding-credential.js.map +1 -0
- package/dist/modules/agents/json-config/from-json-config.d.ts +2 -6
- package/dist/modules/agents/json-config/from-json-config.js +16 -16
- package/dist/modules/agents/json-config/from-json-config.js.map +1 -1
- package/dist/modules/agents/json-config/model-config.js +2 -2
- package/dist/modules/agents/json-config/model-config.js.map +1 -1
- package/dist/modules/agents/json-config/vector-store-factory.d.ts +5 -0
- package/dist/modules/agents/json-config/vector-store-factory.js +138 -0
- package/dist/modules/agents/json-config/vector-store-factory.js.map +1 -0
- package/dist/modules/breaking-changes/rules/index.d.ts +8 -0
- package/dist/modules/breaking-changes/rules/index.js +8 -0
- package/dist/modules/breaking-changes/rules/index.js.map +1 -1
- package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.d.ts +6 -0
- package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.js +59 -0
- package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.js.map +1 -0
- package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.d.ts +9 -0
- package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.js +57 -0
- package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.js.map +1 -0
- package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.d.ts +10 -0
- package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.js +53 -0
- package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.js.map +1 -0
- package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.d.ts +9 -0
- package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.js +56 -0
- package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.js.map +1 -0
- package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.d.ts +9 -0
- package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.js +57 -0
- package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.js.map +1 -0
- package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.d.ts +6 -0
- package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.js +50 -0
- package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.js.map +1 -0
- package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.d.ts +9 -0
- package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.js +57 -0
- package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.js.map +1 -0
- package/dist/modules/breaking-changes/rules/v3/workflow-import-url-removed.rule.d.ts +6 -0
- package/dist/modules/breaking-changes/rules/v3/workflow-import-url-removed.rule.js +47 -0
- package/dist/modules/breaking-changes/rules/v3/workflow-import-url-removed.rule.js.map +1 -0
- package/dist/modules/chat-hub/chat-hub.module.d.ts +1 -1
- package/dist/modules/chat-hub/chat-hub.settings.controller.d.ts +3 -3
- package/dist/modules/data-table/data-table-ddl.service.d.ts +2 -0
- package/dist/modules/data-table/data-table-ddl.service.js +16 -0
- package/dist/modules/data-table/data-table-ddl.service.js.map +1 -1
- package/dist/modules/data-table/data-table.service.d.ts +6 -3
- package/dist/modules/data-table/data-table.service.js +19 -0
- package/dist/modules/data-table/data-table.service.js.map +1 -1
- package/dist/modules/data-table/utils/sql-utils.d.ts +1 -0
- package/dist/modules/data-table/utils/sql-utils.js +4 -0
- package/dist/modules/data-table/utils/sql-utils.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.d.ts +0 -2
- package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js +0 -13
- package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.d.ts +5 -3
- package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.js +19 -7
- package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-storage.service.js +1 -1
- package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js +1 -1
- package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js.map +1 -1
- package/dist/modules/favorites/dto/add-favorite.dto.d.ts +2 -2
- package/dist/modules/favorites/favorites.event-relay.js +2 -3
- package/dist/modules/favorites/favorites.event-relay.js.map +1 -1
- package/dist/modules/favorites/favorites.service.d.ts +4 -1
- package/dist/modules/favorites/favorites.service.js +28 -3
- package/dist/modules/favorites/favorites.service.js.map +1 -1
- package/dist/modules/instance-ai/eval/execution.service.d.ts +4 -1
- package/dist/modules/instance-ai/eval/execution.service.js +26 -3
- package/dist/modules/instance-ai/eval/execution.service.js.map +1 -1
- package/dist/modules/instance-ai/eval/mock-handler.js +1 -1
- package/dist/modules/instance-ai/eval/mock-handler.js.map +1 -1
- package/dist/modules/instance-ai/eval/mock-quirks.js +7 -0
- package/dist/modules/instance-ai/eval/mock-quirks.js.map +1 -1
- package/dist/modules/instance-ai/eval/pin-data-generator.js +17 -17
- package/dist/modules/instance-ai/eval/pin-data-generator.js.map +1 -1
- package/dist/modules/instance-ai/event-bus/in-process-event-bus.d.ts +17 -6
- package/dist/modules/instance-ai/event-bus/in-process-event-bus.js +153 -30
- package/dist/modules/instance-ai/event-bus/in-process-event-bus.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai-memory.service.d.ts +7 -2
- package/dist/modules/instance-ai/instance-ai-memory.service.js +12 -1
- package/dist/modules/instance-ai/instance-ai-memory.service.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai-settings.service.js +0 -7
- package/dist/modules/instance-ai/instance-ai-settings.service.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai.adapter.service.d.ts +89 -3
- package/dist/modules/instance-ai/instance-ai.adapter.service.js +272 -42
- package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai.controller.js +9 -2
- package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai.service.d.ts +0 -1
- package/dist/modules/instance-ai/instance-ai.service.js +45 -107
- package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
- package/dist/modules/instance-ai/workflow-templates.service.d.ts +17 -0
- package/dist/modules/instance-ai/workflow-templates.service.js +63 -0
- package/dist/modules/instance-ai/workflow-templates.service.js.map +1 -0
- package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.d.ts +1 -0
- package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.js +2 -0
- package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.js.map +1 -1
- package/dist/modules/mcp/dto/update-workflows-availability.dto.d.ts +2 -0
- package/dist/modules/mcp/dto/update-workflows-availability.dto.js +1 -0
- package/dist/modules/mcp/dto/update-workflows-availability.dto.js.map +1 -1
- package/dist/modules/mcp/mcp-protected-resource.d.ts +4 -1
- package/dist/modules/mcp/mcp-protected-resource.js +13 -3
- package/dist/modules/mcp/mcp-protected-resource.js.map +1 -1
- package/dist/modules/mcp/mcp.config.d.ts +1 -0
- package/dist/modules/mcp/mcp.config.js +20 -0
- package/dist/modules/mcp/mcp.config.js.map +1 -1
- package/dist/modules/mcp/mcp.module.d.ts +1 -0
- package/dist/modules/mcp/mcp.module.js +3 -1
- package/dist/modules/mcp/mcp.module.js.map +1 -1
- package/dist/modules/mcp/mcp.settings.service.d.ts +1 -1
- package/dist/modules/mcp/mcp.settings.service.js +33 -18
- package/dist/modules/mcp/mcp.settings.service.js.map +1 -1
- package/dist/modules/mcp/tools/search-workflows.tool.js +4 -2
- package/dist/modules/mcp/tools/search-workflows.tool.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.d.ts +2 -0
- package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js +10 -5
- package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/restore-workflow-version.tool.js +4 -0
- package/dist/modules/mcp/tools/workflow-builder/restore-workflow-version.tool.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/skills-used.d.ts +1 -0
- package/dist/modules/mcp/tools/workflow-builder/skills-used.js +5 -1
- package/dist/modules/mcp/tools/workflow-builder/skills-used.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js +10 -5
- package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/version-metadata.d.ts +27 -0
- package/dist/modules/mcp/tools/workflow-builder/version-metadata.js +109 -0
- package/dist/modules/mcp/tools/workflow-builder/version-metadata.js.map +1 -0
- package/dist/modules/mcp-registry/registry/mcp-registry-search.d.ts +18 -0
- package/dist/modules/mcp-registry/registry/mcp-registry-search.js +64 -0
- package/dist/modules/mcp-registry/registry/mcp-registry-search.js.map +1 -0
- package/dist/modules/mcp-registry/registry/mcp-registry.service.d.ts +2 -0
- package/dist/modules/mcp-registry/registry/mcp-registry.service.js +4 -0
- package/dist/modules/mcp-registry/registry/mcp-registry.service.js.map +1 -1
- package/dist/modules/n8n-packages/engine/import-blocked.error.js +2 -1
- package/dist/modules/n8n-packages/engine/import-blocked.error.js.map +1 -1
- package/dist/modules/n8n-packages/engine/import-orchestrator.d.ts +30 -0
- package/dist/modules/n8n-packages/engine/import-orchestrator.js +86 -0
- package/dist/modules/n8n-packages/engine/import-orchestrator.js.map +1 -0
- package/dist/modules/n8n-packages/engine/import-result.d.ts +14 -0
- package/dist/modules/n8n-packages/engine/import-result.js +43 -0
- package/dist/modules/n8n-packages/engine/import-result.js.map +1 -0
- package/dist/modules/n8n-packages/engine/n8n-package-parser.d.ts +7 -0
- package/dist/modules/n8n-packages/engine/n8n-package-parser.js +72 -13
- package/dist/modules/n8n-packages/engine/n8n-package-parser.js.map +1 -1
- package/dist/modules/n8n-packages/engine/package-layout.d.ts +11 -0
- package/dist/modules/n8n-packages/engine/package-layout.js +21 -0
- package/dist/modules/n8n-packages/engine/package-layout.js.map +1 -0
- package/dist/modules/n8n-packages/engine/project-package-importer.d.ts +11 -0
- package/dist/modules/n8n-packages/engine/project-package-importer.js +44 -0
- package/dist/modules/n8n-packages/engine/project-package-importer.js.map +1 -0
- package/dist/modules/n8n-packages/engine/workflow-package-importer.d.ts +24 -0
- package/dist/modules/n8n-packages/engine/workflow-package-importer.js +168 -0
- package/dist/modules/n8n-packages/engine/workflow-package-importer.js.map +1 -0
- package/dist/modules/n8n-packages/entities/credential/credential-matcher-factory.d.ts +3 -1
- package/dist/modules/n8n-packages/entities/credential/credential-matcher-factory.js +8 -2
- package/dist/modules/n8n-packages/entities/credential/credential-matcher-factory.js.map +1 -1
- package/dist/modules/n8n-packages/entities/credential/credential-matcher.d.ts +6 -6
- package/dist/modules/n8n-packages/entities/credential/credential-matcher.js +34 -4
- package/dist/modules/n8n-packages/entities/credential/credential-matcher.js.map +1 -1
- package/dist/modules/n8n-packages/entities/credential/credential-tier-selection.d.ts +3 -0
- package/dist/modules/n8n-packages/entities/credential/credential-tier-selection.js +27 -0
- package/dist/modules/n8n-packages/entities/credential/credential-tier-selection.js.map +1 -0
- package/dist/modules/n8n-packages/entities/credential/credential.exporter.d.ts +2 -0
- package/dist/modules/n8n-packages/entities/credential/credential.exporter.js +18 -2
- package/dist/modules/n8n-packages/entities/credential/credential.exporter.js.map +1 -1
- package/dist/modules/n8n-packages/entities/credential/id-based-credential-matcher.d.ts +3 -7
- package/dist/modules/n8n-packages/entities/credential/id-based-credential-matcher.js +8 -23
- package/dist/modules/n8n-packages/entities/credential/id-based-credential-matcher.js.map +1 -1
- package/dist/modules/n8n-packages/entities/credential/name-and-type-credential-matcher.d.ts +8 -0
- package/dist/modules/n8n-packages/entities/credential/name-and-type-credential-matcher.js +31 -0
- package/dist/modules/n8n-packages/entities/credential/name-and-type-credential-matcher.js.map +1 -0
- package/dist/modules/n8n-packages/entities/credential/type-only-credential-matcher.d.ts +8 -0
- package/dist/modules/n8n-packages/entities/credential/type-only-credential-matcher.js +31 -0
- package/dist/modules/n8n-packages/entities/credential/type-only-credential-matcher.js.map +1 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table-requirements.extractor.d.ts +6 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table-requirements.extractor.js +38 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table-requirements.extractor.js.map +1 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table.exporter.d.ts +26 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table.exporter.js +97 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table.exporter.js.map +1 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table.serializer.d.ts +5 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table.serializer.js +31 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table.serializer.js.map +1 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table.types.d.ts +4 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table.types.js +3 -0
- package/dist/modules/n8n-packages/entities/data-table/data-table.types.js.map +1 -0
- package/dist/modules/n8n-packages/entities/folder/folder-conflict-policy.d.ts +5 -0
- package/dist/modules/n8n-packages/entities/folder/folder-conflict-policy.js +11 -0
- package/dist/modules/n8n-packages/entities/folder/folder-conflict-policy.js.map +1 -0
- package/dist/modules/n8n-packages/entities/folder/folder-import.types.d.ts +20 -0
- package/dist/modules/n8n-packages/entities/folder/folder-import.types.js +3 -0
- package/dist/modules/n8n-packages/entities/folder/folder-import.types.js.map +1 -0
- package/dist/modules/n8n-packages/entities/folder/folder-importer.d.ts +10 -0
- package/dist/modules/n8n-packages/entities/folder/folder-importer.js +140 -0
- package/dist/modules/n8n-packages/entities/folder/folder-importer.js.map +1 -0
- package/dist/modules/n8n-packages/entities/folder/folder.exporter.d.ts +5 -2
- package/dist/modules/n8n-packages/entities/folder/folder.exporter.js +48 -44
- package/dist/modules/n8n-packages/entities/folder/folder.exporter.js.map +1 -1
- package/dist/modules/n8n-packages/entities/folder/folder.serializer.js.map +1 -1
- package/dist/modules/n8n-packages/entities/package-export.errors.d.ts +8 -0
- package/dist/modules/n8n-packages/entities/package-export.errors.js +27 -0
- package/dist/modules/n8n-packages/entities/package-export.errors.js.map +1 -0
- package/dist/modules/n8n-packages/entities/project/project-import.types.d.ts +15 -0
- package/dist/modules/n8n-packages/entities/project/project-import.types.js +3 -0
- package/dist/modules/n8n-packages/entities/project/project-import.types.js.map +1 -0
- package/dist/modules/n8n-packages/entities/project/project-importer.d.ts +13 -0
- package/dist/modules/n8n-packages/entities/project/project-importer.js +97 -0
- package/dist/modules/n8n-packages/entities/project/project-importer.js.map +1 -0
- package/dist/modules/n8n-packages/entities/project/project.exporter.d.ts +22 -4
- package/dist/modules/n8n-packages/entities/project/project.exporter.js +71 -26
- package/dist/modules/n8n-packages/entities/project/project.exporter.js.map +1 -1
- package/dist/modules/n8n-packages/entities/requirements.types.d.ts +2 -0
- package/dist/modules/n8n-packages/entities/requirements.types.js +1 -0
- package/dist/modules/n8n-packages/entities/requirements.types.js.map +1 -1
- package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.d.ts +4 -3
- package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js +11 -17
- package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js.map +1 -1
- package/dist/modules/n8n-packages/n8n-packages.service.d.ts +12 -3
- package/dist/modules/n8n-packages/n8n-packages.service.js +51 -11
- package/dist/modules/n8n-packages/n8n-packages.service.js.map +1 -1
- package/dist/modules/n8n-packages/n8n-packages.types.d.ts +47 -22
- package/dist/modules/n8n-packages/n8n-packages.types.js +5 -1
- package/dist/modules/n8n-packages/n8n-packages.types.js.map +1 -1
- package/dist/modules/n8n-packages/package-failure-classifier.d.ts +2 -0
- package/dist/modules/n8n-packages/package-failure-classifier.js +29 -0
- package/dist/modules/n8n-packages/package-failure-classifier.js.map +1 -0
- package/dist/modules/n8n-packages/spec/manifest.schema.d.ts +62 -0
- package/dist/modules/n8n-packages/spec/requirements.schema.d.ts +55 -0
- package/dist/modules/n8n-packages/spec/requirements.schema.js +26 -15
- package/dist/modules/n8n-packages/spec/requirements.schema.js.map +1 -1
- package/dist/modules/n8n-packages/spec/serialized/data-table.schema.d.ts +49 -0
- package/dist/modules/n8n-packages/spec/serialized/data-table.schema.js +20 -0
- package/dist/modules/n8n-packages/spec/serialized/data-table.schema.js.map +1 -0
- package/dist/modules/redaction/executions/execution-redaction.service.js +1 -1
- package/dist/modules/redaction/executions/execution-redaction.service.js.map +1 -1
- package/dist/modules/source-control.ee/constants.d.ts +1 -0
- package/dist/modules/source-control.ee/constants.js +2 -1
- package/dist/modules/source-control.ee/constants.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-git.service.ee.d.ts +0 -1
- package/dist/modules/source-control.ee/source-control-git.service.ee.js +0 -22
- package/dist/modules/source-control.ee/source-control-git.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-helper.ee.d.ts +3 -1
- package/dist/modules/source-control.ee/source-control-helper.ee.js +13 -0
- package/dist/modules/source-control.ee/source-control-helper.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-import.service.ee.d.ts +10 -2
- package/dist/modules/source-control.ee/source-control-import.service.ee.js +94 -59
- package/dist/modules/source-control.ee/source-control-import.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-status.service.ee.d.ts +0 -1
- package/dist/modules/source-control.ee/source-control-status.service.ee.js +30 -30
- package/dist/modules/source-control.ee/source-control-status.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +6 -6
- package/dist/modules/source-control.ee/source-control.service.ee.d.ts +3 -3
- package/dist/modules/source-control.ee/source-control.service.ee.js +8 -1
- package/dist/modules/source-control.ee/source-control.service.ee.js.map +1 -1
- package/dist/public-api/types.d.ts +5 -1
- package/dist/public-api/v1/handlers/credentials/credentials.handler.js +9 -0
- package/dist/public-api/v1/handlers/credentials/credentials.handler.js.map +1 -1
- package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js +87 -38
- package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js.map +1 -1
- package/dist/public-api/v1/handlers/security-policy/security-policy.handler.d.ts +8 -0
- package/dist/public-api/v1/handlers/security-policy/security-policy.handler.js +39 -0
- package/dist/public-api/v1/handlers/security-policy/security-policy.handler.js.map +1 -0
- package/dist/public-api/v1/openapi.yml +243 -12
- package/dist/scaling/job-processor.js +44 -6
- package/dist/scaling/job-processor.js.map +1 -1
- package/dist/scaling/pubsub/pubsub.event-map.d.ts +4 -1
- package/dist/scheduling/durable-job-provisioner.d.ts +16 -0
- package/dist/scheduling/durable-job-provisioner.js +135 -0
- package/dist/scheduling/durable-job-provisioner.js.map +1 -0
- package/dist/scheduling/durable-scheduler.d.ts +16 -0
- package/dist/scheduling/durable-scheduler.js +117 -0
- package/dist/scheduling/durable-scheduler.js.map +1 -0
- package/dist/scheduling/schedule-trigger-node/schedule-trigger-task-handler.d.ts +23 -0
- package/dist/scheduling/schedule-trigger-node/schedule-trigger-task-handler.js +149 -0
- package/dist/scheduling/schedule-trigger-node/schedule-trigger-task-handler.js.map +1 -0
- package/dist/scheduling/schedule-trigger-node/schedule-trigger-task.d.ts +10 -0
- package/dist/scheduling/schedule-trigger-node/schedule-trigger-task.js +33 -0
- package/dist/scheduling/schedule-trigger-node/schedule-trigger-task.js.map +1 -0
- package/dist/scheduling/scheduler-tracer.d.ts +3 -0
- package/dist/scheduling/scheduler-tracer.js +11 -0
- package/dist/scheduling/scheduler-tracer.js.map +1 -0
- package/dist/server.js +6 -1
- package/dist/server.js.map +1 -1
- package/dist/services/folder-finder.service.d.ts +2 -0
- package/dist/services/folder-finder.service.js +16 -0
- package/dist/services/folder-finder.service.js.map +1 -1
- package/dist/services/folder.service.d.ts +3 -2
- package/dist/services/folder.service.js +11 -1
- package/dist/services/folder.service.js.map +1 -1
- package/dist/services/frontend.service.d.ts +3 -1
- package/dist/services/frontend.service.js +14 -2
- package/dist/services/frontend.service.js.map +1 -1
- package/dist/services/project.service.ee.d.ts +7 -1
- package/dist/services/project.service.ee.js +21 -4
- package/dist/services/project.service.ee.js.map +1 -1
- package/dist/services/protected-resource.registry.d.ts +1 -0
- package/dist/services/protected-resource.registry.js +11 -7
- package/dist/services/protected-resource.registry.js.map +1 -1
- package/dist/services/security-settings.service.d.ts +31 -1
- package/dist/services/security-settings.service.js +75 -2
- package/dist/services/security-settings.service.js.map +1 -1
- package/dist/services/workflow-review-policy.service.d.ts +11 -0
- package/dist/services/workflow-review-policy.service.js +52 -0
- package/dist/services/workflow-review-policy.service.js.map +1 -0
- package/dist/telemetry/index.d.ts +2 -0
- package/dist/telemetry/index.js +6 -3
- package/dist/telemetry/index.js.map +1 -1
- package/dist/webhooks/live-webhooks.js +2 -2
- package/dist/webhooks/live-webhooks.js.map +1 -1
- package/dist/webhooks/test-webhooks.js +4 -1
- package/dist/webhooks/test-webhooks.js.map +1 -1
- package/dist/webhooks/waiting-webhooks.js +2 -2
- package/dist/webhooks/waiting-webhooks.js.map +1 -1
- package/dist/workflow-execute-additional-data.js +5 -4
- package/dist/workflow-execute-additional-data.js.map +1 -1
- package/dist/workflow-helpers.js +26 -0
- package/dist/workflow-helpers.js.map +1 -1
- package/dist/workflows/triggers/webhook-trigger-registrar.js +22 -15
- package/dist/workflows/triggers/webhook-trigger-registrar.js.map +1 -1
- package/dist/workflows/triggers/workflow-trigger-activator.js +1 -7
- package/dist/workflows/triggers/workflow-trigger-activator.js.map +1 -1
- package/dist/workflows/workflow-creation.service.d.ts +2 -0
- package/dist/workflows/workflow-creation.service.js +4 -2
- package/dist/workflows/workflow-creation.service.js.map +1 -1
- package/dist/workflows/workflow-execution.service.js +8 -5
- package/dist/workflows/workflow-execution.service.js.map +1 -1
- package/dist/workflows/workflow-finder.service.d.ts +5 -2
- package/dist/workflows/workflow-finder.service.js +25 -2
- package/dist/workflows/workflow-finder.service.js.map +1 -1
- package/dist/workflows/workflow-history/workflow-history.service.d.ts +4 -1
- package/dist/workflows/workflow-history/workflow-history.service.js +3 -1
- package/dist/workflows/workflow-history/workflow-history.service.js.map +1 -1
- package/dist/workflows/workflow-validation.service.js +3 -3
- package/dist/workflows/workflow-validation.service.js.map +1 -1
- package/dist/workflows/workflow.request.d.ts +7 -22
- package/dist/workflows/workflow.service.d.ts +2 -0
- package/dist/workflows/workflow.service.js +4 -2
- package/dist/workflows/workflow.service.js.map +1 -1
- package/dist/workflows/workflows.controller.d.ts +1 -1
- package/dist/workflows/workflows.controller.js +8 -3
- package/dist/workflows/workflows.controller.js.map +1 -1
- package/package.json +45 -40
- package/templates/form-trigger-completion.handlebars +6 -6
- package/dist/executions/execution-data/azure-store.ee.d.ts +0 -15
- package/dist/executions/execution-data/azure-store.ee.js +0 -117
- package/dist/executions/execution-data/azure-store.ee.js.map +0 -1
- package/dist/executions/execution-data/fs-store.d.ts +0 -16
- package/dist/executions/execution-data/fs-store.js +0 -118
- package/dist/executions/execution-data/fs-store.js.map +0 -1
- package/dist/executions/execution-data/s3-store.ee.d.ts +0 -15
- package/dist/executions/execution-data/s3-store.ee.js +0 -116
- package/dist/executions/execution-data/s3-store.ee.js.map +0 -1
- package/dist/modules/agents/builder/from-ai-node-parameters.d.ts +0 -7
- package/dist/modules/agents/builder/from-ai-node-parameters.js +0 -43
- package/dist/modules/agents/builder/from-ai-node-parameters.js.map +0 -1
- package/dist/modules/agents/builder/interactive/ask-llm.tool.d.ts +0 -2
- package/dist/modules/agents/builder/interactive/ask-llm.tool.js +0 -25
- package/dist/modules/agents/builder/interactive/ask-llm.tool.js.map +0 -1
- package/dist/modules/agents/builder/interactive/ask-question.tool.d.ts +0 -2
- package/dist/modules/agents/builder/interactive/ask-question.tool.js +0 -27
- package/dist/modules/agents/builder/interactive/ask-question.tool.js.map +0 -1
- package/dist/modules/agents/json-config/model-id.d.ts +0 -1
- package/dist/modules/agents/json-config/model-id.js +0 -8
- package/dist/modules/agents/json-config/model-id.js.map +0 -1
- package/dist/modules/agents/json-config/native-web-search-provider-tools.d.ts +0 -7
- package/dist/modules/agents/json-config/native-web-search-provider-tools.js +0 -55
- package/dist/modules/agents/json-config/native-web-search-provider-tools.js.map +0 -1
- package/dist/modules/n8n-packages/engine/import-pipeline.d.ts +0 -28
- package/dist/modules/n8n-packages/engine/import-pipeline.js +0 -204
- package/dist/modules/n8n-packages/engine/import-pipeline.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "n8n",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.31.0",
|
|
4
4
|
"description": "n8n Workflow Automation Tool",
|
|
5
5
|
"main": "dist/index",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"bin",
|
|
23
23
|
"templates",
|
|
24
24
|
"dist",
|
|
25
|
-
"
|
|
26
|
-
"
|
|
25
|
+
"LICENSE.md",
|
|
26
|
+
"LICENSE_EE.md"
|
|
27
27
|
],
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@faker-js/faker": "^8.0.2",
|
|
@@ -74,14 +74,14 @@
|
|
|
74
74
|
"ts-essentials": "^7.0.3",
|
|
75
75
|
"tsconfig-paths": "^4.2.0",
|
|
76
76
|
"@vitest/coverage-v8": "4.1.9",
|
|
77
|
+
"typescript": "6.0.2",
|
|
77
78
|
"vite": "^8.0.2",
|
|
78
79
|
"vitest": "^4.1.9",
|
|
79
80
|
"vitest-mock-extended": "^3.1.0",
|
|
80
|
-
"@n8n/backend-test-utils": "1.
|
|
81
|
+
"@n8n/backend-test-utils": "1.31.0",
|
|
81
82
|
"@n8n/playwright-janitor": "0.1.0",
|
|
82
|
-
"@n8n/
|
|
83
|
-
"@n8n/
|
|
84
|
-
"@n8n/vitest-config": "1.17.0",
|
|
83
|
+
"@n8n/typescript-config": "1.9.0",
|
|
84
|
+
"@n8n/vitest-config": "1.18.0",
|
|
85
85
|
"n8n-containers": "1.0.0"
|
|
86
86
|
},
|
|
87
87
|
"dependencies": {
|
|
@@ -113,8 +113,12 @@
|
|
|
113
113
|
"@opentelemetry/sdk-trace-node": "^2.7.1",
|
|
114
114
|
"@opentelemetry/semantic-conventions": "^1.40.0",
|
|
115
115
|
"@parcel/watcher": "^2.5.1",
|
|
116
|
+
"@pinecone-database/pinecone": "^5.0.2",
|
|
117
|
+
"@qdrant/js-client-rest": "^1.16.2",
|
|
116
118
|
"@rudderstack/rudder-sdk-node": "3.0.5",
|
|
117
119
|
"@sentry/node": "^10.55.0",
|
|
120
|
+
"@supabase/supabase-js": "2.50.0",
|
|
121
|
+
"ai": "^6.0.197",
|
|
118
122
|
"aws4": "1.11.0",
|
|
119
123
|
"bcryptjs": "2.4.3",
|
|
120
124
|
"bull": "4.16.4",
|
|
@@ -138,7 +142,7 @@
|
|
|
138
142
|
"fast-glob": "3.2.12",
|
|
139
143
|
"fast-json-patch": "^3.1.1",
|
|
140
144
|
"fastest-levenshtein": "1.0.16",
|
|
141
|
-
"fflate": "0.
|
|
145
|
+
"fflate": "0.8.3",
|
|
142
146
|
"flat": "5.0.2",
|
|
143
147
|
"flatted": "3.4.2",
|
|
144
148
|
"formidable": "3.5.4",
|
|
@@ -203,36 +207,37 @@
|
|
|
203
207
|
"yargs-parser": "21.1.1",
|
|
204
208
|
"zod": "3.25.67",
|
|
205
209
|
"zod-to-json-schema": "3.23.3",
|
|
206
|
-
"@n8n/agents": "0.
|
|
207
|
-
"@n8n/ai-
|
|
208
|
-
"@n8n/ai-
|
|
209
|
-
"@n8n/
|
|
210
|
-
"@n8n/backend-common": "1.
|
|
211
|
-
"@n8n/
|
|
212
|
-
"@n8n/
|
|
213
|
-
"@n8n/chat-hub": "1.
|
|
214
|
-
"@n8n/
|
|
215
|
-
"@n8n/
|
|
216
|
-
"@n8n/
|
|
217
|
-
"@n8n/
|
|
218
|
-
"@n8n/
|
|
219
|
-
"@n8n/
|
|
220
|
-
"@n8n/
|
|
221
|
-
"@n8n/mcp-apps": "0.
|
|
222
|
-
"@n8n/
|
|
223
|
-
"@n8n/
|
|
224
|
-
"@n8n/
|
|
225
|
-
"@n8n/
|
|
226
|
-
"@n8n/
|
|
227
|
-
"@n8n/
|
|
228
|
-
"@n8n/
|
|
229
|
-
"@n8n/
|
|
230
|
-
"n8n
|
|
231
|
-
"@n8n/workflow-sdk": "0.
|
|
232
|
-
"n8n-editor-ui": "2.
|
|
233
|
-
"n8n
|
|
234
|
-
"n8n-
|
|
235
|
-
"
|
|
210
|
+
"@n8n/agents": "0.16.0",
|
|
211
|
+
"@n8n/ai-utilities": "0.24.0",
|
|
212
|
+
"@n8n/ai-node-sdk": "0.21.0",
|
|
213
|
+
"@n8n/ai-workflow-builder": "1.31.0",
|
|
214
|
+
"@n8n/backend-common": "1.31.0",
|
|
215
|
+
"@n8n/api-types": "1.31.0",
|
|
216
|
+
"@n8n/backend-network": "1.5.0",
|
|
217
|
+
"@n8n/chat-hub": "1.24.0",
|
|
218
|
+
"@n8n/client-oauth2": "1.13.0",
|
|
219
|
+
"@n8n/config": "2.29.0",
|
|
220
|
+
"@n8n/constants": "0.31.0",
|
|
221
|
+
"@n8n/db": "1.31.0",
|
|
222
|
+
"@n8n/decorators": "1.31.0",
|
|
223
|
+
"@n8n/di": "0.15.0",
|
|
224
|
+
"@n8n/errors": "0.12.0",
|
|
225
|
+
"@n8n/mcp-apps": "0.8.0",
|
|
226
|
+
"@n8n/instance-ai": "1.16.0",
|
|
227
|
+
"@n8n/mcp-browser": "0.14.0",
|
|
228
|
+
"@n8n/expression-runtime": "0.22.0",
|
|
229
|
+
"@n8n/n8n-nodes-langchain": "2.31.0",
|
|
230
|
+
"@n8n/task-runner": "2.31.0",
|
|
231
|
+
"@n8n/syslog-client": "1.8.0",
|
|
232
|
+
"@n8n/permissions": "0.68.0",
|
|
233
|
+
"@n8n/scheduler": "0.3.0",
|
|
234
|
+
"@n8n/utils": "1.39.0",
|
|
235
|
+
"@n8n/workflow-sdk": "0.24.0",
|
|
236
|
+
"n8n-editor-ui": "2.31.0",
|
|
237
|
+
"@n8n/typeorm": "0.5.0",
|
|
238
|
+
"n8n-core": "2.31.0",
|
|
239
|
+
"n8n-workflow": "2.31.0",
|
|
240
|
+
"n8n-nodes-base": "2.31.0"
|
|
236
241
|
},
|
|
237
242
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
238
243
|
"homepage": "https://n8n.io",
|
|
@@ -264,9 +269,9 @@
|
|
|
264
269
|
"start": "node ../../scripts/os-normalize.mjs --dir bin n8n",
|
|
265
270
|
"test": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest run",
|
|
266
271
|
"test:unit": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest run",
|
|
267
|
-
"test:unit:changed": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite janitor test-scoped
|
|
272
|
+
"test:unit:changed": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite janitor test-scoped",
|
|
268
273
|
"test:integration": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest run --config vitest.config.integration.ts",
|
|
269
|
-
"test:integration:changed": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite janitor test-scoped --
|
|
274
|
+
"test:integration:changed": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite janitor test-scoped -- --config vitest.config.integration.ts",
|
|
270
275
|
"test:dev": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest --silent=false",
|
|
271
276
|
"test:sqlite": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest run --config vitest.config.integration.ts",
|
|
272
277
|
"test:sqlite:migrations": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest run --config vitest.config.migration.ts --coverage.enabled=false",
|
|
@@ -201,15 +201,15 @@
|
|
|
201
201
|
};
|
|
202
202
|
|
|
203
203
|
document.addEventListener('DOMContentLoaded', function () {
|
|
204
|
-
const
|
|
204
|
+
const binaries = "{{{responseBinary}}}"
|
|
205
205
|
? JSON.parse(decodeURIComponent("{{{responseBinary}}}"))
|
|
206
|
-
:
|
|
206
|
+
: [];
|
|
207
207
|
|
|
208
|
-
const
|
|
209
|
-
|
|
210
|
-
|
|
208
|
+
for (const binary of binaries) {
|
|
209
|
+
const byteArray = binary.data.type === 'Buffer'
|
|
210
|
+
? new Uint8Array(binary.data.data)
|
|
211
|
+
: Uint8Array.from(binary.data, c => c.charCodeAt(0));
|
|
211
212
|
|
|
212
|
-
if (binary) {
|
|
213
213
|
const blob = new Blob(
|
|
214
214
|
[byteArray],
|
|
215
215
|
{ type: binary.type }
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { ErrorReporter } from 'n8n-core';
|
|
2
|
-
import { AzureBlobService } from 'n8n-core/dist/binary-data/azure-blob/azure-blob.service.ee';
|
|
3
|
-
import type { ExecutionDataStore, ExecutionRef, ExecutionDataPayload, ExecutionDataBundle } from './types';
|
|
4
|
-
export declare class AzureStore implements ExecutionDataStore {
|
|
5
|
-
private readonly azureBlob;
|
|
6
|
-
private readonly reporter;
|
|
7
|
-
constructor(azureBlob: AzureBlobService, reporter: ErrorReporter);
|
|
8
|
-
write(ref: ExecutionRef, payload: ExecutionDataPayload): Promise<number>;
|
|
9
|
-
read(ref: ExecutionRef): Promise<ExecutionDataBundle | null>;
|
|
10
|
-
readMany(refs: ExecutionRef[]): Promise<Map<string, ExecutionDataBundle>>;
|
|
11
|
-
delete(ref: ExecutionRef | ExecutionRef[]): Promise<void>;
|
|
12
|
-
private key;
|
|
13
|
-
private tryRead;
|
|
14
|
-
private isNotFound;
|
|
15
|
-
}
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.AzureStore = void 0;
|
|
16
|
-
const di_1 = require("@n8n/di");
|
|
17
|
-
const chunk_1 = __importDefault(require("lodash/chunk"));
|
|
18
|
-
const n8n_core_1 = require("n8n-core");
|
|
19
|
-
const azure_blob_service_ee_1 = require("n8n-core/dist/binary-data/azure-blob/azure-blob.service.ee");
|
|
20
|
-
const ensure_error_1 = require("@n8n/utils/errors/ensure-error");
|
|
21
|
-
const n8n_workflow_1 = require("n8n-workflow");
|
|
22
|
-
const constants_1 = require("./constants");
|
|
23
|
-
const corrupted_execution_data_error_1 = require("./corrupted-execution-data.error");
|
|
24
|
-
const execution_data_write_error_1 = require("./execution-data-write.error");
|
|
25
|
-
const MAX_READ_CONCURRENCY = 50;
|
|
26
|
-
const MAX_DELETE_CONCURRENCY = 50;
|
|
27
|
-
let AzureStore = class AzureStore {
|
|
28
|
-
constructor(azureBlob, reporter) {
|
|
29
|
-
this.azureBlob = azureBlob;
|
|
30
|
-
this.reporter = reporter;
|
|
31
|
-
}
|
|
32
|
-
async write(ref, payload) {
|
|
33
|
-
const body = Buffer.from((0, n8n_workflow_1.jsonStringify)({ ...payload, version: constants_1.EXECUTION_DATA_BUNDLE_VERSION }), 'utf-8');
|
|
34
|
-
try {
|
|
35
|
-
await this.azureBlob.put(this.key(ref), body, { mimeType: 'application/json' });
|
|
36
|
-
}
|
|
37
|
-
catch (error) {
|
|
38
|
-
throw new execution_data_write_error_1.ExecutionDataWriteError(ref, error);
|
|
39
|
-
}
|
|
40
|
-
return body.length;
|
|
41
|
-
}
|
|
42
|
-
async read(ref) {
|
|
43
|
-
let content;
|
|
44
|
-
try {
|
|
45
|
-
const buffer = await this.azureBlob.get(this.key(ref), { mode: 'buffer' });
|
|
46
|
-
content = buffer.toString('utf-8');
|
|
47
|
-
}
|
|
48
|
-
catch (error) {
|
|
49
|
-
if (this.isNotFound(error))
|
|
50
|
-
return null;
|
|
51
|
-
throw error;
|
|
52
|
-
}
|
|
53
|
-
try {
|
|
54
|
-
return (0, n8n_workflow_1.jsonParse)(content);
|
|
55
|
-
}
|
|
56
|
-
catch (error) {
|
|
57
|
-
throw new corrupted_execution_data_error_1.CorruptedExecutionDataError(ref, error);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
async readMany(refs) {
|
|
61
|
-
const bundles = new Map();
|
|
62
|
-
if (refs.length === 0)
|
|
63
|
-
return bundles;
|
|
64
|
-
for (const batch of (0, chunk_1.default)(refs, MAX_READ_CONCURRENCY)) {
|
|
65
|
-
const bundlesInBatch = await Promise.all(batch.map(async (ref) => await this.tryRead(ref)));
|
|
66
|
-
for (const [idx, bundle] of bundlesInBatch.entries()) {
|
|
67
|
-
if (bundle)
|
|
68
|
-
bundles.set(batch[idx].executionId, bundle);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
return bundles;
|
|
72
|
-
}
|
|
73
|
-
async delete(ref) {
|
|
74
|
-
const refs = Array.isArray(ref) ? ref : [ref];
|
|
75
|
-
if (refs.length === 0)
|
|
76
|
-
return;
|
|
77
|
-
for (const batch of (0, chunk_1.default)(refs, MAX_DELETE_CONCURRENCY)) {
|
|
78
|
-
await Promise.all(batch.map((r) => this.azureBlob.delete(this.key(r))));
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
key({ workflowId, executionId }) {
|
|
82
|
-
return [
|
|
83
|
-
'workflows',
|
|
84
|
-
workflowId,
|
|
85
|
-
'executions',
|
|
86
|
-
executionId,
|
|
87
|
-
'execution_data',
|
|
88
|
-
constants_1.EXECUTION_DATA_BUNDLE_FILENAME,
|
|
89
|
-
].join('/');
|
|
90
|
-
}
|
|
91
|
-
async tryRead(ref) {
|
|
92
|
-
try {
|
|
93
|
-
return await this.read(ref);
|
|
94
|
-
}
|
|
95
|
-
catch (error) {
|
|
96
|
-
if (error instanceof corrupted_execution_data_error_1.CorruptedExecutionDataError) {
|
|
97
|
-
this.reporter.error(error);
|
|
98
|
-
return null;
|
|
99
|
-
}
|
|
100
|
-
throw error;
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
isNotFound(error) {
|
|
104
|
-
const original = (0, ensure_error_1.ensureError)(error).cause ?? error;
|
|
105
|
-
if (typeof original !== 'object' || original === null)
|
|
106
|
-
return false;
|
|
107
|
-
const code = 'code' in original ? original.code : undefined;
|
|
108
|
-
return code === 'BlobNotFound';
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
exports.AzureStore = AzureStore;
|
|
112
|
-
exports.AzureStore = AzureStore = __decorate([
|
|
113
|
-
(0, di_1.Service)(),
|
|
114
|
-
__metadata("design:paramtypes", [azure_blob_service_ee_1.AzureBlobService,
|
|
115
|
-
n8n_core_1.ErrorReporter])
|
|
116
|
-
], AzureStore);
|
|
117
|
-
//# sourceMappingURL=azure-store.ee.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"azure-store.ee.js","sourceRoot":"","sources":["../../../src/executions/execution-data/azure-store.ee.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { ErrorReporter, StorageConfig } from 'n8n-core';
|
|
2
|
-
import type { ExecutionDataStore, ExecutionRef, ExecutionDataPayload, ExecutionDataBundle } from './types';
|
|
3
|
-
export declare class FsStore implements ExecutionDataStore {
|
|
4
|
-
private readonly storageConfig;
|
|
5
|
-
private readonly errorReporter;
|
|
6
|
-
constructor(storageConfig: StorageConfig, errorReporter: ErrorReporter);
|
|
7
|
-
init(): Promise<void>;
|
|
8
|
-
write(ref: ExecutionRef, payload: ExecutionDataPayload): Promise<number>;
|
|
9
|
-
read(ref: ExecutionRef): Promise<ExecutionDataBundle | null>;
|
|
10
|
-
readMany(refs: ExecutionRef[]): Promise<Map<string, ExecutionDataBundle>>;
|
|
11
|
-
delete(ref: ExecutionRef | ExecutionRef[]): Promise<void>;
|
|
12
|
-
private resolveExecutionDir;
|
|
13
|
-
private resolveBundlePath;
|
|
14
|
-
private isFileNotFound;
|
|
15
|
-
private tryRead;
|
|
16
|
-
}
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.FsStore = void 0;
|
|
16
|
-
const backend_common_1 = require("@n8n/backend-common");
|
|
17
|
-
const di_1 = require("@n8n/di");
|
|
18
|
-
const chunk_1 = __importDefault(require("lodash/chunk"));
|
|
19
|
-
const n8n_core_1 = require("n8n-core");
|
|
20
|
-
const n8n_workflow_1 = require("n8n-workflow");
|
|
21
|
-
const promises_1 = __importDefault(require("node:fs/promises"));
|
|
22
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
23
|
-
const constants_1 = require("./constants");
|
|
24
|
-
const corrupted_execution_data_error_1 = require("./corrupted-execution-data.error");
|
|
25
|
-
const execution_data_write_error_1 = require("./execution-data-write.error");
|
|
26
|
-
const MAX_READ_CONCURRENCY = 50;
|
|
27
|
-
let FsStore = class FsStore {
|
|
28
|
-
constructor(storageConfig, errorReporter) {
|
|
29
|
-
this.storageConfig = storageConfig;
|
|
30
|
-
this.errorReporter = errorReporter;
|
|
31
|
-
}
|
|
32
|
-
async init() {
|
|
33
|
-
await (0, backend_common_1.assertDir)(this.storageConfig.storagePath);
|
|
34
|
-
}
|
|
35
|
-
async write(ref, payload) {
|
|
36
|
-
const writePath = this.resolveBundlePath(ref);
|
|
37
|
-
await (0, backend_common_1.assertDir)(node_path_1.default.dirname(writePath));
|
|
38
|
-
const tempPath = `${writePath}.tmp.${Date.now()}`;
|
|
39
|
-
let success = false;
|
|
40
|
-
try {
|
|
41
|
-
const serialized = (0, n8n_workflow_1.jsonStringify)({ ...payload, version: constants_1.EXECUTION_DATA_BUNDLE_VERSION });
|
|
42
|
-
await promises_1.default.writeFile(tempPath, serialized, 'utf-8');
|
|
43
|
-
await promises_1.default.rename(tempPath, writePath);
|
|
44
|
-
success = true;
|
|
45
|
-
return Buffer.byteLength(serialized, 'utf-8');
|
|
46
|
-
}
|
|
47
|
-
catch (error) {
|
|
48
|
-
throw new execution_data_write_error_1.ExecutionDataWriteError(ref, error);
|
|
49
|
-
}
|
|
50
|
-
finally {
|
|
51
|
-
if (!success)
|
|
52
|
-
await promises_1.default.rm(tempPath, { force: true }).catch((e) => this.errorReporter.error(e));
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
async read(ref) {
|
|
56
|
-
const bundlePath = this.resolveBundlePath(ref);
|
|
57
|
-
let content;
|
|
58
|
-
try {
|
|
59
|
-
content = await promises_1.default.readFile(bundlePath, 'utf-8');
|
|
60
|
-
}
|
|
61
|
-
catch (error) {
|
|
62
|
-
if (this.isFileNotFound(error))
|
|
63
|
-
return null;
|
|
64
|
-
throw error;
|
|
65
|
-
}
|
|
66
|
-
try {
|
|
67
|
-
return (0, n8n_workflow_1.jsonParse)(content);
|
|
68
|
-
}
|
|
69
|
-
catch (error) {
|
|
70
|
-
throw new corrupted_execution_data_error_1.CorruptedExecutionDataError(ref, error);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
async readMany(refs) {
|
|
74
|
-
const bundles = new Map();
|
|
75
|
-
if (refs.length === 0)
|
|
76
|
-
return bundles;
|
|
77
|
-
for (const batch of (0, chunk_1.default)(refs, MAX_READ_CONCURRENCY)) {
|
|
78
|
-
const bundlesInBatch = await Promise.all(batch.map(async (ref) => await this.tryRead(ref)));
|
|
79
|
-
for (const [idx, bundle] of bundlesInBatch.entries()) {
|
|
80
|
-
if (bundle)
|
|
81
|
-
bundles.set(batch[idx].executionId, bundle);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
return bundles;
|
|
85
|
-
}
|
|
86
|
-
async delete(ref) {
|
|
87
|
-
const refs = Array.isArray(ref) ? ref : [ref];
|
|
88
|
-
await Promise.all(refs.map(async (r) => await promises_1.default.rm(this.resolveExecutionDir(r), { recursive: true, force: true })));
|
|
89
|
-
}
|
|
90
|
-
resolveExecutionDir({ workflowId, executionId }) {
|
|
91
|
-
return node_path_1.default.join(this.storageConfig.storagePath, 'workflows', workflowId, 'executions', executionId);
|
|
92
|
-
}
|
|
93
|
-
resolveBundlePath(ref) {
|
|
94
|
-
return node_path_1.default.join(this.resolveExecutionDir(ref), 'execution_data', constants_1.EXECUTION_DATA_BUNDLE_FILENAME);
|
|
95
|
-
}
|
|
96
|
-
isFileNotFound(error) {
|
|
97
|
-
return (error !== null && typeof error === 'object' && 'code' in error && error.code === 'ENOENT');
|
|
98
|
-
}
|
|
99
|
-
async tryRead(ref) {
|
|
100
|
-
try {
|
|
101
|
-
return await this.read(ref);
|
|
102
|
-
}
|
|
103
|
-
catch (error) {
|
|
104
|
-
if (error instanceof corrupted_execution_data_error_1.CorruptedExecutionDataError) {
|
|
105
|
-
this.errorReporter.error(error);
|
|
106
|
-
return null;
|
|
107
|
-
}
|
|
108
|
-
throw error;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
};
|
|
112
|
-
exports.FsStore = FsStore;
|
|
113
|
-
exports.FsStore = FsStore = __decorate([
|
|
114
|
-
(0, di_1.Service)(),
|
|
115
|
-
__metadata("design:paramtypes", [n8n_core_1.StorageConfig,
|
|
116
|
-
n8n_core_1.ErrorReporter])
|
|
117
|
-
], FsStore);
|
|
118
|
-
//# sourceMappingURL=fs-store.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fs-store.js","sourceRoot":"","sources":["../../../src/executions/execution-data/fs-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { ErrorReporter } from 'n8n-core';
|
|
2
|
-
import { ObjectStoreService } from 'n8n-core/dist/binary-data/object-store/object-store.service.ee';
|
|
3
|
-
import type { ExecutionDataStore, ExecutionRef, ExecutionDataPayload, ExecutionDataBundle } from './types';
|
|
4
|
-
export declare class S3Store implements ExecutionDataStore {
|
|
5
|
-
private readonly objectStore;
|
|
6
|
-
private readonly reporter;
|
|
7
|
-
constructor(objectStore: ObjectStoreService, reporter: ErrorReporter);
|
|
8
|
-
write(ref: ExecutionRef, payload: ExecutionDataPayload): Promise<number>;
|
|
9
|
-
read(ref: ExecutionRef): Promise<ExecutionDataBundle | null>;
|
|
10
|
-
readMany(refs: ExecutionRef[]): Promise<Map<string, ExecutionDataBundle>>;
|
|
11
|
-
delete(ref: ExecutionRef | ExecutionRef[]): Promise<void>;
|
|
12
|
-
private key;
|
|
13
|
-
private isNotFound;
|
|
14
|
-
private tryRead;
|
|
15
|
-
}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.S3Store = void 0;
|
|
16
|
-
const di_1 = require("@n8n/di");
|
|
17
|
-
const chunk_1 = __importDefault(require("lodash/chunk"));
|
|
18
|
-
const n8n_core_1 = require("n8n-core");
|
|
19
|
-
const object_store_service_ee_1 = require("n8n-core/dist/binary-data/object-store/object-store.service.ee");
|
|
20
|
-
const ensure_error_1 = require("@n8n/utils/errors/ensure-error");
|
|
21
|
-
const n8n_workflow_1 = require("n8n-workflow");
|
|
22
|
-
const constants_1 = require("./constants");
|
|
23
|
-
const corrupted_execution_data_error_1 = require("./corrupted-execution-data.error");
|
|
24
|
-
const execution_data_write_error_1 = require("./execution-data-write.error");
|
|
25
|
-
const MAX_READ_MANY_CONCURRENCY = 50;
|
|
26
|
-
let S3Store = class S3Store {
|
|
27
|
-
constructor(objectStore, reporter) {
|
|
28
|
-
this.objectStore = objectStore;
|
|
29
|
-
this.reporter = reporter;
|
|
30
|
-
}
|
|
31
|
-
async write(ref, payload) {
|
|
32
|
-
const body = Buffer.from((0, n8n_workflow_1.jsonStringify)({ ...payload, version: constants_1.EXECUTION_DATA_BUNDLE_VERSION }), 'utf-8');
|
|
33
|
-
try {
|
|
34
|
-
await this.objectStore.put(this.key(ref), body, {
|
|
35
|
-
mimeType: 'application/json',
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
catch (error) {
|
|
39
|
-
throw new execution_data_write_error_1.ExecutionDataWriteError(ref, error);
|
|
40
|
-
}
|
|
41
|
-
return body.length;
|
|
42
|
-
}
|
|
43
|
-
async read(ref) {
|
|
44
|
-
let content;
|
|
45
|
-
try {
|
|
46
|
-
const buffer = await this.objectStore.get(this.key(ref), { mode: 'buffer' });
|
|
47
|
-
content = buffer.toString('utf-8');
|
|
48
|
-
}
|
|
49
|
-
catch (error) {
|
|
50
|
-
if (this.isNotFound(error))
|
|
51
|
-
return null;
|
|
52
|
-
throw error;
|
|
53
|
-
}
|
|
54
|
-
try {
|
|
55
|
-
return (0, n8n_workflow_1.jsonParse)(content);
|
|
56
|
-
}
|
|
57
|
-
catch (error) {
|
|
58
|
-
throw new corrupted_execution_data_error_1.CorruptedExecutionDataError(ref, error);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
async readMany(refs) {
|
|
62
|
-
const bundles = new Map();
|
|
63
|
-
if (refs.length === 0)
|
|
64
|
-
return bundles;
|
|
65
|
-
for (const batch of (0, chunk_1.default)(refs, MAX_READ_MANY_CONCURRENCY)) {
|
|
66
|
-
const bundlesInBatch = await Promise.all(batch.map(async (ref) => await this.tryRead(ref)));
|
|
67
|
-
for (const [idx, bundle] of bundlesInBatch.entries()) {
|
|
68
|
-
if (bundle)
|
|
69
|
-
bundles.set(batch[idx].executionId, bundle);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
return bundles;
|
|
73
|
-
}
|
|
74
|
-
async delete(ref) {
|
|
75
|
-
const refs = Array.isArray(ref) ? ref : [ref];
|
|
76
|
-
if (refs.length === 0)
|
|
77
|
-
return;
|
|
78
|
-
await this.objectStore.deleteByKeys(refs.map((r) => this.key(r)));
|
|
79
|
-
}
|
|
80
|
-
key({ workflowId, executionId }) {
|
|
81
|
-
return [
|
|
82
|
-
'workflows',
|
|
83
|
-
workflowId,
|
|
84
|
-
'executions',
|
|
85
|
-
executionId,
|
|
86
|
-
'execution_data',
|
|
87
|
-
constants_1.EXECUTION_DATA_BUNDLE_FILENAME,
|
|
88
|
-
].join('/');
|
|
89
|
-
}
|
|
90
|
-
isNotFound(error) {
|
|
91
|
-
const original = (0, ensure_error_1.ensureError)(error).cause ?? error;
|
|
92
|
-
if (typeof original !== 'object' || original === null)
|
|
93
|
-
return false;
|
|
94
|
-
const name = 'name' in original ? original.name : undefined;
|
|
95
|
-
return name === 'NoSuchKey' || name === 'NotFound';
|
|
96
|
-
}
|
|
97
|
-
async tryRead(ref) {
|
|
98
|
-
try {
|
|
99
|
-
return await this.read(ref);
|
|
100
|
-
}
|
|
101
|
-
catch (error) {
|
|
102
|
-
if (error instanceof corrupted_execution_data_error_1.CorruptedExecutionDataError) {
|
|
103
|
-
this.reporter.error(error);
|
|
104
|
-
return null;
|
|
105
|
-
}
|
|
106
|
-
throw error;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
};
|
|
110
|
-
exports.S3Store = S3Store;
|
|
111
|
-
exports.S3Store = S3Store = __decorate([
|
|
112
|
-
(0, di_1.Service)(),
|
|
113
|
-
__metadata("design:paramtypes", [object_store_service_ee_1.ObjectStoreService,
|
|
114
|
-
n8n_core_1.ErrorReporter])
|
|
115
|
-
], S3Store);
|
|
116
|
-
//# sourceMappingURL=s3-store.ee.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"s3-store.ee.js","sourceRoot":"","sources":["../../../src/executions/execution-data/s3-store.ee.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export type FromAiParameterReference = {
|
|
2
|
-
parameterPath: string;
|
|
3
|
-
jsonPointer: string;
|
|
4
|
-
value: string;
|
|
5
|
-
};
|
|
6
|
-
export declare function collectFromAiParameterReferences(value: unknown, pathParts?: string[], jsonPointerParts?: string[]): FromAiParameterReference[];
|
|
7
|
-
export declare function hasMatchingFromAiParameterReference(references: FromAiParameterReference[], candidate: FromAiParameterReference): boolean;
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.collectFromAiParameterReferences = collectFromAiParameterReferences;
|
|
4
|
-
exports.hasMatchingFromAiParameterReference = hasMatchingFromAiParameterReference;
|
|
5
|
-
const fromai_helpers_1 = require("@n8n/ai-utilities/fromai-helpers");
|
|
6
|
-
function isRecord(value) {
|
|
7
|
-
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
8
|
-
}
|
|
9
|
-
function escapeJsonPointerPart(part) {
|
|
10
|
-
return part.replaceAll('~', '~0').replaceAll('/', '~1');
|
|
11
|
-
}
|
|
12
|
-
function containsFromAiCall(value) {
|
|
13
|
-
const parameters = { value };
|
|
14
|
-
try {
|
|
15
|
-
return (0, fromai_helpers_1.extractFromAIParameters)(parameters).length > 0;
|
|
16
|
-
}
|
|
17
|
-
catch {
|
|
18
|
-
return false;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
function collectFromAiParameterReferences(value, pathParts = [], jsonPointerParts = pathParts) {
|
|
22
|
-
if (typeof value === 'string') {
|
|
23
|
-
if (!containsFromAiCall(value) || pathParts.length === 0)
|
|
24
|
-
return [];
|
|
25
|
-
return [
|
|
26
|
-
{
|
|
27
|
-
parameterPath: pathParts.join('.'),
|
|
28
|
-
jsonPointer: jsonPointerParts.map(escapeJsonPointerPart).join('/'),
|
|
29
|
-
value,
|
|
30
|
-
},
|
|
31
|
-
];
|
|
32
|
-
}
|
|
33
|
-
if (Array.isArray(value)) {
|
|
34
|
-
return value.flatMap((item, index) => collectFromAiParameterReferences(item, pathParts, [...jsonPointerParts, String(index)]));
|
|
35
|
-
}
|
|
36
|
-
if (!isRecord(value))
|
|
37
|
-
return [];
|
|
38
|
-
return Object.entries(value).flatMap(([key, nested]) => collectFromAiParameterReferences(nested, [...pathParts, key], [...jsonPointerParts, key]));
|
|
39
|
-
}
|
|
40
|
-
function hasMatchingFromAiParameterReference(references, candidate) {
|
|
41
|
-
return references.some((reference) => reference.jsonPointer === candidate.jsonPointer && reference.value === candidate.value);
|
|
42
|
-
}
|
|
43
|
-
//# sourceMappingURL=from-ai-node-parameters.js.map
|