n8n
Version:
n8n Workflow Automation Tool
46 lines • 1.84 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.serializedWorkflowSchema = void 0;
const zod_1 = require("zod");
const credentialReferenceSchema = zod_1.z.object({
id: zod_1.z.string(),
name: zod_1.z.string(),
});
const nodeSchema = zod_1.z.object({
id: zod_1.z.string().min(1),
name: zod_1.z.string().min(1),
type: zod_1.z.string().min(1),
typeVersion: zod_1.z.number(),
position: zod_1.z.tuple([zod_1.z.number(), zod_1.z.number()]),
parameters: zod_1.z.record(zod_1.z.unknown()),
credentials: zod_1.z.record(credentialReferenceSchema).optional(),
disabled: zod_1.z.boolean().optional(),
notes: zod_1.z.string().optional(),
notesInFlow: zod_1.z.boolean().optional(),
continueOnFail: zod_1.z.boolean().optional(),
retryOnFail: zod_1.z.boolean().optional(),
maxTries: zod_1.z.number().optional(),
waitBetweenTries: zod_1.z.number().optional(),
alwaysOutputData: zod_1.z.boolean().optional(),
executeOnce: zod_1.z.boolean().optional(),
onError: zod_1.z.string().optional(),
webhookId: zod_1.z.string().optional(),
});
const connectionLeafSchema = zod_1.z.object({
node: zod_1.z.string(),
type: zod_1.z.string(),
index: zod_1.z.number(),
});
const connectionsSchema = zod_1.z.record(zod_1.z.record(zod_1.z.array(zod_1.z.array(connectionLeafSchema).nullable())));
exports.serializedWorkflowSchema = zod_1.z.object({
id: zod_1.z.string().min(1),
name: zod_1.z.string().min(1),
nodes: zod_1.z.array(nodeSchema),
connections: connectionsSchema,
settings: zod_1.z.record(zod_1.z.unknown()).optional(),
versionId: zod_1.z.string(),
parentFolderId: zod_1.z.string().nullable(),
active: zod_1.z.boolean(),
isArchived: zod_1.z.boolean(),
});
//# sourceMappingURL=workflow.schema.js.map