39 lines
1.9 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.campaignIdParamSchema = exports.campaignSlugParamSchema = exports.listCampaignEmailsSchema = exports.trackMailtoSchema = exports.sendCampaignEmailSchema = void 0;
const zod_1 = require("zod");
const client_1 = require("@prisma/client");
exports.sendCampaignEmailSchema = zod_1.z.object({
userEmail: zod_1.z.string().email('Valid email is required'),
userName: zod_1.z.string().min(1, 'Name is required'),
postalCode: zod_1.z.string().min(1, 'Postal code is required'),
recipientEmail: zod_1.z.string().email('Valid recipient email is required'),
recipientName: zod_1.z.string().optional(),
recipientTitle: zod_1.z.string().optional(),
recipientLevel: zod_1.z.nativeEnum(client_1.GovernmentLevel).optional(),
emailMethod: zod_1.z.nativeEnum(client_1.EmailMethod),
customEmailSubject: zod_1.z.string().optional(),
customEmailBody: zod_1.z.string().optional(),
});
exports.trackMailtoSchema = zod_1.z.object({
recipientEmail: zod_1.z.string().email('Valid recipient email is required'),
recipientName: zod_1.z.string().optional(),
recipientTitle: zod_1.z.string().optional(),
recipientLevel: zod_1.z.nativeEnum(client_1.GovernmentLevel).optional(),
userEmail: zod_1.z.string().email().optional(),
userName: zod_1.z.string().optional(),
postalCode: zod_1.z.string().optional(),
});
exports.listCampaignEmailsSchema = zod_1.z.object({
page: zod_1.z.coerce.number().int().positive().default(1),
limit: zod_1.z.coerce.number().int().positive().max(100).default(20),
status: zod_1.z.nativeEnum(client_1.CampaignEmailStatus).optional(),
emailMethod: zod_1.z.nativeEnum(client_1.EmailMethod).optional(),
});
exports.campaignSlugParamSchema = zod_1.z.object({
slug: zod_1.z.string().min(1),
});
exports.campaignIdParamSchema = zod_1.z.object({
id: zod_1.z.string().min(1),
});
//# sourceMappingURL=campaign-emails.schemas.js.map