Files
zeekay 05fc512820 feat: sync upstream shadcn/ui — [email protected], v4 app, font system, chart improvements
Upstream sync from shadcn-ui/ui (1686 commits since last merge base).

Key changes:
- packages/shadcn upgraded to 4.1.0 (CLI font transformers, scaffold from github, chart colors)
- apps/v4 replaces apps/www as the primary docs/registry app
- Font system: 25+ heading font registries, font markers utility, @supports override
- Chart improvements: recharts v3 compat, radial chart fixes
- templates/ updated with monorepo variants (astro, vite, react-router, start)
- skills/shadcn AI skill definitions added
- deprecated/ removed (auth, auth-firebase, cli, www)

Preserved Hanzo-only paths: app/, pkg/, demo/, docs/, template/next/
2026-03-24 19:04:31 -07:00

62 lines
1.4 KiB
TypeScript

import { cn } from "@/lib/utils"
function PageHeader({
className,
children,
...props
}: React.ComponentProps<"section">) {
return (
<section className={cn("border-grid", className)} {...props}>
<div className="container-wrapper">
<div className="container flex flex-col items-center gap-2 px-6 py-8 text-center md:py-16 lg:py-20 xl:gap-4">
{children}
</div>
</div>
</section>
)
}
function PageHeaderHeading({
className,
...props
}: React.ComponentProps<"h1">) {
return (
<h1
className={cn(
"leading-tighter max-w-3xl text-3xl font-semibold tracking-tight text-balance text-primary lg:leading-[1.1] lg:font-semibold xl:text-5xl xl:tracking-tighter",
className
)}
{...props}
/>
)
}
function PageHeaderDescription({
className,
...props
}: React.ComponentProps<"p">) {
return (
<p
className={cn(
"max-w-4xl text-base text-balance text-foreground sm:text-lg",
className
)}
{...props}
/>
)
}
function PageActions({ className, ...props }: React.ComponentProps<"div">) {
return (
<div
className={cn(
"flex w-full items-center justify-center gap-2 pt-2 **:data-[slot=button]:shadow-none",
className
)}
{...props}
/>
)
}
export { PageActions, PageHeader, PageHeaderDescription, PageHeaderHeading }