19 lines
671 B
JavaScript
19 lines
671 B
JavaScript
import { z } from 'zod';
|
|
|
|
export const sellerSettingsSchema = z.object({
|
|
general: z.object({
|
|
publicDescription: z.string().trim().max(2000).optional(),
|
|
publicContactEmail: z.string().trim().email().optional(),
|
|
publicContactPhone: z.string().trim().max(50).optional(),
|
|
}).strict().optional(),
|
|
inventory: z.object({
|
|
maxImagesPerItem: z.int().min(1).max(100).optional(),
|
|
}).strict().optional(),
|
|
pricing: z.object({
|
|
defaultStrategy: z.enum(['average', 'median', 'weighted_average']).optional(),
|
|
}).strict().optional(),
|
|
security: z.object({
|
|
sessionIdleMinutes: z.int().min(5).max(43200).optional(),
|
|
}).strict().optional(),
|
|
}).strict();
|