/** * `@prenta/sections-react` β€” the public renderer for Prenta's * canonical page-content contract (ADR 0001): a document's ordered * `PageSection[]` (`data.sections`). * * Quick start (a Next.js Server Component): * * ```tsx * import { Sections } from '@prenta/sections-react' * * export default async function Page() { * const doc = await client.resolve('/about') * return * } * ``` * * Override a built-in section type for a custom design β€” either per render: * * ```tsx * * ``` * * …or globally at app startup: * * ```ts * import { registerSectionRenderer } from '@prenta/sections-react' * registerSectionRenderer('hero', MyHero) * ``` */ export { Sections, PostHeader } from './Sections.js'; export type { SectionsProps, PostHeaderProps } from './Sections.js'; export { registerSectionRenderer, registerSectionRenderers, unregisterSectionRenderer, resetSectionRenderers, getSectionRenderer, registeredSectionTypes, DEFAULT_SECTION_RENDERERS, } from './registry.js'; export { HeroSection, TextSection, FeatureSection, StatsSection, BadgesSection, FaqSection, CtaSection, FormSection, ArticleBodySection, QuoteSection, AuthorBioSection, RelatedPostsSection, GallerySection, EmbedSection, } from './components/defaults.js'; export { WidgetEmbedSection } from './components/WidgetEmbedSection.js'; export { PrentaForm } from './PrentaForm.js'; export type { PrentaFormProps } from './PrentaForm.js'; export { AttributionTracker, attributionConsentAllowed, captureAttributionIfAllowed, } from './attribution.js'; export { PrentaFormHtml } from './PrentaFormHtml.js'; export type { PrentaFormHtmlProps } from './PrentaFormHtml.js'; export { webMcpFormAttributes, webMcpFieldAttribute } from './webmcp.js'; export { SiteNav } from './SiteNav.js'; export type { SiteNavProps, SiteNavItem } from './SiteNav.js'; export { coercePublicForm, fieldControl, htmlInputType, initialValues, firstMissingRequired, buildSubmitBody, } from './forms.js'; export type { PublicForm, PublicFormField, FieldControl, SubmitBodyArgs } from './forms.js'; /** * Section wrapper classes. Exported because the CMS editor canvas wraps * sections itself rather than using ``, and its padding must match * this exactly β€” a section padded differently in the preview than on the site * makes the reflow guard's line counts wrong. A parity test in @prenta/admin * asserts they agree. */ export { paddingClass, backgroundClass, isDark } from './utils.js'; export { Button } from './primitives.js'; export { defaultRenderImage, Img } from './image.js'; export { createLcpController } from './lcp.js'; export type { LcpController } from './lcp.js'; export { FULL_WIDTH_SIZES, CONTENT_WIDTH_SIZES, FEATURE_SIZES, gallerySizes } from './sizes.js'; export type { PublicSection, PostContext, RenderOptions, ResolvedRenderOptions, RenderImage, RenderImageProps, SectionRenderer, SectionRendererProps, SectionRendererMap, } from './types.js'; //# sourceMappingURL=index.d.ts.map