UX Dashboard: fila Hoy en la clinica, KPIs clickeables, deltas; Cumpleanos wa.me E.164; Mis ventas con grafica diaria

This commit is contained in:
2026-09-17 07:25:16 +00:00
parent 8ba3d2582b
commit afc208a7b7
6 changed files with 382 additions and 35 deletions

View File

@@ -0,0 +1,20 @@
// WhatsApp: enlace wa.me con número en formato E.164 (México = 52 + número,
// sin "+", sin espacios). Devuelve null si no hay número utilizable.
export const waNumber = (raw?: string | null): string | null => {
if (!raw) return null;
const digits = raw.replace(/\D/g, '');
if (!digits) return null;
// Ya trae lada del país (52155..., 52661..., etc.)
if (digits.startsWith('52')) return digits;
// Número local de 10 dígitos: anteponer lada de México
if (digits.length === 10) return `52${digits}`;
// Otros formatos: quitar ceros a la izquierda (ej. "01" de larga distancia)
return digits.replace(/^0+/, '') || null;
};
export const waLink = (raw?: string | null, text?: string): string | null => {
const number = waNumber(raw);
if (!number) return null;
const q = text ? `?text=${encodeURIComponent(text)}` : '';
return `https://wa.me/${number}${q}`;
};