Initial state for GitNexus analysis
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
import { z } from 'zod';
|
||||
|
||||
export const EventStatusEnum = z.enum(['planned', 'open', 'full', 'running', 'completed', 'cancelled']);
|
||||
|
||||
export const CreateEventSchema = z.object({
|
||||
accountId: z.string().uuid(),
|
||||
name: z.string().min(1).max(256),
|
||||
description: z.string().optional(),
|
||||
eventDate: z.string(),
|
||||
eventTime: z.string().optional(),
|
||||
endDate: z.string().optional(),
|
||||
location: z.string().optional(),
|
||||
capacity: z.number().int().optional(),
|
||||
minAge: z.number().int().optional(),
|
||||
maxAge: z.number().int().optional(),
|
||||
fee: z.number().min(0).default(0),
|
||||
status: EventStatusEnum.default('planned'),
|
||||
registrationDeadline: z.string().optional(),
|
||||
contactName: z.string().optional(),
|
||||
contactEmail: z.string().email().optional().or(z.literal('')),
|
||||
contactPhone: z.string().optional(),
|
||||
});
|
||||
export type CreateEventInput = z.infer<typeof CreateEventSchema>;
|
||||
|
||||
export const EventRegistrationSchema = z.object({
|
||||
eventId: z.string().uuid(),
|
||||
firstName: z.string().min(1),
|
||||
lastName: z.string().min(1),
|
||||
email: z.string().email().optional().or(z.literal('')),
|
||||
phone: z.string().optional(),
|
||||
dateOfBirth: z.string().optional(),
|
||||
parentName: z.string().optional(),
|
||||
parentPhone: z.string().optional(),
|
||||
});
|
||||
|
||||
export const CreateHolidayPassSchema = z.object({
|
||||
accountId: z.string().uuid(),
|
||||
name: z.string().min(1),
|
||||
year: z.number().int(),
|
||||
description: z.string().optional(),
|
||||
price: z.number().min(0).default(0),
|
||||
validFrom: z.string().optional(),
|
||||
validUntil: z.string().optional(),
|
||||
});
|
||||
Reference in New Issue
Block a user