n8n 2.15.1 → 2.17.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/README.md +1 -1
- package/dist/active-workflow-manager.d.ts +3 -1
- package/dist/active-workflow-manager.js +62 -16
- package/dist/active-workflow-manager.js.map +1 -1
- package/dist/auth/auth.service.d.ts +5 -2
- package/dist/auth/auth.service.js +11 -6
- package/dist/auth/auth.service.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/commands/base-command.js +13 -1
- package/dist/commands/base-command.js.map +1 -1
- package/dist/commands/start.d.ts +1 -0
- package/dist/commands/start.js +7 -0
- package/dist/commands/start.js.map +1 -1
- package/dist/constants.d.ts +2 -0
- package/dist/constants.js +5 -1
- package/dist/constants.js.map +1 -1
- package/dist/controllers/ai.controller.d.ts +11 -2
- package/dist/controllers/ai.controller.js +56 -4
- package/dist/controllers/ai.controller.js.map +1 -1
- package/dist/controllers/auth.controller.js +1 -1
- package/dist/controllers/auth.controller.js.map +1 -1
- package/dist/controllers/e2e.controller.js +5 -0
- package/dist/controllers/e2e.controller.js.map +1 -1
- package/dist/controllers/me.controller.d.ts +1 -0
- package/dist/controllers/me.controller.js +12 -0
- package/dist/controllers/me.controller.js.map +1 -1
- package/dist/controllers/project.controller.d.ts +3 -1
- package/dist/controllers/project.controller.js +9 -2
- package/dist/controllers/project.controller.js.map +1 -1
- package/dist/controllers/role.controller.d.ts +6 -4
- package/dist/controllers/role.controller.js +28 -8
- package/dist/controllers/role.controller.js.map +1 -1
- package/dist/controllers/users.controller.d.ts +4 -1
- package/dist/controllers/users.controller.js +8 -2
- package/dist/controllers/users.controller.js.map +1 -1
- package/dist/credentials/credentials.controller.js +4 -1
- package/dist/credentials/credentials.controller.js.map +1 -1
- package/dist/credentials/credentials.service.d.ts +10 -6
- package/dist/credentials/credentials.service.js +98 -26
- package/dist/credentials/credentials.service.js.map +1 -1
- package/dist/credentials/validation.js +2 -2
- package/dist/credentials/validation.js.map +1 -1
- package/dist/credentials-helper.d.ts +3 -1
- package/dist/credentials-helper.js +21 -3
- package/dist/credentials-helper.js.map +1 -1
- package/dist/errors/http-error-classifier.d.ts +31 -0
- package/dist/errors/http-error-classifier.js +60 -0
- package/dist/errors/http-error-classifier.js.map +1 -0
- package/dist/errors/http-error-serializers.d.ts +18 -0
- package/dist/errors/http-error-serializers.js +64 -0
- package/dist/errors/http-error-serializers.js.map +1 -0
- package/dist/eventbus/event-message-classes/index.d.ts +2 -2
- package/dist/eventbus/event-message-classes/index.js +10 -0
- package/dist/eventbus/event-message-classes/index.js.map +1 -1
- package/dist/events/maps/relay.event-map.d.ts +114 -0
- package/dist/events/relays/log-streaming.event-relay.d.ts +10 -0
- package/dist/events/relays/log-streaming.event-relay.js +108 -2
- package/dist/events/relays/log-streaming.event-relay.js.map +1 -1
- package/dist/events/relays/telemetry.event-relay.d.ts +5 -0
- package/dist/events/relays/telemetry.event-relay.js +58 -5
- package/dist/events/relays/telemetry.event-relay.js.map +1 -1
- package/dist/execution-lifecycle/execution-lifecycle-hooks.d.ts +1 -1
- package/dist/execution-lifecycle/execution-lifecycle-hooks.js +24 -9
- package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
- package/dist/executions/execution.service.js +2 -1
- package/dist/executions/execution.service.js.map +1 -1
- package/dist/instance-settings-loader/instance-settings-loader.service.d.ts +9 -0
- package/dist/instance-settings-loader/instance-settings-loader.service.js +36 -0
- package/dist/instance-settings-loader/instance-settings-loader.service.js.map +1 -0
- package/dist/instance-settings-loader/loaders/owner.instance-settings-loader.d.ts +10 -0
- package/dist/instance-settings-loader/loaders/owner.instance-settings-loader.js +72 -0
- package/dist/instance-settings-loader/loaders/owner.instance-settings-loader.js.map +1 -0
- package/dist/modules/chat-hub/chat-hub-workflow.service.d.ts +1 -0
- package/dist/modules/chat-hub/chat-hub-workflow.service.js +18 -2
- package/dist/modules/chat-hub/chat-hub-workflow.service.js.map +1 -1
- package/dist/modules/chat-hub/chat-hub.types.d.ts +5 -0
- package/dist/modules/chat-hub/chat-hub.types.js +1 -0
- package/dist/modules/chat-hub/chat-hub.types.js.map +1 -1
- package/dist/modules/chat-hub/context-limits.js +10 -0
- package/dist/modules/chat-hub/context-limits.js.map +1 -1
- package/dist/modules/chat-hub/stream-capturer.js +3 -0
- package/dist/modules/chat-hub/stream-capturer.js.map +1 -1
- package/dist/modules/community-packages/community-node-types-utils.d.ts +2 -2
- package/dist/modules/community-packages/community-node-types-utils.js +4 -4
- package/dist/modules/community-packages/community-node-types-utils.js.map +1 -1
- package/dist/modules/community-packages/strapi-utils.d.ts +1 -1
- package/dist/modules/data-table/data-table-proxy.service.d.ts +44 -2
- package/dist/modules/data-table/data-table-proxy.service.js +86 -2
- package/dist/modules/data-table/data-table-proxy.service.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/credential-resolvers/identifiers/oauth2-introspection-identifier.d.ts +2 -2
- package/dist/modules/dynamic-credentials.ee/services/resolver-config-expression.service.js +10 -4
- package/dist/modules/dynamic-credentials.ee/services/resolver-config-expression.service.js.map +1 -1
- package/dist/modules/external-secrets.ee/external-secrets-settings.controller.ee.d.ts +5 -2
- package/dist/modules/external-secrets.ee/external-secrets-settings.controller.ee.js +10 -3
- package/dist/modules/external-secrets.ee/external-secrets-settings.controller.ee.js.map +1 -1
- package/dist/modules/external-secrets.ee/secrets-providers-connections.controller.ee.js +5 -5
- package/dist/modules/external-secrets.ee/secrets-providers-connections.controller.ee.js.map +1 -1
- package/dist/modules/external-secrets.ee/secrets-providers-connections.service.ee.d.ts +6 -6
- package/dist/modules/external-secrets.ee/secrets-providers-connections.service.ee.js +14 -9
- package/dist/modules/external-secrets.ee/secrets-providers-connections.service.ee.js.map +1 -1
- package/dist/modules/external-secrets.ee/secrets-providers-project.controller.ee.js +3 -3
- package/dist/modules/external-secrets.ee/secrets-providers-project.controller.ee.js.map +1 -1
- package/dist/modules/instance-ai/compaction.service.d.ts +19 -0
- package/dist/modules/instance-ai/compaction.service.js +213 -0
- package/dist/modules/instance-ai/compaction.service.js.map +1 -0
- package/dist/modules/instance-ai/entities/index.d.ts +7 -0
- package/dist/modules/instance-ai/entities/index.js +18 -0
- package/dist/modules/instance-ai/entities/index.js.map +1 -0
- package/dist/modules/instance-ai/entities/instance-ai-iteration-log.entity.d.ts +7 -0
- package/dist/modules/instance-ai/entities/instance-ai-iteration-log.entity.js +38 -0
- package/dist/modules/instance-ai/entities/instance-ai-iteration-log.entity.js.map +1 -0
- package/dist/modules/instance-ai/entities/instance-ai-message.entity.d.ts +9 -0
- package/dist/modules/instance-ai/entities/instance-ai-message.entity.js +47 -0
- package/dist/modules/instance-ai/entities/instance-ai-message.entity.js.map +1 -0
- package/dist/modules/instance-ai/entities/instance-ai-observational-memory.entity.d.ts +33 -0
- package/dist/modules/instance-ai/entities/instance-ai-observational-memory.entity.js +145 -0
- package/dist/modules/instance-ai/entities/instance-ai-observational-memory.entity.js.map +1 -0
- package/dist/modules/instance-ai/entities/instance-ai-resource.entity.d.ts +6 -0
- package/dist/modules/instance-ai/entities/instance-ai-resource.entity.js +33 -0
- package/dist/modules/instance-ai/entities/instance-ai-resource.entity.js.map +1 -0
- package/dist/modules/instance-ai/entities/instance-ai-run-snapshot.entity.d.ts +8 -0
- package/dist/modules/instance-ai/entities/instance-ai-run-snapshot.entity.js +43 -0
- package/dist/modules/instance-ai/entities/instance-ai-run-snapshot.entity.js.map +1 -0
- package/dist/modules/instance-ai/entities/instance-ai-thread.entity.d.ts +7 -0
- package/dist/modules/instance-ai/entities/instance-ai-thread.entity.js +38 -0
- package/dist/modules/instance-ai/entities/instance-ai-thread.entity.js.map +1 -0
- package/dist/modules/instance-ai/entities/instance-ai-workflow-snapshot.entity.d.ts +8 -0
- package/dist/modules/instance-ai/entities/instance-ai-workflow-snapshot.entity.js +41 -0
- package/dist/modules/instance-ai/entities/instance-ai-workflow-snapshot.entity.js.map +1 -0
- package/dist/modules/instance-ai/eval/api-docs.d.ts +1 -0
- package/dist/modules/instance-ai/eval/api-docs.js +78 -0
- package/dist/modules/instance-ai/eval/api-docs.js.map +1 -0
- package/dist/modules/instance-ai/eval/execution.service.d.ts +25 -0
- package/dist/modules/instance-ai/eval/execution.service.js +291 -0
- package/dist/modules/instance-ai/eval/execution.service.js.map +1 -0
- package/dist/modules/instance-ai/eval/mock-handler.d.ts +9 -0
- package/dist/modules/instance-ai/eval/mock-handler.js +264 -0
- package/dist/modules/instance-ai/eval/mock-handler.js.map +1 -0
- package/dist/modules/instance-ai/eval/node-config.d.ts +2 -0
- package/dist/modules/instance-ai/eval/node-config.js +15 -0
- package/dist/modules/instance-ai/eval/node-config.js.map +1 -0
- package/dist/modules/instance-ai/eval/pin-data-generator.d.ts +12 -0
- package/dist/modules/instance-ai/eval/pin-data-generator.js +301 -0
- package/dist/modules/instance-ai/eval/pin-data-generator.js.map +1 -0
- package/dist/modules/instance-ai/eval/request-sanitizer.d.ts +3 -0
- package/dist/modules/instance-ai/eval/request-sanitizer.js +50 -0
- package/dist/modules/instance-ai/eval/request-sanitizer.js.map +1 -0
- package/dist/modules/instance-ai/eval/workflow-analysis.d.ts +16 -0
- package/dist/modules/instance-ai/eval/workflow-analysis.js +217 -0
- package/dist/modules/instance-ai/eval/workflow-analysis.js.map +1 -0
- package/dist/modules/instance-ai/event-bus/in-process-event-bus.d.ts +19 -0
- package/dist/modules/instance-ai/event-bus/in-process-event-bus.js +98 -0
- package/dist/modules/instance-ai/event-bus/in-process-event-bus.js.map +1 -0
- package/dist/modules/instance-ai/filesystem/index.d.ts +3 -0
- package/dist/modules/instance-ai/filesystem/index.js +8 -0
- package/dist/modules/instance-ai/filesystem/index.js.map +1 -0
- package/dist/modules/instance-ai/filesystem/local-gateway-registry.d.ts +29 -0
- package/dist/modules/instance-ai/filesystem/local-gateway-registry.js +137 -0
- package/dist/modules/instance-ai/filesystem/local-gateway-registry.js.map +1 -0
- package/dist/modules/instance-ai/filesystem/local-gateway.d.ts +35 -0
- package/dist/modules/instance-ai/filesystem/local-gateway.js +99 -0
- package/dist/modules/instance-ai/filesystem/local-gateway.js.map +1 -0
- package/dist/modules/instance-ai/instance-ai-memory.service.d.ts +40 -0
- package/dist/modules/instance-ai/instance-ai-memory.service.js +245 -0
- package/dist/modules/instance-ai/instance-ai-memory.service.js.map +1 -0
- package/dist/modules/instance-ai/instance-ai-settings.service.d.ts +59 -0
- package/dist/modules/instance-ai/instance-ai-settings.service.js +450 -0
- package/dist/modules/instance-ai/instance-ai-settings.service.js.map +1 -0
- package/dist/modules/instance-ai/instance-ai.adapter.service.d.ts +91 -0
- package/dist/modules/instance-ai/instance-ai.adapter.service.js +1885 -0
- package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -0
- package/dist/modules/instance-ai/instance-ai.controller.d.ts +101 -0
- package/dist/modules/instance-ai/instance-ai.controller.js +670 -0
- package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -0
- package/dist/modules/instance-ai/instance-ai.module.d.ts +12 -0
- package/dist/modules/instance-ai/instance-ai.module.js +118 -0
- package/dist/modules/instance-ai/instance-ai.module.js.map +1 -0
- package/dist/modules/instance-ai/instance-ai.service.d.ts +133 -0
- package/dist/modules/instance-ai/instance-ai.service.js +1802 -0
- package/dist/modules/instance-ai/instance-ai.service.js.map +1 -0
- package/dist/modules/instance-ai/internal-messages.d.ts +2 -0
- package/dist/modules/instance-ai/internal-messages.js +11 -0
- package/dist/modules/instance-ai/internal-messages.js.map +1 -0
- package/dist/modules/instance-ai/message-parser.d.ts +12 -0
- package/dist/modules/instance-ai/message-parser.js +171 -0
- package/dist/modules/instance-ai/message-parser.js.map +1 -0
- package/dist/modules/instance-ai/node-definition-resolver.d.ts +19 -0
- package/dist/modules/instance-ai/node-definition-resolver.js +290 -0
- package/dist/modules/instance-ai/node-definition-resolver.js.map +1 -0
- package/dist/modules/instance-ai/proxy-token-manager.d.ts +15 -0
- package/dist/modules/instance-ai/proxy-token-manager.js +64 -0
- package/dist/modules/instance-ai/proxy-token-manager.js.map +1 -0
- package/dist/modules/instance-ai/repositories/index.d.ts +7 -0
- package/dist/modules/instance-ai/repositories/index.js +18 -0
- package/dist/modules/instance-ai/repositories/index.js.map +1 -0
- package/dist/modules/instance-ai/repositories/instance-ai-iteration-log.repository.d.ts +5 -0
- package/dist/modules/instance-ai/repositories/instance-ai-iteration-log.repository.js +26 -0
- package/dist/modules/instance-ai/repositories/instance-ai-iteration-log.repository.js.map +1 -0
- package/dist/modules/instance-ai/repositories/instance-ai-message.repository.d.ts +5 -0
- package/dist/modules/instance-ai/repositories/instance-ai-message.repository.js +26 -0
- package/dist/modules/instance-ai/repositories/instance-ai-message.repository.js.map +1 -0
- package/dist/modules/instance-ai/repositories/instance-ai-observational-memory.repository.d.ts +5 -0
- package/dist/modules/instance-ai/repositories/instance-ai-observational-memory.repository.js +26 -0
- package/dist/modules/instance-ai/repositories/instance-ai-observational-memory.repository.js.map +1 -0
- package/dist/modules/instance-ai/repositories/instance-ai-resource.repository.d.ts +5 -0
- package/dist/modules/instance-ai/repositories/instance-ai-resource.repository.js +26 -0
- package/dist/modules/instance-ai/repositories/instance-ai-resource.repository.js.map +1 -0
- package/dist/modules/instance-ai/repositories/instance-ai-run-snapshot.repository.d.ts +5 -0
- package/dist/modules/instance-ai/repositories/instance-ai-run-snapshot.repository.js +26 -0
- package/dist/modules/instance-ai/repositories/instance-ai-run-snapshot.repository.js.map +1 -0
- package/dist/modules/instance-ai/repositories/instance-ai-thread.repository.d.ts +5 -0
- package/dist/modules/instance-ai/repositories/instance-ai-thread.repository.js +26 -0
- package/dist/modules/instance-ai/repositories/instance-ai-thread.repository.js.map +1 -0
- package/dist/modules/instance-ai/repositories/instance-ai-workflow-snapshot.repository.d.ts +5 -0
- package/dist/modules/instance-ai/repositories/instance-ai-workflow-snapshot.repository.js +26 -0
- package/dist/modules/instance-ai/repositories/instance-ai-workflow-snapshot.repository.js.map +1 -0
- package/dist/modules/instance-ai/snapshot-pruning.service.d.ts +17 -0
- package/dist/modules/instance-ai/snapshot-pruning.service.js +89 -0
- package/dist/modules/instance-ai/snapshot-pruning.service.js.map +1 -0
- package/dist/modules/instance-ai/storage/db-iteration-log-storage.d.ts +9 -0
- package/dist/modules/instance-ai/storage/db-iteration-log-storage.js +45 -0
- package/dist/modules/instance-ai/storage/db-iteration-log-storage.js.map +1 -0
- package/dist/modules/instance-ai/storage/db-snapshot-storage.d.ts +14 -0
- package/dist/modules/instance-ai/storage/db-snapshot-storage.js +99 -0
- package/dist/modules/instance-ai/storage/db-snapshot-storage.js.map +1 -0
- package/dist/modules/instance-ai/storage/index.d.ts +5 -0
- package/dist/modules/instance-ai/storage/index.js +14 -0
- package/dist/modules/instance-ai/storage/index.js.map +1 -0
- package/dist/modules/instance-ai/storage/typeorm-composite-store.d.ts +9 -0
- package/dist/modules/instance-ai/storage/typeorm-composite-store.js +33 -0
- package/dist/modules/instance-ai/storage/typeorm-composite-store.js.map +1 -0
- package/dist/modules/instance-ai/storage/typeorm-memory-storage.d.ts +96 -0
- package/dist/modules/instance-ai/storage/typeorm-memory-storage.js +853 -0
- package/dist/modules/instance-ai/storage/typeorm-memory-storage.js.map +1 -0
- package/dist/modules/instance-ai/storage/typeorm-workflows-storage.d.ts +44 -0
- package/dist/modules/instance-ai/storage/typeorm-workflows-storage.js +156 -0
- package/dist/modules/instance-ai/storage/typeorm-workflows-storage.js.map +1 -0
- package/dist/modules/instance-ai/web-research/brave-search.d.ts +10 -0
- package/dist/modules/instance-ai/web-research/brave-search.js +44 -0
- package/dist/modules/instance-ai/web-research/brave-search.js.map +1 -0
- package/dist/modules/instance-ai/web-research/cache.d.ts +13 -0
- package/dist/modules/instance-ai/web-research/cache.js +43 -0
- package/dist/modules/instance-ai/web-research/cache.js.map +1 -0
- package/dist/modules/instance-ai/web-research/fetch-and-extract.d.ts +8 -0
- package/dist/modules/instance-ai/web-research/fetch-and-extract.js +231 -0
- package/dist/modules/instance-ai/web-research/fetch-and-extract.js.map +1 -0
- package/dist/modules/instance-ai/web-research/index.d.ts +7 -0
- package/dist/modules/instance-ai/web-research/index.js +16 -0
- package/dist/modules/instance-ai/web-research/index.js.map +1 -0
- package/dist/modules/instance-ai/web-research/searxng-search.d.ts +6 -0
- package/dist/modules/instance-ai/web-research/searxng-search.js +39 -0
- package/dist/modules/instance-ai/web-research/searxng-search.js.map +1 -0
- package/dist/modules/instance-ai/web-research/ssrf-guard.d.ts +1 -0
- package/dist/modules/instance-ai/web-research/ssrf-guard.js +85 -0
- package/dist/modules/instance-ai/web-research/ssrf-guard.js.map +1 -0
- package/dist/modules/instance-ai/web-research/summarize-content.d.ts +4 -0
- package/dist/modules/instance-ai/web-research/summarize-content.js +34 -0
- package/dist/modules/instance-ai/web-research/summarize-content.js.map +1 -0
- package/dist/modules/instance-registry/instance-registry.types.d.ts +1 -0
- package/dist/modules/instance-registry/instance-registry.types.js +2 -1
- package/dist/modules/instance-registry/instance-registry.types.js.map +1 -1
- package/dist/modules/instance-registry/storage/instance-storage.interface.d.ts +1 -0
- package/dist/modules/instance-registry/storage/lua-scripts.d.ts +4 -0
- package/dist/modules/instance-registry/storage/lua-scripts.js +39 -0
- package/dist/modules/instance-registry/storage/lua-scripts.js.map +1 -0
- package/dist/modules/instance-registry/storage/memory-storage.d.ts +1 -0
- package/dist/modules/instance-registry/storage/memory-storage.js +1 -0
- package/dist/modules/instance-registry/storage/memory-storage.js.map +1 -1
- package/dist/modules/instance-registry/storage/redis-instance-storage.d.ts +25 -0
- package/dist/modules/instance-registry/storage/redis-instance-storage.js +185 -0
- package/dist/modules/instance-registry/storage/redis-instance-storage.js.map +1 -0
- package/dist/modules/instance-version-history/database/entities/instance-version-history.entity.d.ts +7 -0
- package/dist/modules/instance-version-history/database/entities/instance-version-history.entity.js +37 -0
- package/dist/modules/instance-version-history/database/entities/instance-version-history.entity.js.map +1 -0
- package/dist/modules/instance-version-history/database/repositories/instance-version-history.repository.d.ts +5 -0
- package/dist/modules/instance-version-history/database/repositories/instance-version-history.repository.js +26 -0
- package/dist/modules/instance-version-history/database/repositories/instance-version-history.repository.js.map +1 -0
- package/dist/modules/instance-version-history/instance-version-history.controller.d.ts +26 -0
- package/dist/modules/instance-version-history/instance-version-history.controller.js +85 -0
- package/dist/modules/instance-version-history/instance-version-history.controller.js.map +1 -0
- package/dist/modules/instance-version-history/instance-version-history.module.d.ts +5 -0
- package/dist/modules/instance-version-history/instance-version-history.module.js +60 -0
- package/dist/modules/instance-version-history/instance-version-history.module.js.map +1 -0
- package/dist/modules/instance-version-history/instance-version-history.service.d.ts +18 -0
- package/dist/modules/instance-version-history/instance-version-history.service.js +120 -0
- package/dist/modules/instance-version-history/instance-version-history.service.js.map +1 -0
- package/dist/modules/instance-version-history/instance-version-history.types.d.ts +12 -0
- package/dist/modules/instance-version-history/instance-version-history.types.js +27 -0
- package/dist/modules/instance-version-history/instance-version-history.types.js.map +1 -0
- package/dist/modules/log-streaming.ee/log-streaming.controller.js.map +1 -1
- package/dist/modules/mcp/mcp.service.d.ts +3 -1
- package/dist/modules/mcp/mcp.service.js +22 -3
- package/dist/modules/mcp/mcp.service.js.map +1 -1
- package/dist/modules/mcp/mcp.types.d.ts +1 -1
- package/dist/modules/mcp/tools/data-table/add-data-table-column.tool.d.ts +13 -0
- package/dist/modules/mcp/tools/data-table/add-data-table-column.tool.js +69 -0
- package/dist/modules/mcp/tools/data-table/add-data-table-column.tool.js.map +1 -0
- package/dist/modules/mcp/tools/data-table/add-data-table-rows.tool.d.ts +12 -0
- package/dist/modules/mcp/tools/data-table/add-data-table-rows.tool.js +77 -0
- package/dist/modules/mcp/tools/data-table/add-data-table-rows.tool.js.map +1 -0
- package/dist/modules/mcp/tools/data-table/create-data-table.tool.d.ts +21 -0
- package/dist/modules/mcp/tools/data-table/create-data-table.tool.js +92 -0
- package/dist/modules/mcp/tools/data-table/create-data-table.tool.js.map +1 -0
- package/dist/modules/mcp/tools/data-table/delete-data-table-column.tool.d.ts +12 -0
- package/dist/modules/mcp/tools/data-table/delete-data-table-column.tool.js +60 -0
- package/dist/modules/mcp/tools/data-table/delete-data-table-column.tool.js.map +1 -0
- package/dist/modules/mcp/tools/data-table/index.d.ts +7 -0
- package/dist/modules/mcp/tools/data-table/index.js +18 -0
- package/dist/modules/mcp/tools/data-table/index.js.map +1 -0
- package/dist/modules/mcp/tools/data-table/rename-data-table-column.tool.d.ts +13 -0
- package/dist/modules/mcp/tools/data-table/rename-data-table-column.tool.js +70 -0
- package/dist/modules/mcp/tools/data-table/rename-data-table-column.tool.js.map +1 -0
- package/dist/modules/mcp/tools/data-table/rename-data-table.tool.d.ts +12 -0
- package/dist/modules/mcp/tools/data-table/rename-data-table.tool.js +60 -0
- package/dist/modules/mcp/tools/data-table/rename-data-table.tool.js.map +1 -0
- package/dist/modules/mcp/tools/data-table/search-data-tables.tool.d.ts +12 -0
- package/dist/modules/mcp/tools/data-table/search-data-tables.tool.js +93 -0
- package/dist/modules/mcp/tools/data-table/search-data-tables.tool.js.map +1 -0
- package/dist/modules/mcp/tools/execute-workflow.tool.d.ts +3 -4
- package/dist/modules/mcp/tools/execute-workflow.tool.js +10 -25
- package/dist/modules/mcp/tools/execute-workflow.tool.js.map +1 -1
- package/dist/modules/mcp/tools/get-execution.tool.js +4 -8
- package/dist/modules/mcp/tools/get-execution.tool.js.map +1 -1
- package/dist/modules/mcp/tools/schemas.d.ts +73 -2
- package/dist/modules/mcp/tools/schemas.js +41 -1
- package/dist/modules/mcp/tools/schemas.js.map +1 -1
- package/dist/modules/mcp/tools/search-folders.tool.js +2 -7
- package/dist/modules/mcp/tools/search-folders.tool.js.map +1 -1
- package/dist/modules/mcp/tools/search-projects.tool.js +2 -7
- package/dist/modules/mcp/tools/search-projects.tool.js.map +1 -1
- package/dist/modules/mcp/tools/search-workflows.tool.js +2 -7
- package/dist/modules/mcp/tools/search-workflows.tool.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/get-suggested-workflow-nodes.tool.js +1 -37
- package/dist/modules/mcp/tools/workflow-builder/get-suggested-workflow-nodes.tool.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.js +1 -37
- package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.js +1 -37
- package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/workflow-builder-tools.service.d.ts +17 -0
- package/dist/modules/mcp/tools/workflow-builder/workflow-builder-tools.service.js +48 -0
- package/dist/modules/mcp/tools/workflow-builder/workflow-builder-tools.service.js.map +1 -1
- package/dist/modules/otel/handlers/node-end.handler.d.ts +8 -0
- package/dist/modules/otel/handlers/node-end.handler.js +71 -0
- package/dist/modules/otel/handlers/node-end.handler.js.map +1 -0
- package/dist/modules/otel/handlers/node-start.handler.d.ts +7 -0
- package/dist/modules/otel/handlers/node-start.handler.js +37 -0
- package/dist/modules/otel/handlers/node-start.handler.js.map +1 -0
- package/dist/modules/otel/handlers/workflow-end.handler.d.ts +1 -0
- package/dist/modules/otel/handlers/workflow-end.handler.js +8 -0
- package/dist/modules/otel/handlers/workflow-end.handler.js.map +1 -1
- package/dist/modules/otel/n8n-instrumentation.d.ts +8 -2
- package/dist/modules/otel/n8n-instrumentation.js +32 -1
- package/dist/modules/otel/n8n-instrumentation.js.map +1 -1
- package/dist/modules/otel/otel.config.d.ts +1 -0
- package/dist/modules/otel/otel.config.js +5 -0
- package/dist/modules/otel/otel.config.js.map +1 -1
- package/dist/modules/otel/otel.constants.d.ts +7 -0
- package/dist/modules/otel/otel.constants.js +7 -0
- package/dist/modules/otel/otel.constants.js.map +1 -1
- package/dist/modules/otel/otel.service.d.ts +1 -1
- package/dist/modules/otel/otel.service.js +20 -23
- package/dist/modules/otel/otel.service.js.map +1 -1
- package/dist/modules/otel/span-registry.d.ts +1 -0
- package/dist/modules/otel/span-registry.js +11 -0
- package/dist/modules/otel/span-registry.js.map +1 -1
- package/dist/modules/provisioning.ee/provisioning.service.ee.d.ts +17 -3
- package/dist/modules/provisioning.ee/provisioning.service.ee.js +195 -8
- package/dist/modules/provisioning.ee/provisioning.service.ee.js.map +1 -1
- package/dist/modules/provisioning.ee/role-mapping-rule.controller.ee.d.ts +7 -5
- package/dist/modules/provisioning.ee/role-mapping-rule.controller.ee.js +40 -10
- package/dist/modules/provisioning.ee/role-mapping-rule.controller.ee.js.map +1 -1
- package/dist/modules/provisioning.ee/role-mapping-rule.service.ee.d.ts +3 -1
- package/dist/modules/provisioning.ee/role-mapping-rule.service.ee.js +1 -0
- package/dist/modules/provisioning.ee/role-mapping-rule.service.ee.js.map +1 -1
- package/dist/modules/provisioning.ee/role-resolver-types.d.ts +14 -2
- package/dist/modules/provisioning.ee/role-resolver.service.ee.js +16 -6
- package/dist/modules/provisioning.ee/role-resolver.service.ee.js.map +1 -1
- package/dist/modules/redaction/executions/execution-redaction.service.d.ts +3 -2
- package/dist/modules/redaction/executions/execution-redaction.service.js +5 -1
- package/dist/modules/redaction/executions/execution-redaction.service.js.map +1 -1
- package/dist/modules/redaction/redaction.module.js +0 -6
- package/dist/modules/redaction/redaction.module.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-context.factory.d.ts +12 -0
- package/dist/modules/source-control.ee/source-control-context.factory.js +112 -0
- package/dist/modules/source-control.ee/source-control-context.factory.js.map +1 -0
- package/dist/modules/source-control.ee/source-control-export.service.ee.d.ts +2 -2
- package/dist/modules/source-control.ee/source-control-export.service.ee.js +9 -11
- package/dist/modules/source-control.ee/source-control-export.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-git.service.ee.js +3 -3
- package/dist/modules/source-control.ee/source-control-git.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-import.service.ee.d.ts +6 -4
- package/dist/modules/source-control.ee/source-control-import.service.ee.js +29 -85
- package/dist/modules/source-control.ee/source-control-import.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-scoped.service.d.ts +4 -4
- package/dist/modules/source-control.ee/source-control-scoped.service.js +9 -40
- package/dist/modules/source-control.ee/source-control-scoped.service.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-status.service.ee.d.ts +3 -1
- package/dist/modules/source-control.ee/source-control-status.service.ee.js +99 -59
- package/dist/modules/source-control.ee/source-control-status.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control.service.ee.d.ts +3 -1
- package/dist/modules/source-control.ee/source-control.service.ee.js +6 -4
- package/dist/modules/source-control.ee/source-control.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/types/source-control-context.d.ts +12 -4
- package/dist/modules/source-control.ee/types/source-control-context.js +32 -6
- package/dist/modules/source-control.ee/types/source-control-context.js.map +1 -1
- package/dist/modules/sso-oidc/oidc.controller.ee.d.ts +4 -1
- package/dist/modules/sso-oidc/oidc.controller.ee.js +39 -3
- package/dist/modules/sso-oidc/oidc.controller.ee.js.map +1 -1
- package/dist/modules/sso-oidc/oidc.service.ee.d.ts +14 -2
- package/dist/modules/sso-oidc/oidc.service.ee.js +86 -8
- package/dist/modules/sso-oidc/oidc.service.ee.js.map +1 -1
- package/dist/modules/sso-oidc/views/oidc-test-result.d.ts +5 -0
- package/dist/modules/sso-oidc/views/oidc-test-result.js +58 -0
- package/dist/modules/sso-oidc/views/oidc-test-result.js.map +1 -0
- package/dist/modules/sso-saml/saml-helpers.d.ts +1 -0
- package/dist/modules/sso-saml/saml-helpers.js +2 -0
- package/dist/modules/sso-saml/saml-helpers.js.map +1 -1
- package/dist/modules/sso-saml/saml.controller.ee.d.ts +2 -3
- package/dist/modules/sso-saml/saml.controller.ee.js +3 -15
- package/dist/modules/sso-saml/saml.controller.ee.js.map +1 -1
- package/dist/modules/sso-saml/saml.service.ee.d.ts +4 -1
- package/dist/modules/sso-saml/saml.service.ee.js +13 -7
- package/dist/modules/sso-saml/saml.service.ee.js.map +1 -1
- package/dist/modules/token-exchange/controllers/embed-auth.controller.d.ts +19 -0
- package/dist/modules/token-exchange/controllers/embed-auth.controller.js +106 -0
- package/dist/modules/token-exchange/controllers/embed-auth.controller.js.map +1 -0
- package/dist/modules/token-exchange/controllers/token-exchange.controller.d.ts +9 -0
- package/dist/modules/token-exchange/controllers/token-exchange.controller.js +148 -0
- package/dist/modules/token-exchange/controllers/token-exchange.controller.js.map +1 -0
- package/dist/modules/token-exchange/database/entities/token-exchange-jti.entity.d.ts +5 -0
- package/dist/modules/token-exchange/database/entities/token-exchange-jti.entity.js +33 -0
- package/dist/modules/token-exchange/database/entities/token-exchange-jti.entity.js.map +1 -0
- package/dist/modules/token-exchange/database/entities/trusted-key-source.entity.d.ts +10 -0
- package/dist/modules/token-exchange/database/entities/trusted-key-source.entity.js +45 -0
- package/dist/modules/token-exchange/database/entities/trusted-key-source.entity.js.map +1 -0
- package/dist/modules/token-exchange/database/entities/trusted-key.entity.d.ts +9 -0
- package/dist/modules/token-exchange/database/entities/trusted-key.entity.js +43 -0
- package/dist/modules/token-exchange/database/entities/trusted-key.entity.js.map +1 -0
- package/dist/modules/token-exchange/database/repositories/token-exchange-jti.repository.d.ts +10 -0
- package/dist/modules/token-exchange/database/repositories/token-exchange-jti.repository.js +106 -0
- package/dist/modules/token-exchange/database/repositories/token-exchange-jti.repository.js.map +1 -0
- package/dist/modules/token-exchange/database/repositories/trusted-key-source.repository.d.ts +5 -0
- package/dist/modules/token-exchange/database/repositories/trusted-key-source.repository.js +26 -0
- package/dist/modules/token-exchange/database/repositories/trusted-key-source.repository.js.map +1 -0
- package/dist/modules/token-exchange/database/repositories/trusted-key.repository.d.ts +7 -0
- package/dist/modules/token-exchange/database/repositories/trusted-key.repository.js +32 -0
- package/dist/modules/token-exchange/database/repositories/trusted-key.repository.js.map +1 -0
- package/dist/modules/token-exchange/services/identity-resolution.service.d.ts +23 -0
- package/dist/modules/token-exchange/services/identity-resolution.service.js +195 -0
- package/dist/modules/token-exchange/services/identity-resolution.service.js.map +1 -0
- package/dist/modules/token-exchange/services/jti-cleanup.service.d.ts +18 -0
- package/dist/modules/token-exchange/services/jti-cleanup.service.js +90 -0
- package/dist/modules/token-exchange/services/jti-cleanup.service.js.map +1 -0
- package/dist/modules/token-exchange/services/jti-store.service.d.ts +6 -0
- package/dist/modules/token-exchange/services/jti-store.service.js +30 -0
- package/dist/modules/token-exchange/services/jti-store.service.js.map +1 -0
- package/dist/modules/token-exchange/services/jwks-resolver.d.ts +30 -0
- package/dist/modules/token-exchange/services/jwks-resolver.js +190 -0
- package/dist/modules/token-exchange/services/jwks-resolver.js.map +1 -0
- package/dist/modules/token-exchange/services/scoped-jwt.strategy.d.ts +12 -0
- package/dist/modules/token-exchange/services/scoped-jwt.strategy.js +92 -0
- package/dist/modules/token-exchange/services/scoped-jwt.strategy.js.map +1 -0
- package/dist/modules/token-exchange/services/token-exchange.service.d.ts +31 -0
- package/dist/modules/token-exchange/services/token-exchange.service.js +152 -0
- package/dist/modules/token-exchange/services/token-exchange.service.js.map +1 -0
- package/dist/modules/token-exchange/services/trusted-key.service.d.ts +47 -0
- package/dist/modules/token-exchange/services/trusted-key.service.js +465 -0
- package/dist/modules/token-exchange/services/trusted-key.service.js.map +1 -0
- package/dist/modules/token-exchange/token-exchange.config.d.ts +11 -0
- package/dist/modules/token-exchange/token-exchange.config.js +67 -0
- package/dist/modules/token-exchange/token-exchange.config.js.map +1 -0
- package/dist/modules/token-exchange/token-exchange.module.d.ts +5 -0
- package/dist/modules/token-exchange/token-exchange.module.js +79 -0
- package/dist/modules/token-exchange/token-exchange.module.js.map +1 -0
- package/dist/modules/token-exchange/token-exchange.schemas.d.ts +161 -0
- package/dist/modules/token-exchange/token-exchange.schemas.js +69 -0
- package/dist/modules/token-exchange/token-exchange.schemas.js.map +1 -0
- package/dist/modules/token-exchange/token-exchange.types.d.ts +53 -0
- package/dist/modules/token-exchange/token-exchange.types.js +5 -0
- package/dist/modules/token-exchange/token-exchange.types.js.map +1 -0
- package/dist/oauth/oauth.service.d.ts +1 -0
- package/dist/oauth/oauth.service.js +39 -2
- package/dist/oauth/oauth.service.js.map +1 -1
- package/dist/public-api/index.js +37 -9
- package/dist/public-api/index.js.map +1 -1
- package/dist/public-api/types.d.ts +28 -1
- package/dist/public-api/v1/handlers/community-packages/community-packages.handler.d.ts +19 -0
- package/dist/public-api/v1/handlers/community-packages/community-packages.handler.js +71 -0
- package/dist/public-api/v1/handlers/community-packages/community-packages.handler.js.map +1 -0
- package/dist/public-api/v1/handlers/community-packages/community-packages.mapper.d.ts +27 -0
- package/dist/public-api/v1/handlers/community-packages/community-packages.mapper.js +35 -0
- package/dist/public-api/v1/handlers/community-packages/community-packages.mapper.js.map +1 -0
- package/dist/public-api/v1/handlers/credentials/credentials.handler.js +7 -12
- package/dist/public-api/v1/handlers/credentials/credentials.handler.js.map +1 -1
- package/dist/public-api/v1/handlers/credentials/credentials.service.d.ts +3 -4
- package/dist/public-api/v1/handlers/credentials/credentials.service.js +21 -33
- package/dist/public-api/v1/handlers/credentials/credentials.service.js.map +1 -1
- package/dist/public-api/v1/handlers/data-tables/data-tables.handler.js +5 -5
- package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.js +5 -5
- package/dist/public-api/v1/handlers/executions/executions.handler.js +56 -12
- package/dist/public-api/v1/handlers/executions/executions.handler.js.map +1 -1
- package/dist/public-api/v1/handlers/insights/insights.handler.d.ts +6 -0
- package/dist/public-api/v1/handlers/insights/insights.handler.js +57 -0
- package/dist/public-api/v1/handlers/insights/insights.handler.js.map +1 -0
- package/dist/public-api/v1/handlers/workflows/workflows.handler.js +14 -35
- package/dist/public-api/v1/handlers/workflows/workflows.handler.js.map +1 -1
- package/dist/public-api/v1/handlers/workflows/workflows.service.d.ts +6 -4
- package/dist/public-api/v1/handlers/workflows/workflows.service.js +7 -15
- package/dist/public-api/v1/handlers/workflows/workflows.service.js.map +1 -1
- package/dist/public-api/v1/openapi.yml +530 -9
- package/dist/public-api/v1/public-api-error-response.d.ts +2 -0
- package/dist/public-api/v1/public-api-error-response.js +11 -0
- package/dist/public-api/v1/public-api-error-response.js.map +1 -0
- package/dist/public-api/v1/shared/middlewares/global.middleware.d.ts +1 -1
- package/dist/public-api/v1/shared/middlewares/global.middleware.js +19 -8
- package/dist/public-api/v1/shared/middlewares/global.middleware.js.map +1 -1
- package/dist/push/abstract.push.d.ts +1 -0
- package/dist/push/abstract.push.js +3 -0
- package/dist/push/abstract.push.js.map +1 -1
- package/dist/push/sse.push.js +5 -1
- package/dist/push/sse.push.js.map +1 -1
- package/dist/push/websocket.push.js +3 -1
- package/dist/push/websocket.push.js.map +1 -1
- package/dist/response-helper.js +6 -29
- package/dist/response-helper.js.map +1 -1
- package/dist/scaling/pubsub/subscriber.service.d.ts +2 -0
- package/dist/scaling/pubsub/subscriber.service.js +17 -8
- package/dist/scaling/pubsub/subscriber.service.js.map +1 -1
- package/dist/scaling/redis/redis.types.d.ts +1 -1
- package/dist/security-audit/risk-reporters/credentials-risk-reporter.d.ts +2 -3
- package/dist/security-audit/risk-reporters/credentials-risk-reporter.js +2 -5
- package/dist/security-audit/risk-reporters/credentials-risk-reporter.js.map +1 -1
- package/dist/services/ai-gateway.service.d.ts +44 -0
- package/dist/services/ai-gateway.service.js +228 -0
- package/dist/services/ai-gateway.service.js.map +1 -0
- package/dist/services/ai-workflow-builder.service.d.ts +2 -2
- package/dist/services/ai-workflow-builder.service.js +4 -4
- package/dist/services/ai-workflow-builder.service.js.map +1 -1
- package/dist/services/ai.service.d.ts +4 -0
- package/dist/services/ai.service.js +20 -18
- package/dist/services/ai.service.js.map +1 -1
- package/dist/services/api-key-auth.strategy.d.ts +10 -0
- package/dist/services/api-key-auth.strategy.js +71 -0
- package/dist/services/api-key-auth.strategy.js.map +1 -0
- package/dist/services/auth-strategy.registry.d.ts +7 -0
- package/dist/services/auth-strategy.registry.js +32 -0
- package/dist/services/auth-strategy.registry.js.map +1 -0
- package/dist/services/auth-strategy.types.d.ts +4 -0
- package/dist/services/auth-strategy.types.js +3 -0
- package/dist/services/auth-strategy.types.js.map +1 -0
- package/dist/services/credentials-tester.service.js +2 -0
- package/dist/services/credentials-tester.service.js.map +1 -1
- package/dist/services/db-clock.service.d.ts +10 -0
- package/dist/services/db-clock.service.js +48 -0
- package/dist/services/db-clock.service.js.map +1 -0
- package/dist/services/frontend.service.js +9 -0
- package/dist/services/frontend.service.js.map +1 -1
- package/dist/services/import.service.d.ts +1 -0
- package/dist/services/import.service.js +25 -2
- package/dist/services/import.service.js.map +1 -1
- package/dist/services/ownership.service.d.ts +4 -1
- package/dist/services/ownership.service.js +11 -5
- package/dist/services/ownership.service.js.map +1 -1
- package/dist/services/project.service.ee.js +1 -1
- package/dist/services/project.service.ee.js.map +1 -1
- package/dist/services/pruning/workflow-history-compaction.service.js +4 -4
- package/dist/services/pruning/workflow-history-compaction.service.js.map +1 -1
- package/dist/services/public-api-key.service.d.ts +6 -13
- package/dist/services/public-api-key.service.js +12 -80
- package/dist/services/public-api-key.service.js.map +1 -1
- package/dist/services/user.service.js +6 -0
- package/dist/services/user.service.js.map +1 -1
- package/dist/utils/validate-redirect-url.d.ts +1 -0
- package/dist/utils/validate-redirect-url.js +17 -0
- package/dist/utils/validate-redirect-url.js.map +1 -0
- package/dist/wait-tracker.d.ts +6 -2
- package/dist/wait-tracker.js +94 -63
- package/dist/wait-tracker.js.map +1 -1
- package/dist/webhooks/live-webhooks.js +24 -18
- package/dist/webhooks/live-webhooks.js.map +1 -1
- package/dist/webhooks/test-webhooks.js +96 -78
- package/dist/webhooks/test-webhooks.js.map +1 -1
- package/dist/webhooks/waiting-webhooks.js +27 -21
- package/dist/webhooks/waiting-webhooks.js.map +1 -1
- package/dist/webhooks/webhook-form-data.js +6 -2
- package/dist/webhooks/webhook-form-data.js.map +1 -1
- package/dist/webhooks/webhook-helpers.js +21 -6
- package/dist/webhooks/webhook-helpers.js.map +1 -1
- package/dist/webhooks/webhook-last-node-response-extractor.d.ts +5 -2
- package/dist/webhooks/webhook-last-node-response-extractor.js +5 -8
- package/dist/webhooks/webhook-last-node-response-extractor.js.map +1 -1
- package/dist/webhooks/webhook.service.js +19 -4
- package/dist/webhooks/webhook.service.js.map +1 -1
- package/dist/workflow-execute-additional-data.js +2 -0
- package/dist/workflow-execute-additional-data.js.map +1 -1
- package/dist/workflow-helpers.d.ts +1 -0
- package/dist/workflow-helpers.js +21 -0
- package/dist/workflow-helpers.js.map +1 -1
- package/dist/workflow-runner.js +25 -1
- package/dist/workflow-runner.js.map +1 -1
- package/dist/workflows/workflow-creation.service.d.ts +8 -5
- package/dist/workflows/workflow-creation.service.js +40 -17
- package/dist/workflows/workflow-creation.service.js.map +1 -1
- package/dist/workflows/workflow-execution.service.js +1 -1
- package/dist/workflows/workflow-execution.service.js.map +1 -1
- package/dist/workflows/workflow-history/workflow-history.service.js +1 -0
- 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.service.ee.js +4 -1
- package/dist/workflows/workflow.service.ee.js.map +1 -1
- package/dist/workflows/workflow.service.js +16 -2
- package/dist/workflows/workflow.service.js.map +1 -1
- package/dist/workflows/workflows.controller.d.ts +4 -4
- package/package.json +32 -30
|
@@ -9,27 +9,21 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.PublicApiKeyService = void 0;
|
|
12
|
+
exports.PublicApiKeyService = exports.PREFIX_LEGACY_API_KEY = exports.API_KEY_ISSUER = exports.API_KEY_AUDIENCE = void 0;
|
|
13
13
|
const db_1 = require("@n8n/db");
|
|
14
14
|
const di_1 = require("@n8n/di");
|
|
15
15
|
const permissions_1 = require("@n8n/permissions");
|
|
16
16
|
const crypto_1 = require("crypto");
|
|
17
|
-
const jsonwebtoken_1 = require("jsonwebtoken");
|
|
18
17
|
const jwt_service_1 = require("./jwt.service");
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
const API_KEY_AUDIENCE = 'public-api';
|
|
22
|
-
const API_KEY_ISSUER = 'n8n';
|
|
18
|
+
exports.API_KEY_AUDIENCE = 'public-api';
|
|
19
|
+
exports.API_KEY_ISSUER = 'n8n';
|
|
23
20
|
const REDACT_API_KEY_REVEAL_COUNT = 4;
|
|
24
21
|
const REDACT_API_KEY_MAX_LENGTH = 10;
|
|
25
|
-
|
|
22
|
+
exports.PREFIX_LEGACY_API_KEY = 'n8n_api_';
|
|
26
23
|
let PublicApiKeyService = class PublicApiKeyService {
|
|
27
|
-
constructor(apiKeyRepository,
|
|
24
|
+
constructor(apiKeyRepository, jwtService) {
|
|
28
25
|
this.apiKeyRepository = apiKeyRepository;
|
|
29
|
-
this.userRepository = userRepository;
|
|
30
26
|
this.jwtService = jwtService;
|
|
31
|
-
this.eventService = eventService;
|
|
32
|
-
this.lastActiveAtService = lastActiveAtService;
|
|
33
27
|
this.getApiKeyExpiration = (apiKey) => {
|
|
34
28
|
const decoded = this.jwtService.decode(apiKey);
|
|
35
29
|
return decoded?.exp ?? null;
|
|
@@ -42,14 +36,14 @@ let PublicApiKeyService = class PublicApiKeyService {
|
|
|
42
36
|
apiKey,
|
|
43
37
|
label,
|
|
44
38
|
scopes,
|
|
45
|
-
audience: API_KEY_AUDIENCE,
|
|
39
|
+
audience: exports.API_KEY_AUDIENCE,
|
|
46
40
|
}));
|
|
47
41
|
return await this.apiKeyRepository.findOneByOrFail({ apiKey });
|
|
48
42
|
}
|
|
49
43
|
async getRedactedApiKeysForUser(user) {
|
|
50
44
|
const apiKeys = await this.apiKeyRepository.findBy({
|
|
51
45
|
userId: user.id,
|
|
52
|
-
audience: API_KEY_AUDIENCE,
|
|
46
|
+
audience: exports.API_KEY_AUDIENCE,
|
|
53
47
|
});
|
|
54
48
|
return apiKeys.map((apiKeyRecord) => ({
|
|
55
49
|
...apiKeyRecord,
|
|
@@ -63,7 +57,7 @@ let PublicApiKeyService = class PublicApiKeyService {
|
|
|
63
57
|
async deleteAllApiKeysForUser(user, tx) {
|
|
64
58
|
return await (0, db_1.withTransaction)(this.apiKeyRepository.manager, tx, async (em) => {
|
|
65
59
|
const userApiKeys = await em.find(db_1.ApiKey, {
|
|
66
|
-
where: { userId: user.id, audience: API_KEY_AUDIENCE },
|
|
60
|
+
where: { userId: user.id, audience: exports.API_KEY_AUDIENCE },
|
|
67
61
|
});
|
|
68
62
|
return await Promise.all(userApiKeys.map(async (apiKey) => await em.delete(db_1.ApiKey, { id: apiKey.id })));
|
|
69
63
|
});
|
|
@@ -71,58 +65,14 @@ let PublicApiKeyService = class PublicApiKeyService {
|
|
|
71
65
|
async updateApiKeyForUser(user, apiKeyId, { label, scopes }) {
|
|
72
66
|
await this.apiKeyRepository.update({ id: apiKeyId, userId: user.id }, { label, scopes });
|
|
73
67
|
}
|
|
74
|
-
async getUserForApiKey(apiKey) {
|
|
75
|
-
return await this.userRepository.findOne({
|
|
76
|
-
where: {
|
|
77
|
-
apiKeys: {
|
|
78
|
-
apiKey,
|
|
79
|
-
audience: API_KEY_AUDIENCE,
|
|
80
|
-
},
|
|
81
|
-
},
|
|
82
|
-
relations: ['role'],
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
68
|
redactApiKey(apiKey) {
|
|
86
69
|
const visiblePart = apiKey.slice(-REDACT_API_KEY_REVEAL_COUNT);
|
|
87
70
|
const redactedPart = '*'.repeat(Math.max(0, REDACT_API_KEY_MAX_LENGTH - REDACT_API_KEY_REVEAL_COUNT));
|
|
88
71
|
return redactedPart + visiblePart;
|
|
89
72
|
}
|
|
90
|
-
getAuthMiddleware(version) {
|
|
91
|
-
return async (req, _scopes, schema) => {
|
|
92
|
-
const providedApiKey = req.headers[schema.name.toLowerCase()];
|
|
93
|
-
const user = await this.getUserForApiKey(providedApiKey);
|
|
94
|
-
if (!user)
|
|
95
|
-
return false;
|
|
96
|
-
if (user.disabled)
|
|
97
|
-
return false;
|
|
98
|
-
if (!providedApiKey.startsWith(PREFIX_LEGACY_API_KEY)) {
|
|
99
|
-
try {
|
|
100
|
-
this.jwtService.verify(providedApiKey, {
|
|
101
|
-
issuer: API_KEY_ISSUER,
|
|
102
|
-
audience: API_KEY_AUDIENCE,
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
catch (e) {
|
|
106
|
-
if (e instanceof jsonwebtoken_1.TokenExpiredError)
|
|
107
|
-
return false;
|
|
108
|
-
throw e;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
this.eventService.emit('public-api-invoked', {
|
|
112
|
-
userId: user.id,
|
|
113
|
-
path: req.path,
|
|
114
|
-
method: req.method,
|
|
115
|
-
apiVersion: version,
|
|
116
|
-
userAgent: req.headers['user-agent'],
|
|
117
|
-
});
|
|
118
|
-
req.user = user;
|
|
119
|
-
void this.lastActiveAtService.updateLastActiveIfStale(user.id);
|
|
120
|
-
return true;
|
|
121
|
-
};
|
|
122
|
-
}
|
|
123
73
|
generateApiKey(user, expiresAt) {
|
|
124
74
|
const nowInSeconds = Math.floor(Date.now() / 1000);
|
|
125
|
-
return this.jwtService.sign({ sub: user.id, iss: API_KEY_ISSUER, aud: API_KEY_AUDIENCE, jti: (0, crypto_1.randomUUID)() }, { ...(expiresAt && { expiresIn: expiresAt - nowInSeconds }) });
|
|
75
|
+
return this.jwtService.sign({ sub: user.id, iss: exports.API_KEY_ISSUER, aud: exports.API_KEY_AUDIENCE, jti: (0, crypto_1.randomUUID)() }, { ...(expiresAt && { expiresIn: expiresAt - nowInSeconds }) });
|
|
126
76
|
}
|
|
127
77
|
apiKeyHasValidScopesForRole(role, apiKeyScopes) {
|
|
128
78
|
const scopesForRole = (0, permissions_1.getApiKeyScopesForRole)(role);
|
|
@@ -130,33 +80,18 @@ let PublicApiKeyService = class PublicApiKeyService {
|
|
|
130
80
|
}
|
|
131
81
|
async apiKeyHasValidScopes(apiKey, endpointScope) {
|
|
132
82
|
const apiKeyData = await this.apiKeyRepository.findOne({
|
|
133
|
-
where: { apiKey, audience: API_KEY_AUDIENCE },
|
|
83
|
+
where: { apiKey, audience: exports.API_KEY_AUDIENCE },
|
|
134
84
|
select: { scopes: true },
|
|
135
85
|
});
|
|
136
86
|
if (!apiKeyData)
|
|
137
87
|
return false;
|
|
138
88
|
return apiKeyData.scopes.includes(endpointScope);
|
|
139
89
|
}
|
|
140
|
-
getApiKeyScopeMiddleware(endpointScope) {
|
|
141
|
-
return async (req, res, next) => {
|
|
142
|
-
const apiKey = req.headers['x-n8n-api-key'];
|
|
143
|
-
if (apiKey === undefined || typeof apiKey !== 'string') {
|
|
144
|
-
res.status(401).json({ message: 'Unauthorized' });
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
const valid = await this.apiKeyHasValidScopes(apiKey, endpointScope);
|
|
148
|
-
if (!valid) {
|
|
149
|
-
res.status(403).json({ message: 'Forbidden' });
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
next();
|
|
153
|
-
};
|
|
154
|
-
}
|
|
155
90
|
async removeOwnerOnlyScopesFromApiKeys(user, tx) {
|
|
156
91
|
const manager = tx ?? this.apiKeyRepository.manager;
|
|
157
92
|
const ownerOnlyScopes = (0, permissions_1.getOwnerOnlyApiKeyScopes)();
|
|
158
93
|
const userApiKeys = await manager.find(db_1.ApiKey, {
|
|
159
|
-
where: { userId: user.id, audience: API_KEY_AUDIENCE },
|
|
94
|
+
where: { userId: user.id, audience: exports.API_KEY_AUDIENCE },
|
|
160
95
|
});
|
|
161
96
|
const keysWithOwnerScopes = userApiKeys.filter((apiKey) => apiKey.scopes.some((scope) => ownerOnlyScopes.includes(scope)));
|
|
162
97
|
return await Promise.all(keysWithOwnerScopes.map(async (currentApiKey) => await manager.update(db_1.ApiKey, currentApiKey.id, {
|
|
@@ -168,9 +103,6 @@ exports.PublicApiKeyService = PublicApiKeyService;
|
|
|
168
103
|
exports.PublicApiKeyService = PublicApiKeyService = __decorate([
|
|
169
104
|
(0, di_1.Service)(),
|
|
170
105
|
__metadata("design:paramtypes", [db_1.ApiKeyRepository,
|
|
171
|
-
|
|
172
|
-
jwt_service_1.JwtService,
|
|
173
|
-
event_service_1.EventService,
|
|
174
|
-
last_active_at_service_1.LastActiveAtService])
|
|
106
|
+
jwt_service_1.JwtService])
|
|
175
107
|
], PublicApiKeyService);
|
|
176
108
|
//# sourceMappingURL=public-api-key.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-api-key.service.js","sourceRoot":"","sources":["../../src/services/public-api-key.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,
|
|
1
|
+
{"version":3,"file":"public-api-key.service.js","sourceRoot":"","sources":["../../src/services/public-api-key.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -89,6 +89,12 @@ let UserService = class UserService {
|
|
|
89
89
|
publicUser.globalScopes = (0, permissions_1.getGlobalScopes)(user);
|
|
90
90
|
}
|
|
91
91
|
publicUser.mfaAuthenticated = options?.mfaAuthenticated ?? false;
|
|
92
|
+
const { instanceSettingsLoader } = this.globalConfig;
|
|
93
|
+
if (instanceSettingsLoader.ownerManagedByEnv &&
|
|
94
|
+
!!user.email &&
|
|
95
|
+
user.email.toLowerCase() === instanceSettingsLoader.ownerEmail.toLowerCase()) {
|
|
96
|
+
publicUser.isManagedByEnv = true;
|
|
97
|
+
}
|
|
92
98
|
return publicUser;
|
|
93
99
|
}
|
|
94
100
|
async addFeatureFlags(publicUser, posthog) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../src/services/user.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../src/services/user.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function validateRedirectUrl(redirectUrl: string): string;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateRedirectUrl = validateRedirectUrl;
|
|
4
|
+
function validateRedirectUrl(redirectUrl) {
|
|
5
|
+
if (typeof redirectUrl !== 'string' || redirectUrl.trim() === '') {
|
|
6
|
+
return '/';
|
|
7
|
+
}
|
|
8
|
+
const trimmed = redirectUrl.trim();
|
|
9
|
+
if (!trimmed.startsWith('/')) {
|
|
10
|
+
return '/';
|
|
11
|
+
}
|
|
12
|
+
if (trimmed.startsWith('//')) {
|
|
13
|
+
return '/';
|
|
14
|
+
}
|
|
15
|
+
return trimmed;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=validate-redirect-url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-redirect-url.js","sourceRoot":"","sources":["../../src/utils/validate-redirect-url.ts"],"names":[],"mappings":";;AAIA,kDAiBC;AAjBD,SAAgB,mBAAmB,CAAC,WAAmB;IACtD,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAClE,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;IAGnC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC"}
|
package/dist/wait-tracker.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Logger } from '@n8n/backend-common';
|
|
2
2
|
import { ExecutionRepository } from '@n8n/db';
|
|
3
|
-
import { InstanceSettings } from 'n8n-core';
|
|
3
|
+
import { ErrorReporter, InstanceSettings } from 'n8n-core';
|
|
4
4
|
import { ActiveExecutions } from './active-executions';
|
|
5
|
+
import { DbClock } from './services/db-clock.service';
|
|
5
6
|
import { OwnershipService } from './services/ownership.service';
|
|
6
7
|
import { WorkflowRunner } from './workflow-runner';
|
|
7
8
|
export declare class WaitTracker {
|
|
@@ -11,9 +12,12 @@ export declare class WaitTracker {
|
|
|
11
12
|
private readonly activeExecutions;
|
|
12
13
|
private readonly workflowRunner;
|
|
13
14
|
private readonly instanceSettings;
|
|
15
|
+
private readonly dbClock;
|
|
16
|
+
private readonly errorReporter;
|
|
14
17
|
private waitingExecutions;
|
|
15
18
|
mainTimer: NodeJS.Timeout;
|
|
16
|
-
|
|
19
|
+
private isPolling;
|
|
20
|
+
constructor(logger: Logger, executionRepository: ExecutionRepository, ownershipService: OwnershipService, activeExecutions: ActiveExecutions, workflowRunner: WorkflowRunner, instanceSettings: InstanceSettings, dbClock: DbClock, errorReporter: ErrorReporter);
|
|
17
21
|
has(executionId: string): boolean;
|
|
18
22
|
init(): void;
|
|
19
23
|
private startTracking;
|
package/dist/wait-tracker.js
CHANGED
|
@@ -18,18 +18,22 @@ const n8n_core_1 = require("n8n-core");
|
|
|
18
18
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
19
19
|
const active_executions_1 = require("./active-executions");
|
|
20
20
|
const execution_already_resuming_error_1 = require("./errors/execution-already-resuming.error");
|
|
21
|
+
const db_clock_service_1 = require("./services/db-clock.service");
|
|
21
22
|
const ownership_service_1 = require("./services/ownership.service");
|
|
22
23
|
const workflow_runner_1 = require("./workflow-runner");
|
|
23
24
|
const workflow_helpers_1 = require("./workflow-helpers");
|
|
24
25
|
let WaitTracker = class WaitTracker {
|
|
25
|
-
constructor(logger, executionRepository, ownershipService, activeExecutions, workflowRunner, instanceSettings) {
|
|
26
|
+
constructor(logger, executionRepository, ownershipService, activeExecutions, workflowRunner, instanceSettings, dbClock, errorReporter) {
|
|
26
27
|
this.logger = logger;
|
|
27
28
|
this.executionRepository = executionRepository;
|
|
28
29
|
this.ownershipService = ownershipService;
|
|
29
30
|
this.activeExecutions = activeExecutions;
|
|
30
31
|
this.workflowRunner = workflowRunner;
|
|
31
32
|
this.instanceSettings = instanceSettings;
|
|
33
|
+
this.dbClock = dbClock;
|
|
34
|
+
this.errorReporter = errorReporter;
|
|
32
35
|
this.waitingExecutions = {};
|
|
36
|
+
this.isPolling = false;
|
|
33
37
|
this.logger = this.logger.scoped('waiting-executions');
|
|
34
38
|
}
|
|
35
39
|
has(executionId) {
|
|
@@ -42,30 +46,51 @@ let WaitTracker = class WaitTracker {
|
|
|
42
46
|
startTracking() {
|
|
43
47
|
this.mainTimer = setInterval(() => {
|
|
44
48
|
void this.getWaitingExecutions();
|
|
45
|
-
},
|
|
49
|
+
}, 5000);
|
|
46
50
|
void this.getWaitingExecutions();
|
|
47
51
|
this.logger.debug('Started tracking waiting executions');
|
|
48
52
|
}
|
|
49
53
|
async getWaitingExecutions() {
|
|
50
|
-
this.
|
|
51
|
-
|
|
52
|
-
if (executions.length === 0) {
|
|
54
|
+
if (this.isPolling) {
|
|
55
|
+
this.logger.debug('Skipping poll — previous poll still in progress');
|
|
53
56
|
return;
|
|
54
57
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
58
|
+
this.isPolling = true;
|
|
59
|
+
try {
|
|
60
|
+
const [executions, dbTime] = await Promise.all([
|
|
61
|
+
this.executionRepository.getWaitingExecutions(),
|
|
62
|
+
this.dbClock.getApproximateDbTime(),
|
|
63
|
+
]);
|
|
64
|
+
const skewMs = dbTime.getTime() - Date.now();
|
|
65
|
+
if (Math.abs(skewMs) > 2000) {
|
|
66
|
+
this.logger.warn(`Clock skew detected: this instance is ${Math.abs(skewMs)}ms ${skewMs > 0 ? 'behind' : 'ahead of'} the database server`);
|
|
67
|
+
}
|
|
68
|
+
if (executions.length === 0) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
const newExecutions = executions.filter((e) => this.waitingExecutions[e.id] === undefined);
|
|
72
|
+
if (newExecutions.length > 0) {
|
|
73
|
+
const executionIds = newExecutions.map((e) => e.id).join(', ');
|
|
74
|
+
this.logger.debug(`Found ${newExecutions.length} new waiting execution(s). Setting timer for IDs: ${executionIds}`);
|
|
75
|
+
}
|
|
76
|
+
for (const execution of newExecutions) {
|
|
77
|
+
const executionId = execution.id;
|
|
78
|
+
if (execution.waitTill === null || execution.waitTill === undefined) {
|
|
79
|
+
this.errorReporter.error(new n8n_workflow_1.UnexpectedError('Polling returned an execution without waitTill — this should never happen', { extra: { executionId } }), { level: 'fatal' });
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
const triggerTime = execution.waitTill.getTime() - dbTime.getTime();
|
|
61
83
|
this.waitingExecutions[executionId] = {
|
|
62
84
|
executionId,
|
|
63
85
|
timer: setTimeout(() => {
|
|
64
86
|
void this.startExecution(executionId);
|
|
65
|
-
}, triggerTime),
|
|
87
|
+
}, Math.max(triggerTime, 0)),
|
|
66
88
|
};
|
|
67
89
|
}
|
|
68
90
|
}
|
|
91
|
+
finally {
|
|
92
|
+
this.isPolling = false;
|
|
93
|
+
}
|
|
69
94
|
}
|
|
70
95
|
stopExecution(executionId) {
|
|
71
96
|
if (!this.waitingExecutions[executionId])
|
|
@@ -75,59 +100,63 @@ let WaitTracker = class WaitTracker {
|
|
|
75
100
|
}
|
|
76
101
|
async startExecution(executionId) {
|
|
77
102
|
this.logger.debug(`Resuming execution ${executionId}`, { executionId });
|
|
78
|
-
delete this.waitingExecutions[executionId];
|
|
79
|
-
const fullExecutionData = await this.executionRepository.findSingleExecution(executionId, {
|
|
80
|
-
includeData: true,
|
|
81
|
-
unflattenData: true,
|
|
82
|
-
});
|
|
83
|
-
if (!fullExecutionData) {
|
|
84
|
-
throw new n8n_workflow_1.UnexpectedError('Execution does not exist.', { extra: { executionId } });
|
|
85
|
-
}
|
|
86
|
-
if (fullExecutionData.finished) {
|
|
87
|
-
throw new n8n_workflow_1.UnexpectedError('The execution did succeed and can so not be started again.');
|
|
88
|
-
}
|
|
89
|
-
if (!fullExecutionData.workflowData.id) {
|
|
90
|
-
throw new n8n_workflow_1.UnexpectedError('Only saved workflows can be resumed.');
|
|
91
|
-
}
|
|
92
|
-
const workflowId = fullExecutionData.workflowData.id;
|
|
93
|
-
const project = await this.ownershipService.getWorkflowProjectCached(workflowId);
|
|
94
|
-
const data = {
|
|
95
|
-
executionMode: fullExecutionData.mode,
|
|
96
|
-
executionData: fullExecutionData.data,
|
|
97
|
-
workflowData: fullExecutionData.workflowData,
|
|
98
|
-
projectId: project.id,
|
|
99
|
-
pushRef: fullExecutionData.data.pushRef,
|
|
100
|
-
startedAt: fullExecutionData.startedAt,
|
|
101
|
-
};
|
|
102
103
|
try {
|
|
103
|
-
await this.
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
104
|
+
const fullExecutionData = await this.executionRepository.findSingleExecution(executionId, {
|
|
105
|
+
includeData: true,
|
|
106
|
+
unflattenData: true,
|
|
107
|
+
});
|
|
108
|
+
if (!fullExecutionData) {
|
|
109
|
+
throw new n8n_workflow_1.UnexpectedError('Execution does not exist.', { extra: { executionId } });
|
|
109
110
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
.
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
111
|
+
if (fullExecutionData.finished) {
|
|
112
|
+
throw new n8n_workflow_1.UnexpectedError('The execution did succeed and can so not be started again.');
|
|
113
|
+
}
|
|
114
|
+
if (!fullExecutionData.workflowData.id) {
|
|
115
|
+
throw new n8n_workflow_1.UnexpectedError('Only saved workflows can be resumed.');
|
|
116
|
+
}
|
|
117
|
+
const workflowId = fullExecutionData.workflowData.id;
|
|
118
|
+
const project = await this.ownershipService.getWorkflowProjectCached(workflowId);
|
|
119
|
+
const data = {
|
|
120
|
+
executionMode: fullExecutionData.mode,
|
|
121
|
+
executionData: fullExecutionData.data,
|
|
122
|
+
workflowData: fullExecutionData.workflowData,
|
|
123
|
+
projectId: project.id,
|
|
124
|
+
pushRef: fullExecutionData.data.pushRef,
|
|
125
|
+
startedAt: fullExecutionData.startedAt,
|
|
126
|
+
};
|
|
127
|
+
try {
|
|
128
|
+
await this.workflowRunner.run(data, false, false, executionId);
|
|
129
|
+
}
|
|
130
|
+
catch (error) {
|
|
131
|
+
if (error instanceof execution_already_resuming_error_1.ExecutionAlreadyResumingError) {
|
|
132
|
+
this.logger.debug(`Execution ${executionId} is already being resumed, skipping duplicate resume`, { executionId });
|
|
128
133
|
return;
|
|
129
|
-
|
|
130
|
-
|
|
134
|
+
}
|
|
135
|
+
throw error;
|
|
136
|
+
}
|
|
137
|
+
const { parentExecution } = fullExecutionData.data;
|
|
138
|
+
if ((0, workflow_helpers_1.shouldRestartParentExecution)(parentExecution)) {
|
|
139
|
+
void this.activeExecutions
|
|
140
|
+
.getPostExecutePromise(executionId)
|
|
141
|
+
.then(async (subworkflowResults) => {
|
|
142
|
+
if (!subworkflowResults)
|
|
143
|
+
return;
|
|
144
|
+
if (subworkflowResults.status === 'waiting')
|
|
145
|
+
return;
|
|
146
|
+
await (0, workflow_helpers_1.updateParentExecutionWithChildResults)(this.executionRepository, parentExecution.executionId, subworkflowResults);
|
|
147
|
+
return subworkflowResults;
|
|
148
|
+
})
|
|
149
|
+
.then((subworkflowResults) => {
|
|
150
|
+
if (!subworkflowResults)
|
|
151
|
+
return;
|
|
152
|
+
if (subworkflowResults.status === 'waiting')
|
|
153
|
+
return;
|
|
154
|
+
void this.startExecution(parentExecution.executionId);
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
finally {
|
|
159
|
+
delete this.waitingExecutions[executionId];
|
|
131
160
|
}
|
|
132
161
|
}
|
|
133
162
|
stopTracking() {
|
|
@@ -160,6 +189,8 @@ exports.WaitTracker = WaitTracker = __decorate([
|
|
|
160
189
|
ownership_service_1.OwnershipService,
|
|
161
190
|
active_executions_1.ActiveExecutions,
|
|
162
191
|
workflow_runner_1.WorkflowRunner,
|
|
163
|
-
n8n_core_1.InstanceSettings
|
|
192
|
+
n8n_core_1.InstanceSettings,
|
|
193
|
+
db_clock_service_1.DbClock,
|
|
194
|
+
n8n_core_1.ErrorReporter])
|
|
164
195
|
], WaitTracker);
|
|
165
196
|
//# sourceMappingURL=wait-tracker.js.map
|
package/dist/wait-tracker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wait-tracker.js","sourceRoot":"","sources":["../src/wait-tracker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wDAA6C;AAC7C,gCAA8C;AAC9C,gDAAqE;AACrE,gCAAkC;AAClC,
|
|
1
|
+
{"version":3,"file":"wait-tracker.js","sourceRoot":"","sources":["../src/wait-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -128,26 +128,32 @@ let LiveWebhooks = class LiveWebhooks {
|
|
|
128
128
|
const additionalData = await WorkflowExecuteAdditionalData.getBase({
|
|
129
129
|
projectId: ownerProjectId,
|
|
130
130
|
});
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
131
|
+
await workflow.expression.acquireIsolate();
|
|
132
|
+
try {
|
|
133
|
+
const webhookData = this.webhookService
|
|
134
|
+
.getNodeWebhooks(workflow, workflow.getNode(webhook.node), additionalData)
|
|
135
|
+
.find((w) => w.httpMethod === httpMethod && w.path === webhook.webhookPath);
|
|
136
|
+
const workflowStartNode = workflow.getNode(webhookData.node);
|
|
137
|
+
if (workflowStartNode === null) {
|
|
138
|
+
throw new not_found_error_1.NotFoundError('Could not find node to process webhook.');
|
|
139
|
+
}
|
|
140
|
+
if (!constants_1.authAllowlistedNodes.has(workflowStartNode.type)) {
|
|
141
|
+
(0, webhook_request_sanitizer_1.sanitizeWebhookRequest)(request);
|
|
142
|
+
}
|
|
143
|
+
return await new Promise((resolve, reject) => {
|
|
144
|
+
const executionMode = 'webhook';
|
|
145
|
+
void WebhookHelpers.executeWebhook(workflow, webhookData, activeWorkflowData, workflowStartNode, executionMode, undefined, undefined, undefined, request, response, async (error, data) => {
|
|
146
|
+
if (error !== null) {
|
|
147
|
+
return reject(error);
|
|
148
|
+
}
|
|
149
|
+
await this.workflowStaticDataService.saveStaticData(workflow);
|
|
150
|
+
resolve(data);
|
|
151
|
+
});
|
|
152
|
+
});
|
|
137
153
|
}
|
|
138
|
-
|
|
139
|
-
|
|
154
|
+
finally {
|
|
155
|
+
await workflow.expression.releaseIsolate();
|
|
140
156
|
}
|
|
141
|
-
return await new Promise((resolve, reject) => {
|
|
142
|
-
const executionMode = 'webhook';
|
|
143
|
-
void WebhookHelpers.executeWebhook(workflow, webhookData, activeWorkflowData, workflowStartNode, executionMode, undefined, undefined, undefined, request, response, async (error, data) => {
|
|
144
|
-
if (error !== null) {
|
|
145
|
-
return reject(error);
|
|
146
|
-
}
|
|
147
|
-
await this.workflowStaticDataService.saveStaticData(workflow);
|
|
148
|
-
resolve(data);
|
|
149
|
-
});
|
|
150
|
-
});
|
|
151
157
|
}
|
|
152
158
|
async findWebhook(path, httpMethod) {
|
|
153
159
|
if (path.endsWith('/')) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live-webhooks.js","sourceRoot":"","sources":["../../src/webhooks/live-webhooks.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"live-webhooks.js","sourceRoot":"","sources":["../../src/webhooks/live-webhooks.ts"],"names":[],"mappings":"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"}
|