Skip to content

Commit 35ca6b0

Browse files
fix zod issues in prod
1 parent 9687041 commit 35ca6b0

1 file changed

Lines changed: 7 additions & 5 deletions

File tree

server/src/module/interview-experience/interview-experience.validation.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ const prepResourceSchema = z.object({
2222
url: z.string().trim().url().max(500).optional(),
2323
});
2424

25-
export const createExperienceSchema = z.object({
25+
const createExperienceBaseSchema = z.object({
2626
companyId: z.coerce.number().int().positive().optional(),
2727
companyName: z.string().trim().min(1).max(200).optional(),
2828
role: z.string().trim().min(2).max(120),
@@ -40,12 +40,14 @@ export const createExperienceSchema = z.object({
4040
tips: z.string().trim().max(4000).optional(),
4141
prepResources: z.array(prepResourceSchema).max(20).default([]),
4242
isAnonymous: z.boolean().default(false),
43-
}).refine((d) => d.companyId !== undefined || (d.companyName && d.companyName.length > 0), {
44-
message: "Either companyId or companyName is required",
45-
path: ["companyName"],
4643
});
4744

48-
export const updateExperienceSchema = createExperienceSchema.unwrap().partial().extend({
45+
export const createExperienceSchema = createExperienceBaseSchema.refine(
46+
(d) => d.companyId !== undefined || (d.companyName && d.companyName.length > 0),
47+
{ message: "Either companyId or companyName is required", path: ["companyName"] }
48+
);
49+
50+
export const updateExperienceSchema = createExperienceBaseSchema.partial().extend({
4951
companyId: z.coerce.number().int().positive().optional(),
5052
companyName: z.string().trim().min(1).max(200).optional(),
5153
status: z.enum(["PENDING", "APPROVED", "REJECTED"]).optional(),

0 commit comments

Comments
 (0)