"use client"
import type { ElementType, HTMLAttributes, ReactNode } from "react"
import { cn } from "@/lib/utils"
type PublicSectionProps = {
id?: string
tone?: "default" | "muted" | "warm"
className?: string
containerClassName?: string
children: ReactNode
}
type PublicPageHeaderProps = {
eyebrow?: string
title: string
description?: string
align?: "left" | "center"
className?: string
children?: ReactNode
}
type PublicProseProps = {
className?: string
children: ReactNode
}
export function PublicSection({
id,
tone = "default",
className,
containerClassName,
children,
}: PublicSectionProps) {
return (
)
}
export function PublicPageHeader({
eyebrow,
title,
description,
align = "left",
className,
children,
}: PublicPageHeaderProps) {
const isCentered = align === "center"
return (
{eyebrow ? (
{eyebrow}
) : null}
{title}
{description ? (
{description}
) : null}
{children}
)
}
export function PublicSurface({
as: Component = "div",
className,
children,
...props
}: HTMLAttributes & { as?: ElementType }) {
return (
{children}
)
}
export function PublicInset({
className,
children,
...props
}: HTMLAttributes) {
return (
{children}
)
}
type PublicSectionHeaderProps = {
eyebrow: string
title: string
description: string
className?: string
}
export function PublicSectionHeader({
eyebrow,
title,
description,
className,
}: PublicSectionHeaderProps) {
return (
{eyebrow}
{title}
{description}
)
}
export function PublicProse({ className, children }: PublicProseProps) {
return (
{children}
)
}