/** * Форматирует строку в маску +7 (___) ___-__-__. * Принимает любой ввод — чистит всё кроме цифр. * * @param {string} val — сырое значение из input * @returns {string} — отформатированная строка */ export function formatPhone(val) { const digits = val.replace(/\D/g, ""); const local = digits.startsWith("7") ? digits.slice(1) : digits; let result = "+7"; if (local.length > 0) result += " (" + local.slice(0, 3); if (local.length >= 3) result += ") " + local.slice(3, 6); if (local.length >= 6) result += "-" + local.slice(6, 8); if (local.length >= 8) result += "-" + local.slice(8, 10); return result; }