mirror of
https://github.com/shadcn-ui/ui.git
synced 2026-06-11 09:51:40 +00:00
* feat: init * fix * fix * fix * feat * feat * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * feat: implement icons * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * feat: update init command * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * feat: dialog * feat * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * feat: add registry:base item type * feat: rename frame to canva * fix * feat * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fi * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * feat: add all colors * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * feat: add outfit font * fix * fix * fix * fix * fix * chore: changeset * fix * fix * fix * fix * fix * fix * fix * fix
81 lines
2.4 KiB
TypeScript
81 lines
2.4 KiB
TypeScript
import { type Metadata } from "next"
|
|
import Link from "next/link"
|
|
|
|
import { Announcement } from "@/components/announcement"
|
|
import { ExamplesNav } from "@/components/examples-nav"
|
|
import {
|
|
PageActions,
|
|
PageHeader,
|
|
PageHeaderDescription,
|
|
PageHeaderHeading,
|
|
} from "@/components/page-header"
|
|
import { PageNav } from "@/components/page-nav"
|
|
import { ThemeSelector } from "@/components/theme-selector"
|
|
import { Button } from "@/registry/new-york-v4/ui/button"
|
|
|
|
export const dynamic = "force-static"
|
|
export const revalidate = false
|
|
|
|
const title = "The Foundation for your Design System"
|
|
const description =
|
|
"A set of beautifully designed components that you can customize, extend, and build on. Start here then make it your own. Open Source. Open Code."
|
|
|
|
export const metadata: Metadata = {
|
|
title,
|
|
description,
|
|
openGraph: {
|
|
images: [
|
|
{
|
|
url: `/og?title=${encodeURIComponent(
|
|
title
|
|
)}&description=${encodeURIComponent(description)}`,
|
|
},
|
|
],
|
|
},
|
|
twitter: {
|
|
card: "summary_large_image",
|
|
images: [
|
|
{
|
|
url: `/og?title=${encodeURIComponent(
|
|
title
|
|
)}&description=${encodeURIComponent(description)}`,
|
|
},
|
|
],
|
|
},
|
|
}
|
|
|
|
export default function ExamplesLayout({
|
|
children,
|
|
}: {
|
|
children: React.ReactNode
|
|
}) {
|
|
return (
|
|
<>
|
|
<PageHeader>
|
|
<Announcement />
|
|
<PageHeaderHeading className="max-w-4xl">{title}</PageHeaderHeading>
|
|
<PageHeaderDescription>{description}</PageHeaderDescription>
|
|
<PageActions>
|
|
<Button asChild size="sm">
|
|
<Link href="/docs/installation">Get Started</Link>
|
|
</Button>
|
|
<Button asChild size="sm" variant="ghost">
|
|
<Link href="/docs/components">View Components</Link>
|
|
</Button>
|
|
</PageActions>
|
|
</PageHeader>
|
|
<PageNav id="examples" className="hidden md:flex">
|
|
<ExamplesNav className="[&>a:first-child]:text-primary flex-1 overflow-hidden" />
|
|
<ThemeSelector className="mr-4 hidden md:flex" />
|
|
</PageNav>
|
|
<div className="container-wrapper section-soft flex flex-1 flex-col pb-6">
|
|
<div className="theme-container container flex flex-1 scroll-mt-20 flex-col">
|
|
<div className="bg-background flex flex-col overflow-hidden rounded-lg border bg-clip-padding md:flex-1 xl:rounded-xl">
|
|
{children}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</>
|
|
)
|
|
}
|