From 00904ffa8617e036e783e0dee9127eb46d28d704 Mon Sep 17 00:00:00 2001 From: pramod mahajan Date: Tue, 19 Aug 2025 09:54:58 +0530 Subject: [PATCH] update contact number field to support valid and also international format --- src/components/Tenant/ContactInfro.jsx | 2 ++ src/components/Tenant/EditProfile.jsx | 3 ++- src/components/Tenant/TenantSchema.js | 10 ++++++---- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/components/Tenant/ContactInfro.jsx b/src/components/Tenant/ContactInfro.jsx index f9721ffd..3f7d8655 100644 --- a/src/components/Tenant/ContactInfro.jsx +++ b/src/components/Tenant/ContactInfro.jsx @@ -76,6 +76,8 @@ const ContactInfro = ({ onNext }) => { type="text" className={`form-control form-control-sm `} {...register("contactNumber")} + inputMode="tel" + placeholder="+91 9876543210" /> {errors.contactNumber && (
{errors.contactNumber.message}
diff --git a/src/components/Tenant/EditProfile.jsx b/src/components/Tenant/EditProfile.jsx index 9b186344..e2a28d07 100644 --- a/src/components/Tenant/EditProfile.jsx +++ b/src/components/Tenant/EditProfile.jsx @@ -87,7 +87,8 @@ const EditProfile = ({ TenantId,onClose }) => {
- + {errors.contactNumber &&
{errors.contactNumber.message}
}
diff --git a/src/components/Tenant/TenantSchema.js b/src/components/Tenant/TenantSchema.js index 305d9d94..23f689e3 100644 --- a/src/components/Tenant/TenantSchema.js +++ b/src/components/Tenant/TenantSchema.js @@ -11,7 +11,9 @@ export const newTenantSchema = z.object({ logoImage: z.string().optional(), organizationName: z.string().nonempty("Organization name is required"), officeNumber: z.string().nonempty("Office number is required"), - contactNumber: z.string().nonempty("Contact number is required"), + contactNumber: z.string() + .nonempty("Contact number is required") + .regex(/^\+?[1-9]\d{7,14}$/, "Enter a valid contact number"), onBoardingDate: z.preprocess((val) => { if (typeof val === "string" && val.includes("-")) { const [day, month, year] = val.split("-"); @@ -131,9 +133,9 @@ export const EditTenant = z.object({ taxId: z.string().min(1, { message: "Tax ID is required!" }), logoImage: z.string().optional(), officeNumber: z.string().min(1, { message: "Office Number is required!" }), - contactNumber: z - .string() - .min(10, { message: "Contact Number must be at least 10 digits!" }), + contactNumber: z.string() + .nonempty("Contact number is required") + .regex(/^\+?[1-9]\d{7,14}$/, "Enter a valid contact number"), organizationSize: z.string().min(1, { message: "Organization Size is required!" }), industryId: z.string().min(1,{ message: "Invalid Industry ID!" }), reference: z.string().optional(),