gitextract_eip95s6_/ ├── .actrc ├── .agents/ │ └── design-system-style-rules.md ├── .claude/ │ ├── README.md │ ├── agents/ │ │ ├── n8n-developer.md │ │ └── n8n-linear-issue-triager.md │ ├── commands/ │ │ ├── n8n-plan.md │ │ └── n8n-triage.md │ ├── plugins/ │ │ └── n8n/ │ │ ├── .claude-plugin/ │ │ │ ├── marketplace.json │ │ │ └── plugin.json │ │ ├── README.md │ │ └── skills/ │ │ └── setup-mcps/ │ │ └── SKILL.md │ ├── settings.json │ └── skills/ │ ├── content-design/ │ │ └── SKILL.md │ ├── create-issue/ │ │ └── SKILL.md │ ├── create-pr/ │ │ └── SKILL.md │ ├── create-skill/ │ │ └── SKILL.md │ ├── linear-issue/ │ │ └── SKILL.md │ ├── loom-transcript/ │ │ └── SKILL.md │ ├── n8n-conventions/ │ │ └── SKILL.md │ ├── node-add-oauth/ │ │ └── SKILL.md │ ├── reproduce-bug/ │ │ └── SKILL.md │ └── spec-driven-development/ │ └── SKILL.md ├── .devcontainer/ │ ├── Dockerfile │ ├── devcontainer.json │ └── docker-compose.yml ├── .dockerignore ├── .editorconfig ├── .git-blame-ignore-revs ├── .gitattributes ├── .github/ │ ├── CI-TELEMETRY.md │ ├── CLAUDE.md │ ├── CODEOWNERS │ ├── ISSUE_TEMPLATE/ │ │ ├── 01-bug.yml │ │ └── config.yml │ ├── WORKFLOWS.md │ ├── actionlint.yml │ ├── actions/ │ │ ├── ci-filter/ │ │ │ ├── __tests__/ │ │ │ │ └── ci-filter.test.ts │ │ │ ├── action.yml │ │ │ └── ci-filter.mjs │ │ ├── docker-registry-login/ │ │ │ └── action.yml │ │ └── setup-nodejs/ │ │ └── action.yml │ ├── claude-templates/ │ │ ├── e2e-test.md │ │ └── security-fix.md │ ├── docker-compose.yml │ ├── poutine-rules/ │ │ └── unpinned_action.rego │ ├── pull_request_template.md │ ├── pull_request_title_conventions.md │ ├── scripts/ │ │ ├── bump-versions.mjs │ │ ├── claude-task/ │ │ │ ├── prepare-claude-prompt.mjs │ │ │ └── resume-callback.mjs │ │ ├── cleanup-ghcr-images.mjs │ │ ├── cleanup-release-branch.mjs │ │ ├── cleanup-release-branch.test.mjs │ │ ├── compute-backport-targets.mjs │ │ ├── compute-backport-targets.test.mjs │ │ ├── create-github-release.mjs │ │ ├── detect-new-packages.mjs │ │ ├── determine-release-candidate-branch-for-track.mjs │ │ ├── determine-release-version-changes.mjs │ │ ├── determine-release-version-changes.test.mjs │ │ ├── determine-version-info.mjs │ │ ├── determine-version-info.test.mjs │ │ ├── docker/ │ │ │ ├── docker-config.mjs │ │ │ ├── docker-tags.mjs │ │ │ └── get-manifest-digests.mjs │ │ ├── ensure-provenance-fields.mjs │ │ ├── ensure-release-candidate-branches.mjs │ │ ├── ensure-release-candidate-branches.test.mjs │ │ ├── fixtures/ │ │ │ └── mock-github-event.json │ │ ├── get-release-versions.mjs │ │ ├── github-helpers.mjs │ │ ├── jsconfig.json │ │ ├── move-track-tag.mjs │ │ ├── package.json │ │ ├── plan-release.mjs │ │ ├── populate-cloud-databases.mjs │ │ ├── promote-github-release.mjs │ │ ├── retry.mjs │ │ ├── send-build-stats.mjs │ │ ├── send-docker-stats.mjs │ │ ├── send-metrics.mjs │ │ ├── send-version-release-notification.mjs │ │ ├── trim-fe-packageJson.js │ │ └── update-changelog.mjs │ ├── test-metrics/ │ │ └── playwright.json │ └── workflows/ │ ├── backport.yml │ ├── build-base-image.yml │ ├── build-benchmark-image.yml │ ├── build-windows.yml │ ├── ci-check-pr-title.yml │ ├── ci-check-release-from-fork.yml │ ├── ci-detect-new-packages.yml │ ├── ci-master.yml │ ├── ci-pull-requests.yml │ ├── ci-python.yml │ ├── ci-restrict-private-merges.yml │ ├── docker-build-push.yml │ ├── docker-build-smoke.yml │ ├── release-create-github-releases.yml │ ├── release-create-minor-pr.yml │ ├── release-create-patch-pr.yml │ ├── release-create-pr.yml │ ├── release-merge-tag-to-branch.yml │ ├── release-populate-cloud-with-releases.yml │ ├── release-promote-github-release.yml │ ├── release-publish-new-package.yml │ ├── release-publish-post-release.yml │ ├── release-publish.yml │ ├── release-push-to-channel.yml │ ├── release-schedule-patch-prs.yml │ ├── release-standalone-package.yml │ ├── release-update-pointer-tag.yml │ ├── release-version-release-notification.yml │ ├── sbom-generation-callable.yml │ ├── sec-ci-reusable.yml │ ├── sec-poutine-reusable.yml │ ├── sec-publish-fix-1x.yml │ ├── sec-publish-fix.yml │ ├── sec-sync-public-to-private.yml │ ├── security-trivy-scan-callable.yml │ ├── test-bench-reusable.yml │ ├── test-benchmark-destroy-nightly.yml │ ├── test-benchmark-nightly.yml │ ├── test-db-reusable.yml │ ├── test-e2e-ci-reusable.yml │ ├── test-e2e-coverage-weekly.yml │ ├── test-e2e-docker-pull-reusable.yml │ ├── test-e2e-helm.yml │ ├── test-e2e-infrastructure-reusable.yml │ ├── test-e2e-performance-reusable.yml │ ├── test-e2e-reusable.yml │ ├── test-evals-ai-release.yml │ ├── test-evals-ai-reusable.yml │ ├── test-evals-ai.yml │ ├── test-evals-python.yml │ ├── test-linting-reusable.yml │ ├── test-unit-reusable.yml │ ├── test-visual-chromatic.yml │ ├── test-visual-storybook.yml │ ├── test-workflow-scripts-reusable.yml │ ├── test-workflows-callable.yml │ ├── test-workflows-nightly.yml │ ├── test-workflows-pr-comment.yml │ ├── util-approve-and-set-automerge.yml │ ├── util-backport-bundle.yml │ ├── util-claude-task.yml │ ├── util-claude.yml │ ├── util-cleanup-abandoned-release-branches.yml │ ├── util-cleanup-pr-images.yml │ ├── util-data-tooling.yml │ ├── util-determine-current-version.yml │ ├── util-ensure-release-candidate-branches.yml │ ├── util-notify-pr-status.yml │ ├── util-sync-api-docs.yml │ └── util-update-node-popularity.yml ├── .gitignore ├── .npmignore ├── .npmrc ├── .poutine.yml ├── .prettierignore ├── .prettierrc.js ├── .vscode/ │ ├── extensions.json │ └── settings.default.json ├── AGENTS.md ├── CHANGELOG.md ├── CLAUDE.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── CONTRIBUTOR_LICENSE_AGREEMENT.md ├── LICENSE.md ├── LICENSE_EE.md ├── README.md ├── SECURITY.md ├── biome.jsonc ├── codecov.yml ├── cubic.yaml ├── docker/ │ └── images/ │ ├── n8n/ │ │ ├── Dockerfile │ │ ├── README.md │ │ └── docker-entrypoint.sh │ ├── n8n-base/ │ │ └── Dockerfile │ └── runners/ │ ├── Dockerfile │ ├── Dockerfile.distroless │ ├── README.md │ └── n8n-task-runners.json ├── jest.config.js ├── lefthook.yml ├── package.json ├── packages/ │ ├── @n8n/ │ │ ├── agents/ │ │ │ ├── AGENTS.md │ │ │ ├── docs/ │ │ │ │ └── agent-runtime-architecture.md │ │ │ ├── eslint.config.mjs │ │ │ ├── examples/ │ │ │ │ └── basic-agent.ts │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── agent-runtime.test.ts │ │ │ │ │ ├── event-bus.test.ts │ │ │ │ │ ├── fixtures/ │ │ │ │ │ │ └── mcp-stdio-server.mjs │ │ │ │ │ ├── inmemory-working-memory.test.ts │ │ │ │ │ ├── integration/ │ │ │ │ │ │ ├── batched-tool-execution.test.ts │ │ │ │ │ │ ├── concurrent-tool-execution.test.ts │ │ │ │ │ │ ├── custom-message-suspend-resume.test.ts │ │ │ │ │ │ ├── evaluate.test.ts │ │ │ │ │ │ ├── events-and-abort.test.ts │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ ├── json-schema-validation.test.ts │ │ │ │ │ │ ├── mcp-connection.test.ts │ │ │ │ │ │ ├── mcp-runtime.test.ts │ │ │ │ │ │ ├── mcp-server-helpers.ts │ │ │ │ │ │ ├── mcp-sse-transport.test.ts │ │ │ │ │ │ ├── mcp-stdio-transport.test.ts │ │ │ │ │ │ ├── mcp-streamable-http-transport.test.ts │ │ │ │ │ │ ├── memory/ │ │ │ │ │ │ │ ├── memory-custom-backend.test.ts │ │ │ │ │ │ │ ├── memory-freeform.test.ts │ │ │ │ │ │ │ ├── memory-postgres.test.ts │ │ │ │ │ │ │ ├── memory-semantic.test.ts │ │ │ │ │ │ │ ├── memory-sqlite.test.ts │ │ │ │ │ │ │ ├── memory-structured.test.ts │ │ │ │ │ │ │ └── memory.test.ts │ │ │ │ │ │ ├── multi-tool-calls.test.ts │ │ │ │ │ │ ├── multimodal.test.ts │ │ │ │ │ │ ├── orphaned-tool-messages.test.ts │ │ │ │ │ │ ├── provider-metadata.test.ts │ │ │ │ │ │ ├── provider-options.test.ts │ │ │ │ │ │ ├── provider-tools.test.ts │ │ │ │ │ │ ├── state-restore-after-suspension.test.ts │ │ │ │ │ │ ├── stream-timing.test.ts │ │ │ │ │ │ ├── structured-output.test.ts │ │ │ │ │ │ ├── sub-agent.test.ts │ │ │ │ │ │ ├── telemetry-langsmith.test.ts │ │ │ │ │ │ ├── thinking.test.ts │ │ │ │ │ │ ├── title-generation.test.ts │ │ │ │ │ │ ├── to-model-output.test.ts │ │ │ │ │ │ ├── token-usage.test.ts │ │ │ │ │ │ ├── tool-error-handling.test.ts │ │ │ │ │ │ ├── tool-interrupt.test.ts │ │ │ │ │ │ ├── tool-result-to-message.test.ts │ │ │ │ │ │ ├── usage.test.ts │ │ │ │ │ │ ├── workspace/ │ │ │ │ │ │ │ └── workspace-agent.test.ts │ │ │ │ │ │ └── zod-validation-error.test.ts │ │ │ │ │ ├── model-factory.test.ts │ │ │ │ │ ├── sqlite-memory.test.ts │ │ │ │ │ ├── strip-orphaned-tool-messages.test.ts │ │ │ │ │ ├── telemetry.test.ts │ │ │ │ │ ├── tool-adapter.test.ts │ │ │ │ │ ├── tool.test.ts │ │ │ │ │ ├── working-memory.test.ts │ │ │ │ │ └── workspace/ │ │ │ │ │ ├── base-filesystem.test.ts │ │ │ │ │ ├── base-sandbox.test.ts │ │ │ │ │ ├── lifecycle.test.ts │ │ │ │ │ ├── test-utils.ts │ │ │ │ │ ├── workspace-integration.test.ts │ │ │ │ │ ├── workspace-tools.test.ts │ │ │ │ │ └── workspace.test.ts │ │ │ │ ├── evals/ │ │ │ │ │ ├── categorization.ts │ │ │ │ │ ├── contains-keywords.ts │ │ │ │ │ ├── correctness.ts │ │ │ │ │ ├── helpfulness.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── json-validity.ts │ │ │ │ │ ├── parse-judge-response.ts │ │ │ │ │ ├── string-similarity.ts │ │ │ │ │ └── tool-call-accuracy.ts │ │ │ │ ├── index.ts │ │ │ │ ├── integrations/ │ │ │ │ │ └── langsmith.ts │ │ │ │ ├── runtime/ │ │ │ │ │ ├── agent-runtime.ts │ │ │ │ │ ├── event-bus.ts │ │ │ │ │ ├── logger.ts │ │ │ │ │ ├── mcp-connection.ts │ │ │ │ │ ├── mcp-tool-resolver.ts │ │ │ │ │ ├── memory-store.ts │ │ │ │ │ ├── message-list.ts │ │ │ │ │ ├── messages.ts │ │ │ │ │ ├── model-factory.ts │ │ │ │ │ ├── run-state.ts │ │ │ │ │ ├── runtime-helpers.ts │ │ │ │ │ ├── stream.ts │ │ │ │ │ ├── strip-orphaned-tool-messages.ts │ │ │ │ │ ├── title-generation.ts │ │ │ │ │ ├── tool-adapter.ts │ │ │ │ │ └── working-memory.ts │ │ │ │ ├── sdk/ │ │ │ │ │ ├── agent.ts │ │ │ │ │ ├── catalog.ts │ │ │ │ │ ├── eval.ts │ │ │ │ │ ├── evaluate.ts │ │ │ │ │ ├── guardrail.ts │ │ │ │ │ ├── mcp-client.ts │ │ │ │ │ ├── memory.ts │ │ │ │ │ ├── message.ts │ │ │ │ │ ├── network.ts │ │ │ │ │ ├── provider-tools.ts │ │ │ │ │ ├── telemetry.ts │ │ │ │ │ ├── tool.ts │ │ │ │ │ └── verify.ts │ │ │ │ ├── storage/ │ │ │ │ │ ├── postgres-memory.ts │ │ │ │ │ └── sqlite-memory.ts │ │ │ │ ├── types/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── runtime/ │ │ │ │ │ │ ├── event.ts │ │ │ │ │ │ └── message-list.ts │ │ │ │ │ ├── sdk/ │ │ │ │ │ │ ├── agent.ts │ │ │ │ │ │ ├── eval.ts │ │ │ │ │ │ ├── guardrail.ts │ │ │ │ │ │ ├── mcp.ts │ │ │ │ │ │ ├── memory.ts │ │ │ │ │ │ ├── message.ts │ │ │ │ │ │ ├── provider.ts │ │ │ │ │ │ └── tool.ts │ │ │ │ │ ├── telemetry.ts │ │ │ │ │ └── utils/ │ │ │ │ │ └── json.ts │ │ │ │ ├── utils/ │ │ │ │ │ └── zod.ts │ │ │ │ └── workspace/ │ │ │ │ ├── filesystem/ │ │ │ │ │ └── base-filesystem.ts │ │ │ │ ├── index.ts │ │ │ │ ├── lifecycle.ts │ │ │ │ ├── process.ts │ │ │ │ ├── sandbox/ │ │ │ │ │ └── base-sandbox.ts │ │ │ │ ├── tools/ │ │ │ │ │ ├── append-file.ts │ │ │ │ │ ├── copy-file.ts │ │ │ │ │ ├── delete-file.ts │ │ │ │ │ ├── execute-command.ts │ │ │ │ │ ├── file-stat.ts │ │ │ │ │ ├── list-files.ts │ │ │ │ │ ├── mkdir.ts │ │ │ │ │ ├── move-file.ts │ │ │ │ │ ├── process-tools.ts │ │ │ │ │ ├── read-file.ts │ │ │ │ │ ├── rmdir.ts │ │ │ │ │ ├── workspace-tools.ts │ │ │ │ │ └── write-file.ts │ │ │ │ ├── types.ts │ │ │ │ └── workspace.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── vitest.integration.config.mjs │ │ ├── ai-node-sdk/ │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ └── index.ts │ │ │ ├── tsconfig.build.cjs.json │ │ │ ├── tsconfig.build.esm.json │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── ai-utilities/ │ │ │ ├── .editorconfig │ │ │ ├── .gitignore │ │ │ ├── .npmignore │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── integration-tests/ │ │ │ │ ├── openai.fixtures.ts │ │ │ │ ├── openai.test.ts │ │ │ │ └── openai.ts │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── scripts/ │ │ │ │ └── copy-tokenizer-json.js │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── adapters/ │ │ │ │ │ │ ├── langchain-chat-model.test.ts │ │ │ │ │ │ ├── langchain-history-adapter.test.ts │ │ │ │ │ │ └── langchain-memory-adapter.test.ts │ │ │ │ │ ├── converters/ │ │ │ │ │ │ ├── message-roundtrip.test.ts │ │ │ │ │ │ └── tool.test.ts │ │ │ │ │ ├── memory/ │ │ │ │ │ │ └── windowed-chat-memory.test.ts │ │ │ │ │ ├── suppliers/ │ │ │ │ │ │ └── supplyModel.test.ts │ │ │ │ │ └── utils/ │ │ │ │ │ ├── embeddings-input-validation.test.ts │ │ │ │ │ ├── failed-attempt-handler/ │ │ │ │ │ │ ├── n8nDefaultFailedAttemptHandler.test.ts │ │ │ │ │ │ └── n8nLlmFailedAttemptHandler.test.ts │ │ │ │ │ ├── fromai-tool-factory.test.ts │ │ │ │ │ ├── helpers.test.ts │ │ │ │ │ ├── http-proxy-agent.test.ts │ │ │ │ │ ├── log-ai-event.test.ts │ │ │ │ │ ├── n8n-binary-loader.test.ts │ │ │ │ │ ├── n8n-json-loader.test.ts │ │ │ │ │ ├── n8n-llm-tracing.test.ts │ │ │ │ │ ├── sse.test.ts │ │ │ │ │ └── tokenizer/ │ │ │ │ │ ├── tiktoken.test.ts │ │ │ │ │ └── token-estimator.test.ts │ │ │ │ ├── adapters/ │ │ │ │ │ ├── langchain-chat-model.ts │ │ │ │ │ ├── langchain-history.ts │ │ │ │ │ └── langchain-memory.ts │ │ │ │ ├── ai-node-sdk-version.ts │ │ │ │ ├── chat-model/ │ │ │ │ │ └── base.ts │ │ │ │ ├── converters/ │ │ │ │ │ ├── message.ts │ │ │ │ │ └── tool.ts │ │ │ │ ├── guards.ts │ │ │ │ ├── index.ts │ │ │ │ ├── memory/ │ │ │ │ │ ├── base-chat-history.ts │ │ │ │ │ ├── base-chat-memory.ts │ │ │ │ │ └── windowed-chat-memory.ts │ │ │ │ ├── suppliers/ │ │ │ │ │ ├── supplyMemory.ts │ │ │ │ │ └── supplyModel.ts │ │ │ │ ├── types/ │ │ │ │ │ ├── chat-model.ts │ │ │ │ │ ├── json.ts │ │ │ │ │ ├── memory.ts │ │ │ │ │ ├── message.ts │ │ │ │ │ ├── openai.ts │ │ │ │ │ ├── output.ts │ │ │ │ │ └── tool.ts │ │ │ │ └── utils/ │ │ │ │ ├── embeddings-input-validation.ts │ │ │ │ ├── failed-attempt-handler/ │ │ │ │ │ ├── n8nDefaultFailedAttemptHandler.ts │ │ │ │ │ └── n8nLlmFailedAttemptHandler.ts │ │ │ │ ├── fromai-tool-factory.ts │ │ │ │ ├── helpers.ts │ │ │ │ ├── http-proxy-agent.ts │ │ │ │ ├── log-ai-event.ts │ │ │ │ ├── log-wrapper.ts │ │ │ │ ├── n8n-binary-loader.ts │ │ │ │ ├── n8n-json-loader.ts │ │ │ │ ├── n8n-llm-tracing.ts │ │ │ │ ├── shared-fields.ts │ │ │ │ ├── sse.ts │ │ │ │ ├── tokenizer/ │ │ │ │ │ ├── cl100k_base.json │ │ │ │ │ ├── o200k_base.json │ │ │ │ │ ├── tiktoken.ts │ │ │ │ │ └── token-estimator.ts │ │ │ │ └── vector-store/ │ │ │ │ ├── MemoryManager/ │ │ │ │ │ ├── MemoryCalculator.ts │ │ │ │ │ ├── MemoryVectorStoreManager.ts │ │ │ │ │ ├── StoreCleanupService.ts │ │ │ │ │ ├── config.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── MemoryCalculator.test.ts │ │ │ │ │ │ ├── MemoryVectorStoreManager.test.ts │ │ │ │ │ │ ├── StoreCleanupService.test.ts │ │ │ │ │ │ └── config.test.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── createVectorStoreNode/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ └── createVectorStoreNode.test.ts.snap │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── createVectorStoreNode.test.ts │ │ │ │ │ ├── createVectorStoreNode.ts │ │ │ │ │ ├── operations/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── insertOperation.test.ts │ │ │ │ │ │ │ ├── loadOperation.test.ts │ │ │ │ │ │ │ ├── operationHandlers.test.ts │ │ │ │ │ │ │ ├── retrieveAsToolExecuteOperation.test.ts │ │ │ │ │ │ │ ├── retrieveAsToolOperation.test.ts │ │ │ │ │ │ │ ├── retrieveOperation.test.ts │ │ │ │ │ │ │ └── updateOperation.test.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── insertOperation.ts │ │ │ │ │ │ ├── loadOperation.ts │ │ │ │ │ │ ├── retrieveAsToolExecuteOperation.ts │ │ │ │ │ │ ├── retrieveAsToolOperation.ts │ │ │ │ │ │ ├── retrieveOperation.ts │ │ │ │ │ │ └── updateOperation.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── processDocuments.ts │ │ │ ├── tsconfig.build.cjs.json │ │ │ ├── tsconfig.build.esm.json │ │ │ └── tsconfig.json │ │ ├── ai-workflow-builder.ee/ │ │ │ ├── .gitignore │ │ │ ├── .madgerc │ │ │ ├── AGENTS.md │ │ │ ├── CLAUDE.md │ │ │ ├── eslint.config.mjs │ │ │ ├── evaluations/ │ │ │ │ ├── README.md │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── argument-parser.test.ts │ │ │ │ │ ├── cli.test.ts │ │ │ │ │ ├── csv-prompt-loader.test.ts │ │ │ │ │ ├── evaluation-helpers.test.ts │ │ │ │ │ ├── evaluators/ │ │ │ │ │ │ ├── llm-judge.test.ts │ │ │ │ │ │ ├── pairwise.test.ts │ │ │ │ │ │ ├── programmatic.test.ts │ │ │ │ │ │ ├── response-matches-workflow-changes.test.ts │ │ │ │ │ │ └── similarity.test.ts │ │ │ │ │ ├── feedback.test.ts │ │ │ │ │ ├── lifecycle.test.ts │ │ │ │ │ ├── output.test.ts │ │ │ │ │ ├── report-generator.test.ts │ │ │ │ │ ├── runner-langsmith.test.ts │ │ │ │ │ ├── runner.test.ts │ │ │ │ │ ├── score-calculator.test.ts │ │ │ │ │ ├── test-case-generator.test.ts │ │ │ │ │ ├── trace-filters.test.ts │ │ │ │ │ └── webhook.test.ts │ │ │ │ ├── cli/ │ │ │ │ │ ├── argument-parser.ts │ │ │ │ │ ├── ci-metadata.ts │ │ │ │ │ ├── csv-prompt-loader.ts │ │ │ │ │ ├── dataset-file-loader.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── webhook.ts │ │ │ │ ├── errors.ts │ │ │ │ ├── evaluators/ │ │ │ │ │ ├── binary-checks/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── index.test.ts │ │ │ │ │ │ ├── checks/ │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ └── deterministic-checks.test.ts │ │ │ │ │ │ │ ├── all-nodes-connected.ts │ │ │ │ │ │ │ ├── create-validation-check.ts │ │ │ │ │ │ │ ├── expressions-reference-existing-nodes.ts │ │ │ │ │ │ │ ├── has-start-node.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── no-empty-set-nodes.ts │ │ │ │ │ │ │ ├── no-unnecessary-code-nodes.ts │ │ │ │ │ │ │ ├── no-unreachable-nodes.ts │ │ │ │ │ │ │ └── validation-checks.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── llm-checks/ │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ └── create-llm-check.test.ts │ │ │ │ │ │ │ ├── correct-node-operations.ts │ │ │ │ │ │ │ ├── create-llm-check.ts │ │ │ │ │ │ │ ├── descriptive-node-names.ts │ │ │ │ │ │ │ ├── fulfills-user-request.ts │ │ │ │ │ │ │ ├── handles-multiple-items.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── response-matches-workflow-changes.ts │ │ │ │ │ │ │ ├── schemas.ts │ │ │ │ │ │ │ └── valid-data-flow.ts │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── execution/ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── llm-judge/ │ │ │ │ │ │ ├── evaluation.ts │ │ │ │ │ │ ├── evaluators/ │ │ │ │ │ │ │ ├── base.ts │ │ │ │ │ │ │ ├── best-practices-evaluator.ts │ │ │ │ │ │ │ ├── connections-evaluator.ts │ │ │ │ │ │ │ ├── data-flow-evaluator.ts │ │ │ │ │ │ │ ├── efficiency-evaluator.ts │ │ │ │ │ │ │ ├── expressions-evaluator.ts │ │ │ │ │ │ │ ├── functionality-evaluator.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── maintainability-evaluator.ts │ │ │ │ │ │ │ └── node-configuration-evaluator.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── workflow-evaluator.test.ts │ │ │ │ │ │ └── workflow-evaluator.ts │ │ │ │ │ ├── pairwise/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── judge-chain.test.ts │ │ │ │ │ │ ├── judge-chain.ts │ │ │ │ │ │ ├── judge-panel.test.ts │ │ │ │ │ │ ├── judge-panel.ts │ │ │ │ │ │ └── metrics.ts │ │ │ │ │ ├── programmatic/ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── responder/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── responder-judge.prompt.ts │ │ │ │ │ └── similarity/ │ │ │ │ │ └── index.ts │ │ │ │ ├── fixtures/ │ │ │ │ │ ├── default-prompts.csv │ │ │ │ │ └── reference-workflows/ │ │ │ │ │ ├── ai-news-digest.json │ │ │ │ │ ├── daily-weather-report.json │ │ │ │ │ ├── email-summary.json │ │ │ │ │ ├── extract-from-file.json │ │ │ │ │ ├── google-sheets-processing.json │ │ │ │ │ ├── invoice-pipeline.json │ │ │ │ │ ├── lead-qualification.json │ │ │ │ │ ├── multi-agent-research.json │ │ │ │ │ ├── rag-assistant.json │ │ │ │ │ └── youtube-auto-chapters.json │ │ │ │ ├── harness/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── csv-writer.test.ts │ │ │ │ │ │ └── token-tracking-handler.test.ts │ │ │ │ │ ├── csv-writer.ts │ │ │ │ │ ├── evaluation-helpers.ts │ │ │ │ │ ├── feedback.ts │ │ │ │ │ ├── harness-types.ts │ │ │ │ │ ├── langsmith-dataset-writer.ts │ │ │ │ │ ├── lifecycle.ts │ │ │ │ │ ├── logger.ts │ │ │ │ │ ├── output.ts │ │ │ │ │ ├── runner.ts │ │ │ │ │ ├── score-calculator.ts │ │ │ │ │ ├── subgraph-evaluation-local.ts │ │ │ │ │ ├── subgraph-evaluation.ts │ │ │ │ │ ├── subgraph-runner.ts │ │ │ │ │ ├── token-tracking-handler.ts │ │ │ │ │ └── workflow-regenerator.ts │ │ │ │ ├── index.ts │ │ │ │ ├── langsmith/ │ │ │ │ │ ├── trace-filters.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── lifecycles/ │ │ │ │ │ └── introspection-analysis.ts │ │ │ │ ├── programmatic/ │ │ │ │ │ ├── evaluators/ │ │ │ │ │ │ ├── agent-prompt.test.ts │ │ │ │ │ │ ├── agent-prompt.ts │ │ │ │ │ │ ├── connections.test.ts │ │ │ │ │ │ ├── connections.ts │ │ │ │ │ │ ├── credentials.test.ts │ │ │ │ │ │ ├── credentials.ts │ │ │ │ │ │ ├── from-ai.ts │ │ │ │ │ │ ├── graph-validation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── node-usage.ts │ │ │ │ │ │ ├── nodes.test.ts │ │ │ │ │ │ ├── nodes.ts │ │ │ │ │ │ ├── parameters.test.ts │ │ │ │ │ │ ├── parameters.ts │ │ │ │ │ │ ├── tools.ts │ │ │ │ │ │ ├── trigger.test.ts │ │ │ │ │ │ ├── trigger.ts │ │ │ │ │ │ ├── workflow-similarity.test.ts │ │ │ │ │ │ └── workflow-similarity.ts │ │ │ │ │ ├── programmatic-evaluation.ts │ │ │ │ │ ├── python/ │ │ │ │ │ │ ├── CONFIGURATION.md │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── example_workflows/ │ │ │ │ │ │ │ ├── generated.json │ │ │ │ │ │ │ ├── generated_wrong.json │ │ │ │ │ │ │ ├── multi_trigger.json │ │ │ │ │ │ │ ├── multi_trigger_different_order.json │ │ │ │ │ │ │ ├── multi_trigger_missing_node.json │ │ │ │ │ │ │ └── simple_workflow.json │ │ │ │ │ │ ├── justfile │ │ │ │ │ │ ├── pyproject.toml │ │ │ │ │ │ ├── src/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── __main__.py │ │ │ │ │ │ │ ├── compare_workflows.py │ │ │ │ │ │ │ ├── config_loader.py │ │ │ │ │ │ │ ├── configs/ │ │ │ │ │ │ │ │ └── presets/ │ │ │ │ │ │ │ │ ├── lenient.yaml │ │ │ │ │ │ │ │ ├── standard.yaml │ │ │ │ │ │ │ │ └── strict.yaml │ │ │ │ │ │ │ ├── cost_functions.py │ │ │ │ │ │ │ ├── graph_builder.py │ │ │ │ │ │ │ └── similarity.py │ │ │ │ │ │ └── tests/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── test_graph_builder.py │ │ │ │ │ │ └── test_similarity.py │ │ │ │ │ └── score.ts │ │ │ │ ├── summarizers/ │ │ │ │ │ └── introspection-summarizer.ts │ │ │ │ └── support/ │ │ │ │ ├── constants.ts │ │ │ │ ├── environment.ts │ │ │ │ ├── load-nodes.test.ts │ │ │ │ ├── load-nodes.ts │ │ │ │ ├── pin-data-generator.test.ts │ │ │ │ ├── pin-data-generator.ts │ │ │ │ ├── report-generator.ts │ │ │ │ ├── test-case-generator.ts │ │ │ │ ├── workflow-executor.test.ts │ │ │ │ └── workflow-executor.ts │ │ │ ├── jest.config.integration.js │ │ │ ├── jest.config.js │ │ │ ├── jest.config.unit.js │ │ │ ├── package.json │ │ │ ├── scripts/ │ │ │ │ ├── categorize-prompts.ts │ │ │ │ └── workflow-to-mermaid.ts │ │ │ ├── src/ │ │ │ │ ├── agents/ │ │ │ │ │ ├── planner.agent.ts │ │ │ │ │ ├── responder.agent.ts │ │ │ │ │ ├── supervisor.agent.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── planner.agent.test.ts │ │ │ │ │ └── responder.agent.test.ts │ │ │ │ ├── ai-workflow-builder-agent.service.ts │ │ │ │ ├── assistant/ │ │ │ │ │ ├── assistant-handler.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ └── assistant-handler.test.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── chains/ │ │ │ │ │ ├── conversation-compact.ts │ │ │ │ │ ├── parameter-updater.ts │ │ │ │ │ ├── prompt-categorization.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── conversation-compact.test.ts │ │ │ │ │ │ └── integration/ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── prompt-categorization.integration.test.ts │ │ │ │ │ │ └── test-helpers.ts │ │ │ │ │ └── workflow-name.ts │ │ │ │ ├── code-builder/ │ │ │ │ │ ├── code-builder-agent.ts │ │ │ │ │ ├── code-workflow-builder.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── engines/ │ │ │ │ │ │ ├── code-builder-node-search-engine.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── code-builder-node-search-engine.test.ts │ │ │ │ │ ├── handlers/ │ │ │ │ │ │ ├── agent-iteration-handler.ts │ │ │ │ │ │ ├── auto-finalize-handler.ts │ │ │ │ │ │ ├── chat-setup-handler.ts │ │ │ │ │ │ ├── final-response-handler.ts │ │ │ │ │ │ ├── parse-validate-handler.ts │ │ │ │ │ │ ├── session-chat-handler.ts │ │ │ │ │ │ ├── test/ │ │ │ │ │ │ │ ├── agent-iteration-handler.test.ts │ │ │ │ │ │ │ ├── auto-finalize-handler.test.ts │ │ │ │ │ │ │ ├── chat-setup-handler.test.ts │ │ │ │ │ │ │ ├── final-response-handler.test.ts │ │ │ │ │ │ │ ├── parse-validate-handler.test.ts │ │ │ │ │ │ │ ├── session-chat-handler.test.ts │ │ │ │ │ │ │ ├── text-editor-handler.test.ts │ │ │ │ │ │ │ ├── text-editor-tool-handler.test.ts │ │ │ │ │ │ │ ├── tool-dispatch-handler.test.ts │ │ │ │ │ │ │ └── validate-tool-handler.test.ts │ │ │ │ │ │ ├── text-editor-handler.ts │ │ │ │ │ │ ├── text-editor-tool-handler.ts │ │ │ │ │ │ ├── text-editor.types.ts │ │ │ │ │ │ ├── tool-dispatch-handler.ts │ │ │ │ │ │ └── validate-tool-handler.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── prompts/ │ │ │ │ │ │ ├── index.test.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── state/ │ │ │ │ │ │ ├── test/ │ │ │ │ │ │ │ └── warning-tracker.test.ts │ │ │ │ │ │ └── warning-tracker.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── code-builder-agent-pre-validate.test.ts │ │ │ │ │ │ ├── code-builder-agent-tracing.test.ts │ │ │ │ │ │ ├── code-builder-agent-validate-loop.test.ts │ │ │ │ │ │ ├── code-workflow-builder-integration.test.ts │ │ │ │ │ │ ├── code-workflow-builder.test.ts │ │ │ │ │ │ ├── constants.test.ts │ │ │ │ │ │ └── triage.agent.test.ts │ │ │ │ │ ├── tools/ │ │ │ │ │ │ ├── ask-assistant.tool.ts │ │ │ │ │ │ ├── build-workflow.tool.ts │ │ │ │ │ │ ├── code-builder-get.tool.ts │ │ │ │ │ │ ├── code-builder-search.tool.ts │ │ │ │ │ │ ├── get-suggested-nodes.tool.ts │ │ │ │ │ │ ├── suggested-nodes-data.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ ├── code-builder-get.tool.test.ts │ │ │ │ │ │ ├── code-builder-search.tool.test.ts │ │ │ │ │ │ └── get-suggested-nodes.tool.test.ts │ │ │ │ │ ├── triage.agent.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils/ │ │ │ │ │ ├── code-builder-session.ts │ │ │ │ │ ├── content-extractors.ts │ │ │ │ │ ├── discriminator-utils.ts │ │ │ │ │ ├── extract-code.ts │ │ │ │ │ ├── format-warnings.ts │ │ │ │ │ ├── llm-response-processor.ts │ │ │ │ │ ├── node-diff.ts │ │ │ │ │ ├── node-type-parser.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── code-builder-session.test.ts │ │ │ │ │ ├── content-extractors.test.ts │ │ │ │ │ ├── discriminator-utils.test.ts │ │ │ │ │ ├── extract-code.test.ts │ │ │ │ │ ├── format-warnings.test.ts │ │ │ │ │ ├── llm-response-processor.test.ts │ │ │ │ │ ├── node-diff.test.ts │ │ │ │ │ └── node-type-parser.test.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── errors/ │ │ │ │ │ └── index.ts │ │ │ │ ├── index.ts │ │ │ │ ├── llm-config.ts │ │ │ │ ├── multi-agent-workflow-subgraphs.ts │ │ │ │ ├── parent-graph-state.ts │ │ │ │ ├── prompts/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── agents/ │ │ │ │ │ │ ├── builder.prompt.ts │ │ │ │ │ │ ├── discovery.prompt.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── planner.prompt.ts │ │ │ │ │ │ ├── responder.prompt.test.ts │ │ │ │ │ │ ├── responder.prompt.ts │ │ │ │ │ │ └── supervisor.prompt.ts │ │ │ │ │ ├── builder/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── prompt-builder.test.ts │ │ │ │ │ │ ├── prompt-builder.ts │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── chains/ │ │ │ │ │ │ ├── categorization.prompt.ts │ │ │ │ │ │ ├── compact.prompt.ts │ │ │ │ │ │ ├── parameter-updater/ │ │ │ │ │ │ │ ├── examples/ │ │ │ │ │ │ │ │ ├── if-node.ts │ │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ │ ├── resource-locator.ts │ │ │ │ │ │ │ │ ├── set-node.ts │ │ │ │ │ │ │ │ ├── simple-updates.ts │ │ │ │ │ │ │ │ ├── switch-node.ts │ │ │ │ │ │ │ │ └── tool-nodes.ts │ │ │ │ │ │ │ ├── guides/ │ │ │ │ │ │ │ │ ├── embedding-nodes.ts │ │ │ │ │ │ │ │ ├── gmail.ts │ │ │ │ │ │ │ │ ├── http-request.ts │ │ │ │ │ │ │ │ ├── if-node.ts │ │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ │ ├── predecessor-output.ts │ │ │ │ │ │ │ │ ├── resource-locator.ts │ │ │ │ │ │ │ │ ├── set-node.ts │ │ │ │ │ │ │ │ ├── switch-node.ts │ │ │ │ │ │ │ │ ├── system-message.ts │ │ │ │ │ │ │ │ ├── text-fields.ts │ │ │ │ │ │ │ │ └── tool-nodes.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── instance-url.ts │ │ │ │ │ │ │ ├── parameter-updater.prompt.ts │ │ │ │ │ │ │ ├── registry.test.ts │ │ │ │ │ │ │ ├── registry.ts │ │ │ │ │ │ │ ├── test/ │ │ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ └── workflow-name.prompt.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── shared/ │ │ │ │ │ ├── deictic-resolution.test.ts │ │ │ │ │ ├── deictic-resolution.ts │ │ │ │ │ ├── node-guidance/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── structured-output-parser.ts │ │ │ │ │ │ └── webhook.ts │ │ │ │ │ └── node-recommendations/ │ │ │ │ │ ├── audio-generation.ts │ │ │ │ │ ├── image-generation.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── text-manipulation.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ └── format-recommendation.ts │ │ │ │ │ └── video-generation.ts │ │ │ │ ├── session-manager.service.ts │ │ │ │ ├── shared/ │ │ │ │ │ └── code-builder-and-mcp-prompt-constants.ts │ │ │ │ ├── subgraphs/ │ │ │ │ │ ├── builder.subgraph.ts │ │ │ │ │ ├── discovery.subgraph.ts │ │ │ │ │ ├── subgraph-interface.ts │ │ │ │ │ └── test/ │ │ │ │ │ └── integration/ │ │ │ │ │ ├── discovery-subgraph.integration.test.ts │ │ │ │ │ ├── multi-agent-error-handling.integration.test.ts │ │ │ │ │ ├── plan-mode-discovery.integration.test.ts │ │ │ │ │ ├── question-quality.integration.test.ts │ │ │ │ │ ├── responder-limitations.integration.test.ts │ │ │ │ │ └── techniques.json │ │ │ │ ├── test/ │ │ │ │ │ ├── ai-workflow-builder-agent.service.test.ts │ │ │ │ │ ├── checkpoint-persistence.test.ts │ │ │ │ │ ├── session-manager.service.test.ts │ │ │ │ │ ├── workflow-builder-agent.test.ts │ │ │ │ │ └── workflow-state.test.ts │ │ │ │ ├── tools/ │ │ │ │ │ ├── add-node.tool.ts │ │ │ │ │ ├── best-practices/ │ │ │ │ │ │ ├── chatbot.ts │ │ │ │ │ │ ├── content-generation.ts │ │ │ │ │ │ ├── data-analysis.ts │ │ │ │ │ │ ├── data-extraction.ts │ │ │ │ │ │ ├── data-persistence.ts │ │ │ │ │ │ ├── data-transformation.ts │ │ │ │ │ │ ├── document-processing.ts │ │ │ │ │ │ ├── enrichment.ts │ │ │ │ │ │ ├── form-input.ts │ │ │ │ │ │ ├── human-in-the-loop.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── knowledge-base.ts │ │ │ │ │ │ ├── monitoring.ts │ │ │ │ │ │ ├── notification.ts │ │ │ │ │ │ ├── scheduling.ts │ │ │ │ │ │ ├── scraping-and-research.ts │ │ │ │ │ │ └── triage.ts │ │ │ │ │ ├── builder-tools.ts │ │ │ │ │ ├── connect-nodes.tool.ts │ │ │ │ │ ├── engines/ │ │ │ │ │ │ ├── node-search-engine.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── node-search-engine.test.ts │ │ │ │ │ ├── get-documentation.tool.ts │ │ │ │ │ ├── get-execution-logs.tool.ts │ │ │ │ │ ├── get-execution-schema.tool.ts │ │ │ │ │ ├── get-expression-data-mapping.tool.ts │ │ │ │ │ ├── get-node-context.tool.ts │ │ │ │ │ ├── get-node-examples.tool.ts │ │ │ │ │ ├── get-node-parameter.tool.ts │ │ │ │ │ ├── get-resource-locator-options.tool.ts │ │ │ │ │ ├── get-workflow-examples.tool.ts │ │ │ │ │ ├── get-workflow-overview.tool.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── progress.ts │ │ │ │ │ │ ├── response.ts │ │ │ │ │ │ ├── state.ts │ │ │ │ │ │ ├── test/ │ │ │ │ │ │ │ └── progress.test.ts │ │ │ │ │ │ └── validation.ts │ │ │ │ │ ├── introspect.tool.ts │ │ │ │ │ ├── node-details.tool.ts │ │ │ │ │ ├── node-search.tool.ts │ │ │ │ │ ├── remove-connection.tool.ts │ │ │ │ │ ├── remove-node.tool.ts │ │ │ │ │ ├── rename-node.tool.ts │ │ │ │ │ ├── submit-questions.tool.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── add-node.tool.test.ts │ │ │ │ │ │ ├── builder-tools.test.ts │ │ │ │ │ │ ├── connect-nodes.tool.test.ts │ │ │ │ │ │ ├── get-documentation.tool.test.ts │ │ │ │ │ │ ├── get-execution-logs.tool.test.ts │ │ │ │ │ │ ├── get-execution-schema.tool.test.ts │ │ │ │ │ │ ├── get-expression-data-mapping.tool.test.ts │ │ │ │ │ │ ├── get-node-context.tool.test.ts │ │ │ │ │ │ ├── get-node-examples.tool.test.ts │ │ │ │ │ │ ├── get-resource-locator-options.tool.test.ts │ │ │ │ │ │ ├── get-workflow-examples.tool.test.ts │ │ │ │ │ │ ├── get-workflow-overview.tool.test.ts │ │ │ │ │ │ ├── introspect.tool.test.ts │ │ │ │ │ │ ├── node-details.tool.test.ts │ │ │ │ │ │ ├── node-search.tool.test.ts │ │ │ │ │ │ ├── remove-connection.tool.test.ts │ │ │ │ │ │ ├── remove-node.tool.test.ts │ │ │ │ │ │ ├── rename-node.tool.test.ts │ │ │ │ │ │ ├── submit-questions.tool.test.ts │ │ │ │ │ │ ├── update-node-parameters.tool.test.ts │ │ │ │ │ │ ├── validate-configuration.tool.test.ts │ │ │ │ │ │ ├── validate-structure.tool.test.ts │ │ │ │ │ │ ├── web-fetch-security.test.ts │ │ │ │ │ │ └── web-fetch.tool.test.ts │ │ │ │ │ ├── update-node-parameters.tool.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ ├── allowed-domains.ts │ │ │ │ │ │ ├── connection-parameters.utils.ts │ │ │ │ │ │ ├── connection.utils.ts │ │ │ │ │ │ ├── mermaid.utils.ts │ │ │ │ │ │ ├── node-configuration.utils.ts │ │ │ │ │ │ ├── node-creation.utils.ts │ │ │ │ │ │ ├── node-positioning.utils.ts │ │ │ │ │ │ ├── parameter-update.utils.ts │ │ │ │ │ │ ├── test/ │ │ │ │ │ │ │ ├── connection.utils.test.ts │ │ │ │ │ │ │ ├── mermaid.utils.test.ts │ │ │ │ │ │ │ ├── parameter-update.utils.test.ts │ │ │ │ │ │ │ ├── web-fetch.utils.test.ts │ │ │ │ │ │ │ └── workflows/ │ │ │ │ │ │ │ └── ai-assistant.workflow.ts │ │ │ │ │ │ ├── web-fetch-security.ts │ │ │ │ │ │ └── web-fetch.utils.ts │ │ │ │ │ ├── validate-configuration.tool.ts │ │ │ │ │ ├── validate-structure.tool.ts │ │ │ │ │ ├── web/ │ │ │ │ │ │ ├── templates.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── integration/ │ │ │ │ │ │ └── templates.integration.test.ts │ │ │ │ │ └── web-fetch.tool.ts │ │ │ │ ├── types/ │ │ │ │ │ ├── best-practices.ts │ │ │ │ │ ├── callbacks.ts │ │ │ │ │ ├── categorization.ts │ │ │ │ │ ├── config.ts │ │ │ │ │ ├── connections.ts │ │ │ │ │ ├── coordination.ts │ │ │ │ │ ├── discovery-types.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── langchain.ts │ │ │ │ │ ├── messages.ts │ │ │ │ │ ├── node-guidance.ts │ │ │ │ │ ├── node-recommendations.ts │ │ │ │ │ ├── nodes.ts │ │ │ │ │ ├── planning.ts │ │ │ │ │ ├── session-storage.ts │ │ │ │ │ ├── sessions.ts │ │ │ │ │ ├── streaming.ts │ │ │ │ │ ├── tools.ts │ │ │ │ │ ├── utils.ts │ │ │ │ │ ├── web/ │ │ │ │ │ │ └── templates.ts │ │ │ │ │ └── workflow.ts │ │ │ │ ├── utils/ │ │ │ │ │ ├── cache-control/ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── helpers.test.ts │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── cleanup-dangling-tool-call-messages.ts │ │ │ │ │ ├── context-builders.ts │ │ │ │ │ ├── coordination-log.ts │ │ │ │ │ ├── data-table-helpers.ts │ │ │ │ │ ├── error-sanitizer.ts │ │ │ │ │ ├── http-proxy-agent.ts │ │ │ │ │ ├── node-helpers.ts │ │ │ │ │ ├── operations-processor.ts │ │ │ │ │ ├── plan-helpers.ts │ │ │ │ │ ├── resource-operation-extractor.ts │ │ │ │ │ ├── rlc-prefetch.ts │ │ │ │ │ ├── state-modifier.ts │ │ │ │ │ ├── state-reducers.ts │ │ │ │ │ ├── stream-processor.ts │ │ │ │ │ ├── subgraph-helpers.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── cleanup-dangling-tool-call-messages.test.ts │ │ │ │ │ │ ├── context-builders.test.ts │ │ │ │ │ │ ├── coordination-log.test.ts │ │ │ │ │ │ ├── data-table-helpers.test.ts │ │ │ │ │ │ ├── error-sanitizer.test.ts │ │ │ │ │ │ ├── operations-processor.test.ts │ │ │ │ │ │ ├── plan-helpers.test.ts │ │ │ │ │ │ ├── resource-operation-extractor.test.ts │ │ │ │ │ │ ├── state-modifier.test.ts │ │ │ │ │ │ ├── stream-processor.test.ts │ │ │ │ │ │ ├── subgraph-helpers.test.ts │ │ │ │ │ │ ├── tool-executor.test.ts │ │ │ │ │ │ ├── trim-workflow-context.test.ts │ │ │ │ │ │ └── truncate-json.test.ts │ │ │ │ │ ├── thread-id.ts │ │ │ │ │ ├── token-usage-tracking-handler.ts │ │ │ │ │ ├── token-usage.ts │ │ │ │ │ ├── tool-executor.ts │ │ │ │ │ ├── trim-workflow-context.ts │ │ │ │ │ └── truncate-json.ts │ │ │ │ ├── validation/ │ │ │ │ │ ├── auto-fix/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── auto-fix-connections.test.ts │ │ │ │ │ │ ├── auto-fix-connections.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── checks/ │ │ │ │ │ │ ├── agent-prompt.ts │ │ │ │ │ │ ├── connections.test.ts │ │ │ │ │ │ ├── connections.ts │ │ │ │ │ │ ├── credentials.ts │ │ │ │ │ │ ├── from-ai.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── node-usage/ │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── webhook-response.test.ts │ │ │ │ │ │ │ └── webhook-response.ts │ │ │ │ │ │ ├── nodes.ts │ │ │ │ │ │ ├── parameters.ts │ │ │ │ │ │ ├── tools.ts │ │ │ │ │ │ └── trigger.ts │ │ │ │ │ ├── programmatic.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils/ │ │ │ │ │ ├── expressions.test.ts │ │ │ │ │ ├── expressions.ts │ │ │ │ │ ├── is-tool.ts │ │ │ │ │ ├── node-type-map.ts │ │ │ │ │ └── resolve-connections.ts │ │ │ │ ├── workflow-builder-agent.ts │ │ │ │ └── workflow-state.ts │ │ │ ├── test/ │ │ │ │ └── test-utils.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── api-types/ │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── api-keys.ts │ │ │ │ ├── chat-hub.ts │ │ │ │ ├── community-node-types.ts │ │ │ │ ├── datetime.ts │ │ │ │ ├── dto/ │ │ │ │ │ ├── ai/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── ai-apply-suggestion-request.dto.test.ts │ │ │ │ │ │ │ ├── ai-ask-request.dto.test.ts │ │ │ │ │ │ │ ├── ai-build-request.dto.test.ts │ │ │ │ │ │ │ ├── ai-chat-request.dto.test.ts │ │ │ │ │ │ │ └── ai-free-credits-request.dto.test.ts │ │ │ │ │ │ ├── ai-apply-suggestion-request.dto.ts │ │ │ │ │ │ ├── ai-ask-request.dto.ts │ │ │ │ │ │ ├── ai-build-request.dto.ts │ │ │ │ │ │ ├── ai-chat-request.dto.ts │ │ │ │ │ │ ├── ai-clear-session-request.dto.ts │ │ │ │ │ │ ├── ai-free-credits-request.dto.ts │ │ │ │ │ │ ├── ai-session-retrieval-request.dto.ts │ │ │ │ │ │ ├── ai-truncate-messages-request.dto.ts │ │ │ │ │ │ └── ai-usage-settings-request.dto.ts │ │ │ │ │ ├── api-keys/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── create-api-key-request.dto.test.ts │ │ │ │ │ │ │ └── update-api-key-request.dto.test.ts │ │ │ │ │ │ ├── create-api-key-request.dto.ts │ │ │ │ │ │ └── update-api-key-request.dto.ts │ │ │ │ │ ├── auth/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── login-request.dto.test.ts │ │ │ │ │ │ │ └── resolve-signup-token-query.dto.test.ts │ │ │ │ │ │ ├── embed-login-body.dto.ts │ │ │ │ │ │ ├── embed-login-query.dto.ts │ │ │ │ │ │ ├── login-request.dto.ts │ │ │ │ │ │ └── resolve-signup-token-query.dto.ts │ │ │ │ │ ├── binary-data/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── binary-data-query.dto.test.ts │ │ │ │ │ │ │ └── binary-data-signed-query.dto.test.ts │ │ │ │ │ │ ├── binary-data-query.dto.ts │ │ │ │ │ │ └── binary-data-signed-query.dto.ts │ │ │ │ │ ├── credential-resolver/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── create-credential-resolver.dto.test.ts │ │ │ │ │ │ │ └── update-credential-resolver.dto.test.ts │ │ │ │ │ │ ├── create-credential-resolver.dto.ts │ │ │ │ │ │ └── update-credential-resolver.dto.ts │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── create-credential.dto.test.ts │ │ │ │ │ │ │ ├── credentials-get-many-request.dto.test.ts │ │ │ │ │ │ │ ├── credentials-get-one-request.dto.test.ts │ │ │ │ │ │ │ └── generate-credential-name.dto.test.ts │ │ │ │ │ │ ├── create-credential.dto.ts │ │ │ │ │ │ ├── credentials-get-many-request.dto.ts │ │ │ │ │ │ ├── credentials-get-one-request.dto.ts │ │ │ │ │ │ └── generate-credential-name.dto.ts │ │ │ │ │ ├── data-table/ │ │ │ │ │ │ ├── add-data-table-column.dto.ts │ │ │ │ │ │ ├── add-data-table-rows.dto.ts │ │ │ │ │ │ ├── create-data-table-column.dto.ts │ │ │ │ │ │ ├── create-data-table.dto.ts │ │ │ │ │ │ ├── delete-data-table-rows.dto.ts │ │ │ │ │ │ ├── download-data-table-csv-query.dto.ts │ │ │ │ │ │ ├── import-csv-to-data-table.dto.ts │ │ │ │ │ │ ├── list-data-table-content-query.dto.ts │ │ │ │ │ │ ├── list-data-table-query.dto.ts │ │ │ │ │ │ ├── move-data-table-column.dto.ts │ │ │ │ │ │ ├── rename-data-table-column.dto.ts │ │ │ │ │ │ ├── update-data-table-row.dto.ts │ │ │ │ │ │ ├── update-data-table.dto.ts │ │ │ │ │ │ └── upsert-data-table-row.dto.ts │ │ │ │ │ ├── dynamic-node-parameters/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── action-result-request.dto.test.ts │ │ │ │ │ │ │ ├── options-request.dto.test.ts │ │ │ │ │ │ │ ├── resource-locator-request.dto.test.ts │ │ │ │ │ │ │ └── resource-mapper-fields-request.dto.test.ts │ │ │ │ │ │ ├── action-result-request.dto.ts │ │ │ │ │ │ ├── base-dynamic-parameters-request.dto.ts │ │ │ │ │ │ ├── options-request.dto.ts │ │ │ │ │ │ ├── resource-locator-request.dto.ts │ │ │ │ │ │ └── resource-mapper-fields-request.dto.ts │ │ │ │ │ ├── executions/ │ │ │ │ │ │ └── execution-redaction-query.dto.ts │ │ │ │ │ ├── folders/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── create-folder-request.dto.test.ts │ │ │ │ │ │ │ ├── list-folder-query.dto.test.ts │ │ │ │ │ │ │ └── update-folder.request.dto.test.ts │ │ │ │ │ │ ├── create-folder.dto.ts │ │ │ │ │ │ ├── delete-folder.dto.ts │ │ │ │ │ │ ├── list-folder-query.dto.ts │ │ │ │ │ │ ├── transfer-folder.dto.ts │ │ │ │ │ │ └── update-folder.dto.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── insights/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── date-filter.dto.test.ts │ │ │ │ │ │ │ └── list-workflow-query.dto.test.ts │ │ │ │ │ │ ├── date-filter.dto.ts │ │ │ │ │ │ └── list-workflow-query.dto.ts │ │ │ │ │ ├── instance-ai/ │ │ │ │ │ │ ├── instance-ai-confirm-request.dto.ts │ │ │ │ │ │ └── instance-ai-rename-thread-request.dto.ts │ │ │ │ │ ├── invitation/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── accept-invitation-request.dto.test.ts │ │ │ │ │ │ │ └── invite-users-request.dto.test.ts │ │ │ │ │ │ ├── accept-invitation-request.dto.ts │ │ │ │ │ │ └── invite-users-request.dto.ts │ │ │ │ │ ├── license/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── community-registered-request.dto.test.ts │ │ │ │ │ │ └── community-registered-request.dto.ts │ │ │ │ │ ├── log-streaming/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── create-destination.dto.test.ts │ │ │ │ │ │ │ ├── delete-destination-query.dto.test.ts │ │ │ │ │ │ │ ├── get-destination-query.dto.test.ts │ │ │ │ │ │ │ └── test-destination-query.dto.test.ts │ │ │ │ │ │ ├── create-destination.dto.ts │ │ │ │ │ │ ├── delete-destination-query.dto.ts │ │ │ │ │ │ ├── get-destination-query.dto.ts │ │ │ │ │ │ └── test-destination-query.dto.ts │ │ │ │ │ ├── node-types/ │ │ │ │ │ │ └── get-node-types-by-identifier.dto.ts │ │ │ │ │ ├── oauth/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── oauth-client.dto.ts │ │ │ │ │ ├── oidc/ │ │ │ │ │ │ ├── config.dto.ts │ │ │ │ │ │ └── test-oidc-config-response.dto.ts │ │ │ │ │ ├── owner/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── dismiss-banner-request.dto.test.ts │ │ │ │ │ │ │ └── owner-setup-request.dto.test.ts │ │ │ │ │ │ ├── dismiss-banner-request.dto.ts │ │ │ │ │ │ └── owner-setup-request.dto.ts │ │ │ │ │ ├── pagination/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── pagination.dto.test.ts │ │ │ │ │ │ └── pagination.dto.ts │ │ │ │ │ ├── password-reset/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── change-password-request.dto.test.ts │ │ │ │ │ │ │ ├── forgot-password-request.dto.test.ts │ │ │ │ │ │ │ └── resolve-password-token-query.dto.test.ts │ │ │ │ │ │ ├── change-password-request.dto.ts │ │ │ │ │ │ ├── forgot-password-request.dto.ts │ │ │ │ │ │ └── resolve-password-token-query.dto.ts │ │ │ │ │ ├── project/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── add-users-to-project.dto.test.ts │ │ │ │ │ │ │ ├── change-user-role-in-project.dto.test.ts │ │ │ │ │ │ │ ├── create-project.dto.test.ts │ │ │ │ │ │ │ ├── list-projects-query.dto.test.ts │ │ │ │ │ │ │ └── update-project.dto.test.ts │ │ │ │ │ │ ├── add-users-to-project.dto.ts │ │ │ │ │ │ ├── change-user-role-in-project.dto.ts │ │ │ │ │ │ ├── create-project.dto.ts │ │ │ │ │ │ ├── delete-project.dto.ts │ │ │ │ │ │ ├── list-projects-query.dto.ts │ │ │ │ │ │ └── update-project.dto.ts │ │ │ │ │ ├── provisioning/ │ │ │ │ │ │ └── config.dto.ts │ │ │ │ │ ├── quick-connect/ │ │ │ │ │ │ ├── create-quick-connect-credential.dto.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── roles/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── create-role.dto.test.ts │ │ │ │ │ │ │ ├── list-role-mapping-rule-query.dto.test.ts │ │ │ │ │ │ │ ├── role-get-query.dto.test.ts │ │ │ │ │ │ │ ├── role-list-query.dto.test.ts │ │ │ │ │ │ │ └── update-role.dto.test.ts │ │ │ │ │ │ ├── create-role-mapping-rule.dto.ts │ │ │ │ │ │ ├── create-role.dto.ts │ │ │ │ │ │ ├── list-role-mapping-rule-query.dto.ts │ │ │ │ │ │ ├── move-role-mapping-rule.dto.ts │ │ │ │ │ │ ├── patch-role-mapping-rule.dto.ts │ │ │ │ │ │ ├── role-assignments-response.dto.ts │ │ │ │ │ │ ├── role-get-query.dto.ts │ │ │ │ │ │ ├── role-list-query.dto.ts │ │ │ │ │ │ ├── role-project-members-response.dto.ts │ │ │ │ │ │ └── update-role.dto.ts │ │ │ │ │ ├── saml/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── saml-preferences.dto.test.ts │ │ │ │ │ │ ├── saml-acs.dto.ts │ │ │ │ │ │ ├── saml-preferences.dto.ts │ │ │ │ │ │ └── saml-toggle.dto.ts │ │ │ │ │ ├── secrets-provider/ │ │ │ │ │ │ ├── create-secrets-provider-connection.dto.ts │ │ │ │ │ │ ├── set-secrets-provider-connection-is-enabled.dto.ts │ │ │ │ │ │ ├── test-secrets-provider-connection.dto.ts │ │ │ │ │ │ ├── update-external-secrets-settings.dto.ts │ │ │ │ │ │ └── update-secrets-provider-connection.dto.ts │ │ │ │ │ ├── security-settings/ │ │ │ │ │ │ └── security-settings.dto.ts │ │ │ │ │ ├── source-control/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── pull-work-folder-request.dto.test.ts │ │ │ │ │ │ │ └── push-work-folder-request.dto.test.ts │ │ │ │ │ │ ├── pull-work-folder-request.dto.ts │ │ │ │ │ │ ├── push-work-folder-request.dto.ts │ │ │ │ │ │ └── push-work-folder-response.dto.ts │ │ │ │ │ ├── tag/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── create-or-update-tag-request.dto.test.ts │ │ │ │ │ │ │ └── retrieve-tag-query.dto.test.ts │ │ │ │ │ │ ├── create-or-update-tag-request.dto.ts │ │ │ │ │ │ └── retrieve-tag-query.dto.ts │ │ │ │ │ ├── user/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── password-update-request.dto.test.ts │ │ │ │ │ │ │ ├── role-change-request.dto.test.ts │ │ │ │ │ │ │ ├── settings-update-request.dto.test.ts │ │ │ │ │ │ │ ├── user-self-settings-update-request.dto.test.ts │ │ │ │ │ │ │ ├── user-update-request.dto.test.ts │ │ │ │ │ │ │ └── users-list-filter.dto.test.ts │ │ │ │ │ │ ├── password-update-request.dto.ts │ │ │ │ │ │ ├── role-change-request.dto.ts │ │ │ │ │ │ ├── settings-update-request.dto.ts │ │ │ │ │ │ ├── user-self-settings-update-request.dto.ts │ │ │ │ │ │ ├── user-update-request.dto.ts │ │ │ │ │ │ └── users-list-filter.dto.ts │ │ │ │ │ ├── variables/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── base.dto.test.ts │ │ │ │ │ │ │ ├── create-variable-request.dto.test.ts │ │ │ │ │ │ │ ├── update-variable-request.dto.test.ts │ │ │ │ │ │ │ └── variables-list-request.dto.test.ts │ │ │ │ │ │ ├── base.dto.ts │ │ │ │ │ │ ├── create-variable-request.dto.ts │ │ │ │ │ │ ├── update-variable-request.dto.ts │ │ │ │ │ │ └── variables-list-request.dto.ts │ │ │ │ │ ├── workflow-history/ │ │ │ │ │ │ ├── update-workflow-history-version.dto.ts │ │ │ │ │ │ └── workflow-history-versions-by-ids.dto.ts │ │ │ │ │ └── workflows/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── create-workflow.dto.test.ts │ │ │ │ │ │ ├── import-workflow-from-url.dto.test.ts │ │ │ │ │ │ ├── transfer-workflow.dto.test.ts │ │ │ │ │ │ └── update-workflow.dto.test.ts │ │ │ │ │ ├── activate-workflow.dto.ts │ │ │ │ │ ├── archive-workflow.dto.ts │ │ │ │ │ ├── base-workflow.dto.ts │ │ │ │ │ ├── create-workflow.dto.ts │ │ │ │ │ ├── deactivate-workflow.dto.ts │ │ │ │ │ ├── get-resource-dependencies.dto.ts │ │ │ │ │ ├── get-resource-dependency-counts.dto.ts │ │ │ │ │ ├── import-workflow-from-url.dto.ts │ │ │ │ │ ├── transfer.dto.ts │ │ │ │ │ └── update-workflow.dto.ts │ │ │ │ ├── frontend-settings.ts │ │ │ │ ├── index.ts │ │ │ │ ├── instance-registry-types.ts │ │ │ │ ├── push/ │ │ │ │ │ ├── builder-credits.ts │ │ │ │ │ ├── chat-hub.ts │ │ │ │ │ ├── collaboration.ts │ │ │ │ │ ├── debug.ts │ │ │ │ │ ├── execution.ts │ │ │ │ │ ├── heartbeat.ts │ │ │ │ │ ├── hot-reload.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── instance-ai.ts │ │ │ │ │ ├── webhook.ts │ │ │ │ │ ├── worker.ts │ │ │ │ │ └── workflow.ts │ │ │ │ ├── quick-connect.ts │ │ │ │ ├── scaling.ts │ │ │ │ ├── schemas/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── agent-run-reducer.test.ts │ │ │ │ │ │ ├── credential-resolver.schema.test.ts │ │ │ │ │ │ ├── folder.schema.test.ts │ │ │ │ │ │ ├── insights.schema.test.ts │ │ │ │ │ │ ├── node-version.schema.test.ts │ │ │ │ │ │ ├── password.schema.test.ts │ │ │ │ │ │ ├── project.schema.test.ts │ │ │ │ │ │ └── user.schema.test.ts │ │ │ │ │ ├── agent-run-reducer.ts │ │ │ │ │ ├── banner-name.schema.ts │ │ │ │ │ ├── binary-data.schema.ts │ │ │ │ │ ├── boolean-from-string.ts │ │ │ │ │ ├── breaking-changes.schema.ts │ │ │ │ │ ├── community-package.schema.ts │ │ │ │ │ ├── credential-resolver.schema.ts │ │ │ │ │ ├── data-table-filter.schema.ts │ │ │ │ │ ├── data-table.schema.ts │ │ │ │ │ ├── dependency-counts.schema.ts │ │ │ │ │ ├── dependency.schema.ts │ │ │ │ │ ├── external-secrets.schema.ts │ │ │ │ │ ├── folder.schema.ts │ │ │ │ │ ├── insights.schema.ts │ │ │ │ │ ├── instance-ai.schema.ts │ │ │ │ │ ├── node-version.schema.ts │ │ │ │ │ ├── password-reset-token.schema.ts │ │ │ │ │ ├── password.schema.ts │ │ │ │ │ ├── project.schema.ts │ │ │ │ │ ├── scopes.schema.ts │ │ │ │ │ ├── secrets-provider.schema.ts │ │ │ │ │ ├── source-controlled-file.schema.ts │ │ │ │ │ ├── timezone.schema.ts │ │ │ │ │ ├── usage.schema.ts │ │ │ │ │ ├── user-settings.schema.ts │ │ │ │ │ ├── user.schema.ts │ │ │ │ │ ├── workflow-execution-status.schema.ts │ │ │ │ │ └── workflow-version.schema.ts │ │ │ │ ├── user.ts │ │ │ │ ├── utils/ │ │ │ │ │ └── allowed-domains.ts │ │ │ │ └── zod-class.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── backend-common/ │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── cli-parser.test.ts │ │ │ │ ├── cli-parser.ts │ │ │ │ ├── environment.ts │ │ │ │ ├── index.ts │ │ │ │ ├── license-state.ts │ │ │ │ ├── logging/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── logger.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── logger.ts │ │ │ │ ├── modules/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── module-registry.test.ts │ │ │ │ │ │ └── modules.config.test.ts │ │ │ │ │ ├── errors/ │ │ │ │ │ │ ├── missing-module.error.ts │ │ │ │ │ │ ├── module-confusion.error.ts │ │ │ │ │ │ └── unknown-module.error.ts │ │ │ │ │ ├── module-registry.ts │ │ │ │ │ └── modules.config.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── flatted-async.test.ts │ │ │ │ │ ├── is-object-literal.test.ts │ │ │ │ │ ├── parse-flatted.test.ts │ │ │ │ │ └── path-util.test.ts │ │ │ │ ├── flatted-async.ts │ │ │ │ ├── fs.ts │ │ │ │ ├── is-object-literal.ts │ │ │ │ ├── parse-flatted.ts │ │ │ │ └── path-util.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── backend-test-utils/ │ │ │ ├── MIGRATION_TESTING.md │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── db/ │ │ │ │ │ ├── projects.ts │ │ │ │ │ └── workflows.ts │ │ │ │ ├── index.ts │ │ │ │ ├── migration-test-helpers.ts │ │ │ │ ├── mocking.ts │ │ │ │ ├── random.ts │ │ │ │ ├── test-db.ts │ │ │ │ └── test-modules.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── benchmark/ │ │ │ ├── .gitignore │ │ │ ├── Dockerfile │ │ │ ├── README.md │ │ │ ├── bin/ │ │ │ │ └── n8n-benchmark │ │ │ ├── biome.jsonc │ │ │ ├── eslint.config.mjs │ │ │ ├── infra/ │ │ │ │ ├── .terraform.lock.hcl │ │ │ │ ├── benchmark-env.tf │ │ │ │ ├── modules/ │ │ │ │ │ └── benchmark-vm/ │ │ │ │ │ ├── output.tf │ │ │ │ │ ├── vars.tf │ │ │ │ │ └── vm.tf │ │ │ │ ├── output.tf │ │ │ │ ├── providers.tf │ │ │ │ └── vars.tf │ │ │ ├── package.json │ │ │ ├── scenarios/ │ │ │ │ ├── binary-data/ │ │ │ │ │ ├── binary-data.json │ │ │ │ │ ├── binary-data.manifest.json │ │ │ │ │ └── binary-data.script.js │ │ │ │ ├── credential-http-node/ │ │ │ │ │ ├── credential-bearer.json │ │ │ │ │ ├── credential-http-node.json │ │ │ │ │ ├── credential-http-node.manifest.json │ │ │ │ │ └── credential-http-node.script.js │ │ │ │ ├── data-table-node/ │ │ │ │ │ ├── data-table-node.json │ │ │ │ │ ├── data-table-node.manifest.json │ │ │ │ │ ├── data-table-node.script.js │ │ │ │ │ └── data-table.json │ │ │ │ ├── http-node/ │ │ │ │ │ ├── http-node.json │ │ │ │ │ ├── http-node.manifest.json │ │ │ │ │ └── http-node.script.js │ │ │ │ ├── js-code-node/ │ │ │ │ │ ├── js-code-node.json │ │ │ │ │ ├── js-code-node.manifest.json │ │ │ │ │ └── js-code-node.script.js │ │ │ │ ├── multiple-webhooks/ │ │ │ │ │ ├── multiple-webhooks.manifest.json │ │ │ │ │ ├── multiple-webhooks.script.js │ │ │ │ │ ├── multiple-webhooks1.json │ │ │ │ │ ├── multiple-webhooks10.json │ │ │ │ │ ├── multiple-webhooks2.json │ │ │ │ │ ├── multiple-webhooks3.json │ │ │ │ │ ├── multiple-webhooks4.json │ │ │ │ │ ├── multiple-webhooks5.json │ │ │ │ │ ├── multiple-webhooks6.json │ │ │ │ │ ├── multiple-webhooks7.json │ │ │ │ │ ├── multiple-webhooks8.json │ │ │ │ │ └── multiple-webhooks9.json │ │ │ │ ├── py-code-node/ │ │ │ │ │ ├── py-code-node.json │ │ │ │ │ ├── py-code-node.manifest.json │ │ │ │ │ └── py-code-node.script.js │ │ │ │ ├── scenario.schema.json │ │ │ │ ├── set-node-expressions/ │ │ │ │ │ ├── set-node-expressions.json │ │ │ │ │ ├── set-node-expressions.manifest.json │ │ │ │ │ └── set-node-expressions.script.js │ │ │ │ └── single-webhook/ │ │ │ │ ├── single-webhook.json │ │ │ │ ├── single-webhook.manifest.json │ │ │ │ └── single-webhook.script.js │ │ │ ├── scripts/ │ │ │ │ ├── bootstrap.sh │ │ │ │ ├── clients/ │ │ │ │ │ ├── docker-compose-client.mjs │ │ │ │ │ ├── ssh-client.mjs │ │ │ │ │ └── terraform-client.mjs │ │ │ │ ├── destroy-cloud-env.mjs │ │ │ │ ├── mock-api/ │ │ │ │ │ └── mappings/ │ │ │ │ │ └── mockApiData.json │ │ │ │ ├── n8n-setups/ │ │ │ │ │ ├── postgres/ │ │ │ │ │ │ ├── docker-compose.yml │ │ │ │ │ │ └── setup.mjs │ │ │ │ │ ├── scaling-multi-main/ │ │ │ │ │ │ ├── docker-compose.yml │ │ │ │ │ │ ├── nginx.conf │ │ │ │ │ │ └── setup.mjs │ │ │ │ │ ├── scaling-single-main/ │ │ │ │ │ │ ├── docker-compose.yml │ │ │ │ │ │ └── setup.mjs │ │ │ │ │ └── sqlite/ │ │ │ │ │ ├── docker-compose.yml │ │ │ │ │ └── setup.mjs │ │ │ │ ├── provision-cloud-env.mjs │ │ │ │ ├── run-for-n8n-setup.mjs │ │ │ │ ├── run-in-cloud.mjs │ │ │ │ ├── run-locally.mjs │ │ │ │ ├── run.mjs │ │ │ │ └── utils/ │ │ │ │ └── flags.mjs │ │ │ ├── src/ │ │ │ │ ├── commands/ │ │ │ │ │ ├── list.ts │ │ │ │ │ └── run.ts │ │ │ │ ├── config/ │ │ │ │ │ └── common-flags.ts │ │ │ │ ├── n8n-api-client/ │ │ │ │ │ ├── authenticated-n8n-api-client.ts │ │ │ │ │ ├── credentials-api-client.ts │ │ │ │ │ ├── data-table-api-client.ts │ │ │ │ │ ├── n8n-api-client.ts │ │ │ │ │ ├── n8n-api-client.types.ts │ │ │ │ │ ├── project-api-client.ts │ │ │ │ │ └── workflows-api-client.ts │ │ │ │ ├── scenario/ │ │ │ │ │ ├── scenario-data-loader.ts │ │ │ │ │ └── scenario-loader.ts │ │ │ │ ├── test-execution/ │ │ │ │ │ ├── app-metrics-poller.ts │ │ │ │ │ ├── k6-executor.ts │ │ │ │ │ ├── k6-summary.ts │ │ │ │ │ ├── prometheus-metrics-parser.ts │ │ │ │ │ ├── scenario-data-importer.ts │ │ │ │ │ ├── scenario-runner.ts │ │ │ │ │ └── test-report.ts │ │ │ │ └── types/ │ │ │ │ └── scenario.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── chat-hub/ │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── artifact.test.ts │ │ │ │ ├── artifact.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── index.ts │ │ │ │ ├── parser.test.ts │ │ │ │ └── parser.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── cli/ │ │ │ ├── LICENSE.md │ │ │ ├── README.md │ │ │ ├── bin/ │ │ │ │ └── n8n-cli.mjs │ │ │ ├── docs/ │ │ │ │ ├── commands/ │ │ │ │ │ ├── audit.md │ │ │ │ │ ├── config.md │ │ │ │ │ ├── credential.md │ │ │ │ │ ├── data-table.md │ │ │ │ │ ├── execution.md │ │ │ │ │ ├── project.md │ │ │ │ │ ├── source-control.md │ │ │ │ │ ├── tag.md │ │ │ │ │ ├── user.md │ │ │ │ │ ├── variable.md │ │ │ │ │ └── workflow.md │ │ │ │ ├── getting-started.md │ │ │ │ ├── guides/ │ │ │ │ │ ├── ai-agents.md │ │ │ │ │ └── ci-cd.md │ │ │ │ └── index.md │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── skills/ │ │ │ │ └── n8n-cli/ │ │ │ │ └── SKILL.md │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── config.test.ts │ │ │ │ ├── base-command.ts │ │ │ │ ├── client.ts │ │ │ │ ├── commands/ │ │ │ │ │ ├── audit/ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── config/ │ │ │ │ │ │ ├── set-api-key.ts │ │ │ │ │ │ ├── set-url.ts │ │ │ │ │ │ └── show.ts │ │ │ │ │ ├── credential/ │ │ │ │ │ │ ├── create.ts │ │ │ │ │ │ ├── delete.ts │ │ │ │ │ │ ├── get.ts │ │ │ │ │ │ ├── list.ts │ │ │ │ │ │ ├── schema.ts │ │ │ │ │ │ └── transfer.ts │ │ │ │ │ ├── data-table/ │ │ │ │ │ │ ├── add-rows.ts │ │ │ │ │ │ ├── create.ts │ │ │ │ │ │ ├── delete-rows.ts │ │ │ │ │ │ ├── delete.ts │ │ │ │ │ │ ├── get.ts │ │ │ │ │ │ ├── list.ts │ │ │ │ │ │ ├── rows.ts │ │ │ │ │ │ ├── update-rows.ts │ │ │ │ │ │ └── upsert-rows.ts │ │ │ │ │ ├── execution/ │ │ │ │ │ │ ├── delete.ts │ │ │ │ │ │ ├── get.ts │ │ │ │ │ │ ├── list.ts │ │ │ │ │ │ ├── retry.ts │ │ │ │ │ │ └── stop.ts │ │ │ │ │ ├── login.ts │ │ │ │ │ ├── logout.ts │ │ │ │ │ ├── project/ │ │ │ │ │ │ ├── add-member.ts │ │ │ │ │ │ ├── create.ts │ │ │ │ │ │ ├── delete.ts │ │ │ │ │ │ ├── get.ts │ │ │ │ │ │ ├── list.ts │ │ │ │ │ │ ├── members.ts │ │ │ │ │ │ ├── remove-member.ts │ │ │ │ │ │ └── update.ts │ │ │ │ │ ├── skill/ │ │ │ │ │ │ └── install.ts │ │ │ │ │ ├── source-control/ │ │ │ │ │ │ └── pull.ts │ │ │ │ │ ├── tag/ │ │ │ │ │ │ ├── create.ts │ │ │ │ │ │ ├── delete.ts │ │ │ │ │ │ ├── list.ts │ │ │ │ │ │ └── update.ts │ │ │ │ │ ├── user/ │ │ │ │ │ │ ├── get.ts │ │ │ │ │ │ └── list.ts │ │ │ │ │ ├── variable/ │ │ │ │ │ │ ├── create.ts │ │ │ │ │ │ ├── delete.ts │ │ │ │ │ │ ├── list.ts │ │ │ │ │ │ └── update.ts │ │ │ │ │ └── workflow/ │ │ │ │ │ ├── activate.ts │ │ │ │ │ ├── create.ts │ │ │ │ │ ├── deactivate.ts │ │ │ │ │ ├── delete.ts │ │ │ │ │ ├── get.ts │ │ │ │ │ ├── list.ts │ │ │ │ │ ├── tags.ts │ │ │ │ │ ├── transfer.ts │ │ │ │ │ └── update.ts │ │ │ │ ├── config.ts │ │ │ │ ├── index.ts │ │ │ │ └── output.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── vitest.config.ts │ │ ├── client-oauth2/ │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── client-oauth2-token.ts │ │ │ │ ├── client-oauth2.ts │ │ │ │ ├── code-flow.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── credentials-flow.ts │ │ │ │ ├── index.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── test/ │ │ │ │ ├── client-oauth2.test.ts │ │ │ │ ├── code-flow.test.ts │ │ │ │ ├── config.ts │ │ │ │ ├── credentials-flow.test.ts │ │ │ │ └── pkce-flow.test.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── codemirror-lang/ │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── expressions/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── expressions.grammar │ │ │ │ │ ├── grammar.terms.ts │ │ │ │ │ ├── grammar.ts │ │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ │ ├── test/ │ │ │ │ └── expressions/ │ │ │ │ ├── cases.txt │ │ │ │ └── expressions.test.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── vitest.config.ts │ │ ├── codemirror-lang-html/ │ │ │ ├── .gitignore │ │ │ ├── .npmignore │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── complete.ts │ │ │ │ ├── grammar/ │ │ │ │ │ ├── content.js │ │ │ │ │ ├── highlight.js │ │ │ │ │ ├── html.grammar │ │ │ │ │ ├── index.js │ │ │ │ │ ├── parser.js │ │ │ │ │ ├── parser.terms.js │ │ │ │ │ ├── rollup.config.js │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── mixed.txt │ │ │ │ │ │ ├── resolvables.txt │ │ │ │ │ │ ├── tags.txt │ │ │ │ │ │ ├── test-html.js │ │ │ │ │ │ ├── test-incremental.js │ │ │ │ │ │ └── vue.txt │ │ │ │ │ └── tokens.js │ │ │ │ └── html.ts │ │ │ ├── test/ │ │ │ │ └── test-complete.ts │ │ │ └── vitest.config.ts │ │ ├── codemirror-lang-sql/ │ │ │ ├── .gitignore │ │ │ ├── .npmignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── complete.ts │ │ │ │ ├── grammar.sql.terms.ts │ │ │ │ ├── grammar.sql.ts │ │ │ │ ├── index.ts │ │ │ │ ├── sql.grammar │ │ │ │ ├── sql.ts │ │ │ │ └── tokens.ts │ │ │ ├── test/ │ │ │ │ ├── complete.test.ts │ │ │ │ └── tokens.test.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── vitest.config.ts │ │ ├── config/ │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── configs/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── ai.config.test.ts │ │ │ │ │ │ ├── external-hooks.config.test.ts │ │ │ │ │ │ ├── ssrf-protection.config.test.ts │ │ │ │ │ │ └── user-management.config.test.ts │ │ │ │ │ ├── ai-assistant.config.ts │ │ │ │ │ ├── ai-builder.config.ts │ │ │ │ │ ├── ai.config.ts │ │ │ │ │ ├── auth.config.ts │ │ │ │ │ ├── cache.config.ts │ │ │ │ │ ├── chat-hub.config.ts │ │ │ │ │ ├── credentials.config.ts │ │ │ │ │ ├── data-table.config.ts │ │ │ │ │ ├── database.config.ts │ │ │ │ │ ├── deployment.config.ts │ │ │ │ │ ├── diagnostics.config.ts │ │ │ │ │ ├── dynamic-banners.config.ts │ │ │ │ │ ├── endpoints.config.ts │ │ │ │ │ ├── event-bus.config.ts │ │ │ │ │ ├── executions.config.ts │ │ │ │ │ ├── expression-engine.config.ts │ │ │ │ │ ├── external-hooks.config.ts │ │ │ │ │ ├── generic.config.ts │ │ │ │ │ ├── hiring-banner.config.ts │ │ │ │ │ ├── instance-ai.config.ts │ │ │ │ │ ├── instance-settings-config.ts │ │ │ │ │ ├── license.config.ts │ │ │ │ │ ├── logging.config.ts │ │ │ │ │ ├── mfa.config.ts │ │ │ │ │ ├── multi-main-setup.config.ts │ │ │ │ │ ├── nodes.config.ts │ │ │ │ │ ├── password.config.ts │ │ │ │ │ ├── personalization.config.ts │ │ │ │ │ ├── public-api.config.ts │ │ │ │ │ ├── redis.config.ts │ │ │ │ │ ├── runners.config.ts │ │ │ │ │ ├── scaling-mode.config.ts │ │ │ │ │ ├── security.config.ts │ │ │ │ │ ├── sentry.config.ts │ │ │ │ │ ├── sso.config.ts │ │ │ │ │ ├── ssrf-protection.config.ts │ │ │ │ │ ├── tags.config.ts │ │ │ │ │ ├── templates.config.ts │ │ │ │ │ ├── user-management.config.ts │ │ │ │ │ ├── version-notifications.config.ts │ │ │ │ │ ├── workflow-history-compaction.config.ts │ │ │ │ │ ├── workflow-history.config.ts │ │ │ │ │ └── workflows.config.ts │ │ │ │ ├── custom-types.ts │ │ │ │ ├── decorators.ts │ │ │ │ ├── index.ts │ │ │ │ └── utils/ │ │ │ │ └── utils.ts │ │ │ ├── test/ │ │ │ │ ├── config.test.ts │ │ │ │ ├── custom-types.test.ts │ │ │ │ ├── decorators.test.ts │ │ │ │ └── string-normalization.test.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── constants/ │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── api.ts │ │ │ │ ├── browser.ts │ │ │ │ ├── community-nodes.ts │ │ │ │ ├── execution.ts │ │ │ │ ├── index.ts │ │ │ │ ├── instance.ts │ │ │ │ ├── logstreaming.ts │ │ │ │ └── time.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── crdt/ │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── helpers.ts │ │ │ │ ├── awareness/ │ │ │ │ │ ├── awareness.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── yjs-awareness.ts │ │ │ │ ├── index.test.ts │ │ │ │ ├── index.ts │ │ │ │ ├── protocol.test.ts │ │ │ │ ├── protocol.ts │ │ │ │ ├── providers/ │ │ │ │ │ ├── yjs.test.ts │ │ │ │ │ └── yjs.ts │ │ │ │ ├── sync/ │ │ │ │ │ ├── base-sync-provider.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── sync-provider.test.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── sync.test.ts │ │ │ │ ├── test-matchers.d.ts │ │ │ │ ├── transports/ │ │ │ │ │ ├── broadcast-channel.test.ts │ │ │ │ │ ├── broadcast-channel.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── integration.test.ts │ │ │ │ │ ├── message-port.test.ts │ │ │ │ │ ├── message-port.ts │ │ │ │ │ ├── mock.test.ts │ │ │ │ │ ├── mock.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── websocket.test.ts │ │ │ │ │ ├── websocket.ts │ │ │ │ │ ├── worker.test.ts │ │ │ │ │ └── worker.ts │ │ │ │ ├── types.ts │ │ │ │ ├── undo/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── undo-manager.test.ts │ │ │ │ │ └── yjs-undo-manager.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── vitest.config.ts │ │ ├── create-node/ │ │ │ ├── README.md │ │ │ ├── bin/ │ │ │ │ └── create-node.cjs │ │ │ ├── package.json │ │ │ └── tsconfig.json │ │ ├── db/ │ │ │ ├── AGENTS.md │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── connection/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── db-connection-options.test.ts │ │ │ │ │ │ └── db-connection.test.ts │ │ │ │ │ ├── db-connection-options.ts │ │ │ │ │ └── db-connection.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── entities/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── types-db.test.ts │ │ │ │ │ │ └── user.entity.test.ts │ │ │ │ │ ├── abstract-entity.ts │ │ │ │ │ ├── annotation-tag-entity.ee.ts │ │ │ │ │ ├── annotation-tag-mapping.ee.ts │ │ │ │ │ ├── api-key.ts │ │ │ │ │ ├── auth-identity.ts │ │ │ │ │ ├── auth-provider-sync-history.ts │ │ │ │ │ ├── binary-data-file.ts │ │ │ │ │ ├── credential-dependency-entity.ts │ │ │ │ │ ├── credentials-entity.ts │ │ │ │ │ ├── execution-annotation.ee.ts │ │ │ │ │ ├── execution-data.ts │ │ │ │ │ ├── execution-entity.ts │ │ │ │ │ ├── execution-metadata.ts │ │ │ │ │ ├── folder-tag-mapping.ts │ │ │ │ │ ├── folder.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── invalid-auth-token.ts │ │ │ │ │ ├── processed-data.ts │ │ │ │ │ ├── project-relation.ts │ │ │ │ │ ├── project-secrets-provider-access.ts │ │ │ │ │ ├── project.ts │ │ │ │ │ ├── role-mapping-rule.ts │ │ │ │ │ ├── role.ts │ │ │ │ │ ├── scope.ts │ │ │ │ │ ├── secrets-provider-connection.ts │ │ │ │ │ ├── settings.ts │ │ │ │ │ ├── shared-credentials.ts │ │ │ │ │ ├── shared-workflow.ts │ │ │ │ │ ├── tag-entity.ts │ │ │ │ │ ├── test-case-execution.ee.ts │ │ │ │ │ ├── test-run.ee.ts │ │ │ │ │ ├── types-db.ts │ │ │ │ │ ├── user.ts │ │ │ │ │ ├── variables.ts │ │ │ │ │ ├── webhook-entity.ts │ │ │ │ │ ├── workflow-dependency-entity.ts │ │ │ │ │ ├── workflow-entity.ts │ │ │ │ │ ├── workflow-history.ts │ │ │ │ │ ├── workflow-publish-history.ts │ │ │ │ │ ├── workflow-published-version.ts │ │ │ │ │ ├── workflow-statistics.ts │ │ │ │ │ └── workflow-tag-mapping.ts │ │ │ │ ├── index.ts │ │ │ │ ├── migrations/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── migration-helpers.ts │ │ │ │ │ ├── common/ │ │ │ │ │ │ ├── 1620821879465-UniqueWorkflowNames.ts │ │ │ │ │ │ ├── 1630330987096-UpdateWorkflowCredentials.ts │ │ │ │ │ │ ├── 1658930531669-AddNodeIds.ts │ │ │ │ │ │ ├── 1659888469333-AddJsonKeyPinData.ts │ │ │ │ │ │ ├── 1669739707124-AddWorkflowVersionIdColumn.ts │ │ │ │ │ │ ├── 1671726148419-RemoveWorkflowDataLoadedFlag.ts │ │ │ │ │ │ ├── 1674509946020-CreateLdapEntities.ts │ │ │ │ │ │ ├── 1675940580449-PurgeInvalidWorkflowConnections.ts │ │ │ │ │ │ ├── 1690000000030-RemoveResetPasswordColumns.ts │ │ │ │ │ │ ├── 1690000000040-AddMfaColumns.ts │ │ │ │ │ │ ├── 1691088862123-CreateWorkflowNameIndex.ts │ │ │ │ │ │ ├── 1692967111175-CreateWorkflowHistoryTable.ts │ │ │ │ │ │ ├── 1693491613982-ExecutionSoftDelete.ts │ │ │ │ │ │ ├── 1693554410387-DisallowOrphanExecutions.ts │ │ │ │ │ │ ├── 1695128658538-AddWorkflowMetadata.ts │ │ │ │ │ │ ├── 1695829275184-ModifyWorkflowHistoryNodesAndConnections.ts │ │ │ │ │ │ ├── 1700571993961-AddGlobalAdminRole.ts │ │ │ │ │ │ ├── 1705429061930-DropRoleMapping.ts │ │ │ │ │ │ ├── 1711018413374-RemoveFailedExecutionStatus.ts │ │ │ │ │ │ ├── 1711390882123-MoveSshKeysToDatabase.ts │ │ │ │ │ │ ├── 1712044305787-RemoveNodesAccess.ts │ │ │ │ │ │ ├── 1714133768519-CreateProject.ts │ │ │ │ │ │ ├── 1714133768521-MakeExecutionStatusNonNullable.ts │ │ │ │ │ │ ├── 1720101653148-AddConstraintToExecutionMetadata.ts │ │ │ │ │ │ ├── 1723627610222-CreateInvalidAuthTokenTable.ts │ │ │ │ │ │ ├── 1723796243146-RefactorExecutionIndices.ts │ │ │ │ │ │ ├── 1724753530828-CreateExecutionAnnotationTables.ts │ │ │ │ │ │ ├── 1724951148974-AddApiKeysTable.ts │ │ │ │ │ │ ├── 1726606152711-CreateProcessedDataTable.ts │ │ │ │ │ │ ├── 1727427440136-SeparateExecutionCreationFromStart.ts │ │ │ │ │ │ ├── 1728659839644-AddMissingPrimaryKeyOnAnnotationTagMapping.ts │ │ │ │ │ │ ├── 1729607673464-UpdateProcessedDataValueColumnToText.ts │ │ │ │ │ │ ├── 1729607673469-AddProjectIcons.ts │ │ │ │ │ │ ├── 1730386903556-CreateTestDefinitionTable.ts │ │ │ │ │ │ ├── 1731404028106-AddDescriptionToTestDefinition.ts │ │ │ │ │ │ ├── 1732271325258-CreateTestMetricTable.ts │ │ │ │ │ │ ├── 1732549866705-CreateTestRunTable.ts │ │ │ │ │ │ ├── 1733133775640-AddMockedNodesColumnToTestDefinition.ts │ │ │ │ │ │ ├── 1734479635324-AddManagedColumnToCredentialsTable.ts │ │ │ │ │ │ ├── 1736172058779-AddStatsColumnsToTestRun.ts │ │ │ │ │ │ ├── 1736947513045-CreateTestCaseExecutionTable.ts │ │ │ │ │ │ ├── 1737715421462-AddErrorColumnsToTestRuns.ts │ │ │ │ │ │ ├── 1738709609940-CreateFolderTable.ts │ │ │ │ │ │ ├── 1739549398681-CreateAnalyticsTables.ts │ │ │ │ │ │ ├── 1741167584277-RenameAnalyticsToInsights.ts │ │ │ │ │ │ ├── 1742918400000-AddScopesColumnToApiKeys.ts │ │ │ │ │ │ ├── 1745322634000-CleanEvaluations.ts │ │ │ │ │ │ ├── 1745587087521-AddWorkflowStatisticsRootCount.ts │ │ │ │ │ │ ├── 1745934666076-AddWorkflowArchivedColumn.ts │ │ │ │ │ │ ├── 1745934666077-DropRoleTable.ts │ │ │ │ │ │ ├── 1747824239000-AddProjectDescriptionColumn.ts │ │ │ │ │ │ ├── 1750252139166-AddLastActiveAtColumnToUser.ts │ │ │ │ │ │ ├── 1750252139166-AddScopeTables.ts │ │ │ │ │ │ ├── 1750252139167-AddRolesTables.ts │ │ │ │ │ │ ├── 1750252139168-LinkRoleToUserTable.ts │ │ │ │ │ │ ├── 1750252139170-RemoveOldRoleColumn.ts │ │ │ │ │ │ ├── 1752669793000-AddInputsOutputsToTestCaseExecution.ts │ │ │ │ │ │ ├── 1753953244168-LinkRoleToProjectRelationTable.ts │ │ │ │ │ │ ├── 1754475614601-CreateDataStoreTables.ts │ │ │ │ │ │ ├── 1754475614602-ReplaceDataStoreTablesWithDataTables.ts │ │ │ │ │ │ ├── 1756906557570-AddTimestampsToRoleAndRoleIndexes.ts │ │ │ │ │ │ ├── 1758731786132-AddAudienceColumnToApiKey.ts │ │ │ │ │ │ ├── 1759399811000-ChangeValueTypesForInsights.ts │ │ │ │ │ │ ├── 1760019379982-CreateChatHubTables.ts │ │ │ │ │ │ ├── 1760020000000-CreateChatHubAgentTable.ts │ │ │ │ │ │ ├── 1760020838000-UniqueRoleNames.ts │ │ │ │ │ │ ├── 1760116750277-CreateOAuthEntities.ts │ │ │ │ │ │ ├── 1760314000000-CreateWorkflowDependencyTable.ts │ │ │ │ │ │ ├── 1760965142113-DropUnusedChatHubColumns.ts │ │ │ │ │ │ ├── 1761773155024-AddAttachmentsToChatHubMessages.ts │ │ │ │ │ │ ├── 1761830340990-AddToolsColumnToChatHubTables.ts │ │ │ │ │ │ ├── 1762177736257-AddWorkflowDescriptionColumn.ts │ │ │ │ │ │ ├── 1762763704614-BackfillMissingWorkflowHistoryRecords.ts │ │ │ │ │ │ ├── 1762771954619-IsGlobalGlobalColumnToCredentialsTable.ts │ │ │ │ │ │ ├── 1762847206508-AddWorkflowHistoryAutoSaveFields.ts │ │ │ │ │ │ ├── 1763047800000-AddActiveVersionIdColumn.ts │ │ │ │ │ │ ├── 1763048000000-ActivateExecuteWorkflowTriggerWorkflows.ts │ │ │ │ │ │ ├── 1763572724000-ChangeOAuthStateColumnToUnboundedVarchar.ts │ │ │ │ │ │ ├── 1763716655000-CreateBinaryDataTable.ts │ │ │ │ │ │ ├── 1764167920585-CreateWorkflowPublishHistoryTable.ts │ │ │ │ │ │ ├── 1764276827837-AddCreatorIdToProjectTable.ts │ │ │ │ │ │ ├── 1764682447000-CreateCredentialResolverTable.ts │ │ │ │ │ │ ├── 1764689388394-AddDynamicCredentialEntryTable.ts │ │ │ │ │ │ ├── 1765448186933-BackfillMissingWorkflowHistoryRecords.ts │ │ │ │ │ │ ├── 1765459448000-AddResolvableFieldsToCredentials.ts │ │ │ │ │ │ ├── 1765788427674-AddIconToAgentTable.ts │ │ │ │ │ │ ├── 1765886667897-AddAgentIdForeignKeys.ts │ │ │ │ │ │ ├── 1765892199653-AddVersionIdToExecutionData.ts │ │ │ │ │ │ ├── 1766064542000-AddWorkflowPublishScopeToProjectRoles.ts │ │ │ │ │ │ ├── 1766068346315-AddChatMessageIndices.ts │ │ │ │ │ │ ├── 1768402473068-ExpandModelColumnLength.ts │ │ │ │ │ │ ├── 1768557000000-AddStoredAtToExecutionEntity.ts │ │ │ │ │ │ ├── 1768901721000-AddDynamicCredentialUserEntryTable.ts │ │ │ │ │ │ ├── 1769000000000-AddPublishedVersionIdToWorkflowDependency.ts │ │ │ │ │ │ ├── 1769433700000-CreateSecretsProvidersConnectionTables.ts │ │ │ │ │ │ ├── 1769698710000-CreateWorkflowPublishedVersionTable.ts │ │ │ │ │ │ ├── 1769784356000-ExpandSubjectIDColumnLength.ts │ │ │ │ │ │ ├── 1769900001000-AddWorkflowUnpublishScopeToCustomRoles.ts │ │ │ │ │ │ ├── 1770000000000-CreateChatHubToolsTable.ts │ │ │ │ │ │ ├── 1770000000000-ExpandProviderIdColumnLength.ts │ │ │ │ │ │ ├── 1770220686000-CreateWorkflowBuilderSessionTable.ts │ │ │ │ │ │ ├── 1771417407753-AddScalingFieldsToTestRun.ts │ │ │ │ │ │ ├── 1771500000000-MigrateExternalSecretsToEntityStorage.ts │ │ │ │ │ │ ├── 1771500000001-AddUnshareScopeToCustomRoles.ts │ │ │ │ │ │ ├── 1771500000002-AddFilesColumnToChatHubAgents.ts │ │ │ │ │ │ ├── 1772000000000-AddSuggestedPromptsToAgentTable.ts │ │ │ │ │ │ ├── 1772619247761-AddRoleColumnToProjectSecretsProviderAccess.ts │ │ │ │ │ │ ├── 1772619247762-ChangeWorkflowPublishedVersionFKsToRestrict.ts │ │ │ │ │ │ ├── 1772700000000-AddTypeToChatHubSessions.ts │ │ │ │ │ │ ├── 1772800000000-CreateRoleMappingRuleTable.ts │ │ │ │ │ │ ├── 1773000000000-CreateCredentialDependencyTable.ts │ │ │ │ │ │ ├── 1774280963551-AddRestoreFieldsToWorkflowBuilderSession.ts │ │ │ │ │ │ ├── 1774854660000-CreateInstanceVersionHistoryTable.ts │ │ │ │ │ │ └── 1775000000000-CreateInstanceAiTables.ts │ │ │ │ │ ├── dsl/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── enum-check.test.ts │ │ │ │ │ │ ├── column.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── indices.ts │ │ │ │ │ │ └── table.ts │ │ │ │ │ ├── migration-helpers.test.ts │ │ │ │ │ ├── migration-helpers.ts │ │ │ │ │ ├── migration-types.ts │ │ │ │ │ ├── postgresdb/ │ │ │ │ │ │ ├── 1587669153312-InitialMigration.ts │ │ │ │ │ │ ├── 1589476000887-WebhookModel.ts │ │ │ │ │ │ ├── 1594828256133-CreateIndexStoppedAt.ts │ │ │ │ │ │ ├── 1607431743768-MakeStoppedAtNullable.ts │ │ │ │ │ │ ├── 1611144599516-AddWebhookId.ts │ │ │ │ │ │ ├── 1617270242566-CreateTagEntity.ts │ │ │ │ │ │ ├── 1620824779533-UniqueWorkflowNames.ts │ │ │ │ │ │ ├── 1626176912946-AddwaitTill.ts │ │ │ │ │ │ ├── 1630419189837-UpdateWorkflowCredentials.ts │ │ │ │ │ │ ├── 1644422880309-AddExecutionEntityIndexes.ts │ │ │ │ │ │ ├── 1646834195327-IncreaseTypeVarcharLimit.ts │ │ │ │ │ │ ├── 1646992772331-CreateUserManagement.ts │ │ │ │ │ │ ├── 1648740597343-LowerCaseUserEmail.ts │ │ │ │ │ │ ├── 1652254514002-CommunityNodes.ts │ │ │ │ │ │ ├── 1652367743993-AddUserSettings.ts │ │ │ │ │ │ ├── 1652905585850-AddAPIKeyColumn.ts │ │ │ │ │ │ ├── 1654090467022-IntroducePinData.ts │ │ │ │ │ │ ├── 1658932090381-AddNodeIds.ts │ │ │ │ │ │ ├── 1659902242948-AddJsonKeyPinData.ts │ │ │ │ │ │ ├── 1660062385367-CreateCredentialsUserRole.ts │ │ │ │ │ │ ├── 1663755770893-CreateWorkflowsEditorRole.ts │ │ │ │ │ │ ├── 1664196174001-WorkflowStatistics.ts │ │ │ │ │ │ ├── 1665484192212-CreateCredentialUsageTable.ts │ │ │ │ │ │ ├── 1665754637025-RemoveCredentialUsageTable.ts │ │ │ │ │ │ ├── 1669739707126-AddWorkflowVersionIdColumn.ts │ │ │ │ │ │ ├── 1669823906995-AddTriggerCountColumn.ts │ │ │ │ │ │ ├── 1671535397530-MessageEventBusDestinations.ts │ │ │ │ │ │ ├── 1671726148421-RemoveWorkflowDataLoadedFlag.ts │ │ │ │ │ │ ├── 1673268682475-DeleteExecutionsWithWorkflows.ts │ │ │ │ │ │ ├── 1674138566000-AddStatusToExecutions.ts │ │ │ │ │ │ ├── 1676996103000-MigrateExecutionStatus.ts │ │ │ │ │ │ ├── 1677236854063-UpdateRunningExecutionStatus.ts │ │ │ │ │ │ ├── 1677501636754-CreateVariables.ts │ │ │ │ │ │ ├── 1679416281778-CreateExecutionMetadataTable.ts │ │ │ │ │ │ ├── 1681134145996-AddUserActivatedProperty.ts │ │ │ │ │ │ ├── 1681134145997-RemoveSkipOwnerSetup.ts │ │ │ │ │ │ ├── 1690000000000-MigrateIntegerKeysToString.ts │ │ │ │ │ │ ├── 1690000000020-SeparateExecutionData.ts │ │ │ │ │ │ ├── 1690787606731-AddMissingPrimaryKeyOnExecutionData.ts │ │ │ │ │ │ ├── 1694091729095-MigrateToTimestampTz.ts │ │ │ │ │ │ ├── 1717498465931-AddActivatedAtUserSetting.ts │ │ │ │ │ │ ├── 1721377157740-FixExecutionMetadataSequence.ts │ │ │ │ │ │ ├── 1731582748663-MigrateTestDefinitionKeyToString.ts │ │ │ │ │ │ ├── 1740445074052-UpdateParentFolderIdColumn.ts │ │ │ │ │ │ ├── 1758794506893-AddProjectIdToVariableTable.ts │ │ │ │ │ │ ├── 1761047826451-AddWorkflowVersionColumn.ts │ │ │ │ │ │ ├── 1761655473000-ChangeDependencyInfoToJson.ts │ │ │ │ │ │ ├── 1762771264000-ChangeDefaultForIdInUserTable.ts │ │ │ │ │ │ ├── 1765804780000-ConvertAgentIdToUuid.ts │ │ │ │ │ │ ├── 1766500000000-ExpandInsightsWorkflowIdLength.ts │ │ │ │ │ │ ├── 1767018516000-ChangeWorkflowStatisticsFKToNoAction.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── sqlite/ │ │ │ │ │ ├── 1588102412422-InitialMigration.ts │ │ │ │ │ ├── 1592445003908-WebhookModel.ts │ │ │ │ │ ├── 1594825041918-CreateIndexStoppedAt.ts │ │ │ │ │ ├── 1607431743769-MakeStoppedAtNullable.ts │ │ │ │ │ ├── 1611071044839-AddWebhookId.ts │ │ │ │ │ ├── 1617213344594-CreateTagEntity.ts │ │ │ │ │ ├── 1621707690587-AddWaitColumn.ts │ │ │ │ │ ├── 1644421939510-AddExecutionEntityIndexes.ts │ │ │ │ │ ├── 1646992772331-CreateUserManagement.ts │ │ │ │ │ ├── 1648740597343-LowerCaseUserEmail.ts │ │ │ │ │ ├── 1652254514001-CommunityNodes.ts │ │ │ │ │ ├── 1652367743993-AddUserSettings.ts │ │ │ │ │ ├── 1652905585850-AddAPIKeyColumn.ts │ │ │ │ │ ├── 1654089251344-IntroducePinData.ts │ │ │ │ │ ├── 1660062385367-CreateCredentialsUserRole.ts │ │ │ │ │ ├── 1663755770892-CreateWorkflowsUserRole.ts │ │ │ │ │ ├── 1664196174000-WorkflowStatistics.ts │ │ │ │ │ ├── 1665484192211-CreateCredentialUsageTable.ts │ │ │ │ │ ├── 1665754637024-RemoveCredentialUsageTable.ts │ │ │ │ │ ├── 1669823906993-AddTriggerCountColumn.ts │ │ │ │ │ ├── 1671535397530-MessageEventBusDestinations.ts │ │ │ │ │ ├── 1673268682475-DeleteExecutionsWithWorkflows.ts │ │ │ │ │ ├── 1674138566000-AddStatusToExecutions.ts │ │ │ │ │ ├── 1676996103000-MigrateExecutionStatus.ts │ │ │ │ │ ├── 1677237073720-UpdateRunningExecutionStatus.ts │ │ │ │ │ ├── 1677501636752-CreateVariables.ts │ │ │ │ │ ├── 1679416281777-CreateExecutionMetadataTable.ts │ │ │ │ │ ├── 1681134145996-AddUserActivatedProperty.ts │ │ │ │ │ ├── 1681134145997-RemoveSkipOwnerSetup.ts │ │ │ │ │ ├── 1690000000002-MigrateIntegerKeysToString.ts │ │ │ │ │ ├── 1690000000010-SeparateExecutionData.ts │ │ │ │ │ ├── 1690000000020-FixMissingIndicesFromStringIdMigration.ts │ │ │ │ │ ├── 1690000000030-RemoveResetPasswordColumns.ts │ │ │ │ │ ├── 1690000000040-AddMfaColumns.ts │ │ │ │ │ ├── 1693491613982-ExecutionSoftDelete.ts │ │ │ │ │ ├── 1695128658538-AddWorkflowMetadata.ts │ │ │ │ │ ├── 1705429061930-DropRoleMapping.ts │ │ │ │ │ ├── 1717498465931-AddActivatedAtUserSetting.ts │ │ │ │ │ ├── 1724951148974-AddApiKeysTable.ts │ │ │ │ │ ├── 1728659839644-AddMissingPrimaryKeyOnAnnotationTagMapping.ts │ │ │ │ │ ├── 1729607673469-AddProjectIcons.ts │ │ │ │ │ ├── 1731404028106-AddDescriptionToTestDefinition.ts │ │ │ │ │ ├── 1731582748663-MigrateTestDefinitionKeyToString.ts │ │ │ │ │ ├── 1738709609940-CreateFolderTable.ts │ │ │ │ │ ├── 1740445074052-UpdateParentFolderIdColumn.ts │ │ │ │ │ ├── 1742918400000-AddScopesColumnToApiKeys.ts │ │ │ │ │ ├── 1758794506893-AddProjectIdToVariableTable.ts │ │ │ │ │ ├── 1761047826451-AddWorkflowVersionColumn.ts │ │ │ │ │ ├── 1761655473000-ChangeDependencyInfoToJson.ts │ │ │ │ │ ├── 1764276827837-AddCreatorIdToProjectTable.ts │ │ │ │ │ ├── 1764689448000-AddResolvableFieldsToCredentials.ts │ │ │ │ │ ├── 1765886667897-AddAgentIdForeignKeys.ts │ │ │ │ │ ├── 1766068346315-AddChatMessageIndices.ts │ │ │ │ │ ├── 1767018516000-ChangeWorkflowStatisticsFKToNoAction.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── repositories/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── credential-dependency.repository.test.ts │ │ │ │ │ │ ├── credentials.repository.test.ts │ │ │ │ │ │ ├── execution.repository.test.ts │ │ │ │ │ │ ├── secrets-provider-connection.repository.ee.test.ts │ │ │ │ │ │ ├── shared-credentials.repository.test.ts │ │ │ │ │ │ ├── shared-workflow.repository.test.ts │ │ │ │ │ │ └── workflow.repository.test.ts │ │ │ │ │ ├── annotation-tag-mapping.repository.ee.ts │ │ │ │ │ ├── annotation-tag.repository.ee.ts │ │ │ │ │ ├── api-key.repository.ts │ │ │ │ │ ├── auth-identity.repository.ts │ │ │ │ │ ├── auth-provider-sync-history.repository.ts │ │ │ │ │ ├── binary-data.repository.ts │ │ │ │ │ ├── credential-dependency.repository.ts │ │ │ │ │ ├── credentials.repository.ts │ │ │ │ │ ├── execution-annotation.repository.ts │ │ │ │ │ ├── execution-data.repository.ts │ │ │ │ │ ├── execution-metadata.repository.ts │ │ │ │ │ ├── execution.repository.ts │ │ │ │ │ ├── folder-tag-mapping.repository.ts │ │ │ │ │ ├── folder.repository.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── invalid-auth-token.repository.ts │ │ │ │ │ ├── license-metrics.repository.ts │ │ │ │ │ ├── processed-data.repository.ts │ │ │ │ │ ├── project-relation.repository.ts │ │ │ │ │ ├── project-secrets-provider-access.repository.ee.ts │ │ │ │ │ ├── project.repository.ts │ │ │ │ │ ├── role-mapping-rule.repository.ts │ │ │ │ │ ├── role.repository.ts │ │ │ │ │ ├── scope.repository.ts │ │ │ │ │ ├── secrets-provider-connection.repository.ee.ts │ │ │ │ │ ├── settings.repository.ts │ │ │ │ │ ├── shared-credentials.repository.ts │ │ │ │ │ ├── shared-workflow.repository.ts │ │ │ │ │ ├── tag.repository.ts │ │ │ │ │ ├── test-case-execution.repository.ee.ts │ │ │ │ │ ├── test-run.repository.ee.ts │ │ │ │ │ ├── user.repository.ts │ │ │ │ │ ├── variables.repository.ts │ │ │ │ │ ├── webhook.repository.ts │ │ │ │ │ ├── workflow-dependency.repository.ts │ │ │ │ │ ├── workflow-history.repository.ts │ │ │ │ │ ├── workflow-publish-history.repository.ts │ │ │ │ │ ├── workflow-published-version.repository.ts │ │ │ │ │ ├── workflow-statistics.repository.ts │ │ │ │ │ ├── workflow-tag-mapping.repository.ts │ │ │ │ │ └── workflow.repository.ts │ │ │ │ ├── services/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── db-lock.service.test.ts │ │ │ │ │ ├── auth.roles.service.ts │ │ │ │ │ ├── db-lock.service.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── subscribers/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── user-subscriber.ts │ │ │ │ └── utils/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── build-workflows-by-nodes-query.test.ts │ │ │ │ │ └── get-test-run-final-result.ee.test.ts │ │ │ │ ├── build-workflows-by-nodes-query.ts │ │ │ │ ├── generators.ts │ │ │ │ ├── get-final-test-result.ts │ │ │ │ ├── is-string-array.ts │ │ │ │ ├── is-valid-email.ts │ │ │ │ ├── separate.ts │ │ │ │ ├── sql.ts │ │ │ │ ├── test-utils/ │ │ │ │ │ ├── mock-entity-manager.ts │ │ │ │ │ └── mock-instance.ts │ │ │ │ ├── timed-query.ts │ │ │ │ ├── transaction.ts │ │ │ │ ├── transformers.ts │ │ │ │ └── validators/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── no-url.validator.test.ts │ │ │ │ │ └── no-xss.validator.test.ts │ │ │ │ ├── no-url.validator.ts │ │ │ │ └── no-xss.validator.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── decorators/ │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── memoized.test.ts │ │ │ │ │ └── redactable.test.ts │ │ │ │ ├── auth-handler/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── auth-handler-metadata.test.ts │ │ │ │ │ ├── auth-handler-metadata.ts │ │ │ │ │ ├── auth-handler.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── breaking-change-rule/ │ │ │ │ │ ├── breaking-change-rule-metadata.ts │ │ │ │ │ ├── breaking-change-rule.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── command/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── command.test.ts │ │ │ │ │ ├── command-metadata.ts │ │ │ │ │ ├── command.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── context-establishment/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── context-establishment-hook.test.ts │ │ │ │ │ ├── context-establishment-hook-metadata.ts │ │ │ │ │ ├── context-establishment-hook.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── controller/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── args.test.ts │ │ │ │ │ │ ├── controller-registry-metadata.test.ts │ │ │ │ │ │ ├── license.test.ts │ │ │ │ │ │ ├── rest-controller.test.ts │ │ │ │ │ │ ├── root-level-controller.test.ts │ │ │ │ │ │ ├── route.test.ts │ │ │ │ │ │ └── scoped.test.ts │ │ │ │ │ ├── args.ts │ │ │ │ │ ├── controller-registry-metadata.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── licensed.ts │ │ │ │ │ ├── middleware.ts │ │ │ │ │ ├── rate-limit.ts │ │ │ │ │ ├── rest-controller.ts │ │ │ │ │ ├── root-level-controller.ts │ │ │ │ │ ├── route.ts │ │ │ │ │ ├── scoped.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── credential-resolver/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── credential-resolver.test.ts │ │ │ │ │ ├── credential-resolver-metadata.ts │ │ │ │ │ ├── credential-resolver.ts │ │ │ │ │ ├── errors.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── debounce.ts │ │ │ │ ├── errors.ts │ │ │ │ ├── execution-lifecycle/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── on-lifecycle-event.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── lifecycle-metadata.ts │ │ │ │ │ └── on-lifecycle-event.ts │ │ │ │ ├── index.ts │ │ │ │ ├── memoized.ts │ │ │ │ ├── module/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── module.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── module-metadata.ts │ │ │ │ │ └── module.ts │ │ │ │ ├── multi-main/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── on-multi-main-event.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── multi-main-metadata.ts │ │ │ │ │ └── on-multi-main-event.ts │ │ │ │ ├── pubsub/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── on-pubsub-event.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── on-pubsub-event.ts │ │ │ │ │ └── pubsub-metadata.ts │ │ │ │ ├── redactable.ts │ │ │ │ ├── shutdown/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── on-shutdown.test.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── on-shutdown.ts │ │ │ │ │ ├── shutdown-metadata.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── timed.ts │ │ │ │ └── types.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── vitest.config.ts │ │ ├── di/ │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── circular-depedency.test.ts │ │ │ │ │ ├── di.test.ts │ │ │ │ │ └── fixtures/ │ │ │ │ │ ├── service-a.ts │ │ │ │ │ └── service-b.ts │ │ │ │ └── di.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── errors/ │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── application.error.ts │ │ │ │ ├── index.ts │ │ │ │ └── types.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── eslint-config/ │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── configs/ │ │ │ │ │ ├── base.ts │ │ │ │ │ ├── frontend.ts │ │ │ │ │ └── node.ts │ │ │ │ ├── plugin.ts │ │ │ │ ├── plugins.d.ts │ │ │ │ ├── rules/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── misplaced-n8n-typeorm-import.ts │ │ │ │ │ ├── no-argument-spread.test.ts │ │ │ │ │ ├── no-argument-spread.ts │ │ │ │ │ ├── no-constructor-in-backend-module.test.ts │ │ │ │ │ ├── no-constructor-in-backend-module.ts │ │ │ │ │ ├── no-dynamic-import-template.ts │ │ │ │ │ ├── no-import-enterprise-edition.test.ts │ │ │ │ │ ├── no-import-enterprise-edition.ts │ │ │ │ │ ├── no-internal-package-import.test.ts │ │ │ │ │ ├── no-internal-package-import.ts │ │ │ │ │ ├── no-interpolation-in-regular-string.ts │ │ │ │ │ ├── no-json-parse-json-stringify.test.ts │ │ │ │ │ ├── no-json-parse-json-stringify.ts │ │ │ │ │ ├── no-plain-errors.ts │ │ │ │ │ ├── no-skipped-tests.ts │ │ │ │ │ ├── no-top-level-relative-imports-in-backend-module.test.ts │ │ │ │ │ ├── no-top-level-relative-imports-in-backend-module.ts │ │ │ │ │ ├── no-type-only-import-in-di.test.ts │ │ │ │ │ ├── no-type-only-import-in-di.ts │ │ │ │ │ ├── no-type-unsafe-event-emitter.ts │ │ │ │ │ ├── no-uncaught-json-parse.test.ts │ │ │ │ │ ├── no-uncaught-json-parse.ts │ │ │ │ │ ├── no-unneeded-backticks.ts │ │ │ │ │ ├── no-untyped-config-class-field.ts │ │ │ │ │ ├── no-unused-param-catch-clause.ts │ │ │ │ │ ├── no-useless-catch-throw.test.ts │ │ │ │ │ └── no-useless-catch-throw.ts │ │ │ │ └── utils/ │ │ │ │ └── json.ts │ │ │ ├── tsconfig.json │ │ │ └── vite.config.ts │ │ ├── eslint-plugin-community-nodes/ │ │ │ ├── README.md │ │ │ ├── docs/ │ │ │ │ └── rules/ │ │ │ │ ├── ai-node-package-json.md │ │ │ │ ├── cred-class-field-icon-missing.md │ │ │ │ ├── credential-documentation-url.md │ │ │ │ ├── credential-password-field.md │ │ │ │ ├── credential-test-required.md │ │ │ │ ├── icon-validation.md │ │ │ │ ├── no-credential-reuse.md │ │ │ │ ├── no-deprecated-workflow-functions.md │ │ │ │ ├── no-http-request-with-manual-auth.md │ │ │ │ ├── no-restricted-globals.md │ │ │ │ ├── no-restricted-imports.md │ │ │ │ ├── node-class-description-icon-missing.md │ │ │ │ ├── node-usable-as-tool.md │ │ │ │ ├── package-name-convention.md │ │ │ │ └── resource-operation-pattern.md │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── plugin.ts │ │ │ │ ├── rules/ │ │ │ │ │ ├── ai-node-package-json.test.ts │ │ │ │ │ ├── ai-node-package-json.ts │ │ │ │ │ ├── cred-class-field-icon-missing.test.ts │ │ │ │ │ ├── cred-class-field-icon-missing.ts │ │ │ │ │ ├── credential-documentation-url.test.ts │ │ │ │ │ ├── credential-documentation-url.ts │ │ │ │ │ ├── credential-password-field.test.ts │ │ │ │ │ ├── credential-password-field.ts │ │ │ │ │ ├── credential-test-required.test.ts │ │ │ │ │ ├── credential-test-required.ts │ │ │ │ │ ├── icon-validation.test.ts │ │ │ │ │ ├── icon-validation.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── no-credential-reuse.test.ts │ │ │ │ │ ├── no-credential-reuse.ts │ │ │ │ │ ├── no-deprecated-workflow-functions.test.ts │ │ │ │ │ ├── no-deprecated-workflow-functions.ts │ │ │ │ │ ├── no-http-request-with-manual-auth.test.ts │ │ │ │ │ ├── no-http-request-with-manual-auth.ts │ │ │ │ │ ├── no-restricted-globals.test.ts │ │ │ │ │ ├── no-restricted-globals.ts │ │ │ │ │ ├── no-restricted-imports.test.ts │ │ │ │ │ ├── no-restricted-imports.ts │ │ │ │ │ ├── node-class-description-icon-missing.test.ts │ │ │ │ │ ├── node-class-description-icon-missing.ts │ │ │ │ │ ├── node-usable-as-tool.test.ts │ │ │ │ │ ├── node-usable-as-tool.ts │ │ │ │ │ ├── package-name-convention.test.ts │ │ │ │ │ ├── package-name-convention.ts │ │ │ │ │ ├── resource-operation-pattern.test.ts │ │ │ │ │ └── resource-operation-pattern.ts │ │ │ │ └── utils/ │ │ │ │ ├── ast-utils.ts │ │ │ │ ├── file-utils.ts │ │ │ │ ├── index.ts │ │ │ │ └── rule-creator.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.eslint.json │ │ │ ├── tsconfig.json │ │ │ └── vite.config.ts │ │ ├── expression-runtime/ │ │ │ ├── ARCHITECTURE.md │ │ │ ├── README.md │ │ │ ├── docs/ │ │ │ │ ├── architecture-diagram.mmd │ │ │ │ ├── deep-lazy-proxy.md │ │ │ │ └── implementation-phases.md │ │ │ ├── esbuild.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── integration.test.ts │ │ │ │ ├── bridge/ │ │ │ │ │ └── isolated-vm-bridge.ts │ │ │ │ ├── evaluator/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── expression-evaluator-cache.test.ts │ │ │ │ │ │ └── lru-cache.test.ts │ │ │ │ │ ├── expression-evaluator.ts │ │ │ │ │ └── lru-cache.ts │ │ │ │ ├── extensions/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── string-extensions.test.ts │ │ │ │ │ ├── array-extensions.ts │ │ │ │ │ ├── boolean-extensions.ts │ │ │ │ │ ├── date-extensions.ts │ │ │ │ │ ├── expression-extension-error.ts │ │ │ │ │ ├── extend.ts │ │ │ │ │ ├── extensions.ts │ │ │ │ │ ├── function-extensions.ts │ │ │ │ │ ├── number-extensions.ts │ │ │ │ │ ├── object-extensions.ts │ │ │ │ │ ├── string-extensions.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── index.ts │ │ │ │ ├── pool/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── isolate-pool.test.ts │ │ │ │ │ └── isolate-pool.ts │ │ │ │ ├── runtime/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── lazy-proxy.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── lazy-proxy.ts │ │ │ │ │ ├── reset.ts │ │ │ │ │ ├── safe-globals.ts │ │ │ │ │ └── serialize.ts │ │ │ │ └── types/ │ │ │ │ ├── bridge.ts │ │ │ │ ├── evaluator.ts │ │ │ │ ├── index.ts │ │ │ │ └── runtime.ts │ │ │ ├── tsconfig.build.cjs.json │ │ │ ├── tsconfig.build.esm.json │ │ │ ├── tsconfig.json │ │ │ └── vitest.config.ts │ │ ├── extension-sdk/ │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── schema.json │ │ │ ├── scripts/ │ │ │ │ └── create-json-schema.ts │ │ │ ├── src/ │ │ │ │ ├── backend/ │ │ │ │ │ ├── define.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── frontend/ │ │ │ │ │ ├── define.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── index.ts │ │ │ │ ├── schema.ts │ │ │ │ └── shims.d.ts │ │ │ ├── tsconfig.backend.json │ │ │ ├── tsconfig.common.json │ │ │ ├── tsconfig.frontend.json │ │ │ ├── tsconfig.json │ │ │ ├── tsconfig.scripts.json │ │ │ └── tsdown.config.ts │ │ ├── fs-proxy/ │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── spec/ │ │ │ │ ├── local-gateway.md │ │ │ │ └── technical-spec.md │ │ │ ├── src/ │ │ │ │ ├── __mocks__/ │ │ │ │ │ └── @inquirer/ │ │ │ │ │ └── prompts.ts │ │ │ │ ├── cli.ts │ │ │ │ ├── config-templates.test.ts │ │ │ │ ├── config-templates.ts │ │ │ │ ├── config.ts │ │ │ │ ├── confirm-resource-cli.ts │ │ │ │ ├── daemon.ts │ │ │ │ ├── gateway-client.ts │ │ │ │ ├── logger.test.ts │ │ │ │ ├── logger.ts │ │ │ │ ├── settings-store.ts │ │ │ │ ├── sharp.d.ts │ │ │ │ ├── startup-config-cli.test.ts │ │ │ │ ├── startup-config-cli.ts │ │ │ │ └── tools/ │ │ │ │ ├── browser/ │ │ │ │ │ └── index.ts │ │ │ │ ├── filesystem/ │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── copy-file.test.ts │ │ │ │ │ ├── copy-file.ts │ │ │ │ │ ├── create-directory.test.ts │ │ │ │ │ ├── create-directory.ts │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ ├── delete.ts │ │ │ │ │ ├── edit-file.test.ts │ │ │ │ │ ├── edit-file.ts │ │ │ │ │ ├── fs-utils.test.ts │ │ │ │ │ ├── fs-utils.ts │ │ │ │ │ ├── get-file-tree.test.ts │ │ │ │ │ ├── get-file-tree.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── list-files.test.ts │ │ │ │ │ ├── list-files.ts │ │ │ │ │ ├── move.test.ts │ │ │ │ │ ├── move.ts │ │ │ │ │ ├── read-file.test.ts │ │ │ │ │ ├── read-file.ts │ │ │ │ │ ├── search-files.test.ts │ │ │ │ │ ├── search-files.ts │ │ │ │ │ ├── write-file.test.ts │ │ │ │ │ └── write-file.ts │ │ │ │ ├── monitor-utils.ts │ │ │ │ ├── mouse-keyboard/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── mouse-keyboard.test.ts │ │ │ │ │ └── mouse-keyboard.ts │ │ │ │ ├── screenshot/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── screenshot.test.ts │ │ │ │ │ └── screenshot.ts │ │ │ │ ├── shell/ │ │ │ │ │ ├── build-shell-resource.test.ts │ │ │ │ │ ├── build-shell-resource.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── shell-execute.test.ts │ │ │ │ │ └── shell-execute.ts │ │ │ │ ├── test-utils.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── imap/ │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── errors.ts │ │ │ │ ├── helpers/ │ │ │ │ │ └── get-message.ts │ │ │ │ ├── imap-simple.test.ts │ │ │ │ ├── imap-simple.ts │ │ │ │ ├── index.ts │ │ │ │ ├── part-data.test.ts │ │ │ │ ├── part-data.ts │ │ │ │ └── types.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── vite.config.ts │ │ ├── instance-ai/ │ │ │ ├── CLAUDE.md │ │ │ ├── docs/ │ │ │ │ ├── ENGINEERING.md │ │ │ │ ├── architecture.md │ │ │ │ ├── configuration.md │ │ │ │ ├── filesystem-access.md │ │ │ │ ├── memory.md │ │ │ │ ├── sandboxing.md │ │ │ │ ├── streaming-protocol.md │ │ │ │ └── tools.md │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── agent/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── register-with-mastra.test.ts │ │ │ │ │ │ ├── sanitize-mcp-schemas.test.ts │ │ │ │ │ │ └── system-prompt.test.ts │ │ │ │ │ ├── instance-agent.ts │ │ │ │ │ ├── register-with-mastra.ts │ │ │ │ │ ├── sanitize-mcp-schemas.ts │ │ │ │ │ ├── sub-agent-factory.ts │ │ │ │ │ └── system-prompt.ts │ │ │ │ ├── compaction/ │ │ │ │ │ ├── compaction-helper.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── domain-access/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── domain-access-tracker.test.ts │ │ │ │ │ │ └── domain-gating.test.ts │ │ │ │ │ ├── domain-access-tracker.ts │ │ │ │ │ ├── domain-gating.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── event-bus/ │ │ │ │ │ ├── event-bus.interface.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── index.ts │ │ │ │ ├── mcp/ │ │ │ │ │ └── mcp-client-manager.ts │ │ │ │ ├── memory/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── memory-config.test.ts │ │ │ │ │ │ └── title-utils.test.ts │ │ │ │ │ ├── memory-config.ts │ │ │ │ │ ├── title-utils.ts │ │ │ │ │ └── working-memory-template.ts │ │ │ │ ├── planned-tasks/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── planned-task-service.test.ts │ │ │ │ │ └── planned-task-service.ts │ │ │ │ ├── runtime/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── background-task-manager.test.ts │ │ │ │ │ │ ├── resumable-stream-executor.test.ts │ │ │ │ │ │ ├── run-state-registry.test.ts │ │ │ │ │ │ └── stream-runner.test.ts │ │ │ │ │ ├── background-task-manager.ts │ │ │ │ │ ├── resumable-stream-executor.ts │ │ │ │ │ ├── run-state-registry.ts │ │ │ │ │ ├── stream-runner.ts │ │ │ │ │ └── working-memory-tracing.ts │ │ │ │ ├── storage/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── iteration-log.test.ts │ │ │ │ │ │ ├── mastra-iteration-log-storage.test.ts │ │ │ │ │ │ ├── mastra-task-storage.test.ts │ │ │ │ │ │ ├── thread-patch.test.ts │ │ │ │ │ │ └── workflow-loop-storage.test.ts │ │ │ │ │ ├── agent-tree-snapshot.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── iteration-log.ts │ │ │ │ │ ├── mastra-iteration-log-storage.ts │ │ │ │ │ ├── mastra-task-storage.ts │ │ │ │ │ ├── planned-task-storage.ts │ │ │ │ │ ├── thread-patch.ts │ │ │ │ │ └── workflow-loop-storage.ts │ │ │ │ ├── stream/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── map-chunk.test.ts │ │ │ │ │ ├── consume-with-hitl.ts │ │ │ │ │ └── map-chunk.ts │ │ │ │ ├── tools/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── best-practices.test.ts │ │ │ │ │ │ ├── get-best-practices.tool.test.ts │ │ │ │ │ │ ├── mermaid.utils.test.ts │ │ │ │ │ │ ├── node-configuration.utils.test.ts │ │ │ │ │ │ ├── search-template-parameters.tool.test.ts │ │ │ │ │ │ └── search-template-structures.tool.test.ts │ │ │ │ │ ├── best-practices/ │ │ │ │ │ │ ├── get-best-practices.tool.ts │ │ │ │ │ │ ├── guides/ │ │ │ │ │ │ │ ├── chatbot.ts │ │ │ │ │ │ │ ├── content-generation.ts │ │ │ │ │ │ │ ├── data-extraction.ts │ │ │ │ │ │ │ ├── data-persistence.ts │ │ │ │ │ │ │ ├── data-transformation.ts │ │ │ │ │ │ │ ├── document-processing.ts │ │ │ │ │ │ │ ├── form-input.ts │ │ │ │ │ │ │ ├── notification.ts │ │ │ │ │ │ │ ├── scheduling.ts │ │ │ │ │ │ │ ├── scraping-and-research.ts │ │ │ │ │ │ │ └── triage.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── techniques.ts │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── delete-credential.tool.test.ts │ │ │ │ │ │ │ ├── get-credential.tool.test.ts │ │ │ │ │ │ │ ├── search-credential-types.tool.test.ts │ │ │ │ │ │ │ └── setup-credentials-mock.tool.test.ts │ │ │ │ │ │ ├── delete-credential.tool.ts │ │ │ │ │ │ ├── get-credential.tool.ts │ │ │ │ │ │ ├── list-credentials.tool.ts │ │ │ │ │ │ ├── search-credential-types.tool.ts │ │ │ │ │ │ ├── setup-credentials.tool.ts │ │ │ │ │ │ └── test-credential.tool.ts │ │ │ │ │ ├── data-tables/ │ │ │ │ │ │ ├── add-data-table-column.tool.ts │ │ │ │ │ │ ├── create-data-table.tool.ts │ │ │ │ │ │ ├── delete-data-table-column.tool.ts │ │ │ │ │ │ ├── delete-data-table-rows.tool.ts │ │ │ │ │ │ ├── delete-data-table.tool.ts │ │ │ │ │ │ ├── get-data-table-schema.tool.ts │ │ │ │ │ │ ├── insert-data-table-rows.tool.ts │ │ │ │ │ │ ├── list-data-tables.tool.ts │ │ │ │ │ │ ├── query-data-table-rows.tool.ts │ │ │ │ │ │ ├── rename-data-table-column.tool.ts │ │ │ │ │ │ └── update-data-table-rows.tool.ts │ │ │ │ │ ├── executions/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── get-execution.tool.test.ts │ │ │ │ │ │ │ ├── get-node-output.tool.test.ts │ │ │ │ │ │ │ └── list-executions.tool.test.ts │ │ │ │ │ │ ├── debug-execution.tool.ts │ │ │ │ │ │ ├── get-execution.tool.ts │ │ │ │ │ │ ├── get-node-output.tool.ts │ │ │ │ │ │ ├── list-executions.tool.ts │ │ │ │ │ │ ├── run-workflow.tool.ts │ │ │ │ │ │ └── stop-execution.tool.ts │ │ │ │ │ ├── filesystem/ │ │ │ │ │ │ ├── create-tools-from-mcp-server.ts │ │ │ │ │ │ ├── get-file-tree.tool.ts │ │ │ │ │ │ ├── list-files.tool.ts │ │ │ │ │ │ ├── read-file.tool.ts │ │ │ │ │ │ └── search-files.tool.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── get-suggested-nodes.tool.test.ts │ │ │ │ │ │ │ └── node-search-engine.test.ts │ │ │ │ │ │ ├── explore-node-resources.tool.ts │ │ │ │ │ │ ├── get-node-description.tool.ts │ │ │ │ │ │ ├── get-node-type-definition.tool.ts │ │ │ │ │ │ ├── get-suggested-nodes.tool.ts │ │ │ │ │ │ ├── list-nodes.tool.ts │ │ │ │ │ │ ├── node-search-engine.ts │ │ │ │ │ │ ├── node-search-engine.types.ts │ │ │ │ │ │ ├── search-nodes.tool.ts │ │ │ │ │ │ └── suggested-nodes-data.ts │ │ │ │ │ ├── orchestration/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── correct-background-task.tool.test.ts │ │ │ │ │ │ │ ├── delegate.tool.test.ts │ │ │ │ │ │ │ ├── report-verification-verdict.tool.test.ts │ │ │ │ │ │ │ └── research-with-agent.tool.test.ts │ │ │ │ │ │ ├── browser-credential-setup.tool.ts │ │ │ │ │ │ ├── build-workflow-agent.prompt.ts │ │ │ │ │ │ ├── build-workflow-agent.tool.ts │ │ │ │ │ │ ├── cancel-background-task.tool.ts │ │ │ │ │ │ ├── correct-background-task.tool.ts │ │ │ │ │ │ ├── data-table-agent.prompt.ts │ │ │ │ │ │ ├── data-table-agent.tool.ts │ │ │ │ │ │ ├── delegate.schemas.ts │ │ │ │ │ │ ├── delegate.tool.ts │ │ │ │ │ │ ├── display-utils.ts │ │ │ │ │ │ ├── plan.tool.ts │ │ │ │ │ │ ├── report-verification-verdict.tool.ts │ │ │ │ │ │ ├── research-agent-prompt.ts │ │ │ │ │ │ ├── research-with-agent.tool.ts │ │ │ │ │ │ ├── tracing-utils.ts │ │ │ │ │ │ ├── update-tasks.tool.ts │ │ │ │ │ │ └── verify-built-workflow.tool.ts │ │ │ │ │ ├── shared/ │ │ │ │ │ │ └── ask-user.tool.ts │ │ │ │ │ ├── templates/ │ │ │ │ │ │ ├── search-template-parameters.tool.ts │ │ │ │ │ │ ├── search-template-structures.tool.ts │ │ │ │ │ │ ├── template-api.ts │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ ├── mermaid.utils.ts │ │ │ │ │ │ └── node-configuration.utils.ts │ │ │ │ │ ├── web-research/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── fetch-url.tool.test.ts │ │ │ │ │ │ │ └── web-search.tool.test.ts │ │ │ │ │ │ ├── fetch-url.tool.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── sanitize-web-content.ts │ │ │ │ │ │ └── web-search.tool.ts │ │ │ │ │ ├── workflows/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── delete-workflow.tool.test.ts │ │ │ │ │ │ │ ├── get-workflow.tool.test.ts │ │ │ │ │ │ │ ├── list-workflow-versions.tool.test.ts │ │ │ │ │ │ │ ├── publish-workflow.tool.test.ts │ │ │ │ │ │ │ ├── resolve-credentials.test.ts │ │ │ │ │ │ │ ├── restore-workflow-version.tool.test.ts │ │ │ │ │ │ │ ├── setup-workflow.service.test.ts │ │ │ │ │ │ │ ├── setup-workflow.tool.test.ts │ │ │ │ │ │ │ ├── unpublish-workflow.tool.test.ts │ │ │ │ │ │ │ └── write-sandbox-file.tool.test.ts │ │ │ │ │ │ ├── apply-workflow-credentials.tool.ts │ │ │ │ │ │ ├── build-workflow.tool.ts │ │ │ │ │ │ ├── delete-workflow.tool.ts │ │ │ │ │ │ ├── get-workflow-as-code.tool.ts │ │ │ │ │ │ ├── get-workflow-version.tool.ts │ │ │ │ │ │ ├── get-workflow.tool.ts │ │ │ │ │ │ ├── list-workflow-versions.tool.ts │ │ │ │ │ │ ├── list-workflows.tool.ts │ │ │ │ │ │ ├── materialize-node-type.tool.ts │ │ │ │ │ │ ├── publish-workflow.tool.ts │ │ │ │ │ │ ├── resolve-credentials.ts │ │ │ │ │ │ ├── restore-workflow-version.tool.ts │ │ │ │ │ │ ├── setup-workflow.schema.ts │ │ │ │ │ │ ├── setup-workflow.service.ts │ │ │ │ │ │ ├── setup-workflow.tool.ts │ │ │ │ │ │ ├── submit-workflow.tool.ts │ │ │ │ │ │ ├── unpublish-workflow.tool.ts │ │ │ │ │ │ ├── update-workflow-version.tool.ts │ │ │ │ │ │ └── write-sandbox-file.tool.ts │ │ │ │ │ └── workspace/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── cleanup-test-executions.tool.test.ts │ │ │ │ │ │ ├── create-folder.tool.test.ts │ │ │ │ │ │ ├── delete-folder.tool.test.ts │ │ │ │ │ │ ├── list-folders.tool.test.ts │ │ │ │ │ │ ├── list-projects.tool.test.ts │ │ │ │ │ │ ├── list-tags.tool.test.ts │ │ │ │ │ │ ├── move-workflow-to-folder.tool.test.ts │ │ │ │ │ │ └── tag-workflow.tool.test.ts │ │ │ │ │ ├── cleanup-test-executions.tool.ts │ │ │ │ │ ├── create-folder.tool.ts │ │ │ │ │ ├── delete-folder.tool.ts │ │ │ │ │ ├── list-folders.tool.ts │ │ │ │ │ ├── list-projects.tool.ts │ │ │ │ │ ├── list-tags.tool.ts │ │ │ │ │ ├── move-workflow-to-folder.tool.ts │ │ │ │ │ └── tag-workflow.tool.ts │ │ │ │ ├── tracing/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── langsmith-tracing.test.ts │ │ │ │ │ └── langsmith-tracing.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── format-timestamp.test.ts │ │ │ │ │ │ └── stream-helpers.test.ts │ │ │ │ │ ├── agent-tree.ts │ │ │ │ │ ├── format-timestamp.ts │ │ │ │ │ └── stream-helpers.ts │ │ │ │ ├── workflow-builder/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── extract-code.test.ts │ │ │ │ │ │ ├── parse-validate.test.ts │ │ │ │ │ │ └── patch-code.test.ts │ │ │ │ │ ├── extract-code.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── parse-validate.ts │ │ │ │ │ ├── patch-code.ts │ │ │ │ │ ├── sdk-prompt-sections.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── workflow-loop/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── guidance.test.ts │ │ │ │ │ │ ├── workflow-loop-controller.test.ts │ │ │ │ │ │ └── workflow-task-service.test.ts │ │ │ │ │ ├── guidance.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── runtime.ts │ │ │ │ │ ├── workflow-loop-controller.ts │ │ │ │ │ ├── workflow-loop-state.ts │ │ │ │ │ └── workflow-task-service.ts │ │ │ │ └── workspace/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── create-workspace.test.ts │ │ │ │ │ ├── n8n-sandbox-client.test.ts │ │ │ │ │ ├── sandbox-fs.test.ts │ │ │ │ │ └── sandbox-setup.test.ts │ │ │ │ ├── builder-sandbox-factory.ts │ │ │ │ ├── create-workspace.ts │ │ │ │ ├── daytona-filesystem.ts │ │ │ │ ├── n8n-sandbox-client.ts │ │ │ │ ├── n8n-sandbox-filesystem.ts │ │ │ │ ├── n8n-sandbox-image-manager.ts │ │ │ │ ├── n8n-sandbox-sandbox.ts │ │ │ │ ├── sandbox-fs.ts │ │ │ │ ├── sandbox-setup.ts │ │ │ │ └── snapshot-manager.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── json-schema-to-zod/ │ │ │ ├── .gitignore │ │ │ ├── .npmignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── postcjs.cjs │ │ │ ├── postesm.cjs │ │ │ ├── src/ │ │ │ │ ├── index.ts │ │ │ │ ├── json-schema-to-zod.ts │ │ │ │ ├── parsers/ │ │ │ │ │ ├── parse-all-of.ts │ │ │ │ │ ├── parse-any-of.ts │ │ │ │ │ ├── parse-array.ts │ │ │ │ │ ├── parse-boolean.ts │ │ │ │ │ ├── parse-const.ts │ │ │ │ │ ├── parse-default.ts │ │ │ │ │ ├── parse-enum.ts │ │ │ │ │ ├── parse-if-then-else.ts │ │ │ │ │ ├── parse-multiple-type.ts │ │ │ │ │ ├── parse-not.ts │ │ │ │ │ ├── parse-null.ts │ │ │ │ │ ├── parse-nullable.ts │ │ │ │ │ ├── parse-number.ts │ │ │ │ │ ├── parse-object.ts │ │ │ │ │ ├── parse-one-of.ts │ │ │ │ │ ├── parse-schema.ts │ │ │ │ │ └── parse-string.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils/ │ │ │ │ ├── extend-schema.ts │ │ │ │ ├── half.ts │ │ │ │ ├── its.ts │ │ │ │ └── omit.ts │ │ │ ├── test/ │ │ │ │ ├── all.json │ │ │ │ ├── extend-expect.ts │ │ │ │ ├── jest.d.ts │ │ │ │ ├── json-schema-to-zod.test.ts │ │ │ │ ├── parsers/ │ │ │ │ │ ├── parse-all-of.test.ts │ │ │ │ │ ├── parse-any-of.test.ts │ │ │ │ │ ├── parse-array.test.ts │ │ │ │ │ ├── parse-const.test.ts │ │ │ │ │ ├── parse-enum.test.ts │ │ │ │ │ ├── parse-not.test.ts │ │ │ │ │ ├── parse-nullable.test.ts │ │ │ │ │ ├── parse-number.test.ts │ │ │ │ │ ├── parse-object.test.ts │ │ │ │ │ ├── parse-one-of.test.ts │ │ │ │ │ ├── parse-schema.test.ts │ │ │ │ │ └── parse-string.test.ts │ │ │ │ └── utils/ │ │ │ │ ├── half.test.ts │ │ │ │ └── omit.test.ts │ │ │ ├── tsconfig.cjs.json │ │ │ ├── tsconfig.esm.json │ │ │ ├── tsconfig.json │ │ │ └── tsconfig.types.json │ │ ├── local-gateway/ │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── assets/ │ │ │ │ ├── README.md │ │ │ │ └── icon.icns │ │ │ ├── electron-builder.config.js │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── main/ │ │ │ │ │ ├── daemon-controller.test.ts │ │ │ │ │ ├── daemon-controller.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── ipc-handlers.ts │ │ │ │ │ ├── preload.ts │ │ │ │ │ ├── settings-store.ts │ │ │ │ │ ├── settings-window.ts │ │ │ │ │ └── tray.ts │ │ │ │ ├── renderer/ │ │ │ │ │ ├── index.html │ │ │ │ │ ├── settings.ts │ │ │ │ │ └── styles.css │ │ │ │ └── shared/ │ │ │ │ └── types.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── tsconfig.renderer.json │ │ ├── mcp-browser/ │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── spec/ │ │ │ │ ├── browser-mcp.md │ │ │ │ └── technical-spec.md │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── errors.test.ts │ │ │ │ │ ├── server-config.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── adapters/ │ │ │ │ │ └── playwright.ts │ │ │ │ ├── browser-discovery.ts │ │ │ │ ├── cdp-relay-protocol.ts │ │ │ │ ├── cdp-relay.ts │ │ │ │ ├── connection.ts │ │ │ │ ├── errors.ts │ │ │ │ ├── index.ts │ │ │ │ ├── logger.ts │ │ │ │ ├── server-config.ts │ │ │ │ ├── server.ts │ │ │ │ ├── tools/ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── inspection.test.ts │ │ │ │ │ ├── inspection.ts │ │ │ │ │ ├── interaction.test.ts │ │ │ │ │ ├── interaction.ts │ │ │ │ │ ├── navigation.test.ts │ │ │ │ │ ├── navigation.ts │ │ │ │ │ ├── response-envelope.ts │ │ │ │ │ ├── schemas.ts │ │ │ │ │ ├── session.test.ts │ │ │ │ │ ├── session.ts │ │ │ │ │ ├── state.test.ts │ │ │ │ │ ├── state.ts │ │ │ │ │ ├── tabs.test.ts │ │ │ │ │ ├── tabs.ts │ │ │ │ │ ├── test-helpers.ts │ │ │ │ │ ├── wait.test.ts │ │ │ │ │ └── wait.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils.ts │ │ │ │ └── vendor.d.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── mcp-browser-extension/ │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── manifest.json │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── relayConnection.test.ts │ │ │ │ ├── background.ts │ │ │ │ ├── logger.ts │ │ │ │ ├── relayConnection.ts │ │ │ │ └── ui/ │ │ │ │ ├── App.vue │ │ │ │ ├── connect.html │ │ │ │ ├── main.ts │ │ │ │ ├── shimsVue.d.ts │ │ │ │ └── tokens.scss │ │ │ ├── tsconfig.json │ │ │ ├── vite.sw.config.mts │ │ │ └── vite.ui.config.mts │ │ ├── node-cli/ │ │ │ ├── README.md │ │ │ ├── bin/ │ │ │ │ └── n8n-node.mjs │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── scripts/ │ │ │ │ └── copy-templates.mjs │ │ │ ├── src/ │ │ │ │ ├── commands/ │ │ │ │ │ ├── build.test.ts │ │ │ │ │ ├── build.ts │ │ │ │ │ ├── cloud-support.test.ts │ │ │ │ │ ├── cloud-support.ts │ │ │ │ │ ├── dev/ │ │ │ │ │ │ ├── index.test.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── lint.test.ts │ │ │ │ │ ├── lint.ts │ │ │ │ │ ├── new/ │ │ │ │ │ │ ├── index.test.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── prompts.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── prerelease.test.ts │ │ │ │ │ ├── prerelease.ts │ │ │ │ │ ├── release.test.ts │ │ │ │ │ └── release.ts │ │ │ │ ├── configs/ │ │ │ │ │ └── eslint.ts │ │ │ │ ├── index.ts │ │ │ │ ├── modules.d.ts │ │ │ │ ├── template/ │ │ │ │ │ ├── core.test.ts │ │ │ │ │ ├── core.ts │ │ │ │ │ └── templates/ │ │ │ │ │ ├── declarative/ │ │ │ │ │ │ ├── custom/ │ │ │ │ │ │ │ ├── ast.ts │ │ │ │ │ │ │ ├── prompts.ts │ │ │ │ │ │ │ ├── template/ │ │ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ │ │ │ └── Example/ │ │ │ │ │ │ │ │ │ ├── Example.node.json │ │ │ │ │ │ │ │ │ ├── Example.node.ts │ │ │ │ │ │ │ │ │ └── resources/ │ │ │ │ │ │ │ │ │ ├── company/ │ │ │ │ │ │ │ │ │ │ ├── getAll.ts │ │ │ │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ │ │ │ └── user/ │ │ │ │ │ │ │ │ │ ├── create.ts │ │ │ │ │ │ │ │ │ ├── get.ts │ │ │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ │ │ └── tsconfig.json │ │ │ │ │ │ │ ├── template.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ └── github-issues/ │ │ │ │ │ │ ├── template/ │ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ │ │ ├── GithubIssuesApi.credentials.ts │ │ │ │ │ │ │ │ └── GithubIssuesOAuth2Api.credentials.ts │ │ │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ │ │ └── GithubIssues/ │ │ │ │ │ │ │ │ ├── GithubIssues.node.json │ │ │ │ │ │ │ │ ├── GithubIssues.node.ts │ │ │ │ │ │ │ │ ├── listSearch/ │ │ │ │ │ │ │ │ │ ├── getIssues.ts │ │ │ │ │ │ │ │ │ ├── getRepositories.ts │ │ │ │ │ │ │ │ │ └── getUsers.ts │ │ │ │ │ │ │ │ ├── resources/ │ │ │ │ │ │ │ │ │ ├── issue/ │ │ │ │ │ │ │ │ │ │ ├── create.ts │ │ │ │ │ │ │ │ │ │ ├── get.ts │ │ │ │ │ │ │ │ │ │ ├── getAll.ts │ │ │ │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ │ │ │ └── issueComment/ │ │ │ │ │ │ │ │ │ ├── getAll.ts │ │ │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ │ │ └── shared/ │ │ │ │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ │ │ │ ├── transport.ts │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ │ └── tsconfig.json │ │ │ │ │ │ └── template.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── programmatic/ │ │ │ │ │ │ ├── ai/ │ │ │ │ │ │ │ ├── memory-custom/ │ │ │ │ │ │ │ │ ├── template/ │ │ │ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ │ │ │ │ └── ExampleChatMemory/ │ │ │ │ │ │ │ │ │ │ ├── ExampleChatMemory.node.json │ │ │ │ │ │ │ │ │ │ ├── ExampleChatMemory.node.ts │ │ │ │ │ │ │ │ │ │ └── memory.ts │ │ │ │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ │ │ │ └── tsconfig.json │ │ │ │ │ │ │ │ └── template.ts │ │ │ │ │ │ │ ├── model-ai-custom/ │ │ │ │ │ │ │ │ ├── template/ │ │ │ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ │ │ │ │ └── ExampleApi.credentials.ts │ │ │ │ │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ │ │ │ │ └── ExampleChatModel/ │ │ │ │ │ │ │ │ │ │ ├── ExampleChatModel.node.json │ │ │ │ │ │ │ │ │ │ ├── ExampleChatModel.node.ts │ │ │ │ │ │ │ │ │ │ └── model.ts │ │ │ │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ │ │ │ └── tsconfig.json │ │ │ │ │ │ │ │ └── template.ts │ │ │ │ │ │ │ ├── model-ai-custom-example/ │ │ │ │ │ │ │ │ ├── template/ │ │ │ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ │ │ │ │ └── ExampleApi.credentials.ts │ │ │ │ │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ │ │ │ │ └── ExampleChatModel/ │ │ │ │ │ │ │ │ │ │ ├── ExampleChatModel.node.json │ │ │ │ │ │ │ │ │ │ ├── ExampleChatModel.node.ts │ │ │ │ │ │ │ │ │ │ ├── common.ts │ │ │ │ │ │ │ │ │ │ ├── model.ts │ │ │ │ │ │ │ │ │ │ └── properties.ts │ │ │ │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ │ │ │ └── tsconfig.json │ │ │ │ │ │ │ │ └── template.ts │ │ │ │ │ │ │ └── model-openai-compatible/ │ │ │ │ │ │ │ ├── template/ │ │ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ │ │ │ └── ExampleApi.credentials.ts │ │ │ │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ │ │ │ └── ExampleChatModel/ │ │ │ │ │ │ │ │ │ ├── ExampleChatModel.node.json │ │ │ │ │ │ │ │ │ └── ExampleChatModel.node.ts │ │ │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ │ │ └── tsconfig.json │ │ │ │ │ │ │ └── template.ts │ │ │ │ │ │ └── example/ │ │ │ │ │ │ ├── template/ │ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ │ │ └── Example/ │ │ │ │ │ │ │ │ ├── Example.node.json │ │ │ │ │ │ │ │ └── Example.node.ts │ │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ │ └── tsconfig.json │ │ │ │ │ │ └── template.ts │ │ │ │ │ └── shared/ │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ ├── apiKey.credentials.ts │ │ │ │ │ │ ├── basicAuth.credentials.ts │ │ │ │ │ │ ├── bearer.credentials.ts │ │ │ │ │ │ ├── custom.credentials.ts │ │ │ │ │ │ ├── oauth2AuthorizationCode.credentials.ts │ │ │ │ │ │ └── oauth2ClientCredentials.credentials.ts │ │ │ │ │ └── default/ │ │ │ │ │ ├── .agents/ │ │ │ │ │ │ ├── credentials.md │ │ │ │ │ │ ├── nodes-declarative.md │ │ │ │ │ │ ├── nodes-programmatic.md │ │ │ │ │ │ ├── nodes.md │ │ │ │ │ │ ├── properties.md │ │ │ │ │ │ ├── versioning.md │ │ │ │ │ │ └── workflow.md │ │ │ │ │ ├── .github/ │ │ │ │ │ │ └── workflows/ │ │ │ │ │ │ ├── ci.yml │ │ │ │ │ │ └── publish.yml │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── .prettierrc.js │ │ │ │ │ ├── .vscode/ │ │ │ │ │ │ └── launch.json │ │ │ │ │ ├── AGENTS.md │ │ │ │ │ ├── CHANGELOG.md │ │ │ │ │ ├── CLAUDE.md │ │ │ │ │ └── eslint.config.mjs │ │ │ │ ├── test-utils/ │ │ │ │ │ ├── command-tester.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── matchers.ts │ │ │ │ │ ├── mock-child-process.ts │ │ │ │ │ ├── mock-prompts.ts │ │ │ │ │ ├── package-setup.ts │ │ │ │ │ ├── setup.ts │ │ │ │ │ └── temp-fs.ts │ │ │ │ └── utils/ │ │ │ │ ├── ast.test.ts │ │ │ │ ├── ast.ts │ │ │ │ ├── child-process.ts │ │ │ │ ├── command-suggestions.ts │ │ │ │ ├── filesystem.test.ts │ │ │ │ ├── filesystem.ts │ │ │ │ ├── git.test.ts │ │ │ │ ├── git.ts │ │ │ │ ├── json.ts │ │ │ │ ├── package-manager.test.ts │ │ │ │ ├── package-manager.ts │ │ │ │ ├── package.ts │ │ │ │ ├── prompts.test.ts │ │ │ │ ├── prompts.ts │ │ │ │ └── validation.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── vite.config.ts │ │ ├── nodes-langchain/ │ │ │ ├── .editorconfig │ │ │ ├── .gitignore │ │ │ ├── .npmignore │ │ │ ├── .vscode/ │ │ │ │ └── extensions.json │ │ │ ├── README.md │ │ │ ├── credentials/ │ │ │ │ ├── AnthropicApi.credentials.ts │ │ │ │ ├── AzureAiSearchApi.credentials.ts │ │ │ │ ├── AzureEntraCognitiveServicesOAuth2Api.credentials.ts │ │ │ │ ├── AzureOpenAiApi.credentials.ts │ │ │ │ ├── ChatHubVectorStorePGVectorApi.credentials.ts │ │ │ │ ├── ChatHubVectorStorePineconeApi.credentials.ts │ │ │ │ ├── ChatHubVectorStoreQdrantApi.credentials.ts │ │ │ │ ├── ChromaCloudApi.credentials.ts │ │ │ │ ├── ChromaSelfHostedApi.credentials.ts │ │ │ │ ├── CohereApi.credentials.ts │ │ │ │ ├── DeepSeekApi.credentials.ts │ │ │ │ ├── GooglePalmApi.credentials.ts │ │ │ │ ├── GroqApi.credentials.ts │ │ │ │ ├── HuggingFaceApi.credentials.ts │ │ │ │ ├── LemonadeApi.credentials.ts │ │ │ │ ├── McpOAuth2Api.credentials.ts │ │ │ │ ├── MicrosoftAgent365Api.credentials.ts │ │ │ │ ├── MilvusApi.credentials.ts │ │ │ │ ├── MistralCloudApi.credentials.ts │ │ │ │ ├── MotorheadApi.credentials.ts │ │ │ │ ├── OllamaApi.credentials.ts │ │ │ │ ├── OpenRouterApi.credentials.ts │ │ │ │ ├── PineconeApi.credentials.ts │ │ │ │ ├── QdrantApi.credentials.ts │ │ │ │ ├── SearXngApi.credentials.ts │ │ │ │ ├── SerpApi.credentials.ts │ │ │ │ ├── VercelAiGatewayApi.credentials.ts │ │ │ │ ├── WeaviateApi.credentials.ts │ │ │ │ ├── WolframAlphaApi.credentials.ts │ │ │ │ ├── XAiApi.credentials.ts │ │ │ │ ├── XataApi.credentials.ts │ │ │ │ ├── ZepApi.credentials.ts │ │ │ │ └── test/ │ │ │ │ ├── AnthropicApi.credentials.test.ts │ │ │ │ └── ChromaCloudApi.credentials.test.ts │ │ │ ├── eslint.config.mjs │ │ │ ├── index.js │ │ │ ├── jest.config.js │ │ │ ├── nodes/ │ │ │ │ ├── Guardrails/ │ │ │ │ │ ├── CREDIT.MD │ │ │ │ │ ├── Guardrails.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── checks/ │ │ │ │ │ │ │ ├── jailbreak.ts │ │ │ │ │ │ │ ├── keywords.ts │ │ │ │ │ │ │ ├── nsfw.ts │ │ │ │ │ │ │ ├── pii.ts │ │ │ │ │ │ │ ├── secretKeys.ts │ │ │ │ │ │ │ ├── topicalAlignment.ts │ │ │ │ │ │ │ └── urls.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ ├── process.ts │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── description.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── model.test.ts │ │ │ │ │ │ ├── base.ts │ │ │ │ │ │ ├── common.ts │ │ │ │ │ │ ├── configureNodeInputs.ts │ │ │ │ │ │ ├── mappers.ts │ │ │ │ │ │ ├── model.ts │ │ │ │ │ │ └── preflight.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── Guardrails.node.test.ts │ │ │ │ │ │ ├── checks/ │ │ │ │ │ │ │ ├── keywords.test.ts │ │ │ │ │ │ │ ├── pii.test.ts │ │ │ │ │ │ │ └── secretKeys.test.ts │ │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ │ ├── base.test.ts │ │ │ │ │ │ │ ├── common.test.ts │ │ │ │ │ │ │ ├── configureNodeInputs.test.ts │ │ │ │ │ │ │ ├── mappers.test.ts │ │ │ │ │ │ │ ├── model.test.ts │ │ │ │ │ │ │ └── preflight.test.ts │ │ │ │ │ │ └── process.test.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ └── GuardrailsV1.node.ts │ │ │ │ │ └── v2/ │ │ │ │ │ └── GuardrailsV2.node.ts │ │ │ │ ├── ModelSelector/ │ │ │ │ │ ├── ModelSelector.node.ts │ │ │ │ │ ├── helpers.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── ModelSelector.node.test.ts │ │ │ │ │ └── helpers.test.ts │ │ │ │ ├── ToolExecutor/ │ │ │ │ │ ├── ToolExecutor.node.json │ │ │ │ │ ├── ToolExecutor.node.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── ToolExecutor.node.test.ts │ │ │ │ │ │ └── convertToSchema.test.ts │ │ │ │ │ └── utils/ │ │ │ │ │ ├── convertToSchema.ts │ │ │ │ │ └── executeTool.ts │ │ │ │ ├── agents/ │ │ │ │ │ ├── Agent/ │ │ │ │ │ │ ├── Agent.node.ts │ │ │ │ │ │ ├── AgentTool.node.ts │ │ │ │ │ │ ├── V1/ │ │ │ │ │ │ │ └── AgentV1.node.ts │ │ │ │ │ │ ├── V2/ │ │ │ │ │ │ │ ├── AgentToolV2.node.ts │ │ │ │ │ │ │ ├── AgentV2.node.ts │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ ├── V3/ │ │ │ │ │ │ │ ├── AgentToolV3.node.ts │ │ │ │ │ │ │ └── AgentV3.node.ts │ │ │ │ │ │ ├── agents/ │ │ │ │ │ │ │ ├── ConversationalAgent/ │ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ │ └── prompt.ts │ │ │ │ │ │ │ ├── OpenAiFunctionsAgent/ │ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ │ └── prompt.ts │ │ │ │ │ │ │ ├── PlanAndExecuteAgent/ │ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ │ └── prompt.ts │ │ │ │ │ │ │ ├── ReActAgent/ │ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ │ └── prompt.ts │ │ │ │ │ │ │ ├── SqlAgent/ │ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ │ ├── execute.test.ts │ │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ │ └── other/ │ │ │ │ │ │ │ │ ├── handlers/ │ │ │ │ │ │ │ │ │ ├── mysql.ts │ │ │ │ │ │ │ │ │ ├── postgres.test.ts │ │ │ │ │ │ │ │ │ ├── postgres.ts │ │ │ │ │ │ │ │ │ └── sqlite.ts │ │ │ │ │ │ │ │ └── prompts.ts │ │ │ │ │ │ │ ├── ToolsAgent/ │ │ │ │ │ │ │ │ ├── V1/ │ │ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ │ │ └── execute.ts │ │ │ │ │ │ │ │ ├── V2/ │ │ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ │ │ └── execute.ts │ │ │ │ │ │ │ │ ├── V3/ │ │ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ │ │ │ │ ├── buildExecutionContext.ts │ │ │ │ │ │ │ │ │ │ ├── checkMaxIterations.ts │ │ │ │ │ │ │ │ │ │ ├── createAgentSequence.ts │ │ │ │ │ │ │ │ │ │ ├── executeBatch.ts │ │ │ │ │ │ │ │ │ │ ├── finalizeResult.ts │ │ │ │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ │ │ │ ├── prepareItemContext.ts │ │ │ │ │ │ │ │ │ │ ├── runAgent.ts │ │ │ │ │ │ │ │ │ │ └── tests/ │ │ │ │ │ │ │ │ │ │ ├── buildExecutionContext.test.ts │ │ │ │ │ │ │ │ │ │ ├── checkMaxIterations.test.ts │ │ │ │ │ │ │ │ │ │ ├── createAgentSequence.test.ts │ │ │ │ │ │ │ │ │ │ ├── finalizeResult.test.ts │ │ │ │ │ │ │ │ │ │ ├── prepareItemContext.test.ts │ │ │ │ │ │ │ │ │ │ └── runAgent.test.ts │ │ │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ │ │ ├── common.ts │ │ │ │ │ │ │ │ ├── options.ts │ │ │ │ │ │ │ │ └── prompt.ts │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ ├── test/ │ │ │ │ │ │ │ ├── ToolsAgent/ │ │ │ │ │ │ │ │ ├── ToolsAgentV1.test.ts │ │ │ │ │ │ │ │ ├── ToolsAgentV2.test.ts │ │ │ │ │ │ │ │ ├── ToolsAgentV3.test.ts │ │ │ │ │ │ │ │ └── commons.test.ts │ │ │ │ │ │ │ ├── integration/ │ │ │ │ │ │ │ │ ├── agent-tool-v3.workflow.test.ts │ │ │ │ │ │ │ │ ├── agent-v3.workflow.test.ts │ │ │ │ │ │ │ │ └── workflows/ │ │ │ │ │ │ │ │ ├── agent-tool-v3-basic.json │ │ │ │ │ │ │ │ ├── agent-v3-auto-prompt.json │ │ │ │ │ │ │ │ ├── agent-v3-basic.json │ │ │ │ │ │ │ │ ├── agent-v3-binary-images.json │ │ │ │ │ │ │ │ ├── agent-v3-continue-on-fail.json │ │ │ │ │ │ │ │ ├── agent-v3-fallback-model.json │ │ │ │ │ │ │ │ ├── agent-v3-intermediate-steps.json │ │ │ │ │ │ │ │ ├── agent-v3-memory.json │ │ │ │ │ │ │ │ ├── agent-v3-output-parser.json │ │ │ │ │ │ │ │ ├── agent-v3-system-message.json │ │ │ │ │ │ │ │ └── agent-v3-with-tool.json │ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ └── OpenAiAssistant/ │ │ │ │ │ ├── OpenAiAssistant.node.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── chains/ │ │ │ │ │ ├── ChainLLM/ │ │ │ │ │ │ ├── ChainLlm.node.ts │ │ │ │ │ │ ├── methods/ │ │ │ │ │ │ │ ├── chainExecutor.ts │ │ │ │ │ │ │ ├── config.ts │ │ │ │ │ │ │ ├── imageUtils.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── processItem.ts │ │ │ │ │ │ │ ├── promptUtils.ts │ │ │ │ │ │ │ ├── responseFormatter.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ ├── ChainLlm.node.test.ts │ │ │ │ │ │ ├── chainExecutor.test.ts │ │ │ │ │ │ ├── config.test.ts │ │ │ │ │ │ ├── imageUtils.test.ts │ │ │ │ │ │ ├── promptUtils.test.ts │ │ │ │ │ │ └── responseFormatter.test.ts │ │ │ │ │ ├── ChainRetrievalQA/ │ │ │ │ │ │ ├── ChainRetrievalQa.node.ts │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── processItem.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── ChainRetrievalQa.node.test.ts │ │ │ │ │ ├── ChainSummarization/ │ │ │ │ │ │ ├── ChainSummarization.node.ts │ │ │ │ │ │ ├── V1/ │ │ │ │ │ │ │ └── ChainSummarizationV1.node.ts │ │ │ │ │ │ ├── V2/ │ │ │ │ │ │ │ ├── ChainSummarizationV2.node.ts │ │ │ │ │ │ │ └── processItem.ts │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ └── prompt.ts │ │ │ │ │ ├── InformationExtractor/ │ │ │ │ │ │ ├── InformationExtractor.node.ts │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ ├── processItem.ts │ │ │ │ │ │ ├── test/ │ │ │ │ │ │ │ ├── InformationExtraction.node.test.ts │ │ │ │ │ │ │ └── processItem.test.ts │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── SentimentAnalysis/ │ │ │ │ │ │ ├── SentimentAnalysis.node.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── SentimentAnalysis.node.test.ts │ │ │ │ │ └── TextClassifier/ │ │ │ │ │ ├── TextClassifier.node.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── processItem.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── TextClassifier.node.test.ts │ │ │ │ │ └── processItem.test.ts │ │ │ │ ├── code/ │ │ │ │ │ ├── Code.node.test.ts │ │ │ │ │ └── Code.node.ts │ │ │ │ ├── document_loaders/ │ │ │ │ │ ├── DocumentBinaryInputLoader/ │ │ │ │ │ │ └── DocumentBinaryInputLoader.node.ts │ │ │ │ │ ├── DocumentDefaultDataLoader/ │ │ │ │ │ │ ├── DocumentDefaultDataLoader.node.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── DocumentDefaultDataLoader.node.test.ts │ │ │ │ │ ├── DocumentGithubLoader/ │ │ │ │ │ │ ├── DocumentGithubLoader.node.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── DocumentGithubLoader.node.test.ts │ │ │ │ │ └── DocumentJSONInputLoader/ │ │ │ │ │ └── DocumentJsonInputLoader.node.ts │ │ │ │ ├── embeddings/ │ │ │ │ │ ├── EmbeddingsAwsBedrock/ │ │ │ │ │ │ └── EmbeddingsAwsBedrock.node.ts │ │ │ │ │ ├── EmbeddingsAzureOpenAi/ │ │ │ │ │ │ └── EmbeddingsAzureOpenAi.node.ts │ │ │ │ │ ├── EmbeddingsCohere/ │ │ │ │ │ │ └── EmbeddingsCohere.node.ts │ │ │ │ │ ├── EmbeddingsGoogleGemini/ │ │ │ │ │ │ └── EmbeddingsGoogleGemini.node.ts │ │ │ │ │ ├── EmbeddingsGoogleVertex/ │ │ │ │ │ │ └── EmbeddingsGoogleVertex.node.ts │ │ │ │ │ ├── EmbeddingsHuggingFaceInference/ │ │ │ │ │ │ └── EmbeddingsHuggingFaceInference.node.ts │ │ │ │ │ ├── EmbeddingsLemonade/ │ │ │ │ │ │ └── EmbeddingsLemonade.node.ts │ │ │ │ │ ├── EmbeddingsMistralCloud/ │ │ │ │ │ │ └── EmbeddingsMistralCloud.node.ts │ │ │ │ │ ├── EmbeddingsOllama/ │ │ │ │ │ │ └── EmbeddingsOllama.node.ts │ │ │ │ │ ├── EmbeddingsOpenAI/ │ │ │ │ │ │ └── EmbeddingsOpenAi.node.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── EmbeddingsAzureOpenAi.test.ts │ │ │ │ │ └── EmbeddingsOpenAi.test.ts │ │ │ │ ├── llms/ │ │ │ │ │ ├── LMChatAnthropic/ │ │ │ │ │ │ ├── LmChatAnthropic.node.ts │ │ │ │ │ │ ├── methods/ │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ └── searchModels.test.ts │ │ │ │ │ │ │ └── searchModels.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── LmChatAnthropic.test.ts │ │ │ │ │ ├── LMChatLemonade/ │ │ │ │ │ │ └── LmChatLemonade.node.ts │ │ │ │ │ ├── LMChatOllama/ │ │ │ │ │ │ └── LmChatOllama.node.ts │ │ │ │ │ ├── LMChatOpenAi/ │ │ │ │ │ │ ├── LmChatOpenAi.node.ts │ │ │ │ │ │ ├── common.ts │ │ │ │ │ │ ├── methods/ │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ └── loadModels.test.ts │ │ │ │ │ │ │ └── loadModels.ts │ │ │ │ │ │ ├── test/ │ │ │ │ │ │ │ └── common.test.ts │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── LMCohere/ │ │ │ │ │ │ └── LmCohere.node.ts │ │ │ │ │ ├── LMLemonade/ │ │ │ │ │ │ ├── LmLemonade.node.ts │ │ │ │ │ │ └── description.ts │ │ │ │ │ ├── LMOllama/ │ │ │ │ │ │ ├── LmOllama.node.ts │ │ │ │ │ │ └── description.ts │ │ │ │ │ ├── LMOpenAi/ │ │ │ │ │ │ └── LmOpenAi.node.ts │ │ │ │ │ ├── LMOpenHuggingFaceInference/ │ │ │ │ │ │ └── LmOpenHuggingFaceInference.node.ts │ │ │ │ │ ├── LmChatAwsBedrock/ │ │ │ │ │ │ ├── LmChatAwsBedrock.node.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── LmChatAwsBedrock.test.ts │ │ │ │ │ ├── LmChatAzureOpenAi/ │ │ │ │ │ │ ├── LmChatAzureOpenAi.node.ts │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── N8nOAuth2TokenCredential.test.ts │ │ │ │ │ │ │ ├── api-key.handler.test.ts │ │ │ │ │ │ │ └── oauth2.handler.test.ts │ │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ │ ├── N8nOAuth2TokenCredential.ts │ │ │ │ │ │ │ ├── api-key.ts │ │ │ │ │ │ │ └── oauth2.ts │ │ │ │ │ │ ├── properties.ts │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── LmChatCohere/ │ │ │ │ │ │ └── LmChatCohere.node.ts │ │ │ │ │ ├── LmChatDeepSeek/ │ │ │ │ │ │ └── LmChatDeepSeek.node.ts │ │ │ │ │ ├── LmChatGoogleGemini/ │ │ │ │ │ │ └── LmChatGoogleGemini.node.ts │ │ │ │ │ ├── LmChatGoogleVertex/ │ │ │ │ │ │ ├── LmChatGoogleVertex.node.ts │ │ │ │ │ │ ├── error-handling.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── LmChatGoogleVertex.test.ts │ │ │ │ │ ├── LmChatGroq/ │ │ │ │ │ │ └── LmChatGroq.node.ts │ │ │ │ │ ├── LmChatMistralCloud/ │ │ │ │ │ │ └── LmChatMistralCloud.node.ts │ │ │ │ │ ├── LmChatOpenRouter/ │ │ │ │ │ │ ├── LmChatOpenRouter.node.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── LmChatOpenRouter.test.ts │ │ │ │ │ ├── LmChatVercelAiGateway/ │ │ │ │ │ │ └── LmChatVercelAiGateway.node.ts │ │ │ │ │ ├── LmChatXAiGrok/ │ │ │ │ │ │ └── LmChatXAiGrok.node.ts │ │ │ │ │ ├── N8nNonEstimatingTracing.ts │ │ │ │ │ ├── gemini-common/ │ │ │ │ │ │ ├── additional-options.ts │ │ │ │ │ │ └── safety-options.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── LmChatAnthropic.test.ts │ │ │ │ │ ├── LmChatOpenAi.test.ts │ │ │ │ │ └── N8nLlmTracing.test.ts │ │ │ │ ├── mcp/ │ │ │ │ │ ├── McpClient/ │ │ │ │ │ │ ├── McpClient.node.ts │ │ │ │ │ │ ├── __test__/ │ │ │ │ │ │ │ ├── McpClient.node.test.ts │ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ │ ├── resourceMapping.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── McpClientTool/ │ │ │ │ │ │ ├── McpClientTool.node.ts │ │ │ │ │ │ ├── __test__/ │ │ │ │ │ │ │ └── McpClientTool.node.test.ts │ │ │ │ │ │ ├── loadOptions.ts │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── McpTrigger/ │ │ │ │ │ │ ├── McpServer.ts │ │ │ │ │ │ ├── McpTrigger.node.ts │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── McpServer.test.ts │ │ │ │ │ │ │ ├── McpTrigger.node.test.ts │ │ │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ │ ├── mock-express.ts │ │ │ │ │ │ │ │ ├── mock-langchain.ts │ │ │ │ │ │ │ │ ├── mock-logger.ts │ │ │ │ │ │ │ │ └── mock-mcp-sdk.ts │ │ │ │ │ │ │ └── setup.ts │ │ │ │ │ │ ├── execution/ │ │ │ │ │ │ │ ├── DirectExecutionStrategy.ts │ │ │ │ │ │ │ ├── ExecutionCoordinator.ts │ │ │ │ │ │ │ ├── ExecutionStrategy.ts │ │ │ │ │ │ │ ├── PendingCallsManager.ts │ │ │ │ │ │ │ ├── QueuedExecutionStrategy.ts │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ ├── DirectExecutionStrategy.test.ts │ │ │ │ │ │ │ │ ├── ExecutionCoordinator.test.ts │ │ │ │ │ │ │ │ ├── PendingCallsManager.test.ts │ │ │ │ │ │ │ │ └── QueuedExecutionStrategy.test.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── protocol/ │ │ │ │ │ │ │ ├── MessageFormatter.ts │ │ │ │ │ │ │ ├── MessageParser.ts │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ ├── MessageFormatter.test.ts │ │ │ │ │ │ │ │ └── MessageParser.test.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ ├── session/ │ │ │ │ │ │ │ ├── InMemorySessionStore.ts │ │ │ │ │ │ │ ├── RedisSessionStore.ts │ │ │ │ │ │ │ ├── SessionManager.ts │ │ │ │ │ │ │ ├── SessionStore.ts │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ ├── InMemorySessionStore.test.ts │ │ │ │ │ │ │ │ ├── RedisSessionStore.test.ts │ │ │ │ │ │ │ │ └── SessionManager.test.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── transport/ │ │ │ │ │ │ ├── SSETransport.ts │ │ │ │ │ │ ├── StreamableHttpTransport.ts │ │ │ │ │ │ ├── Transport.ts │ │ │ │ │ │ ├── TransportFactory.ts │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── SSETransport.test.ts │ │ │ │ │ │ │ ├── StreamableHttpTransport.test.ts │ │ │ │ │ │ │ └── TransportFactory.test.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── shared/ │ │ │ │ │ ├── __test__/ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── memory/ │ │ │ │ │ ├── MemoryBufferWindow/ │ │ │ │ │ │ └── MemoryBufferWindow.node.ts │ │ │ │ │ ├── MemoryChatRetriever/ │ │ │ │ │ │ └── MemoryChatRetriever.node.ts │ │ │ │ │ ├── MemoryManager/ │ │ │ │ │ │ ├── MemoryManager.node.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ ├── MemoryManager.execute.test.ts │ │ │ │ │ │ └── MemoryManager.node.test.ts │ │ │ │ │ ├── MemoryMongoDbChat/ │ │ │ │ │ │ └── MemoryMongoDbChat.node.ts │ │ │ │ │ ├── MemoryMotorhead/ │ │ │ │ │ │ └── MemoryMotorhead.node.ts │ │ │ │ │ ├── MemoryPostgresChat/ │ │ │ │ │ │ └── MemoryPostgresChat.node.ts │ │ │ │ │ ├── MemoryRedisChat/ │ │ │ │ │ │ └── MemoryRedisChat.node.ts │ │ │ │ │ ├── MemoryXata/ │ │ │ │ │ │ └── MemoryXata.node.ts │ │ │ │ │ ├── MemoryZep/ │ │ │ │ │ │ └── MemoryZep.node.ts │ │ │ │ │ └── descriptions.ts │ │ │ │ ├── output_parser/ │ │ │ │ │ ├── OutputParserAutofixing/ │ │ │ │ │ │ ├── OutputParserAutofixing.node.ts │ │ │ │ │ │ ├── prompt.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── OutputParserAutofixing.node.test.ts │ │ │ │ │ ├── OutputParserItemList/ │ │ │ │ │ │ ├── OutputParserItemList.node.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── OutputParserItemList.node.test.ts │ │ │ │ │ └── OutputParserStructured/ │ │ │ │ │ ├── OutputParserStructured.node.ts │ │ │ │ │ ├── prompt.ts │ │ │ │ │ └── test/ │ │ │ │ │ └── OutputParserStructured.node.test.ts │ │ │ │ ├── rerankers/ │ │ │ │ │ └── RerankerCohere/ │ │ │ │ │ ├── RerankerCohere.node.ts │ │ │ │ │ └── test/ │ │ │ │ │ └── RerankerCohere.node.test.ts │ │ │ │ ├── retrievers/ │ │ │ │ │ ├── RetrieverContextualCompression/ │ │ │ │ │ │ └── RetrieverContextualCompression.node.ts │ │ │ │ │ ├── RetrieverMultiQuery/ │ │ │ │ │ │ └── RetrieverMultiQuery.node.ts │ │ │ │ │ ├── RetrieverVectorStore/ │ │ │ │ │ │ ├── RetrieverVectorStore.node.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── RetrieverVectorStore.node.test.ts │ │ │ │ │ └── RetrieverWorkflow/ │ │ │ │ │ └── RetrieverWorkflow.node.ts │ │ │ │ ├── text_splitters/ │ │ │ │ │ ├── TextSplitterCharacterTextSplitter/ │ │ │ │ │ │ └── TextSplitterCharacterTextSplitter.node.ts │ │ │ │ │ ├── TextSplitterRecursiveCharacterTextSplitter/ │ │ │ │ │ │ └── TextSplitterRecursiveCharacterTextSplitter.node.ts │ │ │ │ │ └── TextSplitterTokenSplitter/ │ │ │ │ │ ├── TextSplitterTokenSplitter.node.ts │ │ │ │ │ ├── TokenTextSplitter.ts │ │ │ │ │ └── tests/ │ │ │ │ │ └── TokenTextSplitter.test.ts │ │ │ │ ├── tools/ │ │ │ │ │ ├── ToolCalculator/ │ │ │ │ │ │ ├── ToolCalculator.node.test.ts │ │ │ │ │ │ └── ToolCalculator.node.ts │ │ │ │ │ ├── ToolCode/ │ │ │ │ │ │ ├── ToolCode.node.test.ts │ │ │ │ │ │ └── ToolCode.node.ts │ │ │ │ │ ├── ToolHttpRequest/ │ │ │ │ │ │ ├── ToolHttpRequest.node.ts │ │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ │ ├── test/ │ │ │ │ │ │ │ └── ToolHttpRequest.node.test.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── ToolSearXng/ │ │ │ │ │ │ ├── ToolSearXng.node.test.ts │ │ │ │ │ │ └── ToolSearXng.node.ts │ │ │ │ │ ├── ToolSerpApi/ │ │ │ │ │ │ ├── ToolSerpApi.node.test.ts │ │ │ │ │ │ └── ToolSerpApi.node.ts │ │ │ │ │ ├── ToolThink/ │ │ │ │ │ │ ├── ToolThink.node.ts │ │ │ │ │ │ └── test/ │ │ │ │ │ │ └── ToolThink.node.test.ts │ │ │ │ │ ├── ToolVectorStore/ │ │ │ │ │ │ ├── ToolVectorStore.node.test.ts │ │ │ │ │ │ └── ToolVectorStore.node.ts │ │ │ │ │ ├── ToolWikipedia/ │ │ │ │ │ │ ├── ToolWikipedia.node.test.ts │ │ │ │ │ │ └── ToolWikipedia.node.ts │ │ │ │ │ ├── ToolWolframAlpha/ │ │ │ │ │ │ ├── ToolWolframAlpha.node.test.ts │ │ │ │ │ │ └── ToolWolframAlpha.node.ts │ │ │ │ │ └── ToolWorkflow/ │ │ │ │ │ ├── ToolWorkflow.node.test.ts │ │ │ │ │ ├── ToolWorkflow.node.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── ToolWorkflowV1.node.ts │ │ │ │ │ │ └── versionDescription.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── ToolWorkflowV2.node.ts │ │ │ │ │ ├── ToolWorkflowV2.test.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── localResourceMapping.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ └── WorkflowToolService.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── trigger/ │ │ │ │ │ ├── ChatTrigger/ │ │ │ │ │ │ ├── Chat.node.ts │ │ │ │ │ │ ├── ChatTrigger.node.ts │ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── __test__/ │ │ │ │ │ │ │ ├── Chat.node.test.ts │ │ │ │ │ │ │ ├── ChatTrigger.node.test.ts │ │ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ │ │ ├── templates.test.ts │ │ │ │ │ │ │ └── util.test.ts │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── error.ts │ │ │ │ │ │ ├── templates.ts │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ └── util.ts │ │ │ │ │ └── ManualChatTrigger/ │ │ │ │ │ └── ManualChatTrigger.node.ts │ │ │ │ ├── vector_store/ │ │ │ │ │ ├── ChatHubVectorStorePGVector/ │ │ │ │ │ │ └── ChatHubVectorStorePGVector.node.ts │ │ │ │ │ ├── ChatHubVectorStorePinecone/ │ │ │ │ │ │ └── ChatHubVectorStorePinecone.node.ts │ │ │ │ │ ├── ChatHubVectorStoreQdrant/ │ │ │ │ │ │ ├── ChatHubVectorStoreQdrant.node.test.ts │ │ │ │ │ │ └── ChatHubVectorStoreQdrant.node.ts │ │ │ │ │ ├── VectorStoreAzureAISearch/ │ │ │ │ │ │ ├── VectorStoreAzureAISearch.node.test.ts │ │ │ │ │ │ └── VectorStoreAzureAISearch.node.ts │ │ │ │ │ ├── VectorStoreChromaDB/ │ │ │ │ │ │ ├── VectorStoreChromaDB.node.test.ts │ │ │ │ │ │ └── VectorStoreChromaDB.node.ts │ │ │ │ │ ├── VectorStoreInMemory/ │ │ │ │ │ │ └── VectorStoreInMemory.node.ts │ │ │ │ │ ├── VectorStoreInMemoryInsert/ │ │ │ │ │ │ └── VectorStoreInMemoryInsert.node.ts │ │ │ │ │ ├── VectorStoreInMemoryLoad/ │ │ │ │ │ │ └── VectorStoreInMemoryLoad.node.ts │ │ │ │ │ ├── VectorStoreMilvus/ │ │ │ │ │ │ └── VectorStoreMilvus.node.ts │ │ │ │ │ ├── VectorStoreMongoDBAtlas/ │ │ │ │ │ │ ├── VectorStoreMongoDBAtlas.node.test.ts │ │ │ │ │ │ └── VectorStoreMongoDBAtlas.node.ts │ │ │ │ │ ├── VectorStorePGVector/ │ │ │ │ │ │ └── VectorStorePGVector.node.ts │ │ │ │ │ ├── VectorStorePinecone/ │ │ │ │ │ │ └── VectorStorePinecone.node.ts │ │ │ │ │ ├── VectorStorePineconeInsert/ │ │ │ │ │ │ └── VectorStorePineconeInsert.node.ts │ │ │ │ │ ├── VectorStorePineconeLoad/ │ │ │ │ │ │ └── VectorStorePineconeLoad.node.ts │ │ │ │ │ ├── VectorStoreQdrant/ │ │ │ │ │ │ ├── Qdrant.utils.ts │ │ │ │ │ │ ├── VectorStoreQdrant.node.test.ts │ │ │ │ │ │ └── VectorStoreQdrant.node.ts │ │ │ │ │ ├── VectorStoreRedis/ │ │ │ │ │ │ ├── VectorStoreRedis.node.test.ts │ │ │ │ │ │ └── VectorStoreRedis.node.ts │ │ │ │ │ ├── VectorStoreSupabase/ │ │ │ │ │ │ └── VectorStoreSupabase.node.ts │ │ │ │ │ ├── VectorStoreSupabaseInsert/ │ │ │ │ │ │ └── VectorStoreSupabaseInsert.node.ts │ │ │ │ │ ├── VectorStoreSupabaseLoad/ │ │ │ │ │ │ └── VectorStoreSupabaseLoad.node.ts │ │ │ │ │ ├── VectorStoreWeaviate/ │ │ │ │ │ │ ├── VectorStoreWeaviate.node.ts │ │ │ │ │ │ └── Weaviate.utils.ts │ │ │ │ │ ├── VectorStoreZep/ │ │ │ │ │ │ ├── VectorStoreZep.node.test.ts │ │ │ │ │ │ └── VectorStoreZep.node.ts │ │ │ │ │ ├── VectorStoreZepInsert/ │ │ │ │ │ │ └── VectorStoreZepInsert.node.ts │ │ │ │ │ ├── VectorStoreZepLoad/ │ │ │ │ │ │ └── VectorStoreZepLoad.node.ts │ │ │ │ │ └── shared/ │ │ │ │ │ ├── chatHub.ts │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ └── listSearch.ts │ │ │ │ │ ├── userScoped.test.ts │ │ │ │ │ └── userScoped.ts │ │ │ │ └── vendors/ │ │ │ │ ├── Anthropic/ │ │ │ │ │ ├── Anthropic.node.test.ts │ │ │ │ │ ├── Anthropic.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ │ ├── document/ │ │ │ │ │ │ │ ├── analyze.operation.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── list.operation.ts │ │ │ │ │ │ │ └── upload.operation.ts │ │ │ │ │ │ ├── image/ │ │ │ │ │ │ │ ├── analyze.operation.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── node.type.ts │ │ │ │ │ │ ├── prompt/ │ │ │ │ │ │ │ ├── generate.operation.ts │ │ │ │ │ │ │ ├── improve.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── templatize.operation.ts │ │ │ │ │ │ ├── router.test.ts │ │ │ │ │ │ ├── router.ts │ │ │ │ │ │ ├── text/ │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── message.operation.ts │ │ │ │ │ │ └── versionDescription.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── baseAnalyze.ts │ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── listSearch.test.ts │ │ │ │ │ │ └── listSearch.ts │ │ │ │ │ └── transport/ │ │ │ │ │ ├── index.test.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── GoogleGemini/ │ │ │ │ │ ├── GoogleGemini.node.test.ts │ │ │ │ │ ├── GoogleGemini.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── audio/ │ │ │ │ │ │ │ ├── analyze.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── transcribe.operation.ts │ │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ │ ├── document/ │ │ │ │ │ │ │ ├── analyze.operation.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── upload.operation.ts │ │ │ │ │ │ ├── fileSearch/ │ │ │ │ │ │ │ ├── createStore.operation.ts │ │ │ │ │ │ │ ├── deleteStore.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── listStores.operation.ts │ │ │ │ │ │ │ └── uploadToStore.operation.ts │ │ │ │ │ │ ├── image/ │ │ │ │ │ │ │ ├── analyze.operation.ts │ │ │ │ │ │ │ ├── edit.operation.test.ts │ │ │ │ │ │ │ ├── edit.operation.ts │ │ │ │ │ │ │ ├── generate.operation.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── node.type.ts │ │ │ │ │ │ ├── router.test.ts │ │ │ │ │ │ ├── router.ts │ │ │ │ │ │ ├── text/ │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── message.operation.ts │ │ │ │ │ │ ├── versionDescription.ts │ │ │ │ │ │ └── video/ │ │ │ │ │ │ ├── analyze.operation.ts │ │ │ │ │ │ ├── download.operation.ts │ │ │ │ │ │ ├── generate.operation.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── baseAnalyze.ts │ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── listSearch.test.ts │ │ │ │ │ │ └── listSearch.ts │ │ │ │ │ └── transport/ │ │ │ │ │ ├── index.test.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── Microsoft/ │ │ │ │ │ ├── MicrosoftAgent365Trigger.node.test.ts │ │ │ │ │ ├── MicrosoftAgent365Trigger.node.ts │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── langchain-utils.test.ts │ │ │ │ │ │ └── microsoft-utils.test.ts │ │ │ │ │ ├── langchain-utils.ts │ │ │ │ │ └── microsoft-utils.ts │ │ │ │ ├── Ollama/ │ │ │ │ │ ├── Ollama.node.test.ts │ │ │ │ │ ├── Ollama.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ │ ├── image/ │ │ │ │ │ │ │ ├── analyze.operation.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── node.type.ts │ │ │ │ │ │ ├── router.test.ts │ │ │ │ │ │ ├── router.ts │ │ │ │ │ │ ├── text/ │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── message.operation.ts │ │ │ │ │ │ └── versionDescription.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── interfaces.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── listSearch.test.ts │ │ │ │ │ │ └── listSearch.ts │ │ │ │ │ └── transport/ │ │ │ │ │ ├── index.test.ts │ │ │ │ │ └── index.ts │ │ │ │ └── OpenAi/ │ │ │ │ ├── OpenAi.node.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── modelFiltering.test.ts │ │ │ │ │ ├── binary-data.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── description.ts │ │ │ │ │ ├── error-handling.test.ts │ │ │ │ │ ├── error-handling.ts │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ ├── modelFiltering.ts │ │ │ │ │ ├── polling.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── listSearch.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ └── loadOptions.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── OpenAI.workflow.test.ts │ │ │ │ │ │ ├── OpenAi.node.test.ts │ │ │ │ │ │ └── list-assistants.workflow.json │ │ │ │ │ └── v2/ │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── image/ │ │ │ │ │ │ │ ├── analyze.test.ts │ │ │ │ │ │ │ └── edit.operation.test.ts │ │ │ │ │ │ ├── text/ │ │ │ │ │ │ │ ├── classify.operation.test.ts │ │ │ │ │ │ │ ├── response.operation.test.ts │ │ │ │ │ │ │ └── responses.test.ts │ │ │ │ │ │ └── video/ │ │ │ │ │ │ └── generate.operation.test.ts │ │ │ │ │ └── conversation.test.ts │ │ │ │ ├── transport/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── test/ │ │ │ │ │ └── transport.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── OpenAiV1.node.ts │ │ │ │ │ └── actions/ │ │ │ │ │ ├── assistant/ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deleteAssistant.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── list.operation.ts │ │ │ │ │ │ ├── message.operation.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ ├── audio/ │ │ │ │ │ │ ├── generate.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── transcribe.operation.ts │ │ │ │ │ │ └── translate.operation.ts │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ ├── file/ │ │ │ │ │ │ ├── deleteFile.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── list.operation.ts │ │ │ │ │ │ └── upload.operation.ts │ │ │ │ │ ├── image/ │ │ │ │ │ │ ├── analyze.operation.ts │ │ │ │ │ │ ├── generate.operation.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── router.test.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ └── text/ │ │ │ │ │ ├── classify.operation.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── message.operation.ts │ │ │ │ └── v2/ │ │ │ │ ├── OpenAiV2.node.ts │ │ │ │ └── actions/ │ │ │ │ ├── audio/ │ │ │ │ │ ├── generate.operation.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── transcribe.operation.ts │ │ │ │ │ └── translate.operation.ts │ │ │ │ ├── conversation/ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── remove.operation.ts │ │ │ │ │ └── update.operation.ts │ │ │ │ ├── descriptions.ts │ │ │ │ ├── file/ │ │ │ │ │ ├── deleteFile.operation.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── list.operation.ts │ │ │ │ │ └── upload.operation.ts │ │ │ │ ├── image/ │ │ │ │ │ ├── analyze.operation.ts │ │ │ │ │ ├── edit.operation.ts │ │ │ │ │ ├── generate.operation.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── node.type.ts │ │ │ │ ├── router.test.ts │ │ │ │ ├── router.ts │ │ │ │ ├── text/ │ │ │ │ │ ├── classify.operation.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ └── responses.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── response.operation.ts │ │ │ │ └── video/ │ │ │ │ ├── generate.operation.ts │ │ │ │ └── index.ts │ │ │ ├── package.json │ │ │ ├── scripts/ │ │ │ │ └── post-build.js │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ ├── types/ │ │ │ │ ├── generate-schema.d.ts │ │ │ │ ├── types.ts │ │ │ │ └── zod.types.ts │ │ │ └── utils/ │ │ │ ├── N8nTool.test.ts │ │ │ ├── N8nTool.ts │ │ │ ├── agent-execution/ │ │ │ │ ├── buildResponseMetadata.ts │ │ │ │ ├── buildSteps.ts │ │ │ │ ├── createEngineRequests.ts │ │ │ │ ├── index.ts │ │ │ │ ├── memoryManagement.ts │ │ │ │ ├── processEventStream.ts │ │ │ │ ├── processHitlResponses.ts │ │ │ │ ├── serializeIntermediateSteps.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── buildResponseMetadata.test.ts │ │ │ │ │ ├── buildSteps.test.ts │ │ │ │ │ ├── createEngineRequests.test.ts │ │ │ │ │ ├── memoryManagement.test.ts │ │ │ │ │ ├── processHitlResponses.test.ts │ │ │ │ │ └── serializeIntermediateSteps.test.ts │ │ │ │ └── types.ts │ │ │ ├── checkDomainRestrictions.ts │ │ │ ├── descriptions.test.ts │ │ │ ├── descriptions.ts │ │ │ ├── embeddings/ │ │ │ │ └── embeddingInputValidation.test.ts │ │ │ ├── helpers.ts │ │ │ ├── output_parsers/ │ │ │ │ ├── N8nItemListOutputParser.ts │ │ │ │ ├── N8nOutputFixingParser.ts │ │ │ │ ├── N8nOutputParser.test.ts │ │ │ │ ├── N8nOutputParser.ts │ │ │ │ ├── N8nStructuredOutputParser.test.ts │ │ │ │ ├── N8nStructuredOutputParser.ts │ │ │ │ └── prompt.ts │ │ │ ├── schemaParsing.ts │ │ │ ├── tests/ │ │ │ │ ├── checkDomainRestrictions.test.ts │ │ │ │ ├── helpers.test.ts │ │ │ │ └── schemaParsing.test.ts │ │ │ ├── tracing.test.ts │ │ │ └── tracing.ts │ │ ├── permissions/ │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ └── scope-information.test.ts.snap │ │ │ │ │ ├── schemas.test.ts │ │ │ │ │ ├── scope-information.test.ts │ │ │ │ │ └── types.test.ts │ │ │ │ ├── constants.ee.ts │ │ │ │ ├── index.ts │ │ │ │ ├── public-api-permissions.ee.ts │ │ │ │ ├── roles/ │ │ │ │ │ ├── all-roles.ts │ │ │ │ │ ├── role-maps.ee.ts │ │ │ │ │ └── scopes/ │ │ │ │ │ ├── credential-sharing-scopes.ee.ts │ │ │ │ │ ├── global-scopes.ee.ts │ │ │ │ │ ├── project-scopes.ee.ts │ │ │ │ │ ├── secrets-provider-connection-sharing-scopes.ee.ts │ │ │ │ │ └── workflow-sharing-scopes.ee.ts │ │ │ │ ├── schemas.ee.ts │ │ │ │ ├── scope-information.ts │ │ │ │ ├── types.ee.ts │ │ │ │ └── utilities/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── combine-scopes.test.ts │ │ │ │ │ ├── get-global-scopes.test.ts │ │ │ │ │ ├── get-resource-permissions.test.ts │ │ │ │ │ ├── get-role-scopes.test.ts │ │ │ │ │ ├── has-global-scope.test.ts │ │ │ │ │ ├── has-scope.test.ts │ │ │ │ │ ├── roles-with-scope.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── combine-scopes.ee.ts │ │ │ │ ├── get-global-scopes.ee.ts │ │ │ │ ├── get-resource-permissions.ee.ts │ │ │ │ ├── get-role-scopes.ee.ts │ │ │ │ ├── has-global-scope.ee.ts │ │ │ │ ├── has-scope.ee.ts │ │ │ │ └── static-roles-with-scope.ee.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── scan-community-package/ │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── package.json │ │ │ └── scanner/ │ │ │ ├── cli.mjs │ │ │ └── scanner.mjs │ │ ├── stylelint-config/ │ │ │ ├── README.md │ │ │ ├── jest.config.cjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── configs/ │ │ │ │ │ └── base.ts │ │ │ │ └── rules/ │ │ │ │ ├── css-var-naming.test.ts │ │ │ │ ├── css-var-naming.ts │ │ │ │ └── index.ts │ │ │ └── tsconfig.json │ │ ├── syslog-client/ │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── client.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── errors.ts │ │ │ │ ├── factory.ts │ │ │ │ ├── index.ts │ │ │ │ ├── schemas.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── test/ │ │ │ │ ├── client.test.ts │ │ │ │ ├── fixtures/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── certificate.pem │ │ │ │ │ ├── key.pem │ │ │ │ │ ├── regenerate.sh │ │ │ │ │ └── wrong.pem │ │ │ │ ├── formats.test.ts │ │ │ │ ├── setup.ts │ │ │ │ ├── tcp.test.ts │ │ │ │ ├── tls.test.ts │ │ │ │ └── udp.test.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── task-runner/ │ │ │ ├── eslint.config.mjs │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── scripts/ │ │ │ │ └── debug.sh │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── node-types.test.ts │ │ │ │ │ └── task-runner-sentry.test.ts │ │ │ │ ├── config/ │ │ │ │ │ ├── base-runner-config.ts │ │ │ │ │ ├── js-runner-config.ts │ │ │ │ │ ├── main-config.ts │ │ │ │ │ └── sentry-config.ts │ │ │ │ ├── data-request/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── data-request-response-reconstruct.test.ts │ │ │ │ │ └── data-request-response-reconstruct.ts │ │ │ │ ├── health-check-server.ts │ │ │ │ ├── index.ts │ │ │ │ ├── js-task-runner/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── js-task-runner.test.ts │ │ │ │ │ │ ├── require-resolver-global-modules.test.ts │ │ │ │ │ │ ├── require-resolver.test.ts │ │ │ │ │ │ ├── task-runner.test.ts │ │ │ │ │ │ └── test-data.ts │ │ │ │ │ ├── built-ins-parser/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── built-ins-parser-state.test.ts │ │ │ │ │ │ │ └── built-ins-parser.test.ts │ │ │ │ │ │ ├── acorn-helpers.ts │ │ │ │ │ │ ├── built-ins-parser-state.ts │ │ │ │ │ │ └── built-ins-parser.ts │ │ │ │ │ ├── errors/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── execution-error.test.ts │ │ │ │ │ │ ├── disallowed-module.error.ts │ │ │ │ │ │ ├── error-like.ts │ │ │ │ │ │ ├── execution-error.ts │ │ │ │ │ │ ├── serializable-error.ts │ │ │ │ │ │ ├── task-cancelled-error.ts │ │ │ │ │ │ ├── timeout-error.ts │ │ │ │ │ │ └── unsupported-function.error.ts │ │ │ │ │ ├── js-task-runner.ts │ │ │ │ │ ├── obj-utils.ts │ │ │ │ │ └── require-resolver.ts │ │ │ │ ├── message-types.ts │ │ │ │ ├── node-types.ts │ │ │ │ ├── runner-types.ts │ │ │ │ ├── start.ts │ │ │ │ ├── task-runner-sentry.ts │ │ │ │ ├── task-runner.ts │ │ │ │ └── task-state.ts │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ ├── task-runner-python/ │ │ │ ├── .editorconfig │ │ │ ├── .python-version │ │ │ ├── README.md │ │ │ ├── justfile │ │ │ ├── pyproject.toml │ │ │ ├── pyrightconfig.json │ │ │ ├── src/ │ │ │ │ ├── __init__.py │ │ │ │ ├── config/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── health_check_config.py │ │ │ │ │ ├── security_config.py │ │ │ │ │ ├── sentry_config.py │ │ │ │ │ └── task_runner_config.py │ │ │ │ ├── constants.py │ │ │ │ ├── env.py │ │ │ │ ├── errors/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── configuration_error.py │ │ │ │ │ ├── invalid_pipe_msg_content_error.py │ │ │ │ │ ├── invalid_pipe_msg_length_error.py │ │ │ │ │ ├── no_idle_timeout_handler_error.py │ │ │ │ │ ├── security_violation_error.py │ │ │ │ │ ├── task_cancelled_error.py │ │ │ │ │ ├── task_killed_error.py │ │ │ │ │ ├── task_missing_error.py │ │ │ │ │ ├── task_result_missing_error.py │ │ │ │ │ ├── task_result_read_error.py │ │ │ │ │ ├── task_runtime_error.py │ │ │ │ │ ├── task_subprocess_failed_error.py │ │ │ │ │ ├── task_timeout_error.py │ │ │ │ │ └── websocket_connection_error.py │ │ │ │ ├── health_check_server.py │ │ │ │ ├── import_validation.py │ │ │ │ ├── logs.py │ │ │ │ ├── main.py │ │ │ │ ├── message_serde.py │ │ │ │ ├── message_types/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── broker.py │ │ │ │ │ ├── pipe.py │ │ │ │ │ └── runner.py │ │ │ │ ├── nanoid.py │ │ │ │ ├── pipe_reader.py │ │ │ │ ├── sentry.py │ │ │ │ ├── shutdown.py │ │ │ │ ├── task_analyzer.py │ │ │ │ ├── task_executor.py │ │ │ │ ├── task_runner.py │ │ │ │ └── task_state.py │ │ │ └── tests/ │ │ │ ├── fixtures/ │ │ │ │ ├── local_task_broker.py │ │ │ │ ├── task_runner_manager.py │ │ │ │ └── test_constants.py │ │ │ ├── integration/ │ │ │ │ ├── conftest.py │ │ │ │ ├── test_execution.py │ │ │ │ ├── test_health_check.py │ │ │ │ └── test_rpc.py │ │ │ └── unit/ │ │ │ ├── test_env.py │ │ │ ├── test_sentry.py │ │ │ ├── test_task_analyzer.py │ │ │ ├── test_task_executor.py │ │ │ └── test_task_runner.py │ │ ├── typescript-config/ │ │ │ ├── modern/ │ │ │ │ ├── tsconfig.cjs.json │ │ │ │ └── tsconfig.json │ │ │ ├── package.json │ │ │ ├── tsconfig.backend.json │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.common.json │ │ │ └── tsconfig.frontend.json │ │ ├── utils/ │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── biome.jsonc │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── setup.ts │ │ │ │ ├── assert.ts │ │ │ │ ├── event-bus.test.ts │ │ │ │ ├── event-bus.ts │ │ │ │ ├── event-queue.test.ts │ │ │ │ ├── event-queue.ts │ │ │ │ ├── files/ │ │ │ │ │ ├── path.test.ts │ │ │ │ │ ├── path.ts │ │ │ │ │ ├── sanitize.test.ts │ │ │ │ │ └── sanitize.ts │ │ │ │ ├── index.ts │ │ │ │ ├── number/ │ │ │ │ │ ├── smartDecimal.test.ts │ │ │ │ │ └── smartDecimal.ts │ │ │ │ ├── retry.test.ts │ │ │ │ ├── retry.ts │ │ │ │ ├── search/ │ │ │ │ │ ├── reRankSearchResults.test.ts │ │ │ │ │ ├── reRankSearchResults.ts │ │ │ │ │ ├── snapshots/ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ └── toplevel.snapshot.json │ │ │ │ │ ├── sublimeSearch.test.ts │ │ │ │ │ └── sublimeSearch.ts │ │ │ │ ├── shims.d.ts │ │ │ │ ├── sort/ │ │ │ │ │ ├── sortByProperty.test.ts │ │ │ │ │ └── sortByProperty.ts │ │ │ │ ├── string/ │ │ │ │ │ ├── truncate.test.ts │ │ │ │ │ └── truncate.ts │ │ │ │ └── workflowId.ts │ │ │ ├── tsconfig.json │ │ │ ├── tsdown.config.ts │ │ │ └── vite.config.ts │ │ ├── vitest-config/ │ │ │ ├── frontend.ts │ │ │ ├── node-decorators.ts │ │ │ ├── node.ts │ │ │ ├── package.json │ │ │ ├── tsconfig.build.json │ │ │ └── tsconfig.json │ │ └── workflow-sdk/ │ │ ├── .gitignore │ │ ├── README.md │ │ ├── eslint.config.mjs │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── scripts/ │ │ │ ├── create-workflows-zip.ts │ │ │ ├── extract-workflows.ts │ │ │ └── fetch-test-workflows.ts │ │ ├── src/ │ │ │ ├── __tests__/ │ │ │ │ ├── fixtures-download.ts │ │ │ │ └── fixtures-zip.ts │ │ │ ├── ast-interpreter/ │ │ │ │ ├── errors.ts │ │ │ │ ├── index.ts │ │ │ │ ├── interpreter.test.ts │ │ │ │ ├── interpreter.ts │ │ │ │ ├── parser.ts │ │ │ │ └── validators.ts │ │ │ ├── cli/ │ │ │ │ ├── code-to-json.ts │ │ │ │ ├── index.ts │ │ │ │ ├── json-to-code.ts │ │ │ │ └── utils.ts │ │ │ ├── codegen/ │ │ │ │ ├── code-generator.test.ts │ │ │ │ ├── code-generator.ts │ │ │ │ ├── codegen-roundtrip.test.ts │ │ │ │ ├── codegen.test.ts │ │ │ │ ├── composite-builder.test.ts │ │ │ │ ├── composite-builder.ts │ │ │ │ ├── composite-handlers/ │ │ │ │ │ ├── build-utils.ts │ │ │ │ │ ├── error-handler.test.ts │ │ │ │ │ ├── error-handler.ts │ │ │ │ │ ├── if-else-handler.test.ts │ │ │ │ │ ├── if-else-handler.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── merge-handler.test.ts │ │ │ │ │ ├── merge-handler.ts │ │ │ │ │ ├── sib-handler.test.ts │ │ │ │ │ ├── sib-handler.ts │ │ │ │ │ ├── switch-case-handler.test.ts │ │ │ │ │ └── switch-case-handler.ts │ │ │ │ ├── composite-tree.ts │ │ │ │ ├── config-builder.test.ts │ │ │ │ ├── config-builder.ts │ │ │ │ ├── constants.test.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── deferred-connections.test.ts │ │ │ │ ├── deferred-connections.ts │ │ │ │ ├── edge-case-roundtrip.test.ts │ │ │ │ ├── execution-schema-jsdoc.test.ts │ │ │ │ ├── execution-schema-jsdoc.ts │ │ │ │ ├── execution-status.test.ts │ │ │ │ ├── execution-status.ts │ │ │ │ ├── expression-annotator.test.ts │ │ │ │ ├── expression-annotator.ts │ │ │ │ ├── graph-annotator.test.ts │ │ │ │ ├── graph-annotator.ts │ │ │ │ ├── index.test.ts │ │ │ │ ├── index.ts │ │ │ │ ├── merge-pattern.test.ts │ │ │ │ ├── merge-pattern.ts │ │ │ │ ├── new-codegen-roundtrip.test.ts │ │ │ │ ├── node-type-utils.test.ts │ │ │ │ ├── node-type-utils.ts │ │ │ │ ├── output-utils.ts │ │ │ │ ├── parse-workflow-code.ts │ │ │ │ ├── semantic-graph.colocated.test.ts │ │ │ │ ├── semantic-graph.test.ts │ │ │ │ ├── semantic-graph.ts │ │ │ │ ├── semantic-registry.test.ts │ │ │ │ ├── semantic-registry.ts │ │ │ │ ├── sib-merge-handler.test.ts │ │ │ │ ├── sib-merge-handler.ts │ │ │ │ ├── string-utils.test.ts │ │ │ │ ├── string-utils.ts │ │ │ │ ├── subnode-generator.test.ts │ │ │ │ ├── subnode-generator.ts │ │ │ │ ├── types.ts │ │ │ │ ├── variable-names.test.ts │ │ │ │ └── variable-names.ts │ │ │ ├── constants/ │ │ │ │ ├── index.ts │ │ │ │ ├── node-types.test.ts │ │ │ │ └── node-types.ts │ │ │ ├── deterministic-ids.test.ts │ │ │ ├── expression/ │ │ │ │ └── index.ts │ │ │ ├── expression.test.ts │ │ │ ├── expression.ts │ │ │ ├── generate-types/ │ │ │ │ ├── generate-node-defs-cli.test.ts │ │ │ │ ├── generate-node-defs-cli.ts │ │ │ │ ├── generate-pin-data.test.ts │ │ │ │ ├── generate-types.test.ts │ │ │ │ ├── generate-types.ts │ │ │ │ ├── generate-zod-schemas.test.ts │ │ │ │ ├── generate-zod-schemas.ts │ │ │ │ ├── index.ts │ │ │ │ ├── json-schema-from-data.test.ts │ │ │ │ ├── json-schema-from-data.ts │ │ │ │ └── zod-helpers.ts │ │ │ ├── graph-validator.test.ts │ │ │ ├── index.ts │ │ │ ├── merge.test.ts │ │ │ ├── pin-data-utils.test.ts │ │ │ ├── pin-data-utils.ts │ │ │ ├── real-workflow.test.ts │ │ │ ├── types/ │ │ │ │ ├── aliases.test.ts │ │ │ │ ├── aliases.ts │ │ │ │ ├── base.ts │ │ │ │ └── types.test.ts │ │ │ ├── utils/ │ │ │ │ ├── code-helpers.test.ts │ │ │ │ ├── code-helpers.ts │ │ │ │ ├── index.ts │ │ │ │ ├── safe-access.test.ts │ │ │ │ ├── safe-access.ts │ │ │ │ └── trigger-detection.ts │ │ │ ├── validation/ │ │ │ │ ├── display-options.test.ts │ │ │ │ ├── display-options.ts │ │ │ │ ├── index.ts │ │ │ │ ├── input-resolver.test.ts │ │ │ │ ├── input-resolver.ts │ │ │ │ ├── input-validation.test.ts │ │ │ │ ├── resolve-schema.test.ts │ │ │ │ ├── resolve-schema.ts │ │ │ │ ├── schema-helpers.ts │ │ │ │ ├── schema-validation-integration.test.ts │ │ │ │ ├── schema-validator.test.ts │ │ │ │ ├── schema-validator.ts │ │ │ │ ├── test-schema-setup.ts │ │ │ │ └── validation.test.ts │ │ │ ├── validation.ts │ │ │ ├── workflow-builder/ │ │ │ │ ├── connection-utils.test.ts │ │ │ │ ├── connection-utils.ts │ │ │ │ ├── constants.test.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── control-flow-builders/ │ │ │ │ │ ├── if-else.test.ts │ │ │ │ │ ├── if-else.ts │ │ │ │ │ ├── next-batch.ts │ │ │ │ │ ├── split-in-batches.test.ts │ │ │ │ │ ├── split-in-batches.ts │ │ │ │ │ ├── switch-case.test.ts │ │ │ │ │ └── switch-case.ts │ │ │ │ ├── layout-utils.test.ts │ │ │ │ ├── layout-utils.ts │ │ │ │ ├── node-builders/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── node-builder.test.ts │ │ │ │ │ ├── node-builder.ts │ │ │ │ │ ├── subnode-builders.test.ts │ │ │ │ │ └── subnode-builders.ts │ │ │ │ ├── pin-data-utils.test.ts │ │ │ │ ├── pin-data-utils.ts │ │ │ │ ├── plugins/ │ │ │ │ │ ├── composite-handlers/ │ │ │ │ │ │ ├── branch-handler-utils.test.ts │ │ │ │ │ │ ├── branch-handler-utils.ts │ │ │ │ │ │ ├── if-else-handler.test.ts │ │ │ │ │ │ ├── if-else-handler.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── split-in-batches-handler.test.ts │ │ │ │ │ │ ├── split-in-batches-handler.ts │ │ │ │ │ │ ├── switch-case-handler.test.ts │ │ │ │ │ │ └── switch-case-handler.ts │ │ │ │ │ ├── defaults.test.ts │ │ │ │ │ ├── defaults.ts │ │ │ │ │ ├── exports.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── registry.test.ts │ │ │ │ │ ├── registry.ts │ │ │ │ │ ├── serializers/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── json-serializer.test.ts │ │ │ │ │ │ └── json-serializer.ts │ │ │ │ │ ├── types.test.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── validators/ │ │ │ │ │ ├── agent-validator.test.ts │ │ │ │ │ ├── agent-validator.ts │ │ │ │ │ ├── chain-llm-validator.test.ts │ │ │ │ │ ├── chain-llm-validator.ts │ │ │ │ │ ├── date-method-validator.test.ts │ │ │ │ │ ├── date-method-validator.ts │ │ │ │ │ ├── disconnected-node-validator.ts │ │ │ │ │ ├── expression-path-validator.test.ts │ │ │ │ │ ├── expression-path-validator.ts │ │ │ │ │ ├── expression-prefix-validator.test.ts │ │ │ │ │ ├── expression-prefix-validator.ts │ │ │ │ │ ├── from-ai-validator.test.ts │ │ │ │ │ ├── from-ai-validator.ts │ │ │ │ │ ├── http-request-validator.test.ts │ │ │ │ │ ├── http-request-validator.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── max-nodes-validator.ts │ │ │ │ │ ├── merge-node-validator.test.ts │ │ │ │ │ ├── merge-node-validator.ts │ │ │ │ │ ├── missing-trigger-validator.ts │ │ │ │ │ ├── no-nodes-validator.ts │ │ │ │ │ ├── set-node-validator.test.ts │ │ │ │ │ ├── set-node-validator.ts │ │ │ │ │ ├── subnode-connection-validator.ts │ │ │ │ │ ├── tool-node-validator.test.ts │ │ │ │ │ └── tool-node-validator.ts │ │ │ │ ├── string-utils.test.ts │ │ │ │ ├── string-utils.ts │ │ │ │ ├── subnode-utils.test.ts │ │ │ │ ├── subnode-utils.ts │ │ │ │ ├── type-guards.test.ts │ │ │ │ ├── type-guards.ts │ │ │ │ ├── validation-helpers.test.ts │ │ │ │ ├── validation-helpers.ts │ │ │ │ ├── workflow-import.test.ts │ │ │ │ └── workflow-import.ts │ │ │ ├── workflow-builder-plugins.test.ts │ │ │ ├── workflow-builder.integration.test.ts │ │ │ ├── workflow-builder.test.ts │ │ │ └── workflow-builder.ts │ │ ├── test-fixtures/ │ │ │ ├── committed-workflows/ │ │ │ │ ├── 0.json │ │ │ │ ├── 1.json │ │ │ │ ├── 2.json │ │ │ │ ├── 3.json │ │ │ │ ├── 4.json │ │ │ │ └── manifest.json │ │ │ └── real-workflows/ │ │ │ └── manifest.json │ │ ├── tsconfig.build.json │ │ └── tsconfig.json │ ├── cli/ │ │ ├── BREAKING-CHANGES.md │ │ ├── bin/ │ │ │ ├── n8n │ │ │ └── n8n.cmd │ │ ├── eslint.config.mjs │ │ ├── jest.config.integration.js │ │ ├── jest.config.integration.testcontainers.js │ │ ├── jest.config.js │ │ ├── jest.config.migration.js │ │ ├── jest.config.migration.testcontainers.js │ │ ├── jest.config.unit.js │ │ ├── nodemon.json │ │ ├── package.json │ │ ├── scripts/ │ │ │ └── build.mjs │ │ ├── src/ │ │ │ ├── __tests__/ │ │ │ │ ├── abstract-server.test.ts │ │ │ │ ├── active-executions.test.ts │ │ │ │ ├── active-workflow-manager.test.ts │ │ │ │ ├── command-registry.test.ts │ │ │ │ ├── controller.registry.test.ts │ │ │ │ ├── credential-types.test.ts │ │ │ │ ├── credentials-helper.test.ts │ │ │ │ ├── credentials-overwrites.test.ts │ │ │ │ ├── external-hooks.test.ts │ │ │ │ ├── license.test.ts │ │ │ │ ├── load-nodes-and-credentials.test.ts │ │ │ │ ├── manual-execution.service.test.ts │ │ │ │ ├── node-types.test.ts │ │ │ │ ├── project.test-data.ts │ │ │ │ ├── response-helper.test.ts │ │ │ │ ├── utils.test.ts │ │ │ │ ├── wait-tracker.test.ts │ │ │ │ ├── workflow-execute-additional-data.test.ts │ │ │ │ ├── workflow-helpers.test.ts │ │ │ │ └── workflow-runner.test.ts │ │ │ ├── abstract-server.ts │ │ │ ├── activation-errors.service.ts │ │ │ ├── active-executions.ts │ │ │ ├── active-workflow-manager.ts │ │ │ ├── auth/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── auth-handler.registry.test.ts │ │ │ │ │ ├── auth-service-browser-id-whitelist.test.ts │ │ │ │ │ └── auth.service.test.ts │ │ │ │ ├── auth-handler.registry.ts │ │ │ │ ├── auth.service.ts │ │ │ │ ├── handlers/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── email.auth-handler.test.ts │ │ │ │ │ └── email.auth-handler.ts │ │ │ │ └── jwt.ts │ │ │ ├── binary-data/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── database.manager.integration.test.ts │ │ │ │ └── database.manager.ts │ │ │ ├── chat/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── chat-execution-manager.test.ts │ │ │ │ │ ├── chat-server.test.ts │ │ │ │ │ ├── chat-service.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── chat-execution-manager.ts │ │ │ │ ├── chat-server.ts │ │ │ │ ├── chat-service.ts │ │ │ │ ├── chat-service.types.ts │ │ │ │ └── utils.ts │ │ │ ├── collaboration/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── collaboration.state.test.ts │ │ │ │ ├── collaboration.message.ts │ │ │ │ ├── collaboration.service.ts │ │ │ │ └── collaboration.state.ts │ │ │ ├── command-registry.ts │ │ │ ├── commands/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── community-node.test.ts │ │ │ │ │ ├── execute-batch.test.ts │ │ │ │ │ ├── execute.test.ts │ │ │ │ │ ├── start.test.ts │ │ │ │ │ ├── webhook.test.ts │ │ │ │ │ └── worker.test.ts │ │ │ │ ├── audit.ts │ │ │ │ ├── base-command.ts │ │ │ │ ├── db/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── revert.test.ts │ │ │ │ │ └── revert.ts │ │ │ │ ├── execute-batch.ts │ │ │ │ ├── execute.ts │ │ │ │ ├── export/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── entities.test.ts │ │ │ │ │ ├── credentials.ts │ │ │ │ │ ├── entities.ts │ │ │ │ │ ├── nodes.ts │ │ │ │ │ └── workflow.ts │ │ │ │ ├── import/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── entities.test.ts │ │ │ │ │ ├── credentials.ts │ │ │ │ │ ├── entities.ts │ │ │ │ │ └── workflow.ts │ │ │ │ ├── ldap/ │ │ │ │ │ └── reset.ts │ │ │ │ ├── license/ │ │ │ │ │ ├── clear.ts │ │ │ │ │ └── info.ts │ │ │ │ ├── list/ │ │ │ │ │ └── workflow.ts │ │ │ │ ├── mfa/ │ │ │ │ │ └── disable.ts │ │ │ │ ├── publish/ │ │ │ │ │ └── workflow.ts │ │ │ │ ├── start.ts │ │ │ │ ├── ttwf/ │ │ │ │ │ ├── generate.ts │ │ │ │ │ └── worker-pool.ts │ │ │ │ ├── unpublish/ │ │ │ │ │ └── workflow.ts │ │ │ │ ├── update/ │ │ │ │ │ └── workflow.ts │ │ │ │ ├── user-management/ │ │ │ │ │ └── reset.ts │ │ │ │ ├── webhook.ts │ │ │ │ └── worker.ts │ │ │ ├── concurrency/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── concurrency-capacity-reservation.test.ts │ │ │ │ │ ├── concurrency-control.service.test.ts │ │ │ │ │ └── concurrency-queue.test.ts │ │ │ │ ├── concurrency-capacity-reservation.ts │ │ │ │ ├── concurrency-control.service.ts │ │ │ │ └── concurrency-queue.ts │ │ │ ├── config/ │ │ │ │ ├── index.ts │ │ │ │ ├── schema.ts │ │ │ │ └── types.ts │ │ │ ├── constants.ts │ │ │ ├── controller.registry.ts │ │ │ ├── controllers/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── ai.controller.test.ts │ │ │ │ │ ├── api-keys.controller.test.ts │ │ │ │ │ ├── auth.controller.test.ts │ │ │ │ │ ├── binary-data.controller.test.ts │ │ │ │ │ ├── dynamic-node-parameters.controller.test.ts │ │ │ │ │ ├── dynamic-templates.controller.test.ts │ │ │ │ │ ├── invitation.controller.test.ts │ │ │ │ │ ├── me.controller.test.ts │ │ │ │ │ ├── owner.controller.test.ts │ │ │ │ │ ├── project.controller.test.ts │ │ │ │ │ ├── translation.controller.test.ts │ │ │ │ │ ├── user-settings.controller.test.ts │ │ │ │ │ └── users.controller.test.ts │ │ │ │ ├── active-workflows.controller.ts │ │ │ │ ├── ai.controller.ts │ │ │ │ ├── annotation-tags.controller.ee.ts │ │ │ │ ├── api-keys.controller.ts │ │ │ │ ├── auth.controller.ts │ │ │ │ ├── binary-data.controller.ts │ │ │ │ ├── cta.controller.ts │ │ │ │ ├── debug.controller.ts │ │ │ │ ├── dynamic-node-parameters.controller.ts │ │ │ │ ├── dynamic-templates.controller.ts │ │ │ │ ├── e2e.controller.ts │ │ │ │ ├── folder.controller.ts │ │ │ │ ├── invitation.controller.ts │ │ │ │ ├── me.controller.ts │ │ │ │ ├── mfa.controller.ts │ │ │ │ ├── module-settings.controller.ts │ │ │ │ ├── node-types.controller.ts │ │ │ │ ├── oauth/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── oauth1-credential.controller.test.ts │ │ │ │ │ │ └── oauth2-credential.controller.test.ts │ │ │ │ │ ├── oauth1-credential.controller.ts │ │ │ │ │ ├── oauth2-credential.controller.ts │ │ │ │ │ └── oauth2-dynamic-client-registration.schema.ts │ │ │ │ ├── orchestration.controller.ts │ │ │ │ ├── owner.controller.ts │ │ │ │ ├── password-reset.controller.ts │ │ │ │ ├── posthog.controller.ts │ │ │ │ ├── project.controller.ts │ │ │ │ ├── role.controller.ts │ │ │ │ ├── security-settings.controller.ts │ │ │ │ ├── survey-answers.dto.ts │ │ │ │ ├── tags.controller.ts │ │ │ │ ├── telemetry.controller.ts │ │ │ │ ├── third-party-licenses.controller.ts │ │ │ │ ├── translation.controller.ts │ │ │ │ ├── user-settings.controller.ts │ │ │ │ ├── users.controller.ts │ │ │ │ ├── workflow-statistics.controller.ts │ │ │ │ └── workflow-statistics.types.ts │ │ │ ├── crash-journal.ts │ │ │ ├── credential-types.ts │ │ │ ├── credentials/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── credential-dependency.service.test.ts │ │ │ │ │ ├── credentials.controller.test.ts │ │ │ │ │ ├── credentials.service.ee.test.ts │ │ │ │ │ ├── credentials.service.test.ts │ │ │ │ │ ├── credentials.test-data.ts │ │ │ │ │ ├── dynamic-credentials-proxy.test.ts │ │ │ │ │ ├── external-secrets.utils.test.ts │ │ │ │ │ └── validation.test.ts │ │ │ │ ├── credential-dependency.service.ts │ │ │ │ ├── credential-resolution-provider.interface.ts │ │ │ │ ├── credentials-finder.service.ts │ │ │ │ ├── credentials.controller.ts │ │ │ │ ├── credentials.service.ee.ts │ │ │ │ ├── credentials.service.ts │ │ │ │ ├── dynamic-credential-storage.interface.ts │ │ │ │ ├── dynamic-credentials-proxy.ts │ │ │ │ ├── external-secrets.utils.ts │ │ │ │ └── validation.ts │ │ │ ├── credentials-helper.ts │ │ │ ├── credentials-overwrites.ts │ │ │ ├── databases/ │ │ │ │ └── repositories/ │ │ │ │ └── __tests__/ │ │ │ │ ├── credentials.repository.test.ts │ │ │ │ ├── execution.repository.test.ts │ │ │ │ ├── folder.repository.integration.test.ts │ │ │ │ └── workflow-statistics.integration.test.ts │ │ │ ├── deduplication/ │ │ │ │ ├── deduplication-helper.ts │ │ │ │ └── index.ts │ │ │ ├── deprecation/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── deprecation.service.test.ts │ │ │ │ └── deprecation.service.ts │ │ │ ├── environments.ee/ │ │ │ │ └── variables/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── variables.integration.test.ts │ │ │ │ │ └── variables.service.integration.test.ts │ │ │ │ ├── variables.controller.ee.ts │ │ │ │ └── variables.service.ee.ts │ │ │ ├── errors/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── http-error-classifier.test.ts │ │ │ │ │ └── http-error-serializers.test.ts │ │ │ │ ├── aborted-execution-retry.error.ts │ │ │ │ ├── cache-errors/ │ │ │ │ │ └── uncacheable-value.error.ts │ │ │ │ ├── credential-not-found.error.ts │ │ │ │ ├── credentials-overwrites-already-set.error.ts │ │ │ │ ├── deduplication.error.ts │ │ │ │ ├── execution-already-resuming.error.ts │ │ │ │ ├── execution-not-found-error.ts │ │ │ │ ├── feature-not-licensed.error.ts │ │ │ │ ├── folder-not-found.error.ts │ │ │ │ ├── http-error-classifier.ts │ │ │ │ ├── http-error-serializers.ts │ │ │ │ ├── invalid-concurrency-limit.error.ts │ │ │ │ ├── invalid-role.error.ts │ │ │ │ ├── max-stalled-count.error.ts │ │ │ │ ├── missing-execution-stop.error.ts │ │ │ │ ├── node-crashed.error.ts │ │ │ │ ├── non-json-body.error.ts │ │ │ │ ├── postgres-live-rows-retrieval.error.ts │ │ │ │ ├── queued-execution-retry.error.ts │ │ │ │ ├── redactable.error.ts │ │ │ │ ├── response-errors/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── license-eula-required.error.test.ts │ │ │ │ │ │ └── webhook-not-found.error.test.ts │ │ │ │ │ ├── abstract/ │ │ │ │ │ │ └── response.error.ts │ │ │ │ │ ├── auth.error.ts │ │ │ │ │ ├── bad-request.error.ts │ │ │ │ │ ├── conflict.error.ts │ │ │ │ │ ├── content-too-large.error.ts │ │ │ │ │ ├── forbidden.error.ts │ │ │ │ │ ├── internal-server.error.ts │ │ │ │ │ ├── invalid-mfa-code.error.ts │ │ │ │ │ ├── invalid-mfa-recovery-code-error.ts │ │ │ │ │ ├── license-eula-required.error.ts │ │ │ │ │ ├── locked.error.ts │ │ │ │ │ ├── not-found.error.ts │ │ │ │ │ ├── not-implemented.error.ts │ │ │ │ │ ├── scope-forbidden.error.ts │ │ │ │ │ ├── service-unavailable.error.ts │ │ │ │ │ ├── too-many-requests.error.ts │ │ │ │ │ ├── transfer-credential.error.ts │ │ │ │ │ ├── transfer-workflow.error.ts │ │ │ │ │ ├── unauthenticated.error.ts │ │ │ │ │ ├── unprocessable.error.ts │ │ │ │ │ ├── webhook-not-found.error.ts │ │ │ │ │ └── workflow-validation.error.ts │ │ │ │ ├── shared-workflow-not-found.error.ts │ │ │ │ ├── single-webhook-trigger.error.ts │ │ │ │ ├── subworkflow-policy-denial.error.ts │ │ │ │ ├── unknown-execution-mode.error.ts │ │ │ │ ├── variable-count-limit-reached.error.ts │ │ │ │ ├── variable-validation.error.ts │ │ │ │ ├── workflow-crashed.error.ts │ │ │ │ ├── workflow-history-version-not-found.error.ts │ │ │ │ └── workflow-missing-id.error.ts │ │ │ ├── evaluation.ee/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── test-runs.controller.ee.test.ts │ │ │ │ ├── test-runner/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── evaluation-metrics.ee.test.ts │ │ │ │ │ │ ├── mock-data/ │ │ │ │ │ │ │ ├── execution-data-renamed-nodes.json │ │ │ │ │ │ │ ├── execution-data.json │ │ │ │ │ │ │ ├── execution-data.multiple-triggers-2.json │ │ │ │ │ │ │ ├── execution-data.multiple-triggers.json │ │ │ │ │ │ │ ├── workflow.evaluation-middle.json │ │ │ │ │ │ │ ├── workflow.evaluation.json │ │ │ │ │ │ │ ├── workflow.multiple-triggers.json │ │ │ │ │ │ │ ├── workflow.under-test-renamed-nodes.json │ │ │ │ │ │ │ └── workflow.under-test.json │ │ │ │ │ │ ├── test-runner.service.ee.test.ts │ │ │ │ │ │ └── utils.ee.test.ts │ │ │ │ │ ├── errors.ee.ts │ │ │ │ │ ├── evaluation-metrics.ee.ts │ │ │ │ │ ├── test-run-cleanup.service.ee.ts │ │ │ │ │ ├── test-runner.service.ee.ts │ │ │ │ │ └── utils.ee.ts │ │ │ │ ├── test-runs.controller.ee.ts │ │ │ │ └── test-runs.types.ee.ts │ │ │ ├── eventbus/ │ │ │ │ ├── event-message-classes/ │ │ │ │ │ ├── abstract-event-message-options.ts │ │ │ │ │ ├── abstract-event-message.ts │ │ │ │ │ ├── abstract-event-payload.ts │ │ │ │ │ ├── event-message-ai-node.ts │ │ │ │ │ ├── event-message-audit.ts │ │ │ │ │ ├── event-message-confirm.ts │ │ │ │ │ ├── event-message-execution.ts │ │ │ │ │ ├── event-message-generic.ts │ │ │ │ │ ├── event-message-node.ts │ │ │ │ │ ├── event-message-queue.ts │ │ │ │ │ ├── event-message-runner.ts │ │ │ │ │ ├── event-message-workflow.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── index.ts │ │ │ │ ├── message-event-bus/ │ │ │ │ │ └── message-event-bus.ts │ │ │ │ └── message-event-bus-writer/ │ │ │ │ ├── message-event-bus-log-writer-worker.ts │ │ │ │ └── message-event-bus-log-writer.ts │ │ │ ├── events/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── log-streaming-event-relay.test.ts │ │ │ │ │ ├── telemetry-event-relay.test.ts │ │ │ │ │ └── workflow-failure-notification-event-relay.test.ts │ │ │ │ ├── event.service.ts │ │ │ │ ├── events.controller.ts │ │ │ │ ├── maps/ │ │ │ │ │ ├── ai.event-map.ts │ │ │ │ │ ├── queue-metrics.event-map.ts │ │ │ │ │ └── relay.event-map.ts │ │ │ │ └── relays/ │ │ │ │ ├── event-relay.ts │ │ │ │ ├── log-streaming.event-relay.ts │ │ │ │ ├── telemetry.event-relay.ts │ │ │ │ └── workflow-failure-notification.event-relay.ts │ │ │ ├── execution-lifecycle/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── execution-lifecycle-hooks.test.ts │ │ │ │ │ ├── restore-binary-data-id.test.ts │ │ │ │ │ ├── save-execution-progress.test.ts │ │ │ │ │ └── to-save-settings.integration.test.ts │ │ │ │ ├── execute-error-workflow.ts │ │ │ │ ├── execution-lifecycle-hooks.ts │ │ │ │ ├── restore-binary-data-id.ts │ │ │ │ ├── save-execution-progress.ts │ │ │ │ ├── shared/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── shared-hook-functions.test.ts │ │ │ │ │ └── shared-hook-functions.ts │ │ │ │ └── to-save-settings.ts │ │ │ ├── executions/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── execution-persistence.integration.test.ts │ │ │ │ │ ├── execution-persistence.test.ts │ │ │ │ │ ├── execution-recovery.service.integration.test.ts │ │ │ │ │ ├── execution-redaction-proxy.service.test.ts │ │ │ │ │ ├── execution.service.test.ts │ │ │ │ │ ├── executions.controller.test.ts │ │ │ │ │ ├── failed-run-factory.test.ts │ │ │ │ │ ├── parse-range-query.middleware.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── execution-data/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── db-store.integration.test.ts │ │ │ │ │ │ ├── fs-store.integration.test.ts │ │ │ │ │ │ └── mocks.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── corrupted-execution-data.error.ts │ │ │ │ │ ├── db-store.ts │ │ │ │ │ ├── execution-data-write.error.ts │ │ │ │ │ ├── fs-store.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── execution-persistence.ts │ │ │ │ ├── execution-recovery.service.ts │ │ │ │ ├── execution-redaction-proxy.service.ts │ │ │ │ ├── execution-redaction.ts │ │ │ │ ├── execution.service.ee.ts │ │ │ │ ├── execution.service.ts │ │ │ │ ├── execution.types.ts │ │ │ │ ├── execution.utils.ts │ │ │ │ ├── executions.controller.ts │ │ │ │ ├── failed-run-factory.ts │ │ │ │ ├── parse-range-query.middleware.ts │ │ │ │ ├── pre-execution-checks/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── credentials-permission-checker.test.ts │ │ │ │ │ │ └── subworkflow-policy-checker.test.ts │ │ │ │ │ ├── credentials-permission-checker.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── subworkflow-policy-checker.ts │ │ │ │ └── validation.ts │ │ │ ├── external-hooks.ts │ │ │ ├── generic-helpers.ts │ │ │ ├── index.ts │ │ │ ├── interfaces.ts │ │ │ ├── jest.d.ts │ │ │ ├── license/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── license.service.test.ts │ │ │ │ ├── license.controller.ts │ │ │ │ └── license.service.ts │ │ │ ├── license.ts │ │ │ ├── load-nodes-and-credentials.ts │ │ │ ├── manual-execution.service.ts │ │ │ ├── metrics/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── license-metrics.service.test.ts │ │ │ │ │ ├── prometheus-metrics.service.test.ts │ │ │ │ │ └── prometheus-metrics.service.unmocked.test.ts │ │ │ │ ├── license-metrics.service.ts │ │ │ │ ├── prometheus-metrics.service.ts │ │ │ │ └── types.ts │ │ │ ├── mfa/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── mfa.service.test.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── helpers.ts │ │ │ │ ├── mfa.service.ts │ │ │ │ └── totp.service.ts │ │ │ ├── middlewares/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── jitter.test.ts │ │ │ │ ├── body-parser.ts │ │ │ │ ├── cors.ts │ │ │ │ ├── index.ts │ │ │ │ ├── jitter.ts │ │ │ │ └── list-query/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── list-query.test.ts │ │ │ │ ├── dtos/ │ │ │ │ │ ├── base.filter.dto.ts │ │ │ │ │ ├── base.select.dto.ts │ │ │ │ │ ├── credentials.filter.dto.ts │ │ │ │ │ ├── credentials.select.dto.ts │ │ │ │ │ ├── pagination.dto.ts │ │ │ │ │ ├── user.filter.dto.ts │ │ │ │ │ ├── user.select.dto.ts │ │ │ │ │ ├── workflow.filter.dto.ts │ │ │ │ │ ├── workflow.select.dto.ts │ │ │ │ │ └── workflow.sort-by.dto.ts │ │ │ │ ├── filter.ts │ │ │ │ ├── index.ts │ │ │ │ ├── pagination.ts │ │ │ │ ├── select.ts │ │ │ │ └── sort-by.ts │ │ │ ├── modules/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── main-only-modules.test.ts │ │ │ │ ├── breaking-changes/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── breaking-changes.rule-discovery.test.ts │ │ │ │ │ │ ├── breaking-changes.rule-registry.service.test.ts │ │ │ │ │ │ ├── breaking-changes.service.test.ts │ │ │ │ │ │ └── test-helpers.ts │ │ │ │ │ ├── breaking-changes.controller.ts │ │ │ │ │ ├── breaking-changes.module.ts │ │ │ │ │ ├── breaking-changes.rule-registry.service.ts │ │ │ │ │ ├── breaking-changes.service.ts │ │ │ │ │ ├── rules/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── v2/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── binary-data-storage.rule.test.ts │ │ │ │ │ │ │ ├── cli-replace-update-workflow-command.rule.test.ts │ │ │ │ │ │ │ ├── disabled-nodes.rule.test.ts │ │ │ │ │ │ │ ├── dotenv-upgrade.rule.test.ts │ │ │ │ │ │ │ ├── file-access.rule.test.ts │ │ │ │ │ │ │ ├── oauth-callback-auth.rule.test.ts │ │ │ │ │ │ │ ├── process-env-access.rule.test.ts │ │ │ │ │ │ │ ├── pyodide-removed.rule.test.ts │ │ │ │ │ │ │ ├── queue-worker-max-stalled-count.rule.test.ts │ │ │ │ │ │ │ ├── removed-nodes.rule.test.ts │ │ │ │ │ │ │ ├── settings-file-permissions.rule.test.ts │ │ │ │ │ │ │ ├── start-node-removed.rule.test.ts │ │ │ │ │ │ │ ├── task-runner-docker-image.rule.test.ts │ │ │ │ │ │ │ ├── tunnel-option.rule.test.ts │ │ │ │ │ │ │ ├── wait-node-subworkflow.rule.test.ts │ │ │ │ │ │ │ └── workflow-hooks-deprecated.rule.test.ts │ │ │ │ │ │ ├── binary-data-storage.rule.ts │ │ │ │ │ │ ├── cli-replace-update-workflow-command.rule.ts │ │ │ │ │ │ ├── disabled-nodes.rule.ts │ │ │ │ │ │ ├── dotenv-upgrade.rule.ts │ │ │ │ │ │ ├── file-access.rule.ts │ │ │ │ │ │ ├── oauth-callback-auth.rule.ts │ │ │ │ │ │ ├── process-env-access.rule.ts │ │ │ │ │ │ ├── pyodide-removed.rule.ts │ │ │ │ │ │ ├── queue-worker-max-stalled-count.rule.ts │ │ │ │ │ │ ├── removed-nodes.rule.ts │ │ │ │ │ │ ├── settings-file-permissions.rule.ts │ │ │ │ │ │ ├── start-node-removed.rule.ts │ │ │ │ │ │ ├── task-runner-docker-image.rule.ts │ │ │ │ │ │ ├── tunnel-option.rule.ts │ │ │ │ │ │ ├── wait-node-subworkflow.rule.ts │ │ │ │ │ │ └── workflow-hooks-deprecated.rule.ts │ │ │ │ │ └── types/ │ │ │ │ │ ├── detection.types.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── rule.types.ts │ │ │ │ ├── chat-hub/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── chat-hub-agent.service.test.ts │ │ │ │ │ │ ├── chat-hub-credentials.service.test.ts │ │ │ │ │ │ ├── chat-hub-execution-store.service.test.ts │ │ │ │ │ │ ├── chat-hub-execution-watcher.service.test.ts │ │ │ │ │ │ ├── chat-hub-execution.service.test.ts │ │ │ │ │ │ ├── chat-hub-extractor.test.ts │ │ │ │ │ │ ├── chat-hub-models.service.integration.test.ts │ │ │ │ │ │ ├── chat-hub-settings.service.test.ts │ │ │ │ │ │ ├── chat-hub-tool.service.test.ts │ │ │ │ │ │ ├── chat-hub-workflow.service.test.ts │ │ │ │ │ │ ├── chat-hub.attachment.service.test.ts │ │ │ │ │ │ ├── chat-hub.service.integration.test.ts │ │ │ │ │ │ ├── chat-stream-state.service.test.ts │ │ │ │ │ │ └── chat-stream.service.test.ts │ │ │ │ │ ├── chat-hub-agent.entity.ts │ │ │ │ │ ├── chat-hub-agent.repository.ts │ │ │ │ │ ├── chat-hub-agent.service.ts │ │ │ │ │ ├── chat-hub-credentials.service.ts │ │ │ │ │ ├── chat-hub-event-relay.service.ts │ │ │ │ │ ├── chat-hub-execution-store.service.ts │ │ │ │ │ ├── chat-hub-execution-watcher.service.ts │ │ │ │ │ ├── chat-hub-execution.service.ts │ │ │ │ │ ├── chat-hub-extractor.ts │ │ │ │ │ ├── chat-hub-message.entity.ts │ │ │ │ │ ├── chat-hub-session.entity.ts │ │ │ │ │ ├── chat-hub-title.service.ts │ │ │ │ │ ├── chat-hub-tool.entity.ts │ │ │ │ │ ├── chat-hub-tool.repository.ts │ │ │ │ │ ├── chat-hub-tool.service.ts │ │ │ │ │ ├── chat-hub-upload.middleware.ts │ │ │ │ │ ├── chat-hub-workflow.service.ts │ │ │ │ │ ├── chat-hub.attachment.service.ts │ │ │ │ │ ├── chat-hub.constants.ts │ │ │ │ │ ├── chat-hub.controller.ts │ │ │ │ │ ├── chat-hub.models.service.ts │ │ │ │ │ ├── chat-hub.module.ts │ │ │ │ │ ├── chat-hub.service.ts │ │ │ │ │ ├── chat-hub.settings.controller.ts │ │ │ │ │ ├── chat-hub.settings.service.ts │ │ │ │ │ ├── chat-hub.types.ts │ │ │ │ │ ├── chat-message.repository.ts │ │ │ │ │ ├── chat-session.repository.ts │ │ │ │ │ ├── chat-stream-state.service.ts │ │ │ │ │ ├── chat-stream.service.ts │ │ │ │ │ ├── context-limits.ts │ │ │ │ │ ├── dto/ │ │ │ │ │ │ └── chat-models-request.dto.ts │ │ │ │ │ └── stream-capturer.ts │ │ │ │ ├── community-packages/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── community-node-types-utils.test.ts │ │ │ │ │ │ ├── community-node-types.service.test.ts │ │ │ │ │ │ ├── community-packages.controller.test.ts │ │ │ │ │ │ ├── community-packages.integration.test.ts │ │ │ │ │ │ ├── community-packages.lifecycle.service.test.ts │ │ │ │ │ │ ├── community-packages.service.test.ts │ │ │ │ │ │ ├── npm-utils.test.ts │ │ │ │ │ │ └── strapi-utils.test.ts │ │ │ │ │ ├── community-node-types-utils.ts │ │ │ │ │ ├── community-node-types.controller.ts │ │ │ │ │ ├── community-node-types.service.ts │ │ │ │ │ ├── community-node.command.ts │ │ │ │ │ ├── community-packages.config.ts │ │ │ │ │ ├── community-packages.controller.ts │ │ │ │ │ ├── community-packages.lifecycle.service.ts │ │ │ │ │ ├── community-packages.module.ts │ │ │ │ │ ├── community-packages.service.ts │ │ │ │ │ ├── community-packages.types.ts │ │ │ │ │ ├── installed-nodes.entity.ts │ │ │ │ │ ├── installed-nodes.repository.ts │ │ │ │ │ ├── installed-packages.entity.ts │ │ │ │ │ ├── installed-packages.repository.ts │ │ │ │ │ ├── npm-utils.ts │ │ │ │ │ └── strapi-utils.ts │ │ │ │ ├── data-table/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── csv-parser.service.test.ts │ │ │ │ │ │ ├── data-table-aggregate.controller.integration.test.ts │ │ │ │ │ │ ├── data-table-aggregate.service.integration.test.ts │ │ │ │ │ │ ├── data-table-column-rename.controller.integration.test.ts │ │ │ │ │ │ ├── data-table-column.repository.test.ts │ │ │ │ │ │ ├── data-table-csv-import.service.test.ts │ │ │ │ │ │ ├── data-table-csv.controller.integration.test.ts │ │ │ │ │ │ ├── data-table-ddl.service.test.ts │ │ │ │ │ │ ├── data-table-file-cleanup.service.test.ts │ │ │ │ │ │ ├── data-table-filters.integration.test.ts │ │ │ │ │ │ ├── data-table-proxy.service.integration.test.ts │ │ │ │ │ │ ├── data-table-size-validator.service.test.ts │ │ │ │ │ │ ├── data-table-size.integration.test.ts │ │ │ │ │ │ ├── data-table-touch-updated-at.integration.test.ts │ │ │ │ │ │ ├── data-table-uploads.controller.integration.test.ts │ │ │ │ │ │ ├── data-table.controller.integration.test.ts │ │ │ │ │ │ ├── data-table.service.integration.test.ts │ │ │ │ │ │ ├── data-table.service.test.ts │ │ │ │ │ │ ├── sql-utils.test.ts │ │ │ │ │ │ └── test-helpers.ts │ │ │ │ │ ├── csv-parser.service.ts │ │ │ │ │ ├── data-table-aggregate.controller.ts │ │ │ │ │ ├── data-table-aggregate.service.ts │ │ │ │ │ ├── data-table-column.entity.ts │ │ │ │ │ ├── data-table-column.repository.ts │ │ │ │ │ ├── data-table-csv-import.service.ts │ │ │ │ │ ├── data-table-ddl.service.ts │ │ │ │ │ ├── data-table-file-cleanup.service.ts │ │ │ │ │ ├── data-table-proxy.service.ts │ │ │ │ │ ├── data-table-rows.repository.ts │ │ │ │ │ ├── data-table-size-validator.service.ts │ │ │ │ │ ├── data-table-uploads.controller.ts │ │ │ │ │ ├── data-table.controller.ts │ │ │ │ │ ├── data-table.entity.ts │ │ │ │ │ ├── data-table.module.ts │ │ │ │ │ ├── data-table.repository.ts │ │ │ │ │ ├── data-table.service.ts │ │ │ │ │ ├── data-table.types.ts │ │ │ │ │ ├── errors/ │ │ │ │ │ │ ├── data-table-column-name-conflict.error.ts │ │ │ │ │ │ ├── data-table-column-not-found.error.ts │ │ │ │ │ │ ├── data-table-file-upload.error.ts │ │ │ │ │ │ ├── data-table-name-conflict.error.ts │ │ │ │ │ │ ├── data-table-not-found.error.ts │ │ │ │ │ │ ├── data-table-system-column-name-conflict.error.ts │ │ │ │ │ │ └── data-table-validation.error.ts │ │ │ │ │ ├── middleware/ │ │ │ │ │ │ └── branch-write-access-middleware.ts │ │ │ │ │ ├── multer-upload-middleware.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils/ │ │ │ │ │ ├── size-utils.ts │ │ │ │ │ └── sql-utils.ts │ │ │ │ ├── dynamic-credentials.ee/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── credential-resolvers.controller.test.ts │ │ │ │ │ │ ├── dynamic-credentials-cors.integration.test.ts │ │ │ │ │ │ ├── dynamic-credentials.controller.test.ts │ │ │ │ │ │ └── workflow-status.controller.test.ts │ │ │ │ │ ├── context-establishment-hooks/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── bearer-token-extractor.test.ts │ │ │ │ │ │ │ ├── http-header-extractor.test.ts │ │ │ │ │ │ │ ├── slack-signature-extractor.test.ts │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ ├── bearer-token-extractor.ts │ │ │ │ │ │ ├── http-header-extractor.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── slack-signature-extractor.ts │ │ │ │ │ ├── credential-resolvers/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── n8n-credential-resolver.test.ts │ │ │ │ │ │ │ ├── oauth-credential-resolver.test.ts │ │ │ │ │ │ │ ├── resolver-contract-tests.ts │ │ │ │ │ │ │ └── slack-credential-resolver.test.ts │ │ │ │ │ │ ├── identifiers/ │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ ├── n8n-identifier.test.ts │ │ │ │ │ │ │ │ ├── oauth2-introspection-identifier.test.ts │ │ │ │ │ │ │ │ ├── oauth2-userinfo-identifier.test.ts │ │ │ │ │ │ │ │ └── slack-signature-identifier.test.ts │ │ │ │ │ │ │ ├── identifier-interface.ts │ │ │ │ │ │ │ ├── n8n-identifier.ts │ │ │ │ │ │ │ ├── oauth2-introspection-identifier.ts │ │ │ │ │ │ │ ├── oauth2-userinfo-identifier.ts │ │ │ │ │ │ │ ├── oauth2-utils.ts │ │ │ │ │ │ │ └── slack-signature-identifier.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── n8n-credential-resolver.ts │ │ │ │ │ │ ├── oauth-credential-resolver.ts │ │ │ │ │ │ ├── slack-credential-resolver.ts │ │ │ │ │ │ └── storage/ │ │ │ │ │ │ ├── dynamic-credential-entry-storage.ts │ │ │ │ │ │ ├── dynamic-credential-user-entry-storage.ts │ │ │ │ │ │ └── storage-interface.ts │ │ │ │ │ ├── credential-resolvers.controller.ts │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── entities/ │ │ │ │ │ │ │ ├── credential-resolver.ts │ │ │ │ │ │ │ ├── dynamic-credential-entry.ts │ │ │ │ │ │ │ └── dynamic-credential-user-entry.ts │ │ │ │ │ │ └── repositories/ │ │ │ │ │ │ ├── credential-resolver.repository.ts │ │ │ │ │ │ ├── dynamic-credential-entry.repository.ts │ │ │ │ │ │ └── dynamic-credential-user-entry.repository.ts │ │ │ │ │ ├── dynamic-credentials.config.ts │ │ │ │ │ ├── dynamic-credentials.controller.ts │ │ │ │ │ ├── dynamic-credentials.module.ts │ │ │ │ │ ├── errors/ │ │ │ │ │ │ ├── credential-resolution.error.ts │ │ │ │ │ │ ├── credential-resolver-not-configured.error.ts │ │ │ │ │ │ ├── credential-resolver-not-found.error.ts │ │ │ │ │ │ ├── credential-storage.error.ts │ │ │ │ │ │ └── missing-execution-context.error.ts │ │ │ │ │ ├── services/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── credential-check-proxy.service.test.ts │ │ │ │ │ │ │ ├── credential-resolver-registry.service.test.ts │ │ │ │ │ │ │ ├── credential-resolver-workflow.service.test.ts │ │ │ │ │ │ │ ├── credential-resolver.service.test.ts │ │ │ │ │ │ │ ├── dynamic-credential-cors.service.test.ts │ │ │ │ │ │ │ ├── dynamic-credential-storage.service.test.ts │ │ │ │ │ │ │ ├── dynamic-credential-web.service.test.ts │ │ │ │ │ │ │ ├── dynamic-credential.service.test.ts │ │ │ │ │ │ │ └── shared-fields.test.ts │ │ │ │ │ │ ├── credential-check-proxy.service.ts │ │ │ │ │ │ ├── credential-resolver-registry.service.ts │ │ │ │ │ │ ├── credential-resolver-workflow.service.ts │ │ │ │ │ │ ├── credential-resolver.service.ts │ │ │ │ │ │ ├── dynamic-credential-cors.service.ts │ │ │ │ │ │ ├── dynamic-credential-storage.service.ts │ │ │ │ │ │ ├── dynamic-credential-web.service.ts │ │ │ │ │ │ ├── dynamic-credential.service.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── resolver-config-expression.service.ts │ │ │ │ │ │ └── shared-fields.ts │ │ │ │ │ ├── utils.ts │ │ │ │ │ └── workflow-status.controller.ts │ │ │ │ ├── external-secrets.ee/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── external-secrets-manager.ee.test.ts │ │ │ │ │ │ ├── external-secrets-providers.ee.test.ts │ │ │ │ │ │ ├── external-secrets.service.ee.test.ts │ │ │ │ │ │ ├── provider-lifecycle.service.test.ts │ │ │ │ │ │ ├── provider-registry.service.test.ts │ │ │ │ │ │ ├── redaction.service.ee.test.ts │ │ │ │ │ │ ├── retry-manager.service.test.ts │ │ │ │ │ │ ├── secret-provider-access-check.service.ee.test.ts │ │ │ │ │ │ ├── secrets-cache.service.test.ts │ │ │ │ │ │ ├── secrets-providers-connections.controller.ee.test.ts │ │ │ │ │ │ ├── secrets-providers-connections.service.ee.test.ts │ │ │ │ │ │ └── settings-store.service.test.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── errors/ │ │ │ │ │ │ └── unknown-auth-type.error.ts │ │ │ │ │ ├── external-secrets-manager.ee.ts │ │ │ │ │ ├── external-secrets-providers.ee.ts │ │ │ │ │ ├── external-secrets-settings.controller.ee.ts │ │ │ │ │ ├── external-secrets-settings.service.ee.ts │ │ │ │ │ ├── external-secrets.config.ts │ │ │ │ │ ├── external-secrets.controller.ee.ts │ │ │ │ │ ├── external-secrets.module.ts │ │ │ │ │ ├── external-secrets.service.ee.ts │ │ │ │ │ ├── provider-lifecycle.service.ts │ │ │ │ │ ├── provider-registry.service.ts │ │ │ │ │ ├── providers/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── aws-secrets-manager.test.ts │ │ │ │ │ │ │ ├── azure-key-vault.test.ts │ │ │ │ │ │ │ ├── gcp-secrets-manager.test.ts │ │ │ │ │ │ │ ├── one-password.test.ts │ │ │ │ │ │ │ └── vault.test.ts │ │ │ │ │ │ ├── aws-secrets-manager.ts │ │ │ │ │ │ ├── azure-key-vault/ │ │ │ │ │ │ │ ├── azure-key-vault.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ ├── gcp-secrets-manager/ │ │ │ │ │ │ │ ├── gcp-secrets-manager.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ ├── infisical.ts │ │ │ │ │ │ ├── one-password.ts │ │ │ │ │ │ └── vault.ts │ │ │ │ │ ├── redaction.service.ee.ts │ │ │ │ │ ├── retry-manager.service.ts │ │ │ │ │ ├── secret-provider-access-check.service.ee.ts │ │ │ │ │ ├── secrets-cache.service.ts │ │ │ │ │ ├── secrets-providers-completions.controller.ee.ts │ │ │ │ │ ├── secrets-providers-connections.controller.ee.ts │ │ │ │ │ ├── secrets-providers-connections.service.ee.ts │ │ │ │ │ ├── secrets-providers-project.controller.ee.ts │ │ │ │ │ ├── secrets-providers-types.controller.ee.ts │ │ │ │ │ ├── settings-store.service.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── insights/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── insights-bigint-migration.integration.test.ts │ │ │ │ │ │ ├── insights-by-period-migration.test.ts │ │ │ │ │ │ ├── insights-collection.service.integration.test.ts │ │ │ │ │ │ ├── insights-collection.service.test.ts │ │ │ │ │ │ ├── insights-compaction.service.integration.test.ts │ │ │ │ │ │ ├── insights-pruning.service.integration.test.ts │ │ │ │ │ │ ├── insights-pruning.service.test.ts │ │ │ │ │ │ ├── insights-raw-migration.test.ts │ │ │ │ │ │ ├── insights.controller.test.ts │ │ │ │ │ │ ├── insights.module.test.ts │ │ │ │ │ │ ├── insights.service.integration.test.ts │ │ │ │ │ │ ├── insights.service.test.ts │ │ │ │ │ │ ├── insights.settings.test.ts │ │ │ │ │ │ └── migration-test-setup.ts │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── entities/ │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ ├── db-utils.ts │ │ │ │ │ │ │ │ ├── insights-by-period.integration.test.ts │ │ │ │ │ │ │ │ └── insights-raw.integration.test.ts │ │ │ │ │ │ │ ├── insights-by-period.ts │ │ │ │ │ │ │ ├── insights-metadata.ts │ │ │ │ │ │ │ ├── insights-raw.ts │ │ │ │ │ │ │ └── insights-shared.ts │ │ │ │ │ │ └── repositories/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── insights-by-period-query.helper.test.ts │ │ │ │ │ │ │ └── insights-by-period.repository.integration.test.ts │ │ │ │ │ │ ├── insights-by-period-query.helper.ts │ │ │ │ │ │ ├── insights-by-period.repository.ts │ │ │ │ │ │ ├── insights-metadata.repository.ts │ │ │ │ │ │ └── insights-raw.repository.ts │ │ │ │ │ ├── insights-collection.service.ts │ │ │ │ │ ├── insights-compaction.service.ts │ │ │ │ │ ├── insights-pruning.service.ts │ │ │ │ │ ├── insights.config.ts │ │ │ │ │ ├── insights.constants.ts │ │ │ │ │ ├── insights.controller.ts │ │ │ │ │ ├── insights.module.ts │ │ │ │ │ ├── insights.service.ts │ │ │ │ │ └── insights.settings.ts │ │ │ │ ├── instance-ai/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── agent-tree-builder.test.ts │ │ │ │ │ │ ├── compaction.service.test.ts │ │ │ │ │ │ ├── credit-counting.test.ts │ │ │ │ │ │ ├── instance-ai-memory.service.test.ts │ │ │ │ │ │ ├── instance-ai.adapter.service.security.test.ts │ │ │ │ │ │ ├── instance-ai.adapter.service.test.ts │ │ │ │ │ │ ├── instance-ai.controller.test.ts │ │ │ │ │ │ ├── instance-ai.gateway.service.test.ts │ │ │ │ │ │ ├── internal-messages.test.ts │ │ │ │ │ │ ├── local-fs-provider.test.ts │ │ │ │ │ │ ├── local-gateway.test.ts │ │ │ │ │ │ └── message-parser.test.ts │ │ │ │ │ ├── compaction.service.ts │ │ │ │ │ ├── entities/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── instance-ai-iteration-log.entity.ts │ │ │ │ │ │ ├── instance-ai-message.entity.ts │ │ │ │ │ │ ├── instance-ai-observational-memory.entity.ts │ │ │ │ │ │ ├── instance-ai-resource.entity.ts │ │ │ │ │ │ ├── instance-ai-run-snapshot.entity.ts │ │ │ │ │ │ ├── instance-ai-thread.entity.ts │ │ │ │ │ │ └── instance-ai-workflow-snapshot.entity.ts │ │ │ │ │ ├── event-bus/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── in-process-event-bus.test.ts │ │ │ │ │ │ └── in-process-event-bus.ts │ │ │ │ │ ├── filesystem/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── local-fs-provider.ts │ │ │ │ │ │ ├── local-gateway-registry.ts │ │ │ │ │ │ └── local-gateway.ts │ │ │ │ │ ├── instance-ai-memory.service.ts │ │ │ │ │ ├── instance-ai-settings.service.ts │ │ │ │ │ ├── instance-ai.adapter.service.ts │ │ │ │ │ ├── instance-ai.controller.ts │ │ │ │ │ ├── instance-ai.module.ts │ │ │ │ │ ├── instance-ai.service.ts │ │ │ │ │ ├── internal-messages.ts │ │ │ │ │ ├── message-parser.ts │ │ │ │ │ ├── node-definition-resolver.ts │ │ │ │ │ ├── repositories/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── instance-ai-iteration-log.repository.ts │ │ │ │ │ │ ├── instance-ai-message.repository.ts │ │ │ │ │ │ ├── instance-ai-observational-memory.repository.ts │ │ │ │ │ │ ├── instance-ai-resource.repository.ts │ │ │ │ │ │ ├── instance-ai-run-snapshot.repository.ts │ │ │ │ │ │ ├── instance-ai-thread.repository.ts │ │ │ │ │ │ └── instance-ai-workflow-snapshot.repository.ts │ │ │ │ │ ├── snapshot-pruning.service.ts │ │ │ │ │ ├── storage/ │ │ │ │ │ │ ├── db-iteration-log-storage.ts │ │ │ │ │ │ ├── db-snapshot-storage.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── typeorm-composite-store.ts │ │ │ │ │ │ ├── typeorm-memory-storage.ts │ │ │ │ │ │ └── typeorm-workflows-storage.ts │ │ │ │ │ └── web-research/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── brave-search.test.ts │ │ │ │ │ │ ├── cache.test.ts │ │ │ │ │ │ ├── fetch-and-extract.test.ts │ │ │ │ │ │ ├── searxng-search.test.ts │ │ │ │ │ │ ├── ssrf-guard.test.ts │ │ │ │ │ │ └── summarize-content.test.ts │ │ │ │ │ ├── brave-search.ts │ │ │ │ │ ├── cache.ts │ │ │ │ │ ├── fetch-and-extract.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── searxng-search.ts │ │ │ │ │ ├── ssrf-guard.ts │ │ │ │ │ ├── summarize-content.ts │ │ │ │ │ └── vendor.d.ts │ │ │ │ ├── instance-registry/ │ │ │ │ │ ├── instance-registry.module.ts │ │ │ │ │ ├── instance-registry.types.ts │ │ │ │ │ └── storage/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── memory-storage.test.ts │ │ │ │ │ │ └── redis-instance-storage.test.ts │ │ │ │ │ ├── instance-storage.interface.ts │ │ │ │ │ ├── lua-scripts.ts │ │ │ │ │ ├── memory-storage.ts │ │ │ │ │ └── redis-instance-storage.ts │ │ │ │ ├── ldap.ee/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── helpers.test.ts │ │ │ │ │ │ └── ldap.service.test.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── helpers.ee.ts │ │ │ │ │ ├── ldap.controller.ee.ts │ │ │ │ │ ├── ldap.module.ts │ │ │ │ │ ├── ldap.service.ee.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── log-streaming.ee/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── log-streaming-destination.service.test.ts │ │ │ │ │ │ └── log-streaming.controller.test.ts │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── entities/ │ │ │ │ │ │ │ ├── event-destination.entity.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── repositories/ │ │ │ │ │ │ └── event-destination.repository.ts │ │ │ │ │ ├── destinations/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── message-event-bus-destination-sentry.ee.test.ts │ │ │ │ │ │ │ ├── message-event-bus-destination-syslog.ee.test.ts │ │ │ │ │ │ │ ├── message-event-bus-destination-webhook.ee.test.ts │ │ │ │ │ │ │ └── message-event-bus-destination.ee.test.ts │ │ │ │ │ │ ├── message-event-bus-destination-from-db.ts │ │ │ │ │ │ ├── message-event-bus-destination-sentry.ee.ts │ │ │ │ │ │ ├── message-event-bus-destination-syslog.ee.ts │ │ │ │ │ │ ├── message-event-bus-destination-webhook.ee.ts │ │ │ │ │ │ └── message-event-bus-destination.ee.ts │ │ │ │ │ ├── log-streaming-destination.service.ts │ │ │ │ │ ├── log-streaming.controller.ts │ │ │ │ │ └── log-streaming.module.ts │ │ │ │ ├── mcp/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── create-workflow-from-code.tool.test.ts │ │ │ │ │ │ ├── credentials-auto-assign.test.ts │ │ │ │ │ │ ├── delete-workflow.tool.test.ts │ │ │ │ │ │ ├── execute-workflow.tool.test.ts │ │ │ │ │ │ ├── get-execution.tool.test.ts │ │ │ │ │ │ ├── get-workflow-details.tool.test.ts │ │ │ │ │ │ ├── mcp-oauth-authorization-code.service.test.ts │ │ │ │ │ │ ├── mcp-oauth-consent.service.test.ts │ │ │ │ │ │ ├── mcp-oauth-service.test.ts │ │ │ │ │ │ ├── mcp-oauth-token.service.test.ts │ │ │ │ │ │ ├── mcp-oauth.helpers.test.ts │ │ │ │ │ │ ├── mcp-server-middleware.service.test.ts │ │ │ │ │ │ ├── mcp.auth.consent.controller.api.test.ts │ │ │ │ │ │ ├── mcp.controller.test.ts │ │ │ │ │ │ ├── mcp.oauth-clients.controller.api.test.ts │ │ │ │ │ │ ├── mcp.oauth.controller.api.test.ts │ │ │ │ │ │ ├── mcp.service.test.ts │ │ │ │ │ │ ├── mcp.settings.controller.api.test.ts │ │ │ │ │ │ ├── mcp.settings.controller.test.ts │ │ │ │ │ │ ├── mcp.settings.service.test.ts │ │ │ │ │ │ ├── mcp.utils.test.ts │ │ │ │ │ │ ├── mock.utils.ts │ │ │ │ │ │ ├── prepare-workflow-pin-data.tool.test.ts │ │ │ │ │ │ ├── publish-workflow.tool.test.ts │ │ │ │ │ │ ├── search-folders.tool.test.ts │ │ │ │ │ │ ├── search-projects.tool.test.ts │ │ │ │ │ │ ├── search-workflows.tool.test.ts │ │ │ │ │ │ ├── test-workflow.tool.test.ts │ │ │ │ │ │ ├── unpublish-workflow.tool.test.ts │ │ │ │ │ │ ├── update-workflow.tool.test.ts │ │ │ │ │ │ ├── validate-workflow-code.tool.test.ts │ │ │ │ │ │ ├── webhook-utils.test.ts │ │ │ │ │ │ ├── workflow-builder-tools.service.test.ts │ │ │ │ │ │ └── workflow-validation.utils.test.ts │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── entities/ │ │ │ │ │ │ │ ├── oauth-access-token.entity.ts │ │ │ │ │ │ │ ├── oauth-authorization-code.entity.ts │ │ │ │ │ │ │ ├── oauth-client.entity.ts │ │ │ │ │ │ │ ├── oauth-refresh-token.entity.ts │ │ │ │ │ │ │ └── oauth-user-consent.entity.ts │ │ │ │ │ │ └── repositories/ │ │ │ │ │ │ ├── oauth-access-token.repository.ts │ │ │ │ │ │ ├── oauth-authorization-code.repository.ts │ │ │ │ │ │ ├── oauth-client.repository.ts │ │ │ │ │ │ ├── oauth-refresh-token.repository.ts │ │ │ │ │ │ └── oauth-user-consent.repository.ts │ │ │ │ │ ├── dto/ │ │ │ │ │ │ ├── approve-consent-request.dto.ts │ │ │ │ │ │ ├── update-mcp-settings.dto.ts │ │ │ │ │ │ └── update-workflow-availability.dto.ts │ │ │ │ │ ├── mcp-api-key.service.ts │ │ │ │ │ ├── mcp-oauth-authorization-code.service.ts │ │ │ │ │ ├── mcp-oauth-consent.service.ts │ │ │ │ │ ├── mcp-oauth-service.ts │ │ │ │ │ ├── mcp-oauth-token.service.ts │ │ │ │ │ ├── mcp-oauth.helpers.ts │ │ │ │ │ ├── mcp-server-middleware.service.ts │ │ │ │ │ ├── mcp.auth.consent.controller.ts │ │ │ │ │ ├── mcp.constants.ts │ │ │ │ │ ├── mcp.controller.ts │ │ │ │ │ ├── mcp.errors.ts │ │ │ │ │ ├── mcp.module.ts │ │ │ │ │ ├── mcp.oauth-clients.controller.ts │ │ │ │ │ ├── mcp.oauth.controller.ts │ │ │ │ │ ├── mcp.service.ts │ │ │ │ │ ├── mcp.settings.controller.ts │ │ │ │ │ ├── mcp.settings.service.ts │ │ │ │ │ ├── mcp.typeguards.ts │ │ │ │ │ ├── mcp.types.ts │ │ │ │ │ ├── mcp.utils.ts │ │ │ │ │ ├── oauth-session.service.ts │ │ │ │ │ └── tools/ │ │ │ │ │ ├── execute-workflow.tool.ts │ │ │ │ │ ├── execution-utils.ts │ │ │ │ │ ├── get-execution.tool.ts │ │ │ │ │ ├── get-workflow-details.tool.ts │ │ │ │ │ ├── prepare-workflow-pin-data.tool.ts │ │ │ │ │ ├── publish-workflow.tool.ts │ │ │ │ │ ├── schemas.ts │ │ │ │ │ ├── search-folders.tool.ts │ │ │ │ │ ├── search-projects.tool.ts │ │ │ │ │ ├── search-workflows.tool.ts │ │ │ │ │ ├── test-workflow.tool.ts │ │ │ │ │ ├── unpublish-workflow.tool.ts │ │ │ │ │ ├── webhook-utils.ts │ │ │ │ │ ├── workflow-builder/ │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── create-workflow-from-code.tool.ts │ │ │ │ │ │ ├── credentials-auto-assign.ts │ │ │ │ │ │ ├── delete-workflow.tool.ts │ │ │ │ │ │ ├── get-suggested-workflow-nodes.tool.ts │ │ │ │ │ │ ├── get-workflow-node-types.tool.ts │ │ │ │ │ │ ├── get-workflow-sdk-reference.tool.ts │ │ │ │ │ │ ├── mcp-instructions.ts │ │ │ │ │ │ ├── sdk-reference-content.ts │ │ │ │ │ │ ├── search-workflow-nodes.tool.ts │ │ │ │ │ │ ├── update-workflow.tool.ts │ │ │ │ │ │ ├── validate-workflow-code.tool.ts │ │ │ │ │ │ └── workflow-builder-tools.service.ts │ │ │ │ │ └── workflow-validation.utils.ts │ │ │ │ ├── otel/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── n8n-instrumentation.test.ts │ │ │ │ │ │ ├── otel-test-provider.ts │ │ │ │ │ │ ├── otel-workflow-tracing.integration.test.ts │ │ │ │ │ │ ├── otel.service.test.ts │ │ │ │ │ │ └── span-registry.test.ts │ │ │ │ │ ├── handlers/ │ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ │ ├── workflow-end.handler.ts │ │ │ │ │ │ └── workflow-start.handler.ts │ │ │ │ │ ├── n8n-instrumentation.ts │ │ │ │ │ ├── otel.config.ts │ │ │ │ │ ├── otel.constants.ts │ │ │ │ │ ├── otel.module.ts │ │ │ │ │ ├── otel.service.ts │ │ │ │ │ └── span-registry.ts │ │ │ │ ├── provisioning.ee/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── claims-context.builder.test.ts │ │ │ │ │ │ ├── constants.test.ts │ │ │ │ │ │ ├── provisioning.controller.ee.test.ts │ │ │ │ │ │ ├── provisioning.service.ee.test.ts │ │ │ │ │ │ ├── role-mapping-rule.controller.ee.test.ts │ │ │ │ │ │ ├── role-mapping-rule.service.ee.test.ts │ │ │ │ │ │ ├── role-mapping-rule.validation.test.ts │ │ │ │ │ │ └── role-resolver.service.ee.test.ts │ │ │ │ │ ├── claims-context.builder.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── provisioning.controller.ee.ts │ │ │ │ │ ├── provisioning.module.ts │ │ │ │ │ ├── provisioning.service.ee.ts │ │ │ │ │ ├── role-mapping-rule.controller.ee.ts │ │ │ │ │ ├── role-mapping-rule.service.ee.ts │ │ │ │ │ ├── role-mapping-rule.validation.ts │ │ │ │ │ ├── role-resolver-types.ts │ │ │ │ │ └── role-resolver.service.ee.ts │ │ │ │ ├── quick-connect/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── quick-connect.config.test.ts │ │ │ │ │ │ ├── quick-connect.controller.test.ts │ │ │ │ │ │ ├── quick-connect.module.test.ts │ │ │ │ │ │ └── quick-connect.service.test.ts │ │ │ │ │ ├── handlers/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── firecrawl.handler.test.ts │ │ │ │ │ │ ├── firecrawl.handler.ts │ │ │ │ │ │ └── handler.interface.ts │ │ │ │ │ ├── quick-connect.config.ts │ │ │ │ │ ├── quick-connect.controller.ts │ │ │ │ │ ├── quick-connect.errors.ts │ │ │ │ │ ├── quick-connect.module.ts │ │ │ │ │ └── quick-connect.service.ts │ │ │ │ ├── redaction/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── redaction.module.test.ts │ │ │ │ │ ├── executions/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── execution-redaction.service.test.ts │ │ │ │ │ │ ├── execution-redaction.interfaces.ts │ │ │ │ │ │ ├── execution-redaction.service.ts │ │ │ │ │ │ └── strategies/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── full-item-redaction.strategy.test.ts │ │ │ │ │ │ │ └── node-defined-field-redaction.strategy.test.ts │ │ │ │ │ │ ├── full-item-redaction.strategy.ts │ │ │ │ │ │ └── node-defined-field-redaction.strategy.ts │ │ │ │ │ └── redaction.module.ts │ │ │ │ ├── source-control.ee/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── source-control-export.service.test.ts │ │ │ │ │ │ ├── source-control-git.service.test.ts │ │ │ │ │ │ ├── source-control-helper.ee.test.ts │ │ │ │ │ │ ├── source-control-import.service.ee.test.ts │ │ │ │ │ │ ├── source-control-preferences.service.ee.test.ts │ │ │ │ │ │ ├── source-control-status.service.test.ts │ │ │ │ │ │ ├── source-control.controller.ee.test.ts │ │ │ │ │ │ └── source-control.service.test.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── middleware/ │ │ │ │ │ │ └── source-control-enabled-middleware.ee.ts │ │ │ │ │ ├── source-control-export.service.ee.ts │ │ │ │ │ ├── source-control-git.service.ee.ts │ │ │ │ │ ├── source-control-helper.ee.ts │ │ │ │ │ ├── source-control-import.service.ee.ts │ │ │ │ │ ├── source-control-preferences.service.ee.ts │ │ │ │ │ ├── source-control-resource-helper.ts │ │ │ │ │ ├── source-control-scoped.service.ts │ │ │ │ │ ├── source-control-status.service.ee.ts │ │ │ │ │ ├── source-control.config.ts │ │ │ │ │ ├── source-control.controller.ee.ts │ │ │ │ │ ├── source-control.module.ts │ │ │ │ │ ├── source-control.service.ee.ts │ │ │ │ │ └── types/ │ │ │ │ │ ├── export-result.ts │ │ │ │ │ ├── exportable-credential.ts │ │ │ │ │ ├── exportable-data-table.ts │ │ │ │ │ ├── exportable-folders.ts │ │ │ │ │ ├── exportable-project.ts │ │ │ │ │ ├── exportable-tags.ts │ │ │ │ │ ├── exportable-variable.ts │ │ │ │ │ ├── exportable-workflow.ts │ │ │ │ │ ├── import-result.ts │ │ │ │ │ ├── key-pair-type.ts │ │ │ │ │ ├── key-pair.ts │ │ │ │ │ ├── requests.ts │ │ │ │ │ ├── resource-owner.ts │ │ │ │ │ ├── source-control-commit.ts │ │ │ │ │ ├── source-control-context.ts │ │ │ │ │ ├── source-control-disconnect.ts │ │ │ │ │ ├── source-control-generate-key-pair.ts │ │ │ │ │ ├── source-control-get-status.ts │ │ │ │ │ ├── source-control-preferences.ts │ │ │ │ │ ├── source-control-push.ts │ │ │ │ │ ├── source-control-set-branch.ts │ │ │ │ │ ├── source-control-set-read-only.ts │ │ │ │ │ ├── source-control-stage.ts │ │ │ │ │ └── source-control-workflow-version-id.ts │ │ │ │ ├── sso-oidc/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── oidc.controller.ee.test.ts │ │ │ │ │ │ └── oidc.service.ee.test.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── oidc.controller.ee.ts │ │ │ │ │ ├── oidc.service.ee.ts │ │ │ │ │ ├── sso-oidc.module.ts │ │ │ │ │ └── views/ │ │ │ │ │ └── oidc-test-result.ts │ │ │ │ ├── sso-saml/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── saml-helpers.test.ts │ │ │ │ │ │ ├── saml-signing-test-fixtures.ts │ │ │ │ │ │ ├── saml-validator.test.ts │ │ │ │ │ │ ├── saml.controller.ee.test.ts │ │ │ │ │ │ └── saml.service.ee.test.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── errors/ │ │ │ │ │ │ ├── invalid-saml-metadata-url.error.ts │ │ │ │ │ │ └── invalid-saml-metadata.error.ts │ │ │ │ │ ├── middleware/ │ │ │ │ │ │ └── saml-enabled-middleware.ts │ │ │ │ │ ├── saml-helpers.ts │ │ │ │ │ ├── saml-validator.ts │ │ │ │ │ ├── saml.controller.ee.ts │ │ │ │ │ ├── saml.service.ee.ts │ │ │ │ │ ├── schema/ │ │ │ │ │ │ ├── metadata-exchange.xsd.ts │ │ │ │ │ │ ├── oasis-200401-wss-wssecurity-secext-1.0.xsd.ts │ │ │ │ │ │ ├── oasis-200401-wss-wssecurity-utility-1.0.xsd.ts │ │ │ │ │ │ ├── saml-schema-assertion-2.0.xsd.ts │ │ │ │ │ │ ├── saml-schema-metadata-2.0.xsd.ts │ │ │ │ │ │ ├── saml-schema-protocol-2.0.xsd.ts │ │ │ │ │ │ ├── ws-addr.xsd.ts │ │ │ │ │ │ ├── ws-authorization.xsd.ts │ │ │ │ │ │ ├── ws-federation.xsd.ts │ │ │ │ │ │ ├── ws-securitypolicy-1.2.xsd.ts │ │ │ │ │ │ ├── xenc-schema.xsd.ts │ │ │ │ │ │ ├── xml.xsd.ts │ │ │ │ │ │ └── xmldsig-core-schema.xsd.ts │ │ │ │ │ ├── service-provider.ee.ts │ │ │ │ │ ├── sso-saml.module.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── views/ │ │ │ │ │ └── init-sso-post.ts │ │ │ │ ├── token-exchange/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── token-exchange.controller.test.ts │ │ │ │ │ │ ├── token-exchange.schemas.test.ts │ │ │ │ │ │ └── token-exchange.service.test.ts │ │ │ │ │ ├── controllers/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── embed-auth.controller.test.ts │ │ │ │ │ │ └── embed-auth.controller.ts │ │ │ │ │ ├── services/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── token-exchange.service.test.ts │ │ │ │ │ │ ├── identity-resolution.service.ts │ │ │ │ │ │ ├── jti-store.service.ts │ │ │ │ │ │ ├── token-exchange.service.ts │ │ │ │ │ │ └── trusted-key.service.ts │ │ │ │ │ ├── token-exchange.config.ts │ │ │ │ │ ├── token-exchange.controller.ts │ │ │ │ │ ├── token-exchange.module.ts │ │ │ │ │ ├── token-exchange.schemas.ts │ │ │ │ │ ├── token-exchange.service.ts │ │ │ │ │ └── token-exchange.types.ts │ │ │ │ ├── workflow-builder/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── workflow-builder-session.repository.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── workflow-builder-session.entity.ts │ │ │ │ │ ├── workflow-builder-session.repository.ts │ │ │ │ │ └── workflow-builder.module.ts │ │ │ │ └── workflow-index/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── workflow-index.service.test.ts │ │ │ │ ├── workflow-dependency-query.service.ts │ │ │ │ ├── workflow-dependency.controller.ts │ │ │ │ └── workflow-index.service.ts │ │ │ ├── node-types.ts │ │ │ ├── oauth/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── oauth.service.test.ts │ │ │ │ ├── oauth.service.ts │ │ │ │ ├── types.ts │ │ │ │ └── validate-oauth-url.ts │ │ │ ├── permissions.ee/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── check-access.test.ts │ │ │ │ └── check-access.ts │ │ │ ├── posthog/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── posthog.test.ts │ │ │ │ └── index.ts │ │ │ ├── public-api/ │ │ │ │ ├── index.ts │ │ │ │ ├── swagger-theme.css │ │ │ │ ├── types.ts │ │ │ │ └── v1/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── global.middleware.test.ts │ │ │ │ │ └── public-api-error-response.test.ts │ │ │ │ ├── handlers/ │ │ │ │ │ ├── audit/ │ │ │ │ │ │ ├── audit.handler.ts │ │ │ │ │ │ └── spec/ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ └── audit.yml │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ └── audit.yml │ │ │ │ │ ├── community-packages/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── community-packages.handler.test.ts │ │ │ │ │ │ ├── community-packages.handler.ts │ │ │ │ │ │ ├── community-packages.mapper.ts │ │ │ │ │ │ └── spec/ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ ├── community-packages.packageName.yml │ │ │ │ │ │ │ └── community-packages.yml │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ ├── communityPackage.yml │ │ │ │ │ │ ├── communityPackageList.yml │ │ │ │ │ │ └── installCommunityPackageRequest.yml │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── credentials.service.test.ts │ │ │ │ │ │ ├── credentials.handler.ts │ │ │ │ │ │ ├── credentials.middleware.ts │ │ │ │ │ │ ├── credentials.service.ts │ │ │ │ │ │ └── spec/ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ ├── credentials.id.transfer.yml │ │ │ │ │ │ │ ├── credentials.id.yml │ │ │ │ │ │ │ ├── credentials.schema.id.yml │ │ │ │ │ │ │ └── credentials.yml │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ ├── create-credential-response.yml │ │ │ │ │ │ ├── credential.yml │ │ │ │ │ │ ├── credentialList.yml │ │ │ │ │ │ ├── credentialListItem.yml │ │ │ │ │ │ ├── credentialSharedItem.yml │ │ │ │ │ │ ├── credentialType.yml │ │ │ │ │ │ ├── parameters/ │ │ │ │ │ │ │ └── credentialId.yml │ │ │ │ │ │ └── update-credential-request.yml │ │ │ │ │ ├── data-tables/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── data-tables.handler.test.ts │ │ │ │ │ │ ├── data-tables.handler.ts │ │ │ │ │ │ ├── data-tables.rows.handler.ts │ │ │ │ │ │ └── spec/ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ ├── data-tables.dataTableId.rows.delete.yml │ │ │ │ │ │ │ ├── data-tables.dataTableId.rows.update.yml │ │ │ │ │ │ │ ├── data-tables.dataTableId.rows.upsert.yml │ │ │ │ │ │ │ ├── data-tables.dataTableId.rows.yml │ │ │ │ │ │ │ ├── data-tables.dataTableId.yml │ │ │ │ │ │ │ └── data-tables.yml │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ ├── createDataTableRequest.yml │ │ │ │ │ │ ├── dataTable.yml │ │ │ │ │ │ ├── dataTableList.yml │ │ │ │ │ │ ├── dataTableRow.yml │ │ │ │ │ │ ├── dataTableRowList.yml │ │ │ │ │ │ ├── insertRowsRequest.yml │ │ │ │ │ │ ├── parameters/ │ │ │ │ │ │ │ └── dataTableId.yml │ │ │ │ │ │ ├── updateDataTableRequest.yml │ │ │ │ │ │ ├── updateRowsRequest.yml │ │ │ │ │ │ └── upsertRowRequest.yml │ │ │ │ │ ├── discover/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── discover.handler.test.ts │ │ │ │ │ │ │ └── discover.service.test.ts │ │ │ │ │ │ ├── discover.handler.ts │ │ │ │ │ │ ├── discover.service.ts │ │ │ │ │ │ └── spec/ │ │ │ │ │ │ └── paths/ │ │ │ │ │ │ └── discover.yml │ │ │ │ │ ├── executions/ │ │ │ │ │ │ ├── executions.handler.ts │ │ │ │ │ │ ├── executions.service.ts │ │ │ │ │ │ └── spec/ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ ├── executions.id.retry.yml │ │ │ │ │ │ │ ├── executions.id.stop.yml │ │ │ │ │ │ │ ├── executions.id.tags.yml │ │ │ │ │ │ │ ├── executions.id.yml │ │ │ │ │ │ │ ├── executions.stop.yml │ │ │ │ │ │ │ └── executions.yml │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ ├── execution.yml │ │ │ │ │ │ ├── executionList.yml │ │ │ │ │ │ ├── executionTags.yml │ │ │ │ │ │ └── parameters/ │ │ │ │ │ │ ├── executionId.yml │ │ │ │ │ │ ├── includeData.yml │ │ │ │ │ │ └── redactExecutionData.yml │ │ │ │ │ ├── projects/ │ │ │ │ │ │ ├── projects.handler.ts │ │ │ │ │ │ └── spec/ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ ├── projects.projectId.users.userId.yml │ │ │ │ │ │ │ ├── projects.projectId.users.yml │ │ │ │ │ │ │ ├── projects.projectId.yml │ │ │ │ │ │ │ └── projects.yml │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ ├── parameters/ │ │ │ │ │ │ │ └── projectId.yml │ │ │ │ │ │ ├── project.yml │ │ │ │ │ │ ├── projectList.yml │ │ │ │ │ │ ├── projectMember.yml │ │ │ │ │ │ └── projectMemberList.yml │ │ │ │ │ ├── source-control/ │ │ │ │ │ │ ├── source-control.handler.ts │ │ │ │ │ │ └── spec/ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ └── sourceControl.yml │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ ├── importResult.yml │ │ │ │ │ │ └── pull.yml │ │ │ │ │ ├── tags/ │ │ │ │ │ │ ├── spec/ │ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ │ ├── tags.id.yml │ │ │ │ │ │ │ │ └── tags.yml │ │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ │ ├── parameters/ │ │ │ │ │ │ │ │ └── tagId.yml │ │ │ │ │ │ │ ├── tag.yml │ │ │ │ │ │ │ └── tagList.yml │ │ │ │ │ │ └── tags.handler.ts │ │ │ │ │ ├── users/ │ │ │ │ │ │ ├── spec/ │ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ │ ├── users.id.role.yml │ │ │ │ │ │ │ │ ├── users.id.yml │ │ │ │ │ │ │ │ └── users.yml │ │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ │ ├── parameters/ │ │ │ │ │ │ │ │ ├── includeRole.yml │ │ │ │ │ │ │ │ └── userIdentifier.yml │ │ │ │ │ │ │ ├── role.yml │ │ │ │ │ │ │ ├── user.yml │ │ │ │ │ │ │ └── userList.yml │ │ │ │ │ │ ├── users.handler.ee.ts │ │ │ │ │ │ └── users.service.ee.ts │ │ │ │ │ ├── variables/ │ │ │ │ │ │ ├── spec/ │ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ │ ├── variables.id.yml │ │ │ │ │ │ │ │ └── variables.yml │ │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ │ ├── parameters/ │ │ │ │ │ │ │ │ └── variableId.yml │ │ │ │ │ │ │ ├── variable.create.yml │ │ │ │ │ │ │ ├── variable.yml │ │ │ │ │ │ │ └── variableList.yml │ │ │ │ │ │ └── variables.handler.ts │ │ │ │ │ └── workflows/ │ │ │ │ │ ├── spec/ │ │ │ │ │ │ ├── paths/ │ │ │ │ │ │ │ ├── workflows.id.activate.yml │ │ │ │ │ │ │ ├── workflows.id.archive.yml │ │ │ │ │ │ │ ├── workflows.id.deactivate.yml │ │ │ │ │ │ │ ├── workflows.id.tags.yml │ │ │ │ │ │ │ ├── workflows.id.transfer.yml │ │ │ │ │ │ │ ├── workflows.id.unarchive.yml │ │ │ │ │ │ │ ├── workflows.id.versionId.yml │ │ │ │ │ │ │ ├── workflows.id.yml │ │ │ │ │ │ │ └── workflows.yml │ │ │ │ │ │ └── schemas/ │ │ │ │ │ │ ├── activeVersion.yml │ │ │ │ │ │ ├── node.yml │ │ │ │ │ │ ├── parameters/ │ │ │ │ │ │ │ └── workflowId.yml │ │ │ │ │ │ ├── sharedWorkflow.yml │ │ │ │ │ │ ├── tagIds.yml │ │ │ │ │ │ ├── workflow.yml │ │ │ │ │ │ ├── workflowList.yml │ │ │ │ │ │ ├── workflowSettings.yml │ │ │ │ │ │ ├── workflowTags.yml │ │ │ │ │ │ └── workflowVersion.yml │ │ │ │ │ ├── workflows.handler.ts │ │ │ │ │ └── workflows.service.ts │ │ │ │ ├── openapi.yml │ │ │ │ ├── public-api-error-response.ts │ │ │ │ └── shared/ │ │ │ │ ├── middlewares/ │ │ │ │ │ └── global.middleware.ts │ │ │ │ ├── services/ │ │ │ │ │ └── pagination.service.ts │ │ │ │ └── spec/ │ │ │ │ ├── parameters/ │ │ │ │ │ ├── _index.yml │ │ │ │ │ ├── cursor.yml │ │ │ │ │ └── limit.yml │ │ │ │ ├── responses/ │ │ │ │ │ ├── _index.yml │ │ │ │ │ ├── badRequest.yml │ │ │ │ │ ├── conflict.yml │ │ │ │ │ ├── forbidden.yml │ │ │ │ │ ├── notFound.yml │ │ │ │ │ └── unauthorized.yml │ │ │ │ └── schemas/ │ │ │ │ ├── _index.yml │ │ │ │ ├── error.yml │ │ │ │ └── tagIds.yml │ │ │ ├── push/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── index.test.ts │ │ │ │ │ ├── origin-validator.test.ts │ │ │ │ │ ├── sse.push.test.ts │ │ │ │ │ └── websocket.push.test.ts │ │ │ │ ├── abstract.push.ts │ │ │ │ ├── index.ts │ │ │ │ ├── origin-validator.ts │ │ │ │ ├── push.config.ts │ │ │ │ ├── sse.push.ts │ │ │ │ ├── types.ts │ │ │ │ └── websocket.push.ts │ │ │ ├── requests.ts │ │ │ ├── response-helper.ts │ │ │ ├── scaling/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── job-processor.service.test.ts │ │ │ │ │ ├── multi-main-setup.ee.test.ts │ │ │ │ │ ├── scaling.service.test.ts │ │ │ │ │ ├── worker-server.test.ts │ │ │ │ │ └── worker-status.service.test.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── job-processor.ts │ │ │ │ ├── multi-main-setup.ee.ts │ │ │ │ ├── pubsub/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── publisher.service.test.ts │ │ │ │ │ │ ├── pubsub.registry.test.ts │ │ │ │ │ │ └── subscriber.service.test.ts │ │ │ │ │ ├── publisher.service.ts │ │ │ │ │ ├── pubsub.event-map.ts │ │ │ │ │ ├── pubsub.eventbus.ts │ │ │ │ │ ├── pubsub.registry.ts │ │ │ │ │ ├── pubsub.types.ts │ │ │ │ │ └── subscriber.service.ts │ │ │ │ ├── redis/ │ │ │ │ │ └── redis.types.ts │ │ │ │ ├── scaling.service.ts │ │ │ │ ├── scaling.types.ts │ │ │ │ ├── worker-server.ts │ │ │ │ └── worker-status.service.ee.ts │ │ │ ├── security-audit/ │ │ │ │ ├── constants.ts │ │ │ │ ├── risk-reporters/ │ │ │ │ │ ├── credentials-risk-reporter.ts │ │ │ │ │ ├── database-risk-reporter.ts │ │ │ │ │ ├── filesystem-risk-reporter.ts │ │ │ │ │ ├── instance-risk-reporter.ts │ │ │ │ │ └── nodes-risk-reporter.ts │ │ │ │ ├── security-audit.repository.ts │ │ │ │ ├── security-audit.service.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── server.ts │ │ │ ├── services/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── active-workflows.service.test.ts │ │ │ │ │ ├── ai-usage.service.test.ts │ │ │ │ │ ├── ai-workflow-builder.service.test.ts │ │ │ │ │ ├── ai.service.test.ts │ │ │ │ │ ├── auth.roles.service.test.ts │ │ │ │ │ ├── banner.service.test.ts │ │ │ │ │ ├── cors-service.test.ts │ │ │ │ │ ├── credentials-finder.service.test.ts │ │ │ │ │ ├── credentials-tester.service.test.ts │ │ │ │ │ ├── dynamic-node-parameters.service.test.ts │ │ │ │ │ ├── dynamic-templates.service.test.ts │ │ │ │ │ ├── execution-metadata.service.test.ts │ │ │ │ │ ├── export.service.test.ts │ │ │ │ │ ├── frontend.service.test.ts │ │ │ │ │ ├── hooks.service.test.ts │ │ │ │ │ ├── import.service.test.ts │ │ │ │ │ ├── jwt.service.test.ts │ │ │ │ │ ├── last-active-at.service.test.ts │ │ │ │ │ ├── naming.service.test.ts │ │ │ │ │ ├── ownership.service.integration.test.ts │ │ │ │ │ ├── ownership.service.test.ts │ │ │ │ │ ├── password.utility.integration.test.ts │ │ │ │ │ ├── project.service.ee.test.ts │ │ │ │ │ ├── public-api-key.service.integration.test.ts │ │ │ │ │ ├── redis-client.service.test.ts │ │ │ │ │ ├── role-cache.service.test.ts │ │ │ │ │ ├── role.service.assignments.test.ts │ │ │ │ │ ├── role.service.rolesWithScope.test.ts │ │ │ │ │ ├── security-settings.service.test.ts │ │ │ │ │ ├── static-auth-service.test.ts │ │ │ │ │ ├── url.service.test.ts │ │ │ │ │ ├── user.service.test.ts │ │ │ │ │ └── workflow-statistics.service.integration.test.ts │ │ │ │ ├── access.service.ts │ │ │ │ ├── active-workflows.service.ts │ │ │ │ ├── ai-usage.service.ts │ │ │ │ ├── ai-workflow-builder.service.ts │ │ │ │ ├── ai.service.ts │ │ │ │ ├── annotation-tag.service.ee.ts │ │ │ │ ├── banner.service.ts │ │ │ │ ├── cache/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── cache-mock.service.test.ts │ │ │ │ │ │ └── cache.service.test.ts │ │ │ │ │ ├── cache.constants.ts │ │ │ │ │ ├── cache.service.ts │ │ │ │ │ ├── cache.types.ts │ │ │ │ │ └── redis.cache-manager.ts │ │ │ │ ├── cors-service.ts │ │ │ │ ├── credentials-tester.service.ts │ │ │ │ ├── cta.service.ts │ │ │ │ ├── dynamic-node-parameters.service.ts │ │ │ │ ├── dynamic-templates.service.ts │ │ │ │ ├── execution-metadata.service.ts │ │ │ │ ├── export.service.ts │ │ │ │ ├── folder.service.ts │ │ │ │ ├── frontend.service.ts │ │ │ │ ├── hooks.service.ts │ │ │ │ ├── import.service.ts │ │ │ │ ├── jwt.service.ts │ │ │ │ ├── last-active-at.service.ts │ │ │ │ ├── naming.service.ts │ │ │ │ ├── ownership.service.ts │ │ │ │ ├── password.utility.ts │ │ │ │ ├── project.service.ee.ts │ │ │ │ ├── pruning/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── executions-pruning.service.test.ts │ │ │ │ │ │ └── workflow-history-compaction.service.test.ts │ │ │ │ │ ├── executions-pruning.service.ts │ │ │ │ │ └── workflow-history-compaction.service.ts │ │ │ │ ├── public-api-key.service.ts │ │ │ │ ├── rate-limit.service.ts │ │ │ │ ├── redis-client.service.ts │ │ │ │ ├── role-cache.service.ts │ │ │ │ ├── role.service.ts │ │ │ │ ├── security-settings.service.ts │ │ │ │ ├── ssrf/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── dns-resolver.test.ts │ │ │ │ │ │ ├── hostname-matcher.test.ts │ │ │ │ │ │ ├── in-memory-dns-cache.service.test.ts │ │ │ │ │ │ ├── ip-range-builder.test.ts │ │ │ │ │ │ └── ssrf-protection.service.test.ts │ │ │ │ │ ├── dns-resolver.ts │ │ │ │ │ ├── hostname-matcher.ts │ │ │ │ │ ├── in-memory-dns-cache.service.ts │ │ │ │ │ ├── ip-range-builder.ts │ │ │ │ │ ├── ssrf-blocked-ip.error.ts │ │ │ │ │ └── ssrf-protection.service.ts │ │ │ │ ├── static-auth-service.ts │ │ │ │ ├── tag.service.ts │ │ │ │ ├── url.service.ts │ │ │ │ ├── user.service.ts │ │ │ │ ├── workflow-loader.service.ts │ │ │ │ └── workflow-statistics.service.ts │ │ │ ├── shutdown/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── shutdown.service.test.ts │ │ │ │ └── shutdown.service.ts │ │ │ ├── sso.ee/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── sso-helpers.test.ts │ │ │ │ └── sso-helpers.ts │ │ │ ├── task-runners/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── forward-to-logger.test.ts │ │ │ │ │ ├── node-process-oom-detector.test.ts │ │ │ │ │ ├── sliding-window-signal.test.ts │ │ │ │ │ ├── task-runner-process-restart-loop-detector.test.ts │ │ │ │ │ └── task-runner-process.test.ts │ │ │ │ ├── default-task-runner-disconnect-analyzer.ts │ │ │ │ ├── errors/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── task-runner-disconnected-error.test.ts │ │ │ │ │ ├── missing-auth-token.error.ts │ │ │ │ │ ├── missing-requirements.error.ts │ │ │ │ │ ├── task-request-timeout.error.ts │ │ │ │ │ ├── task-runner-disconnected-error.ts │ │ │ │ │ ├── task-runner-failed-heartbeat.error.ts │ │ │ │ │ ├── task-runner-oom-error.ts │ │ │ │ │ └── task-runner-restart-loop-error.ts │ │ │ │ ├── forward-to-logger.ts │ │ │ │ ├── internal-task-runner-disconnect-analyzer.ts │ │ │ │ ├── node-process-oom-detector.ts │ │ │ │ ├── sliding-window-signal.ts │ │ │ │ ├── task-broker/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── task-broker-server.test.ts │ │ │ │ │ │ ├── task-broker-ws-server.test.ts │ │ │ │ │ │ └── task-broker.service.test.ts │ │ │ │ │ ├── auth/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── task-broker-auth.controller.test.ts │ │ │ │ │ │ │ └── task-broker-auth.service.test.ts │ │ │ │ │ │ ├── task-broker-auth.controller.ts │ │ │ │ │ │ ├── task-broker-auth.schema.ts │ │ │ │ │ │ └── task-broker-auth.service.ts │ │ │ │ │ ├── errors/ │ │ │ │ │ │ ├── task-deferred.error.ts │ │ │ │ │ │ ├── task-reject.error.ts │ │ │ │ │ │ ├── task-runner-accept-timeout.error.ts │ │ │ │ │ │ └── task-runner-execution-timeout.error.ts │ │ │ │ │ ├── task-broker-server.ts │ │ │ │ │ ├── task-broker-types.ts │ │ │ │ │ ├── task-broker-ws-server.ts │ │ │ │ │ └── task-broker.service.ts │ │ │ │ ├── task-managers/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── data-request-response-builder.test.ts │ │ │ │ │ │ ├── data-request-response-stripper.test.ts │ │ │ │ │ │ └── task-manager.test.ts │ │ │ │ │ ├── data-request-response-builder.ts │ │ │ │ │ ├── data-request-response-stripper.ts │ │ │ │ │ ├── local-task-requester.ts │ │ │ │ │ └── task-requester.ts │ │ │ │ ├── task-runner-lifecycle-events.ts │ │ │ │ ├── task-runner-module.ts │ │ │ │ ├── task-runner-process-base.ts │ │ │ │ ├── task-runner-process-js.ts │ │ │ │ ├── task-runner-process-py.ts │ │ │ │ └── task-runner-process-restart-loop-detector.ts │ │ │ ├── telemetry/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── telemetry.test.ts │ │ │ │ └── index.ts │ │ │ ├── tool-generation/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── ai-tools.test.ts │ │ │ │ │ └── hitl-tools.test.ts │ │ │ │ ├── ai-tools.ts │ │ │ │ ├── hitl-tools.ts │ │ │ │ ├── index.ts │ │ │ │ └── utils.ts │ │ │ ├── typed-emitter.ts │ │ │ ├── types/ │ │ │ │ └── commands.types.ts │ │ │ ├── user-management/ │ │ │ │ └── email/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── node-mailer.test.ts │ │ │ │ │ └── user-management-mailer.test.ts │ │ │ │ ├── index.ts │ │ │ │ ├── interfaces.ts │ │ │ │ ├── node-mailer.ts │ │ │ │ ├── templates/ │ │ │ │ │ ├── _common.mjml │ │ │ │ │ ├── _footer.mjml │ │ │ │ │ ├── _logo.mjml │ │ │ │ │ ├── credentials-shared.mjml │ │ │ │ │ ├── password-reset-requested.mjml │ │ │ │ │ ├── project-shared.mjml │ │ │ │ │ ├── user-invited.mjml │ │ │ │ │ ├── workflow-deactivated.mjml │ │ │ │ │ ├── workflow-failure.mjml │ │ │ │ │ └── workflow-shared.mjml │ │ │ │ └── user-management-mailer.ts │ │ │ ├── utils/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── circuit-breaker.test.ts │ │ │ │ │ ├── cors.util.test.ts │ │ │ │ │ ├── get-item-count-by-connection-type.test.ts │ │ │ │ │ ├── object-to-error.test.ts │ │ │ │ │ ├── sliding-window.test.ts │ │ │ │ │ └── validate-database-type.test.ts │ │ │ │ ├── circuit-breaker.ts │ │ │ │ ├── compression.util.ts │ │ │ │ ├── cors.util.ts │ │ │ │ ├── get-item-count-by-connection-type.ts │ │ │ │ ├── handlebars.util.ts │ │ │ │ ├── health-endpoint.util.ts │ │ │ │ ├── object-to-error.ts │ │ │ │ ├── sliding-window.ts │ │ │ │ └── validate-database-type.ts │ │ │ ├── utils.ts │ │ │ ├── utlity.types.ts │ │ │ ├── wait-tracker.ts │ │ │ ├── webhooks/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── live-webhooks.test.ts │ │ │ │ │ ├── test-webhook-registrations.service.test.ts │ │ │ │ │ ├── test-webhooks.test.ts │ │ │ │ │ ├── waiting-forms.test.ts │ │ │ │ │ ├── waiting-webhooks.test.ts │ │ │ │ │ ├── webhook-form-data.test.ts │ │ │ │ │ ├── webhook-helpers.test.ts │ │ │ │ │ ├── webhook-last-node-response-extractor.test.ts │ │ │ │ │ ├── webhook-on-received-response-extractor.test.ts │ │ │ │ │ ├── webhook-request-handler.test.ts │ │ │ │ │ ├── webhook-request-sanitizer.test.ts │ │ │ │ │ ├── webhook-response-headers.test.ts │ │ │ │ │ └── webhook.service.test.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── live-webhooks.ts │ │ │ │ ├── test-webhook-registrations.service.ts │ │ │ │ ├── test-webhooks.ts │ │ │ │ ├── waiting-forms.ts │ │ │ │ ├── waiting-webhooks.ts │ │ │ │ ├── webhook-execution-context.ts │ │ │ │ ├── webhook-form-data.ts │ │ │ │ ├── webhook-helpers.ts │ │ │ │ ├── webhook-last-node-response-extractor.ts │ │ │ │ ├── webhook-on-received-response-extractor.ts │ │ │ │ ├── webhook-request-handler.ts │ │ │ │ ├── webhook-request-sanitizer.ts │ │ │ │ ├── webhook-response-headers.ts │ │ │ │ ├── webhook-response.ts │ │ │ │ ├── webhook-server.ts │ │ │ │ ├── webhook.service.ts │ │ │ │ ├── webhook.types.ts │ │ │ │ └── webhooks.controller.ts │ │ │ ├── workflow-execute-additional-data.ts │ │ │ ├── workflow-helpers.ts │ │ │ ├── workflow-runner.ts │ │ │ ├── workflows/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── workflow-creation.service.test.ts │ │ │ │ │ ├── workflow-execution.service.test.ts │ │ │ │ │ ├── workflow-validation.service.test.ts │ │ │ │ │ ├── workflow.service.test.ts │ │ │ │ │ └── workflows.controller.test.ts │ │ │ │ ├── workflow-creation.service.ts │ │ │ │ ├── workflow-execution.service.ts │ │ │ │ ├── workflow-finder.service.ts │ │ │ │ ├── workflow-history/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── workflow-history-helper.test.ts │ │ │ │ │ │ ├── workflow-history.controller.test.ts │ │ │ │ │ │ └── workflow-history.service.test.ts │ │ │ │ │ ├── workflow-history-helper.ts │ │ │ │ │ ├── workflow-history-manager.ts │ │ │ │ │ ├── workflow-history.controller.ts │ │ │ │ │ └── workflow-history.service.ts │ │ │ │ ├── workflow-sharing.service.ts │ │ │ │ ├── workflow-static-data.service.ts │ │ │ │ ├── workflow-validation.service.ts │ │ │ │ ├── workflow.formatter.ts │ │ │ │ ├── workflow.request.ts │ │ │ │ ├── workflow.service.ee.ts │ │ │ │ ├── workflow.service.ts │ │ │ │ └── workflows.controller.ts │ │ │ └── zod-alias-support.ts │ │ ├── templates/ │ │ │ ├── form-invalid-token.handlebars │ │ │ ├── form-trigger-404.handlebars │ │ │ ├── form-trigger-409.handlebars │ │ │ ├── form-trigger-completion.handlebars │ │ │ ├── form-trigger.handlebars │ │ │ ├── oauth-callback.handlebars │ │ │ ├── oauth-error-callback.handlebars │ │ │ ├── saml-connection-test-failed.handlebars │ │ │ ├── saml-connection-test-success.handlebars │ │ │ └── send-and-wait-no-action-required.handlebars │ │ ├── test/ │ │ │ ├── extend-expect.ts │ │ │ ├── integration/ │ │ │ │ ├── access-control/ │ │ │ │ │ ├── built-in-roles.test.ts │ │ │ │ │ ├── cross-project-access.test.ts │ │ │ │ │ ├── custom-roles-functionality.test.ts │ │ │ │ │ ├── resource-access-matrix.test.ts │ │ │ │ │ ├── shared-setup.ts │ │ │ │ │ └── test-payloads.ts │ │ │ │ ├── activation-errors.service.test.ts │ │ │ │ ├── active-workflow-manager.test.ts │ │ │ │ ├── ai/ │ │ │ │ │ └── ai.api.test.ts │ │ │ │ ├── api-keys.api.test.ts │ │ │ │ ├── auth.api.test.ts │ │ │ │ ├── auth.mw.test.ts │ │ │ │ ├── binary-data.api.test.ts │ │ │ │ ├── collaboration/ │ │ │ │ │ └── collaboration.service.test.ts │ │ │ │ ├── commands/ │ │ │ │ │ ├── credentials.cmd.test.ts │ │ │ │ │ ├── export/ │ │ │ │ │ │ └── workflow.test.ts │ │ │ │ │ ├── import-credentials/ │ │ │ │ │ │ ├── credentials-updated.json │ │ │ │ │ │ ├── credentials.json │ │ │ │ │ │ └── separate/ │ │ │ │ │ │ └── separate-credential.json │ │ │ │ │ ├── import-workflows/ │ │ │ │ │ │ ├── combined/ │ │ │ │ │ │ │ ├── combined.json │ │ │ │ │ │ │ └── single.json │ │ │ │ │ │ ├── combined-with-update/ │ │ │ │ │ │ │ ├── original.json │ │ │ │ │ │ │ └── updated.json │ │ │ │ │ │ ├── separate/ │ │ │ │ │ │ │ ├── 001-activeWorkflow.json │ │ │ │ │ │ │ └── 002-inactiveWorkflow.json │ │ │ │ │ │ └── with-history/ │ │ │ │ │ │ └── workflow-with-metadata.json │ │ │ │ │ ├── import.cmd.test.ts │ │ │ │ │ ├── ldap/ │ │ │ │ │ │ └── reset.test.ts │ │ │ │ │ ├── license.cmd.test.ts │ │ │ │ │ ├── publish/ │ │ │ │ │ │ └── workflow.test.ts │ │ │ │ │ ├── reset.cmd.test.ts │ │ │ │ │ ├── unpublish/ │ │ │ │ │ │ └── workflow.test.ts │ │ │ │ │ ├── update/ │ │ │ │ │ │ └── workflow.test.ts │ │ │ │ │ └── worker.cmd.test.ts │ │ │ │ ├── controllers/ │ │ │ │ │ ├── dynamic-node-parameters.controller.test.ts │ │ │ │ │ ├── invitation/ │ │ │ │ │ │ ├── assertions.ts │ │ │ │ │ │ └── invitation.controller.integration.test.ts │ │ │ │ │ ├── module-settings.controller.test.ts │ │ │ │ │ ├── oauth/ │ │ │ │ │ │ ├── oauth2.api.test.ts │ │ │ │ │ │ └── oauth2.skip-auth.api.test.ts │ │ │ │ │ ├── role.controller-db.test.ts │ │ │ │ │ ├── role.controller.test.ts │ │ │ │ │ ├── security-settings.controller.test.ts │ │ │ │ │ └── third-party-licenses.controller.test.ts │ │ │ │ ├── credentials/ │ │ │ │ │ ├── credentials-overwrites.integration.test.ts │ │ │ │ │ ├── credentials.api.ee.test.ts │ │ │ │ │ ├── credentials.api.test.ts │ │ │ │ │ └── credentials.service.test.ts │ │ │ │ ├── cta.service.test.ts │ │ │ │ ├── database/ │ │ │ │ │ ├── repositories/ │ │ │ │ │ │ ├── credentials.repository.test.ts │ │ │ │ │ │ ├── execution.repository.test.ts │ │ │ │ │ │ ├── project.repository.test.ts │ │ │ │ │ │ ├── role.repository.test.ts │ │ │ │ │ │ ├── scope.repository.test.ts │ │ │ │ │ │ ├── secrets-provider-connection.repository.test.ts │ │ │ │ │ │ ├── settings.repository.test.ts │ │ │ │ │ │ ├── workflow-dependency.repository.test.ts │ │ │ │ │ │ ├── workflow-history.repository.test.ts │ │ │ │ │ │ ├── workflow-publish-history.repository.test.ts │ │ │ │ │ │ └── workflow.repository.test.ts │ │ │ │ │ └── services/ │ │ │ │ │ └── db-lock.service.test.ts │ │ │ │ ├── debug.controller.test.ts │ │ │ │ ├── deduplication/ │ │ │ │ │ └── deduplication-helper.test.ts │ │ │ │ ├── dynamic-credentials/ │ │ │ │ │ ├── credential-resolver.repository.test.ts │ │ │ │ │ ├── dynamic-credential-entry-storage.test.ts │ │ │ │ │ ├── dynamic-credential-entry.repository.test.ts │ │ │ │ │ ├── dynamic-credential-user-entry-storage.test.ts │ │ │ │ │ ├── dynamic-credential-user-entry.repository.test.ts │ │ │ │ │ └── shared/ │ │ │ │ │ └── db-helpers.ts │ │ │ │ ├── dynamic-credentials.ee/ │ │ │ │ │ ├── credential-resolvers.api.test.ts │ │ │ │ │ ├── dynamic-credentials.auth.api.test.ts │ │ │ │ │ ├── dynamic-credentials.no-auth.api.test.ts │ │ │ │ │ ├── workflow-status.auth.api.test.ts │ │ │ │ │ └── workflow-status.no-auth.api.test.ts │ │ │ │ ├── environments/ │ │ │ │ │ ├── source-control-export.service.test.ts │ │ │ │ │ ├── source-control-import.service.test.ts │ │ │ │ │ ├── source-control.api.test.ts │ │ │ │ │ └── source-control.service.test.ts │ │ │ │ ├── evaluation/ │ │ │ │ │ └── test-runs.api.test.ts │ │ │ │ ├── eventbus/ │ │ │ │ │ ├── README-manual-test-syslog.md │ │ │ │ │ ├── support/ │ │ │ │ │ │ ├── certificate.pem │ │ │ │ │ │ ├── incorrect-certificate.pem │ │ │ │ │ │ └── key.pem │ │ │ │ │ ├── syslog-tls.test.ts │ │ │ │ │ └── tls-server.ts │ │ │ │ ├── eventbus.ee.test.ts │ │ │ │ ├── eventbus.test.ts │ │ │ │ ├── execution-context-propagation.test.ts │ │ │ │ ├── execution-redaction.test.ts │ │ │ │ ├── execution.repository.test.ts │ │ │ │ ├── execution.service.integration.test.ts │ │ │ │ ├── executions/ │ │ │ │ │ └── pre-execution-checks/ │ │ │ │ │ └── credentials-permission-checker.test.ts │ │ │ │ ├── executions-pruning.service.test.ts │ │ │ │ ├── executions.controller.test.ts │ │ │ │ ├── external-secrets/ │ │ │ │ │ ├── external-secrets.api.test.ts │ │ │ │ │ ├── external-secrets.events.test.ts │ │ │ │ │ ├── external-secrets.module.test.ts │ │ │ │ │ ├── project-deletion.api.test.ts │ │ │ │ │ ├── secret-providers-connections.api.test.ts │ │ │ │ │ ├── secret-providers-project.api.test.ts │ │ │ │ │ ├── secret-providers-types.api.test.ts │ │ │ │ │ └── secrets-providers-completions.api.test.ts │ │ │ │ ├── folder/ │ │ │ │ │ └── folder.controller.test.ts │ │ │ │ ├── healthcheck.controller.test.ts │ │ │ │ ├── import.service.test.ts │ │ │ │ ├── insights/ │ │ │ │ │ ├── insights-vs-workflow-statistics.integration.test.ts │ │ │ │ │ └── insights.api.test.ts │ │ │ │ ├── ldap/ │ │ │ │ │ └── ldap.api.test.ts │ │ │ │ ├── license-metrics.repository.test.ts │ │ │ │ ├── license.api.test.ts │ │ │ │ ├── log-streaming.controller.test.ts │ │ │ │ ├── me.api.test.ts │ │ │ │ ├── mfa/ │ │ │ │ │ └── mfa.api.test.ts │ │ │ │ ├── middlewares/ │ │ │ │ │ └── body-parser.test.ts │ │ │ │ ├── oidc/ │ │ │ │ │ └── oidc.service.ee.test.ts │ │ │ │ ├── owner.api.test.ts │ │ │ │ ├── password-reset.api.test.ts │ │ │ │ ├── project.api.test.ts │ │ │ │ ├── project.service.integration.test.ts │ │ │ │ ├── prometheus-metrics.test.ts │ │ │ │ ├── public-api/ │ │ │ │ │ ├── community-packages.test.ts │ │ │ │ │ ├── credentials.test.ts │ │ │ │ │ ├── data-tables.test.ts │ │ │ │ │ ├── discover.test.ts │ │ │ │ │ ├── endpoints-with-scopes-enabled.test.ts │ │ │ │ │ ├── executions.test.ts │ │ │ │ │ ├── projects.test.ts │ │ │ │ │ ├── tags.test.ts │ │ │ │ │ ├── users.ee.test.ts │ │ │ │ │ ├── users.test.ts │ │ │ │ │ ├── variables.test.ts │ │ │ │ │ └── workflows.test.ts │ │ │ │ ├── role-mapping-rule.api.test.ts │ │ │ │ ├── role.api.test.ts │ │ │ │ ├── saml/ │ │ │ │ │ ├── saml-helpers.test.ts │ │ │ │ │ ├── saml.api.test.ts │ │ │ │ │ └── sample-metadata.ts │ │ │ │ ├── security-audit/ │ │ │ │ │ ├── credentials-risk-reporter.test.ts │ │ │ │ │ ├── database-risk-reporter.test.ts │ │ │ │ │ ├── filesystem-risk-reporter.test.ts │ │ │ │ │ ├── instance-risk-reporter.test.ts │ │ │ │ │ ├── nodes-risk-reporter.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── services/ │ │ │ │ │ ├── execution-metadata.service.test.ts │ │ │ │ │ ├── project.service.test.ts │ │ │ │ │ ├── role.service.test.ts │ │ │ │ │ └── workflow-static-data.service.test.ts │ │ │ │ ├── shared/ │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── db/ │ │ │ │ │ │ ├── credentials.ts │ │ │ │ │ │ ├── data-tables.ts │ │ │ │ │ │ ├── evaluation.ts │ │ │ │ │ │ ├── executions.ts │ │ │ │ │ │ ├── folders.ts │ │ │ │ │ │ ├── roles.ts │ │ │ │ │ │ ├── tags.ts │ │ │ │ │ │ ├── users.ts │ │ │ │ │ │ ├── variables.ts │ │ │ │ │ │ ├── workflow-history.ts │ │ │ │ │ │ ├── workflow-publish-history.ts │ │ │ │ │ │ └── workflow-statistics.ts │ │ │ │ │ ├── execution-context-helpers.ts │ │ │ │ │ ├── ldap.ts │ │ │ │ │ ├── license.ts │ │ │ │ │ ├── retry-until.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ ├── community-nodes.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── node-types-data.ts │ │ │ │ │ │ ├── task-broker-test-server.ts │ │ │ │ │ │ ├── test-command.ts │ │ │ │ │ │ ├── test-server.ts │ │ │ │ │ │ └── users.ts │ │ │ │ │ ├── workflow-fixtures.ts │ │ │ │ │ └── workflow.ts │ │ │ │ ├── tags.api.test.ts │ │ │ │ ├── task-runners/ │ │ │ │ │ ├── js-task-runner-execution.integration.test.ts │ │ │ │ │ ├── task-broker-server.test.ts │ │ │ │ │ ├── task-runner-module.external.test.ts │ │ │ │ │ ├── task-runner-module.internal.test.ts │ │ │ │ │ └── task-runner-process.test.ts │ │ │ │ ├── test-run.repository.ee.test.ts │ │ │ │ ├── user.repository.test.ts │ │ │ │ ├── users.api.test.ts │ │ │ │ ├── variables.test.ts │ │ │ │ ├── webhooks.api.test.ts │ │ │ │ ├── webhooks.test.ts │ │ │ │ ├── workflow-helpers.test.ts │ │ │ │ ├── workflow-history-compaction.service.test.ts │ │ │ │ ├── workflow-history-manager.test.ts │ │ │ │ ├── workflow-history.api.test.ts │ │ │ │ ├── workflow-tag-mapping.repository.integration.test.ts │ │ │ │ └── workflows/ │ │ │ │ ├── workflow-dependency.controller.test.ts │ │ │ │ ├── workflow-index.test.ts │ │ │ │ ├── workflow-sharing.service.test.ts │ │ │ │ ├── workflow.service.ee.test.ts │ │ │ │ ├── workflow.service.test.ts │ │ │ │ ├── workflows.controller-with-active-workflow-manager.ee.test.ts │ │ │ │ ├── workflows.controller.ee.test.ts │ │ │ │ └── workflows.controller.test.ts │ │ │ ├── migration/ │ │ │ │ ├── 1760020838000-unique-role-names.test.ts │ │ │ │ ├── 1763048000000-activate-execute-workflow-trigger-workflows.test.ts │ │ │ │ ├── 1766064542000-add-workflow-publish-scope-to-project-roles.test.ts │ │ │ │ ├── 1767018516000-change-workflow-statistics-fk-to-no-action.test.ts │ │ │ │ ├── 1769784356000-expand-subject-id-column-length.test.ts │ │ │ │ ├── 1769900001000-add-workflow-unpublish-scope-to-custom-roles.test.ts │ │ │ │ ├── 1770000000000-create-chat-hub-tools-table.test.ts │ │ │ │ ├── 1770220686000-create-workflow-builder-session-table.test.ts │ │ │ │ ├── 1771417407753-add-scaling-fields-to-test-run.test.ts │ │ │ │ ├── 1771500000000-migrate-external-secrets-to-entity-storage.test.ts │ │ │ │ ├── 1771500000001-add-unshare-scope-to-custom-roles.test.ts │ │ │ │ ├── 1772619247761-add-role-column-to-project-secrets-provider-access.test.ts │ │ │ │ ├── 1773000000000-create-credential-dependency-table.test.ts │ │ │ │ ├── 1774280963551-add-restore-fields-to-workflow-builder-session.test.ts │ │ │ │ └── migration-test-helpers.test.ts │ │ │ ├── setup-mocks.ts │ │ │ ├── setup-test-folder.ts │ │ │ ├── setup-testcontainers.js │ │ │ ├── setup.ts │ │ │ ├── shared/ │ │ │ │ ├── external-secrets/ │ │ │ │ │ └── utils.ts │ │ │ │ ├── helpers.ts │ │ │ │ ├── mock-objects.ts │ │ │ │ ├── mocking.ts │ │ │ │ └── test-data.ts │ │ │ ├── teardown-testcontainers.js │ │ │ ├── teardown.ts │ │ │ └── unit/ │ │ │ └── utils/ │ │ │ └── health-endpoint.util.test.ts │ │ ├── tsconfig.build.json │ │ └── tsconfig.json │ ├── core/ │ │ ├── README.md │ │ ├── bin/ │ │ │ ├── common.js │ │ │ ├── copy-static-files │ │ │ ├── generate-metadata │ │ │ ├── generate-node-defs │ │ │ └── generate-translations │ │ ├── eslint.config.mjs │ │ ├── jest.config.js │ │ ├── nodes-testing/ │ │ │ ├── credential-types.ts │ │ │ ├── credentials-helper.ts │ │ │ ├── load-nodes-and-credentials.ts │ │ │ ├── node-test-harness.ts │ │ │ ├── node-types.ts │ │ │ └── test-data-node.ts │ │ ├── package.json │ │ ├── src/ │ │ │ ├── __tests__/ │ │ │ │ ├── credentials.test.ts │ │ │ │ ├── html-sandbox.test.ts │ │ │ │ ├── http-proxy.test.ts │ │ │ │ └── storage.config.test.ts │ │ │ ├── binary-data/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── binary-data-service.test.ts │ │ │ │ │ ├── binary-data.config.test.ts │ │ │ │ │ ├── file-system.manager.test.ts │ │ │ │ │ ├── object-store.manager.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── binary-data.config.ts │ │ │ │ ├── binary-data.service.ts │ │ │ │ ├── file-system.manager.ts │ │ │ │ ├── index.ts │ │ │ │ ├── object-store/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── object-store.service.test.ts │ │ │ │ │ ├── object-store.config.ts │ │ │ │ │ ├── object-store.service.ee.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── object-store.manager.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── constants.ts │ │ │ ├── credentials.ts │ │ │ ├── data-deduplication-service.ts │ │ │ ├── encryption/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── cipher.test.ts │ │ │ │ ├── cipher.ts │ │ │ │ └── index.ts │ │ │ ├── errors/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── error-reporter.test.ts │ │ │ │ ├── abstract/ │ │ │ │ │ ├── binary-data.error.ts │ │ │ │ │ └── filesystem.error.ts │ │ │ │ ├── binary-data-file-not-found.error.ts │ │ │ │ ├── disallowed-filepath.error.ts │ │ │ │ ├── error-reporter.ts │ │ │ │ ├── file-not-found.error.ts │ │ │ │ ├── file-too-large.error.ts │ │ │ │ ├── index.ts │ │ │ │ ├── invalid-execution-metadata.error.ts │ │ │ │ ├── invalid-manager.error.ts │ │ │ │ ├── invalid-source-type.error.ts │ │ │ │ ├── missing-source-id.error.ts │ │ │ │ ├── unrecognized-credential-type.error.ts │ │ │ │ ├── unrecognized-node-type.error.ts │ │ │ │ └── workflow-has-issues.error.ts │ │ │ ├── execution-engine/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── active-workflows.test.ts │ │ │ │ │ ├── execution-context-hook-service.test.ts │ │ │ │ │ ├── execution-context.service.test.ts │ │ │ │ │ ├── execution-context.test.ts │ │ │ │ │ ├── execution-lifecycle-hooks.test.ts │ │ │ │ │ ├── external-secrets-proxy.test.ts │ │ │ │ │ ├── mock-node-types.ts │ │ │ │ │ ├── requests-response.test.ts │ │ │ │ │ ├── routing-node.test.ts │ │ │ │ │ ├── scheduled-task-manager.test.ts │ │ │ │ │ ├── ssh-clients-manager.test.ts │ │ │ │ │ ├── triggers-and-pollers.test.ts │ │ │ │ │ ├── workflow-execute-process-process-run-execution-data.test.ts │ │ │ │ │ ├── workflow-execute-run-node.test.ts │ │ │ │ │ └── workflow-execute.test.ts │ │ │ │ ├── active-workflows.ts │ │ │ │ ├── execution-context-hook-registry.service.ts │ │ │ │ ├── execution-context.service.ts │ │ │ │ ├── execution-context.ts │ │ │ │ ├── execution-lifecycle-hooks.ts │ │ │ │ ├── external-secrets-proxy.ts │ │ │ │ ├── index.ts │ │ │ │ ├── interfaces.ts │ │ │ │ ├── node-execution-context/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── execute-context.test.ts │ │ │ │ │ │ ├── execute-single-context.test.ts │ │ │ │ │ │ ├── hook-context.test.ts │ │ │ │ │ │ ├── load-options-context.test.ts │ │ │ │ │ │ ├── local-load-options-context.test.ts │ │ │ │ │ │ ├── node-execution-context.test.ts │ │ │ │ │ │ ├── poll-context.test.ts │ │ │ │ │ │ ├── shared-tests.ts │ │ │ │ │ │ ├── supply-data-context.test.ts │ │ │ │ │ │ ├── trigger-context.test.ts │ │ │ │ │ │ └── webhook-context.test.ts │ │ │ │ │ ├── base-execute-context.ts │ │ │ │ │ ├── credentials-test-context.ts │ │ │ │ │ ├── execute-context.ts │ │ │ │ │ ├── execute-single-context.ts │ │ │ │ │ ├── hook-context.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── load-options-context.ts │ │ │ │ │ ├── local-load-options-context.ts │ │ │ │ │ ├── node-execution-context.ts │ │ │ │ │ ├── poll-context.ts │ │ │ │ │ ├── supply-data-context.ts │ │ │ │ │ ├── trigger-context.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── binary-helper-functions.test.ts │ │ │ │ │ │ │ ├── cleanup-parameter-data.test.ts │ │ │ │ │ │ │ ├── construct-execution-metadata.test.ts │ │ │ │ │ │ │ ├── copy-input-items.test.ts │ │ │ │ │ │ │ ├── create-node-as-tool.test.ts │ │ │ │ │ │ │ ├── credential-check-helper-functions.test.ts │ │ │ │ │ │ │ ├── deduplication-helper-functions.test.ts │ │ │ │ │ │ │ ├── ensure-type.test.ts │ │ │ │ │ │ │ ├── execution-metadata.test.ts │ │ │ │ │ │ │ ├── file-system-helper-functions.test.ts │ │ │ │ │ │ │ ├── get-additional-keys.test.ts │ │ │ │ │ │ │ ├── get-input-connection-data.test.ts │ │ │ │ │ │ │ ├── get-secrets-proxy.test.ts │ │ │ │ │ │ │ ├── normalize-items.test.ts │ │ │ │ │ │ │ ├── parse-incoming-message.test.ts │ │ │ │ │ │ │ ├── request-helper-functions.test.ts │ │ │ │ │ │ │ ├── resolve-source-overwrite.test.ts │ │ │ │ │ │ │ ├── return-json-array.test.ts │ │ │ │ │ │ │ ├── scheduling-helper-functions.test.ts │ │ │ │ │ │ │ ├── ssh-tunnel-helper-functions.test.ts │ │ │ │ │ │ │ ├── ssrf-integration.test.ts │ │ │ │ │ │ │ ├── validate-value-against-schema.test.ts │ │ │ │ │ │ │ └── webhook-helper-functions.test.ts │ │ │ │ │ │ ├── ai-tool-types.ts │ │ │ │ │ │ ├── binary-helper-functions.ts │ │ │ │ │ │ ├── cleanup-parameter-data.ts │ │ │ │ │ │ ├── construct-execution-metadata.ts │ │ │ │ │ │ ├── copy-input-items.ts │ │ │ │ │ │ ├── create-node-as-tool.ts │ │ │ │ │ │ ├── credential-check-helper-functions.ts │ │ │ │ │ │ ├── data-table-helper-functions.ts │ │ │ │ │ │ ├── deduplication-helper-functions.ts │ │ │ │ │ │ ├── ensure-type.ts │ │ │ │ │ │ ├── execution-metadata.ts │ │ │ │ │ │ ├── extract-value.ts │ │ │ │ │ │ ├── file-system-helper-functions.ts │ │ │ │ │ │ ├── get-additional-keys.ts │ │ │ │ │ │ ├── get-input-connection-data.ts │ │ │ │ │ │ ├── get-secrets-proxy.ts │ │ │ │ │ │ ├── normalize-items.ts │ │ │ │ │ │ ├── parse-incoming-message.ts │ │ │ │ │ │ ├── request-helper-functions.ts │ │ │ │ │ │ ├── request-helpers/ │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ └── axios-utils.test.ts │ │ │ │ │ │ │ ├── axios-config.ts │ │ │ │ │ │ │ ├── axios-utils.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── resolve-source-overwrite.ts │ │ │ │ │ │ ├── return-json-array.ts │ │ │ │ │ │ ├── scheduling-helper-functions.ts │ │ │ │ │ │ ├── ssh-tunnel-helper-functions.ts │ │ │ │ │ │ ├── validate-value-against-schema.ts │ │ │ │ │ │ └── webhook-helper-functions.ts │ │ │ │ │ ├── webhook-context.ts │ │ │ │ │ └── workflow-node-context.ts │ │ │ │ ├── partial-execution-utils/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── clean-run-data.test.ts │ │ │ │ │ │ ├── directed-graph.test.ts │ │ │ │ │ │ ├── filter-disabled-nodes.test.ts │ │ │ │ │ │ ├── find-start-nodes.test.ts │ │ │ │ │ │ ├── find-subgraph.test.ts │ │ │ │ │ │ ├── find-trigger-for-partial-execution.test.ts │ │ │ │ │ │ ├── get-source-data-groups.test.ts │ │ │ │ │ │ ├── handle-cycles.test.ts │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ ├── recreate-node-execution-stack.test.ts │ │ │ │ │ │ ├── rewire-graph.test.ts │ │ │ │ │ │ ├── run-data-utils.test.ts │ │ │ │ │ │ ├── to-iconnections.test.ts │ │ │ │ │ │ └── to-itask-data.test.ts │ │ │ │ │ ├── clean-run-data.ts │ │ │ │ │ ├── directed-graph.ts │ │ │ │ │ ├── filter-disabled-nodes.ts │ │ │ │ │ ├── find-start-nodes.ts │ │ │ │ │ ├── find-subgraph.ts │ │ │ │ │ ├── find-trigger-for-partial-execution.ts │ │ │ │ │ ├── get-incoming-data.ts │ │ │ │ │ ├── get-source-data-groups.ts │ │ │ │ │ ├── handle-cycles.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── recreate-node-execution-stack.ts │ │ │ │ │ ├── rewire-graph.ts │ │ │ │ │ └── run-data-utils.ts │ │ │ │ ├── requests-response.ts │ │ │ │ ├── routing-node.ts │ │ │ │ ├── scheduled-task-manager.ts │ │ │ │ ├── ssh-clients-manager.ts │ │ │ │ ├── triggers-and-pollers.ts │ │ │ │ └── workflow-execute.ts │ │ │ ├── html-sandbox.ts │ │ │ ├── http-proxy.ts │ │ │ ├── http.d.ts │ │ │ ├── index.ts │ │ │ ├── instance-settings/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── instance-settings.test.ts │ │ │ │ ├── index.ts │ │ │ │ ├── instance-settings.ts │ │ │ │ └── worker-missing-encryption-key.error.ts │ │ │ ├── interfaces.ts │ │ │ ├── node-execute-functions.ts │ │ │ ├── nodes-loader/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── directory-loader.test.ts │ │ │ │ │ └── load-class-in-isolation.test.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── custom-directory-loader.ts │ │ │ │ ├── directory-loader.ts │ │ │ │ ├── index.ts │ │ │ │ ├── lazy-package-directory-loader.ts │ │ │ │ ├── load-class-in-isolation.ts │ │ │ │ ├── package-directory-loader.ts │ │ │ │ └── types.ts │ │ │ ├── observability/ │ │ │ │ ├── index.ts │ │ │ │ └── tracing/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── noop-tracing.test.ts │ │ │ │ │ ├── sentry-tracing.test.ts │ │ │ │ │ └── tracing.test.ts │ │ │ │ ├── noop-tracing.ts │ │ │ │ ├── sentry-tracing.ts │ │ │ │ └── tracing.ts │ │ │ ├── storage-path-conflict.error.ts │ │ │ ├── storage.config.ts │ │ │ └── utils/ │ │ │ ├── __tests__/ │ │ │ │ ├── assertions.test.ts │ │ │ │ ├── convert-binary-data.test.ts │ │ │ │ ├── deep-merge.test.ts │ │ │ │ └── serialized-buffer.test.ts │ │ │ ├── assertions.ts │ │ │ ├── convert-binary-data.ts │ │ │ ├── deep-merge.ts │ │ │ ├── index.ts │ │ │ ├── serialized-buffer.ts │ │ │ └── signature-helpers.ts │ │ ├── test/ │ │ │ ├── helpers/ │ │ │ │ ├── constants.ts │ │ │ │ └── index.ts │ │ │ ├── setup-mocks.ts │ │ │ ├── setup.ts │ │ │ ├── shims.d.ts │ │ │ └── utils.ts │ │ ├── tsconfig.build.json │ │ └── tsconfig.json │ ├── extensions/ │ │ └── insights/ │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── eslint.config.mjs │ │ ├── n8n.manifest.json │ │ ├── package.json │ │ ├── src/ │ │ │ ├── backend/ │ │ │ │ └── index.ts │ │ │ ├── frontend/ │ │ │ │ ├── InsightsDashboard.vue │ │ │ │ └── index.ts │ │ │ └── shims.d.ts │ │ ├── stylelint.config.mjs │ │ ├── tsconfig.backend.json │ │ ├── tsconfig.frontend.json │ │ ├── tsconfig.json │ │ ├── tsconfig.vite.json │ │ ├── tsdown.config.ts │ │ └── vite.config.ts │ ├── frontend/ │ │ ├── @n8n/ │ │ │ ├── chat/ │ │ │ │ ├── .gitignore │ │ │ │ ├── .np-config.json │ │ │ │ ├── .vscode/ │ │ │ │ │ └── extensions.json │ │ │ │ ├── README.md │ │ │ │ ├── eslint.config.mjs │ │ │ │ ├── index.html │ │ │ │ ├── package.json │ │ │ │ ├── resources/ │ │ │ │ │ ├── workflow-manual.json │ │ │ │ │ ├── workflow-streaming.json │ │ │ │ │ └── workflow.json │ │ │ │ ├── src/ │ │ │ │ │ ├── App.vue │ │ │ │ │ ├── __stories__/ │ │ │ │ │ │ └── App.stories.ts │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── Chat.spec.ts │ │ │ │ │ │ ├── Input.spec.ts │ │ │ │ │ │ ├── MessageActions.spec.ts │ │ │ │ │ │ ├── MessageWithButtons.spec.ts │ │ │ │ │ │ ├── api/ │ │ │ │ │ │ │ ├── generic.spec.ts │ │ │ │ │ │ │ └── message.spec.ts │ │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ │ ├── plugins/ │ │ │ │ │ │ │ ├── chat.spec.ts │ │ │ │ │ │ │ └── chat.test.ts │ │ │ │ │ │ ├── setup.ts │ │ │ │ │ │ └── utils/ │ │ │ │ │ │ ├── create.ts │ │ │ │ │ │ ├── fetch.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── selectors.ts │ │ │ │ │ │ ├── streaming.spec.ts │ │ │ │ │ │ ├── streamingHandlers.spec.ts │ │ │ │ │ │ └── utils.spec.ts │ │ │ │ │ ├── api/ │ │ │ │ │ │ ├── generic.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── message.ts │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── Button.vue │ │ │ │ │ │ ├── Chat.vue │ │ │ │ │ │ ├── ChatFile.vue │ │ │ │ │ │ ├── ChatWindow.vue │ │ │ │ │ │ ├── GetStarted.vue │ │ │ │ │ │ ├── GetStartedFooter.vue │ │ │ │ │ │ ├── Input.vue │ │ │ │ │ │ ├── Layout.vue │ │ │ │ │ │ ├── MarkdownRenderer.vue │ │ │ │ │ │ ├── Message.vue │ │ │ │ │ │ ├── MessageActions.vue │ │ │ │ │ │ ├── MessageTyping.vue │ │ │ │ │ │ ├── MessageWithButtons.vue │ │ │ │ │ │ ├── MessagesList.vue │ │ │ │ │ │ ├── PoweredBy.vue │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── useChat.ts │ │ │ │ │ │ ├── useI18n.ts │ │ │ │ │ │ └── useOptions.ts │ │ │ │ │ ├── constants/ │ │ │ │ │ │ ├── defaults.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── localStorage.ts │ │ │ │ │ │ ├── messageComponents.ts │ │ │ │ │ │ └── symbols.ts │ │ │ │ │ ├── css/ │ │ │ │ │ │ ├── _tokens.scss │ │ │ │ │ │ ├── index.scss │ │ │ │ │ │ └── markdown.scss │ │ │ │ │ ├── env.d.ts │ │ │ │ │ ├── event-buses/ │ │ │ │ │ │ ├── chatEventBus.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── main.scss │ │ │ │ │ ├── plugins/ │ │ │ │ │ │ ├── chat.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── types/ │ │ │ │ │ │ ├── chat.ts │ │ │ │ │ │ ├── icons.d.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── messages.ts │ │ │ │ │ │ ├── options.ts │ │ │ │ │ │ ├── streaming.ts │ │ │ │ │ │ └── webhook.ts │ │ │ │ │ └── utils/ │ │ │ │ │ ├── event-bus.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── mount.ts │ │ │ │ │ ├── streaming.ts │ │ │ │ │ ├── streamingHandlers.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── stylelint.config.mjs │ │ │ │ ├── tsconfig.json │ │ │ │ └── vite.config.mts │ │ │ ├── composables/ │ │ │ │ ├── .gitignore │ │ │ │ ├── README.md │ │ │ │ ├── biome.jsonc │ │ │ │ ├── eslint.config.mjs │ │ │ │ ├── package.json │ │ │ │ ├── src/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── setup.ts │ │ │ │ │ ├── shims.d.ts │ │ │ │ │ ├── useDeviceSupport.test.ts │ │ │ │ │ ├── useDeviceSupport.ts │ │ │ │ │ ├── useDocumentTitle.test.ts │ │ │ │ │ ├── useDocumentTitle.ts │ │ │ │ │ ├── useShortKeyPress.test.ts │ │ │ │ │ ├── useShortKeyPress.ts │ │ │ │ │ ├── useThrottleWithReactiveDelay.test.ts │ │ │ │ │ └── useThrottleWithReactiveDelay.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── tsdown.config.ts │ │ │ │ └── vite.config.ts │ │ │ ├── design-system/ │ │ │ │ ├── .browserslistrc │ │ │ │ ├── .gitignore │ │ │ │ ├── .npmignore │ │ │ │ ├── README.md │ │ │ │ ├── assets/ │ │ │ │ │ └── .nojekyll │ │ │ │ ├── biome.jsonc │ │ │ │ ├── chromatic.config.json │ │ │ │ ├── eslint.config.mjs │ │ │ │ ├── package.json │ │ │ │ ├── postcss.config.cjs │ │ │ │ ├── specification/ │ │ │ │ │ └── COMPONENT_API_SPEC_TEMPLATE.md │ │ │ │ ├── src/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── render.ts │ │ │ │ │ │ └── setup.ts │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── AskAssistantAvatar/ │ │ │ │ │ │ │ ├── AskAssistantAvatar.test.ts │ │ │ │ │ │ │ ├── AssistantAvatar.stories.ts │ │ │ │ │ │ │ ├── AssistantAvatar.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── AskAssistantAvatar.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── AskAssistantButton/ │ │ │ │ │ │ │ ├── AskAssistantButton.stories.ts │ │ │ │ │ │ │ ├── AskAssistantButton.test.ts │ │ │ │ │ │ │ ├── AskAssistantButton.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── AskAssistantButton.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── AskAssistantChat/ │ │ │ │ │ │ │ ├── AskAssistantChat.stories.ts │ │ │ │ │ │ │ ├── AskAssistantChat.test.ts │ │ │ │ │ │ │ ├── AskAssistantChat.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── AskAssistantChat.test.ts.snap │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── messages/ │ │ │ │ │ │ │ ├── BaseMessage.vue │ │ │ │ │ │ │ ├── BlockMessage.vue │ │ │ │ │ │ │ ├── CodeDiffMessage.vue │ │ │ │ │ │ │ ├── ErrorMessage.vue │ │ │ │ │ │ │ ├── EventMessage.vue │ │ │ │ │ │ │ ├── MessageRating.test.ts │ │ │ │ │ │ │ ├── MessageRating.vue │ │ │ │ │ │ │ ├── MessageWrapper.vue │ │ │ │ │ │ │ ├── RestoreVersionConfirm.test.ts │ │ │ │ │ │ │ ├── RestoreVersionConfirm.vue │ │ │ │ │ │ │ ├── TextMessage.test.ts │ │ │ │ │ │ │ ├── TextMessage.vue │ │ │ │ │ │ │ ├── ThinkingMessage.test.ts │ │ │ │ │ │ │ ├── ThinkingMessage.vue │ │ │ │ │ │ │ ├── ToolMessage.test.ts │ │ │ │ │ │ │ ├── ToolMessage.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── MessageRating.test.ts.snap │ │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ │ └── useMarkdown.ts │ │ │ │ │ │ ├── AskAssistantIcon/ │ │ │ │ │ │ │ ├── AssistantIcon.stories.ts │ │ │ │ │ │ │ ├── AssistantIcon.test.ts │ │ │ │ │ │ │ ├── AssistantIcon.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── AssistantIcon.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── AskAssistantText/ │ │ │ │ │ │ │ ├── AssistantText.stories.ts │ │ │ │ │ │ │ ├── AssistantText.test.ts │ │ │ │ │ │ │ ├── AssistantText.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── AssistantText.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── BetaTag/ │ │ │ │ │ │ │ ├── BetaTag.stories.ts │ │ │ │ │ │ │ ├── BetaTag.test.ts │ │ │ │ │ │ │ ├── BetaTag.vue │ │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ │ └── BetaTag.test.ts.snap │ │ │ │ │ │ ├── BlinkingCursor/ │ │ │ │ │ │ │ ├── BlinkingCursor.stories.ts │ │ │ │ │ │ │ ├── BlinkingCursor.test.ts │ │ │ │ │ │ │ ├── BlinkingCursor.vue │ │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ │ └── BlinkingCursor.test.ts.snap │ │ │ │ │ │ ├── CanvasCollaborationPill/ │ │ │ │ │ │ │ ├── CanvasCollaborationPill.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── CanvasPill/ │ │ │ │ │ │ │ ├── CanvasPill.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── CanvasThinkingPill/ │ │ │ │ │ │ │ ├── CanvasThinkingPill.test.ts │ │ │ │ │ │ │ ├── CanvasThinkingPill.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── CanvasThinkingPill.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── CodeDiff/ │ │ │ │ │ │ │ ├── CodeDiff.stories.ts │ │ │ │ │ │ │ ├── CodeDiff.test.ts │ │ │ │ │ │ │ ├── CodeDiff.vue │ │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ │ └── CodeDiff.test.ts.snap │ │ │ │ │ │ ├── ConditionalRouterLink/ │ │ │ │ │ │ │ ├── ConditionalRouterLink.test.ts │ │ │ │ │ │ │ ├── CondtionalRouterLink.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── ConditionalRouterLink.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── DateRangePicker/ │ │ │ │ │ │ │ ├── DateRangePicker.stories.ts │ │ │ │ │ │ │ ├── DateRangePicker.test.ts │ │ │ │ │ │ │ ├── DateRangePicker.vue │ │ │ │ │ │ │ ├── DateRangePickerField.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── IconTextButton/ │ │ │ │ │ │ │ ├── IconTextButton.test.ts │ │ │ │ │ │ │ ├── IconTextButton.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── IconTextButton.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── InlineAskAssistantButton/ │ │ │ │ │ │ │ ├── InlineAskAssistantButton.stories.ts │ │ │ │ │ │ │ ├── InlineAskAssistantButton.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nActionBox/ │ │ │ │ │ │ │ ├── ActionBox.stories.ts │ │ │ │ │ │ │ ├── ActionBox.test.ts │ │ │ │ │ │ │ ├── ActionBox.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── ActionBox.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nActionDropdown/ │ │ │ │ │ │ │ ├── ActionDropdown.test.ts │ │ │ │ │ │ │ ├── ActionDropdown.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── ActionDropdown.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nActionToggle/ │ │ │ │ │ │ │ ├── ActionToggle.stories.ts │ │ │ │ │ │ │ ├── ActionToggle.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nAlert/ │ │ │ │ │ │ │ ├── Alert.stories.ts │ │ │ │ │ │ │ ├── Alert.test.ts │ │ │ │ │ │ │ ├── Alert.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nAlertDialog/ │ │ │ │ │ │ │ ├── AlertDialog.stories.ts │ │ │ │ │ │ │ ├── AlertDialog.test.ts │ │ │ │ │ │ │ ├── AlertDialog.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nAvatar/ │ │ │ │ │ │ │ ├── Avatar.stories.ts │ │ │ │ │ │ │ ├── Avatar.test.ts │ │ │ │ │ │ │ ├── Avatar.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nBadge/ │ │ │ │ │ │ │ ├── Badge.stories.ts │ │ │ │ │ │ │ ├── Badge.test.ts │ │ │ │ │ │ │ ├── Badge.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Badge.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nBlockUi/ │ │ │ │ │ │ │ ├── BlockUi.stories.ts │ │ │ │ │ │ │ ├── BlockUi.test.ts │ │ │ │ │ │ │ ├── BlockUi.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nBreadcrumbs/ │ │ │ │ │ │ │ ├── AsyncLoadingCacheDemo.vue │ │ │ │ │ │ │ ├── BreadCrumbs.test.ts │ │ │ │ │ │ │ ├── Breadcrumbs.stories.ts │ │ │ │ │ │ │ ├── Breadcrumbs.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── BreadCrumbs.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nButton/ │ │ │ │ │ │ │ ├── Button.legacy.scss │ │ │ │ │ │ │ ├── Button.stories.ts │ │ │ │ │ │ │ ├── Button.test.ts │ │ │ │ │ │ │ ├── Button.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Button.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nCallout/ │ │ │ │ │ │ │ ├── Callout.stories.ts │ │ │ │ │ │ │ ├── Callout.test.ts │ │ │ │ │ │ │ ├── Callout.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Callout.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nCard/ │ │ │ │ │ │ │ ├── Card.stories.ts │ │ │ │ │ │ │ ├── Card.test.ts │ │ │ │ │ │ │ ├── Card.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Card.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nCircleLoader/ │ │ │ │ │ │ │ ├── CircleLoader.test.ts │ │ │ │ │ │ │ ├── CircleLoader.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── CircleLoader.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nCollapsiblePanel/ │ │ │ │ │ │ │ ├── CollapsiblePanel.stories.ts │ │ │ │ │ │ │ ├── CollapsiblePanel.test.ts │ │ │ │ │ │ │ ├── CollapsiblePanel.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nColorPicker/ │ │ │ │ │ │ │ ├── ColorPicker.stories.ts │ │ │ │ │ │ │ ├── ColorPicker.test.ts │ │ │ │ │ │ │ ├── ColorPicker.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── ColorPicker.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nCommandBar/ │ │ │ │ │ │ │ ├── CommandBar.stories.ts │ │ │ │ │ │ │ ├── CommandBar.test.ts │ │ │ │ │ │ │ ├── CommandBar.vue │ │ │ │ │ │ │ ├── CommandBarItem.vue │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ ├── N8nDataTableServer/ │ │ │ │ │ │ │ ├── N8nDataTableServer.test.ts │ │ │ │ │ │ │ ├── N8nDataTableServer.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nDatatable/ │ │ │ │ │ │ │ ├── Datatable.stories.ts │ │ │ │ │ │ │ ├── Datatable.test.ts │ │ │ │ │ │ │ ├── Datatable.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Datatable.test.ts.snap │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ └── data.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nDialog/ │ │ │ │ │ │ │ ├── Dialog.stories.ts │ │ │ │ │ │ │ ├── Dialog.test.ts │ │ │ │ │ │ │ ├── Dialog.vue │ │ │ │ │ │ │ ├── DialogClose.vue │ │ │ │ │ │ │ ├── DialogContent.vue │ │ │ │ │ │ │ ├── DialogDescription.vue │ │ │ │ │ │ │ ├── DialogFooter.vue │ │ │ │ │ │ │ ├── DialogHeader.vue │ │ │ │ │ │ │ ├── DialogOverlay.vue │ │ │ │ │ │ │ ├── DialogTitle.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nDropdown/ │ │ │ │ │ │ │ ├── Dropdown.stories.ts │ │ │ │ │ │ │ ├── Dropdown.test.ts │ │ │ │ │ │ │ ├── Dropdown.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nExternalLink/ │ │ │ │ │ │ │ ├── ExternalLink.stories.ts │ │ │ │ │ │ │ ├── ExternalLink.test.ts │ │ │ │ │ │ │ ├── ExternalLink.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── ExternalLink.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nFloatingWindow/ │ │ │ │ │ │ │ ├── FloatingWindow.stories.ts │ │ │ │ │ │ │ ├── FloatingWindow.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nFormBox/ │ │ │ │ │ │ │ ├── FormBox.test.ts │ │ │ │ │ │ │ ├── FormBox.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── FormBox.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nFormInput/ │ │ │ │ │ │ │ ├── FormInput.stories.ts │ │ │ │ │ │ │ ├── FormInput.test.ts │ │ │ │ │ │ │ ├── FormInput.vue │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── validators.ts │ │ │ │ │ │ ├── N8nFormInputs/ │ │ │ │ │ │ │ ├── FormInputs.test.ts │ │ │ │ │ │ │ ├── FormInputs.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nHeaderAction/ │ │ │ │ │ │ │ ├── HeaderAction.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nHeading/ │ │ │ │ │ │ │ ├── Heading.stories.ts │ │ │ │ │ │ │ ├── Heading.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nIcon/ │ │ │ │ │ │ │ ├── Icon.stories.ts │ │ │ │ │ │ │ ├── Icon.test.ts │ │ │ │ │ │ │ ├── Icon.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Icon.test.ts.snap │ │ │ │ │ │ │ ├── icons.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nIconButton/ │ │ │ │ │ │ │ ├── IconButton.vue │ │ │ │ │ │ │ ├── index.d.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nIconPicker/ │ │ │ │ │ │ │ ├── IconPicker.stories.ts │ │ │ │ │ │ │ ├── IconPicker.test.ts │ │ │ │ │ │ │ ├── IconPicker.vue │ │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ ├── N8nInfoAccordion/ │ │ │ │ │ │ │ ├── InfoAccordion.stories.ts │ │ │ │ │ │ │ ├── InfoAccordion.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nInfoTip/ │ │ │ │ │ │ │ ├── InfoTip.stories.ts │ │ │ │ │ │ │ ├── InfoTip.test.ts │ │ │ │ │ │ │ ├── InfoTip.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── InfoTip.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nInlineTextEdit/ │ │ │ │ │ │ │ ├── InlineTextEdit.stories.ts │ │ │ │ │ │ │ ├── InlineTextEdit.test.ts │ │ │ │ │ │ │ ├── InlineTextEdit.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── InlineTextEdit.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nInput/ │ │ │ │ │ │ │ ├── Input.stories.css │ │ │ │ │ │ │ ├── Input.stories.ts │ │ │ │ │ │ │ ├── Input.test.ts │ │ │ │ │ │ │ ├── Input.types.ts │ │ │ │ │ │ │ ├── Input.vue │ │ │ │ │ │ │ ├── component-input.md │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nInputLabel/ │ │ │ │ │ │ │ ├── InputLabel.stories.ts │ │ │ │ │ │ │ ├── InputLabel.test.ts │ │ │ │ │ │ │ ├── InputLabel.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── InputLabel.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nInputNumber/ │ │ │ │ │ │ │ ├── InputNumber.stories.ts │ │ │ │ │ │ │ ├── InputNumber.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nKeyboardShortcut/ │ │ │ │ │ │ │ ├── KeyboardShortcut.stories.ts │ │ │ │ │ │ │ ├── N8nKeyboardShortcut.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nLink/ │ │ │ │ │ │ │ ├── Link.stories.ts │ │ │ │ │ │ │ ├── Link.test.ts │ │ │ │ │ │ │ ├── Link.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Link.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nLoading/ │ │ │ │ │ │ │ ├── Loading.stories.ts │ │ │ │ │ │ │ ├── Loading.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nLogo/ │ │ │ │ │ │ │ ├── Logo.stories.ts │ │ │ │ │ │ │ ├── Logo.test.ts │ │ │ │ │ │ │ ├── Logo.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Logo.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nMarkdown/ │ │ │ │ │ │ │ ├── Markdown.stories.ts │ │ │ │ │ │ │ ├── Markdown.test.ts │ │ │ │ │ │ │ ├── Markdown.vue │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── youtube.test.ts │ │ │ │ │ │ │ └── youtube.ts │ │ │ │ │ │ ├── N8nMenuItem/ │ │ │ │ │ │ │ ├── MenuItem.test.ts │ │ │ │ │ │ │ ├── MenuItem.vue │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── routerUtil.ts │ │ │ │ │ │ ├── N8nNavigationDropdown/ │ │ │ │ │ │ │ ├── NavigationDropdown.test.ts │ │ │ │ │ │ │ ├── NavigationDropdown.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nNodeCreatorNode/ │ │ │ │ │ │ │ ├── NodeCreatorNode.stories.ts │ │ │ │ │ │ │ ├── NodeCreatorNode.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nNodeIcon/ │ │ │ │ │ │ │ ├── IconContent.vue │ │ │ │ │ │ │ ├── NodeIcon.stories.ts │ │ │ │ │ │ │ ├── NodeIcon.test.ts │ │ │ │ │ │ │ ├── NodeIcon.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nNotice/ │ │ │ │ │ │ │ ├── Notice.stories.ts │ │ │ │ │ │ │ ├── Notice.test.ts │ │ │ │ │ │ │ ├── Notice.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Notice.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nOption/ │ │ │ │ │ │ │ ├── Option.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nPagination/ │ │ │ │ │ │ │ ├── Pagination.stories.ts │ │ │ │ │ │ │ ├── Pagination.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nPopover/ │ │ │ │ │ │ │ ├── Popover.stories.ts │ │ │ │ │ │ │ ├── Popover.test.ts │ │ │ │ │ │ │ ├── Popover.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Popover.test.ts.snap │ │ │ │ │ │ │ ├── component-popover.md │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nPromptInput/ │ │ │ │ │ │ │ ├── N8nPromptInput.stories.ts │ │ │ │ │ │ │ ├── N8nPromptInput.test.ts │ │ │ │ │ │ │ ├── N8nPromptInput.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── N8nPromptInput.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nPromptInputSuggestions/ │ │ │ │ │ │ │ ├── N8nPromptInputSuggestions.test.ts │ │ │ │ │ │ │ ├── N8nPromptInputSuggestions.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── N8nPromptInputSuggestions.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nPulse/ │ │ │ │ │ │ │ ├── Pulse.stories.ts │ │ │ │ │ │ │ ├── Pulse.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nRadioButtons/ │ │ │ │ │ │ │ ├── RadioButton.vue │ │ │ │ │ │ │ ├── RadioButtons.stories.ts │ │ │ │ │ │ │ ├── RadioButtons.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nRecycleScroller/ │ │ │ │ │ │ │ ├── RecycleScroller.stories.ts │ │ │ │ │ │ │ ├── RecycleScroller.test.ts │ │ │ │ │ │ │ ├── RecycleScroller.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── RecycleScroller.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nResizeWrapper/ │ │ │ │ │ │ │ ├── ResizeWrapper.stories.ts │ │ │ │ │ │ │ ├── ResizeWrapper.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nResizeableSticky/ │ │ │ │ │ │ │ ├── ResizeableSticky.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nRoute/ │ │ │ │ │ │ │ ├── Route.test.ts │ │ │ │ │ │ │ ├── Route.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Route.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nScrollArea/ │ │ │ │ │ │ │ ├── N8nScrollArea.stories.ts │ │ │ │ │ │ │ ├── N8nScrollArea.test.ts │ │ │ │ │ │ │ ├── N8nScrollArea.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── N8nScrollArea.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nSectionHeader/ │ │ │ │ │ │ │ ├── SectionHeader.test.ts │ │ │ │ │ │ │ ├── SectionHeader.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nSelect/ │ │ │ │ │ │ │ ├── Select.stories.ts │ │ │ │ │ │ │ ├── Select.test.ts │ │ │ │ │ │ │ ├── Select.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Select.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nSelectableList/ │ │ │ │ │ │ │ ├── SelectableList.stories.ts │ │ │ │ │ │ │ ├── SelectableList.test.ts │ │ │ │ │ │ │ ├── SelectableList.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── SelectableList.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nSendStopButton/ │ │ │ │ │ │ │ ├── N8nSendStopButton.stories.ts │ │ │ │ │ │ │ ├── N8nSendStopButton.test.ts │ │ │ │ │ │ │ ├── N8nSendStopButton.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nSpinner/ │ │ │ │ │ │ │ ├── Spinner.vue │ │ │ │ │ │ │ ├── index.d.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nSticky/ │ │ │ │ │ │ │ ├── Sticky.stories.ts │ │ │ │ │ │ │ ├── Sticky.test.ts │ │ │ │ │ │ │ ├── Sticky.vue │ │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ ├── N8nSuggestedActions/ │ │ │ │ │ │ │ ├── SuggestedActions.stories.ts │ │ │ │ │ │ │ ├── SuggestedActions.test.ts │ │ │ │ │ │ │ ├── SuggestedActions.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nTabs/ │ │ │ │ │ │ │ ├── Tabs.stories.ts │ │ │ │ │ │ │ ├── Tabs.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nTag/ │ │ │ │ │ │ │ ├── Tag.stories.ts │ │ │ │ │ │ │ ├── Tag.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nTags/ │ │ │ │ │ │ │ ├── Tags.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nText/ │ │ │ │ │ │ │ ├── Text.stories.ts │ │ │ │ │ │ │ ├── Text.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nTooltip/ │ │ │ │ │ │ │ ├── Tooltip.stories.ts │ │ │ │ │ │ │ ├── Tooltip.test.ts │ │ │ │ │ │ │ ├── Tooltip.types.ts │ │ │ │ │ │ │ ├── Tooltip.vue │ │ │ │ │ │ │ ├── component-tooltip.md │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nTree/ │ │ │ │ │ │ │ ├── Tree.stories.ts │ │ │ │ │ │ │ ├── Tree.test.ts │ │ │ │ │ │ │ ├── Tree.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── Tree.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nUserInfo/ │ │ │ │ │ │ │ ├── UserInfo.stories.ts │ │ │ │ │ │ │ ├── UserInfo.test.ts │ │ │ │ │ │ │ ├── UserInfo.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nUserSelect/ │ │ │ │ │ │ │ ├── UserSelect.stories.ts │ │ │ │ │ │ │ ├── UserSelect.test.ts │ │ │ │ │ │ │ ├── UserSelect.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nUserStack/ │ │ │ │ │ │ │ ├── UserStack.stories.ts │ │ │ │ │ │ │ ├── UserStack.test.ts │ │ │ │ │ │ │ ├── UserStack.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── N8nUsersList/ │ │ │ │ │ │ │ ├── UsersList.stories.ts │ │ │ │ │ │ │ ├── UsersList.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── PreviewTag/ │ │ │ │ │ │ │ ├── PreviewTag.stories.ts │ │ │ │ │ │ │ ├── PreviewTag.test.ts │ │ │ │ │ │ │ ├── PreviewTag.vue │ │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ │ └── PreviewTag.test.ts.snap │ │ │ │ │ │ ├── ResizeObserver/ │ │ │ │ │ │ │ ├── ResizeObserver.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── TableBase/ │ │ │ │ │ │ │ ├── TableBase.vue │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── TableHeaderControlsButton/ │ │ │ │ │ │ │ ├── TableHeaderControlsButton.stories.ts │ │ │ │ │ │ │ ├── TableHeaderControlsButton.test.ts │ │ │ │ │ │ │ ├── TableHeaderControlsButton.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── TableHeaderControlsButton.test.ts.snap │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── useCharacterLimit.ts │ │ │ │ │ │ ├── useI18n.ts │ │ │ │ │ │ ├── useParentScroll.ts │ │ │ │ │ │ └── useTooltipAppendTo.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── css/ │ │ │ │ │ │ ├── _primitives.scss │ │ │ │ │ │ ├── _tokens.scss │ │ │ │ │ │ ├── base.scss │ │ │ │ │ │ ├── checkbox.scss │ │ │ │ │ │ ├── col.scss │ │ │ │ │ │ ├── color-picker.scss │ │ │ │ │ │ ├── common/ │ │ │ │ │ │ │ ├── popup.scss │ │ │ │ │ │ │ ├── transition.scss │ │ │ │ │ │ │ └── var.scss │ │ │ │ │ │ ├── date-picker/ │ │ │ │ │ │ │ ├── date-picker.scss │ │ │ │ │ │ │ ├── date-range-picker.scss │ │ │ │ │ │ │ ├── date-table.scss │ │ │ │ │ │ │ ├── month-table.scss │ │ │ │ │ │ │ ├── picker-panel.scss │ │ │ │ │ │ │ ├── picker.scss │ │ │ │ │ │ │ ├── time-picker.scss │ │ │ │ │ │ │ ├── time-range-picker.scss │ │ │ │ │ │ │ ├── time-spinner.scss │ │ │ │ │ │ │ └── year-table.scss │ │ │ │ │ │ ├── date-picker.scss │ │ │ │ │ │ ├── dialog.scss │ │ │ │ │ │ ├── display.scss │ │ │ │ │ │ ├── drawer.scss │ │ │ │ │ │ ├── dropdown.scss │ │ │ │ │ │ ├── fonts.scss │ │ │ │ │ │ ├── icon.scss │ │ │ │ │ │ ├── index.scss │ │ │ │ │ │ ├── input-number.scss │ │ │ │ │ │ ├── input.scss │ │ │ │ │ │ ├── loading.scss │ │ │ │ │ │ ├── menu.scss │ │ │ │ │ │ ├── message-box.scss │ │ │ │ │ │ ├── mixins/ │ │ │ │ │ │ │ ├── _breakpoints.scss │ │ │ │ │ │ │ ├── _button.scss │ │ │ │ │ │ │ ├── _focus.scss │ │ │ │ │ │ │ ├── animations.scss │ │ │ │ │ │ │ ├── config.scss │ │ │ │ │ │ │ ├── function.scss │ │ │ │ │ │ │ ├── index.scss │ │ │ │ │ │ │ ├── mixins.scss │ │ │ │ │ │ │ └── utils.scss │ │ │ │ │ │ ├── notification.scss │ │ │ │ │ │ ├── option-group.scss │ │ │ │ │ │ ├── option.scss │ │ │ │ │ │ ├── pagination.scss │ │ │ │ │ │ ├── popover.scss │ │ │ │ │ │ ├── popper.scss │ │ │ │ │ │ ├── radio.scss │ │ │ │ │ │ ├── reset.scss │ │ │ │ │ │ ├── row.scss │ │ │ │ │ │ ├── scrollbar.scss │ │ │ │ │ │ ├── select-dropdown.scss │ │ │ │ │ │ ├── select.scss │ │ │ │ │ │ ├── skeleton.scss │ │ │ │ │ │ ├── switch.scss │ │ │ │ │ │ ├── table-column.scss │ │ │ │ │ │ ├── table.scss │ │ │ │ │ │ ├── tabs.scss │ │ │ │ │ │ ├── tag.scss │ │ │ │ │ │ ├── tailwind/ │ │ │ │ │ │ │ └── index.css │ │ │ │ │ │ ├── tooltip.scss │ │ │ │ │ │ ├── tree.scss │ │ │ │ │ │ └── utilities/ │ │ │ │ │ │ ├── _float.scss │ │ │ │ │ │ ├── _link.scss │ │ │ │ │ │ ├── _list.scss │ │ │ │ │ │ ├── _spacing.scss │ │ │ │ │ │ ├── _typography.scss │ │ │ │ │ │ └── index.scss │ │ │ │ │ ├── directives/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── n8n-html.test.ts │ │ │ │ │ │ ├── n8n-html.ts │ │ │ │ │ │ ├── n8n-smart-decimal.test.ts │ │ │ │ │ │ ├── n8n-smart-decimal.ts │ │ │ │ │ │ ├── n8n-truncate.test.ts │ │ │ │ │ │ └── n8n-truncate.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── locale/ │ │ │ │ │ │ ├── format.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── lang/ │ │ │ │ │ │ └── en.ts │ │ │ │ │ ├── mixins/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── locale.ts │ │ │ │ │ ├── plugin.ts │ │ │ │ │ ├── shims-modules.d.ts │ │ │ │ │ ├── shims-vue.d.ts │ │ │ │ │ ├── styleguide/ │ │ │ │ │ │ ├── ColorCircles.test.ts │ │ │ │ │ │ ├── ColorCircles.utils.ts │ │ │ │ │ │ ├── ColorCircles.vue │ │ │ │ │ │ ├── Sizes.test.ts │ │ │ │ │ │ ├── Sizes.vue │ │ │ │ │ │ ├── VariableTable.vue │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ ├── ColorCircles.test.ts.snap │ │ │ │ │ │ │ └── Sizes.test.ts.snap │ │ │ │ │ │ ├── border.stories.ts │ │ │ │ │ │ ├── colors.stories.ts │ │ │ │ │ │ ├── colorsprimitives.stories.ts │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ └── SpacingPreview.vue │ │ │ │ │ │ ├── fonts.stories.ts │ │ │ │ │ │ ├── spacing.stories.ts │ │ │ │ │ │ └── utilities/ │ │ │ │ │ │ ├── float.stories.ts │ │ │ │ │ │ ├── lists.stories.ts │ │ │ │ │ │ └── spacing.stories.ts │ │ │ │ │ ├── types/ │ │ │ │ │ │ ├── action-dropdown.ts │ │ │ │ │ │ ├── assistant.ts │ │ │ │ │ │ ├── badge.ts │ │ │ │ │ │ ├── binary.ts │ │ │ │ │ │ ├── button.ts │ │ │ │ │ │ ├── callout.ts │ │ │ │ │ │ ├── datatable.ts │ │ │ │ │ │ ├── form.ts │ │ │ │ │ │ ├── i18n.ts │ │ │ │ │ │ ├── icon.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── input.ts │ │ │ │ │ │ ├── keyboardshortcut.ts │ │ │ │ │ │ ├── menu.ts │ │ │ │ │ │ ├── node-creator-node.ts │ │ │ │ │ │ ├── recycle-scroller.ts │ │ │ │ │ │ ├── resize.ts │ │ │ │ │ │ ├── select.ts │ │ │ │ │ │ ├── tabs.ts │ │ │ │ │ │ ├── text.ts │ │ │ │ │ │ └── user.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ ├── cn.ts │ │ │ │ │ │ ├── colorUtils.test.ts │ │ │ │ │ │ ├── colorUtils.ts │ │ │ │ │ │ ├── form-event-bus.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── labelUtil.test.ts │ │ │ │ │ │ ├── labelUtil.ts │ │ │ │ │ │ ├── markdown.test.ts │ │ │ │ │ │ ├── markdown.ts │ │ │ │ │ │ ├── testUtils.ts │ │ │ │ │ │ ├── typeguards.ts │ │ │ │ │ │ ├── uid.ts │ │ │ │ │ │ ├── valueByPath.test.ts │ │ │ │ │ │ └── valueByPath.ts │ │ │ │ │ ├── utils.scss │ │ │ │ │ └── v2/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── Badge/ │ │ │ │ │ │ │ └── component-badge.md │ │ │ │ │ │ ├── Checkbox/ │ │ │ │ │ │ │ ├── Checkbox.stories.ts │ │ │ │ │ │ │ ├── Checkbox.test.ts │ │ │ │ │ │ │ ├── Checkbox.types.ts │ │ │ │ │ │ │ ├── Checkbox.vue │ │ │ │ │ │ │ └── component-checkbox.md │ │ │ │ │ │ ├── DropdownMenu/ │ │ │ │ │ │ │ ├── DropdownMenu.stories.ts │ │ │ │ │ │ │ ├── DropdownMenu.test.ts │ │ │ │ │ │ │ ├── DropdownMenu.typeguards.ts │ │ │ │ │ │ │ ├── DropdownMenu.types.ts │ │ │ │ │ │ │ ├── DropdownMenu.vue │ │ │ │ │ │ │ ├── DropdownMenuItem.test.ts │ │ │ │ │ │ │ ├── DropdownMenuItem.vue │ │ │ │ │ │ │ ├── DropdownMenuSearch.test.ts │ │ │ │ │ │ │ ├── DropdownMenuSearch.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ ├── DropdownMenu.test.ts.snap │ │ │ │ │ │ │ │ ├── DropdownMenuItem.test.ts.snap │ │ │ │ │ │ │ │ └── DropdownMenuSearch.test.ts.snap │ │ │ │ │ │ │ ├── component-dropdown-menu.md │ │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ │ ├── useMenuKeyboardNavigation.test.ts │ │ │ │ │ │ │ │ └── useMenuKeyboardNavigation.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── InputNumber/ │ │ │ │ │ │ │ ├── InputNumber.stories.ts │ │ │ │ │ │ │ ├── InputNumber.test.ts │ │ │ │ │ │ │ ├── InputNumber.types.ts │ │ │ │ │ │ │ ├── InputNumber.vue │ │ │ │ │ │ │ ├── component-input-number.md │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── Loading/ │ │ │ │ │ │ │ ├── Loading.stories.ts │ │ │ │ │ │ │ ├── Loading.test.ts │ │ │ │ │ │ │ ├── Loading.types.ts │ │ │ │ │ │ │ ├── Loading.vue │ │ │ │ │ │ │ ├── component-loading.md │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── Pagination/ │ │ │ │ │ │ │ ├── Pagination.stories.ts │ │ │ │ │ │ │ ├── Pagination.test.ts │ │ │ │ │ │ │ ├── Pagination.types.ts │ │ │ │ │ │ │ ├── Pagination.vue │ │ │ │ │ │ │ └── component-pagination.md │ │ │ │ │ │ ├── Select/ │ │ │ │ │ │ │ ├── Select.stories.ts │ │ │ │ │ │ │ ├── Select.test.ts │ │ │ │ │ │ │ ├── Select.types.ts │ │ │ │ │ │ │ ├── Select.vue │ │ │ │ │ │ │ ├── SelectItem.vue │ │ │ │ │ │ │ └── component-select.md │ │ │ │ │ │ ├── Switch/ │ │ │ │ │ │ │ ├── Switch.stories.ts │ │ │ │ │ │ │ ├── Switch.test.ts │ │ │ │ │ │ │ ├── Switch.types.ts │ │ │ │ │ │ │ ├── Switch.vue │ │ │ │ │ │ │ ├── component-switch.md │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── Tree/ │ │ │ │ │ │ └── component-tree.md │ │ │ │ │ └── utils/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── stylelint.config.mjs │ │ │ │ ├── tailwind.config.js │ │ │ │ ├── tsconfig.json │ │ │ │ └── vite.config.mts │ │ │ ├── i18n/ │ │ │ │ ├── .gitignore │ │ │ │ ├── README.md │ │ │ │ ├── biome.jsonc │ │ │ │ ├── docs/ │ │ │ │ │ ├── ADDENDUM.md │ │ │ │ │ └── README.md │ │ │ │ ├── eslint.config.mjs │ │ │ │ ├── package.json │ │ │ │ ├── src/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── setup.ts │ │ │ │ │ ├── index.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── locales/ │ │ │ │ │ │ └── en.json │ │ │ │ │ ├── shims.d.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── tsdown.config.ts │ │ │ │ └── vite.config.ts │ │ │ ├── rest-api-client/ │ │ │ │ ├── .gitignore │ │ │ │ ├── README.md │ │ │ │ ├── biome.jsonc │ │ │ │ ├── eslint.config.mjs │ │ │ │ ├── package.json │ │ │ │ ├── src/ │ │ │ │ │ ├── api/ │ │ │ │ │ │ ├── ai-usage.ts │ │ │ │ │ │ ├── api-keys.ts │ │ │ │ │ │ ├── breaking-changes.ts │ │ │ │ │ │ ├── cloudPlans.ts │ │ │ │ │ │ ├── communityNodes.ts │ │ │ │ │ │ ├── consent.ts │ │ │ │ │ │ ├── credentialResolvers.ts │ │ │ │ │ │ ├── ctas.ts │ │ │ │ │ │ ├── dynamic-banners.ts │ │ │ │ │ │ ├── eventbus.ee.ts │ │ │ │ │ │ ├── events.ts │ │ │ │ │ │ ├── execution.ts │ │ │ │ │ │ ├── externalSecrets.ee.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── ldap.ts │ │ │ │ │ │ ├── mfa.ts │ │ │ │ │ │ ├── module-settings.ts │ │ │ │ │ │ ├── nodeTypes.ts │ │ │ │ │ │ ├── npsSurvey.ts │ │ │ │ │ │ ├── orchestration.ts │ │ │ │ │ │ ├── provisioning.ts │ │ │ │ │ │ ├── roles.ts │ │ │ │ │ │ ├── secretsProvider.ee.ts │ │ │ │ │ │ ├── security-settings.ts │ │ │ │ │ │ ├── settings.ts │ │ │ │ │ │ ├── sso.ts │ │ │ │ │ │ ├── tags.ts │ │ │ │ │ │ ├── templates.ts │ │ │ │ │ │ ├── third-party-licenses.ts │ │ │ │ │ │ ├── ui.ts │ │ │ │ │ │ ├── usage.ts │ │ │ │ │ │ ├── users.ts │ │ │ │ │ │ ├── versions.ts │ │ │ │ │ │ ├── webhooks.ts │ │ │ │ │ │ ├── workflowHistory.ts │ │ │ │ │ │ └── workflows.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── shims.d.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── tsdown.config.ts │ │ │ │ └── vite.config.ts │ │ │ ├── stores/ │ │ │ │ ├── .gitignore │ │ │ │ ├── README.md │ │ │ │ ├── biome.jsonc │ │ │ │ ├── eslint.config.mjs │ │ │ │ ├── package.json │ │ │ │ ├── src/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── metaTagConfig.test.ts │ │ │ │ │ │ └── setup.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── metaTagConfig.ts │ │ │ │ │ ├── shims.d.ts │ │ │ │ │ ├── useAgentRequestStore.test.ts │ │ │ │ │ ├── useAgentRequestStore.ts │ │ │ │ │ └── useRootStore.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── tsdown.config.ts │ │ │ │ └── vite.config.ts │ │ │ └── storybook/ │ │ │ ├── .gitignore │ │ │ ├── .storybook/ │ │ │ │ ├── main.ts │ │ │ │ ├── modes.ts │ │ │ │ ├── preview.ts │ │ │ │ └── storybook.scss │ │ │ ├── README.md │ │ │ ├── index.html │ │ │ ├── package.json │ │ │ ├── tsconfig.app.json │ │ │ ├── tsconfig.json │ │ │ ├── tsconfig.node.json │ │ │ ├── turbo.json │ │ │ └── vite.config.ts │ │ ├── AGENTS.md │ │ ├── CLAUDE.md │ │ └── editor-ui/ │ │ ├── .browserslistrc │ │ ├── .gitignore │ │ ├── .npmignore │ │ ├── MIGRATION_RECIPE.md │ │ ├── README.md │ │ ├── biome.jsonc │ │ ├── data/ │ │ │ └── node-popularity.json │ │ ├── eslint.config.mjs │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── postcss.config.cjs │ │ ├── public/ │ │ │ └── static/ │ │ │ ├── base-path.js │ │ │ ├── posthog.init.js │ │ │ └── prefers-color-scheme.css │ │ ├── scripts/ │ │ │ └── fetch-node-popularity.mjs │ │ ├── src/ │ │ │ ├── Interface.ts │ │ │ ├── __tests__/ │ │ │ │ ├── data/ │ │ │ │ │ └── users.ts │ │ │ │ ├── defaults.ts │ │ │ │ ├── mocks.ts │ │ │ │ ├── render.ts │ │ │ │ ├── server/ │ │ │ │ │ ├── endpoints/ │ │ │ │ │ │ ├── credential.ts │ │ │ │ │ │ ├── credentialType.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── module.ts │ │ │ │ │ │ ├── settings.ts │ │ │ │ │ │ ├── sourceControl.ts │ │ │ │ │ │ ├── sso.ts │ │ │ │ │ │ ├── tag.ts │ │ │ │ │ │ ├── user.ts │ │ │ │ │ │ ├── variable.ts │ │ │ │ │ │ └── workflow.ts │ │ │ │ │ ├── factories/ │ │ │ │ │ │ ├── credential.ts │ │ │ │ │ │ ├── credentialType.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── tag.ts │ │ │ │ │ │ ├── user.ts │ │ │ │ │ │ ├── variable.ts │ │ │ │ │ │ └── workflow.ts │ │ │ │ │ ├── fixtures/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── tags.ts │ │ │ │ │ │ └── workflows.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── models/ │ │ │ │ │ │ ├── credential.ts │ │ │ │ │ │ ├── credentialType.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── tag.ts │ │ │ │ │ │ ├── user.ts │ │ │ │ │ │ ├── variable.ts │ │ │ │ │ │ └── workflow.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── setup.ts │ │ │ │ └── utils.ts │ │ │ ├── app/ │ │ │ │ ├── App.vue │ │ │ │ ├── api/ │ │ │ │ │ ├── workflow-dependencies.ts │ │ │ │ │ ├── workflow-webhooks.ts │ │ │ │ │ ├── workflows.ee.ts │ │ │ │ │ ├── workflows.test.ts │ │ │ │ │ └── workflows.ts │ │ │ │ ├── components/ │ │ │ │ │ ├── AboutModal.vue │ │ │ │ │ ├── ActivationModal.vue │ │ │ │ │ ├── AiStarsIcon.vue │ │ │ │ │ ├── AiUpdatedCodeMessage.vue │ │ │ │ │ ├── AnimatedSpinner.vue │ │ │ │ │ ├── Badge.vue │ │ │ │ │ ├── Banner.vue │ │ │ │ │ ├── BottomMenu.vue │ │ │ │ │ ├── BreakpointsObserver.vue │ │ │ │ │ ├── ChatEmbedModal.test.ts │ │ │ │ │ ├── ChatEmbedModal.vue │ │ │ │ │ ├── CollectionWorkflowCard.vue │ │ │ │ │ ├── ConnectionTracker.test.ts │ │ │ │ │ ├── ConnectionTracker.vue │ │ │ │ │ ├── ConsumedTokensDetails.vue │ │ │ │ │ ├── CopyInput.test.ts │ │ │ │ │ ├── CopyInput.vue │ │ │ │ │ ├── CredentialResolverEditModal.test.ts │ │ │ │ │ ├── CredentialResolverEditModal.vue │ │ │ │ │ ├── DependencyPill.test.ts │ │ │ │ │ ├── DependencyPill.vue │ │ │ │ │ ├── Draggable.test.ts │ │ │ │ │ ├── Draggable.vue │ │ │ │ │ ├── DraggableTarget.vue │ │ │ │ │ ├── DropArea/ │ │ │ │ │ │ ├── DropArea.test.ts │ │ │ │ │ │ └── DropArea.vue │ │ │ │ │ ├── DuplicateWorkflowDialog.vue │ │ │ │ │ ├── DynamicModalLoader.test.ts │ │ │ │ │ ├── DynamicModalLoader.vue │ │ │ │ │ ├── EnterpriseEdition.ee.vue │ │ │ │ │ ├── Feedback.test.ts │ │ │ │ │ ├── Feedback.vue │ │ │ │ │ ├── FocusPanel.test.ts │ │ │ │ │ ├── FocusPanel.vue │ │ │ │ │ ├── FocusSidebar.test.ts │ │ │ │ │ ├── FocusSidebar.vue │ │ │ │ │ ├── FreeAiCreditsCallout.test.ts │ │ │ │ │ ├── FreeAiCreditsCallout.vue │ │ │ │ │ ├── FromAiParametersModal.test.ts │ │ │ │ │ ├── FromAiParametersModal.vue │ │ │ │ │ ├── GoBackButton.vue │ │ │ │ │ ├── ImportWorkflowUrlModal.test.ts │ │ │ │ │ ├── ImportWorkflowUrlModal.vue │ │ │ │ │ ├── IntersectionObserved.vue │ │ │ │ │ ├── IntersectionObserver.vue │ │ │ │ │ ├── KeyboardShortcutTooltip.vue │ │ │ │ │ ├── MainHeader/ │ │ │ │ │ │ ├── ActionsDropdownMenu.vue │ │ │ │ │ │ ├── MainHeader.test.ts │ │ │ │ │ │ ├── MainHeader.vue │ │ │ │ │ │ ├── TabBar.test.ts │ │ │ │ │ │ ├── TabBar.vue │ │ │ │ │ │ ├── WorkflowDetails.test.ts │ │ │ │ │ │ ├── WorkflowDetails.vue │ │ │ │ │ │ ├── WorkflowHeaderDraftPublishActions.test.ts │ │ │ │ │ │ ├── WorkflowHeaderDraftPublishActions.vue │ │ │ │ │ │ ├── WorkflowPublishModal.test.ts │ │ │ │ │ │ ├── WorkflowPublishModal.vue │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ └── WorkflowHistoryButton.test.ts.snap │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── MainSidebar.test.ts │ │ │ │ │ ├── MainSidebar.vue │ │ │ │ │ ├── MainSidebarHeader.test.ts │ │ │ │ │ ├── MainSidebarHeader.vue │ │ │ │ │ ├── MainSidebarSourceControl.test.ts │ │ │ │ │ ├── MainSidebarSourceControl.vue │ │ │ │ │ ├── MainSidebarUserArea.vue │ │ │ │ │ ├── Modal.vue │ │ │ │ │ ├── ModalDrawer.vue │ │ │ │ │ ├── ModalRoot.vue │ │ │ │ │ ├── Modals.vue │ │ │ │ │ ├── NodeActionsList.vue │ │ │ │ │ ├── NodeExecuteButton.test.ts │ │ │ │ │ ├── NodeExecuteButton.vue │ │ │ │ │ ├── NodeExecutionErrorMessage.test.ts │ │ │ │ │ ├── NodeExecutionErrorMessage.vue │ │ │ │ │ ├── NodeIcon.vue │ │ │ │ │ ├── NodeList.vue │ │ │ │ │ ├── NodeTitle.test.ts │ │ │ │ │ ├── NodeTitle.vue │ │ │ │ │ ├── NodeViewUnfinishedWorkflowMessage.vue │ │ │ │ │ ├── NpsSurvey.vue │ │ │ │ │ ├── SaveButton.test.ts │ │ │ │ │ ├── SaveButton.vue │ │ │ │ │ ├── SettingsSidebar.vue │ │ │ │ │ ├── ShortenName.vue │ │ │ │ │ ├── StopManyExecutionsModal.test.ts │ │ │ │ │ ├── StopManyExecutionsModal.vue │ │ │ │ │ ├── TidyUpIcon.vue │ │ │ │ │ ├── TimeAgo.vue │ │ │ │ │ ├── TitledList.vue │ │ │ │ │ ├── UpdatesPanel.vue │ │ │ │ │ ├── VersionCard.vue │ │ │ │ │ ├── VersionUpdateCTA.test.ts │ │ │ │ │ ├── VersionUpdateCTA.vue │ │ │ │ │ ├── VirtualSchemaHeader.test.ts │ │ │ │ │ ├── WarningTooltip.vue │ │ │ │ │ ├── WhatsNewModal.test.ts │ │ │ │ │ ├── WhatsNewModal.vue │ │ │ │ │ ├── WorkflowActivationConflictingWebhookModal.test.ts │ │ │ │ │ ├── WorkflowActivationConflictingWebhookModal.vue │ │ │ │ │ ├── WorkflowActivationErrorMessage.vue │ │ │ │ │ ├── WorkflowCard.test.ts │ │ │ │ │ ├── WorkflowCard.vue │ │ │ │ │ ├── WorkflowDescriptionModal.test.ts │ │ │ │ │ ├── WorkflowDescriptionModal.vue │ │ │ │ │ ├── WorkflowExtractionNameModal.test.ts │ │ │ │ │ ├── WorkflowExtractionNameModal.vue │ │ │ │ │ ├── WorkflowPreview.test.ts │ │ │ │ │ ├── WorkflowPreview.vue │ │ │ │ │ ├── WorkflowProductionChecklist.test.ts │ │ │ │ │ ├── WorkflowProductionChecklist.vue │ │ │ │ │ ├── WorkflowSettings.test.ts │ │ │ │ │ ├── WorkflowSettings.vue │ │ │ │ │ ├── WorkflowShareModal.ee.test.ts │ │ │ │ │ ├── WorkflowShareModal.ee.vue │ │ │ │ │ ├── WorkflowVersionForm.test.ts │ │ │ │ │ ├── WorkflowVersionForm.vue │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ ├── ChangePasswordModal.test.ts.snap │ │ │ │ │ │ ├── ConnectionTracker.test.ts.snap │ │ │ │ │ │ ├── InputPanel.test.ts.snap │ │ │ │ │ │ ├── MultipleParameter.test.ts.snap │ │ │ │ │ │ ├── NDVSubConnections.test.ts.snap │ │ │ │ │ │ ├── RunDataJson.test.ts.snap │ │ │ │ │ │ ├── VirtualSchema.test.ts.snap │ │ │ │ │ │ └── WhatsNewModal.test.ts.snap │ │ │ │ │ ├── app/ │ │ │ │ │ │ ├── AppBanners.vue │ │ │ │ │ │ ├── AppChatPanel.vue │ │ │ │ │ │ ├── AppCommandBar.vue │ │ │ │ │ │ ├── AppHeader.vue │ │ │ │ │ │ ├── AppLayout.test.ts │ │ │ │ │ │ ├── AppLayout.vue │ │ │ │ │ │ ├── AppModals.vue │ │ │ │ │ │ └── AppSidebar.vue │ │ │ │ │ ├── common/ │ │ │ │ │ │ ├── SelectedItemsInfo.test.ts │ │ │ │ │ │ └── SelectedItemsInfo.vue │ │ │ │ │ ├── forms/ │ │ │ │ │ │ └── ResourceFiltersDropdown.vue │ │ │ │ │ ├── layouts/ │ │ │ │ │ │ ├── EmptyStateLayout.test.ts │ │ │ │ │ │ ├── EmptyStateLayout.vue │ │ │ │ │ │ ├── PageViewLayout.vue │ │ │ │ │ │ ├── PageViewLayoutList.vue │ │ │ │ │ │ ├── ResourcesListLayout.test.ts │ │ │ │ │ │ ├── ResourcesListLayout.vue │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── transitions/ │ │ │ │ │ └── SlideTransition.vue │ │ │ │ ├── composables/ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ ├── useBugReporting.test.ts.snap │ │ │ │ │ │ ├── useCanvasLayout.test.ts.snap │ │ │ │ │ │ ├── useCanvasOperations.test.ts.snap │ │ │ │ │ │ ├── useContextMenu.test.ts.snap │ │ │ │ │ │ ├── useDataSchema.test.ts.snap │ │ │ │ │ │ └── useDebugInfo.test.ts.snap │ │ │ │ │ ├── useActivityDetection.ts │ │ │ │ │ ├── useAutoScrollOnDrag.test.ts │ │ │ │ │ ├── useAutoScrollOnDrag.ts │ │ │ │ │ ├── useAutocompleteTelemetry.test.ts │ │ │ │ │ ├── useAutocompleteTelemetry.ts │ │ │ │ │ ├── useBackendStatus.spec.ts │ │ │ │ │ ├── useBackendStatus.ts │ │ │ │ │ ├── useBeforeUnload.test.ts │ │ │ │ │ ├── useBeforeUnload.ts │ │ │ │ │ ├── useBrowserNotifications.test.ts │ │ │ │ │ ├── useBrowserNotifications.ts │ │ │ │ │ ├── useBugReporting.test.ts │ │ │ │ │ ├── useBugReporting.ts │ │ │ │ │ ├── useCalloutHelpers.test.ts │ │ │ │ │ ├── useCalloutHelpers.ts │ │ │ │ │ ├── useCanvasOperations.test.ts │ │ │ │ │ ├── useCanvasOperations.ts │ │ │ │ │ ├── useClipboard.test.ts │ │ │ │ │ ├── useClipboard.ts │ │ │ │ │ ├── useCollectionOverhaul.ts │ │ │ │ │ ├── useDataSchema.test.ts │ │ │ │ │ ├── useDataSchema.ts │ │ │ │ │ ├── useDebounce.test.ts │ │ │ │ │ ├── useDebounce.ts │ │ │ │ │ ├── useDebugInfo.test.ts │ │ │ │ │ ├── useDebugInfo.ts │ │ │ │ │ ├── useDependencies.ts │ │ │ │ │ ├── useDocumentTitle.test.ts │ │ │ │ │ ├── useDocumentTitle.ts │ │ │ │ │ ├── useDocumentVisibility.ts │ │ │ │ │ ├── useErrorHandler.ts │ │ │ │ │ ├── useExecutingNode.test.ts │ │ │ │ │ ├── useExecutingNode.ts │ │ │ │ │ ├── useExposeCssVar.test.ts │ │ │ │ │ ├── useExposeCssVar.ts │ │ │ │ │ ├── useExternalHooks.ts │ │ │ │ │ ├── useFixedCollectionItemState.test.ts │ │ │ │ │ ├── useFixedCollectionItemState.ts │ │ │ │ │ ├── useFloatingUiOffsets.test.ts │ │ │ │ │ ├── useFloatingUiOffsets.ts │ │ │ │ │ ├── useFreeAiCredits.ts │ │ │ │ │ ├── useGlobalEntityCreation.test.ts │ │ │ │ │ ├── useGlobalEntityCreation.ts │ │ │ │ │ ├── useGlobalLinkActions.ts │ │ │ │ │ ├── useHistoryHelper.test.ts │ │ │ │ │ ├── useHistoryHelper.ts │ │ │ │ │ ├── useImportCurlCommand.test.ts │ │ │ │ │ ├── useImportCurlCommand.ts │ │ │ │ │ ├── useInjectWorkflowId.ts │ │ │ │ │ ├── useIntersectionObserver.test.ts │ │ │ │ │ ├── useIntersectionObserver.ts │ │ │ │ │ ├── useKeybindings.test.ts │ │ │ │ │ ├── useKeybindings.ts │ │ │ │ │ ├── useLatestFetch.test.ts │ │ │ │ │ ├── useLatestFetch.ts │ │ │ │ │ ├── useLayoutProps.ts │ │ │ │ │ ├── useLoadingService.ts │ │ │ │ │ ├── useMessage.ts │ │ │ │ │ ├── useN8nLocalStorage.test.ts │ │ │ │ │ ├── useN8nLocalStorage.ts │ │ │ │ │ ├── useNodeConnections.test.ts │ │ │ │ │ ├── useNodeConnections.ts │ │ │ │ │ ├── useNodeDirtiness.test.ts │ │ │ │ │ ├── useNodeDirtiness.ts │ │ │ │ │ ├── useNodeDocsUrl.test.ts │ │ │ │ │ ├── useNodeDocsUrl.ts │ │ │ │ │ ├── useNodeExecution.test.ts │ │ │ │ │ ├── useNodeExecution.ts │ │ │ │ │ ├── useNodeHelpers.test.ts │ │ │ │ │ ├── useNodeHelpers.ts │ │ │ │ │ ├── useNodeType.test.ts │ │ │ │ │ ├── useNodeType.ts │ │ │ │ │ ├── usePageRedirectionHelper.test.ts │ │ │ │ │ ├── usePageRedirectionHelper.ts │ │ │ │ │ ├── usePinnedData.test.ts │ │ │ │ │ ├── usePinnedData.ts │ │ │ │ │ ├── usePostMessageHandler.test.ts │ │ │ │ │ ├── usePostMessageHandler.ts │ │ │ │ │ ├── useProvideWorkflowId.ts │ │ │ │ │ ├── usePushConnection/ │ │ │ │ │ │ ├── handlers/ │ │ │ │ │ │ │ ├── builderCreditsUpdated.test.ts │ │ │ │ │ │ │ ├── builderCreditsUpdated.ts │ │ │ │ │ │ │ ├── executionFinished.test.ts │ │ │ │ │ │ │ ├── executionFinished.ts │ │ │ │ │ │ │ ├── executionRecovered.ts │ │ │ │ │ │ │ ├── executionStarted.test.ts │ │ │ │ │ │ │ ├── executionStarted.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── nodeDescriptionUpdated.ts │ │ │ │ │ │ │ ├── nodeExecuteAfter.test.ts │ │ │ │ │ │ │ ├── nodeExecuteAfter.ts │ │ │ │ │ │ │ ├── nodeExecuteAfterData.test.ts │ │ │ │ │ │ │ ├── nodeExecuteAfterData.ts │ │ │ │ │ │ │ ├── nodeExecuteBefore.ts │ │ │ │ │ │ │ ├── reloadNodeType.ts │ │ │ │ │ │ │ ├── removeNodeType.ts │ │ │ │ │ │ │ ├── sendConsoleMessage.ts │ │ │ │ │ │ │ ├── sendWorkerStatusMessage.ts │ │ │ │ │ │ │ ├── testWebhookDeleted.ts │ │ │ │ │ │ │ ├── testWebhookReceived.ts │ │ │ │ │ │ │ ├── workflowActivated.ts │ │ │ │ │ │ │ ├── workflowAutoDeactivated.ts │ │ │ │ │ │ │ ├── workflowDeactivated.ts │ │ │ │ │ │ │ └── workflowFailedToActivate.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── usePushConnection.test.ts │ │ │ │ │ │ └── usePushConnection.ts │ │ │ │ │ ├── useResizablePanel.test.ts │ │ │ │ │ ├── useResizablePanel.ts │ │ │ │ │ ├── useResolvedExpression.test.ts │ │ │ │ │ ├── useResolvedExpression.ts │ │ │ │ │ ├── useResourcesListI18n.test.ts │ │ │ │ │ ├── useResourcesListI18n.ts │ │ │ │ │ ├── useRunWorkflow.test.ts │ │ │ │ │ ├── useRunWorkflow.ts │ │ │ │ │ ├── useSettingsItems.ts │ │ │ │ │ ├── useSidebarLayout.test.ts │ │ │ │ │ ├── useSidebarLayout.ts │ │ │ │ │ ├── useStorage.test.ts │ │ │ │ │ ├── useStorage.ts │ │ │ │ │ ├── useStyles.test.ts │ │ │ │ │ ├── useStyles.ts │ │ │ │ │ ├── useTelemetry.ts │ │ │ │ │ ├── useTelemetryContext.test.ts │ │ │ │ │ ├── useTelemetryContext.ts │ │ │ │ │ ├── useTelemetryInitializer.test.ts │ │ │ │ │ ├── useTelemetryInitializer.ts │ │ │ │ │ ├── useToast.test.ts │ │ │ │ │ ├── useToast.ts │ │ │ │ │ ├── useToolParameters.test.ts │ │ │ │ │ ├── useToolParameters.ts │ │ │ │ │ ├── useUniqueNodeName.test.ts │ │ │ │ │ ├── useUniqueNodeName.ts │ │ │ │ │ ├── useUserHelpers.ts │ │ │ │ │ ├── useWorkflowActivate.ts │ │ │ │ │ ├── useWorkflowDiffRouting.test.ts │ │ │ │ │ ├── useWorkflowDiffRouting.ts │ │ │ │ │ ├── useWorkflowExtraction.ts │ │ │ │ │ ├── useWorkflowHelpers.test.ts │ │ │ │ │ ├── useWorkflowHelpers.ts │ │ │ │ │ ├── useWorkflowImport.test.ts │ │ │ │ │ ├── useWorkflowImport.ts │ │ │ │ │ ├── useWorkflowInitialization.ts │ │ │ │ │ ├── useWorkflowSaving.test.ts │ │ │ │ │ ├── useWorkflowSaving.ts │ │ │ │ │ ├── useWorkflowState.test.ts │ │ │ │ │ ├── useWorkflowState.ts │ │ │ │ │ ├── useWorkflowUpdate.test.ts │ │ │ │ │ ├── useWorkflowUpdate.ts │ │ │ │ │ ├── useWorkflowsCache.test.ts │ │ │ │ │ └── useWorkflowsCache.ts │ │ │ │ ├── constants/ │ │ │ │ │ ├── actions.ts │ │ │ │ │ ├── ai.ts │ │ │ │ │ ├── auth.ts │ │ │ │ │ ├── breakpoints.ts │ │ │ │ │ ├── curl.ts │ │ │ │ │ ├── durations.test.ts │ │ │ │ │ ├── durations.ts │ │ │ │ │ ├── emails.ts │ │ │ │ │ ├── enterprise.ts │ │ │ │ │ ├── events.ts │ │ │ │ │ ├── experiments.ts │ │ │ │ │ ├── externalLinks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── injectionKeys.ts │ │ │ │ │ ├── limits.ts │ │ │ │ │ ├── localStorage.ts │ │ │ │ │ ├── modals.ts │ │ │ │ │ ├── navigation.ts │ │ │ │ │ ├── nodeCreator.ts │ │ │ │ │ ├── nodeTypes.ts │ │ │ │ │ ├── nodes.ts │ │ │ │ │ ├── notice.ts │ │ │ │ │ ├── parameters.ts │ │ │ │ │ ├── placeholders.ts │ │ │ │ │ ├── regex.ts │ │ │ │ │ ├── samples.ts │ │ │ │ │ ├── sanitization.ts │ │ │ │ │ ├── selectors.ts │ │ │ │ │ ├── templates.ts │ │ │ │ │ ├── urls.ts │ │ │ │ │ ├── workflowSuggestions.ts │ │ │ │ │ └── workflows.ts │ │ │ │ ├── css/ │ │ │ │ │ ├── _animations.scss │ │ │ │ │ ├── _global.scss │ │ │ │ │ ├── _variables.scss │ │ │ │ │ ├── index.scss │ │ │ │ │ └── plugins/ │ │ │ │ │ ├── _codemirror.scss │ │ │ │ │ ├── _vueflow.scss │ │ │ │ │ └── index.scss │ │ │ │ ├── dev/ │ │ │ │ │ └── i18nHmr.ts │ │ │ │ ├── event-bus/ │ │ │ │ │ ├── code-node-editor.ts │ │ │ │ │ ├── data-pinning.ts │ │ │ │ │ ├── global-link-actions.ts │ │ │ │ │ ├── html-editor.ts │ │ │ │ │ ├── import-curl.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── node-view.ts │ │ │ │ ├── init.test.ts │ │ │ │ ├── init.ts │ │ │ │ ├── layouts/ │ │ │ │ │ ├── AuthLayout.test.ts │ │ │ │ │ ├── AuthLayout.vue │ │ │ │ │ ├── BaseLayout.test.ts │ │ │ │ │ ├── BaseLayout.vue │ │ │ │ │ ├── ChatLayout.test.ts │ │ │ │ │ ├── ChatLayout.vue │ │ │ │ │ ├── DefaultLayout.test.ts │ │ │ │ │ ├── DefaultLayout.vue │ │ │ │ │ ├── DemoLayout.test.ts │ │ │ │ │ ├── DemoLayout.vue │ │ │ │ │ ├── InstanceAiLayout.vue │ │ │ │ │ ├── SettingsLayout.test.ts │ │ │ │ │ ├── SettingsLayout.vue │ │ │ │ │ ├── WorkflowLayout.test.ts │ │ │ │ │ └── WorkflowLayout.vue │ │ │ │ ├── models/ │ │ │ │ │ └── history.ts │ │ │ │ ├── moduleInitializer/ │ │ │ │ │ ├── modalRegistry.test.ts │ │ │ │ │ ├── modalRegistry.ts │ │ │ │ │ ├── module.types.ts │ │ │ │ │ ├── moduleInitializer.ts │ │ │ │ │ └── resourceRegistry.ts │ │ │ │ ├── plugins/ │ │ │ │ │ ├── cache.test.ts │ │ │ │ │ ├── cache.ts │ │ │ │ │ ├── chartjs.ts │ │ │ │ │ ├── components.ts │ │ │ │ │ ├── directives.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── sentry.test.ts │ │ │ │ │ ├── sentry.ts │ │ │ │ │ ├── telemetry/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── telemetry.types.ts │ │ │ │ │ └── telemetry.test.ts │ │ │ │ ├── polyfills.ts │ │ │ │ ├── push-connection/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── mockEventSource.ts │ │ │ │ │ │ ├── mockWebSocketClient.ts │ │ │ │ │ │ ├── useEventSourceClient.test.ts │ │ │ │ │ │ ├── useHeartbeat.test.ts │ │ │ │ │ │ └── useWebSocketClient.test.ts │ │ │ │ │ ├── useEventSourceClient.ts │ │ │ │ │ ├── useHeartbeat.ts │ │ │ │ │ ├── useReconnectTimer.ts │ │ │ │ │ └── useWebSocketClient.ts │ │ │ │ ├── router.test.ts │ │ │ │ ├── router.ts │ │ │ │ ├── stores/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── utils/ │ │ │ │ │ │ └── cloudStoreUtils.ts │ │ │ │ │ ├── backendConnection.store.ts │ │ │ │ │ ├── canvas.store.ts │ │ │ │ │ ├── cloudPlan.store.test.ts │ │ │ │ │ ├── cloudPlan.store.ts │ │ │ │ │ ├── consent.store.ts │ │ │ │ │ ├── focusPanel.store.ts │ │ │ │ │ ├── history.store.ts │ │ │ │ │ ├── logs.store.test.ts │ │ │ │ │ ├── logs.store.ts │ │ │ │ │ ├── nodeTypes.store.test.ts │ │ │ │ │ ├── nodeTypes.store.ts │ │ │ │ │ ├── npsStore.store.test.ts │ │ │ │ │ ├── npsSurvey.store.ts │ │ │ │ │ ├── posthog.store.test.ts │ │ │ │ │ ├── posthog.store.ts │ │ │ │ │ ├── pushConnection.store.test.ts │ │ │ │ │ ├── pushConnection.store.ts │ │ │ │ │ ├── rbac.store.test.ts │ │ │ │ │ ├── rbac.store.ts │ │ │ │ │ ├── roles.store.test.ts │ │ │ │ │ ├── roles.store.ts │ │ │ │ │ ├── settings.store.test.ts │ │ │ │ │ ├── settings.store.ts │ │ │ │ │ ├── ui.store.registration.spec.ts │ │ │ │ │ ├── ui.store.test.ts │ │ │ │ │ ├── ui.store.ts │ │ │ │ │ ├── ui.utils.ts │ │ │ │ │ ├── versions.store.test.ts │ │ │ │ │ ├── versions.store.ts │ │ │ │ │ ├── webhooks.store.ts │ │ │ │ │ ├── workflowDocument/ │ │ │ │ │ │ ├── CLAUDE.md │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ ├── useWorkflowDocumentActive.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentActive.ts │ │ │ │ │ │ ├── useWorkflowDocumentChecksum.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentChecksum.ts │ │ │ │ │ │ ├── useWorkflowDocumentConnections.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentConnections.ts │ │ │ │ │ │ ├── useWorkflowDocumentHomeProject.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentHomeProject.ts │ │ │ │ │ │ ├── useWorkflowDocumentIsArchived.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentIsArchived.ts │ │ │ │ │ │ ├── useWorkflowDocumentMeta.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentMeta.ts │ │ │ │ │ │ ├── useWorkflowDocumentNodes.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentNodes.ts │ │ │ │ │ │ ├── useWorkflowDocumentParentFolder.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentParentFolder.ts │ │ │ │ │ │ ├── useWorkflowDocumentPinData.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentPinData.ts │ │ │ │ │ │ ├── useWorkflowDocumentScopes.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentScopes.ts │ │ │ │ │ │ ├── useWorkflowDocumentSettings.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentSettings.ts │ │ │ │ │ │ ├── useWorkflowDocumentTags.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentTags.ts │ │ │ │ │ │ ├── useWorkflowDocumentTimestamps.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentTimestamps.ts │ │ │ │ │ │ ├── useWorkflowDocumentUsedCredentials.test.ts │ │ │ │ │ │ ├── useWorkflowDocumentUsedCredentials.ts │ │ │ │ │ │ ├── useWorkflowDocumentViewport.test.ts │ │ │ │ │ │ └── useWorkflowDocumentViewport.ts │ │ │ │ │ ├── workflowDocument.store.test.ts │ │ │ │ │ ├── workflowDocument.store.ts │ │ │ │ │ ├── workflowSave.store.ts │ │ │ │ │ ├── workflowState.store.ts │ │ │ │ │ ├── workflows.ee.store.ts │ │ │ │ │ ├── workflows.store.test.ts │ │ │ │ │ ├── workflows.store.ts │ │ │ │ │ ├── workflowsList.store.test.ts │ │ │ │ │ └── workflowsList.store.ts │ │ │ │ ├── types/ │ │ │ │ │ ├── collection-parameter.types.ts │ │ │ │ │ ├── completions.ts │ │ │ │ │ ├── expressions.ts │ │ │ │ │ ├── externalHooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── nodeSettings.ts │ │ │ │ │ ├── pushConnection.ts │ │ │ │ │ ├── rbac.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ ├── telemetry.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── utils/ │ │ │ │ │ ├── aiUtils.test.ts │ │ │ │ │ ├── aiUtils.ts │ │ │ │ │ ├── credentialOnlyNodes.ts │ │ │ │ │ ├── eventUtils.ts │ │ │ │ │ ├── expressions.test.ts │ │ │ │ │ ├── expressions.ts │ │ │ │ │ ├── fileUtils.ts │ │ │ │ │ ├── forceParse.ts │ │ │ │ │ ├── formatters/ │ │ │ │ │ │ ├── dateFormatter.test.ts │ │ │ │ │ │ ├── dateFormatter.ts │ │ │ │ │ │ ├── listFormatter.ts │ │ │ │ │ │ └── textFormatter.ts │ │ │ │ │ ├── htmlUtils.test.ts │ │ │ │ │ ├── htmlUtils.ts │ │ │ │ │ ├── injectStrict.test.ts │ │ │ │ │ ├── injectStrict.ts │ │ │ │ │ ├── json-schema.test.ts │ │ │ │ │ ├── json-schema.ts │ │ │ │ │ ├── mappingUtils.test.ts │ │ │ │ │ ├── mappingUtils.ts │ │ │ │ │ ├── modules/ │ │ │ │ │ │ └── tabUtils.ts │ │ │ │ │ ├── nodeIcon.test.ts │ │ │ │ │ ├── nodeIcon.ts │ │ │ │ │ ├── nodeTypeUtils.test.ts │ │ │ │ │ ├── nodeTypes/ │ │ │ │ │ │ └── nodeTypeTransforms.ts │ │ │ │ │ ├── nodeTypesUtils.ts │ │ │ │ │ ├── nodeViewUtils.test.ts │ │ │ │ │ ├── nodeViewUtils.ts │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ ├── nodeTransforms.test.ts │ │ │ │ │ │ └── nodeTransforms.ts │ │ │ │ │ ├── objectUtils.test.ts │ │ │ │ │ ├── objectUtils.ts │ │ │ │ │ ├── pairedItemUtils.test.ts │ │ │ │ │ ├── pairedItemUtils.ts │ │ │ │ │ ├── parameterUtils.test.ts │ │ │ │ │ ├── parameterUtils.ts │ │ │ │ │ ├── rbac/ │ │ │ │ │ │ ├── checks/ │ │ │ │ │ │ │ ├── hasRole.test.ts │ │ │ │ │ │ │ ├── hasRole.ts │ │ │ │ │ │ │ ├── hasScope.test.ts │ │ │ │ │ │ │ ├── hasScope.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── isAuthenticated.test.ts │ │ │ │ │ │ │ ├── isAuthenticated.ts │ │ │ │ │ │ │ ├── isDefaultUser.test.ts │ │ │ │ │ │ │ ├── isDefaultUser.ts │ │ │ │ │ │ │ ├── isEnterpriseFeatureEnabled.test.ts │ │ │ │ │ │ │ ├── isEnterpriseFeatureEnabled.ts │ │ │ │ │ │ │ ├── isGuest.test.ts │ │ │ │ │ │ │ ├── isGuest.ts │ │ │ │ │ │ │ ├── isInstanceOwner.test.ts │ │ │ │ │ │ │ ├── isInstanceOwner.ts │ │ │ │ │ │ │ ├── isValid.test.ts │ │ │ │ │ │ │ └── isValid.ts │ │ │ │ │ │ ├── middleware/ │ │ │ │ │ │ │ ├── authenticated.test.ts │ │ │ │ │ │ │ ├── authenticated.ts │ │ │ │ │ │ │ ├── custom.test.ts │ │ │ │ │ │ │ ├── custom.ts │ │ │ │ │ │ │ ├── defaultUser.test.ts │ │ │ │ │ │ │ ├── defaultUser.ts │ │ │ │ │ │ │ ├── enterprise.test.ts │ │ │ │ │ │ │ ├── enterprise.ts │ │ │ │ │ │ │ ├── guest.test.ts │ │ │ │ │ │ │ ├── guest.ts │ │ │ │ │ │ │ ├── rbac.test.ts │ │ │ │ │ │ │ ├── rbac.ts │ │ │ │ │ │ │ ├── role.test.ts │ │ │ │ │ │ │ └── role.ts │ │ │ │ │ │ ├── middleware.ts │ │ │ │ │ │ ├── permissions.test.ts │ │ │ │ │ │ └── permissions.ts │ │ │ │ │ ├── rbacUtils.test.ts │ │ │ │ │ ├── rbacUtils.ts │ │ │ │ │ ├── retryUtils.test.ts │ │ │ │ │ ├── retryUtils.ts │ │ │ │ │ ├── stringUtils.test.ts │ │ │ │ │ ├── stringUtils.ts │ │ │ │ │ ├── telemetryUtils.ts │ │ │ │ │ ├── testData/ │ │ │ │ │ │ └── nodeTypeTestData.ts │ │ │ │ │ ├── typeGuards.ts │ │ │ │ │ ├── typeHelpers.ts │ │ │ │ │ ├── typesUtils.test.ts │ │ │ │ │ ├── typesUtils.ts │ │ │ │ │ ├── workflowUtils.test.ts │ │ │ │ │ └── workflowUtils.ts │ │ │ │ ├── views/ │ │ │ │ │ ├── CanvasAddButton.vue │ │ │ │ │ ├── DemoDiffView.test.ts │ │ │ │ │ ├── DemoDiffView.vue │ │ │ │ │ ├── EntityNotFound.vue │ │ │ │ │ ├── EntityUnAuthorised.vue │ │ │ │ │ ├── ErrorView.vue │ │ │ │ │ ├── LoadingView.vue │ │ │ │ │ ├── NodeView.vue │ │ │ │ │ ├── OAuthConsentView.vue │ │ │ │ │ ├── WorkflowOnboardingView.vue │ │ │ │ │ ├── WorkflowsView.test.ts │ │ │ │ │ └── WorkflowsView.vue │ │ │ │ └── workers/ │ │ │ │ ├── coordinator/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── initialize.ts │ │ │ │ │ ├── operations/ │ │ │ │ │ │ ├── loadNodeTypes.test.ts │ │ │ │ │ │ ├── loadNodeTypes.ts │ │ │ │ │ │ ├── query.test.ts │ │ │ │ │ │ ├── query.ts │ │ │ │ │ │ └── storeVersion.ts │ │ │ │ │ ├── tabs.test.ts │ │ │ │ │ ├── tabs.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── utils.ts │ │ │ │ │ └── worker.ts │ │ │ │ ├── data/ │ │ │ │ │ ├── db.test.ts │ │ │ │ │ ├── db.ts │ │ │ │ │ ├── operations/ │ │ │ │ │ │ ├── loadNodeTypes.test.ts │ │ │ │ │ │ ├── loadNodeTypes.ts │ │ │ │ │ │ ├── query.ts │ │ │ │ │ │ └── storeVersion.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── worker.ts │ │ │ │ └── index.ts │ │ │ ├── experiments/ │ │ │ │ ├── aiTemplatesStarterCollection/ │ │ │ │ │ ├── stores/ │ │ │ │ │ │ └── aiTemplatesStarterCollection.store.ts │ │ │ │ │ └── workflows/ │ │ │ │ │ ├── 1_agent_with_memory.ts │ │ │ │ │ ├── 2_agent_with_tools.ts │ │ │ │ │ └── 3_agent_with_knowledge.ts │ │ │ │ ├── credentialsAppSelection/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── AppInstallModal.vue │ │ │ │ │ │ ├── AppSelectionCard.vue │ │ │ │ │ │ ├── AppSelectionGrid.vue │ │ │ │ │ │ └── AppSelectionPage.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── useAppCredentials.test.ts │ │ │ │ │ │ └── useAppCredentials.ts │ │ │ │ │ └── stores/ │ │ │ │ │ ├── credentialsAppSelection.store.test.ts │ │ │ │ │ └── credentialsAppSelection.store.ts │ │ │ │ ├── emptyStateBuilderPrompt/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ └── EmptyStateBuilderPrompt.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ └── useTypewriterPlaceholder.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ └── stores/ │ │ │ │ │ └── emptyStateBuilderPrompt.store.ts │ │ │ │ ├── personalizedTemplates/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── SuggestedWorkflowCard.vue │ │ │ │ │ │ └── SuggestedWorkflows.vue │ │ │ │ │ └── stores/ │ │ │ │ │ └── personalizedTemplates.store.ts │ │ │ │ ├── personalizedTemplatesV3/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── NodeRecommendationCard.vue │ │ │ │ │ │ ├── NodeRecommendationModal.vue │ │ │ │ │ │ ├── TemplateCard.vue │ │ │ │ │ │ ├── TemplateRecommendationV3.vue │ │ │ │ │ │ └── TemplateTooltip.vue │ │ │ │ │ └── stores/ │ │ │ │ │ └── personalizedTemplatesV3.store.ts │ │ │ │ ├── readyToRunWorkflows/ │ │ │ │ │ ├── stores/ │ │ │ │ │ │ └── readyToRunWorkflows.store.ts │ │ │ │ │ └── workflows/ │ │ │ │ │ ├── 1_playground.ts │ │ │ │ │ ├── 2_playground.ts │ │ │ │ │ ├── 3_playground.ts │ │ │ │ │ └── 4_playground.ts │ │ │ │ ├── readyToRunWorkflowsV2/ │ │ │ │ │ ├── stores/ │ │ │ │ │ │ └── readyToRunWorkflowsV2.store.ts │ │ │ │ │ └── workflows/ │ │ │ │ │ ├── ai-workflow-v3.ts │ │ │ │ │ ├── ai-workflow-v4.ts │ │ │ │ │ ├── ai-workflow-v5.ts │ │ │ │ │ └── ai-workflow-v6.ts │ │ │ │ ├── resourceCenter/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── CourseCard.vue │ │ │ │ │ │ ├── FeaturedSandboxCard.vue │ │ │ │ │ │ ├── HorizontalGallery.vue │ │ │ │ │ │ ├── QuickStartCard.vue │ │ │ │ │ │ ├── ResourceCenterHeader.vue │ │ │ │ │ │ ├── ResourceCenterTooltip.vue │ │ │ │ │ │ ├── SandboxCard.vue │ │ │ │ │ │ ├── TemplateCard.vue │ │ │ │ │ │ ├── VideoThumbCard.vue │ │ │ │ │ │ └── WorkflowPreviewSvg.vue │ │ │ │ │ ├── data/ │ │ │ │ │ │ ├── quickStartWorkflows.ts │ │ │ │ │ │ └── resourceCenterData.ts │ │ │ │ │ ├── stores/ │ │ │ │ │ │ └── resourceCenter.store.ts │ │ │ │ │ └── views/ │ │ │ │ │ ├── ResourceCenterSectionView.vue │ │ │ │ │ └── ResourceCenterView.vue │ │ │ │ ├── sidebarExpanded/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── useSidebarExpandedExperiment.ts │ │ │ │ ├── templateRecoV2/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── NodeRecommendationCard.vue │ │ │ │ │ │ ├── NodeRecommendationModal.vue │ │ │ │ │ │ ├── TemplateCard.vue │ │ │ │ │ │ ├── TemplateRecommendationV2.vue │ │ │ │ │ │ └── YoutubeCard.vue │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ └── predefinedData.ts │ │ │ │ │ └── stores/ │ │ │ │ │ └── templateRecoV2.store.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── features/ │ │ │ │ ├── ai/ │ │ │ │ │ ├── assistant/ │ │ │ │ │ │ ├── aiBuilderDiff.scss │ │ │ │ │ │ ├── assistant.api.test.ts │ │ │ │ │ │ ├── assistant.api.ts │ │ │ │ │ │ ├── assistant.store.test.ts │ │ │ │ │ │ ├── assistant.store.ts │ │ │ │ │ │ ├── assistant.types.ts │ │ │ │ │ │ ├── builder.store.test.ts │ │ │ │ │ │ ├── builder.store.ts │ │ │ │ │ │ ├── builder.utils.test.ts │ │ │ │ │ │ ├── builder.utils.ts │ │ │ │ │ │ ├── chatPanel.store.test.ts │ │ │ │ │ │ ├── chatPanel.store.ts │ │ │ │ │ │ ├── chatPanelState.store.ts │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── Agent/ │ │ │ │ │ │ │ │ ├── AIBuilderDiffModal.test.ts │ │ │ │ │ │ │ │ ├── AIBuilderDiffModal.vue │ │ │ │ │ │ │ │ ├── AskAssistantBuild.test.ts │ │ │ │ │ │ │ │ ├── AskAssistantBuild.vue │ │ │ │ │ │ │ │ ├── BuildModeEmptyState.vue │ │ │ │ │ │ │ │ ├── BuilderNodeGroupCard.vue │ │ │ │ │ │ │ │ ├── BuilderSetupCard.test.ts │ │ │ │ │ │ │ │ ├── BuilderSetupCard.vue │ │ │ │ │ │ │ │ ├── BuilderSetupWizard.test.ts │ │ │ │ │ │ │ │ ├── BuilderSetupWizard.vue │ │ │ │ │ │ │ │ ├── ChatVersionCard.test.ts │ │ │ │ │ │ │ │ ├── ChatVersionCard.vue │ │ │ │ │ │ │ │ ├── CollapsedMessagesGroup.vue │ │ │ │ │ │ │ │ ├── CredentialsSetupCard.vue │ │ │ │ │ │ │ │ ├── CreditWarningBanner.vue │ │ │ │ │ │ │ │ ├── CreditsSettingsDropdown.vue │ │ │ │ │ │ │ │ ├── ExecuteMessage.test.ts │ │ │ │ │ │ │ │ ├── ExecuteMessage.vue │ │ │ │ │ │ │ │ ├── NodeIssueItem.test.ts │ │ │ │ │ │ │ │ ├── NodeIssueItem.vue │ │ │ │ │ │ │ │ ├── NotificationPermissionBanner.test.ts │ │ │ │ │ │ │ │ ├── NotificationPermissionBanner.vue │ │ │ │ │ │ │ │ ├── PlanDisplayMessage.test.ts │ │ │ │ │ │ │ │ ├── PlanDisplayMessage.vue │ │ │ │ │ │ │ │ ├── PlanModeSelector.test.ts │ │ │ │ │ │ │ │ ├── PlanModeSelector.vue │ │ │ │ │ │ │ │ ├── PlanQuestionsMessage.test.ts │ │ │ │ │ │ │ │ ├── PlanQuestionsMessage.vue │ │ │ │ │ │ │ │ ├── ReviewChangesBanner.test.ts │ │ │ │ │ │ │ │ ├── ReviewChangesBanner.vue │ │ │ │ │ │ │ │ ├── UserAnswersMessage.test.ts │ │ │ │ │ │ │ │ ├── UserAnswersMessage.vue │ │ │ │ │ │ │ │ └── WebFetchApprovalMessage.vue │ │ │ │ │ │ │ ├── AskModeCoachmark.test.ts │ │ │ │ │ │ │ ├── AskModeCoachmark.vue │ │ │ │ │ │ │ ├── AssistantsHub.test.ts │ │ │ │ │ │ │ ├── AssistantsHub.vue │ │ │ │ │ │ │ ├── Chat/ │ │ │ │ │ │ │ │ ├── AskAssistantChat.vue │ │ │ │ │ │ │ │ ├── AskAssistantFloatingButton.vue │ │ │ │ │ │ │ │ ├── AskModeEmptyState.test.ts │ │ │ │ │ │ │ │ ├── AskModeEmptyState.vue │ │ │ │ │ │ │ │ └── NewAssistantSessionModal.vue │ │ │ │ │ │ │ ├── FocusedNodes/ │ │ │ │ │ │ │ │ ├── ChatInputWithMention.test.ts │ │ │ │ │ │ │ │ ├── ChatInputWithMention.vue │ │ │ │ │ │ │ │ ├── FocusedNodeChip.vue │ │ │ │ │ │ │ │ ├── MessageFocusedNodesChips.vue │ │ │ │ │ │ │ │ └── NodeMentionDropdown.vue │ │ │ │ │ │ │ └── HubSwitcher.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useAIAssistantHelpers.test.constants.ts │ │ │ │ │ │ │ ├── useAIAssistantHelpers.test.ts │ │ │ │ │ │ │ ├── useAIAssistantHelpers.ts │ │ │ │ │ │ │ ├── useAskModeCoachmark.test.ts │ │ │ │ │ │ │ ├── useAskModeCoachmark.ts │ │ │ │ │ │ │ ├── useBuilderExecution.ts │ │ │ │ │ │ │ ├── useBuilderMessages.test.ts │ │ │ │ │ │ │ ├── useBuilderMessages.ts │ │ │ │ │ │ │ ├── useBuilderSetupCards.test.ts │ │ │ │ │ │ │ ├── useBuilderSetupCards.ts │ │ │ │ │ │ │ ├── useBuilderStreamingGuard.test.ts │ │ │ │ │ │ │ ├── useBuilderStreamingGuard.ts │ │ │ │ │ │ │ ├── useBuilderTodos.test.ts │ │ │ │ │ │ │ ├── useBuilderTodos.ts │ │ │ │ │ │ │ ├── useCodeDiff.ts │ │ │ │ │ │ │ ├── useExecutionWatcher.ts │ │ │ │ │ │ │ ├── useFocusedNodesChipUI.ts │ │ │ │ │ │ │ ├── useNodeMention.test.ts │ │ │ │ │ │ │ ├── useNodeMention.ts │ │ │ │ │ │ │ ├── useReviewChanges.test.ts │ │ │ │ │ │ │ └── useReviewChanges.ts │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── focusedNodes.store.test.ts │ │ │ │ │ │ ├── focusedNodes.store.ts │ │ │ │ │ │ ├── focusedNodes.types.ts │ │ │ │ │ │ ├── focusedNodes.utils.test.ts │ │ │ │ │ │ ├── focusedNodes.utils.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ └── SettingsAIView.vue │ │ │ │ │ ├── chatHub/ │ │ │ │ │ │ ├── ChatPersonalAgentsView.vue │ │ │ │ │ │ ├── ChatSemanticSearchSettings.vue │ │ │ │ │ │ ├── ChatView.test.ts │ │ │ │ │ │ ├── ChatView.vue │ │ │ │ │ │ ├── ChatWorkflowAgentsView.vue │ │ │ │ │ │ ├── SettingsChatHubView.vue │ │ │ │ │ │ ├── __test__/ │ │ │ │ │ │ │ └── data.ts │ │ │ │ │ │ ├── chat.api.ts │ │ │ │ │ │ ├── chat.store.test.ts │ │ │ │ │ │ ├── chat.store.ts │ │ │ │ │ │ ├── chat.types.ts │ │ │ │ │ │ ├── chat.utils.test.ts │ │ │ │ │ │ ├── chat.utils.ts │ │ │ │ │ │ ├── chatHubPanel.store.ts │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── AgentEditorModal.test.ts │ │ │ │ │ │ │ ├── AgentEditorModal.vue │ │ │ │ │ │ │ ├── AgentEditorModalFileRow.vue │ │ │ │ │ │ │ ├── CanvasChatFloatingMenu.vue │ │ │ │ │ │ │ ├── CanvasChatFloatingWindow.vue │ │ │ │ │ │ │ ├── CanvasChatHubPanel.vue │ │ │ │ │ │ │ ├── CanvasChatOverlay.vue │ │ │ │ │ │ │ ├── CanvasChatSessionDropdown.vue │ │ │ │ │ │ │ ├── ChatAgentAvatar.vue │ │ │ │ │ │ │ ├── ChatAgentCard.vue │ │ │ │ │ │ │ ├── ChatAgentSearchSort.vue │ │ │ │ │ │ │ ├── ChatArtifactViewer.vue │ │ │ │ │ │ │ ├── ChatButtons.test.ts │ │ │ │ │ │ │ ├── ChatButtons.vue │ │ │ │ │ │ │ ├── ChatConversationHeader.vue │ │ │ │ │ │ │ ├── ChatGreetings.test.ts │ │ │ │ │ │ │ ├── ChatGreetings.vue │ │ │ │ │ │ │ ├── ChatLayout.vue │ │ │ │ │ │ │ ├── ChatMarkdownChunk.vue │ │ │ │ │ │ │ ├── ChatMessage.test.ts │ │ │ │ │ │ │ ├── ChatMessage.vue │ │ │ │ │ │ │ ├── ChatMessageActions.vue │ │ │ │ │ │ │ ├── ChatPrompt.test.ts │ │ │ │ │ │ │ ├── ChatPrompt.vue │ │ │ │ │ │ │ ├── ChatPromptCallouts.vue │ │ │ │ │ │ │ ├── ChatPromptCompact.vue │ │ │ │ │ │ │ ├── ChatPromptFull.vue │ │ │ │ │ │ │ ├── ChatProviderAvatar.vue │ │ │ │ │ │ │ ├── ChatProvidersTable.vue │ │ │ │ │ │ │ ├── ChatSessionMenuItem.vue │ │ │ │ │ │ │ ├── ChatSidebar.vue │ │ │ │ │ │ │ ├── ChatSidebarContent.vue │ │ │ │ │ │ │ ├── ChatSidebarLink.vue │ │ │ │ │ │ │ ├── ChatStarter.vue │ │ │ │ │ │ │ ├── ChatSuggestedPrompts.test.ts │ │ │ │ │ │ │ ├── ChatSuggestedPrompts.vue │ │ │ │ │ │ │ ├── ChatTypingIndicator.vue │ │ │ │ │ │ │ ├── CopyButton.vue │ │ │ │ │ │ │ ├── CredentialSelectorModal.vue │ │ │ │ │ │ │ ├── DynamicCredentialsDrawer.vue │ │ │ │ │ │ │ ├── ModelByIdSelectorModal.vue │ │ │ │ │ │ │ ├── ModelSelector.vue │ │ │ │ │ │ │ ├── ProviderSettingsModal.vue │ │ │ │ │ │ │ ├── SkeletonAgentCard.vue │ │ │ │ │ │ │ ├── SkeletonMenuItem.vue │ │ │ │ │ │ │ ├── SuggestedPromptsEditor.vue │ │ │ │ │ │ │ ├── ToolListItem.vue │ │ │ │ │ │ │ ├── ToolSettingsContent.test.ts │ │ │ │ │ │ │ ├── ToolSettingsContent.vue │ │ │ │ │ │ │ ├── ToolSettingsModal.test.ts │ │ │ │ │ │ │ ├── ToolSettingsModal.vue │ │ │ │ │ │ │ ├── ToolsManagerModal.test.ts │ │ │ │ │ │ │ ├── ToolsManagerModal.vue │ │ │ │ │ │ │ ├── ToolsSelector.test.ts │ │ │ │ │ │ │ └── ToolsSelector.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── languageModules.ts │ │ │ │ │ │ │ ├── useChatArtifacts.ts │ │ │ │ │ │ │ ├── useChatCredentials.ts │ │ │ │ │ │ │ ├── useChatHubMarkdownOptions.ts │ │ │ │ │ │ │ ├── useChatInputFocus.test.ts │ │ │ │ │ │ │ ├── useChatInputFocus.ts │ │ │ │ │ │ │ ├── useChatPushHandler.test.ts │ │ │ │ │ │ │ ├── useChatPushHandler.ts │ │ │ │ │ │ │ ├── useChatSession.ts │ │ │ │ │ │ │ ├── useCustomAgent.ts │ │ │ │ │ │ │ ├── useDynamicCredentialsStatus.test.ts │ │ │ │ │ │ │ ├── useDynamicCredentialsStatus.ts │ │ │ │ │ │ │ └── useFileDrop.ts │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── model-selector.utils.test.ts │ │ │ │ │ │ ├── model-selector.utils.ts │ │ │ │ │ │ └── module.descriptor.ts │ │ │ │ │ ├── evaluation.ee/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── ListRuns/ │ │ │ │ │ │ │ │ ├── MetricsChart.vue │ │ │ │ │ │ │ │ ├── RunsSection.vue │ │ │ │ │ │ │ │ └── TestRunsTable.vue │ │ │ │ │ │ │ ├── Paywall/ │ │ │ │ │ │ │ │ └── EvaluationsPaywall.vue │ │ │ │ │ │ │ ├── SetupWizard/ │ │ │ │ │ │ │ │ └── SetupWizard.vue │ │ │ │ │ │ │ └── shared/ │ │ │ │ │ │ │ ├── StepHeader.vue │ │ │ │ │ │ │ ├── StepIndicator.vue │ │ │ │ │ │ │ ├── TableCell.vue │ │ │ │ │ │ │ ├── TableStatusCell.vue │ │ │ │ │ │ │ └── TestTableBase.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useMetricsChart.test.ts │ │ │ │ │ │ │ └── useMetricsChart.ts │ │ │ │ │ │ ├── evaluation.api.ts │ │ │ │ │ │ ├── evaluation.constants.ts │ │ │ │ │ │ ├── evaluation.store.test.ts │ │ │ │ │ │ ├── evaluation.store.ts │ │ │ │ │ │ ├── evaluation.types.ts │ │ │ │ │ │ ├── evaluation.utils.test.ts │ │ │ │ │ │ ├── evaluation.utils.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ ├── EvaluationsRootView.test.ts │ │ │ │ │ │ ├── EvaluationsRootView.vue │ │ │ │ │ │ ├── EvaluationsView.test.ts │ │ │ │ │ │ ├── EvaluationsView.vue │ │ │ │ │ │ ├── TestRunDetailView.test.ts │ │ │ │ │ │ └── TestRunDetailView.vue │ │ │ │ │ ├── instanceAi/ │ │ │ │ │ │ ├── InstanceAiView.vue │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── BuilderCard.test.ts │ │ │ │ │ │ │ ├── InstanceAiCredentialSetup.test.ts │ │ │ │ │ │ │ ├── InstanceAiPreviewTabBar.test.ts │ │ │ │ │ │ │ ├── InstanceAiWorkflowPreview.test.ts │ │ │ │ │ │ │ ├── ToolCallStep.test.ts │ │ │ │ │ │ │ ├── agentResult.test.ts │ │ │ │ │ │ │ ├── agentTimeline.utils.test.ts │ │ │ │ │ │ │ ├── canvasPreview.utils.test.ts │ │ │ │ │ │ │ ├── composableIntegration.test.ts │ │ │ │ │ │ │ ├── createInstanceAiHarness.ts │ │ │ │ │ │ │ ├── instanceAi.reducer.test.ts │ │ │ │ │ │ │ ├── instanceAi.store.test.ts │ │ │ │ │ │ │ ├── toolLabels.test.ts │ │ │ │ │ │ │ ├── useCanvasPreview.test.ts │ │ │ │ │ │ │ ├── useEventRelay.test.ts │ │ │ │ │ │ │ ├── useExecutionPushEvents.test.ts │ │ │ │ │ │ │ └── useResponseFeedback.test.ts │ │ │ │ │ │ ├── agentResult.ts │ │ │ │ │ │ ├── agentTimeline.utils.ts │ │ │ │ │ │ ├── canvasPreview.utils.ts │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── AgentActivityTree.vue │ │ │ │ │ │ │ ├── AgentNodeSection.vue │ │ │ │ │ │ │ ├── AgentSection.vue │ │ │ │ │ │ │ ├── AgentTimeline.vue │ │ │ │ │ │ │ ├── AnsweredQuestions.vue │ │ │ │ │ │ │ ├── ArtifactCard.vue │ │ │ │ │ │ │ ├── AttachmentPreview.vue │ │ │ │ │ │ │ ├── BuilderCard.vue │ │ │ │ │ │ │ ├── DataTableCard.vue │ │ │ │ │ │ │ ├── DelegateCard.vue │ │ │ │ │ │ │ ├── DomainAccessApproval.vue │ │ │ │ │ │ │ ├── ExecutionPreviewCard.vue │ │ │ │ │ │ │ ├── InstanceAiArtifactsPanel.vue │ │ │ │ │ │ │ ├── InstanceAiConfirmationPanel.vue │ │ │ │ │ │ │ ├── InstanceAiCredentialSetup.vue │ │ │ │ │ │ │ ├── InstanceAiCredentialSetupModal.vue │ │ │ │ │ │ │ ├── InstanceAiDataTablePreview.vue │ │ │ │ │ │ │ ├── InstanceAiDebugPanel.vue │ │ │ │ │ │ │ ├── InstanceAiEmptyState.vue │ │ │ │ │ │ │ ├── InstanceAiInput.vue │ │ │ │ │ │ │ ├── InstanceAiMarkdown.vue │ │ │ │ │ │ │ ├── InstanceAiMemoryPanel.vue │ │ │ │ │ │ │ ├── InstanceAiMessage.vue │ │ │ │ │ │ │ ├── InstanceAiPreviewTabBar.vue │ │ │ │ │ │ │ ├── InstanceAiQuestions.vue │ │ │ │ │ │ │ ├── InstanceAiStatusBar.vue │ │ │ │ │ │ │ ├── InstanceAiThreadList.vue │ │ │ │ │ │ │ ├── InstanceAiToolCall.vue │ │ │ │ │ │ │ ├── InstanceAiWorkflowPreview.vue │ │ │ │ │ │ │ ├── InstanceAiWorkflowSetup.vue │ │ │ │ │ │ │ ├── PlanReviewPanel.vue │ │ │ │ │ │ │ ├── ResearchCard.vue │ │ │ │ │ │ │ ├── ResourceChip.vue │ │ │ │ │ │ │ ├── SubagentStepTimeline.vue │ │ │ │ │ │ │ ├── TaskChecklist.vue │ │ │ │ │ │ │ ├── ToolCallStep.vue │ │ │ │ │ │ │ ├── ToolResultCode.vue │ │ │ │ │ │ │ ├── ToolResultJson.vue │ │ │ │ │ │ │ ├── ToolResultMedia.vue │ │ │ │ │ │ │ ├── ToolResultRenderer.vue │ │ │ │ │ │ │ ├── ToolResultTable.vue │ │ │ │ │ │ │ ├── ToolResultText.vue │ │ │ │ │ │ │ ├── WorkflowMiniCanvas.vue │ │ │ │ │ │ │ └── settings/ │ │ │ │ │ │ │ ├── AdvancedSection.vue │ │ │ │ │ │ │ ├── LocalGatewaySection.vue │ │ │ │ │ │ │ ├── MemorySection.vue │ │ │ │ │ │ │ ├── ModelSection.vue │ │ │ │ │ │ │ ├── PermissionsSection.vue │ │ │ │ │ │ │ ├── SandboxSection.vue │ │ │ │ │ │ │ ├── SearchSection.vue │ │ │ │ │ │ │ └── useSettingsField.ts │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── instanceAi.api.ts │ │ │ │ │ │ ├── instanceAi.memory.api.ts │ │ │ │ │ │ ├── instanceAi.reducer.ts │ │ │ │ │ │ ├── instanceAi.settings.api.ts │ │ │ │ │ │ ├── instanceAi.store.ts │ │ │ │ │ │ ├── instanceAi.types.ts │ │ │ │ │ │ ├── instanceAiDebug.store.ts │ │ │ │ │ │ ├── instanceAiMemory.store.ts │ │ │ │ │ │ ├── instanceAiSettings.store.ts │ │ │ │ │ │ ├── module.descriptor.ts │ │ │ │ │ │ ├── toolLabels.ts │ │ │ │ │ │ ├── useCanvasPreview.ts │ │ │ │ │ │ ├── useEventRelay.ts │ │ │ │ │ │ ├── useExecutionPushEvents.ts │ │ │ │ │ │ ├── useResourceRegistry.ts │ │ │ │ │ │ ├── useResponseFeedback.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ └── SettingsInstanceAiView.vue │ │ │ │ │ ├── mcpAccess/ │ │ │ │ │ │ ├── SettingsMCPView.test.constants.ts │ │ │ │ │ │ ├── SettingsMCPView.test.ts │ │ │ │ │ │ ├── SettingsMCPView.vue │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── MCPEmptyState.vue │ │ │ │ │ │ │ ├── MCPWorkflowsSelect.test.ts │ │ │ │ │ │ │ ├── MCPWorkflowsSelect.vue │ │ │ │ │ │ │ ├── WorkflowLocation.test.ts │ │ │ │ │ │ │ ├── WorkflowLocation.vue │ │ │ │ │ │ │ ├── header/ │ │ │ │ │ │ │ │ ├── MCPHeaderActions.vue │ │ │ │ │ │ │ │ ├── McpAccessToggle.vue │ │ │ │ │ │ │ │ └── connectPopover/ │ │ │ │ │ │ │ │ ├── ConnectionParameter.vue │ │ │ │ │ │ │ │ ├── MCPAccessTokenPopoverTab.test.ts │ │ │ │ │ │ │ │ ├── MCPAccessTokenPopoverTab.vue │ │ │ │ │ │ │ │ ├── MCPOAuthPopoverTab.test.ts │ │ │ │ │ │ │ │ ├── MCPOAuthPopoverTab.vue │ │ │ │ │ │ │ │ ├── McpConnectPopover.test.ts │ │ │ │ │ │ │ │ └── McpConnectPopover.vue │ │ │ │ │ │ │ └── tabs/ │ │ │ │ │ │ │ ├── OAuthClientsTable.test.ts │ │ │ │ │ │ │ ├── OAuthClientsTable.vue │ │ │ │ │ │ │ ├── WorkflowsTable.test.ts │ │ │ │ │ │ │ └── WorkflowsTable.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ └── useMcp.ts │ │ │ │ │ │ ├── mcp.api.ts │ │ │ │ │ │ ├── mcp.constants.ts │ │ │ │ │ │ ├── mcp.store.ts │ │ │ │ │ │ ├── mcp.test.utils.ts │ │ │ │ │ │ ├── modals/ │ │ │ │ │ │ │ ├── MCPConnectWorkflowsModal.test.ts │ │ │ │ │ │ │ └── MCPConnectWorkflowsModal.vue │ │ │ │ │ │ └── module.descriptor.ts │ │ │ │ │ └── shared/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── ChatInputBase.vue │ │ │ │ │ │ ├── WizardNavigationFooter.test.ts │ │ │ │ │ │ └── WizardNavigationFooter.vue │ │ │ │ │ └── composables/ │ │ │ │ │ ├── useWizardNavigation.test.ts │ │ │ │ │ └── useWizardNavigation.ts │ │ │ │ ├── collaboration/ │ │ │ │ │ ├── collaboration/ │ │ │ │ │ │ ├── collaboration.store.test.ts │ │ │ │ │ │ ├── collaboration.store.ts │ │ │ │ │ │ └── components/ │ │ │ │ │ │ ├── CollaborationPane.test.ts │ │ │ │ │ │ └── CollaborationPane.vue │ │ │ │ │ └── projects/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── ProjectCardBadge.test.ts │ │ │ │ │ │ ├── ProjectCardBadge.vue │ │ │ │ │ │ ├── ProjectCreateResource.vue │ │ │ │ │ │ ├── ProjectCustomRolesUpgradeModal.test.ts │ │ │ │ │ │ ├── ProjectCustomRolesUpgradeModal.vue │ │ │ │ │ │ ├── ProjectDeleteDialog.test.ts │ │ │ │ │ │ ├── ProjectDeleteDialog.vue │ │ │ │ │ │ ├── ProjectExternalSecrets.test.ts │ │ │ │ │ │ ├── ProjectExternalSecrets.vue │ │ │ │ │ │ ├── ProjectHeader.test.ts │ │ │ │ │ │ ├── ProjectHeader.vue │ │ │ │ │ │ ├── ProjectIcon.vue │ │ │ │ │ │ ├── ProjectMembersActionsCell.test.ts │ │ │ │ │ │ ├── ProjectMembersActionsCell.vue │ │ │ │ │ │ ├── ProjectMembersRoleCell.test.ts │ │ │ │ │ │ ├── ProjectMembersRoleCell.vue │ │ │ │ │ │ ├── ProjectMembersTable.test.ts │ │ │ │ │ │ ├── ProjectMembersTable.vue │ │ │ │ │ │ ├── ProjectMoveResourceModal.test.ts │ │ │ │ │ │ ├── ProjectMoveResourceModal.vue │ │ │ │ │ │ ├── ProjectMoveResourceModalCredentialsList.vue │ │ │ │ │ │ ├── ProjectMoveSuccessToastMessage.test.ts │ │ │ │ │ │ ├── ProjectMoveSuccessToastMessage.vue │ │ │ │ │ │ ├── ProjectNavigation.test.ts │ │ │ │ │ │ ├── ProjectNavigation.vue │ │ │ │ │ │ ├── ProjectRoleContactAdminModal.test.ts │ │ │ │ │ │ ├── ProjectRoleContactAdminModal.vue │ │ │ │ │ │ ├── ProjectRoleUpgradeDialog.vue │ │ │ │ │ │ ├── ProjectSharing.test.ts │ │ │ │ │ │ ├── ProjectSharing.vue │ │ │ │ │ │ ├── ProjectSharingInfo.vue │ │ │ │ │ │ ├── ProjectTabs.test.ts │ │ │ │ │ │ ├── ProjectTabs.vue │ │ │ │ │ │ ├── RoleHoverPopover.test.ts │ │ │ │ │ │ └── RoleHoverPopover.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── useMoveResourceToProjectToast.ts │ │ │ │ │ │ └── useProjectPages.ts │ │ │ │ │ ├── projects.api.ts │ │ │ │ │ ├── projects.constants.ts │ │ │ │ │ ├── projects.routes.ts │ │ │ │ │ ├── projects.store.test.ts │ │ │ │ │ ├── projects.store.ts │ │ │ │ │ ├── projects.types.ts │ │ │ │ │ ├── projects.utils.test.ts │ │ │ │ │ ├── projects.utils.ts │ │ │ │ │ └── views/ │ │ │ │ │ ├── ProjectSettings.test.ts │ │ │ │ │ ├── ProjectSettings.vue │ │ │ │ │ ├── ProjectVariables.test.ts │ │ │ │ │ └── ProjectVariables.vue │ │ │ │ ├── core/ │ │ │ │ │ ├── auth/ │ │ │ │ │ │ ├── auth.eventBus.ts │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── ChangePasswordModal.test.ts │ │ │ │ │ │ │ ├── ChangePasswordModal.vue │ │ │ │ │ │ │ ├── ConfirmPasswordModal.test.ts │ │ │ │ │ │ │ ├── ConfirmPasswordModal.vue │ │ │ │ │ │ │ ├── MfaSetupModal.vue │ │ │ │ │ │ │ ├── PromptMfaCodeModal.vue │ │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ │ ├── ChangePasswordModal.test.ts.snap │ │ │ │ │ │ │ └── ConfirmPasswordModal.test.ts.snap │ │ │ │ │ │ └── views/ │ │ │ │ │ │ ├── AuthView.test.ts │ │ │ │ │ │ ├── AuthView.vue │ │ │ │ │ │ ├── ChangePasswordView.vue │ │ │ │ │ │ ├── ForgotMyPasswordView.test.ts │ │ │ │ │ │ ├── ForgotMyPasswordView.vue │ │ │ │ │ │ ├── MfaView.vue │ │ │ │ │ │ ├── SettingsPersonalView.test.ts │ │ │ │ │ │ ├── SettingsPersonalView.vue │ │ │ │ │ │ ├── SetupView.vue │ │ │ │ │ │ ├── SigninView.test.ts │ │ │ │ │ │ ├── SigninView.vue │ │ │ │ │ │ ├── SignoutView.vue │ │ │ │ │ │ ├── SignupView.test.ts │ │ │ │ │ │ └── SignupView.vue │ │ │ │ │ ├── dataTable/ │ │ │ │ │ │ ├── DataTableDetailsView.test.ts │ │ │ │ │ │ ├── DataTableDetailsView.vue │ │ │ │ │ │ ├── DataTableView.test.ts │ │ │ │ │ │ ├── DataTableView.vue │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── AddDataTableModal.vue │ │ │ │ │ │ │ ├── DataTableActions.test.ts │ │ │ │ │ │ │ ├── DataTableActions.vue │ │ │ │ │ │ │ ├── DataTableBreadcrumbs.test.ts │ │ │ │ │ │ │ ├── DataTableBreadcrumbs.vue │ │ │ │ │ │ │ ├── DataTableCard.test.ts │ │ │ │ │ │ │ ├── DataTableCard.vue │ │ │ │ │ │ │ ├── DownloadDataTableModal.test.ts │ │ │ │ │ │ │ ├── DownloadDataTableModal.vue │ │ │ │ │ │ │ ├── ImportCsvModal.test.ts │ │ │ │ │ │ │ ├── ImportCsvModal.vue │ │ │ │ │ │ │ ├── NodeStorageLimitCallout.vue │ │ │ │ │ │ │ └── dataGrid/ │ │ │ │ │ │ │ ├── AddColumnButton.test.ts │ │ │ │ │ │ │ ├── AddColumnButton.vue │ │ │ │ │ │ │ ├── AddRowButton.vue │ │ │ │ │ │ │ ├── ColumnHeader.test.ts │ │ │ │ │ │ │ ├── ColumnHeader.vue │ │ │ │ │ │ │ ├── DataTableTable.test.ts │ │ │ │ │ │ │ ├── DataTableTable.vue │ │ │ │ │ │ │ ├── ElDatePickerCellEditor.vue │ │ │ │ │ │ │ ├── ElDatePickerFilter.vue │ │ │ │ │ │ │ ├── NullEmptyCellRenderer.vue │ │ │ │ │ │ │ ├── OversizedCellRenderer.vue │ │ │ │ │ │ │ ├── n8nTheme.ts │ │ │ │ │ │ │ └── registerAgGridModulesOnce.ts │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useAgGrid.test.ts │ │ │ │ │ │ │ ├── useAgGrid.ts │ │ │ │ │ │ │ ├── useDataTableColumnFilters.test.ts │ │ │ │ │ │ │ ├── useDataTableColumnFilters.ts │ │ │ │ │ │ │ ├── useDataTableColumns.test.ts │ │ │ │ │ │ │ ├── useDataTableColumns.ts │ │ │ │ │ │ │ ├── useDataTableOperations.test.ts │ │ │ │ │ │ │ ├── useDataTableOperations.ts │ │ │ │ │ │ │ ├── useDataTablePagination.test.ts │ │ │ │ │ │ │ ├── useDataTablePagination.ts │ │ │ │ │ │ │ ├── useDataTableSelection.test.ts │ │ │ │ │ │ │ ├── useDataTableSelection.ts │ │ │ │ │ │ │ ├── useDataTableTypes.test.ts │ │ │ │ │ │ │ ├── useDataTableTypes.ts │ │ │ │ │ │ │ ├── useDatePickerCommon.test.ts │ │ │ │ │ │ │ └── useDatePickerCommon.ts │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── dataTable.api.test.ts │ │ │ │ │ │ ├── dataTable.api.ts │ │ │ │ │ │ ├── dataTable.store.test.ts │ │ │ │ │ │ ├── dataTable.store.ts │ │ │ │ │ │ ├── dataTable.types.ts │ │ │ │ │ │ ├── module.descriptor.ts │ │ │ │ │ │ ├── typeGuards.test.ts │ │ │ │ │ │ ├── typeGuards.ts │ │ │ │ │ │ ├── types/ │ │ │ │ │ │ │ └── dataTableFilters.types.ts │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ ├── utils/ │ │ │ │ │ │ │ ├── columnUtils.test.ts │ │ │ │ │ │ │ ├── columnUtils.ts │ │ │ │ │ │ │ ├── filterMappings.ts │ │ │ │ │ │ │ ├── filterProcessors.test.ts │ │ │ │ │ │ │ ├── filterProcessors.ts │ │ │ │ │ │ │ ├── typeUtils.test.ts │ │ │ │ │ │ │ └── typeUtils.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ └── folders/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── DeleteFolderModal.vue │ │ │ │ │ │ ├── EmptySharedSectionActionBox.vue │ │ │ │ │ │ ├── FolderBreadcrumbs.test.ts │ │ │ │ │ │ ├── FolderBreadcrumbs.vue │ │ │ │ │ │ ├── FolderCard.test.ts │ │ │ │ │ │ ├── FolderCard.vue │ │ │ │ │ │ ├── MoveToFolderDropdown.vue │ │ │ │ │ │ ├── MoveToFolderModal.test.ts │ │ │ │ │ │ ├── MoveToFolderModal.vue │ │ │ │ │ │ ├── ProjectBreadcrumb.test.ts │ │ │ │ │ │ └── ProjectBreadcrumb.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── useFolders.test.ts │ │ │ │ │ │ ├── useFolders.ts │ │ │ │ │ │ └── useParentFolder.ts │ │ │ │ │ ├── folders.api.ts │ │ │ │ │ ├── folders.constants.ts │ │ │ │ │ ├── folders.store.test.ts │ │ │ │ │ ├── folders.store.ts │ │ │ │ │ └── folders.types.ts │ │ │ │ ├── credentials/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── credentials.store.test.ts │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── CredentialCard.test.ts │ │ │ │ │ │ ├── CredentialCard.vue │ │ │ │ │ │ ├── CredentialEdit/ │ │ │ │ │ │ │ ├── CredentialConfig.test.ts │ │ │ │ │ │ │ ├── CredentialConfig.vue │ │ │ │ │ │ │ ├── CredentialEdit.test.ts │ │ │ │ │ │ │ ├── CredentialEdit.vue │ │ │ │ │ │ │ ├── CredentialInfo.vue │ │ │ │ │ │ │ ├── CredentialInputs.vue │ │ │ │ │ │ │ ├── CredentialModeSelector.test.ts │ │ │ │ │ │ │ ├── CredentialModeSelector.vue │ │ │ │ │ │ │ ├── CredentialSharing.ee.test.ts │ │ │ │ │ │ │ ├── CredentialSharing.ee.vue │ │ │ │ │ │ │ └── GoogleAuthButton.vue │ │ │ │ │ │ ├── CredentialIcon.test.ts │ │ │ │ │ │ ├── CredentialIcon.vue │ │ │ │ │ │ ├── CredentialPicker/ │ │ │ │ │ │ │ ├── CredentialPicker.test.constants.ts │ │ │ │ │ │ │ ├── CredentialPicker.test.ts │ │ │ │ │ │ │ ├── CredentialPicker.vue │ │ │ │ │ │ │ └── CredentialsDropdown.vue │ │ │ │ │ │ ├── CredentialsSelect.vue │ │ │ │ │ │ ├── CredentialsSelectModal.vue │ │ │ │ │ │ ├── NodeCredentials.test.ts │ │ │ │ │ │ ├── NodeCredentials.vue │ │ │ │ │ │ └── ScopesNotice.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── useCredentialOAuth.test.ts │ │ │ │ │ │ ├── useCredentialOAuth.ts │ │ │ │ │ │ └── useNodeCredentialOptions.ts │ │ │ │ │ ├── credentials.api.ts │ │ │ │ │ ├── credentials.constants.ts │ │ │ │ │ ├── credentials.ee.api.ts │ │ │ │ │ ├── credentials.store.ts │ │ │ │ │ ├── credentials.test.ts │ │ │ │ │ ├── credentials.types.ts │ │ │ │ │ ├── quickConnect/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── QuickConnectBanner.test.ts │ │ │ │ │ │ │ ├── QuickConnectBanner.vue │ │ │ │ │ │ │ ├── QuickConnectButton.test.ts │ │ │ │ │ │ │ └── QuickConnectButton.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useQuickConnect.test.ts │ │ │ │ │ │ │ └── useQuickConnect.ts │ │ │ │ │ │ └── quickConnect.api.ts │ │ │ │ │ └── views/ │ │ │ │ │ ├── CredentialsView.test.ts │ │ │ │ │ └── CredentialsView.vue │ │ │ │ ├── execution/ │ │ │ │ │ ├── executions/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── ConcurrentExecutionsHeader.test.ts │ │ │ │ │ │ │ ├── ConcurrentExecutionsHeader.vue │ │ │ │ │ │ │ ├── DebugPaywallModal.vue │ │ │ │ │ │ │ ├── ExecutionStopAllText.vue │ │ │ │ │ │ │ ├── ExecutionsFilter.test.ts │ │ │ │ │ │ │ ├── ExecutionsFilter.vue │ │ │ │ │ │ │ ├── ExecutionsTime.vue │ │ │ │ │ │ │ ├── RevealDataWarning.vue │ │ │ │ │ │ │ ├── ViewSubExecution.vue │ │ │ │ │ │ │ ├── global/ │ │ │ │ │ │ │ │ ├── GlobalExecutionsList.test.ts │ │ │ │ │ │ │ │ ├── GlobalExecutionsList.vue │ │ │ │ │ │ │ │ ├── GlobalExecutionsListItem.test.ts │ │ │ │ │ │ │ │ ├── GlobalExecutionsListItem.vue │ │ │ │ │ │ │ │ ├── GlobalExecutionsListItemQueuedTooltip.test.ts │ │ │ │ │ │ │ │ └── GlobalExecutionsListItemQueuedTooltip.vue │ │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ │ ├── VoteButtons.vue │ │ │ │ │ │ │ ├── WorkflowExecutionAnnotationPanel.ee.vue │ │ │ │ │ │ │ ├── WorkflowExecutionAnnotationTags.ee.test.ts │ │ │ │ │ │ │ ├── WorkflowExecutionAnnotationTags.ee.vue │ │ │ │ │ │ │ ├── WorkflowExecutionsCard.test.ts │ │ │ │ │ │ │ ├── WorkflowExecutionsCard.vue │ │ │ │ │ │ │ ├── WorkflowExecutionsInfoAccordion.vue │ │ │ │ │ │ │ ├── WorkflowExecutionsLandingPage.vue │ │ │ │ │ │ │ ├── WorkflowExecutionsList.vue │ │ │ │ │ │ │ ├── WorkflowExecutionsPreview.test.ts │ │ │ │ │ │ │ ├── WorkflowExecutionsPreview.vue │ │ │ │ │ │ │ ├── WorkflowExecutionsSidebar.test.ts │ │ │ │ │ │ │ └── WorkflowExecutionsSidebar.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useExecutionData.ts │ │ │ │ │ │ │ ├── useExecutionDebugging.test.ts │ │ │ │ │ │ │ ├── useExecutionDebugging.ts │ │ │ │ │ │ │ ├── useExecutionHelpers.test.ts │ │ │ │ │ │ │ ├── useExecutionHelpers.ts │ │ │ │ │ │ │ ├── useExecutionRedaction.test.ts │ │ │ │ │ │ │ └── useExecutionRedaction.ts │ │ │ │ │ │ ├── executions.constants.ts │ │ │ │ │ │ ├── executions.store.test.ts │ │ │ │ │ │ ├── executions.store.ts │ │ │ │ │ │ ├── executions.types.ts │ │ │ │ │ │ ├── executions.utils.test.ts │ │ │ │ │ │ ├── executions.utils.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ ├── ExecutionsView.vue │ │ │ │ │ │ └── WorkflowExecutionsView.vue │ │ │ │ │ ├── insights/ │ │ │ │ │ │ ├── chartjs.utils.ts │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── InsightsDashboard.test.ts │ │ │ │ │ │ │ ├── InsightsDashboard.vue │ │ │ │ │ │ │ ├── InsightsDataRangePicker.vue │ │ │ │ │ │ │ ├── InsightsPaywall.vue │ │ │ │ │ │ │ ├── InsightsSummary.test.ts │ │ │ │ │ │ │ ├── InsightsSummary.vue │ │ │ │ │ │ │ ├── InsightsUpgradeModal.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── InsightsSummary.test.ts.snap │ │ │ │ │ │ │ ├── charts/ │ │ │ │ │ │ │ │ ├── InsightsChartAverageRuntime.vue │ │ │ │ │ │ │ │ ├── InsightsChartFailed.vue │ │ │ │ │ │ │ │ ├── InsightsChartFailureRate.vue │ │ │ │ │ │ │ │ ├── InsightsChartTimeSaved.vue │ │ │ │ │ │ │ │ ├── InsightsChartTotal.vue │ │ │ │ │ │ │ │ └── insightChartProps.ts │ │ │ │ │ │ │ └── tables/ │ │ │ │ │ │ │ ├── InsightsTableWorkflows.test.ts │ │ │ │ │ │ │ └── InsightsTableWorkflows.vue │ │ │ │ │ │ ├── insights.api.test.ts │ │ │ │ │ │ ├── insights.api.ts │ │ │ │ │ │ ├── insights.constants.ts │ │ │ │ │ │ ├── insights.store.test.ts │ │ │ │ │ │ ├── insights.store.ts │ │ │ │ │ │ ├── insights.types.ts │ │ │ │ │ │ ├── insights.utils.test.ts │ │ │ │ │ │ ├── insights.utils.ts │ │ │ │ │ │ └── module.descriptor.ts │ │ │ │ │ └── logs/ │ │ │ │ │ ├── __test__/ │ │ │ │ │ │ ├── data.ts │ │ │ │ │ │ ├── mocks.ts │ │ │ │ │ │ └── useChatMessaging.test.ts │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── ChatMessagesPanel.vue │ │ │ │ │ │ ├── DemoFooter.vue │ │ │ │ │ │ ├── LogDetailsPanel.test.ts │ │ │ │ │ │ ├── LogDetailsPanel.vue │ │ │ │ │ │ ├── LogsOverviewPanel.test.ts │ │ │ │ │ │ ├── LogsOverviewPanel.vue │ │ │ │ │ │ ├── LogsOverviewRow.vue │ │ │ │ │ │ ├── LogsOverviewRows.vue │ │ │ │ │ │ ├── LogsPanel.test.ts │ │ │ │ │ │ ├── LogsPanel.vue │ │ │ │ │ │ ├── LogsPanelActions.vue │ │ │ │ │ │ ├── LogsPanelHeader.vue │ │ │ │ │ │ ├── LogsViewConsumedTokenCountText.vue │ │ │ │ │ │ ├── LogsViewExecutionSummary.vue │ │ │ │ │ │ ├── LogsViewKeyboardEventListener.vue │ │ │ │ │ │ ├── LogsViewNodeName.vue │ │ │ │ │ │ ├── LogsViewRunData.test.ts │ │ │ │ │ │ ├── LogsViewRunData.vue │ │ │ │ │ │ ├── MessageOptionAction.vue │ │ │ │ │ │ └── MessageOptionTooltip.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── useChatMessaging.ts │ │ │ │ │ │ ├── useChatState.test.ts │ │ │ │ │ │ ├── useChatState.ts │ │ │ │ │ │ ├── useClearExecutionButtonVisible.ts │ │ │ │ │ │ ├── useLogsExecutionData.test.ts │ │ │ │ │ │ ├── useLogsExecutionData.ts │ │ │ │ │ │ ├── useLogsPanelLayout.ts │ │ │ │ │ │ ├── useLogsSelection.ts │ │ │ │ │ │ ├── useLogsTreeExpand.ts │ │ │ │ │ │ ├── usePopOutWindow.test.ts │ │ │ │ │ │ └── usePopOutWindow.ts │ │ │ │ │ ├── logs.constants.ts │ │ │ │ │ ├── logs.types.ts │ │ │ │ │ ├── logs.utils.test.ts │ │ │ │ │ └── logs.utils.ts │ │ │ │ ├── integrations/ │ │ │ │ │ ├── externalSecrets.ee/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── ExternalSecretsProviderCard.ee.vue │ │ │ │ │ │ │ ├── ExternalSecretsProviderConnectionSwitch.ee.vue │ │ │ │ │ │ │ ├── ExternalSecretsProviderImage.ee.vue │ │ │ │ │ │ │ └── ExternalSecretsProviderModal.ee.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ └── useExternalSecretsProvider.ts │ │ │ │ │ │ ├── externalSecrets.ee.store.test.ts │ │ │ │ │ │ ├── externalSecrets.ee.store.ts │ │ │ │ │ │ ├── externalSecrets.types.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ ├── SettingsExternalSecrets.test.ts │ │ │ │ │ │ └── SettingsExternalSecrets.vue │ │ │ │ │ ├── logStreaming.ee/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── EventDestinationCard.vue │ │ │ │ │ │ │ ├── EventDestinationSettingsModal.vue │ │ │ │ │ │ │ ├── EventSelection.spec.ts │ │ │ │ │ │ │ └── EventSelection.vue │ │ │ │ │ │ ├── logStreaming.constants.ts │ │ │ │ │ │ ├── logStreaming.store.test.ts │ │ │ │ │ │ ├── logStreaming.store.ts │ │ │ │ │ │ ├── logStreaming.utils.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ └── SettingsLogStreamingView.vue │ │ │ │ │ ├── secretsProviders.ee/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── DeleteSecretsProviderModal.ee.test.ts │ │ │ │ │ │ │ ├── DeleteSecretsProviderModal.ee.vue │ │ │ │ │ │ │ ├── SecretsProviderConnectionCard.ee.vue │ │ │ │ │ │ │ ├── SecretsProviderConnectionCard.test.ts │ │ │ │ │ │ │ ├── SecretsProviderConnectionModal.ee.test.ts │ │ │ │ │ │ │ ├── SecretsProviderConnectionModal.ee.vue │ │ │ │ │ │ │ ├── SecretsProviderImage.ee.vue │ │ │ │ │ │ │ └── SecretsProvidersEmptyState.ee.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useConnectionModal.ee.test.ts │ │ │ │ │ │ │ ├── useConnectionModal.ee.ts │ │ │ │ │ │ │ ├── useSecretsProviderConnection.ee.ts │ │ │ │ │ │ │ ├── useSecretsProvidersList.ee.test.ts │ │ │ │ │ │ │ └── useSecretsProvidersList.ee.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ ├── SettingsSecretsProviders.ee.vue │ │ │ │ │ │ └── SettingsSecretsProviders.test.ts │ │ │ │ │ └── sourceControl.ee/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── SourceControlInitializationErrorMessage.vue │ │ │ │ │ │ ├── SourceControlPullModal.test.ts │ │ │ │ │ │ ├── SourceControlPullModal.vue │ │ │ │ │ │ ├── SourceControlPullResultModal.vue │ │ │ │ │ │ ├── SourceControlPushModal.test.ts │ │ │ │ │ │ └── SourceControlPushModal.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── useRevealWorkflowInScroller.test.ts │ │ │ │ │ │ ├── useRevealWorkflowInScroller.ts │ │ │ │ │ │ ├── useSourceControlFileList.test.ts │ │ │ │ │ │ ├── useSourceControlFileList.ts │ │ │ │ │ │ ├── useWorkflowTreeRows.test.ts │ │ │ │ │ │ └── useWorkflowTreeRows.ts │ │ │ │ │ ├── sourceControl.api.test.ts │ │ │ │ │ ├── sourceControl.api.ts │ │ │ │ │ ├── sourceControl.constants.ts │ │ │ │ │ ├── sourceControl.eventBus.ts │ │ │ │ │ ├── sourceControl.store.test.ts │ │ │ │ │ ├── sourceControl.store.ts │ │ │ │ │ ├── sourceControl.types.ts │ │ │ │ │ ├── sourceControl.utils.test.ts │ │ │ │ │ ├── sourceControl.utils.ts │ │ │ │ │ └── views/ │ │ │ │ │ ├── SettingsSourceControl.test.ts │ │ │ │ │ └── SettingsSourceControl.vue │ │ │ │ ├── ndv/ │ │ │ │ │ ├── panel/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── InputNodeSelect.vue │ │ │ │ │ │ │ ├── InputPanel.test.ts │ │ │ │ │ │ │ ├── InputPanel.vue │ │ │ │ │ │ │ ├── NDVDraggablePanels.vue │ │ │ │ │ │ │ ├── NDVEmptyState.vue │ │ │ │ │ │ │ ├── NDVFloatingNodes.vue │ │ │ │ │ │ │ ├── NDVHeader.test.ts │ │ │ │ │ │ │ ├── NDVHeader.vue │ │ │ │ │ │ │ ├── NDVSubConnections.test.ts │ │ │ │ │ │ │ ├── NDVSubConnections.vue │ │ │ │ │ │ │ ├── OutputPanel.vue │ │ │ │ │ │ │ ├── PanelDragButton.vue │ │ │ │ │ │ │ ├── PanelDragButtonV2.vue │ │ │ │ │ │ │ ├── RedactedDataState.test.ts │ │ │ │ │ │ │ ├── RedactedDataState.vue │ │ │ │ │ │ │ ├── TriggerPanel.test.ts │ │ │ │ │ │ │ ├── TriggerPanel.vue │ │ │ │ │ │ │ ├── WireMeUp.vue │ │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ │ ├── InputPanel.test.ts.snap │ │ │ │ │ │ │ └── NDVSubConnections.test.ts.snap │ │ │ │ │ │ └── composables/ │ │ │ │ │ │ ├── useNdvLayout.test.ts │ │ │ │ │ │ └── useNdvLayout.ts │ │ │ │ │ ├── parameters/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── AssignmentCollection/ │ │ │ │ │ │ │ │ ├── Assignment.test.ts │ │ │ │ │ │ │ │ ├── Assignment.vue │ │ │ │ │ │ │ │ ├── AssignmentCollection.test.ts │ │ │ │ │ │ │ │ ├── AssignmentCollection.vue │ │ │ │ │ │ │ │ ├── TypeSelect.test.ts │ │ │ │ │ │ │ │ ├── TypeSelect.vue │ │ │ │ │ │ │ │ └── constants.ts │ │ │ │ │ │ │ ├── ButtonParameter/ │ │ │ │ │ │ │ │ ├── ButtonParameter.test.ts │ │ │ │ │ │ │ │ └── ButtonParameter.vue │ │ │ │ │ │ │ ├── Collection/ │ │ │ │ │ │ │ │ ├── CollectionParameter.test.ts │ │ │ │ │ │ │ │ ├── CollectionParameter.vue │ │ │ │ │ │ │ │ ├── CollectionParameterLegacy.test.ts │ │ │ │ │ │ │ │ ├── CollectionParameterLegacy.vue │ │ │ │ │ │ │ │ ├── CollectionParameterNew.test.ts │ │ │ │ │ │ │ │ └── CollectionParameterNew.vue │ │ │ │ │ │ │ ├── ExpressionEditModal.test.ts │ │ │ │ │ │ │ ├── ExpressionEditModal.vue │ │ │ │ │ │ │ ├── ExpressionEditorModal/ │ │ │ │ │ │ │ │ ├── ExpressionEditorModalInput.test.ts │ │ │ │ │ │ │ │ ├── ExpressionEditorModalInput.vue │ │ │ │ │ │ │ │ └── theme.ts │ │ │ │ │ │ │ ├── ExpressionFunctionIcon.vue │ │ │ │ │ │ │ ├── ExpressionParameterInput.test.ts │ │ │ │ │ │ │ ├── ExpressionParameterInput.vue │ │ │ │ │ │ │ ├── FilterConditions/ │ │ │ │ │ │ │ │ ├── CombinatorSelect.vue │ │ │ │ │ │ │ │ ├── Condition.vue │ │ │ │ │ │ │ │ ├── FilterConditions.test.ts │ │ │ │ │ │ │ │ ├── FilterConditions.vue │ │ │ │ │ │ │ │ ├── OperatorSelect.vue │ │ │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ ├── FixedCollection/ │ │ │ │ │ │ │ │ ├── FixedCollectionItem.test.ts │ │ │ │ │ │ │ │ ├── FixedCollectionItem.vue │ │ │ │ │ │ │ │ ├── FixedCollectionItemList.vue │ │ │ │ │ │ │ │ ├── FixedCollectionParameter.test.ts │ │ │ │ │ │ │ │ ├── FixedCollectionParameter.vue │ │ │ │ │ │ │ │ ├── FixedCollectionParameterLegacy.test.ts │ │ │ │ │ │ │ │ ├── FixedCollectionParameterLegacy.vue │ │ │ │ │ │ │ │ ├── FixedCollectionParameterNew.test.ts │ │ │ │ │ │ │ │ └── FixedCollectionParameterNew.vue │ │ │ │ │ │ │ ├── ImportCurlModal.test.ts │ │ │ │ │ │ │ ├── ImportCurlModal.vue │ │ │ │ │ │ │ ├── ImportCurlParameter.vue │ │ │ │ │ │ │ ├── InputTriple/ │ │ │ │ │ │ │ │ ├── InputTriple.test.ts │ │ │ │ │ │ │ │ └── InputTriple.vue │ │ │ │ │ │ │ ├── MultipleParameter.test.ts │ │ │ │ │ │ │ ├── MultipleParameter.vue │ │ │ │ │ │ │ ├── ParameterInput.test.ts │ │ │ │ │ │ │ ├── ParameterInput.vue │ │ │ │ │ │ │ ├── ParameterInputExpanded.test.ts │ │ │ │ │ │ │ ├── ParameterInputExpanded.vue │ │ │ │ │ │ │ ├── ParameterInputFull.test.ts │ │ │ │ │ │ │ ├── ParameterInputFull.vue │ │ │ │ │ │ │ ├── ParameterInputHint.vue │ │ │ │ │ │ │ ├── ParameterInputList.test.constants.ts │ │ │ │ │ │ │ ├── ParameterInputList.test.ts │ │ │ │ │ │ │ ├── ParameterInputList.vue │ │ │ │ │ │ │ ├── ParameterInputOverrides/ │ │ │ │ │ │ │ │ ├── FromAiOverrideButton.vue │ │ │ │ │ │ │ │ ├── FromAiOverrideField.vue │ │ │ │ │ │ │ │ ├── ParameterOverrideSelectableList.test.ts │ │ │ │ │ │ │ │ └── ParameterOverrideSelectableList.vue │ │ │ │ │ │ │ ├── ParameterInputWrapper.test.ts │ │ │ │ │ │ │ ├── ParameterInputWrapper.vue │ │ │ │ │ │ │ ├── ParameterIssues.vue │ │ │ │ │ │ │ ├── ParameterOptions.test.ts │ │ │ │ │ │ │ ├── ParameterOptions.vue │ │ │ │ │ │ │ ├── ResourceLocator/ │ │ │ │ │ │ │ │ ├── ResourceLocator.test.constants.ts │ │ │ │ │ │ │ │ ├── ResourceLocator.test.ts │ │ │ │ │ │ │ │ ├── ResourceLocator.vue │ │ │ │ │ │ │ │ ├── ResourceLocatorDropdown.test.ts │ │ │ │ │ │ │ │ ├── ResourceLocatorDropdown.vue │ │ │ │ │ │ │ │ └── resourceLocator.scss │ │ │ │ │ │ │ ├── ResourceMapper/ │ │ │ │ │ │ │ │ ├── MappingFields.vue │ │ │ │ │ │ │ │ ├── MappingModeSelect.vue │ │ │ │ │ │ │ │ ├── MatchingColumnsSelect.vue │ │ │ │ │ │ │ │ ├── ResourceMapper.test.constants.ts │ │ │ │ │ │ │ │ ├── ResourceMapper.test.ts │ │ │ │ │ │ │ │ ├── ResourceMapper.test.utils.ts │ │ │ │ │ │ │ │ └── ResourceMapper.vue │ │ │ │ │ │ │ ├── TextEdit.vue │ │ │ │ │ │ │ ├── WorkflowSelectorParameterInput/ │ │ │ │ │ │ │ │ ├── WorkflowSelectorParameterInput.test.ts │ │ │ │ │ │ │ │ └── WorkflowSelectorParameterInput.vue │ │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ │ └── MultipleParameter.test.ts.snap │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useNodeSpecificationValues.ts │ │ │ │ │ │ │ ├── useWorkflowResourceLocatorDropdown.ts │ │ │ │ │ │ │ ├── useWorkflowResourceLocatorModes.ts │ │ │ │ │ │ │ ├── useWorkflowResourcesLocator.test.ts │ │ │ │ │ │ │ └── useWorkflowResourcesLocator.ts │ │ │ │ │ │ └── utils/ │ │ │ │ │ │ ├── assignmentCollection.utils.ts │ │ │ │ │ │ ├── buttonParameter.utils.test.ts │ │ │ │ │ │ ├── buttonParameter.utils.ts │ │ │ │ │ │ ├── fromAIOverride.utils.test.ts │ │ │ │ │ │ └── fromAIOverride.utils.ts │ │ │ │ │ ├── runData/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── BinaryDataDisplay.vue │ │ │ │ │ │ │ ├── BinaryDataDisplayEmbed.vue │ │ │ │ │ │ │ ├── BinaryDataViewModal.test.ts │ │ │ │ │ │ │ ├── BinaryDataViewModal.vue │ │ │ │ │ │ │ ├── BinaryEntryDataTable.test.ts │ │ │ │ │ │ │ ├── BinaryEntryDataTable.vue │ │ │ │ │ │ │ ├── MappingPill.vue │ │ │ │ │ │ │ ├── RunData.test.ts │ │ │ │ │ │ │ ├── RunData.vue │ │ │ │ │ │ │ ├── RunDataBinary.vue │ │ │ │ │ │ │ ├── RunDataDisplayModeSelect.vue │ │ │ │ │ │ │ ├── RunDataHtml.vue │ │ │ │ │ │ │ ├── RunDataItemCount.vue │ │ │ │ │ │ │ ├── RunDataJson.test.ts │ │ │ │ │ │ │ ├── RunDataJson.vue │ │ │ │ │ │ │ ├── RunDataJsonActions.test.ts │ │ │ │ │ │ │ ├── RunDataJsonActions.vue │ │ │ │ │ │ │ ├── RunDataMarkdown.test.ts │ │ │ │ │ │ │ ├── RunDataMarkdown.vue │ │ │ │ │ │ │ ├── RunDataPaginationBar.vue │ │ │ │ │ │ │ ├── RunDataParsedAiContent.test.ts │ │ │ │ │ │ │ ├── RunDataParsedAiContent.vue │ │ │ │ │ │ │ ├── RunDataPinButton.test.ts │ │ │ │ │ │ │ ├── RunDataPinButton.vue │ │ │ │ │ │ │ ├── RunDataSearch.test.ts │ │ │ │ │ │ │ ├── RunDataSearch.vue │ │ │ │ │ │ │ ├── RunDataTable.test.ts │ │ │ │ │ │ │ ├── RunDataTable.vue │ │ │ │ │ │ │ ├── RunInfo.test.ts │ │ │ │ │ │ │ ├── RunInfo.vue │ │ │ │ │ │ │ ├── TextWithHighlights.test.ts │ │ │ │ │ │ │ ├── TextWithHighlights.vue │ │ │ │ │ │ │ ├── VirtualSchema.test.ts │ │ │ │ │ │ │ ├── VirtualSchema.vue │ │ │ │ │ │ │ ├── VirtualSchemaHeader.vue │ │ │ │ │ │ │ ├── VirtualSchemaItem.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ ├── RunDataJson.test.ts.snap │ │ │ │ │ │ │ │ └── VirtualSchema.test.ts.snap │ │ │ │ │ │ │ ├── ai/ │ │ │ │ │ │ │ │ ├── AiRunContentBlock.test.ts │ │ │ │ │ │ │ │ ├── AiRunContentBlock.vue │ │ │ │ │ │ │ │ ├── RunDataAi.test.ts │ │ │ │ │ │ │ │ ├── RunDataAi.vue │ │ │ │ │ │ │ │ ├── RunDataAiContent.vue │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ └── error/ │ │ │ │ │ │ │ ├── NodeErrorView.test.ts │ │ │ │ │ │ │ └── NodeErrorView.vue │ │ │ │ │ │ ├── schemaPreview.api.test.ts │ │ │ │ │ │ ├── schemaPreview.api.ts │ │ │ │ │ │ ├── schemaPreview.store.test.ts │ │ │ │ │ │ └── schemaPreview.store.ts │ │ │ │ │ ├── settings/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── NodeSettings.vue │ │ │ │ │ │ │ ├── NodeSettingsHeader.vue │ │ │ │ │ │ │ ├── NodeSettingsHint.vue │ │ │ │ │ │ │ ├── NodeSettingsInvalidNodeWarning.test.ts │ │ │ │ │ │ │ ├── NodeSettingsInvalidNodeWarning.vue │ │ │ │ │ │ │ ├── NodeSettingsTabs.test.ts │ │ │ │ │ │ │ ├── NodeSettingsTabs.vue │ │ │ │ │ │ │ └── NodeWebhooks.vue │ │ │ │ │ │ └── composables/ │ │ │ │ │ │ ├── useNodeSettingsParameters.test.ts │ │ │ │ │ │ └── useNodeSettingsParameters.ts │ │ │ │ │ └── shared/ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ └── useBinaryDataAccessTooltip.ts │ │ │ │ │ ├── ndv.constants.ts │ │ │ │ │ ├── ndv.eventBus.ts │ │ │ │ │ ├── ndv.store.ts │ │ │ │ │ ├── ndv.types.ts │ │ │ │ │ ├── ndv.utils.test.ts │ │ │ │ │ ├── ndv.utils.ts │ │ │ │ │ └── views/ │ │ │ │ │ ├── NodeDetailsView.test.ts │ │ │ │ │ ├── NodeDetailsView.vue │ │ │ │ │ ├── NodeDetailsViewV2.test.ts │ │ │ │ │ └── NodeDetailsViewV2.vue │ │ │ │ ├── project-roles/ │ │ │ │ │ ├── ProjectRoleView.test.ts │ │ │ │ │ ├── ProjectRoleView.vue │ │ │ │ │ ├── ProjectRolesView.test.ts │ │ │ │ │ ├── ProjectRolesView.vue │ │ │ │ │ ├── RoleAssignmentsTab.test.ts │ │ │ │ │ ├── RoleAssignmentsTab.vue │ │ │ │ │ ├── RoleProjectMembersModal.vue │ │ │ │ │ └── projectRoleScopes.ts │ │ │ │ ├── resolvers/ │ │ │ │ │ ├── ResolversView.test.ts │ │ │ │ │ ├── ResolversView.vue │ │ │ │ │ ├── components/ │ │ │ │ │ │ └── ResolverDeleteConfirmMessage.vue │ │ │ │ │ └── composables/ │ │ │ │ │ ├── useCredentialResolvers.test.ts │ │ │ │ │ ├── useCredentialResolvers.ts │ │ │ │ │ ├── useDynamicCredentials.test.ts │ │ │ │ │ └── useDynamicCredentials.ts │ │ │ │ ├── settings/ │ │ │ │ │ ├── apiKeys/ │ │ │ │ │ │ ├── apiKeys.constants.ts │ │ │ │ │ │ ├── apiKeys.store.ts │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── ApiKeyCard.vue │ │ │ │ │ │ │ ├── ApiKeyCreateOrEditModal.test.ts │ │ │ │ │ │ │ ├── ApiKeyCreateOrEditModal.vue │ │ │ │ │ │ │ └── ApiKeyScopes.vue │ │ │ │ │ │ └── views/ │ │ │ │ │ │ ├── SettingsApiView.test.ts │ │ │ │ │ │ └── SettingsApiView.vue │ │ │ │ │ ├── communityNodes/ │ │ │ │ │ │ ├── communityNodes.constants.ts │ │ │ │ │ │ ├── communityNodes.store.ts │ │ │ │ │ │ ├── communityNodes.types.ts │ │ │ │ │ │ ├── communityNodes.utils.test.ts │ │ │ │ │ │ ├── communityNodes.utils.ts │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── CommunityPackageCard.test.ts │ │ │ │ │ │ │ ├── CommunityPackageCard.vue │ │ │ │ │ │ │ ├── CommunityPackageInstallModal.test.ts │ │ │ │ │ │ │ ├── CommunityPackageInstallModal.vue │ │ │ │ │ │ │ ├── CommunityPackageManageConfirmModal.test.ts │ │ │ │ │ │ │ ├── CommunityPackageManageConfirmModal.vue │ │ │ │ │ │ │ ├── ContactAdministratorToInstall.vue │ │ │ │ │ │ │ ├── NodesInWorkflowTable.test.ts │ │ │ │ │ │ │ ├── NodesInWorkflowTable.vue │ │ │ │ │ │ │ └── nodeCreator/ │ │ │ │ │ │ │ ├── CommunityNodeDetails.test.ts │ │ │ │ │ │ │ ├── CommunityNodeDetails.vue │ │ │ │ │ │ │ ├── CommunityNodeDocsLink.vue │ │ │ │ │ │ │ ├── CommunityNodeFooter.test.ts │ │ │ │ │ │ │ ├── CommunityNodeFooter.vue │ │ │ │ │ │ │ ├── CommunityNodeInfo.test.ts │ │ │ │ │ │ │ ├── CommunityNodeInfo.vue │ │ │ │ │ │ │ ├── CommunityNodeInstallHint.vue │ │ │ │ │ │ │ └── CommunityNodeUpdateInfo.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useInstallNode.test.ts │ │ │ │ │ │ │ ├── useInstallNode.ts │ │ │ │ │ │ │ ├── useInstalledCommunityPackage.test.ts │ │ │ │ │ │ │ └── useInstalledCommunityPackage.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ └── SettingsCommunityNodesView.vue │ │ │ │ │ ├── environments.ee/ │ │ │ │ │ │ ├── completions/ │ │ │ │ │ │ │ ├── variables.completions.test.ts │ │ │ │ │ │ │ └── variables.completions.ts │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── VariableModal.test.ts │ │ │ │ │ │ │ ├── VariableModal.vue │ │ │ │ │ │ │ ├── VariablesForm.vue │ │ │ │ │ │ │ ├── VariablesUsageBadge.test.ts │ │ │ │ │ │ │ └── VariablesUsageBadge.vue │ │ │ │ │ │ ├── environments.api.ts │ │ │ │ │ │ ├── environments.constants.ts │ │ │ │ │ │ ├── environments.store.ts │ │ │ │ │ │ ├── environments.test.ts │ │ │ │ │ │ └── environments.types.ts │ │ │ │ │ ├── migrationReport/ │ │ │ │ │ │ ├── MigrationRuleDetail.test.ts │ │ │ │ │ │ ├── MigrationRuleDetail.vue │ │ │ │ │ │ ├── MigrationRules.test.ts │ │ │ │ │ │ ├── MigrationRules.vue │ │ │ │ │ │ └── components/ │ │ │ │ │ │ ├── EmptyTab.vue │ │ │ │ │ │ └── SeverityTag.vue │ │ │ │ │ ├── orchestration.ee/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── WorkerAccordion.vue │ │ │ │ │ │ │ ├── WorkerCard.vue │ │ │ │ │ │ │ ├── WorkerChartsAccordion.vue │ │ │ │ │ │ │ ├── WorkerJobAccordion.vue │ │ │ │ │ │ │ ├── WorkerList.vue │ │ │ │ │ │ │ ├── WorkerMemoryMonitorAccordion.vue │ │ │ │ │ │ │ └── WorkerNetAccordion.vue │ │ │ │ │ │ ├── orchestration.store.ts │ │ │ │ │ │ ├── orchestration.utils.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ └── WorkerView.vue │ │ │ │ │ ├── security/ │ │ │ │ │ │ ├── SecuritySettings.test.ts │ │ │ │ │ │ └── SecuritySettings.vue │ │ │ │ │ ├── sso/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── OidcSettingsForm.vue │ │ │ │ │ │ │ ├── SSOLogin.test.ts │ │ │ │ │ │ │ ├── SSOLogin.vue │ │ │ │ │ │ │ └── SamlSettingsForm.vue │ │ │ │ │ │ ├── provisioning/ │ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ │ ├── ConfirmProvisioningDialog.vue │ │ │ │ │ │ │ │ └── UserRoleProvisioningDropdown.vue │ │ │ │ │ │ │ └── composables/ │ │ │ │ │ │ │ ├── useAccessSettingsCsvExport.test.ts │ │ │ │ │ │ │ ├── useAccessSettingsCsvExport.ts │ │ │ │ │ │ │ ├── useUserRoleProvisioningForm.test.ts │ │ │ │ │ │ │ ├── useUserRoleProvisioningForm.ts │ │ │ │ │ │ │ └── userRoleProvisioning.store.ts │ │ │ │ │ │ ├── sso.store.ts │ │ │ │ │ │ ├── sso.test.ts │ │ │ │ │ │ ├── styles/ │ │ │ │ │ │ │ └── sso-form.module.scss │ │ │ │ │ │ └── views/ │ │ │ │ │ │ ├── SamlOnboarding.test.ts │ │ │ │ │ │ ├── SamlOnboarding.vue │ │ │ │ │ │ ├── SettingsLdapView.vue │ │ │ │ │ │ ├── SettingsSso.test.ts │ │ │ │ │ │ └── SettingsSso.vue │ │ │ │ │ ├── usage/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── CommunityPlusEnrollmentModal.test.ts │ │ │ │ │ │ │ ├── CommunityPlusEnrollmentModal.vue │ │ │ │ │ │ │ ├── EulaAcceptanceModal.vue │ │ │ │ │ │ │ └── __tests__/ │ │ │ │ │ │ │ └── EulaAcceptanceModal.test.ts │ │ │ │ │ │ ├── usage.constants.ts │ │ │ │ │ │ ├── usage.store.ts │ │ │ │ │ │ ├── usage.test.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ ├── SettingsUsageAndPlan.test.ts │ │ │ │ │ │ └── SettingsUsageAndPlan.vue │ │ │ │ │ └── users/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── invitation.api.test.ts │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── DeleteUserModal.test.ts │ │ │ │ │ │ ├── DeleteUserModal.vue │ │ │ │ │ │ ├── InviteUsersModal.vue │ │ │ │ │ │ ├── PersonalizationModal.test.ts │ │ │ │ │ │ ├── PersonalizationModal.vue │ │ │ │ │ │ ├── SettingsUsersActionsCell.test.ts │ │ │ │ │ │ ├── SettingsUsersActionsCell.vue │ │ │ │ │ │ ├── SettingsUsersLastActiveCell.vue │ │ │ │ │ │ ├── SettingsUsersProjectsCell.test.ts │ │ │ │ │ │ ├── SettingsUsersProjectsCell.vue │ │ │ │ │ │ ├── SettingsUsersRoleCell.test.ts │ │ │ │ │ │ ├── SettingsUsersRoleCell.vue │ │ │ │ │ │ ├── SettingsUsersTable.test.ts │ │ │ │ │ │ └── SettingsUsersTable.vue │ │ │ │ │ ├── invitation.api.ts │ │ │ │ │ ├── users.constants.ts │ │ │ │ │ ├── users.store.test.ts │ │ │ │ │ ├── users.store.ts │ │ │ │ │ ├── users.types.ts │ │ │ │ │ ├── users.utils.ts │ │ │ │ │ └── views/ │ │ │ │ │ ├── SettingsUsersView.test.ts │ │ │ │ │ └── SettingsUsersView.vue │ │ │ │ ├── setupPanel/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── FocusSidebarTabs.test.ts │ │ │ │ │ │ ├── FocusSidebarTabs.vue │ │ │ │ │ │ ├── SetupPanel.vue │ │ │ │ │ │ ├── SetupPanelCards.test.ts │ │ │ │ │ │ ├── SetupPanelCards.vue │ │ │ │ │ │ ├── TriggerExecuteButton.test.ts │ │ │ │ │ │ ├── TriggerExecuteButton.vue │ │ │ │ │ │ ├── WebhookUrlPreview.vue │ │ │ │ │ │ └── cards/ │ │ │ │ │ │ ├── NodeGroupSetupCard.vue │ │ │ │ │ │ ├── NodeSetupCard.test.ts │ │ │ │ │ │ ├── NodeSetupCard.vue │ │ │ │ │ │ ├── SetupCard.vue │ │ │ │ │ │ ├── SetupCardBody.vue │ │ │ │ │ │ └── SetupCardSection.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── groupSetupCards.ts │ │ │ │ │ │ ├── useNodeGroupSections.ts │ │ │ │ │ │ ├── useTriggerExecution.test.ts │ │ │ │ │ │ ├── useTriggerExecution.ts │ │ │ │ │ │ ├── useWebhookUrls.test.ts │ │ │ │ │ │ ├── useWebhookUrls.ts │ │ │ │ │ │ ├── useWorkflowSetupState.nodeGrouping.test.ts │ │ │ │ │ │ ├── useWorkflowSetupState.test.ts │ │ │ │ │ │ └── useWorkflowSetupState.ts │ │ │ │ │ ├── setupPanel.store.ts │ │ │ │ │ ├── setupPanel.types.ts │ │ │ │ │ ├── setupPanel.utils.test.ts │ │ │ │ │ ├── setupPanel.utils.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── shared/ │ │ │ │ │ ├── banners/ │ │ │ │ │ │ ├── banners.store.test.ts │ │ │ │ │ │ ├── banners.store.ts │ │ │ │ │ │ ├── banners.types.ts │ │ │ │ │ │ └── components/ │ │ │ │ │ │ ├── BannerStack.vue │ │ │ │ │ │ ├── BannersStack.test.ts │ │ │ │ │ │ └── banners/ │ │ │ │ │ │ ├── BaseBanner.vue │ │ │ │ │ │ ├── DataTableStorageLimitErrorBanner.vue │ │ │ │ │ │ ├── DataTableStorageLimitWarningBanner.vue │ │ │ │ │ │ ├── DynamicBanner.vue │ │ │ │ │ │ ├── EmailConfirmationBanner.vue │ │ │ │ │ │ ├── NonProductionLicenseBanner.vue │ │ │ │ │ │ ├── TrialBanner.test.ts │ │ │ │ │ │ ├── TrialBanner.vue │ │ │ │ │ │ ├── TrialOverBanner.vue │ │ │ │ │ │ ├── V1Banner.test.ts │ │ │ │ │ │ ├── V1Banner.vue │ │ │ │ │ │ ├── WorkflowAutoDeactivatedBanner.vue │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ └── V1Banner.test.ts.snap │ │ │ │ │ ├── commandBar/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── CommandBarItemTitle.test.ts │ │ │ │ │ │ │ └── CommandBarItemTitle.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useChatHubCommands.ts │ │ │ │ │ │ │ ├── useCommandBar.test.ts │ │ │ │ │ │ │ ├── useCommandBar.ts │ │ │ │ │ │ │ ├── useCredentialNavigationCommands.test.ts │ │ │ │ │ │ │ ├── useCredentialNavigationCommands.ts │ │ │ │ │ │ │ ├── useDataTableNavigationCommands.test.ts │ │ │ │ │ │ │ ├── useDataTableNavigationCommands.ts │ │ │ │ │ │ │ ├── useExecutionCommands.test.ts │ │ │ │ │ │ │ ├── useExecutionCommands.ts │ │ │ │ │ │ │ ├── useExecutionNavigationCommands.test.ts │ │ │ │ │ │ │ ├── useExecutionNavigationCommands.ts │ │ │ │ │ │ │ ├── useGenericCommands.ts │ │ │ │ │ │ │ ├── useInstanceAiCommands.ts │ │ │ │ │ │ │ ├── useNodeCommands.test.ts │ │ │ │ │ │ │ ├── useNodeCommands.ts │ │ │ │ │ │ │ ├── useProjectNavigationCommands.test.ts │ │ │ │ │ │ │ ├── useProjectNavigationCommands.ts │ │ │ │ │ │ │ ├── useRecentResources.test.ts │ │ │ │ │ │ │ ├── useRecentResources.ts │ │ │ │ │ │ │ ├── useTemplateCommands.ts │ │ │ │ │ │ │ ├── useWorkflowCommands.test.ts │ │ │ │ │ │ │ ├── useWorkflowCommands.ts │ │ │ │ │ │ │ ├── useWorkflowNavigationCommands.test.ts │ │ │ │ │ │ │ └── useWorkflowNavigationCommands.ts │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── contextMenu/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ └── ContextMenu.vue │ │ │ │ │ │ └── composables/ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ └── useContextMenu.test.ts.snap │ │ │ │ │ │ ├── useContextMenu.test.ts │ │ │ │ │ │ ├── useContextMenu.ts │ │ │ │ │ │ └── useContextMenuItems.ts │ │ │ │ │ ├── editors/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── CodeNodeEditor/ │ │ │ │ │ │ │ │ ├── AskAI/ │ │ │ │ │ │ │ │ │ └── AskAI.vue │ │ │ │ │ │ │ │ ├── CodeNodeEditor.vue │ │ │ │ │ │ │ │ ├── completer.ts │ │ │ │ │ │ │ │ ├── completions/ │ │ │ │ │ │ │ │ │ ├── base.completions.ts │ │ │ │ │ │ │ │ │ ├── execution.completions.ts │ │ │ │ │ │ │ │ │ ├── itemField.completions.test.ts │ │ │ │ │ │ │ │ │ ├── itemField.completions.ts │ │ │ │ │ │ │ │ │ ├── itemIndex.completions.ts │ │ │ │ │ │ │ │ │ ├── js.snippets.ts │ │ │ │ │ │ │ │ │ ├── jsonField.completions.ts │ │ │ │ │ │ │ │ │ ├── luxon.completions.ts │ │ │ │ │ │ │ │ │ ├── prevNode.completions.ts │ │ │ │ │ │ │ │ │ ├── require.completions.ts │ │ │ │ │ │ │ │ │ └── workflow.completions.ts │ │ │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ │ │ ├── linter.ts │ │ │ │ │ │ │ │ ├── theme.ts │ │ │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ ├── CssEditor/ │ │ │ │ │ │ │ │ └── CssEditor.vue │ │ │ │ │ │ │ ├── HtmlEditor/ │ │ │ │ │ │ │ │ ├── HtmlEditor.test.ts │ │ │ │ │ │ │ │ ├── HtmlEditor.vue │ │ │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ ├── InlineExpressionEditor/ │ │ │ │ │ │ │ │ ├── ExpressionOutput.test.ts │ │ │ │ │ │ │ │ ├── ExpressionOutput.vue │ │ │ │ │ │ │ │ ├── InlineExpressionEditorInput.vue │ │ │ │ │ │ │ │ ├── InlineExpressionEditorOutput.test.ts │ │ │ │ │ │ │ │ ├── InlineExpressionEditorOutput.vue │ │ │ │ │ │ │ │ ├── InlineExpressionTip.test.ts │ │ │ │ │ │ │ │ ├── InlineExpressionTip.vue │ │ │ │ │ │ │ │ ├── OutputItemSelect.vue │ │ │ │ │ │ │ │ └── theme.ts │ │ │ │ │ │ │ ├── JsEditor/ │ │ │ │ │ │ │ │ ├── JsEditor.test.ts │ │ │ │ │ │ │ │ └── JsEditor.vue │ │ │ │ │ │ │ ├── JsonEditor/ │ │ │ │ │ │ │ │ ├── JsonEditor.test.ts │ │ │ │ │ │ │ │ └── JsonEditor.vue │ │ │ │ │ │ │ └── SqlEditor/ │ │ │ │ │ │ │ ├── SQLEditor.test.ts │ │ │ │ │ │ │ └── SqlEditor.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useCodeEditor.test.ts │ │ │ │ │ │ │ ├── useCodeEditor.ts │ │ │ │ │ │ │ ├── useExpressionEditor.test.ts │ │ │ │ │ │ │ └── useExpressionEditor.ts │ │ │ │ │ │ └── plugins/ │ │ │ │ │ │ └── codemirror/ │ │ │ │ │ │ ├── completions/ │ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ │ └── mock.ts │ │ │ │ │ │ │ ├── addCompletions.ts │ │ │ │ │ │ │ ├── base.completions.test.ts │ │ │ │ │ │ │ ├── blank.completions.ts │ │ │ │ │ │ │ ├── bracketAccess.completions.ts │ │ │ │ │ │ │ ├── completions.test.ts │ │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ │ ├── datatype.completions.test.ts │ │ │ │ │ │ │ ├── datatype.completions.ts │ │ │ │ │ │ │ ├── dollar.completions.ts │ │ │ │ │ │ │ ├── infoBoxRenderer.ts │ │ │ │ │ │ │ ├── itemField.completions.test.ts │ │ │ │ │ │ │ ├── itemIndex.completions.test.ts │ │ │ │ │ │ │ ├── jsonField.completions.test.ts │ │ │ │ │ │ │ ├── nativesAutocompleteDocs/ │ │ │ │ │ │ │ │ ├── luxon.instance.docs.ts │ │ │ │ │ │ │ │ └── luxon.static.docs.ts │ │ │ │ │ │ │ ├── nonDollar.completions.ts │ │ │ │ │ │ │ ├── prevNode.completions.test.ts │ │ │ │ │ │ │ ├── require.completions.test.ts │ │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ ├── dragAndDrop.test.ts │ │ │ │ │ │ ├── dragAndDrop.ts │ │ │ │ │ │ ├── expressionCloseBrackets.test.ts │ │ │ │ │ │ ├── expressionCloseBrackets.ts │ │ │ │ │ │ ├── format.ts │ │ │ │ │ │ ├── keymap.ts │ │ │ │ │ │ ├── multiCursor.ts │ │ │ │ │ │ ├── n8nLang.ts │ │ │ │ │ │ ├── resolvableHighlighter.ts │ │ │ │ │ │ ├── tooltips/ │ │ │ │ │ │ │ ├── InfoBoxTooltip.ts │ │ │ │ │ │ │ └── infoBoxTooltip.test.ts │ │ │ │ │ │ └── typescript/ │ │ │ │ │ │ ├── client/ │ │ │ │ │ │ │ ├── completions.ts │ │ │ │ │ │ │ ├── facet.ts │ │ │ │ │ │ │ ├── hoverTooltip.ts │ │ │ │ │ │ │ ├── linter.ts │ │ │ │ │ │ │ ├── snippets.ts │ │ │ │ │ │ │ ├── tests/ │ │ │ │ │ │ │ │ └── completions.test.ts │ │ │ │ │ │ │ └── useTypescript.ts │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ └── worker/ │ │ │ │ │ │ ├── completions.ts │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── dynamicTypes.test.ts │ │ │ │ │ │ ├── dynamicTypes.ts │ │ │ │ │ │ ├── env.ts │ │ │ │ │ │ ├── hoverTooltip.ts │ │ │ │ │ │ ├── linter.test.ts │ │ │ │ │ │ ├── linter.ts │ │ │ │ │ │ ├── npmTypesLoader.ts │ │ │ │ │ │ ├── type-declarations/ │ │ │ │ │ │ │ ├── globals.d.ts │ │ │ │ │ │ │ ├── n8n-once-for-all-items-combined.d.ts │ │ │ │ │ │ │ ├── n8n-once-for-all-items.d.ts │ │ │ │ │ │ │ ├── n8n-once-for-each-item-combined.d.ts │ │ │ │ │ │ │ ├── n8n-once-for-each-item.d.ts │ │ │ │ │ │ │ └── n8n.d.ts │ │ │ │ │ │ ├── typescript.worker.test.ts │ │ │ │ │ │ ├── typescript.worker.ts │ │ │ │ │ │ ├── typescriptAst.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── envFeatureFlag/ │ │ │ │ │ │ ├── EnvFeatureFlag.test.ts │ │ │ │ │ │ ├── EnvFeatureFlag.vue │ │ │ │ │ │ └── useEnvFeatureFlag.ts │ │ │ │ │ ├── nodeCreator/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── ItemTypes/ │ │ │ │ │ │ │ │ ├── ActionItem.vue │ │ │ │ │ │ │ │ ├── CategoryItem.test.ts │ │ │ │ │ │ │ │ ├── CategoryItem.vue │ │ │ │ │ │ │ │ ├── CommunityNodeItem.vue │ │ │ │ │ │ │ │ ├── LabelItem.vue │ │ │ │ │ │ │ │ ├── LinkItem.vue │ │ │ │ │ │ │ │ ├── NodeItem.vue │ │ │ │ │ │ │ │ ├── OpenTemplateItem.vue │ │ │ │ │ │ │ │ ├── SubcategoryItem.vue │ │ │ │ │ │ │ │ └── ViewItem.vue │ │ │ │ │ │ │ ├── Modes/ │ │ │ │ │ │ │ │ ├── ActionsMode.vue │ │ │ │ │ │ │ │ └── NodesMode.vue │ │ │ │ │ │ │ ├── NodeCreator.vue │ │ │ │ │ │ │ ├── NodeCreatorShortcutCoachmark.vue │ │ │ │ │ │ │ ├── OrderSwitcher.vue │ │ │ │ │ │ │ ├── Panel/ │ │ │ │ │ │ │ │ ├── NoResults.test.ts │ │ │ │ │ │ │ │ ├── NoResults.vue │ │ │ │ │ │ │ │ ├── NoResultsIcon.vue │ │ │ │ │ │ │ │ ├── NodesListPanel.test.ts │ │ │ │ │ │ │ │ ├── NodesListPanel.vue │ │ │ │ │ │ │ │ └── SearchBar.vue │ │ │ │ │ │ │ └── Renderers/ │ │ │ │ │ │ │ ├── CategorizedItemsRenderer.vue │ │ │ │ │ │ │ ├── ItemsRenderer.test.ts │ │ │ │ │ │ │ └── ItemsRenderer.vue │ │ │ │ │ │ ├── composables/ │ │ │ │ │ │ │ ├── useActions.test.ts │ │ │ │ │ │ │ ├── useActions.ts │ │ │ │ │ │ │ ├── useActionsGeneration.test.ts │ │ │ │ │ │ │ ├── useActionsGeneration.ts │ │ │ │ │ │ │ ├── useGetNodeCreatorFilter.test.ts │ │ │ │ │ │ │ ├── useGetNodeCreatorFilter.ts │ │ │ │ │ │ │ ├── useKeyboardNavigation.test.ts │ │ │ │ │ │ │ ├── useKeyboardNavigation.ts │ │ │ │ │ │ │ ├── useNodeCreatorShortcutCoachmark.ts │ │ │ │ │ │ │ └── useViewStacks.ts │ │ │ │ │ │ ├── nodeCreator.store.test.ts │ │ │ │ │ │ ├── nodeCreator.store.ts │ │ │ │ │ │ ├── nodeCreator.utils.test.ts │ │ │ │ │ │ ├── nodeCreator.utils.ts │ │ │ │ │ │ └── views/ │ │ │ │ │ │ ├── NodeCreation.vue │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ └── viewsData.test.ts.snap │ │ │ │ │ │ ├── viewsData.test.ts │ │ │ │ │ │ └── viewsData.ts │ │ │ │ │ └── tags/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── AnnotationTagsDropdown.ee.vue │ │ │ │ │ │ ├── TagsContainer.vue │ │ │ │ │ │ ├── TagsDropdown.vue │ │ │ │ │ │ ├── TagsManager/ │ │ │ │ │ │ │ ├── AnnotationTagsManager.ee.vue │ │ │ │ │ │ │ ├── NoTagsView.vue │ │ │ │ │ │ │ ├── TagsManager.vue │ │ │ │ │ │ │ ├── TagsView/ │ │ │ │ │ │ │ │ ├── TagsTable.vue │ │ │ │ │ │ │ │ ├── TagsTableHeader.vue │ │ │ │ │ │ │ │ └── TagsView.vue │ │ │ │ │ │ │ └── WorkflowTagsManager.vue │ │ │ │ │ │ ├── WorkflowTagsContainer.vue │ │ │ │ │ │ └── WorkflowTagsDropdown.vue │ │ │ │ │ ├── tags.api.ts │ │ │ │ │ ├── tags.constants.ts │ │ │ │ │ ├── tags.store.ts │ │ │ │ │ └── tags.types.ts │ │ │ │ └── workflows/ │ │ │ │ ├── canvas/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── canvas.eventBus.ts │ │ │ │ │ ├── canvas.types.ts │ │ │ │ │ ├── canvas.utils.test.ts │ │ │ │ │ ├── canvas.utils.ts │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── Canvas.test.ts │ │ │ │ │ │ ├── Canvas.vue │ │ │ │ │ │ ├── WorkflowCanvas.test.ts │ │ │ │ │ │ ├── WorkflowCanvas.vue │ │ │ │ │ │ └── elements/ │ │ │ │ │ │ ├── background/ │ │ │ │ │ │ │ ├── CanvasBackground.test.ts │ │ │ │ │ │ │ ├── CanvasBackground.vue │ │ │ │ │ │ │ ├── CanvasBackgroundStripedPattern.vue │ │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ │ └── CanvasBackground.test.ts.snap │ │ │ │ │ │ ├── buttons/ │ │ │ │ │ │ │ ├── CanvasChatButton.test.ts │ │ │ │ │ │ │ ├── CanvasChatButton.vue │ │ │ │ │ │ │ ├── CanvasClearExecutionDataButton.test.ts │ │ │ │ │ │ │ ├── CanvasClearExecutionDataButton.vue │ │ │ │ │ │ │ ├── CanvasControlButtons.test.ts │ │ │ │ │ │ │ ├── CanvasControlButtons.vue │ │ │ │ │ │ │ ├── CanvasRunWorkflowButton.test.ts │ │ │ │ │ │ │ ├── CanvasRunWorkflowButton.vue │ │ │ │ │ │ │ ├── CanvasStopCurrentExecutionButton.test.ts │ │ │ │ │ │ │ ├── CanvasStopCurrentExecutionButton.vue │ │ │ │ │ │ │ ├── CanvasStopWaitingForWebhookButton.test.ts │ │ │ │ │ │ │ ├── CanvasStopWaitingForWebhookButton.vue │ │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ │ ├── CanvasChatButton.test.ts.snap │ │ │ │ │ │ │ ├── CanvasClearExecutionDataButton.test.ts.snap │ │ │ │ │ │ │ ├── CanvasControlButtons.test.ts.snap │ │ │ │ │ │ │ ├── CanvasExecuteWorkflowButton.test.ts.snap │ │ │ │ │ │ │ ├── CanvasRunWorkflowButton.test.ts.snap │ │ │ │ │ │ │ ├── CanvasStopCurrentExecutionButton.test.ts.snap │ │ │ │ │ │ │ └── CanvasStopWaitingForWebhookButton.test.ts.snap │ │ │ │ │ │ ├── edges/ │ │ │ │ │ │ │ ├── CanvasArrowHeadMarker.vue │ │ │ │ │ │ │ ├── CanvasConnectionLine.test.ts │ │ │ │ │ │ │ ├── CanvasConnectionLine.vue │ │ │ │ │ │ │ ├── CanvasEdge.test.ts │ │ │ │ │ │ │ ├── CanvasEdge.vue │ │ │ │ │ │ │ ├── CanvasEdgeToolbar.test.ts │ │ │ │ │ │ │ ├── CanvasEdgeToolbar.vue │ │ │ │ │ │ │ ├── CanvasEdgeTooltip.vue │ │ │ │ │ │ │ └── utils/ │ │ │ │ │ │ │ ├── getEdgeRenderData.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── handles/ │ │ │ │ │ │ │ ├── CanvasHandleRenderer.test.ts │ │ │ │ │ │ │ ├── CanvasHandleRenderer.vue │ │ │ │ │ │ │ └── render-types/ │ │ │ │ │ │ │ ├── CanvasHandleMainInput.test.ts │ │ │ │ │ │ │ ├── CanvasHandleMainInput.vue │ │ │ │ │ │ │ ├── CanvasHandleMainOutput.test.ts │ │ │ │ │ │ │ ├── CanvasHandleMainOutput.vue │ │ │ │ │ │ │ ├── CanvasHandleNonMainInput.test.ts │ │ │ │ │ │ │ ├── CanvasHandleNonMainInput.vue │ │ │ │ │ │ │ ├── CanvasHandleNonMainOutput.test.ts │ │ │ │ │ │ │ ├── CanvasHandleNonMainOutput.vue │ │ │ │ │ │ │ └── parts/ │ │ │ │ │ │ │ ├── CanvasHandleDiamond.test.ts │ │ │ │ │ │ │ ├── CanvasHandleDiamond.vue │ │ │ │ │ │ │ ├── CanvasHandleDot.test.ts │ │ │ │ │ │ │ ├── CanvasHandleDot.vue │ │ │ │ │ │ │ ├── CanvasHandlePlus.test.ts │ │ │ │ │ │ │ ├── CanvasHandlePlus.vue │ │ │ │ │ │ │ └── __snapshots__/ │ │ │ │ │ │ │ ├── CanvasHandleDiamond.test.ts.snap │ │ │ │ │ │ │ ├── CanvasHandleDot.test.ts.snap │ │ │ │ │ │ │ └── CanvasHandlePlus.test.ts.snap │ │ │ │ │ │ └── nodes/ │ │ │ │ │ │ ├── CanvasNode.test.ts │ │ │ │ │ │ ├── CanvasNode.vue │ │ │ │ │ │ ├── CanvasNodeRenderer.test.ts │ │ │ │ │ │ ├── CanvasNodeRenderer.vue │ │ │ │ │ │ ├── CanvasNodeToolbar.test.ts │ │ │ │ │ │ ├── CanvasNodeToolbar.vue │ │ │ │ │ │ ├── render-types/ │ │ │ │ │ │ │ ├── CanvasNodeAddNodes.test.ts │ │ │ │ │ │ │ ├── CanvasNodeAddNodes.vue │ │ │ │ │ │ │ ├── CanvasNodeChoicePrompt.vue │ │ │ │ │ │ │ ├── CanvasNodeDefault.test.ts │ │ │ │ │ │ │ ├── CanvasNodeDefault.vue │ │ │ │ │ │ │ ├── CanvasNodeStickyNote.test.ts │ │ │ │ │ │ │ ├── CanvasNodeStickyNote.vue │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ ├── CanvasNodeAddNodes.test.ts.snap │ │ │ │ │ │ │ │ ├── CanvasNodeDefault.test.ts.snap │ │ │ │ │ │ │ │ └── CanvasNodeStickyNote.test.ts.snap │ │ │ │ │ │ │ └── parts/ │ │ │ │ │ │ │ ├── CanvasNodeDisabledStrikeThrough.test.ts │ │ │ │ │ │ │ ├── CanvasNodeDisabledStrikeThrough.vue │ │ │ │ │ │ │ ├── CanvasNodeSettingsIcons.test.ts │ │ │ │ │ │ │ ├── CanvasNodeSettingsIcons.vue │ │ │ │ │ │ │ ├── CanvasNodeStatusIcons.test.ts │ │ │ │ │ │ │ ├── CanvasNodeStatusIcons.vue │ │ │ │ │ │ │ ├── CanvasNodeTooltip.test.ts │ │ │ │ │ │ │ ├── CanvasNodeTooltip.vue │ │ │ │ │ │ │ └── CanvasNodeTrigger.vue │ │ │ │ │ │ └── toolbar/ │ │ │ │ │ │ ├── CanvasNodeStickyColorSelector.test.ts │ │ │ │ │ │ └── CanvasNodeStickyColorSelector.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ └── useCanvasLayout.test.ts.snap │ │ │ │ │ │ ├── useCanvas.ts │ │ │ │ │ │ ├── useCanvasLayout.test.ts │ │ │ │ │ │ ├── useCanvasLayout.ts │ │ │ │ │ │ ├── useCanvasMapping.test.ts │ │ │ │ │ │ ├── useCanvasMapping.ts │ │ │ │ │ │ ├── useCanvasNode.test.ts │ │ │ │ │ │ ├── useCanvasNode.ts │ │ │ │ │ │ ├── useCanvasNodeHandle.ts │ │ │ │ │ │ ├── useCanvasNodeHover.test.ts │ │ │ │ │ │ ├── useCanvasNodeHover.ts │ │ │ │ │ │ ├── useCanvasTraversal.test.ts │ │ │ │ │ │ ├── useCanvasTraversal.ts │ │ │ │ │ │ ├── useViewportAutoAdjust.test.ts │ │ │ │ │ │ ├── useViewportAutoAdjust.ts │ │ │ │ │ │ ├── useZoomAdjustedValues.test.ts │ │ │ │ │ │ └── useZoomAdjustedValues.ts │ │ │ │ │ └── experimental/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── ExperimentalCanvasNodeSettings.vue │ │ │ │ │ │ ├── ExperimentalEmbeddedNdvActions.vue │ │ │ │ │ │ ├── ExperimentalEmbeddedNdvHeader.vue │ │ │ │ │ │ ├── ExperimentalEmbeddedNdvMapper.test.ts │ │ │ │ │ │ ├── ExperimentalEmbeddedNdvMapper.vue │ │ │ │ │ │ ├── ExperimentalEmbeddedNodeDetails.vue │ │ │ │ │ │ ├── ExperimentalFocusPanelHeader.vue │ │ │ │ │ │ ├── ExperimentalNodeDetailsDrawer.test.ts │ │ │ │ │ │ └── ExperimentalNodeDetailsDrawer.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── useExpressionResolveCtx.ts │ │ │ │ │ │ └── useIsInExperimentalNdv.ts │ │ │ │ │ ├── experimentalNdv.store.ts │ │ │ │ │ └── experimentalNdv.utils.ts │ │ │ │ ├── composables/ │ │ │ │ │ └── useWorkflowsEmptyState.ts │ │ │ │ ├── readyToRun/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── ReadyToRunButton.test.ts │ │ │ │ │ │ └── ReadyToRunButton.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── useEmptyStateDetection.test.ts │ │ │ │ │ │ └── useEmptyStateDetection.ts │ │ │ │ │ ├── stores/ │ │ │ │ │ │ ├── readyToRun.store.test.ts │ │ │ │ │ │ └── readyToRun.store.ts │ │ │ │ │ └── workflows/ │ │ │ │ │ └── aiWorkflow.ts │ │ │ │ ├── templates/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── setupTemplate.store.testData.ts │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── AppsRequiringCredsNotice.vue │ │ │ │ │ │ ├── IconSuccess.vue │ │ │ │ │ │ ├── SetupTemplateFormStep.vue │ │ │ │ │ │ ├── SetupWorkflowCredentialsButton.test.ts │ │ │ │ │ │ ├── SetupWorkflowCredentialsButton.vue │ │ │ │ │ │ ├── SetupWorkflowCredentialsModal.test.ts │ │ │ │ │ │ ├── SetupWorkflowCredentialsModal.vue │ │ │ │ │ │ ├── TemplateCard.vue │ │ │ │ │ │ ├── TemplateDetails.vue │ │ │ │ │ │ ├── TemplateDetailsBlock.vue │ │ │ │ │ │ ├── TemplateFilters.vue │ │ │ │ │ │ ├── TemplateList.vue │ │ │ │ │ │ ├── TemplatesInfoCard.test.ts │ │ │ │ │ │ ├── TemplatesInfoCard.vue │ │ │ │ │ │ └── TemplatesInfoCarousel.vue │ │ │ │ │ ├── composables/ │ │ │ │ │ │ ├── useCredentialSetupState.test.ts │ │ │ │ │ │ ├── useCredentialSetupState.ts │ │ │ │ │ │ └── useSetupWorkflowCredentialsModalState.ts │ │ │ │ │ ├── recommendations/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── RecommendedTemplateCard.test.ts │ │ │ │ │ │ │ ├── RecommendedTemplateCard.vue │ │ │ │ │ │ │ ├── RecommendedTemplatesSection.vue │ │ │ │ │ │ │ └── SkeletonTemplateCard.vue │ │ │ │ │ │ ├── data/ │ │ │ │ │ │ │ └── recommendedTemplateIds.json │ │ │ │ │ │ ├── dynamicTemplates.api.ts │ │ │ │ │ │ ├── recommendedTemplates.store.test.ts │ │ │ │ │ │ └── recommendedTemplates.store.ts │ │ │ │ │ ├── setupTemplate.store.test.ts │ │ │ │ │ ├── setupTemplate.store.ts │ │ │ │ │ ├── templates.store.ts │ │ │ │ │ ├── templates.types.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ ├── samples/ │ │ │ │ │ │ │ ├── easy_ai_starter.json │ │ │ │ │ │ │ ├── rag_starter.json │ │ │ │ │ │ │ └── tutorial/ │ │ │ │ │ │ │ ├── api_fundamentals.json │ │ │ │ │ │ │ ├── build_your_first_ai_agent.json │ │ │ │ │ │ │ ├── expressions_tutorial.json │ │ │ │ │ │ │ ├── json_basics.json │ │ │ │ │ │ │ └── workflow_logic.json │ │ │ │ │ │ ├── templateActions.test.ts │ │ │ │ │ │ ├── templateActions.ts │ │ │ │ │ │ ├── templateTransforms.test.ts │ │ │ │ │ │ ├── templateTransforms.ts │ │ │ │ │ │ ├── typeGuards.ts │ │ │ │ │ │ └── workflowSamples.ts │ │ │ │ │ └── views/ │ │ │ │ │ ├── SetupWorkflowFromTemplateView.vue │ │ │ │ │ ├── TemplatesCollectionView.vue │ │ │ │ │ ├── TemplatesSearchView.vue │ │ │ │ │ ├── TemplatesView.vue │ │ │ │ │ └── TemplatesWorkflowView.vue │ │ │ │ ├── workflowDiff/ │ │ │ │ │ ├── DiffBadge.test.ts │ │ │ │ │ ├── DiffBadge.vue │ │ │ │ │ ├── HighlightedEdge.test.ts │ │ │ │ │ ├── HighlightedEdge.vue │ │ │ │ │ ├── NodeDiff.test.ts │ │ │ │ │ ├── NodeDiff.vue │ │ │ │ │ ├── SyncedWorkflowCanvas.test.ts │ │ │ │ │ ├── SyncedWorkflowCanvas.vue │ │ │ │ │ ├── WorkflowDiffAside.vue │ │ │ │ │ ├── WorkflowDiffContent.test.ts │ │ │ │ │ ├── WorkflowDiffContent.vue │ │ │ │ │ ├── WorkflowDiffEmptyState.vue │ │ │ │ │ ├── WorkflowDiffModal.test.ts │ │ │ │ │ ├── WorkflowDiffModal.vue │ │ │ │ │ ├── WorkflowDiffNodeItem.vue │ │ │ │ │ ├── WorkflowDiffView.test.ts │ │ │ │ │ ├── WorkflowDiffView.vue │ │ │ │ │ ├── useViewportSync.test.ts │ │ │ │ │ ├── useViewportSync.ts │ │ │ │ │ ├── useWorkflowDiff.test.ts │ │ │ │ │ ├── useWorkflowDiff.ts │ │ │ │ │ ├── useWorkflowDiffUI.test.ts │ │ │ │ │ ├── useWorkflowDiffUI.ts │ │ │ │ │ └── workflowDiff.module.scss │ │ │ │ └── workflowHistory/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── utils.ts │ │ │ │ ├── components/ │ │ │ │ │ ├── WorkflowHistoryButton.test.ts │ │ │ │ │ ├── WorkflowHistoryButton.vue │ │ │ │ │ ├── WorkflowHistoryContent.test.ts │ │ │ │ │ ├── WorkflowHistoryContent.vue │ │ │ │ │ ├── WorkflowHistoryList.test.ts │ │ │ │ │ ├── WorkflowHistoryList.vue │ │ │ │ │ ├── WorkflowHistoryListItem.test.ts │ │ │ │ │ ├── WorkflowHistoryListItem.vue │ │ │ │ │ ├── WorkflowHistoryPublishedTooltip.vue │ │ │ │ │ ├── WorkflowHistoryUpgradeFooter.vue │ │ │ │ │ ├── WorkflowHistoryVersionRestoreModal.vue │ │ │ │ │ ├── WorkflowHistoryVersionSelect.test.ts │ │ │ │ │ ├── WorkflowHistoryVersionSelect.vue │ │ │ │ │ ├── WorkflowHistoryVersionUnpublishModal.vue │ │ │ │ │ ├── WorkflowVersionFormModal.test.ts │ │ │ │ │ ├── WorkflowVersionFormModal.vue │ │ │ │ │ ├── WorkflowVersionStatusIndicator.vue │ │ │ │ │ ├── _timeline.scss │ │ │ │ │ └── usePublishedByDetails.ts │ │ │ │ ├── types.ts │ │ │ │ ├── useWorkflowHistoryVersionOptions.test.ts │ │ │ │ ├── useWorkflowHistoryVersionOptions.ts │ │ │ │ ├── utils.test.ts │ │ │ │ ├── utils.ts │ │ │ │ ├── views/ │ │ │ │ │ ├── WorkflowHistory.test.ts │ │ │ │ │ ├── WorkflowHistory.vue │ │ │ │ │ ├── WorkflowHistoryDiff.test.ts │ │ │ │ │ └── WorkflowHistoryDiff.vue │ │ │ │ ├── workflowHistory.store.test.ts │ │ │ │ └── workflowHistory.store.ts │ │ │ ├── main.scss │ │ │ ├── main.ts │ │ │ ├── shims-global.d.ts │ │ │ └── shims-modules.d.ts │ │ ├── stylelint.config.mjs │ │ ├── tailwind.config.js │ │ ├── tsconfig.json │ │ ├── vite/ │ │ │ ├── expression-runtime-stub.ts │ │ │ ├── i18n-locales-hmr-helpers.ts │ │ │ ├── source-map-js-shim.ts │ │ │ └── vite-plugin-node-popularity.mts │ │ └── vite.config.mts │ ├── node-dev/ │ │ ├── README.md │ │ ├── bin/ │ │ │ ├── n8n-node-dev │ │ │ └── n8n-node-dev.cmd │ │ ├── commands/ │ │ │ ├── build.ts │ │ │ └── new.ts │ │ ├── eslint.config.mjs │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Build.ts │ │ │ ├── Create.ts │ │ │ ├── Interfaces.ts │ │ │ ├── index.ts │ │ │ └── tsconfig-build.json │ │ ├── templates/ │ │ │ ├── credentials/ │ │ │ │ └── simple.ts │ │ │ ├── execute/ │ │ │ │ └── simple.ts │ │ │ ├── trigger/ │ │ │ │ └── simple.ts │ │ │ └── webhook/ │ │ │ └── simple.ts │ │ └── tsconfig.json │ ├── nodes-base/ │ │ ├── AGENTS.md │ │ ├── CLAUDE.md │ │ ├── README.md │ │ ├── TESTING.MD │ │ ├── TESTING_PROMPT.md │ │ ├── TESTING_PROMPT_WORKFLOW.md │ │ ├── biome.jsonc │ │ ├── credentials/ │ │ │ ├── ActionNetworkApi.credentials.ts │ │ │ ├── ActiveCampaignApi.credentials.ts │ │ │ ├── AcuitySchedulingApi.credentials.ts │ │ │ ├── AcuitySchedulingOAuth2Api.credentials.ts │ │ │ ├── AdaloApi.credentials.ts │ │ │ ├── AffinityApi.credentials.ts │ │ │ ├── AgileCrmApi.credentials.ts │ │ │ ├── AirtableApi.credentials.ts │ │ │ ├── AirtableOAuth2Api.credentials.ts │ │ │ ├── AirtableTokenApi.credentials.ts │ │ │ ├── AirtopApi.credentials.ts │ │ │ ├── AlienVaultApi.credentials.ts │ │ │ ├── Amqp.credentials.ts │ │ │ ├── ApiTemplateIoApi.credentials.ts │ │ │ ├── AsanaApi.credentials.ts │ │ │ ├── AsanaOAuth2Api.credentials.ts │ │ │ ├── Auth0ManagementApi.credentials.ts │ │ │ ├── AutopilotApi.credentials.ts │ │ │ ├── Aws.credentials.ts │ │ │ ├── AwsAssumeRole.credentials.ts │ │ │ ├── AzureStorageOAuth2Api.credentials.ts │ │ │ ├── AzureStorageSharedKeyApi.credentials.ts │ │ │ ├── BambooHrApi.credentials.ts │ │ │ ├── BannerbearApi.credentials.ts │ │ │ ├── BaserowApi.credentials.ts │ │ │ ├── BaserowTokenApi.credentials.ts │ │ │ ├── BeeminderApi.credentials.ts │ │ │ ├── BeeminderOAuth2Api.credentials.ts │ │ │ ├── BitbucketAccessTokenApi.credentials.ts │ │ │ ├── BitbucketApi.credentials.ts │ │ │ ├── BitlyApi.credentials.ts │ │ │ ├── BitlyOAuth2Api.credentials.ts │ │ │ ├── BitwardenApi.credentials.ts │ │ │ ├── BoxOAuth2Api.credentials.ts │ │ │ ├── BrandfetchApi.credentials.ts │ │ │ ├── BrevoApi.credentials.ts │ │ │ ├── BubbleApi.credentials.ts │ │ │ ├── CalApi.credentials.ts │ │ │ ├── CalendlyApi.credentials.ts │ │ │ ├── CalendlyOAuth2Api.credentials.ts │ │ │ ├── CarbonBlackApi.credentials.ts │ │ │ ├── ChargebeeApi.credentials.ts │ │ │ ├── CircleCiApi.credentials.ts │ │ │ ├── CiscoMerakiApi.credentials.ts │ │ │ ├── CiscoSecureEndpointApi.credentials.ts │ │ │ ├── CiscoUmbrellaApi.credentials.ts │ │ │ ├── CiscoWebexOAuth2Api.credentials.ts │ │ │ ├── ClearbitApi.credentials.ts │ │ │ ├── ClickUpApi.credentials.ts │ │ │ ├── ClickUpOAuth2Api.credentials.ts │ │ │ ├── ClockifyApi.credentials.ts │ │ │ ├── CloudflareApi.credentials.ts │ │ │ ├── CockpitApi.credentials.ts │ │ │ ├── CodaApi.credentials.ts │ │ │ ├── ContentfulApi.credentials.ts │ │ │ ├── ConvertApi.credentials.ts │ │ │ ├── ConvertKitApi.credentials.ts │ │ │ ├── CopperApi.credentials.ts │ │ │ ├── CortexApi.credentials.ts │ │ │ ├── CrateDb.credentials.ts │ │ │ ├── CrowdStrikeOAuth2Api.credentials.ts │ │ │ ├── Crypto.credentials.ts │ │ │ ├── CurrentsApi.credentials.ts │ │ │ ├── CustomerIoApi.credentials.ts │ │ │ ├── DatabricksApi.credentials.ts │ │ │ ├── DatabricksOAuth2Api.credentials.ts │ │ │ ├── DatadogApi.credentials.ts │ │ │ ├── DeepLApi.credentials.ts │ │ │ ├── DemioApi.credentials.ts │ │ │ ├── DfirIrisApi.credentials.ts │ │ │ ├── DhlApi.credentials.ts │ │ │ ├── DiscordBotApi.credentials.ts │ │ │ ├── DiscordOAuth2Api.credentials.ts │ │ │ ├── DiscordWebhookApi.credentials.ts │ │ │ ├── DiscourseApi.credentials.ts │ │ │ ├── DisqusApi.credentials.ts │ │ │ ├── DriftApi.credentials.ts │ │ │ ├── DriftOAuth2Api.credentials.ts │ │ │ ├── DropboxApi.credentials.ts │ │ │ ├── DropboxOAuth2Api.credentials.ts │ │ │ ├── DropcontactApi.credentials.ts │ │ │ ├── DynatraceApi.credentials.ts │ │ │ ├── ERPNextApi.credentials.ts │ │ │ ├── EgoiApi.credentials.ts │ │ │ ├── ElasticSecurityApi.credentials.ts │ │ │ ├── ElasticsearchApi.credentials.ts │ │ │ ├── EmeliaApi.credentials.ts │ │ │ ├── EventbriteApi.credentials.ts │ │ │ ├── EventbriteOAuth2Api.credentials.ts │ │ │ ├── F5BigIpApi.credentials.ts │ │ │ ├── FacebookGraphApi.credentials.ts │ │ │ ├── FacebookGraphAppApi.credentials.ts │ │ │ ├── FacebookLeadAdsOAuth2Api.credentials.ts │ │ │ ├── FigmaApi.credentials.ts │ │ │ ├── FileMaker.credentials.ts │ │ │ ├── FilescanApi.credentials.ts │ │ │ ├── FlowApi.credentials.ts │ │ │ ├── FormIoApi.credentials.ts │ │ │ ├── FormstackApi.credentials.ts │ │ │ ├── FormstackOAuth2Api.credentials.ts │ │ │ ├── FortiGateApi.credentials.ts │ │ │ ├── FreshdeskApi.credentials.ts │ │ │ ├── FreshserviceApi.credentials.ts │ │ │ ├── FreshworksCrmApi.credentials.ts │ │ │ ├── Ftp.credentials.ts │ │ │ ├── GSuiteAdminOAuth2Api.credentials.ts │ │ │ ├── GetResponseApi.credentials.ts │ │ │ ├── GetResponseOAuth2Api.credentials.ts │ │ │ ├── GhostAdminApi.credentials.ts │ │ │ ├── GhostContentApi.credentials.ts │ │ │ ├── GitPassword.credentials.ts │ │ │ ├── GithubApi.credentials.ts │ │ │ ├── GithubOAuth2Api.credentials.ts │ │ │ ├── GitlabApi.credentials.ts │ │ │ ├── GitlabOAuth2Api.credentials.ts │ │ │ ├── GmailOAuth2Api.credentials.ts │ │ │ ├── GoToWebinarOAuth2Api.credentials.ts │ │ │ ├── GongApi.credentials.ts │ │ │ ├── GongOAuth2Api.credentials.ts │ │ │ ├── GoogleAdsOAuth2Api.credentials.ts │ │ │ ├── GoogleAnalyticsOAuth2Api.credentials.ts │ │ │ ├── GoogleApi.credentials.ts │ │ │ ├── GoogleBigQueryOAuth2Api.credentials.ts │ │ │ ├── GoogleBooksOAuth2Api.credentials.ts │ │ │ ├── GoogleBusinessProfileOAuth2Api.credentials.ts │ │ │ ├── GoogleCalendarOAuth2Api.credentials.ts │ │ │ ├── GoogleChatOAuth2Api.credentials.ts │ │ │ ├── GoogleCloudNaturalLanguageOAuth2Api.credentials.ts │ │ │ ├── GoogleCloudStorageOAuth2Api.credentials.ts │ │ │ ├── GoogleContactsOAuth2Api.credentials.ts │ │ │ ├── GoogleDocsOAuth2Api.credentials.ts │ │ │ ├── GoogleDriveOAuth2Api.credentials.ts │ │ │ ├── GoogleFirebaseCloudFirestoreOAuth2Api.credentials.ts │ │ │ ├── GoogleFirebaseRealtimeDatabaseOAuth2Api.credentials.ts │ │ │ ├── GoogleOAuth2Api.credentials.ts │ │ │ ├── GooglePerspectiveOAuth2Api.credentials.ts │ │ │ ├── GoogleSheetsOAuth2Api.credentials.ts │ │ │ ├── GoogleSheetsTriggerOAuth2Api.credentials.ts │ │ │ ├── GoogleSlidesOAuth2Api.credentials.ts │ │ │ ├── GoogleTasksOAuth2Api.credentials.ts │ │ │ ├── GoogleTranslateOAuth2Api.credentials.ts │ │ │ ├── GotifyApi.credentials.ts │ │ │ ├── GrafanaApi.credentials.ts │ │ │ ├── GristApi.credentials.ts │ │ │ ├── GumroadApi.credentials.ts │ │ │ ├── HaloPSAApi.credentials.ts │ │ │ ├── HarvestApi.credentials.ts │ │ │ ├── HarvestOAuth2Api.credentials.ts │ │ │ ├── HelpScoutOAuth2Api.credentials.ts │ │ │ ├── HighLevelApi.credentials.ts │ │ │ ├── HighLevelOAuth2Api.credentials.ts │ │ │ ├── HomeAssistantApi.credentials.ts │ │ │ ├── HttpBasicAuth.credentials.ts │ │ │ ├── HttpBearerAuth.credentials.ts │ │ │ ├── HttpCustomAuth.credentials.ts │ │ │ ├── HttpDigestAuth.credentials.ts │ │ │ ├── HttpHeaderAuth.credentials.ts │ │ │ ├── HttpMultipleHeadersAuth.credentials.ts │ │ │ ├── HttpQueryAuth.credentials.ts │ │ │ ├── HttpSslAuth.credentials.ts │ │ │ ├── HubspotApi.credentials.ts │ │ │ ├── HubspotAppToken.credentials.ts │ │ │ ├── HubspotDeveloperApi.credentials.ts │ │ │ ├── HubspotOAuth2Api.credentials.ts │ │ │ ├── HumanticAiApi.credentials.ts │ │ │ ├── HunterApi.credentials.ts │ │ │ ├── HybridAnalysisApi.credentials.ts │ │ │ ├── Imap.credentials.ts │ │ │ ├── ImpervaWafApi.credentials.ts │ │ │ ├── IntercomApi.credentials.ts │ │ │ ├── InvoiceNinjaApi.credentials.ts │ │ │ ├── IterableApi.credentials.ts │ │ │ ├── JenkinsApi.credentials.ts │ │ │ ├── JinaAiApi.credentials.ts │ │ │ ├── JiraSoftwareCloudApi.credentials.ts │ │ │ ├── JiraSoftwareServerApi.credentials.ts │ │ │ ├── JiraSoftwareServerPatApi.credentials.ts │ │ │ ├── JotFormApi.credentials.ts │ │ │ ├── JwtAuth.credentials.ts │ │ │ ├── Kafka.credentials.ts │ │ │ ├── KeapOAuth2Api.credentials.ts │ │ │ ├── KibanaApi.credentials.ts │ │ │ ├── KoBoToolboxApi.credentials.ts │ │ │ ├── Ldap.credentials.ts │ │ │ ├── LemlistApi.credentials.ts │ │ │ ├── LineNotifyOAuth2Api.credentials.ts │ │ │ ├── LinearApi.credentials.ts │ │ │ ├── LinearOAuth2Api.credentials.ts │ │ │ ├── LingvaNexApi.credentials.ts │ │ │ ├── LinkedInCommunityManagementOAuth2Api.credentials.ts │ │ │ ├── LinkedInOAuth2Api.credentials.ts │ │ │ ├── LoneScaleApi.credentials.ts │ │ │ ├── Magento2Api.credentials.ts │ │ │ ├── MailcheckApi.credentials.ts │ │ │ ├── MailchimpApi.credentials.ts │ │ │ ├── MailchimpOAuth2Api.credentials.ts │ │ │ ├── MailerLiteApi.credentials.ts │ │ │ ├── MailgunApi.credentials.ts │ │ │ ├── MailjetEmailApi.credentials.ts │ │ │ ├── MailjetSmsApi.credentials.ts │ │ │ ├── MalcoreApi.credentials.ts │ │ │ ├── MandrillApi.credentials.ts │ │ │ ├── MarketstackApi.credentials.ts │ │ │ ├── MatrixApi.credentials.ts │ │ │ ├── MattermostApi.credentials.ts │ │ │ ├── MauticApi.credentials.ts │ │ │ ├── MauticOAuth2Api.credentials.ts │ │ │ ├── MediumApi.credentials.ts │ │ │ ├── MediumOAuth2Api.credentials.ts │ │ │ ├── MessageBirdApi.credentials.ts │ │ │ ├── MetabaseApi.credentials.ts │ │ │ ├── MicrosoftAzureCosmosDbSharedKeyApi.credentials.ts │ │ │ ├── MicrosoftAzureMonitorOAuth2Api.credentials.ts │ │ │ ├── MicrosoftDynamicsOAuth2Api.credentials.ts │ │ │ ├── MicrosoftEntraOAuth2Api.credentials.ts │ │ │ ├── MicrosoftExcelOAuth2Api.credentials.ts │ │ │ ├── MicrosoftGraphSecurityOAuth2Api.credentials.ts │ │ │ ├── MicrosoftOAuth2Api.credentials.ts │ │ │ ├── MicrosoftOneDriveOAuth2Api.credentials.ts │ │ │ ├── MicrosoftOutlookOAuth2Api.credentials.ts │ │ │ ├── MicrosoftSharePointOAuth2Api.credentials.ts │ │ │ ├── MicrosoftSql.credentials.ts │ │ │ ├── MicrosoftTeamsOAuth2Api.credentials.ts │ │ │ ├── MicrosoftToDoOAuth2Api.credentials.ts │ │ │ ├── MindeeInvoiceApi.credentials.ts │ │ │ ├── MindeeReceiptApi.credentials.ts │ │ │ ├── MiroOAuth2Api.credentials.ts │ │ │ ├── MispApi.credentials.ts │ │ │ ├── MistApi.credentials.ts │ │ │ ├── MoceanApi.credentials.ts │ │ │ ├── MondayComApi.credentials.ts │ │ │ ├── MondayComOAuth2Api.credentials.ts │ │ │ ├── MongoDb.credentials.ts │ │ │ ├── MonicaCrmApi.credentials.ts │ │ │ ├── Mqtt.credentials.ts │ │ │ ├── Msg91Api.credentials.ts │ │ │ ├── MySql.credentials.ts │ │ │ ├── N8nApi.credentials.ts │ │ │ ├── NasaApi.credentials.ts │ │ │ ├── NetlifyApi.credentials.ts │ │ │ ├── NetscalerAdcApi.credentials.ts │ │ │ ├── NextCloudApi.credentials.ts │ │ │ ├── NextCloudOAuth2Api.credentials.ts │ │ │ ├── NocoDb.credentials.ts │ │ │ ├── NocoDbApiToken.credentials.ts │ │ │ ├── NotionApi.credentials.ts │ │ │ ├── NotionOAuth2Api.credentials.ts │ │ │ ├── NpmApi.credentials.ts │ │ │ ├── OAuth1Api.credentials.ts │ │ │ ├── OAuth2Api.credentials.ts │ │ │ ├── OdooApi.credentials.ts │ │ │ ├── OktaApi.credentials.ts │ │ │ ├── OneSimpleApi.credentials.ts │ │ │ ├── OnfleetApi.credentials.ts │ │ │ ├── OpenAiApi.credentials.ts │ │ │ ├── OpenCTIApi.credentials.ts │ │ │ ├── OpenWeatherMapApi.credentials.ts │ │ │ ├── OracleDBApi.credentials.ts │ │ │ ├── OrbitApi.credentials.ts │ │ │ ├── OuraApi.credentials.ts │ │ │ ├── PaddleApi.credentials.ts │ │ │ ├── PagerDutyApi.credentials.ts │ │ │ ├── PagerDutyOAuth2Api.credentials.ts │ │ │ ├── PayPalApi.credentials.ts │ │ │ ├── PeekalinkApi.credentials.ts │ │ │ ├── PerplexityApi.credentials.ts │ │ │ ├── PhantombusterApi.credentials.ts │ │ │ ├── PhilipsHueOAuth2Api.credentials.ts │ │ │ ├── PipedriveApi.credentials.ts │ │ │ ├── PipedriveOAuth2Api.credentials.ts │ │ │ ├── PlivoApi.credentials.ts │ │ │ ├── PostHogApi.credentials.ts │ │ │ ├── Postgres.credentials.ts │ │ │ ├── PostmarkApi.credentials.ts │ │ │ ├── ProfitWellApi.credentials.ts │ │ │ ├── PushbulletOAuth2Api.credentials.ts │ │ │ ├── PushcutApi.credentials.ts │ │ │ ├── PushoverApi.credentials.ts │ │ │ ├── QRadarApi.credentials.ts │ │ │ ├── QualysApi.credentials.ts │ │ │ ├── QuestDb.credentials.ts │ │ │ ├── QuickBaseApi.credentials.ts │ │ │ ├── QuickBooksOAuth2Api.credentials.ts │ │ │ ├── RabbitMQ.credentials.ts │ │ │ ├── RaindropOAuth2Api.credentials.ts │ │ │ ├── Rapid7InsightVmApi.credentials.ts │ │ │ ├── RecordedFutureApi.credentials.ts │ │ │ ├── RedditOAuth2Api.credentials.ts │ │ │ ├── Redis.credentials.ts │ │ │ ├── RocketchatApi.credentials.ts │ │ │ ├── RundeckApi.credentials.ts │ │ │ ├── S3.credentials.ts │ │ │ ├── SalesforceJwtApi.credentials.ts │ │ │ ├── SalesforceOAuth2Api.credentials.ts │ │ │ ├── SalesmateApi.credentials.ts │ │ │ ├── SeaTableApi.credentials.ts │ │ │ ├── SecurityScorecardApi.credentials.ts │ │ │ ├── SegmentApi.credentials.ts │ │ │ ├── SekoiaApi.credentials.ts │ │ │ ├── SendGridApi.credentials.ts │ │ │ ├── SendyApi.credentials.ts │ │ │ ├── SentryIoApi.credentials.ts │ │ │ ├── SentryIoOAuth2Api.credentials.ts │ │ │ ├── SentryIoServerApi.credentials.ts │ │ │ ├── ServiceNowBasicApi.credentials.ts │ │ │ ├── ServiceNowOAuth2Api.credentials.ts │ │ │ ├── Sftp.credentials.ts │ │ │ ├── ShopifyAccessTokenApi.credentials.ts │ │ │ ├── ShopifyApi.credentials.ts │ │ │ ├── ShopifyOAuth2Api.credentials.ts │ │ │ ├── ShufflerApi.credentials.ts │ │ │ ├── Signl4Api.credentials.ts │ │ │ ├── SlackApi.credentials.ts │ │ │ ├── SlackOAuth2Api.credentials.ts │ │ │ ├── Sms77Api.credentials.ts │ │ │ ├── Smtp.credentials.ts │ │ │ ├── Snowflake.credentials.ts │ │ │ ├── SolarWindsIpamApi.credentials.ts │ │ │ ├── SolarWindsObservabilityApi.credentials.ts │ │ │ ├── SplunkApi.credentials.ts │ │ │ ├── SpotifyOAuth2Api.credentials.ts │ │ │ ├── SshPassword.credentials.ts │ │ │ ├── SshPrivateKey.credentials.ts │ │ │ ├── StackbyApi.credentials.ts │ │ │ ├── StoryblokContentApi.credentials.ts │ │ │ ├── StoryblokManagementApi.credentials.ts │ │ │ ├── StrapiApi.credentials.ts │ │ │ ├── StrapiTokenApi.credentials.ts │ │ │ ├── StravaOAuth2Api.credentials.ts │ │ │ ├── StripeApi.credentials.ts │ │ │ ├── SupabaseApi.credentials.ts │ │ │ ├── SurveyMonkeyApi.credentials.ts │ │ │ ├── SurveyMonkeyOAuth2Api.credentials.ts │ │ │ ├── SyncroMspApi.credentials.ts │ │ │ ├── SysdigApi.credentials.ts │ │ │ ├── TaigaApi.credentials.ts │ │ │ ├── TapfiliateApi.credentials.ts │ │ │ ├── TelegramApi.credentials.ts │ │ │ ├── TheHiveApi.credentials.ts │ │ │ ├── TheHiveProjectApi.credentials.ts │ │ │ ├── TimescaleDb.credentials.ts │ │ │ ├── TodoistApi.credentials.ts │ │ │ ├── TodoistOAuth2Api.credentials.ts │ │ │ ├── TogglApi.credentials.ts │ │ │ ├── TotpApi.credentials.ts │ │ │ ├── TravisCiApi.credentials.ts │ │ │ ├── TrellixEpoApi.credentials.ts │ │ │ ├── TrelloApi.credentials.ts │ │ │ ├── TwakeCloudApi.credentials.ts │ │ │ ├── TwakeServerApi.credentials.ts │ │ │ ├── TwilioApi.credentials.ts │ │ │ ├── TwistOAuth2Api.credentials.ts │ │ │ ├── TwitterOAuth1Api.credentials.ts │ │ │ ├── TwitterOAuth2Api.credentials.ts │ │ │ ├── TypeformApi.credentials.ts │ │ │ ├── TypeformOAuth2Api.credentials.ts │ │ │ ├── UProcApi.credentials.ts │ │ │ ├── UnleashedSoftwareApi.credentials.ts │ │ │ ├── UpleadApi.credentials.ts │ │ │ ├── UptimeRobotApi.credentials.ts │ │ │ ├── UrlScanIoApi.credentials.ts │ │ │ ├── VenafiTlsProtectCloudApi.credentials.ts │ │ │ ├── VenafiTlsProtectDatacenterApi.credentials.ts │ │ │ ├── VeroApi.credentials.ts │ │ │ ├── VerticaApi.credentials.ts │ │ │ ├── VirusTotalApi.credentials.ts │ │ │ ├── VonageApi.credentials.ts │ │ │ ├── WebflowApi.credentials.ts │ │ │ ├── WebflowOAuth2Api.credentials.ts │ │ │ ├── WekanApi.credentials.ts │ │ │ ├── WhatsAppApi.credentials.ts │ │ │ ├── WhatsAppTriggerApi.credentials.ts │ │ │ ├── WiseApi.credentials.ts │ │ │ ├── WooCommerceApi.credentials.ts │ │ │ ├── WordpressApi.credentials.ts │ │ │ ├── WordpressOAuth2Api.credentials.ts │ │ │ ├── WorkableApi.credentials.ts │ │ │ ├── WufooApi.credentials.ts │ │ │ ├── XeroOAuth2Api.credentials.ts │ │ │ ├── YouTubeOAuth2Api.credentials.ts │ │ │ ├── YourlsApi.credentials.ts │ │ │ ├── ZabbixApi.credentials.ts │ │ │ ├── ZammadBasicAuthApi.credentials.ts │ │ │ ├── ZammadTokenAuthApi.credentials.ts │ │ │ ├── ZendeskApi.credentials.ts │ │ │ ├── ZendeskOAuth2Api.credentials.ts │ │ │ ├── ZohoOAuth2Api.credentials.ts │ │ │ ├── ZoomApi.credentials.ts │ │ │ ├── ZoomOAuth2Api.credentials.ts │ │ │ ├── ZscalerZiaApi.credentials.ts │ │ │ ├── ZulipApi.credentials.ts │ │ │ ├── common/ │ │ │ │ ├── aws/ │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ ├── system-credentials-utils.test.ts │ │ │ │ │ ├── system-credentials-utils.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── http.ts │ │ │ └── test/ │ │ │ ├── Aws.credentials.test.ts │ │ │ ├── MicrosoftExcelOAuth2Api.credentials.test.ts │ │ │ ├── MicrosoftTeamsOAuth2Api.credentials.test.ts │ │ │ ├── OpenAiApi.credentials.test.ts │ │ │ ├── WordpressOAuth2Api.credentials.test.ts │ │ │ └── common/ │ │ │ └── http.test.ts │ │ ├── eslint.config.mjs │ │ ├── index.js │ │ ├── jest.config.js │ │ ├── nodes/ │ │ │ ├── ActionNetwork/ │ │ │ │ ├── ActionNetwork.node.json │ │ │ │ ├── ActionNetwork.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── AttendanceDescription.ts │ │ │ │ │ ├── EventDescription.ts │ │ │ │ │ ├── PersonDescription.ts │ │ │ │ │ ├── PersonTagDescription.ts │ │ │ │ │ ├── PetitionDescription.ts │ │ │ │ │ ├── SharedFields.ts │ │ │ │ │ ├── SignatureDescription.ts │ │ │ │ │ ├── TagDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── types.ts │ │ │ ├── ActiveCampaign/ │ │ │ │ ├── AccountContactDescription.ts │ │ │ │ ├── AccountDescription.ts │ │ │ │ ├── ActiveCampaign.node.json │ │ │ │ ├── ActiveCampaign.node.ts │ │ │ │ ├── ActiveCampaignTrigger.node.json │ │ │ │ ├── ActiveCampaignTrigger.node.ts │ │ │ │ ├── ConnectionDescription.ts │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── ContactListDescription.ts │ │ │ │ ├── ContactTagDescription.ts │ │ │ │ ├── DealDescription.ts │ │ │ │ ├── EcomCustomerDescription.ts │ │ │ │ ├── EcomOrderDescription.ts │ │ │ │ ├── EcomOrderProductsDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ListDescription.ts │ │ │ │ ├── TagDescription.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── account/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── contact/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── contactList/ │ │ │ │ │ │ └── add.json │ │ │ │ │ ├── contactTag/ │ │ │ │ │ │ └── add.json │ │ │ │ │ ├── deal/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── list/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── tag/ │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── currencies.ts │ │ │ ├── AcuityScheduling/ │ │ │ │ ├── AcuitySchedulingTrigger.node.json │ │ │ │ ├── AcuitySchedulingTrigger.node.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── Adalo/ │ │ │ │ ├── Adalo.node.json │ │ │ │ ├── Adalo.node.ts │ │ │ │ ├── CollectionDescription.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── collection/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ └── types.ts │ │ │ ├── Affinity/ │ │ │ │ ├── Affinity.node.json │ │ │ │ ├── Affinity.node.ts │ │ │ │ ├── AffinityTrigger.node.json │ │ │ │ ├── AffinityTrigger.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ListDescription.ts │ │ │ │ ├── ListEntryDescription.ts │ │ │ │ ├── OrganizationDescription.ts │ │ │ │ ├── OrganizationInterface.ts │ │ │ │ ├── PersonDescription.ts │ │ │ │ ├── PersonInterface.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── list/ │ │ │ │ │ └── getAll.json │ │ │ │ ├── listEntry/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── organization/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── person/ │ │ │ │ ├── get.json │ │ │ │ └── getAll.json │ │ │ ├── AgileCrm/ │ │ │ │ ├── AgileCrm.node.json │ │ │ │ ├── AgileCrm.node.ts │ │ │ │ ├── CompanyDescription.ts │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── ContactInterface.ts │ │ │ │ ├── DealDescription.ts │ │ │ │ ├── DealInterface.ts │ │ │ │ ├── FilterInterface.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── AiTransform/ │ │ │ │ ├── AiTransform.node.json │ │ │ │ └── AiTransform.node.ts │ │ │ ├── Airtable/ │ │ │ │ ├── Airtable.node.json │ │ │ │ ├── Airtable.node.ts │ │ │ │ ├── AirtableTrigger.node.json │ │ │ │ ├── AirtableTrigger.node.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── Airtable.node.test.ts │ │ │ │ │ ├── v2/ │ │ │ │ │ │ ├── node/ │ │ │ │ │ │ │ ├── base/ │ │ │ │ │ │ │ │ ├── getMany.test.ts │ │ │ │ │ │ │ │ └── getSchema.test.ts │ │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ │ └── record/ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── deleteRecord.test.ts │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── search.test.ts │ │ │ │ │ │ │ └── update.test.ts │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ └── workflow.json │ │ │ │ ├── v1/ │ │ │ │ │ ├── AirtableV1.node.ts │ │ │ │ │ └── GenericFunctions.ts │ │ │ │ └── v2/ │ │ │ │ ├── AirtableV2.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── base/ │ │ │ │ │ │ ├── Base.resource.ts │ │ │ │ │ │ ├── getMany.operation.ts │ │ │ │ │ │ └── getSchema.operation.ts │ │ │ │ │ ├── common.descriptions.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── record/ │ │ │ │ │ │ ├── Record.resource.ts │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deleteRecord.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── search.operation.ts │ │ │ │ │ │ ├── update.operation.ts │ │ │ │ │ │ └── upsert.operation.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ ├── loadOptions.ts │ │ │ │ │ └── resourceMapping.ts │ │ │ │ └── transport/ │ │ │ │ └── index.ts │ │ │ ├── Airtop/ │ │ │ │ ├── Airtop.node.json │ │ │ │ ├── Airtop.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── agent/ │ │ │ │ │ │ └── run.json │ │ │ │ │ ├── extraction/ │ │ │ │ │ │ ├── getPaginated.json │ │ │ │ │ │ ├── query.json │ │ │ │ │ │ └── scrape.json │ │ │ │ │ ├── interaction/ │ │ │ │ │ │ ├── click.json │ │ │ │ │ │ └── type.json │ │ │ │ │ ├── session/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ └── terminate.json │ │ │ │ │ └── window/ │ │ │ │ │ └── create.json │ │ │ │ ├── actions/ │ │ │ │ │ ├── agent/ │ │ │ │ │ │ ├── Agent.resource.ts │ │ │ │ │ │ ├── agent.types.ts │ │ │ │ │ │ ├── agent.utils.ts │ │ │ │ │ │ └── run.operation.ts │ │ │ │ │ ├── common/ │ │ │ │ │ │ ├── fields.ts │ │ │ │ │ │ ├── output.utils.ts │ │ │ │ │ │ └── session.utils.ts │ │ │ │ │ ├── extraction/ │ │ │ │ │ │ ├── Extraction.resource.ts │ │ │ │ │ │ ├── getPaginated.operation.ts │ │ │ │ │ │ ├── query.operation.ts │ │ │ │ │ │ └── scrape.operation.ts │ │ │ │ │ ├── file/ │ │ │ │ │ │ ├── File.resource.ts │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── getMany.operation.ts │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ ├── load.operation.ts │ │ │ │ │ │ └── upload.operation.ts │ │ │ │ │ ├── interaction/ │ │ │ │ │ │ ├── Interaction.resource.ts │ │ │ │ │ │ ├── click.operation.ts │ │ │ │ │ │ ├── fill.operation.ts │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ ├── hover.operation.ts │ │ │ │ │ │ ├── scroll.operation.ts │ │ │ │ │ │ └── type.operation.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ ├── session/ │ │ │ │ │ │ ├── Session.resource.ts │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── save.operation.ts │ │ │ │ │ │ ├── terminate.operation.ts │ │ │ │ │ │ └── waitForDownload.operation.ts │ │ │ │ │ └── window/ │ │ │ │ │ ├── Window.resource.ts │ │ │ │ │ ├── close.operation.ts │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ ├── getLiveView.operation.ts │ │ │ │ │ ├── list.operation.ts │ │ │ │ │ ├── load.operation.ts │ │ │ │ │ └── takeScreenshot.operation.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── countries.ts │ │ │ │ ├── methods/ │ │ │ │ │ └── index.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── node/ │ │ │ │ │ │ ├── agent/ │ │ │ │ │ │ │ └── run.test.ts │ │ │ │ │ │ ├── extraction/ │ │ │ │ │ │ │ ├── getPaginated.test.ts │ │ │ │ │ │ │ ├── query.test.ts │ │ │ │ │ │ │ └── scrape.test.ts │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ ├── deleteFile.test.ts │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── getMany.test.ts │ │ │ │ │ │ │ └── helpers.test.ts │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ ├── interaction/ │ │ │ │ │ │ │ ├── click.test.ts │ │ │ │ │ │ │ ├── fill.test.ts │ │ │ │ │ │ │ ├── helpers.test.ts │ │ │ │ │ │ │ ├── hover.test.ts │ │ │ │ │ │ │ ├── scroll.test.ts │ │ │ │ │ │ │ └── type.test.ts │ │ │ │ │ │ ├── session/ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── save.test.ts │ │ │ │ │ │ │ ├── terminate.test.ts │ │ │ │ │ │ │ └── waitForDownload.test.ts │ │ │ │ │ │ └── window/ │ │ │ │ │ │ ├── close.test.ts │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ ├── load.test.ts │ │ │ │ │ │ └── takeScreenshot.test.ts │ │ │ │ │ ├── session-utils.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ └── transport/ │ │ │ │ ├── index.ts │ │ │ │ └── types.ts │ │ │ ├── Amqp/ │ │ │ │ ├── Amqp.node.json │ │ │ │ ├── Amqp.node.test.ts │ │ │ │ ├── Amqp.node.ts │ │ │ │ ├── AmqpTrigger.node.json │ │ │ │ ├── AmqpTrigger.node.test.ts │ │ │ │ ├── AmqpTrigger.node.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── handleMessage.test.ts │ │ │ │ │ └── handleMessage.ts │ │ │ │ └── types.ts │ │ │ ├── ApiTemplateIo/ │ │ │ │ ├── ApiTemplateIo.node.json │ │ │ │ ├── ApiTemplateIo.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── image/ │ │ │ │ │ └── create.json │ │ │ │ └── pdf/ │ │ │ │ └── create.json │ │ │ ├── Asana/ │ │ │ │ ├── Asana.node.json │ │ │ │ ├── Asana.node.ts │ │ │ │ ├── AsanaTrigger.node.json │ │ │ │ ├── AsanaTrigger.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── project/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── subtask/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── task/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ ├── move.json │ │ │ │ │ ├── search.json │ │ │ │ │ └── update.json │ │ │ │ ├── taskComment/ │ │ │ │ │ └── add.json │ │ │ │ ├── taskProject/ │ │ │ │ │ └── add.json │ │ │ │ └── user/ │ │ │ │ ├── get.json │ │ │ │ └── getAll.json │ │ │ ├── Autopilot/ │ │ │ │ ├── Autopilot.node.json │ │ │ │ ├── Autopilot.node.ts │ │ │ │ ├── AutopilotTrigger.node.json │ │ │ │ ├── AutopilotTrigger.node.ts │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── ContactJourneyDescription.ts │ │ │ │ ├── ContactListDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── ListDescription.ts │ │ │ ├── Aws/ │ │ │ │ ├── AwsLambda.node.json │ │ │ │ ├── AwsLambda.node.ts │ │ │ │ ├── AwsSns.node.json │ │ │ │ ├── AwsSns.node.ts │ │ │ │ ├── AwsSnsTrigger.node.json │ │ │ │ ├── AwsSnsTrigger.node.ts │ │ │ │ ├── CertificateManager/ │ │ │ │ │ ├── AwsCertificateManager.node.json │ │ │ │ │ ├── AwsCertificateManager.node.ts │ │ │ │ │ ├── CertificateDescription.ts │ │ │ │ │ └── GenericFunctions.ts │ │ │ │ ├── Cognito/ │ │ │ │ │ ├── AwsCognito.node.json │ │ │ │ │ ├── AwsCognito.node.ts │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── common.description.ts │ │ │ │ │ │ ├── group/ │ │ │ │ │ │ │ ├── Group.resource.ts │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── user/ │ │ │ │ │ │ │ ├── User.resource.ts │ │ │ │ │ │ │ ├── addToGroup.operation.ts │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ ├── removeFromGroup.operation.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ └── userPool/ │ │ │ │ │ │ ├── UserPool.resource.ts │ │ │ │ │ │ └── get.operation.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── listSearch.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── group/ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ │ ├── listSearch/ │ │ │ │ │ │ │ └── listSearch.test.ts │ │ │ │ │ │ ├── user/ │ │ │ │ │ │ │ ├── addToGroup.test.ts │ │ │ │ │ │ │ ├── addToGroup.workflow.json │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ ├── removeFromGroup.test.ts │ │ │ │ │ │ │ ├── removeFromGroup.workflow.json │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ │ └── userPool/ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ └── get.workflow.json │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── Comprehend/ │ │ │ │ │ ├── AwsComprehend.node.json │ │ │ │ │ ├── AwsComprehend.node.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ └── text/ │ │ │ │ │ │ ├── detectEntities.json │ │ │ │ │ │ └── detectSentiment.json │ │ │ │ │ └── test/ │ │ │ │ │ ├── AwsComprehend.node.test.ts │ │ │ │ │ └── AwsComprehendTestWorkflow.json │ │ │ │ ├── DynamoDB/ │ │ │ │ │ ├── AwsDynamoDB.node.json │ │ │ │ │ ├── AwsDynamoDB.node.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── ItemDescription.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ └── item/ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── __test__/ │ │ │ │ │ │ └── node/ │ │ │ │ │ │ ├── AwsDynamoDB.node.test.ts │ │ │ │ │ │ └── workflow.json │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── ELB/ │ │ │ │ │ ├── AwsElb.node.json │ │ │ │ │ ├── AwsElb.node.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── ListenerCertificateDescription.ts │ │ │ │ │ ├── LoadBalancerDescription.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── AwsElb.node.test.ts │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ ├── README.md │ │ │ │ │ ├── add-listener-certificate.workflow.json │ │ │ │ │ ├── create-load-balancer.workflow.json │ │ │ │ │ ├── delete-load-balancer.workflow.json │ │ │ │ │ ├── get-load-balancer.workflow.json │ │ │ │ │ ├── get-many-listener-certificates-all.workflow.json │ │ │ │ │ ├── get-many-listener-certificates.workflow.json │ │ │ │ │ ├── get-many-load-balancers-with-names.workflow.json │ │ │ │ │ ├── get-many-load-balancers.workflow.json │ │ │ │ │ └── remove-listener-certificate.workflow.json │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── IAM/ │ │ │ │ │ ├── AwsIam.node.json │ │ │ │ │ ├── AwsIam.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ └── user/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── common.ts │ │ │ │ │ │ ├── group/ │ │ │ │ │ │ │ ├── Group.resource.ts │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── user/ │ │ │ │ │ │ ├── User.resource.ts │ │ │ │ │ │ ├── addToGroup.operation.ts │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ ├── removeFromGroup.operation.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── listSearch.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── group/ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ │ ├── errorHandler.test.ts │ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ │ ├── listSearch/ │ │ │ │ │ │ │ └── listSearch.test.ts │ │ │ │ │ │ └── user/ │ │ │ │ │ │ ├── addToGroup.test.ts │ │ │ │ │ │ ├── addToGroup.workflow.json │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ ├── removeFromGroup.test.ts │ │ │ │ │ │ ├── removeFromGroup.workflow.json │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── Rekognition/ │ │ │ │ │ ├── AwsRekognition.node.json │ │ │ │ │ ├── AwsRekognition.node.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ └── image/ │ │ │ │ │ │ └── analyze.json │ │ │ │ │ └── test/ │ │ │ │ │ ├── AwsRekognition.node.test.ts │ │ │ │ │ └── AwsRekognitionTestWorkflow.json │ │ │ │ ├── S3/ │ │ │ │ │ ├── AwsS3.node.json │ │ │ │ │ ├── AwsS3.node.ts │ │ │ │ │ ├── V1/ │ │ │ │ │ │ ├── AwsS3V1.node.ts │ │ │ │ │ │ ├── BucketDescription.ts │ │ │ │ │ │ ├── FileDescription.ts │ │ │ │ │ │ ├── FolderDescription.ts │ │ │ │ │ │ └── GenericFunctions.ts │ │ │ │ │ ├── V2/ │ │ │ │ │ │ ├── AwsS3V2.node.ts │ │ │ │ │ │ ├── BucketDescription.ts │ │ │ │ │ │ ├── FileDescription.ts │ │ │ │ │ │ ├── FolderDescription.ts │ │ │ │ │ │ └── GenericFunctions.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ │ ├── bucket/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ └── search.json │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ ├── copy.json │ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ │ ├── download.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ └── upload.json │ │ │ │ │ │ └── folder/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── test/ │ │ │ │ │ ├── V1/ │ │ │ │ │ │ ├── AwsS3.file.upload.V1.workflow.json │ │ │ │ │ │ ├── AwsS3.node.test.ts │ │ │ │ │ │ └── GenericFunctions.test.ts │ │ │ │ │ └── V2/ │ │ │ │ │ ├── AwsS3.file.upload.V2.workflow.json │ │ │ │ │ ├── AwsS3.node.operation.test.ts │ │ │ │ │ └── AwsS3.node.test.ts │ │ │ │ ├── SES/ │ │ │ │ │ ├── AwsSes.node.json │ │ │ │ │ ├── AwsSes.node.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ └── email/ │ │ │ │ │ │ ├── send.json │ │ │ │ │ │ └── sendTemplate.json │ │ │ │ │ └── test/ │ │ │ │ │ └── AwsSes.node.test.ts │ │ │ │ ├── SQS/ │ │ │ │ │ ├── AwsSqs.node.json │ │ │ │ │ └── AwsSqs.node.ts │ │ │ │ ├── Textract/ │ │ │ │ │ ├── AwsTextract.node.json │ │ │ │ │ ├── AwsTextract.node.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── AwsTextract.node.test.ts │ │ │ │ │ └── GenericFunctions.test.ts │ │ │ │ ├── Transcribe/ │ │ │ │ │ ├── AwsTranscribe.node.json │ │ │ │ │ ├── AwsTranscribe.node.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ └── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── transcriptionJob/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── get.json │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── AwsLambda.node.test.ts │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ └── credentials.ts │ │ │ │ └── utils.ts │ │ │ ├── BambooHr/ │ │ │ │ ├── BambooHr.node.json │ │ │ │ ├── BambooHr.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── companyReport/ │ │ │ │ │ │ └── get.json │ │ │ │ │ └── employee/ │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ └── v1/ │ │ │ │ ├── actions/ │ │ │ │ │ ├── Interfaces.ts │ │ │ │ │ ├── companyReport/ │ │ │ │ │ │ ├── get/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── employee/ │ │ │ │ │ │ ├── create/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── shareDescription.ts │ │ │ │ │ │ ├── get/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getAll/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── update/ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── sharedDescription.ts │ │ │ │ │ ├── employeeDocument/ │ │ │ │ │ │ ├── del/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── download/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getAll/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── update/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── upload/ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── file/ │ │ │ │ │ │ ├── del/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── download/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getAll/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── update/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── upload/ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── credentialTest.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── loadOptions.ts │ │ │ │ └── transport/ │ │ │ │ └── index.ts │ │ │ ├── Bannerbear/ │ │ │ │ ├── Bannerbear.node.json │ │ │ │ ├── Bannerbear.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ImageDescription.ts │ │ │ │ ├── TemplateDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── image/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── get.json │ │ │ │ └── template/ │ │ │ │ └── get.json │ │ │ ├── Baserow/ │ │ │ │ ├── Baserow.node.json │ │ │ │ ├── Baserow.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── OperationDescription.ts │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ └── workflow/ │ │ │ │ │ ├── apiResponses.ts │ │ │ │ │ ├── workflow.json │ │ │ │ │ └── workflow.test.ts │ │ │ │ └── types.ts │ │ │ ├── Beeminder/ │ │ │ │ ├── Beeminder.node.functions.ts │ │ │ │ ├── Beeminder.node.json │ │ │ │ ├── Beeminder.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── test/ │ │ │ │ ├── Beeminder.node.functions.test.ts │ │ │ │ ├── Beeminder.node.test.ts │ │ │ │ └── workflow.json │ │ │ ├── Bitbucket/ │ │ │ │ ├── BitbucketTrigger.node.json │ │ │ │ ├── BitbucketTrigger.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── test/ │ │ │ │ ├── BitbucketTrigger.node.test.ts │ │ │ │ └── GenericFunctions.test.ts │ │ │ ├── Bitly/ │ │ │ │ ├── Bitly.node.json │ │ │ │ ├── Bitly.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── LinkDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── link/ │ │ │ │ └── create.json │ │ │ ├── Bitwarden/ │ │ │ │ ├── Bitwarden.node.json │ │ │ │ ├── Bitwarden.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── member/ │ │ │ │ │ └── getAll.json │ │ │ │ └── descriptions/ │ │ │ │ ├── CollectionDescription.ts │ │ │ │ ├── EventDescription.ts │ │ │ │ ├── GroupDescription.ts │ │ │ │ └── MemberDescription.ts │ │ │ ├── Box/ │ │ │ │ ├── Box.node.json │ │ │ │ ├── Box.node.ts │ │ │ │ ├── BoxTrigger.node.json │ │ │ │ ├── BoxTrigger.node.ts │ │ │ │ ├── FileDescription.ts │ │ │ │ ├── FolderDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── file/ │ │ │ │ │ │ ├── copy.json │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── download.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── search.json │ │ │ │ │ │ └── upload.json │ │ │ │ │ └── folder/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── search.json │ │ │ │ └── __test__/ │ │ │ │ └── BoxTrigger.node.test.ts │ │ │ ├── Brandfetch/ │ │ │ │ ├── Brandfetch.node.json │ │ │ │ ├── Brandfetch.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── test/ │ │ │ │ └── GenericFunctions.test.ts │ │ │ ├── Brevo/ │ │ │ │ ├── AttributeDescription.ts │ │ │ │ ├── Brevo.node.json │ │ │ │ ├── Brevo.node.ts │ │ │ │ ├── BrevoTrigger.node.json │ │ │ │ ├── BrevoTrigger.node.ts │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── EmailDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── SenderDescrition.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── contact/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ ├── update.json │ │ │ │ │ └── upsert.json │ │ │ │ └── email/ │ │ │ │ ├── send.json │ │ │ │ └── sendTemplate.json │ │ │ ├── Bubble/ │ │ │ │ ├── Bubble.node.json │ │ │ │ ├── Bubble.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ObjectDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── object/ │ │ │ │ ├── create.json │ │ │ │ ├── delete.json │ │ │ │ ├── get.json │ │ │ │ ├── getAll.json │ │ │ │ └── update.json │ │ │ ├── Cal/ │ │ │ │ ├── CalTrigger.node.json │ │ │ │ ├── CalTrigger.node.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── Calendly/ │ │ │ │ ├── CalendlyTrigger.node.json │ │ │ │ ├── CalendlyTrigger.node.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── Chargebee/ │ │ │ │ ├── Chargebee.node.json │ │ │ │ ├── Chargebee.node.ts │ │ │ │ ├── ChargebeeTrigger.node.json │ │ │ │ └── ChargebeeTrigger.node.ts │ │ │ ├── CircleCi/ │ │ │ │ ├── CircleCi.node.json │ │ │ │ ├── CircleCi.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── PipelineDescription.ts │ │ │ ├── Cisco/ │ │ │ │ └── Webex/ │ │ │ │ ├── CiscoWebex.node.json │ │ │ │ ├── CiscoWebex.node.ts │ │ │ │ ├── CiscoWebexTrigger.node.json │ │ │ │ ├── CiscoWebexTrigger.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── message/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── get.json │ │ │ │ └── descriptions/ │ │ │ │ ├── MeetingDescription.ts │ │ │ │ ├── MeetingTranscript.ts │ │ │ │ ├── MessageDescription.ts │ │ │ │ └── index.ts │ │ │ ├── Clearbit/ │ │ │ │ ├── Clearbit.node.json │ │ │ │ ├── Clearbit.node.ts │ │ │ │ ├── CompanyDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── PersonDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── company/ │ │ │ │ │ └── autocomplete.json │ │ │ │ └── person/ │ │ │ │ └── enrich.json │ │ │ ├── ClickUp/ │ │ │ │ ├── ChecklistDescription.ts │ │ │ │ ├── ChecklistItemDescription.ts │ │ │ │ ├── ClickUp.node.json │ │ │ │ ├── ClickUp.node.ts │ │ │ │ ├── ClickUpTrigger.node.json │ │ │ │ ├── ClickUpTrigger.node.ts │ │ │ │ ├── CommentDescription.ts │ │ │ │ ├── FolderDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── GoalDescription.ts │ │ │ │ ├── GoalKeyResultDescription.ts │ │ │ │ ├── GuestDescription.ts │ │ │ │ ├── ListDescription.ts │ │ │ │ ├── ListInterface.ts │ │ │ │ ├── SpaceTagDescription.ts │ │ │ │ ├── TaskDependencyDescription.ts │ │ │ │ ├── TaskDescription.ts │ │ │ │ ├── TaskInterface.ts │ │ │ │ ├── TaskListDescription.ts │ │ │ │ ├── TaskTagDescription.ts │ │ │ │ ├── TimeEntryDescription.ts │ │ │ │ ├── TimeEntryTagDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── checklist/ │ │ │ │ │ └── create.json │ │ │ │ ├── checklistItem/ │ │ │ │ │ └── create.json │ │ │ │ ├── comment/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── folder/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── list/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── customFields.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── member.json │ │ │ │ ├── task/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── delete.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ ├── taskTag/ │ │ │ │ │ └── add.json │ │ │ │ └── timeEntry/ │ │ │ │ └── getAll.json │ │ │ ├── Clockify/ │ │ │ │ ├── ClientDescription.ts │ │ │ │ ├── Clockify.node.json │ │ │ │ ├── Clockify.node.ts │ │ │ │ ├── ClockifyTrigger.node.json │ │ │ │ ├── ClockifyTrigger.node.ts │ │ │ │ ├── CommonDtos.ts │ │ │ │ ├── EntryType.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ProjectDescription.ts │ │ │ │ ├── ProjectInterfaces.ts │ │ │ │ ├── TagDescription.ts │ │ │ │ ├── TaskDescription.ts │ │ │ │ ├── TimeEntryDescription.ts │ │ │ │ ├── TimeEntryInterfaces.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ ├── UserDtos.ts │ │ │ │ ├── WorkpaceInterfaces.ts │ │ │ │ ├── WorkspaceDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── client/ │ │ │ │ │ └── getAll.json │ │ │ │ ├── project/ │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── timeEntry/ │ │ │ │ │ └── create.json │ │ │ │ └── user/ │ │ │ │ └── getAll.json │ │ │ ├── Cloudflare/ │ │ │ │ ├── Cloudflare.node.json │ │ │ │ ├── Cloudflare.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── ZoneCertificateDescription.ts │ │ │ ├── Cockpit/ │ │ │ │ ├── Cockpit.node.json │ │ │ │ ├── Cockpit.node.ts │ │ │ │ ├── CollectionDescription.ts │ │ │ │ ├── CollectionFunctions.ts │ │ │ │ ├── CollectionInterface.ts │ │ │ │ ├── FormDescription.ts │ │ │ │ ├── FormFunctions.ts │ │ │ │ ├── FormInterface.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── SingletonDescription.ts │ │ │ │ └── SingletonFunctions.ts │ │ │ ├── Coda/ │ │ │ │ ├── Coda.node.json │ │ │ │ ├── Coda.node.ts │ │ │ │ ├── ControlDescription.ts │ │ │ │ ├── FormulaDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── TableDescription.ts │ │ │ │ ├── ViewDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.1.0/ │ │ │ │ ├── table/ │ │ │ │ │ ├── createRow.json │ │ │ │ │ ├── getAllColumns.json │ │ │ │ │ ├── getAllRows.json │ │ │ │ │ ├── getRow.json │ │ │ │ │ └── pushButton.json │ │ │ │ └── view/ │ │ │ │ ├── get.json │ │ │ │ ├── getAll.json │ │ │ │ └── getAllViewRows.json │ │ │ ├── Code/ │ │ │ │ ├── Code.node.json │ │ │ │ ├── Code.node.ts │ │ │ │ ├── ExecutionError.ts │ │ │ │ ├── JavaScriptSandbox.ts │ │ │ │ ├── JsCodeValidator.ts │ │ │ │ ├── JsTaskRunnerSandbox.ts │ │ │ │ ├── PythonTaskRunnerSandbox.ts │ │ │ │ ├── Sandbox.ts │ │ │ │ ├── ValidationError.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── JavascriptCodeDescription.ts │ │ │ │ │ └── PythonCodeDescription.ts │ │ │ │ ├── errors/ │ │ │ │ │ └── WrappedExecutionError.ts │ │ │ │ ├── python-runner-unavailable.error.ts │ │ │ │ ├── reserved-key-found-error.ts │ │ │ │ ├── result-validation.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── Code.node.test.ts │ │ │ │ │ ├── Code.workflow.json │ │ │ │ │ ├── ExecutionError.test.ts │ │ │ │ │ ├── JsCodeValidator.test.ts │ │ │ │ │ ├── JsTaskRunnerSandbox.test.ts │ │ │ │ │ ├── PythonTaskRunnerSandbox.test.ts │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── workflow.do_not_obfuscate_validation_error.json │ │ │ │ ├── throw-execution-error.ts │ │ │ │ └── utils.ts │ │ │ ├── CoinGecko/ │ │ │ │ ├── CoinDescription.ts │ │ │ │ ├── CoinGecko.node.json │ │ │ │ ├── CoinGecko.node.ts │ │ │ │ ├── EventDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── coin/ │ │ │ │ ├── candlestick.json │ │ │ │ ├── get.json │ │ │ │ ├── getAll.json │ │ │ │ ├── history.json │ │ │ │ ├── market.json │ │ │ │ ├── marketChart.json │ │ │ │ ├── price.json │ │ │ │ └── ticker.json │ │ │ ├── CompareDatasets/ │ │ │ │ ├── CompareDatasets.node.json │ │ │ │ ├── CompareDatasets.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── test/ │ │ │ │ ├── node/ │ │ │ │ │ ├── CompareDatasets.test.ts │ │ │ │ │ ├── workflow.compareDatasets.forceInputNodeExecution.json │ │ │ │ │ ├── workflow.compareDatasets.fuzzy.json │ │ │ │ │ ├── workflow.compareDatasets.fuzzy.missing_keys.json │ │ │ │ │ ├── workflow.compareDatasets.json │ │ │ │ │ ├── workflow.compareDatasets.skipFields.json │ │ │ │ │ └── workflow.update_2_2.json │ │ │ │ └── utils/ │ │ │ │ └── utils.test.ts │ │ │ ├── Compression/ │ │ │ │ ├── Compression.node.json │ │ │ │ ├── Compression.node.ts │ │ │ │ └── test/ │ │ │ │ └── node/ │ │ │ │ ├── Compression.test.ts │ │ │ │ ├── Decompression.test.ts │ │ │ │ ├── lorem.txt │ │ │ │ └── workflow.compression.json │ │ │ ├── Contentful/ │ │ │ │ ├── AssetDescription.ts │ │ │ │ ├── ContentTypeDescription.ts │ │ │ │ ├── Contentful.node.json │ │ │ │ ├── Contentful.node.ts │ │ │ │ ├── EntryDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── LocaleDescription.ts │ │ │ │ ├── SearchParameterDescription.ts │ │ │ │ ├── SpaceDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── contentType/ │ │ │ │ │ └── get.json │ │ │ │ └── entry/ │ │ │ │ └── getAll.json │ │ │ ├── ConvertKit/ │ │ │ │ ├── ConvertKit.node.json │ │ │ │ ├── ConvertKit.node.ts │ │ │ │ ├── ConvertKitTrigger.node.json │ │ │ │ ├── ConvertKitTrigger.node.ts │ │ │ │ ├── CustomFieldDescription.ts │ │ │ │ ├── FormDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── SequenceDescription.ts │ │ │ │ ├── TagDescription.ts │ │ │ │ ├── TagSubscriberDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── form/ │ │ │ │ │ └── addSubscriber.json │ │ │ │ └── tagSubscriber/ │ │ │ │ └── add.json │ │ │ ├── Copper/ │ │ │ │ ├── Copper.node.json │ │ │ │ ├── Copper.node.ts │ │ │ │ ├── CopperTrigger.node.json │ │ │ │ ├── CopperTrigger.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── CompanyDescription.ts │ │ │ │ │ ├── CustomerSourceDescription.ts │ │ │ │ │ ├── LeadDescription.ts │ │ │ │ │ ├── OpportunityDescription.ts │ │ │ │ │ ├── PersonDescription.ts │ │ │ │ │ ├── ProjectDescription.ts │ │ │ │ │ ├── TaskDescription.ts │ │ │ │ │ ├── UserDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── utils/ │ │ │ │ ├── sharedFields.ts │ │ │ │ └── types.ts │ │ │ ├── Cortex/ │ │ │ │ ├── AnalyzerDescriptions.ts │ │ │ │ ├── AnalyzerInterface.ts │ │ │ │ ├── Cortex.node.json │ │ │ │ ├── Cortex.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── JobDescription.ts │ │ │ │ └── ResponderDescription.ts │ │ │ ├── CrateDb/ │ │ │ │ ├── CrateDb.node.json │ │ │ │ └── CrateDb.node.ts │ │ │ ├── Cron/ │ │ │ │ ├── Cron.node.json │ │ │ │ ├── Cron.node.ts │ │ │ │ └── test/ │ │ │ │ └── Cron.node.test.ts │ │ │ ├── Crypto/ │ │ │ │ ├── Crypto.node.json │ │ │ │ ├── Crypto.node.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── CryptoV1.node.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── Crypto.node.test.ts │ │ │ │ │ └── CryptoTest.workflow.json │ │ │ │ └── v2/ │ │ │ │ ├── CryptoV2.node.ts │ │ │ │ └── test/ │ │ │ │ └── Crypto.node.test.ts │ │ │ ├── Currents/ │ │ │ │ ├── Currents.node.ts │ │ │ │ ├── CurrentsTrigger.node.ts │ │ │ │ ├── CurrentsTriggerHelpers.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── ActionDescription.ts │ │ │ │ │ ├── InstanceDescription.ts │ │ │ │ │ ├── ProjectDescription.ts │ │ │ │ │ ├── RunDescription.ts │ │ │ │ │ ├── SignatureDescription.ts │ │ │ │ │ ├── SpecFileDescription.ts │ │ │ │ │ ├── TestDescription.ts │ │ │ │ │ ├── TestResultDescription.ts │ │ │ │ │ └── common.descriptions.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── listSearch.ts │ │ │ │ └── test/ │ │ │ │ ├── Currents.structure.test.ts │ │ │ │ ├── CurrentsTrigger.test.ts │ │ │ │ ├── CurrentsTriggerHelpers.test.ts │ │ │ │ └── listSearch.test.ts │ │ │ ├── CustomerIo/ │ │ │ │ ├── CampaignDescription.ts │ │ │ │ ├── CustomerDescription.ts │ │ │ │ ├── CustomerIo.node.json │ │ │ │ ├── CustomerIo.node.ts │ │ │ │ ├── CustomerIoTrigger.node.json │ │ │ │ ├── CustomerIoTrigger.node.ts │ │ │ │ ├── EventDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── SegmentDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── customer/ │ │ │ │ │ └── upsert.json │ │ │ │ └── event/ │ │ │ │ └── track.json │ │ │ ├── DataTable/ │ │ │ │ ├── DataTable.node.json │ │ │ │ ├── DataTable.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ ├── v1.0.0/ │ │ │ │ │ │ └── row/ │ │ │ │ │ │ ├── deleteRows.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── insert.json │ │ │ │ │ └── v1.1.0/ │ │ │ │ │ ├── row/ │ │ │ │ │ │ ├── deleteRows.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── insert.json │ │ │ │ │ │ ├── update.json │ │ │ │ │ │ └── upsert.json │ │ │ │ │ └── table/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── delete.json │ │ │ │ │ ├── list.json │ │ │ │ │ └── update.json │ │ │ │ ├── actions/ │ │ │ │ │ ├── router.ts │ │ │ │ │ ├── row/ │ │ │ │ │ │ ├── Row.resource.ts │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── insert.operation.ts │ │ │ │ │ │ ├── rowExists.operation.ts │ │ │ │ │ │ ├── rowNotExists.operation.ts │ │ │ │ │ │ ├── update.operation.ts │ │ │ │ │ │ └── upsert.operation.ts │ │ │ │ │ └── table/ │ │ │ │ │ ├── Table.resource.ts │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ ├── list.operation.ts │ │ │ │ │ └── update.operation.ts │ │ │ │ ├── common/ │ │ │ │ │ ├── addRow.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── fields.ts │ │ │ │ │ ├── methods.ts │ │ │ │ │ ├── selectMany.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── test/ │ │ │ │ ├── common/ │ │ │ │ │ ├── resolveDataTableId.test.ts │ │ │ │ │ ├── selectMany.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── row/ │ │ │ │ │ └── get.operation.test.ts │ │ │ │ └── table/ │ │ │ │ └── operations.test.ts │ │ │ ├── Databricks/ │ │ │ │ ├── Databricks.node.json │ │ │ │ ├── Databricks.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── databricksSql/ │ │ │ │ │ │ ├── DatabricksSql.resource.ts │ │ │ │ │ │ └── executeQuery.operation.ts │ │ │ │ │ ├── files/ │ │ │ │ │ │ ├── Files.resource.ts │ │ │ │ │ │ ├── createDirectory.operation.ts │ │ │ │ │ │ ├── deleteDirectory.operation.ts │ │ │ │ │ │ ├── deleteFile.operation.ts │ │ │ │ │ │ ├── downloadFile.operation.ts │ │ │ │ │ │ ├── getFileInfo.operation.ts │ │ │ │ │ │ ├── listDirectory.operation.ts │ │ │ │ │ │ └── uploadFile.operation.ts │ │ │ │ │ ├── genie/ │ │ │ │ │ │ ├── Genie.resource.ts │ │ │ │ │ │ ├── createMessage.operation.ts │ │ │ │ │ │ ├── executeMessageQuery.operation.ts │ │ │ │ │ │ ├── getMessage.operation.ts │ │ │ │ │ │ ├── getQueryResults.operation.ts │ │ │ │ │ │ ├── getSpace.operation.ts │ │ │ │ │ │ └── startConversation.operation.ts │ │ │ │ │ ├── helpers.ts │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ ├── modelServing/ │ │ │ │ │ │ ├── ModelServing.resource.ts │ │ │ │ │ │ └── queryEndpoint.operation.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ ├── unityCatalog/ │ │ │ │ │ │ ├── UnityCatalog.resource.ts │ │ │ │ │ │ ├── createCatalog.operation.ts │ │ │ │ │ │ ├── createFunction.operation.ts │ │ │ │ │ │ ├── createTable.operation.ts │ │ │ │ │ │ ├── createVolume.operation.ts │ │ │ │ │ │ ├── deleteCatalog.operation.ts │ │ │ │ │ │ ├── deleteFunction.operation.ts │ │ │ │ │ │ ├── deleteTable.operation.ts │ │ │ │ │ │ ├── deleteVolume.operation.ts │ │ │ │ │ │ ├── getCatalog.operation.ts │ │ │ │ │ │ ├── getFunction.operation.ts │ │ │ │ │ │ ├── getTable.operation.ts │ │ │ │ │ │ ├── getVolume.operation.ts │ │ │ │ │ │ ├── listCatalogs.operation.ts │ │ │ │ │ │ ├── listFunctions.operation.ts │ │ │ │ │ │ ├── listTables.operation.ts │ │ │ │ │ │ ├── listVolumes.operation.ts │ │ │ │ │ │ └── updateCatalog.operation.ts │ │ │ │ │ └── vectorSearch/ │ │ │ │ │ ├── VectorSearch.resource.ts │ │ │ │ │ ├── createIndex.operation.ts │ │ │ │ │ ├── getIndex.operation.ts │ │ │ │ │ ├── listIndexes.operation.ts │ │ │ │ │ └── queryIndex.operation.ts │ │ │ │ ├── methods/ │ │ │ │ │ └── listSearch.ts │ │ │ │ ├── resources/ │ │ │ │ │ ├── databricksSql/ │ │ │ │ │ │ ├── operations.ts │ │ │ │ │ │ └── parameters.ts │ │ │ │ │ ├── files/ │ │ │ │ │ │ ├── operations.ts │ │ │ │ │ │ └── parameters.ts │ │ │ │ │ ├── genie/ │ │ │ │ │ │ ├── operations.ts │ │ │ │ │ │ └── parameters.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── modelServing/ │ │ │ │ │ │ ├── operations.ts │ │ │ │ │ │ └── parameters.ts │ │ │ │ │ ├── unityCatalog/ │ │ │ │ │ │ ├── operations.ts │ │ │ │ │ │ └── parameters.ts │ │ │ │ │ └── vectorSearch/ │ │ │ │ │ ├── operations.ts │ │ │ │ │ └── parameters.ts │ │ │ │ └── test/ │ │ │ │ ├── Databricks.node.test.ts │ │ │ │ ├── databricks-sql-polling.workflow.json │ │ │ │ ├── databricks-sql.workflow.json │ │ │ │ ├── files.workflow.json │ │ │ │ ├── genie.workflow.json │ │ │ │ ├── model-serving-chat.workflow.json │ │ │ │ ├── model-serving-ssrf-block.workflow.json │ │ │ │ ├── model-serving.workflow.json │ │ │ │ ├── unity-catalog-catalogs.workflow.json │ │ │ │ ├── unity-catalog-tables.workflow.json │ │ │ │ ├── unity-catalog-volumes.workflow.json │ │ │ │ └── vector-search.workflow.json │ │ │ ├── DateTime/ │ │ │ │ ├── DateTime.node.json │ │ │ │ ├── DateTime.node.ts │ │ │ │ ├── V1/ │ │ │ │ │ └── DateTimeV1.node.ts │ │ │ │ ├── V2/ │ │ │ │ │ ├── AddToDateDescription.ts │ │ │ │ │ ├── CurrentDateDescription.ts │ │ │ │ │ ├── DateTimeV2.node.ts │ │ │ │ │ ├── ExtractDateDescription.ts │ │ │ │ │ ├── FormatDateDescription.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GetTimeBetweenDates.ts │ │ │ │ │ ├── RoundDateDescription.ts │ │ │ │ │ ├── SubtractFromDateDescription.ts │ │ │ │ │ └── common.descriptions.ts │ │ │ │ └── test/ │ │ │ │ └── node/ │ │ │ │ ├── DateTime.test.ts │ │ │ │ ├── DateTimeWorkflowV2.json │ │ │ │ ├── DateTimeWorklfow.test.json │ │ │ │ ├── workflow.includeInputFields_v2.json │ │ │ │ ├── workflow.luxonDateTime.json │ │ │ │ ├── workflow.nullDate_v2.json │ │ │ │ ├── workflow.timestamp.json │ │ │ │ └── workflow.timestamp_v2.json │ │ │ ├── DebugHelper/ │ │ │ │ ├── DebugHelper.node.json │ │ │ │ ├── DebugHelper.node.ts │ │ │ │ ├── functions.ts │ │ │ │ ├── randomData.ts │ │ │ │ └── test/ │ │ │ │ ├── DebugHelper.test.ts │ │ │ │ └── ThrowAnError.workflow.json │ │ │ ├── DeepL/ │ │ │ │ ├── DeepL.node.json │ │ │ │ ├── DeepL.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── TextDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── language/ │ │ │ │ └── translate.json │ │ │ ├── Demio/ │ │ │ │ ├── Demio.node.json │ │ │ │ ├── Demio.node.ts │ │ │ │ ├── EventDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── ReportDescription.ts │ │ │ ├── Dhl/ │ │ │ │ ├── Dhl.node.json │ │ │ │ ├── Dhl.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── shipment/ │ │ │ │ └── get.json │ │ │ ├── Discord/ │ │ │ │ ├── Discord.node.json │ │ │ │ ├── Discord.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── deleteChannel.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── member/ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── roleAdd.json │ │ │ │ │ └── message/ │ │ │ │ │ ├── deleteMessage.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ ├── react.json │ │ │ │ │ ├── send.json │ │ │ │ │ └── sendAndWait.json │ │ │ │ ├── test/ │ │ │ │ │ └── v2/ │ │ │ │ │ ├── node/ │ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ ├── deleteChannel.test.ts │ │ │ │ │ │ │ ├── deleteChannel.workflow.json │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ │ ├── member/ │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ ├── roleAdd.test.ts │ │ │ │ │ │ │ ├── roleAdd.workflow.json │ │ │ │ │ │ │ ├── roleRemove.test.ts │ │ │ │ │ │ │ └── roleRemove.workflow.json │ │ │ │ │ │ ├── message/ │ │ │ │ │ │ │ ├── deleteMessage.test.ts │ │ │ │ │ │ │ ├── deleteMessage.workflow.json │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ ├── react.test.ts │ │ │ │ │ │ │ ├── react.workflow.json │ │ │ │ │ │ │ ├── send.test.ts │ │ │ │ │ │ │ ├── send.workflow.json │ │ │ │ │ │ │ └── sendAndWait.test.ts │ │ │ │ │ │ └── webhook/ │ │ │ │ │ │ ├── sendLegacy.test.ts │ │ │ │ │ │ └── sendLegacy.workflow.json │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── DiscordV1.node.ts │ │ │ │ │ └── Interfaces.ts │ │ │ │ └── v2/ │ │ │ │ ├── DiscordV2.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deleteChannel.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ ├── common.description.ts │ │ │ │ │ ├── member/ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── roleAdd.operation.ts │ │ │ │ │ │ └── roleRemove.operation.ts │ │ │ │ │ ├── message/ │ │ │ │ │ │ ├── deleteMessage.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── react.operation.ts │ │ │ │ │ │ ├── send.operation.ts │ │ │ │ │ │ └── sendAndWait.operation.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ ├── versionDescription.ts │ │ │ │ │ └── webhook/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── sendLegacy.operation.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ └── loadOptions.ts │ │ │ │ └── transport/ │ │ │ │ ├── discord.api.ts │ │ │ │ ├── helpers.ts │ │ │ │ └── index.ts │ │ │ ├── Discourse/ │ │ │ │ ├── CategoryDescription.ts │ │ │ │ ├── Discourse.node.json │ │ │ │ ├── Discourse.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── GroupDescription.ts │ │ │ │ ├── PostDescription.ts │ │ │ │ ├── SearchDescription.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ └── UserGroupDescription.ts │ │ │ ├── Disqus/ │ │ │ │ ├── Disqus.node.json │ │ │ │ ├── Disqus.node.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── Drift/ │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── ContactInterface.ts │ │ │ │ ├── Drift.node.json │ │ │ │ ├── Drift.node.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── Dropbox/ │ │ │ │ ├── Dropbox.node.json │ │ │ │ ├── Dropbox.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── file/ │ │ │ │ │ ├── copy.json │ │ │ │ │ ├── delete.json │ │ │ │ │ ├── download.json │ │ │ │ │ ├── move.json │ │ │ │ │ └── upload.json │ │ │ │ ├── folder/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── delete.json │ │ │ │ │ ├── list.json │ │ │ │ │ └── move.json │ │ │ │ └── search/ │ │ │ │ └── query.json │ │ │ ├── Dropcontact/ │ │ │ │ ├── Dropcontact.node.json │ │ │ │ ├── Dropcontact.node.ts │ │ │ │ ├── GenericFunction.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── contact/ │ │ │ │ ├── enrich.json │ │ │ │ └── fetchRequest.json │ │ │ ├── DynamicCredentialCheck/ │ │ │ │ ├── DynamicCredentialCheck.node.ts │ │ │ │ └── test/ │ │ │ │ └── DynamicCredentialCheck.node.test.ts │ │ │ ├── E2eTest/ │ │ │ │ ├── E2eTest.node.json │ │ │ │ ├── E2eTest.node.ts │ │ │ │ └── mock.ts │ │ │ ├── ERPNext/ │ │ │ │ ├── DocumentDescription.ts │ │ │ │ ├── ERPNext.node.json │ │ │ │ ├── ERPNext.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── document/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── utils.ts │ │ │ ├── EditImage/ │ │ │ │ ├── EditImage.node.json │ │ │ │ ├── EditImage.node.ts │ │ │ │ └── test/ │ │ │ │ └── EditImage.node.test.ts │ │ │ ├── Egoi/ │ │ │ │ ├── Egoi.node.json │ │ │ │ ├── Egoi.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── Interfaces.ts │ │ │ ├── Elastic/ │ │ │ │ ├── ElasticSecurity/ │ │ │ │ │ ├── ElasticSecurity.node.json │ │ │ │ │ ├── ElasticSecurity.node.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ └── case/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── CaseCommentDescription.ts │ │ │ │ │ │ ├── CaseDescription.ts │ │ │ │ │ │ ├── CaseTagDescription.ts │ │ │ │ │ │ ├── ConnectorDescription.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── types.ts │ │ │ │ └── Elasticsearch/ │ │ │ │ ├── Elasticsearch.node.json │ │ │ │ ├── Elasticsearch.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── document/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── index/ │ │ │ │ │ └── get.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── DocumentDescription.ts │ │ │ │ │ ├── IndexDescription.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── placeholders.ts │ │ │ │ ├── tests/ │ │ │ │ │ └── GenericFunctions.test.ts │ │ │ │ └── types.ts │ │ │ ├── EmailReadImap/ │ │ │ │ ├── EmailReadImap.node.json │ │ │ │ ├── EmailReadImap.node.ts │ │ │ │ ├── test/ │ │ │ │ │ └── v2/ │ │ │ │ │ ├── EmailReadImapV2.node.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ └── EmailReadImapV1.node.ts │ │ │ │ └── v2/ │ │ │ │ ├── EmailReadImapV2.node.ts │ │ │ │ └── utils.ts │ │ │ ├── EmailSend/ │ │ │ │ ├── EmailSend.node.json │ │ │ │ ├── EmailSend.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v2.1.0/ │ │ │ │ │ └── email/ │ │ │ │ │ ├── send.json │ │ │ │ │ └── sendAndWait.json │ │ │ │ ├── test/ │ │ │ │ │ ├── v1/ │ │ │ │ │ │ └── EmailSendV1.node.test.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── send.operation.test.ts │ │ │ │ │ └── sendAndWait.operation.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ └── EmailSendV1.node.ts │ │ │ │ └── v2/ │ │ │ │ ├── EmailSendV2.node.ts │ │ │ │ ├── descriptions.ts │ │ │ │ ├── send.operation.ts │ │ │ │ ├── sendAndWait.operation.ts │ │ │ │ └── utils.ts │ │ │ ├── Emelia/ │ │ │ │ ├── CampaignDescription.ts │ │ │ │ ├── ContactListDescription.ts │ │ │ │ ├── Emelia.node.json │ │ │ │ ├── Emelia.node.ts │ │ │ │ ├── EmeliaTrigger.node.json │ │ │ │ ├── EmeliaTrigger.node.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── ErrorTrigger/ │ │ │ │ ├── ErrorTrigger.node.json │ │ │ │ └── ErrorTrigger.node.ts │ │ │ ├── Evaluation/ │ │ │ │ ├── Evaluation/ │ │ │ │ │ ├── CannedMetricPrompts.ee.ts │ │ │ │ │ ├── Description.node.ts │ │ │ │ │ ├── Evaluation.node.ee.json │ │ │ │ │ └── Evaluation.node.ee.ts │ │ │ │ ├── EvaluationTrigger/ │ │ │ │ │ ├── EvaluationTrigger.node.ee.json │ │ │ │ │ └── EvaluationTrigger.node.ee.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ └── loadOptions.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── Evaluation.node.test.ts │ │ │ │ │ ├── EvaluationTrigger.node.test.ts │ │ │ │ │ ├── evaluationTriggerUtils.test.ts │ │ │ │ │ ├── evaluationUtils.test.ts │ │ │ │ │ ├── loadOptions.test.ts │ │ │ │ │ └── metricHandlers.test.ts │ │ │ │ └── utils/ │ │ │ │ ├── evaluationTriggerUtils.ts │ │ │ │ ├── evaluationUtils.ts │ │ │ │ └── metricHandlers.ts │ │ │ ├── Eventbrite/ │ │ │ │ ├── EventbriteTrigger.node.json │ │ │ │ ├── EventbriteTrigger.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── __tests__/ │ │ │ │ └── EventbriteTrigger.node.test.ts │ │ │ ├── ExecuteCommand/ │ │ │ │ ├── ExecuteCommand.node.json │ │ │ │ ├── ExecuteCommand.node.ts │ │ │ │ └── test/ │ │ │ │ ├── ExecuteCommand.node.test.ts │ │ │ │ └── workflow.json │ │ │ ├── ExecuteWorkflow/ │ │ │ │ ├── ExecuteWorkflow/ │ │ │ │ │ ├── ExecuteWorkflow.node.json │ │ │ │ │ ├── ExecuteWorkflow.node.test.ts │ │ │ │ │ ├── ExecuteWorkflow.node.ts │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ └── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── localResourceMapping.ts │ │ │ │ └── ExecuteWorkflowTrigger/ │ │ │ │ ├── ExecuteWorkflowTrigger.node.json │ │ │ │ ├── ExecuteWorkflowTrigger.node.test.ts │ │ │ │ └── ExecuteWorkflowTrigger.node.ts │ │ │ ├── ExecutionData/ │ │ │ │ ├── ExecutionData.node.json │ │ │ │ ├── ExecutionData.node.ts │ │ │ │ └── test/ │ │ │ │ ├── ExecutionData.node.test.ts │ │ │ │ └── ExecutionData.workflow.json │ │ │ ├── Facebook/ │ │ │ │ ├── FacebookGraphApi.node.json │ │ │ │ ├── FacebookGraphApi.node.ts │ │ │ │ ├── FacebookTrigger.node.json │ │ │ │ ├── FacebookTrigger.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── __tests__/ │ │ │ │ │ └── GenericFunctions.test.ts │ │ │ │ └── types.ts │ │ │ ├── FacebookLeadAds/ │ │ │ │ ├── FacebookLeadAdsTrigger.node.json │ │ │ │ ├── FacebookLeadAdsTrigger.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── listSearch.ts │ │ │ │ └── types.ts │ │ │ ├── Figma/ │ │ │ │ ├── FigmaTrigger.node.json │ │ │ │ ├── FigmaTrigger.node.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── FileMaker/ │ │ │ │ ├── FileMaker.node.json │ │ │ │ ├── FileMaker.node.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── Files/ │ │ │ │ ├── ConvertToFile/ │ │ │ │ │ ├── ConvertToFile.node.json │ │ │ │ │ ├── ConvertToFile.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── iCall.operation.ts │ │ │ │ │ │ ├── spreadsheet.operation.ts │ │ │ │ │ │ ├── toBinary.operation.ts │ │ │ │ │ │ ├── toJson.operation.ts │ │ │ │ │ │ └── toText.operation.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── ConvertToFile.node.test.ts │ │ │ │ │ └── toText.workflow.json │ │ │ │ ├── ExtractFromFile/ │ │ │ │ │ ├── ExtractFromFile.node.json │ │ │ │ │ ├── ExtractFromFile.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── moveTo.operation.ts │ │ │ │ │ │ ├── pdf.operation.ts │ │ │ │ │ │ └── spreadsheet.operation.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── ExtractFromFile.node.test.ts │ │ │ │ │ └── workflow.non_utf8_encoding.json │ │ │ │ ├── ReadWriteFile/ │ │ │ │ │ ├── ReadWriteFile.node.json │ │ │ │ │ ├── ReadWriteFile.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── read.operation.ts │ │ │ │ │ │ └── write.operation.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── ReadWriteFile.test.ts │ │ │ │ │ ├── ReadWriteFile.workflow.json │ │ │ │ │ └── utils.test.ts │ │ │ │ └── test/ │ │ │ │ ├── ConvertExtract.test.ts │ │ │ │ └── convert_extract.workflow.json │ │ │ ├── Filter/ │ │ │ │ ├── Filter.node.json │ │ │ │ ├── Filter.node.ts │ │ │ │ ├── V1/ │ │ │ │ │ ├── FilterV1.node.ts │ │ │ │ │ └── GenericFunctions.ts │ │ │ │ ├── V2/ │ │ │ │ │ └── FilterV2.node.ts │ │ │ │ └── test/ │ │ │ │ ├── Filter.node.test.ts │ │ │ │ ├── workflow_v1.json │ │ │ │ └── workflow_v2.json │ │ │ ├── Flow/ │ │ │ │ ├── Flow.node.json │ │ │ │ ├── Flow.node.ts │ │ │ │ ├── FlowTrigger.node.json │ │ │ │ ├── FlowTrigger.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── TaskDescription.ts │ │ │ │ └── TaskInterface.ts │ │ │ ├── Form/ │ │ │ │ ├── Form.node.json │ │ │ │ ├── Form.node.ts │ │ │ │ ├── FormTrigger.node.json │ │ │ │ ├── FormTrigger.node.ts │ │ │ │ ├── common.descriptions.ts │ │ │ │ ├── cssVariables.ts │ │ │ │ ├── interfaces.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── Form.node.test.ts │ │ │ │ │ ├── FormTriggerV2.node.test.ts │ │ │ │ │ ├── formCompletionUtils.test.ts │ │ │ │ │ ├── formNodeUtils.test.ts │ │ │ │ │ ├── sanitizeCustomCss.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── utils/ │ │ │ │ │ ├── formCompletionUtils.ts │ │ │ │ │ ├── formNodeUtils.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── v1/ │ │ │ │ │ └── FormTriggerV1.node.ts │ │ │ │ └── v2/ │ │ │ │ └── FormTriggerV2.node.ts │ │ │ ├── FormIo/ │ │ │ │ ├── FormIoTrigger.node.json │ │ │ │ ├── FormIoTrigger.node.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── Formstack/ │ │ │ │ ├── FormstackTrigger.node.json │ │ │ │ ├── FormstackTrigger.node.ts │ │ │ │ └── GenericFunctions.ts │ │ │ ├── Freshdesk/ │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── ContactInterface.ts │ │ │ │ ├── Freshdesk.node.json │ │ │ │ ├── Freshdesk.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── contact/ │ │ │ │ │ └── getAll.json │ │ │ │ └── ticket/ │ │ │ │ ├── create.json │ │ │ │ ├── get.json │ │ │ │ └── getAll.json │ │ │ ├── Freshservice/ │ │ │ │ ├── Freshservice.node.json │ │ │ │ ├── Freshservice.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── ticket/ │ │ │ │ │ └── get.json │ │ │ │ ├── constants.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── AgentDescription.ts │ │ │ │ │ ├── AgentGroupDescription.ts │ │ │ │ │ ├── AgentRoleDescription.ts │ │ │ │ │ ├── AnnouncementDescription.ts │ │ │ │ │ ├── AssetDescription.ts │ │ │ │ │ ├── AssetTypeDescription.ts │ │ │ │ │ ├── ChangeDescription.ts │ │ │ │ │ ├── DepartmentDescription.ts │ │ │ │ │ ├── LocationDescription.ts │ │ │ │ │ ├── ProblemDescription.ts │ │ │ │ │ ├── ProductDescription.ts │ │ │ │ │ ├── ReleaseDescription.ts │ │ │ │ │ ├── RequesterDescription.ts │ │ │ │ │ ├── RequesterGroupDescription.ts │ │ │ │ │ ├── SoftwareDescription.ts │ │ │ │ │ ├── TicketDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── types.ts │ │ │ ├── FreshworksCrm/ │ │ │ │ ├── FreshworksCrm.node.json │ │ │ │ ├── FreshworksCrm.node.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── search/ │ │ │ │ │ └── query.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── AccountDescription.ts │ │ │ │ │ ├── AppointmentDescription.ts │ │ │ │ │ ├── ContactDescription.ts │ │ │ │ │ ├── DealDescription.ts │ │ │ │ │ ├── NoteDescription.ts │ │ │ │ │ ├── SalesActivityDescription.ts │ │ │ │ │ ├── SearchDescription.ts │ │ │ │ │ ├── TaskDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── types.ts │ │ │ ├── Ftp/ │ │ │ │ ├── Ftp.node.json │ │ │ │ ├── Ftp.node.ts │ │ │ │ └── __test__/ │ │ │ │ └── Ftp.node.test.ts │ │ │ ├── Function/ │ │ │ │ ├── Function.node.json │ │ │ │ └── Function.node.ts │ │ │ ├── FunctionItem/ │ │ │ │ ├── FunctionItem.node.json │ │ │ │ └── FunctionItem.node.ts │ │ │ ├── GetResponse/ │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── GetResponse.node.json │ │ │ │ ├── GetResponse.node.ts │ │ │ │ ├── GetResponseTrigger.node.json │ │ │ │ ├── GetResponseTrigger.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── contact/ │ │ │ │ ├── create.json │ │ │ │ ├── get.json │ │ │ │ └── getAll.json │ │ │ ├── Ghost/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Ghost.node.json │ │ │ │ ├── Ghost.node.ts │ │ │ │ ├── PostDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── post/ │ │ │ │ └── create.json │ │ │ ├── Git/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Git.node.json │ │ │ │ ├── Git.node.ts │ │ │ │ ├── __test__/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ └── Git.node.test.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── AddConfigDescription.ts │ │ │ │ │ ├── AddDescription.ts │ │ │ │ │ ├── CloneDescription.ts │ │ │ │ │ ├── CommitDescription.ts │ │ │ │ │ ├── LogDescription.ts │ │ │ │ │ ├── PushDescription.ts │ │ │ │ │ ├── ReflogDescription.ts │ │ │ │ │ ├── SwitchBranchDescription.ts │ │ │ │ │ ├── TagDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── test/ │ │ │ │ └── Git.node.test.ts │ │ │ ├── Github/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Github.node.json │ │ │ │ ├── Github.node.ts │ │ │ │ ├── GithubTrigger.node.json │ │ │ │ ├── GithubTrigger.node.ts │ │ │ │ ├── GithubTriggerHelpers.ts │ │ │ │ ├── SearchFunctions.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ ├── v1.0.0/ │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ │ ├── edit.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── list.json │ │ │ │ │ │ ├── issue/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── createComment.json │ │ │ │ │ │ │ └── get.json │ │ │ │ │ │ ├── organization/ │ │ │ │ │ │ │ └── getRepositories.json │ │ │ │ │ │ ├── release/ │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── repository/ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── getIssues.json │ │ │ │ │ │ │ └── getLicense.json │ │ │ │ │ │ ├── user/ │ │ │ │ │ │ │ └── getRepositories.json │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ └── list.json │ │ │ │ │ └── v1.1.0/ │ │ │ │ │ ├── file/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── list.json │ │ │ │ │ └── workflow/ │ │ │ │ │ ├── dispatchAndWait.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── list.json │ │ │ │ └── __tests__/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ ├── Github.file.create.test.ts │ │ │ │ ├── Github.organization.getRepositories.test.ts │ │ │ │ ├── Github.repository.getIssues.test.ts │ │ │ │ ├── Github.user.getRepositories.test.ts │ │ │ │ ├── Github.user.getUserIssues.test.ts │ │ │ │ ├── GithubTriggerHelpers.test.ts │ │ │ │ ├── SearchFunctions.test.ts │ │ │ │ ├── UrlPatterns.test.ts │ │ │ │ ├── getRepositories.workflow.json │ │ │ │ ├── getRepositoriesLimit.workflow.json │ │ │ │ ├── getRepositoryIssues.workflow.json │ │ │ │ ├── getRepositoryIssuesFiltered.workflow.json │ │ │ │ ├── getRepositoryIssuesLimit.workflow.json │ │ │ │ ├── getUserIssues.workflow.json │ │ │ │ ├── getUserIssuesFiltered.workflow.json │ │ │ │ ├── getUserIssuesLimit.workflow.json │ │ │ │ ├── getUserRepositories.workflow.json │ │ │ │ ├── getUserRepositoriesLimit.workflow.json │ │ │ │ ├── node/ │ │ │ │ │ ├── Github.dispatchAndWait.node.test.ts │ │ │ │ │ ├── Github.node.test.ts │ │ │ │ │ ├── Github.webhook.test.ts │ │ │ │ │ ├── GithubDispatchAndWaitWorkflow.json │ │ │ │ │ ├── GithubTestWorkflow.json │ │ │ │ │ └── GithubTrigger.node.test.ts │ │ │ │ └── oauth2-credentials-expression/ │ │ │ │ ├── setup.test.ts │ │ │ │ └── test.workflow.json │ │ │ ├── Gitlab/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Gitlab.node.json │ │ │ │ ├── Gitlab.node.ts │ │ │ │ ├── GitlabTrigger.node.json │ │ │ │ ├── GitlabTrigger.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── file/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── list.json │ │ │ │ ├── issue/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── edit.json │ │ │ │ │ └── get.json │ │ │ │ ├── repository/ │ │ │ │ │ ├── get.json │ │ │ │ │ └── getIssues.json │ │ │ │ └── user/ │ │ │ │ └── getRepositories.json │ │ │ ├── GoToWebinar/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── GoToWebinar.node.json │ │ │ │ ├── GoToWebinar.node.ts │ │ │ │ └── descriptions/ │ │ │ │ ├── AttendeeDescription.ts │ │ │ │ ├── CoorganizerDescription.ts │ │ │ │ ├── PanelistDescription.ts │ │ │ │ ├── RegistrantDescription.ts │ │ │ │ ├── SessionDescription.ts │ │ │ │ ├── WebinarDescription.ts │ │ │ │ └── index.ts │ │ │ ├── Gong/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Gong.node.json │ │ │ │ ├── Gong.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── call/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── user/ │ │ │ │ │ └── get.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── CallDescription.ts │ │ │ │ │ ├── UserDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── test/ │ │ │ │ ├── Gong.node.test.ts │ │ │ │ └── mocks.ts │ │ │ ├── Google/ │ │ │ │ ├── Ads/ │ │ │ │ │ ├── CampaignDescription.ts │ │ │ │ │ ├── GoogleAds.node.json │ │ │ │ │ ├── GoogleAds.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ └── campaign/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── __test__/ │ │ │ │ │ └── node/ │ │ │ │ │ ├── GoogleAds.node.test.ts │ │ │ │ │ ├── fixtures/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getMany.json │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ └── getMany.workflow.json │ │ │ │ ├── Analytics/ │ │ │ │ │ ├── GoogleAnalytics.node.json │ │ │ │ │ ├── GoogleAnalytics.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ │ └── report/ │ │ │ │ │ │ └── get.json │ │ │ │ │ ├── test/ │ │ │ │ │ │ └── v2/ │ │ │ │ │ │ ├── GoogleAnalyticsV2.node.test.ts │ │ │ │ │ │ ├── report-ga4-get.workflow.json │ │ │ │ │ │ ├── report-universal-get.workflow.json │ │ │ │ │ │ └── useractivity-search.workflow.json │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ │ ├── GoogleAnalyticsV1.node.ts │ │ │ │ │ │ ├── Interfaces.ts │ │ │ │ │ │ ├── ReportDescription.ts │ │ │ │ │ │ └── UserActivityDescription.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── GoogleAnalyticsV2.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── node.type.ts │ │ │ │ │ │ ├── report/ │ │ │ │ │ │ │ ├── FiltersDescription.ts │ │ │ │ │ │ │ ├── Report.resource.ts │ │ │ │ │ │ │ ├── get.ga4.operation.ts │ │ │ │ │ │ │ └── get.universal.operation.ts │ │ │ │ │ │ ├── router.ts │ │ │ │ │ │ ├── userActivity/ │ │ │ │ │ │ │ ├── UserActivity.resource.ts │ │ │ │ │ │ │ └── search.operation.ts │ │ │ │ │ │ └── versionDescription.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── Interfaces.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ │ └── loadOptions.ts │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── BigQuery/ │ │ │ │ │ ├── GoogleBigQuery.node.json │ │ │ │ │ ├── GoogleBigQuery.node.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ └── v2/ │ │ │ │ │ │ ├── node/ │ │ │ │ │ │ │ ├── executeQuery.queryParameters.test.ts │ │ │ │ │ │ │ ├── executeQuery.queryParameters.workflow.json │ │ │ │ │ │ │ ├── executeQuery.test.ts │ │ │ │ │ │ │ ├── executeQuery.workflow.json │ │ │ │ │ │ │ ├── executeQueryContinueOnJobFail.test.ts │ │ │ │ │ │ │ ├── executeQueryContinueOnJobFail.workflow.json │ │ │ │ │ │ │ ├── insert.autoMapMode.test.ts │ │ │ │ │ │ │ ├── insert.autoMapMode.workflow.json │ │ │ │ │ │ │ ├── insert.manualMode.test.ts │ │ │ │ │ │ │ └── insert.manualMode.workflow.json │ │ │ │ │ │ └── utils/ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ │ ├── GoogleBigQueryV1.node.ts │ │ │ │ │ │ └── RecordDescription.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── GoogleBigQueryV2.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── commonDescriptions/ │ │ │ │ │ │ │ └── RLC.description.ts │ │ │ │ │ │ ├── database/ │ │ │ │ │ │ │ ├── Database.resource.ts │ │ │ │ │ │ │ ├── executeQuery.operation.ts │ │ │ │ │ │ │ └── insert.operation.ts │ │ │ │ │ │ ├── node.type.ts │ │ │ │ │ │ ├── router.ts │ │ │ │ │ │ └── versionDescription.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ │ └── loadOptions.ts │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── Books/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleBooks.node.json │ │ │ │ │ └── GoogleBooks.node.ts │ │ │ │ ├── BusinessProfile/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleBusinessProfile.node.json │ │ │ │ │ ├── GoogleBusinessProfile.node.ts │ │ │ │ │ ├── GoogleBusinessProfileTrigger.node.json │ │ │ │ │ ├── GoogleBusinessProfileTrigger.node.ts │ │ │ │ │ ├── Interfaces.ts │ │ │ │ │ ├── PostDescription.ts │ │ │ │ │ ├── ReviewDescription.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ └── review/ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── reply.json │ │ │ │ │ └── test/ │ │ │ │ │ ├── AddUpdateMask.test.ts │ │ │ │ │ ├── GoogleApiRequest.test.ts │ │ │ │ │ ├── HandleDatesPresend.test.ts │ │ │ │ │ ├── HandlePagination.test.ts │ │ │ │ │ ├── SearchAccounts.test.ts │ │ │ │ │ ├── SearchLocations.test.ts │ │ │ │ │ ├── SearchPosts.test.ts │ │ │ │ │ └── SearchReviews.test.ts │ │ │ │ ├── Calendar/ │ │ │ │ │ ├── CalendarDescription.ts │ │ │ │ │ ├── EventDescription.ts │ │ │ │ │ ├── EventInterface.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleCalendar.node.json │ │ │ │ │ ├── GoogleCalendar.node.ts │ │ │ │ │ ├── GoogleCalendarTrigger.node.json │ │ │ │ │ ├── GoogleCalendarTrigger.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.3.0/ │ │ │ │ │ │ ├── calendar/ │ │ │ │ │ │ │ └── availability.json │ │ │ │ │ │ └── event/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ └── test/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ ├── GoogleCalendarTrigger.node.test.ts │ │ │ │ │ ├── addNextOccurrence.test.ts │ │ │ │ │ └── node/ │ │ │ │ │ ├── event.getAll.test.ts │ │ │ │ │ └── event.update.test.ts │ │ │ │ ├── Chat/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleChat.node.json │ │ │ │ │ ├── GoogleChat.node.ts │ │ │ │ │ ├── MessageInterface.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ ├── member/ │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── message/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── sendAndWait.json │ │ │ │ │ │ └── space/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── AttachmentDescription.ts │ │ │ │ │ │ ├── IncomingWebhookDescription.ts │ │ │ │ │ │ ├── MediaDescription.ts │ │ │ │ │ │ ├── MemberDescription.ts │ │ │ │ │ │ ├── MessageDescription.ts │ │ │ │ │ │ ├── SpaceDescription.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── genericFunctions.test.ts │ │ │ │ │ └── node/ │ │ │ │ │ └── sendAndWait.operation.test.ts │ │ │ │ ├── CloudNaturalLanguage/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleCloudNaturalLanguage.node.json │ │ │ │ │ ├── GoogleCloudNaturalLanguage.node.ts │ │ │ │ │ ├── Interface.ts │ │ │ │ │ └── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── document/ │ │ │ │ │ └── analyzeSentiment.json │ │ │ │ ├── CloudStorage/ │ │ │ │ │ ├── BucketDescription.ts │ │ │ │ │ ├── GoogleCloudStorage.node.json │ │ │ │ │ ├── GoogleCloudStorage.node.ts │ │ │ │ │ ├── ObjectDescription.ts │ │ │ │ │ └── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── bucket/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ └── object/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── delete.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ ├── Contacts/ │ │ │ │ │ ├── ContactDescription.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleContacts.node.json │ │ │ │ │ ├── GoogleContacts.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ └── contact/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ └── test/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ ├── GoogleContacts.test.ts │ │ │ │ │ ├── contact-create-basic.workflow.json │ │ │ │ │ ├── contact-create-full.workflow.json │ │ │ │ │ ├── contact-delete.workflow.json │ │ │ │ │ ├── contact-get-all.workflow.json │ │ │ │ │ ├── contact-get-fields.workflow.json │ │ │ │ │ ├── contact-getall-connections.workflow.json │ │ │ │ │ ├── contact-getall-limit.workflow.json │ │ │ │ │ ├── contact-getall-search.workflow.json │ │ │ │ │ └── contact-update.workflow.json │ │ │ │ ├── Docs/ │ │ │ │ │ ├── DocumentDescription.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleDocs.node.json │ │ │ │ │ ├── GoogleDocs.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ │ └── document/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── update.json │ │ │ │ │ └── interfaces.ts │ │ │ │ ├── Drive/ │ │ │ │ │ ├── GoogleDrive.node.json │ │ │ │ │ ├── GoogleDrive.node.ts │ │ │ │ │ ├── GoogleDriveTrigger.node.json │ │ │ │ │ ├── GoogleDriveTrigger.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ ├── v2.0.0/ │ │ │ │ │ │ │ └── file/ │ │ │ │ │ │ │ └── list.json │ │ │ │ │ │ └── v3.0.0/ │ │ │ │ │ │ ├── drive/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── list.json │ │ │ │ │ │ │ └── update.json │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ ├── copy.json │ │ │ │ │ │ │ ├── createFromText.json │ │ │ │ │ │ │ ├── deleteFile.json │ │ │ │ │ │ │ ├── download.json │ │ │ │ │ │ │ ├── move.json │ │ │ │ │ │ │ ├── share.json │ │ │ │ │ │ │ ├── update.json │ │ │ │ │ │ │ └── upload.json │ │ │ │ │ │ ├── fileFolder/ │ │ │ │ │ │ │ └── search.json │ │ │ │ │ │ └── folder/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── deleteFolder.json │ │ │ │ │ │ └── share.json │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── GoogleDriveTrigger.node.test.ts │ │ │ │ │ │ └── v2/ │ │ │ │ │ │ ├── node/ │ │ │ │ │ │ │ ├── drive/ │ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ │ ├── deleteDrive.test.ts │ │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ │ ├── list.test.ts │ │ │ │ │ │ │ │ └── update.test.ts │ │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ │ ├── copy.test.ts │ │ │ │ │ │ │ │ ├── createFromText.test.ts │ │ │ │ │ │ │ │ ├── deleteFile.test.ts │ │ │ │ │ │ │ │ ├── download.test.ts │ │ │ │ │ │ │ │ ├── move.test.ts │ │ │ │ │ │ │ │ ├── share.test.ts │ │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ │ └── upload.test.ts │ │ │ │ │ │ │ ├── fileFolder/ │ │ │ │ │ │ │ │ └── search.test.ts │ │ │ │ │ │ │ ├── folder/ │ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ │ ├── deleteFolder.test.ts │ │ │ │ │ │ │ │ └── share.test.ts │ │ │ │ │ │ │ └── helpers.ts │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ │ ├── GoogleDriveV1.node.ts │ │ │ │ │ │ └── SearchFunctions.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── GoogleDriveV2.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── common.descriptions.ts │ │ │ │ │ │ ├── drive/ │ │ │ │ │ │ │ ├── Drive.resource.ts │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── deleteDrive.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── list.operation.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ ├── File.resource.ts │ │ │ │ │ │ │ ├── copy.operation.ts │ │ │ │ │ │ │ ├── createFromText.operation.ts │ │ │ │ │ │ │ ├── deleteFile.operation.ts │ │ │ │ │ │ │ ├── download.operation.ts │ │ │ │ │ │ │ ├── move.operation.ts │ │ │ │ │ │ │ ├── share.operation.ts │ │ │ │ │ │ │ ├── update.operation.ts │ │ │ │ │ │ │ └── upload.operation.ts │ │ │ │ │ │ ├── fileFolder/ │ │ │ │ │ │ │ ├── FileFolder.resource.ts │ │ │ │ │ │ │ └── search.operation.ts │ │ │ │ │ │ ├── folder/ │ │ │ │ │ │ │ ├── Folder.resource.ts │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── deleteFolder.operation.ts │ │ │ │ │ │ │ └── share.operation.ts │ │ │ │ │ │ ├── node.type.ts │ │ │ │ │ │ ├── router.ts │ │ │ │ │ │ └── versionDescription.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── listSearch.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── GoogleDriveV2.workflow.test.ts │ │ │ │ │ │ ├── drive-create.workflow.json │ │ │ │ │ │ ├── drive-delete.workflow.json │ │ │ │ │ │ ├── drive-get.workflow.json │ │ │ │ │ │ ├── drive-list.workflow.json │ │ │ │ │ │ ├── drive-update.workflow.json │ │ │ │ │ │ ├── file-copy.workflow.json │ │ │ │ │ │ ├── file-createFromText.workflow.json │ │ │ │ │ │ ├── file-delete.workflow.json │ │ │ │ │ │ ├── file-download.workflow.json │ │ │ │ │ │ ├── file-move.workflow.json │ │ │ │ │ │ ├── file-share.workflow.json │ │ │ │ │ │ ├── file-update.workflow.json │ │ │ │ │ │ ├── file-upload-basic.workflow.json │ │ │ │ │ │ ├── filefolder-search.workflow.json │ │ │ │ │ │ ├── folder-create-basic.workflow.json │ │ │ │ │ │ ├── folder-delete.workflow.json │ │ │ │ │ │ └── folder-share.workflow.json │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── Firebase/ │ │ │ │ │ ├── CloudFirestore/ │ │ │ │ │ │ ├── CollectionDescription.ts │ │ │ │ │ │ ├── DocumentDescription.ts │ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ │ ├── GoogleFirebaseCloudFirestore.node.json │ │ │ │ │ │ ├── GoogleFirebaseCloudFirestore.node.ts │ │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ │ └── v1.1.0/ │ │ │ │ │ │ │ ├── collection/ │ │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ │ └── document/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ ├── query.json │ │ │ │ │ │ │ └── upsert.json │ │ │ │ │ │ └── __test__/ │ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ │ ├── collection-getAll.workflow.json │ │ │ │ │ │ ├── collection.getAll.test.ts │ │ │ │ │ │ ├── document-delete.workflow.json │ │ │ │ │ │ ├── document-get.workflow.json │ │ │ │ │ │ ├── document-query.workflow.json │ │ │ │ │ │ ├── document-update.workflow.json │ │ │ │ │ │ ├── document.delete.test.ts │ │ │ │ │ │ ├── document.get.test.ts │ │ │ │ │ │ ├── document.query.test.ts │ │ │ │ │ │ └── document.update.test.ts │ │ │ │ │ └── RealtimeDatabase/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleFirebaseRealtimeDatabase.node.json │ │ │ │ │ ├── GoogleFirebaseRealtimeDatabase.node.ts │ │ │ │ │ └── __test__/ │ │ │ │ │ └── GenericFunctions.test.ts │ │ │ │ ├── GSuiteAdmin/ │ │ │ │ │ ├── DeviceDescription.ts │ │ │ │ │ ├── GSuiteAdmin.node.json │ │ │ │ │ ├── GSuiteAdmin.node.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GroupDescription.ts │ │ │ │ │ ├── SearchFunctions.ts │ │ │ │ │ ├── UserDescription.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ ├── group/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ └── user/ │ │ │ │ │ │ ├── addToGroup.json │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── test/ │ │ │ │ │ ├── GSuiteAdmin.node.test.ts │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ ├── SearchFunctions.test.ts │ │ │ │ │ ├── device/ │ │ │ │ │ │ ├── changeStatus.test.ts │ │ │ │ │ │ ├── changeStatus.workflow.json │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ ├── group/ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ └── user/ │ │ │ │ │ ├── addToGroup.test.ts │ │ │ │ │ ├── addToGroup.workflow.json │ │ │ │ │ ├── create.test.ts │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ ├── get.test.ts │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ ├── removeFromGroup.test.ts │ │ │ │ │ ├── removeFromGroup.workflow.json │ │ │ │ │ ├── update.test.ts │ │ │ │ │ └── update.workflow.json │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Gmail/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── Gmail.node.json │ │ │ │ │ ├── Gmail.node.ts │ │ │ │ │ ├── GmailTrigger.node.json │ │ │ │ │ ├── GmailTrigger.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ ├── v2.1.0/ │ │ │ │ │ │ │ ├── draft/ │ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ │ ├── label/ │ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ │ ├── message/ │ │ │ │ │ │ │ │ ├── addLabels.json │ │ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ │ ├── markAsRead.json │ │ │ │ │ │ │ │ ├── markAsUnread.json │ │ │ │ │ │ │ │ ├── removeLabels.json │ │ │ │ │ │ │ │ ├── reply.json │ │ │ │ │ │ │ │ ├── send.json │ │ │ │ │ │ │ │ └── sendAndWait.json │ │ │ │ │ │ │ └── thread/ │ │ │ │ │ │ │ ├── addLabels.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ ├── removeLabels.json │ │ │ │ │ │ │ ├── reply.json │ │ │ │ │ │ │ └── trash.json │ │ │ │ │ │ └── v2.2.0/ │ │ │ │ │ │ ├── draft/ │ │ │ │ │ │ │ └── create.json │ │ │ │ │ │ ├── label/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── message/ │ │ │ │ │ │ │ ├── addLabels.json │ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ ├── markAsRead.json │ │ │ │ │ │ │ ├── removeLabels.json │ │ │ │ │ │ │ ├── reply.json │ │ │ │ │ │ │ ├── send.json │ │ │ │ │ │ │ └── sendAndWait.json │ │ │ │ │ │ └── thread/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── reply.json │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── GmailTrigger.test.ts │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ └── GmailTrigger.test.ts.snap │ │ │ │ │ │ ├── fixtures/ │ │ │ │ │ │ │ ├── labels.json │ │ │ │ │ │ │ └── messages.json │ │ │ │ │ │ ├── utils/ │ │ │ │ │ │ │ └── replyToEmail.test.ts │ │ │ │ │ │ ├── v1/ │ │ │ │ │ │ │ ├── GmailV1.node.test.ts │ │ │ │ │ │ │ ├── drafts.workflow.json │ │ │ │ │ │ │ ├── labels.workflow.json │ │ │ │ │ │ │ ├── message-labels.workflow.json │ │ │ │ │ │ │ └── messages.workflow.json │ │ │ │ │ │ └── v2/ │ │ │ │ │ │ ├── GmailV2.node.test.ts │ │ │ │ │ │ ├── drafts.workflow.json │ │ │ │ │ │ ├── labels.workflow.json │ │ │ │ │ │ ├── messages.workflow.json │ │ │ │ │ │ ├── threads.workflow.json │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ └── replyToEmail.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── DraftDescription.ts │ │ │ │ │ │ ├── GmailV1.node.ts │ │ │ │ │ │ ├── LabelDescription.ts │ │ │ │ │ │ ├── MessageDescription.ts │ │ │ │ │ │ ├── MessageLabelDescription.ts │ │ │ │ │ │ └── loadOptions.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── DraftDescription.ts │ │ │ │ │ ├── GmailV2.node.ts │ │ │ │ │ ├── LabelDescription.ts │ │ │ │ │ ├── MessageDescription.ts │ │ │ │ │ ├── ThreadDescription.ts │ │ │ │ │ ├── loadOptions.ts │ │ │ │ │ └── utils/ │ │ │ │ │ └── draft.ts │ │ │ │ ├── Perspective/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GooglePerspective.node.json │ │ │ │ │ ├── GooglePerspective.node.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── Sheet/ │ │ │ │ │ ├── GoogleSheets.node.json │ │ │ │ │ ├── GoogleSheets.node.ts │ │ │ │ │ ├── GoogleSheetsTrigger.node.json │ │ │ │ │ ├── GoogleSheetsTrigger.node.ts │ │ │ │ │ ├── GoogleSheetsTrigger.utils.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── GoogleSheetsTrigger.test.ts │ │ │ │ │ │ ├── GoogleSheetsTrigger.utils.test.ts │ │ │ │ │ │ └── v2/ │ │ │ │ │ │ ├── actions/ │ │ │ │ │ │ │ ├── sheet/ │ │ │ │ │ │ │ │ └── append.operation.test.ts │ │ │ │ │ │ │ └── spreadsheet/ │ │ │ │ │ │ │ ├── create.operation.test.ts │ │ │ │ │ │ │ └── delete.operation.test.ts │ │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ │ └── GoogleSheet.test.ts │ │ │ │ │ │ ├── methods/ │ │ │ │ │ │ │ ├── listSearch.test.ts │ │ │ │ │ │ │ ├── loadOptions.test.ts │ │ │ │ │ │ │ └── resourceMapping.test.ts │ │ │ │ │ │ ├── node/ │ │ │ │ │ │ │ ├── append.test.ts │ │ │ │ │ │ │ ├── appendOrUpdate.test.ts │ │ │ │ │ │ │ ├── clear.test.ts │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ │ ├── read.test.ts │ │ │ │ │ │ │ ├── remove.test.ts │ │ │ │ │ │ │ └── update.test.ts │ │ │ │ │ │ ├── transport/ │ │ │ │ │ │ │ └── index.test.ts │ │ │ │ │ │ └── utils/ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ │ ├── GoogleSheet.ts │ │ │ │ │ │ ├── GoogleSheetsV1.node.ts │ │ │ │ │ │ └── versionDescription.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── GoogleSheetsV2.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── router.ts │ │ │ │ │ │ ├── sheet/ │ │ │ │ │ │ │ ├── Sheet.resource.ts │ │ │ │ │ │ │ ├── append.operation.ts │ │ │ │ │ │ │ ├── appendOrUpdate.operation.ts │ │ │ │ │ │ │ ├── clear.operation.ts │ │ │ │ │ │ │ ├── commonDescription.ts │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── read.operation.ts │ │ │ │ │ │ │ ├── remove.operation.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── spreadsheet/ │ │ │ │ │ │ │ ├── SpreadSheet.resource.ts │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ └── delete.operation.ts │ │ │ │ │ │ ├── utils/ │ │ │ │ │ │ │ └── readOperation.ts │ │ │ │ │ │ └── versionDescription.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── GoogleSheet.ts │ │ │ │ │ │ ├── GoogleSheets.types.ts │ │ │ │ │ │ └── GoogleSheets.utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── credentialTest.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ │ ├── loadOptions.ts │ │ │ │ │ │ └── resourceMapping.ts │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── Slides/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleSlides.node.json │ │ │ │ │ ├── GoogleSlides.node.ts │ │ │ │ │ └── __schema__/ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ ├── page/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getThumbnail.json │ │ │ │ │ └── presentation/ │ │ │ │ │ ├── getSlides.json │ │ │ │ │ └── replaceText.json │ │ │ │ ├── Task/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleTasks.node.json │ │ │ │ │ ├── GoogleTasks.node.ts │ │ │ │ │ ├── TaskDescription.ts │ │ │ │ │ └── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── task/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── delete.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ ├── Translate/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── GoogleTranslate.node.json │ │ │ │ │ ├── GoogleTranslate.node.ts │ │ │ │ │ └── __schema__/ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ └── language/ │ │ │ │ │ └── translate.json │ │ │ │ ├── YouTube/ │ │ │ │ │ ├── ChannelDescription.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── PlaylistDescription.ts │ │ │ │ │ ├── PlaylistItemDescription.ts │ │ │ │ │ ├── VideoCategoryDescription.ts │ │ │ │ │ ├── VideoDescription.ts │ │ │ │ │ ├── YouTube.node.json │ │ │ │ │ ├── YouTube.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── playlist/ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── playlistItem/ │ │ │ │ │ │ │ ├── add.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── video/ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ ├── rate.json │ │ │ │ │ │ │ ├── update.json │ │ │ │ │ │ │ └── upload.json │ │ │ │ │ │ └── videoCategory/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── __test__/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ └── node/ │ │ │ │ │ ├── YouTube.node.test.ts │ │ │ │ │ ├── channels.workflow.json │ │ │ │ │ ├── fixtures/ │ │ │ │ │ │ ├── categories.json │ │ │ │ │ │ ├── channels.json │ │ │ │ │ │ ├── playlistItems.json │ │ │ │ │ │ └── playlists.json │ │ │ │ │ ├── playlistItems.workflow.json │ │ │ │ │ ├── playlists.workflow.json │ │ │ │ │ ├── video.upload.test.ts │ │ │ │ │ └── videoCategories.workflow.json │ │ │ │ └── constants.ts │ │ │ ├── Gotify/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Gotify.node.json │ │ │ │ └── Gotify.node.ts │ │ │ ├── Grafana/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Grafana.node.json │ │ │ │ ├── Grafana.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── dashboard/ │ │ │ │ │ └── get.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── DashboardDescription.ts │ │ │ │ │ ├── TeamDescription.ts │ │ │ │ │ ├── TeamMemberDescription.ts │ │ │ │ │ ├── UserDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── types.ts │ │ │ ├── GraphQL/ │ │ │ │ ├── GraphQL.node.json │ │ │ │ ├── GraphQL.node.ts │ │ │ │ └── test/ │ │ │ │ ├── GraphQL.node.test.ts │ │ │ │ ├── workflow.error_invalid_expression.json │ │ │ │ ├── workflow.json │ │ │ │ └── workflow.refresh_token.json │ │ │ ├── Grist/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Grist.node.json │ │ │ │ ├── Grist.node.ts │ │ │ │ ├── OperationDescription.ts │ │ │ │ └── types.ts │ │ │ ├── Gumroad/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── GumroadTrigger.node.json │ │ │ │ └── GumroadTrigger.node.ts │ │ │ ├── HackerNews/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── HackerNews.node.json │ │ │ │ ├── HackerNews.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── all/ │ │ │ │ │ └── getAll.json │ │ │ │ └── article/ │ │ │ │ └── get.json │ │ │ ├── HaloPSA/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── HaloPSA.node.json │ │ │ │ ├── HaloPSA.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── client/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── site/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── ticket/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── user/ │ │ │ │ │ └── getAll.json │ │ │ │ └── descriptions/ │ │ │ │ ├── ClientDescription.ts │ │ │ │ ├── SiteDescription.ts │ │ │ │ ├── TicketDescription.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ └── index.ts │ │ │ ├── Harvest/ │ │ │ │ ├── ClientDescription.ts │ │ │ │ ├── CompanyDescription.ts │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── EstimateDescription.ts │ │ │ │ ├── ExpenseDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Harvest.node.json │ │ │ │ ├── Harvest.node.ts │ │ │ │ ├── InvoiceDescription.ts │ │ │ │ ├── ProjectDescription.ts │ │ │ │ ├── TaskDescription.ts │ │ │ │ ├── TimeEntryDescription.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── client/ │ │ │ │ │ └── getAll.json │ │ │ │ ├── invoice/ │ │ │ │ │ └── getAll.json │ │ │ │ ├── project/ │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── timeEntry/ │ │ │ │ │ └── getAll.json │ │ │ │ └── user/ │ │ │ │ └── getAll.json │ │ │ ├── HelpScout/ │ │ │ │ ├── ConversationDescription.ts │ │ │ │ ├── ConversationInterface.ts │ │ │ │ ├── CustomerDescription.ts │ │ │ │ ├── CustomerInterface.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── HelpScout.node.json │ │ │ │ ├── HelpScout.node.test.ts │ │ │ │ ├── HelpScout.node.ts │ │ │ │ ├── HelpScoutTrigger.node.json │ │ │ │ ├── HelpScoutTrigger.node.ts │ │ │ │ ├── MailboxDescription.ts │ │ │ │ ├── ThreadDescription.ts │ │ │ │ ├── ThreadInterface.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── conversation/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── mailbox/ │ │ │ │ ├── get.json │ │ │ │ └── getAll.json │ │ │ ├── HighLevel/ │ │ │ │ ├── HighLevel.node.json │ │ │ │ ├── HighLevel.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ ├── v1.0.0/ │ │ │ │ │ │ └── contact/ │ │ │ │ │ │ └── lookup.json │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ ├── calendar/ │ │ │ │ │ │ ├── bookAppointment.json │ │ │ │ │ │ └── getFreeSlots.json │ │ │ │ │ ├── contact/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── opportunity/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ └── task/ │ │ │ │ │ └── create.json │ │ │ │ ├── v1/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── HighLevelV1.node.ts │ │ │ │ │ └── description/ │ │ │ │ │ ├── ContactDescription.ts │ │ │ │ │ ├── OpportunityDescription.ts │ │ │ │ │ └── TaskDescription.ts │ │ │ │ └── v2/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── HighLevelV2.node.ts │ │ │ │ ├── description/ │ │ │ │ │ ├── CalendarDescription.ts │ │ │ │ │ ├── ContactDescription.ts │ │ │ │ │ ├── OpportunityDescription.ts │ │ │ │ │ └── TaskDescription.ts │ │ │ │ └── test/ │ │ │ │ ├── AddCustomFieldsPreSendAction.test.ts │ │ │ │ ├── AddLocationIdPreSendAction.test.ts │ │ │ │ ├── AddNotePostReceiveAction.test.ts │ │ │ │ ├── ContactIdentifierPreSendAction.test.ts │ │ │ │ ├── DateTimeToEpochPreSendAction.test.ts │ │ │ │ ├── DateToIsoSuperssMillis.test.ts │ │ │ │ ├── DueDatePreSendAction.test.ts │ │ │ │ ├── GetContacts.test.ts │ │ │ │ ├── GetPipelineStages.test.ts │ │ │ │ ├── GetPipelines.test.ts │ │ │ │ ├── GetUsers.test.ts │ │ │ │ ├── HighLevelApiPagination.test.ts │ │ │ │ ├── HighLevelApiRequest.test.ts │ │ │ │ ├── IsEmailValid.test.ts │ │ │ │ ├── IsPhoneValid.test.ts │ │ │ │ ├── SplitTagsPreSendAction.test.ts │ │ │ │ ├── TaskPostReceiceAction.test.ts │ │ │ │ ├── TaskUpdatePreSendAction.test.ts │ │ │ │ └── ValidEmailAndPhonePreSendAction.test.ts │ │ │ ├── HomeAssistant/ │ │ │ │ ├── CameraProxyDescription.ts │ │ │ │ ├── ConfigDescription.ts │ │ │ │ ├── EventDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── HistoryDescription.ts │ │ │ │ ├── HomeAssistant.node.json │ │ │ │ ├── HomeAssistant.node.ts │ │ │ │ ├── LogDescription.ts │ │ │ │ ├── ServiceDescription.ts │ │ │ │ ├── StateDescription.ts │ │ │ │ ├── TemplateDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── service/ │ │ │ │ │ └── call.json │ │ │ │ └── state/ │ │ │ │ ├── get.json │ │ │ │ ├── getAll.json │ │ │ │ └── upsert.json │ │ │ ├── Html/ │ │ │ │ ├── Html.node.json │ │ │ │ ├── Html.node.ts │ │ │ │ ├── placeholder.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── Html.node.test.ts │ │ │ │ │ └── extractHtmlContent.workflow.json │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── HtmlExtract/ │ │ │ │ ├── HtmlExtract.node.json │ │ │ │ ├── HtmlExtract.node.ts │ │ │ │ └── test/ │ │ │ │ ├── HtmlExtract.node.test.ts │ │ │ │ └── workflow.dotNotation.json │ │ │ ├── HttpRequest/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── HttpRequest.node.json │ │ │ │ ├── HttpRequest.node.ts │ │ │ │ ├── V1/ │ │ │ │ │ └── HttpRequestV1.node.ts │ │ │ │ ├── V2/ │ │ │ │ │ └── HttpRequestV2.node.ts │ │ │ │ ├── V3/ │ │ │ │ │ ├── Description.ts │ │ │ │ │ ├── HttpRequestV3.node.ts │ │ │ │ │ └── utils/ │ │ │ │ │ ├── binaryData.ts │ │ │ │ │ ├── buffer-decoding.ts │ │ │ │ │ ├── parse.ts │ │ │ │ │ └── test/ │ │ │ │ │ └── buffer-decoding.test.ts │ │ │ │ ├── interfaces.ts │ │ │ │ ├── shared/ │ │ │ │ │ ├── optimizeResponse.test.ts │ │ │ │ │ └── optimizeResponse.ts │ │ │ │ └── test/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ ├── binaryData/ │ │ │ │ │ ├── HttpRequest.test.ts │ │ │ │ │ └── binaryData.test.json │ │ │ │ ├── encoding/ │ │ │ │ │ ├── HttpRequest.test.ts │ │ │ │ │ └── encoding.test.json │ │ │ │ ├── encodingQuoted/ │ │ │ │ │ ├── HttpRequest.test.ts │ │ │ │ │ └── encodingQuoted.test.json │ │ │ │ ├── node/ │ │ │ │ │ ├── HttpRequest.test.ts │ │ │ │ │ ├── HttpRequestV2.test.ts │ │ │ │ │ ├── HttpRequestV3.test.ts │ │ │ │ │ ├── workflow.delete.json │ │ │ │ │ ├── workflow.get.json │ │ │ │ │ ├── workflow.pagination.json │ │ │ │ │ ├── workflow.patch.json │ │ │ │ │ ├── workflow.post.json │ │ │ │ │ ├── workflow.put.json │ │ │ │ │ └── workflow.use_error_output.json │ │ │ │ └── utils/ │ │ │ │ ├── binaryData.test.ts │ │ │ │ ├── parse.test.ts │ │ │ │ └── utils.test.ts │ │ │ ├── Hubspot/ │ │ │ │ ├── Hubspot.node.json │ │ │ │ ├── Hubspot.node.ts │ │ │ │ ├── HubspotTrigger.node.json │ │ │ │ ├── HubspotTrigger.node.ts │ │ │ │ ├── V1/ │ │ │ │ │ ├── CompanyDescription.ts │ │ │ │ │ ├── ContactDescription.ts │ │ │ │ │ ├── ContactListDescription.ts │ │ │ │ │ ├── DealDescription.ts │ │ │ │ │ ├── DealInterface.ts │ │ │ │ │ ├── EngagementDescription.ts │ │ │ │ │ ├── FormDescription.ts │ │ │ │ │ ├── FormInterface.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── HubspotV1.node.ts │ │ │ │ │ └── TicketDescription.ts │ │ │ │ ├── V2/ │ │ │ │ │ ├── CompanyDescription.ts │ │ │ │ │ ├── ContactDescription.ts │ │ │ │ │ ├── ContactListDescription.ts │ │ │ │ │ ├── DealDescription.ts │ │ │ │ │ ├── DealInterface.ts │ │ │ │ │ ├── EngagementDescription.ts │ │ │ │ │ ├── FormDescription.ts │ │ │ │ │ ├── FormInterface.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── HubspotV2.node.ts │ │ │ │ │ ├── TicketDescription.ts │ │ │ │ │ └── utils/ │ │ │ │ │ └── parseToTimestamp.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ ├── v2.1.0/ │ │ │ │ │ │ ├── company/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ ├── searchByDomain.json │ │ │ │ │ │ │ └── update.json │ │ │ │ │ │ ├── contact/ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ ├── getRecentlyCreatedUpdated.json │ │ │ │ │ │ │ ├── search.json │ │ │ │ │ │ │ └── upsert.json │ │ │ │ │ │ ├── contactList/ │ │ │ │ │ │ │ └── add.json │ │ │ │ │ │ ├── deal/ │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ └── search.json │ │ │ │ │ │ ├── engagement/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ └── ticket/ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── v2.2.0/ │ │ │ │ │ ├── company/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── contact/ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── search.json │ │ │ │ │ │ └── upsert.json │ │ │ │ │ ├── contactList/ │ │ │ │ │ │ └── add.json │ │ │ │ │ ├── deal/ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── search.json │ │ │ │ │ ├── engagement/ │ │ │ │ │ │ └── delete.json │ │ │ │ │ └── ticket/ │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── __test__/ │ │ │ │ ├── Hubspot.node.test.ts │ │ │ │ ├── companies.workflow.json │ │ │ │ ├── contacts.workflow.json │ │ │ │ ├── deals.workflow.json │ │ │ │ ├── engagements.workflow.json │ │ │ │ ├── fixtures/ │ │ │ │ │ ├── companies.json │ │ │ │ │ ├── companies_search_result.json │ │ │ │ │ ├── contacts.json │ │ │ │ │ ├── contacts_search_result.json │ │ │ │ │ ├── deals.json │ │ │ │ │ ├── deals_search_result.json │ │ │ │ │ └── engagements.json │ │ │ │ └── utils/ │ │ │ │ └── parseToTimestamp.test.ts │ │ │ ├── HumanticAI/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── HumanticAi.node.json │ │ │ │ ├── HumanticAi.node.ts │ │ │ │ └── ProfileDescription.ts │ │ │ ├── Hunter/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Hunter.node.json │ │ │ │ └── Hunter.node.ts │ │ │ ├── ICalendar/ │ │ │ │ ├── ICalendar.node.json │ │ │ │ ├── ICalendar.node.ts │ │ │ │ ├── createEvent.operation.ts │ │ │ │ └── test/ │ │ │ │ └── node/ │ │ │ │ ├── ICalendar.test.ts │ │ │ │ └── workflow.iCalendar.json │ │ │ ├── If/ │ │ │ │ ├── If.node.json │ │ │ │ ├── If.node.ts │ │ │ │ ├── V1/ │ │ │ │ │ └── IfV1.node.ts │ │ │ │ ├── V2/ │ │ │ │ │ ├── IfV2.node.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── test/ │ │ │ │ ├── v1/ │ │ │ │ │ ├── IF.boolean.json │ │ │ │ │ ├── IF.date-time.json │ │ │ │ │ ├── IF.number.json │ │ │ │ │ ├── IF.string.json │ │ │ │ │ └── If.node.test.ts │ │ │ │ └── v2/ │ │ │ │ ├── IfV2.boolean.json │ │ │ │ ├── IfV2.date-time.json │ │ │ │ ├── IfV2.node.test.ts │ │ │ │ ├── IfV2.number.json │ │ │ │ ├── IfV2.other.json │ │ │ │ └── IfV2.string.json │ │ │ ├── Intercom/ │ │ │ │ ├── CompanyDescription.ts │ │ │ │ ├── CompanyInteface.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Intercom.node.json │ │ │ │ ├── Intercom.node.ts │ │ │ │ ├── LeadDescription.ts │ │ │ │ ├── LeadInterface.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ ├── UserInterface.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── lead/ │ │ │ │ └── create.json │ │ │ ├── Interval/ │ │ │ │ ├── Interval.node.json │ │ │ │ └── Interval.node.ts │ │ │ ├── InvoiceNinja/ │ │ │ │ ├── BankTransactionDescription.ts │ │ │ │ ├── BankTransactionInterface.ts │ │ │ │ ├── ClientDescription.ts │ │ │ │ ├── ClientInterface.ts │ │ │ │ ├── ExpenseDescription.ts │ │ │ │ ├── ExpenseInterface.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── InvoiceDescription.ts │ │ │ │ ├── InvoiceNinja.node.json │ │ │ │ ├── InvoiceNinja.node.ts │ │ │ │ ├── InvoiceNinjaTrigger.node.json │ │ │ │ ├── InvoiceNinjaTrigger.node.ts │ │ │ │ ├── PaymentDescription.ts │ │ │ │ ├── PaymentInterface.ts │ │ │ │ ├── QuoteDescription.ts │ │ │ │ ├── QuoteInterface.ts │ │ │ │ ├── TaskDescription.ts │ │ │ │ ├── TaskInterface.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ └── invoice/ │ │ │ │ │ └── getAll.json │ │ │ │ └── invoiceInterface.ts │ │ │ ├── ItemLists/ │ │ │ │ ├── ItemLists.node.json │ │ │ │ ├── ItemLists.node.ts │ │ │ │ ├── V1/ │ │ │ │ │ ├── ItemListsV1.node.ts │ │ │ │ │ └── summarize.operation.ts │ │ │ │ ├── V2/ │ │ │ │ │ ├── ItemListsV2.node.ts │ │ │ │ │ └── summarize.operation.ts │ │ │ │ ├── V3/ │ │ │ │ │ ├── ItemListsV3.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── common.descriptions.ts │ │ │ │ │ │ ├── itemList/ │ │ │ │ │ │ │ ├── concatenateItems.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── limit.operation.ts │ │ │ │ │ │ │ ├── removeDuplicates.operation.ts │ │ │ │ │ │ │ ├── sort.operation.ts │ │ │ │ │ │ │ ├── splitOutItems.operation.ts │ │ │ │ │ │ │ └── summarize.operation.ts │ │ │ │ │ │ ├── node.type.ts │ │ │ │ │ │ ├── router.ts │ │ │ │ │ │ └── versionDescription.ts │ │ │ │ │ └── helpers/ │ │ │ │ │ └── utils.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ ├── v3.0.0/ │ │ │ │ │ │ └── itemList/ │ │ │ │ │ │ └── limit.json │ │ │ │ │ └── v3.1.0/ │ │ │ │ │ └── itemList/ │ │ │ │ │ ├── limit.json │ │ │ │ │ ├── removeDuplicates.json │ │ │ │ │ ├── sort.json │ │ │ │ │ └── summarize.json │ │ │ │ └── test/ │ │ │ │ └── node/ │ │ │ │ ├── ItemLists.test.ts │ │ │ │ ├── workflow.aggregateItems.json │ │ │ │ ├── workflow.concatenate_pairedItems.json │ │ │ │ ├── workflow.limit.json │ │ │ │ ├── workflow.removeDuplicates.json │ │ │ │ ├── workflow.removeDuplicates_3_1.json │ │ │ │ ├── workflow.splitOutItems.json │ │ │ │ ├── workflow.splitOutItems.split_object.json │ │ │ │ ├── workflow.summarize.json │ │ │ │ ├── workflow.update_2_1.json │ │ │ │ ├── workflow.update_2_2.json │ │ │ │ └── workflow.update_3.json │ │ │ ├── Iterable/ │ │ │ │ ├── EventDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Iterable.node.json │ │ │ │ ├── Iterable.node.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ └── UserListDescription.ts │ │ │ ├── Jenkins/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Jenkins.node.json │ │ │ │ ├── Jenkins.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── job/ │ │ │ │ ├── trigger.json │ │ │ │ └── triggerParams.json │ │ │ ├── JinaAI/ │ │ │ │ ├── JinaAi.node.json │ │ │ │ ├── JinaAi.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── reader/ │ │ │ │ │ └── read.json │ │ │ │ └── __test__/ │ │ │ │ └── node/ │ │ │ │ ├── JinaAi.node.test.ts │ │ │ │ ├── deepResearch.workflow.json │ │ │ │ ├── fixtures/ │ │ │ │ │ ├── deepResearch.json │ │ │ │ │ ├── read.json │ │ │ │ │ └── search.json │ │ │ │ ├── read.workflow.json │ │ │ │ └── search.workflow.json │ │ │ ├── Jira/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── IssueAttachmentDescription.ts │ │ │ │ ├── IssueCommentDescription.ts │ │ │ │ ├── IssueDescription.ts │ │ │ │ ├── IssueInterface.ts │ │ │ │ ├── Jira.node.json │ │ │ │ ├── Jira.node.ts │ │ │ │ ├── JiraTrigger.node.json │ │ │ │ ├── JiraTrigger.node.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── issue/ │ │ │ │ │ │ ├── changelog.json │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ ├── transitions.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── issueAttachment/ │ │ │ │ │ │ ├── add.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── issueComment/ │ │ │ │ │ │ ├── add.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── remove.json │ │ │ │ │ └── user/ │ │ │ │ │ └── get.json │ │ │ │ ├── __test__/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ ├── Jira.node.test.ts │ │ │ │ │ ├── JiraTrigger.node.test.ts │ │ │ │ │ └── node.methods.test.ts │ │ │ │ └── types.ts │ │ │ ├── JotForm/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── JotFormTrigger.node.json │ │ │ │ └── JotFormTrigger.node.ts │ │ │ ├── Jwt/ │ │ │ │ ├── Jwt.node.json │ │ │ │ ├── Jwt.node.ts │ │ │ │ └── test/ │ │ │ │ ├── Jwt.node.test.ts │ │ │ │ └── jwt.workflow.json │ │ │ ├── Kafka/ │ │ │ │ ├── Kafka.node.json │ │ │ │ ├── Kafka.node.ts │ │ │ │ ├── KafkaTrigger.node.json │ │ │ │ ├── KafkaTrigger.node.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── Kafka.node.test.ts │ │ │ │ │ ├── KafkaTrigger.node.test.ts │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── workflow.json │ │ │ │ └── utils.ts │ │ │ ├── Keap/ │ │ │ │ ├── CompanyDescription.ts │ │ │ │ ├── CompanyInterface.ts │ │ │ │ ├── ConctactInterface.ts │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── ContactNoteDescription.ts │ │ │ │ ├── ContactNoteInterface.ts │ │ │ │ ├── ContactTagDescription.ts │ │ │ │ ├── EcommerceOrderDescripion.ts │ │ │ │ ├── EcommerceOrderInterface.ts │ │ │ │ ├── EcommerceProductDescription.ts │ │ │ │ ├── EcommerceProductInterface.ts │ │ │ │ ├── EmaiIInterface.ts │ │ │ │ ├── EmailDescription.ts │ │ │ │ ├── FileDescription.ts │ │ │ │ ├── FileInterface.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Keap.node.json │ │ │ │ ├── Keap.node.ts │ │ │ │ ├── KeapTrigger.node.json │ │ │ │ ├── KeapTrigger.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── contact/ │ │ │ │ ├── get.json │ │ │ │ ├── getAll.json │ │ │ │ └── upsert.json │ │ │ ├── KoBoToolbox/ │ │ │ │ ├── FileDescription.ts │ │ │ │ ├── FormDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── HookDescription.ts │ │ │ │ ├── KoBoToolbox.node.json │ │ │ │ ├── KoBoToolbox.node.ts │ │ │ │ ├── KoBoToolboxTrigger.node.json │ │ │ │ ├── KoBoToolboxTrigger.node.ts │ │ │ │ ├── Options.ts │ │ │ │ ├── SubmissionDescription.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── submission/ │ │ │ │ │ └── getAll.json │ │ │ │ └── test/ │ │ │ │ └── GenericFunctions.test.ts │ │ │ ├── Ldap/ │ │ │ │ ├── Helpers.ts │ │ │ │ ├── Ldap.node.json │ │ │ │ ├── Ldap.node.ts │ │ │ │ ├── LdapDescription.ts │ │ │ │ └── __tests__/ │ │ │ │ └── Ldap.node.test.ts │ │ │ ├── Lemlist/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Lemlist.node.json │ │ │ │ ├── Lemlist.node.ts │ │ │ │ ├── LemlistTrigger.node.json │ │ │ │ ├── LemlistTrigger.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ ├── activity/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── campaign/ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── getStats.json │ │ │ │ │ ├── enrich/ │ │ │ │ │ │ ├── enrichPerson.json │ │ │ │ │ │ └── get.json │ │ │ │ │ └── lead/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── get.json │ │ │ │ ├── test/ │ │ │ │ │ └── GenericFunctions.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── LemlistV1.node.ts │ │ │ │ │ └── descriptions/ │ │ │ │ │ ├── ActivityDescription.ts │ │ │ │ │ ├── CampaignDescription.ts │ │ │ │ │ ├── LeadDescription.ts │ │ │ │ │ ├── TeamDescription.ts │ │ │ │ │ ├── UnsubscribeDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── v2/ │ │ │ │ ├── LemlistV2.node.ts │ │ │ │ └── descriptions/ │ │ │ │ ├── ActivityDescription.ts │ │ │ │ ├── CampaignDescription.ts │ │ │ │ ├── EnrichmentDescription.ts │ │ │ │ ├── LeadDescription.ts │ │ │ │ ├── TeamDescription.ts │ │ │ │ ├── UnsubscribeDescription.ts │ │ │ │ └── index.ts │ │ │ ├── Line/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Line.node.json │ │ │ │ ├── Line.node.ts │ │ │ │ ├── NotificationDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── notification/ │ │ │ │ └── send.json │ │ │ ├── Linear/ │ │ │ │ ├── CommentDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── IssueDescription.ts │ │ │ │ ├── Linear.node.json │ │ │ │ ├── Linear.node.ts │ │ │ │ ├── LinearTrigger.node.json │ │ │ │ ├── LinearTrigger.node.ts │ │ │ │ ├── Queries.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ ├── v1.0.0/ │ │ │ │ │ │ ├── issue/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ └── update.json │ │ │ │ │ │ └── notification/ │ │ │ │ │ │ └── send.json │ │ │ │ │ └── v1.1.0/ │ │ │ │ │ ├── comment/ │ │ │ │ │ │ └── addComment.json │ │ │ │ │ └── issue/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── test/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ └── workflow/ │ │ │ │ ├── Linear.workflow.json │ │ │ │ ├── Linear.workflow.test.ts │ │ │ │ ├── apiRequest.ts │ │ │ │ └── apiResponses.ts │ │ │ ├── LingvaNex/ │ │ │ │ ├── ActivityDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── LingvaNex.node.json │ │ │ │ └── LingvaNex.node.ts │ │ │ ├── LinkedIn/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── LinkedIn.node.json │ │ │ │ ├── LinkedIn.node.ts │ │ │ │ ├── PostDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── post/ │ │ │ │ └── create.json │ │ │ ├── LocalFileTrigger/ │ │ │ │ ├── LocalFileTrigger.node.json │ │ │ │ ├── LocalFileTrigger.node.ts │ │ │ │ └── __test__/ │ │ │ │ └── LocalFileTrigger.node.test.ts │ │ │ ├── LoneScale/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── LoneScale.node.json │ │ │ │ ├── LoneScale.node.ts │ │ │ │ ├── LoneScaleTrigger.node.json │ │ │ │ ├── LoneScaleTrigger.node.ts │ │ │ │ └── constants.ts │ │ │ ├── MQTT/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Mqtt.node.json │ │ │ │ ├── Mqtt.node.ts │ │ │ │ ├── MqttTrigger.node.json │ │ │ │ ├── MqttTrigger.node.ts │ │ │ │ └── test/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ ├── Mqtt.node.test.ts │ │ │ │ └── MqttTrigger.node.test.ts │ │ │ ├── Magento/ │ │ │ │ ├── CustomerDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── InvoiceDescription.ts │ │ │ │ ├── Magento2.node.json │ │ │ │ ├── Magento2.node.ts │ │ │ │ ├── OrderDescription.ts │ │ │ │ ├── ProductDescription.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── product/ │ │ │ │ │ └── get.json │ │ │ │ └── types.ts │ │ │ ├── Mailcheck/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Mailcheck.node.json │ │ │ │ ├── Mailcheck.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── email/ │ │ │ │ └── check.json │ │ │ ├── Mailchimp/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Mailchimp.node.json │ │ │ │ ├── Mailchimp.node.ts │ │ │ │ ├── MailchimpTrigger.node.json │ │ │ │ ├── MailchimpTrigger.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── campaign/ │ │ │ │ │ └── getAll.json │ │ │ │ ├── member/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── delete.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ └── memberTag/ │ │ │ │ ├── create.json │ │ │ │ └── delete.json │ │ │ ├── MailerLite/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MailerLite.node.json │ │ │ │ ├── MailerLite.node.ts │ │ │ │ ├── MailerLiteTrigger.node.json │ │ │ │ ├── MailerLiteTrigger.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ ├── v1.0.0/ │ │ │ │ │ │ └── subscriber/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ └── subscriber/ │ │ │ │ │ └── create.json │ │ │ │ ├── tests/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ ├── apiResponses.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── MailerLite.v1.workflow.json │ │ │ │ │ │ └── MailerLite.v1.workflow.test.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── MailerLite.v2.workflow.json │ │ │ │ │ └── MailerLite.v2.workflow.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── MailerLiteTriggerV1.node.ts │ │ │ │ │ ├── MailerLiteV1.node.ts │ │ │ │ │ └── SubscriberDescription.ts │ │ │ │ └── v2/ │ │ │ │ ├── MailerLite.Interface.ts │ │ │ │ ├── MailerLiteTriggerV2.node.ts │ │ │ │ ├── MailerLiteV2.node.ts │ │ │ │ └── SubscriberDescription.ts │ │ │ ├── Mailgun/ │ │ │ │ ├── Mailgun.node.json │ │ │ │ ├── Mailgun.node.ts │ │ │ │ └── test/ │ │ │ │ └── Mailgun.node.test.ts │ │ │ ├── Mailjet/ │ │ │ │ ├── EmailDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Mailjet.node.json │ │ │ │ ├── Mailjet.node.ts │ │ │ │ ├── MailjetTrigger.node.json │ │ │ │ ├── MailjetTrigger.node.ts │ │ │ │ ├── SmsDescription.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── email/ │ │ │ │ │ ├── send.json │ │ │ │ │ └── sendTemplate.json │ │ │ │ └── test/ │ │ │ │ └── Mailjet.node.test.ts │ │ │ ├── Mandrill/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Mandrill.node.json │ │ │ │ ├── Mandrill.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── message/ │ │ │ │ │ ├── sendHtml.json │ │ │ │ │ └── sendTemplate.json │ │ │ │ └── test/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ ├── Mandrill.node.test.ts │ │ │ │ ├── sendHtml.workflow.json │ │ │ │ ├── sendTemplate.workflow.json │ │ │ │ └── sendTemplateWithSubaccount.workflow.json │ │ │ ├── ManualTrigger/ │ │ │ │ ├── ManualTrigger.node.json │ │ │ │ └── ManualTrigger.node.ts │ │ │ ├── Markdown/ │ │ │ │ ├── Markdown.node.json │ │ │ │ ├── Markdown.node.ts │ │ │ │ └── test/ │ │ │ │ └── node/ │ │ │ │ ├── Markdown.test.ts │ │ │ │ └── workflow.markdown.json │ │ │ ├── Marketstack/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Marketstack.node.json │ │ │ │ ├── Marketstack.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── endOfDayData/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── ticker/ │ │ │ │ │ └── get.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── EndOfDayDataDescription.ts │ │ │ │ │ ├── ExchangeDescription.ts │ │ │ │ │ ├── TickerDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── types.ts │ │ │ ├── Matrix/ │ │ │ │ ├── AccountDescription.ts │ │ │ │ ├── EventDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Matrix.node.json │ │ │ │ ├── Matrix.node.ts │ │ │ │ ├── MediaDescription.ts │ │ │ │ ├── MessageDescription.ts │ │ │ │ ├── RoomDescription.ts │ │ │ │ ├── RoomMemberDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── message/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ └── roomMember/ │ │ │ │ └── getAll.json │ │ │ ├── Mattermost/ │ │ │ │ ├── Mattermost.node.json │ │ │ │ ├── Mattermost.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── message/ │ │ │ │ │ └── post.json │ │ │ │ └── v1/ │ │ │ │ ├── MattermostV1.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── Interfaces.ts │ │ │ │ │ ├── channel/ │ │ │ │ │ │ ├── addUser/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── create/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── del/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── members/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── restore/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── search/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── statistics/ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── message/ │ │ │ │ │ │ ├── del/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── post/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── postEphemeral/ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── reaction/ │ │ │ │ │ │ ├── create/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── del/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getAll/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ ├── user/ │ │ │ │ │ │ ├── create/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── deactive/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getAll/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getByEmail/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getById/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── invite/ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── loadOptions.ts │ │ │ │ └── transport/ │ │ │ │ └── index.ts │ │ │ ├── Mautic/ │ │ │ │ ├── CampaignContactDescription.ts │ │ │ │ ├── CompanyContactDescription.ts │ │ │ │ ├── CompanyDescription.ts │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── ContactSegmentDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Mautic.node.json │ │ │ │ ├── Mautic.node.ts │ │ │ │ ├── MauticTrigger.node.json │ │ │ │ ├── MauticTrigger.node.ts │ │ │ │ └── SegmentEmailDescription.ts │ │ │ ├── Medium/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Medium.node.json │ │ │ │ ├── Medium.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── post/ │ │ │ │ └── create.json │ │ │ ├── Merge/ │ │ │ │ ├── Merge.node.json │ │ │ │ ├── Merge.node.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── node/ │ │ │ │ │ │ ├── Merge.test.ts │ │ │ │ │ │ ├── workflow.append.json │ │ │ │ │ │ ├── workflow.chooseBranch.empty.paired.items.json │ │ │ │ │ │ ├── workflow.chooseBranch.json │ │ │ │ │ │ ├── workflow.combine.mergeByFields.json │ │ │ │ │ │ ├── workflow.combine.mergeByPosition.json │ │ │ │ │ │ ├── workflow.combine.multiplex.json │ │ │ │ │ │ ├── workflow.keep_non_matches.json │ │ │ │ │ │ ├── workflow.mixed.forceInputNodeExecution.json │ │ │ │ │ │ ├── workflow.mixed.not.forceInputNodeExecution.json │ │ │ │ │ │ └── workflow.update_2_1.json │ │ │ │ │ └── v3/ │ │ │ │ │ ├── combineBtSql.test.ts │ │ │ │ │ ├── operations.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ └── MergeV1.node.ts │ │ │ │ ├── v2/ │ │ │ │ │ ├── MergeV2.node.ts │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── v3/ │ │ │ │ ├── MergeV3.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── mode/ │ │ │ │ │ │ ├── append.ts │ │ │ │ │ │ ├── chooseBranch.ts │ │ │ │ │ │ ├── combineAll.ts │ │ │ │ │ │ ├── combineByFields.ts │ │ │ │ │ │ ├── combineByPosition.ts │ │ │ │ │ │ ├── combineBySql.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── descriptions.ts │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ ├── sandbox-utils.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── methods/ │ │ │ │ ├── index.ts │ │ │ │ └── loadOptions.ts │ │ │ ├── MessageBird/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MessageBird.node.json │ │ │ │ └── MessageBird.node.ts │ │ │ ├── Metabase/ │ │ │ │ ├── AlertsDescription.ts │ │ │ │ ├── DatabasesDescription.ts │ │ │ │ ├── Metabase.node.json │ │ │ │ ├── Metabase.node.ts │ │ │ │ ├── MetricsDescription.ts │ │ │ │ ├── QuestionsDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── databases/ │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── getFields.json │ │ │ │ └── questions/ │ │ │ │ └── get.json │ │ │ ├── Microsoft/ │ │ │ │ ├── AzureCosmosDb/ │ │ │ │ │ ├── AzureCosmosDb.node.json │ │ │ │ │ ├── AzureCosmosDb.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ └── item/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── query.json │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── common.ts │ │ │ │ │ │ ├── container/ │ │ │ │ │ │ │ ├── Container.resource.ts │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ └── getAll.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── item/ │ │ │ │ │ │ ├── Item.resource.ts │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ ├── query.operation.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── errorHandler.ts │ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── listSearch.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── container/ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ └── getAll.workflow.json │ │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ │ └── sharedKey.test.ts │ │ │ │ │ │ ├── credentials.ts │ │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ │ ├── errorHandler.test.ts │ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ │ ├── item/ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ ├── query.test.ts │ │ │ │ │ │ │ ├── query.workflow.json │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ │ └── listSearch/ │ │ │ │ │ │ └── listSearch.test.ts │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── Dynamics/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── MicrosoftDynamicsCrm.node.json │ │ │ │ │ ├── MicrosoftDynamicsCrm.node.ts │ │ │ │ │ └── descriptions/ │ │ │ │ │ ├── AccountDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── Entra/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── MicrosoftEntra.node.json │ │ │ │ │ ├── MicrosoftEntra.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ ├── group/ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ └── user/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── GroupDescription.ts │ │ │ │ │ │ ├── UserDescription.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ ├── GroupDescription.test.ts │ │ │ │ │ ├── MicrosoftEntra.node.test.ts │ │ │ │ │ ├── UserDescription.test.ts │ │ │ │ │ └── mocks.ts │ │ │ │ ├── Excel/ │ │ │ │ │ ├── MicrosoftExcel.node.json │ │ │ │ │ ├── MicrosoftExcel.node.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── credentials.ts │ │ │ │ │ │ └── v2/ │ │ │ │ │ │ ├── methods/ │ │ │ │ │ │ │ └── loadOptions.test.ts │ │ │ │ │ │ ├── node/ │ │ │ │ │ │ │ ├── table/ │ │ │ │ │ │ │ │ ├── addTable.test.ts │ │ │ │ │ │ │ │ ├── addTable.workflow.json │ │ │ │ │ │ │ │ ├── append.test.ts │ │ │ │ │ │ │ │ ├── append.workflow.json │ │ │ │ │ │ │ │ ├── convertToRange.test.ts │ │ │ │ │ │ │ │ ├── convertToRange.workflow.json │ │ │ │ │ │ │ │ ├── deleteTable.test.ts │ │ │ │ │ │ │ │ ├── deleteTable.workflow.json │ │ │ │ │ │ │ │ ├── getColumns.test.ts │ │ │ │ │ │ │ │ ├── getColumns.workflow.json │ │ │ │ │ │ │ │ ├── getRows.test.ts │ │ │ │ │ │ │ │ ├── getRows.workflow.json │ │ │ │ │ │ │ │ ├── lookup.test.ts │ │ │ │ │ │ │ │ └── lookup.workflow.json │ │ │ │ │ │ │ ├── workbook/ │ │ │ │ │ │ │ │ ├── addWorksheet.test.ts │ │ │ │ │ │ │ │ ├── addWorksheet.workflow.json │ │ │ │ │ │ │ │ ├── deleteWorkbook.test.ts │ │ │ │ │ │ │ │ ├── deleteWorkbook.workflow.json │ │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ │ └── getAll.workflow.json │ │ │ │ │ │ │ └── worksheet/ │ │ │ │ │ │ │ ├── append.test.ts │ │ │ │ │ │ │ ├── append.workflow.json │ │ │ │ │ │ │ ├── clear.test.ts │ │ │ │ │ │ │ ├── clear.workflow.json │ │ │ │ │ │ │ ├── deleteWorksheet.test.ts │ │ │ │ │ │ │ ├── deleteWorksheet.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ ├── readRows.test.ts │ │ │ │ │ │ │ ├── readRows.workflow.json │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ ├── update.workflow.json │ │ │ │ │ │ │ ├── upsert.test.ts │ │ │ │ │ │ │ └── upsert.workflow.json │ │ │ │ │ │ └── utils/ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ │ ├── MicrosoftExcelV1.node.ts │ │ │ │ │ │ ├── TableDescription.ts │ │ │ │ │ │ ├── WorkbookDescription.ts │ │ │ │ │ │ └── WorksheetDescription.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── MicrosoftExcelV2.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── common.descriptions.ts │ │ │ │ │ │ ├── node.type.ts │ │ │ │ │ │ ├── router.ts │ │ │ │ │ │ ├── table/ │ │ │ │ │ │ │ ├── Table.resource.ts │ │ │ │ │ │ │ ├── addTable.operation.ts │ │ │ │ │ │ │ ├── append.operation.ts │ │ │ │ │ │ │ ├── convertToRange.operation.ts │ │ │ │ │ │ │ ├── deleteTable.operation.ts │ │ │ │ │ │ │ ├── getColumns.operation.ts │ │ │ │ │ │ │ ├── getRows.operation.ts │ │ │ │ │ │ │ └── lookup.operation.ts │ │ │ │ │ │ ├── versionDescription.ts │ │ │ │ │ │ ├── workbook/ │ │ │ │ │ │ │ ├── Workbook.resource.ts │ │ │ │ │ │ │ ├── addWorksheet.operation.ts │ │ │ │ │ │ │ ├── deleteWorkbook.operation.ts │ │ │ │ │ │ │ └── getAll.operation.ts │ │ │ │ │ │ └── worksheet/ │ │ │ │ │ │ ├── Worksheet.resource.ts │ │ │ │ │ │ ├── append.operation.ts │ │ │ │ │ │ ├── clear.operation.ts │ │ │ │ │ │ ├── deleteWorksheet.operation.ts │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ ├── readRows.operation.ts │ │ │ │ │ │ ├── update.operation.ts │ │ │ │ │ │ └── upsert.operation.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ │ └── loadOptions.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ └── transport/ │ │ │ │ │ │ └── index.test.ts │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── GraphSecurity/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── MicrosoftGraphSecurity.node.json │ │ │ │ │ ├── MicrosoftGraphSecurity.node.ts │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── SecureScoreControlProfileDescription.ts │ │ │ │ │ │ ├── SecureScoreDescription.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ └── workflow/ │ │ │ │ │ ├── secureScore.get.test.ts │ │ │ │ │ ├── secureScore.get.workflow.json │ │ │ │ │ ├── secureScore.getAll.test.ts │ │ │ │ │ ├── secureScore.getAll.workflow.json │ │ │ │ │ ├── secureScoreControlProfile.get.test.ts │ │ │ │ │ ├── secureScoreControlProfile.get.workflow.json │ │ │ │ │ ├── secureScoreControlProfile.getAll.test.ts │ │ │ │ │ ├── secureScoreControlProfile.getAll.workflow.json │ │ │ │ │ ├── secureScoreControlProfile.update.test.ts │ │ │ │ │ └── secureScoreControlProfile.update.workflow.json │ │ │ │ ├── OneDrive/ │ │ │ │ │ ├── FileDescription.ts │ │ │ │ │ ├── FolderDescription.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── MicrosoftOneDrive.node.json │ │ │ │ │ ├── MicrosoftOneDrive.node.ts │ │ │ │ │ ├── MicrosoftOneDriveTrigger.node.json │ │ │ │ │ ├── MicrosoftOneDriveTrigger.node.ts │ │ │ │ │ ├── TriggerDescription.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ ├── v1.0.0/ │ │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ │ ├── copy.json │ │ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ │ │ ├── download.json │ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ │ ├── rename.json │ │ │ │ │ │ │ │ ├── search.json │ │ │ │ │ │ │ │ ├── share.json │ │ │ │ │ │ │ │ └── upload.json │ │ │ │ │ │ │ └── folder/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── getChildren.json │ │ │ │ │ │ │ ├── search.json │ │ │ │ │ │ │ └── share.json │ │ │ │ │ │ └── v1.1.0/ │ │ │ │ │ │ └── file/ │ │ │ │ │ │ ├── copy.json │ │ │ │ │ │ └── download.json │ │ │ │ │ ├── constants.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ └── node/ │ │ │ │ │ ├── file.download.test.ts │ │ │ │ │ └── file.upload.test.ts │ │ │ │ ├── Outlook/ │ │ │ │ │ ├── MicrosoftOutlook.node.json │ │ │ │ │ ├── MicrosoftOutlook.node.ts │ │ │ │ │ ├── MicrosoftOutlookTrigger.node.json │ │ │ │ │ ├── MicrosoftOutlookTrigger.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ │ ├── calendar/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── contact/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── draft/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── send.json │ │ │ │ │ │ │ └── update.json │ │ │ │ │ │ ├── event/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ └── update.json │ │ │ │ │ │ ├── folder/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── folderMessage/ │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── message/ │ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ ├── move.json │ │ │ │ │ │ │ ├── reply.json │ │ │ │ │ │ │ ├── send.json │ │ │ │ │ │ │ ├── sendAndWait.json │ │ │ │ │ │ │ └── update.json │ │ │ │ │ │ └── messageAttachment/ │ │ │ │ │ │ ├── download.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── trigger/ │ │ │ │ │ │ │ └── GenericFunctions.test.ts │ │ │ │ │ │ └── v2/ │ │ │ │ │ │ ├── methods/ │ │ │ │ │ │ │ ├── listSearch.test.ts │ │ │ │ │ │ │ └── loadOptions.test.ts │ │ │ │ │ │ ├── node/ │ │ │ │ │ │ │ ├── calendar/ │ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ │ │ ├── contact/ │ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ │ │ ├── draft/ │ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ │ ├── send.test.ts │ │ │ │ │ │ │ │ └── send.workflow.json │ │ │ │ │ │ │ ├── event/ │ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ │ └── create.workflow.json │ │ │ │ │ │ │ ├── folder/ │ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ │ └── create.workflow.json │ │ │ │ │ │ │ ├── folderMessage/ │ │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ │ └── getAll.workflow.json │ │ │ │ │ │ │ ├── message/ │ │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ │ ├── move.test.ts │ │ │ │ │ │ │ │ ├── move.workflow.json │ │ │ │ │ │ │ │ ├── reply.test.ts │ │ │ │ │ │ │ │ ├── reply.workflow.json │ │ │ │ │ │ │ │ ├── send.test.ts │ │ │ │ │ │ │ │ ├── send.workflow.json │ │ │ │ │ │ │ │ └── sendAndWait.test.ts │ │ │ │ │ │ │ └── messageAttachment/ │ │ │ │ │ │ │ └── add.test.ts │ │ │ │ │ │ └── utils/ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ ├── trigger/ │ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ │ └── MessageDescription.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── DraftDescription.ts │ │ │ │ │ │ ├── DraftMessageSharedDescription.ts │ │ │ │ │ │ ├── FolderDescription.ts │ │ │ │ │ │ ├── FolderMessageDecription.ts │ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ │ ├── MessageAttachmentDescription.ts │ │ │ │ │ │ ├── MessageDescription.ts │ │ │ │ │ │ └── MicrosoftOutlookV1.node.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── MicrosoftOutlookV2.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── calendar/ │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── contact/ │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── draft/ │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── send.operation.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── event/ │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── folder/ │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── folderMessage/ │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── message/ │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── move.operation.ts │ │ │ │ │ │ │ ├── reply.operation.ts │ │ │ │ │ │ │ ├── send.operation.ts │ │ │ │ │ │ │ ├── sendAndWait.operation.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── messageAttachment/ │ │ │ │ │ │ │ ├── add.operation.ts │ │ │ │ │ │ │ ├── download.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── node.description.ts │ │ │ │ │ │ ├── node.type.ts │ │ │ │ │ │ └── router.ts │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── common.descriptions.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── rlc.description.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ │ └── loadOptions.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ └── transport/ │ │ │ │ │ │ └── index.test.ts │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── SharePoint/ │ │ │ │ │ ├── MicrosoftSharePoint.node.ts │ │ │ │ │ ├── MicrosoftSharepoint.node.json │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ ├── item/ │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ └── list/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── common.descriptions.ts │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ ├── File.resource.ts │ │ │ │ │ │ │ ├── download.operation.ts │ │ │ │ │ │ │ ├── update.operation.ts │ │ │ │ │ │ │ └── upload.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── item/ │ │ │ │ │ │ │ ├── Item.resource.ts │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ ├── update.operation.ts │ │ │ │ │ │ │ └── upsert.operation.ts │ │ │ │ │ │ └── list/ │ │ │ │ │ │ ├── List.resource.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ └── getAll.operation.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ │ └── resourceMapping.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ │ ├── oauth2.test.ts │ │ │ │ │ │ │ └── oauth2.workflow.json │ │ │ │ │ │ ├── credentials.ts │ │ │ │ │ │ ├── file/ │ │ │ │ │ │ │ ├── download.test.ts │ │ │ │ │ │ │ ├── download.workflow.json │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ ├── update.workflow.json │ │ │ │ │ │ │ ├── upload.test.ts │ │ │ │ │ │ │ └── upload.workflow.json │ │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ │ ├── item/ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ ├── getAllLimitSimplify.test.ts │ │ │ │ │ │ │ ├── getAllLimitSimplify.workflow.json │ │ │ │ │ │ │ ├── getTokenRefresh.test.ts │ │ │ │ │ │ │ ├── getTokenRefresh.workflow.json │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ ├── update.workflow.json │ │ │ │ │ │ │ ├── upsert.test.ts │ │ │ │ │ │ │ └── upsert.workflow.json │ │ │ │ │ │ ├── list/ │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ └── getAll.workflow.json │ │ │ │ │ │ └── methods/ │ │ │ │ │ │ ├── listSearch.test.ts │ │ │ │ │ │ └── resourceMapping.test.ts │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── Sql/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── MicrosoftSql.node.json │ │ │ │ │ ├── MicrosoftSql.node.ts │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── MicrosoftSql.node.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── Storage/ │ │ │ │ │ ├── AzureStorage.node.json │ │ │ │ │ ├── AzureStorage.node.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ │ ├── blob/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ └── container/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── compare-header.ts │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── BlobDescription.ts │ │ │ │ │ │ ├── ContainerDescription.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── blob/ │ │ │ │ │ │ ├── blob_create.workflow.json │ │ │ │ │ │ ├── blob_delete.workflow.json │ │ │ │ │ │ ├── blob_get.workflow.json │ │ │ │ │ │ ├── blob_getAll.workflow.json │ │ │ │ │ │ ├── blob_getAllLimitOptions.workflow.json │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ └── getAllLimitOptions.test.ts │ │ │ │ │ ├── container/ │ │ │ │ │ │ ├── container_create.workflow.json │ │ │ │ │ │ ├── container_delete.workflow.json │ │ │ │ │ │ ├── container_get.workflow.json │ │ │ │ │ │ ├── container_getAll.workflow.json │ │ │ │ │ │ ├── container_getAllLimitOptions.workflow.json │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ └── getAllLimitOptions.test.ts │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ ├── credentials_oauth2.workflow.json │ │ │ │ │ │ ├── credentials_sharedKey.workflow.json │ │ │ │ │ │ ├── oauth2.test.ts │ │ │ │ │ │ └── sharedKey.test.ts │ │ │ │ │ ├── credentials.ts │ │ │ │ │ └── listSearch/ │ │ │ │ │ └── listSearch.test.ts │ │ │ │ ├── Teams/ │ │ │ │ │ ├── MicrosoftTeams.node.json │ │ │ │ │ ├── MicrosoftTeams.node.ts │ │ │ │ │ ├── MicrosoftTeamsTrigger.node.json │ │ │ │ │ ├── MicrosoftTeamsTrigger.node.ts │ │ │ │ │ ├── __schema__/ │ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── channelMessage/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ │ ├── chatMessage/ │ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ │ └── sendAndWait.json │ │ │ │ │ │ └── task/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── credentials.ts │ │ │ │ │ │ ├── trigger/ │ │ │ │ │ │ │ ├── MicrosoftTeamTrigger.test.ts │ │ │ │ │ │ │ └── utiles-trigger.test.ts │ │ │ │ │ │ └── v2/ │ │ │ │ │ │ ├── node/ │ │ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ │ ├── deleteChannel.test.ts │ │ │ │ │ │ │ │ ├── deleteChannel.workflow.json │ │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ │ │ ├── channelMessage/ │ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ │ └── getAll.workflow.json │ │ │ │ │ │ │ ├── chatMessage/ │ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ │ └── sendAndWait.test.ts │ │ │ │ │ │ │ └── task/ │ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ │ ├── deleteTask.test.ts │ │ │ │ │ │ │ ├── deleteTask.workflow.json │ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── ChannelDescription.ts │ │ │ │ │ │ ├── ChannelMessageDescription.ts │ │ │ │ │ │ ├── ChatMessageDescription.ts │ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ │ ├── MicrosoftTeamsV1.node.ts │ │ │ │ │ │ └── TaskDescription.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── MicrosoftTeamsV2.node.ts │ │ │ │ │ ├── actions/ │ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── deleteChannel.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ ├── channelMessage/ │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── chatMessage/ │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── sendAndWait.operation.ts │ │ │ │ │ │ ├── node.type.ts │ │ │ │ │ │ ├── router.ts │ │ │ │ │ │ ├── task/ │ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ │ ├── deleteTask.operation.ts │ │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ │ └── versionDescription.ts │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── common.description.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── rlc.description.ts │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ ├── utils-trigger.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── methods/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── listSearch.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ └── transport/ │ │ │ │ │ │ └── index.test.ts │ │ │ │ │ └── transport/ │ │ │ │ │ └── index.ts │ │ │ │ └── ToDo/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── LinkedResourceDescription.ts │ │ │ │ ├── ListDescription.ts │ │ │ │ ├── MicrosoftToDo.node.json │ │ │ │ ├── MicrosoftToDo.node.ts │ │ │ │ ├── TaskDescription.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── list/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── task/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ └── test/ │ │ │ │ └── GenericFunctions.test.ts │ │ │ ├── Mindee/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Mindee.node.json │ │ │ │ ├── Mindee.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v3.0.0/ │ │ │ │ ├── invoice/ │ │ │ │ │ └── predict.json │ │ │ │ └── receipt/ │ │ │ │ └── predict.json │ │ │ ├── Misp/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Misp.node.json │ │ │ │ ├── Misp.node.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── AttributeDescription.ts │ │ │ │ │ ├── EventDescription.ts │ │ │ │ │ ├── EventTagDescription.ts │ │ │ │ │ ├── FeedDescription.ts │ │ │ │ │ ├── GalaxyDescription.ts │ │ │ │ │ ├── NoticelistDescription.ts │ │ │ │ │ ├── ObjectDescription.ts │ │ │ │ │ ├── OrganisationDescription.ts │ │ │ │ │ ├── TagDescription.ts │ │ │ │ │ ├── UserDescription.ts │ │ │ │ │ ├── WarninglistDescription.ts │ │ │ │ │ ├── common.descriptions.ts │ │ │ │ │ └── index.ts │ │ │ │ └── types.ts │ │ │ ├── MistralAI/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MistralAi.node.json │ │ │ │ ├── MistralAi.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── document/ │ │ │ │ │ └── extractText.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── document/ │ │ │ │ │ │ ├── Document.resource.ts │ │ │ │ │ │ └── extractText.operation.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ ├── MistralAi.node.test.ts │ │ │ │ │ ├── fixtures/ │ │ │ │ │ │ ├── batch.json │ │ │ │ │ │ ├── document.json │ │ │ │ │ │ └── image.json │ │ │ │ │ └── workflow.json │ │ │ │ └── types.ts │ │ │ ├── Mocean/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Mocean.node.json │ │ │ │ └── Mocean.node.ts │ │ │ ├── MondayCom/ │ │ │ │ ├── BoardColumnDescription.ts │ │ │ │ ├── BoardDescription.ts │ │ │ │ ├── BoardGroupDescription.ts │ │ │ │ ├── BoardItemDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MondayCom.node.json │ │ │ │ ├── MondayCom.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── board/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── boardColumn/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── boardGroup/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ └── boardItem/ │ │ │ │ ├── addUpdate.json │ │ │ │ ├── changeColumnValue.json │ │ │ │ ├── changeMultipleColumnValues.json │ │ │ │ ├── create.json │ │ │ │ ├── delete.json │ │ │ │ ├── get.json │ │ │ │ ├── getAll.json │ │ │ │ ├── getByColumnValue.json │ │ │ │ └── move.json │ │ │ ├── MongoDb/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MongoDb.node.json │ │ │ │ ├── MongoDb.node.ts │ │ │ │ ├── MongoDbProperties.ts │ │ │ │ ├── mongoDb.types.ts │ │ │ │ └── test/ │ │ │ │ └── MongoDB.test.ts │ │ │ ├── MonicaCrm/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MonicaCrm.node.json │ │ │ │ ├── MonicaCrm.node.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── ActivityDescription.ts │ │ │ │ │ ├── CallDescription.ts │ │ │ │ │ ├── ContactDescription.ts │ │ │ │ │ ├── ContactFieldDescription.ts │ │ │ │ │ ├── ContactTagDescription.ts │ │ │ │ │ ├── ConversationDescription.ts │ │ │ │ │ ├── ConversationMessageDescription.ts │ │ │ │ │ ├── JournalEntryDescription.ts │ │ │ │ │ ├── NoteDescription.ts │ │ │ │ │ ├── ReminderDescription.ts │ │ │ │ │ ├── TagDescription.ts │ │ │ │ │ ├── TaskDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── types.ts │ │ │ ├── MoveBinaryData/ │ │ │ │ ├── MoveBinaryData.node.json │ │ │ │ ├── MoveBinaryData.node.ts │ │ │ │ └── test/ │ │ │ │ ├── MoveBinaryData.test.ts │ │ │ │ ├── MoveBinaryData.workflow.json │ │ │ │ └── data/ │ │ │ │ └── sample.json │ │ │ ├── Msg91/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Msg91.node.json │ │ │ │ └── Msg91.node.ts │ │ │ ├── MySql/ │ │ │ │ ├── MySql.node.json │ │ │ │ ├── MySql.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ ├── v2.4.0/ │ │ │ │ │ │ └── database/ │ │ │ │ │ │ ├── deleteTable.json │ │ │ │ │ │ ├── insert.json │ │ │ │ │ │ ├── update.json │ │ │ │ │ │ └── upsert.json │ │ │ │ │ └── v2.5.0/ │ │ │ │ │ └── database/ │ │ │ │ │ ├── deleteTable.json │ │ │ │ │ ├── insert.json │ │ │ │ │ ├── update.json │ │ │ │ │ └── upsert.json │ │ │ │ ├── test/ │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ │ ├── executeQuery.test.ts │ │ │ │ │ │ └── executeQuery.workflow.json │ │ │ │ │ └── v2/ │ │ │ │ │ ├── mysql.integration.test.ts │ │ │ │ │ ├── operations.test.ts │ │ │ │ │ ├── runQueries.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ └── MySqlV1.node.ts │ │ │ │ └── v2/ │ │ │ │ ├── MySqlV2.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── common.descriptions.ts │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── Database.resource.ts │ │ │ │ │ │ ├── deleteTable.operation.ts │ │ │ │ │ │ ├── executeQuery.operation.ts │ │ │ │ │ │ ├── insert.operation.ts │ │ │ │ │ │ ├── select.operation.ts │ │ │ │ │ │ ├── update.operation.ts │ │ │ │ │ │ └── upsert.operation.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── credentialTest.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ └── loadOptions.ts │ │ │ │ └── transport/ │ │ │ │ └── index.ts │ │ │ ├── N8n/ │ │ │ │ ├── AuditDescription.ts │ │ │ │ ├── CredentialDescription.ts │ │ │ │ ├── ExecutionDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── N8n.node.json │ │ │ │ ├── N8n.node.ts │ │ │ │ ├── WorkflowDescription.ts │ │ │ │ ├── WorkflowLocator.ts │ │ │ │ ├── n8n-api-coverage.json │ │ │ │ └── test/ │ │ │ │ ├── N8n.api-coverage.test.ts │ │ │ │ └── node/ │ │ │ │ ├── N8n.test.ts │ │ │ │ └── workflow.n8n.workflows.json │ │ │ ├── N8nTrainingCustomerDatastore/ │ │ │ │ ├── N8nTrainingCustomerDatastore.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── audit/ │ │ │ │ │ └── generate.json │ │ │ │ ├── credential/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getSchema.json │ │ │ │ ├── execution/ │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── workflow/ │ │ │ │ ├── activate.json │ │ │ │ ├── create.json │ │ │ │ ├── get.json │ │ │ │ ├── getAll.json │ │ │ │ └── update.json │ │ │ ├── N8nTrainingCustomerMessenger/ │ │ │ │ └── N8nTrainingCustomerMessenger.node.ts │ │ │ ├── N8nTrigger/ │ │ │ │ ├── N8nTrigger.node.json │ │ │ │ ├── N8nTrigger.node.ts │ │ │ │ └── test/ │ │ │ │ └── trigger.test.ts │ │ │ ├── Nasa/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Nasa.node.json │ │ │ │ ├── Nasa.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── astronomyPictureOfTheDay/ │ │ │ │ │ └── get.json │ │ │ │ ├── donkiCoronalMassEjection/ │ │ │ │ │ └── get.json │ │ │ │ └── donkiSolarFlare/ │ │ │ │ └── get.json │ │ │ ├── Netlify/ │ │ │ │ ├── DeployDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Netlify.node.json │ │ │ │ ├── Netlify.node.ts │ │ │ │ ├── NetlifyTrigger.node.json │ │ │ │ ├── NetlifyTrigger.node.ts │ │ │ │ └── SiteDescription.ts │ │ │ ├── Netscaler/ │ │ │ │ └── ADC/ │ │ │ │ ├── CertificateDescription.ts │ │ │ │ ├── FileDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── NetscalerAdc.node.json │ │ │ │ └── NetscalerAdc.node.ts │ │ │ ├── NextCloud/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── NextCloud.node.json │ │ │ │ ├── NextCloud.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── file/ │ │ │ │ │ └── download.json │ │ │ │ └── folder/ │ │ │ │ ├── create.json │ │ │ │ └── list.json │ │ │ ├── NoOp/ │ │ │ │ ├── NoOp.node.json │ │ │ │ └── NoOp.node.ts │ │ │ ├── NocoDB/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── NocoDB.node.json │ │ │ │ ├── NocoDB.node.ts │ │ │ │ └── OperationDescription.ts │ │ │ ├── Notion/ │ │ │ │ ├── Notion.node.json │ │ │ │ ├── Notion.node.ts │ │ │ │ ├── NotionTrigger.node.json │ │ │ │ ├── NotionTrigger.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ ├── v1.0.0/ │ │ │ │ │ │ └── page/ │ │ │ │ │ │ └── get.json │ │ │ │ │ └── v2.2.0/ │ │ │ │ │ ├── block/ │ │ │ │ │ │ ├── append.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── search.json │ │ │ │ │ ├── databasePage/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── page/ │ │ │ │ │ │ ├── archive.json │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ └── search.json │ │ │ │ │ └── user/ │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── shared/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── BlockDescription.ts │ │ │ │ │ │ ├── Blocks.ts │ │ │ │ │ │ ├── DatabaseDescription.ts │ │ │ │ │ │ ├── DatabasePageDescription.ts │ │ │ │ │ │ ├── Filters.ts │ │ │ │ │ │ ├── PageDescription.ts │ │ │ │ │ │ └── UserDescription.ts │ │ │ │ │ └── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── listSearch.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ └── node/ │ │ │ │ │ └── v2/ │ │ │ │ │ ├── block/ │ │ │ │ │ │ ├── append.test.ts │ │ │ │ │ │ ├── append.workflow.json │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ └── getAllNestedBlocks.workflow.json │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ ├── search.test.ts │ │ │ │ │ │ └── search.workflow.json │ │ │ │ │ ├── databasePage/ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ ├── page/ │ │ │ │ │ │ ├── archive.test.ts │ │ │ │ │ │ ├── archive.workflow.json │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ ├── search.test.ts │ │ │ │ │ │ └── search.workflow.json │ │ │ │ │ └── user/ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ └── getAll.workflow.json │ │ │ │ ├── v1/ │ │ │ │ │ ├── NotionV1.node.ts │ │ │ │ │ └── VersionDescription.ts │ │ │ │ └── v2/ │ │ │ │ ├── NotionV2.node.ts │ │ │ │ ├── VersionDescription.ts │ │ │ │ └── methods/ │ │ │ │ ├── index.ts │ │ │ │ └── loadOptions.ts │ │ │ ├── Npm/ │ │ │ │ ├── DistTagDescription.ts │ │ │ │ ├── Npm.node.json │ │ │ │ ├── Npm.node.ts │ │ │ │ ├── PackageDescription.ts │ │ │ │ └── test/ │ │ │ │ ├── Npm.node.test.ts │ │ │ │ └── Npm.workflow.test.json │ │ │ ├── Odoo/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Odoo.node.json │ │ │ │ ├── Odoo.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── contact/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── custom/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── opportunity/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── descriptions/ │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── CustomResourceDescription.ts │ │ │ │ ├── NoteDescription.ts │ │ │ │ ├── OpportunityDescription.ts │ │ │ │ └── index.ts │ │ │ ├── Okta/ │ │ │ │ ├── Okta.node.json │ │ │ │ ├── Okta.node.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ ├── UserFunctions.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── user/ │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── test/ │ │ │ │ └── UserFunctions.test.ts │ │ │ ├── OneSimpleApi/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── OneSimpleApi.node.json │ │ │ │ └── OneSimpleApi.node.ts │ │ │ ├── Onfleet/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Onfleet.node.json │ │ │ │ ├── Onfleet.node.ts │ │ │ │ ├── Onfleet.ts │ │ │ │ ├── OnfleetTrigger.node.json │ │ │ │ ├── OnfleetTrigger.node.ts │ │ │ │ ├── WebhookMapping.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── task/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── team/ │ │ │ │ │ └── getAll.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── AdministratorDescription.ts │ │ │ │ │ ├── ContainerDescription.ts │ │ │ │ │ ├── DestinationDescription.ts │ │ │ │ │ ├── HubDescription.ts │ │ │ │ │ ├── OnfleetWebhookDescription.ts │ │ │ │ │ ├── OrganizationDescription.ts │ │ │ │ │ ├── RecipientDescription.ts │ │ │ │ │ ├── TaskDescription.ts │ │ │ │ │ ├── TeamDescription.ts │ │ │ │ │ ├── WebhookDescription.ts │ │ │ │ │ └── WorkerDescription.ts │ │ │ │ ├── interfaces.ts │ │ │ │ └── test/ │ │ │ │ └── OnfleetTrigger.node.test.ts │ │ │ ├── OpenAi/ │ │ │ │ ├── ChatDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ImageDescription.ts │ │ │ │ ├── OpenAi.node.json │ │ │ │ ├── OpenAi.node.ts │ │ │ │ ├── TextDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ ├── v1.0.0/ │ │ │ │ │ ├── chat/ │ │ │ │ │ │ └── chat.json │ │ │ │ │ └── image/ │ │ │ │ │ └── create.json │ │ │ │ └── v1.1.0/ │ │ │ │ ├── chat/ │ │ │ │ │ └── complete.json │ │ │ │ └── text/ │ │ │ │ ├── chat.json │ │ │ │ └── complete.json │ │ │ ├── OpenThesaurus/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── OpenThesaurus.node.json │ │ │ │ └── OpenThesaurus.node.ts │ │ │ ├── OpenWeatherMap/ │ │ │ │ ├── OpenWeatherMap.node.json │ │ │ │ ├── OpenWeatherMap.node.ts │ │ │ │ └── test/ │ │ │ │ ├── OpenWeatherMap.test.ts │ │ │ │ ├── apiResponses.ts │ │ │ │ └── workflow.json │ │ │ ├── Oracle/ │ │ │ │ └── Sql/ │ │ │ │ ├── OracleSql.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── common.descriptions.ts │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── Database.resource.ts │ │ │ │ │ │ ├── deleteTable.operation.ts │ │ │ │ │ │ ├── executeQuery.operation.ts │ │ │ │ │ │ ├── insert.operation.ts │ │ │ │ │ │ ├── select.operation.ts │ │ │ │ │ │ ├── update.operation.ts │ │ │ │ │ │ └── upsert.operation.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── credentialTest.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ ├── loadOptions.ts │ │ │ │ │ └── resourceMapping.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── operations.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ └── transport/ │ │ │ │ └── index.ts │ │ │ ├── Orbit/ │ │ │ │ ├── ActivityDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Interfaces.ts │ │ │ │ ├── MemberDescription.ts │ │ │ │ ├── NoteDescription.ts │ │ │ │ ├── Orbit.node.json │ │ │ │ ├── Orbit.node.ts │ │ │ │ └── PostDescription.ts │ │ │ ├── Oura/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Oura.node.json │ │ │ │ ├── Oura.node.ts │ │ │ │ ├── ProfileDescription.ts │ │ │ │ ├── SummaryDescription.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── profile/ │ │ │ │ │ │ └── get.json │ │ │ │ │ └── summary/ │ │ │ │ │ ├── getActivity.json │ │ │ │ │ ├── getReadiness.json │ │ │ │ │ └── getSleep.json │ │ │ │ └── test/ │ │ │ │ ├── apiResponses.ts │ │ │ │ ├── oura.node.test.ts │ │ │ │ └── oura_test_workflow.json │ │ │ ├── Paddle/ │ │ │ │ ├── CouponDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── OrderDescription.ts │ │ │ │ ├── Paddle.node.json │ │ │ │ ├── Paddle.node.ts │ │ │ │ ├── PaymentDescription.ts │ │ │ │ ├── PlanDescription.ts │ │ │ │ ├── ProductDescription.ts │ │ │ │ └── UserDescription.ts │ │ │ ├── PagerDuty/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── IncidentDescription.ts │ │ │ │ ├── IncidentInterface.ts │ │ │ │ ├── IncidentNoteDescription.ts │ │ │ │ ├── LogEntryDescription.ts │ │ │ │ ├── PagerDuty.node.json │ │ │ │ ├── PagerDuty.node.ts │ │ │ │ └── UserDescription.ts │ │ │ ├── PayPal/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── PayPal.node.json │ │ │ │ ├── PayPal.node.ts │ │ │ │ ├── PayPalTrigger.node.json │ │ │ │ ├── PayPalTrigger.node.ts │ │ │ │ ├── PaymentDescription.ts │ │ │ │ ├── PaymentInteface.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── payout/ │ │ │ │ └── create.json │ │ │ ├── Peekalink/ │ │ │ │ ├── Peekalink.node.json │ │ │ │ ├── Peekalink.node.ts │ │ │ │ └── test/ │ │ │ │ └── Peekalink.node.test.ts │ │ │ ├── Perplexity/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Perplexity.node.json │ │ │ │ ├── Perplexity.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── chat/ │ │ │ │ │ └── complete.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── agent/ │ │ │ │ │ │ ├── Agent.resource.ts │ │ │ │ │ │ └── createResponse.operation.ts │ │ │ │ │ ├── chat/ │ │ │ │ │ │ ├── Chat.resource.ts │ │ │ │ │ │ └── complete.operation.ts │ │ │ │ │ ├── embeddings/ │ │ │ │ │ │ ├── Embeddings.resource.ts │ │ │ │ │ │ ├── createContextualized.operation.ts │ │ │ │ │ │ └── createEmbedding.operation.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── search/ │ │ │ │ │ ├── Search.resource.ts │ │ │ │ │ └── search.operation.ts │ │ │ │ └── test/ │ │ │ │ ├── GenericFunction.test.ts │ │ │ │ ├── Perplexity.node.test.ts │ │ │ │ ├── agent/ │ │ │ │ │ ├── createResponse.test.ts │ │ │ │ │ └── createResponse.workflow.json │ │ │ │ ├── chat/ │ │ │ │ │ ├── complete.test.ts │ │ │ │ │ └── complete.workflow.json │ │ │ │ ├── credentials/ │ │ │ │ │ └── PerplexityApi.test.ts │ │ │ │ ├── embeddings/ │ │ │ │ │ ├── createEmbedding.test.ts │ │ │ │ │ └── createEmbedding.workflow.json │ │ │ │ └── search/ │ │ │ │ ├── search.test.ts │ │ │ │ └── search.workflow.json │ │ │ ├── Phantombuster/ │ │ │ │ ├── AgentDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Phantombuster.node.json │ │ │ │ ├── Phantombuster.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── agent/ │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getOutput.json │ │ │ │ │ └── launch.json │ │ │ │ └── test/ │ │ │ │ ├── Phantombuster.node.test.ts │ │ │ │ ├── launch-with-arguments-no-bonus.workflow.json │ │ │ │ ├── launch-with-bonus-arguments.workflow.json │ │ │ │ ├── launch-with-json-arguments.workflow.json │ │ │ │ └── launch-without-arguments.workflow.json │ │ │ ├── PhilipsHue/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── LightDescription.ts │ │ │ │ ├── PhilipsHue.node.json │ │ │ │ ├── PhilipsHue.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── light/ │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ └── test/ │ │ │ │ ├── apiResponses.ts │ │ │ │ ├── workflow.json │ │ │ │ └── workflow.test.ts │ │ │ ├── Pipedrive/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Pipedrive.node.json │ │ │ │ ├── Pipedrive.node.ts │ │ │ │ ├── PipedriveTrigger.node.json │ │ │ │ ├── PipedriveTrigger.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── activity/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── deal/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ ├── search.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── dealActivity/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── dealProduct/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── lead/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── note/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── organization/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ ├── search.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── person/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ ├── search.json │ │ │ │ │ │ └── update.json │ │ │ │ │ └── product/ │ │ │ │ │ └── getAll.json │ │ │ │ ├── test/ │ │ │ │ │ └── PipedriveTrigger.node.test.ts │ │ │ │ └── utils.ts │ │ │ ├── Plivo/ │ │ │ │ ├── CallDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MmsDescription.ts │ │ │ │ ├── Plivo.node.json │ │ │ │ ├── Plivo.node.ts │ │ │ │ ├── SmsDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── call/ │ │ │ │ └── make.json │ │ │ ├── PostBin/ │ │ │ │ ├── BinDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── PostBin.node.json │ │ │ │ ├── PostBin.node.ts │ │ │ │ ├── RequestDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── bin/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── get.json │ │ │ │ └── request/ │ │ │ │ └── send.json │ │ │ ├── PostHog/ │ │ │ │ ├── AliasDescription.ts │ │ │ │ ├── EventDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── IdentityDescription.ts │ │ │ │ ├── PostHog.node.json │ │ │ │ ├── PostHog.node.ts │ │ │ │ ├── TrackDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── event/ │ │ │ │ └── create.json │ │ │ ├── Postgres/ │ │ │ │ ├── Postgres.node.json │ │ │ │ ├── Postgres.node.ts │ │ │ │ ├── PostgresInterface.ts │ │ │ │ ├── PostgresTrigger.functions.ts │ │ │ │ ├── PostgresTrigger.node.json │ │ │ │ ├── PostgresTrigger.node.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── PostgresV1.node.test.ts │ │ │ │ │ │ └── genericFunctions.test.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── operations.test.ts │ │ │ │ │ ├── resourceMapping.test.ts │ │ │ │ │ ├── runQueries.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── transport/ │ │ │ │ │ └── index.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── PostgresV1.node.ts │ │ │ │ │ └── genericFunctions.ts │ │ │ │ └── v2/ │ │ │ │ ├── PostgresV2.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── common.descriptions.ts │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── Database.resource.ts │ │ │ │ │ │ ├── deleteTable.operation.ts │ │ │ │ │ │ ├── executeQuery.operation.ts │ │ │ │ │ │ ├── insert.operation.ts │ │ │ │ │ │ ├── select.operation.ts │ │ │ │ │ │ ├── update.operation.ts │ │ │ │ │ │ └── upsert.operation.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── methods/ │ │ │ │ ├── credentialTest.ts │ │ │ │ ├── index.ts │ │ │ │ ├── listSearch.ts │ │ │ │ ├── loadOptions.ts │ │ │ │ └── resourceMapping.ts │ │ │ ├── Postmark/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── PostmarkTrigger.node.json │ │ │ │ └── PostmarkTrigger.node.ts │ │ │ ├── ProfitWell/ │ │ │ │ ├── CompanyDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MetricDescription.ts │ │ │ │ ├── ProfitWell.node.json │ │ │ │ └── ProfitWell.node.ts │ │ │ ├── Pushbullet/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Pushbullet.node.json │ │ │ │ ├── Pushbullet.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── push/ │ │ │ │ └── create.json │ │ │ ├── Pushcut/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Pushcut.node.json │ │ │ │ ├── Pushcut.node.ts │ │ │ │ ├── PushcutTrigger.node.json │ │ │ │ ├── PushcutTrigger.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── notification/ │ │ │ │ └── send.json │ │ │ ├── Pushover/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Pushover.node.json │ │ │ │ ├── Pushover.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── message/ │ │ │ │ └── push.json │ │ │ ├── QuestDb/ │ │ │ │ ├── QuestDb.node.json │ │ │ │ └── QuestDb.node.ts │ │ │ ├── QuickBase/ │ │ │ │ ├── FieldDescription.ts │ │ │ │ ├── FileDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── QuickBase.node.json │ │ │ │ ├── QuickBase.node.ts │ │ │ │ ├── RecordDescription.ts │ │ │ │ ├── ReportDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── record/ │ │ │ │ ├── create.json │ │ │ │ └── getAll.json │ │ │ ├── QuickBooks/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── QuickBooks.node.json │ │ │ │ ├── QuickBooks.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── bill/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── customer/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── invoice/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── send.json │ │ │ │ │ ├── item/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── payment/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── purchase/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── transaction/ │ │ │ │ │ │ └── getReport.json │ │ │ │ │ └── vendor/ │ │ │ │ │ └── getAll.json │ │ │ │ ├── __tests__/ │ │ │ │ │ └── GenericFunctions.test.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── Bill/ │ │ │ │ │ │ ├── BillAdditionalFieldsOptions.ts │ │ │ │ │ │ └── BillDescription.ts │ │ │ │ │ ├── Customer/ │ │ │ │ │ │ ├── CustomerAdditionalFieldsOptions.ts │ │ │ │ │ │ └── CustomerDescription.ts │ │ │ │ │ ├── Employee/ │ │ │ │ │ │ ├── EmployeeAdditionalFieldsOptions.ts │ │ │ │ │ │ └── EmployeeDescription.ts │ │ │ │ │ ├── Estimate/ │ │ │ │ │ │ ├── EstimateAdditionalFieldsOptions.ts │ │ │ │ │ │ └── EstimateDescription.ts │ │ │ │ │ ├── Invoice/ │ │ │ │ │ │ ├── InvoiceAdditionalFieldsOptions.ts │ │ │ │ │ │ └── InvoiceDescription.ts │ │ │ │ │ ├── Item/ │ │ │ │ │ │ └── ItemDescription.ts │ │ │ │ │ ├── Payment/ │ │ │ │ │ │ ├── PaymentAdditionalFieldsOptions.ts │ │ │ │ │ │ └── PaymentDescription.ts │ │ │ │ │ ├── Purchase/ │ │ │ │ │ │ └── PurchaseDescription.ts │ │ │ │ │ ├── Shared.interface.ts │ │ │ │ │ ├── Transaction/ │ │ │ │ │ │ ├── TransactionDescription.ts │ │ │ │ │ │ └── constants.ts │ │ │ │ │ ├── Vendor/ │ │ │ │ │ │ ├── VendorAdditionalFieldsOptions.ts │ │ │ │ │ │ └── VendorDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── types.ts │ │ │ ├── QuickChart/ │ │ │ │ ├── QuickChart.node.json │ │ │ │ ├── QuickChart.node.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── QuickChart.node.test.ts │ │ │ │ │ └── QuickChart.workflow.json │ │ │ │ └── types.ts │ │ │ ├── RabbitMQ/ │ │ │ │ ├── DefaultOptions.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── RabbitMQ.node.json │ │ │ │ ├── RabbitMQ.node.ts │ │ │ │ ├── RabbitMQTrigger.node.json │ │ │ │ ├── RabbitMQTrigger.node.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ └── RabbitMQTrigger.node.test.ts │ │ │ │ └── types.ts │ │ │ ├── Raindrop/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Raindrop.node.json │ │ │ │ ├── Raindrop.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── bookmark/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── collection/ │ │ │ │ │ └── getAll.json │ │ │ │ └── descriptions/ │ │ │ │ ├── BookmarkDescription.ts │ │ │ │ ├── CollectionDescription.ts │ │ │ │ ├── TagDescription.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ └── index.ts │ │ │ ├── ReadBinaryFile/ │ │ │ │ ├── ReadBinaryFile.node.json │ │ │ │ ├── ReadBinaryFile.node.ts │ │ │ │ └── test/ │ │ │ │ ├── ReadBinaryFile.test.ts │ │ │ │ └── ReadBinaryFile.workflow.json │ │ │ ├── ReadBinaryFiles/ │ │ │ │ ├── ReadBinaryFiles.node.json │ │ │ │ ├── ReadBinaryFiles.node.ts │ │ │ │ └── test/ │ │ │ │ ├── ReadBinaryFiles.test.ts │ │ │ │ ├── ReadBinaryFiles.workflow.json │ │ │ │ └── data/ │ │ │ │ ├── sample.json │ │ │ │ └── sample2.json │ │ │ ├── ReadPdf/ │ │ │ │ ├── ReadPDF.node.json │ │ │ │ ├── ReadPDF.node.ts │ │ │ │ └── test/ │ │ │ │ ├── ReadPDF-encrypted.workflow.json │ │ │ │ ├── ReadPDF.test.ts │ │ │ │ └── ReadPDF.workflow.json │ │ │ ├── Reddit/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── PostCommentDescription.ts │ │ │ │ ├── PostDescription.ts │ │ │ │ ├── ProfileDescription.ts │ │ │ │ ├── Reddit.node.json │ │ │ │ ├── Reddit.node.ts │ │ │ │ ├── SubredditDescription.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── post/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── delete.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── search.json │ │ │ │ ├── postComment/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ └── profile/ │ │ │ │ └── get.json │ │ │ ├── Redis/ │ │ │ │ ├── Redis.node.json │ │ │ │ ├── Redis.node.ts │ │ │ │ ├── RedisTrigger.node.json │ │ │ │ ├── RedisTrigger.node.ts │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── Redis.node.test.ts │ │ │ │ │ └── RedisTrigger.node.test.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── RenameKeys/ │ │ │ │ ├── RenameKeys.node.json │ │ │ │ ├── RenameKeys.node.ts │ │ │ │ └── test/ │ │ │ │ ├── RenameKeys.test.ts │ │ │ │ └── RenameKeys.workflow.json │ │ │ ├── RespondToWebhook/ │ │ │ │ ├── RespondToWebhook.node.json │ │ │ │ ├── RespondToWebhook.node.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── RespondToWebhook.test.ts │ │ │ │ │ ├── binary.test.ts │ │ │ │ │ └── outputs.test.ts │ │ │ │ └── utils/ │ │ │ │ ├── binary.ts │ │ │ │ └── outputs.ts │ │ │ ├── Rocketchat/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Rocketchat.node.json │ │ │ │ ├── Rocketchat.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── chat/ │ │ │ │ └── postMessage.json │ │ │ ├── RssFeedRead/ │ │ │ │ ├── RssFeedRead.node.json │ │ │ │ ├── RssFeedRead.node.ts │ │ │ │ ├── RssFeedReadTrigger.node.json │ │ │ │ ├── RssFeedReadTrigger.node.ts │ │ │ │ └── test/ │ │ │ │ ├── RssFeedRead.test.ts │ │ │ │ └── node/ │ │ │ │ ├── RssFeedRead.test.ts │ │ │ │ └── workflow.rss.json │ │ │ ├── Rundeck/ │ │ │ │ ├── Rundeck.node.json │ │ │ │ ├── Rundeck.node.ts │ │ │ │ └── RundeckApi.ts │ │ │ ├── S3/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── S3.node.json │ │ │ │ ├── S3.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── bucket/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── search.json │ │ │ │ │ ├── file/ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── download.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── upload.json │ │ │ │ │ └── folder/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ └── __tests__/ │ │ │ │ └── GenericFunctions.test.ts │ │ │ ├── Salesforce/ │ │ │ │ ├── AccountDescription.ts │ │ │ │ ├── AccountInterface.ts │ │ │ │ ├── AttachmentDescription.ts │ │ │ │ ├── AttachmentInterface.ts │ │ │ │ ├── CampaignMemberInterface.ts │ │ │ │ ├── CaseDescription.ts │ │ │ │ ├── CaseInterface.ts │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── ContactInterface.ts │ │ │ │ ├── CustomObjectDescription.ts │ │ │ │ ├── DocumentDescription.ts │ │ │ │ ├── FlowDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── LeadDescription.ts │ │ │ │ ├── LeadInterface.ts │ │ │ │ ├── NoteInterface.ts │ │ │ │ ├── OpportunityDescription.ts │ │ │ │ ├── OpportunityInterface.ts │ │ │ │ ├── Salesforce.node.json │ │ │ │ ├── Salesforce.node.ts │ │ │ │ ├── SalesforceTrigger.node.json │ │ │ │ ├── SalesforceTrigger.node.ts │ │ │ │ ├── SearchDescription.ts │ │ │ │ ├── TaskDescription.ts │ │ │ │ ├── TaskInterface.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ ├── UserInterface.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── account/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── attachment/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── case/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── contact/ │ │ │ │ │ │ ├── addToCampaign.json │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ ├── update.json │ │ │ │ │ │ └── upsert.json │ │ │ │ │ ├── customObject/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ ├── update.json │ │ │ │ │ │ └── upsert.json │ │ │ │ │ ├── document/ │ │ │ │ │ │ └── upload.json │ │ │ │ │ ├── flow/ │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── invoke.json │ │ │ │ │ ├── lead/ │ │ │ │ │ │ ├── addNote.json │ │ │ │ │ │ ├── addToCampaign.json │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ ├── update.json │ │ │ │ │ │ └── upsert.json │ │ │ │ │ ├── opportunity/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ ├── getSummary.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── search/ │ │ │ │ │ │ └── query.json │ │ │ │ │ ├── task/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ └── user/ │ │ │ │ │ └── getAll.json │ │ │ │ └── __test__/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ ├── Salesforce.node.test.ts │ │ │ │ ├── SalesforceTrigger.node.test.ts │ │ │ │ └── node/ │ │ │ │ ├── Salesforce.node.test.ts │ │ │ │ ├── accounts.workflow.json │ │ │ │ ├── fixtures/ │ │ │ │ │ ├── account-details.json │ │ │ │ │ ├── accounts.json │ │ │ │ │ ├── opportunities-summary.json │ │ │ │ │ ├── opportunities.json │ │ │ │ │ ├── opportunity-details.json │ │ │ │ │ ├── task-details.json │ │ │ │ │ ├── task-summary.json │ │ │ │ │ ├── tasks.json │ │ │ │ │ ├── user-details.json │ │ │ │ │ └── users.json │ │ │ │ ├── opportunities.workflow.json │ │ │ │ ├── search.workflow.json │ │ │ │ ├── tasks.workflow.json │ │ │ │ └── users.workflow.json │ │ │ ├── Salesmate/ │ │ │ │ ├── ActivityDescription.ts │ │ │ │ ├── ActivityInterface.ts │ │ │ │ ├── CompanyDescription.ts │ │ │ │ ├── CompanyInterface.ts │ │ │ │ ├── DealDescription.ts │ │ │ │ ├── DealInterface.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Salesmate.node.json │ │ │ │ └── Salesmate.node.ts │ │ │ ├── Schedule/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ScheduleTrigger.node.json │ │ │ │ ├── ScheduleTrigger.node.ts │ │ │ │ ├── SchedulerInterface.ts │ │ │ │ └── test/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ └── ScheduleTrigger.node.test.ts │ │ │ ├── SeaTable/ │ │ │ │ ├── SeaTable.node.json │ │ │ │ ├── SeaTable.node.ts │ │ │ │ ├── SeaTableTrigger.node.json │ │ │ │ ├── SeaTableTrigger.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ ├── v1.0.0/ │ │ │ │ │ │ └── row/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ └── row/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── list.json │ │ │ │ ├── __tests__/ │ │ │ │ │ └── v2/ │ │ │ │ │ └── GenericFunctions.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── Interfaces.ts │ │ │ │ │ ├── RowDescription.ts │ │ │ │ │ ├── Schema.ts │ │ │ │ │ ├── SeaTable.node.ts │ │ │ │ │ ├── SeaTableTriggerV1.node.ts │ │ │ │ │ ├── SeaTableV1.node.ts │ │ │ │ │ ├── VersionDescription.ts │ │ │ │ │ └── types.ts │ │ │ │ └── v2/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Schema.ts │ │ │ │ ├── SeaTableTriggerV2.node.ts │ │ │ │ ├── SeaTableV2.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── Interfaces.ts │ │ │ │ │ ├── SeaTable.node.ts │ │ │ │ │ ├── asset/ │ │ │ │ │ │ ├── getPublicURL.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── upload.operation.ts │ │ │ │ │ ├── base/ │ │ │ │ │ │ ├── collaborator.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── metadata.operation.ts │ │ │ │ │ │ └── snapshot.operation.ts │ │ │ │ │ ├── link/ │ │ │ │ │ │ ├── add.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── list.operation.ts │ │ │ │ │ │ └── remove.operation.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ ├── row/ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── list.operation.ts │ │ │ │ │ │ ├── lock.operation.ts │ │ │ │ │ │ ├── remove.operation.ts │ │ │ │ │ │ ├── search.operation.ts │ │ │ │ │ │ ├── sharedProperties.ts │ │ │ │ │ │ ├── unlock.operation.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── loadOptions.ts │ │ │ │ └── types.ts │ │ │ ├── SecurityScorecard/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── SecurityScorecard.node.json │ │ │ │ ├── SecurityScorecard.node.ts │ │ │ │ └── descriptions/ │ │ │ │ ├── CompanyDescription.ts │ │ │ │ ├── IndustryDescription.ts │ │ │ │ ├── InviteDescription.ts │ │ │ │ ├── PortfolioCompanyDescription.ts │ │ │ │ ├── PortfolioDescription.ts │ │ │ │ └── ReportDescription.ts │ │ │ ├── Segment/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── GroupDescription.ts │ │ │ │ ├── IdentifyDescription.ts │ │ │ │ ├── IdentifyInterface.ts │ │ │ │ ├── Segment.node.json │ │ │ │ ├── Segment.node.ts │ │ │ │ ├── TrackDescription.ts │ │ │ │ ├── TrackInterface.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── track/ │ │ │ │ └── event.json │ │ │ ├── SendGrid/ │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ListDescription.ts │ │ │ │ ├── MailDescription.ts │ │ │ │ ├── SendGrid.node.json │ │ │ │ ├── SendGrid.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── list/ │ │ │ │ │ │ └── create.json │ │ │ │ │ └── mail/ │ │ │ │ │ └── send.json │ │ │ │ └── test/ │ │ │ │ ├── SendGrid.node.test.ts │ │ │ │ └── mail.workflow.json │ │ │ ├── Sendy/ │ │ │ │ ├── CampaignDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Sendy.node.json │ │ │ │ ├── Sendy.node.ts │ │ │ │ └── SubscriberDescription.ts │ │ │ ├── SentryIo/ │ │ │ │ ├── EventDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Interface.ts │ │ │ │ ├── IssueDescription.ts │ │ │ │ ├── OrganizationDescription.ts │ │ │ │ ├── ProjectDescription.ts │ │ │ │ ├── ReleaseDescription.ts │ │ │ │ ├── SentryIo.node.json │ │ │ │ ├── SentryIo.node.ts │ │ │ │ ├── TeamDescription.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── issue/ │ │ │ │ │ └── getAll.json │ │ │ │ └── __tests__/ │ │ │ │ └── GenericFunctions.test.ts │ │ │ ├── ServiceNow/ │ │ │ │ ├── AttachmentDescription.ts │ │ │ │ ├── BusinessServiceDescription.ts │ │ │ │ ├── ConfigurationItemsDescription.ts │ │ │ │ ├── DepartmentDescription.ts │ │ │ │ ├── DictionaryDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── IncidentDescription.ts │ │ │ │ ├── ServiceNow.node.json │ │ │ │ ├── ServiceNow.node.ts │ │ │ │ ├── TableRecordDescription.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ ├── UserGroupDescription.ts │ │ │ │ ├── UserRoleDescription.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── incident/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── tableRecord/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getAll.json │ │ │ │ └── user/ │ │ │ │ └── get.json │ │ │ ├── Set/ │ │ │ │ ├── Set.node.json │ │ │ │ ├── Set.node.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── Set.node.test.ts │ │ │ │ │ ├── Set.v3.workflow.json │ │ │ │ │ ├── Set.v3_3.workflow.json │ │ │ │ │ ├── Set.workflow.json │ │ │ │ │ ├── Set.workflow.null_values.json │ │ │ │ │ ├── Set.workflow.number.json │ │ │ │ │ └── v2/ │ │ │ │ │ ├── manual.test.ts │ │ │ │ │ ├── raw.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ └── SetV1.node.ts │ │ │ │ └── v2/ │ │ │ │ ├── SetV2.node.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── utils.test.ts │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── manual.mode.ts │ │ │ │ └── raw.mode.ts │ │ │ ├── Shopify/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── OrderDescription.ts │ │ │ │ ├── OrderInterface.ts │ │ │ │ ├── ProductDescription.ts │ │ │ │ ├── ProductInterface.ts │ │ │ │ ├── Shopify.node.json │ │ │ │ ├── Shopify.node.ts │ │ │ │ ├── ShopifyTrigger.node.json │ │ │ │ ├── ShopifyTrigger.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── order/ │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── product/ │ │ │ │ ├── create.json │ │ │ │ ├── get.json │ │ │ │ ├── getAll.json │ │ │ │ └── update.json │ │ │ ├── Signl4/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Signl4.node.json │ │ │ │ └── Signl4.node.ts │ │ │ ├── Simulate/ │ │ │ │ ├── Simulate.node.json │ │ │ │ ├── Simulate.node.ts │ │ │ │ ├── SimulateTrigger.node.json │ │ │ │ ├── SimulateTrigger.node.ts │ │ │ │ ├── descriptions.ts │ │ │ │ └── methods/ │ │ │ │ ├── index.ts │ │ │ │ └── loadOptions.ts │ │ │ ├── Slack/ │ │ │ │ ├── Slack.node.json │ │ │ │ ├── Slack.node.ts │ │ │ │ ├── SlackTrigger.node.json │ │ │ │ ├── SlackTrigger.node.ts │ │ │ │ ├── SlackTriggerHelpers.ts │ │ │ │ ├── V1/ │ │ │ │ │ ├── ChannelDescription.ts │ │ │ │ │ ├── FileDescription.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── MessageDescription.ts │ │ │ │ │ ├── MessageInterface.ts │ │ │ │ │ ├── ReactionDescription.ts │ │ │ │ │ ├── SlackV1.node.ts │ │ │ │ │ ├── StarDescription.ts │ │ │ │ │ ├── UserDescription.ts │ │ │ │ │ ├── UserGroupDescription.ts │ │ │ │ │ └── UserProfileDescription.ts │ │ │ │ ├── V2/ │ │ │ │ │ ├── ChannelDescription.ts │ │ │ │ │ ├── FileDescription.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── MessageDescription.ts │ │ │ │ │ ├── MessageInterface.ts │ │ │ │ │ ├── ReactionDescription.ts │ │ │ │ │ ├── SlackV2.node.ts │ │ │ │ │ ├── StarDescription.ts │ │ │ │ │ ├── UserDescription.ts │ │ │ │ │ ├── UserGroupDescription.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v2.3.0/ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ ├── history.json │ │ │ │ │ │ ├── invite.json │ │ │ │ │ │ ├── join.json │ │ │ │ │ │ ├── member.json │ │ │ │ │ │ ├── open.json │ │ │ │ │ │ ├── replies.json │ │ │ │ │ │ └── setTopic.json │ │ │ │ │ ├── file/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── upload.json │ │ │ │ │ ├── message/ │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── getPermalink.json │ │ │ │ │ │ ├── post.json │ │ │ │ │ │ ├── search.json │ │ │ │ │ │ ├── sendAndWait.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── reaction/ │ │ │ │ │ │ ├── add.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── remove.json │ │ │ │ │ └── user/ │ │ │ │ │ ├── getAll.json │ │ │ │ │ ├── getPresence.json │ │ │ │ │ ├── getProfile.json │ │ │ │ │ ├── info.json │ │ │ │ │ └── updateProfile.json │ │ │ │ └── test/ │ │ │ │ ├── SlackTrigger.test.ts │ │ │ │ ├── SlackTriggerHelpers.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ └── node/ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ └── create.workflow.json │ │ │ │ │ └── message/ │ │ │ │ │ ├── post.test.ts │ │ │ │ │ └── post.workflow.json │ │ │ │ └── v2/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ ├── Slack.node.test.ts │ │ │ │ ├── node/ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ ├── archive.test.ts │ │ │ │ │ │ ├── archive.workflow.json │ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ │ ├── get.test.ts │ │ │ │ │ │ ├── get.workflow.json │ │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ │ ├── history.test.ts │ │ │ │ │ │ └── history.workflow.json │ │ │ │ │ ├── file/ │ │ │ │ │ │ ├── upload.test.ts │ │ │ │ │ │ └── upload.workflow.json │ │ │ │ │ ├── message/ │ │ │ │ │ │ ├── delete.test.ts │ │ │ │ │ │ ├── delete.workflow.json │ │ │ │ │ │ ├── getPermalink.test.ts │ │ │ │ │ │ ├── getPermalink.workflow.json │ │ │ │ │ │ ├── post.test.ts │ │ │ │ │ │ ├── post.workflow.json │ │ │ │ │ │ ├── search.test.ts │ │ │ │ │ │ ├── search.workflow.json │ │ │ │ │ │ ├── update.test.ts │ │ │ │ │ │ └── update.workflow.json │ │ │ │ │ ├── user/ │ │ │ │ │ │ ├── updateProfile.test.ts │ │ │ │ │ │ └── updateProfile.workflow.json │ │ │ │ │ └── userGroup/ │ │ │ │ │ ├── create.test.ts │ │ │ │ │ ├── create.workflow.json │ │ │ │ │ ├── disable.test.ts │ │ │ │ │ ├── disable.workflow.json │ │ │ │ │ ├── enable.test.ts │ │ │ │ │ ├── enable.workflow.json │ │ │ │ │ ├── getAll.test.ts │ │ │ │ │ ├── getAll.workflow.json │ │ │ │ │ ├── update.test.ts │ │ │ │ │ └── update.workflow.json │ │ │ │ └── utils.test.ts │ │ │ ├── Sms77/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Sms77.node.json │ │ │ │ ├── Sms77.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── sms/ │ │ │ │ └── send.json │ │ │ ├── Snowflake/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Snowflake.node.json │ │ │ │ ├── Snowflake.node.ts │ │ │ │ └── __tests__/ │ │ │ │ └── GenericFunctions.test.ts │ │ │ ├── SplitInBatches/ │ │ │ │ ├── SplitInBatches.node.json │ │ │ │ ├── SplitInBatches.node.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── SplitInBatches.combineData.json │ │ │ │ │ ├── SplitInBatches.node.test.ts │ │ │ │ │ ├── SplitInBatches.workflow_v1.json │ │ │ │ │ ├── SplitInBatches.workflow_v2.json │ │ │ │ │ └── SplitInBatches.workflow_v2_done_variable.json │ │ │ │ ├── v1/ │ │ │ │ │ └── SplitInBatchesV1.node.ts │ │ │ │ ├── v2/ │ │ │ │ │ └── SplitInBatchesV2.node.ts │ │ │ │ └── v3/ │ │ │ │ └── SplitInBatchesV3.node.ts │ │ │ ├── Splunk/ │ │ │ │ ├── Splunk.node.json │ │ │ │ ├── Splunk.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ └── search/ │ │ │ │ │ ├── create.json │ │ │ │ │ └── getResult.json │ │ │ │ ├── test/ │ │ │ │ │ └── v2/ │ │ │ │ │ ├── node/ │ │ │ │ │ │ ├── alert.test.ts │ │ │ │ │ │ ├── report.test.ts │ │ │ │ │ │ ├── search.test.ts │ │ │ │ │ │ └── user.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── SplunkV1.node.ts │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── FiredAlertDescription.ts │ │ │ │ │ │ ├── SearchConfigurationDescription.ts │ │ │ │ │ │ ├── SearchJobDescription.ts │ │ │ │ │ │ ├── SearchResultDescription.ts │ │ │ │ │ │ ├── UserDescription.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── types.ts │ │ │ │ └── v2/ │ │ │ │ ├── SplunkV2.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── alert/ │ │ │ │ │ │ ├── getMetrics.operation.ts │ │ │ │ │ │ ├── getReport.operation.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── report/ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deleteReport.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ ├── search/ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deleteJob.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ ├── getResult.operation.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── user/ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deleteUser.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── descriptions/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── rlc.description.ts │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ └── loadOptions.ts │ │ │ │ └── transport/ │ │ │ │ └── index.ts │ │ │ ├── Spotify/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Spotify.node.json │ │ │ │ ├── Spotify.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── album/ │ │ │ │ │ │ └── search.json │ │ │ │ │ ├── artist/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAlbums.json │ │ │ │ │ │ ├── getTopTracks.json │ │ │ │ │ │ └── search.json │ │ │ │ │ ├── library/ │ │ │ │ │ │ └── getLikedTracks.json │ │ │ │ │ ├── myData/ │ │ │ │ │ │ └── getFollowingArtists.json │ │ │ │ │ ├── player/ │ │ │ │ │ │ ├── addSongToQueue.json │ │ │ │ │ │ ├── currentlyPlaying.json │ │ │ │ │ │ ├── nextSong.json │ │ │ │ │ │ ├── pause.json │ │ │ │ │ │ ├── recentlyPlayed.json │ │ │ │ │ │ ├── resume.json │ │ │ │ │ │ ├── startMusic.json │ │ │ │ │ │ └── volume.json │ │ │ │ │ ├── playlist/ │ │ │ │ │ │ ├── add.json │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getTracks.json │ │ │ │ │ │ ├── getUserPlaylists.json │ │ │ │ │ │ └── search.json │ │ │ │ │ └── track/ │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAudioFeatures.json │ │ │ │ │ └── search.json │ │ │ │ └── __tests__/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ └── workflow/ │ │ │ │ ├── Spotify.workflow.json │ │ │ │ ├── apiResponses.ts │ │ │ │ └── workflow.test.ts │ │ │ ├── SpreadsheetFile/ │ │ │ │ ├── SpreadsheetFile.node.json │ │ │ │ ├── SpreadsheetFile.node.ts │ │ │ │ ├── description.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── SpreadsheetFile.test.ts │ │ │ │ │ ├── bom.csv │ │ │ │ │ ├── fromFile.operation.test.ts │ │ │ │ │ ├── includeempty.csv │ │ │ │ │ ├── spreadsheet.csv │ │ │ │ │ ├── spreadsheet.html │ │ │ │ │ ├── spreadsheet.rtf │ │ │ │ │ ├── spreadsheet.xls │ │ │ │ │ ├── utf8.csv │ │ │ │ │ ├── workflow.bom.json │ │ │ │ │ ├── workflow.empty.json │ │ │ │ │ ├── workflow.json │ │ │ │ │ └── workflow.utf8.json │ │ │ │ ├── v1/ │ │ │ │ │ └── SpreadsheetFileV1.node.ts │ │ │ │ └── v2/ │ │ │ │ ├── SpreadsheetFileV2.node.ts │ │ │ │ ├── fromFile.operation.ts │ │ │ │ └── toFile.operation.ts │ │ │ ├── SseTrigger/ │ │ │ │ ├── SseTrigger.node.json │ │ │ │ └── SseTrigger.node.ts │ │ │ ├── Ssh/ │ │ │ │ ├── Ssh.node.json │ │ │ │ ├── Ssh.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── command/ │ │ │ │ │ └── execute.json │ │ │ │ └── file/ │ │ │ │ ├── download.json │ │ │ │ └── upload.json │ │ │ ├── Stackby/ │ │ │ │ ├── GenericFunction.ts │ │ │ │ ├── Stackby.node.json │ │ │ │ └── Stackby.node.ts │ │ │ ├── StickyNote/ │ │ │ │ ├── StickyNote.node.json │ │ │ │ └── StickyNote.node.ts │ │ │ ├── StopAndError/ │ │ │ │ ├── StopAndError.node.json │ │ │ │ ├── StopAndError.node.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── node/ │ │ │ │ │ │ └── StopAndError.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── Storyblok/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── StoryContentDescription.ts │ │ │ │ ├── StoryManagementDescription.ts │ │ │ │ ├── Storyblok.node.json │ │ │ │ ├── Storyblok.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── story/ │ │ │ │ └── getAll.json │ │ │ ├── Strapi/ │ │ │ │ ├── EntryDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Strapi.node.json │ │ │ │ ├── Strapi.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── entry/ │ │ │ │ ├── get.json │ │ │ │ └── getAll.json │ │ │ ├── Strava/ │ │ │ │ ├── ActivityDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Strava.node.json │ │ │ │ ├── Strava.node.ts │ │ │ │ ├── StravaTrigger.node.json │ │ │ │ ├── StravaTrigger.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.1.0/ │ │ │ │ └── activity/ │ │ │ │ └── getAll.json │ │ │ ├── Stripe/ │ │ │ │ ├── README.md │ │ │ │ ├── Stripe.node.json │ │ │ │ ├── Stripe.node.ts │ │ │ │ ├── StripeTrigger.node.json │ │ │ │ ├── StripeTrigger.node.ts │ │ │ │ ├── StripeTriggerHelpers.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── balance/ │ │ │ │ │ │ └── get.json │ │ │ │ │ ├── charge/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── customer/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── StripeTrigger.node.test.ts │ │ │ │ │ ├── StripeTriggerHelpers.test.ts │ │ │ │ │ ├── helpers.test.ts │ │ │ │ │ └── workflow/ │ │ │ │ │ ├── MeterEvent.test.ts │ │ │ │ │ ├── Workflow_Stripe_MeterEvent_Basic.json │ │ │ │ │ ├── Workflow_Stripe_MeterEvent_CustomPayload.json │ │ │ │ │ ├── Workflow_Stripe_MeterEvent_GuardCustomerId.json │ │ │ │ │ ├── Workflow_Stripe_MeterEvent_GuardValue.json │ │ │ │ │ ├── Workflow_Stripe_MeterEvent_Identifier.json │ │ │ │ │ └── Workflow_Stripe_MeterEvent_Negative.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── BalanceDescription.ts │ │ │ │ │ ├── ChargeDescription.ts │ │ │ │ │ ├── CouponDescription.ts │ │ │ │ │ ├── CustomerCardDescription.ts │ │ │ │ │ ├── CustomerDescription.ts │ │ │ │ │ ├── MeterEventDescription.ts │ │ │ │ │ ├── SourceDescription.ts │ │ │ │ │ ├── TokenDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── helpers.ts │ │ │ ├── Supabase/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── RowDescription.ts │ │ │ │ ├── Supabase.node.json │ │ │ │ ├── Supabase.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── row/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── delete.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ └── tests/ │ │ │ │ └── Supabase.node.test.ts │ │ │ ├── SurveyMonkey/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Interfaces.ts │ │ │ │ ├── SurveyMonkeyTrigger.node.json │ │ │ │ └── SurveyMonkeyTrigger.node.ts │ │ │ ├── Switch/ │ │ │ │ ├── Switch.node.json │ │ │ │ ├── Switch.node.ts │ │ │ │ ├── V1/ │ │ │ │ │ ├── SwitchV1.node.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── switch.expression.workflow.json │ │ │ │ │ ├── switch.node.test.ts │ │ │ │ │ └── switch.rules.workflow.json │ │ │ │ ├── V2/ │ │ │ │ │ ├── SwitchV2.node.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── switch.expression.workflow.json │ │ │ │ │ ├── switch.node.test.ts │ │ │ │ │ └── switch.rules.workflow.json │ │ │ │ └── V3/ │ │ │ │ ├── SwitchV3.node.ts │ │ │ │ └── test/ │ │ │ │ ├── switch.expression.workflow.json │ │ │ │ ├── switch.node.test.ts │ │ │ │ ├── switch.regex.workflow.json │ │ │ │ └── switch.rules.workflow.json │ │ │ ├── SyncroMSP/ │ │ │ │ ├── SyncroMsp.node.json │ │ │ │ ├── SyncroMsp.node.ts │ │ │ │ └── v1/ │ │ │ │ ├── SyncroMspV1.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── Interfaces.ts │ │ │ │ │ ├── contact/ │ │ │ │ │ │ ├── create/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── del/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── get/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getAll/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── update/ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── customer/ │ │ │ │ │ │ ├── create/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── del/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── get/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getAll/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── update/ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── rmm/ │ │ │ │ │ │ ├── create/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── del/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── get/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getAll/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── mute/ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ ├── ticket/ │ │ │ │ │ │ ├── create/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── del/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── get/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── getAll/ │ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── update/ │ │ │ │ │ │ ├── description.ts │ │ │ │ │ │ ├── execute.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── loadOptions.ts │ │ │ │ │ └── sharedFields.ts │ │ │ │ └── transport/ │ │ │ │ └── index.ts │ │ │ ├── Taiga/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Taiga.node.json │ │ │ │ ├── Taiga.node.ts │ │ │ │ ├── TaigaTrigger.node.json │ │ │ │ ├── TaigaTrigger.node.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── EpicDescription.ts │ │ │ │ │ ├── IssueDescription.ts │ │ │ │ │ ├── TaskDescription.ts │ │ │ │ │ ├── UserStoryDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── types.ts │ │ │ ├── Tapfiliate/ │ │ │ │ ├── AffiliateDescription.ts │ │ │ │ ├── AffiliateMetadataDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ProgramAffiliateDescription.ts │ │ │ │ ├── Tapfiliate.node.json │ │ │ │ └── Tapfiliate.node.ts │ │ │ ├── Telegram/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── IEvent.ts │ │ │ │ ├── Telegram.node.json │ │ │ │ ├── Telegram.node.ts │ │ │ │ ├── TelegramTrigger.node.json │ │ │ │ ├── TelegramTrigger.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.2.0/ │ │ │ │ │ ├── callback/ │ │ │ │ │ │ └── answerQuery.json │ │ │ │ │ ├── chat/ │ │ │ │ │ │ ├── administrators.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── leave.json │ │ │ │ │ │ └── member.json │ │ │ │ │ ├── file/ │ │ │ │ │ │ └── get.json │ │ │ │ │ └── message/ │ │ │ │ │ ├── deleteMessage.json │ │ │ │ │ ├── editMessageText.json │ │ │ │ │ ├── pinChatMessage.json │ │ │ │ │ ├── sendAndWait.json │ │ │ │ │ ├── sendAnimation.json │ │ │ │ │ ├── sendAudio.json │ │ │ │ │ ├── sendChatAction.json │ │ │ │ │ ├── sendDocument.json │ │ │ │ │ ├── sendLocation.json │ │ │ │ │ ├── sendMediaGroup.json │ │ │ │ │ ├── sendMessage.json │ │ │ │ │ ├── sendPhoto.json │ │ │ │ │ ├── sendSticker.json │ │ │ │ │ └── sendVideo.json │ │ │ │ ├── tests/ │ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ │ ├── Helpers.ts │ │ │ │ │ ├── Telegram.node.test.ts │ │ │ │ │ ├── TelegramTrigger.node.test.ts │ │ │ │ │ ├── Workflow/ │ │ │ │ │ │ ├── apiResponses.ts │ │ │ │ │ │ ├── binaryData.workflow.json │ │ │ │ │ │ ├── workflow.json │ │ │ │ │ │ └── workflow.test.ts │ │ │ │ │ └── node/ │ │ │ │ │ └── sendAndWait.operation.test.ts │ │ │ │ └── util/ │ │ │ │ └── triggerUtils.ts │ │ │ ├── TheHive/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── QueryFunctions.ts │ │ │ │ ├── TheHive.node.json │ │ │ │ ├── TheHive.node.ts │ │ │ │ ├── TheHiveTrigger.node.json │ │ │ │ ├── TheHiveTrigger.node.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── AlertDescription.ts │ │ │ │ │ ├── CaseDescription.ts │ │ │ │ │ ├── EventsDescription.ts │ │ │ │ │ ├── LogDescription.ts │ │ │ │ │ ├── ObservableDescription.ts │ │ │ │ │ └── TaskDescription.ts │ │ │ │ └── interfaces/ │ │ │ │ ├── AlertInterface.ts │ │ │ │ ├── CaseInterface.ts │ │ │ │ ├── LogInterface.ts │ │ │ │ ├── ObservableInterface.ts │ │ │ │ └── TaskInterface.ts │ │ │ ├── TheHiveProject/ │ │ │ │ ├── TheHiveProject.node.json │ │ │ │ ├── TheHiveProject.node.ts │ │ │ │ ├── TheHiveProjectTrigger.node.json │ │ │ │ ├── TheHiveProjectTrigger.node.ts │ │ │ │ ├── actions/ │ │ │ │ │ ├── alert/ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deleteAlert.operation.ts │ │ │ │ │ │ ├── executeResponder.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── merge.operation.ts │ │ │ │ │ │ ├── promote.operation.ts │ │ │ │ │ │ ├── search.operation.ts │ │ │ │ │ │ ├── status.operation.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ ├── case/ │ │ │ │ │ │ ├── addAttachment.operation.ts │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deleteAttachment.operation.ts │ │ │ │ │ │ ├── deleteCase.operation.ts │ │ │ │ │ │ ├── executeResponder.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── getAttachment.operation.ts │ │ │ │ │ │ ├── getTimeline.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── search.operation.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ ├── comment/ │ │ │ │ │ │ ├── add.operation.ts │ │ │ │ │ │ ├── deleteComment.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── search.operation.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ ├── log/ │ │ │ │ │ │ ├── addAttachment.operation.ts │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deleteAttachment.operation.ts │ │ │ │ │ │ ├── deleteLog.operation.ts │ │ │ │ │ │ ├── executeResponder.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── search.operation.ts │ │ │ │ │ ├── node.description.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── observable/ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deleteObservable.operation.ts │ │ │ │ │ │ ├── executeAnalyzer.operation.ts │ │ │ │ │ │ ├── executeResponder.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── search.operation.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ ├── page/ │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── deletePage.operation.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── search.operation.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ ├── query/ │ │ │ │ │ │ ├── executeQuery.operation.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ └── task/ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ ├── deleteTask.operation.ts │ │ │ │ │ ├── executeResponder.operation.ts │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── search.operation.ts │ │ │ │ │ └── update.operation.ts │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── common.description.ts │ │ │ │ │ ├── filter.description.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── rlc.description.ts │ │ │ │ ├── helpers/ │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── interfaces.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── methods/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── listSearch.ts │ │ │ │ │ ├── loadOptions.ts │ │ │ │ │ └── resourceMapping.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── TheHiveProject.node.test.ts │ │ │ │ │ ├── TheHiveProjectTrigger.node.test.ts │ │ │ │ │ ├── alert-create.workflow.json │ │ │ │ │ ├── alert-get.workflow.json │ │ │ │ │ ├── alert-search.workflow.json │ │ │ │ │ ├── case-create.workflow.json │ │ │ │ │ ├── case-get.workflow.json │ │ │ │ │ ├── comment-add.workflow.json │ │ │ │ │ ├── observable-create.workflow.json │ │ │ │ │ ├── query-execute.workflow.json │ │ │ │ │ ├── task-create.workflow.json │ │ │ │ │ ├── task-get.workflow.json │ │ │ │ │ ├── transport.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ └── transport/ │ │ │ │ ├── index.ts │ │ │ │ ├── queryHelper.ts │ │ │ │ └── requestApi.ts │ │ │ ├── TimeSaved/ │ │ │ │ ├── TimeSaved.node.json │ │ │ │ ├── TimeSaved.node.ts │ │ │ │ └── tests/ │ │ │ │ └── TimeSaved.node.test.ts │ │ │ ├── TimescaleDb/ │ │ │ │ ├── TimescaleDb.node.json │ │ │ │ └── TimescaleDb.node.ts │ │ │ ├── Todoist/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Todoist.node.json │ │ │ │ ├── Todoist.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v2.1.0/ │ │ │ │ │ └── task/ │ │ │ │ │ ├── close.json │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ ├── move.json │ │ │ │ │ └── update.json │ │ │ │ ├── test/ │ │ │ │ │ └── GenericFunctions.test.ts │ │ │ │ ├── v1/ │ │ │ │ │ ├── OperationHandler.ts │ │ │ │ │ ├── Service.ts │ │ │ │ │ └── TodoistV1.node.ts │ │ │ │ └── v2/ │ │ │ │ ├── OperationHandler.ts │ │ │ │ ├── Service.ts │ │ │ │ ├── TodoistV2.node.ts │ │ │ │ └── test/ │ │ │ │ ├── OperationHandler.test.ts │ │ │ │ ├── TodoistV2.node.test.ts │ │ │ │ └── workflow.json │ │ │ ├── Toggl/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── TogglTrigger.node.json │ │ │ │ └── TogglTrigger.node.ts │ │ │ ├── Totp/ │ │ │ │ ├── Totp.node.json │ │ │ │ ├── Totp.node.ts │ │ │ │ └── test/ │ │ │ │ ├── Totp.node.test.ts │ │ │ │ └── Totp.workflow.test.json │ │ │ ├── Transform/ │ │ │ │ ├── Aggregate/ │ │ │ │ │ ├── Aggregate.node.json │ │ │ │ │ ├── Aggregate.node.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── Aggregate.test.ts │ │ │ │ │ │ └── workflow.aggregate.json │ │ │ │ │ └── utils.ts │ │ │ │ ├── Limit/ │ │ │ │ │ ├── Limit.node.json │ │ │ │ │ ├── Limit.node.ts │ │ │ │ │ └── test/ │ │ │ │ │ ├── Limit.test.ts │ │ │ │ │ └── workflow.limit.json │ │ │ │ ├── RemoveDuplicates/ │ │ │ │ │ ├── RemoveDuplicates.node.json │ │ │ │ │ ├── RemoveDuplicates.node.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── RemoveDuplicates.test.ts │ │ │ │ │ │ └── workflow.removeDuplicates.json │ │ │ │ │ ├── utils.ts │ │ │ │ │ ├── v1/ │ │ │ │ │ │ └── RemoveDuplicatesV1.node.ts │ │ │ │ │ └── v2/ │ │ │ │ │ ├── RemoveDuplicatesV2.description.ts │ │ │ │ │ ├── RemoveDuplicatesV2.node.ts │ │ │ │ │ └── test/ │ │ │ │ │ └── RemoveDuplicates.test.ts │ │ │ │ ├── Sort/ │ │ │ │ │ ├── Sort.node.json │ │ │ │ │ ├── Sort.node.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── SplitOut/ │ │ │ │ │ ├── SplitOut.node.json │ │ │ │ │ ├── SplitOut.node.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── SplitOut.test.ts │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ ├── workflow.splitOut.json │ │ │ │ │ │ └── workflow.splitOutObject.json │ │ │ │ │ └── utils.ts │ │ │ │ ├── Summarize/ │ │ │ │ │ ├── Summarize.node.json │ │ │ │ │ ├── Summarize.node.ts │ │ │ │ │ ├── test/ │ │ │ │ │ │ ├── Summarize.test.ts │ │ │ │ │ │ ├── unitTests/ │ │ │ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ │ │ │ └── splitData.test.ts.snap │ │ │ │ │ │ │ ├── checkIfFieldExists.test.ts │ │ │ │ │ │ │ ├── execute.test.ts │ │ │ │ │ │ │ └── splitData.test.ts │ │ │ │ │ │ ├── workflow.summarize.json │ │ │ │ │ │ ├── workflow.summarize_countWithEmpty.json │ │ │ │ │ │ ├── workflow.summarize_datatypes.json │ │ │ │ │ │ └── workflow.summarize_hint.json │ │ │ │ │ └── utils.ts │ │ │ │ └── utils/ │ │ │ │ └── utils.ts │ │ │ ├── TravisCi/ │ │ │ │ ├── BuildDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── TravisCi.node.json │ │ │ │ └── TravisCi.node.ts │ │ │ ├── Trello/ │ │ │ │ ├── AttachmentDescription.ts │ │ │ │ ├── BoardDescription.ts │ │ │ │ ├── BoardMemberDescription.ts │ │ │ │ ├── CardCommentDescription.ts │ │ │ │ ├── CardDescription.ts │ │ │ │ ├── ChecklistDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── LabelDescription.ts │ │ │ │ ├── ListDescription.ts │ │ │ │ ├── Trello.node.json │ │ │ │ ├── Trello.node.ts │ │ │ │ ├── TrelloTrigger.node.json │ │ │ │ ├── TrelloTrigger.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── attachment/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── board/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── update.json │ │ │ │ ├── boardMember/ │ │ │ │ │ └── getAll.json │ │ │ │ ├── card/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── update.json │ │ │ │ ├── cardComment/ │ │ │ │ │ └── create.json │ │ │ │ ├── checklist/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── createCheckItem.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ ├── label/ │ │ │ │ │ └── getAll.json │ │ │ │ └── list/ │ │ │ │ ├── create.json │ │ │ │ ├── get.json │ │ │ │ ├── getAll.json │ │ │ │ └── getCards.json │ │ │ ├── Twake/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Twake.node.json │ │ │ │ └── Twake.node.ts │ │ │ ├── Twilio/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Twilio.node.json │ │ │ │ ├── Twilio.node.ts │ │ │ │ ├── TwilioTrigger.node.json │ │ │ │ ├── TwilioTrigger.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ ├── call/ │ │ │ │ │ └── make.json │ │ │ │ └── sms/ │ │ │ │ └── send.json │ │ │ ├── Twist/ │ │ │ │ ├── ChannelDescription.ts │ │ │ │ ├── CommentDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MessageConversationDescription.ts │ │ │ │ ├── ThreadDescription.ts │ │ │ │ ├── Twist.node.json │ │ │ │ ├── Twist.node.ts │ │ │ │ └── test/ │ │ │ │ └── Twist.node.test.ts │ │ │ ├── Twitter/ │ │ │ │ ├── Twitter.node.json │ │ │ │ ├── Twitter.node.ts │ │ │ │ ├── V1/ │ │ │ │ │ ├── DirectMessageDescription.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── TweetDescription.ts │ │ │ │ │ ├── TweetInterface.ts │ │ │ │ │ └── TwitterV1.node.ts │ │ │ │ ├── V2/ │ │ │ │ │ ├── DirectMessageDescription.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── ListDescription.ts │ │ │ │ │ ├── TweetDescription.ts │ │ │ │ │ ├── TweetInterface.ts │ │ │ │ │ ├── TwitterV2.node.ts │ │ │ │ │ └── UserDescription.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ ├── tweet/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── delete.json │ │ │ │ │ │ ├── like.json │ │ │ │ │ │ ├── retweet.json │ │ │ │ │ │ └── search.json │ │ │ │ │ └── user/ │ │ │ │ │ └── searchUser.json │ │ │ │ └── test/ │ │ │ │ ├── Twitter.test.ts │ │ │ │ └── Workflow_Twitter_UnitTest.json │ │ │ ├── Typeform/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── TypeformTrigger.node.json │ │ │ │ ├── TypeformTrigger.node.ts │ │ │ │ ├── TypeformTriggerHelpers.ts │ │ │ │ └── test/ │ │ │ │ ├── TypeformTrigger.node.test.ts │ │ │ │ └── TypeformTriggerHelpers.test.ts │ │ │ ├── UProc/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── GroupDescription.ts │ │ │ │ ├── Json/ │ │ │ │ │ ├── Groups.ts │ │ │ │ │ └── Tools.ts │ │ │ │ ├── ToolDescription.ts │ │ │ │ ├── UProc.node.json │ │ │ │ └── UProc.node.ts │ │ │ ├── UnleashedSoftware/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── SalesOrderDescription.ts │ │ │ │ ├── StockOnHandDescription.ts │ │ │ │ ├── UnleashedSoftware.node.json │ │ │ │ ├── UnleashedSoftware.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── salesOrder/ │ │ │ │ └── getAll.json │ │ │ ├── Uplead/ │ │ │ │ ├── CompanyDesciption.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── PersonDescription.ts │ │ │ │ ├── Uplead.node.json │ │ │ │ └── Uplead.node.ts │ │ │ ├── UptimeRobot/ │ │ │ │ ├── AlertContactDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MaintenanceWindowDescription.ts │ │ │ │ ├── MonitorDescription.ts │ │ │ │ ├── PublicStatusPageDescription.ts │ │ │ │ ├── UptimeRobot.node.json │ │ │ │ └── UptimeRobot.node.ts │ │ │ ├── UrlScanIo/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── UrlScanIo.node.json │ │ │ │ ├── UrlScanIo.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ └── scan/ │ │ │ │ │ └── perform.json │ │ │ │ └── descriptions/ │ │ │ │ ├── ScanDescription.ts │ │ │ │ └── index.ts │ │ │ ├── Venafi/ │ │ │ │ ├── Datacenter/ │ │ │ │ │ ├── CertificateDescription.ts │ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ │ ├── PolicyDescription.ts │ │ │ │ │ ├── VenafiTlsProtectDatacenter.node.json │ │ │ │ │ ├── VenafiTlsProtectDatacenter.node.ts │ │ │ │ │ └── VenafiTlsProtectDatacenterTrigger.node.ts │ │ │ │ └── ProtectCloud/ │ │ │ │ ├── CertificateDescription.ts │ │ │ │ ├── CertificateInterface.ts │ │ │ │ ├── CertificateRequestDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── VenafiTlsProtectCloud.node.json │ │ │ │ ├── VenafiTlsProtectCloud.node.ts │ │ │ │ ├── VenafiTlsProtectCloudTrigger.node.json │ │ │ │ └── VenafiTlsProtectCloudTrigger.node.ts │ │ │ ├── Vero/ │ │ │ │ ├── EventDescripion.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ ├── Vero.node.json │ │ │ │ └── Vero.node.ts │ │ │ ├── Vonage/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Vonage.node.json │ │ │ │ ├── Vonage.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── sms/ │ │ │ │ └── send.json │ │ │ ├── Wait/ │ │ │ │ ├── Wait.node.json │ │ │ │ ├── Wait.node.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── Wait.node.test.ts │ │ │ │ │ └── Wait.workflow.json │ │ │ │ └── validation.ts │ │ │ ├── Webflow/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── V1/ │ │ │ │ │ ├── ItemDescription.ts │ │ │ │ │ ├── WebflowTriggerV1.node.ts │ │ │ │ │ └── WebflowV1.node.ts │ │ │ │ ├── V2/ │ │ │ │ │ ├── WebflowTriggerV2.node.ts │ │ │ │ │ ├── WebflowV2.node.ts │ │ │ │ │ └── actions/ │ │ │ │ │ ├── Item/ │ │ │ │ │ │ ├── Item.resource.ts │ │ │ │ │ │ ├── create.operation.ts │ │ │ │ │ │ ├── delete.operation.ts │ │ │ │ │ │ ├── get.operation.ts │ │ │ │ │ │ ├── getAll.operation.ts │ │ │ │ │ │ └── update.operation.ts │ │ │ │ │ ├── node.type.ts │ │ │ │ │ ├── router.ts │ │ │ │ │ └── versionDescription.ts │ │ │ │ ├── Webflow.node.json │ │ │ │ ├── Webflow.node.ts │ │ │ │ ├── WebflowTrigger.node.json │ │ │ │ ├── WebflowTrigger.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ └── item/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── deleteItem.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ └── test/ │ │ │ │ └── GenericFunctions.test.ts │ │ │ ├── Webhook/ │ │ │ │ ├── Webhook.node.json │ │ │ │ ├── Webhook.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v2.0.0/ │ │ │ │ │ └── output.json │ │ │ │ ├── description.ts │ │ │ │ ├── error.ts │ │ │ │ ├── test/ │ │ │ │ │ ├── Webhook.formdata.test.json │ │ │ │ │ ├── Webhook.test.ts │ │ │ │ │ └── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── Wekan/ │ │ │ │ ├── BoardDescription.ts │ │ │ │ ├── CardCommentDescription.ts │ │ │ │ ├── CardDescription.ts │ │ │ │ ├── ChecklistDescription.ts │ │ │ │ ├── ChecklistItemDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ListDescription.ts │ │ │ │ ├── Wekan.node.json │ │ │ │ └── Wekan.node.ts │ │ │ ├── WhatsApp/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MediaDescription.ts │ │ │ │ ├── MediaFunctions.ts │ │ │ │ ├── MessageFunctions.ts │ │ │ │ ├── MessagesDescription.ts │ │ │ │ ├── WhatsApp.node.json │ │ │ │ ├── WhatsApp.node.ts │ │ │ │ ├── WhatsAppTrigger.node.json │ │ │ │ ├── WhatsAppTrigger.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── media/ │ │ │ │ │ │ ├── mediaUpload.json │ │ │ │ │ │ └── mediaUrlGet.json │ │ │ │ │ └── message/ │ │ │ │ │ ├── send.json │ │ │ │ │ ├── sendAndWait.json │ │ │ │ │ └── sendTemplate.json │ │ │ │ ├── tests/ │ │ │ │ │ ├── WhatsAppTrigger.node.test.ts │ │ │ │ │ ├── node/ │ │ │ │ │ │ └── sendAndWait.test.ts │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.trigger.test.ts │ │ │ │ └── types.ts │ │ │ ├── Wise/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Wise.node.json │ │ │ │ ├── Wise.node.ts │ │ │ │ ├── WiseTrigger.node.json │ │ │ │ ├── WiseTrigger.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── account/ │ │ │ │ │ │ └── getBalances.json │ │ │ │ │ └── exchangeRate/ │ │ │ │ │ └── get.json │ │ │ │ └── descriptions/ │ │ │ │ ├── AccountDescription.ts │ │ │ │ ├── ExchangeRateDescription.ts │ │ │ │ ├── ProfileDescription.ts │ │ │ │ ├── QuoteDescription.ts │ │ │ │ ├── RecipientDescription.ts │ │ │ │ ├── TransferDescription.ts │ │ │ │ └── index.ts │ │ │ ├── WooCommerce/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── OrderDescription.ts │ │ │ │ ├── OrderInterface.ts │ │ │ │ ├── ProductDescription.ts │ │ │ │ ├── ProductInterface.ts │ │ │ │ ├── WooCommerce.node.json │ │ │ │ ├── WooCommerce.node.ts │ │ │ │ ├── WooCommerceTrigger.node.json │ │ │ │ ├── WooCommerceTrigger.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── customer/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── order/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── product/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ └── descriptions/ │ │ │ │ ├── CustomerDescription.ts │ │ │ │ ├── index.ts │ │ │ │ └── shared.ts │ │ │ ├── Wordpress/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── PageDescription.ts │ │ │ │ ├── PageInterface.ts │ │ │ │ ├── PostDescription.ts │ │ │ │ ├── PostInterface.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ ├── UserInterface.ts │ │ │ │ ├── Wordpress.node.json │ │ │ │ ├── Wordpress.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── page/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── post/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ └── user/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ └── getAll.json │ │ │ │ └── __tests__/ │ │ │ │ ├── GenericFunctions.test.ts │ │ │ │ └── workflow/ │ │ │ │ ├── apiResponses.ts │ │ │ │ ├── credentials.ts │ │ │ │ ├── page/ │ │ │ │ │ ├── page.test.ts │ │ │ │ │ └── page.workflow.json │ │ │ │ ├── post/ │ │ │ │ │ ├── post.test.ts │ │ │ │ │ └── post.workflow.json │ │ │ │ └── user/ │ │ │ │ ├── user.test.ts │ │ │ │ └── user.workflow.json │ │ │ ├── Workable/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── WorkableTrigger.node.json │ │ │ │ └── WorkableTrigger.node.ts │ │ │ ├── WorkflowTrigger/ │ │ │ │ ├── WorkflowTrigger.node.json │ │ │ │ └── WorkflowTrigger.node.ts │ │ │ ├── WriteBinaryFile/ │ │ │ │ ├── WriteBinaryFile.node.json │ │ │ │ ├── WriteBinaryFile.node.ts │ │ │ │ └── test/ │ │ │ │ ├── WriteBinaryFile.test.ts │ │ │ │ └── WriteBinaryFile.workflow.json │ │ │ ├── Wufoo/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Interface.ts │ │ │ │ ├── WufooTrigger.node.json │ │ │ │ └── WufooTrigger.node.ts │ │ │ ├── Xero/ │ │ │ │ ├── ContactDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── IContactInterface.ts │ │ │ │ ├── InvoiceDescription.ts │ │ │ │ ├── InvoiceInterface.ts │ │ │ │ ├── Xero.node.json │ │ │ │ ├── Xero.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── contact/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── invoice/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ └── update.json │ │ │ │ └── test/ │ │ │ │ └── Xero.node.test.ts │ │ │ ├── Xml/ │ │ │ │ ├── Xml.node.json │ │ │ │ ├── Xml.node.ts │ │ │ │ └── test/ │ │ │ │ └── node/ │ │ │ │ ├── Xml.test.ts │ │ │ │ ├── workflow.xml-valid-data.json │ │ │ │ └── workflow.xml.json │ │ │ ├── Yourls/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── UrlDescription.ts │ │ │ │ ├── Yourls.node.json │ │ │ │ └── Yourls.node.ts │ │ │ ├── Zammad/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── Zammad.node.json │ │ │ │ ├── Zammad.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── organization/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── ticket/ │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── user/ │ │ │ │ │ └── getAll.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── GroupDescription.ts │ │ │ │ │ ├── OrganizationDescription.ts │ │ │ │ │ ├── TicketDescription.ts │ │ │ │ │ ├── UserDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── test/ │ │ │ │ │ └── Zammad.node.test.ts │ │ │ │ └── types.ts │ │ │ ├── Zendesk/ │ │ │ │ ├── ConditionDescription.ts │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── OrganizationDescription.ts │ │ │ │ ├── TicketDescription.ts │ │ │ │ ├── TicketFieldDescription.ts │ │ │ │ ├── TicketInterface.ts │ │ │ │ ├── TriggerPlaceholders.ts │ │ │ │ ├── UserDescription.ts │ │ │ │ ├── Zendesk.node.json │ │ │ │ ├── Zendesk.node.ts │ │ │ │ ├── ZendeskTrigger.node.json │ │ │ │ ├── ZendeskTrigger.node.ts │ │ │ │ ├── ZendeskTriggerHelpers.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── organization/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── ticket/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ ├── ticketField/ │ │ │ │ │ │ └── getAll.json │ │ │ │ │ └── user/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ ├── getRelatedData.json │ │ │ │ │ └── search.json │ │ │ │ └── __tests__/ │ │ │ │ ├── ZendeskTrigger.node.test.ts │ │ │ │ └── ZendeskTriggerHelpers.test.ts │ │ │ ├── Zoho/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── ZohoCrm.node.json │ │ │ │ ├── ZohoCrm.node.ts │ │ │ │ ├── __schema__/ │ │ │ │ │ └── v1.0.0/ │ │ │ │ │ ├── account/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ └── getAll.json │ │ │ │ │ ├── contact/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ ├── update.json │ │ │ │ │ │ └── upsert.json │ │ │ │ │ ├── deal/ │ │ │ │ │ │ ├── create.json │ │ │ │ │ │ ├── get.json │ │ │ │ │ │ ├── getAll.json │ │ │ │ │ │ └── update.json │ │ │ │ │ └── lead/ │ │ │ │ │ ├── create.json │ │ │ │ │ ├── get.json │ │ │ │ │ ├── getAll.json │ │ │ │ │ ├── getFields.json │ │ │ │ │ ├── update.json │ │ │ │ │ └── upsert.json │ │ │ │ ├── descriptions/ │ │ │ │ │ ├── AccountDescription.ts │ │ │ │ │ ├── ContactDescription.ts │ │ │ │ │ ├── DealDescription.ts │ │ │ │ │ ├── InvoiceDescription.ts │ │ │ │ │ ├── LeadDescription.ts │ │ │ │ │ ├── ProductDescription.ts │ │ │ │ │ ├── PurchaseOrderDescription.ts │ │ │ │ │ ├── QuoteDescription.ts │ │ │ │ │ ├── SalesOrderDescription.ts │ │ │ │ │ ├── SharedFields.ts │ │ │ │ │ ├── VendorDescription.ts │ │ │ │ │ └── index.ts │ │ │ │ └── types.ts │ │ │ ├── Zoom/ │ │ │ │ ├── GenericFunctions.ts │ │ │ │ ├── MeetingDescription.ts │ │ │ │ ├── MeetingRegistrantDescription.ts │ │ │ │ ├── WebinarDescription.ts │ │ │ │ ├── Zoom.node.json │ │ │ │ ├── Zoom.node.ts │ │ │ │ └── __schema__/ │ │ │ │ └── v1.0.0/ │ │ │ │ └── meeting/ │ │ │ │ ├── create.json │ │ │ │ ├── get.json │ │ │ │ └── getAll.json │ │ │ └── Zulip/ │ │ │ ├── GenericFunctions.ts │ │ │ ├── MessageDescription.ts │ │ │ ├── MessageInterface.ts │ │ │ ├── StreamDescription.ts │ │ │ ├── StreamInterface.ts │ │ │ ├── UserDescription.ts │ │ │ ├── UserInterface.ts │ │ │ ├── Zulip.node.json │ │ │ └── Zulip.node.ts │ │ ├── package.json │ │ ├── scripts/ │ │ │ ├── copy-nodes-json.js │ │ │ ├── validate-load-options-methods.js │ │ │ └── validate-schema-versions.js │ │ ├── shims.d.ts │ │ ├── test/ │ │ │ ├── globalSetup.ts │ │ │ ├── nodes/ │ │ │ │ ├── Helpers.ts │ │ │ │ └── TriggerHelpers.ts │ │ │ └── setup.ts │ │ ├── tsconfig.build.cjs.json │ │ ├── tsconfig.json │ │ ├── types/ │ │ │ ├── generate-schema.d.ts │ │ │ └── xmlhttprequest-ssl.d.ts │ │ ├── utils/ │ │ │ ├── ISOCountryCodes.ts │ │ │ ├── __tests__/ │ │ │ │ ├── binary.test.ts │ │ │ │ ├── connection-pool-manager.test.ts │ │ │ │ ├── utilities.test.ts │ │ │ │ └── webhook-signature-verification.test.ts │ │ │ ├── allCurrencies.ts │ │ │ ├── binary.ts │ │ │ ├── connection-pool-manager.ts │ │ │ ├── constants.ts │ │ │ ├── descriptions.ts │ │ │ ├── sendAndWait/ │ │ │ │ ├── configureWaitTillDate.util.ts │ │ │ │ ├── descriptions.ts │ │ │ │ ├── email-templates.ts │ │ │ │ ├── interfaces.ts │ │ │ │ ├── test/ │ │ │ │ │ └── util.test.ts │ │ │ │ └── utils.ts │ │ │ ├── sshTunnel.properties.ts │ │ │ ├── utilities.ts │ │ │ ├── webhook-signature-verification.ts │ │ │ ├── workflow-backtracking.test.ts │ │ │ ├── workflow-backtracking.ts │ │ │ └── workflowInputsResourceMapping/ │ │ │ ├── .readme │ │ │ ├── GenericFunctions.ts │ │ │ ├── __tests__/ │ │ │ │ └── GenericFunctions.test.ts │ │ │ └── constants.ts │ │ └── vitest.integration.config.ts │ ├── testing/ │ │ ├── code-health/ │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── cli/ │ │ │ │ │ └── arg-parser.ts │ │ │ │ ├── cli.ts │ │ │ │ ├── context.ts │ │ │ │ ├── index.ts │ │ │ │ ├── rules/ │ │ │ │ │ ├── catalog-violations.rule.test.ts │ │ │ │ │ └── catalog-violations.rule.ts │ │ │ │ └── utils/ │ │ │ │ ├── package-json-scanner.ts │ │ │ │ └── workspace-parser.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── vitest.config.ts │ │ ├── containers/ │ │ │ ├── HELM-TESTING.md │ │ │ ├── README.md │ │ │ ├── docker-image-not-found-error.ts │ │ │ ├── dockerfiles/ │ │ │ │ └── kent/ │ │ │ │ ├── Dockerfile │ │ │ │ └── kent_cors.py │ │ │ ├── eslint.config.mjs │ │ │ ├── helm-stack.ts │ │ │ ├── helm-start-stack.ts │ │ │ ├── helpers/ │ │ │ │ └── utils.ts │ │ │ ├── index.ts │ │ │ ├── n8n-image-pull-policy.ts │ │ │ ├── n8n-start-stack.ts │ │ │ ├── network-stabilization.ts │ │ │ ├── package.json │ │ │ ├── performance-plans.ts │ │ │ ├── pull-test-images.ts │ │ │ ├── service-stack.ts │ │ │ ├── services/ │ │ │ │ ├── cloudflared.ts │ │ │ │ ├── gitea.ts │ │ │ │ ├── kafka.ts │ │ │ │ ├── kent.ts │ │ │ │ ├── keycloak.ts │ │ │ │ ├── load-balancer.ts │ │ │ │ ├── localstack.ts │ │ │ │ ├── mailpit.ts │ │ │ │ ├── mysql.ts │ │ │ │ ├── n8n.ts │ │ │ │ ├── ngrok.ts │ │ │ │ ├── observability.ts │ │ │ │ ├── postgres-exporter.ts │ │ │ │ ├── postgres.ts │ │ │ │ ├── proxy.ts │ │ │ │ ├── redis.ts │ │ │ │ ├── registry.ts │ │ │ │ ├── task-runner.ts │ │ │ │ ├── tracing.ts │ │ │ │ ├── types.ts │ │ │ │ ├── vector.ts │ │ │ │ ├── victoria-logs.ts │ │ │ │ └── victoria-metrics.ts │ │ │ ├── stack.ts │ │ │ ├── telemetry.ts │ │ │ ├── test-containers.ts │ │ │ └── tsconfig.json │ │ ├── janitor/ │ │ │ ├── .gitignore │ │ │ ├── CLAUDE.md │ │ │ ├── README.md │ │ │ ├── eslint.config.mjs │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ ├── cli/ │ │ │ │ │ ├── arg-parser.test.ts │ │ │ │ │ ├── arg-parser.ts │ │ │ │ │ ├── help.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── cli.test.ts │ │ │ │ ├── cli.ts │ │ │ │ ├── config.ts │ │ │ │ ├── core/ │ │ │ │ │ ├── ast-diff-analyzer.test.ts │ │ │ │ │ ├── ast-diff-analyzer.ts │ │ │ │ │ ├── baseline.test.ts │ │ │ │ │ ├── baseline.ts │ │ │ │ │ ├── extract-diffs.ts │ │ │ │ │ ├── facade-resolver.ts │ │ │ │ │ ├── impact-analyzer.test.ts │ │ │ │ │ ├── impact-analyzer.ts │ │ │ │ │ ├── inventory-analyzer.test.ts │ │ │ │ │ ├── inventory-analyzer.ts │ │ │ │ │ ├── method-usage-analyzer.test.ts │ │ │ │ │ ├── method-usage-analyzer.ts │ │ │ │ │ ├── orchestrator.test.ts │ │ │ │ │ ├── orchestrator.ts │ │ │ │ │ ├── project-loader.test.ts │ │ │ │ │ ├── project-loader.ts │ │ │ │ │ ├── reporter.ts │ │ │ │ │ ├── rule-runner.ts │ │ │ │ │ ├── tcr-executor.test.ts │ │ │ │ │ ├── tcr-executor.ts │ │ │ │ │ ├── test-discovery-analyzer.test.ts │ │ │ │ │ └── test-discovery-analyzer.ts │ │ │ │ ├── index.ts │ │ │ │ ├── rules/ │ │ │ │ │ ├── api-purity.rule.test.ts │ │ │ │ │ ├── api-purity.rule.ts │ │ │ │ │ ├── base-rule.ts │ │ │ │ │ ├── boundary-protection.rule.test.ts │ │ │ │ │ ├── boundary-protection.rule.ts │ │ │ │ │ ├── dead-code.rule.test.ts │ │ │ │ │ ├── dead-code.rule.ts │ │ │ │ │ ├── deduplication.rule.test.ts │ │ │ │ │ ├── deduplication.rule.ts │ │ │ │ │ ├── duplicate-logic.rule.test.ts │ │ │ │ │ ├── duplicate-logic.rule.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── no-direct-page-instantiation.rule.test.ts │ │ │ │ │ ├── no-direct-page-instantiation.rule.ts │ │ │ │ │ ├── no-page-in-flow.rule.test.ts │ │ │ │ │ ├── no-page-in-flow.rule.ts │ │ │ │ │ ├── scope-lockdown.rule.test.ts │ │ │ │ │ ├── scope-lockdown.rule.ts │ │ │ │ │ ├── selector-purity.rule.test.ts │ │ │ │ │ ├── selector-purity.rule.ts │ │ │ │ │ ├── test-data-hygiene.rule.test.ts │ │ │ │ │ └── test-data-hygiene.rule.ts │ │ │ │ ├── test/ │ │ │ │ │ └── fixtures.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils/ │ │ │ │ ├── ast-helpers.ts │ │ │ │ ├── git-operations.test.ts │ │ │ │ ├── git-operations.ts │ │ │ │ ├── index.ts │ │ │ │ ├── logger.test.ts │ │ │ │ ├── logger.ts │ │ │ │ ├── paths.ts │ │ │ │ ├── resolve-input-paths.test.ts │ │ │ │ ├── test-command.test.ts │ │ │ │ └── test-command.ts │ │ │ ├── tsconfig.json │ │ │ └── vitest.config.ts │ │ ├── performance/ │ │ │ ├── README.md │ │ │ ├── benchmarks/ │ │ │ │ └── expression-engine/ │ │ │ │ ├── fixtures/ │ │ │ │ │ ├── data.ts │ │ │ │ │ ├── expressions.ts │ │ │ │ │ └── pattern-benchmarks.ts │ │ │ │ ├── micro.bench.ts │ │ │ │ ├── patterns-legacy.bench.ts │ │ │ │ └── patterns-vm.bench.ts │ │ │ ├── package.json │ │ │ ├── profiles/ │ │ │ │ └── .gitignore │ │ │ ├── scripts/ │ │ │ │ ├── check-regression.mjs │ │ │ │ ├── extract-expressions.mjs │ │ │ │ └── save-baseline.mjs │ │ │ └── vitest.config.ts │ │ ├── playwright/ │ │ │ ├── .janitor-baseline.json │ │ │ ├── .playwright-version │ │ │ ├── AGENTS.md │ │ │ ├── CLAUDE.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── README.md │ │ │ ├── Types.ts │ │ │ ├── composables/ │ │ │ │ ├── BuilderWizardComposer.ts │ │ │ │ ├── CanvasComposer.ts │ │ │ │ ├── CredentialsComposer.ts │ │ │ │ ├── DataTablesComposer.ts │ │ │ │ ├── ExecutionsComposer.ts │ │ │ │ ├── MfaComposer.ts │ │ │ │ ├── NodeDetailsViewComposer.ts │ │ │ │ ├── OidcComposer.ts │ │ │ │ ├── PartialExecutionComposer.ts │ │ │ │ ├── ProjectComposer.ts │ │ │ │ ├── TemplatesComposer.ts │ │ │ │ ├── TestEntryComposer.ts │ │ │ │ └── WorkflowComposer.ts │ │ │ ├── config/ │ │ │ │ ├── ai-assistant-fixtures.ts │ │ │ │ ├── ai-builder-fixtures.ts │ │ │ │ ├── ai-builder-wizard-fixtures.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── intercepts.ts │ │ │ │ └── test-users.ts │ │ │ ├── currents.config.ts │ │ │ ├── docs/ │ │ │ │ ├── ORCHESTRATION.md │ │ │ │ └── TROUBLESHOOTING.md │ │ │ ├── eslint.config.mjs │ │ │ ├── expectations/ │ │ │ │ ├── chat-hub/ │ │ │ │ │ ├── 1770382688510-api.anthropic.com-GET-_v1_models-2ef5ce20.json │ │ │ │ │ ├── 1770382688511-unknown-host-POST-_v1_messages-95128868.json │ │ │ │ │ ├── 1770382690036-api.anthropic.com-GET-_v1_models-2ef5ce20.json │ │ │ │ │ ├── 1770382690037-unknown-host-POST-_v1_messages-7e7f525e.json │ │ │ │ │ ├── 1770382690037-unknown-host-POST-_v1_messages-f0cbca27.json │ │ │ │ │ ├── 1770382691488-api.anthropic.com-GET-_v1_models-2ef5ce20.json │ │ │ │ │ ├── 1770382691489-unknown-host-POST-_v1_messages-170a9933.json │ │ │ │ │ ├── 1770382691489-unknown-host-POST-_v1_messages-7e7f525e.json │ │ │ │ │ ├── 1770382691489-unknown-host-POST-_v1_messages-f0cbca27.json │ │ │ │ │ ├── 1770382916894-unknown-host-POST-_v1_messages-099aa697.json │ │ │ │ │ ├── 1770382916895-unknown-host-POST-_v1_messages-e2b1cf00.json │ │ │ │ │ ├── 1770382919029-unknown-host-POST-_v1_messages-1576c6ca.json │ │ │ │ │ ├── 1770382919029-unknown-host-POST-_v1_messages-24f965d5.json │ │ │ │ │ ├── 1770382922975-unknown-host-POST-_v1_messages-71446cdb.json │ │ │ │ │ ├── 1770382922975-unknown-host-POST-_v1_messages-806f7911.json │ │ │ │ │ ├── 1770382922976-unknown-host-POST-_v1_messages-202bcf80.json │ │ │ │ │ ├── 1770382922976-unknown-host-POST-_v1_messages-afa85f26.json │ │ │ │ │ ├── 1770382922976-unknown-host-POST-_v1_messages-b3ec11c7.json │ │ │ │ │ ├── 1770383755037-unknown-host-POST-_v1_messages-6b8c1e5e.json │ │ │ │ │ ├── 1770383759202-unknown-host-POST-_v1_messages-6b8c1e5e.json │ │ │ │ │ ├── 1770383759203-unknown-host-POST-_v1_messages-5d13c513.json │ │ │ │ │ ├── 1770383759203-unknown-host-POST-_v1_messages-b72fba5a.json │ │ │ │ │ ├── 1770384499975-unknown-host-POST-_v1_messages-e80e3bda.json │ │ │ │ │ ├── 1770384499976-unknown-host-POST-_v1_messages-9d3b55c0.json │ │ │ │ │ ├── 1770384638417-unknown-host-POST-_v1_messages-cdbee010.json │ │ │ │ │ ├── 1770384643848-unknown-host-POST-_v1_messages-cdbee010.json │ │ │ │ │ ├── 1770384643849-unknown-host-POST-_v1_messages-68299689.json │ │ │ │ │ ├── 1770384643849-unknown-host-POST-_v1_messages-9de947e4.json │ │ │ │ │ ├── 1770385219492-unknown-host-POST-_v1_messages-9c4e545c.json │ │ │ │ │ ├── 1770385602692-unknown-host-POST-_v1_messages-3e37cab7.json │ │ │ │ │ ├── 1770385602692-unknown-host-POST-_v1_messages-cef8feb2.json │ │ │ │ │ ├── 1770385602693-unknown-host-POST-_v1_messages-0d54ab7a.json │ │ │ │ │ ├── 1770385602693-unknown-host-POST-_v1_messages-9d702ab3.json │ │ │ │ │ ├── 1770386243139-s.jina.ai-GET-_-fc5e3463.json │ │ │ │ │ └── 1770386368372-unknown-host-POST-_v1_messages-4000e3a5.json │ │ │ │ ├── evaluations/ │ │ │ │ │ ├── 1756994893546-oauth2.googleapis.com-POST-_token-58f6fdf2.json │ │ │ │ │ ├── 1756994893547-sheets.googleapis.com-GET-_v4_spreadsheets_1zJu8zLtFc3rbZPAWqKBh7TIou59StJr7HLn0nUy0bqs-185c9dd7.json │ │ │ │ │ ├── 1756994893548-sheets.googleapis.com-GET-_v4_spreadsheets_1zJu8zLtFc3rbZPAWqKBh7TIou59StJr7HLn0nUy0bqs_values__Sheet2_-7746917a.json │ │ │ │ │ ├── 1756994893549-sheets.googleapis.com-GET-_v4_spreadsheets_1zJu8zLtFc3rbZPAWqKBh7TIou59StJr7HLn0nUy0bqs_values_Sheet2_2_1000-e7fa67bd.json │ │ │ │ │ ├── 1756994893550-sheets.googleapis.com-POST-_v4_spreadsheets_1zJu8zLtFc3rbZPAWqKBh7TIou59StJr7HLn0nUy0bqs_values_batchUpdate-19f43fca.json │ │ │ │ │ ├── 1756994893550-sheets.googleapis.com-PUT-_v4_spreadsheets_1zJu8zLtFc3rbZPAWqKBh7TIou59StJr7HLn0nUy0bqs_values_Sheet2_1_1-c0a137d1.json │ │ │ │ │ ├── 1756994893551-sheets.googleapis.com-GET-_v4_spreadsheets_1zJu8zLtFc3rbZPAWqKBh7TIou59StJr7HLn0nUy0bqs_values_Sheet2_3_1000-1bdb2093.json │ │ │ │ │ └── 1756994893552-sheets.googleapis.com-POST-_v4_spreadsheets_1zJu8zLtFc3rbZPAWqKBh7TIou59StJr7HLn0nUy0bqs_values_batchUpdate-65f181a6.json │ │ │ │ ├── hitl-for-tools/ │ │ │ │ │ ├── 1769166878316-unknown-host-POST-_v1_responses-2bb80a7e.json │ │ │ │ │ └── 1769166878317-unknown-host-POST-_v1_responses-5da732d2.json │ │ │ │ ├── langchain/ │ │ │ │ │ ├── 1757337994261-unknown-host-POST-_v1_chat_completions-1561df08.json │ │ │ │ │ ├── 1757337994532-unknown-host-POST-_v1_chat_completions-1561df08.json │ │ │ │ │ ├── 1757337995023-unknown-host-POST-_v1_chat_completions-1561df08.json │ │ │ │ │ ├── 1757338000172-unknown-host-POST-_v1_chat_completions-fdac7829.json │ │ │ │ │ ├── 1757338002750-unknown-host-POST-_v1_chat_completions-9d7fafef.json │ │ │ │ │ └── 1757338002751-unknown-host-POST-_v1_chat_completions-e8887e9d.json │ │ │ │ ├── proxy-server/ │ │ │ │ │ └── GET-mock_endpoint.json │ │ │ │ └── workflow-builder/ │ │ │ │ ├── 1768236114968-unknown-host-POST-_v1_messages-764da75c.json │ │ │ │ ├── 1768236114974-unknown-host-POST-_v1_messages-4759b5e5.json │ │ │ │ ├── 1768236114980-unknown-host-POST-_v1_messages-630e8fa0.json │ │ │ │ ├── 1768236115199-unknown-host-POST-_v1_messages-989b3528.json │ │ │ │ ├── 1768236115212-unknown-host-POST-_v1_messages-2bb8783c.json │ │ │ │ └── 1768236115215-unknown-host-POST-_v1_messages-343a818e.json │ │ │ ├── fixtures/ │ │ │ │ ├── Dummy_javascript.txt │ │ │ │ ├── Test_workflow_1.json │ │ │ │ ├── Test_workflow_schema_test.json │ │ │ │ ├── base.ts │ │ │ │ ├── capabilities.ts │ │ │ │ ├── console-error-monitor.ts │ │ │ │ ├── execution-out-of-memory-server-response.json │ │ │ │ ├── observability.ts │ │ │ │ └── plan-data-trial.json │ │ │ ├── global-setup.ts │ │ │ ├── global-teardown.ts │ │ │ ├── helpers/ │ │ │ │ ├── ClipboardHelper.ts │ │ │ │ ├── NavigationHelper.ts │ │ │ │ └── NodeParameterHelper.ts │ │ │ ├── janitor.config.mjs │ │ │ ├── nyc.config.ts │ │ │ ├── package.json │ │ │ ├── pages/ │ │ │ │ ├── AIAssistantPage.ts │ │ │ │ ├── AIBuilderPage.ts │ │ │ │ ├── BasePage.ts │ │ │ │ ├── CanvasPage.ts │ │ │ │ ├── ChatHubChatPage.ts │ │ │ │ ├── ChatHubPersonalAgentsPage.ts │ │ │ │ ├── ChatHubSettingsPage.ts │ │ │ │ ├── ChatHubWorkflowAgentsPage.ts │ │ │ │ ├── CommunityNodesPage.ts │ │ │ │ ├── CredentialsPage.ts │ │ │ │ ├── DataTableDetails.ts │ │ │ │ ├── DataTableView.ts │ │ │ │ ├── DemoPage.ts │ │ │ │ ├── ExecutionsPage.ts │ │ │ │ ├── InteractionsPage.ts │ │ │ │ ├── KeycloakLoginPage.ts │ │ │ │ ├── MfaLoginPage.ts │ │ │ │ ├── MfaSetupModal.ts │ │ │ │ ├── NodeDetailsViewPage.ts │ │ │ │ ├── NotificationsPage.ts │ │ │ │ ├── NpsSurveyPage.ts │ │ │ │ ├── ProjectSettingsPage.ts │ │ │ │ ├── SecretsProviderSettingsPage.ts │ │ │ │ ├── SettingsEnvironmentPage.ts │ │ │ │ ├── SettingsLogStreamingPage.ts │ │ │ │ ├── SettingsPersonalPage.ts │ │ │ │ ├── SettingsSsoPage.ts │ │ │ │ ├── SettingsUsersPage.ts │ │ │ │ ├── SidebarPage.ts │ │ │ │ ├── SignInPage.ts │ │ │ │ ├── SourceControlPullModal.ts │ │ │ │ ├── SourceControlPushModal.ts │ │ │ │ ├── TemplateCredentialSetupPage.ts │ │ │ │ ├── TemplatesPage.ts │ │ │ │ ├── VariablesPage.ts │ │ │ │ ├── VersionsPage.ts │ │ │ │ ├── WorkerViewPage.ts │ │ │ │ ├── WorkflowActivationModal.ts │ │ │ │ ├── WorkflowCredentialSetupModal.ts │ │ │ │ ├── WorkflowSettingsModal.ts │ │ │ │ ├── WorkflowSharingModal.ts │ │ │ │ ├── WorkflowsPage.ts │ │ │ │ ├── components/ │ │ │ │ │ ├── AddResource.ts │ │ │ │ │ ├── BaseModal.ts │ │ │ │ │ ├── Breadcrumbs.ts │ │ │ │ │ ├── BuilderSetupWizard.ts │ │ │ │ │ ├── ChatHubCredentialModal.ts │ │ │ │ │ ├── ChatHubPersonalAgentModal.ts │ │ │ │ │ ├── ChatHubProviderSettingsModal.ts │ │ │ │ │ ├── ChatHubSidebar.ts │ │ │ │ │ ├── ChatHubToolsModal.ts │ │ │ │ │ ├── CommandBar.ts │ │ │ │ │ ├── ConvertToSubworkflowModal.ts │ │ │ │ │ ├── CredentialModal.ts │ │ │ │ │ ├── DeleteSecretsProviderModal.ts │ │ │ │ │ ├── FloatingUiHelper.ts │ │ │ │ │ ├── FocusPanel.ts │ │ │ │ │ ├── LogsPanel.ts │ │ │ │ │ ├── NodeCreator.ts │ │ │ │ │ ├── ProjectTabsComponent.ts │ │ │ │ │ ├── ResourceCards.ts │ │ │ │ │ ├── ResourceMoveModal.ts │ │ │ │ │ ├── RunDataPanel.ts │ │ │ │ │ ├── SaveChangesModal.ts │ │ │ │ │ ├── SecretsProviderConnectionModal.ts │ │ │ │ │ ├── StickyComponent.ts │ │ │ │ │ ├── TagsManagerModal.ts │ │ │ │ │ └── VariableModal.ts │ │ │ │ ├── n8nPage.ts │ │ │ │ └── nodes/ │ │ │ │ └── EditFieldsNode.ts │ │ │ ├── playwright-projects.ts │ │ │ ├── playwright.config.ts │ │ │ ├── reporters/ │ │ │ │ ├── USAGE.md │ │ │ │ ├── benchmark-summary-reporter.ts │ │ │ │ └── metrics-reporter.ts │ │ │ ├── scripts/ │ │ │ │ ├── ast-viewer.ts │ │ │ │ ├── build-test-image.mjs │ │ │ │ ├── coverage-analysis.mjs │ │ │ │ ├── coverage-workflow.md │ │ │ │ ├── distribute-tests.mjs │ │ │ │ ├── fetch-currents-metrics.mjs │ │ │ │ ├── generate-coverage-report.js │ │ │ │ └── import-victoria-data.mjs │ │ │ ├── services/ │ │ │ │ ├── api-helper.ts │ │ │ │ ├── credential-api-helper.ts │ │ │ │ ├── dynamic-credential-api-helper.ts │ │ │ │ ├── external-secrets-api-helper.ts │ │ │ │ ├── mcp-api-helper.ts │ │ │ │ ├── project-api-helper.ts │ │ │ │ ├── public-api-helper.ts │ │ │ │ ├── role-api-helper.ts │ │ │ │ ├── source-control-api-helper.ts │ │ │ │ ├── tag-api-helper.ts │ │ │ │ ├── user-api-helper.ts │ │ │ │ ├── variables-api-helper.ts │ │ │ │ ├── webhook-api-helper.ts │ │ │ │ └── workflow-api-helper.ts │ │ │ ├── tests/ │ │ │ │ ├── cli-workflows/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── credentials.json │ │ │ │ │ ├── setup-workflow-tests.ts │ │ │ │ │ ├── workflow-tests.spec.ts │ │ │ │ │ ├── workflow-tests.spec.ts-snapshots/ │ │ │ │ │ │ ├── workflow-101-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-103-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-105-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-108-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-109-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-11-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-110-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-111-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-114-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-132-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-133-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-139-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-140-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-144-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-147-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-148-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-15-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-150-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-152-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-153-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-154-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-155-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-156-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-16-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-161-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-162-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-164-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-166-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-17-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-172-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-174-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-182-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-184-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-185-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-186-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-19-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-202-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-203-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-205-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-209-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-212-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-216-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-229-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-230-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-231-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-234-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-235-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-236-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-237-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-238-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-239-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-240-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-241-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-242-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-243-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-244-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-245-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-246-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-247-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-248-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-249-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-250-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-251-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-253-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-254-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-255-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-256-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-257-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-258-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-259-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-260-schema-cli-workflows.snap │ │ │ │ │ │ ├── workflow-261-schema-cli-workflows.snap │ │ │ │ │ │ ├── workflow-262-schema-cli-workflows.snap │ │ │ │ │ │ ├── workflow-263-schema-cli-workflows.snap │ │ │ │ │ │ ├── workflow-264-schema-cli-workflows.snap │ │ │ │ │ │ ├── workflow-265-schema-cli-workflows.snap │ │ │ │ │ │ ├── workflow-266-schema-cli-workflows.snap │ │ │ │ │ │ ├── workflow-267-schema-cli-workflows.snap │ │ │ │ │ │ ├── workflow-268-schema-cli-workflows.snap │ │ │ │ │ │ ├── workflow-32-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-34-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-35-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-36-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-37-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-44-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-48-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-49-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-5-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-50-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-52-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-53-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-55-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-58-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-6-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-60-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-61-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-62-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-63-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-67-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-70-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-71-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-72-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-81-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-83-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-84-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-90-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-91-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-93-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-95-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-96-schema-mode-workflows.snap │ │ │ │ │ │ ├── workflow-97-schema-mode-workflows.snap │ │ │ │ │ │ └── workflow-98-schema-mode-workflows.snap │ │ │ │ │ ├── workflowConfig.json │ │ │ │ │ └── workflows/ │ │ │ │ │ ├── 1.json │ │ │ │ │ ├── 10.json │ │ │ │ │ ├── 101.json │ │ │ │ │ ├── 102.json │ │ │ │ │ ├── 103.json │ │ │ │ │ ├── 104.json │ │ │ │ │ ├── 105.json │ │ │ │ │ ├── 106.json │ │ │ │ │ ├── 108.json │ │ │ │ │ ├── 109.json │ │ │ │ │ ├── 11.json │ │ │ │ │ ├── 110.json │ │ │ │ │ ├── 111.json │ │ │ │ │ ├── 112.json │ │ │ │ │ ├── 113.json │ │ │ │ │ ├── 114.json │ │ │ │ │ ├── 115.json │ │ │ │ │ ├── 116.json │ │ │ │ │ ├── 117.json │ │ │ │ │ ├── 118.json │ │ │ │ │ ├── 119.json │ │ │ │ │ ├── 120.json │ │ │ │ │ ├── 121.json │ │ │ │ │ ├── 122.json │ │ │ │ │ ├── 123.json │ │ │ │ │ ├── 124.json │ │ │ │ │ ├── 125.json │ │ │ │ │ ├── 126.json │ │ │ │ │ ├── 127.json │ │ │ │ │ ├── 128.json │ │ │ │ │ ├── 129.json │ │ │ │ │ ├── 130.json │ │ │ │ │ ├── 131.json │ │ │ │ │ ├── 132.json │ │ │ │ │ ├── 133.json │ │ │ │ │ ├── 134.json │ │ │ │ │ ├── 135.json │ │ │ │ │ ├── 136.json │ │ │ │ │ ├── 137.json │ │ │ │ │ ├── 138.json │ │ │ │ │ ├── 139.json │ │ │ │ │ ├── 140.json │ │ │ │ │ ├── 141.json │ │ │ │ │ ├── 142.json │ │ │ │ │ ├── 143.json │ │ │ │ │ ├── 144.json │ │ │ │ │ ├── 145.json │ │ │ │ │ ├── 146.json │ │ │ │ │ ├── 147.json │ │ │ │ │ ├── 148.json │ │ │ │ │ ├── 149.json │ │ │ │ │ ├── 15.json │ │ │ │ │ ├── 150.json │ │ │ │ │ ├── 151.json │ │ │ │ │ ├── 152.json │ │ │ │ │ ├── 153.json │ │ │ │ │ ├── 154.json │ │ │ │ │ ├── 155.json │ │ │ │ │ ├── 156.json │ │ │ │ │ ├── 157.json │ │ │ │ │ ├── 158.json │ │ │ │ │ ├── 159.json │ │ │ │ │ ├── 16.json │ │ │ │ │ ├── 160.json │ │ │ │ │ ├── 161.json │ │ │ │ │ ├── 162.json │ │ │ │ │ ├── 163.json │ │ │ │ │ ├── 164.json │ │ │ │ │ ├── 165.json │ │ │ │ │ ├── 166.json │ │ │ │ │ ├── 167.json │ │ │ │ │ ├── 168.json │ │ │ │ │ ├── 169.json │ │ │ │ │ ├── 17.json │ │ │ │ │ ├── 170.json │ │ │ │ │ ├── 171.json │ │ │ │ │ ├── 172.json │ │ │ │ │ ├── 173.json │ │ │ │ │ ├── 174.json │ │ │ │ │ ├── 176.json │ │ │ │ │ ├── 177.json │ │ │ │ │ ├── 179.json │ │ │ │ │ ├── 180.json │ │ │ │ │ ├── 182.json │ │ │ │ │ ├── 183.json │ │ │ │ │ ├── 184.json │ │ │ │ │ ├── 185.json │ │ │ │ │ ├── 186.json │ │ │ │ │ ├── 187.json │ │ │ │ │ ├── 188.json │ │ │ │ │ ├── 189.json │ │ │ │ │ ├── 19.json │ │ │ │ │ ├── 190.json │ │ │ │ │ ├── 191.json │ │ │ │ │ ├── 192.json │ │ │ │ │ ├── 193.json │ │ │ │ │ ├── 194.json │ │ │ │ │ ├── 196.json │ │ │ │ │ ├── 197.json │ │ │ │ │ ├── 198.json │ │ │ │ │ ├── 199.json │ │ │ │ │ ├── 20.json │ │ │ │ │ ├── 200.json │ │ │ │ │ ├── 201.json │ │ │ │ │ ├── 202.json │ │ │ │ │ ├── 203.json │ │ │ │ │ ├── 204.json │ │ │ │ │ ├── 205.json │ │ │ │ │ ├── 206.json │ │ │ │ │ ├── 207.json │ │ │ │ │ ├── 208.json │ │ │ │ │ ├── 209.json │ │ │ │ │ ├── 21.json │ │ │ │ │ ├── 212.json │ │ │ │ │ ├── 214.json │ │ │ │ │ ├── 215.json │ │ │ │ │ ├── 216.json │ │ │ │ │ ├── 217.json │ │ │ │ │ ├── 218.json │ │ │ │ │ ├── 219.json │ │ │ │ │ ├── 22.json │ │ │ │ │ ├── 220.json │ │ │ │ │ ├── 221.json │ │ │ │ │ ├── 222.json │ │ │ │ │ ├── 223.json │ │ │ │ │ ├── 224.json │ │ │ │ │ ├── 225.json │ │ │ │ │ ├── 226.json │ │ │ │ │ ├── 227.json │ │ │ │ │ ├── 229.json │ │ │ │ │ ├── 230.json │ │ │ │ │ ├── 231.json │ │ │ │ │ ├── 233.json │ │ │ │ │ ├── 234.json │ │ │ │ │ ├── 235.json │ │ │ │ │ ├── 236.json │ │ │ │ │ ├── 237.json │ │ │ │ │ ├── 238.json │ │ │ │ │ ├── 239.json │ │ │ │ │ ├── 240.json │ │ │ │ │ ├── 241.json │ │ │ │ │ ├── 242.json │ │ │ │ │ ├── 243.json │ │ │ │ │ ├── 244.json │ │ │ │ │ ├── 245.json │ │ │ │ │ ├── 246.json │ │ │ │ │ ├── 247.json │ │ │ │ │ ├── 248.json │ │ │ │ │ ├── 249.json │ │ │ │ │ ├── 250.json │ │ │ │ │ ├── 251.json │ │ │ │ │ ├── 252.json │ │ │ │ │ ├── 253.json │ │ │ │ │ ├── 254.json │ │ │ │ │ ├── 255.json │ │ │ │ │ ├── 256.json │ │ │ │ │ ├── 257.json │ │ │ │ │ ├── 258.json │ │ │ │ │ ├── 259.json │ │ │ │ │ ├── 26.json │ │ │ │ │ ├── 260.json │ │ │ │ │ ├── 261.json │ │ │ │ │ ├── 262.json │ │ │ │ │ ├── 263.json │ │ │ │ │ ├── 264.json │ │ │ │ │ ├── 265.json │ │ │ │ │ ├── 266.json │ │ │ │ │ ├── 267.json │ │ │ │ │ ├── 268.json │ │ │ │ │ ├── 27.json │ │ │ │ │ ├── 28.json │ │ │ │ │ ├── 29.json │ │ │ │ │ ├── 30.json │ │ │ │ │ ├── 31.json │ │ │ │ │ ├── 32.json │ │ │ │ │ ├── 33.json │ │ │ │ │ ├── 34.json │ │ │ │ │ ├── 35.json │ │ │ │ │ ├── 36.json │ │ │ │ │ ├── 37.json │ │ │ │ │ ├── 38.json │ │ │ │ │ ├── 39.json │ │ │ │ │ ├── 4.json │ │ │ │ │ ├── 40.json │ │ │ │ │ ├── 41.json │ │ │ │ │ ├── 42.json │ │ │ │ │ ├── 43.json │ │ │ │ │ ├── 44.json │ │ │ │ │ ├── 45.json │ │ │ │ │ ├── 46.json │ │ │ │ │ ├── 47.json │ │ │ │ │ ├── 48.json │ │ │ │ │ ├── 49.json │ │ │ │ │ ├── 5.json │ │ │ │ │ ├── 50.json │ │ │ │ │ ├── 51.json │ │ │ │ │ ├── 52.json │ │ │ │ │ ├── 53.json │ │ │ │ │ ├── 54.json │ │ │ │ │ ├── 55.json │ │ │ │ │ ├── 56.json │ │ │ │ │ ├── 57.json │ │ │ │ │ ├── 58.json │ │ │ │ │ ├── 59.json │ │ │ │ │ ├── 6.json │ │ │ │ │ ├── 60.json │ │ │ │ │ ├── 61.json │ │ │ │ │ ├── 62.json │ │ │ │ │ ├── 63.json │ │ │ │ │ ├── 64.json │ │ │ │ │ ├── 66.json │ │ │ │ │ ├── 67.json │ │ │ │ │ ├── 68.json │ │ │ │ │ ├── 69.json │ │ │ │ │ ├── 70.json │ │ │ │ │ ├── 71.json │ │ │ │ │ ├── 72.json │ │ │ │ │ ├── 73.json │ │ │ │ │ ├── 74.json │ │ │ │ │ ├── 75.json │ │ │ │ │ ├── 76.json │ │ │ │ │ ├── 77.json │ │ │ │ │ ├── 78.json │ │ │ │ │ ├── 79.json │ │ │ │ │ ├── 80.json │ │ │ │ │ ├── 81.json │ │ │ │ │ ├── 82.json │ │ │ │ │ ├── 83.json │ │ │ │ │ ├── 84.json │ │ │ │ │ ├── 85.json │ │ │ │ │ ├── 86.json │ │ │ │ │ ├── 87.json │ │ │ │ │ ├── 88.json │ │ │ │ │ ├── 89.json │ │ │ │ │ ├── 90.json │ │ │ │ │ ├── 91.json │ │ │ │ │ ├── 92.json │ │ │ │ │ ├── 93.json │ │ │ │ │ ├── 94.json │ │ │ │ │ ├── 95.json │ │ │ │ │ ├── 96.json │ │ │ │ │ ├── 97.json │ │ │ │ │ └── 98.json │ │ │ │ ├── e2e/ │ │ │ │ │ ├── ai/ │ │ │ │ │ │ ├── assistant-basic.spec.ts │ │ │ │ │ │ ├── assistant-code-help.spec.ts │ │ │ │ │ │ ├── assistant-credential-help.spec.ts │ │ │ │ │ │ ├── assistant-support-chat.spec.ts │ │ │ │ │ │ ├── builder-setup-wizard.spec.ts │ │ │ │ │ │ ├── chat-session.spec.ts │ │ │ │ │ │ ├── evaluations.spec.ts │ │ │ │ │ │ ├── hitl-for-tools.spec.ts │ │ │ │ │ │ ├── langchain-agents.spec.ts │ │ │ │ │ │ ├── langchain-chains.spec.ts │ │ │ │ │ │ ├── langchain-memory.spec.ts │ │ │ │ │ │ ├── langchain-tools.spec.ts │ │ │ │ │ │ ├── langchain-vectorstores.spec.ts │ │ │ │ │ │ ├── rag-callout.spec.ts │ │ │ │ │ │ └── workflow-builder.spec.ts │ │ │ │ │ ├── api/ │ │ │ │ │ │ ├── binary-data-xss.spec.ts │ │ │ │ │ │ ├── discovery.spec.ts │ │ │ │ │ │ ├── wait-form-resume.spec.ts │ │ │ │ │ │ ├── waiting-endpoint-security.spec.ts │ │ │ │ │ │ ├── webhook-external.spec.ts │ │ │ │ │ │ └── webhook-isolation.spec.ts │ │ │ │ │ ├── app-config/ │ │ │ │ │ │ ├── demo-reimport.spec.ts │ │ │ │ │ │ ├── demo.spec.ts │ │ │ │ │ │ ├── env-feature-flags.spec.ts │ │ │ │ │ │ ├── nps-survey.spec.ts │ │ │ │ │ │ ├── security-notifications.spec.ts │ │ │ │ │ │ └── versions.spec.ts │ │ │ │ │ ├── auth/ │ │ │ │ │ │ ├── admin-smoke.spec.ts │ │ │ │ │ │ ├── authenticated.spec.ts │ │ │ │ │ │ ├── oidc.spec.ts │ │ │ │ │ │ ├── password-reset.spec.ts │ │ │ │ │ │ └── signin.spec.ts │ │ │ │ │ ├── building-blocks/ │ │ │ │ │ │ ├── canvas-actions.spec.ts │ │ │ │ │ │ ├── credentials.spec.ts │ │ │ │ │ │ ├── node-details-configuration.spec.ts │ │ │ │ │ │ ├── user-service.spec.ts │ │ │ │ │ │ └── workflow-entry-points.spec.ts │ │ │ │ │ ├── capabilities/ │ │ │ │ │ │ ├── proxy-server.spec.ts │ │ │ │ │ │ └── task-runner.spec.ts │ │ │ │ │ ├── chat-hub/ │ │ │ │ │ │ ├── chat-hub-attachment.spec.ts │ │ │ │ │ │ ├── chat-hub-basic.spec.ts │ │ │ │ │ │ ├── chat-hub-chat-user.spec.ts │ │ │ │ │ │ ├── chat-hub-personal-agent.spec.ts │ │ │ │ │ │ ├── chat-hub-settings.spec.ts │ │ │ │ │ │ ├── chat-hub-tools.spec.ts │ │ │ │ │ │ ├── chat-hub-workflow-agent.spec.ts │ │ │ │ │ │ └── fixtures.ts │ │ │ │ │ ├── cloud/ │ │ │ │ │ │ └── cloud.spec.ts │ │ │ │ │ ├── credentials/ │ │ │ │ │ │ ├── api-operations.spec.ts │ │ │ │ │ │ ├── crud.spec.ts │ │ │ │ │ │ ├── global.spec.ts │ │ │ │ │ │ └── oauth.spec.ts │ │ │ │ │ ├── data-tables/ │ │ │ │ │ │ ├── details.spec.ts │ │ │ │ │ │ └── tables.spec.ts │ │ │ │ │ ├── dynamic-credentials/ │ │ │ │ │ │ ├── execution-status.spec.ts │ │ │ │ │ │ ├── external-user-trigger.spec.ts │ │ │ │ │ │ └── resolver-deletion.spec.ts │ │ │ │ │ ├── mcp/ │ │ │ │ │ │ └── mcp-service.spec.ts │ │ │ │ │ ├── node-creator/ │ │ │ │ │ │ ├── actions.spec.ts │ │ │ │ │ │ ├── categories.spec.ts │ │ │ │ │ │ ├── navigation.spec.ts │ │ │ │ │ │ ├── special-nodes.spec.ts │ │ │ │ │ │ ├── vector-stores.spec.ts │ │ │ │ │ │ └── workflows.spec.ts │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ ├── code-node-api.spec.ts │ │ │ │ │ │ ├── community-nodes.spec.ts │ │ │ │ │ │ ├── email-send-node.spec.ts │ │ │ │ │ │ ├── form-trigger-node.spec.ts │ │ │ │ │ │ ├── http-request-node.spec.ts │ │ │ │ │ │ ├── if-node.spec.ts │ │ │ │ │ │ ├── kafka-nodes.spec.ts │ │ │ │ │ │ ├── mcp-trigger.spec.ts │ │ │ │ │ │ ├── n8n-trigger.spec.ts │ │ │ │ │ │ ├── pdf-node.spec.ts │ │ │ │ │ │ ├── schedule-trigger-node.spec.ts │ │ │ │ │ │ ├── send-and-wait.spec.ts │ │ │ │ │ │ └── webhook.spec.ts │ │ │ │ │ ├── projects/ │ │ │ │ │ │ ├── folders-advanced.spec.ts │ │ │ │ │ │ ├── folders-basic.spec.ts │ │ │ │ │ │ ├── folders-operations.spec.ts │ │ │ │ │ │ ├── project-settings.spec.ts │ │ │ │ │ │ ├── projects-move-resources.spec.ts │ │ │ │ │ │ └── projects.spec.ts │ │ │ │ │ ├── regression/ │ │ │ │ │ │ ├── ADO-1338-ndv-missing-input-panel.spec.ts │ │ │ │ │ │ ├── ADO-2230-ndv-reset-data-pagination.spec.ts │ │ │ │ │ │ ├── ADO-2372-prevent-clipping-params.spec.ts │ │ │ │ │ │ ├── ADO-2929-can-load-old-switch-node-workflows.spec.ts │ │ │ │ │ │ ├── ADO-4462-template-setup-experiment.spec.ts │ │ │ │ │ │ ├── AI-1401-sub-nodes-input-panel.spec.ts │ │ │ │ │ │ ├── AI-716-correctly-set-up-agent-model-shows-error.spec.ts │ │ │ │ │ │ ├── AI-812-partial-execs-broken-when-using-chat-trigger.spec.ts │ │ │ │ │ │ ├── CAT-726-canvas-node-connectors-not-rendered-when-nodes-inserted.spec.ts │ │ │ │ │ │ ├── PAY-4367-node-shifting-cyclic.spec.ts │ │ │ │ │ │ ├── SUG-121-fields-reset-after-closing-ndv.spec.ts │ │ │ │ │ │ └── SUG-38-inline-expression-preview.spec.ts │ │ │ │ │ ├── sentry/ │ │ │ │ │ │ └── sentry-baseline.spec.ts │ │ │ │ │ ├── settings/ │ │ │ │ │ │ ├── community-nodes/ │ │ │ │ │ │ │ └── community-nodes.spec.ts │ │ │ │ │ │ ├── environments/ │ │ │ │ │ │ │ ├── source-control.spec.ts │ │ │ │ │ │ │ └── variables.spec.ts │ │ │ │ │ │ ├── external-secrets/ │ │ │ │ │ │ │ ├── aws-secrets-manager.spec.ts │ │ │ │ │ │ │ ├── secret-providers-connections-ui.spec.ts │ │ │ │ │ │ │ └── secret-providers-connections.spec.ts │ │ │ │ │ │ ├── log-streaming/ │ │ │ │ │ │ │ ├── log-streaming-observability.spec.ts │ │ │ │ │ │ │ ├── log-streaming-ui-e2e.spec.ts │ │ │ │ │ │ │ └── log-streaming.spec.ts │ │ │ │ │ │ ├── personal/ │ │ │ │ │ │ │ ├── personal.spec.ts │ │ │ │ │ │ │ └── two-factor-authentication.spec.ts │ │ │ │ │ │ ├── users/ │ │ │ │ │ │ │ └── users.spec.ts │ │ │ │ │ │ └── workers/ │ │ │ │ │ │ └── workers.spec.ts │ │ │ │ │ ├── sharing/ │ │ │ │ │ │ ├── access-control.spec.ts │ │ │ │ │ │ ├── credential-sharing.spec.ts │ │ │ │ │ │ ├── credential-visibility.spec.ts │ │ │ │ │ │ └── workflow-sharing.spec.ts │ │ │ │ │ ├── source-control/ │ │ │ │ │ │ ├── pull.spec.ts │ │ │ │ │ │ └── push.spec.ts │ │ │ │ │ └── workflows/ │ │ │ │ │ ├── checklist/ │ │ │ │ │ │ └── production-checklist.spec.ts │ │ │ │ │ ├── demo-diff.spec.ts │ │ │ │ │ ├── editor/ │ │ │ │ │ │ ├── canvas/ │ │ │ │ │ │ │ ├── actions.spec.ts │ │ │ │ │ │ │ ├── canvas-nodes.spec.ts │ │ │ │ │ │ │ ├── canvas-zoom.spec.ts │ │ │ │ │ │ │ ├── focus-panel.spec.ts │ │ │ │ │ │ │ ├── stickies.spec.ts │ │ │ │ │ │ │ └── undo-redo.spec.ts │ │ │ │ │ │ ├── code/ │ │ │ │ │ │ │ ├── code-node.spec.ts │ │ │ │ │ │ │ └── editors.spec.ts │ │ │ │ │ │ ├── editor-after-route-changes.spec.ts │ │ │ │ │ │ ├── execution/ │ │ │ │ │ │ │ ├── debug.spec.ts │ │ │ │ │ │ │ ├── execution.spec.ts │ │ │ │ │ │ │ ├── inject-previous.spec.ts │ │ │ │ │ │ │ ├── logs.spec.ts │ │ │ │ │ │ │ ├── partial.spec.ts │ │ │ │ │ │ │ └── previous-nodes.spec.ts │ │ │ │ │ │ ├── expressions/ │ │ │ │ │ │ │ ├── inline.spec.ts │ │ │ │ │ │ │ ├── mapping.spec.ts │ │ │ │ │ │ │ ├── modal.spec.ts │ │ │ │ │ │ │ └── transformation.spec.ts │ │ │ │ │ │ ├── ndv/ │ │ │ │ │ │ │ ├── io-filter.spec.ts │ │ │ │ │ │ │ ├── ndv-core.spec.ts │ │ │ │ │ │ │ ├── ndv-data-display.spec.ts │ │ │ │ │ │ │ ├── ndv-floating-nodes.spec.ts │ │ │ │ │ │ │ ├── ndv-parameters.spec.ts │ │ │ │ │ │ │ ├── paired-item.spec.ts │ │ │ │ │ │ │ ├── pinning.spec.ts │ │ │ │ │ │ │ ├── resource-locator.spec.ts │ │ │ │ │ │ │ ├── resource-mapper.spec.ts │ │ │ │ │ │ │ └── schema-preview.spec.ts │ │ │ │ │ │ ├── routing.spec.ts │ │ │ │ │ │ ├── subworkflows/ │ │ │ │ │ │ │ ├── debugging.spec.ts │ │ │ │ │ │ │ ├── extraction.spec.ts │ │ │ │ │ │ │ ├── subworkflow-version-resolution.spec.ts │ │ │ │ │ │ │ ├── wait.spec.ts │ │ │ │ │ │ │ └── workflow-selector.spec.ts │ │ │ │ │ │ ├── tags.spec.ts │ │ │ │ │ │ ├── viewer-permissions.spec.ts │ │ │ │ │ │ └── workflow-actions/ │ │ │ │ │ │ ├── archive.spec.ts │ │ │ │ │ │ ├── copy-paste.spec.ts │ │ │ │ │ │ ├── duplicate.spec.ts │ │ │ │ │ │ ├── publish.spec.ts │ │ │ │ │ │ ├── run.spec.ts │ │ │ │ │ │ └── settings.spec.ts │ │ │ │ │ ├── executions/ │ │ │ │ │ │ ├── filter.spec.ts │ │ │ │ │ │ └── list.spec.ts │ │ │ │ │ ├── list/ │ │ │ │ │ │ ├── import.spec.ts │ │ │ │ │ │ └── workflows.spec.ts │ │ │ │ │ └── templates/ │ │ │ │ │ ├── credentials-setup.spec.ts │ │ │ │ │ └── templates.spec.ts │ │ │ │ ├── infrastructure/ │ │ │ │ │ ├── benchmarks/ │ │ │ │ │ │ ├── harness/ │ │ │ │ │ │ │ ├── load-harness.ts │ │ │ │ │ │ │ ├── throughput-harness.ts │ │ │ │ │ │ │ └── webhook-throughput-harness.ts │ │ │ │ │ │ ├── kafka/ │ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ │ ├── load-30n-10kb-steady-200.spec.ts │ │ │ │ │ │ │ ├── load-30n-10kb-steady-300.spec.ts │ │ │ │ │ │ │ ├── load-30n-10kb-steady.spec.ts │ │ │ │ │ │ │ ├── load-60n-1kb-burst.spec.ts │ │ │ │ │ │ │ ├── throughput-10n-100kb.spec.ts │ │ │ │ │ │ │ ├── throughput-10n-10kb.spec.ts │ │ │ │ │ │ │ ├── throughput-30n-10kb.spec.ts │ │ │ │ │ │ │ └── throughput-60n-10kb.spec.ts │ │ │ │ │ │ └── webhook/ │ │ │ │ │ │ ├── throughput-async.spec.ts │ │ │ │ │ │ └── throughput-sync.spec.ts │ │ │ │ │ ├── chaos/ │ │ │ │ │ │ ├── multimain.spec.ts │ │ │ │ │ │ └── postgres.spec.ts │ │ │ │ │ └── observability/ │ │ │ │ │ └── multi-main-observability.spec.ts │ │ │ │ └── performance/ │ │ │ │ ├── README.md │ │ │ │ ├── large-node-cloud.spec.ts │ │ │ │ ├── memory-consumption-cloud.spec.ts │ │ │ │ └── memory-retention.spec.ts │ │ │ ├── tsconfig.json │ │ │ ├── utils/ │ │ │ │ ├── benchmark/ │ │ │ │ │ ├── diagnostics.ts │ │ │ │ │ ├── execution-sampler.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── kafka-driver.ts │ │ │ │ │ ├── throughput-measure.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── webhook-driver.ts │ │ │ │ │ └── workflow-builder.ts │ │ │ │ ├── index-helper.ts │ │ │ │ ├── path-helper.ts │ │ │ │ ├── performance-helper.ts │ │ │ │ ├── requirements.ts │ │ │ │ ├── retry-utils.ts │ │ │ │ ├── source-control-helper.ts │ │ │ │ └── url-helper.ts │ │ │ └── workflows/ │ │ │ ├── Bug_node_insertions_between_stickies.json │ │ │ ├── Bug_node_insertions_sticky.json │ │ │ ├── Check_manual_node_run_for_pinned_and_rundata.json │ │ │ ├── Custom_credential.json │ │ │ ├── Custom_node.json │ │ │ ├── Custom_node_custom_credential.json │ │ │ ├── Custom_node_n8n_credential.json │ │ │ ├── Cyclic_workflow_for_insertion_test.json │ │ │ ├── Ecommerce_starter_pack_template_collection.json │ │ │ ├── Floating_Nodes.json │ │ │ ├── In_memory_vector_store_fake_embeddings.json │ │ │ ├── Lots_of_nodes.json │ │ │ ├── Manual_wait_set.json │ │ │ ├── Multiple_trigger_node_rerun.json │ │ │ ├── NDV-debug-generate-data.json │ │ │ ├── NDV-test-select-input.json │ │ │ ├── Node_IO_filter.json │ │ │ ├── Onboarding_workflow.json │ │ │ ├── Pinned_webhook_node.json │ │ │ ├── Simple_chain_4nodes.json │ │ │ ├── Simple_workflow_with_http_node.json │ │ │ ├── Subworkflow-debugging-execute-workflow.json │ │ │ ├── Subworkflow-extraction-disconnected.json │ │ │ ├── Subworkflow-extraction-workflow.json │ │ │ ├── Switch_node_with_null_connection.json │ │ │ ├── Test-workflow-with-long-parameters.json │ │ │ ├── Test_9999_SUG_38.json │ │ │ ├── Test_Subworkflow_Get_Weather.json │ │ │ ├── Test_Subworkflow_Search_DB.json │ │ │ ├── Test_Template_1.json │ │ │ ├── Test_Template_2.json │ │ │ ├── Test_Workflow_pairedItem_incomplete_manual_bug.json │ │ │ ├── Test_ado_1338.json │ │ │ ├── Test_ai_1401.json │ │ │ ├── Test_chat_partial_execution.json │ │ │ ├── Test_ndv_search.json │ │ │ ├── Test_ndv_two_branches_of_same_parent_false_populated.json │ │ │ ├── Test_workflow-actions_import_nodes_empty_name.json │ │ │ ├── Test_workflow-actions_paste-data.json │ │ │ ├── Test_workflow_4_executions_view.json │ │ │ ├── Test_workflow_chat_partial_execution.json │ │ │ ├── Test_workflow_filter.json │ │ │ ├── Test_workflow_form_switch.json │ │ │ ├── Test_workflow_multiple_outputs.json │ │ │ ├── Test_workflow_ndv_errors.json │ │ │ ├── Test_workflow_ndv_paired_item_single_output.json │ │ │ ├── Test_workflow_ndv_run_error.json │ │ │ ├── Test_workflow_ndv_version.json │ │ │ ├── Test_workflow_partial_execution_v2.json │ │ │ ├── Test_workflow_partial_execution_with_missing_credentials.json │ │ │ ├── Test_workflow_schema_test.json │ │ │ ├── Test_workflow_schema_test_pinned_data.json │ │ │ ├── Test_workflow_webhook_with_pin_data.json │ │ │ ├── Test_workflow_xml_output.json │ │ │ ├── Two_schedule_triggers.json │ │ │ ├── Webhook_set_pinned.json │ │ │ ├── Webhook_wait_set.json │ │ │ ├── Workflow_ai_agent.json │ │ │ ├── Workflow_if.json │ │ │ ├── Workflow_loop.json │ │ │ ├── Workflow_template_write_http_query.json │ │ │ ├── Workflow_wait_for_webhook.json │ │ │ ├── ai_assistant_test_workflow.json │ │ │ ├── all_templates_search_response.json │ │ │ ├── cat-1801-child.json │ │ │ ├── cat-1801-parent.json │ │ │ ├── cat-1854-wait-execution-history.json │ │ │ ├── cat-1929-child-two-waits.json │ │ │ ├── cat-1929-parent.json │ │ │ ├── chat-hub-workflow-agent.json │ │ │ ├── evaluations_loop.json │ │ │ ├── execute-previous-nodes.json │ │ │ ├── expression_with_paired_item_in_multi_input_node.json │ │ │ ├── large.json │ │ │ ├── manual-partial-execution.json │ │ │ ├── manual-trigger-with-code.json │ │ │ ├── manual.json │ │ │ ├── mcp-service/ │ │ │ │ ├── mcp-available-basic.json │ │ │ │ ├── mcp-available-webhook.json │ │ │ │ └── mcp-unavailable.json │ │ │ ├── mcp-trigger/ │ │ │ │ ├── mcp-trigger-basic.json │ │ │ │ ├── mcp-trigger-bearer-auth.json │ │ │ │ ├── mcp-trigger-header-auth.json │ │ │ │ └── mcp-trigger-multi-tool.json │ │ │ ├── merge_node_inputs_paired_items.json │ │ │ ├── multi-branch-data-transform.json │ │ │ ├── open_node_creator_for_connection.json │ │ │ ├── sales_templates_search_response.json │ │ │ ├── schedule-trigger-with-set-nodes.json │ │ │ ├── send-and-wait-approval.json │ │ │ ├── send-and-wait-form.json │ │ │ ├── simple-webhook-test.json │ │ │ ├── subworkflow-noop-child.json │ │ │ ├── subworkflow-parent-no-wait.json │ │ │ ├── subworkflow-version-child.json │ │ │ ├── subworkflow-version-parent.json │ │ │ ├── subworkflow-wait-child.json │ │ │ ├── subworkflow-waiting-parent-no-child-wait.json │ │ │ ├── test_pdf_workflow.json │ │ │ ├── wait-form-resume.json │ │ │ ├── wait-webhook-resume.json │ │ │ ├── webhook-misconfiguration-test.json │ │ │ ├── webhook-origin-isolation.json │ │ │ ├── webhook-publish-local-conflict.json │ │ │ ├── webhook-publish-no-conflicts.json │ │ │ ├── webhook-publish-with-wait-node.json │ │ │ └── workflow-with-unknown-credentials.json │ │ └── rules-engine/ │ │ ├── README.md │ │ ├── eslint.config.mjs │ │ ├── package.json │ │ ├── src/ │ │ │ ├── base-rule.test.ts │ │ │ ├── base-rule.ts │ │ │ ├── baseline.test.ts │ │ │ ├── baseline.ts │ │ │ ├── index.ts │ │ │ ├── reporter.test.ts │ │ │ ├── reporter.ts │ │ │ ├── rule-runner.test.ts │ │ │ ├── rule-runner.ts │ │ │ └── types.ts │ │ ├── tsconfig.build.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ └── workflow/ │ ├── README.md │ ├── eslint.config.mjs │ ├── jest.config.js │ ├── package.json │ ├── src/ │ │ ├── augment-object.ts │ │ ├── common/ │ │ │ ├── get-child-nodes.ts │ │ │ ├── get-connected-nodes.ts │ │ │ ├── get-node-by-name.ts │ │ │ ├── get-parent-nodes.ts │ │ │ ├── index.ts │ │ │ └── map-connections-by-destination.ts │ │ ├── connections-diff.ts │ │ ├── constants.ts │ │ ├── cron.ts │ │ ├── data-table.types.ts │ │ ├── deferred-promise.ts │ │ ├── errors/ │ │ │ ├── abstract/ │ │ │ │ ├── execution-base.error.ts │ │ │ │ └── node.error.ts │ │ │ ├── base/ │ │ │ │ ├── base.error.ts │ │ │ │ ├── operational.error.ts │ │ │ │ ├── unexpected.error.ts │ │ │ │ └── user.error.ts │ │ │ ├── cli-subworkflow-operation.error.ts │ │ │ ├── db-connection-timeout-error.ts │ │ │ ├── ensure-error.ts │ │ │ ├── execution-cancelled.error.ts │ │ │ ├── expression-class-extension.error.ts │ │ │ ├── expression-computed-destructuring.error.ts │ │ │ ├── expression-destructuring.error.ts │ │ │ ├── expression-extension.error.ts │ │ │ ├── expression-reserved-variable.error.ts │ │ │ ├── expression-with-statement.error.ts │ │ │ ├── expression.error.ts │ │ │ ├── index.ts │ │ │ ├── node-api.error.ts │ │ │ ├── node-operation.error.ts │ │ │ ├── node-ssl.error.ts │ │ │ ├── subworkflow-operation.error.ts │ │ │ ├── trigger-close.error.ts │ │ │ ├── webhook-taken.error.ts │ │ │ ├── workflow-activation.error.ts │ │ │ ├── workflow-configuration.error.ts │ │ │ ├── workflow-deactivation.error.ts │ │ │ └── workflow-operation.error.ts │ │ ├── evaluation-helpers.ts │ │ ├── execution-context-establishment-hooks.ts │ │ ├── execution-context.ts │ │ ├── execution-status.ts │ │ ├── expression-evaluator-proxy.ts │ │ ├── expression-sandboxing.ts │ │ ├── expression.ts │ │ ├── expressions/ │ │ │ └── expression-helpers.ts │ │ ├── extensions/ │ │ │ ├── array-extensions.ts │ │ │ ├── boolean-extensions.ts │ │ │ ├── date-extensions.ts │ │ │ ├── expression-extension.ts │ │ │ ├── expression-parser.ts │ │ │ ├── extended-functions.ts │ │ │ ├── extensions.ts │ │ │ ├── index.ts │ │ │ ├── number-extensions.ts │ │ │ ├── object-extensions.ts │ │ │ ├── string-extensions.ts │ │ │ └── utils.ts │ │ ├── from-ai-parse-utils.ts │ │ ├── global-state.ts │ │ ├── graph/ │ │ │ └── graph-utils.ts │ │ ├── index.ts │ │ ├── interfaces.ts │ │ ├── logger-proxy.ts │ │ ├── message-event-bus.ts │ │ ├── metadata-utils.ts │ │ ├── native-methods/ │ │ │ ├── array.methods.ts │ │ │ ├── boolean.methods.ts │ │ │ ├── index.ts │ │ │ ├── number.methods.ts │ │ │ ├── object.methods.ts │ │ │ └── string.methods.ts │ │ ├── node-helpers.ts │ │ ├── node-parameters/ │ │ │ ├── filter-parameter.ts │ │ │ ├── node-parameter-value-type-guard.ts │ │ │ ├── parameter-type-validation.ts │ │ │ ├── path-utils.ts │ │ │ └── rename-node-utils.ts │ │ ├── node-reference-parser-utils.ts │ │ ├── node-validation.ts │ │ ├── observable-object.ts │ │ ├── result.ts │ │ ├── run-execution-data/ │ │ │ ├── run-execution-data.ts │ │ │ ├── run-execution-data.v0.ts │ │ │ └── run-execution-data.v1.ts │ │ ├── run-execution-data-factory.ts │ │ ├── schemas.ts │ │ ├── telemetry-helpers.ts │ │ ├── tool-helpers.ts │ │ ├── type-guards.ts │ │ ├── type-validation.ts │ │ ├── types.d.ts │ │ ├── utils.ts │ │ ├── versioned-node-type.ts │ │ ├── workflow-checksum.ts │ │ ├── workflow-data-proxy-env-provider.ts │ │ ├── workflow-data-proxy-helpers.ts │ │ ├── workflow-data-proxy.ts │ │ ├── workflow-diff.ts │ │ ├── workflow-environments-helper.ts │ │ ├── workflow-expression.ts │ │ ├── workflow-validation.ts │ │ └── workflow.ts │ ├── test/ │ │ ├── ExpressionExtensions/ │ │ │ ├── array-extensions.test.ts │ │ │ ├── boolean-extensions.test.ts │ │ │ ├── date-extensions.test.ts │ │ │ ├── expression-extension.test.ts │ │ │ ├── generic-extensions.test.ts │ │ │ ├── helpers.ts │ │ │ ├── number-extensions.test.ts │ │ │ ├── object-extensions.test.ts │ │ │ └── string-extensions.test.ts │ │ ├── ExpressionFixtures/ │ │ │ └── base.ts │ │ ├── augment-object.test.ts │ │ ├── common.test.ts │ │ ├── connections-diff.test.ts │ │ ├── cron.test.ts │ │ ├── deferred-promise.test.ts │ │ ├── errors/ │ │ │ ├── base/ │ │ │ │ ├── operational.error.test.ts │ │ │ │ ├── unexpected.error.test.ts │ │ │ │ └── user.error.test.ts │ │ │ ├── node.error.test.ts │ │ │ └── workflow-activation.error.test.ts │ │ ├── expression-sandboxing.test.ts │ │ ├── expression-vm-errors.test.ts │ │ ├── expression.test.ts │ │ ├── expressions/ │ │ │ └── expression-helpers.test.ts │ │ ├── filter-parameter.test.ts │ │ ├── fixtures/ │ │ │ └── WorkflowDataProxy/ │ │ │ ├── agentInfo_run.json │ │ │ ├── agentInfo_workflow.json │ │ │ ├── base_run.json │ │ │ ├── base_workflow.json │ │ │ ├── errors_run.json │ │ │ ├── errors_workflow.json │ │ │ ├── from_ai_multiple_items_run.json │ │ │ ├── from_ai_multiple_items_workflow.json │ │ │ ├── from_ai_tool_alias_run.json │ │ │ ├── from_ai_tool_alias_workflow.json │ │ │ ├── memory_with_disconnected_tool_run.json │ │ │ ├── memory_with_disconnected_tool_workflow.json │ │ │ ├── multiple_inputs_run.json │ │ │ ├── multiple_inputs_workflow.json │ │ │ ├── multiple_outputs_run.json │ │ │ ├── multiple_outputs_workflow.json │ │ │ ├── partial_data_run.json │ │ │ ├── partial_data_workflow.json │ │ │ ├── pindata_paireditem_run.json │ │ │ ├── pindata_paireditem_workflow.json │ │ │ ├── pindata_run.json │ │ │ ├── pindata_workflow.json │ │ │ ├── rawParameter_run.json │ │ │ └── rawParameter_workflow.json │ │ ├── from-ai-parse-utils.test.ts │ │ ├── graph/ │ │ │ └── graph-utils.test.ts │ │ ├── helpers.ts │ │ ├── metadata-utils.test.ts │ │ ├── node-errors.test.ts │ │ ├── node-helpers.conditions.test.ts │ │ ├── node-helpers.test.ts │ │ ├── node-parameters/ │ │ │ ├── node-parameter-value-type-guard.test.ts │ │ │ ├── parameter-type-validation.test.ts │ │ │ └── path-utils.test.ts │ │ ├── node-reference-parser-utils.test.ts │ │ ├── node-types.ts │ │ ├── node-validation.test.ts │ │ ├── observable-object.test.ts │ │ ├── rename-node-utils.test.ts │ │ ├── resolve-node-webhook-id.test.ts │ │ ├── run-execution-data/ │ │ │ └── run-execution-data.test.ts │ │ ├── run-execution-data-factory.test.ts │ │ ├── setup-vm-evaluator.ts │ │ ├── telemetry-helpers.test.ts │ │ ├── tool-helpers.test.ts │ │ ├── type-validation.test.ts │ │ ├── utils.test.ts │ │ ├── workflow-checksum.test.ts │ │ ├── workflow-data-proxy-env-provider.test.ts │ │ ├── workflow-data-proxy.test.ts │ │ ├── workflow-diff.test.ts │ │ ├── workflow-environments-helper.test.ts │ │ ├── workflow-expression.test.ts │ │ ├── workflow-validation.test.ts │ │ └── workflow.test.ts │ ├── tsconfig.build.cjs.json │ ├── tsconfig.build.esm.json │ ├── tsconfig.json │ └── vitest.config.ts ├── patches/ │ ├── @lezer__highlight.patch │ ├── @types__express-serve-static-core@5.0.6.patch │ ├── @types__uuencode@0.0.3.patch │ ├── @types__ws@8.18.1.patch │ ├── assert@2.1.0.patch │ ├── bull@4.16.4.patch │ ├── element-plus@2.4.3.patch │ ├── ics.patch │ ├── js-base64.patch │ ├── minifaker.patch │ ├── pdfjs-dist@5.3.31.patch │ ├── pkce-challenge@5.0.0.patch │ ├── v-code-diff.patch │ ├── vue-tsc@2.2.8.patch │ └── z-vue-scan.patch ├── pnpm-workspace.yaml ├── renovate.json ├── scripts/ │ ├── backend-module/ │ │ ├── backend-module-guide.md │ │ ├── my-feature.config.template │ │ ├── my-feature.controller.template │ │ ├── my-feature.entity.template │ │ ├── my-feature.module.template │ │ ├── my-feature.repository.template │ │ ├── my-feature.service.template │ │ ├── my-feature.service.test.template │ │ └── setup.mjs │ ├── block-npm-install.js │ ├── build-n8n.mjs │ ├── check-workspace-deps.mjs │ ├── dockerize-n8n.mjs │ ├── ensure-zx.mjs │ ├── format.mjs │ ├── generate-third-party-licenses.mjs │ ├── os-normalize.mjs │ ├── prepare.mjs │ ├── reset.mjs │ ├── scan-n8n-image.mjs │ └── third-party-license-format.json ├── security/ │ ├── trivy-ignore-policy.rego │ ├── trivy.yaml │ └── vex.openvex.json ├── tsconfig.json ├── turbo.json └── vitest.workspace.ts