{title && {title}}
{description && (
@@ -30,4 +34,4 @@ export function Toaster() {
);
-}
\ No newline at end of file
+}
diff --git a/src/lib/schema.ts b/src/lib/schema.ts
index fc95b0d..8fa5065 100644
--- a/src/lib/schema.ts
+++ b/src/lib/schema.ts
@@ -1,17 +1,27 @@
-import * as z from 'zod';
+import * as z from "zod";
export const formSchema = z.object({
- teamName: z.string().min(2, 'Team name must be at least 2 characters'),
- fullName: z.string().min(2, 'Name must be at least 2 characters'),
- rollNo: z.string().min(1, 'Roll number is required'),
- email: z.string().email('Invalid email address'),
- branch: z.string().min(1, 'Branch is required'),
- teamMembers: z.array(
- z.object({
- fullName: z.string().min(2, 'Name must be at least 2 characters'),
- rollNo: z.string().min(1, 'Roll number is required'),
- email: z.string().email('Invalid email address'),
- branch: z.string().min(1, 'Branch is required'),
- }).optional()
- ).max(2, "You can only have up to 2 team members"),
-});
\ No newline at end of file
+ teamName: z.string().min(2, "Team name must be at least 2 characters"),
+ fullName: z.string().min(2, "Name must be at least 2 characters"),
+ rollNo: z
+ .string()
+ .min(1, "Roll number is required")
+ .regex(/^\d{6,}$/, "Roll number must be a number with 6 or more digits"),
+ email: z
+ .string()
+ .email("Invalid email address")
+ .regex(/@kiit\.ac\.in$/, "Email must end with @kiit.ac.in"),
+ branch: z.string().min(1, "Branch is required"),
+ teamMembers: z
+ .array(
+ z
+ .object({
+ fullName: z.string().min(2, "Name must be at least 2 characters"),
+ rollNo: z.string().min(1, "Roll number is required"),
+ email: z.string().email("Invalid email address"),
+ branch: z.string().min(1, "Branch is required"),
+ })
+ .optional()
+ )
+ .max(2, "You can only have up to 2 team members"),
+});