From c759f460d5543f8209bb799e2e53ea13dad5143b Mon Sep 17 00:00:00 2001 From: shadcn Date: Mon, 9 Feb 2026 17:13:49 +0400 Subject: [PATCH] feat: add docs --- apps/v4/public/r/styles/base-lyra/registry.json | 1 + apps/v4/public/r/styles/base-lyra/tooltip.json | 1 + apps/v4/public/r/styles/base-maia/registry.json | 1 + apps/v4/public/r/styles/base-maia/tooltip.json | 1 + apps/v4/public/r/styles/base-mira/registry.json | 1 + apps/v4/public/r/styles/base-mira/tooltip.json | 1 + apps/v4/public/r/styles/base-nova/registry.json | 1 + apps/v4/public/r/styles/base-nova/tooltip.json | 1 + apps/v4/public/r/styles/base-vega/registry.json | 1 + apps/v4/public/r/styles/base-vega/tooltip.json | 1 + .../r/styles/new-york-v4/calendar-hijri.json | 2 +- .../v4/public/r/styles/new-york-v4/registry.json | 1 + apps/v4/public/r/styles/new-york-v4/tooltip.json | 1 + apps/v4/public/r/styles/radix-lyra/registry.json | 1 + apps/v4/public/r/styles/radix-lyra/tooltip.json | 1 + apps/v4/public/r/styles/radix-maia/registry.json | 1 + apps/v4/public/r/styles/radix-maia/tooltip.json | 1 + apps/v4/public/r/styles/radix-mira/registry.json | 1 + apps/v4/public/r/styles/radix-mira/tooltip.json | 1 + apps/v4/public/r/styles/radix-nova/registry.json | 1 + apps/v4/public/r/styles/radix-nova/tooltip.json | 1 + apps/v4/public/r/styles/radix-vega/registry.json | 1 + apps/v4/public/r/styles/radix-vega/tooltip.json | 1 + apps/v4/registry/bases/base/ui/_registry.ts | 16 ++++++++++++++++ apps/v4/registry/bases/radix/ui/_registry.ts | 16 ++++++++++++++++ apps/v4/registry/new-york-v4/ui/_registry.ts | 16 ++++++++++++++++ 26 files changed, 71 insertions(+), 1 deletion(-) diff --git a/apps/v4/public/r/styles/base-lyra/registry.json b/apps/v4/public/r/styles/base-lyra/registry.json index b01130d0b0..a6a4600a3b 100644 --- a/apps/v4/public/r/styles/base-lyra/registry.json +++ b/apps/v4/public/r/styles/base-lyra/registry.json @@ -612,6 +612,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/base-lyra/tooltip.json b/apps/v4/public/r/styles/base-lyra/tooltip.json index 735ef3a0c2..39c416aca3 100644 --- a/apps/v4/public/r/styles/base-lyra/tooltip.json +++ b/apps/v4/public/r/styles/base-lyra/tooltip.json @@ -8,5 +8,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/public/r/styles/base-maia/registry.json b/apps/v4/public/r/styles/base-maia/registry.json index aa32fd78e6..a30a4c62c9 100644 --- a/apps/v4/public/r/styles/base-maia/registry.json +++ b/apps/v4/public/r/styles/base-maia/registry.json @@ -612,6 +612,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/base-maia/tooltip.json b/apps/v4/public/r/styles/base-maia/tooltip.json index c71656f99a..22dbbbd797 100644 --- a/apps/v4/public/r/styles/base-maia/tooltip.json +++ b/apps/v4/public/r/styles/base-maia/tooltip.json @@ -8,5 +8,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/public/r/styles/base-mira/registry.json b/apps/v4/public/r/styles/base-mira/registry.json index adae4ea7cc..73bd1dfd9a 100644 --- a/apps/v4/public/r/styles/base-mira/registry.json +++ b/apps/v4/public/r/styles/base-mira/registry.json @@ -612,6 +612,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/base-mira/tooltip.json b/apps/v4/public/r/styles/base-mira/tooltip.json index 30764d8bdb..91bbe7fb8a 100644 --- a/apps/v4/public/r/styles/base-mira/tooltip.json +++ b/apps/v4/public/r/styles/base-mira/tooltip.json @@ -8,5 +8,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/public/r/styles/base-nova/registry.json b/apps/v4/public/r/styles/base-nova/registry.json index b326863537..0d9267e463 100644 --- a/apps/v4/public/r/styles/base-nova/registry.json +++ b/apps/v4/public/r/styles/base-nova/registry.json @@ -612,6 +612,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/base-nova/tooltip.json b/apps/v4/public/r/styles/base-nova/tooltip.json index 5c87742bc7..881c2462b0 100644 --- a/apps/v4/public/r/styles/base-nova/tooltip.json +++ b/apps/v4/public/r/styles/base-nova/tooltip.json @@ -8,5 +8,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/public/r/styles/base-vega/registry.json b/apps/v4/public/r/styles/base-vega/registry.json index 9d3b4a2778..4742e5e8ed 100644 --- a/apps/v4/public/r/styles/base-vega/registry.json +++ b/apps/v4/public/r/styles/base-vega/registry.json @@ -612,6 +612,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/base-vega/tooltip.json b/apps/v4/public/r/styles/base-vega/tooltip.json index 9174280536..2dbd3b5aa4 100644 --- a/apps/v4/public/r/styles/base-vega/tooltip.json +++ b/apps/v4/public/r/styles/base-vega/tooltip.json @@ -8,5 +8,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/public/r/styles/new-york-v4/calendar-hijri.json b/apps/v4/public/r/styles/new-york-v4/calendar-hijri.json index 24d1e11e32..2e715a1db1 100644 --- a/apps/v4/public/r/styles/new-york-v4/calendar-hijri.json +++ b/apps/v4/public/r/styles/new-york-v4/calendar-hijri.json @@ -8,7 +8,7 @@ "files": [ { "path": "registry/new-york-v4/examples/calendar-hijri.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n ChevronDownIcon,\n ChevronLeftIcon,\n ChevronRightIcon,\n} from \"lucide-react\"\nimport { getDefaultClassNames, type DayButton } from \"react-day-picker\"\nimport { DayPicker } from \"react-day-picker/persian\"\nimport { Vazirmatn } from \"next/font/google\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button, buttonVariants } from \"@/registry/new-york-v4/ui/button\"\n\nconst vazirmatn = Vazirmatn({ subsets: [\"arabic\"] })\n\nexport default function CalendarHijri() {\n const [date, setDate] = React.useState(\n new Date(2025, 5, 12)\n )\n\n return (\n
\n \n
\n )\n}\n\n// ----------------------------------------------------------------------------\n// The code below is for this example only.\n// For your own calendar, you would edit the calendar.tsx component directly.\n// ----------------------------------------------------------------------------\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = \"label\",\n buttonVariant = \"ghost\",\n formatters,\n components,\n ...props\n}: React.ComponentProps & {\n buttonVariant?: React.ComponentProps[\"variant\"]\n}) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className\n )}\n captionLayout={captionLayout}\n formatters={{\n formatMonthDropdown: (date) =>\n date.toLocaleString(\"default\", { month: \"short\" }),\n ...formatters,\n }}\n classNames={{\n root: cn(\"w-fit\", defaultClassNames.root),\n months: cn(\n \"flex gap-4 flex-col md:flex-row relative\",\n defaultClassNames.months\n ),\n month: cn(\"flex flex-col w-full gap-4\", defaultClassNames.month),\n nav: cn(\n \"flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between\",\n defaultClassNames.nav\n ),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none\",\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none\",\n defaultClassNames.button_next\n ),\n month_caption: cn(\n \"flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)\",\n defaultClassNames.month_caption\n ),\n dropdowns: cn(\n \"w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5\",\n defaultClassNames.dropdowns\n ),\n dropdown_root: cn(\n \"relative has-focus:border-ring border border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] rounded-md\",\n defaultClassNames.dropdown_root\n ),\n dropdown: cn(\"absolute inset-0 opacity-0\", defaultClassNames.dropdown),\n caption_label: cn(\n \"select-none font-medium\",\n captionLayout === \"label\"\n ? \"text-sm\"\n : \"rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5\",\n defaultClassNames.caption_label\n ),\n table: \"w-full border-collapse\",\n weekdays: cn(\"flex\", defaultClassNames.weekdays),\n weekday: cn(\n \"text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none\",\n defaultClassNames.weekday\n ),\n week: cn(\"flex w-full mt-2\", defaultClassNames.week),\n week_number_header: cn(\n \"select-none w-(--cell-size)\",\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n \"text-[0.8rem] select-none text-muted-foreground\",\n defaultClassNames.week_number\n ),\n day: cn(\n \"relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none\",\n defaultClassNames.day\n ),\n range_start: cn(\n \"rounded-l-md bg-accent\",\n defaultClassNames.range_start\n ),\n range_middle: cn(\"rounded-none\", defaultClassNames.range_middle),\n range_end: cn(\"rounded-r-md bg-accent\", defaultClassNames.range_end),\n today: cn(\n \"bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none\",\n defaultClassNames.today\n ),\n outside: cn(\n \"text-muted-foreground aria-selected:text-muted-foreground\",\n defaultClassNames.outside\n ),\n disabled: cn(\n \"text-muted-foreground opacity-50\",\n defaultClassNames.disabled\n ),\n hidden: cn(\"invisible\", defaultClassNames.hidden),\n ...classNames,\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return (\n \n )\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === \"left\") {\n return (\n \n )\n }\n\n if (orientation === \"right\") {\n return (\n \n )\n }\n\n return (\n \n )\n },\n DayButton: CalendarDayButton,\n WeekNumber: ({ children, ...props }) => {\n return (\n \n
\n {children}\n
\n \n )\n },\n ...components,\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({\n className,\n day,\n modifiers,\n ...props\n}: React.ComponentProps) {\n const defaultClassNames = getDefaultClassNames()\n\n const ref = React.useRef(null)\n React.useEffect(() => {\n if (modifiers.focused) ref.current?.focus()\n }, [modifiers.focused])\n\n return (\n span]:text-xs [&>span]:opacity-70\",\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Vazirmatn } from \"next/font/google\"\nimport {\n ChevronDownIcon,\n ChevronLeftIcon,\n ChevronRightIcon,\n} from \"lucide-react\"\nimport { getDefaultClassNames, type DayButton } from \"react-day-picker\"\nimport { DayPicker } from \"react-day-picker/persian\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button, buttonVariants } from \"@/registry/new-york-v4/ui/button\"\n\nconst vazirmatn = Vazirmatn({ subsets: [\"arabic\"] })\n\nexport default function CalendarHijri() {\n const [date, setDate] = React.useState(\n new Date(2025, 5, 12)\n )\n\n return (\n
\n \n
\n )\n}\n\n// ----------------------------------------------------------------------------\n// The code below is for this example only.\n// For your own calendar, you would edit the calendar.tsx component directly.\n// ----------------------------------------------------------------------------\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = \"label\",\n buttonVariant = \"ghost\",\n formatters,\n components,\n ...props\n}: React.ComponentProps & {\n buttonVariant?: React.ComponentProps[\"variant\"]\n}) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className\n )}\n captionLayout={captionLayout}\n formatters={{\n formatMonthDropdown: (date) =>\n date.toLocaleString(\"default\", { month: \"short\" }),\n ...formatters,\n }}\n classNames={{\n root: cn(\"w-fit\", defaultClassNames.root),\n months: cn(\n \"flex gap-4 flex-col md:flex-row relative\",\n defaultClassNames.months\n ),\n month: cn(\"flex flex-col w-full gap-4\", defaultClassNames.month),\n nav: cn(\n \"flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between\",\n defaultClassNames.nav\n ),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none\",\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none\",\n defaultClassNames.button_next\n ),\n month_caption: cn(\n \"flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)\",\n defaultClassNames.month_caption\n ),\n dropdowns: cn(\n \"w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5\",\n defaultClassNames.dropdowns\n ),\n dropdown_root: cn(\n \"relative has-focus:border-ring border border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] rounded-md\",\n defaultClassNames.dropdown_root\n ),\n dropdown: cn(\"absolute inset-0 opacity-0\", defaultClassNames.dropdown),\n caption_label: cn(\n \"select-none font-medium\",\n captionLayout === \"label\"\n ? \"text-sm\"\n : \"rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5\",\n defaultClassNames.caption_label\n ),\n table: \"w-full border-collapse\",\n weekdays: cn(\"flex\", defaultClassNames.weekdays),\n weekday: cn(\n \"text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none\",\n defaultClassNames.weekday\n ),\n week: cn(\"flex w-full mt-2\", defaultClassNames.week),\n week_number_header: cn(\n \"select-none w-(--cell-size)\",\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n \"text-[0.8rem] select-none text-muted-foreground\",\n defaultClassNames.week_number\n ),\n day: cn(\n \"relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none\",\n defaultClassNames.day\n ),\n range_start: cn(\n \"rounded-l-md bg-accent\",\n defaultClassNames.range_start\n ),\n range_middle: cn(\"rounded-none\", defaultClassNames.range_middle),\n range_end: cn(\"rounded-r-md bg-accent\", defaultClassNames.range_end),\n today: cn(\n \"bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none\",\n defaultClassNames.today\n ),\n outside: cn(\n \"text-muted-foreground aria-selected:text-muted-foreground\",\n defaultClassNames.outside\n ),\n disabled: cn(\n \"text-muted-foreground opacity-50\",\n defaultClassNames.disabled\n ),\n hidden: cn(\"invisible\", defaultClassNames.hidden),\n ...classNames,\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return (\n \n )\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === \"left\") {\n return (\n \n )\n }\n\n if (orientation === \"right\") {\n return (\n \n )\n }\n\n return (\n \n )\n },\n DayButton: CalendarDayButton,\n WeekNumber: ({ children, ...props }) => {\n return (\n \n
\n {children}\n
\n \n )\n },\n ...components,\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({\n className,\n day,\n modifiers,\n ...props\n}: React.ComponentProps) {\n const defaultClassNames = getDefaultClassNames()\n\n const ref = React.useRef(null)\n React.useEffect(() => {\n if (modifiers.focused) ref.current?.focus()\n }, [modifiers.focused])\n\n return (\n span]:text-xs [&>span]:opacity-70\",\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n )\n}\n", "type": "registry:example" } ], diff --git a/apps/v4/public/r/styles/new-york-v4/registry.json b/apps/v4/public/r/styles/new-york-v4/registry.json index feab7b2964..7b72e315e2 100644 --- a/apps/v4/public/r/styles/new-york-v4/registry.json +++ b/apps/v4/public/r/styles/new-york-v4/registry.json @@ -802,6 +802,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/new-york-v4/tooltip.json b/apps/v4/public/r/styles/new-york-v4/tooltip.json index 351bf480c7..f2322c68a3 100644 --- a/apps/v4/public/r/styles/new-york-v4/tooltip.json +++ b/apps/v4/public/r/styles/new-york-v4/tooltip.json @@ -11,5 +11,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/public/r/styles/radix-lyra/registry.json b/apps/v4/public/r/styles/radix-lyra/registry.json index ff24124f8e..438525bc62 100644 --- a/apps/v4/public/r/styles/radix-lyra/registry.json +++ b/apps/v4/public/r/styles/radix-lyra/registry.json @@ -606,6 +606,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/radix-lyra/tooltip.json b/apps/v4/public/r/styles/radix-lyra/tooltip.json index b6f2c1f2a1..33d95463cd 100644 --- a/apps/v4/public/r/styles/radix-lyra/tooltip.json +++ b/apps/v4/public/r/styles/radix-lyra/tooltip.json @@ -8,5 +8,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/public/r/styles/radix-maia/registry.json b/apps/v4/public/r/styles/radix-maia/registry.json index f77ae0a9d3..0f52517357 100644 --- a/apps/v4/public/r/styles/radix-maia/registry.json +++ b/apps/v4/public/r/styles/radix-maia/registry.json @@ -606,6 +606,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/radix-maia/tooltip.json b/apps/v4/public/r/styles/radix-maia/tooltip.json index 74d5d018fa..7e70e5b9a1 100644 --- a/apps/v4/public/r/styles/radix-maia/tooltip.json +++ b/apps/v4/public/r/styles/radix-maia/tooltip.json @@ -8,5 +8,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/public/r/styles/radix-mira/registry.json b/apps/v4/public/r/styles/radix-mira/registry.json index 68fd55ec4e..8a84dd76d1 100644 --- a/apps/v4/public/r/styles/radix-mira/registry.json +++ b/apps/v4/public/r/styles/radix-mira/registry.json @@ -606,6 +606,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/radix-mira/tooltip.json b/apps/v4/public/r/styles/radix-mira/tooltip.json index 4e08bc5ba5..25f1b45fa9 100644 --- a/apps/v4/public/r/styles/radix-mira/tooltip.json +++ b/apps/v4/public/r/styles/radix-mira/tooltip.json @@ -8,5 +8,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/public/r/styles/radix-nova/registry.json b/apps/v4/public/r/styles/radix-nova/registry.json index a284a04ef5..c4b4f9cad3 100644 --- a/apps/v4/public/r/styles/radix-nova/registry.json +++ b/apps/v4/public/r/styles/radix-nova/registry.json @@ -606,6 +606,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/radix-nova/tooltip.json b/apps/v4/public/r/styles/radix-nova/tooltip.json index 8a615dd976..fa69b11234 100644 --- a/apps/v4/public/r/styles/radix-nova/tooltip.json +++ b/apps/v4/public/r/styles/radix-nova/tooltip.json @@ -8,5 +8,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/public/r/styles/radix-vega/registry.json b/apps/v4/public/r/styles/radix-vega/registry.json index f75677506c..9b3c525a56 100644 --- a/apps/v4/public/r/styles/radix-vega/registry.json +++ b/apps/v4/public/r/styles/radix-vega/registry.json @@ -606,6 +606,7 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" }, { diff --git a/apps/v4/public/r/styles/radix-vega/tooltip.json b/apps/v4/public/r/styles/radix-vega/tooltip.json index c2963b82ee..34f1bce9d7 100644 --- a/apps/v4/public/r/styles/radix-vega/tooltip.json +++ b/apps/v4/public/r/styles/radix-vega/tooltip.json @@ -8,5 +8,6 @@ "type": "registry:ui" } ], + "docs": "The `tooltip` component has been added. Remember to wrap your app with the `TooltipProvider` component.\n\n```tsx title=\"app/layout.tsx\"\nimport { TooltipProvider } from \"@/components/ui/tooltip\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n \n \n {children}\n \n \n )\n}\n```\n", "type": "registry:ui" } \ No newline at end of file diff --git a/apps/v4/registry/bases/base/ui/_registry.ts b/apps/v4/registry/bases/base/ui/_registry.ts index 6eb0490e34..f6993983fc 100644 --- a/apps/v4/registry/bases/base/ui/_registry.ts +++ b/apps/v4/registry/bases/base/ui/_registry.ts @@ -551,6 +551,22 @@ export const ui: Registry["items"] = [ { name: "tooltip", type: "registry:ui", + docs: `The \`tooltip\` component has been added. Remember to wrap your app with the \`TooltipProvider\` component. + +\`\`\`tsx title="app/layout.tsx" +import { TooltipProvider } from "@/components/ui/tooltip" + +export default function RootLayout({ children }: { children: React.ReactNode }) { + return ( + + + {children} + + + ) +} +\`\`\` +`, files: [ { path: "ui/tooltip.tsx", diff --git a/apps/v4/registry/bases/radix/ui/_registry.ts b/apps/v4/registry/bases/radix/ui/_registry.ts index be3262af54..ecb6e76978 100644 --- a/apps/v4/registry/bases/radix/ui/_registry.ts +++ b/apps/v4/registry/bases/radix/ui/_registry.ts @@ -549,6 +549,22 @@ export const ui: Registry["items"] = [ { name: "tooltip", type: "registry:ui", + docs: `The \`tooltip\` component has been added. Remember to wrap your app with the \`TooltipProvider\` component. + +\`\`\`tsx title="app/layout.tsx" +import { TooltipProvider } from "@/components/ui/tooltip" + +export default function RootLayout({ children }: { children: React.ReactNode }) { + return ( + + + {children} + + + ) +} +\`\`\` +`, files: [ { path: "ui/tooltip.tsx", diff --git a/apps/v4/registry/new-york-v4/ui/_registry.ts b/apps/v4/registry/new-york-v4/ui/_registry.ts index a1b214f334..986ccdc04e 100644 --- a/apps/v4/registry/new-york-v4/ui/_registry.ts +++ b/apps/v4/registry/new-york-v4/ui/_registry.ts @@ -649,6 +649,22 @@ export const ui: Registry["items"] = [ name: "tooltip", type: "registry:ui", dependencies: ["radix-ui"], + docs: `The \`tooltip\` component has been added. Remember to wrap your app with the \`TooltipProvider\` component. + +\`\`\`tsx title="app/layout.tsx" +import { TooltipProvider } from "@/components/ui/tooltip" + +export default function RootLayout({ children }: { children: React.ReactNode }) { + return ( + + + {children} + + + ) +} +\`\`\` +`, files: [ { path: "ui/tooltip.tsx",