|
|
/**
|
|
|
* The blocks catalog — one source for the section rail and the gallery index,
|
|
|
* so a block that lands does not have to be remembered in two places.
|
|
|
* Mirrors `docs/process/PLAN-blocks.md` (F2–F4).
|
|
|
*/
|
|
|
export interface BlockEntry {
|
|
|
slug: string;
|
|
|
label: string;
|
|
|
/** A live demo exists at `/blocks/{slug}`. */
|
|
|
shipped: boolean;
|
|
|
}
|
|
|
|
|
|
export interface BlockGroup {
|
|
|
title: string;
|
|
|
items: BlockEntry[];
|
|
|
}
|
|
|
|
|
|
export const BLOCK_CATALOG: BlockGroup[] = [
|
|
|
{
|
|
|
title: 'Site',
|
|
|
items: [
|
|
|
{ slug: 'site-header', label: 'Site header', shipped: true },
|
|
|
{ slug: 'hero', label: 'Hero', shipped: true },
|
|
|
{ slug: 'feature-grid', label: 'Feature grid', shipped: true },
|
|
|
{ slug: 'feature-split', label: 'Feature split', shipped: true },
|
|
|
{ slug: 'pricing', label: 'Pricing', shipped: true },
|
|
|
{ slug: 'testimonials', label: 'Testimonials', shipped: true },
|
|
|
{ slug: 'faq', label: 'FAQ', shipped: true },
|
|
|
{ slug: 'stats-band', label: 'Stats band', shipped: true },
|
|
|
{ slug: 'logo-cloud', label: 'Logo cloud', shipped: true },
|
|
|
{ slug: 'cta', label: 'CTA', shipped: true },
|
|
|
{ slug: 'newsletter', label: 'Newsletter', shipped: true },
|
|
|
{ slug: 'site-footer', label: 'Site footer', shipped: true },
|
|
|
{ slug: 'banner', label: 'Banner', shipped: true },
|
|
|
{ slug: 'team', label: 'Team', shipped: true },
|
|
|
{ slug: 'contact', label: 'Contact', shipped: true },
|
|
|
{ slug: 'content-section', label: 'Content section', shipped: true }
|
|
|
]
|
|
|
},
|
|
|
{
|
|
|
title: 'App',
|
|
|
items: [
|
|
|
{ slug: 'app-shell', label: 'App shell', shipped: false },
|
|
|
{ slug: 'auth', label: 'Auth', shipped: false },
|
|
|
{ slug: 'data-table', label: 'Data table', shipped: false },
|
|
|
{ slug: 'dashboard', label: 'Dashboard', shipped: false },
|
|
|
{ slug: 'settings', label: 'Settings', shipped: false },
|
|
|
{ slug: 'user-menu', label: 'User menu', shipped: false },
|
|
|
{ slug: 'notifications', label: 'Notifications', shipped: false },
|
|
|
{ slug: 'wizard', label: 'Wizard', shipped: false },
|
|
|
{ slug: 'error-page', label: 'Error page', shipped: false },
|
|
|
{ slug: 'kanban', label: 'Kanban', shipped: false }
|
|
|
]
|
|
|
},
|
|
|
{
|
|
|
title: 'Docs',
|
|
|
items: [
|
|
|
{ slug: 'docs-shell', label: 'Docs shell', shipped: false },
|
|
|
{ slug: 'code-showcase', label: 'Code showcase', shipped: false },
|
|
|
{ slug: 'props-table', label: 'Props table', shipped: false }
|
|
|
]
|
|
|
}
|
|
|
];
|