// ui.jsx — shared chrome: wordmark, header, footer, marquee, flash toast
function Wordmark({ size = 'md' }) {
const dim = size === 'lg' ? 56 : 40;
return (
My Plush Palace
est. mmxxiv · made-to-order
);
}
function Nav({ route, go, cartCount }) {
const links = [
{ id:'home', label:'Atelier' },
{ id:'browse', label:'Collection' },
{ id:'shop', label:'Shop' },
{ id:'home', label:'Journal' },
];
return (
);
}
function Marquee() {
const words = ['Hand-knotted in Jaipur', 'NZ wool & bamboo silk', 'Made-to-order in 10 weeks',
'Lifetime re-pile guarantee', 'Carbon-neutral freight'];
const line = [...words, ...words];
return (
{line.map((w, i) => {w})}
);
}
function Footer({ go }) {
return (
);
}
function FlashToast({ children, onDone }) {
React.useEffect(() => {
const t = setTimeout(onDone, 2200);
return () => clearTimeout(t);
}, []);
return (
);
}
Object.assign(window, { Wordmark, Nav, Marquee, Footer, FlashToast });