// Form validation functions for store creation export const validateUsername = (username: string): string | null => { if (!username.trim()) { return "نام کاربری الزامی است"; } if (username.length < 3) { return "نام کاربری باید حداقل ۳ کاراکتر باشد"; } if (username.length > 30) { return "نام کاربری نباید بیشتر از ۳۰ کاراکتر باشد"; } if (!/^[a-zA-Z0-9._]+$/.test(username)) { return "نام کاربری فقط می‌تواند شامل حروف انگلیسی، اعداد، نقطه و آندرلاین باشد"; } if (username.startsWith(".") || username.endsWith(".")) { return "نام کاربری نمی‌تواند با نقطه شروع یا تمام شود"; } if (username.includes("..")) { return "نام کاربری نمی‌تواند شامل دو نقطه پشت سر هم باشد"; } return null; }; export const validateInstagramId = (instagramId: string): string | null => { if (!instagramId.trim()) { return "آیدی اینستاگرام الزامی است"; } if (instagramId.length < 1) { return "آیدی اینستاگرام الزامی است"; } if (instagramId.length > 30) { return "آیدی اینستاگرام نباید بیشتر از ۳۰ کاراکتر باشد"; } if (!/^[a-zA-Z0-9._]+$/.test(instagramId)) { return "آیدی اینستاگرام فقط می‌تواند شامل حروف انگلیسی، اعداد، نقطه و آندرلاین باشد"; } if (instagramId.startsWith(".") || instagramId.endsWith(".")) { return "آیدی اینستاگرام نمی‌تواند با نقطه شروع یا تمام شود"; } if (instagramId.includes("..")) { return "آیدی اینستاگرام نمی‌تواند شامل دو نقطه پشت سر هم باشد"; } return null; }; export const validateStoreName = (storeName: string): string | null => { if (!storeName.trim()) { return "نام فروشگاه الزامی است"; } if (storeName.trim().length < 2) { return "نام فروشگاه باید حداقل ۲ کاراکتر باشد"; } if (storeName.trim().length > 50) { return "نام فروشگاه نباید بیشتر از ۵۰ کاراکتر باشد"; } return null; }; export const validateStoreDescription = ( description: string ): string | null => { if (!description.trim()) { return "توضیحات فروشگاه الزامی است"; } if (description.trim().length < 10) { return "توضیحات فروشگاه باید حداقل ۱۰ کاراکتر باشد"; } if (description.trim().length > 500) { return "توضیحات فروشگاه نباید بیشتر از ۵۰۰ کاراکتر باشد"; } return null; };