diff --git a/apps/design-system/.gitignore b/apps/design-system/.gitignore index 57c2e5aba20..2e7fc1fc9da 100644 --- a/apps/design-system/.gitignore +++ b/apps/design-system/.gitignore @@ -35,4 +35,7 @@ yarn-error.log* *.tsbuildinfo next-env.d.ts -.contentlayer \ No newline at end of file +.contentlayer + +# Generated by `pnpm generate:registry` (`scripts/build-registry.mts`) +/__registry__ diff --git a/apps/design-system/README.md b/apps/design-system/README.md index 893f21e36e6..a726c230985 100644 --- a/apps/design-system/README.md +++ b/apps/design-system/README.md @@ -12,13 +12,15 @@ pnpm i pnpm dev ``` -The `dev` command runs both the Next.js development server and Contentlayer concurrently, which is recommended for most development workflows. +The `dev` command generates `__registry__`, then runs the Next.js development server and Contentlayer together. That is the recommended workflow. ### Alternative commands -You can also run the development server and content watcher separately: +You can also run the development server and content watcher separately. Generate the registry first, because `dev:next` and `dev:content` do not: ```bash +pnpm generate:registry + # Run only the Next.js development server pnpm dev:next @@ -26,19 +28,11 @@ pnpm dev:next pnpm dev:content ``` -Or run the development server from the root directory: +From the repo root, `pnpm dev:design-system` runs the same `dev` script, so it also generates `__registry__`. If you split the watchers from the root, generate first: ```bash -pnpm dev:design-system -``` - -To run both the development server and content watcher from the root directory, you can use: - -```bash -# Run the development server -pnpm dev:design-system - -# Run the content watcher (in a separate terminal shell) +pnpm --filter=design-system generate:registry +pnpm --filter=design-system dev:next pnpm --filter=design-system dev:content ``` @@ -46,27 +40,29 @@ Open [http://localhost:3003](http://localhost:3003) in your browser to see the r ### Watching for MDX changes -The `dev` command automatically watches for changes to MDX files with hot reload. If you're running the `pnpm dev:next` separately, you'll need to run `pnpm dev:content` in a separate terminal shell to watch for content changes. +The `dev` command watches MDX files and hot-reloads them. If you are running `pnpm dev:next` on its own, also run `pnpm dev:content` in another terminal. ### Adding components -The design system _references_ components rather than housing them. That’s an important distinction to make, as everything that follows here is about the documentation of components. You can add or edit components in one of these two places: +The design system _references_ components rather than housing them. That distinction matters: everything below is about documenting components, not implementing them. Add or edit the components themselves in one of these two places: - [`packages/ui`](https://github.com/supabase/supabase/tree/master/packages/ui): basic UI components -- [`packages/ui-patterns`](https://github.com/supabase/supabase/tree/master/packages/ui-patterns): components which are built using NPM libraries or amalgamations of components from `patterns/ui` +- [`packages/ui-patterns`](https://github.com/supabase/supabase/tree/master/packages/ui-patterns): components built from libraries or from `packages/ui` -There are several parts of this design system that need to be manually updated after components have been added or removed (from documentation). These include: +After you add or remove documented components, update these source files: - `config/docs.ts`: list of components in the sidebar -- `content/docs`: the actual component documentation -- `registry/examples.ts`: list of example components -- `registry/fragments.ts`: list of fragment components -- `registry/charts.ts`: list of chart components -- `registry/default/example/*`: the actual example components +- `content/docs`: the component documentation +- `registry/examples.ts`: example components +- `registry/fragments.ts`: fragment components +- `registry/charts.ts`: chart components +- `registry/copy-writing.ts`: copywriting examples +- `registry/default/example/*`: the example component implementations +- `registry/default/block/*`: chart block implementations, when you add a chart -You will need to rebuild the design system’s registry after making new additions: +Do not edit `__registry__`. `pnpm dev`, `pnpm typecheck`, and `pnpm build` generate it from the files above, and it is gitignored. If you add registry entries while the app is already running, regenerate it: ```bash cd apps/design-system -pnpm build:registry +pnpm generate:registry ``` diff --git a/apps/design-system/__registry__/default/block/chart-bar-interactive.tsx b/apps/design-system/__registry__/default/block/chart-bar-interactive.tsx deleted file mode 100644 index 128664bb431..00000000000 --- a/apps/design-system/__registry__/default/block/chart-bar-interactive.tsx +++ /dev/null @@ -1,211 +0,0 @@ -'use client' - -import * as React from 'react' -import { Bar, BarChart, CartesianGrid, XAxis } from 'recharts' -import { - Card, - CardContent, - CardDescription, - CardHeader, - CardTitle, - ChartConfig, - ChartContainer, - ChartTooltip, - ChartTooltipContent, -} from 'ui' - -export const description = 'An interactive bar chart' - -const chartData = [ - { date: '2024-04-01', desktop: 222, mobile: 150 }, - { date: '2024-04-02', desktop: 97, mobile: 180 }, - { date: '2024-04-03', desktop: 167, mobile: 120 }, - { date: '2024-04-04', desktop: 242, mobile: 260 }, - { date: '2024-04-05', desktop: 373, mobile: 290 }, - { date: '2024-04-06', desktop: 301, mobile: 340 }, - { date: '2024-04-07', desktop: 245, mobile: 180 }, - { date: '2024-04-08', desktop: 409, mobile: 320 }, - { date: '2024-04-09', desktop: 59, mobile: 110 }, - { date: '2024-04-10', desktop: 261, mobile: 190 }, - { date: '2024-04-11', desktop: 327, mobile: 350 }, - { date: '2024-04-12', desktop: 292, mobile: 210 }, - { date: '2024-04-13', desktop: 342, mobile: 380 }, - { date: '2024-04-14', desktop: 137, mobile: 220 }, - { date: '2024-04-15', desktop: 120, mobile: 170 }, - { date: '2024-04-16', desktop: 138, mobile: 190 }, - { date: '2024-04-17', desktop: 446, mobile: 360 }, - { date: '2024-04-18', desktop: 364, mobile: 410 }, - { date: '2024-04-19', desktop: 243, mobile: 180 }, - { date: '2024-04-20', desktop: 89, mobile: 150 }, - { date: '2024-04-21', desktop: 137, mobile: 200 }, - { date: '2024-04-22', desktop: 224, mobile: 170 }, - { date: '2024-04-23', desktop: 138, mobile: 230 }, - { date: '2024-04-24', desktop: 387, mobile: 290 }, - { date: '2024-04-25', desktop: 215, mobile: 250 }, - { date: '2024-04-26', desktop: 75, mobile: 130 }, - { date: '2024-04-27', desktop: 383, mobile: 420 }, - { date: '2024-04-28', desktop: 122, mobile: 180 }, - { date: '2024-04-29', desktop: 315, mobile: 240 }, - { date: '2024-04-30', desktop: 454, mobile: 380 }, - { date: '2024-05-01', desktop: 165, mobile: 220 }, - { date: '2024-05-02', desktop: 293, mobile: 310 }, - { date: '2024-05-03', desktop: 247, mobile: 190 }, - { date: '2024-05-04', desktop: 385, mobile: 420 }, - { date: '2024-05-05', desktop: 481, mobile: 390 }, - { date: '2024-05-06', desktop: 498, mobile: 520 }, - { date: '2024-05-07', desktop: 388, mobile: 300 }, - { date: '2024-05-08', desktop: 149, mobile: 210 }, - { date: '2024-05-09', desktop: 227, mobile: 180 }, - { date: '2024-05-10', desktop: 293, mobile: 330 }, - { date: '2024-05-11', desktop: 335, mobile: 270 }, - { date: '2024-05-12', desktop: 197, mobile: 240 }, - { date: '2024-05-13', desktop: 197, mobile: 160 }, - { date: '2024-05-14', desktop: 448, mobile: 490 }, - { date: '2024-05-15', desktop: 473, mobile: 380 }, - { date: '2024-05-16', desktop: 338, mobile: 400 }, - { date: '2024-05-17', desktop: 499, mobile: 420 }, - { date: '2024-05-18', desktop: 315, mobile: 350 }, - { date: '2024-05-19', desktop: 235, mobile: 180 }, - { date: '2024-05-20', desktop: 177, mobile: 230 }, - { date: '2024-05-21', desktop: 82, mobile: 140 }, - { date: '2024-05-22', desktop: 81, mobile: 120 }, - { date: '2024-05-23', desktop: 252, mobile: 290 }, - { date: '2024-05-24', desktop: 294, mobile: 220 }, - { date: '2024-05-25', desktop: 201, mobile: 250 }, - { date: '2024-05-26', desktop: 213, mobile: 170 }, - { date: '2024-05-27', desktop: 420, mobile: 460 }, - { date: '2024-05-28', desktop: 233, mobile: 190 }, - { date: '2024-05-29', desktop: 78, mobile: 130 }, - { date: '2024-05-30', desktop: 340, mobile: 280 }, - { date: '2024-05-31', desktop: 178, mobile: 230 }, - { date: '2024-06-01', desktop: 178, mobile: 200 }, - { date: '2024-06-02', desktop: 470, mobile: 410 }, - { date: '2024-06-03', desktop: 103, mobile: 160 }, - { date: '2024-06-04', desktop: 439, mobile: 380 }, - { date: '2024-06-05', desktop: 88, mobile: 140 }, - { date: '2024-06-06', desktop: 294, mobile: 250 }, - { date: '2024-06-07', desktop: 323, mobile: 370 }, - { date: '2024-06-08', desktop: 385, mobile: 320 }, - { date: '2024-06-09', desktop: 438, mobile: 480 }, - { date: '2024-06-10', desktop: 155, mobile: 200 }, - { date: '2024-06-11', desktop: 92, mobile: 150 }, - { date: '2024-06-12', desktop: 492, mobile: 420 }, - { date: '2024-06-13', desktop: 81, mobile: 130 }, - { date: '2024-06-14', desktop: 426, mobile: 380 }, - { date: '2024-06-15', desktop: 307, mobile: 350 }, - { date: '2024-06-16', desktop: 371, mobile: 310 }, - { date: '2024-06-17', desktop: 475, mobile: 520 }, - { date: '2024-06-18', desktop: 107, mobile: 170 }, - { date: '2024-06-19', desktop: 341, mobile: 290 }, - { date: '2024-06-20', desktop: 408, mobile: 450 }, - { date: '2024-06-21', desktop: 169, mobile: 210 }, - { date: '2024-06-22', desktop: 317, mobile: 270 }, - { date: '2024-06-23', desktop: 480, mobile: 530 }, - { date: '2024-06-24', desktop: 132, mobile: 180 }, - { date: '2024-06-25', desktop: 141, mobile: 190 }, - { date: '2024-06-26', desktop: 434, mobile: 380 }, - { date: '2024-06-27', desktop: 448, mobile: 490 }, - { date: '2024-06-28', desktop: 149, mobile: 200 }, - { date: '2024-06-29', desktop: 103, mobile: 160 }, - { date: '2024-06-30', desktop: 446, mobile: 400 }, -] - -const chartConfig = { - views: { - label: 'Page Views', - }, - desktop: { - label: 'Desktop', - color: 'hsl(var(--chart-1))', - }, - mobile: { - label: 'Mobile', - color: 'hsl(var(--chart-2))', - }, -} satisfies ChartConfig - -export default function Component() { - const [activeChart, setActiveChart] = React.useState('desktop') - - const total = React.useMemo( - () => ({ - desktop: chartData.reduce((acc, curr) => acc + curr.desktop, 0), - mobile: chartData.reduce((acc, curr) => acc + curr.mobile, 0), - }), - [] - ) - - return ( - - -
- Bar Chart - Interactive - Showing total visitors for the last 3 months -
-
- {['desktop', 'mobile'].map((key) => { - const chart = key as keyof typeof chartConfig - return ( - - ) - })} -
-
- - - - - { - const date = new Date(value) - return date.toLocaleDateString('en-US', { - month: 'short', - day: 'numeric', - }) - }} - /> - { - return new Date(value).toLocaleDateString('en-US', { - month: 'short', - day: 'numeric', - year: 'numeric', - }) - }} - /> - } - /> - - - - -
- ) -} diff --git a/apps/design-system/__registry__/default/block/chart-composed-actions.tsx b/apps/design-system/__registry__/default/block/chart-composed-actions.tsx deleted file mode 100644 index ee4212e416e..00000000000 --- a/apps/design-system/__registry__/default/block/chart-composed-actions.tsx +++ /dev/null @@ -1,106 +0,0 @@ -'use client' - -import { BarChart2, ExternalLink, LineChart } from 'lucide-react' -import { useEffect, useState } from 'react' -import { - Chart, - ChartActions, - ChartBar, - ChartCard, - ChartContent, - ChartEmptyState, - ChartHeader, - ChartLine, - ChartLoadingState, - ChartTitle, -} from 'ui-patterns/Chart' - -export default function ChartComposedActions() { - const [isLoading, setIsLoading] = useState(true) - const [chartType, setChartType] = useState<'bar' | 'line'>('bar') - - const actions = [ - { - label: 'Open in Logs Explorer', - onClick: () => { - alert('Opening in Logs Explorer...') - }, - icon: , - }, - { - label: 'Toggle Chart Type', - onClick: () => { - setChartType(chartType === 'bar' ? 'line' : 'bar') - }, - icon: chartType === 'bar' ? : , - }, - ] - - const data = Array.from({ length: 46 }, (_, i) => { - const date = new Date() - date.setMinutes(date.getMinutes() - i * 5) // Each point 5 minutes apart - - return { - timestamp: date.toISOString(), - requests: Math.floor(Math.random() * 100), - } - }).reverse() - - useEffect(() => { - setTimeout(() => { - setIsLoading(false) - }, 1000) - }, []) - - return ( -
- - - - Total Requests - - - } - title="No data to show" - description="It may take up to 24 hours for data to refresh" - /> - } - loadingState={} - > -
- {chartType === 'bar' ? ( - `${value}k`, - width: 80, - }} - isFullHeight={true} - /> - ) : ( - `${value}k`, - width: 80, - }} - isFullHeight={true} - /> - )} -
-
-
-
-
- ) -} diff --git a/apps/design-system/__registry__/default/block/chart-composed-basic.tsx b/apps/design-system/__registry__/default/block/chart-composed-basic.tsx deleted file mode 100644 index 607363710eb..00000000000 --- a/apps/design-system/__registry__/default/block/chart-composed-basic.tsx +++ /dev/null @@ -1,142 +0,0 @@ -'use client' - -import { BarChart2, ExternalLink } from 'lucide-react' -import { useEffect, useState } from 'react' -import { - Chart, - ChartActions, - ChartBar, - ChartCard, - ChartContent, - ChartEmptyState, - ChartHeader, - ChartLine, - ChartLoadingState, - ChartTitle, -} from 'ui-patterns/Chart' - -export default function ComposedChartBasic() { - const [isLoading, setIsLoading] = useState(true) - - const actions = [ - { - label: 'Open in Logs Explorer', - onClick: () => { - alert('Ta da! You clicked me! 🎉') - }, - icon: , - }, - ] - - const data = Array.from({ length: 40 }, (_, i) => { - const date = new Date() - date.setMinutes(date.getMinutes() - i * 3) // Each point 3 minutes apart - - const progress = i / 40 - const standard_score = Math.floor(55 + progress * 55 + (Math.random() - 0.5) * 12) - const performance = Math.floor(35 + progress * 35 + (Math.random() - 0.5) * 10) - const efficiency = Math.floor(25 + progress * 25 + (Math.random() - 0.5) * 12) - - return { - timestamp: date.toISOString(), - standard_score: Math.max(0, Math.min(100, standard_score)), - performance: Math.max(0, Math.min(100, performance)), - efficiency: Math.max(0, Math.min(100, efficiency)), - } - }).reverse() - - const chartConfig = { - standard_score: { - label: 'Standard Score', - color: 'hsl(var(--brand-default))', - }, - performance: { - label: 'Performance', - color: 'hsl(var(--chart-2))', - }, - efficiency: { - label: 'Efficiency', - color: 'hsl(var(--chart-5))', - }, - } - - useEffect(() => { - setTimeout(() => { - setIsLoading(false) - }, 1000) - }, []) - - return ( -
- - - - Standard Bar Chart - - - } - title="No data to show" - description="It may take up to 24 hours for data to refresh" - /> - } - loadingState={} - > -
- `${value}k`, - width: 80, - }} - isFullHeight={true} - /> -
-
-
-
- - - - - Standard Line Chart - - - } - title="No data to show" - description="It may take up to 24 hours for data to refresh" - /> - } - loadingState={} - > -
- `${value}k`, - width: 80, - }} - isFullHeight={true} - /> -
-
-
-
-
- ) -} diff --git a/apps/design-system/__registry__/default/block/chart-composed-demo.tsx b/apps/design-system/__registry__/default/block/chart-composed-demo.tsx deleted file mode 100644 index 88b131af925..00000000000 --- a/apps/design-system/__registry__/default/block/chart-composed-demo.tsx +++ /dev/null @@ -1,73 +0,0 @@ -'use client' - -import { BarChart2 } from 'lucide-react' -import { useEffect, useState } from 'react' -import { - Chart, - ChartCard, - ChartContent, - ChartEmptyState, - ChartHeader, - ChartLoadingState, - ChartMetric, -} from 'ui-patterns/Chart' -import { LogsBarChart } from 'ui-patterns/LogsBarChart' - -export default function ComposedChartDemo() { - const [isLoading, setIsLoading] = useState(true) - - const data = Array.from({ length: 60 }, (_, i) => { - const date = new Date() - date.setMinutes(date.getMinutes() - i * 5) // Each point 5 minutes apart - - return { - timestamp: date.toISOString(), - ok_count: Math.floor(Math.random() * 100), // Random value 0-99 - error_count: Math.floor(Math.random() * 50), // Random value 0-50 - warning_count: Math.floor(Math.random() * 50), // Random value 0-50 - } - }).reverse() - - const totalUsersValue = 4663 - - useEffect(() => { - setTimeout(() => { - setIsLoading(false) - }, 1000) - }, []) - - return ( -
- - - - -
- - -
-
- } - title="No data to show" - description="It may take up to 24 hours for data to refresh" - /> - } - loadingState={} - > -
- -
-
-
-
-
- ) -} diff --git a/apps/design-system/__registry__/default/block/chart-composed-metrics.tsx b/apps/design-system/__registry__/default/block/chart-composed-metrics.tsx deleted file mode 100644 index deab28e4ee2..00000000000 --- a/apps/design-system/__registry__/default/block/chart-composed-metrics.tsx +++ /dev/null @@ -1,100 +0,0 @@ -'use client' - -import { ExternalLink } from 'lucide-react' -import { useEffect, useState } from 'react' -import { Skeleton } from 'ui' -import { - Chart, - ChartActions, - ChartCard, - ChartContent, - ChartHeader, - ChartMetric, - ChartSparkline, -} from 'ui-patterns/Chart' - -export default function ChartComposedMetrics() { - const [data, setData] = useState>([]) - - const actions = [ - { - label: 'Open in Logs Explorer', - onClick: () => { - alert('Ta da! You clicked me! 🎉') - }, - icon: , - }, - ] - - useEffect(() => { - const now = new Date() - setData( - Array.from({ length: 12 }, (_, i) => ({ - value: Math.floor(4000 + i * 100 + (Math.random() * 2000 - 800)), - timestamp: new Date(now.getTime() - (11 - i) * 60 * 60 * 1000).toISOString(), - })) - ) - }, []) - - const averageValue = data.reduce((acc, curr) => acc + curr.value, 0) / data.length - - const diff = data[data.length - 1]?.value - data[0]?.value || 0 - const diffPercentage = (diff / averageValue) * 100 - - return ( -
- - - - - - - - - - - - - - - - - - - - - - - } - > - - - - - - - - - - - } - > - - - - -
- ) -} diff --git a/apps/design-system/__registry__/default/block/chart-composed-states.tsx b/apps/design-system/__registry__/default/block/chart-composed-states.tsx deleted file mode 100644 index 2d3657cca2c..00000000000 --- a/apps/design-system/__registry__/default/block/chart-composed-states.tsx +++ /dev/null @@ -1,121 +0,0 @@ -'use client' - -import { BarChart2, ExternalLink } from 'lucide-react' -import { Badge, CriticalIcon } from 'ui' -import { - Chart, - ChartActions, - ChartCard, - ChartContent, - ChartDisabledState, - ChartEmptyState, - ChartHeader, - ChartLoadingState, - ChartTitle, -} from 'ui-patterns/Chart' - -export default function ChartComposedStates() { - const actions = [ - { - label: 'Open in Logs Explorer', - onClick: () => { - alert('Ta da! You clicked me! 🎉') - }, - icon: , - }, - ] - - const disabledActions = [ - { - label: 'Upgrade to Pro', - href: '#', - }, - ] - - return ( -
- - - - Response Errors - - - }>My chart here... - - - - - - - Response Errors - - - } - title="Some error happened" - description="Error happened why trying to fetch data. Please try again later." - /> - } - emptyState={ - } - title="No data to show" - description="It may take up to 24 hours for data to refresh" - /> - } - loadingState={} - > - My chart here... - - - - - - - - Response Errors - - - } - title="No data to show" - description="It may take up to 24 hours for data to refresh" - /> - } - loadingState={} - > - My chart here... - - - - - - - - Response Errors - - - } - disabledState={ - Pro} - label="API Processing Time" - description="This chart is available on the Pro plan and above" - actions={disabledActions} - /> - } - > - My chart here... - - - -
- ) -} diff --git a/apps/design-system/__registry__/default/block/chart-composed-table.tsx b/apps/design-system/__registry__/default/block/chart-composed-table.tsx deleted file mode 100644 index a8089ed1f57..00000000000 --- a/apps/design-system/__registry__/default/block/chart-composed-table.tsx +++ /dev/null @@ -1,106 +0,0 @@ -'use client' - -import { format } from 'date-fns' -import { BarChart2, ExternalLink } from 'lucide-react' -import { useEffect, useState } from 'react' -import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from 'ui' -import { - Chart, - ChartActions, - ChartBar, - ChartCard, - ChartContent, - ChartEmptyState, - ChartFooter, - ChartHeader, - ChartLoadingState, - ChartTitle, -} from 'ui-patterns/Chart' - -export default function ChartComposedTable() { - const [isLoading, setIsLoading] = useState(true) - - const actions = [ - { - label: 'Open in Logs Explorer', - onClick: () => { - alert('Opening in Logs Explorer...') - }, - icon: , - }, - ] - - const data = Array.from({ length: 46 }, (_, i) => { - const date = new Date() - date.setMinutes(date.getMinutes() - i * 5) // Each point 5 minutes apart - - return { - timestamp: date.toISOString(), - standard_score: Math.floor(Math.random() * 100), - } - }).reverse() - - useEffect(() => { - setTimeout(() => { - setIsLoading(false) - }, 1000) - }, []) - - return ( -
- - - - Standard Bar Chart - - - } - title="No data to show" - description="It may take up to 24 hours for data to refresh" - /> - } - loadingState={} - > -
- `${value}k`, - width: 80, - }} - isFullHeight={true} - /> -
-
- - - - - Timestamp - Standard Score - - - - {data.slice(0, 3).map((item) => ( - - - {format(new Date(item.timestamp), 'MMM d, yyyy h:mm a')} - - {item.standard_score} - - ))} - -
-
-
-
-
- ) -} diff --git a/apps/design-system/__registry__/index.tsx b/apps/design-system/__registry__/index.tsx deleted file mode 100644 index 7e9ec446ef2..00000000000 --- a/apps/design-system/__registry__/index.tsx +++ /dev/null @@ -1,3738 +0,0 @@ -// @ts-nocheck -// This file is autogenerated by scripts/build-registry.ts -// Do not edit this file directly. -import * as React from "react" - -export const Index: Record = { - "default": { - "CollapsibleCardSection": { - name: "CollapsibleCardSection", - type: "components:fragment", - registryDependencies: undefined, - component: React.lazy(() => import("@/../../packages/ui-patterns/src/CollapsibleCardSection")), - source: "", - files: ["registry/default//CollapsibleCardSection.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "ConfirmationModal": { - name: "ConfirmationModal", - type: "components:fragment", - registryDependencies: undefined, - component: React.lazy(() => import("@/../../packages/ui-patterns/src/Dialogs/ConfirmationModal")), - source: "", - files: ["registry/default//Dialogs/ConfirmationModal.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "EmptyStatePresentational": { - name: "EmptyStatePresentational", - type: "components:fragment", - registryDependencies: undefined, - component: React.lazy(() => import("@/../../packages/ui-patterns/src/EmptyStatePresentational")), - source: "", - files: ["registry/default//EmptyStatePresentational/index.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "TextConfirmModal": { - name: "TextConfirmModal", - type: "components:fragment", - registryDependencies: undefined, - component: React.lazy(() => import("@/../../packages/ui-patterns/src/Dialogs/TextConfirmModal")), - source: "", - files: ["registry/default//Dialogs/TextConfirmModal.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "PageContainer": { - name: "PageContainer", - type: "components:fragment", - registryDependencies: undefined, - component: React.lazy(() => import("@/../../packages/ui-patterns/src/PageContainer")), - source: "", - files: ["registry/default//PageContainer/index.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "PageHeader": { - name: "PageHeader", - type: "components:fragment", - registryDependencies: undefined, - component: React.lazy(() => import("@/../../packages/ui-patterns/src/PageHeader")), - source: "", - files: ["registry/default//PageHeader/index.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "PageBreadcrumbs": { - name: "PageBreadcrumbs", - type: "components:fragment", - registryDependencies: undefined, - component: React.lazy(() => import("@/../../packages/ui-patterns/src/PageBreadcrumbs")), - source: "", - files: ["registry/default//PageBreadcrumbs/index.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "PageNav": { - name: "PageNav", - type: "components:fragment", - registryDependencies: undefined, - component: React.lazy(() => import("@/../../packages/ui-patterns/src/PageNav")), - source: "", - files: ["registry/default//PageNav/index.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "PageSection": { - name: "PageSection", - type: "components:fragment", - registryDependencies: undefined, - component: React.lazy(() => import("@/../../packages/ui-patterns/src/PageSection")), - source: "", - files: ["registry/default//PageSection/index.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "StatusCode": { - name: "StatusCode", - type: "components:fragment", - registryDependencies: undefined, - component: React.lazy(() => import("@/../../packages/ui-patterns/src/StatusCode")), - source: "", - files: ["registry/default//StatusCode/index.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "accordion-demo": { - name: "accordion-demo", - type: "components:example", - registryDependencies: ["accordion"], - component: React.lazy(() => import("@/registry/default/example/accordion-demo")), - source: "", - files: ["registry/default/example/accordion-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "admonition-demo": { - name: "admonition-demo", - type: "components:example", - registryDependencies: ["admonition"], - component: React.lazy(() => import("@/registry/default/example/admonition-demo")), - source: "", - files: ["registry/default/example/admonition-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "admonition-responsive": { - name: "admonition-responsive", - type: "components:example", - registryDependencies: ["admonition"], - component: React.lazy(() => import("@/registry/default/example/admonition-responsive")), - source: "", - files: ["registry/default/example/admonition-responsive.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "admonition-button": { - name: "admonition-button", - type: "components:example", - registryDependencies: ["admonition"], - component: React.lazy(() => import("@/registry/default/example/admonition-button")), - source: "", - files: ["registry/default/example/admonition-button.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "admonition-button-split": { - name: "admonition-button-split", - type: "components:example", - registryDependencies: ["admonition","button","dropdown-menu"], - component: React.lazy(() => import("@/registry/default/example/admonition-button-split")), - source: "", - files: ["registry/default/example/admonition-button-split.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "admonition-description-only": { - name: "admonition-description-only", - type: "components:example", - registryDependencies: ["admonition"], - component: React.lazy(() => import("@/registry/default/example/admonition-description-only")), - source: "", - files: ["registry/default/example/admonition-description-only.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "admonition-warning": { - name: "admonition-warning", - type: "components:example", - registryDependencies: ["admonition"], - component: React.lazy(() => import("@/registry/default/example/admonition-warning")), - source: "", - files: ["registry/default/example/admonition-warning.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "admonition-success": { - name: "admonition-success", - type: "components:example", - registryDependencies: ["admonition"], - component: React.lazy(() => import("@/registry/default/example/admonition-success")), - source: "", - files: ["registry/default/example/admonition-success.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "admonition-destructive": { - name: "admonition-destructive", - type: "components:example", - registryDependencies: ["admonition"], - component: React.lazy(() => import("@/registry/default/example/admonition-destructive")), - source: "", - files: ["registry/default/example/admonition-destructive.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "admonition-sandwiched": { - name: "admonition-sandwiched", - type: "components:example", - registryDependencies: ["admonition"], - component: React.lazy(() => import("@/registry/default/example/admonition-sandwiched")), - source: "", - files: ["registry/default/example/admonition-sandwiched.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "alert-demo": { - name: "alert-demo", - type: "components:example", - registryDependencies: ["alert"], - component: React.lazy(() => import("@/registry/default/example/alert-demo")), - source: "", - files: ["registry/default/example/alert-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "collapsible-alert-demo": { - name: "collapsible-alert-demo", - type: "components:example", - registryDependencies: ["collapsible-alert"], - component: React.lazy(() => import("@/registry/default/example/collapsible-alert-demo")), - source: "", - files: ["registry/default/example/collapsible-alert-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "collapsible-card-section-demo": { - name: "collapsible-card-section-demo", - type: "components:example", - registryDependencies: ["collapsible-card-section"], - component: React.lazy(() => import("@/registry/default/example/collapsible-card-section-demo")), - source: "", - files: ["registry/default/example/collapsible-card-section-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "alert-dialog-demo": { - name: "alert-dialog-demo", - type: "components:example", - registryDependencies: ["alert-dialog","button"], - component: React.lazy(() => import("@/registry/default/example/alert-dialog-demo")), - source: "", - files: ["registry/default/example/alert-dialog-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "alert-dialog-close-only": { - name: "alert-dialog-close-only", - type: "components:example", - registryDependencies: ["alert-dialog","button"], - component: React.lazy(() => import("@/registry/default/example/alert-dialog-close-only")), - source: "", - files: ["registry/default/example/alert-dialog-close-only.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "alert-dialog-async": { - name: "alert-dialog-async", - type: "components:example", - registryDependencies: ["alert-dialog","button"], - component: React.lazy(() => import("@/registry/default/example/alert-dialog-async")), - source: "", - files: ["registry/default/example/alert-dialog-async.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "alert-dialog-async-error": { - name: "alert-dialog-async-error", - type: "components:example", - registryDependencies: ["alert-dialog","button","admonition"], - component: React.lazy(() => import("@/registry/default/example/alert-dialog-async-error")), - source: "", - files: ["registry/default/example/alert-dialog-async-error.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "alert-dialog-destructive": { - name: "alert-dialog-destructive", - type: "components:example", - registryDependencies: ["alert-dialog","button"], - component: React.lazy(() => import("@/registry/default/example/alert-dialog-destructive")), - source: "", - files: ["registry/default/example/alert-dialog-destructive.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "alert-dialog-warning": { - name: "alert-dialog-warning", - type: "components:example", - registryDependencies: ["alert-dialog","button"], - component: React.lazy(() => import("@/registry/default/example/alert-dialog-warning")), - source: "", - files: ["registry/default/example/alert-dialog-warning.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "aspect-ratio-demo": { - name: "aspect-ratio-demo", - type: "components:example", - registryDependencies: ["aspect-ratio"], - component: React.lazy(() => import("@/registry/default/example/aspect-ratio-demo")), - source: "", - files: ["registry/default/example/aspect-ratio-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "avatar-demo": { - name: "avatar-demo", - type: "components:example", - registryDependencies: ["avatar"], - component: React.lazy(() => import("@/registry/default/example/avatar-demo")), - source: "", - files: ["registry/default/example/avatar-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "badge-demo": { - name: "badge-demo", - type: "components:example", - registryDependencies: ["badge"], - component: React.lazy(() => import("@/registry/default/example/badge-demo")), - source: "", - files: ["registry/default/example/badge-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "badge-state": { - name: "badge-state", - type: "components:example", - registryDependencies: ["badge"], - component: React.lazy(() => import("@/registry/default/example/badge-state")), - source: "", - files: ["registry/default/example/badge-state.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "badge-secondary": { - name: "badge-secondary", - type: "components:example", - registryDependencies: ["badge"], - component: React.lazy(() => import("@/registry/default/example/badge-secondary")), - source: "", - files: ["registry/default/example/badge-secondary.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "breadcrumb-demo": { - name: "breadcrumb-demo", - type: "components:example", - registryDependencies: ["breadcrumb"], - component: React.lazy(() => import("@/registry/default/example/breadcrumb-demo")), - source: "", - files: ["registry/default/example/breadcrumb-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "breadcrumb-separator": { - name: "breadcrumb-separator", - type: "components:example", - registryDependencies: ["breadcrumb"], - component: React.lazy(() => import("@/registry/default/example/breadcrumb-separator")), - source: "", - files: ["registry/default/example/breadcrumb-separator.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "breadcrumb-dropdown": { - name: "breadcrumb-dropdown", - type: "components:example", - registryDependencies: ["breadcrumb","dropdown-menu"], - component: React.lazy(() => import("@/registry/default/example/breadcrumb-dropdown")), - source: "", - files: ["registry/default/example/breadcrumb-dropdown.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "breadcrumb-ellipsis": { - name: "breadcrumb-ellipsis", - type: "components:example", - registryDependencies: ["breadcrumb"], - component: React.lazy(() => import("@/registry/default/example/breadcrumb-ellipsis")), - source: "", - files: ["registry/default/example/breadcrumb-ellipsis.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "breadcrumb-link": { - name: "breadcrumb-link", - type: "components:example", - registryDependencies: ["breadcrumb"], - component: React.lazy(() => import("@/registry/default/example/breadcrumb-link")), - source: "", - files: ["registry/default/example/breadcrumb-link.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "breadcrumb-responsive": { - name: "breadcrumb-responsive", - type: "components:example", - registryDependencies: ["breadcrumb","button","drawer","dropdown-menu"], - component: React.lazy(() => import("@/registry/default/example/breadcrumb-responsive")), - source: "", - files: ["registry/default/example/breadcrumb-responsive.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-demo": { - name: "button-demo", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-demo")), - source: "", - files: ["registry/default/example/button-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-sizes": { - name: "button-sizes", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-sizes")), - source: "", - files: ["registry/default/example/button-sizes.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-default": { - name: "button-default", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-default")), - source: "", - files: ["registry/default/example/button-default.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-warning": { - name: "button-warning", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-warning")), - source: "", - files: ["registry/default/example/button-warning.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-secondary": { - name: "button-secondary", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-secondary")), - source: "", - files: ["registry/default/example/button-secondary.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-destructive": { - name: "button-destructive", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-destructive")), - source: "", - files: ["registry/default/example/button-destructive.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-outline": { - name: "button-outline", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-outline")), - source: "", - files: ["registry/default/example/button-outline.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-ghost": { - name: "button-ghost", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-ghost")), - source: "", - files: ["registry/default/example/button-ghost.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-link": { - name: "button-link", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-link")), - source: "", - files: ["registry/default/example/button-link.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-with-icon": { - name: "button-with-icon", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-with-icon")), - source: "", - files: ["registry/default/example/button-with-icon.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-loading": { - name: "button-loading", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-loading")), - source: "", - files: ["registry/default/example/button-loading.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-icon": { - name: "button-icon", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-icon")), - source: "", - files: ["registry/default/example/button-icon.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-as-child": { - name: "button-as-child", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/button-as-child")), - source: "", - files: ["registry/default/example/button-as-child.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "button-split-dropdown": { - name: "button-split-dropdown", - type: "components:example", - registryDependencies: ["button","dropdown-menu"], - component: React.lazy(() => import("@/registry/default/example/button-split-dropdown")), - source: "", - files: ["registry/default/example/button-split-dropdown.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "calendar-demo": { - name: "calendar-demo", - type: "components:example", - registryDependencies: ["calendar"], - component: React.lazy(() => import("@/registry/default/example/calendar-demo")), - source: "", - files: ["registry/default/example/calendar-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "calendar-form": { - name: "calendar-form", - type: "components:example", - registryDependencies: ["calendar","form","popover"], - component: React.lazy(() => import("@/registry/default/example/calendar-form")), - source: "", - files: ["registry/default/example/calendar-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "calendar-disabled-days-demo": { - name: "calendar-disabled-days-demo", - type: "components:example", - registryDependencies: ["calendar","form","popover"], - component: React.lazy(() => import("@/registry/default/example/calendar-disabled-days-demo")), - source: "", - files: ["registry/default/example/calendar-disabled-days-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "single-value-field-array-demo": { - name: "single-value-field-array-demo", - type: "components:example", - registryDependencies: ["button","form","input"], - component: React.lazy(() => import("@/registry/default/example/single-value-field-array-demo")), - source: "", - files: ["registry/default/example/single-value-field-array-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "checkbox-demo": { - name: "checkbox-demo", - type: "components:example", - registryDependencies: ["checkbox"], - component: React.lazy(() => import("@/registry/default/example/checkbox-demo")), - source: "", - files: ["registry/default/example/checkbox-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "checkbox-disabled": { - name: "checkbox-disabled", - type: "components:example", - registryDependencies: ["checkbox"], - component: React.lazy(() => import("@/registry/default/example/checkbox-disabled")), - source: "", - files: ["registry/default/example/checkbox-disabled.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "checkbox-form-multiple": { - name: "checkbox-form-multiple", - type: "components:example", - registryDependencies: ["checkbox","form"], - component: React.lazy(() => import("@/registry/default/example/checkbox-form-multiple")), - source: "", - files: ["registry/default/example/checkbox-form-multiple.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "checkbox-form-single": { - name: "checkbox-form-single", - type: "components:example", - registryDependencies: ["checkbox","form"], - component: React.lazy(() => import("@/registry/default/example/checkbox-form-single")), - source: "", - files: ["registry/default/example/checkbox-form-single.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "checkbox-with-text": { - name: "checkbox-with-text", - type: "components:example", - registryDependencies: ["checkbox"], - component: React.lazy(() => import("@/registry/default/example/checkbox-with-text")), - source: "", - files: ["registry/default/example/checkbox-with-text.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "collapsible-demo": { - name: "collapsible-demo", - type: "components:example", - registryDependencies: ["collapsible"], - component: React.lazy(() => import("@/registry/default/example/collapsible-demo")), - source: "", - files: ["registry/default/example/collapsible-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "combobox-demo": { - name: "combobox-demo", - type: "components:example", - registryDependencies: ["command"], - component: React.lazy(() => import("@/registry/default/example/combobox-demo")), - source: "", - files: ["registry/default/example/combobox-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "combobox-dropdown-menu": { - name: "combobox-dropdown-menu", - type: "components:example", - registryDependencies: ["command","dropdown-menu","button"], - component: React.lazy(() => import("@/registry/default/example/combobox-dropdown-menu")), - source: "", - files: ["registry/default/example/combobox-dropdown-menu.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "combobox-form": { - name: "combobox-form", - type: "components:example", - registryDependencies: ["command","form"], - component: React.lazy(() => import("@/registry/default/example/combobox-form")), - source: "", - files: ["registry/default/example/combobox-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "combobox-popover": { - name: "combobox-popover", - type: "components:example", - registryDependencies: ["combobox","popover"], - component: React.lazy(() => import("@/registry/default/example/combobox-popover")), - source: "", - files: ["registry/default/example/combobox-popover.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "combobox-responsive": { - name: "combobox-responsive", - type: "components:example", - registryDependencies: ["combobox","popover","drawer"], - component: React.lazy(() => import("@/registry/default/example/combobox-responsive")), - source: "", - files: ["registry/default/example/combobox-responsive.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "command-demo": { - name: "command-demo", - type: "components:example", - registryDependencies: ["command"], - component: React.lazy(() => import("@/registry/default/example/command-demo")), - source: "", - files: ["registry/default/example/command-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "command-dialog": { - name: "command-dialog", - type: "components:example", - registryDependencies: ["command","dialog"], - component: React.lazy(() => import("@/registry/default/example/command-dialog")), - source: "", - files: ["registry/default/example/command-dialog.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "commandmenu-demo": { - name: "commandmenu-demo", - type: "components:example", - registryDependencies: ["commandmenu"], - component: React.lazy(() => import("@/registry/default/example/commandmenu-demo")), - source: "", - files: ["registry/default/example/commandmenu-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "commandmenu-badge": { - name: "commandmenu-badge", - type: "components:example", - registryDependencies: ["commandmenu"], - component: React.lazy(() => import("@/registry/default/example/commandmenu-badge")), - source: "", - files: ["registry/default/example/commandmenu-badge.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "commandmenu-icon": { - name: "commandmenu-icon", - type: "components:example", - registryDependencies: ["commandmenu"], - component: React.lazy(() => import("@/registry/default/example/commandmenu-icon")), - source: "", - files: ["registry/default/example/commandmenu-icon.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "commandmenu-hidden": { - name: "commandmenu-hidden", - type: "components:example", - registryDependencies: ["commandmenu"], - component: React.lazy(() => import("@/registry/default/example/commandmenu-hidden")), - source: "", - files: ["registry/default/example/commandmenu-hidden.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "commandmenu-force": { - name: "commandmenu-force", - type: "components:example", - registryDependencies: ["commandmenu"], - component: React.lazy(() => import("@/registry/default/example/commandmenu-force")), - source: "", - files: ["registry/default/example/commandmenu-force.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "commandmenu-conditional": { - name: "commandmenu-conditional", - type: "components:example", - registryDependencies: ["commandmenu"], - component: React.lazy(() => import("@/registry/default/example/commandmenu-conditional")), - source: "", - files: ["registry/default/example/commandmenu-conditional.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "commandmenu-subpage": { - name: "commandmenu-subpage", - type: "components:example", - registryDependencies: ["commandmenu"], - component: React.lazy(() => import("@/registry/default/example/commandmenu-subpage")), - source: "", - files: ["registry/default/example/commandmenu-subpage.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "commandmenu-subpage-custom": { - name: "commandmenu-subpage-custom", - type: "components:example", - registryDependencies: ["commandmenu"], - component: React.lazy(() => import("@/registry/default/example/commandmenu-subpage-custom")), - source: "", - files: ["registry/default/example/commandmenu-subpage-custom.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "context-menu-demo": { - name: "context-menu-demo", - type: "components:example", - registryDependencies: ["context-menu"], - component: React.lazy(() => import("@/registry/default/example/context-menu-demo")), - source: "", - files: ["registry/default/example/context-menu-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "data-input-demo": { - name: "data-input-demo", - type: "components:example", - registryDependencies: ["data-input"], - component: React.lazy(() => import("@/registry/default/example/data-input-demo")), - source: "", - files: ["registry/default/example/data-input-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "data-input-with-copy": { - name: "data-input-with-copy", - type: "components:example", - registryDependencies: ["data-input"], - component: React.lazy(() => import("@/registry/default/example/data-input-with-copy")), - source: "", - files: ["registry/default/example/data-input-with-copy.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "data-input-with-copy-secret": { - name: "data-input-with-copy-secret", - type: "components:example", - registryDependencies: ["data-input"], - component: React.lazy(() => import("@/registry/default/example/data-input-with-copy-secret")), - source: "", - files: ["registry/default/example/data-input-with-copy-secret.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "data-input-with-reveal-copy": { - name: "data-input-with-reveal-copy", - type: "components:example", - registryDependencies: ["data-input"], - component: React.lazy(() => import("@/registry/default/example/data-input-with-reveal-copy")), - source: "", - files: ["registry/default/example/data-input-with-reveal-copy.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "data-input-with-reveal-copy-editable": { - name: "data-input-with-reveal-copy-editable", - type: "components:example", - registryDependencies: ["data-input"], - component: React.lazy(() => import("@/registry/default/example/data-input-with-reveal-copy-editable")), - source: "", - files: ["registry/default/example/data-input-with-reveal-copy-editable.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "data-input-with-reveal-copy-editable-empty": { - name: "data-input-with-reveal-copy-editable-empty", - type: "components:example", - registryDependencies: ["data-input"], - component: React.lazy(() => import("@/registry/default/example/data-input-with-reveal-copy-editable-empty")), - source: "", - files: ["registry/default/example/data-input-with-reveal-copy-editable-empty.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "date-picker-demo": { - name: "date-picker-demo", - type: "components:example", - registryDependencies: ["button","calendar","popover"], - component: React.lazy(() => import("@/registry/default/example/date-picker-demo")), - source: "", - files: ["registry/default/example/date-picker-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "date-picker-form": { - name: "date-picker-form", - type: "components:example", - registryDependencies: ["button","calendar","form","popover"], - component: React.lazy(() => import("@/registry/default/example/date-picker-form")), - source: "", - files: ["registry/default/example/date-picker-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "date-picker-with-presets": { - name: "date-picker-with-presets", - type: "components:example", - registryDependencies: ["button","calendar","popover","select"], - component: React.lazy(() => import("@/registry/default/example/date-picker-with-presets")), - source: "", - files: ["registry/default/example/date-picker-with-presets.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "date-picker-with-range": { - name: "date-picker-with-range", - type: "components:example", - registryDependencies: ["button","calendar","popover"], - component: React.lazy(() => import("@/registry/default/example/date-picker-with-range")), - source: "", - files: ["registry/default/example/date-picker-with-range.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "dialog-demo": { - name: "dialog-demo", - type: "components:example", - registryDependencies: ["dialog"], - component: React.lazy(() => import("@/registry/default/example/dialog-demo")), - source: "", - files: ["registry/default/example/dialog-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "dialog-close-button": { - name: "dialog-close-button", - type: "components:example", - registryDependencies: ["dialog","button"], - component: React.lazy(() => import("@/registry/default/example/dialog-close-button")), - source: "", - files: ["registry/default/example/dialog-close-button.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "dialog-centered-off": { - name: "dialog-centered-off", - type: "components:example", - registryDependencies: ["dialog","button"], - component: React.lazy(() => import("@/registry/default/example/dialog-centered-off")), - source: "", - files: ["registry/default/example/dialog-centered-off.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "drawer-demo": { - name: "drawer-demo", - type: "components:example", - registryDependencies: ["drawer"], - component: React.lazy(() => import("@/registry/default/example/drawer-demo")), - source: "", - files: ["registry/default/example/drawer-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "drawer-dialog": { - name: "drawer-dialog", - type: "components:example", - registryDependencies: ["drawer","dialog"], - component: React.lazy(() => import("@/registry/default/example/drawer-dialog")), - source: "", - files: ["registry/default/example/drawer-dialog.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "dropdown-menu-demo": { - name: "dropdown-menu-demo", - type: "components:example", - registryDependencies: ["dropdown-menu"], - component: React.lazy(() => import("@/registry/default/example/dropdown-menu-demo")), - source: "", - files: ["registry/default/example/dropdown-menu-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "dropdown-menu-checkboxes": { - name: "dropdown-menu-checkboxes", - type: "components:example", - registryDependencies: ["dropdown-menu","checkbox"], - component: React.lazy(() => import("@/registry/default/example/dropdown-menu-checkboxes")), - source: "", - files: ["registry/default/example/dropdown-menu-checkboxes.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "dropdown-menu-radio-group": { - name: "dropdown-menu-radio-group", - type: "components:example", - registryDependencies: ["dropdown-menu","radio-group"], - component: React.lazy(() => import("@/registry/default/example/dropdown-menu-radio-group")), - source: "", - files: ["registry/default/example/dropdown-menu-radio-group.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "filter-bar-demo": { - name: "filter-bar-demo", - type: "components:example", - registryDependencies: ["filter-bar"], - component: React.lazy(() => import("@/registry/default/example/filter-bar-demo")), - source: "", - files: ["registry/default/example/filter-bar-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "hover-card-demo": { - name: "hover-card-demo", - type: "components:example", - registryDependencies: ["hover-card"], - component: React.lazy(() => import("@/registry/default/example/hover-card-demo")), - source: "", - files: ["registry/default/example/hover-card-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-demo": { - name: "input-demo", - type: "components:example", - registryDependencies: ["input"], - component: React.lazy(() => import("@/registry/default/example/input-demo")), - source: "", - files: ["registry/default/example/input-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-disabled": { - name: "input-disabled", - type: "components:example", - registryDependencies: ["input"], - component: React.lazy(() => import("@/registry/default/example/input-disabled")), - source: "", - files: ["registry/default/example/input-disabled.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-file": { - name: "input-file", - type: "components:example", - registryDependencies: ["input"], - component: React.lazy(() => import("@/registry/default/example/input-file")), - source: "", - files: ["registry/default/example/input-file.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-form": { - name: "input-form", - type: "components:example", - registryDependencies: ["input","button","form"], - component: React.lazy(() => import("@/registry/default/example/input-form")), - source: "", - files: ["registry/default/example/input-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-with-button": { - name: "input-with-button", - type: "components:example", - registryDependencies: ["input","button"], - component: React.lazy(() => import("@/registry/default/example/input-with-button")), - source: "", - files: ["registry/default/example/input-with-button.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-with-label": { - name: "input-with-label", - type: "components:example", - registryDependencies: ["input","button","label"], - component: React.lazy(() => import("@/registry/default/example/input-with-label")), - source: "", - files: ["registry/default/example/input-with-label.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-with-text": { - name: "input-with-text", - type: "components:example", - registryDependencies: ["input","button","label"], - component: React.lazy(() => import("@/registry/default/example/input-with-text")), - source: "", - files: ["registry/default/example/input-with-text.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-otp-demo": { - name: "input-otp-demo", - type: "components:example", - registryDependencies: ["input-otp"], - component: React.lazy(() => import("@/registry/default/example/input-otp-demo")), - source: "", - files: ["registry/default/example/input-otp-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-otp-pattern": { - name: "input-otp-pattern", - type: "components:example", - registryDependencies: ["input-otp"], - component: React.lazy(() => import("@/registry/default/example/input-otp-pattern")), - source: "", - files: ["registry/default/example/input-otp-pattern.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-otp-separator": { - name: "input-otp-separator", - type: "components:example", - registryDependencies: ["input-otp"], - component: React.lazy(() => import("@/registry/default/example/input-otp-separator")), - source: "", - files: ["registry/default/example/input-otp-separator.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-otp-controlled": { - name: "input-otp-controlled", - type: "components:example", - registryDependencies: ["input-otp"], - component: React.lazy(() => import("@/registry/default/example/input-otp-controlled")), - source: "", - files: ["registry/default/example/input-otp-controlled.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "input-otp-form": { - name: "input-otp-form", - type: "components:example", - registryDependencies: ["input-otp","form"], - component: React.lazy(() => import("@/registry/default/example/input-otp-form")), - source: "", - files: ["registry/default/example/input-otp-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "keyboard-shortcut-demo": { - name: "keyboard-shortcut-demo", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/keyboard-shortcut-demo")), - source: "", - files: ["registry/default/example/keyboard-shortcut-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "keyboard-shortcut-pill": { - name: "keyboard-shortcut-pill", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/keyboard-shortcut-pill")), - source: "", - files: ["registry/default/example/keyboard-shortcut-pill.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "keyboard-shortcut-inline": { - name: "keyboard-shortcut-inline", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/keyboard-shortcut-inline")), - source: "", - files: ["registry/default/example/keyboard-shortcut-inline.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "label-demo": { - name: "label-demo", - type: "components:example", - registryDependencies: ["label"], - component: React.lazy(() => import("@/registry/default/example/label-demo")), - source: "", - files: ["registry/default/example/label-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "menubar-demo": { - name: "menubar-demo", - type: "components:example", - registryDependencies: ["menubar"], - component: React.lazy(() => import("@/registry/default/example/menubar-demo")), - source: "", - files: ["registry/default/example/menubar-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "navigation-menu-demo": { - name: "navigation-menu-demo", - type: "components:example", - registryDependencies: ["navigation-menu"], - component: React.lazy(() => import("@/registry/default/example/navigation-menu-demo")), - source: "", - files: ["registry/default/example/navigation-menu-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "navigation-menu-responsive": { - name: "navigation-menu-responsive", - type: "components:example", - registryDependencies: ["navigation-menu"], - component: React.lazy(() => import("@/registry/default/example/navigation-menu-responsive")), - source: "", - files: ["registry/default/example/navigation-menu-responsive.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "nav-menu-demo": { - name: "nav-menu-demo", - type: "components:example", - registryDependencies: ["nav-menu"], - component: React.lazy(() => import("@/registry/default/example/nav-menu-demo")), - source: "", - files: ["registry/default/example/nav-menu-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "nav-menu-badges": { - name: "nav-menu-badges", - type: "components:example", - registryDependencies: ["nav-menu"], - component: React.lazy(() => import("@/registry/default/example/nav-menu-badges")), - source: "", - files: ["registry/default/example/nav-menu-badges.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "nav-menu-icons": { - name: "nav-menu-icons", - type: "components:example", - registryDependencies: ["nav-menu"], - component: React.lazy(() => import("@/registry/default/example/nav-menu-icons")), - source: "", - files: ["registry/default/example/nav-menu-icons.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "popover-demo": { - name: "popover-demo", - type: "components:example", - registryDependencies: ["popover"], - component: React.lazy(() => import("@/registry/default/example/popover-demo")), - source: "", - files: ["registry/default/example/popover-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "progress-demo": { - name: "progress-demo", - type: "components:example", - registryDependencies: ["progress"], - component: React.lazy(() => import("@/registry/default/example/progress-demo")), - source: "", - files: ["registry/default/example/progress-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "radio-group-demo": { - name: "radio-group-demo", - type: "components:example", - registryDependencies: ["radio-group"], - component: React.lazy(() => import("@/registry/default/example/radio-group-demo")), - source: "", - files: ["registry/default/example/radio-group-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "radio-group-form": { - name: "radio-group-form", - type: "components:example", - registryDependencies: ["radio-group","form"], - component: React.lazy(() => import("@/registry/default/example/radio-group-form")), - source: "", - files: ["registry/default/example/radio-group-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "radio-group-stacked-demo": { - name: "radio-group-stacked-demo", - type: "components:example", - registryDependencies: ["radio-group"], - component: React.lazy(() => import("@/registry/default/example/radio-group-stacked-demo")), - source: "", - files: ["registry/default/example/radio-group-stacked-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "radio-group-stacked-form": { - name: "radio-group-stacked-form", - type: "components:example", - registryDependencies: ["radio-group","form"], - component: React.lazy(() => import("@/registry/default/example/radio-group-stacked-form")), - source: "", - files: ["registry/default/example/radio-group-stacked-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "radio-group-card-demo": { - name: "radio-group-card-demo", - type: "components:example", - registryDependencies: ["radio-group"], - component: React.lazy(() => import("@/registry/default/example/radio-group-card-demo")), - source: "", - files: ["registry/default/example/radio-group-card-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "radio-group-card-form": { - name: "radio-group-card-form", - type: "components:example", - registryDependencies: ["radio-group","form"], - component: React.lazy(() => import("@/registry/default/example/radio-group-card-form")), - source: "", - files: ["registry/default/example/radio-group-card-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "radio-group-card-with-children": { - name: "radio-group-card-with-children", - type: "components:example", - registryDependencies: ["radio-group","form"], - component: React.lazy(() => import("@/registry/default/example/radio-group-card-with-children")), - source: "", - files: ["registry/default/example/radio-group-card-with-children.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "resizable-demo": { - name: "resizable-demo", - type: "components:example", - registryDependencies: ["resizable"], - component: React.lazy(() => import("@/registry/default/example/resizable-demo")), - source: "", - files: ["registry/default/example/resizable-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "resizable-demo-with-handle": { - name: "resizable-demo-with-handle", - type: "components:example", - registryDependencies: ["resizable"], - component: React.lazy(() => import("@/registry/default/example/resizable-demo-with-handle")), - source: "", - files: ["registry/default/example/resizable-demo-with-handle.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "resizable-vertical": { - name: "resizable-vertical", - type: "components:example", - registryDependencies: ["resizable"], - component: React.lazy(() => import("@/registry/default/example/resizable-vertical")), - source: "", - files: ["registry/default/example/resizable-vertical.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "resizable-handle": { - name: "resizable-handle", - type: "components:example", - registryDependencies: ["resizable"], - component: React.lazy(() => import("@/registry/default/example/resizable-handle")), - source: "", - files: ["registry/default/example/resizable-handle.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "scroll-area-demo": { - name: "scroll-area-demo", - type: "components:example", - registryDependencies: ["scroll-area"], - component: React.lazy(() => import("@/registry/default/example/scroll-area-demo")), - source: "", - files: ["registry/default/example/scroll-area-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "scroll-area-horizontal-demo": { - name: "scroll-area-horizontal-demo", - type: "components:example", - registryDependencies: ["scroll-area"], - component: React.lazy(() => import("@/registry/default/example/scroll-area-horizontal-demo")), - source: "", - files: ["registry/default/example/scroll-area-horizontal-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "select-demo": { - name: "select-demo", - type: "components:example", - registryDependencies: ["select"], - component: React.lazy(() => import("@/registry/default/example/select-demo")), - source: "", - files: ["registry/default/example/select-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "select-scrollable": { - name: "select-scrollable", - type: "components:example", - registryDependencies: ["select"], - component: React.lazy(() => import("@/registry/default/example/select-scrollable")), - source: "", - files: ["registry/default/example/select-scrollable.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "select-form": { - name: "select-form", - type: "components:example", - registryDependencies: ["select"], - component: React.lazy(() => import("@/registry/default/example/select-form")), - source: "", - files: ["registry/default/example/select-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "separator-demo": { - name: "separator-demo", - type: "components:example", - registryDependencies: ["separator"], - component: React.lazy(() => import("@/registry/default/example/separator-demo")), - source: "", - files: ["registry/default/example/separator-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "sheet-confirm-on-close-demo": { - name: "sheet-confirm-on-close-demo", - type: "components:example", - registryDependencies: ["alert-dialog","button","input","label","separator","sheet"], - component: React.lazy(() => import("@/registry/default/example/sheet-confirm-on-close-demo")), - source: "", - files: ["registry/default/example/sheet-confirm-on-close-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "sheet-demo": { - name: "sheet-demo", - type: "components:example", - registryDependencies: ["sheet"], - component: React.lazy(() => import("@/registry/default/example/sheet-demo")), - source: "", - files: ["registry/default/example/sheet-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "sheet-nonmodal": { - name: "sheet-nonmodal", - type: "components:example", - registryDependencies: ["sheet"], - component: React.lazy(() => import("@/registry/default/example/sheet-nonmodal")), - source: "", - files: ["registry/default/example/sheet-nonmodal.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "sheet-side": { - name: "sheet-side", - type: "components:example", - registryDependencies: ["sheet"], - component: React.lazy(() => import("@/registry/default/example/sheet-side")), - source: "", - files: ["registry/default/example/sheet-side.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "skeleton-demo": { - name: "skeleton-demo", - type: "components:example", - registryDependencies: ["skeleton"], - component: React.lazy(() => import("@/registry/default/example/skeleton-demo")), - source: "", - files: ["registry/default/example/skeleton-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "skeleton-card": { - name: "skeleton-card", - type: "components:example", - registryDependencies: ["skeleton"], - component: React.lazy(() => import("@/registry/default/example/skeleton-card")), - source: "", - files: ["registry/default/example/skeleton-card.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "slider-demo": { - name: "slider-demo", - type: "components:example", - registryDependencies: ["slider"], - component: React.lazy(() => import("@/registry/default/example/slider-demo")), - source: "", - files: ["registry/default/example/slider-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "slider-minMax-range": { - name: "slider-minMax-range", - type: "components:example", - registryDependencies: ["slider"], - component: React.lazy(() => import("@/registry/default/example/slider-minMax-range")), - source: "", - files: ["registry/default/example/slider-minMax-range.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "sonner-demo": { - name: "sonner-demo", - type: "components:example", - registryDependencies: ["sonner"], - component: React.lazy(() => import("@/registry/default/example/sonner-demo")), - source: "", - files: ["registry/default/example/sonner-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "sonner-types": { - name: "sonner-types", - type: "components:example", - registryDependencies: ["sonner"], - component: React.lazy(() => import("@/registry/default/example/sonner-types")), - source: "", - files: ["registry/default/example/sonner-types.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "sonner-upload": { - name: "sonner-upload", - type: "components:example", - registryDependencies: ["sonner"], - component: React.lazy(() => import("@/registry/default/example/sonner-upload")), - source: "", - files: ["registry/default/example/sonner-upload.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "success-check-demo": { - name: "success-check-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/success-check-demo")), - source: "", - files: ["registry/default/example/success-check-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "success-check-selected": { - name: "success-check-selected", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/success-check-selected")), - source: "", - files: ["registry/default/example/success-check-selected.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "success-check-progress": { - name: "success-check-progress", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/success-check-progress")), - source: "", - files: ["registry/default/example/success-check-progress.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "switch-demo": { - name: "switch-demo", - type: "components:example", - registryDependencies: ["switch"], - component: React.lazy(() => import("@/registry/default/example/switch-demo")), - source: "", - files: ["registry/default/example/switch-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "switch-form": { - name: "switch-form", - type: "components:example", - registryDependencies: ["switch","form"], - component: React.lazy(() => import("@/registry/default/example/switch-form")), - source: "", - files: ["registry/default/example/switch-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "table-cross-link": { - name: "table-cross-link", - type: "components:example", - registryDependencies: ["table"], - component: React.lazy(() => import("@/registry/default/example/table-cross-link")), - source: "", - files: ["registry/default/example/table-cross-link.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "table-demo": { - name: "table-demo", - type: "components:example", - registryDependencies: ["table"], - component: React.lazy(() => import("@/registry/default/example/table-demo")), - source: "", - files: ["registry/default/example/table-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "table-actions": { - name: "table-actions", - type: "components:example", - registryDependencies: ["table"], - component: React.lazy(() => import("@/registry/default/example/table-actions")), - source: "", - files: ["registry/default/example/table-actions.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "table-icons": { - name: "table-icons", - type: "components:example", - registryDependencies: ["table"], - component: React.lazy(() => import("@/registry/default/example/table-icons")), - source: "", - files: ["registry/default/example/table-icons.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "table-row-link": { - name: "table-row-link", - type: "components:example", - registryDependencies: ["table"], - component: React.lazy(() => import("@/registry/default/example/table-row-link")), - source: "", - files: ["registry/default/example/table-row-link.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "table-row-link-actions": { - name: "table-row-link-actions", - type: "components:example", - registryDependencies: ["table"], - component: React.lazy(() => import("@/registry/default/example/table-row-link-actions")), - source: "", - files: ["registry/default/example/table-row-link-actions.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "table-sort": { - name: "table-sort", - type: "components:example", - registryDependencies: ["table"], - component: React.lazy(() => import("@/registry/default/example/table-sort")), - source: "", - files: ["registry/default/example/table-sort.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "tabs-demo": { - name: "tabs-demo", - type: "components:example", - registryDependencies: ["tabs"], - component: React.lazy(() => import("@/registry/default/example/tabs-demo")), - source: "", - files: ["registry/default/example/tabs-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "textarea-demo": { - name: "textarea-demo", - type: "components:example", - registryDependencies: ["textarea"], - component: React.lazy(() => import("@/registry/default/example/textarea-demo")), - source: "", - files: ["registry/default/example/textarea-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "textarea-disabled": { - name: "textarea-disabled", - type: "components:example", - registryDependencies: ["textarea"], - component: React.lazy(() => import("@/registry/default/example/textarea-disabled")), - source: "", - files: ["registry/default/example/textarea-disabled.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "textarea-form": { - name: "textarea-form", - type: "components:example", - registryDependencies: ["textarea","form"], - component: React.lazy(() => import("@/registry/default/example/textarea-form")), - source: "", - files: ["registry/default/example/textarea-form.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "textarea-with-button": { - name: "textarea-with-button", - type: "components:example", - registryDependencies: ["textarea","button"], - component: React.lazy(() => import("@/registry/default/example/textarea-with-button")), - source: "", - files: ["registry/default/example/textarea-with-button.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "textarea-with-label": { - name: "textarea-with-label", - type: "components:example", - registryDependencies: ["textarea","label"], - component: React.lazy(() => import("@/registry/default/example/textarea-with-label")), - source: "", - files: ["registry/default/example/textarea-with-label.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "textarea-with-text": { - name: "textarea-with-text", - type: "components:example", - registryDependencies: ["textarea","label"], - component: React.lazy(() => import("@/registry/default/example/textarea-with-text")), - source: "", - files: ["registry/default/example/textarea-with-text.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-group-demo": { - name: "toggle-group-demo", - type: "components:example", - registryDependencies: ["toggle-group"], - component: React.lazy(() => import("@/registry/default/example/toggle-group-demo")), - source: "", - files: ["registry/default/example/toggle-group-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-group-disabled": { - name: "toggle-group-disabled", - type: "components:example", - registryDependencies: ["toggle-group"], - component: React.lazy(() => import("@/registry/default/example/toggle-group-disabled")), - source: "", - files: ["registry/default/example/toggle-group-disabled.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-group-lg": { - name: "toggle-group-lg", - type: "components:example", - registryDependencies: ["toggle-group"], - component: React.lazy(() => import("@/registry/default/example/toggle-group-lg")), - source: "", - files: ["registry/default/example/toggle-group-lg.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-group-outline": { - name: "toggle-group-outline", - type: "components:example", - registryDependencies: ["toggle-group"], - component: React.lazy(() => import("@/registry/default/example/toggle-group-outline")), - source: "", - files: ["registry/default/example/toggle-group-outline.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-group-sm": { - name: "toggle-group-sm", - type: "components:example", - registryDependencies: ["toggle-group"], - component: React.lazy(() => import("@/registry/default/example/toggle-group-sm")), - source: "", - files: ["registry/default/example/toggle-group-sm.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-group-single": { - name: "toggle-group-single", - type: "components:example", - registryDependencies: ["toggle-group"], - component: React.lazy(() => import("@/registry/default/example/toggle-group-single")), - source: "", - files: ["registry/default/example/toggle-group-single.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-demo": { - name: "toggle-demo", - type: "components:example", - registryDependencies: ["toggle"], - component: React.lazy(() => import("@/registry/default/example/toggle-demo")), - source: "", - files: ["registry/default/example/toggle-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-disabled": { - name: "toggle-disabled", - type: "components:example", - registryDependencies: ["toggle"], - component: React.lazy(() => import("@/registry/default/example/toggle-disabled")), - source: "", - files: ["registry/default/example/toggle-disabled.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-lg": { - name: "toggle-lg", - type: "components:example", - registryDependencies: ["toggle"], - component: React.lazy(() => import("@/registry/default/example/toggle-lg")), - source: "", - files: ["registry/default/example/toggle-lg.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-outline": { - name: "toggle-outline", - type: "components:example", - registryDependencies: ["toggle"], - component: React.lazy(() => import("@/registry/default/example/toggle-outline")), - source: "", - files: ["registry/default/example/toggle-outline.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-sm": { - name: "toggle-sm", - type: "components:example", - registryDependencies: ["toggle"], - component: React.lazy(() => import("@/registry/default/example/toggle-sm")), - source: "", - files: ["registry/default/example/toggle-sm.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toggle-with-text": { - name: "toggle-with-text", - type: "components:example", - registryDependencies: ["toggle"], - component: React.lazy(() => import("@/registry/default/example/toggle-with-text")), - source: "", - files: ["registry/default/example/toggle-with-text.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "tooltip-demo": { - name: "tooltip-demo", - type: "components:example", - registryDependencies: ["tooltip"], - component: React.lazy(() => import("@/registry/default/example/tooltip-demo")), - source: "", - files: ["registry/default/example/tooltip-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-blockquote": { - name: "typography-blockquote", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-blockquote")), - source: "", - files: ["registry/default/example/typography-blockquote.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-demo": { - name: "typography-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-demo")), - source: "", - files: ["registry/default/example/typography-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-h1": { - name: "typography-h1", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-h1")), - source: "", - files: ["registry/default/example/typography-h1.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-h2": { - name: "typography-h2", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-h2")), - source: "", - files: ["registry/default/example/typography-h2.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-h3": { - name: "typography-h3", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-h3")), - source: "", - files: ["registry/default/example/typography-h3.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-h4": { - name: "typography-h4", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-h4")), - source: "", - files: ["registry/default/example/typography-h4.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-inline-code": { - name: "typography-inline-code", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-inline-code")), - source: "", - files: ["registry/default/example/typography-inline-code.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-large": { - name: "typography-large", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-large")), - source: "", - files: ["registry/default/example/typography-large.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-lead": { - name: "typography-lead", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-lead")), - source: "", - files: ["registry/default/example/typography-lead.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-list": { - name: "typography-list", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-list")), - source: "", - files: ["registry/default/example/typography-list.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-muted": { - name: "typography-muted", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-muted")), - source: "", - files: ["registry/default/example/typography-muted.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-p": { - name: "typography-p", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-p")), - source: "", - files: ["registry/default/example/typography-p.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-small": { - name: "typography-small", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-small")), - source: "", - files: ["registry/default/example/typography-small.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "typography-table": { - name: "typography-table", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/typography-table")), - source: "", - files: ["registry/default/example/typography-table.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mode-toggle": { - name: "mode-toggle", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/mode-toggle")), - source: "", - files: ["registry/default/example/mode-toggle.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "text-confirm-dialog-demo": { - name: "text-confirm-dialog-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/text-confirm-dialog-demo")), - source: "", - files: ["registry/default/example/text-confirm-dialog-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "text-confirm-dialog-with-size": { - name: "text-confirm-dialog-with-size", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/text-confirm-dialog-with-size")), - source: "", - files: ["registry/default/example/text-confirm-dialog-with-size.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "text-confirm-dialog-with-children": { - name: "text-confirm-dialog-with-children", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/text-confirm-dialog-with-children")), - source: "", - files: ["registry/default/example/text-confirm-dialog-with-children.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "text-confirm-dialog-with-cancel-button": { - name: "text-confirm-dialog-with-cancel-button", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/text-confirm-dialog-with-cancel-button")), - source: "", - files: ["registry/default/example/text-confirm-dialog-with-cancel-button.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "form-item-layout-demo": { - name: "form-item-layout-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/form-item-layout-demo")), - source: "", - files: ["registry/default/example/form-item-layout-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "key-value-field-array-demo": { - name: "key-value-field-array-demo", - type: "components:example", - registryDependencies: ["button","form","input"], - component: React.lazy(() => import("@/registry/default/example/key-value-field-array-demo")), - source: "", - files: ["registry/default/example/key-value-field-array-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-choice-card": { - name: "field-choice-card", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-choice-card")), - source: "", - files: ["registry/default/example/field-choice-card.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-checkbox": { - name: "field-checkbox", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-checkbox")), - source: "", - files: ["registry/default/example/field-checkbox.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-demo": { - name: "field-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-demo")), - source: "", - files: ["registry/default/example/field-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-fieldset": { - name: "field-fieldset", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-fieldset")), - source: "", - files: ["registry/default/example/field-fieldset.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-input": { - name: "field-input", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-input")), - source: "", - files: ["registry/default/example/field-input.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-group": { - name: "field-group", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-group")), - source: "", - files: ["registry/default/example/field-group.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-radio": { - name: "field-radio", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-radio")), - source: "", - files: ["registry/default/example/field-radio.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-responsive": { - name: "field-responsive", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-responsive")), - source: "", - files: ["registry/default/example/field-responsive.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-select": { - name: "field-select", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-select")), - source: "", - files: ["registry/default/example/field-select.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-slider": { - name: "field-slider", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-slider")), - source: "", - files: ["registry/default/example/field-slider.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-switch": { - name: "field-switch", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-switch")), - source: "", - files: ["registry/default/example/field-switch.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "field-textarea": { - name: "field-textarea", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/field-textarea")), - source: "", - files: ["registry/default/example/field-textarea.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "form-patterns-pagelayout": { - name: "form-patterns-pagelayout", - type: "components:example", - registryDependencies: ["form","card","input","button","select","switch","checkbox","textarea","radio-group","calendar","popover","multi-select"], - component: React.lazy(() => import("@/registry/default/example/form-patterns-pagelayout")), - source: "", - files: ["registry/default/example/form-patterns-pagelayout.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "form-patterns-sidepanel": { - name: "form-patterns-sidepanel", - type: "components:example", - registryDependencies: ["form","sheet","input","button","select","switch","checkbox","textarea","radio-group","calendar","popover","multi-select"], - component: React.lazy(() => import("@/registry/default/example/form-patterns-sidepanel")), - source: "", - files: ["registry/default/example/form-patterns-sidepanel.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "form-item-layout-with-select": { - name: "form-item-layout-with-select", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/form-item-layout-with-select")), - source: "", - files: ["registry/default/example/form-item-layout-with-select.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "form-item-layout-with-horizontal": { - name: "form-item-layout-with-horizontal", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/form-item-layout-with-horizontal")), - source: "", - files: ["registry/default/example/form-item-layout-with-horizontal.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "form-item-layout-with-switch": { - name: "form-item-layout-with-switch", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/form-item-layout-with-switch")), - source: "", - files: ["registry/default/example/form-item-layout-with-switch.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "form-item-layout-with-checkbox": { - name: "form-item-layout-with-checkbox", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/form-item-layout-with-checkbox")), - source: "", - files: ["registry/default/example/form-item-layout-with-switch.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "form-item-layout-with-checkbox-list": { - name: "form-item-layout-with-checkbox-list", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/form-item-layout-with-checkbox-list")), - source: "", - files: ["registry/default/example/form-item-layout-with-switch.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "form-item-layout-before-label": { - name: "form-item-layout-before-label", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/form-item-layout-before-label")), - source: "", - files: ["registry/default/example/form-item-layout-before-label.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "form-item-layout-after-label": { - name: "form-item-layout-after-label", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/form-item-layout-after-label")), - source: "", - files: ["registry/default/example/form-item-layout-after-label.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "info-tooltip-demo": { - name: "info-tooltip-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/info-tooltip-demo")), - source: "", - files: ["registry/default/example/info-tooltip-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "skip-to-content-demo": { - name: "skip-to-content-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/skip-to-content-demo")), - source: "", - files: ["registry/default/example/skip-to-content-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-container-demo": { - name: "page-container-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-container-demo")), - source: "", - files: ["registry/default/example/page-container-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-breadcrumbs-demo": { - name: "page-breadcrumbs-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-breadcrumbs-demo")), - source: "", - files: ["registry/default/example/page-breadcrumbs-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-nav-demo": { - name: "page-nav-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-nav-demo")), - source: "", - files: ["registry/default/example/page-nav-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-layout-detail": { - name: "page-layout-detail", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-layout-detail")), - source: "", - files: ["registry/default/example/page-layout-detail.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-layout-edge-function": { - name: "page-layout-edge-function", - type: "components:example", - registryDependencies: ["filter-bar"], - component: React.lazy(() => import("@/registry/default/example/page-layout-edge-function")), - source: "", - files: ["registry/default/example/page-layout-edge-function.tsx","registry/default/example/page-layout-logs-content.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-layout-full-width": { - name: "page-layout-full-width", - type: "components:example", - registryDependencies: ["filter-bar"], - component: React.lazy(() => import("@/registry/default/example/page-layout-full-width")), - source: "", - files: ["registry/default/example/page-layout-full-width.tsx","registry/default/example/page-layout-logs-content.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-layout-list": { - name: "page-layout-list", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-layout-list")), - source: "", - files: ["registry/default/example/page-layout-list.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-layout-list-simple": { - name: "page-layout-list-simple", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-layout-list-simple")), - source: "", - files: ["registry/default/example/page-layout-list-simple.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-layout-settings": { - name: "page-layout-settings", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-layout-settings")), - source: "", - files: ["registry/default/example/page-layout-settings.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "connect-interstitial-demo": { - name: "connect-interstitial-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/connect-interstitial-demo")), - source: "", - files: ["registry/default/example/connect-interstitial-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "connect-interstitial-action-error": { - name: "connect-interstitial-action-error", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/connect-interstitial-action-error")), - source: "", - files: ["registry/default/example/connect-interstitial-action-error.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "connect-interstitial-logo-pair": { - name: "connect-interstitial-logo-pair", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/connect-interstitial-logo-pair")), - source: "", - files: ["registry/default/example/connect-interstitial-logo-pair.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "connect-interstitial-logo-single": { - name: "connect-interstitial-logo-single", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/connect-interstitial-logo-single")), - source: "", - files: ["registry/default/example/connect-interstitial-logo-single.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "connect-interstitial-logo-unknown": { - name: "connect-interstitial-logo-unknown", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/connect-interstitial-logo-unknown")), - source: "", - files: ["registry/default/example/connect-interstitial-logo-unknown.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "connect-interstitial-logo-uploaded": { - name: "connect-interstitial-logo-uploaded", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/connect-interstitial-logo-uploaded")), - source: "", - files: ["registry/default/example/connect-interstitial-logo-uploaded.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-layout-auth-emails": { - name: "page-layout-auth-emails", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-layout-auth-emails")), - source: "", - files: ["registry/default/example/page-layout-auth-emails.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-header-demo": { - name: "page-header-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-header-demo")), - source: "", - files: ["registry/default/example/page-header-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-section-demo": { - name: "page-section-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-section-demo")), - source: "", - files: ["registry/default/example/page-section-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-section-horizontal": { - name: "page-section-horizontal", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-section-horizontal")), - source: "", - files: ["registry/default/example/page-section-horizontal.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-section-title-only": { - name: "page-section-title-only", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-section-title-only")), - source: "", - files: ["registry/default/example/page-section-title-only.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "page-section-with-aside": { - name: "page-section-with-aside", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/page-section-with-aside")), - source: "", - files: ["registry/default/example/page-section-with-aside.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "inner-side-menu-demo": { - name: "inner-side-menu-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/inner-side-menu-demo")), - source: "", - files: ["registry/default/example/inner-side-menu-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "inner-side-menu-static-titles": { - name: "inner-side-menu-static-titles", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/inner-side-menu-static-titles")), - source: "", - files: ["registry/default/example/inner-side-menu-static-titles.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "inner-side-menu-loading": { - name: "inner-side-menu-loading", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/inner-side-menu-loading")), - source: "", - files: ["registry/default/example/inner-side-menu-loading.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "inner-side-menu-multiple-sections": { - name: "inner-side-menu-multiple-sections", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/inner-side-menu-multiple-sections")), - source: "", - files: ["registry/default/example/inner-side-menu-multiple-sections.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "inner-side-menu-empty": { - name: "inner-side-menu-empty", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/inner-side-menu-empty")), - source: "", - files: ["registry/default/example/inner-side-menu-empty.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "inner-side-menu-with-search": { - name: "inner-side-menu-with-search", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/inner-side-menu-with-search")), - source: "", - files: ["registry/default/example/inner-side-menu-with-search.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toc-demo": { - name: "toc-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/toc-demo")), - source: "", - files: ["registry/default/example/toc-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "toc-single-demo": { - name: "toc-single-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/toc-single-demo")), - source: "", - files: ["registry/default/example/toc-single-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "multi-select-demo": { - name: "multi-select-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/multi-select-demo")), - source: "", - files: ["registry/default/example/multi-select-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "multi-select-disabled": { - name: "multi-select-disabled", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/multi-select-disabled")), - source: "", - files: ["registry/default/example/multi-select-disabled.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "multi-select-badge-limit-wrap": { - name: "multi-select-badge-limit-wrap", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/multi-select-badge-limit-wrap")), - source: "", - files: ["registry/default/example/multi-select-badge-limit-wrap.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "multi-select-badge-limit": { - name: "multi-select-badge-limit", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/multi-select-badge-limit")), - source: "", - files: ["registry/default/example/multi-select-badge-limit.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "multi-select-combobox": { - name: "multi-select-combobox", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/multi-select-combobox")), - source: "", - files: ["registry/default/example/multi-select-combobox.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "multi-select-combobox-creatable": { - name: "multi-select-combobox-creatable", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/multi-select-combobox-creatable")), - source: "", - files: ["registry/default/example/multi-select-combobox-creatable.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "multi-select-deletable-badge": { - name: "multi-select-deletable-badge", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/multi-select-deletable-badge")), - source: "", - files: ["registry/default/example/multi-select-deletable-badge.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "multi-select-inline-search-input": { - name: "multi-select-inline-search-input", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/multi-select-inline-search-input")), - source: "", - files: ["registry/default/example/multi-select-inline-search-input.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "multi-select-in-dialog": { - name: "multi-select-in-dialog", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/multi-select-in-dialog")), - source: "", - files: ["registry/default/example/multi-select-in-dialog.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "tree-view-demo": { - name: "tree-view-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/tree-view-demo")), - source: "", - files: ["registry/default/example/tree-view-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "tree-view-edit": { - name: "tree-view-edit", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/tree-view-edit")), - source: "", - files: ["registry/default/example/tree-view-edit.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "tree-view-directories": { - name: "tree-view-directories", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/tree-view-directories")), - source: "", - files: ["registry/default/example/tree-view-directories.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "tree-view-multi-select": { - name: "tree-view-multi-select", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/tree-view-multi-select")), - source: "", - files: ["registry/default/example/tree-view-multi-select.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "confirmation-modal-demo": { - name: "confirmation-modal-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/confirmation-modal-demo")), - source: "", - files: ["registry/default/example/confirmation-modal-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "assistant-chat-demo": { - name: "assistant-chat-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/assistant-chat-demo")), - source: "", - files: ["registry/default/example/assistant-chat-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "assistant-chat-commands": { - name: "assistant-chat-commands", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/assistant-chat-commands")), - source: "", - files: ["registry/default/example/assistant-chat-commands.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "color-usage-surface-www-and-docs": { - name: "color-usage-surface-www-and-docs", - type: "docs:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/color-usage-surface-www-and-docs")), - source: "", - files: ["registry/default/example/color-usage-surface-www-and-docs.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "color-usage-surface-studio": { - name: "color-usage-surface-studio", - type: "docs:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/color-usage-surface-studio")), - source: "", - files: ["registry/default/example/color-usage-surface-studio.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "color-usage-surface-studio-frame": { - name: "color-usage-surface-studio-frame", - type: "docs:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/color-usage-surface-studio-frame")), - source: "", - files: ["registry/default/example/color-usage-surface-studio-frame.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "chart-bar-demo": { - name: "chart-bar-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/chart-bar-demo")), - source: "", - files: ["registry/default/example/chart-bar-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "chart-bar-demo-grid": { - name: "chart-bar-demo-grid", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/chart-bar-demo-grid")), - source: "", - files: ["registry/default/example/chart-bar-demo-grid.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "chart-bar-demo-axis": { - name: "chart-bar-demo-axis", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/chart-bar-demo-axis")), - source: "", - files: ["registry/default/example/chart-bar-demo-axis.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "chart-bar-demo-tooltip": { - name: "chart-bar-demo-tooltip", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/chart-bar-demo-tooltip")), - source: "", - files: ["registry/default/example/chart-bar-demo-tooltip.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "chart-bar-demo-legend": { - name: "chart-bar-demo-legend", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/chart-bar-demo-legend")), - source: "", - files: ["registry/default/example/chart-bar-demo-legend.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "chart-tooltip-demo": { - name: "chart-tooltip-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/chart-tooltip-demo")), - source: "", - files: ["registry/default/example/chart-tooltip-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "expanding-textarea-demo": { - name: "expanding-textarea-demo", - type: "docs:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/expanding-textarea-demo")), - source: "", - files: ["registry/default/example/expanding-textarea-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "error-display-demo": { - name: "error-display-demo", - type: "components:example", - registryDependencies: ["error-display"], - component: React.lazy(() => import("@/registry/default/example/error-display-demo")), - source: "", - files: ["registry/default/example/error-display-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "error-display-with-children": { - name: "error-display-with-children", - type: "components:example", - registryDependencies: ["error-display"], - component: React.lazy(() => import("@/registry/default/example/error-display-with-children")), - source: "", - files: ["registry/default/example/error-display-with-children.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "logs-bar-chart": { - name: "logs-bar-chart", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/logs-bar-chart")), - source: "", - files: ["registry/default/example/logs-bar-chart.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "empty-state-missing-route": { - name: "empty-state-missing-route", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/empty-state-missing-route")), - source: "", - files: ["registry/default/example/empty-state-missing-route.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "empty-state-zero-items-table": { - name: "empty-state-zero-items-table", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/empty-state-zero-items-table")), - source: "", - files: ["registry/default/example/empty-state-zero-items-table.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "empty-state-presentational-demo": { - name: "empty-state-presentational-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/empty-state-presentational-demo")), - source: "", - files: ["registry/default/example/empty-state-presentational-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "empty-state-presentational-buttons": { - name: "empty-state-presentational-buttons", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/empty-state-presentational-buttons")), - source: "", - files: ["registry/default/example/empty-state-presentational-buttons.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "empty-state-presentational-icon": { - name: "empty-state-presentational-icon", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/empty-state-presentational-icon")), - source: "", - files: ["registry/default/example/empty-state-presentational-icon.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "empty-state-initial-state-informational": { - name: "empty-state-initial-state-informational", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/empty-state-initial-state-informational")), - source: "", - files: ["registry/default/example/empty-state-initial-state-informational.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "data-grid-demo": { - name: "data-grid-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/data-grid-demo")), - source: "", - files: ["registry/default/example/data-grid-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "data-grid-empty-state": { - name: "data-grid-empty-state", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/data-grid-empty-state")), - source: "", - files: ["registry/default/example/data-grid-empty-state.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "data-table-demo": { - name: "data-table-demo", - type: "components:example", - registryDependencies: ["table"], - component: React.lazy(() => import("@/registry/default/example/data-table-demo")), - source: "", - files: ["registry/default/example/data-table-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "metric-card": { - name: "metric-card", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/metric-card")), - source: "", - files: ["registry/default/example/metric-card.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "metric-card-minimal": { - name: "metric-card-minimal", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/metric-card-minimal")), - source: "", - files: ["registry/default/example/metric-card-minimal.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "metric-card-minimal-horizontal": { - name: "metric-card-minimal-horizontal", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/metric-card-minimal-horizontal")), - source: "", - files: ["registry/default/example/metric-card-minimal-horizontal.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "metric-card-with-icon-link-tooltip": { - name: "metric-card-with-icon-link-tooltip", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/metric-card-with-icon-link-tooltip")), - source: "", - files: ["registry/default/example/metric-card-with-icon-link-tooltip.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mermaid-demo": { - name: "mermaid-demo", - type: "components:example", - registryDependencies: ["mermaid"], - component: React.lazy(() => import("@/registry/default/example/mermaid-demo")), - source: "", - files: ["registry/default/example/mermaid-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mermaid-flowchart": { - name: "mermaid-flowchart", - type: "components:example", - registryDependencies: ["mermaid"], - component: React.lazy(() => import("@/registry/default/example/mermaid-flowchart")), - source: "", - files: ["registry/default/example/mermaid-flowchart.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mermaid-er-diagram": { - name: "mermaid-er-diagram", - type: "components:example", - registryDependencies: ["mermaid"], - component: React.lazy(() => import("@/registry/default/example/mermaid-er-diagram")), - source: "", - files: ["registry/default/example/mermaid-er-diagram.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mermaid-sequence-async": { - name: "mermaid-sequence-async", - type: "components:example", - registryDependencies: ["mermaid"], - component: React.lazy(() => import("@/registry/default/example/mermaid-sequence-async")), - source: "", - files: ["registry/default/example/mermaid-sequence-async.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mermaid-sequence-sync": { - name: "mermaid-sequence-sync", - type: "components:example", - registryDependencies: ["mermaid"], - component: React.lazy(() => import("@/registry/default/example/mermaid-sequence-sync")), - source: "", - files: ["registry/default/example/mermaid-sequence-sync.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mermaid-oauth-flow": { - name: "mermaid-oauth-flow", - type: "components:example", - registryDependencies: ["mermaid"], - component: React.lazy(() => import("@/registry/default/example/mermaid-oauth-flow")), - source: "", - files: ["registry/default/example/mermaid-oauth-flow.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mermaid-flowchart-subgraph": { - name: "mermaid-flowchart-subgraph", - type: "components:example", - registryDependencies: ["mermaid"], - component: React.lazy(() => import("@/registry/default/example/mermaid-flowchart-subgraph")), - source: "", - files: ["registry/default/example/mermaid-flowchart-subgraph.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mermaid-sequence-api": { - name: "mermaid-sequence-api", - type: "components:example", - registryDependencies: ["mermaid"], - component: React.lazy(() => import("@/registry/default/example/mermaid-sequence-api")), - source: "", - files: ["registry/default/example/mermaid-sequence-api.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mermaid-er-simple": { - name: "mermaid-er-simple", - type: "components:example", - registryDependencies: ["mermaid"], - component: React.lazy(() => import("@/registry/default/example/mermaid-er-simple")), - source: "", - files: ["registry/default/example/mermaid-er-simple.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "mermaid-basic": { - name: "mermaid-basic", - type: "components:example", - registryDependencies: ["mermaid"], - component: React.lazy(() => import("@/registry/default/example/mermaid-basic")), - source: "", - files: ["registry/default/example/mermaid-basic.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-full-example": { - name: "markdown-full-example", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-full-example")), - source: "", - files: ["registry/default/example/markdown-full-example.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-customization": { - name: "markdown-customization", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-customization")), - source: "", - files: ["registry/default/example/markdown-customization.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-headings": { - name: "markdown-headings", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-headings")), - source: "", - files: ["registry/default/example/markdown-headings.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-paragraphs": { - name: "markdown-paragraphs", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-paragraphs")), - source: "", - files: ["registry/default/example/markdown-paragraphs.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-lists": { - name: "markdown-lists", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-lists")), - source: "", - files: ["registry/default/example/markdown-lists.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-links": { - name: "markdown-links", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-links")), - source: "", - files: ["registry/default/example/markdown-links.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-inline-code": { - name: "markdown-inline-code", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-inline-code")), - source: "", - files: ["registry/default/example/markdown-inline-code.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-blockquotes": { - name: "markdown-blockquotes", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-blockquotes")), - source: "", - files: ["registry/default/example/markdown-blockquotes.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-code-blocks": { - name: "markdown-code-blocks", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-code-blocks")), - source: "", - files: ["registry/default/example/markdown-code-blocks.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-tables": { - name: "markdown-tables", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-tables")), - source: "", - files: ["registry/default/example/markdown-tables.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-images": { - name: "markdown-images", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-images")), - source: "", - files: ["registry/default/example/markdown-images.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-horizontal-rules": { - name: "markdown-horizontal-rules", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-horizontal-rules")), - source: "", - files: ["registry/default/example/markdown-horizontal-rules.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-quote-component": { - name: "markdown-quote-component", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-quote-component")), - source: "", - files: ["registry/default/example/markdown-quote-component.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "markdown-avatar-component": { - name: "markdown-avatar-component", - type: "components:example", - registryDependencies: ["markdown"], - component: React.lazy(() => import("@/registry/default/example/markdown-avatar-component")), - source: "", - files: ["registry/default/example/markdown-avatar-component.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "status-code-demo": { - name: "status-code-demo", - type: "components:example", - registryDependencies: undefined, - component: React.lazy(() => import("@/registry/default/example/status-code-demo")), - source: "", - files: ["registry/default/example/status-code-demo.tsx"], - category: "undefined", - subcategory: "undefined", - chunks: [] - }, - "chart-bar-interactive": { - name: "chart-bar-interactive", - type: "components:block", - registryDependencies: ["card","chart"], - component: React.lazy(() => import("@/registry/default/block/chart-bar-interactive")), - source: "__registry__/default/block/chart-bar-interactive.tsx", - files: ["registry/default/block/chart-bar-interactive.tsx"], - category: "Charts", - subcategory: "Bar", - chunks: [] - }, - "chart-composed-demo": { - name: "chart-composed-demo", - type: "components:block", - registryDependencies: ["chart"], - component: React.lazy(() => import("@/registry/default/block/chart-composed-demo")), - source: "__registry__/default/block/chart-composed-demo.tsx", - files: ["registry/default/block/chart-composed-demo.tsx"], - category: "Charts", - subcategory: "Composed", - chunks: [] - }, - "chart-composed-basic": { - name: "chart-composed-basic", - type: "components:block", - registryDependencies: ["chart"], - component: React.lazy(() => import("@/registry/default/block/chart-composed-basic")), - source: "__registry__/default/block/chart-composed-basic.tsx", - files: ["registry/default/block/chart-composed-basic.tsx"], - category: "Charts", - subcategory: "Composed", - chunks: [] - }, - "chart-composed-states": { - name: "chart-composed-states", - type: "components:block", - registryDependencies: ["chart"], - component: React.lazy(() => import("@/registry/default/block/chart-composed-states")), - source: "__registry__/default/block/chart-composed-states.tsx", - files: ["registry/default/block/chart-composed-states.tsx"], - category: "Charts", - subcategory: "Composed", - chunks: [] - }, - "chart-composed-table": { - name: "chart-composed-table", - type: "components:block", - registryDependencies: ["chart"], - component: React.lazy(() => import("@/registry/default/block/chart-composed-table")), - source: "__registry__/default/block/chart-composed-table.tsx", - files: ["registry/default/block/chart-composed-table.tsx"], - category: "Charts", - subcategory: "Composed", - chunks: [] - }, - "chart-composed-metrics": { - name: "chart-composed-metrics", - type: "components:block", - registryDependencies: ["chart"], - component: React.lazy(() => import("@/registry/default/block/chart-composed-metrics")), - source: "__registry__/default/block/chart-composed-metrics.tsx", - files: ["registry/default/block/chart-composed-metrics.tsx"], - category: "Charts", - subcategory: "Composed", - chunks: [] - }, - "chart-composed-actions": { - name: "chart-composed-actions", - type: "components:block", - registryDependencies: ["chart"], - component: React.lazy(() => import("@/registry/default/block/chart-composed-actions")), - source: "__registry__/default/block/chart-composed-actions.tsx", - files: ["registry/default/block/chart-composed-actions.tsx"], - category: "Charts", - subcategory: "Composed", - chunks: [] - }, - "copy-button-verbs": { - name: "copy-button-verbs", - type: "components:example", - registryDependencies: ["button"], - component: React.lazy(() => import("@/registry/default/example/copy-button-verbs")), - source: "", - files: ["registry/default/example/copy-button-verbs.tsx"], - category: "Getting Started", - subcategory: "Copywriting", - chunks: [] - }, - "copy-form-labels": { - name: "copy-form-labels", - type: "components:example", - registryDependencies: ["form"], - component: React.lazy(() => import("@/registry/default/example/copy-form-labels")), - source: "", - files: ["registry/default/example/copy-form-labels.tsx"], - category: "Getting Started", - subcategory: "Copywriting", - chunks: [] - }, - "copy-error-messages": { - name: "copy-error-messages", - type: "components:example", - registryDependencies: ["form"], - component: React.lazy(() => import("@/registry/default/example/copy-error-messages")), - source: "", - files: ["registry/default/example/copy-error-messages.tsx"], - category: "Getting Started", - subcategory: "Copywriting", - chunks: [] - }, - "copy-success-messages": { - name: "copy-success-messages", - type: "components:example", - registryDependencies: ["form"], - component: React.lazy(() => import("@/registry/default/example/copy-success-messages")), - source: "", - files: ["registry/default/example/copy-success-messages.tsx"], - category: "Getting Started", - subcategory: "Copywriting", - chunks: [] - }, - "copy-tooltips": { - name: "copy-tooltips", - type: "components:example", - registryDependencies: ["tooltip"], - component: React.lazy(() => import("@/registry/default/example/copy-tooltips")), - source: "", - files: ["registry/default/example/copy-tooltips.tsx"], - category: "Getting Started", - subcategory: "Copywriting", - chunks: [] - }, - "copy-loading-states": { - name: "copy-loading-states", - type: "components:example", - registryDependencies: ["loading-state"], - component: React.lazy(() => import("@/registry/default/example/copy-loading-states")), - source: "", - files: ["registry/default/example/copy-loading-states.tsx"], - category: "Getting Started", - subcategory: "Copywriting", - chunks: [] - }, - "copy-empty-states": { - name: "copy-empty-states", - type: "components:example", - registryDependencies: ["empty-state"], - component: React.lazy(() => import("@/registry/default/example/copy-empty-states")), - source: "", - files: ["registry/default/example/copy-empty-states.tsx"], - category: "Getting Started", - subcategory: "Copywriting", - chunks: [] - }, - "copy-confirmations": { - name: "copy-confirmations", - type: "components:example", - registryDependencies: ["confirmation"], - component: React.lazy(() => import("@/registry/default/example/copy-confirmations")), - source: "", - files: ["registry/default/example/copy-confirmations.tsx"], - category: "Getting Started", - subcategory: "Copywriting", - chunks: [] - }, - }, -} diff --git a/apps/design-system/eslint.config.cjs b/apps/design-system/eslint.config.cjs index 4f1bc5e2275..75f8057119c 100644 --- a/apps/design-system/eslint.config.cjs +++ b/apps/design-system/eslint.config.cjs @@ -3,8 +3,9 @@ const supabaseConfig = require('eslint-config-supabase/next') module.exports = defineConfig([ supabaseConfig, + { ignores: ['__registry__'] }, { - files: ['registry/**/*.tsx', '__registry__/**/*.tsx', 'app/**/*.tsx'], + files: ['registry/**/*.tsx', 'app/**/*.tsx'], rules: { 'no-restricted-exports': 'off', }, diff --git a/apps/design-system/package.json b/apps/design-system/package.json index 8b8da975e36..2bc33720357 100644 --- a/apps/design-system/package.json +++ b/apps/design-system/package.json @@ -5,16 +5,17 @@ "type": "module", "scripts": { "preinstall": "npx only-allow pnpm", - "dev": "run-p --race dev:*", + "dev": "pnpm run generate:registry && run-p --race dev:*", "dev:next": "next dev --turbopack --port 3003", "dev:content": "contentlayer2 dev", - "build": "pnpm run content:build && pnpm run build:registry && next build --turbopack", - "build:registry": "tsx ./scripts/build-registry.mts && prettier --log-level silent --write \"registry/**/*.{ts,tsx,mdx}\" --cache", + "build": "pnpm run build:registry && pnpm run content:build && next build --turbopack", + "generate:registry": "tsx ./scripts/build-registry.mts", + "build:registry": "pnpm run generate:registry && prettier --log-level silent --write \"registry/**/*.{ts,tsx,mdx}\" --cache", "start": "next start", "lint": "eslint .", "content:build": "contentlayer2 build", - "clean": "rimraf .next .turbo tsconfig.tsbuildinfo", - "typecheck": "contentlayer2 build && tsc --noEmit -p tsconfig.json" + "clean": "rimraf .next .turbo tsconfig.tsbuildinfo __registry__", + "typecheck": "pnpm run generate:registry && contentlayer2 build && tsc --noEmit -p tsconfig.json" }, "dependencies": { "@hookform/resolvers": "^3.1.1", diff --git a/apps/design-system/scripts/build-registry.mts b/apps/design-system/scripts/build-registry.mts index f645b05842b..a95df6b5402 100644 --- a/apps/design-system/scripts/build-registry.mts +++ b/apps/design-system/scripts/build-registry.mts @@ -1,5 +1,5 @@ // @sts-nocheck -import { existsSync, promises as fs } from 'fs' +import { promises as fs } from 'fs' import { tmpdir } from 'os' import path from 'path' import { cwd } from 'process' @@ -191,13 +191,10 @@ export const Index: Record = { }) ) - // // Write the source file for blocks only. + // Write the source file for blocks only. sourceFilename = `__registry__/${style.name}/${type}/${item.name}.tsx` const sourcePath = path.join(process.cwd(), sourceFilename) - if (!existsSync(sourcePath)) { - await fs.mkdir(sourcePath, { recursive: true }) - } - + await fs.mkdir(path.dirname(sourcePath), { recursive: true }) rimraf.sync(sourcePath) await fs.writeFile(sourcePath, sourceFile.getText()) } @@ -273,8 +270,10 @@ export const Index: Record = { // await fs.writeFile(path.join(REGISTRY_PATH, 'index.json'), registryJson, 'utf8') // Write style index. - rimraf.sync(path.join(process.cwd(), '__registry__/index.tsx')) - await fs.writeFile(path.join(process.cwd(), '__registry__/index.tsx'), index) + const indexPath = path.join(process.cwd(), '__registry__/index.tsx') + await fs.mkdir(path.dirname(indexPath), { recursive: true }) + rimraf.sync(indexPath) + await fs.writeFile(indexPath, index) } // ----------------------------------------------------------------------------