n8n-nodes-base
Version:
Base nodes of n8n
27 lines (24 loc) • 2.91 kB
JavaScript
/**
* Jira Trigger Node - Version 1.1 - Zod Validation Schemas
*
* These schemas validate node configuration at runtime.
* 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 }) {
// Parameters schema
const parametersSchema = z.object({
jiraVersion: z.union([z.literal('cloud'), z.literal('server'), z.literal('serverPat'), expressionSchema]).optional(),
authenticateWebhook: booleanOrExpression.optional(),
events: z.array(z.union([z.literal('*'), z.literal('board_configuration_changed'), z.literal('board_created'), z.literal('board_deleted'), z.literal('board_updated'), z.literal('comment_created'), z.literal('comment_deleted'), z.literal('comment_updated'), z.literal('jira:issue_created'), z.literal('jira:issue_deleted'), z.literal('issuelink_created'), z.literal('issuelink_deleted'), z.literal('jira:issue_updated'), z.literal('option_attachments_changed'), z.literal('option_issuelinks_changed'), z.literal('option_subtasks_changed'), z.literal('option_timetracking_changed'), z.literal('option_unassigned_issues_changed'), z.literal('option_voting_changed'), z.literal('option_watching_changed'), z.literal('project_created'), z.literal('project_deleted'), z.literal('project_updated'), z.literal('sprint_closed'), z.literal('sprint_created'), z.literal('sprint_deleted'), z.literal('sprint_started'), z.literal('sprint_updated'), z.literal('user_created'), z.literal('user_deleted'), z.literal('user_updated'), z.literal('jira:version_created'), z.literal('jira:version_deleted'), z.literal('jira:version_moved'), z.literal('jira:version_released'), z.literal('jira:version_unreleased'), z.literal('jira:version_updated'), z.literal('worklog_created'), z.literal('worklog_deleted'), z.literal('worklog_updated')])).optional(),
additionalFields: z.object({ excludeBody: booleanOrExpression.optional(), filter: stringOrExpression.optional(), includeFields: z.array(z.union([z.literal('attachment.id'), z.literal('board.id'), z.literal('comment.id'), z.literal('issue.id'), z.literal('mergeVersion.id'), z.literal('modifiedUser.accountId'), z.literal('modifiedUser.key'), z.literal('modifiedUser.name'), z.literal('project.id'), z.literal('project.key'), z.literal('property.key'), z.literal('sprint.id'), z.literal('version.id'), z.literal('worklog.id')])).optional() }).optional(),
});
// Return combined config schema
return z.object({
parameters: parametersSchema.optional(),
});
};