/* ============================================================================ app-a.jsx — DESIGN A page components ("Editorial" · Archivo) Reads content from props (fed by runtime.js → content-a.js or the editor). Exposes window.PAGES = { home, about, reel, credits, contact }. ========================================================================== */ (function () { const Media = window.Media; const useBreakpoint = window.useBreakpoint; const ReelGallery = window.ReelGallery; const SocialBar = window.SocialBar; /* palette */ const accent = '#a8552a', bone = '#e8dcc4', espresso = '#1c1814', muted = '#a89878', surface = '#231d17'; const fontUI = '"Archivo", system-ui, sans-serif'; /* responsive helper: pick(desktop, tablet, phone) */ function mk(bp) { const P = bp === 'phone', T = bp === 'tablet'; return function (d, t, p) { return P ? p : (T ? (t === undefined ? d : t) : d); }; } function Root(props) { const bp = props.bp; return React.createElement('div', { style: { width: bp === 'desktop' ? 1440 : '100%', maxWidth: 1440, margin: '0 auto', background: espresso, color: bone, fontFamily: fontUI, overflow: 'hidden' } }, props.children); } /* shared nav */ function NavBar({ active, all, bp }) { const r = mk(bp); const meta = all.meta || {}; const nav = all.nav || {}; const links = [['home', 'Home', 'index.html'], ['about', 'About', 'about.html'], ['reel', 'Reel', 'reel.html'], ['credits', 'Credits', 'credits.html'], ['contact', 'Contact', 'contact.html']] .filter(function (x) { return nav[x[0]] !== false; }); return (
{meta.brand} {meta.union}
{bp !== 'phone' && {meta.resumeLabel} }
); } function SiteFooter({ all, bp }) { const r = mk(bp); const home = all.home || {}; const f = all.footer || {}; const ci = all.contactInfo || {}; const meta = all.meta || {}; const showMats = f.showMaterials !== false; const mats = (Array.isArray(f.materials) ? f.materials : [ { label: 'Résumé ↓ PDF', useResume: true, newTab: true }, { label: 'Headshots ↓', href: 'contact.html', newTab: false }, { label: 'Reel ↗', href: 'reel.html', newTab: false } ]).filter((m) => m && m.label && (m.href || m.useResume)); const creditText = (f.creditText != null && f.creditText !== '') ? f.creditText : 'Site by michaelarondesign.com'; const creditUrl = f.creditUrl || 'https://michaelarondesign.com'; const showCredit = f.showCredit !== false; const lp = (href, newTab) => (newTab || /^https?:\/\//i.test(href || '') || /\.pdf(\?|#|$)/i.test(href || '')) ? { href, target: '_blank', rel: 'noopener noreferrer' } : { href }; return ( ); } function Footer({ all, bp }) { return ; } /* ===================== HOME ===================== */ function Home({ c, all }) { const bp = useBreakpoint(); const r = mk(bp); const gallery = ((all.reel && all.reel.gallery) || []).filter(g => g && g.thumb && g.video); const hasGallery = gallery.length > 0; return ( {/* hero */}
{c.eyebrowNo} · {c.eyebrow}

{c.nameLine1}
{c.nameLine2}

{window.__rich(c.intro, accent)}

{c.stats.map((s) => (
{s.label}
{s.value}
))}
{c.heroCaption}
{/* selected work */}
{c.workEyebrow}

{c.workTitle}

{(!all.footer || all.footer.showFullCredits !== false) && Full credits →}
{c.work.map((w, i) => (
{w.featured &&
Now in production
}
{w.role}{w.year}

{w.title}

{w.meta}
))}
{/* bio essay */}
{c.bioEyebrow}
{c.bioKicker}

{c.bioHeadlineA}{c.bioHeadlineAccent}{c.bioHeadlineB}

I {c.bioLead}

{c.bioPara2}

{c.bioPara3}

{c.bioPara4}

{/* reel */}
{c.reelEyebrow}

{c.reelTitle}

{c.reelMeta}
{hasGallery ? : }
{/* other chapters */}
{c.chaptersEyebrow}

{c.chaptersTitle}

{c.chaptersLead}

{c.chapters.filter((ch) => ch && ch.on !== false && (ch.title || ch.era || ch.body)).map((ch, i) => (
{ch.era}

{ch.title}

{ch.body}

))}
{/* contact footer */}