From 25c3125894d6a567c6adc969710175cf6306e667 Mon Sep 17 00:00:00 2001 From: Mohammad Khyata Date: Fri, 8 May 2026 16:02:51 +0300 Subject: [PATCH] fix: update default values in service form and enhance validation for required fields --- apps/dashboard/modules/services/service-form.tsx | 8 ++++---- apps/dashboard/modules/services/service.schema.ts | 9 +++++++-- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/apps/dashboard/modules/services/service-form.tsx b/apps/dashboard/modules/services/service-form.tsx index 0e6867b..fa3b28f 100644 --- a/apps/dashboard/modules/services/service-form.tsx +++ b/apps/dashboard/modules/services/service-form.tsx @@ -43,10 +43,10 @@ export type ServiceFormProps = { // ── Default values ── const DEFAULT_VALUES: ServiceFormValues = { - shop_type: null, - category: null, - unit_type: null, - department: null, + shop_type: { value: "", label: "" }, + category: { value: "", label: "" }, + unit_type: { value: "", label: "" }, + department: { value: "", label: "" }, labor_name: "", service_code: "", labor_matrix: "", diff --git a/apps/dashboard/modules/services/service.schema.ts b/apps/dashboard/modules/services/service.schema.ts index 43df9ce..78d97f5 100644 --- a/apps/dashboard/modules/services/service.schema.ts +++ b/apps/dashboard/modules/services/service.schema.ts @@ -5,8 +5,13 @@ export const relationFieldSchema = z .object({ value: z.string(), label: z.string() }) .nullable() -const requiredRelationFieldSchema = relationFieldSchema.refine((value) => value !== null, { - message: "This field is required", +const requiredRelationFieldSchema = relationFieldSchema.superRefine((value, ctx) => { + if (!value?.value) { + ctx.addIssue({ + code: z.ZodIssueCode.custom, + message: "This field is required", + }) + } }) const optionalNumericField = z.preprocess(