/* global React, SectionHead, Placeholder, Logo, SkylineGlyph */ // ───────────── CONTACTO ───────────── const Contacto = () => (
{/* Map placeholder */}
{/* Pin */}
Apple Maps
↗ Abrir mapa
{/* Skyline strip above the footer */}
{/* Footer */}
Bread Way Barber
© MMXXVI · Coquimbo, Chile
); const ContactRow = ({ label, value, link }) => { const inner = (
{label} {value}{link ? : null}
); return link ? ( {inner} ) : inner; }; // ───────────── DASHBOARD (internal, no longer rendered publicly) ───────────── const Dashboard = () => { const weekData = [42, 38, 55, 48, 62, 78, 35]; // bookings per day const max = Math.max(...weekData); const days = ['L','M','M','J','V','S','D']; const products = [ { name: 'Pomada Mate', sold: 38, revenue: 566200 }, { name: 'Aceite Barba', sold: 29, revenue: 362500 }, { name: 'Perfume 01', sold: 18, revenue: 504000 }, { name: 'Cera Sculpt', sold: 24, revenue: 324000 }, ]; const services = [ { name: 'Fade premium', count: 86, share: 32 }, { name: 'Corte clásico', count: 64, share: 24 }, { name: 'Pack Bread Way', count: 48, share: 18 }, { name: 'Afeitado navaja', count: 42, share: 16 }, ]; return (
— PANEL INTERNO · 09 —
Privado

Dashboard Gerencial

Vista mensual · Octubre 2026 · Solo personal autorizado

{/* KPI grid */}
{/* Weekly trend */}
{weekData.map((v, i) => (
{v}
{days[i]}
))}
{/* Top products */} {products.map((p, i) => (
{String(i + 1).padStart(2, '0')}
{p.name}
{p.sold} unidades
${(p.revenue/1000).toFixed(0)}k
))}
{/* Top services */} {services.map((s, i) => (
{s.name} {s.count} · {s.share}%
))} {/* Cash flow recent */} {[ { type: 'Servicio', who: 'Tomás V.', amount: 16000, time: '13:42' }, { type: 'Producto', who: 'Diego A.', amount: 14900, time: '14:15' }, { type: 'Servicio', who: 'Javier M.', amount: 18000, time: '15:00' }, { type: 'Producto', who: 'Luis P.', amount: 28000, time: '15:30' }, { type: 'Servicio', who: 'Andrés T.', amount: 24000, time: '16:00' }, ].map((r, i) => (
{r.type} {r.who} {r.time} +${r.amount.toLocaleString('es-CL')}
))}
Total día $100.900
Esta vista es interna y no es accesible al público.
); }; const KPI = ({ label, value, delta }) => (
{label}
{value}
↑ {delta}
); const Card = ({ title, caption, children }) => (
{title}
{caption}
{children}
); Object.assign(window, { Contacto, Dashboard });