n8n-nodes-base
Version:
Base nodes of n8n
25 lines (23 loc) • 2.07 kB
JavaScript
/**
* GetResponse Node - Version 1 - Zod Schema
* Discriminator: resource=contact, operation=getAll
*
* Use .parse() for strict validation or .safeParse() for error handling.
*
* Schema helpers (z, expressionSchema, etc.) are passed as parameters
* by the schema-validator, not imported from external files.
*
* @generated - CommonJS JavaScript for runtime loading
*/
module.exports = function getSchema({ parameters, z, expressionSchema, stringOrExpression, numberOrExpression, booleanOrExpression, resourceLocatorValueSchema, resourceMapperValueSchema, filterValueSchema, assignmentCollectionValueSchema, iDataObjectSchema, resolveSchema }) {
return z.object({
parameters: z.object({
resource: z.literal('contact').default('contact'),
operation: z.literal('getAll'),
authentication: z.union([z.literal('apiKey'), z.literal('oAuth2'), expressionSchema]).optional(),
returnAll: booleanOrExpression.optional(),
limit: resolveSchema({ parameters, schema: numberOrExpression, required: false, displayOptions: {"show":{"returnAll":[false]}}, defaults: {"returnAll":false} }),
options: z.object({ campaignId: stringOrExpression.optional(), changeOnFrom: stringOrExpression.optional(), changeOnTo: stringOrExpression.optional(), createdOnFrom: stringOrExpression.optional(), createdOnTo: stringOrExpression.optional(), exactMatch: booleanOrExpression.optional(), fields: stringOrExpression.optional(), name: stringOrExpression.optional(), origin: z.union([z.literal('api'), z.literal('copy'), z.literal('email'), z.literal('forward'), z.literal('import'), z.literal('iphone'), z.literal('landing_page'), z.literal('leads'), z.literal('panel'), z.literal('sale'), z.literal('survey'), z.literal('webinar'), z.literal('www'), expressionSchema]).optional(), sortBy: z.union([z.literal('campaignId'), z.literal('changedOn'), z.literal('createdOn'), z.literal('email'), expressionSchema]).optional(), sortOrder: z.union([z.literal('ASC'), z.literal('DESC'), expressionSchema]).optional() }).optional(),
}).optional(),
});
};