diff --git a/.github/ISSUE_TEMPLATE/block_request.yml b/.github/ISSUE_TEMPLATE/block_request.yml new file mode 100644 index 000000000..31f46dbc6 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/block_request.yml @@ -0,0 +1,27 @@ +name: "Request a block" +description: "Request a new block for shadcn/ui." +title: "[blocks]: " +labels: ["area: blocks", "area: request"] +body: + - type: markdown + attributes: + value: | + ### Thanks for taking the time to create a block request! Please search open/closed requests before submitting, as the block or a similar one may have already been requested. + + - type: textarea + id: block-description + attributes: + label: Description + description: Tell us about your block request + placeholder: "A dashboard for an e-commerce website showing sales, orders, and customers..." + validations: + required: true + + - type: input + id: block-example-url + attributes: + label: Example + description: Link to an example of the block + placeholder: ex. https://example.com + validations: + required: false diff --git a/apps/www/__registry__/index.tsx b/apps/www/__registry__/index.tsx index 828a8b699..e0d1ceaaa 100644 --- a/apps/www/__registry__/index.tsx +++ b/apps/www/__registry__/index.tsx @@ -11,6 +11,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/accordion")), files: ["registry/default/ui/accordion.tsx"], + category: "undefined", + subcategory: "undefined", }, "alert": { name: "alert", @@ -18,6 +20,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/alert")), files: ["registry/default/ui/alert.tsx"], + category: "undefined", + subcategory: "undefined", }, "alert-dialog": { name: "alert-dialog", @@ -25,6 +29,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/ui/alert-dialog")), files: ["registry/default/ui/alert-dialog.tsx"], + category: "undefined", + subcategory: "undefined", }, "aspect-ratio": { name: "aspect-ratio", @@ -32,6 +38,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/aspect-ratio")), files: ["registry/default/ui/aspect-ratio.tsx"], + category: "undefined", + subcategory: "undefined", }, "avatar": { name: "avatar", @@ -39,6 +47,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/avatar")), files: ["registry/default/ui/avatar.tsx"], + category: "undefined", + subcategory: "undefined", }, "badge": { name: "badge", @@ -46,6 +56,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/badge")), files: ["registry/default/ui/badge.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb": { name: "breadcrumb", @@ -53,6 +65,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/breadcrumb")), files: ["registry/default/ui/breadcrumb.tsx"], + category: "undefined", + subcategory: "undefined", }, "button": { name: "button", @@ -60,6 +74,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/button")), files: ["registry/default/ui/button.tsx"], + category: "undefined", + subcategory: "undefined", }, "calendar": { name: "calendar", @@ -67,6 +83,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/ui/calendar")), files: ["registry/default/ui/calendar.tsx"], + category: "undefined", + subcategory: "undefined", }, "card": { name: "card", @@ -74,6 +92,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/card")), files: ["registry/default/ui/card.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel": { name: "carousel", @@ -81,6 +101,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/ui/carousel")), files: ["registry/default/ui/carousel.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox": { name: "checkbox", @@ -88,6 +110,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/checkbox")), files: ["registry/default/ui/checkbox.tsx"], + category: "undefined", + subcategory: "undefined", }, "collapsible": { name: "collapsible", @@ -95,6 +119,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/collapsible")), files: ["registry/default/ui/collapsible.tsx"], + category: "undefined", + subcategory: "undefined", }, "command": { name: "command", @@ -102,6 +128,8 @@ export const Index: Record = { registryDependencies: ["dialog"], component: React.lazy(() => import("@/registry/default/ui/command")), files: ["registry/default/ui/command.tsx"], + category: "undefined", + subcategory: "undefined", }, "context-menu": { name: "context-menu", @@ -109,6 +137,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/context-menu")), files: ["registry/default/ui/context-menu.tsx"], + category: "undefined", + subcategory: "undefined", }, "dialog": { name: "dialog", @@ -116,6 +146,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/dialog")), files: ["registry/default/ui/dialog.tsx"], + category: "undefined", + subcategory: "undefined", }, "drawer": { name: "drawer", @@ -123,6 +155,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/drawer")), files: ["registry/default/ui/drawer.tsx"], + category: "undefined", + subcategory: "undefined", }, "dropdown-menu": { name: "dropdown-menu", @@ -130,6 +164,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/dropdown-menu")), files: ["registry/default/ui/dropdown-menu.tsx"], + category: "undefined", + subcategory: "undefined", }, "form": { name: "form", @@ -137,6 +173,8 @@ export const Index: Record = { registryDependencies: ["button","label"], component: React.lazy(() => import("@/registry/default/ui/form")), files: ["registry/default/ui/form.tsx"], + category: "undefined", + subcategory: "undefined", }, "hover-card": { name: "hover-card", @@ -144,6 +182,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/hover-card")), files: ["registry/default/ui/hover-card.tsx"], + category: "undefined", + subcategory: "undefined", }, "input": { name: "input", @@ -151,6 +191,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/input")), files: ["registry/default/ui/input.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp": { name: "input-otp", @@ -158,6 +200,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/input-otp")), files: ["registry/default/ui/input-otp.tsx"], + category: "undefined", + subcategory: "undefined", }, "label": { name: "label", @@ -165,6 +209,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/label")), files: ["registry/default/ui/label.tsx"], + category: "undefined", + subcategory: "undefined", }, "menubar": { name: "menubar", @@ -172,6 +218,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/menubar")), files: ["registry/default/ui/menubar.tsx"], + category: "undefined", + subcategory: "undefined", }, "navigation-menu": { name: "navigation-menu", @@ -179,6 +227,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/navigation-menu")), files: ["registry/default/ui/navigation-menu.tsx"], + category: "undefined", + subcategory: "undefined", }, "pagination": { name: "pagination", @@ -186,6 +236,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/ui/pagination")), files: ["registry/default/ui/pagination.tsx"], + category: "undefined", + subcategory: "undefined", }, "popover": { name: "popover", @@ -193,6 +245,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/popover")), files: ["registry/default/ui/popover.tsx"], + category: "undefined", + subcategory: "undefined", }, "progress": { name: "progress", @@ -200,6 +254,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/progress")), files: ["registry/default/ui/progress.tsx"], + category: "undefined", + subcategory: "undefined", }, "radio-group": { name: "radio-group", @@ -207,6 +263,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/radio-group")), files: ["registry/default/ui/radio-group.tsx"], + category: "undefined", + subcategory: "undefined", }, "resizable": { name: "resizable", @@ -214,6 +272,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/resizable")), files: ["registry/default/ui/resizable.tsx"], + category: "undefined", + subcategory: "undefined", }, "scroll-area": { name: "scroll-area", @@ -221,6 +281,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/scroll-area")), files: ["registry/default/ui/scroll-area.tsx"], + category: "undefined", + subcategory: "undefined", }, "select": { name: "select", @@ -228,6 +290,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/select")), files: ["registry/default/ui/select.tsx"], + category: "undefined", + subcategory: "undefined", }, "separator": { name: "separator", @@ -235,6 +299,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/separator")), files: ["registry/default/ui/separator.tsx"], + category: "undefined", + subcategory: "undefined", }, "sheet": { name: "sheet", @@ -242,6 +308,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/sheet")), files: ["registry/default/ui/sheet.tsx"], + category: "undefined", + subcategory: "undefined", }, "skeleton": { name: "skeleton", @@ -249,6 +317,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/skeleton")), files: ["registry/default/ui/skeleton.tsx"], + category: "undefined", + subcategory: "undefined", }, "slider": { name: "slider", @@ -256,6 +326,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/slider")), files: ["registry/default/ui/slider.tsx"], + category: "undefined", + subcategory: "undefined", }, "sonner": { name: "sonner", @@ -263,6 +335,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/sonner")), files: ["registry/default/ui/sonner.tsx"], + category: "undefined", + subcategory: "undefined", }, "switch": { name: "switch", @@ -270,6 +344,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/switch")), files: ["registry/default/ui/switch.tsx"], + category: "undefined", + subcategory: "undefined", }, "table": { name: "table", @@ -277,6 +353,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/table")), files: ["registry/default/ui/table.tsx"], + category: "undefined", + subcategory: "undefined", }, "tabs": { name: "tabs", @@ -284,6 +362,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/tabs")), files: ["registry/default/ui/tabs.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea": { name: "textarea", @@ -291,6 +371,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/textarea")), files: ["registry/default/ui/textarea.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast": { name: "toast", @@ -298,6 +380,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/toast")), files: ["registry/default/ui/toast.tsx","registry/default/ui/use-toast.ts","registry/default/ui/toaster.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle": { name: "toggle", @@ -305,6 +389,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/toggle")), files: ["registry/default/ui/toggle.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group": { name: "toggle-group", @@ -312,6 +398,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/default/ui/toggle-group")), files: ["registry/default/ui/toggle-group.tsx"], + category: "undefined", + subcategory: "undefined", }, "tooltip": { name: "tooltip", @@ -319,6 +407,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/ui/tooltip")), files: ["registry/default/ui/tooltip.tsx"], + category: "undefined", + subcategory: "undefined", }, "accordion-demo": { name: "accordion-demo", @@ -326,6 +416,8 @@ export const Index: Record = { registryDependencies: ["accordion"], component: React.lazy(() => import("@/registry/default/example/accordion-demo")), files: ["registry/default/example/accordion-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "alert-demo": { name: "alert-demo", @@ -333,6 +425,8 @@ export const Index: Record = { registryDependencies: ["alert"], component: React.lazy(() => import("@/registry/default/example/alert-demo")), files: ["registry/default/example/alert-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "alert-destructive": { name: "alert-destructive", @@ -340,6 +434,8 @@ export const Index: Record = { registryDependencies: ["alert"], component: React.lazy(() => import("@/registry/default/example/alert-destructive")), files: ["registry/default/example/alert-destructive.tsx"], + category: "undefined", + subcategory: "undefined", }, "alert-dialog-demo": { name: "alert-dialog-demo", @@ -347,6 +443,8 @@ export const Index: Record = { registryDependencies: ["alert-dialog","button"], component: React.lazy(() => import("@/registry/default/example/alert-dialog-demo")), files: ["registry/default/example/alert-dialog-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "aspect-ratio-demo": { name: "aspect-ratio-demo", @@ -354,6 +452,8 @@ export const Index: Record = { registryDependencies: ["aspect-ratio"], component: React.lazy(() => import("@/registry/default/example/aspect-ratio-demo")), files: ["registry/default/example/aspect-ratio-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "avatar-demo": { name: "avatar-demo", @@ -361,6 +461,8 @@ export const Index: Record = { registryDependencies: ["avatar"], component: React.lazy(() => import("@/registry/default/example/avatar-demo")), files: ["registry/default/example/avatar-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "badge-demo": { name: "badge-demo", @@ -368,6 +470,8 @@ export const Index: Record = { registryDependencies: ["badge"], component: React.lazy(() => import("@/registry/default/example/badge-demo")), files: ["registry/default/example/badge-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "badge-destructive": { name: "badge-destructive", @@ -375,6 +479,8 @@ export const Index: Record = { registryDependencies: ["badge"], component: React.lazy(() => import("@/registry/default/example/badge-destructive")), files: ["registry/default/example/badge-destructive.tsx"], + category: "undefined", + subcategory: "undefined", }, "badge-outline": { name: "badge-outline", @@ -382,6 +488,8 @@ export const Index: Record = { registryDependencies: ["badge"], component: React.lazy(() => import("@/registry/default/example/badge-outline")), files: ["registry/default/example/badge-outline.tsx"], + category: "undefined", + subcategory: "undefined", }, "badge-secondary": { name: "badge-secondary", @@ -389,6 +497,8 @@ export const Index: Record = { registryDependencies: ["badge"], component: React.lazy(() => import("@/registry/default/example/badge-secondary")), files: ["registry/default/example/badge-secondary.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-demo": { name: "breadcrumb-demo", @@ -396,6 +506,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/default/example/breadcrumb-demo")), files: ["registry/default/example/breadcrumb-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-separator": { name: "breadcrumb-separator", @@ -403,6 +515,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/default/example/breadcrumb-separator")), files: ["registry/default/example/breadcrumb-separator.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-dropdown": { name: "breadcrumb-dropdown", @@ -410,6 +524,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/default/example/breadcrumb-dropdown")), files: ["registry/default/example/breadcrumb-dropdown.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-ellipsis": { name: "breadcrumb-ellipsis", @@ -417,6 +533,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/default/example/breadcrumb-ellipsis")), files: ["registry/default/example/breadcrumb-ellipsis.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-link": { name: "breadcrumb-link", @@ -424,6 +542,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/default/example/breadcrumb-link")), files: ["registry/default/example/breadcrumb-link.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-responsive": { name: "breadcrumb-responsive", @@ -431,6 +551,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/default/example/breadcrumb-responsive")), files: ["registry/default/example/breadcrumb-responsive.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-demo": { name: "button-demo", @@ -438,6 +560,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/example/button-demo")), files: ["registry/default/example/button-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-secondary": { name: "button-secondary", @@ -445,6 +569,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/example/button-secondary")), files: ["registry/default/example/button-secondary.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-destructive": { name: "button-destructive", @@ -452,6 +578,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/example/button-destructive")), files: ["registry/default/example/button-destructive.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-outline": { name: "button-outline", @@ -459,6 +587,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/example/button-outline")), files: ["registry/default/example/button-outline.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-ghost": { name: "button-ghost", @@ -466,6 +596,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/example/button-ghost")), files: ["registry/default/example/button-ghost.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-link": { name: "button-link", @@ -473,6 +605,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/example/button-link")), files: ["registry/default/example/button-link.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-with-icon": { name: "button-with-icon", @@ -480,6 +614,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/example/button-with-icon")), files: ["registry/default/example/button-with-icon.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-loading": { name: "button-loading", @@ -487,6 +623,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/example/button-loading")), files: ["registry/default/example/button-loading.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-icon": { name: "button-icon", @@ -494,6 +632,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/example/button-icon")), files: ["registry/default/example/button-icon.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-as-child": { name: "button-as-child", @@ -501,6 +641,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/default/example/button-as-child")), files: ["registry/default/example/button-as-child.tsx"], + category: "undefined", + subcategory: "undefined", }, "calendar-demo": { name: "calendar-demo", @@ -508,6 +650,8 @@ export const Index: Record = { registryDependencies: ["calendar"], component: React.lazy(() => import("@/registry/default/example/calendar-demo")), files: ["registry/default/example/calendar-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "calendar-form": { name: "calendar-form", @@ -515,6 +659,8 @@ export const Index: Record = { registryDependencies: ["calendar","form","popover"], component: React.lazy(() => import("@/registry/default/example/calendar-form")), files: ["registry/default/example/calendar-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "card-demo": { name: "card-demo", @@ -522,6 +668,8 @@ export const Index: Record = { registryDependencies: ["card","button","switch"], component: React.lazy(() => import("@/registry/default/example/card-demo")), files: ["registry/default/example/card-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "card-with-form": { name: "card-with-form", @@ -529,6 +677,8 @@ export const Index: Record = { registryDependencies: ["button","card","input","label","select"], component: React.lazy(() => import("@/registry/default/example/card-with-form")), files: ["registry/default/example/card-with-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-demo": { name: "carousel-demo", @@ -536,6 +686,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/default/example/carousel-demo")), files: ["registry/default/example/carousel-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-size": { name: "carousel-size", @@ -543,6 +695,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/default/example/carousel-size")), files: ["registry/default/example/carousel-size.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-spacing": { name: "carousel-spacing", @@ -550,6 +704,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/default/example/carousel-spacing")), files: ["registry/default/example/carousel-spacing.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-orientation": { name: "carousel-orientation", @@ -557,6 +713,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/default/example/carousel-orientation")), files: ["registry/default/example/carousel-orientation.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-api": { name: "carousel-api", @@ -564,6 +722,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/default/example/carousel-api")), files: ["registry/default/example/carousel-api.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-plugin": { name: "carousel-plugin", @@ -571,6 +731,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/default/example/carousel-plugin")), files: ["registry/default/example/carousel-plugin.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox-demo": { name: "checkbox-demo", @@ -578,6 +740,8 @@ export const Index: Record = { registryDependencies: ["checkbox"], component: React.lazy(() => import("@/registry/default/example/checkbox-demo")), files: ["registry/default/example/checkbox-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox-disabled": { name: "checkbox-disabled", @@ -585,6 +749,8 @@ export const Index: Record = { registryDependencies: ["checkbox"], component: React.lazy(() => import("@/registry/default/example/checkbox-disabled")), files: ["registry/default/example/checkbox-disabled.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox-form-multiple": { name: "checkbox-form-multiple", @@ -592,6 +758,8 @@ export const Index: Record = { registryDependencies: ["checkbox","form"], component: React.lazy(() => import("@/registry/default/example/checkbox-form-multiple")), files: ["registry/default/example/checkbox-form-multiple.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox-form-single": { name: "checkbox-form-single", @@ -599,6 +767,8 @@ export const Index: Record = { registryDependencies: ["checkbox","form"], component: React.lazy(() => import("@/registry/default/example/checkbox-form-single")), files: ["registry/default/example/checkbox-form-single.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox-with-text": { name: "checkbox-with-text", @@ -606,6 +776,8 @@ export const Index: Record = { registryDependencies: ["checkbox"], component: React.lazy(() => import("@/registry/default/example/checkbox-with-text")), files: ["registry/default/example/checkbox-with-text.tsx"], + category: "undefined", + subcategory: "undefined", }, "collapsible-demo": { name: "collapsible-demo", @@ -613,6 +785,8 @@ export const Index: Record = { registryDependencies: ["collapsible"], component: React.lazy(() => import("@/registry/default/example/collapsible-demo")), files: ["registry/default/example/collapsible-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "combobox-demo": { name: "combobox-demo", @@ -620,6 +794,8 @@ export const Index: Record = { registryDependencies: ["command"], component: React.lazy(() => import("@/registry/default/example/combobox-demo")), files: ["registry/default/example/combobox-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "combobox-dropdown-menu": { name: "combobox-dropdown-menu", @@ -627,6 +803,8 @@ export const Index: Record = { registryDependencies: ["command","dropdown-menu","button"], component: React.lazy(() => import("@/registry/default/example/combobox-dropdown-menu")), files: ["registry/default/example/combobox-dropdown-menu.tsx"], + category: "undefined", + subcategory: "undefined", }, "combobox-form": { name: "combobox-form", @@ -634,6 +812,8 @@ export const Index: Record = { registryDependencies: ["command","form"], component: React.lazy(() => import("@/registry/default/example/combobox-form")), files: ["registry/default/example/combobox-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "combobox-popover": { name: "combobox-popover", @@ -641,6 +821,8 @@ export const Index: Record = { registryDependencies: ["combobox","popover"], component: React.lazy(() => import("@/registry/default/example/combobox-popover")), files: ["registry/default/example/combobox-popover.tsx"], + category: "undefined", + subcategory: "undefined", }, "combobox-responsive": { name: "combobox-responsive", @@ -648,6 +830,8 @@ export const Index: Record = { registryDependencies: ["combobox","popover","drawer"], component: React.lazy(() => import("@/registry/default/example/combobox-responsive")), files: ["registry/default/example/combobox-responsive.tsx"], + category: "undefined", + subcategory: "undefined", }, "command-demo": { name: "command-demo", @@ -655,6 +839,8 @@ export const Index: Record = { registryDependencies: ["command"], component: React.lazy(() => import("@/registry/default/example/command-demo")), files: ["registry/default/example/command-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "command-dialog": { name: "command-dialog", @@ -662,6 +848,8 @@ export const Index: Record = { registryDependencies: ["command","dialog"], component: React.lazy(() => import("@/registry/default/example/command-dialog")), files: ["registry/default/example/command-dialog.tsx"], + category: "undefined", + subcategory: "undefined", }, "context-menu-demo": { name: "context-menu-demo", @@ -669,6 +857,8 @@ export const Index: Record = { registryDependencies: ["context-menu"], component: React.lazy(() => import("@/registry/default/example/context-menu-demo")), files: ["registry/default/example/context-menu-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "data-table-demo": { name: "data-table-demo", @@ -676,6 +866,8 @@ export const Index: Record = { registryDependencies: ["data-table"], component: React.lazy(() => import("@/registry/default/example/data-table-demo")), files: ["registry/default/example/data-table-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "date-picker-demo": { name: "date-picker-demo", @@ -683,6 +875,8 @@ export const Index: Record = { registryDependencies: ["button","calendar","popover"], component: React.lazy(() => import("@/registry/default/example/date-picker-demo")), files: ["registry/default/example/date-picker-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "date-picker-form": { name: "date-picker-form", @@ -690,6 +884,8 @@ export const Index: Record = { registryDependencies: ["button","calendar","form","popover"], component: React.lazy(() => import("@/registry/default/example/date-picker-form")), files: ["registry/default/example/date-picker-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "date-picker-with-presets": { name: "date-picker-with-presets", @@ -697,6 +893,8 @@ export const Index: Record = { registryDependencies: ["button","calendar","popover","select"], component: React.lazy(() => import("@/registry/default/example/date-picker-with-presets")), files: ["registry/default/example/date-picker-with-presets.tsx"], + category: "undefined", + subcategory: "undefined", }, "date-picker-with-range": { name: "date-picker-with-range", @@ -704,6 +902,8 @@ export const Index: Record = { registryDependencies: ["button","calendar","popover"], component: React.lazy(() => import("@/registry/default/example/date-picker-with-range")), files: ["registry/default/example/date-picker-with-range.tsx"], + category: "undefined", + subcategory: "undefined", }, "dialog-demo": { name: "dialog-demo", @@ -711,6 +911,8 @@ export const Index: Record = { registryDependencies: ["dialog"], component: React.lazy(() => import("@/registry/default/example/dialog-demo")), files: ["registry/default/example/dialog-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "dialog-close-button": { name: "dialog-close-button", @@ -718,6 +920,8 @@ export const Index: Record = { registryDependencies: ["dialog","button"], component: React.lazy(() => import("@/registry/default/example/dialog-close-button")), files: ["registry/default/example/dialog-close-button.tsx"], + category: "undefined", + subcategory: "undefined", }, "drawer-demo": { name: "drawer-demo", @@ -725,6 +929,8 @@ export const Index: Record = { registryDependencies: ["drawer"], component: React.lazy(() => import("@/registry/default/example/drawer-demo")), files: ["registry/default/example/drawer-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "drawer-dialog": { name: "drawer-dialog", @@ -732,6 +938,8 @@ export const Index: Record = { registryDependencies: ["drawer","dialog"], component: React.lazy(() => import("@/registry/default/example/drawer-dialog")), files: ["registry/default/example/drawer-dialog.tsx"], + category: "undefined", + subcategory: "undefined", }, "dropdown-menu-demo": { name: "dropdown-menu-demo", @@ -739,6 +947,8 @@ export const Index: Record = { registryDependencies: ["dropdown-menu"], component: React.lazy(() => import("@/registry/default/example/dropdown-menu-demo")), files: ["registry/default/example/dropdown-menu-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "dropdown-menu-checkboxes": { name: "dropdown-menu-checkboxes", @@ -746,6 +956,8 @@ export const Index: Record = { registryDependencies: ["dropdown-menu","checkbox"], component: React.lazy(() => import("@/registry/default/example/dropdown-menu-checkboxes")), files: ["registry/default/example/dropdown-menu-checkboxes.tsx"], + category: "undefined", + subcategory: "undefined", }, "dropdown-menu-radio-group": { name: "dropdown-menu-radio-group", @@ -753,6 +965,8 @@ export const Index: Record = { registryDependencies: ["dropdown-menu","radio-group"], component: React.lazy(() => import("@/registry/default/example/dropdown-menu-radio-group")), files: ["registry/default/example/dropdown-menu-radio-group.tsx"], + category: "undefined", + subcategory: "undefined", }, "hover-card-demo": { name: "hover-card-demo", @@ -760,6 +974,8 @@ export const Index: Record = { registryDependencies: ["hover-card"], component: React.lazy(() => import("@/registry/default/example/hover-card-demo")), files: ["registry/default/example/hover-card-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-demo": { name: "input-demo", @@ -767,6 +983,8 @@ export const Index: Record = { registryDependencies: ["input"], component: React.lazy(() => import("@/registry/default/example/input-demo")), files: ["registry/default/example/input-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-disabled": { name: "input-disabled", @@ -774,6 +992,8 @@ export const Index: Record = { registryDependencies: ["input"], component: React.lazy(() => import("@/registry/default/example/input-disabled")), files: ["registry/default/example/input-disabled.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-file": { name: "input-file", @@ -781,6 +1001,8 @@ export const Index: Record = { registryDependencies: ["input"], component: React.lazy(() => import("@/registry/default/example/input-file")), files: ["registry/default/example/input-file.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-form": { name: "input-form", @@ -788,6 +1010,8 @@ export const Index: Record = { registryDependencies: ["input","button","form"], component: React.lazy(() => import("@/registry/default/example/input-form")), files: ["registry/default/example/input-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-with-button": { name: "input-with-button", @@ -795,6 +1019,8 @@ export const Index: Record = { registryDependencies: ["input","button"], component: React.lazy(() => import("@/registry/default/example/input-with-button")), files: ["registry/default/example/input-with-button.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-with-label": { name: "input-with-label", @@ -802,6 +1028,8 @@ export const Index: Record = { registryDependencies: ["input","button","label"], component: React.lazy(() => import("@/registry/default/example/input-with-label")), files: ["registry/default/example/input-with-label.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-with-text": { name: "input-with-text", @@ -809,6 +1037,8 @@ export const Index: Record = { registryDependencies: ["input","button","label"], component: React.lazy(() => import("@/registry/default/example/input-with-text")), files: ["registry/default/example/input-with-text.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp-demo": { name: "input-otp-demo", @@ -816,6 +1046,8 @@ export const Index: Record = { registryDependencies: ["input-otp"], component: React.lazy(() => import("@/registry/default/example/input-otp-demo")), files: ["registry/default/example/input-otp-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp-pattern": { name: "input-otp-pattern", @@ -823,6 +1055,8 @@ export const Index: Record = { registryDependencies: ["input-otp"], component: React.lazy(() => import("@/registry/default/example/input-otp-pattern")), files: ["registry/default/example/input-otp-pattern.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp-separator": { name: "input-otp-separator", @@ -830,6 +1064,8 @@ export const Index: Record = { registryDependencies: ["input-otp"], component: React.lazy(() => import("@/registry/default/example/input-otp-separator")), files: ["registry/default/example/input-otp-separator.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp-controlled": { name: "input-otp-controlled", @@ -837,6 +1073,8 @@ export const Index: Record = { registryDependencies: ["input-otp"], component: React.lazy(() => import("@/registry/default/example/input-otp-controlled")), files: ["registry/default/example/input-otp-controlled.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp-form": { name: "input-otp-form", @@ -844,6 +1082,8 @@ export const Index: Record = { registryDependencies: ["input-otp","form"], component: React.lazy(() => import("@/registry/default/example/input-otp-form")), files: ["registry/default/example/input-otp-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "label-demo": { name: "label-demo", @@ -851,6 +1091,8 @@ export const Index: Record = { registryDependencies: ["label"], component: React.lazy(() => import("@/registry/default/example/label-demo")), files: ["registry/default/example/label-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "menubar-demo": { name: "menubar-demo", @@ -858,6 +1100,8 @@ export const Index: Record = { registryDependencies: ["menubar"], component: React.lazy(() => import("@/registry/default/example/menubar-demo")), files: ["registry/default/example/menubar-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "navigation-menu-demo": { name: "navigation-menu-demo", @@ -865,6 +1109,8 @@ export const Index: Record = { registryDependencies: ["navigation-menu"], component: React.lazy(() => import("@/registry/default/example/navigation-menu-demo")), files: ["registry/default/example/navigation-menu-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "pagination-demo": { name: "pagination-demo", @@ -872,6 +1118,8 @@ export const Index: Record = { registryDependencies: ["pagination"], component: React.lazy(() => import("@/registry/default/example/pagination-demo")), files: ["registry/default/example/pagination-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "popover-demo": { name: "popover-demo", @@ -879,6 +1127,8 @@ export const Index: Record = { registryDependencies: ["popover"], component: React.lazy(() => import("@/registry/default/example/popover-demo")), files: ["registry/default/example/popover-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "progress-demo": { name: "progress-demo", @@ -886,6 +1136,8 @@ export const Index: Record = { registryDependencies: ["progress"], component: React.lazy(() => import("@/registry/default/example/progress-demo")), files: ["registry/default/example/progress-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "radio-group-demo": { name: "radio-group-demo", @@ -893,6 +1145,8 @@ export const Index: Record = { registryDependencies: ["radio-group"], component: React.lazy(() => import("@/registry/default/example/radio-group-demo")), files: ["registry/default/example/radio-group-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "radio-group-form": { name: "radio-group-form", @@ -900,6 +1154,8 @@ export const Index: Record = { registryDependencies: ["radio-group","form"], component: React.lazy(() => import("@/registry/default/example/radio-group-form")), files: ["registry/default/example/radio-group-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "resizable-demo": { name: "resizable-demo", @@ -907,6 +1163,8 @@ export const Index: Record = { registryDependencies: ["resizable"], component: React.lazy(() => import("@/registry/default/example/resizable-demo")), files: ["registry/default/example/resizable-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "resizable-demo-with-handle": { name: "resizable-demo-with-handle", @@ -914,6 +1172,8 @@ export const Index: Record = { registryDependencies: ["resizable"], component: React.lazy(() => import("@/registry/default/example/resizable-demo-with-handle")), files: ["registry/default/example/resizable-demo-with-handle.tsx"], + category: "undefined", + subcategory: "undefined", }, "resizable-vertical": { name: "resizable-vertical", @@ -921,6 +1181,8 @@ export const Index: Record = { registryDependencies: ["resizable"], component: React.lazy(() => import("@/registry/default/example/resizable-vertical")), files: ["registry/default/example/resizable-vertical.tsx"], + category: "undefined", + subcategory: "undefined", }, "resizable-handle": { name: "resizable-handle", @@ -928,6 +1190,8 @@ export const Index: Record = { registryDependencies: ["resizable"], component: React.lazy(() => import("@/registry/default/example/resizable-handle")), files: ["registry/default/example/resizable-handle.tsx"], + category: "undefined", + subcategory: "undefined", }, "scroll-area-demo": { name: "scroll-area-demo", @@ -935,6 +1199,8 @@ export const Index: Record = { registryDependencies: ["scroll-area"], component: React.lazy(() => import("@/registry/default/example/scroll-area-demo")), files: ["registry/default/example/scroll-area-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "scroll-area-horizontal-demo": { name: "scroll-area-horizontal-demo", @@ -942,6 +1208,8 @@ export const Index: Record = { registryDependencies: ["scroll-area"], component: React.lazy(() => import("@/registry/default/example/scroll-area-horizontal-demo")), files: ["registry/default/example/scroll-area-horizontal-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "select-demo": { name: "select-demo", @@ -949,6 +1217,8 @@ export const Index: Record = { registryDependencies: ["select"], component: React.lazy(() => import("@/registry/default/example/select-demo")), files: ["registry/default/example/select-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "select-scrollable": { name: "select-scrollable", @@ -956,6 +1226,8 @@ export const Index: Record = { registryDependencies: ["select"], component: React.lazy(() => import("@/registry/default/example/select-scrollable")), files: ["registry/default/example/select-scrollable.tsx"], + category: "undefined", + subcategory: "undefined", }, "select-form": { name: "select-form", @@ -963,6 +1235,8 @@ export const Index: Record = { registryDependencies: ["select"], component: React.lazy(() => import("@/registry/default/example/select-form")), files: ["registry/default/example/select-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "separator-demo": { name: "separator-demo", @@ -970,6 +1244,8 @@ export const Index: Record = { registryDependencies: ["separator"], component: React.lazy(() => import("@/registry/default/example/separator-demo")), files: ["registry/default/example/separator-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "sheet-demo": { name: "sheet-demo", @@ -977,6 +1253,8 @@ export const Index: Record = { registryDependencies: ["sheet"], component: React.lazy(() => import("@/registry/default/example/sheet-demo")), files: ["registry/default/example/sheet-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "sheet-side": { name: "sheet-side", @@ -984,6 +1262,8 @@ export const Index: Record = { registryDependencies: ["sheet"], component: React.lazy(() => import("@/registry/default/example/sheet-side")), files: ["registry/default/example/sheet-side.tsx"], + category: "undefined", + subcategory: "undefined", }, "skeleton-demo": { name: "skeleton-demo", @@ -991,6 +1271,8 @@ export const Index: Record = { registryDependencies: ["skeleton"], component: React.lazy(() => import("@/registry/default/example/skeleton-demo")), files: ["registry/default/example/skeleton-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "skeleton-card": { name: "skeleton-card", @@ -998,6 +1280,8 @@ export const Index: Record = { registryDependencies: ["skeleton"], component: React.lazy(() => import("@/registry/default/example/skeleton-card")), files: ["registry/default/example/skeleton-card.tsx"], + category: "undefined", + subcategory: "undefined", }, "slider-demo": { name: "slider-demo", @@ -1005,6 +1289,8 @@ export const Index: Record = { registryDependencies: ["slider"], component: React.lazy(() => import("@/registry/default/example/slider-demo")), files: ["registry/default/example/slider-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "sonner-demo": { name: "sonner-demo", @@ -1012,6 +1298,8 @@ export const Index: Record = { registryDependencies: ["sonner"], component: React.lazy(() => import("@/registry/default/example/sonner-demo")), files: ["registry/default/example/sonner-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "switch-demo": { name: "switch-demo", @@ -1019,6 +1307,8 @@ export const Index: Record = { registryDependencies: ["switch"], component: React.lazy(() => import("@/registry/default/example/switch-demo")), files: ["registry/default/example/switch-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "switch-form": { name: "switch-form", @@ -1026,6 +1316,8 @@ export const Index: Record = { registryDependencies: ["switch","form"], component: React.lazy(() => import("@/registry/default/example/switch-form")), files: ["registry/default/example/switch-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "table-demo": { name: "table-demo", @@ -1033,6 +1325,8 @@ export const Index: Record = { registryDependencies: ["table"], component: React.lazy(() => import("@/registry/default/example/table-demo")), files: ["registry/default/example/table-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "tabs-demo": { name: "tabs-demo", @@ -1040,6 +1334,8 @@ export const Index: Record = { registryDependencies: ["tabs"], component: React.lazy(() => import("@/registry/default/example/tabs-demo")), files: ["registry/default/example/tabs-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-demo": { name: "textarea-demo", @@ -1047,6 +1343,8 @@ export const Index: Record = { registryDependencies: ["textarea"], component: React.lazy(() => import("@/registry/default/example/textarea-demo")), files: ["registry/default/example/textarea-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-disabled": { name: "textarea-disabled", @@ -1054,6 +1352,8 @@ export const Index: Record = { registryDependencies: ["textarea"], component: React.lazy(() => import("@/registry/default/example/textarea-disabled")), files: ["registry/default/example/textarea-disabled.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-form": { name: "textarea-form", @@ -1061,6 +1361,8 @@ export const Index: Record = { registryDependencies: ["textarea","form"], component: React.lazy(() => import("@/registry/default/example/textarea-form")), files: ["registry/default/example/textarea-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-with-button": { name: "textarea-with-button", @@ -1068,6 +1370,8 @@ export const Index: Record = { registryDependencies: ["textarea","button"], component: React.lazy(() => import("@/registry/default/example/textarea-with-button")), files: ["registry/default/example/textarea-with-button.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-with-label": { name: "textarea-with-label", @@ -1075,6 +1379,8 @@ export const Index: Record = { registryDependencies: ["textarea","label"], component: React.lazy(() => import("@/registry/default/example/textarea-with-label")), files: ["registry/default/example/textarea-with-label.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-with-text": { name: "textarea-with-text", @@ -1082,6 +1388,8 @@ export const Index: Record = { registryDependencies: ["textarea","label"], component: React.lazy(() => import("@/registry/default/example/textarea-with-text")), files: ["registry/default/example/textarea-with-text.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast-demo": { name: "toast-demo", @@ -1089,6 +1397,8 @@ export const Index: Record = { registryDependencies: ["toast"], component: React.lazy(() => import("@/registry/default/example/toast-demo")), files: ["registry/default/example/toast-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast-destructive": { name: "toast-destructive", @@ -1096,6 +1406,8 @@ export const Index: Record = { registryDependencies: ["toast"], component: React.lazy(() => import("@/registry/default/example/toast-destructive")), files: ["registry/default/example/toast-destructive.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast-simple": { name: "toast-simple", @@ -1103,6 +1415,8 @@ export const Index: Record = { registryDependencies: ["toast"], component: React.lazy(() => import("@/registry/default/example/toast-simple")), files: ["registry/default/example/toast-simple.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast-with-action": { name: "toast-with-action", @@ -1110,6 +1424,8 @@ export const Index: Record = { registryDependencies: ["toast"], component: React.lazy(() => import("@/registry/default/example/toast-with-action")), files: ["registry/default/example/toast-with-action.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast-with-title": { name: "toast-with-title", @@ -1117,6 +1433,8 @@ export const Index: Record = { registryDependencies: ["toast"], component: React.lazy(() => import("@/registry/default/example/toast-with-title")), files: ["registry/default/example/toast-with-title.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-demo": { name: "toggle-group-demo", @@ -1124,6 +1442,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/default/example/toggle-group-demo")), files: ["registry/default/example/toggle-group-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-disabled": { name: "toggle-group-disabled", @@ -1131,6 +1451,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/default/example/toggle-group-disabled")), files: ["registry/default/example/toggle-group-disabled.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-lg": { name: "toggle-group-lg", @@ -1138,6 +1460,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/default/example/toggle-group-lg")), files: ["registry/default/example/toggle-group-lg.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-outline": { name: "toggle-group-outline", @@ -1145,6 +1469,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/default/example/toggle-group-outline")), files: ["registry/default/example/toggle-group-outline.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-sm": { name: "toggle-group-sm", @@ -1152,6 +1478,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/default/example/toggle-group-sm")), files: ["registry/default/example/toggle-group-sm.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-single": { name: "toggle-group-single", @@ -1159,6 +1487,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/default/example/toggle-group-single")), files: ["registry/default/example/toggle-group-single.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-demo": { name: "toggle-demo", @@ -1166,6 +1496,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/default/example/toggle-demo")), files: ["registry/default/example/toggle-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-disabled": { name: "toggle-disabled", @@ -1173,6 +1505,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/default/example/toggle-disabled")), files: ["registry/default/example/toggle-disabled.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-lg": { name: "toggle-lg", @@ -1180,6 +1514,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/default/example/toggle-lg")), files: ["registry/default/example/toggle-lg.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-outline": { name: "toggle-outline", @@ -1187,6 +1523,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/default/example/toggle-outline")), files: ["registry/default/example/toggle-outline.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-sm": { name: "toggle-sm", @@ -1194,6 +1532,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/default/example/toggle-sm")), files: ["registry/default/example/toggle-sm.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-with-text": { name: "toggle-with-text", @@ -1201,6 +1541,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/default/example/toggle-with-text")), files: ["registry/default/example/toggle-with-text.tsx"], + category: "undefined", + subcategory: "undefined", }, "tooltip-demo": { name: "tooltip-demo", @@ -1208,6 +1550,8 @@ export const Index: Record = { registryDependencies: ["tooltip"], component: React.lazy(() => import("@/registry/default/example/tooltip-demo")), files: ["registry/default/example/tooltip-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-blockquote": { name: "typography-blockquote", @@ -1215,6 +1559,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-blockquote")), files: ["registry/default/example/typography-blockquote.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-demo": { name: "typography-demo", @@ -1222,6 +1568,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-demo")), files: ["registry/default/example/typography-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-h1": { name: "typography-h1", @@ -1229,6 +1577,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-h1")), files: ["registry/default/example/typography-h1.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-h2": { name: "typography-h2", @@ -1236,6 +1586,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-h2")), files: ["registry/default/example/typography-h2.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-h3": { name: "typography-h3", @@ -1243,6 +1595,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-h3")), files: ["registry/default/example/typography-h3.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-h4": { name: "typography-h4", @@ -1250,6 +1604,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-h4")), files: ["registry/default/example/typography-h4.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-inline-code": { name: "typography-inline-code", @@ -1257,6 +1613,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-inline-code")), files: ["registry/default/example/typography-inline-code.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-large": { name: "typography-large", @@ -1264,6 +1622,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-large")), files: ["registry/default/example/typography-large.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-lead": { name: "typography-lead", @@ -1271,6 +1631,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-lead")), files: ["registry/default/example/typography-lead.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-list": { name: "typography-list", @@ -1278,6 +1640,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-list")), files: ["registry/default/example/typography-list.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-muted": { name: "typography-muted", @@ -1285,6 +1649,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-muted")), files: ["registry/default/example/typography-muted.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-p": { name: "typography-p", @@ -1292,6 +1658,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-p")), files: ["registry/default/example/typography-p.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-small": { name: "typography-small", @@ -1299,6 +1667,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-small")), files: ["registry/default/example/typography-small.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-table": { name: "typography-table", @@ -1306,6 +1676,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/typography-table")), files: ["registry/default/example/typography-table.tsx"], + category: "undefined", + subcategory: "undefined", }, "mode-toggle": { name: "mode-toggle", @@ -1313,6 +1685,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/mode-toggle")), files: ["registry/default/example/mode-toggle.tsx"], + category: "undefined", + subcategory: "undefined", }, "cards": { name: "cards", @@ -1320,6 +1694,80 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/default/example/cards")), files: ["registry/default/example/cards/cards.tsx"], + category: "undefined", + subcategory: "undefined", + }, + "dashboard-01": { + name: "dashboard-01", + type: "components:block", + registryDependencies: ["button","dropdown-menu","input","sheet"], + component: React.lazy(() => import("@/registry/default/block/dashboard-01")), + files: ["registry/default/block/dashboard-01.tsx"], + category: "Application", + subcategory: "Dashboard", + }, + "dashboard-02": { + name: "dashboard-02", + type: "components:block", + registryDependencies: ["badge","button","card","dropdown-menu","input"], + component: React.lazy(() => import("@/registry/default/block/dashboard-02")), + files: ["registry/default/block/dashboard-02.tsx"], + category: "Application", + subcategory: "Dashboard", + }, + "dashboard-03": { + name: "dashboard-03", + type: "components:block", + registryDependencies: ["badge","button","drawer","input","label","select","textarea","tooltip"], + component: React.lazy(() => import("@/registry/default/block/dashboard-03")), + files: ["registry/default/block/dashboard-03.tsx"], + category: "Application", + subcategory: "Dashboard", + }, + "dashboard-04": { + name: "dashboard-04", + type: "components:block", + registryDependencies: ["button","card","dropdown-menu","input"], + component: React.lazy(() => import("@/registry/default/block/dashboard-04")), + files: ["registry/default/block/dashboard-04.tsx"], + category: "Application", + subcategory: "Dashboard", + }, + "authentication-01": { + name: "authentication-01", + type: "components:block", + registryDependencies: ["button","card","input","label"], + component: React.lazy(() => import("@/registry/default/block/authentication-01")), + files: ["registry/default/block/authentication-01.tsx"], + category: "Authentication", + subcategory: "Login", + }, + "authentication-02": { + name: "authentication-02", + type: "components:block", + registryDependencies: ["button","card","input","label"], + component: React.lazy(() => import("@/registry/default/block/authentication-02")), + files: ["registry/default/block/authentication-02.tsx"], + category: "Authentication", + subcategory: "Login", + }, + "authentication-03": { + name: "authentication-03", + type: "components:block", + registryDependencies: ["button","card","input","label"], + component: React.lazy(() => import("@/registry/default/block/authentication-03")), + files: ["registry/default/block/authentication-03.tsx"], + category: "Authentication", + subcategory: "Login", + }, + "authentication-04": { + name: "authentication-04", + type: "components:block", + registryDependencies: ["button","card","input","label"], + component: React.lazy(() => import("@/registry/default/block/authentication-04")), + files: ["registry/default/block/authentication-04.tsx"], + category: "Authentication", + subcategory: "Login", }, }, "new-york": { "accordion": { @@ -1328,6 +1776,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/accordion")), files: ["registry/new-york/ui/accordion.tsx"], + category: "undefined", + subcategory: "undefined", }, "alert": { name: "alert", @@ -1335,6 +1785,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/alert")), files: ["registry/new-york/ui/alert.tsx"], + category: "undefined", + subcategory: "undefined", }, "alert-dialog": { name: "alert-dialog", @@ -1342,6 +1794,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/ui/alert-dialog")), files: ["registry/new-york/ui/alert-dialog.tsx"], + category: "undefined", + subcategory: "undefined", }, "aspect-ratio": { name: "aspect-ratio", @@ -1349,6 +1803,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/aspect-ratio")), files: ["registry/new-york/ui/aspect-ratio.tsx"], + category: "undefined", + subcategory: "undefined", }, "avatar": { name: "avatar", @@ -1356,6 +1812,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/avatar")), files: ["registry/new-york/ui/avatar.tsx"], + category: "undefined", + subcategory: "undefined", }, "badge": { name: "badge", @@ -1363,6 +1821,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/badge")), files: ["registry/new-york/ui/badge.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb": { name: "breadcrumb", @@ -1370,6 +1830,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/breadcrumb")), files: ["registry/new-york/ui/breadcrumb.tsx"], + category: "undefined", + subcategory: "undefined", }, "button": { name: "button", @@ -1377,6 +1839,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/button")), files: ["registry/new-york/ui/button.tsx"], + category: "undefined", + subcategory: "undefined", }, "calendar": { name: "calendar", @@ -1384,6 +1848,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/ui/calendar")), files: ["registry/new-york/ui/calendar.tsx"], + category: "undefined", + subcategory: "undefined", }, "card": { name: "card", @@ -1391,6 +1857,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/card")), files: ["registry/new-york/ui/card.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel": { name: "carousel", @@ -1398,6 +1866,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/ui/carousel")), files: ["registry/new-york/ui/carousel.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox": { name: "checkbox", @@ -1405,6 +1875,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/checkbox")), files: ["registry/new-york/ui/checkbox.tsx"], + category: "undefined", + subcategory: "undefined", }, "collapsible": { name: "collapsible", @@ -1412,6 +1884,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/collapsible")), files: ["registry/new-york/ui/collapsible.tsx"], + category: "undefined", + subcategory: "undefined", }, "command": { name: "command", @@ -1419,6 +1893,8 @@ export const Index: Record = { registryDependencies: ["dialog"], component: React.lazy(() => import("@/registry/new-york/ui/command")), files: ["registry/new-york/ui/command.tsx"], + category: "undefined", + subcategory: "undefined", }, "context-menu": { name: "context-menu", @@ -1426,6 +1902,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/context-menu")), files: ["registry/new-york/ui/context-menu.tsx"], + category: "undefined", + subcategory: "undefined", }, "dialog": { name: "dialog", @@ -1433,6 +1911,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/dialog")), files: ["registry/new-york/ui/dialog.tsx"], + category: "undefined", + subcategory: "undefined", }, "drawer": { name: "drawer", @@ -1440,6 +1920,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/drawer")), files: ["registry/new-york/ui/drawer.tsx"], + category: "undefined", + subcategory: "undefined", }, "dropdown-menu": { name: "dropdown-menu", @@ -1447,6 +1929,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/dropdown-menu")), files: ["registry/new-york/ui/dropdown-menu.tsx"], + category: "undefined", + subcategory: "undefined", }, "form": { name: "form", @@ -1454,6 +1938,8 @@ export const Index: Record = { registryDependencies: ["button","label"], component: React.lazy(() => import("@/registry/new-york/ui/form")), files: ["registry/new-york/ui/form.tsx"], + category: "undefined", + subcategory: "undefined", }, "hover-card": { name: "hover-card", @@ -1461,6 +1947,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/hover-card")), files: ["registry/new-york/ui/hover-card.tsx"], + category: "undefined", + subcategory: "undefined", }, "input": { name: "input", @@ -1468,6 +1956,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/input")), files: ["registry/new-york/ui/input.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp": { name: "input-otp", @@ -1475,6 +1965,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/input-otp")), files: ["registry/new-york/ui/input-otp.tsx"], + category: "undefined", + subcategory: "undefined", }, "label": { name: "label", @@ -1482,6 +1974,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/label")), files: ["registry/new-york/ui/label.tsx"], + category: "undefined", + subcategory: "undefined", }, "menubar": { name: "menubar", @@ -1489,6 +1983,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/menubar")), files: ["registry/new-york/ui/menubar.tsx"], + category: "undefined", + subcategory: "undefined", }, "navigation-menu": { name: "navigation-menu", @@ -1496,6 +1992,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/navigation-menu")), files: ["registry/new-york/ui/navigation-menu.tsx"], + category: "undefined", + subcategory: "undefined", }, "pagination": { name: "pagination", @@ -1503,6 +2001,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/ui/pagination")), files: ["registry/new-york/ui/pagination.tsx"], + category: "undefined", + subcategory: "undefined", }, "popover": { name: "popover", @@ -1510,6 +2010,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/popover")), files: ["registry/new-york/ui/popover.tsx"], + category: "undefined", + subcategory: "undefined", }, "progress": { name: "progress", @@ -1517,6 +2019,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/progress")), files: ["registry/new-york/ui/progress.tsx"], + category: "undefined", + subcategory: "undefined", }, "radio-group": { name: "radio-group", @@ -1524,6 +2028,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/radio-group")), files: ["registry/new-york/ui/radio-group.tsx"], + category: "undefined", + subcategory: "undefined", }, "resizable": { name: "resizable", @@ -1531,6 +2037,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/resizable")), files: ["registry/new-york/ui/resizable.tsx"], + category: "undefined", + subcategory: "undefined", }, "scroll-area": { name: "scroll-area", @@ -1538,6 +2046,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/scroll-area")), files: ["registry/new-york/ui/scroll-area.tsx"], + category: "undefined", + subcategory: "undefined", }, "select": { name: "select", @@ -1545,6 +2055,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/select")), files: ["registry/new-york/ui/select.tsx"], + category: "undefined", + subcategory: "undefined", }, "separator": { name: "separator", @@ -1552,6 +2064,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/separator")), files: ["registry/new-york/ui/separator.tsx"], + category: "undefined", + subcategory: "undefined", }, "sheet": { name: "sheet", @@ -1559,6 +2073,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/sheet")), files: ["registry/new-york/ui/sheet.tsx"], + category: "undefined", + subcategory: "undefined", }, "skeleton": { name: "skeleton", @@ -1566,6 +2082,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/skeleton")), files: ["registry/new-york/ui/skeleton.tsx"], + category: "undefined", + subcategory: "undefined", }, "slider": { name: "slider", @@ -1573,6 +2091,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/slider")), files: ["registry/new-york/ui/slider.tsx"], + category: "undefined", + subcategory: "undefined", }, "sonner": { name: "sonner", @@ -1580,6 +2100,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/sonner")), files: ["registry/new-york/ui/sonner.tsx"], + category: "undefined", + subcategory: "undefined", }, "switch": { name: "switch", @@ -1587,6 +2109,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/switch")), files: ["registry/new-york/ui/switch.tsx"], + category: "undefined", + subcategory: "undefined", }, "table": { name: "table", @@ -1594,6 +2118,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/table")), files: ["registry/new-york/ui/table.tsx"], + category: "undefined", + subcategory: "undefined", }, "tabs": { name: "tabs", @@ -1601,6 +2127,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/tabs")), files: ["registry/new-york/ui/tabs.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea": { name: "textarea", @@ -1608,6 +2136,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/textarea")), files: ["registry/new-york/ui/textarea.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast": { name: "toast", @@ -1615,6 +2145,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/toast")), files: ["registry/new-york/ui/toast.tsx","registry/new-york/ui/use-toast.ts","registry/new-york/ui/toaster.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle": { name: "toggle", @@ -1622,6 +2154,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/toggle")), files: ["registry/new-york/ui/toggle.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group": { name: "toggle-group", @@ -1629,6 +2163,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/new-york/ui/toggle-group")), files: ["registry/new-york/ui/toggle-group.tsx"], + category: "undefined", + subcategory: "undefined", }, "tooltip": { name: "tooltip", @@ -1636,6 +2172,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/ui/tooltip")), files: ["registry/new-york/ui/tooltip.tsx"], + category: "undefined", + subcategory: "undefined", }, "accordion-demo": { name: "accordion-demo", @@ -1643,6 +2181,8 @@ export const Index: Record = { registryDependencies: ["accordion"], component: React.lazy(() => import("@/registry/new-york/example/accordion-demo")), files: ["registry/new-york/example/accordion-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "alert-demo": { name: "alert-demo", @@ -1650,6 +2190,8 @@ export const Index: Record = { registryDependencies: ["alert"], component: React.lazy(() => import("@/registry/new-york/example/alert-demo")), files: ["registry/new-york/example/alert-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "alert-destructive": { name: "alert-destructive", @@ -1657,6 +2199,8 @@ export const Index: Record = { registryDependencies: ["alert"], component: React.lazy(() => import("@/registry/new-york/example/alert-destructive")), files: ["registry/new-york/example/alert-destructive.tsx"], + category: "undefined", + subcategory: "undefined", }, "alert-dialog-demo": { name: "alert-dialog-demo", @@ -1664,6 +2208,8 @@ export const Index: Record = { registryDependencies: ["alert-dialog","button"], component: React.lazy(() => import("@/registry/new-york/example/alert-dialog-demo")), files: ["registry/new-york/example/alert-dialog-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "aspect-ratio-demo": { name: "aspect-ratio-demo", @@ -1671,6 +2217,8 @@ export const Index: Record = { registryDependencies: ["aspect-ratio"], component: React.lazy(() => import("@/registry/new-york/example/aspect-ratio-demo")), files: ["registry/new-york/example/aspect-ratio-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "avatar-demo": { name: "avatar-demo", @@ -1678,6 +2226,8 @@ export const Index: Record = { registryDependencies: ["avatar"], component: React.lazy(() => import("@/registry/new-york/example/avatar-demo")), files: ["registry/new-york/example/avatar-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "badge-demo": { name: "badge-demo", @@ -1685,6 +2235,8 @@ export const Index: Record = { registryDependencies: ["badge"], component: React.lazy(() => import("@/registry/new-york/example/badge-demo")), files: ["registry/new-york/example/badge-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "badge-destructive": { name: "badge-destructive", @@ -1692,6 +2244,8 @@ export const Index: Record = { registryDependencies: ["badge"], component: React.lazy(() => import("@/registry/new-york/example/badge-destructive")), files: ["registry/new-york/example/badge-destructive.tsx"], + category: "undefined", + subcategory: "undefined", }, "badge-outline": { name: "badge-outline", @@ -1699,6 +2253,8 @@ export const Index: Record = { registryDependencies: ["badge"], component: React.lazy(() => import("@/registry/new-york/example/badge-outline")), files: ["registry/new-york/example/badge-outline.tsx"], + category: "undefined", + subcategory: "undefined", }, "badge-secondary": { name: "badge-secondary", @@ -1706,6 +2262,8 @@ export const Index: Record = { registryDependencies: ["badge"], component: React.lazy(() => import("@/registry/new-york/example/badge-secondary")), files: ["registry/new-york/example/badge-secondary.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-demo": { name: "breadcrumb-demo", @@ -1713,6 +2271,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/new-york/example/breadcrumb-demo")), files: ["registry/new-york/example/breadcrumb-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-separator": { name: "breadcrumb-separator", @@ -1720,6 +2280,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/new-york/example/breadcrumb-separator")), files: ["registry/new-york/example/breadcrumb-separator.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-dropdown": { name: "breadcrumb-dropdown", @@ -1727,6 +2289,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/new-york/example/breadcrumb-dropdown")), files: ["registry/new-york/example/breadcrumb-dropdown.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-ellipsis": { name: "breadcrumb-ellipsis", @@ -1734,6 +2298,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/new-york/example/breadcrumb-ellipsis")), files: ["registry/new-york/example/breadcrumb-ellipsis.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-link": { name: "breadcrumb-link", @@ -1741,6 +2307,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/new-york/example/breadcrumb-link")), files: ["registry/new-york/example/breadcrumb-link.tsx"], + category: "undefined", + subcategory: "undefined", }, "breadcrumb-responsive": { name: "breadcrumb-responsive", @@ -1748,6 +2316,8 @@ export const Index: Record = { registryDependencies: ["breadcrumb"], component: React.lazy(() => import("@/registry/new-york/example/breadcrumb-responsive")), files: ["registry/new-york/example/breadcrumb-responsive.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-demo": { name: "button-demo", @@ -1755,6 +2325,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/example/button-demo")), files: ["registry/new-york/example/button-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-secondary": { name: "button-secondary", @@ -1762,6 +2334,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/example/button-secondary")), files: ["registry/new-york/example/button-secondary.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-destructive": { name: "button-destructive", @@ -1769,6 +2343,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/example/button-destructive")), files: ["registry/new-york/example/button-destructive.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-outline": { name: "button-outline", @@ -1776,6 +2352,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/example/button-outline")), files: ["registry/new-york/example/button-outline.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-ghost": { name: "button-ghost", @@ -1783,6 +2361,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/example/button-ghost")), files: ["registry/new-york/example/button-ghost.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-link": { name: "button-link", @@ -1790,6 +2370,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/example/button-link")), files: ["registry/new-york/example/button-link.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-with-icon": { name: "button-with-icon", @@ -1797,6 +2379,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/example/button-with-icon")), files: ["registry/new-york/example/button-with-icon.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-loading": { name: "button-loading", @@ -1804,6 +2388,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/example/button-loading")), files: ["registry/new-york/example/button-loading.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-icon": { name: "button-icon", @@ -1811,6 +2397,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/example/button-icon")), files: ["registry/new-york/example/button-icon.tsx"], + category: "undefined", + subcategory: "undefined", }, "button-as-child": { name: "button-as-child", @@ -1818,6 +2406,8 @@ export const Index: Record = { registryDependencies: ["button"], component: React.lazy(() => import("@/registry/new-york/example/button-as-child")), files: ["registry/new-york/example/button-as-child.tsx"], + category: "undefined", + subcategory: "undefined", }, "calendar-demo": { name: "calendar-demo", @@ -1825,6 +2415,8 @@ export const Index: Record = { registryDependencies: ["calendar"], component: React.lazy(() => import("@/registry/new-york/example/calendar-demo")), files: ["registry/new-york/example/calendar-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "calendar-form": { name: "calendar-form", @@ -1832,6 +2424,8 @@ export const Index: Record = { registryDependencies: ["calendar","form","popover"], component: React.lazy(() => import("@/registry/new-york/example/calendar-form")), files: ["registry/new-york/example/calendar-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "card-demo": { name: "card-demo", @@ -1839,6 +2433,8 @@ export const Index: Record = { registryDependencies: ["card","button","switch"], component: React.lazy(() => import("@/registry/new-york/example/card-demo")), files: ["registry/new-york/example/card-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "card-with-form": { name: "card-with-form", @@ -1846,6 +2442,8 @@ export const Index: Record = { registryDependencies: ["button","card","input","label","select"], component: React.lazy(() => import("@/registry/new-york/example/card-with-form")), files: ["registry/new-york/example/card-with-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-demo": { name: "carousel-demo", @@ -1853,6 +2451,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/new-york/example/carousel-demo")), files: ["registry/new-york/example/carousel-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-size": { name: "carousel-size", @@ -1860,6 +2460,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/new-york/example/carousel-size")), files: ["registry/new-york/example/carousel-size.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-spacing": { name: "carousel-spacing", @@ -1867,6 +2469,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/new-york/example/carousel-spacing")), files: ["registry/new-york/example/carousel-spacing.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-orientation": { name: "carousel-orientation", @@ -1874,6 +2478,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/new-york/example/carousel-orientation")), files: ["registry/new-york/example/carousel-orientation.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-api": { name: "carousel-api", @@ -1881,6 +2487,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/new-york/example/carousel-api")), files: ["registry/new-york/example/carousel-api.tsx"], + category: "undefined", + subcategory: "undefined", }, "carousel-plugin": { name: "carousel-plugin", @@ -1888,6 +2496,8 @@ export const Index: Record = { registryDependencies: ["carousel"], component: React.lazy(() => import("@/registry/new-york/example/carousel-plugin")), files: ["registry/new-york/example/carousel-plugin.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox-demo": { name: "checkbox-demo", @@ -1895,6 +2505,8 @@ export const Index: Record = { registryDependencies: ["checkbox"], component: React.lazy(() => import("@/registry/new-york/example/checkbox-demo")), files: ["registry/new-york/example/checkbox-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox-disabled": { name: "checkbox-disabled", @@ -1902,6 +2514,8 @@ export const Index: Record = { registryDependencies: ["checkbox"], component: React.lazy(() => import("@/registry/new-york/example/checkbox-disabled")), files: ["registry/new-york/example/checkbox-disabled.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox-form-multiple": { name: "checkbox-form-multiple", @@ -1909,6 +2523,8 @@ export const Index: Record = { registryDependencies: ["checkbox","form"], component: React.lazy(() => import("@/registry/new-york/example/checkbox-form-multiple")), files: ["registry/new-york/example/checkbox-form-multiple.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox-form-single": { name: "checkbox-form-single", @@ -1916,6 +2532,8 @@ export const Index: Record = { registryDependencies: ["checkbox","form"], component: React.lazy(() => import("@/registry/new-york/example/checkbox-form-single")), files: ["registry/new-york/example/checkbox-form-single.tsx"], + category: "undefined", + subcategory: "undefined", }, "checkbox-with-text": { name: "checkbox-with-text", @@ -1923,6 +2541,8 @@ export const Index: Record = { registryDependencies: ["checkbox"], component: React.lazy(() => import("@/registry/new-york/example/checkbox-with-text")), files: ["registry/new-york/example/checkbox-with-text.tsx"], + category: "undefined", + subcategory: "undefined", }, "collapsible-demo": { name: "collapsible-demo", @@ -1930,6 +2550,8 @@ export const Index: Record = { registryDependencies: ["collapsible"], component: React.lazy(() => import("@/registry/new-york/example/collapsible-demo")), files: ["registry/new-york/example/collapsible-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "combobox-demo": { name: "combobox-demo", @@ -1937,6 +2559,8 @@ export const Index: Record = { registryDependencies: ["command"], component: React.lazy(() => import("@/registry/new-york/example/combobox-demo")), files: ["registry/new-york/example/combobox-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "combobox-dropdown-menu": { name: "combobox-dropdown-menu", @@ -1944,6 +2568,8 @@ export const Index: Record = { registryDependencies: ["command","dropdown-menu","button"], component: React.lazy(() => import("@/registry/new-york/example/combobox-dropdown-menu")), files: ["registry/new-york/example/combobox-dropdown-menu.tsx"], + category: "undefined", + subcategory: "undefined", }, "combobox-form": { name: "combobox-form", @@ -1951,6 +2577,8 @@ export const Index: Record = { registryDependencies: ["command","form"], component: React.lazy(() => import("@/registry/new-york/example/combobox-form")), files: ["registry/new-york/example/combobox-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "combobox-popover": { name: "combobox-popover", @@ -1958,6 +2586,8 @@ export const Index: Record = { registryDependencies: ["combobox","popover"], component: React.lazy(() => import("@/registry/new-york/example/combobox-popover")), files: ["registry/new-york/example/combobox-popover.tsx"], + category: "undefined", + subcategory: "undefined", }, "combobox-responsive": { name: "combobox-responsive", @@ -1965,6 +2595,8 @@ export const Index: Record = { registryDependencies: ["combobox","popover","drawer"], component: React.lazy(() => import("@/registry/new-york/example/combobox-responsive")), files: ["registry/new-york/example/combobox-responsive.tsx"], + category: "undefined", + subcategory: "undefined", }, "command-demo": { name: "command-demo", @@ -1972,6 +2604,8 @@ export const Index: Record = { registryDependencies: ["command"], component: React.lazy(() => import("@/registry/new-york/example/command-demo")), files: ["registry/new-york/example/command-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "command-dialog": { name: "command-dialog", @@ -1979,6 +2613,8 @@ export const Index: Record = { registryDependencies: ["command","dialog"], component: React.lazy(() => import("@/registry/new-york/example/command-dialog")), files: ["registry/new-york/example/command-dialog.tsx"], + category: "undefined", + subcategory: "undefined", }, "context-menu-demo": { name: "context-menu-demo", @@ -1986,6 +2622,8 @@ export const Index: Record = { registryDependencies: ["context-menu"], component: React.lazy(() => import("@/registry/new-york/example/context-menu-demo")), files: ["registry/new-york/example/context-menu-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "data-table-demo": { name: "data-table-demo", @@ -1993,6 +2631,8 @@ export const Index: Record = { registryDependencies: ["data-table"], component: React.lazy(() => import("@/registry/new-york/example/data-table-demo")), files: ["registry/new-york/example/data-table-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "date-picker-demo": { name: "date-picker-demo", @@ -2000,6 +2640,8 @@ export const Index: Record = { registryDependencies: ["button","calendar","popover"], component: React.lazy(() => import("@/registry/new-york/example/date-picker-demo")), files: ["registry/new-york/example/date-picker-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "date-picker-form": { name: "date-picker-form", @@ -2007,6 +2649,8 @@ export const Index: Record = { registryDependencies: ["button","calendar","form","popover"], component: React.lazy(() => import("@/registry/new-york/example/date-picker-form")), files: ["registry/new-york/example/date-picker-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "date-picker-with-presets": { name: "date-picker-with-presets", @@ -2014,6 +2658,8 @@ export const Index: Record = { registryDependencies: ["button","calendar","popover","select"], component: React.lazy(() => import("@/registry/new-york/example/date-picker-with-presets")), files: ["registry/new-york/example/date-picker-with-presets.tsx"], + category: "undefined", + subcategory: "undefined", }, "date-picker-with-range": { name: "date-picker-with-range", @@ -2021,6 +2667,8 @@ export const Index: Record = { registryDependencies: ["button","calendar","popover"], component: React.lazy(() => import("@/registry/new-york/example/date-picker-with-range")), files: ["registry/new-york/example/date-picker-with-range.tsx"], + category: "undefined", + subcategory: "undefined", }, "dialog-demo": { name: "dialog-demo", @@ -2028,6 +2676,8 @@ export const Index: Record = { registryDependencies: ["dialog"], component: React.lazy(() => import("@/registry/new-york/example/dialog-demo")), files: ["registry/new-york/example/dialog-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "dialog-close-button": { name: "dialog-close-button", @@ -2035,6 +2685,8 @@ export const Index: Record = { registryDependencies: ["dialog","button"], component: React.lazy(() => import("@/registry/new-york/example/dialog-close-button")), files: ["registry/new-york/example/dialog-close-button.tsx"], + category: "undefined", + subcategory: "undefined", }, "drawer-demo": { name: "drawer-demo", @@ -2042,6 +2694,8 @@ export const Index: Record = { registryDependencies: ["drawer"], component: React.lazy(() => import("@/registry/new-york/example/drawer-demo")), files: ["registry/new-york/example/drawer-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "drawer-dialog": { name: "drawer-dialog", @@ -2049,6 +2703,8 @@ export const Index: Record = { registryDependencies: ["drawer","dialog"], component: React.lazy(() => import("@/registry/new-york/example/drawer-dialog")), files: ["registry/new-york/example/drawer-dialog.tsx"], + category: "undefined", + subcategory: "undefined", }, "dropdown-menu-demo": { name: "dropdown-menu-demo", @@ -2056,6 +2712,8 @@ export const Index: Record = { registryDependencies: ["dropdown-menu"], component: React.lazy(() => import("@/registry/new-york/example/dropdown-menu-demo")), files: ["registry/new-york/example/dropdown-menu-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "dropdown-menu-checkboxes": { name: "dropdown-menu-checkboxes", @@ -2063,6 +2721,8 @@ export const Index: Record = { registryDependencies: ["dropdown-menu","checkbox"], component: React.lazy(() => import("@/registry/new-york/example/dropdown-menu-checkboxes")), files: ["registry/new-york/example/dropdown-menu-checkboxes.tsx"], + category: "undefined", + subcategory: "undefined", }, "dropdown-menu-radio-group": { name: "dropdown-menu-radio-group", @@ -2070,6 +2730,8 @@ export const Index: Record = { registryDependencies: ["dropdown-menu","radio-group"], component: React.lazy(() => import("@/registry/new-york/example/dropdown-menu-radio-group")), files: ["registry/new-york/example/dropdown-menu-radio-group.tsx"], + category: "undefined", + subcategory: "undefined", }, "hover-card-demo": { name: "hover-card-demo", @@ -2077,6 +2739,8 @@ export const Index: Record = { registryDependencies: ["hover-card"], component: React.lazy(() => import("@/registry/new-york/example/hover-card-demo")), files: ["registry/new-york/example/hover-card-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-demo": { name: "input-demo", @@ -2084,6 +2748,8 @@ export const Index: Record = { registryDependencies: ["input"], component: React.lazy(() => import("@/registry/new-york/example/input-demo")), files: ["registry/new-york/example/input-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-disabled": { name: "input-disabled", @@ -2091,6 +2757,8 @@ export const Index: Record = { registryDependencies: ["input"], component: React.lazy(() => import("@/registry/new-york/example/input-disabled")), files: ["registry/new-york/example/input-disabled.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-file": { name: "input-file", @@ -2098,6 +2766,8 @@ export const Index: Record = { registryDependencies: ["input"], component: React.lazy(() => import("@/registry/new-york/example/input-file")), files: ["registry/new-york/example/input-file.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-form": { name: "input-form", @@ -2105,6 +2775,8 @@ export const Index: Record = { registryDependencies: ["input","button","form"], component: React.lazy(() => import("@/registry/new-york/example/input-form")), files: ["registry/new-york/example/input-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-with-button": { name: "input-with-button", @@ -2112,6 +2784,8 @@ export const Index: Record = { registryDependencies: ["input","button"], component: React.lazy(() => import("@/registry/new-york/example/input-with-button")), files: ["registry/new-york/example/input-with-button.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-with-label": { name: "input-with-label", @@ -2119,6 +2793,8 @@ export const Index: Record = { registryDependencies: ["input","button","label"], component: React.lazy(() => import("@/registry/new-york/example/input-with-label")), files: ["registry/new-york/example/input-with-label.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-with-text": { name: "input-with-text", @@ -2126,6 +2802,8 @@ export const Index: Record = { registryDependencies: ["input","button","label"], component: React.lazy(() => import("@/registry/new-york/example/input-with-text")), files: ["registry/new-york/example/input-with-text.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp-demo": { name: "input-otp-demo", @@ -2133,6 +2811,8 @@ export const Index: Record = { registryDependencies: ["input-otp"], component: React.lazy(() => import("@/registry/new-york/example/input-otp-demo")), files: ["registry/new-york/example/input-otp-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp-pattern": { name: "input-otp-pattern", @@ -2140,6 +2820,8 @@ export const Index: Record = { registryDependencies: ["input-otp"], component: React.lazy(() => import("@/registry/new-york/example/input-otp-pattern")), files: ["registry/new-york/example/input-otp-pattern.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp-separator": { name: "input-otp-separator", @@ -2147,6 +2829,8 @@ export const Index: Record = { registryDependencies: ["input-otp"], component: React.lazy(() => import("@/registry/new-york/example/input-otp-separator")), files: ["registry/new-york/example/input-otp-separator.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp-controlled": { name: "input-otp-controlled", @@ -2154,6 +2838,8 @@ export const Index: Record = { registryDependencies: ["input-otp"], component: React.lazy(() => import("@/registry/new-york/example/input-otp-controlled")), files: ["registry/new-york/example/input-otp-controlled.tsx"], + category: "undefined", + subcategory: "undefined", }, "input-otp-form": { name: "input-otp-form", @@ -2161,6 +2847,8 @@ export const Index: Record = { registryDependencies: ["input-otp","form"], component: React.lazy(() => import("@/registry/new-york/example/input-otp-form")), files: ["registry/new-york/example/input-otp-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "label-demo": { name: "label-demo", @@ -2168,6 +2856,8 @@ export const Index: Record = { registryDependencies: ["label"], component: React.lazy(() => import("@/registry/new-york/example/label-demo")), files: ["registry/new-york/example/label-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "menubar-demo": { name: "menubar-demo", @@ -2175,6 +2865,8 @@ export const Index: Record = { registryDependencies: ["menubar"], component: React.lazy(() => import("@/registry/new-york/example/menubar-demo")), files: ["registry/new-york/example/menubar-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "navigation-menu-demo": { name: "navigation-menu-demo", @@ -2182,6 +2874,8 @@ export const Index: Record = { registryDependencies: ["navigation-menu"], component: React.lazy(() => import("@/registry/new-york/example/navigation-menu-demo")), files: ["registry/new-york/example/navigation-menu-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "pagination-demo": { name: "pagination-demo", @@ -2189,6 +2883,8 @@ export const Index: Record = { registryDependencies: ["pagination"], component: React.lazy(() => import("@/registry/new-york/example/pagination-demo")), files: ["registry/new-york/example/pagination-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "popover-demo": { name: "popover-demo", @@ -2196,6 +2892,8 @@ export const Index: Record = { registryDependencies: ["popover"], component: React.lazy(() => import("@/registry/new-york/example/popover-demo")), files: ["registry/new-york/example/popover-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "progress-demo": { name: "progress-demo", @@ -2203,6 +2901,8 @@ export const Index: Record = { registryDependencies: ["progress"], component: React.lazy(() => import("@/registry/new-york/example/progress-demo")), files: ["registry/new-york/example/progress-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "radio-group-demo": { name: "radio-group-demo", @@ -2210,6 +2910,8 @@ export const Index: Record = { registryDependencies: ["radio-group"], component: React.lazy(() => import("@/registry/new-york/example/radio-group-demo")), files: ["registry/new-york/example/radio-group-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "radio-group-form": { name: "radio-group-form", @@ -2217,6 +2919,8 @@ export const Index: Record = { registryDependencies: ["radio-group","form"], component: React.lazy(() => import("@/registry/new-york/example/radio-group-form")), files: ["registry/new-york/example/radio-group-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "resizable-demo": { name: "resizable-demo", @@ -2224,6 +2928,8 @@ export const Index: Record = { registryDependencies: ["resizable"], component: React.lazy(() => import("@/registry/new-york/example/resizable-demo")), files: ["registry/new-york/example/resizable-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "resizable-demo-with-handle": { name: "resizable-demo-with-handle", @@ -2231,6 +2937,8 @@ export const Index: Record = { registryDependencies: ["resizable"], component: React.lazy(() => import("@/registry/new-york/example/resizable-demo-with-handle")), files: ["registry/new-york/example/resizable-demo-with-handle.tsx"], + category: "undefined", + subcategory: "undefined", }, "resizable-vertical": { name: "resizable-vertical", @@ -2238,6 +2946,8 @@ export const Index: Record = { registryDependencies: ["resizable"], component: React.lazy(() => import("@/registry/new-york/example/resizable-vertical")), files: ["registry/new-york/example/resizable-vertical.tsx"], + category: "undefined", + subcategory: "undefined", }, "resizable-handle": { name: "resizable-handle", @@ -2245,6 +2955,8 @@ export const Index: Record = { registryDependencies: ["resizable"], component: React.lazy(() => import("@/registry/new-york/example/resizable-handle")), files: ["registry/new-york/example/resizable-handle.tsx"], + category: "undefined", + subcategory: "undefined", }, "scroll-area-demo": { name: "scroll-area-demo", @@ -2252,6 +2964,8 @@ export const Index: Record = { registryDependencies: ["scroll-area"], component: React.lazy(() => import("@/registry/new-york/example/scroll-area-demo")), files: ["registry/new-york/example/scroll-area-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "scroll-area-horizontal-demo": { name: "scroll-area-horizontal-demo", @@ -2259,6 +2973,8 @@ export const Index: Record = { registryDependencies: ["scroll-area"], component: React.lazy(() => import("@/registry/new-york/example/scroll-area-horizontal-demo")), files: ["registry/new-york/example/scroll-area-horizontal-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "select-demo": { name: "select-demo", @@ -2266,6 +2982,8 @@ export const Index: Record = { registryDependencies: ["select"], component: React.lazy(() => import("@/registry/new-york/example/select-demo")), files: ["registry/new-york/example/select-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "select-scrollable": { name: "select-scrollable", @@ -2273,6 +2991,8 @@ export const Index: Record = { registryDependencies: ["select"], component: React.lazy(() => import("@/registry/new-york/example/select-scrollable")), files: ["registry/new-york/example/select-scrollable.tsx"], + category: "undefined", + subcategory: "undefined", }, "select-form": { name: "select-form", @@ -2280,6 +3000,8 @@ export const Index: Record = { registryDependencies: ["select"], component: React.lazy(() => import("@/registry/new-york/example/select-form")), files: ["registry/new-york/example/select-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "separator-demo": { name: "separator-demo", @@ -2287,6 +3009,8 @@ export const Index: Record = { registryDependencies: ["separator"], component: React.lazy(() => import("@/registry/new-york/example/separator-demo")), files: ["registry/new-york/example/separator-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "sheet-demo": { name: "sheet-demo", @@ -2294,6 +3018,8 @@ export const Index: Record = { registryDependencies: ["sheet"], component: React.lazy(() => import("@/registry/new-york/example/sheet-demo")), files: ["registry/new-york/example/sheet-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "sheet-side": { name: "sheet-side", @@ -2301,6 +3027,8 @@ export const Index: Record = { registryDependencies: ["sheet"], component: React.lazy(() => import("@/registry/new-york/example/sheet-side")), files: ["registry/new-york/example/sheet-side.tsx"], + category: "undefined", + subcategory: "undefined", }, "skeleton-demo": { name: "skeleton-demo", @@ -2308,6 +3036,8 @@ export const Index: Record = { registryDependencies: ["skeleton"], component: React.lazy(() => import("@/registry/new-york/example/skeleton-demo")), files: ["registry/new-york/example/skeleton-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "skeleton-card": { name: "skeleton-card", @@ -2315,6 +3045,8 @@ export const Index: Record = { registryDependencies: ["skeleton"], component: React.lazy(() => import("@/registry/new-york/example/skeleton-card")), files: ["registry/new-york/example/skeleton-card.tsx"], + category: "undefined", + subcategory: "undefined", }, "slider-demo": { name: "slider-demo", @@ -2322,6 +3054,8 @@ export const Index: Record = { registryDependencies: ["slider"], component: React.lazy(() => import("@/registry/new-york/example/slider-demo")), files: ["registry/new-york/example/slider-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "sonner-demo": { name: "sonner-demo", @@ -2329,6 +3063,8 @@ export const Index: Record = { registryDependencies: ["sonner"], component: React.lazy(() => import("@/registry/new-york/example/sonner-demo")), files: ["registry/new-york/example/sonner-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "switch-demo": { name: "switch-demo", @@ -2336,6 +3072,8 @@ export const Index: Record = { registryDependencies: ["switch"], component: React.lazy(() => import("@/registry/new-york/example/switch-demo")), files: ["registry/new-york/example/switch-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "switch-form": { name: "switch-form", @@ -2343,6 +3081,8 @@ export const Index: Record = { registryDependencies: ["switch","form"], component: React.lazy(() => import("@/registry/new-york/example/switch-form")), files: ["registry/new-york/example/switch-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "table-demo": { name: "table-demo", @@ -2350,6 +3090,8 @@ export const Index: Record = { registryDependencies: ["table"], component: React.lazy(() => import("@/registry/new-york/example/table-demo")), files: ["registry/new-york/example/table-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "tabs-demo": { name: "tabs-demo", @@ -2357,6 +3099,8 @@ export const Index: Record = { registryDependencies: ["tabs"], component: React.lazy(() => import("@/registry/new-york/example/tabs-demo")), files: ["registry/new-york/example/tabs-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-demo": { name: "textarea-demo", @@ -2364,6 +3108,8 @@ export const Index: Record = { registryDependencies: ["textarea"], component: React.lazy(() => import("@/registry/new-york/example/textarea-demo")), files: ["registry/new-york/example/textarea-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-disabled": { name: "textarea-disabled", @@ -2371,6 +3117,8 @@ export const Index: Record = { registryDependencies: ["textarea"], component: React.lazy(() => import("@/registry/new-york/example/textarea-disabled")), files: ["registry/new-york/example/textarea-disabled.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-form": { name: "textarea-form", @@ -2378,6 +3126,8 @@ export const Index: Record = { registryDependencies: ["textarea","form"], component: React.lazy(() => import("@/registry/new-york/example/textarea-form")), files: ["registry/new-york/example/textarea-form.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-with-button": { name: "textarea-with-button", @@ -2385,6 +3135,8 @@ export const Index: Record = { registryDependencies: ["textarea","button"], component: React.lazy(() => import("@/registry/new-york/example/textarea-with-button")), files: ["registry/new-york/example/textarea-with-button.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-with-label": { name: "textarea-with-label", @@ -2392,6 +3144,8 @@ export const Index: Record = { registryDependencies: ["textarea","label"], component: React.lazy(() => import("@/registry/new-york/example/textarea-with-label")), files: ["registry/new-york/example/textarea-with-label.tsx"], + category: "undefined", + subcategory: "undefined", }, "textarea-with-text": { name: "textarea-with-text", @@ -2399,6 +3153,8 @@ export const Index: Record = { registryDependencies: ["textarea","label"], component: React.lazy(() => import("@/registry/new-york/example/textarea-with-text")), files: ["registry/new-york/example/textarea-with-text.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast-demo": { name: "toast-demo", @@ -2406,6 +3162,8 @@ export const Index: Record = { registryDependencies: ["toast"], component: React.lazy(() => import("@/registry/new-york/example/toast-demo")), files: ["registry/new-york/example/toast-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast-destructive": { name: "toast-destructive", @@ -2413,6 +3171,8 @@ export const Index: Record = { registryDependencies: ["toast"], component: React.lazy(() => import("@/registry/new-york/example/toast-destructive")), files: ["registry/new-york/example/toast-destructive.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast-simple": { name: "toast-simple", @@ -2420,6 +3180,8 @@ export const Index: Record = { registryDependencies: ["toast"], component: React.lazy(() => import("@/registry/new-york/example/toast-simple")), files: ["registry/new-york/example/toast-simple.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast-with-action": { name: "toast-with-action", @@ -2427,6 +3189,8 @@ export const Index: Record = { registryDependencies: ["toast"], component: React.lazy(() => import("@/registry/new-york/example/toast-with-action")), files: ["registry/new-york/example/toast-with-action.tsx"], + category: "undefined", + subcategory: "undefined", }, "toast-with-title": { name: "toast-with-title", @@ -2434,6 +3198,8 @@ export const Index: Record = { registryDependencies: ["toast"], component: React.lazy(() => import("@/registry/new-york/example/toast-with-title")), files: ["registry/new-york/example/toast-with-title.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-demo": { name: "toggle-group-demo", @@ -2441,6 +3207,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/new-york/example/toggle-group-demo")), files: ["registry/new-york/example/toggle-group-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-disabled": { name: "toggle-group-disabled", @@ -2448,6 +3216,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/new-york/example/toggle-group-disabled")), files: ["registry/new-york/example/toggle-group-disabled.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-lg": { name: "toggle-group-lg", @@ -2455,6 +3225,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/new-york/example/toggle-group-lg")), files: ["registry/new-york/example/toggle-group-lg.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-outline": { name: "toggle-group-outline", @@ -2462,6 +3234,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/new-york/example/toggle-group-outline")), files: ["registry/new-york/example/toggle-group-outline.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-sm": { name: "toggle-group-sm", @@ -2469,6 +3243,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/new-york/example/toggle-group-sm")), files: ["registry/new-york/example/toggle-group-sm.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-group-single": { name: "toggle-group-single", @@ -2476,6 +3252,8 @@ export const Index: Record = { registryDependencies: ["toggle-group"], component: React.lazy(() => import("@/registry/new-york/example/toggle-group-single")), files: ["registry/new-york/example/toggle-group-single.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-demo": { name: "toggle-demo", @@ -2483,6 +3261,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/new-york/example/toggle-demo")), files: ["registry/new-york/example/toggle-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-disabled": { name: "toggle-disabled", @@ -2490,6 +3270,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/new-york/example/toggle-disabled")), files: ["registry/new-york/example/toggle-disabled.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-lg": { name: "toggle-lg", @@ -2497,6 +3279,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/new-york/example/toggle-lg")), files: ["registry/new-york/example/toggle-lg.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-outline": { name: "toggle-outline", @@ -2504,6 +3288,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/new-york/example/toggle-outline")), files: ["registry/new-york/example/toggle-outline.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-sm": { name: "toggle-sm", @@ -2511,6 +3297,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/new-york/example/toggle-sm")), files: ["registry/new-york/example/toggle-sm.tsx"], + category: "undefined", + subcategory: "undefined", }, "toggle-with-text": { name: "toggle-with-text", @@ -2518,6 +3306,8 @@ export const Index: Record = { registryDependencies: ["toggle"], component: React.lazy(() => import("@/registry/new-york/example/toggle-with-text")), files: ["registry/new-york/example/toggle-with-text.tsx"], + category: "undefined", + subcategory: "undefined", }, "tooltip-demo": { name: "tooltip-demo", @@ -2525,6 +3315,8 @@ export const Index: Record = { registryDependencies: ["tooltip"], component: React.lazy(() => import("@/registry/new-york/example/tooltip-demo")), files: ["registry/new-york/example/tooltip-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-blockquote": { name: "typography-blockquote", @@ -2532,6 +3324,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-blockquote")), files: ["registry/new-york/example/typography-blockquote.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-demo": { name: "typography-demo", @@ -2539,6 +3333,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-demo")), files: ["registry/new-york/example/typography-demo.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-h1": { name: "typography-h1", @@ -2546,6 +3342,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-h1")), files: ["registry/new-york/example/typography-h1.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-h2": { name: "typography-h2", @@ -2553,6 +3351,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-h2")), files: ["registry/new-york/example/typography-h2.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-h3": { name: "typography-h3", @@ -2560,6 +3360,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-h3")), files: ["registry/new-york/example/typography-h3.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-h4": { name: "typography-h4", @@ -2567,6 +3369,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-h4")), files: ["registry/new-york/example/typography-h4.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-inline-code": { name: "typography-inline-code", @@ -2574,6 +3378,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-inline-code")), files: ["registry/new-york/example/typography-inline-code.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-large": { name: "typography-large", @@ -2581,6 +3387,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-large")), files: ["registry/new-york/example/typography-large.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-lead": { name: "typography-lead", @@ -2588,6 +3396,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-lead")), files: ["registry/new-york/example/typography-lead.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-list": { name: "typography-list", @@ -2595,6 +3405,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-list")), files: ["registry/new-york/example/typography-list.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-muted": { name: "typography-muted", @@ -2602,6 +3414,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-muted")), files: ["registry/new-york/example/typography-muted.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-p": { name: "typography-p", @@ -2609,6 +3423,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-p")), files: ["registry/new-york/example/typography-p.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-small": { name: "typography-small", @@ -2616,6 +3432,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-small")), files: ["registry/new-york/example/typography-small.tsx"], + category: "undefined", + subcategory: "undefined", }, "typography-table": { name: "typography-table", @@ -2623,6 +3441,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/typography-table")), files: ["registry/new-york/example/typography-table.tsx"], + category: "undefined", + subcategory: "undefined", }, "mode-toggle": { name: "mode-toggle", @@ -2630,6 +3450,8 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/mode-toggle")), files: ["registry/new-york/example/mode-toggle.tsx"], + category: "undefined", + subcategory: "undefined", }, "cards": { name: "cards", @@ -2637,6 +3459,80 @@ export const Index: Record = { registryDependencies: undefined, component: React.lazy(() => import("@/registry/new-york/example/cards")), files: ["registry/new-york/example/cards/cards.tsx"], + category: "undefined", + subcategory: "undefined", + }, + "dashboard-01": { + name: "dashboard-01", + type: "components:block", + registryDependencies: ["button","dropdown-menu","input","sheet"], + component: React.lazy(() => import("@/registry/new-york/block/dashboard-01")), + files: ["registry/new-york/block/dashboard-01.tsx"], + category: "Application", + subcategory: "Dashboard", + }, + "dashboard-02": { + name: "dashboard-02", + type: "components:block", + registryDependencies: ["badge","button","card","dropdown-menu","input"], + component: React.lazy(() => import("@/registry/new-york/block/dashboard-02")), + files: ["registry/new-york/block/dashboard-02.tsx"], + category: "Application", + subcategory: "Dashboard", + }, + "dashboard-03": { + name: "dashboard-03", + type: "components:block", + registryDependencies: ["badge","button","drawer","input","label","select","textarea","tooltip"], + component: React.lazy(() => import("@/registry/new-york/block/dashboard-03")), + files: ["registry/new-york/block/dashboard-03.tsx"], + category: "Application", + subcategory: "Dashboard", + }, + "dashboard-04": { + name: "dashboard-04", + type: "components:block", + registryDependencies: ["button","card","dropdown-menu","input"], + component: React.lazy(() => import("@/registry/new-york/block/dashboard-04")), + files: ["registry/new-york/block/dashboard-04.tsx"], + category: "Application", + subcategory: "Dashboard", + }, + "authentication-01": { + name: "authentication-01", + type: "components:block", + registryDependencies: ["button","card","input","label"], + component: React.lazy(() => import("@/registry/new-york/block/authentication-01")), + files: ["registry/new-york/block/authentication-01.tsx"], + category: "Authentication", + subcategory: "Login", + }, + "authentication-02": { + name: "authentication-02", + type: "components:block", + registryDependencies: ["button","card","input","label"], + component: React.lazy(() => import("@/registry/new-york/block/authentication-02")), + files: ["registry/new-york/block/authentication-02.tsx"], + category: "Authentication", + subcategory: "Login", + }, + "authentication-03": { + name: "authentication-03", + type: "components:block", + registryDependencies: ["button","card","input","label"], + component: React.lazy(() => import("@/registry/new-york/block/authentication-03")), + files: ["registry/new-york/block/authentication-03.tsx"], + category: "Authentication", + subcategory: "Login", + }, + "authentication-04": { + name: "authentication-04", + type: "components:block", + registryDependencies: ["button","card","input","label"], + component: React.lazy(() => import("@/registry/new-york/block/authentication-04")), + files: ["registry/new-york/block/authentication-04.tsx"], + category: "Authentication", + subcategory: "Login", }, }, } diff --git a/apps/www/actions/edit-in-v0.ts b/apps/www/actions/edit-in-v0.ts new file mode 100644 index 000000000..82d19ced0 --- /dev/null +++ b/apps/www/actions/edit-in-v0.ts @@ -0,0 +1,50 @@ +"use server" + +import { track } from "@vercel/analytics/server" + +const EDIT_IN_V0_SOURCE = "ui.shadcn.com" + +export async function editInV0({ + name, + description, + style, + code, +}: { + name: string + description: string + style: string + code: string +}) { + try { + await track("edit_in_v0", { + name, + description, + style, + }) + + const response = await fetch(`${process.env.V0_URL}/api/edit`, { + method: "POST", + body: JSON.stringify({ description, code, source: EDIT_IN_V0_SOURCE }), + headers: { + "x-v0-edit-secret": process.env.V0_EDIT_SECRET!, + "x-vercel-protection-bypass": + process.env.DEPLOYMENT_PROTECTION_BYPASS || "not-set", + "Content-Type": "application/json", + }, + }) + + if (!response.ok) { + if (response.status === 403) { + throw new Error("Unauthorized") + } + + throw new Error("Something went wrong. Please try again later.") + } + + return await response.json() + } catch (error) { + if (error instanceof Error) { + return { error: error.message } + } + } +} diff --git a/apps/www/app/(app)/blocks/layout.tsx b/apps/www/app/(app)/blocks/layout.tsx new file mode 100644 index 000000000..59291352d --- /dev/null +++ b/apps/www/app/(app)/blocks/layout.tsx @@ -0,0 +1,52 @@ +import { Metadata } from "next" + +import { Announcement } from "@/components/announcement" +import { + PageActions, + PageHeader, + PageHeaderDescription, + PageHeaderHeading, +} from "@/components/page-header" +import { Button } from "@/registry/new-york/ui/button" + +export const metadata: Metadata = { + title: "Building Blocks.", + description: + "Beautifully designed. Copy and paste into your apps. Open Source.", +} + +export default function BlocksLayout({ + children, +}: { + children: React.ReactNode +}) { + return ( +
+ + + + Building Blocks for the Web + + + Beautifully designed. Copy and paste into your apps. Open Source. + + + + + + +
+ {children} +
+
+ ) +} diff --git a/apps/www/app/(app)/blocks/page.tsx b/apps/www/app/(app)/blocks/page.tsx new file mode 100644 index 000000000..bee774684 --- /dev/null +++ b/apps/www/app/(app)/blocks/page.tsx @@ -0,0 +1,10 @@ +import { getAllBlockIds } from "@/lib/blocks" +import { BlockDisplay } from "@/components/block-display" + +export default async function BlocksPage() { + const blocks = await getAllBlockIds() + + return blocks.map((name, index) => ( + + )) +} diff --git a/apps/www/app/docs/[[...slug]]/page.tsx b/apps/www/app/(app)/docs/[[...slug]]/page.tsx similarity index 100% rename from apps/www/app/docs/[[...slug]]/page.tsx rename to apps/www/app/(app)/docs/[[...slug]]/page.tsx diff --git a/apps/www/app/docs/layout.tsx b/apps/www/app/(app)/docs/layout.tsx similarity index 100% rename from apps/www/app/docs/layout.tsx rename to apps/www/app/(app)/docs/layout.tsx diff --git a/apps/www/app/examples/authentication/components/user-auth-form.tsx b/apps/www/app/(app)/examples/authentication/components/user-auth-form.tsx similarity index 100% rename from apps/www/app/examples/authentication/components/user-auth-form.tsx rename to apps/www/app/(app)/examples/authentication/components/user-auth-form.tsx diff --git a/apps/www/app/examples/authentication/page.tsx b/apps/www/app/(app)/examples/authentication/page.tsx similarity index 97% rename from apps/www/app/examples/authentication/page.tsx rename to apps/www/app/(app)/examples/authentication/page.tsx index c994b222c..c21e87f33 100644 --- a/apps/www/app/examples/authentication/page.tsx +++ b/apps/www/app/(app)/examples/authentication/page.tsx @@ -4,7 +4,7 @@ import Link from "next/link" import { cn } from "@/lib/utils" import { buttonVariants } from "@/registry/new-york/ui/button" -import { UserAuthForm } from "@/app/examples/authentication/components/user-auth-form" +import { UserAuthForm } from "@/app/(app)/examples/authentication/components/user-auth-form" export const metadata: Metadata = { title: "Authentication", diff --git a/apps/www/app/examples/cards/components/cookie-settings.tsx b/apps/www/app/(app)/examples/cards/components/cookie-settings.tsx similarity index 100% rename from apps/www/app/examples/cards/components/cookie-settings.tsx rename to apps/www/app/(app)/examples/cards/components/cookie-settings.tsx diff --git a/apps/www/app/examples/cards/components/create-account.tsx b/apps/www/app/(app)/examples/cards/components/create-account.tsx similarity index 100% rename from apps/www/app/examples/cards/components/create-account.tsx rename to apps/www/app/(app)/examples/cards/components/create-account.tsx diff --git a/apps/www/app/examples/cards/components/date-picker.tsx b/apps/www/app/(app)/examples/cards/components/date-picker.tsx similarity index 100% rename from apps/www/app/examples/cards/components/date-picker.tsx rename to apps/www/app/(app)/examples/cards/components/date-picker.tsx diff --git a/apps/www/app/examples/cards/components/github-card.tsx b/apps/www/app/(app)/examples/cards/components/github-card.tsx similarity index 100% rename from apps/www/app/examples/cards/components/github-card.tsx rename to apps/www/app/(app)/examples/cards/components/github-card.tsx diff --git a/apps/www/app/examples/cards/components/notifications.tsx b/apps/www/app/(app)/examples/cards/components/notifications.tsx similarity index 100% rename from apps/www/app/examples/cards/components/notifications.tsx rename to apps/www/app/(app)/examples/cards/components/notifications.tsx diff --git a/apps/www/app/examples/cards/components/payment-method.tsx b/apps/www/app/(app)/examples/cards/components/payment-method.tsx similarity index 100% rename from apps/www/app/examples/cards/components/payment-method.tsx rename to apps/www/app/(app)/examples/cards/components/payment-method.tsx diff --git a/apps/www/app/examples/cards/components/report-an-issue.tsx b/apps/www/app/(app)/examples/cards/components/report-an-issue.tsx similarity index 100% rename from apps/www/app/examples/cards/components/report-an-issue.tsx rename to apps/www/app/(app)/examples/cards/components/report-an-issue.tsx diff --git a/apps/www/app/examples/cards/components/share-document.tsx b/apps/www/app/(app)/examples/cards/components/share-document.tsx similarity index 100% rename from apps/www/app/examples/cards/components/share-document.tsx rename to apps/www/app/(app)/examples/cards/components/share-document.tsx diff --git a/apps/www/app/examples/cards/components/team-members.tsx b/apps/www/app/(app)/examples/cards/components/team-members.tsx similarity index 100% rename from apps/www/app/examples/cards/components/team-members.tsx rename to apps/www/app/(app)/examples/cards/components/team-members.tsx diff --git a/apps/www/app/examples/cards/page.tsx b/apps/www/app/(app)/examples/cards/page.tsx similarity index 100% rename from apps/www/app/examples/cards/page.tsx rename to apps/www/app/(app)/examples/cards/page.tsx diff --git a/apps/www/app/examples/dashboard/components/date-range-picker.tsx b/apps/www/app/(app)/examples/dashboard/components/date-range-picker.tsx similarity index 100% rename from apps/www/app/examples/dashboard/components/date-range-picker.tsx rename to apps/www/app/(app)/examples/dashboard/components/date-range-picker.tsx diff --git a/apps/www/app/examples/dashboard/components/main-nav.tsx b/apps/www/app/(app)/examples/dashboard/components/main-nav.tsx similarity index 100% rename from apps/www/app/examples/dashboard/components/main-nav.tsx rename to apps/www/app/(app)/examples/dashboard/components/main-nav.tsx diff --git a/apps/www/app/examples/dashboard/components/overview.tsx b/apps/www/app/(app)/examples/dashboard/components/overview.tsx similarity index 100% rename from apps/www/app/examples/dashboard/components/overview.tsx rename to apps/www/app/(app)/examples/dashboard/components/overview.tsx diff --git a/apps/www/app/examples/dashboard/components/recent-sales.tsx b/apps/www/app/(app)/examples/dashboard/components/recent-sales.tsx similarity index 100% rename from apps/www/app/examples/dashboard/components/recent-sales.tsx rename to apps/www/app/(app)/examples/dashboard/components/recent-sales.tsx diff --git a/apps/www/app/examples/dashboard/components/search.tsx b/apps/www/app/(app)/examples/dashboard/components/search.tsx similarity index 100% rename from apps/www/app/examples/dashboard/components/search.tsx rename to apps/www/app/(app)/examples/dashboard/components/search.tsx diff --git a/apps/www/app/examples/dashboard/components/team-switcher.tsx b/apps/www/app/(app)/examples/dashboard/components/team-switcher.tsx similarity index 100% rename from apps/www/app/examples/dashboard/components/team-switcher.tsx rename to apps/www/app/(app)/examples/dashboard/components/team-switcher.tsx diff --git a/apps/www/app/examples/dashboard/components/user-nav.tsx b/apps/www/app/(app)/examples/dashboard/components/user-nav.tsx similarity index 100% rename from apps/www/app/examples/dashboard/components/user-nav.tsx rename to apps/www/app/(app)/examples/dashboard/components/user-nav.tsx diff --git a/apps/www/app/examples/dashboard/page.tsx b/apps/www/app/(app)/examples/dashboard/page.tsx similarity index 93% rename from apps/www/app/examples/dashboard/page.tsx rename to apps/www/app/(app)/examples/dashboard/page.tsx index 95b532947..4bc9e301b 100644 --- a/apps/www/app/examples/dashboard/page.tsx +++ b/apps/www/app/(app)/examples/dashboard/page.tsx @@ -15,13 +15,13 @@ import { TabsList, TabsTrigger, } from "@/registry/new-york/ui/tabs" -import { CalendarDateRangePicker } from "@/app/examples/dashboard/components/date-range-picker" -import { MainNav } from "@/app/examples/dashboard/components/main-nav" -import { Overview } from "@/app/examples/dashboard/components/overview" -import { RecentSales } from "@/app/examples/dashboard/components/recent-sales" -import { Search } from "@/app/examples/dashboard/components/search" -import TeamSwitcher from "@/app/examples/dashboard/components/team-switcher" -import { UserNav } from "@/app/examples/dashboard/components/user-nav" +import { CalendarDateRangePicker } from "@/app/(app)/examples/dashboard/components/date-range-picker" +import { MainNav } from "@/app/(app)/examples/dashboard/components/main-nav" +import { Overview } from "@/app/(app)/examples/dashboard/components/overview" +import { RecentSales } from "@/app/(app)/examples/dashboard/components/recent-sales" +import { Search } from "@/app/(app)/examples/dashboard/components/search" +import TeamSwitcher from "@/app/(app)/examples/dashboard/components/team-switcher" +import { UserNav } from "@/app/(app)/examples/dashboard/components/user-nav" export const metadata: Metadata = { title: "Dashboard", diff --git a/apps/www/app/examples/forms/account/account-form.tsx b/apps/www/app/(app)/examples/forms/account/account-form.tsx similarity index 100% rename from apps/www/app/examples/forms/account/account-form.tsx rename to apps/www/app/(app)/examples/forms/account/account-form.tsx diff --git a/apps/www/app/examples/forms/account/page.tsx b/apps/www/app/(app)/examples/forms/account/page.tsx similarity index 85% rename from apps/www/app/examples/forms/account/page.tsx rename to apps/www/app/(app)/examples/forms/account/page.tsx index 1b21224ec..32061ef2e 100644 --- a/apps/www/app/examples/forms/account/page.tsx +++ b/apps/www/app/(app)/examples/forms/account/page.tsx @@ -1,5 +1,5 @@ import { Separator } from "@/registry/new-york/ui/separator" -import { AccountForm } from "@/app/examples/forms/account/account-form" +import { AccountForm } from "@/app/(app)/examples/forms/account/account-form" export default function SettingsAccountPage() { return ( diff --git a/apps/www/app/examples/forms/appearance/appearance-form.tsx b/apps/www/app/(app)/examples/forms/appearance/appearance-form.tsx similarity index 100% rename from apps/www/app/examples/forms/appearance/appearance-form.tsx rename to apps/www/app/(app)/examples/forms/appearance/appearance-form.tsx diff --git a/apps/www/app/examples/forms/appearance/page.tsx b/apps/www/app/(app)/examples/forms/appearance/page.tsx similarity index 84% rename from apps/www/app/examples/forms/appearance/page.tsx rename to apps/www/app/(app)/examples/forms/appearance/page.tsx index 745d07154..16dc0fb96 100644 --- a/apps/www/app/examples/forms/appearance/page.tsx +++ b/apps/www/app/(app)/examples/forms/appearance/page.tsx @@ -1,5 +1,5 @@ import { Separator } from "@/registry/new-york/ui/separator" -import { AppearanceForm } from "@/app/examples/forms/appearance/appearance-form" +import { AppearanceForm } from "@/app/(app)/examples/forms/appearance/appearance-form" export default function SettingsAppearancePage() { return ( diff --git a/apps/www/app/examples/forms/components/sidebar-nav.tsx b/apps/www/app/(app)/examples/forms/components/sidebar-nav.tsx similarity index 100% rename from apps/www/app/examples/forms/components/sidebar-nav.tsx rename to apps/www/app/(app)/examples/forms/components/sidebar-nav.tsx diff --git a/apps/www/app/examples/forms/display/display-form.tsx b/apps/www/app/(app)/examples/forms/display/display-form.tsx similarity index 100% rename from apps/www/app/examples/forms/display/display-form.tsx rename to apps/www/app/(app)/examples/forms/display/display-form.tsx diff --git a/apps/www/app/examples/forms/display/page.tsx b/apps/www/app/(app)/examples/forms/display/page.tsx similarity index 84% rename from apps/www/app/examples/forms/display/page.tsx rename to apps/www/app/(app)/examples/forms/display/page.tsx index e36a69041..5eeb65023 100644 --- a/apps/www/app/examples/forms/display/page.tsx +++ b/apps/www/app/(app)/examples/forms/display/page.tsx @@ -1,5 +1,5 @@ import { Separator } from "@/registry/new-york/ui/separator" -import { DisplayForm } from "@/app/examples/forms/display/display-form" +import { DisplayForm } from "@/app/(app)/examples/forms/display/display-form" export default function SettingsDisplayPage() { return ( diff --git a/apps/www/app/examples/forms/layout.tsx b/apps/www/app/(app)/examples/forms/layout.tsx similarity index 95% rename from apps/www/app/examples/forms/layout.tsx rename to apps/www/app/(app)/examples/forms/layout.tsx index a5d60c7b0..b9baa04ae 100644 --- a/apps/www/app/examples/forms/layout.tsx +++ b/apps/www/app/(app)/examples/forms/layout.tsx @@ -2,7 +2,7 @@ import { Metadata } from "next" import Image from "next/image" import { Separator } from "@/registry/new-york/ui/separator" -import { SidebarNav } from "@/app/examples/forms/components/sidebar-nav" +import { SidebarNav } from "@/app/(app)/examples/forms/components/sidebar-nav" export const metadata: Metadata = { title: "Forms", diff --git a/apps/www/app/examples/forms/notifications/notifications-form.tsx b/apps/www/app/(app)/examples/forms/notifications/notifications-form.tsx similarity index 100% rename from apps/www/app/examples/forms/notifications/notifications-form.tsx rename to apps/www/app/(app)/examples/forms/notifications/notifications-form.tsx diff --git a/apps/www/app/examples/forms/notifications/page.tsx b/apps/www/app/(app)/examples/forms/notifications/page.tsx similarity index 81% rename from apps/www/app/examples/forms/notifications/page.tsx rename to apps/www/app/(app)/examples/forms/notifications/page.tsx index 4e0c2547f..0c97e908c 100644 --- a/apps/www/app/examples/forms/notifications/page.tsx +++ b/apps/www/app/(app)/examples/forms/notifications/page.tsx @@ -1,5 +1,5 @@ import { Separator } from "@/registry/new-york/ui/separator" -import { NotificationsForm } from "@/app/examples/forms/notifications/notifications-form" +import { NotificationsForm } from "@/app/(app)/examples/forms/notifications/notifications-form" export default function SettingsNotificationsPage() { return ( diff --git a/apps/www/app/examples/forms/page.tsx b/apps/www/app/(app)/examples/forms/page.tsx similarity index 85% rename from apps/www/app/examples/forms/page.tsx rename to apps/www/app/(app)/examples/forms/page.tsx index 77b0ec4e0..8a5a2bb63 100644 --- a/apps/www/app/examples/forms/page.tsx +++ b/apps/www/app/(app)/examples/forms/page.tsx @@ -1,5 +1,5 @@ import { Separator } from "@/registry/new-york/ui/separator" -import { ProfileForm } from "@/app/examples/forms/profile-form" +import { ProfileForm } from "@/app/(app)/examples/forms/profile-form" export default function SettingsProfilePage() { return ( diff --git a/apps/www/app/examples/forms/profile-form.tsx b/apps/www/app/(app)/examples/forms/profile-form.tsx similarity index 100% rename from apps/www/app/examples/forms/profile-form.tsx rename to apps/www/app/(app)/examples/forms/profile-form.tsx diff --git a/apps/www/app/examples/layout.tsx b/apps/www/app/(app)/examples/layout.tsx similarity index 100% rename from apps/www/app/examples/layout.tsx rename to apps/www/app/(app)/examples/layout.tsx diff --git a/apps/www/app/examples/mail/components/account-switcher.tsx b/apps/www/app/(app)/examples/mail/components/account-switcher.tsx similarity index 100% rename from apps/www/app/examples/mail/components/account-switcher.tsx rename to apps/www/app/(app)/examples/mail/components/account-switcher.tsx diff --git a/apps/www/app/examples/mail/components/mail-display.tsx b/apps/www/app/(app)/examples/mail/components/mail-display.tsx similarity index 99% rename from apps/www/app/examples/mail/components/mail-display.tsx rename to apps/www/app/(app)/examples/mail/components/mail-display.tsx index b41acabe7..9a6cb5f84 100644 --- a/apps/www/app/examples/mail/components/mail-display.tsx +++ b/apps/www/app/(app)/examples/mail/components/mail-display.tsx @@ -42,7 +42,7 @@ import { TooltipContent, TooltipTrigger, } from "@/registry/new-york/ui/tooltip" -import { Mail } from "@/app/examples/mail/data" +import { Mail } from "@/app/(app)/examples/mail/data" interface MailDisplayProps { mail: Mail | null diff --git a/apps/www/app/examples/mail/components/mail-list.tsx b/apps/www/app/(app)/examples/mail/components/mail-list.tsx similarity index 95% rename from apps/www/app/examples/mail/components/mail-list.tsx rename to apps/www/app/(app)/examples/mail/components/mail-list.tsx index e2301cc8c..7797b6a46 100644 --- a/apps/www/app/examples/mail/components/mail-list.tsx +++ b/apps/www/app/(app)/examples/mail/components/mail-list.tsx @@ -5,8 +5,8 @@ import { cn } from "@/lib/utils" import { Badge } from "@/registry/new-york/ui/badge" import { ScrollArea } from "@/registry/new-york/ui/scroll-area" import { Separator } from "@/registry/new-york/ui/separator" -import { Mail } from "@/app/examples/mail/data" -import { useMail } from "@/app/examples/mail/use-mail" +import { Mail } from "@/app/(app)/examples/mail/data" +import { useMail } from "@/app/(app)/examples/mail/use-mail" interface MailListProps { items: Mail[] diff --git a/apps/www/app/examples/mail/components/mail.tsx b/apps/www/app/(app)/examples/mail/components/mail.tsx similarity index 80% rename from apps/www/app/examples/mail/components/mail.tsx rename to apps/www/app/(app)/examples/mail/components/mail.tsx index 36dfb5498..fed6e4fd3 100644 --- a/apps/www/app/examples/mail/components/mail.tsx +++ b/apps/www/app/(app)/examples/mail/components/mail.tsx @@ -1,4 +1,5 @@ "use client" + import * as React from "react" import { AlertCircle, @@ -7,7 +8,6 @@ import { File, Inbox, MessagesSquare, - PenBox, Search, Send, ShoppingCart, @@ -15,15 +15,14 @@ import { Users2, } from "lucide-react" -import { AccountSwitcher } from "@/app/examples/mail/components/account-switcher" -import { MailDisplay } from "@/app/examples/mail/components/mail-display" -import { MailList } from "@/app/examples/mail/components/mail-list" -import { Nav } from "@/app/examples/mail/components/nav" -import { Mail } from "@/app/examples/mail/data" -import { useMail } from "@/app/examples/mail/use-mail" import { cn } from "@/lib/utils" -import { Separator } from "@/registry/new-york/ui/separator" import { Input } from "@/registry/new-york/ui/input" +import { + ResizableHandle, + ResizablePanel, + ResizablePanelGroup, +} from "@/registry/new-york/ui/resizable" +import { Separator } from "@/registry/new-york/ui/separator" import { Tabs, TabsContent, @@ -31,7 +30,12 @@ import { TabsTrigger, } from "@/registry/new-york/ui/tabs" import { TooltipProvider } from "@/registry/new-york/ui/tooltip" -import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from "@/registry/new-york/ui/resizable" +import { AccountSwitcher } from "@/app/(app)/examples/mail/components/account-switcher" +import { MailDisplay } from "@/app/(app)/examples/mail/components/mail-display" +import { MailList } from "@/app/(app)/examples/mail/components/mail-list" +import { Nav } from "@/app/(app)/examples/mail/components/nav" +import { type Mail } from "@/app/(app)/examples/mail/data" +import { useMail } from "@/app/(app)/examples/mail/use-mail" interface MailProps { accounts: { @@ -78,9 +82,17 @@ export function Mail({ collapsed )}` }} - className={cn(isCollapsed && "min-w-[50px] transition-all duration-300 ease-in-out")} + className={cn( + isCollapsed && + "min-w-[50px] transition-all duration-300 ease-in-out" + )} > -
+
@@ -168,8 +180,18 @@ export function Mail({

Inbox

- All mail - Unread + + All mail + + + Unread +
diff --git a/apps/www/app/examples/mail/components/nav.tsx b/apps/www/app/(app)/examples/mail/components/nav.tsx similarity index 100% rename from apps/www/app/examples/mail/components/nav.tsx rename to apps/www/app/(app)/examples/mail/components/nav.tsx diff --git a/apps/www/app/examples/mail/data.tsx b/apps/www/app/(app)/examples/mail/data.tsx similarity index 100% rename from apps/www/app/examples/mail/data.tsx rename to apps/www/app/(app)/examples/mail/data.tsx diff --git a/apps/www/app/examples/mail/page.tsx b/apps/www/app/(app)/examples/mail/page.tsx similarity index 89% rename from apps/www/app/examples/mail/page.tsx rename to apps/www/app/(app)/examples/mail/page.tsx index 2a222ed9f..b0ca187f4 100644 --- a/apps/www/app/examples/mail/page.tsx +++ b/apps/www/app/(app)/examples/mail/page.tsx @@ -1,8 +1,8 @@ import { cookies } from "next/headers" import Image from "next/image" -import { Mail } from "@/app/examples/mail/components/mail" -import { accounts, mails } from "@/app/examples/mail/data" +import { Mail } from "@/app/(app)/examples/mail/components/mail" +import { accounts, mails } from "@/app/(app)/examples/mail/data" export default function MailPage() { const layout = cookies().get("react-resizable-panels:layout") diff --git a/apps/www/app/examples/mail/use-mail.ts b/apps/www/app/(app)/examples/mail/use-mail.ts similarity index 77% rename from apps/www/app/examples/mail/use-mail.ts rename to apps/www/app/(app)/examples/mail/use-mail.ts index 24c0efeff..e803f8285 100644 --- a/apps/www/app/examples/mail/use-mail.ts +++ b/apps/www/app/(app)/examples/mail/use-mail.ts @@ -1,6 +1,6 @@ import { atom, useAtom } from "jotai" -import { Mail, mails } from "@/app/examples/mail/data" +import { Mail, mails } from "@/app/(app)/examples/mail/data" type Config = { selected: Mail["id"] | null diff --git a/apps/www/app/examples/music/components/album-artwork.tsx b/apps/www/app/(app)/examples/music/components/album-artwork.tsx similarity index 100% rename from apps/www/app/examples/music/components/album-artwork.tsx rename to apps/www/app/(app)/examples/music/components/album-artwork.tsx diff --git a/apps/www/app/examples/music/components/menu.tsx b/apps/www/app/(app)/examples/music/components/menu.tsx similarity index 100% rename from apps/www/app/examples/music/components/menu.tsx rename to apps/www/app/(app)/examples/music/components/menu.tsx diff --git a/apps/www/app/examples/music/components/podcast-empty-placeholder.tsx b/apps/www/app/(app)/examples/music/components/podcast-empty-placeholder.tsx similarity index 100% rename from apps/www/app/examples/music/components/podcast-empty-placeholder.tsx rename to apps/www/app/(app)/examples/music/components/podcast-empty-placeholder.tsx diff --git a/apps/www/app/examples/music/components/sidebar.tsx b/apps/www/app/(app)/examples/music/components/sidebar.tsx similarity index 100% rename from apps/www/app/examples/music/components/sidebar.tsx rename to apps/www/app/(app)/examples/music/components/sidebar.tsx diff --git a/apps/www/app/examples/music/data/albums.ts b/apps/www/app/(app)/examples/music/data/albums.ts similarity index 100% rename from apps/www/app/examples/music/data/albums.ts rename to apps/www/app/(app)/examples/music/data/albums.ts diff --git a/apps/www/app/examples/music/data/playlists.ts b/apps/www/app/(app)/examples/music/data/playlists.ts similarity index 100% rename from apps/www/app/examples/music/data/playlists.ts rename to apps/www/app/(app)/examples/music/data/playlists.ts diff --git a/apps/www/app/examples/music/page.tsx b/apps/www/app/(app)/examples/music/page.tsx similarity index 100% rename from apps/www/app/examples/music/page.tsx rename to apps/www/app/(app)/examples/music/page.tsx diff --git a/apps/www/app/examples/playground/components/code-viewer.tsx b/apps/www/app/(app)/examples/playground/components/code-viewer.tsx similarity index 100% rename from apps/www/app/examples/playground/components/code-viewer.tsx rename to apps/www/app/(app)/examples/playground/components/code-viewer.tsx diff --git a/apps/www/app/examples/playground/components/maxlength-selector.tsx b/apps/www/app/(app)/examples/playground/components/maxlength-selector.tsx similarity index 100% rename from apps/www/app/examples/playground/components/maxlength-selector.tsx rename to apps/www/app/(app)/examples/playground/components/maxlength-selector.tsx diff --git a/apps/www/app/examples/playground/components/model-selector.tsx b/apps/www/app/(app)/examples/playground/components/model-selector.tsx similarity index 100% rename from apps/www/app/examples/playground/components/model-selector.tsx rename to apps/www/app/(app)/examples/playground/components/model-selector.tsx diff --git a/apps/www/app/examples/playground/components/preset-actions.tsx b/apps/www/app/(app)/examples/playground/components/preset-actions.tsx similarity index 100% rename from apps/www/app/examples/playground/components/preset-actions.tsx rename to apps/www/app/(app)/examples/playground/components/preset-actions.tsx diff --git a/apps/www/app/examples/playground/components/preset-save.tsx b/apps/www/app/(app)/examples/playground/components/preset-save.tsx similarity index 100% rename from apps/www/app/examples/playground/components/preset-save.tsx rename to apps/www/app/(app)/examples/playground/components/preset-save.tsx diff --git a/apps/www/app/examples/playground/components/preset-selector.tsx b/apps/www/app/(app)/examples/playground/components/preset-selector.tsx similarity index 100% rename from apps/www/app/examples/playground/components/preset-selector.tsx rename to apps/www/app/(app)/examples/playground/components/preset-selector.tsx diff --git a/apps/www/app/examples/playground/components/preset-share.tsx b/apps/www/app/(app)/examples/playground/components/preset-share.tsx similarity index 100% rename from apps/www/app/examples/playground/components/preset-share.tsx rename to apps/www/app/(app)/examples/playground/components/preset-share.tsx diff --git a/apps/www/app/examples/playground/components/temperature-selector.tsx b/apps/www/app/(app)/examples/playground/components/temperature-selector.tsx similarity index 100% rename from apps/www/app/examples/playground/components/temperature-selector.tsx rename to apps/www/app/(app)/examples/playground/components/temperature-selector.tsx diff --git a/apps/www/app/examples/playground/components/top-p-selector.tsx b/apps/www/app/(app)/examples/playground/components/top-p-selector.tsx similarity index 100% rename from apps/www/app/examples/playground/components/top-p-selector.tsx rename to apps/www/app/(app)/examples/playground/components/top-p-selector.tsx diff --git a/apps/www/app/examples/playground/data/models.ts b/apps/www/app/(app)/examples/playground/data/models.ts similarity index 100% rename from apps/www/app/examples/playground/data/models.ts rename to apps/www/app/(app)/examples/playground/data/models.ts diff --git a/apps/www/app/examples/playground/data/presets.ts b/apps/www/app/(app)/examples/playground/data/presets.ts similarity index 100% rename from apps/www/app/examples/playground/data/presets.ts rename to apps/www/app/(app)/examples/playground/data/presets.ts diff --git a/apps/www/app/examples/playground/page.tsx b/apps/www/app/(app)/examples/playground/page.tsx similarity index 100% rename from apps/www/app/examples/playground/page.tsx rename to apps/www/app/(app)/examples/playground/page.tsx diff --git a/apps/www/app/examples/tasks/components/columns.tsx b/apps/www/app/(app)/examples/tasks/components/columns.tsx similarity index 100% rename from apps/www/app/examples/tasks/components/columns.tsx rename to apps/www/app/(app)/examples/tasks/components/columns.tsx diff --git a/apps/www/app/examples/tasks/components/data-table-column-header.tsx b/apps/www/app/(app)/examples/tasks/components/data-table-column-header.tsx similarity index 100% rename from apps/www/app/examples/tasks/components/data-table-column-header.tsx rename to apps/www/app/(app)/examples/tasks/components/data-table-column-header.tsx diff --git a/apps/www/app/examples/tasks/components/data-table-faceted-filter.tsx b/apps/www/app/(app)/examples/tasks/components/data-table-faceted-filter.tsx similarity index 100% rename from apps/www/app/examples/tasks/components/data-table-faceted-filter.tsx rename to apps/www/app/(app)/examples/tasks/components/data-table-faceted-filter.tsx diff --git a/apps/www/app/examples/tasks/components/data-table-pagination.tsx b/apps/www/app/(app)/examples/tasks/components/data-table-pagination.tsx similarity index 100% rename from apps/www/app/examples/tasks/components/data-table-pagination.tsx rename to apps/www/app/(app)/examples/tasks/components/data-table-pagination.tsx diff --git a/apps/www/app/examples/tasks/components/data-table-row-actions.tsx b/apps/www/app/(app)/examples/tasks/components/data-table-row-actions.tsx similarity index 100% rename from apps/www/app/examples/tasks/components/data-table-row-actions.tsx rename to apps/www/app/(app)/examples/tasks/components/data-table-row-actions.tsx diff --git a/apps/www/app/examples/tasks/components/data-table-toolbar.tsx b/apps/www/app/(app)/examples/tasks/components/data-table-toolbar.tsx similarity index 94% rename from apps/www/app/examples/tasks/components/data-table-toolbar.tsx rename to apps/www/app/(app)/examples/tasks/components/data-table-toolbar.tsx index b396f6c00..10bd91aee 100644 --- a/apps/www/app/examples/tasks/components/data-table-toolbar.tsx +++ b/apps/www/app/(app)/examples/tasks/components/data-table-toolbar.tsx @@ -5,7 +5,7 @@ import { Table } from "@tanstack/react-table" import { Button } from "@/registry/new-york/ui/button" import { Input } from "@/registry/new-york/ui/input" -import { DataTableViewOptions } from "@/app/examples/tasks/components/data-table-view-options" +import { DataTableViewOptions } from "@/app/(app)/examples/tasks/components/data-table-view-options" import { priorities, statuses } from "../data/data" import { DataTableFacetedFilter } from "./data-table-faceted-filter" diff --git a/apps/www/app/examples/tasks/components/data-table-view-options.tsx b/apps/www/app/(app)/examples/tasks/components/data-table-view-options.tsx similarity index 100% rename from apps/www/app/examples/tasks/components/data-table-view-options.tsx rename to apps/www/app/(app)/examples/tasks/components/data-table-view-options.tsx diff --git a/apps/www/app/examples/tasks/components/data-table.tsx b/apps/www/app/(app)/examples/tasks/components/data-table.tsx similarity index 96% rename from apps/www/app/examples/tasks/components/data-table.tsx rename to apps/www/app/(app)/examples/tasks/components/data-table.tsx index 9300d4b71..2dd726e5a 100644 --- a/apps/www/app/examples/tasks/components/data-table.tsx +++ b/apps/www/app/(app)/examples/tasks/components/data-table.tsx @@ -25,8 +25,8 @@ import { TableRow, } from "@/registry/new-york/ui/table" -import { DataTablePagination } from "../components/data-table-pagination" -import { DataTableToolbar } from "../components/data-table-toolbar" +import { DataTablePagination } from "./data-table-pagination" +import { DataTableToolbar } from "./data-table-toolbar" interface DataTableProps { columns: ColumnDef[] diff --git a/apps/www/app/examples/tasks/components/user-nav.tsx b/apps/www/app/(app)/examples/tasks/components/user-nav.tsx similarity index 100% rename from apps/www/app/examples/tasks/components/user-nav.tsx rename to apps/www/app/(app)/examples/tasks/components/user-nav.tsx diff --git a/apps/www/app/examples/tasks/data/data.tsx b/apps/www/app/(app)/examples/tasks/data/data.tsx similarity index 100% rename from apps/www/app/examples/tasks/data/data.tsx rename to apps/www/app/(app)/examples/tasks/data/data.tsx diff --git a/apps/www/app/examples/tasks/data/schema.ts b/apps/www/app/(app)/examples/tasks/data/schema.ts similarity index 100% rename from apps/www/app/examples/tasks/data/schema.ts rename to apps/www/app/(app)/examples/tasks/data/schema.ts diff --git a/apps/www/app/examples/tasks/data/seed.ts b/apps/www/app/(app)/examples/tasks/data/seed.ts similarity index 100% rename from apps/www/app/examples/tasks/data/seed.ts rename to apps/www/app/(app)/examples/tasks/data/seed.ts diff --git a/apps/www/app/examples/tasks/data/tasks.json b/apps/www/app/(app)/examples/tasks/data/tasks.json similarity index 100% rename from apps/www/app/examples/tasks/data/tasks.json rename to apps/www/app/(app)/examples/tasks/data/tasks.json diff --git a/apps/www/app/examples/tasks/page.tsx b/apps/www/app/(app)/examples/tasks/page.tsx similarity index 95% rename from apps/www/app/examples/tasks/page.tsx rename to apps/www/app/(app)/examples/tasks/page.tsx index 78de2c27f..b24449837 100644 --- a/apps/www/app/examples/tasks/page.tsx +++ b/apps/www/app/(app)/examples/tasks/page.tsx @@ -17,7 +17,7 @@ export const metadata: Metadata = { // Simulate a database read for tasks. async function getTasks() { const data = await fs.readFile( - path.join(process.cwd(), "app/examples/tasks/data/tasks.json") + path.join(process.cwd(), "app/(app)/examples/tasks/data/tasks.json") ) const tasks = JSON.parse(data.toString()) diff --git a/apps/www/app/(app)/layout.tsx b/apps/www/app/(app)/layout.tsx new file mode 100644 index 000000000..ceaa87acf --- /dev/null +++ b/apps/www/app/(app)/layout.tsx @@ -0,0 +1,16 @@ +import { SiteFooter } from "@/components/site-footer" +import { SiteHeader } from "@/components/site-header" + +interface AppLayoutProps { + children: React.ReactNode +} + +export default function AppLayout({ children }: AppLayoutProps) { + return ( + <> + +
{children}
+ + + ) +} diff --git a/apps/www/app/page.tsx b/apps/www/app/(app)/page.tsx similarity index 97% rename from apps/www/app/page.tsx rename to apps/www/app/(app)/page.tsx index 8b2e4fae6..d34a80631 100644 --- a/apps/www/app/page.tsx +++ b/apps/www/app/(app)/page.tsx @@ -13,7 +13,7 @@ import { PageHeaderHeading, } from "@/components/page-header" import { buttonVariants } from "@/registry/new-york/ui/button" -import MailPage from "@/app/examples/mail/page" +import MailPage from "@/app/(app)/examples/mail/page" export default function IndexPage() { return ( diff --git a/apps/www/app/sink/layout.tsx b/apps/www/app/(app)/sink/layout.tsx similarity index 100% rename from apps/www/app/sink/layout.tsx rename to apps/www/app/(app)/sink/layout.tsx diff --git a/apps/www/app/sink/new-york/page.tsx b/apps/www/app/(app)/sink/new-york/page.tsx similarity index 100% rename from apps/www/app/sink/new-york/page.tsx rename to apps/www/app/(app)/sink/new-york/page.tsx diff --git a/apps/www/app/sink/page.tsx b/apps/www/app/(app)/sink/page.tsx similarity index 100% rename from apps/www/app/sink/page.tsx rename to apps/www/app/(app)/sink/page.tsx diff --git a/apps/www/app/themes/page.tsx b/apps/www/app/(app)/themes/page.tsx similarity index 96% rename from apps/www/app/themes/page.tsx rename to apps/www/app/(app)/themes/page.tsx index 00df52d4d..920aac849 100644 --- a/apps/www/app/themes/page.tsx +++ b/apps/www/app/(app)/themes/page.tsx @@ -10,7 +10,7 @@ import { } from "@/components/page-header" import { ThemeCustomizer } from "@/components/theme-customizer" import { ThemeWrapper } from "@/components/theme-wrapper" -import { ThemesTabs } from "@/app/themes/tabs" +import { ThemesTabs } from "@/app/(app)/themes/tabs" export const metadata: Metadata = { title: "Themes", diff --git a/apps/www/app/themes/tabs.tsx b/apps/www/app/(app)/themes/tabs.tsx similarity index 100% rename from apps/www/app/themes/tabs.tsx rename to apps/www/app/(app)/themes/tabs.tsx diff --git a/apps/www/app/(blocks)/blocks/[style]/[name]/page.tsx b/apps/www/app/(blocks)/blocks/[style]/[name]/page.tsx new file mode 100644 index 000000000..75bd1b86c --- /dev/null +++ b/apps/www/app/(blocks)/blocks/[style]/[name]/page.tsx @@ -0,0 +1,86 @@ +import { siteConfig } from "@/config/site" +import { getAllBlockIds, getBlock } from "@/lib/blocks" +import { absoluteUrl } from "@/lib/utils" +import { Style, styles } from "@/registry/styles" + +import "@/styles/mdx.css" +import { Metadata } from "next" +import { notFound } from "next/navigation" + +export async function generateMetadata({ + params, +}: { + params: { + style: Style["name"] + name: string + } +}): Promise { + const { name, style } = params + const block = await getBlock(name, style) + + if (!block) { + return {} + } + + return { + title: block.name, + description: block.description, + openGraph: { + title: block.name, + description: block.description, + type: "article", + url: absoluteUrl(`/blocks/${block.name}`), + images: [ + { + url: siteConfig.ogImage, + width: 1200, + height: 630, + alt: siteConfig.name, + }, + ], + }, + twitter: { + card: "summary_large_image", + title: block.name, + description: block.description, + images: [siteConfig.ogImage], + creator: "@shadcn", + }, + } +} + +export async function generateStaticParams() { + const blockIds = await getAllBlockIds() + return styles + .map((style) => + blockIds.map((name) => ({ + style: style.name, + name, + })) + ) + .flat() +} + +export default async function BlockPage({ + params, +}: { + params: { + style: Style["name"] + name: string + } +}) { + const { name, style } = params + const block = await getBlock(name, style) + + if (!block) { + return notFound() + } + + const Component = block.component + + return ( +
+ +
+ ) +} diff --git a/apps/www/app/layout.tsx b/apps/www/app/layout.tsx index 1044f9e0c..c3f046e96 100644 --- a/apps/www/app/layout.tsx +++ b/apps/www/app/layout.tsx @@ -6,8 +6,6 @@ import { fontSans } from "@/lib/fonts" import { cn } from "@/lib/utils" import { Analytics } from "@/components/analytics" import { ThemeProvider } from "@/components/providers" -import { SiteFooter } from "@/components/site-footer" -import { SiteHeader } from "@/components/site-header" import { TailwindIndicator } from "@/components/tailwind-indicator" import { ThemeSwitcher } from "@/components/theme-switcher" import { Toaster as DefaultToaster } from "@/registry/default/ui/toaster" @@ -85,7 +83,7 @@ export default function RootLayout({ children }: RootLayoutProps) {
- -
{children}
- + {children}
diff --git a/apps/www/components/announcement.tsx b/apps/www/components/announcement.tsx index bade48519..e3a1f30ba 100644 --- a/apps/www/components/announcement.tsx +++ b/apps/www/components/announcement.tsx @@ -10,10 +10,8 @@ export function Announcement() { className="inline-flex items-center rounded-lg bg-muted px-3 py-1 text-sm font-medium" > 🎉 {" "} - New components and more. - - New components, breadcrumb and input otp. - + Introducing Blocks + Introducing Blocks ) diff --git a/apps/www/components/block-copy-code-button.tsx b/apps/www/components/block-copy-code-button.tsx new file mode 100644 index 000000000..92830e728 --- /dev/null +++ b/apps/www/components/block-copy-code-button.tsx @@ -0,0 +1,54 @@ +"use client" + +import * as React from "react" +import { CheckIcon, ClipboardIcon } from "@radix-ui/react-icons" + +import { trackEvent } from "@/lib/events" +import { Button } from "@/registry/new-york/ui/button" +import { + Tooltip, + TooltipContent, + TooltipTrigger, +} from "@/registry/new-york/ui/tooltip" + +export function BlockCopyCodeButton({ + name, + code, +}: { + name: string + code: string +}) { + const [hasCopied, setHasCopied] = React.useState(false) + + React.useEffect(() => { + setTimeout(() => { + setHasCopied(false) + }, 2000) + }, [hasCopied]) + + return ( + + + + + Copy code + + ) +} diff --git a/apps/www/components/block-display.tsx b/apps/www/components/block-display.tsx new file mode 100644 index 000000000..a617b4071 --- /dev/null +++ b/apps/www/components/block-display.tsx @@ -0,0 +1,24 @@ +import { getBlock } from "@/lib/blocks" +import { BlockPreview } from "@/components/block-preview" +import { styles } from "@/registry/styles" + +export async function BlockDisplay({ name }: { name: string }) { + const blocks = await Promise.all( + styles.map(async (style) => { + const block = await getBlock(name, style.name) + + // Cannot (and don't need to) pass component to the client. + delete block?.component + + return block + }) + ) + + if (!blocks?.length) { + return null + } + + return blocks.map((block) => ( + + )) +} diff --git a/apps/www/components/block-preview.tsx b/apps/www/components/block-preview.tsx new file mode 100644 index 000000000..9925ba735 --- /dev/null +++ b/apps/www/components/block-preview.tsx @@ -0,0 +1,210 @@ +"use client" + +import * as React from "react" +import { + CircleHelp, + Info, + Monitor, + Phone, + Smartphone, + Tablet, +} from "lucide-react" +import { ImperativePanelHandle } from "react-resizable-panels" + +import { useConfig } from "@/hooks/use-config" +import { BlockCopyCodeButton } from "@/components/block-copy-code-button" +import { Icons } from "@/components/icons" +import { StyleSwitcher } from "@/components/style-switcher" +import { V0Button } from "@/components/v0-button" +import { Badge } from "@/registry/new-york/ui/badge" +import { + Popover, + PopoverContent, + PopoverTrigger, +} from "@/registry/new-york/ui/popover" +import { + ResizableHandle, + ResizablePanel, + ResizablePanelGroup, +} from "@/registry/new-york/ui/resizable" +import { Separator } from "@/registry/new-york/ui/separator" +import { + Tabs, + TabsContent, + TabsList, + TabsTrigger, +} from "@/registry/new-york/ui/tabs" +import { + ToggleGroup, + ToggleGroupItem, +} from "@/registry/new-york/ui/toggle-group" +import { Block } from "@/registry/schema" + +export function BlockPreview({ block }: { block: Block }) { + const [config] = useConfig() + const [isLoading, setIsLoading] = React.useState(true) + const ref = React.useRef(null) + + if (config.style !== block.style) { + return null + } + + return ( + +
+
+ + Preview + Code + +
+ +
+ + {block.name} + + + + + Block description + + + {block.description} + + +
+
+
+ {block.code && ( +
+
+ { + if (ref.current) { + ref.current.resize(parseInt(value)) + } + }} + > + + + + + + + + + + +
+ + + + + + Block description + + +

+ What is the difference between the New York and Default style? +

+

+ A style comes with its own set of components, animations, + icons and more. +

+

+ The Default style has + larger inputs, uses lucide-react for icons and + tailwindcss-animate for animations. +

+

+ The New York style ships + with smaller buttons and inputs. It also uses shadows on cards + and buttons. +

+
+
+ + + +
+ )} +
+ + + + {isLoading ? ( +
+ + Loading... +
+ ) : null} +