/** * Builds FAQPage JSON-LD (schema.org) from Q&A pairs. Google can show these as * expandable FAQ rich results under the page, taking more SERP space and helping * with voice/AI answers. Strong for service landing pages. * * Feed it the SAME questions/answers rendered on the page (from an FAQ block in * the panel) — the structured data must match visible content, or Google may * flag it. Never invent Q&A that isn't on the page. * * import { buildFaqJsonLd } from '@intecion/ipal-kit' * const jsonLd = buildFaqJsonLd( * faqBlock.items.map(i => ({ question: i.question, answer: i.answer })) * ) * * Returns null for empty list. */ export function buildFaqJsonLd(items) { if (!items || items.length === 0) { return null; } return { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: items.map((item)=>({ name: item.question, '@type': 'Question', acceptedAnswer: { '@type': 'Answer', text: item.answer } })) }; } //# sourceMappingURL=buildFaqJsonLd.js.map