UNPKG

n8n-nodes-base

Version:

Base nodes of n8n

25 lines (23 loc) 3.36 kB
/** * ProfitWell Node - Version 1 - Zod Schema * Discriminator: resource=metric, operation=get * * 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('metric').default('metric'), operation: z.literal('get'), type: z.union([z.literal('daily'), z.literal('monthly'), expressionSchema]).optional(), month: resolveSchema({ parameters, schema: stringOrExpression, required: false, displayOptions: {"show":{"type":["daily"]}}, defaults: {"type":""} }), simple: booleanOrExpression.optional(), options: z.object({ plan_id: stringOrExpression.optional(), dailyMetrics: z.array(z.union([z.literal('active_customers'), z.literal('churned_customers'), z.literal('churned_recurring_revenue'), z.literal('cumulative_net_new_mrr'), z.literal('cumulative_new_trialing_customers'), z.literal('downgraded_customers'), z.literal('downgraded_recurring_revenue'), z.literal('future_churn_mrr'), z.literal('new_customers'), z.literal('new_recurring_revenue'), z.literal('reactivated_customers'), z.literal('reactivated_recurring_revenue'), z.literal('recurring_revenue'), z.literal('upgraded_customers'), z.literal('upgraded_recurring_revenue')])).optional(), monthlyMetrics: z.array(z.union([z.literal('active_customers'), z.literal('active_trialing_customers'), z.literal('average_revenue_per_user'), z.literal('churned_customers'), z.literal('churned_customers_cancellations'), z.literal('churned_customers_delinquent'), z.literal('churned_recurring_revenue'), z.literal('churned_recurring_revenue_cancellations'), z.literal('churned_recurring_revenue_delinquent'), z.literal('churned_trialing_customers'), z.literal('converted_customers'), z.literal('converted_recurring_revenue'), z.literal('customers_churn_cancellations_rate'), z.literal('customers_churn_delinquent_rate'), z.literal('customers_churn_rate'), z.literal('customer_conversion_rate'), z.literal('customers_retention_rate'), z.literal('downgraded_customers'), z.literal('downgrade_rate'), z.literal('downgraded_recurring_revenue'), z.literal('existing_customers'), z.literal('existing_recurring_revenue'), z.literal('existing_trialing_customers'), z.literal('growth_rate'), z.literal('lifetime_value'), z.literal('new_customers'), z.literal('new_recurring_revenue'), z.literal('new_trialing_customers'), z.literal('plan_change_rate'), z.literal('plan_changed_recurring_revenue'), z.literal('reactivated_customers'), z.literal('reactivated_recurring_revenue'), z.literal('recurring_revenue'), z.literal('revenue_churn_cancellations_rate'), z.literal('revenue_churn_delinquent_rate'), z.literal('revenue_churn_rate'), z.literal('revenue_retention_rate'), z.literal('upgrade_rate'), z.literal('upgraded_customers'), z.literal('upgraded_recurring_revenue')])).optional() }).optional(), }).optional(), }); };