"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.updateSiteSettingsSchema = void 0; const zod_1 = require("zod"); const hexColor = zod_1.z.string().regex(/^#[0-9a-fA-F]{6}$/, 'Must be a hex color (e.g. #ff00ff)'); exports.updateSiteSettingsSchema = zod_1.z.object({ // Organization organizationName: zod_1.z.string().min(1).max(100).optional(), organizationShortName: zod_1.z.string().min(1).max(10).optional(), organizationLogoUrl: zod_1.z.string().url().nullable().optional().or(zod_1.z.literal('')), organizationFaviconUrl: zod_1.z.string().url().nullable().optional().or(zod_1.z.literal('')), // Admin theme adminColorPrimary: hexColor.optional(), adminColorBgBase: hexColor.optional(), // Public theme publicColorPrimary: hexColor.optional(), publicColorBgBase: hexColor.optional(), publicColorBgContainer: hexColor.optional(), publicHeaderGradient: zod_1.z.string().max(500).optional(), // Text footerText: zod_1.z.string().max(200).optional(), loginSubtitle: zod_1.z.string().max(50).optional(), // Email branding emailFromName: zod_1.z.string().min(1).max(100).optional(), // SMTP configuration smtpHost: zod_1.z.string().max(255).optional(), smtpPort: zod_1.z.number().int().min(0).max(65535).optional(), smtpUser: zod_1.z.string().max(255).optional(), smtpPass: zod_1.z.string().max(500).optional(), smtpFromAddress: zod_1.z.string().max(255).optional(), smtpActiveProvider: zod_1.z.enum(['mailhog', 'production']).optional(), emailTestMode: zod_1.z.boolean().optional(), testEmailRecipient: zod_1.z.string().max(255).optional(), // Feature toggles enableInfluence: zod_1.z.boolean().optional(), enableMap: zod_1.z.boolean().optional(), enableNewsletter: zod_1.z.boolean().optional(), enableLandingPages: zod_1.z.boolean().optional(), }); //# sourceMappingURL=settings.schemas.js.map