Files
nademitex_server/src/common/utils/phone.ts
T

21 lines
614 B
TypeScript
Raw Normal View History

export function normalizePhone(raw: string): string {
let digits = raw.replace(/\D/g, '');
if (digits.startsWith('98') && digits.length === 12) {
digits = `0${digits.slice(2)}`;
}
if (digits.length === 10 && digits.startsWith('9')) {
digits = `0${digits}`;
}
return digits;
}
export function isValidPhone(phone: string): boolean {
return /^09\d{9}$/.test(phone);
}
export function toEnglishDigits(value: string): string {
return value
.replace(/[۰-۹]/g, (d) => String('۰۱۲۳۴۵۶۷۸۹'.indexOf(d)))
.replace(/[٠-٩]/g, (d) => String('٠١٢٣٤٥٦٧٨٩'.indexOf(d)));
}