@n8n/workflow-sdk 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +88 -0
- package/README.md +30 -0
- package/dist/ast-interpreter/errors.d.ts +19 -0
- package/dist/ast-interpreter/errors.js +64 -0
- package/dist/ast-interpreter/errors.js.map +1 -0
- package/dist/ast-interpreter/index.d.ts +5 -0
- package/dist/ast-interpreter/index.js +18 -0
- package/dist/ast-interpreter/index.js.map +1 -0
- package/dist/ast-interpreter/interpreter.d.ts +2 -0
- package/dist/ast-interpreter/interpreter.js +471 -0
- package/dist/ast-interpreter/interpreter.js.map +1 -0
- package/dist/ast-interpreter/parser.d.ts +2 -0
- package/dist/ast-interpreter/parser.js +61 -0
- package/dist/ast-interpreter/parser.js.map +1 -0
- package/dist/ast-interpreter/validators.d.ts +13 -0
- package/dist/ast-interpreter/validators.js +243 -0
- package/dist/ast-interpreter/validators.js.map +1 -0
- package/dist/build.tsbuildinfo +1 -0
- package/dist/cli/code-to-json.d.ts +1 -0
- package/dist/cli/code-to-json.js +51 -0
- package/dist/cli/code-to-json.js.map +1 -0
- package/dist/cli/index.d.ts +2 -0
- package/dist/cli/index.js +25 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/json-to-code.d.ts +1 -0
- package/dist/cli/json-to-code.js +60 -0
- package/dist/cli/json-to-code.js.map +1 -0
- package/dist/cli/utils.d.ts +1 -0
- package/dist/cli/utils.js +16 -0
- package/dist/cli/utils.js.map +1 -0
- package/dist/codegen/code-generator.d.ts +14 -0
- package/dist/codegen/code-generator.js +807 -0
- package/dist/codegen/code-generator.js.map +1 -0
- package/dist/codegen/composite-builder.d.ts +3 -0
- package/dist/codegen/composite-builder.js +718 -0
- package/dist/codegen/composite-builder.js.map +1 -0
- package/dist/codegen/composite-handlers/build-utils.d.ts +24 -0
- package/dist/codegen/composite-handlers/build-utils.js +79 -0
- package/dist/codegen/composite-handlers/build-utils.js.map +1 -0
- package/dist/codegen/composite-handlers/error-handler.d.ts +6 -0
- package/dist/codegen/composite-handlers/error-handler.js +51 -0
- package/dist/codegen/composite-handlers/error-handler.js.map +1 -0
- package/dist/codegen/composite-handlers/if-else-handler.d.ts +5 -0
- package/dist/codegen/composite-handlers/if-else-handler.js +57 -0
- package/dist/codegen/composite-handlers/if-else-handler.js.map +1 -0
- package/dist/codegen/composite-handlers/index.d.ts +1 -0
- package/dist/codegen/composite-handlers/index.js +17 -0
- package/dist/codegen/composite-handlers/index.js.map +1 -0
- package/dist/codegen/composite-handlers/merge-handler.d.ts +5 -0
- package/dist/codegen/composite-handlers/merge-handler.js +25 -0
- package/dist/codegen/composite-handlers/merge-handler.js.map +1 -0
- package/dist/codegen/composite-handlers/sib-handler.d.ts +5 -0
- package/dist/codegen/composite-handlers/sib-handler.js +57 -0
- package/dist/codegen/composite-handlers/sib-handler.js.map +1 -0
- package/dist/codegen/composite-handlers/switch-case-handler.d.ts +5 -0
- package/dist/codegen/composite-handlers/switch-case-handler.js +80 -0
- package/dist/codegen/composite-handlers/switch-case-handler.js.map +1 -0
- package/dist/codegen/composite-tree.d.ts +81 -0
- package/dist/codegen/composite-tree.js +3 -0
- package/dist/codegen/composite-tree.js.map +1 -0
- package/dist/codegen/config-builder.d.ts +7 -0
- package/dist/codegen/config-builder.js +22 -0
- package/dist/codegen/config-builder.js.map +1 -0
- package/dist/codegen/constants.d.ts +5 -0
- package/dist/codegen/constants.js +30 -0
- package/dist/codegen/constants.js.map +1 -0
- package/dist/codegen/deferred-connections.d.ts +20 -0
- package/dist/codegen/deferred-connections.js +46 -0
- package/dist/codegen/deferred-connections.js.map +1 -0
- package/dist/codegen/execution-schema-jsdoc.d.ts +3 -0
- package/dist/codegen/execution-schema-jsdoc.js +109 -0
- package/dist/codegen/execution-schema-jsdoc.js.map +1 -0
- package/dist/codegen/execution-status.d.ts +9 -0
- package/dist/codegen/execution-status.js +42 -0
- package/dist/codegen/execution-status.js.map +1 -0
- package/dist/codegen/expression-annotator.d.ts +2 -0
- package/dist/codegen/expression-annotator.js +38 -0
- package/dist/codegen/expression-annotator.js.map +1 -0
- package/dist/codegen/graph-annotator.d.ts +2 -0
- package/dist/codegen/graph-annotator.js +107 -0
- package/dist/codegen/graph-annotator.js.map +1 -0
- package/dist/codegen/index.d.ts +20 -0
- package/dist/codegen/index.js +60 -0
- package/dist/codegen/index.js.map +1 -0
- package/dist/codegen/merge-pattern.d.ts +12 -0
- package/dist/codegen/merge-pattern.js +119 -0
- package/dist/codegen/merge-pattern.js.map +1 -0
- package/dist/codegen/node-type-utils.d.ts +4 -0
- package/dist/codegen/node-type-utils.js +38 -0
- package/dist/codegen/node-type-utils.js.map +1 -0
- package/dist/codegen/output-utils.d.ts +9 -0
- package/dist/codegen/output-utils.js +68 -0
- package/dist/codegen/output-utils.js.map +1 -0
- package/dist/codegen/parse-workflow-code.d.ts +3 -0
- package/dist/codegen/parse-workflow-code.js +438 -0
- package/dist/codegen/parse-workflow-code.js.map +1 -0
- package/dist/codegen/semantic-graph.d.ts +3 -0
- package/dist/codegen/semantic-graph.js +216 -0
- package/dist/codegen/semantic-graph.js.map +1 -0
- package/dist/codegen/semantic-registry.d.ts +18 -0
- package/dist/codegen/semantic-registry.js +102 -0
- package/dist/codegen/semantic-registry.js.map +1 -0
- package/dist/codegen/sib-merge-handler.d.ts +20 -0
- package/dist/codegen/sib-merge-handler.js +92 -0
- package/dist/codegen/sib-merge-handler.js.map +1 -0
- package/dist/codegen/string-utils.d.ts +6 -0
- package/dist/codegen/string-utils.js +38 -0
- package/dist/codegen/string-utils.js.map +1 -0
- package/dist/codegen/subnode-generator.d.ts +17 -0
- package/dist/codegen/subnode-generator.js +219 -0
- package/dist/codegen/subnode-generator.js.map +1 -0
- package/dist/codegen/types.d.ts +40 -0
- package/dist/codegen/types.js +16 -0
- package/dist/codegen/types.js.map +1 -0
- package/dist/codegen/variable-names.d.ts +8 -0
- package/dist/codegen/variable-names.js +121 -0
- package/dist/codegen/variable-names.js.map +1 -0
- package/dist/constants/index.d.ts +1 -0
- package/dist/constants/index.js +14 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/constants/node-types.d.ts +19 -0
- package/dist/constants/node-types.js +46 -0
- package/dist/constants/node-types.js.map +1 -0
- package/dist/expression/index.d.ts +6 -0
- package/dist/expression/index.js +181 -0
- package/dist/expression/index.js.map +1 -0
- package/dist/expression.d.ts +1 -0
- package/dist/expression.js +10 -0
- package/dist/expression.js.map +1 -0
- package/dist/generate-types/generate-node-defs-cli.d.ts +7 -0
- package/dist/generate-types/generate-node-defs-cli.js +99 -0
- package/dist/generate-types/generate-node-defs-cli.js.map +1 -0
- package/dist/generate-types/generate-types.d.ts +163 -0
- package/dist/generate-types/generate-types.js +2569 -0
- package/dist/generate-types/generate-types.js.map +1 -0
- package/dist/generate-types/generate-zod-schemas.d.ts +41 -0
- package/dist/generate-types/generate-zod-schemas.js +1129 -0
- package/dist/generate-types/generate-zod-schemas.js.map +1 -0
- package/dist/generate-types/index.d.ts +3 -0
- package/dist/generate-types/index.js +62 -0
- package/dist/generate-types/index.js.map +1 -0
- package/dist/generate-types/zod-helpers.d.ts +189 -0
- package/dist/generate-types/zod-helpers.js +76 -0
- package/dist/generate-types/zod-helpers.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.js +87 -0
- package/dist/index.js.map +1 -0
- package/dist/types/aliases.d.ts +5 -0
- package/dist/types/aliases.js +3 -0
- package/dist/types/aliases.js.map +1 -0
- package/dist/types/base.d.ts +395 -0
- package/dist/types/base.js +22 -0
- package/dist/types/base.js.map +1 -0
- package/dist/utils/code-helpers.d.ts +7 -0
- package/dist/utils/code-helpers.js +47 -0
- package/dist/utils/code-helpers.js.map +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.js +11 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/safe-access.d.ts +3 -0
- package/dist/utils/safe-access.js +21 -0
- package/dist/utils/safe-access.js.map +1 -0
- package/dist/utils/trigger-detection.d.ts +1 -0
- package/dist/utils/trigger-detection.js +17 -0
- package/dist/utils/trigger-detection.js.map +1 -0
- package/dist/validation/display-options.d.ts +18 -0
- package/dist/validation/display-options.js +194 -0
- package/dist/validation/display-options.js.map +1 -0
- package/dist/validation/index.d.ts +34 -0
- package/dist/validation/index.js +428 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/input-resolver.d.ts +2 -0
- package/dist/validation/input-resolver.js +23 -0
- package/dist/validation/input-resolver.js.map +1 -0
- package/dist/validation/resolve-schema.d.ts +14 -0
- package/dist/validation/resolve-schema.js +105 -0
- package/dist/validation/resolve-schema.js.map +1 -0
- package/dist/validation/schema-helpers.d.ts +164 -0
- package/dist/validation/schema-helpers.js +51 -0
- package/dist/validation/schema-helpers.js.map +1 -0
- package/dist/validation/schema-validator.d.ts +22 -0
- package/dist/validation/schema-validator.js +402 -0
- package/dist/validation/schema-validator.js.map +1 -0
- package/dist/validation/test-schema-setup.d.ts +2 -0
- package/dist/validation/test-schema-setup.js +108 -0
- package/dist/validation/test-schema-setup.js.map +1 -0
- package/dist/validation.d.ts +1 -0
- package/dist/validation.js +9 -0
- package/dist/validation.js.map +1 -0
- package/dist/workflow-builder/connection-utils.d.ts +4 -0
- package/dist/workflow-builder/connection-utils.js +42 -0
- package/dist/workflow-builder/connection-utils.js.map +1 -0
- package/dist/workflow-builder/constants.d.ts +3 -0
- package/dist/workflow-builder/constants.js +7 -0
- package/dist/workflow-builder/constants.js.map +1 -0
- package/dist/workflow-builder/control-flow-builders/if-else.d.ts +2 -0
- package/dist/workflow-builder/control-flow-builders/if-else.js +3 -0
- package/dist/workflow-builder/control-flow-builders/if-else.js.map +1 -0
- package/dist/workflow-builder/control-flow-builders/next-batch.d.ts +2 -0
- package/dist/workflow-builder/control-flow-builders/next-batch.js +7 -0
- package/dist/workflow-builder/control-flow-builders/next-batch.js.map +1 -0
- package/dist/workflow-builder/control-flow-builders/split-in-batches.d.ts +27 -0
- package/dist/workflow-builder/control-flow-builders/split-in-batches.js +268 -0
- package/dist/workflow-builder/control-flow-builders/split-in-batches.js.map +1 -0
- package/dist/workflow-builder/control-flow-builders/switch-case.d.ts +2 -0
- package/dist/workflow-builder/control-flow-builders/switch-case.js +3 -0
- package/dist/workflow-builder/control-flow-builders/switch-case.js.map +1 -0
- package/dist/workflow-builder/layout-utils.d.ts +2 -0
- package/dist/workflow-builder/layout-utils.js +54 -0
- package/dist/workflow-builder/layout-utils.js.map +1 -0
- package/dist/workflow-builder/node-builders/index.d.ts +2 -0
- package/dist/workflow-builder/node-builders/index.js +29 -0
- package/dist/workflow-builder/node-builders/index.js.map +1 -0
- package/dist/workflow-builder/node-builders/node-builder.d.ts +26 -0
- package/dist/workflow-builder/node-builders/node-builder.js +596 -0
- package/dist/workflow-builder/node-builders/node-builder.js.map +1 -0
- package/dist/workflow-builder/node-builders/subnode-builders.d.ts +25 -0
- package/dist/workflow-builder/node-builders/subnode-builders.js +110 -0
- package/dist/workflow-builder/node-builders/subnode-builders.js.map +1 -0
- package/dist/workflow-builder/pin-data-utils.d.ts +5 -0
- package/dist/workflow-builder/pin-data-utils.js +54 -0
- package/dist/workflow-builder/pin-data-utils.js.map +1 -0
- package/dist/workflow-builder/plugins/composite-handlers/branch-handler-utils.d.ts +9 -0
- package/dist/workflow-builder/plugins/composite-handlers/branch-handler-utils.js +162 -0
- package/dist/workflow-builder/plugins/composite-handlers/branch-handler-utils.js.map +1 -0
- package/dist/workflow-builder/plugins/composite-handlers/if-else-handler.d.ts +5 -0
- package/dist/workflow-builder/plugins/composite-handlers/if-else-handler.js +83 -0
- package/dist/workflow-builder/plugins/composite-handlers/if-else-handler.js.map +1 -0
- package/dist/workflow-builder/plugins/composite-handlers/index.d.ts +3 -0
- package/dist/workflow-builder/plugins/composite-handlers/index.js +10 -0
- package/dist/workflow-builder/plugins/composite-handlers/index.js.map +1 -0
- package/dist/workflow-builder/plugins/composite-handlers/split-in-batches-handler.d.ts +15 -0
- package/dist/workflow-builder/plugins/composite-handlers/split-in-batches-handler.js +216 -0
- package/dist/workflow-builder/plugins/composite-handlers/split-in-batches-handler.js.map +1 -0
- package/dist/workflow-builder/plugins/composite-handlers/switch-case-handler.d.ts +5 -0
- package/dist/workflow-builder/plugins/composite-handlers/switch-case-handler.js +91 -0
- package/dist/workflow-builder/plugins/composite-handlers/switch-case-handler.js.map +1 -0
- package/dist/workflow-builder/plugins/defaults.d.ts +2 -0
- package/dist/workflow-builder/plugins/defaults.js +53 -0
- package/dist/workflow-builder/plugins/defaults.js.map +1 -0
- package/dist/workflow-builder/plugins/index.d.ts +3 -0
- package/dist/workflow-builder/plugins/index.js +9 -0
- package/dist/workflow-builder/plugins/index.js.map +1 -0
- package/dist/workflow-builder/plugins/registry.d.ts +22 -0
- package/dist/workflow-builder/plugins/registry.js +98 -0
- package/dist/workflow-builder/plugins/registry.js.map +1 -0
- package/dist/workflow-builder/plugins/serializers/index.d.ts +1 -0
- package/dist/workflow-builder/plugins/serializers/index.js +6 -0
- package/dist/workflow-builder/plugins/serializers/index.js.map +1 -0
- package/dist/workflow-builder/plugins/serializers/json-serializer.d.ts +3 -0
- package/dist/workflow-builder/plugins/serializers/json-serializer.js +140 -0
- package/dist/workflow-builder/plugins/serializers/json-serializer.js.map +1 -0
- package/dist/workflow-builder/plugins/types.d.ts +76 -0
- package/dist/workflow-builder/plugins/types.js +29 -0
- package/dist/workflow-builder/plugins/types.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/agent-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/agent-validator.js +45 -0
- package/dist/workflow-builder/plugins/validators/agent-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/chain-llm-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/chain-llm-validator.js +39 -0
- package/dist/workflow-builder/plugins/validators/chain-llm-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/date-method-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/date-method-validator.js +28 -0
- package/dist/workflow-builder/plugins/validators/date-method-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/disconnected-node-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/disconnected-node-validator.js +142 -0
- package/dist/workflow-builder/plugins/validators/disconnected-node-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/expression-path-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/expression-path-validator.js +155 -0
- package/dist/workflow-builder/plugins/validators/expression-path-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/expression-prefix-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/expression-prefix-validator.js +32 -0
- package/dist/workflow-builder/plugins/validators/expression-prefix-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/from-ai-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/from-ai-validator.js +30 -0
- package/dist/workflow-builder/plugins/validators/from-ai-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/http-request-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/http-request-validator.js +55 -0
- package/dist/workflow-builder/plugins/validators/http-request-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/index.d.ts +15 -0
- package/dist/workflow-builder/plugins/validators/index.js +34 -0
- package/dist/workflow-builder/plugins/validators/index.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/max-nodes-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/max-nodes-validator.js +40 -0
- package/dist/workflow-builder/plugins/validators/max-nodes-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/merge-node-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/merge-node-validator.js +54 -0
- package/dist/workflow-builder/plugins/validators/merge-node-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/missing-trigger-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/missing-trigger-validator.js +27 -0
- package/dist/workflow-builder/plugins/validators/missing-trigger-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/no-nodes-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/no-nodes-validator.js +23 -0
- package/dist/workflow-builder/plugins/validators/no-nodes-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/set-node-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/set-node-validator.js +41 -0
- package/dist/workflow-builder/plugins/validators/set-node-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/subnode-connection-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/subnode-connection-validator.js +64 -0
- package/dist/workflow-builder/plugins/validators/subnode-connection-validator.js.map +1 -0
- package/dist/workflow-builder/plugins/validators/tool-node-validator.d.ts +2 -0
- package/dist/workflow-builder/plugins/validators/tool-node-validator.js +37 -0
- package/dist/workflow-builder/plugins/validators/tool-node-validator.js.map +1 -0
- package/dist/workflow-builder/string-utils.d.ts +9 -0
- package/dist/workflow-builder/string-utils.js +237 -0
- package/dist/workflow-builder/string-utils.js.map +1 -0
- package/dist/workflow-builder/subnode-utils.d.ts +2 -0
- package/dist/workflow-builder/subnode-utils.js +180 -0
- package/dist/workflow-builder/subnode-utils.js.map +1 -0
- package/dist/workflow-builder/type-guards.d.ts +15 -0
- package/dist/workflow-builder/type-guards.js +48 -0
- package/dist/workflow-builder/type-guards.js.map +1 -0
- package/dist/workflow-builder/validation-helpers.d.ts +27 -0
- package/dist/workflow-builder/validation-helpers.js +195 -0
- package/dist/workflow-builder/validation-helpers.js.map +1 -0
- package/dist/workflow-builder/workflow-import.d.ts +15 -0
- package/dist/workflow-builder/workflow-import.js +102 -0
- package/dist/workflow-builder/workflow-import.js.map +1 -0
- package/dist/workflow-builder.d.ts +2 -0
- package/dist/workflow-builder.js +636 -0
- package/dist/workflow-builder.js.map +1 -0
- package/package.json +61 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validation/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveMainInputCount = resolveMainInputCount;
|
|
4
|
+
function resolveMainInputCount(nodeTypesProvider, nodeType, version) {
|
|
5
|
+
try {
|
|
6
|
+
const nodeTypeObj = nodeTypesProvider.getByNameAndVersion(nodeType, version);
|
|
7
|
+
if (!nodeTypeObj?.description?.inputs)
|
|
8
|
+
return undefined;
|
|
9
|
+
const inputs = nodeTypeObj.description.inputs;
|
|
10
|
+
if (typeof inputs === 'string')
|
|
11
|
+
return undefined;
|
|
12
|
+
return inputs.filter((input) => {
|
|
13
|
+
if (typeof input === 'string') {
|
|
14
|
+
return input === 'main';
|
|
15
|
+
}
|
|
16
|
+
return input.type === 'main';
|
|
17
|
+
}).length;
|
|
18
|
+
}
|
|
19
|
+
catch {
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=input-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-resolver.js","sourceRoot":"","sources":["../../src/validation/input-resolver.ts"],"names":[],"mappings":";;AAeA,sDAyBC;AAzBD,SAAgB,qBAAqB,CACpC,iBAA6B,EAC7B,QAAgB,EAChB,OAAe;IAEf,IAAI,CAAC;QACJ,MAAM,WAAW,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC7E,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM;YAAE,OAAO,SAAS,CAAC;QAExD,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC;QAG9C,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAGjD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;YAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,KAAK,KAAK,MAAM,CAAC;YACzB,CAAC;YAED,OAAO,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;QAC9B,CAAC,CAAC,CAAC,MAAM,CAAC;IACX,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type DisplayOptions, type DisplayOptionsContext } from './display-options';
|
|
3
|
+
export type { DisplayOptions, DisplayOptionsContext };
|
|
4
|
+
export type ResolveSchemaConfig = {
|
|
5
|
+
parameters: Record<string, unknown>;
|
|
6
|
+
schema: z.ZodTypeAny;
|
|
7
|
+
required: boolean;
|
|
8
|
+
displayOptions: DisplayOptions;
|
|
9
|
+
defaults?: Record<string, unknown>;
|
|
10
|
+
isToolNode?: boolean;
|
|
11
|
+
};
|
|
12
|
+
export type ResolveSchemaFn = (config: ResolveSchemaConfig) => z.ZodTypeAny;
|
|
13
|
+
export declare function matchesDisplayOptions(parameters: Record<string, unknown>, displayOptions: DisplayOptions): boolean;
|
|
14
|
+
export declare function resolveSchema({ parameters, schema, required, displayOptions, defaults, isToolNode, }: ResolveSchemaConfig): z.ZodTypeAny;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.matchesDisplayOptions = matchesDisplayOptions;
|
|
4
|
+
exports.resolveSchema = resolveSchema;
|
|
5
|
+
const zod_1 = require("zod");
|
|
6
|
+
const display_options_1 = require("./display-options");
|
|
7
|
+
function formatValue(val) {
|
|
8
|
+
if (typeof val === 'boolean')
|
|
9
|
+
return String(val);
|
|
10
|
+
if (typeof val === 'string')
|
|
11
|
+
return `"${val}"`;
|
|
12
|
+
if (typeof val === 'number')
|
|
13
|
+
return String(val);
|
|
14
|
+
if (val !== null && typeof val === 'object' && '_cnd' in val) {
|
|
15
|
+
const cnd = val._cnd;
|
|
16
|
+
const [operator, operand] = Object.entries(cnd)[0];
|
|
17
|
+
switch (operator) {
|
|
18
|
+
case 'exists':
|
|
19
|
+
return 'exists';
|
|
20
|
+
case 'eq':
|
|
21
|
+
return `equals ${formatValue(operand)}`;
|
|
22
|
+
case 'not':
|
|
23
|
+
return `not ${formatValue(operand)}`;
|
|
24
|
+
case 'gte':
|
|
25
|
+
return `>= ${String(operand)}`;
|
|
26
|
+
case 'lte':
|
|
27
|
+
return `<= ${String(operand)}`;
|
|
28
|
+
case 'gt':
|
|
29
|
+
return `> ${String(operand)}`;
|
|
30
|
+
case 'lt':
|
|
31
|
+
return `< ${String(operand)}`;
|
|
32
|
+
case 'includes':
|
|
33
|
+
return `includes "${String(operand)}"`;
|
|
34
|
+
case 'startsWith':
|
|
35
|
+
return `starts with "${String(operand)}"`;
|
|
36
|
+
case 'endsWith':
|
|
37
|
+
return `ends with "${String(operand)}"`;
|
|
38
|
+
case 'regex':
|
|
39
|
+
return `matches /${String(operand)}/`;
|
|
40
|
+
case 'between': {
|
|
41
|
+
const { from, to } = operand;
|
|
42
|
+
return `between ${from} and ${to}`;
|
|
43
|
+
}
|
|
44
|
+
default:
|
|
45
|
+
return JSON.stringify(val);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return JSON.stringify(val);
|
|
49
|
+
}
|
|
50
|
+
function formatRegexPath(path) {
|
|
51
|
+
const cleanPath = path.startsWith('/') ? path.slice(1) : path;
|
|
52
|
+
const match = cleanPath.match(/^(.+)\.\(([^)]+)\)$/);
|
|
53
|
+
if (match) {
|
|
54
|
+
const prefix = match[1];
|
|
55
|
+
const alternatives = match[2].split('|');
|
|
56
|
+
const paths = alternatives.map((alt) => `${prefix}.${alt}`);
|
|
57
|
+
if (paths.length === 1)
|
|
58
|
+
return paths[0];
|
|
59
|
+
if (paths.length === 2)
|
|
60
|
+
return `${paths[0]} or ${paths[1]}`;
|
|
61
|
+
return paths.slice(0, -1).join(', ') + ', or ' + paths[paths.length - 1];
|
|
62
|
+
}
|
|
63
|
+
return cleanPath;
|
|
64
|
+
}
|
|
65
|
+
function isRegexPath(path) {
|
|
66
|
+
return path.includes('|') || path.includes('(');
|
|
67
|
+
}
|
|
68
|
+
function formatDisplayOptionsRequirements(displayOptions) {
|
|
69
|
+
const requirements = [];
|
|
70
|
+
if (displayOptions.show) {
|
|
71
|
+
for (const [key, values] of Object.entries(displayOptions.show)) {
|
|
72
|
+
if (Array.isArray(values)) {
|
|
73
|
+
const valStr = values.length === 1 ? formatValue(values[0]) : values.map(formatValue).join(' or ');
|
|
74
|
+
if (isRegexPath(key)) {
|
|
75
|
+
const formattedPath = formatRegexPath(key);
|
|
76
|
+
requirements.push(`one of ${formattedPath} ${valStr}`);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
requirements.push(`${key}=${valStr}`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return requirements.join(', ');
|
|
85
|
+
}
|
|
86
|
+
function matchesDisplayOptions(parameters, displayOptions) {
|
|
87
|
+
const context = { parameters };
|
|
88
|
+
return (0, display_options_1.matchesDisplayOptions)(context, displayOptions);
|
|
89
|
+
}
|
|
90
|
+
function resolveSchema({ parameters, schema, required, displayOptions, defaults = {}, isToolNode, }) {
|
|
91
|
+
const context = { parameters, defaults, isToolNode };
|
|
92
|
+
const isVisible = (0, display_options_1.matchesDisplayOptions)(context, displayOptions);
|
|
93
|
+
if (isVisible) {
|
|
94
|
+
return required ? schema : schema.optional();
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
const requirements = formatDisplayOptionsRequirements(displayOptions);
|
|
98
|
+
return zod_1.z.any().refine((val) => val === undefined, {
|
|
99
|
+
message: requirements
|
|
100
|
+
? `This field is only allowed when: ${requirements}`
|
|
101
|
+
: 'This field is not applicable for the current configuration',
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=resolve-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-schema.js","sourceRoot":"","sources":["../../src/validation/resolve-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export { z };
|
|
3
|
+
export { expressionPattern, expressionSchema, stringOrExpression, numberOrExpression, booleanOrExpression, resourceLocatorValueSchema, filterOperatorSchema, filterConditionSchema, filterValueSchema, assignmentSchema, assignmentCollectionValueSchema, iDataObjectSchema, literalUnion, optionsWithExpression, multiOptionsSchema, } from '../generate-types/zod-helpers';
|
|
4
|
+
export { resolveSchema } from './resolve-schema';
|
|
5
|
+
export type { ResolveSchemaConfig, ResolveSchemaFn } from './resolve-schema';
|
|
6
|
+
export declare const resourceMapperValueSchema: z.ZodUnion<[z.ZodObject<{
|
|
7
|
+
mappingMode: z.ZodString;
|
|
8
|
+
value: z.ZodOptional<z.ZodUnknown>;
|
|
9
|
+
schema: z.ZodOptional<z.ZodArray<z.ZodUnknown, "many">>;
|
|
10
|
+
cachedResultName: z.ZodOptional<z.ZodString>;
|
|
11
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
12
|
+
mappingMode: z.ZodString;
|
|
13
|
+
value: z.ZodOptional<z.ZodUnknown>;
|
|
14
|
+
schema: z.ZodOptional<z.ZodArray<z.ZodUnknown, "many">>;
|
|
15
|
+
cachedResultName: z.ZodOptional<z.ZodString>;
|
|
16
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
17
|
+
mappingMode: z.ZodString;
|
|
18
|
+
value: z.ZodOptional<z.ZodUnknown>;
|
|
19
|
+
schema: z.ZodOptional<z.ZodArray<z.ZodUnknown, "many">>;
|
|
20
|
+
cachedResultName: z.ZodOptional<z.ZodString>;
|
|
21
|
+
}, z.ZodTypeAny, "passthrough">>, z.ZodString]>;
|
|
22
|
+
export declare const subnodeInstanceBaseSchema: z.ZodObject<{
|
|
23
|
+
type: z.ZodString;
|
|
24
|
+
version: z.ZodNumber;
|
|
25
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
26
|
+
}, "strip", z.ZodTypeAny, {
|
|
27
|
+
type: string;
|
|
28
|
+
version: number;
|
|
29
|
+
config?: Record<string, unknown> | undefined;
|
|
30
|
+
}, {
|
|
31
|
+
type: string;
|
|
32
|
+
version: number;
|
|
33
|
+
config?: Record<string, unknown> | undefined;
|
|
34
|
+
}>;
|
|
35
|
+
export declare const languageModelInstanceSchema: z.ZodObject<{
|
|
36
|
+
type: z.ZodString;
|
|
37
|
+
version: z.ZodNumber;
|
|
38
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
39
|
+
}, "strip", z.ZodTypeAny, {
|
|
40
|
+
type: string;
|
|
41
|
+
version: number;
|
|
42
|
+
config?: Record<string, unknown> | undefined;
|
|
43
|
+
}, {
|
|
44
|
+
type: string;
|
|
45
|
+
version: number;
|
|
46
|
+
config?: Record<string, unknown> | undefined;
|
|
47
|
+
}>;
|
|
48
|
+
export declare const memoryInstanceSchema: z.ZodObject<{
|
|
49
|
+
type: z.ZodString;
|
|
50
|
+
version: z.ZodNumber;
|
|
51
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
52
|
+
}, "strip", z.ZodTypeAny, {
|
|
53
|
+
type: string;
|
|
54
|
+
version: number;
|
|
55
|
+
config?: Record<string, unknown> | undefined;
|
|
56
|
+
}, {
|
|
57
|
+
type: string;
|
|
58
|
+
version: number;
|
|
59
|
+
config?: Record<string, unknown> | undefined;
|
|
60
|
+
}>;
|
|
61
|
+
export declare const toolInstanceSchema: z.ZodObject<{
|
|
62
|
+
type: z.ZodString;
|
|
63
|
+
version: z.ZodNumber;
|
|
64
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
65
|
+
}, "strip", z.ZodTypeAny, {
|
|
66
|
+
type: string;
|
|
67
|
+
version: number;
|
|
68
|
+
config?: Record<string, unknown> | undefined;
|
|
69
|
+
}, {
|
|
70
|
+
type: string;
|
|
71
|
+
version: number;
|
|
72
|
+
config?: Record<string, unknown> | undefined;
|
|
73
|
+
}>;
|
|
74
|
+
export declare const outputParserInstanceSchema: z.ZodObject<{
|
|
75
|
+
type: z.ZodString;
|
|
76
|
+
version: z.ZodNumber;
|
|
77
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
78
|
+
}, "strip", z.ZodTypeAny, {
|
|
79
|
+
type: string;
|
|
80
|
+
version: number;
|
|
81
|
+
config?: Record<string, unknown> | undefined;
|
|
82
|
+
}, {
|
|
83
|
+
type: string;
|
|
84
|
+
version: number;
|
|
85
|
+
config?: Record<string, unknown> | undefined;
|
|
86
|
+
}>;
|
|
87
|
+
export declare const embeddingInstanceSchema: z.ZodObject<{
|
|
88
|
+
type: z.ZodString;
|
|
89
|
+
version: z.ZodNumber;
|
|
90
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
91
|
+
}, "strip", z.ZodTypeAny, {
|
|
92
|
+
type: string;
|
|
93
|
+
version: number;
|
|
94
|
+
config?: Record<string, unknown> | undefined;
|
|
95
|
+
}, {
|
|
96
|
+
type: string;
|
|
97
|
+
version: number;
|
|
98
|
+
config?: Record<string, unknown> | undefined;
|
|
99
|
+
}>;
|
|
100
|
+
export declare const vectorStoreInstanceSchema: z.ZodObject<{
|
|
101
|
+
type: z.ZodString;
|
|
102
|
+
version: z.ZodNumber;
|
|
103
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
104
|
+
}, "strip", z.ZodTypeAny, {
|
|
105
|
+
type: string;
|
|
106
|
+
version: number;
|
|
107
|
+
config?: Record<string, unknown> | undefined;
|
|
108
|
+
}, {
|
|
109
|
+
type: string;
|
|
110
|
+
version: number;
|
|
111
|
+
config?: Record<string, unknown> | undefined;
|
|
112
|
+
}>;
|
|
113
|
+
export declare const retrieverInstanceSchema: z.ZodObject<{
|
|
114
|
+
type: z.ZodString;
|
|
115
|
+
version: z.ZodNumber;
|
|
116
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
117
|
+
}, "strip", z.ZodTypeAny, {
|
|
118
|
+
type: string;
|
|
119
|
+
version: number;
|
|
120
|
+
config?: Record<string, unknown> | undefined;
|
|
121
|
+
}, {
|
|
122
|
+
type: string;
|
|
123
|
+
version: number;
|
|
124
|
+
config?: Record<string, unknown> | undefined;
|
|
125
|
+
}>;
|
|
126
|
+
export declare const documentLoaderInstanceSchema: z.ZodObject<{
|
|
127
|
+
type: z.ZodString;
|
|
128
|
+
version: z.ZodNumber;
|
|
129
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
130
|
+
}, "strip", z.ZodTypeAny, {
|
|
131
|
+
type: string;
|
|
132
|
+
version: number;
|
|
133
|
+
config?: Record<string, unknown> | undefined;
|
|
134
|
+
}, {
|
|
135
|
+
type: string;
|
|
136
|
+
version: number;
|
|
137
|
+
config?: Record<string, unknown> | undefined;
|
|
138
|
+
}>;
|
|
139
|
+
export declare const textSplitterInstanceSchema: z.ZodObject<{
|
|
140
|
+
type: z.ZodString;
|
|
141
|
+
version: z.ZodNumber;
|
|
142
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
143
|
+
}, "strip", z.ZodTypeAny, {
|
|
144
|
+
type: string;
|
|
145
|
+
version: number;
|
|
146
|
+
config?: Record<string, unknown> | undefined;
|
|
147
|
+
}, {
|
|
148
|
+
type: string;
|
|
149
|
+
version: number;
|
|
150
|
+
config?: Record<string, unknown> | undefined;
|
|
151
|
+
}>;
|
|
152
|
+
export declare const rerankerInstanceSchema: z.ZodObject<{
|
|
153
|
+
type: z.ZodString;
|
|
154
|
+
version: z.ZodNumber;
|
|
155
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
156
|
+
}, "strip", z.ZodTypeAny, {
|
|
157
|
+
type: string;
|
|
158
|
+
version: number;
|
|
159
|
+
config?: Record<string, unknown> | undefined;
|
|
160
|
+
}, {
|
|
161
|
+
type: string;
|
|
162
|
+
version: number;
|
|
163
|
+
config?: Record<string, unknown> | undefined;
|
|
164
|
+
}>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rerankerInstanceSchema = exports.textSplitterInstanceSchema = exports.documentLoaderInstanceSchema = exports.retrieverInstanceSchema = exports.vectorStoreInstanceSchema = exports.embeddingInstanceSchema = exports.outputParserInstanceSchema = exports.toolInstanceSchema = exports.memoryInstanceSchema = exports.languageModelInstanceSchema = exports.subnodeInstanceBaseSchema = exports.resourceMapperValueSchema = exports.resolveSchema = exports.multiOptionsSchema = exports.optionsWithExpression = exports.literalUnion = exports.iDataObjectSchema = exports.assignmentCollectionValueSchema = exports.assignmentSchema = exports.filterValueSchema = exports.filterConditionSchema = exports.filterOperatorSchema = exports.resourceLocatorValueSchema = exports.booleanOrExpression = exports.numberOrExpression = exports.stringOrExpression = exports.expressionSchema = exports.expressionPattern = exports.z = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
Object.defineProperty(exports, "z", { enumerable: true, get: function () { return zod_1.z; } });
|
|
6
|
+
var zod_helpers_1 = require("../generate-types/zod-helpers");
|
|
7
|
+
Object.defineProperty(exports, "expressionPattern", { enumerable: true, get: function () { return zod_helpers_1.expressionPattern; } });
|
|
8
|
+
Object.defineProperty(exports, "expressionSchema", { enumerable: true, get: function () { return zod_helpers_1.expressionSchema; } });
|
|
9
|
+
Object.defineProperty(exports, "stringOrExpression", { enumerable: true, get: function () { return zod_helpers_1.stringOrExpression; } });
|
|
10
|
+
Object.defineProperty(exports, "numberOrExpression", { enumerable: true, get: function () { return zod_helpers_1.numberOrExpression; } });
|
|
11
|
+
Object.defineProperty(exports, "booleanOrExpression", { enumerable: true, get: function () { return zod_helpers_1.booleanOrExpression; } });
|
|
12
|
+
Object.defineProperty(exports, "resourceLocatorValueSchema", { enumerable: true, get: function () { return zod_helpers_1.resourceLocatorValueSchema; } });
|
|
13
|
+
Object.defineProperty(exports, "filterOperatorSchema", { enumerable: true, get: function () { return zod_helpers_1.filterOperatorSchema; } });
|
|
14
|
+
Object.defineProperty(exports, "filterConditionSchema", { enumerable: true, get: function () { return zod_helpers_1.filterConditionSchema; } });
|
|
15
|
+
Object.defineProperty(exports, "filterValueSchema", { enumerable: true, get: function () { return zod_helpers_1.filterValueSchema; } });
|
|
16
|
+
Object.defineProperty(exports, "assignmentSchema", { enumerable: true, get: function () { return zod_helpers_1.assignmentSchema; } });
|
|
17
|
+
Object.defineProperty(exports, "assignmentCollectionValueSchema", { enumerable: true, get: function () { return zod_helpers_1.assignmentCollectionValueSchema; } });
|
|
18
|
+
Object.defineProperty(exports, "iDataObjectSchema", { enumerable: true, get: function () { return zod_helpers_1.iDataObjectSchema; } });
|
|
19
|
+
Object.defineProperty(exports, "literalUnion", { enumerable: true, get: function () { return zod_helpers_1.literalUnion; } });
|
|
20
|
+
Object.defineProperty(exports, "optionsWithExpression", { enumerable: true, get: function () { return zod_helpers_1.optionsWithExpression; } });
|
|
21
|
+
Object.defineProperty(exports, "multiOptionsSchema", { enumerable: true, get: function () { return zod_helpers_1.multiOptionsSchema; } });
|
|
22
|
+
var resolve_schema_1 = require("./resolve-schema");
|
|
23
|
+
Object.defineProperty(exports, "resolveSchema", { enumerable: true, get: function () { return resolve_schema_1.resolveSchema; } });
|
|
24
|
+
const resourceMapperObjectSchema = zod_1.z
|
|
25
|
+
.object({
|
|
26
|
+
mappingMode: zod_1.z.string(),
|
|
27
|
+
value: zod_1.z.unknown().optional(),
|
|
28
|
+
schema: zod_1.z.array(zod_1.z.unknown()).optional(),
|
|
29
|
+
cachedResultName: zod_1.z.string().optional(),
|
|
30
|
+
})
|
|
31
|
+
.passthrough();
|
|
32
|
+
exports.resourceMapperValueSchema = zod_1.z.union([
|
|
33
|
+
resourceMapperObjectSchema,
|
|
34
|
+
zod_1.z.string().regex(/^={{.*}}$/s, 'Must be an n8n expression (={{...}})'),
|
|
35
|
+
]);
|
|
36
|
+
exports.subnodeInstanceBaseSchema = zod_1.z.object({
|
|
37
|
+
type: zod_1.z.string(),
|
|
38
|
+
version: zod_1.z.number(),
|
|
39
|
+
config: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()).optional(),
|
|
40
|
+
});
|
|
41
|
+
exports.languageModelInstanceSchema = exports.subnodeInstanceBaseSchema;
|
|
42
|
+
exports.memoryInstanceSchema = exports.subnodeInstanceBaseSchema;
|
|
43
|
+
exports.toolInstanceSchema = exports.subnodeInstanceBaseSchema;
|
|
44
|
+
exports.outputParserInstanceSchema = exports.subnodeInstanceBaseSchema;
|
|
45
|
+
exports.embeddingInstanceSchema = exports.subnodeInstanceBaseSchema;
|
|
46
|
+
exports.vectorStoreInstanceSchema = exports.subnodeInstanceBaseSchema;
|
|
47
|
+
exports.retrieverInstanceSchema = exports.subnodeInstanceBaseSchema;
|
|
48
|
+
exports.documentLoaderInstanceSchema = exports.subnodeInstanceBaseSchema;
|
|
49
|
+
exports.textSplitterInstanceSchema = exports.subnodeInstanceBaseSchema;
|
|
50
|
+
exports.rerankerInstanceSchema = exports.subnodeInstanceBaseSchema;
|
|
51
|
+
//# sourceMappingURL=schema-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-helpers.js","sourceRoot":"","sources":["../../src/validation/schema-helpers.ts"],"names":[],"mappings":";;;AAOA,6BAAwB;AAGf,kFAHA,OAAC,OAGA;AAGV,6DAgBuC;AAftC,gHAAA,iBAAiB,OAAA;AACjB,+GAAA,gBAAgB,OAAA;AAChB,iHAAA,kBAAkB,OAAA;AAClB,iHAAA,kBAAkB,OAAA;AAClB,kHAAA,mBAAmB,OAAA;AACnB,yHAAA,0BAA0B,OAAA;AAC1B,mHAAA,oBAAoB,OAAA;AACpB,oHAAA,qBAAqB,OAAA;AACrB,gHAAA,iBAAiB,OAAA;AACjB,+GAAA,gBAAgB,OAAA;AAChB,8HAAA,+BAA+B,OAAA;AAC/B,gHAAA,iBAAiB,OAAA;AACjB,2GAAA,YAAY,OAAA;AACZ,oHAAA,qBAAqB,OAAA;AACrB,iHAAA,kBAAkB,OAAA;AAInB,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AAWtB,MAAM,0BAA0B,GAAG,OAAC;KAClC,MAAM,CAAC;IACP,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE;IACvB,KAAK,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC;KACD,WAAW,EAAE,CAAC;AAKH,QAAA,yBAAyB,GAAG,OAAC,CAAC,KAAK,CAAC;IAChD,0BAA0B;IAC1B,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,sCAAsC,CAAC;CACtE,CAAC,CAAC;AAUU,QAAA,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IACjD,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC;AAKU,QAAA,2BAA2B,GAAG,iCAAyB,CAAC;AAKxD,QAAA,oBAAoB,GAAG,iCAAyB,CAAC;AAKjD,QAAA,kBAAkB,GAAG,iCAAyB,CAAC;AAK/C,QAAA,0BAA0B,GAAG,iCAAyB,CAAC;AAKvD,QAAA,uBAAuB,GAAG,iCAAyB,CAAC;AAKpD,QAAA,yBAAyB,GAAG,iCAAyB,CAAC;AAKtD,QAAA,uBAAuB,GAAG,iCAAyB,CAAC;AAKpD,QAAA,4BAA4B,GAAG,iCAAyB,CAAC;AAKzD,QAAA,0BAA0B,GAAG,iCAAyB,CAAC;AAKvD,QAAA,sBAAsB,GAAG,iCAAyB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ZodSchema } from 'zod';
|
|
2
|
+
import * as schemaHelpers from './schema-helpers';
|
|
3
|
+
type SchemaOrFactory = ZodSchema | ((args: typeof schemaHelpers & {
|
|
4
|
+
parameters: Record<string, unknown>;
|
|
5
|
+
}) => ZodSchema);
|
|
6
|
+
export interface SchemaValidationResult {
|
|
7
|
+
valid: boolean;
|
|
8
|
+
errors: Array<{
|
|
9
|
+
path: string;
|
|
10
|
+
message: string;
|
|
11
|
+
}>;
|
|
12
|
+
}
|
|
13
|
+
export declare function getSchemaBaseDirs(): string[];
|
|
14
|
+
export declare function setSchemaBaseDirs(dirs: string[]): void;
|
|
15
|
+
export declare function loadSchema(nodeType: string, version: number): SchemaOrFactory | null;
|
|
16
|
+
export declare function validateNodeConfig(nodeType: string, version: number, config: {
|
|
17
|
+
parameters?: unknown;
|
|
18
|
+
subnodes?: unknown;
|
|
19
|
+
}, options?: {
|
|
20
|
+
isToolNode?: boolean;
|
|
21
|
+
}): SchemaValidationResult;
|
|
22
|
+
export {};
|