From 5e92c160ddaf97b847b66a9af23b6993a37e1bd9 Mon Sep 17 00:00:00 2001 From: shadcn Date: Sat, 31 Jan 2026 21:18:49 +0400 Subject: [PATCH] feat: update new-york to radix-ui --- .../components/maxlength-selector.tsx | 6 +- .../playground/components/model-selector.tsx | 5 +- .../playground/components/preset-actions.tsx | 2 +- .../playground/components/preset-selector.tsx | 5 +- .../components/temperature-selector.tsx | 6 +- .../playground/components/top-p-selector.tsx | 6 +- .../components/data-table-view-options.tsx | 2 +- apps/v4/components/command-menu.tsx | 5 +- apps/v4/package.json | 30 - .../r/styles/new-york-v4/accordion.json | 5 +- .../r/styles/new-york-v4/alert-dialog.json | 5 +- .../r/styles/new-york-v4/aspect-ratio.json | 5 +- .../public/r/styles/new-york-v4/avatar.json | 5 +- .../v4/public/r/styles/new-york-v4/badge.json | 5 +- .../r/styles/new-york-v4/breadcrumb.json | 5 +- .../r/styles/new-york-v4/button-group.json | 2 +- .../public/r/styles/new-york-v4/button.json | 5 +- .../public/r/styles/new-york-v4/checkbox.json | 5 +- .../r/styles/new-york-v4/collapsible.json | 5 +- .../r/styles/new-york-v4/context-menu.json | 5 +- .../public/r/styles/new-york-v4/dialog.json | 5 +- .../r/styles/new-york-v4/direction.json | 3 - .../public/r/styles/new-york-v4/drawer.json | 3 +- .../new-york-v4/dropdown-menu-checkboxes.json | 2 +- .../r/styles/new-york-v4/dropdown-menu.json | 5 +- apps/v4/public/r/styles/new-york-v4/form.json | 4 +- .../r/styles/new-york-v4/hover-card.json | 5 +- .../v4/public/r/styles/new-york-v4/index.json | 3 +- apps/v4/public/r/styles/new-york-v4/item.json | 2 +- .../v4/public/r/styles/new-york-v4/label.json | 5 +- .../public/r/styles/new-york-v4/menubar.json | 5 +- .../r/styles/new-york-v4/navigation-menu.json | 5 +- .../public/r/styles/new-york-v4/popover.json | 5 +- .../public/r/styles/new-york-v4/progress.json | 5 +- .../r/styles/new-york-v4/radio-group.json | 5 +- .../public/r/styles/new-york-v4/registry.json | 102 +-- .../r/styles/new-york-v4/scroll-area.json | 5 +- .../public/r/styles/new-york-v4/select.json | 5 +- .../r/styles/new-york-v4/separator.json | 5 +- .../v4/public/r/styles/new-york-v4/sheet.json | 5 +- .../public/r/styles/new-york-v4/sidebar.json | 3 +- .../public/r/styles/new-york-v4/slider.json | 5 +- .../v4/public/r/styles/new-york-v4/style.json | 3 +- .../public/r/styles/new-york-v4/switch.json | 5 +- apps/v4/public/r/styles/new-york-v4/tabs.json | 5 +- .../r/styles/new-york-v4/toggle-group.json | 5 +- .../public/r/styles/new-york-v4/toggle.json | 5 +- .../public/r/styles/new-york-v4/tooltip.json | 5 +- .../examples/dropdown-menu-checkboxes.tsx | 6 +- apps/v4/registry/new-york-v4/registry.ts | 2 +- apps/v4/registry/new-york-v4/ui/_registry.ts | 47 +- apps/v4/registry/new-york-v4/ui/accordion.tsx | 2 +- .../registry/new-york-v4/ui/alert-dialog.tsx | 2 +- .../registry/new-york-v4/ui/aspect-ratio.tsx | 2 +- apps/v4/registry/new-york-v4/ui/avatar.tsx | 2 +- apps/v4/registry/new-york-v4/ui/badge.tsx | 4 +- .../v4/registry/new-york-v4/ui/breadcrumb.tsx | 4 +- .../registry/new-york-v4/ui/button-group.tsx | 4 +- apps/v4/registry/new-york-v4/ui/button.tsx | 4 +- apps/v4/registry/new-york-v4/ui/checkbox.tsx | 2 +- .../registry/new-york-v4/ui/collapsible.tsx | 2 +- .../registry/new-york-v4/ui/context-menu.tsx | 2 +- apps/v4/registry/new-york-v4/ui/dialog.tsx | 2 +- .../registry/new-york-v4/ui/dropdown-menu.tsx | 2 +- apps/v4/registry/new-york-v4/ui/form.tsx | 8 +- .../v4/registry/new-york-v4/ui/hover-card.tsx | 2 +- apps/v4/registry/new-york-v4/ui/item.tsx | 4 +- apps/v4/registry/new-york-v4/ui/label.tsx | 2 +- apps/v4/registry/new-york-v4/ui/menubar.tsx | 2 +- .../new-york-v4/ui/navigation-menu.tsx | 2 +- apps/v4/registry/new-york-v4/ui/popover.tsx | 2 +- apps/v4/registry/new-york-v4/ui/progress.tsx | 2 +- .../registry/new-york-v4/ui/radio-group.tsx | 2 +- .../registry/new-york-v4/ui/scroll-area.tsx | 2 +- apps/v4/registry/new-york-v4/ui/select.tsx | 2 +- apps/v4/registry/new-york-v4/ui/separator.tsx | 2 +- apps/v4/registry/new-york-v4/ui/sheet.tsx | 2 +- apps/v4/registry/new-york-v4/ui/sidebar.tsx | 12 +- apps/v4/registry/new-york-v4/ui/slider.tsx | 2 +- apps/v4/registry/new-york-v4/ui/switch.tsx | 2 +- apps/v4/registry/new-york-v4/ui/tabs.tsx | 2 +- .../registry/new-york-v4/ui/toggle-group.tsx | 2 +- apps/v4/registry/new-york-v4/ui/toggle.tsx | 2 +- apps/v4/registry/new-york-v4/ui/tooltip.tsx | 2 +- pnpm-lock.yaml | 733 ------------------ templates/monorepo-next/apps/web/app/page.tsx | 5 +- .../monorepo-next/apps/web/components.json | 2 +- templates/monorepo-next/apps/web/package.json | 16 +- templates/monorepo-next/package.json | 6 +- .../packages/eslint-config/package.json | 22 +- .../monorepo-next/packages/ui/components.json | 2 +- .../monorepo-next/packages/ui/package.json | 28 +- .../packages/ui/src/components/button.tsx | 39 +- 93 files changed, 182 insertions(+), 1157 deletions(-) diff --git a/apps/v4/app/(app)/examples/playground/components/maxlength-selector.tsx b/apps/v4/app/(app)/examples/playground/components/maxlength-selector.tsx index 3a19f81384..44008c9e2d 100644 --- a/apps/v4/app/(app)/examples/playground/components/maxlength-selector.tsx +++ b/apps/v4/app/(app)/examples/playground/components/maxlength-selector.tsx @@ -1,7 +1,7 @@ "use client" import * as React from "react" -import { type SliderProps } from "@radix-ui/react-slider" +import type { Slider as SliderPrimitive } from "radix-ui" import { HoverCard, @@ -12,7 +12,9 @@ import { Label } from "@/registry/new-york-v4/ui/label" import { Slider } from "@/registry/new-york-v4/ui/slider" interface MaxLengthSelectorProps { - defaultValue: SliderProps["defaultValue"] + defaultValue: React.ComponentProps< + typeof SliderPrimitive.Root + >["defaultValue"] } export function MaxLengthSelector({ defaultValue }: MaxLengthSelectorProps) { diff --git a/apps/v4/app/(app)/examples/playground/components/model-selector.tsx b/apps/v4/app/(app)/examples/playground/components/model-selector.tsx index 5e7dfcb8b4..908dba2dcb 100644 --- a/apps/v4/app/(app)/examples/playground/components/model-selector.tsx +++ b/apps/v4/app/(app)/examples/playground/components/model-selector.tsx @@ -1,8 +1,8 @@ "use client" import * as React from "react" -import { type PopoverProps } from "@radix-ui/react-popover" import { Check, ChevronsUpDown } from "lucide-react" +import type { Popover as PopoverPrimitive } from "radix-ui" import { cn } from "@/lib/utils" import { useMutationObserver } from "@/hooks/use-mutation-observer" @@ -29,7 +29,8 @@ import { import { type Model, type ModelType } from "../data/models" -interface ModelSelectorProps extends PopoverProps { +interface ModelSelectorProps + extends React.ComponentProps { types: readonly ModelType[] models: Model[] } diff --git a/apps/v4/app/(app)/examples/playground/components/preset-actions.tsx b/apps/v4/app/(app)/examples/playground/components/preset-actions.tsx index 3f0e80fc28..a1178653c5 100644 --- a/apps/v4/app/(app)/examples/playground/components/preset-actions.tsx +++ b/apps/v4/app/(app)/examples/playground/components/preset-actions.tsx @@ -1,7 +1,6 @@ "use client" import * as React from "react" -import { Dialog } from "@radix-ui/react-dialog" import { MoreHorizontal } from "lucide-react" import { toast } from "sonner" @@ -16,6 +15,7 @@ import { } from "@/registry/new-york-v4/ui/alert-dialog" import { Button } from "@/registry/new-york-v4/ui/button" import { + Dialog, DialogClose, DialogContent, DialogDescription, diff --git a/apps/v4/app/(app)/examples/playground/components/preset-selector.tsx b/apps/v4/app/(app)/examples/playground/components/preset-selector.tsx index f764fcb280..aa9944535b 100644 --- a/apps/v4/app/(app)/examples/playground/components/preset-selector.tsx +++ b/apps/v4/app/(app)/examples/playground/components/preset-selector.tsx @@ -1,8 +1,8 @@ "use client" import * as React from "react" -import { type PopoverProps } from "@radix-ui/react-popover" import { Check, ChevronsUpDown } from "lucide-react" +import type { Popover as PopoverPrimitive } from "radix-ui" import { cn } from "@/lib/utils" import { Button } from "@/registry/new-york-v4/ui/button" @@ -23,7 +23,8 @@ import { import { type Preset } from "../data/presets" -interface PresetSelectorProps extends PopoverProps { +interface PresetSelectorProps + extends React.ComponentProps { presets: Preset[] } diff --git a/apps/v4/app/(app)/examples/playground/components/temperature-selector.tsx b/apps/v4/app/(app)/examples/playground/components/temperature-selector.tsx index 7dbbdbb253..cbf308bd64 100644 --- a/apps/v4/app/(app)/examples/playground/components/temperature-selector.tsx +++ b/apps/v4/app/(app)/examples/playground/components/temperature-selector.tsx @@ -1,7 +1,7 @@ "use client" import * as React from "react" -import { type SliderProps } from "@radix-ui/react-slider" +import type { Slider as SliderPrimitive } from "radix-ui" import { HoverCard, @@ -12,7 +12,9 @@ import { Label } from "@/registry/new-york-v4/ui/label" import { Slider } from "@/registry/new-york-v4/ui/slider" interface TemperatureSelectorProps { - defaultValue: SliderProps["defaultValue"] + defaultValue: React.ComponentProps< + typeof SliderPrimitive.Root + >["defaultValue"] } export function TemperatureSelector({ diff --git a/apps/v4/app/(app)/examples/playground/components/top-p-selector.tsx b/apps/v4/app/(app)/examples/playground/components/top-p-selector.tsx index a33bd2c2b1..1f02acd323 100644 --- a/apps/v4/app/(app)/examples/playground/components/top-p-selector.tsx +++ b/apps/v4/app/(app)/examples/playground/components/top-p-selector.tsx @@ -1,7 +1,7 @@ "use client" import * as React from "react" -import { type SliderProps } from "@radix-ui/react-slider" +import type { Slider as SliderPrimitive } from "radix-ui" import { HoverCard, @@ -12,7 +12,9 @@ import { Label } from "@/registry/new-york-v4/ui/label" import { Slider } from "@/registry/new-york-v4/ui/slider" interface TopPSelectorProps { - defaultValue: SliderProps["defaultValue"] + defaultValue: React.ComponentProps< + typeof SliderPrimitive.Root + >["defaultValue"] } export function TopPSelector({ defaultValue }: TopPSelectorProps) { diff --git a/apps/v4/app/(app)/examples/tasks/components/data-table-view-options.tsx b/apps/v4/app/(app)/examples/tasks/components/data-table-view-options.tsx index 55b7953c9f..bd55e484cc 100644 --- a/apps/v4/app/(app)/examples/tasks/components/data-table-view-options.tsx +++ b/apps/v4/app/(app)/examples/tasks/components/data-table-view-options.tsx @@ -1,6 +1,5 @@ "use client" -import { DropdownMenuTrigger } from "@radix-ui/react-dropdown-menu" import { type Table } from "@tanstack/react-table" import { Settings2 } from "lucide-react" @@ -11,6 +10,7 @@ import { DropdownMenuContent, DropdownMenuLabel, DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/registry/new-york-v4/ui/dropdown-menu" export function DataTableViewOptions({ diff --git a/apps/v4/components/command-menu.tsx b/apps/v4/components/command-menu.tsx index 1c228a8821..622d219d32 100644 --- a/apps/v4/components/command-menu.tsx +++ b/apps/v4/components/command-menu.tsx @@ -2,11 +2,10 @@ import * as React from "react" import { usePathname, useRouter } from "next/navigation" -import * as DialogPrimitive from "@radix-ui/react-dialog" -import { type DialogProps } from "@radix-ui/react-dialog" import { IconArrowRight } from "@tabler/icons-react" import { useDocsSearch } from "fumadocs-core/search/client" import { CornerDownLeftIcon, SquareDashedIcon } from "lucide-react" +import { Dialog as DialogPrimitive } from "radix-ui" import { type Color, type ColorPalette } from "@/lib/colors" import { trackEvent } from "@/lib/events" @@ -44,7 +43,7 @@ export function CommandMenu({ blocks, navItems, ...props -}: DialogProps & { +}: React.ComponentProps & { tree: typeof source.pageTree colors: ColorPalette[] blocks?: { name: string; description: string; categories: string[] }[] diff --git a/apps/v4/package.json b/apps/v4/package.json index 425c0adcd6..4cba6f6d93 100644 --- a/apps/v4/package.json +++ b/apps/v4/package.json @@ -32,36 +32,6 @@ "@hugeicons/core-free-icons": "^1.2.1", "@hugeicons/react": "^1.1.1", "@phosphor-icons/react": "^2.1.10", - "@radix-ui/react-accessible-icon": "^1.1.1", - "@radix-ui/react-accordion": "^1.2.12", - "@radix-ui/react-alert-dialog": "^1.1.5", - "@radix-ui/react-aspect-ratio": "^1.1.1", - "@radix-ui/react-avatar": "^1.1.2", - "@radix-ui/react-checkbox": "^1.1.3", - "@radix-ui/react-collapsible": "^1.1.2", - "@radix-ui/react-context-menu": "^2.2.5", - "@radix-ui/react-dialog": "^1.1.5", - "@radix-ui/react-dropdown-menu": "^2.1.5", - "@radix-ui/react-hover-card": "^1.1.5", - "@radix-ui/react-icons": "^1.3.2", - "@radix-ui/react-label": "^2.1.1", - "@radix-ui/react-menubar": "^1.1.5", - "@radix-ui/react-navigation-menu": "^1.2.14", - "@radix-ui/react-popover": "^1.1.5", - "@radix-ui/react-portal": "^1.1.3", - "@radix-ui/react-progress": "^1.1.1", - "@radix-ui/react-radio-group": "^1.2.2", - "@radix-ui/react-scroll-area": "^1.2.3", - "@radix-ui/react-select": "^2.1.5", - "@radix-ui/react-separator": "^1.1.1", - "@radix-ui/react-slider": "^1.2.2", - "@radix-ui/react-slot": "^1.1.1", - "@radix-ui/react-switch": "^1.1.2", - "@radix-ui/react-tabs": "^1.1.2", - "@radix-ui/react-toast": "^1.2.5", - "@radix-ui/react-toggle": "^1.1.10", - "@radix-ui/react-toggle-group": "^1.1.1", - "@radix-ui/react-tooltip": "^1.2.8", "@remixicon/react": "^4.7.0", "@tabler/icons-react": "^3.31.0", "@tailwindcss/postcss": "^4.1.11", diff --git a/apps/v4/public/r/styles/new-york-v4/accordion.json b/apps/v4/public/r/styles/new-york-v4/accordion.json index dda7510e7b..f525eb6009 100644 --- a/apps/v4/public/r/styles/new-york-v4/accordion.json +++ b/apps/v4/public/r/styles/new-york-v4/accordion.json @@ -1,13 +1,10 @@ { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "accordion", - "dependencies": [ - "@radix-ui/react-accordion" - ], "files": [ { "path": "registry/new-york-v4/ui/accordion.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\"\nimport { ChevronDownIcon } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Accordion({\n ...props\n}: React.ComponentProps) {\n return \n}\n\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps) {\n return (\n \n svg]:rotate-180\",\n className\n )}\n {...props}\n >\n {children}\n \n \n \n )\n}\n\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps) {\n return (\n \n
{children}
\n \n )\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent }\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ChevronDownIcon } from \"lucide-react\"\nimport { Accordion as AccordionPrimitive } from \"radix-ui\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Accordion({\n ...props\n}: React.ComponentProps) {\n return \n}\n\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps) {\n return (\n \n svg]:rotate-180\",\n className\n )}\n {...props}\n >\n {children}\n \n \n \n )\n}\n\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps) {\n return (\n \n
{children}
\n \n )\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent }\n", "type": "registry:ui" } ], diff --git a/apps/v4/public/r/styles/new-york-v4/alert-dialog.json b/apps/v4/public/r/styles/new-york-v4/alert-dialog.json index 50356ee1ce..4727c98e06 100644 --- a/apps/v4/public/r/styles/new-york-v4/alert-dialog.json +++ b/apps/v4/public/r/styles/new-york-v4/alert-dialog.json @@ -1,16 +1,13 @@ { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "alert-dialog", - "dependencies": [ - "@radix-ui/react-alert-dialog" - ], "registryDependencies": [ "button" ], "files": [ { "path": "registry/new-york-v4/ui/alert-dialog.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport * as AlertDialogPrimitive from \"@radix-ui/react-alert-dialog\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/new-york-v4/ui/button\"\n\nfunction AlertDialog({\n ...props\n}: React.ComponentProps) {\n return \n}\n\nfunction AlertDialogTrigger({\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AlertDialogPortal({\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AlertDialogOverlay({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AlertDialogContent({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps & {\n size?: \"default\" | \"sm\"\n}) {\n return (\n \n \n \n \n )\n}\n\nfunction AlertDialogHeader({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n \n )\n}\n\nfunction AlertDialogFooter({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n \n )\n}\n\nfunction AlertDialogTitle({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AlertDialogDescription({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AlertDialogMedia({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n \n )\n}\n\nfunction AlertDialogAction({\n className,\n variant = \"default\",\n size = \"default\",\n ...props\n}: React.ComponentProps &\n Pick, \"variant\" | \"size\">) {\n return (\n \n )\n}\n\nfunction AlertDialogCancel({\n className,\n variant = \"outline\",\n size = \"default\",\n ...props\n}: React.ComponentProps &\n Pick, \"variant\" | \"size\">) {\n return (\n \n )\n}\n\nexport {\n AlertDialog,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogMedia,\n AlertDialogOverlay,\n AlertDialogPortal,\n AlertDialogTitle,\n AlertDialogTrigger,\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { AlertDialog as AlertDialogPrimitive } from \"radix-ui\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/new-york-v4/ui/button\"\n\nfunction AlertDialog({\n ...props\n}: React.ComponentProps) {\n return \n}\n\nfunction AlertDialogTrigger({\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AlertDialogPortal({\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AlertDialogOverlay({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AlertDialogContent({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps & {\n size?: \"default\" | \"sm\"\n}) {\n return (\n \n \n \n \n )\n}\n\nfunction AlertDialogHeader({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n \n )\n}\n\nfunction AlertDialogFooter({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n \n )\n}\n\nfunction AlertDialogTitle({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AlertDialogDescription({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AlertDialogMedia({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n \n )\n}\n\nfunction AlertDialogAction({\n className,\n variant = \"default\",\n size = \"default\",\n ...props\n}: React.ComponentProps &\n Pick, \"variant\" | \"size\">) {\n return (\n \n )\n}\n\nfunction AlertDialogCancel({\n className,\n variant = \"outline\",\n size = \"default\",\n ...props\n}: React.ComponentProps &\n Pick, \"variant\" | \"size\">) {\n return (\n \n )\n}\n\nexport {\n AlertDialog,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogMedia,\n AlertDialogOverlay,\n AlertDialogPortal,\n AlertDialogTitle,\n AlertDialogTrigger,\n}\n", "type": "registry:ui" } ], diff --git a/apps/v4/public/r/styles/new-york-v4/aspect-ratio.json b/apps/v4/public/r/styles/new-york-v4/aspect-ratio.json index 129abf09b0..46916ebccd 100644 --- a/apps/v4/public/r/styles/new-york-v4/aspect-ratio.json +++ b/apps/v4/public/r/styles/new-york-v4/aspect-ratio.json @@ -1,13 +1,10 @@ { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "aspect-ratio", - "dependencies": [ - "@radix-ui/react-aspect-ratio" - ], "files": [ { "path": "registry/new-york-v4/ui/aspect-ratio.tsx", - "content": "\"use client\"\n\nimport * as AspectRatioPrimitive from \"@radix-ui/react-aspect-ratio\"\n\nfunction AspectRatio({\n ...props\n}: React.ComponentProps) {\n return \n}\n\nexport { AspectRatio }\n", + "content": "\"use client\"\n\nimport { AspectRatio as AspectRatioPrimitive } from \"radix-ui\"\n\nfunction AspectRatio({\n ...props\n}: React.ComponentProps) {\n return \n}\n\nexport { AspectRatio }\n", "type": "registry:ui" } ], diff --git a/apps/v4/public/r/styles/new-york-v4/avatar.json b/apps/v4/public/r/styles/new-york-v4/avatar.json index 4f824161e8..a47f06e7d7 100644 --- a/apps/v4/public/r/styles/new-york-v4/avatar.json +++ b/apps/v4/public/r/styles/new-york-v4/avatar.json @@ -1,13 +1,10 @@ { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "avatar", - "dependencies": [ - "@radix-ui/react-avatar" - ], "files": [ { "path": "registry/new-york-v4/ui/avatar.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport * as AvatarPrimitive from \"@radix-ui/react-avatar\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Avatar({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps & {\n size?: \"default\" | \"sm\" | \"lg\"\n}) {\n return (\n \n )\n}\n\nfunction AvatarImage({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AvatarFallback({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AvatarBadge({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n svg]:hidden\",\n \"group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2\",\n \"group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n \n )\n}\n\nfunction AvatarGroupCount({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Avatar,\n AvatarImage,\n AvatarFallback,\n AvatarBadge,\n AvatarGroup,\n AvatarGroupCount,\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Avatar as AvatarPrimitive } from \"radix-ui\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Avatar({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps & {\n size?: \"default\" | \"sm\" | \"lg\"\n}) {\n return (\n \n )\n}\n\nfunction AvatarImage({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AvatarFallback({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n )\n}\n\nfunction AvatarBadge({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n svg]:hidden\",\n \"group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2\",\n \"group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n \n )\n}\n\nfunction AvatarGroupCount({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Avatar,\n AvatarImage,\n AvatarFallback,\n AvatarBadge,\n AvatarGroup,\n AvatarGroupCount,\n}\n", "type": "registry:ui" } ], diff --git a/apps/v4/public/r/styles/new-york-v4/badge.json b/apps/v4/public/r/styles/new-york-v4/badge.json index aaf2da0043..459e8d5ecd 100644 --- a/apps/v4/public/r/styles/new-york-v4/badge.json +++ b/apps/v4/public/r/styles/new-york-v4/badge.json @@ -1,13 +1,10 @@ { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "badge", - "dependencies": [ - "@radix-ui/react-slot" - ], "files": [ { "path": "registry/new-york-v4/ui/badge.tsx", - "content": "import * as React from \"react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n \"inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground [a&]:hover:bg-primary/90\",\n secondary:\n \"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90\",\n destructive:\n \"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n outline:\n \"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n ghost: \"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 [a&]:hover:underline\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"span\"> &\n VariantProps & { asChild?: boolean }) {\n const Comp = asChild ? Slot : \"span\"\n\n return (\n \n )\n}\n\nexport { Badge, badgeVariants }\n", + "content": "import * as React from \"react\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport { Slot } from \"radix-ui\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n \"inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground [a&]:hover:bg-primary/90\",\n secondary:\n \"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90\",\n destructive:\n \"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n outline:\n \"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n ghost: \"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 [a&]:hover:underline\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"span\"> &\n VariantProps & { asChild?: boolean }) {\n const Comp = asChild ? Slot.Root : \"span\"\n\n return (\n \n )\n}\n\nexport { Badge, badgeVariants }\n", "type": "registry:ui" } ], diff --git a/apps/v4/public/r/styles/new-york-v4/breadcrumb.json b/apps/v4/public/r/styles/new-york-v4/breadcrumb.json index d7b8d55bcf..2d8fe0c7e4 100644 --- a/apps/v4/public/r/styles/new-york-v4/breadcrumb.json +++ b/apps/v4/public/r/styles/new-york-v4/breadcrumb.json @@ -1,13 +1,10 @@ { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "breadcrumb", - "dependencies": [ - "@radix-ui/react-slot" - ], "files": [ { "path": "registry/new-york-v4/ui/breadcrumb.tsx", - "content": "import * as React from \"react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { ChevronRight, MoreHorizontal } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Breadcrumb({ ...props }: React.ComponentProps<\"nav\">) {\n return