Files

23 lines
456 B
TypeScript

/** Normalize Iranian/local input to E.164 (e.g. +989121111111). */
export function toE164CellNumber(input: string): string {
const digits = input.replace(/\D/g, "");
if (!digits) {
return "";
}
if (digits.startsWith("98")) {
return `+${digits}`;
}
if (digits.startsWith("0")) {
return `+98${digits.slice(1)}`;
}
if (digits.length === 10 && digits.startsWith("9")) {
return `+98${digits}`;
}
return `+${digits}`;
}