/* 慶宜僱傭代理 — Resources / Blog page (list + full article view) */ function BlogPage({ setPage, t }) { const B = t.ext.blog, posts = t.ext.posts; const [open, setOpen] = React.useState(null); // article index or null const imgFor = (i) => { const k = ["blog1", "feature", "blog3", "blog4", "blog5", "blog6"][i % 6]; return window.HY_IMG ? window.HY_IMG[k] : undefined; }; React.useEffect(() => { if (window.refreshIcons) window.refreshIcons(); window.scrollTo({ top: 0, behavior: "auto" }); }, [open]); /* ---------- full article view ---------- */ if (open != null) { const p = posts[open]; const others = posts.map((x, i) => ({ x, i })).filter((o) => o.i !== open).slice(0, 3); return (
{p.cat}·{p.date}·{p.read} {B.minRead}

{p.title}

{p.excerpt}

{B.byline}
{p.body.map((sec, i) => (
{sec.h &&

{sec.h}

} {sec.p.map((para, j) =>

{para}

)}
))}

{B.ctaTitle}

{B.ctaText}

setPage("contact")}>{B.ctaBtn}

{B.related}

{others.map(({ x, i }) => (
setOpen(i)}>
{x.cat}
{x.title}
))}
); } /* ---------- list view ---------- */ const feat = posts[0]; return (
setOpen(0)}>
{B.featured}
{feat.cat}·{feat.date}·{feat.read} {B.minRead}

{feat.title}

{feat.excerpt}

{B.readMore}
{posts.slice(1).map((p, i) => (
setOpen(i + 1)}>
{p.cat}
{p.date}·{p.read} {B.minRead}

{p.title}

{p.excerpt}

{B.readMore}
))}
); } window.BlogPage = BlogPage;