// shared.jsx — Header, Footer, AnnouncementBar, WhatsAppFloat, Icon, Button, Placeholder
// ── Icon (Lucide-style line icons inlined as SVG) ──────────────────────────
const Icon = ({ name, size = 20, ...rest }) => {
const paths = {
menu: <>>,
close: <>>,
plus: <>>,
arrow: <>>,
arrowR: <>>,
phone: ,
mail: <>>,
pin: <>>,
clock: <>>,
chat: ,
wa: ,
instagram: <>>,
facebook: ,
linkedin: <>>,
youtube: <>>,
sparkle: ,
heart: ,
leaf: <>>,
flask: <>>,
shield: <>>,
user: <>>,
book: <>>,
check: ,
star: ,
search: <>>,
calendar: <>>,
droplet: ,
sun: <>>,
feather: <>>
};
return (
);
};
// ── Button ─────────────────────────────────────────────────────────────────
const Btn = ({ variant = "primary", size = "md", children, onClick, type, icon, iconRight, ...rest }) =>
;
// ── Placeholder image (for when we don't have real photos) ─────────────────
const PhotoPlaceholder = ({ label, ratio = "1/1", style }) =>
{label}
;
// ── Announcement bar ───────────────────────────────────────────────────────
const AnnouncementBar = () =>
Novidade Programa Pele&Tempo · avaliação personalizada
(62) 3213-3721 · Goiânia — GO
;
// ── Header ─────────────────────────────────────────────────────────────────
const NAV_ITEMS = [
{ id: "home", label: "Início" },
{ id: "sobre", label: "A Clínica" },
{ id: "servicos", label: "Serviços" },
{ id: "equipe", label: "Equipe" },
{ id: "blog", label: "Artigos" },
{ id: "resultados", label: "Resultados" },
{ id: "contato", label: "Contato" }];
const Header = ({ page, navigate }) => {
const [open, setOpen] = React.useState(false);
const [scrolled, setScrolled] = React.useState(false);
const close = () => setOpen(false);
React.useEffect(() => {
const onScroll = () => {
setScrolled(window.scrollY > 24);
};
onScroll();
window.addEventListener("scroll", onScroll, { passive: true });
return () => window.removeEventListener("scroll", onScroll);
}, []);
return (
<>
(62) 3213-3721
navigate("agendamento")}
icon="calendar">
Agendar
{open &&
e.stopPropagation()}>
{navigate("agendamento");close();}}>
Agendar avaliação
window.open("https://wa.me/5562991323402", "_blank")}>
WhatsApp
}
>);
};
// ── WhatsApp Float ─────────────────────────────────────────────────────────
const WhatsAppFloat = () =>
;
// ── Footer ─────────────────────────────────────────────────────────────────
const Footer = ({ navigate }) =>
;
Object.assign(window, { Icon, Btn, PhotoPlaceholder, AnnouncementBar, Header, Footer, WhatsAppFloat });