From da5f4ecb0de7404af7e5ff7a566f3909bd96fd1c Mon Sep 17 00:00:00 2001 From: prodkt Date: Mon, 16 Dec 2024 18:55:24 -0700 Subject: [PATCH 01/14] fix latest shadcn css bugs on blocks - consider pr --- apps/prepare/src/components/BaseHead.astro | 67 +- .../about-bryan}/bryan-funk-resume-promo.webp | Bin .../about-bryan/bryan-funk-section.tsx | 113 - .../src/components/about-bryan/circuit.tsx | 2003 +++++++++++++++++ .../components/about-bryan/dot-pattern.tsx | 4 +- .../src/components/about-bryan/grid-bg-01.tsx | 1119 +++++++++ .../src/components/about-bryan/index.tsx | 1 - .../components/about-bryan/resume-section.jsx | 44 +- .../src/components/about-bryan/tst.tsx | 0 apps/prepare/src/layouts/default.astro | 4 +- apps/prepare/src/pages/index.astro | 14 +- apps/prepare/tailwind.config.cjs | 1 + .../default/blocks/effect-card-01/page.tsx | 4 +- .../blocks/effect-jump-to-section-01/page.tsx | 11 + .../default/blocks/flow-card-01/page.tsx | 2 +- apps/www/__registry__/index.tsx | 130 ++ .../new-york/blocks/effect-card-01/page.tsx | 4 +- .../blocks/effect-jump-to-section-01/page.tsx | 11 + .../new-york/blocks/flow-card-01/page.tsx | 2 +- .../app/(app)/blocks/[...categories]/page.tsx | 2 +- apps/www/app/(app)/blocks/page.tsx | 2 +- .../view/styles/[style]/[name]/page.tsx | 7 +- apps/www/app/layout.tsx | 4 +- apps/www/components/block-viewer.tsx | 35 +- apps/www/components/site-header.tsx | 4 +- .../r/styles/default/effect-card-01.json | 4 +- .../default/effect-jump-to-section-01.json | 26 + .../default/effect-tracer-card-demo.json | 2 +- .../public/r/styles/default/flow-card-01.json | 2 +- apps/www/public/r/styles/default/shine.json | 12 + .../r/styles/new-york/effect-card-01.json | 4 +- .../new-york/effect-jump-to-section-01.json | 26 + .../new-york/effect-tracer-card-demo.json | 2 +- .../r/styles/new-york/flow-card-01.json | 2 +- apps/www/public/r/styles/new-york/shine.json | 12 + .../components/effect-card-01.tsx | 8 +- .../default/blocks/effect-card-01/page.tsx | 4 +- .../components/index.tsx | 5 + .../blocks/effect-jump-to-section-01/page.tsx | 11 + .../default/blocks/flow-card-01/page.tsx | 2 +- apps/www/registry/default/effects/shine.tsx | 67 + .../bryan-funk-portrait-xl.avif | Bin 0 -> 106023 bytes .../jump-to-section/bryan-funk-section.tsx | 118 + .../prodkt/jump-to-section/grid-bg-02.tsx | 39 + .../prodkt/jump-to-section/grid-bg-03.tsx | 33 + .../default/prodkt/jump-to-section/index.tsx | 1 + .../prodkt/jump-to-section}/marquee.tsx | 20 +- .../prodkt/jump-to-section}/skill-marquee.tsx | 22 +- .../default/prodkt/prodkt-mode-toggle.tsx | 58 +- .../components/effect-card-01.tsx | 8 +- .../new-york/blocks/effect-card-01/page.tsx | 4 +- .../components/index.tsx | 5 + .../blocks/effect-jump-to-section-01/page.tsx | 11 + .../new-york/blocks/flow-card-01/page.tsx | 2 +- apps/www/registry/new-york/effects/shine.tsx | 67 + .../examples/effect-tracer-card-demo.tsx | 1 + .../bryan-funk-portrait-xl.avif | Bin 0 -> 106023 bytes .../jump-to-section/bryan-funk-section.tsx | 118 + .../prodkt/jump-to-section/grid-bg-02.tsx | 39 + .../prodkt/jump-to-section/grid-bg-03.tsx | 33 + .../new-york/prodkt/jump-to-section/index.tsx | 1 + .../prodkt/jump-to-section/marquee.tsx | 65 + .../prodkt/jump-to-section/skill-marquee.tsx | 105 + .../new-york/prodkt/prodkt-mode-toggle.tsx | 47 +- apps/www/registry/registry-blocks.ts | 19 + apps/www/registry/registry-categories.ts | 5 + apps/www/registry/registry-effects.ts | 10 + apps/www/registry/registry-prodkt.ts | 26 + apps/www/styles/sparkstack_globals.css | 159 ++ apps/www/tailwind.config.cjs | 1 + tailwind.config.ts | 6 +- 71 files changed, 4552 insertions(+), 248 deletions(-) rename apps/prepare/src/{assets/avatars => components/about-bryan}/bryan-funk-resume-promo.webp (100%) delete mode 100644 apps/prepare/src/components/about-bryan/bryan-funk-section.tsx create mode 100644 apps/prepare/src/components/about-bryan/circuit.tsx create mode 100644 apps/prepare/src/components/about-bryan/grid-bg-01.tsx delete mode 100644 apps/prepare/src/components/about-bryan/index.tsx create mode 100644 apps/prepare/src/components/about-bryan/tst.tsx create mode 100644 apps/www/__registry__/default/blocks/effect-jump-to-section-01/page.tsx create mode 100644 apps/www/__registry__/new-york/blocks/effect-jump-to-section-01/page.tsx create mode 100644 apps/www/public/r/styles/default/effect-jump-to-section-01.json create mode 100644 apps/www/public/r/styles/default/shine.json create mode 100644 apps/www/public/r/styles/new-york/effect-jump-to-section-01.json create mode 100644 apps/www/public/r/styles/new-york/shine.json create mode 100644 apps/www/registry/default/blocks/effect-jump-to-section-01/components/index.tsx create mode 100644 apps/www/registry/default/blocks/effect-jump-to-section-01/page.tsx create mode 100644 apps/www/registry/default/effects/shine.tsx create mode 100644 apps/www/registry/default/prodkt/jump-to-section/bryan-funk-portrait-xl.avif create mode 100644 apps/www/registry/default/prodkt/jump-to-section/bryan-funk-section.tsx create mode 100644 apps/www/registry/default/prodkt/jump-to-section/grid-bg-02.tsx create mode 100644 apps/www/registry/default/prodkt/jump-to-section/grid-bg-03.tsx create mode 100644 apps/www/registry/default/prodkt/jump-to-section/index.tsx rename apps/{prepare/src/components/about-bryan => www/registry/default/prodkt/jump-to-section}/marquee.tsx (85%) rename apps/{prepare/src/components/about-bryan => www/registry/default/prodkt/jump-to-section}/skill-marquee.tsx (89%) create mode 100644 apps/www/registry/new-york/blocks/effect-jump-to-section-01/components/index.tsx create mode 100644 apps/www/registry/new-york/blocks/effect-jump-to-section-01/page.tsx create mode 100644 apps/www/registry/new-york/effects/shine.tsx create mode 100644 apps/www/registry/new-york/prodkt/jump-to-section/bryan-funk-portrait-xl.avif create mode 100644 apps/www/registry/new-york/prodkt/jump-to-section/bryan-funk-section.tsx create mode 100644 apps/www/registry/new-york/prodkt/jump-to-section/grid-bg-02.tsx create mode 100644 apps/www/registry/new-york/prodkt/jump-to-section/grid-bg-03.tsx create mode 100644 apps/www/registry/new-york/prodkt/jump-to-section/index.tsx create mode 100644 apps/www/registry/new-york/prodkt/jump-to-section/marquee.tsx create mode 100644 apps/www/registry/new-york/prodkt/jump-to-section/skill-marquee.tsx diff --git a/apps/prepare/src/components/BaseHead.astro b/apps/prepare/src/components/BaseHead.astro index e9fc4a53..8a2e578f 100644 --- a/apps/prepare/src/components/BaseHead.astro +++ b/apps/prepare/src/components/BaseHead.astro @@ -53,21 +53,64 @@ const { title, description, image = "/blog-placeholder-1.jpg" } = Astro.props; diff --git a/apps/prepare/src/pages/index.astro b/apps/prepare/src/pages/index.astro index 72fdf795..ceb1d082 100644 --- a/apps/prepare/src/pages/index.astro +++ b/apps/prepare/src/pages/index.astro @@ -2,9 +2,10 @@ import DefaultLayout from "../layouts/default.astro"; // import ProdktGrid from "@components/prodkt-grid" import {BryanFunkSection} from "@components/about-bryan" -import {ThemeSwitcher} from "@/registry/default/prodkt/theme-switcher" +import {ThemeSwitcher} from "@/registry/new-york/prodkt/theme-switcher" import {ProdktModeToggle} from "@/registry/default/prodkt/prodkt-mode-toggle" -import ResumeSection from "@components/about-bryan/resume-section" +// import ResumeDownload from "@/registry/new-york/prodkt/resume-download" +import { Page } from "@/registry/new-york/blocks/layouts/web-app-01/page" // import TracerCard from "@/registry/new-york/prodkt/effect-card/tracer-card"; --- @@ -13,7 +14,9 @@ import ResumeSection from "@components/about-bryan/resume-section" - + + + diff --git a/apps/www/__registry__/default/blocks/layouts/web-app-01/page.tsx b/apps/www/__registry__/default/blocks/layouts/web-app-01/page.tsx index 75833ea6..1eff2f6f 100644 --- a/apps/www/__registry__/default/blocks/layouts/web-app-01/page.tsx +++ b/apps/www/__registry__/default/blocks/layouts/web-app-01/page.tsx @@ -1,11 +1,14 @@ -import WebApp01 from "./components/web-app-01" +import WebApp01 from "./components" +import "../../../../../styles/sparkstack_globals.css" export default function Page() { return ( -
-
- -
+
+
) } diff --git a/apps/www/__registry__/icons.tsx b/apps/www/__registry__/icons.tsx index 2d88c69b..4d035f79 100644 --- a/apps/www/__registry__/icons.tsx +++ b/apps/www/__registry__/icons.tsx @@ -4,271 +4,460 @@ import * as React from "react" export const Icons = { - "AlertCircle": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.AlertCircle - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ExclamationTriangleIcon - }))), -}, "ArrowLeft": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.ArrowLeft - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ArrowLeftIcon - }))), -}, "ArrowRight": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.ArrowRight - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ArrowRightIcon - }))), -}, "ArrowUpDown": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.ArrowUpDown - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.CaretSortIcon - }))), -}, "BellRing": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.BellRing - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.BellIcon - }))), -}, "Bold": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Bold - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.FontBoldIcon - }))), -}, "Calculator": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Calculator - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ComponentPlaceholderIcon - }))), -}, "Calendar": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Calendar - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.CalendarIcon - }))), -}, "Check": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Check - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.CheckIcon - }))), -}, "ChevronDown": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.ChevronDown - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ChevronDownIcon - }))), -}, "ChevronLeft": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.ChevronLeft - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ChevronLeftIcon - }))), -}, "ChevronRight": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.ChevronRight - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ChevronRightIcon - }))), -}, "ChevronUp": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.ChevronUp - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ChevronUpIcon - }))), -}, "ChevronsUpDown": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.ChevronsUpDown - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.CaretSortIcon - }))), -}, "Circle": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Circle - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.DotFilledIcon - }))), -}, "Copy": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Copy - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.CopyIcon - }))), -}, "CreditCard": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.CreditCard - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ComponentPlaceholderIcon - }))), -}, "Download": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Download - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.DownloadIcon - }))), -}, "GripVertical": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.GripVertical - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.DragHandleDots2Icon - }))), -}, "Italic": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Italic - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.FontItalicIcon - }))), -}, "Loader2": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Loader2 - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ReloadIcon - }))), -}, "Mail": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Mail - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.EnvelopeClosedIcon - }))), -}, "MailOpen": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.MailOpen - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.EnvelopeOpenIcon - }))), -}, "Minus": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Minus - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.MinusIcon - }))), -}, "Moon": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Moon - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.MoonIcon - }))), -}, "MoreHorizontal": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.MoreHorizontal - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.DotsHorizontalIcon - }))), -}, "PanelLeft": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.PanelLeft - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.ViewVerticalIcon - }))), -}, "Plus": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Plus - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.PlusIcon - }))), -}, "Search": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Search - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.MagnifyingGlassIcon - }))), -}, "Send": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Send - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.PaperPlaneIcon - }))), -}, "Settings": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Settings - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.GearIcon - }))), -}, "Slash": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Slash - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.SlashIcon - }))), -}, "Smile": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Smile - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.FaceIcon - }))), -}, "Sun": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Sun - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.SunIcon - }))), -}, "Terminal": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Terminal - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.RocketIcon - }))), -}, "Underline": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.Underline - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.UnderlineIcon - }))), -}, "User": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.User - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.PersonIcon - }))), -}, "X": { - lucide: React.lazy(() => import("lucide-react").then(mod => ({ - default: mod.X - }))), - radix: React.lazy(() => import("@radix-ui/react-icons").then(mod => ({ - default: mod.Cross2Icon - }))), -}, + AlertCircle: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.AlertCircle, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ExclamationTriangleIcon, + })) + ), + }, + ArrowLeft: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.ArrowLeft, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ArrowLeftIcon, + })) + ), + }, + ArrowRight: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.ArrowRight, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ArrowRightIcon, + })) + ), + }, + ArrowUpDown: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.ArrowUpDown, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.CaretSortIcon, + })) + ), + }, + BellRing: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.BellRing, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.BellIcon, + })) + ), + }, + Bold: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Bold, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.FontBoldIcon, + })) + ), + }, + Calculator: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Calculator, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ComponentPlaceholderIcon, + })) + ), + }, + Calendar: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Calendar, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.CalendarIcon, + })) + ), + }, + Check: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Check, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.CheckIcon, + })) + ), + }, + ChevronDown: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.ChevronDown, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ChevronDownIcon, + })) + ), + }, + ChevronLeft: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.ChevronLeft, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ChevronLeftIcon, + })) + ), + }, + ChevronRight: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.ChevronRight, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ChevronRightIcon, + })) + ), + }, + ChevronUp: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.ChevronUp, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ChevronUpIcon, + })) + ), + }, + ChevronsUpDown: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.ChevronsUpDown, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.CaretSortIcon, + })) + ), + }, + Circle: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Circle, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.DotFilledIcon, + })) + ), + }, + Copy: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Copy, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.CopyIcon, + })) + ), + }, + CreditCard: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.CreditCard, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ComponentPlaceholderIcon, + })) + ), + }, + Download: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Download, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.DownloadIcon, + })) + ), + }, + GripVertical: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.GripVertical, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.DragHandleDots2Icon, + })) + ), + }, + Italic: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Italic, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.FontItalicIcon, + })) + ), + }, + Loader2: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Loader2, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ReloadIcon, + })) + ), + }, + Mail: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Mail, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.EnvelopeClosedIcon, + })) + ), + }, + MailOpen: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.MailOpen, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.EnvelopeOpenIcon, + })) + ), + }, + Minus: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Minus, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.MinusIcon, + })) + ), + }, + Moon: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Moon, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.MoonIcon, + })) + ), + }, + MoreHorizontal: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.MoreHorizontal, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.DotsHorizontalIcon, + })) + ), + }, + PanelLeft: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.PanelLeft, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.ViewVerticalIcon, + })) + ), + }, + Plus: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Plus, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.PlusIcon, + })) + ), + }, + Search: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Search, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.MagnifyingGlassIcon, + })) + ), + }, + Send: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Send, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.PaperPlaneIcon, + })) + ), + }, + Settings: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Settings, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.GearIcon, + })) + ), + }, + Slash: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Slash, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.SlashIcon, + })) + ), + }, + Smile: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Smile, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.FaceIcon, + })) + ), + }, + Sun: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Sun, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.SunIcon, + })) + ), + }, + Terminal: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Terminal, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.RocketIcon, + })) + ), + }, + Underline: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.Underline, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.UnderlineIcon, + })) + ), + }, + User: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.User, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.PersonIcon, + })) + ), + }, + X: { + lucide: React.lazy(() => + import("lucide-react").then((mod) => ({ + default: mod.X, + })) + ), + radix: React.lazy(() => + import("@radix-ui/react-icons").then((mod) => ({ + default: mod.Cross2Icon, + })) + ), + }, } diff --git a/apps/www/__registry__/index.tsx b/apps/www/__registry__/index.tsx index b7ba7bd1..ace80fe3 100644 --- a/apps/www/__registry__/index.tsx +++ b/apps/www/__registry__/index.tsx @@ -722,13 +722,13 @@ export const Index: Record = { name: "web-app-01", description: "A web app layout with a navigation bar and a sidebar.", type: "registry:block", - registryDependencies: ["button","card","input","label","badge"], + registryDependencies: ["button","card","input","label","badge","DecorativeBg8","ProdktModeToggle","ThemeSwitcher","Footer","SheetMenu","Sidebar","Container","SocialMedia"], files: [{ path: "registry/new-york/blocks/layouts/web-app-01/page.tsx", type: "registry:page", target: "app/content/page.tsx" },{ - path: "registry/new-york/blocks/layouts/web-app-01/components/web-app-01.tsx", + path: "registry/new-york/blocks/layouts/web-app-01/components/index.tsx", type: "registry:component", target: "" }], @@ -2379,6 +2379,36 @@ export const Index: Record = { source: "__registry__/new-york/charts/chart-tooltip-advanced.tsx", meta: undefined, }, + "buttonUtils": { + name: "buttonUtils", + description: "", + type: "registry:lib", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/lib/buttonUtils.ts", + type: "registry:lib", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/lib/buttonUtils.ts")), + source: "", + meta: undefined, + }, + "button-variants": { + name: "button-variants", + description: "", + type: "registry:lib", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/lib/button-variants.ts", + type: "registry:lib", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/lib/button-variants.ts")), + source: "", + meta: undefined, + }, "utils": { name: "utils", description: "", @@ -2428,6 +2458,36 @@ export const Index: Record = { source: "", meta: undefined, }, + "use-store": { + name: "use-store", + description: "", + type: "registry:hook", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/hooks/use-store.ts", + type: "registry:hook", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/hooks/use-store.ts")), + source: "", + meta: undefined, + }, + "use-sidebar-toggle": { + name: "use-sidebar-toggle", + description: "", + type: "registry:hook", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/hooks/use-sidebar-toggle.ts", + type: "registry:hook", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/hooks/use-sidebar-toggle.ts")), + source: "", + meta: undefined, + }, "use-mobile": { name: "use-mobile", description: "", @@ -2518,8 +2578,8 @@ export const Index: Record = { source: "", meta: undefined, }, - "web-app-01": { - name: "web-app-01", + "web-app-01-layout": { + name: "web-app-01-layout", description: "", type: "registry:prodkt", registryDependencies: undefined, @@ -7723,13 +7783,13 @@ export const Index: Record = { name: "web-app-01", description: "A web app layout with a navigation bar and a sidebar.", type: "registry:block", - registryDependencies: ["button","card","input","label","badge"], + registryDependencies: ["button","card","input","label","badge","DecorativeBg8","ProdktModeToggle","ThemeSwitcher","Footer","SheetMenu","Sidebar","Container","SocialMedia"], files: [{ path: "registry/default/blocks/layouts/web-app-01/page.tsx", type: "registry:page", target: "app/content/page.tsx" },{ - path: "registry/default/blocks/layouts/web-app-01/components/web-app-01.tsx", + path: "registry/default/blocks/layouts/web-app-01/components/index.tsx", type: "registry:component", target: "" }], @@ -9380,6 +9440,36 @@ export const Index: Record = { source: "__registry__/default/charts/chart-tooltip-advanced.tsx", meta: undefined, }, + "buttonUtils": { + name: "buttonUtils", + description: "", + type: "registry:lib", + registryDependencies: undefined, + files: [{ + path: "registry/default/lib/buttonUtils.ts", + type: "registry:lib", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/default/lib/buttonUtils.ts")), + source: "", + meta: undefined, + }, + "button-variants": { + name: "button-variants", + description: "", + type: "registry:lib", + registryDependencies: undefined, + files: [{ + path: "registry/default/lib/button-variants.ts", + type: "registry:lib", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/default/lib/button-variants.ts")), + source: "", + meta: undefined, + }, "utils": { name: "utils", description: "", @@ -9429,6 +9519,36 @@ export const Index: Record = { source: "", meta: undefined, }, + "use-store": { + name: "use-store", + description: "", + type: "registry:hook", + registryDependencies: undefined, + files: [{ + path: "registry/default/hooks/use-store.ts", + type: "registry:hook", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/default/hooks/use-store.ts")), + source: "", + meta: undefined, + }, + "use-sidebar-toggle": { + name: "use-sidebar-toggle", + description: "", + type: "registry:hook", + registryDependencies: undefined, + files: [{ + path: "registry/default/hooks/use-sidebar-toggle.ts", + type: "registry:hook", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/default/hooks/use-sidebar-toggle.ts")), + source: "", + meta: undefined, + }, "use-mobile": { name: "use-mobile", description: "", @@ -9519,8 +9639,8 @@ export const Index: Record = { source: "", meta: undefined, }, - "web-app-01": { - name: "web-app-01", + "web-app-01-layout": { + name: "web-app-01-layout", description: "", type: "registry:prodkt", registryDependencies: undefined, diff --git a/apps/www/__registry__/new-york/blocks/layouts/web-app-01/page.tsx b/apps/www/__registry__/new-york/blocks/layouts/web-app-01/page.tsx index 75833ea6..1eff2f6f 100644 --- a/apps/www/__registry__/new-york/blocks/layouts/web-app-01/page.tsx +++ b/apps/www/__registry__/new-york/blocks/layouts/web-app-01/page.tsx @@ -1,11 +1,14 @@ -import WebApp01 from "./components/web-app-01" +import WebApp01 from "./components" +import "../../../../../styles/sparkstack_globals.css" export default function Page() { return ( -
-
- -
+
+
) } diff --git a/apps/www/app/(view)/view/styles/[style]/[name]/page.tsx b/apps/www/app/(view)/view/styles/[style]/[name]/page.tsx index fce74a34..d479acfa 100644 --- a/apps/www/app/(view)/view/styles/[style]/[name]/page.tsx +++ b/apps/www/app/(view)/view/styles/[style]/[name]/page.tsx @@ -95,7 +95,7 @@ export default async function BlockPage({ <>
diff --git a/apps/www/app/layout.tsx b/apps/www/app/layout.tsx index 8dc51e60..09d779f0 100644 --- a/apps/www/app/layout.tsx +++ b/apps/www/app/layout.tsx @@ -1,9 +1,14 @@ import "@/styles/sparkstack_globals.css" import type { Metadata, Viewport } from "next" -import { themeScript } from "@/lib/theme-script" -import { META_PRODKT_THEMES, META_THEME_COLORS, META_THEMES, siteConfig } from "@/config/site" +import { + META_PRODKT_THEMES, + META_THEMES, + META_THEME_COLORS, + siteConfig, +} from "@/config/site" import { fontMono, fontSans } from "@/lib/fonts" +import { themeScript } from "@/lib/theme-script" import { cn } from "@/lib/utils" import { Analytics } from "@/components/analytics" import { ThemeProvider } from "@/components/providers" @@ -71,12 +76,10 @@ export const metadata: Metadata = { manifest: `${siteConfig.url}/site.webmanifest`, } - export const viewport: Viewport = { themeColor: META_THEME_COLORS.dark, } - interface RootLayoutProps { children: React.ReactNode } @@ -87,7 +90,7 @@ export default function RootLayout({ children }: RootLayoutProps) { + @@ -48,4 +49,3 @@ const { title, description, image = "/blog-placeholder-1.jpg" } = Astro.props; - diff --git a/apps/prepare/src/components/about-bryan/tst.tsx b/apps/prepare/src/components/about-bryan/tst.tsx index e69de29b..42f48d79 100644 --- a/apps/prepare/src/components/about-bryan/tst.tsx +++ b/apps/prepare/src/components/about-bryan/tst.tsx @@ -0,0 +1,1980 @@ + + +export default function Tst() { + return ( +
+
+
+
+
+
+ +
+
+ Jack +
+

+ @jack +

+
+
+
+ I've never seen anything like this before. It's amazing. I love it. +
+
+
+
+ +
+
+ Jill +
+

+ @jill +

+
+
+
+ I don't know what to say. I'm speechless. This is amazing. +
+
+
+
+ +
+
+ John +
+

+ @john +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jack +
+

+ @jack +

+
+
+
+ I've never seen anything like this before. It's amazing. I love it. +
+
+
+
+ +
+
+ Jill +
+

+ @jill +

+
+
+
+ I don't know what to say. I'm speechless. This is amazing. +
+
+
+
+ +
+
+ John +
+

+ @john +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jack +
+

+ @jack +

+
+
+
+ I've never seen anything like this before. It's amazing. I love it. +
+
+
+
+ +
+
+ Jill +
+

+ @jill +

+
+
+
+ I don't know what to say. I'm speechless. This is amazing. +
+
+
+
+ +
+
+ John +
+

+ @john +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+
+
+ +
+
+ Jane +
+

+ @jane +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ Jenny +
+

+ @jenny +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ James +
+

+ @james +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jane +
+

+ @jane +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ Jenny +
+

+ @jenny +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ James +
+

+ @james +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jane +
+

+ @jane +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ Jenny +
+

+ @jenny +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ James +
+

+ @james +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+
+
+ +
+
+ Jack +
+

+ @jack +

+
+
+
+ I've never seen anything like this before. It's amazing. I love it. +
+
+
+
+ +
+
+ Jill +
+

+ @jill +

+
+
+
+ I don't know what to say. I'm speechless. This is amazing. +
+
+
+
+ +
+
+ John +
+

+ @john +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jack +
+

+ @jack +

+
+
+
+ I've never seen anything like this before. It's amazing. I love it. +
+
+
+
+ +
+
+ Jill +
+

+ @jill +

+
+
+
+ I don't know what to say. I'm speechless. This is amazing. +
+
+
+
+ +
+
+ John +
+

+ @john +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jack +
+

+ @jack +

+
+
+
+ I've never seen anything like this before. It's amazing. I love it. +
+
+
+
+ +
+
+ Jill +
+

+ @jill +

+
+
+
+ I don't know what to say. I'm speechless. This is amazing. +
+
+
+
+ +
+
+ John +
+

+ @john +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+
+
+ +
+
+ Jane +
+

+ @jane +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ Jenny +
+

+ @jenny +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ James +
+

+ @james +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jane +
+

+ @jane +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ Jenny +
+

+ @jenny +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ James +
+

+ @james +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jane +
+

+ @jane +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ Jenny +
+

+ @jenny +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ James +
+

+ @james +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+
+
+ +
+
+ Jack +
+

+ @jack +

+
+
+
+ I've never seen anything like this before. It's amazing. I love it. +
+
+
+
+ +
+
+ Jill +
+

+ @jill +

+
+
+
+ I don't know what to say. I'm speechless. This is amazing. +
+
+
+
+ +
+
+ John +
+

+ @john +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jack +
+

+ @jack +

+
+
+
+ I've never seen anything like this before. It's amazing. I love it. +
+
+
+
+ +
+
+ Jill +
+

+ @jill +

+
+
+
+ I don't know what to say. I'm speechless. This is amazing. +
+
+
+
+ +
+
+ John +
+

+ @john +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jack +
+

+ @jack +

+
+
+
+ I've never seen anything like this before. It's amazing. I love it. +
+
+
+
+ +
+
+ Jill +
+

+ @jill +

+
+
+
+ I don't know what to say. I'm speechless. This is amazing. +
+
+
+
+ +
+
+ John +
+

+ @john +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+
+
+ +
+
+ Jane +
+

+ @jane +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ Jenny +
+

+ @jenny +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ James +
+

+ @james +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jane +
+

+ @jane +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ Jenny +
+

+ @jenny +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ James +
+

+ @james +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ +
+
+ Jane +
+

+ @jane +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ Jenny +
+

+ @jenny +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+ +
+
+ James +
+

+ @james +

+
+
+
+ I'm at a loss for words. This is amazing. I love it. +
+
+
+
+
+
+ + + + + + +
+
+

+ Stop wasting time on design. +

+

+ Start your 7-day free trial. No credit card required. +

+ Get Started + +
+
+
+ ) +} + + diff --git a/apps/prepare/src/components/prodkt-grid/index.tsx b/apps/prepare/src/components/prodkt-grid/index.tsx index c8a8fd68..c468967f 100644 --- a/apps/prepare/src/components/prodkt-grid/index.tsx +++ b/apps/prepare/src/components/prodkt-grid/index.tsx @@ -1,6 +1,5 @@ import TracerCard from "@/registry/new-york/prodkt/effect-card/tracer-card"; - export default function ProdktGrid() { return (
diff --git a/apps/prepare/src/lib/theme-script.ts b/apps/prepare/src/lib/theme-script.ts new file mode 100644 index 00000000..0284ecce --- /dev/null +++ b/apps/prepare/src/lib/theme-script.ts @@ -0,0 +1,32 @@ +export const themeScript = ` +(function() { + function setTheme() { + const theme = localStorage.getItem('theme') || 'system'; + const isDark = theme === 'dark' || (theme === 'system' && window.matchMedia('(prefers-color-scheme: dark)').matches); + + // Simple class toggle with color-scheme + if (isDark) { + document.documentElement.classList.add('dark'); + document.documentElement.setAttribute('data-theme', 'dark'); + document.documentElement.style.colorScheme = 'dark'; + } else { + document.documentElement.classList.remove('dark'); + document.documentElement.setAttribute('data-theme', 'light'); + document.documentElement.style.colorScheme = 'light'; + } + } + + function setColor(name, defaultValue) { + const value = localStorage.getItem(name) || defaultValue; + document.documentElement.setAttribute('data-' + name, value); + } + + setTheme(); + setColor('primary-color', 'lime'); + setColor('gray-color', 'olive'); + setColor('secondary-color', 'mint'); + setColor('accent-color', 'lime'); + + window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', setTheme); +})(); +` diff --git a/apps/prepare/src/pages/index.astro b/apps/prepare/src/pages/index.astro index 0fd9e20d..4274b3f1 100644 --- a/apps/prepare/src/pages/index.astro +++ b/apps/prepare/src/pages/index.astro @@ -2,10 +2,11 @@ import DefaultLayout from "../layouts/default.astro"; // import ProdktGrid from "@components/prodkt-grid" import {BryanFunkSection} from "@components/about-bryan" -import {ThemeSwitcher} from "@/registry/new-york/prodkt/theme-switcher" +import {ThemeSwitcher} from "@/registry/default/prodkt/theme-switcher" import {ProdktModeToggle} from "@/registry/default/prodkt/prodkt-mode-toggle" // import ResumeDownload from "@/registry/new-york/prodkt/resume-download" import Page from "@/registry/new-york/blocks/layouts/web-app-01/page" +import {LoginNexsale} from "@/registry/new-york/blocks/login-nexsale/components/login-form" // import TracerCard from "@/registry/new-york/prodkt/effect-card/tracer-card"; --- @@ -14,7 +15,7 @@ import Page from "@/registry/new-york/blocks/layouts/web-app-01/page"
--> - + + - + + diff --git a/apps/prepare/src/pages/testing2.astro b/apps/prepare/src/pages/testing2.astro new file mode 100644 index 00000000..b9b1f85f --- /dev/null +++ b/apps/prepare/src/pages/testing2.astro @@ -0,0 +1,173 @@ +--- +import DefaultLayout from "../layouts/default.astro"; +import {CodesandboxIcon } from 'lucide-react'; +// import ProdktGrid from "@components/prodkt-grid" + +// import TracerCard from "@/registry/new-york/prodkt/effect-card/tracer-card"; +--- + + +
+
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + + + +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ + Login +
+
+ +
+
diff --git a/apps/prepare/tsconfig.json b/apps/prepare/tsconfig.json index 8dd2dac6..ba741664 100644 --- a/apps/prepare/tsconfig.json +++ b/apps/prepare/tsconfig.json @@ -26,12 +26,16 @@ }, "include": [ "../www/registry/**/*", - // "node_modules/www/node_modules/@fontsource/ibm-plex-mono/files/*", - // "node_modules/www/public/fonts/custom/*", - // "node_modules/www/styles/sparkstack_globals.css", - // "node_modules/www/motion/*.js", - // "node_modules/www/registry/**/*", - // "../www/motion/*.js", + "node_modules/www/node_modules/@fontsource/ibm-plex-mono/files/*", + "node_modules/www/public/fonts/custom/*", + "node_modules/www/styles/sparkstack_globals.css", + "node_modules/www/motion/*.js", + "node_modules/www/registry/**/*", + "node_modules/www/registry/new-york/blocks/**/*", + "../www/registry/new-york/blocks/**/*", + "node_modules/www/registry/new-york/prodkt/**/*", + "../www/registry/new-york/prodkt/**/*", + "../www/motion/*.js", // "src/**/*.ts", // "src/**/*.tsx", // "src/**/*.js", diff --git a/apps/www/package.json b/apps/www/package.json index f4f15715..28c39e5c 100644 --- a/apps/www/package.json +++ b/apps/www/package.json @@ -97,7 +97,6 @@ "react-dom": "18.2.0", "react-hook-form": "^7.53.2", "react-resizable-panels": "^2.0.22", - "react-spline: ^4.0.0": "link:@splinetool/react-spline: ^4.0.0", "react-use": "^17.5.1", "react-wrap-balancer": "^0.4.1", "recharts": "2.12.7", @@ -144,8 +143,5 @@ }, "peerDependencies": { "esbuild": "^0.17.3" - }, - "overrides": { - "react-is": "18.2.0" } } diff --git a/apps/www/public/r/styles/default/button-variants.json b/apps/www/public/r/styles/default/button-variants.json index dbae9d86..340ef4fd 100644 --- a/apps/www/public/r/styles/default/button-variants.json +++ b/apps/www/public/r/styles/default/button-variants.json @@ -4,7 +4,7 @@ "files": [ { "path": "lib/button-variants.ts", - "content": "export const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\n", + "content": "export const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n nexsalePrimary: \"nexsale-btn primary\",\n nexsaleSecondary: \"nexsale-btn secondary\",\n nexsaleGhost: \"nexsale-btn ghost\",\n nexsaleAccent: \"nexsale-btn accent\",\n nexsaleSuccess: \"nexsale-btn success\",\n nexsaleWarning: \"nexsale-btn warning\",\n nexsaleInfo: \"nexsale-btn info\",\n nexsaleDestructive: \"nexsale-btn destructive\",\n nexsaleOutlined: \"nexsale-btn outlined\",\n nexsaleOutlinedPrimary: \"nexsale-btn outlined primary\",\n nexsaleOutlinedSecondary: \"nexsale-btn outlined secondary\",\n nexsaleOutlinedGhost: \"nexsale-btn outlined ghost\",\n nexsaleOutlinedAccent: \"nexsale-btn outlined accent\",\n nexsaleOutlinedSuccess: \"nexsale-btn outlined success\",\n nexsaleOutlinedWarning: \"nexsale-btn outlined warning\",\n nexsaleOutlinedInfo: \"nexsale-btn outlined info\",\n nexsaleOutlinedDestructive: \"nexsale-btn outlined destructive\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\n", "type": "registry:lib", "target": "" } diff --git a/apps/www/public/r/styles/default/buttonVariants.json b/apps/www/public/r/styles/default/buttonVariants.json index c4951a41..75034b9d 100644 --- a/apps/www/public/r/styles/default/buttonVariants.json +++ b/apps/www/public/r/styles/default/buttonVariants.json @@ -13,7 +13,7 @@ }, { "path": "lib/button-variants.ts", - "content": "export const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\n", + "content": "export const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n nexsalePrimary: \"nexsale-btn primary\",\n nexsaleSecondary: \"nexsale-btn secondary\",\n nexsaleGhost: \"nexsale-btn ghost\",\n nexsaleAccent: \"nexsale-btn accent\",\n nexsaleSuccess: \"nexsale-btn success\",\n nexsaleWarning: \"nexsale-btn warning\",\n nexsaleInfo: \"nexsale-btn info\",\n nexsaleDestructive: \"nexsale-btn destructive\",\n nexsaleOutlined: \"nexsale-btn outlined\",\n nexsaleOutlinedPrimary: \"nexsale-btn outlined primary\",\n nexsaleOutlinedSecondary: \"nexsale-btn outlined secondary\",\n nexsaleOutlinedGhost: \"nexsale-btn outlined ghost\",\n nexsaleOutlinedAccent: \"nexsale-btn outlined accent\",\n nexsaleOutlinedSuccess: \"nexsale-btn outlined success\",\n nexsaleOutlinedWarning: \"nexsale-btn outlined warning\",\n nexsaleOutlinedInfo: \"nexsale-btn outlined info\",\n nexsaleOutlinedDestructive: \"nexsale-btn outlined destructive\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\n", "type": "registry:lib", "target": "" } diff --git a/apps/www/public/r/styles/default/login-nexsale.json b/apps/www/public/r/styles/default/login-nexsale.json index c735d5ca..a4e6fb6d 100644 --- a/apps/www/public/r/styles/default/login-nexsale.json +++ b/apps/www/public/r/styles/default/login-nexsale.json @@ -18,13 +18,13 @@ }, { "path": "blocks/login-nexsale/components/login-form.tsx", - "content": "import { ProdktModeToggle } from \"@/registry/default/prodkt/prodkt-mode-toggle\"\nimport LoginScreen from \"@/registry/default/blocks/login-nexsale/assets/nexsale_background__sales.avif\"\nimport BackgroundImage from \"@/registry/default/blocks/login-nexsale/assets/nexsale_backgrounds__integrations__forward-facing-slightly-elevated.avif\"\nimport { cn } from \"@/registry/default/lib/utils\"\nimport { ThemeSwitcher } from \"@/registry/default/prodkt/theme-switcher\"\nimport { Button } from \"@/registry/default/ui/button\"\nimport { Card, CardContent } from \"@/registry/default/ui/card\"\nimport { Input } from \"@/registry/default/ui/input\"\nimport { Label } from \"@/registry/default/ui/label\"\n\nimport BackgroundAnimation from \"./spline-background\"\n\nexport function LoginNexsale({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n
\n \n \n
\n
\n
\n

Welcome back

\n

\n Login to your NexSale account\n

\n
\n
\n \n \n
\n
\n
\n \n \n Forgot your password?\n \n
\n \n
\n \n
\n \n Or continue with\n \n
\n
\n \n \n \n
\n
\n Don't have an account?{\" \"}\n \n Sign up\n \n
\n
\n
\n \n
\n
\n
\n By clicking continue, you agree to our Terms of Service{\" \"}\n and Privacy Policy.\n
\n
\n
\n )\n}\n", + "content": "import { ProdktModeToggle } from \"@/registry/default/prodkt/prodkt-mode-toggle\"\nimport LoginScreen from \"@/registry/default/blocks/login-nexsale/assets/nexsale_background__sales.avif\"\nimport BackgroundImage from \"@/registry/default/blocks/login-nexsale/assets/nexsale_backgrounds__integrations__forward-facing-slightly-elevated.avif\"\nimport { cn } from \"@/registry/default/lib/utils\"\nimport { ThemeSwitcher } from \"@/registry/default/prodkt/theme-switcher\"\nimport { Button } from \"@/registry/default/ui/button\"\nimport { Card, CardContent } from \"@/registry/default/ui/card\"\nimport { Input } from \"@/registry/default/ui/input\"\nimport { Label } from \"@/registry/default/ui/label\"\n\nimport BackgroundAnimation from \"./spline-background\"\n\nexport function LoginNexsale({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n \n \n \n
\n
\n
\n
\n
\n

Welcome back

\n

\n Login to your NexSale account\n

\n
\n
\n \n \n
\n
\n
\n \n \n Forgot your password?\n \n
\n \n
\n \n
\n \n Or continue with\n \n
\n
\n \n \n \n
\n
\n Don't have an account?{\" \"}\n \n Sign up\n \n
\n
\n
\n
\n
\n
\n By clicking continue, you agree to our Terms of Service{\" \"}\n and Privacy Policy.\n
\n
\n \n
\n
\n \n \n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/login-nexsale/components/spline-background.tsx", - "content": "import Spline from \"@splinetool/react-spline\"\n\nexport default function BackgroundAnimation() {\n return (\n \n )\n}\n", + "content": "import Spline from \"@splinetool/react-spline\"\n\nexport default function BackgroundAnimation() {\n return (\n \n )\n}\n", "type": "registry:prodkt", "target": "" }, diff --git a/apps/www/public/r/styles/new-york/button-variants.json b/apps/www/public/r/styles/new-york/button-variants.json index dbae9d86..340ef4fd 100644 --- a/apps/www/public/r/styles/new-york/button-variants.json +++ b/apps/www/public/r/styles/new-york/button-variants.json @@ -4,7 +4,7 @@ "files": [ { "path": "lib/button-variants.ts", - "content": "export const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\n", + "content": "export const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n nexsalePrimary: \"nexsale-btn primary\",\n nexsaleSecondary: \"nexsale-btn secondary\",\n nexsaleGhost: \"nexsale-btn ghost\",\n nexsaleAccent: \"nexsale-btn accent\",\n nexsaleSuccess: \"nexsale-btn success\",\n nexsaleWarning: \"nexsale-btn warning\",\n nexsaleInfo: \"nexsale-btn info\",\n nexsaleDestructive: \"nexsale-btn destructive\",\n nexsaleOutlined: \"nexsale-btn outlined\",\n nexsaleOutlinedPrimary: \"nexsale-btn outlined primary\",\n nexsaleOutlinedSecondary: \"nexsale-btn outlined secondary\",\n nexsaleOutlinedGhost: \"nexsale-btn outlined ghost\",\n nexsaleOutlinedAccent: \"nexsale-btn outlined accent\",\n nexsaleOutlinedSuccess: \"nexsale-btn outlined success\",\n nexsaleOutlinedWarning: \"nexsale-btn outlined warning\",\n nexsaleOutlinedInfo: \"nexsale-btn outlined info\",\n nexsaleOutlinedDestructive: \"nexsale-btn outlined destructive\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\n", "type": "registry:lib", "target": "" } diff --git a/apps/www/public/r/styles/new-york/buttonVariants.json b/apps/www/public/r/styles/new-york/buttonVariants.json index c4951a41..75034b9d 100644 --- a/apps/www/public/r/styles/new-york/buttonVariants.json +++ b/apps/www/public/r/styles/new-york/buttonVariants.json @@ -13,7 +13,7 @@ }, { "path": "lib/button-variants.ts", - "content": "export const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\n", + "content": "export const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n nexsalePrimary: \"nexsale-btn primary\",\n nexsaleSecondary: \"nexsale-btn secondary\",\n nexsaleGhost: \"nexsale-btn ghost\",\n nexsaleAccent: \"nexsale-btn accent\",\n nexsaleSuccess: \"nexsale-btn success\",\n nexsaleWarning: \"nexsale-btn warning\",\n nexsaleInfo: \"nexsale-btn info\",\n nexsaleDestructive: \"nexsale-btn destructive\",\n nexsaleOutlined: \"nexsale-btn outlined\",\n nexsaleOutlinedPrimary: \"nexsale-btn outlined primary\",\n nexsaleOutlinedSecondary: \"nexsale-btn outlined secondary\",\n nexsaleOutlinedGhost: \"nexsale-btn outlined ghost\",\n nexsaleOutlinedAccent: \"nexsale-btn outlined accent\",\n nexsaleOutlinedSuccess: \"nexsale-btn outlined success\",\n nexsaleOutlinedWarning: \"nexsale-btn outlined warning\",\n nexsaleOutlinedInfo: \"nexsale-btn outlined info\",\n nexsaleOutlinedDestructive: \"nexsale-btn outlined destructive\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\n", "type": "registry:lib", "target": "" } diff --git a/apps/www/public/r/styles/new-york/login-nexsale.json b/apps/www/public/r/styles/new-york/login-nexsale.json index e0e089bd..912327c2 100644 --- a/apps/www/public/r/styles/new-york/login-nexsale.json +++ b/apps/www/public/r/styles/new-york/login-nexsale.json @@ -18,13 +18,13 @@ }, { "path": "blocks/login-nexsale/components/login-form.tsx", - "content": "import { ProdktModeToggle } from \"@/registry/default/prodkt/prodkt-mode-toggle\"\nimport LoginScreen from \"@/registry/new-york/blocks/login-nexsale/assets/nexsale_background__sales.avif\"\nimport BackgroundImage from \"@/registry/new-york/blocks/login-nexsale/assets/nexsale_backgrounds__integrations__forward-facing-slightly-elevated.avif\"\nimport { cn } from \"@/registry/new-york/lib/utils\"\nimport { ThemeSwitcher } from \"@/registry/new-york/prodkt/theme-switcher\"\nimport { Button } from \"@/registry/new-york/ui/button\"\nimport { Card, CardContent } from \"@/registry/new-york/ui/card\"\nimport { Input } from \"@/registry/new-york/ui/input\"\nimport { Label } from \"@/registry/new-york/ui/label\"\n\nimport BackgroundAnimation from \"./spline-background\"\n\nexport function LoginNexsale({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n
\n \n \n
\n
\n
\n

Welcome back

\n

\n Login to your NexSale account\n

\n
\n
\n \n \n
\n
\n
\n \n \n Forgot your password?\n \n
\n \n
\n \n
\n \n Or continue with\n \n
\n
\n \n \n \n
\n
\n Don't have an account?{\" \"}\n \n Sign up\n \n
\n
\n
\n \n
\n
\n
\n By clicking continue, you agree to our Terms of Service{\" \"}\n and Privacy Policy.\n
\n
\n
\n )\n}\n", + "content": "import { ProdktModeToggle } from \"@/registry/default/prodkt/prodkt-mode-toggle\"\nimport LoginScreen from \"@/registry/new-york/blocks/login-nexsale/assets/nexsale_background__sales.avif\"\nimport BackgroundImage from \"@/registry/new-york/blocks/login-nexsale/assets/nexsale_backgrounds__integrations__forward-facing-slightly-elevated.avif\"\nimport { cn } from \"@/registry/new-york/lib/utils\"\nimport { ThemeSwitcher } from \"@/registry/new-york/prodkt/theme-switcher\"\nimport { Button } from \"@/registry/new-york/ui/button\"\nimport { Card, CardContent } from \"@/registry/new-york/ui/card\"\nimport { Input } from \"@/registry/new-york/ui/input\"\nimport { Label } from \"@/registry/new-york/ui/label\"\n\nimport BackgroundAnimation from \"./spline-background\"\n\nexport function LoginNexsale({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n \n \n \n
\n
\n
\n
\n
\n

Welcome back

\n

\n Login to your NexSale account\n

\n
\n
\n \n \n
\n
\n
\n \n \n Forgot your password?\n \n
\n \n
\n \n
\n \n Or continue with\n \n
\n
\n \n \n \n
\n
\n Don't have an account?{\" \"}\n \n Sign up\n \n
\n
\n
\n
\n
\n
\n By clicking continue, you agree to our Terms of Service{\" \"}\n and Privacy Policy.\n
\n
\n \n
\n
\n \n \n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/login-nexsale/components/spline-background.tsx", - "content": "import Spline from \"@splinetool/react-spline\"\n\nexport default function BackgroundAnimation() {\n return (\n \n )\n}\n", + "content": "import Spline from \"@splinetool/react-spline\"\n\nexport default function BackgroundAnimation() {\n return (\n \n )\n}\n", "type": "registry:prodkt", "target": "" }, diff --git a/apps/www/registry/default/blocks/login-nexsale/components/login-form.tsx b/apps/www/registry/default/blocks/login-nexsale/components/login-form.tsx index 37fea8e2..3e97c0de 100644 --- a/apps/www/registry/default/blocks/login-nexsale/components/login-form.tsx +++ b/apps/www/registry/default/blocks/login-nexsale/components/login-form.tsx @@ -15,10 +15,23 @@ export function LoginNexsale({ ...props }: React.ComponentProps<"div">) { return ( -
- - -
+
+ + +
+ Image +
+

Welcome back

@@ -51,12 +64,12 @@ export function LoginNexsale({ Login
- + Or continue with
- - -
-
- Image -
By clicking continue, you agree to our Terms of Service{" "} and Privacy Policy.
-
- Image - -
+
+ +
+
diff --git a/apps/www/registry/default/blocks/login-nexsale/components/spline-background.tsx b/apps/www/registry/default/blocks/login-nexsale/components/spline-background.tsx index dceaa4ef..f4ee27dc 100644 --- a/apps/www/registry/default/blocks/login-nexsale/components/spline-background.tsx +++ b/apps/www/registry/default/blocks/login-nexsale/components/spline-background.tsx @@ -2,6 +2,9 @@ import Spline from "@splinetool/react-spline" export default function BackgroundAnimation() { return ( - + ) } diff --git a/apps/www/registry/default/lib/button-variants.ts b/apps/www/registry/default/lib/button-variants.ts index 967baaa6..9b069e7d 100644 --- a/apps/www/registry/default/lib/button-variants.ts +++ b/apps/www/registry/default/lib/button-variants.ts @@ -13,6 +13,23 @@ export const buttonVariantsConfig = { secondary: "hover:bg-secondary-hover bg-secondary text-secondary-foreground", ghost: "hover:bg-accent hover:text-accent-foreground", + nexsalePrimary: "nexsale-btn primary", + nexsaleSecondary: "nexsale-btn secondary", + nexsaleGhost: "nexsale-btn ghost", + nexsaleAccent: "nexsale-btn accent", + nexsaleSuccess: "nexsale-btn success", + nexsaleWarning: "nexsale-btn warning", + nexsaleInfo: "nexsale-btn info", + nexsaleDestructive: "nexsale-btn destructive", + nexsaleOutlined: "nexsale-btn outlined", + nexsaleOutlinedPrimary: "nexsale-btn outlined primary", + nexsaleOutlinedSecondary: "nexsale-btn outlined secondary", + nexsaleOutlinedGhost: "nexsale-btn outlined ghost", + nexsaleOutlinedAccent: "nexsale-btn outlined accent", + nexsaleOutlinedSuccess: "nexsale-btn outlined success", + nexsaleOutlinedWarning: "nexsale-btn outlined warning", + nexsaleOutlinedInfo: "nexsale-btn outlined info", + nexsaleOutlinedDestructive: "nexsale-btn outlined destructive", outlineFlows: "after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent", outlineCodeblocks: diff --git a/apps/www/registry/new-york/blocks/login-nexsale/components/login-form.tsx b/apps/www/registry/new-york/blocks/login-nexsale/components/login-form.tsx index 6b7b188d..d8d959af 100644 --- a/apps/www/registry/new-york/blocks/login-nexsale/components/login-form.tsx +++ b/apps/www/registry/new-york/blocks/login-nexsale/components/login-form.tsx @@ -15,14 +15,20 @@ export function LoginNexsale({ ...props }: React.ComponentProps<"div">) { return ( -
- - -
+
+ + +
Image
@@ -63,7 +69,7 @@ export function LoginNexsale({
- - -
-
- +
+
diff --git a/apps/www/registry/new-york/blocks/login-nexsale/components/spline-background.tsx b/apps/www/registry/new-york/blocks/login-nexsale/components/spline-background.tsx index 6ebf0607..f4ee27dc 100644 --- a/apps/www/registry/new-york/blocks/login-nexsale/components/spline-background.tsx +++ b/apps/www/registry/new-york/blocks/login-nexsale/components/spline-background.tsx @@ -2,6 +2,9 @@ import Spline from "@splinetool/react-spline" export default function BackgroundAnimation() { return ( - + ) } diff --git a/apps/www/registry/new-york/lib/button-variants.ts b/apps/www/registry/new-york/lib/button-variants.ts index 967baaa6..9b069e7d 100644 --- a/apps/www/registry/new-york/lib/button-variants.ts +++ b/apps/www/registry/new-york/lib/button-variants.ts @@ -13,6 +13,23 @@ export const buttonVariantsConfig = { secondary: "hover:bg-secondary-hover bg-secondary text-secondary-foreground", ghost: "hover:bg-accent hover:text-accent-foreground", + nexsalePrimary: "nexsale-btn primary", + nexsaleSecondary: "nexsale-btn secondary", + nexsaleGhost: "nexsale-btn ghost", + nexsaleAccent: "nexsale-btn accent", + nexsaleSuccess: "nexsale-btn success", + nexsaleWarning: "nexsale-btn warning", + nexsaleInfo: "nexsale-btn info", + nexsaleDestructive: "nexsale-btn destructive", + nexsaleOutlined: "nexsale-btn outlined", + nexsaleOutlinedPrimary: "nexsale-btn outlined primary", + nexsaleOutlinedSecondary: "nexsale-btn outlined secondary", + nexsaleOutlinedGhost: "nexsale-btn outlined ghost", + nexsaleOutlinedAccent: "nexsale-btn outlined accent", + nexsaleOutlinedSuccess: "nexsale-btn outlined success", + nexsaleOutlinedWarning: "nexsale-btn outlined warning", + nexsaleOutlinedInfo: "nexsale-btn outlined info", + nexsaleOutlinedDestructive: "nexsale-btn outlined destructive", outlineFlows: "after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent", outlineCodeblocks: diff --git a/apps/www/registry/registry-hooks.ts b/apps/www/registry/registry-hooks.ts index 7c5e8216..7dc08b65 100644 --- a/apps/www/registry/registry-hooks.ts +++ b/apps/www/registry/registry-hooks.ts @@ -44,11 +44,16 @@ export const hooks: Registry = [ { name: "use-ripple", type: "registry:hook", + dependencies: ["dom-animation"], files: [ { path: "hooks/use-ripple.ts", type: "registry:hook", }, + { + path: "lib/dom-animation.ts", + type: "registry:lib", + }, ], }, ] diff --git a/apps/www/registry/registry-lib.ts b/apps/www/registry/registry-lib.ts index 123f178e..749d5d30 100644 --- a/apps/www/registry/registry-lib.ts +++ b/apps/www/registry/registry-lib.ts @@ -5,6 +5,10 @@ export const lib: Registry = [ name: "buttonUtils", type: "registry:lib", files: [ + { + path: "lib/button-variants.ts", + type: "registry:lib", + }, { path: "lib/buttonUtils.ts", type: "registry:lib", @@ -19,6 +23,10 @@ export const lib: Registry = [ path: "lib/button-variants.ts", type: "registry:lib", }, + { + path: "lib/buttonUtils.ts", + type: "registry:lib", + }, ], }, { diff --git a/apps/www/styles/nexsale_custom.css b/apps/www/styles/nexsale_custom.css new file mode 100644 index 00000000..abdc90b8 --- /dev/null +++ b/apps/www/styles/nexsale_custom.css @@ -0,0 +1,116 @@ +@tailwind components; + +@layer components { + .nextsale-btn { + @apply select-none cursor-pointer z-[1] focus-within:ring-gray-a10 transition-all duration-300 ease-in-out motion-duration-300 overflow-hidden; + @apply relative inline-flex items-center justify-center; + @apply border-transparent shadow-md ring-1 ring-gray-a5; + @apply hover:shadow-lg hover:before:animate-nexsale-btn; + @apply active:shadow-lg ring-1 active:duration-200; + @apply disabled:bg-gray-a5 disabled:opacity-40; + @apply after:absolute after:inset-0 after:shadow-[inset_0_0_2px_1px_var(--gray-a4)] hover:after:shadow-[inset_0_0_2px_1px_var(--gray-a5)] after:overflow-hidden; + @apply before:opacity-0 hover:before:opacity-100 hover:before:duration-300 before:motion-duration-500; + @apply before:absolute before:rounded-none before:inset-0 before:m-auto before:border-b before:border-t before:blur-[2px] before:w-2 before:h-[calc(100%+3px)] before:origin-center; + @apply whitespace-nowrap text-base font-medium text-gray-11; + + &:not(.small) { + @apply border-none rounded-xl after:rounded-xl px-3 py-[calc(theme(spacing.2)-2px)] [&_svg]:stroke-[1.5px] [&_svg]:drop-shadow-md gap-x-2 [&_svg]:size-5; + } + + &.small { + @apply rounded-xl after:rounded-xl px-2.5 py-[calc(theme(spacing.2)-4px)] gap-x-2 [&_svg]:stroke-1 [&_svg]:drop-shadow-md [&_svg]:size-4 border-none; + } + + &:not(.primary), + &:not(.secondary), + &:not(.ghost), + &:not(.accent), + &:not(.success), + &:not(.warning), + &:not(.info), + &:not(.destructive), + &:not(.outlined), + &:not(.primary):not(.secondary):not(.ghost):not(.accent):not(.success):not( + .warning + ):not(.info):not(.destructive):not(.outlined) { + @apply bg-gray-a5 hover:bg-gray-a5 hover:ring-gray-a3 active:bg-gray-a5 active:ring-gray-a3 active:bg-gray-a4 before:border-gray-a12; + } + + &.primary { + @apply bg-primary-a5 hover:bg-primary-a5 hover:ring-primary-a3 active:bg-primary-a5 active:ring-primary-a3 active:bg-primary-a4 before:border-primary-a12; + } + + &.ghost { + @apply bg-ghost-aa5 hover:bg-ghost-aa5 hover:ring-ghost-aa3 active:bg-ghost-aa5 active:ring-ghost-aa3 active:bg-ghost-aa4 before:border-ghost-aa12; + } + + &.secondary { + @apply bg-secondary-a5 hover:bg-secondary-a5 hover:ring-secondary-a3 active:bg-secondary-a5 active:ring-secondary-a3 active:bg-secondary-a4 before:border-secondary-a12; + } + + &.accent { + @apply bg-accent-a5 hover:bg-accent-a5 hover:ring-accent-a3 active:bg-accent-a5 active:ring-accent-a3 active:bg-accent-a4 before:border-accent-a12; + } + + &.destructive { + @apply bg-destructive-a5 hover:bg-destructive-a5 hover:ring-destructive-a3 active:bg-destructive-a5 active:ring-destructive-a3 active:bg-destructive-a4 before:border-destructive-a12; + } + + &.success { + @apply bg-success-a5 hover:bg-success-a5 hover:ring-success-a3 active:bg-success-a5 active:ring-success-a3 active:bg-success-a4 before:border-success-a12; + } + + &.warning { + @apply bg-warning-a5 hover:bg-warning-a5 hover:ring-warning-a3 active:bg-warning-a5 active:ring-warning-a3 active:bg-warning-a4 before:border-warning-a12; + } + + &.info { + @apply bg-info-a5 hover:bg-info-a5 hover:ring-info-a3 active:bg-info-a5 active:ring-info-a3 active:bg-info-a4 before:border-info-a12; + } + + &.outlined { + &:not(.primary), + &:not(.secondary), + &:not(.ghost), + &:not(.accent), + &:not(.success), + &:not(.warning), + &:not(.info), + &:not(.destructive) { + @apply bg-gray-a1 hover:bg-gray-a2 hover:ring-ghost-aa2 active:bg-transparent active:ring-ghost-aa1 active:bg-transparent before:border-ghost-aa1; + } + + &.primary { + @apply bg-primary-a1 hover:bg-primary-a2 ring-primary-a5 hover:ring-primary-a6 active:bg-transparent active:ring-primary-a6 active:bg-transparent before:border-primary-a4; + } + + &.secondary { + @apply bg-secondary-a1 hover:bg-secondary-a2 ring-secondary-a5 hover:ring-secondary-a6 active:bg-transparent active:ring-secondary-a6 active:bg-transparent before:border-secondary-a4; + } + + &.ghost { + @apply bg-ghost-aa1 hover:bg-ghost-aa2 ring-ghost-aa5 hover:ring-ghost-aa6 active:bg-transparent active:ring-ghost-aa6 active:bg-transparent before:border-ghost-aa4; + } + + &.accent { + @apply bg-accent-a1 hover:bg-accent-a2 ring-accent-a5 hover:ring-accent-a6 active:bg-transparent active:ring-accent-a6 active:bg-transparent before:border-accent-a4; + } + + &.success { + @apply bg-success-a1 hover:bg-success-a2 ring-success-a5 hover:ring-success-a6 active:bg-transparent active:ring-success-a6 active:bg-transparent before:border-success-a4; + } + + &.warning { + @apply bg-warning-a1 hover:bg-warning-a2 ring-warning-a5 hover:ring-warning-a6 active:bg-transparent active:ring-warning-a6 active:bg-transparent before:border-warning-a4; + } + + &.info { + @apply bg-info-a1 hover:bg-info-a2 ring-info-a5 hover:ring-info-a6 active:bg-transparent active:ring-info-a6 active:bg-transparent before:border-info-a4; + } + + &.destructive { + @apply bg-destructive-a1 hover:bg-destructive-a2 ring-destructive-a5 hover:ring-destructive-a6 active:bg-transparent active:ring-destructive-a6 active:bg-transparent before:border-destructive-a4; + } + } + } +} diff --git a/apps/www/styles/sparkstack_custom.css b/apps/www/styles/sparkstack_custom.css index 4f4696ff..7e546a12 100644 --- a/apps/www/styles/sparkstack_custom.css +++ b/apps/www/styles/sparkstack_custom.css @@ -1,3 +1,4 @@ @import './components/animated-collaboration.module.css'; @import './components/technology-cloud.module.css'; @import './blocks/layouts/web-app-01.css'; +@import './nexsale_custom.css'; diff --git a/apps/www/tailwind.config.cjs b/apps/www/tailwind.config.cjs index 8f73b47e..9bd5e6aa 100644 --- a/apps/www/tailwind.config.cjs +++ b/apps/www/tailwind.config.cjs @@ -1,6 +1,8 @@ -const baseConfig = require("../../tailwind.config.ts") -const SparkstackThemePreset = require("./lib/theme"); +// const baseConfig = require("../../tailwind.config.ts") +// const SparkstackThemePreset = require("./lib/theme"); +import baseConfig from '../../tailwind.config' +// import type { Config } from 'tailwindcss' /** @type {import('tailwindcss').Config} */ module.exports = { @@ -9,16 +11,16 @@ module.exports = { presets: [SparkstackThemePreset], content: [ ...baseConfig.content, - "content/**/*.mdx", - "registry/**/*.{ts,tsx}", - "app/**/*.{ts,tsx}", - "app/(app)/**/*.{ts,tsx}", - "components/**/*.{ts,tsx}", - "ui/**/*.{ts,tsx}", - "prodkt/**/*.{ts,tsx}", - "blocks/**/*.{ts,tsx}", - "examples/**/*.{ts,tsx}", - "prepare/src/**/*.{ts,tsx}", - "prepare/src/components/**/*.{ts,tsx}", + // "content/**/*.mdx", + // "registry/**/*.{ts,tsx}", + // "app/**/*.{ts,tsx}", + // "app/(app)/**/*.{ts,tsx}", + // "components/**/*.{ts,tsx}", + // "ui/**/*.{ts,tsx}", + // "prodkt/**/*.{ts,tsx}", + // "blocks/**/*.{ts,tsx}", + // "examples/**/*.{ts,tsx}", + // "prepare/src/**/*.{ts,tsx}", + // "prepare/src/components/**/*.{ts,tsx}", ], } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 70ce8743..55bfdedd 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -207,6 +207,9 @@ importers: react: specifier: ^18.3.1 version: 18.3.1 + react-compiler-runtime: + specifier: 19.0.0-beta-201e55d-20241215 + version: 19.0.0-beta-201e55d-20241215(react@18.3.1) react-dom: specifier: ^18.3.1 version: 18.3.1(react@18.3.1) @@ -391,6 +394,15 @@ importers: '@react-types/shared': specifier: 3.24.1 version: 3.24.1(react@18.2.0) + '@splinetool/react-spline': + specifier: ^4.0.0 + version: 4.0.0(@splinetool/runtime@1.9.48)(next@14.3.0-canary.43(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@splinetool/runtime': + specifier: ^1.9.48 + version: 1.9.48 + '@splinetool/viewer': + specifier: ^1.9.50 + version: 1.9.50 '@tanstack/react-table': specifier: ^8.9.1 version: 8.20.6(react-dom@18.2.0(react@18.2.0))(react@18.2.0) @@ -2010,6 +2022,12 @@ packages: peerDependencies: tslib: '2' + '@lit-labs/ssr-dom-shim@1.2.1': + resolution: {integrity: sha512-wx4aBmgeGvFmOKucFKY+8VFJSYZxs9poN3SDNQFF6lT6NrQUnHiPB2PWz2sc4ieEcAaYYzN+1uWahEeTq2aRIQ==} + + '@lit/reactive-element@1.6.3': + resolution: {integrity: sha512-QuTgnG52Poic7uM1AN5yJ09QMe0O28e10XzSvWDz02TJiiKee4stsiownEIadWm8nYzyDAyT+gKzUoZmiWQtsQ==} + '@manypkg/cli@0.20.0': resolution: {integrity: sha512-xOAyzHp4cF6+1VxCeVi14k4WJBbKAExuYVA+wXlCHPLoTUv64D2HQrLUOFO8bXtzW9KFhGhdP2xGFq9n9rSDiw==} engines: {node: '>=14.18.0'} @@ -2486,8 +2504,8 @@ packages: '@radix-ui/react-focus-guards@1.1.1': resolution: {integrity: sha512-pSIwfrT1a6sIoDASCSpFwOasEwKTZWDw/iBdtnqKO7v6FeOzYJ7U53cPzYFVR3geGGXgVHaH+CdngrrAzqUGxg==} peerDependencies: - '@types/react': npm:types-react@19.0.0-rc.1 - react: 19.0.0-rc-45804af1-20241021 + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': optional: true @@ -2857,8 +2875,8 @@ packages: '@radix-ui/react-use-layout-effect@1.1.0': resolution: {integrity: sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==} peerDependencies: - '@types/react': npm:types-react@19.0.0-rc.1 - react: 19.0.0-rc-45804af1-20241021 + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': optional: true @@ -2866,8 +2884,8 @@ packages: '@radix-ui/react-use-previous@1.1.0': resolution: {integrity: sha512-Z/e78qg2YFnnXcW88A4JmTtm4ADckLno6F7OXotmkQfeuCVaKuYzqAATPhVzl3delXE7CxIV8shofPn3jPc5Og==} peerDependencies: - '@types/react': npm:types-react@19.0.0-rc.1 - react: 19.0.0-rc-45804af1-20241021 + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': optional: true @@ -2909,10 +2927,10 @@ packages: '@radix-ui/themes@3.1.6': resolution: {integrity: sha512-4uaUK0E+3ZRURohKNqnzG8LciTJcpppuBbYxkp7miLyPiaXBwKTrEttdQpExsp/fP6J+ss+JHy5FJhU5lboQkg==} peerDependencies: - '@types/react': npm:types-react@19.0.0-rc.1 - '@types/react-dom': npm:types-react-dom@19.0.0-rc.1 - react: 19.0.0-rc-45804af1-20241021 - react-dom: 19.0.0-rc-45804af1-20241021 + '@types/react': '*' + '@types/react-dom': '*' + react: 16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: 16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': optional: true @@ -3232,6 +3250,9 @@ packages: '@splinetool/runtime@1.9.48': resolution: {integrity: sha512-G0PH03heEbGm8l7PhW5AeR/h2K0tFsip9WnXuToy3e9dTAP2C+Zff4kr2O0owNOwfngwlfrNNaOwj1tr1dIKtQ==} + '@splinetool/viewer@1.9.50': + resolution: {integrity: sha512-CFS1UbdisshPVh/TMHIIRothS3GHoiB0sWPHR3cGHd2c+H8sT27T1qXDpCJzNqZbkMnhvy8zOrk3TuMllnz3/Q==} + '@swc/helpers@0.5.11': resolution: {integrity: sha512-YNlnKRWF2sVojTpIyzwou9XoTNbzbzONwRhOoniEioF1AtaitTvVZblaQRrAzChWQ1bLYyYSWzM18y4WwgzJ+A==} @@ -3471,6 +3492,9 @@ packages: '@types/stringify-object@4.0.5': resolution: {integrity: sha512-TzX5V+njkbJ8iJ0mrj+Vqveep/1JBH4SSA3J2wYrE1eUrOhdsjTBCb0kao4EquSQ8KgPpqY4zSVP2vCPWKBElg==} + '@types/trusted-types@2.0.7': + resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} + '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} @@ -5638,6 +5662,15 @@ packages: lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + lit-element@3.3.3: + resolution: {integrity: sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA==} + + lit-html@2.8.0: + resolution: {integrity: sha512-o9t+MQM3P4y7M7yNzqAyjp7z+mQGa4NS4CxiyLqFPyFWyc4O+nodLrkrxSaCTrla6M5YOLaT3RpbbqjszB5g3Q==} + + lit@2.8.0: + resolution: {integrity: sha512-4Sc3OFX9QHOJaHbmTMk28SYgVxLN3ePDjg7hofEft2zWlehFL3LiAuapWc4U/kYwMYJSh2hTCPZ6/LIC7ii0MA==} + load-tsconfig@0.2.5: resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -6747,6 +6780,11 @@ packages: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true + react-compiler-runtime@19.0.0-beta-201e55d-20241215: + resolution: {integrity: sha512-jBEo/UqVgiz6veJjhQMoNaGQLKUQwzMQpiYrA4XsGVOC2sElDF0oMjic5107LitP988yHrqDDZwZirS4OAEqyA==} + peerDependencies: + react: ^17.0.0 || ^18.0.0 || ^19.0.0 + react-day-picker@8.10.1: resolution: {integrity: sha512-TMx7fNbhLk15eqcMt+7Z7S2KF7mfTId/XJDjKE8f+IUcFn0l08/kI4FiYTL/0yuOLmEcbR4Fwe3GJf/NiiMnPA==} peerDependencies: @@ -9614,6 +9652,12 @@ snapshots: dependencies: tslib: 2.8.1 + '@lit-labs/ssr-dom-shim@1.2.1': {} + + '@lit/reactive-element@1.6.3': + dependencies: + '@lit-labs/ssr-dom-shim': 1.2.1 + '@manypkg/cli@0.20.0': dependencies: '@manypkg/get-packages': 2.2.2 @@ -11589,6 +11633,18 @@ snapshots: '@sindresorhus/is@0.14.0': {} + '@splinetool/react-spline@4.0.0(@splinetool/runtime@1.9.48)(next@14.3.0-canary.43(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + dependencies: + '@splinetool/runtime': 1.9.48 + blurhash: 2.0.5 + lodash.debounce: 4.0.8 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-merge-refs: 2.1.1 + thumbhash: 0.1.1 + optionalDependencies: + next: 14.3.0-canary.43(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@splinetool/react-spline@4.0.0(@splinetool/runtime@1.9.48)(next@14.3.0-canary.43(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@splinetool/runtime': 1.9.48 @@ -11606,6 +11662,10 @@ snapshots: on-change: 4.0.2 semver-compare: 1.0.0 + '@splinetool/viewer@1.9.50': + dependencies: + lit: 2.8.0 + '@swc/helpers@0.5.11': dependencies: tslib: 2.8.1 @@ -11854,6 +11914,8 @@ snapshots: '@types/stringify-object@4.0.5': {} + '@types/trusted-types@2.0.7': {} + '@types/unist@2.0.11': {} '@types/unist@3.0.3': {} @@ -14462,6 +14524,22 @@ snapshots: lines-and-columns@1.2.4: {} + lit-element@3.3.3: + dependencies: + '@lit-labs/ssr-dom-shim': 1.2.1 + '@lit/reactive-element': 1.6.3 + lit-html: 2.8.0 + + lit-html@2.8.0: + dependencies: + '@types/trusted-types': 2.0.7 + + lit@2.8.0: + dependencies: + '@lit/reactive-element': 1.6.3 + lit-element: 3.3.3 + lit-html: 2.8.0 + load-tsconfig@0.2.5: {} load-yaml-file@0.2.0: @@ -15984,6 +16062,10 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 + react-compiler-runtime@19.0.0-beta-201e55d-20241215(react@18.3.1): + dependencies: + react: 18.3.1 + react-day-picker@8.10.1(date-fns@2.30.0)(react@18.2.0): dependencies: date-fns: 2.30.0 diff --git a/tailwind.config.ts b/tailwind.config.ts index 8270e06c..47959d99 100644 --- a/tailwind.config.ts +++ b/tailwind.config.ts @@ -1745,6 +1745,31 @@ export default { from: { transform: "translateX(calc(-100% - 0rem))" }, to: { transform: "translateX(0)" }, }, + "nexsale-btn": { + // "0%, 100%": { + // transform: "translate(-50%, 50%) scale(1)", + // }, + "0%": { + transform: + "translateX(0%) translateY(0%) rotateX(1deg) rotateY(0deg) rotateZ(0deg) scaleX(1) translateZ(1px) skew(-90deg, 0deg)", + }, + "25%": { + transform: + "translateX(0%) translateY(0%) rotateX(1deg) rotateY(1deg) rotateZ(0deg) scaleX(3) translateZ(1px) skew(45deg, 0deg)", + }, + "50%": { + transform: + "translateX(0%) translateY(0%) rotateX(1deg) rotateY(0deg) rotateZ(0deg) scaleX(3) translateZ(0px) skew(-45deg, 0deg)", + }, + "75%": { + transform: + "translateX(0%) translateY(0%) rotateX(1deg) rotateY(1deg) rotateZ(0deg) scaleX(3) translateZ(1px) skew(45deg, 0deg)", + }, + "100%": { + transform: + "translateX(0%) translateY(0%) rotateX(1deg) rotateY(0deg) rotateZ(0deg) scaleX(5) translateZ(1px) skew(-45deg, 0deg)", + }, + }, }, animation: { ...animation, @@ -1780,6 +1805,7 @@ export default { "logo-cloud-reverse": "logo-cloud-reverse 150s linear infinite", "logo-cloud-slow": "logo-cloud 260s linear infinite", "logo-cloud-reverse-slow": "logo-cloud-reverse 200s linear infinite", + "nexsale-btn": "nexsale-btn 8s ease-in-out infinite alternate", }, boxShadows: { xs: "0 1px 2px 0 rgba(18, 18, 23, 0.05)", From 540a357990ec29073de154154534a5e81b08b313 Mon Sep 17 00:00:00 2001 From: prodkt Date: Thu, 19 Dec 2024 02:26:44 -0700 Subject: [PATCH 08/14] prepare for public release --- apps/prepare/package.json | 9 +- apps/prepare/tsconfig.json | 4 - .../blocks/effect-jump-to-section-01/page.tsx | 2 +- .../default/blocks/login-01/page.tsx | 2 +- .../default/blocks/login-02/page.tsx | 2 +- .../default/blocks/login-03/page.tsx | 2 +- .../default/blocks/login-04/page.tsx | 2 +- .../default/blocks/login-05/page.tsx | 2 +- .../default/blocks/login-nexsale/page.tsx | 2 +- .../default/blocks/sidebar-01/page.tsx | 8 +- .../default/blocks/sidebar-02/page.tsx | 8 +- .../default/blocks/sidebar-03/page.tsx | 8 +- .../default/blocks/sidebar-04/page.tsx | 8 +- .../default/blocks/sidebar-05/page.tsx | 8 +- .../default/blocks/sidebar-06/page.tsx | 8 +- .../default/blocks/sidebar-07/page.tsx | 8 +- .../default/blocks/sidebar-08/page.tsx | 8 +- .../default/blocks/sidebar-09/page.tsx | 8 +- .../default/blocks/sidebar-10/page.tsx | 10 +- .../default/blocks/sidebar-11/page.tsx | 8 +- .../default/blocks/sidebar-12/page.tsx | 8 +- .../default/blocks/sidebar-13/page.tsx | 2 +- .../default/blocks/sidebar-14/page.tsx | 6 +- .../default/blocks/sidebar-15/page.tsx | 10 +- apps/www/__registry__/index.tsx | 11846 ++++++++++------ apps/www/app/layout.tsx | 9 +- apps/www/components/chart-copy-button.tsx | 2 +- apps/www/components/copy-button.tsx | 12 +- apps/www/components/theme-customizer.tsx | 6 +- apps/www/components/v0-button.tsx | 23 +- .../content/docs/prodkt/bento-grid-uno.mdx | 11 +- .../docs/prodkt/design-system-icons.mdx | 53 +- apps/www/content/docs/prodkt/logos.mdx | 32 +- .../content/docs/prodkt/marquee-section.mdx | 7 +- .../content/docs/prodkt/packages-marquee.mdx | 7 +- apps/www/hooks/use-config.ts | 2 +- apps/www/lib/registry.ts | 20 +- apps/www/next.config.mjs | 15 +- apps/www/package.json | 10 +- apps/www/plugins/inverted-colors/index.ts | 10 + .../{ => plugins}/motion/baseAnimations.js | 0 apps/www/{ => plugins}/motion/defaults.js | 0 apps/www/{ => plugins}/motion/index.js | 0 apps/www/{ => plugins}/motion/keyframes.js | 0 apps/www/{ => plugins}/motion/modifiers.js | 0 apps/www/{ => plugins}/motion/presets.js | 0 apps/www/public/r/colors/Mauve.json | 69 + apps/www/public/r/colors/Olive.json | 69 + apps/www/public/r/colors/Sage.json | 69 + apps/www/public/r/colors/Sand.json | 69 + apps/www/public/r/colors/gray.json | 101 +- apps/www/public/r/colors/index.json | 360 + apps/www/public/r/colors/neutral.json | 102 - apps/www/public/r/colors/slate.json | 101 +- apps/www/public/r/colors/stone.json | 102 - apps/www/public/r/colors/zinc.json | 102 - apps/www/public/r/icons/index.json | 114 +- apps/www/public/r/index.json | 2047 +++ .../r/styles/default/add-action-popout.json | 12 + .../default/animated-collaboration.json | 12 + .../r/styles/default/app-icons-section.json | 12 + .../r/styles/default/bento-grid-uno-demo.json | 2 +- .../r/styles/default/bento-grid-uno.json | 12 + .../r/styles/default/button-variants.json | 5 +- apps/www/public/r/styles/default/button.json | 2 +- .../public/r/styles/default/buttonUtils.json | 5 +- .../r/styles/default/buttonVariants.json | 4 +- .../r/styles/default/carousel-plugin.json | 2 +- .../www/public/r/styles/default/carousel.json | 2 +- .../r/styles/default/client-shuffle.json | 12 + .../styles/default/config-theme-switcher.json | 12 + .../r/styles/default/creative-tab-slider.json | 12 + .../styles/default/designer-marks-button.json | 12 + .../r/styles/default/designer-marks.json | 12 + .../public/r/styles/default/download-01.json | 2 +- .../default/effect-jump-to-section-01.json | 4 +- .../r/styles/default/effect-ripple.json | 12 + apps/www/public/r/styles/default/fade-in.json | 12 + .../www/public/r/styles/default/fade-out.json | 12 + .../default/floating-create-dialog.json | 12 + .../styles/default/flows-compact-sidebar.json | 12 + .../styles/default/flows-floating-topbar.json | 12 + .../public/r/styles/default/footer-01.json | 12 + .../public/r/styles/default/github-stars.json | 12 + .../r/styles/default/jump-to-section.json | 36 + .../styles/default/keyboard-shortcut-key.json | 12 + .../default/keyboard-shortcut-multikey.json | 12 + .../r/styles/default/learner-badge.json | 12 + .../www/public/r/styles/default/login-01.json | 4 +- .../www/public/r/styles/default/login-02.json | 4 +- .../www/public/r/styles/default/login-03.json | 4 +- .../www/public/r/styles/default/login-04.json | 4 +- .../www/public/r/styles/default/login-05.json | 4 +- .../r/styles/default/login-nexsale.json | 17 +- .../r/styles/default/logo-cloud-01.json | 12 + .../public/r/styles/default/logo-context.json | 12 + .../public/r/styles/default/logo-shuffle.json | 12 + .../r/styles/default/logo_craft-demo.json | 2 +- .../r/styles/default/logo_olio-demo.json | 2 +- .../styles/default/logo_planfoundry-demo.json | 2 +- .../r/styles/default/logo_scales-demo.json | 2 +- .../default/logomark_ampersand-demo.json | 2 +- .../r/styles/default/logomark_craft-demo.json | 2 +- .../styles/default/logomark_digidoc-demo.json | 2 +- .../styles/default/logomark_explor-demo.json | 2 +- .../r/styles/default/logomark_flows-demo.json | 2 +- .../styles/default/logomark_leveln-demo.json | 2 +- .../r/styles/default/logomark_olio-demo.json | 2 +- .../default/logomark_planfoundry-demo.json | 2 +- .../r/styles/default/logomark_remix-demo.json | 2 +- .../styles/default/logomark_scales-demo.json | 2 +- .../styles/default/logomark_signal-demo.json | 2 +- .../default/logomark_sugarless-demo.json | 2 +- .../r/styles/default/magnify-app-icons.json | 12 + .../r/styles/default/marquee-section.json | 12 + apps/www/public/r/styles/default/marquee.json | 3 + .../r/styles/default/onboarding-guide.json | 12 + .../r/styles/default/packages-marquee.json | 12 + .../planfoundry-collapsed-sidebar.json | 12 + .../r/styles/default/planfoundry-sidebar.json | 12 + .../r/styles/default/prodkt-mode-toggle.json | 12 + .../r/styles/default/rive-mode-toggle.json | 15 + apps/www/public/r/styles/default/shine.json | 3 + .../public/r/styles/default/sidebar-01.json | 8 +- .../public/r/styles/default/sidebar-02.json | 8 +- .../public/r/styles/default/sidebar-03.json | 4 +- .../public/r/styles/default/sidebar-04.json | 4 +- .../public/r/styles/default/sidebar-05.json | 6 +- .../public/r/styles/default/sidebar-06.json | 8 +- .../public/r/styles/default/sidebar-07.json | 12 +- .../public/r/styles/default/sidebar-08.json | 12 +- .../public/r/styles/default/sidebar-09.json | 6 +- .../public/r/styles/default/sidebar-10.json | 16 +- .../public/r/styles/default/sidebar-11.json | 4 +- .../public/r/styles/default/sidebar-12.json | 10 +- .../public/r/styles/default/sidebar-13.json | 4 +- .../public/r/styles/default/sidebar-14.json | 4 +- .../public/r/styles/default/sidebar-15.json | 22 +- .../r/styles/default/sidebar-controlled.json | 2 +- .../public/r/styles/default/sidebar-demo.json | 2 +- .../r/styles/default/sidebar-footer.json | 2 +- .../styles/default/sidebar-group-action.json | 2 +- .../default/sidebar-group-collapsible.json | 2 +- .../r/styles/default/sidebar-group.json | 2 +- .../r/styles/default/sidebar-header.json | 2 +- .../r/styles/default/sidebar-menu-action.json | 2 +- .../r/styles/default/sidebar-menu-badge.json | 2 +- .../default/sidebar-menu-collapsible.json | 2 +- .../r/styles/default/sidebar-menu-sub.json | 2 +- .../public/r/styles/default/sidebar-menu.json | 2 +- .../public/r/styles/default/sidebar-rsc.json | 2 +- apps/www/public/r/styles/default/sink.json | 132 +- .../public/r/styles/default/site-header.json | 12 + .../public/r/styles/default/site-hero.json | 12 + .../r/styles/default/storybook-cta.json | 12 + .../public/r/styles/default/supabase-cta.json | 12 + .../styles/default/technology-cloud-demo.json | 2 +- .../r/styles/default/technology-cloud.json | 12 + .../r/styles/default/theme-switcher.json | 12 + .../www/public/r/styles/default/timecard.json | 12 + apps/www/public/r/styles/default/toast.json | 2 +- .../public/r/styles/default/tracer-card.json | 12 + apps/www/public/r/styles/default/tracer.json | 3 + .../public/r/styles/default/use-ripple.json | 9 + .../r/styles/default/use-sidebar-toggle.json | 3 + .../public/r/styles/default/use-toast.json | 2 +- .../r/styles/default/web-app-01-layout.json | 96 + .../public/r/styles/default/web-app-01.json | 3 - .../r/styles/new-york/add-action-popout.json | 12 + .../new-york/animated-collaboration.json | 12 + .../r/styles/new-york/app-icons-section.json | 12 + .../styles/new-york/bento-grid-uno-demo.json | 2 +- .../r/styles/new-york/bento-grid-uno.json | 12 + .../r/styles/new-york/button-variants.json | 5 +- apps/www/public/r/styles/new-york/button.json | 2 +- .../public/r/styles/new-york/buttonUtils.json | 5 +- .../r/styles/new-york/buttonVariants.json | 4 +- .../r/styles/new-york/carousel-plugin.json | 2 +- .../public/r/styles/new-york/carousel.json | 2 +- .../r/styles/new-york/client-shuffle.json | 12 + .../new-york/config-theme-switcher.json | 12 + .../styles/new-york/creative-tab-slider.json | 12 + .../new-york/designer-marks-button.json | 12 + .../r/styles/new-york/designer-marks.json | 12 + .../r/styles/new-york/effect-ripple.json | 12 + .../www/public/r/styles/new-york/fade-in.json | 12 + .../public/r/styles/new-york/fade-out.json | 12 + .../new-york/floating-create-dialog.json | 12 + .../new-york/flows-compact-sidebar.json | 12 + .../new-york/flows-floating-topbar.json | 12 + .../public/r/styles/new-york/footer-01.json | 12 + .../r/styles/new-york/github-stars.json | 12 + .../r/styles/new-york/jump-to-section.json | 36 + .../new-york/keyboard-shortcut-key.json | 12 + .../new-york/keyboard-shortcut-multikey.json | 12 + .../r/styles/new-york/learner-badge.json | 12 + .../r/styles/new-york/login-nexsale.json | 15 +- .../r/styles/new-york/logo-cloud-01.json | 12 + .../r/styles/new-york/logo-context.json | 12 + .../r/styles/new-york/logo-shuffle.json | 12 + .../r/styles/new-york/logo_craft-demo.json | 2 +- .../r/styles/new-york/logo_olio-demo.json | 2 +- .../new-york/logo_planfoundry-demo.json | 2 +- .../r/styles/new-york/logo_scales-demo.json | 2 +- .../new-york/logomark_ampersand-demo.json | 2 +- .../styles/new-york/logomark_craft-demo.json | 2 +- .../new-york/logomark_digidoc-demo.json | 2 +- .../styles/new-york/logomark_explor-demo.json | 2 +- .../styles/new-york/logomark_flows-demo.json | 2 +- .../styles/new-york/logomark_leveln-demo.json | 2 +- .../r/styles/new-york/logomark_olio-demo.json | 2 +- .../new-york/logomark_planfoundry-demo.json | 2 +- .../styles/new-york/logomark_remix-demo.json | 2 +- .../styles/new-york/logomark_scales-demo.json | 2 +- .../styles/new-york/logomark_signal-demo.json | 2 +- .../new-york/logomark_sugarless-demo.json | 2 +- .../r/styles/new-york/magnify-app-icons.json | 12 + .../r/styles/new-york/marquee-section.json | 12 + .../www/public/r/styles/new-york/marquee.json | 3 + .../r/styles/new-york/onboarding-guide.json | 12 + .../r/styles/new-york/packages-marquee.json | 12 + .../planfoundry-collapsed-sidebar.json | 12 + .../styles/new-york/planfoundry-sidebar.json | 12 + .../r/styles/new-york/prodkt-mode-toggle.json | 12 + .../r/styles/new-york/rive-mode-toggle.json | 15 + apps/www/public/r/styles/new-york/shine.json | 3 + .../public/r/styles/new-york/site-header.json | 12 + .../public/r/styles/new-york/site-hero.json | 12 + .../r/styles/new-york/storybook-cta.json | 12 + .../r/styles/new-york/supabase-cta.json | 12 + .../new-york/technology-cloud-demo.json | 2 +- .../r/styles/new-york/technology-cloud.json | 12 + .../r/styles/new-york/theme-switcher.json | 12 + .../public/r/styles/new-york/timecard.json | 12 + .../public/r/styles/new-york/tracer-card.json | 12 + apps/www/public/r/styles/new-york/tracer.json | 3 + .../public/r/styles/new-york/use-ripple.json | 9 + .../r/styles/new-york/use-sidebar-toggle.json | 3 + .../r/styles/new-york/web-app-01-layout.json | 96 + .../public/r/styles/new-york/web-app-01.json | 3 - apps/www/public/r/themes.css | 76 +- apps/www/public/r/themes/Mauve.json | 58 + apps/www/public/r/themes/Olive.json | 58 + apps/www/public/r/themes/Sage.json | 58 + apps/www/public/r/themes/Sand.json | 58 + apps/www/public/r/themes/gray.json | 68 +- apps/www/public/r/themes/neutral.json | 58 - apps/www/public/r/themes/slate.json | 68 +- apps/www/public/r/themes/stone.json | 58 - apps/www/public/r/themes/zinc.json | 58 - .../download-01/components/download-01.tsx | 2 +- .../components/index.tsx | 2 +- .../blocks/effect-jump-to-section-01/page.tsx | 2 +- .../blocks/login-01/components/login-form.tsx | 10 +- .../registry/default/blocks/login-01/page.tsx | 2 +- .../blocks/login-02/components/login-form.tsx | 6 +- .../registry/default/blocks/login-02/page.tsx | 2 +- .../blocks/login-03/components/login-form.tsx | 10 +- .../registry/default/blocks/login-03/page.tsx | 2 +- .../blocks/login-04/components/login-form.tsx | 10 +- .../registry/default/blocks/login-04/page.tsx | 2 +- .../blocks/login-05/components/login-form.tsx | 8 +- .../registry/default/blocks/login-05/page.tsx | 2 +- .../assets/nexsale_background__sales.avif | Bin 555123 -> 0 bytes .../login-nexsale/components/login-form.tsx | 48 +- .../default/blocks/login-nexsale/page.tsx | 2 +- .../sidebar-01/components/app-sidebar.tsx | 6 +- .../sidebar-01/components/search-form.tsx | 4 +- .../components/version-switcher.tsx | 4 +- .../default/blocks/sidebar-01/page.tsx | 8 +- .../sidebar-02/components/app-sidebar.tsx | 8 +- .../sidebar-02/components/search-form.tsx | 4 +- .../components/version-switcher.tsx | 4 +- .../default/blocks/sidebar-02/page.tsx | 8 +- .../sidebar-03/components/app-sidebar.tsx | 2 +- .../default/blocks/sidebar-03/page.tsx | 8 +- .../sidebar-04/components/app-sidebar.tsx | 2 +- .../default/blocks/sidebar-04/page.tsx | 8 +- .../sidebar-05/components/app-sidebar.tsx | 6 +- .../sidebar-05/components/search-form.tsx | 4 +- .../default/blocks/sidebar-05/page.tsx | 8 +- .../sidebar-06/components/app-sidebar.tsx | 6 +- .../blocks/sidebar-06/components/nav-main.tsx | 4 +- .../components/sidebar-opt-in-form.tsx | 6 +- .../default/blocks/sidebar-06/page.tsx | 8 +- .../sidebar-07/components/app-sidebar.tsx | 10 +- .../blocks/sidebar-07/components/nav-main.tsx | 4 +- .../sidebar-07/components/nav-projects.tsx | 4 +- .../blocks/sidebar-07/components/nav-user.tsx | 6 +- .../sidebar-07/components/team-switcher.tsx | 4 +- .../default/blocks/sidebar-07/page.tsx | 8 +- .../sidebar-08/components/app-sidebar.tsx | 10 +- .../blocks/sidebar-08/components/nav-main.tsx | 4 +- .../sidebar-08/components/nav-projects.tsx | 4 +- .../sidebar-08/components/nav-secondary.tsx | 2 +- .../blocks/sidebar-08/components/nav-user.tsx | 6 +- .../default/blocks/sidebar-08/page.tsx | 8 +- .../sidebar-09/components/app-sidebar.tsx | 8 +- .../blocks/sidebar-09/components/nav-user.tsx | 6 +- .../default/blocks/sidebar-09/page.tsx | 8 +- .../sidebar-10/components/app-sidebar.tsx | 12 +- .../sidebar-10/components/nav-actions.tsx | 6 +- .../sidebar-10/components/nav-favorites.tsx | 4 +- .../blocks/sidebar-10/components/nav-main.tsx | 2 +- .../sidebar-10/components/nav-secondary.tsx | 2 +- .../sidebar-10/components/nav-workspaces.tsx | 4 +- .../sidebar-10/components/team-switcher.tsx | 4 +- .../default/blocks/sidebar-10/page.tsx | 10 +- .../sidebar-11/components/app-sidebar.tsx | 4 +- .../default/blocks/sidebar-11/page.tsx | 8 +- .../sidebar-12/components/app-sidebar.tsx | 8 +- .../sidebar-12/components/calendars.tsx | 4 +- .../sidebar-12/components/date-picker.tsx | 4 +- .../blocks/sidebar-12/components/nav-user.tsx | 6 +- .../default/blocks/sidebar-12/page.tsx | 8 +- .../sidebar-13/components/settings-dialog.tsx | 8 +- .../default/blocks/sidebar-13/page.tsx | 2 +- .../sidebar-14/components/app-sidebar.tsx | 2 +- .../default/blocks/sidebar-14/page.tsx | 6 +- .../sidebar-15/components/calendars.tsx | 4 +- .../sidebar-15/components/date-picker.tsx | 4 +- .../sidebar-15/components/nav-favorites.tsx | 4 +- .../blocks/sidebar-15/components/nav-main.tsx | 2 +- .../sidebar-15/components/nav-secondary.tsx | 2 +- .../blocks/sidebar-15/components/nav-user.tsx | 6 +- .../sidebar-15/components/nav-workspaces.tsx | 4 +- .../sidebar-15/components/sidebar-left.tsx | 12 +- .../sidebar-15/components/sidebar-right.tsx | 8 +- .../sidebar-15/components/team-switcher.tsx | 4 +- .../default/blocks/sidebar-15/page.tsx | 10 +- .../default/examples/bento-grid-uno-demo.tsx | 7 +- .../default/examples/carousel-plugin.tsx | 32 +- .../default/examples/logo_craft-demo.tsx | 2 +- .../default/examples/logo_olio-demo.tsx | 2 +- .../examples/logo_planfoundry-demo.tsx | 2 +- .../default/examples/logo_scales-demo.tsx | 2 +- .../examples/logomark_ampersand-demo.tsx | 2 +- .../default/examples/logomark_craft-demo.tsx | 2 +- .../examples/logomark_digidoc-demo.tsx | 2 +- .../default/examples/logomark_explor-demo.tsx | 2 +- .../default/examples/logomark_flows-demo.tsx | 2 +- .../default/examples/logomark_leveln-demo.tsx | 2 +- .../default/examples/logomark_olio-demo.tsx | 2 +- .../examples/logomark_planfoundry-demo.tsx | 2 +- .../default/examples/logomark_remix-demo.tsx | 2 +- .../default/examples/logomark_scales-demo.tsx | 2 +- .../default/examples/logomark_signal-demo.tsx | 2 +- .../examples/logomark_sugarless-demo.tsx | 2 +- .../examples/technology-cloud-demo.tsx | 12 +- apps/www/registry/default/hooks/use-toast.ts | 2 +- .../default/icons/access-control-icon.tsx | 64 - .../default/icons/adobe-illustrator.tsx | 31 - .../registry/default/icons/amazon-icon.tsx | 40 - apps/www/registry/default/icons/astro.tsx | 20 - .../registry/default/icons/atlassian-icon.tsx | 26 - .../default/icons/authentication-icon.tsx | 24 - .../registry/default/icons/autodesk-icon.tsx | 22 - .../default/icons/best-practices-icon.tsx | 68 - .../registry/default/icons/black-box-icon.tsx | 68 - .../registry/default/icons/charts-icon.tsx | 22 - apps/www/registry/default/icons/cisco.tsx | 27 - .../registry/default/icons/cloud-tip-icon.tsx | 15 - .../default/icons/components-icon.tsx | 37 - .../www/registry/default/icons/confluence.tsx | 59 - apps/www/registry/default/icons/datadog.tsx | 22 - .../default/icons/datatables-icon.tsx | 22 - .../default/icons/design-system/index.tsx | 214 - apps/www/registry/default/icons/directus.tsx | 26 - apps/www/registry/default/icons/docker.tsx | 30 - apps/www/registry/default/icons/figma.tsx | 36 - .../www/registry/default/icons/forms-icon.tsx | 23 - apps/www/registry/default/icons/gitbook.tsx | 20 - .../registry/default/icons/github-icon.tsx | 23 - apps/www/registry/default/icons/ibm-icon.tsx | 20 - apps/www/registry/default/icons/ideanote.tsx | 24 - .../registry/default/icons/identity-icon.tsx | 66 - apps/www/registry/default/icons/index.ts | 100 - .../icons/infinite-scalability-icon.tsx | 68 - .../default/icons/integration-icons/ably.tsx | 39 - .../icons/integration-icons/appwrite.tsx | 24 - .../icons/integration-icons/atlassian.tsx | 37 - .../default/icons/integration-icons/auth0.tsx | 20 - .../icons/integration-icons/aws-cognito.tsx | 55 - .../icons/integration-icons/chakra.tsx | 46 - .../icons/integration-icons/directus.tsx | 22 - .../default/icons/integration-icons/dp.tsx | 33 - .../icons/integration-icons/elide-graphql.tsx | 49 - .../default/icons/integration-icons/elide.tsx | 22 - .../icons/integration-icons/firebase.tsx | 125 - .../icons/integration-icons/graphql.tsx | 42 - .../icons/integration-icons/hasura.tsx | 22 - .../icons/integration-icons/headless.tsx | 24 - .../icons/integration-icons/hook-form.tsx | 38 - .../icons/integration-icons/hygraph.tsx | 22 - .../default/icons/integration-icons/index.ts | 56 - .../icons/integration-icons/json-api.tsx | 28 - .../default/icons/integration-icons/kbar.tsx | 59 - .../default/icons/integration-icons/kinde.tsx | 23 - .../icons/integration-icons/mantine.tsx | 35 - .../icons/integration-icons/medusa.tsx | 33 - .../icons/integration-icons/mongodb.tsx | 27 - .../icons/integration-icons/ms-sql-server.tsx | 24 - .../default/icons/integration-icons/mui.tsx | 25 - .../default/icons/integration-icons/mysql.tsx | 27 - .../default/icons/integration-icons/nest.tsx | 20 - .../icons/integration-icons/nextjs.tsx | 90 - .../default/icons/integration-icons/okta.tsx | 24 - .../icons/integration-icons/oracle.tsx | 27 - .../icons/integration-icons/pocketbase.tsx | 53 - .../default/icons/integration-icons/react.tsx | 42 - .../default/icons/integration-icons/remix.tsx | 26 - .../integration-icons/rest-without-text.tsx | 31 - .../default/icons/integration-icons/rest.tsx | 24 - .../icons/integration-icons/sanity.tsx | 27 - .../icons/integration-icons/shadcn-ui.tsx | 25 - .../default/icons/integration-icons/slack.tsx | 32 - .../icons/integration-icons/sqlite.tsx | 44 - .../integration-icons/strapi-with-text.tsx | 35 - .../icons/integration-icons/strapi.tsx | 38 - .../integration-icons/supabase-with-text.tsx | 57 - .../icons/integration-icons/supabase.tsx | 53 - .../icons/integration-icons/tailwindcss.tsx | 21 - .../icons/integration-icons/usegenerated.tsx | 87 - .../default/icons/integration-icons/vite.tsx | 49 - .../default/icons/interfaces-icon.tsx | 66 - apps/www/registry/default/icons/list-icon.tsx | 22 - apps/www/registry/default/icons/lit.tsx | 24 - .../registry/default/icons/logomark_astro.tsx | 22 - .../registry/default/icons/logomark_biome.tsx | 20 - .../registry/default/icons/logomark_bun.tsx | 59 - .../default/icons/logomark_chroma.tsx | 22 - .../default/icons/logomark_docker.tsx | 20 - .../registry/default/icons/logomark_figma.tsx | 36 - .../default/icons/logomark_nodejs.tsx | 83 - .../default/icons/logomark_posthog.tsx | 29 - .../registry/default/icons/logomark_react.tsx | 20 - .../default/icons/logomark_sentry.tsx | 19 - .../default/icons/logomark_shadcn.tsx | 33 - .../default/icons/logomark_storybook.tsx | 33 - .../icons/logomark_styledictionary.tsx | 47 - .../default/icons/logomark_supabase.tsx | 52 - .../default/icons/logomark_swagger.tsx | 28 - .../default/icons/logomark_tailwind.tsx | 22 - .../default/icons/logomark_turborepo.tsx | 104 - .../default/icons/logomark_typescript.tsx | 24 - .../default/icons/logomark_vercel.tsx | 18 - .../registry/default/icons/logomark_vite.tsx | 58 - apps/www/registry/default/icons/meta-icon.tsx | 40 - .../registry/default/icons/monitor-icon.tsx | 61 - .../default/icons/no-vendor-lockin-icon.tsx | 66 - apps/www/registry/default/icons/pendo.tsx | 26 - apps/www/registry/default/icons/postmark.tsx | 30 - .../default/icons/pro-services-icon.tsx | 65 - .../default/icons/prodkt-navigation/index.tsx | 162 - .../registry/default/icons/providers-icon.tsx | 94 - apps/www/registry/default/icons/react.tsx | 39 - .../registry/default/icons/routes-icon.tsx | 35 - .../default/icons/salesforce-icon.tsx | 26 - apps/www/registry/default/icons/scales.tsx | 775 - .../registry/default/icons/security-icon.tsx | 68 - .../default/icons/self-hosted-icon.tsx | 69 - apps/www/registry/default/icons/starlight.tsx | 61 - apps/www/registry/default/icons/storybook.tsx | 53 - apps/www/registry/default/icons/stripe.tsx | 22 - apps/www/registry/default/icons/supernova.tsx | 22 - .../registry/default/icons/support-icon.tsx | 64 - .../registry/default/icons/timeline-icon.tsx | 76 - .../registry/default/icons/tokens-studio.tsx | 29 - apps/www/registry/default/icons/turborepo.tsx | 117 - .../registry/default/icons/upwork-icon.tsx | 30 - apps/www/registry/default/icons/zendesk.tsx | 19 - .../registry/default/internal/login-01.tsx | 8 +- .../registry/default/internal/sidebar-01.tsx | 10 +- .../registry/default/internal/sidebar-02.tsx | 12 +- .../registry/default/internal/sidebar-03.tsx | 10 +- .../registry/default/internal/sidebar-04.tsx | 6 +- .../registry/default/internal/sidebar-05.tsx | 10 +- .../registry/default/internal/sidebar-06.tsx | 12 +- .../registry/default/internal/sidebar-07.tsx | 12 +- .../registry/default/internal/sidebar-08.tsx | 12 +- .../registry/default/internal/sidebar-09.tsx | 14 +- .../registry/default/internal/sidebar-10.tsx | 14 +- .../registry/default/internal/sidebar-11.tsx | 8 +- .../registry/default/internal/sidebar-12.tsx | 14 +- .../registry/default/internal/sidebar-13.tsx | 8 +- .../registry/default/internal/sidebar-14.tsx | 4 +- .../registry/default/internal/sidebar-15.tsx | 14 +- .../default/internal/sidebar-controlled.tsx | 4 +- .../default/internal/sidebar-demo.tsx | 2 +- .../default/internal/sidebar-footer.tsx | 4 +- .../default/internal/sidebar-group-action.tsx | 2 +- .../internal/sidebar-group-collapsible.tsx | 4 +- .../default/internal/sidebar-group.tsx | 2 +- .../default/internal/sidebar-header.tsx | 4 +- .../default/internal/sidebar-menu-action.tsx | 4 +- .../default/internal/sidebar-menu-badge.tsx | 2 +- .../internal/sidebar-menu-collapsible.tsx | 4 +- .../default/internal/sidebar-menu-sub.tsx | 2 +- .../default/internal/sidebar-menu.tsx | 2 +- .../registry/default/internal/sidebar-rsc.tsx | 2 +- .../sink/components/accordion-demo.tsx | 2 +- .../internal/sink/components/alert-demo.tsx | 2 +- .../sink/components/alert-dialog-demo.tsx | 4 +- .../internal/sink/components/app-sidebar.tsx | 10 +- .../sink/components/aspect-ratio-demo.tsx | 2 +- .../internal/sink/components/avatar-demo.tsx | 2 +- .../internal/sink/components/badge-demo.tsx | 2 +- .../sink/components/badge-destructive.tsx | 2 +- .../sink/components/badge-outline.tsx | 2 +- .../sink/components/badge-secondary.tsx | 2 +- .../sink/components/breadcrumb-demo.tsx | 4 +- .../internal/sink/components/button-demo.tsx | 2 +- .../sink/components/button-destructive.tsx | 2 +- .../internal/sink/components/button-ghost.tsx | 2 +- .../internal/sink/components/button-link.tsx | 2 +- .../sink/components/button-loading.tsx | 2 +- .../sink/components/button-outline.tsx | 2 +- .../sink/components/button-secondary.tsx | 2 +- .../sink/components/button-with-icon.tsx | 2 +- .../sink/components/calendar-demo.tsx | 2 +- .../internal/sink/components/card-demo.tsx | 6 +- .../sink/components/carousel-demo.tsx | 4 +- .../sink/components/checkbox-demo.tsx | 2 +- .../sink/components/collapsible-demo.tsx | 4 +- .../sink/components/combobox-demo.tsx | 6 +- .../internal/sink/components/command-demo.tsx | 2 +- .../sink/components/component-wrapper.tsx | 2 +- .../sink/components/context-menu-demo.tsx | 2 +- .../sink/components/date-picker-demo.tsx | 6 +- .../internal/sink/components/dialog-demo.tsx | 8 +- .../internal/sink/components/drawer-demo.tsx | 4 +- .../sink/components/dropdown-menu-demo.tsx | 4 +- .../sink/components/hover-card-demo.tsx | 6 +- .../internal/sink/components/input-demo.tsx | 2 +- .../sink/components/input-otp-demo.tsx | 2 +- .../internal/sink/components/label-demo.tsx | 4 +- .../internal/sink/components/menubar-demo.tsx | 2 +- .../internal/sink/components/nav-main.tsx | 4 +- .../internal/sink/components/nav-projects.tsx | 4 +- .../internal/sink/components/nav-user.tsx | 6 +- .../sink/components/navigation-menu-demo.tsx | 2 +- .../sink/components/pagination-demo.tsx | 2 +- .../internal/sink/components/popover-demo.tsx | 8 +- .../sink/components/progress-demo.tsx | 2 +- .../sink/components/radio-group-demo.tsx | 4 +- .../sink/components/resizable-handle.tsx | 2 +- .../sink/components/scroll-area-demo.tsx | 4 +- .../internal/sink/components/select-demo.tsx | 2 +- .../sink/components/separator-demo.tsx | 2 +- .../internal/sink/components/sheet-demo.tsx | 8 +- .../sink/components/skeleton-demo.tsx | 2 +- .../internal/sink/components/slider-demo.tsx | 2 +- .../internal/sink/components/sonner-demo.tsx | 2 +- .../internal/sink/components/switch-demo.tsx | 4 +- .../internal/sink/components/table-demo.tsx | 2 +- .../internal/sink/components/tabs-demo.tsx | 10 +- .../sink/components/team-switcher.tsx | 4 +- .../sink/components/textarea-demo.tsx | 2 +- .../internal/sink/components/toast-demo.tsx | 6 +- .../internal/sink/components/toggle-demo.tsx | 2 +- .../sink/components/toggle-disabled.tsx | 2 +- .../sink/components/toggle-group-demo.tsx | 2 +- .../sink/components/toggle-outline.tsx | 2 +- .../sink/components/toggle-with-text.tsx | 2 +- .../internal/sink/components/tooltip-demo.tsx | 4 +- .../registry/default/internal/sink/page.tsx | 128 +- .../registry/default/lib/button-variants.ts | 170 +- apps/www/registry/default/lib/buttonUtils.ts | 37 +- .../prodkt/assets/rive/nexsale_features.riv | Bin 0 -> 3274721 bytes .../assets/rive/nexsale_mode_toggle.riv | Bin 0 -> 96431 bytes .../prodkt/assets/rive/nexsaleadvert1.riv | Bin 0 -> 4859093 bytes .../prodkt/bento-grid-uno/feature-card.tsx | 10 +- .../prodkt/bento-grid-uno/logomarks.tsx | 42 +- .../default/prodkt/bento-grid-uno/page.tsx | 30 +- .../bento-grid-uno/technology-marquee.tsx | 123 +- .../default/prodkt/client-shuffle.tsx | 2 +- .../registry/default/prodkt/logo-shuffle.tsx | 66 +- .../registry/default/prodkt/logo_craft.tsx | 78 - .../default/prodkt/logo_planfoundry.tsx | 40 - .../registry/default/prodkt/logo_scales.tsx | 114 - .../default/prodkt/marquee-section.tsx | 41 +- .../default/prodkt/packages-marquee.tsx | 130 +- .../default/prodkt/rive/mode-toggle/index.tsx | 85 + .../prodkt/sections/logo-cloud-01/clients.tsx | 4 +- .../prodkt/sections/logo-cloud-01/index.tsx | 2 +- .../default/prodkt/site-header/index.tsx | 1 - .../default/prodkt/site-header/nav.tsx | 19 +- .../registry/default/prodkt/storybook-cta.tsx | 2 +- .../registry/default/prodkt/supabase-cta.tsx | 18 +- apps/www/registry/default/ui/button.tsx | 49 +- apps/www/registry/default/ui/carousel.tsx | 56 +- apps/www/registry/icons/acrobat.tsx | 24 - apps/www/registry/icons/adobe-illustrator.tsx | 31 - apps/www/registry/icons/amazon-icon.tsx | 40 - apps/www/registry/icons/atlassian-icon.tsx | 26 - apps/www/registry/icons/black-box-icon.tsx | 68 - apps/www/registry/icons/cisco-icon.tsx | 30 - apps/www/registry/icons/cisco.tsx | 71 - apps/www/registry/icons/coke.tsx | 21 - apps/www/registry/icons/datadog.tsx | 22 - apps/www/registry/icons/datatables-icon.tsx | 22 - apps/www/registry/icons/deloitte-icon.tsx | 43 - .../registry/icons/design-system/index.tsx | 1278 ++ apps/www/registry/icons/directus.tsx | 26 - apps/www/registry/icons/dominos.tsx | 27 - apps/www/registry/icons/eminem.tsx | 23 - apps/www/registry/icons/figma.tsx | 36 - apps/www/registry/icons/github-icon.tsx | 23 - apps/www/registry/icons/google-analytics.tsx | 35 - apps/www/registry/icons/hellsangels.tsx | 33 - apps/www/registry/icons/hm.tsx | 30 - apps/www/registry/icons/hp.tsx | 22 - apps/www/registry/icons/ideanote.tsx | 24 - apps/www/registry/icons/index.ts | 80 +- .../icons/integration-icons/airtable.tsx | 33 - .../registry/icons/integration-icons/antd.tsx | 105 - .../icons/integration-icons/appwrite.tsx | 24 - .../icons/integration-icons/atlassian.tsx | 37 - .../icons/integration-icons/auth-js.tsx | 34 - .../azure-active-directory.tsx | 22 - .../icons/integration-icons/clerk.tsx | 55 - .../icons/integration-icons/custom-auth.tsx | 23 - .../icons/integration-icons/directus.tsx | 22 - .../icons/integration-icons/elide.tsx | 22 - .../icons/integration-icons/entrefine.tsx | 33 - .../registry/icons/integration-icons/expo.tsx | 22 - .../icons/integration-icons/google.tsx | 32 - .../icons/integration-icons/graphql.tsx | 42 - .../icons/integration-icons/hasura.tsx | 22 - .../icons/integration-icons/hook-form.tsx | 38 - .../icons/integration-icons/hygraph.tsx | 22 - .../registry/icons/integration-icons/index.ts | 56 - .../registry/icons/integration-icons/kbar.tsx | 59 - .../icons/integration-icons/mantine.tsx | 35 - .../icons/integration-icons/mongodb.tsx | 27 - .../icons/integration-icons/ms-sql-server.tsx | 24 - .../registry/icons/integration-icons/mui.tsx | 25 - .../icons/integration-icons/mysql.tsx | 27 - .../icons/integration-icons/nest-query.tsx | 146 - .../icons/integration-icons/nextjs.tsx | 90 - .../icons/integration-icons/oracle.tsx | 27 - .../icons/integration-icons/postgresql.tsx | 34 - .../icons/integration-icons/react.tsx | 42 - .../icons/integration-icons/remix.tsx | 26 - .../icons/integration-icons/shadcn-ui.tsx | 25 - .../icons/integration-icons/strapi.tsx | 38 - .../integration-icons/supabase-with-text.tsx | 57 - .../icons/integration-icons/supabase.tsx | 53 - .../icons/integration-icons/usegenerated.tsx | 87 - .../registry/icons/integration-icons/vite.tsx | 49 - apps/www/registry/icons/intel-icon.tsx | 33 - apps/www/registry/icons/jp-morgan-icon.tsx | 20 - apps/www/registry/icons/lit.tsx | 24 - apps/www/registry/icons/oracle-icon.tsx | 19 - apps/www/registry/icons/posthog.tsx | 43 - apps/www/registry/icons/revolutionvodka.tsx | 29 - apps/www/registry/icons/samsung.tsx | 21 - apps/www/registry/icons/shady.tsx | 23 - apps/www/registry/icons/starlight.tsx | 61 - apps/www/registry/icons/stencil.tsx | 27 - apps/www/registry/icons/storybook.tsx | 53 - apps/www/registry/icons/stripe.tsx | 22 - apps/www/registry/icons/style-dictionary.tsx | 47 - apps/www/registry/icons/supabase.tsx | 57 - apps/www/registry/icons/supernova.tsx | 22 - apps/www/registry/icons/toyota.tsx | 21 - apps/www/registry/icons/truwhip.tsx | 21 - apps/www/registry/icons/upwork-icon.tsx | 30 - .../utilities-icon.tsx} | 0 .../www/registry/icons/utilities-icon.tsx.tsx | 53 - apps/www/registry/icons/wizards-icon.tsx | 22 - apps/www/registry/icons/zendesk.tsx | 19 - apps/www/registry/index.ts | 4 + apps/www/registry/logos/index.tsx | 142 + .../acrobat.tsx => logos/logo_acrobat.tsx} | 5 +- .../logo_adobe-illustrator.tsx} | 3 +- .../{icons/astro.tsx => logos/logo_astro.tsx} | 2 + .../icons/cisco.tsx => logos/logo_cisco.tsx} | 2 + .../coke.tsx => logos/logo_cocacola.tsx} | 0 .../logo_confluence.tsx} | 3 +- .../{new-york/prodkt => logos}/logo_craft.tsx | 2 +- .../datadog.tsx => logos/logo_datadog.tsx} | 3 +- .../directus.tsx => logos/logo_directus.tsx} | 3 +- .../docker.tsx => logos/logo_docker.tsx} | 3 +- .../dominos.tsx => logos/logo_dominos.tsx} | 2 +- .../eminem.tsx => logos/logo_eminem.tsx} | 0 .../icons/figma.tsx => logos/logo_figma.tsx} | 3 +- .../gitbook.tsx => logos/logo_gitbook.tsx} | 3 +- .../logo_google-analytics.tsx} | 3 +- .../logo_hellsangels.tsx} | 0 .../icons/hm.tsx => logos/logo_hm.tsx} | 0 .../icons/hp.tsx => logos/logo_hp.tsx} | 0 .../ideanote.tsx => logos/logo_ideanote.tsx} | 3 +- .../nexsale.tsx => logos/logo_nexsale.tsx} | 0 .../{default/prodkt => logos}/logo_olio.tsx | 2 +- .../{icons/pendo.tsx => logos/logo_pendo.tsx} | 3 +- .../prodkt => logos}/logo_planfoundry.tsx | 2 +- .../posthog.tsx => logos/logo_posthog.tsx} | 3 +- .../postmark.tsx => logos/logo_postmark.tsx} | 3 +- .../{icons/react.tsx => logos/logo_react.tsx} | 3 +- .../logo_revolutionvodka.tsx} | 0 .../samsung.tsx => logos/logo_samsung.tsx} | 0 .../scales.tsx => logos/logo_scales.tsx} | 4 +- .../icons/shady.tsx => logos/logo_shady.tsx} | 0 .../logo_starlight.tsx} | 3 +- .../stencil.tsx => logos/logo_stencil.tsx} | 3 +- .../logo_storybook.tsx} | 3 +- .../logo_strapi.tsx} | 4 +- .../stripe.tsx => logos/logo_stripe.tsx} | 3 +- .../logo_style-dictionary.tsx} | 1 - .../supabase.tsx => logos/logo_supabase.tsx} | 5 +- .../logo_supernova.tsx} | 3 +- .../logo_tokens-studio.tsx} | 3 +- .../toyota.tsx => logos/logo_toyota.tsx} | 0 .../truwhip.tsx => logos/logo_truwhip.tsx} | 0 .../logo_turborepo.tsx} | 3 +- .../zendesk.tsx => logos/logo_zendesk.tsx} | 3 +- .../ably.tsx => logos/logomark_ably.tsx} | 4 +- .../logomark_airtable.tsx} | 4 +- .../logomark_amazon-icon.tsx} | 4 +- .../prodkt => logos}/logomark_ampersand.tsx | 0 .../antd.tsx => logos/logomark_antd.tsx} | 4 +- .../logomark_appwrite.tsx} | 4 +- .../{icons => logos}/logomark_astro.tsx | 0 .../logomark_atlassian.tsx} | 4 +- .../logomark_auth-js.tsx} | 4 +- .../auth0.tsx => logos/logomark_auth0.tsx} | 4 +- .../logomark_autodesk.tsx} | 4 +- .../logomark_aws-cognito.tsx} | 4 +- .../logomark_azure-active-directory.tsx} | 6 +- .../{icons => logos}/logomark_biome.tsx | 0 .../logomark_black-box.tsx} | 4 +- .../{icons => logos}/logomark_bun.tsx | 0 .../chakra.tsx => logos/logomark_chakra.tsx} | 4 +- .../{icons => logos}/logomark_chroma.tsx | 0 .../prodkt => logos}/logomark_chromatic.tsx | 0 .../logomark_cisco.tsx} | 4 +- .../clerk.tsx => logos/logomark_clerk.tsx} | 4 +- .../prodkt => logos}/logomark_craft.tsx | 0 .../logomark_custom-auth.tsx} | 4 +- .../logomark_datatables.tsx} | 4 +- .../logomark_deloitte.tsx} | 4 +- .../prodkt => logos}/logomark_digidoc.tsx | 0 .../prodkt => logos}/logomark_directus.tsx | 0 .../{icons => logos}/logomark_docker.tsx | 0 .../dp.tsx => logos/logomark_dp.tsx} | 4 +- .../logomark_elide-graphql.tsx} | 7 +- .../elide.tsx => logos/logomark_elide.tsx} | 7 +- .../logomark_entrefine.tsx} | 4 +- .../prodkt => logos}/logomark_explor.tsx | 0 .../expo.tsx => logos/logomark_expo.tsx} | 4 +- .../{icons => logos}/logomark_figma.tsx | 0 .../logomark_firebase.tsx} | 4 +- .../prodkt => logos}/logomark_flows.tsx | 0 .../logomark_github.tsx} | 4 +- .../google.tsx => logos/logomark_google.tsx} | 4 +- .../logomark_graphql.tsx} | 4 +- .../hasura.tsx => logos/logomark_hasura.tsx} | 4 +- .../logomark_headless.tsx} | 4 +- .../logomark_hook-form.tsx} | 4 +- .../logomark_hygraph.tsx} | 4 +- .../ibm-icon.tsx => logos/logomark_ibm.tsx} | 4 +- .../logomark_intel.tsx} | 4 +- .../logomark_jp-morgan.tsx} | 4 +- .../logomark_json-api.tsx} | 4 +- .../kbar.tsx => logos/logomark_kbar.tsx} | 4 +- .../kinde.tsx => logos/logomark_kinde.tsx} | 4 +- .../prodkt => logos}/logomark_leveln.tsx | 0 .../prodkt => logos}/logomark_lit.tsx | 0 .../logomark_mantine.tsx} | 4 +- .../medusa.tsx => logos/logomark_medusa.tsx} | 4 +- .../meta-icon.tsx => logos/logomark_meta.tsx} | 2 +- .../logomark_mongodb.tsx} | 4 +- .../logomark_ms-sql-server.tsx} | 2 - .../mui.tsx => logos/logomark_mui.tsx} | 4 +- .../mysql.tsx => logos/logomark_mysql.tsx} | 2 - .../logomark_nest-query.tsx} | 4 +- .../nest.tsx => logos/logomark_nest.tsx} | 4 +- .../prodkt => logos}/logomark_nextjs.tsx | 0 .../{icons => logos}/logomark_nodejs.tsx | 0 .../okta.tsx => logos/logomark_okta.tsx} | 4 +- .../prodkt => logos}/logomark_olio.tsx | 0 .../logomark_oracle.tsx} | 3 +- .../prodkt => logos}/logomark_partytown.tsx | 0 .../prodkt => logos}/logomark_pendo.tsx | 0 .../prodkt => logos}/logomark_planfoundry.tsx | 0 .../logomark_pocketbase.tsx} | 4 +- .../logomark_postgresql.tsx} | 4 +- .../{icons => logos}/logomark_posthog.tsx | 0 .../prodkt => logos}/logomark_radix.tsx | 0 .../{icons => logos}/logomark_react.tsx | 0 .../prodkt => logos}/logomark_remix.tsx | 0 .../logomark_rest-without-text.tsx} | 4 +- .../rest.tsx => logos/logomark_rest.tsx} | 7 +- .../logomark_salesforce.tsx} | 4 +- .../sanity.tsx => logos/logomark_sanity.tsx} | 4 +- .../prodkt => logos}/logomark_scales.tsx | 0 .../{icons => logos}/logomark_sentry.tsx | 0 .../logomark_shadcn-ui.tsx} | 4 +- .../{icons => logos}/logomark_shadcn.tsx | 0 .../prodkt => logos}/logomark_signal.tsx | 0 .../slack.tsx => logos/logomark_slack.tsx} | 4 +- .../sqlite.tsx => logos/logomark_sqlite.tsx} | 4 +- .../{icons => logos}/logomark_storybook.tsx | 0 .../prodkt => logos}/logomark_strapi.tsx | 0 .../logomark_styledictionary.tsx | 0 .../prodkt => logos}/logomark_sugarless.tsx | 0 .../{icons => logos}/logomark_supabase.tsx | 0 .../{icons => logos}/logomark_swagger.tsx | 0 .../{icons => logos}/logomark_tailwind.tsx | 0 .../logomark_tailwindcss.tsx} | 4 +- .../{icons => logos}/logomark_turborepo.tsx | 0 .../{icons => logos}/logomark_typescript.tsx | 0 .../logomark_upwork.tsx} | 4 +- .../logomark_usegenerated.tsx} | 4 +- .../{icons => logos}/logomark_vercel.tsx | 0 .../{icons => logos}/logomark_vite.tsx | 0 .../logomark_wizards.tsx} | 4 +- .../prodkt => logos}/logomark_zeplin.tsx | 0 .../blocks/content-01/components/index.tsx | 10 + .../new-york/blocks/content-01/page.tsx | 252 + .../login-nexsale/components/login-form.tsx | 36 +- .../new-york/examples/bento-grid-uno-demo.tsx | 7 +- .../new-york/examples/carousel-plugin.tsx | 32 +- .../new-york/examples/logo-cloud-demo.tsx | 9 + .../new-york/examples/logo_craft-demo.tsx | 2 +- .../new-york/examples/logo_olio-demo.tsx | 2 +- .../examples/logo_planfoundry-demo.tsx | 2 +- .../new-york/examples/logo_scales-demo.tsx | 2 +- .../examples/logomark_ampersand-demo.tsx | 2 +- .../new-york/examples/logomark_craft-demo.tsx | 2 +- .../examples/logomark_digidoc-demo.tsx | 2 +- .../examples/logomark_explor-demo.tsx | 2 +- .../new-york/examples/logomark_flows-demo.tsx | 2 +- .../examples/logomark_leveln-demo.tsx | 2 +- .../new-york/examples/logomark_olio-demo.tsx | 2 +- .../examples/logomark_planfoundry-demo.tsx | 2 +- .../new-york/examples/logomark_remix-demo.tsx | 2 +- .../examples/logomark_scales-demo.tsx | 2 +- .../examples/logomark_signal-demo.tsx | 2 +- .../examples/logomark_sugarless-demo.tsx | 2 +- .../examples/technology-cloud-demo.tsx | 11 +- .../new-york/icons/access-control-icon.tsx | 64 - apps/www/registry/new-york/icons/acrobat.tsx | 24 - apps/www/registry/new-york/icons/astro.tsx | 20 - .../new-york/icons/authentication-icon.tsx | 24 - .../registry/new-york/icons/autodesk-icon.tsx | 22 - .../new-york/icons/best-practices-icon.tsx | 68 - .../registry/new-york/icons/charts-icon.tsx | 22 - .../registry/new-york/icons/cisco-icon.tsx | 30 - .../new-york/icons/cloud-tip-icon.tsx | 15 - apps/www/registry/new-york/icons/coke.tsx | 19 - .../new-york/icons/components-icon.tsx | 37 - .../registry/new-york/icons/confluence.tsx | 59 - .../registry/new-york/icons/deloitte-icon.tsx | 43 - .../new-york/icons/design-system/index.tsx | 214 - apps/www/registry/new-york/icons/docker.tsx | 30 - apps/www/registry/new-york/icons/dominos.tsx | 127 - apps/www/registry/new-york/icons/eminem.tsx | 21 - .../registry/new-york/icons/forms-icon.tsx | 23 - apps/www/registry/new-york/icons/gitbook.tsx | 20 - .../new-york/icons/google-analytics.tsx | 35 - .../registry/new-york/icons/hellsangels.tsx | 55 - apps/www/registry/new-york/icons/hm.tsx | 32 - apps/www/registry/new-york/icons/hp.tsx | 20 - apps/www/registry/new-york/icons/ibm-icon.tsx | 20 - .../registry/new-york/icons/identity-icon.tsx | 66 - apps/www/registry/new-york/icons/index.ts | 97 - .../icons/infinite-scalability-icon.tsx | 68 - .../new-york/icons/integration-icons/ably.tsx | 39 - .../icons/integration-icons/airtable.tsx | 33 - .../new-york/icons/integration-icons/antd.tsx | 105 - .../icons/integration-icons/atlassian.tsx | 37 - .../icons/integration-icons/auth-js.tsx | 34 - .../icons/integration-icons/auth0.tsx | 20 - .../icons/integration-icons/aws-cognito.tsx | 55 - .../azure-active-directory.tsx | 22 - .../icons/integration-icons/chakra.tsx | 46 - .../icons/integration-icons/clerk.tsx | 55 - .../icons/integration-icons/custom-auth.tsx | 23 - .../icons/integration-icons/directus.tsx | 22 - .../new-york/icons/integration-icons/dp.tsx | 33 - .../icons/integration-icons/elide-graphql.tsx | 49 - .../icons/integration-icons/entrefine.tsx | 33 - .../new-york/icons/integration-icons/expo.tsx | 22 - .../icons/integration-icons/firebase.tsx | 125 - .../icons/integration-icons/google.tsx | 32 - .../icons/integration-icons/headless.tsx | 24 - .../new-york/icons/integration-icons/index.ts | 56 - .../icons/integration-icons/json-api.tsx | 28 - .../icons/integration-icons/kinde.tsx | 23 - .../icons/integration-icons/medusa.tsx | 33 - .../icons/integration-icons/nest-query.tsx | 146 - .../new-york/icons/integration-icons/nest.tsx | 20 - .../icons/integration-icons/nextjs.tsx | 90 - .../new-york/icons/integration-icons/okta.tsx | 24 - .../icons/integration-icons/oracle.tsx | 27 - .../icons/integration-icons/pocketbase.tsx | 53 - .../icons/integration-icons/postgresql.tsx | 34 - .../icons/integration-icons/react.tsx | 42 - .../icons/integration-icons/remix.tsx | 26 - .../integration-icons/rest-without-text.tsx | 31 - .../new-york/icons/integration-icons/rest.tsx | 24 - .../icons/integration-icons/sanity.tsx | 27 - .../icons/integration-icons/slack.tsx | 32 - .../icons/integration-icons/sqlite.tsx | 44 - .../integration-icons/strapi-with-text.tsx | 35 - .../icons/integration-icons/strapi.tsx | 38 - .../integration-icons/supabase-with-text.tsx | 57 - .../icons/integration-icons/supabase.tsx | 53 - .../icons/integration-icons/tailwindcss.tsx | 21 - .../new-york/icons/integration-icons/vite.tsx | 49 - .../registry/new-york/icons/intel-icon.tsx | 33 - .../new-york/icons/interfaces-icon.tsx | 66 - .../new-york/icons/jp-morgan-icon.tsx | 20 - .../www/registry/new-york/icons/list-icon.tsx | 22 - apps/www/registry/new-york/icons/lit.tsx | 24 - .../new-york/icons/logomark_astro.tsx | 22 - .../new-york/icons/logomark_biome.tsx | 20 - .../registry/new-york/icons/logomark_bun.tsx | 59 - .../new-york/icons/logomark_chroma.tsx | 22 - .../new-york/icons/logomark_docker.tsx | 20 - .../new-york/icons/logomark_figma.tsx | 36 - .../new-york/icons/logomark_nodejs.tsx | 83 - .../new-york/icons/logomark_posthog.tsx | 29 - .../new-york/icons/logomark_react.tsx | 20 - .../new-york/icons/logomark_sentry.tsx | 19 - .../new-york/icons/logomark_shadcn.tsx | 33 - .../new-york/icons/logomark_storybook.tsx | 33 - .../icons/logomark_styledictionary.tsx | 47 - .../new-york/icons/logomark_supabase.tsx | 52 - .../new-york/icons/logomark_swagger.tsx | 28 - .../new-york/icons/logomark_tailwind.tsx | 22 - .../new-york/icons/logomark_turborepo.tsx | 104 - .../new-york/icons/logomark_typescript.tsx | 24 - .../new-york/icons/logomark_vercel.tsx | 18 - .../registry/new-york/icons/logomark_vite.tsx | 58 - .../www/registry/new-york/icons/meta-icon.tsx | 40 - .../registry/new-york/icons/monitor-icon.tsx | 61 - apps/www/registry/new-york/icons/nexsale.tsx | 36 - .../new-york/icons/no-vendor-lockin-icon.tsx | 66 - .../registry/new-york/icons/oracle-icon.tsx | 19 - apps/www/registry/new-york/icons/pendo.tsx | 26 - apps/www/registry/new-york/icons/posthog.tsx | 43 - apps/www/registry/new-york/icons/postmark.tsx | 30 - .../new-york/icons/pro-services-icon.tsx | 65 - .../icons/prodkt-navigation/index.tsx | 162 - .../new-york/icons/providers-icon.tsx | 94 - apps/www/registry/new-york/icons/react.tsx | 39 - .../new-york/icons/revolutionvodka.tsx | 27 - .../registry/new-york/icons/routes-icon.tsx | 35 - .../new-york/icons/salesforce-icon.tsx | 26 - apps/www/registry/new-york/icons/samsung.tsx | 19 - apps/www/registry/new-york/icons/scales.tsx | 775 - .../registry/new-york/icons/security-icon.tsx | 68 - .../new-york/icons/self-hosted-icon.tsx | 69 - apps/www/registry/new-york/icons/shady.tsx | 23 - apps/www/registry/new-york/icons/stencil.tsx | 27 - .../new-york/icons/style-dictionary.tsx | 47 - apps/www/registry/new-york/icons/supabase.tsx | 57 - .../registry/new-york/icons/support-icon.tsx | 64 - .../registry/new-york/icons/timeline-icon.tsx | 76 - .../registry/new-york/icons/tokens-studio.tsx | 29 - apps/www/registry/new-york/icons/toyota.tsx | 35 - apps/www/registry/new-york/icons/truwhip.tsx | 19 - .../www/registry/new-york/icons/turborepo.tsx | 117 - .../new-york/icons/utilities-icon.tsx.tsx | 53 - .../registry/new-york/icons/wizards-icon.tsx | 22 - .../registry/new-york/lib/button-variants.ts | 170 +- apps/www/registry/new-york/lib/buttonUtils.ts | 37 +- .../prodkt/assets/rive/nexsale_features.riv | Bin 0 -> 3274721 bytes .../assets/rive/nexsale_mode_toggle.riv | Bin 0 -> 96431 bytes .../prodkt/assets/rive/nexsaleadvert1.riv | Bin 0 -> 4859093 bytes .../prodkt/bento-grid-uno/logomarks.tsx | 42 +- .../new-york/prodkt/bento-grid-uno/page.tsx | 28 +- .../bento-grid-uno/technology-marquee.tsx | 123 +- .../prodkt/carousel/carousel_core.tsx | 318 + .../new-york/prodkt/carousel/dotButton.tsx | 64 + .../prodkt/carousel/following-pointer.tsx | 142 + .../new-york/prodkt/carousel/index.tsx | 360 + .../carousel/original-still-solid-styles.tsx | 369 + .../registry/new-york/prodkt/carousel/tab.tsx | 28 + .../new-york/prodkt/client-shuffle.tsx | 2 +- .../registry/new-york/prodkt/logo-shuffle.tsx | 87 +- .../registry/new-york/prodkt/logo_olio.tsx | 24 - .../registry/new-york/prodkt/logo_scales.tsx | 114 - .../new-york/prodkt/logomark_ampersand.tsx | 20 - .../new-york/prodkt/logomark_craft.tsx | 57 - .../new-york/prodkt/logomark_digidoc.tsx | 20 - .../new-york/prodkt/logomark_explor.tsx | 22 - .../new-york/prodkt/logomark_flows.tsx | 20 - .../new-york/prodkt/logomark_leveln.tsx | 61 - .../new-york/prodkt/logomark_olio.tsx | 61 - .../new-york/prodkt/logomark_planfoundry.tsx | 117 - .../new-york/prodkt/logomark_remix.tsx | 458 - .../new-york/prodkt/logomark_scales.tsx | 115 - .../new-york/prodkt/logomark_signal.tsx | 139 - .../new-york/prodkt/logomark_sugarless.tsx | 20 - .../new-york/prodkt/marquee-section.tsx | 38 +- .../new-york/prodkt/packages-marquee.tsx | 178 +- .../prodkt/rive/mode-toggle/RiveLoader.js | 46 + .../prodkt/rive/mode-toggle/index.tsx | 119 + .../new-york/prodkt/rive/rive-loader.jsx | 43 + .../prodkt/sections/logo-cloud-01/clients.tsx | 2 +- .../prodkt/sections/logo-cloud-01/index.tsx | 2 +- .../new-york/prodkt/site-header/index.tsx | 1 - .../new-york/prodkt/site-header/nav.tsx | 1 - .../new-york/prodkt/storybook-cta.tsx | 2 +- .../registry/new-york/prodkt/supabase-cta.tsx | 18 +- apps/www/registry/new-york/ui/button.tsx | 57 +- apps/www/registry/new-york/ui/carousel.tsx | 54 +- apps/www/registry/new-york/ui/ripple.tsx | 85 + apps/www/registry/registry-base-colors.ts | 74 +- apps/www/registry/registry-blocks.ts | 18 +- apps/www/registry/registry-colors.ts | 272 + apps/www/registry/registry-effects.ts | 3 + apps/www/registry/registry-hooks.ts | 3 +- apps/www/registry/registry-icons.ts | 42 - apps/www/registry/registry-lib.ts | 25 +- apps/www/registry/registry-logo.ts | 441 + apps/www/registry/registry-logomark.ts | 1024 ++ apps/www/registry/registry-prodkt.ts | 219 +- apps/www/registry/schema.ts | 3 + apps/www/scripts/build-registry.mts | 161 +- apps/www/scripts/fix-import.mts | 10 +- apps/www/tailwind.config.cjs | 27 +- apps/www/tsconfig.json | 4 + packages/cli/src/utils/get-config.ts | 56 +- packages/cli/src/utils/get-project-info.ts | 9 +- packages/cli/src/utils/registry/index.ts | 44 +- packages/cli/src/utils/registry/schema.ts | 10 +- packages/sparkstack/README.md | 2 +- packages/sparkstack/src/utils/get-config.ts | 38 +- .../sparkstack/src/utils/get-project-info.ts | 6 +- .../sparkstack/src/utils/registry/index.ts | 61 +- .../sparkstack/src/utils/registry/schema.ts | 4 + .../utils/transformers/transform-import.ts | 28 + pnpm-lock.yaml | 1307 +- tailwind.config.ts | 298 +- 1039 files changed, 21289 insertions(+), 23900 deletions(-) create mode 100644 apps/www/plugins/inverted-colors/index.ts rename apps/www/{ => plugins}/motion/baseAnimations.js (100%) rename apps/www/{ => plugins}/motion/defaults.js (100%) rename apps/www/{ => plugins}/motion/index.js (100%) rename apps/www/{ => plugins}/motion/keyframes.js (100%) rename apps/www/{ => plugins}/motion/modifiers.js (100%) rename apps/www/{ => plugins}/motion/presets.js (100%) create mode 100644 apps/www/public/r/colors/Mauve.json create mode 100644 apps/www/public/r/colors/Olive.json create mode 100644 apps/www/public/r/colors/Sage.json create mode 100644 apps/www/public/r/colors/Sand.json delete mode 100644 apps/www/public/r/colors/neutral.json delete mode 100644 apps/www/public/r/colors/stone.json delete mode 100644 apps/www/public/r/colors/zinc.json create mode 100644 apps/www/public/r/styles/default/add-action-popout.json create mode 100644 apps/www/public/r/styles/default/animated-collaboration.json create mode 100644 apps/www/public/r/styles/default/app-icons-section.json create mode 100644 apps/www/public/r/styles/default/bento-grid-uno.json create mode 100644 apps/www/public/r/styles/default/client-shuffle.json create mode 100644 apps/www/public/r/styles/default/config-theme-switcher.json create mode 100644 apps/www/public/r/styles/default/creative-tab-slider.json create mode 100644 apps/www/public/r/styles/default/designer-marks-button.json create mode 100644 apps/www/public/r/styles/default/designer-marks.json create mode 100644 apps/www/public/r/styles/default/effect-ripple.json create mode 100644 apps/www/public/r/styles/default/fade-in.json create mode 100644 apps/www/public/r/styles/default/fade-out.json create mode 100644 apps/www/public/r/styles/default/floating-create-dialog.json create mode 100644 apps/www/public/r/styles/default/flows-compact-sidebar.json create mode 100644 apps/www/public/r/styles/default/flows-floating-topbar.json create mode 100644 apps/www/public/r/styles/default/footer-01.json create mode 100644 apps/www/public/r/styles/default/github-stars.json create mode 100644 apps/www/public/r/styles/default/jump-to-section.json create mode 100644 apps/www/public/r/styles/default/keyboard-shortcut-key.json create mode 100644 apps/www/public/r/styles/default/keyboard-shortcut-multikey.json create mode 100644 apps/www/public/r/styles/default/learner-badge.json create mode 100644 apps/www/public/r/styles/default/logo-cloud-01.json create mode 100644 apps/www/public/r/styles/default/logo-context.json create mode 100644 apps/www/public/r/styles/default/logo-shuffle.json create mode 100644 apps/www/public/r/styles/default/magnify-app-icons.json create mode 100644 apps/www/public/r/styles/default/marquee-section.json create mode 100644 apps/www/public/r/styles/default/onboarding-guide.json create mode 100644 apps/www/public/r/styles/default/packages-marquee.json create mode 100644 apps/www/public/r/styles/default/planfoundry-collapsed-sidebar.json create mode 100644 apps/www/public/r/styles/default/planfoundry-sidebar.json create mode 100644 apps/www/public/r/styles/default/prodkt-mode-toggle.json create mode 100644 apps/www/public/r/styles/default/rive-mode-toggle.json create mode 100644 apps/www/public/r/styles/default/site-header.json create mode 100644 apps/www/public/r/styles/default/site-hero.json create mode 100644 apps/www/public/r/styles/default/storybook-cta.json create mode 100644 apps/www/public/r/styles/default/supabase-cta.json create mode 100644 apps/www/public/r/styles/default/technology-cloud.json create mode 100644 apps/www/public/r/styles/default/theme-switcher.json create mode 100644 apps/www/public/r/styles/default/timecard.json create mode 100644 apps/www/public/r/styles/default/tracer-card.json create mode 100644 apps/www/public/r/styles/default/web-app-01-layout.json create mode 100644 apps/www/public/r/styles/new-york/add-action-popout.json create mode 100644 apps/www/public/r/styles/new-york/animated-collaboration.json create mode 100644 apps/www/public/r/styles/new-york/app-icons-section.json create mode 100644 apps/www/public/r/styles/new-york/bento-grid-uno.json create mode 100644 apps/www/public/r/styles/new-york/client-shuffle.json create mode 100644 apps/www/public/r/styles/new-york/config-theme-switcher.json create mode 100644 apps/www/public/r/styles/new-york/creative-tab-slider.json create mode 100644 apps/www/public/r/styles/new-york/designer-marks-button.json create mode 100644 apps/www/public/r/styles/new-york/designer-marks.json create mode 100644 apps/www/public/r/styles/new-york/effect-ripple.json create mode 100644 apps/www/public/r/styles/new-york/fade-in.json create mode 100644 apps/www/public/r/styles/new-york/fade-out.json create mode 100644 apps/www/public/r/styles/new-york/floating-create-dialog.json create mode 100644 apps/www/public/r/styles/new-york/flows-compact-sidebar.json create mode 100644 apps/www/public/r/styles/new-york/flows-floating-topbar.json create mode 100644 apps/www/public/r/styles/new-york/footer-01.json create mode 100644 apps/www/public/r/styles/new-york/github-stars.json create mode 100644 apps/www/public/r/styles/new-york/jump-to-section.json create mode 100644 apps/www/public/r/styles/new-york/keyboard-shortcut-key.json create mode 100644 apps/www/public/r/styles/new-york/keyboard-shortcut-multikey.json create mode 100644 apps/www/public/r/styles/new-york/learner-badge.json create mode 100644 apps/www/public/r/styles/new-york/logo-cloud-01.json create mode 100644 apps/www/public/r/styles/new-york/logo-context.json create mode 100644 apps/www/public/r/styles/new-york/logo-shuffle.json create mode 100644 apps/www/public/r/styles/new-york/magnify-app-icons.json create mode 100644 apps/www/public/r/styles/new-york/marquee-section.json create mode 100644 apps/www/public/r/styles/new-york/onboarding-guide.json create mode 100644 apps/www/public/r/styles/new-york/packages-marquee.json create mode 100644 apps/www/public/r/styles/new-york/planfoundry-collapsed-sidebar.json create mode 100644 apps/www/public/r/styles/new-york/planfoundry-sidebar.json create mode 100644 apps/www/public/r/styles/new-york/prodkt-mode-toggle.json create mode 100644 apps/www/public/r/styles/new-york/rive-mode-toggle.json create mode 100644 apps/www/public/r/styles/new-york/site-header.json create mode 100644 apps/www/public/r/styles/new-york/site-hero.json create mode 100644 apps/www/public/r/styles/new-york/storybook-cta.json create mode 100644 apps/www/public/r/styles/new-york/supabase-cta.json create mode 100644 apps/www/public/r/styles/new-york/technology-cloud.json create mode 100644 apps/www/public/r/styles/new-york/theme-switcher.json create mode 100644 apps/www/public/r/styles/new-york/timecard.json create mode 100644 apps/www/public/r/styles/new-york/tracer-card.json create mode 100644 apps/www/public/r/styles/new-york/web-app-01-layout.json create mode 100644 apps/www/public/r/themes/Mauve.json create mode 100644 apps/www/public/r/themes/Olive.json create mode 100644 apps/www/public/r/themes/Sage.json create mode 100644 apps/www/public/r/themes/Sand.json delete mode 100644 apps/www/public/r/themes/neutral.json delete mode 100644 apps/www/public/r/themes/stone.json delete mode 100644 apps/www/public/r/themes/zinc.json delete mode 100644 apps/www/registry/default/blocks/login-nexsale/assets/nexsale_background__sales.avif delete mode 100644 apps/www/registry/default/icons/access-control-icon.tsx delete mode 100644 apps/www/registry/default/icons/adobe-illustrator.tsx delete mode 100644 apps/www/registry/default/icons/amazon-icon.tsx delete mode 100644 apps/www/registry/default/icons/astro.tsx delete mode 100644 apps/www/registry/default/icons/atlassian-icon.tsx delete mode 100644 apps/www/registry/default/icons/authentication-icon.tsx delete mode 100644 apps/www/registry/default/icons/autodesk-icon.tsx delete mode 100644 apps/www/registry/default/icons/best-practices-icon.tsx delete mode 100644 apps/www/registry/default/icons/black-box-icon.tsx delete mode 100644 apps/www/registry/default/icons/charts-icon.tsx delete mode 100644 apps/www/registry/default/icons/cisco.tsx delete mode 100644 apps/www/registry/default/icons/cloud-tip-icon.tsx delete mode 100644 apps/www/registry/default/icons/components-icon.tsx delete mode 100644 apps/www/registry/default/icons/confluence.tsx delete mode 100644 apps/www/registry/default/icons/datadog.tsx delete mode 100644 apps/www/registry/default/icons/datatables-icon.tsx delete mode 100644 apps/www/registry/default/icons/design-system/index.tsx delete mode 100644 apps/www/registry/default/icons/directus.tsx delete mode 100644 apps/www/registry/default/icons/docker.tsx delete mode 100644 apps/www/registry/default/icons/figma.tsx delete mode 100644 apps/www/registry/default/icons/forms-icon.tsx delete mode 100644 apps/www/registry/default/icons/gitbook.tsx delete mode 100644 apps/www/registry/default/icons/github-icon.tsx delete mode 100644 apps/www/registry/default/icons/ibm-icon.tsx delete mode 100644 apps/www/registry/default/icons/ideanote.tsx delete mode 100644 apps/www/registry/default/icons/identity-icon.tsx delete mode 100644 apps/www/registry/default/icons/index.ts delete mode 100644 apps/www/registry/default/icons/infinite-scalability-icon.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/ably.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/appwrite.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/atlassian.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/auth0.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/aws-cognito.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/chakra.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/directus.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/dp.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/elide-graphql.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/elide.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/firebase.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/graphql.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/hasura.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/headless.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/hook-form.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/hygraph.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/index.ts delete mode 100644 apps/www/registry/default/icons/integration-icons/json-api.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/kbar.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/kinde.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/mantine.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/medusa.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/mongodb.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/ms-sql-server.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/mui.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/mysql.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/nest.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/nextjs.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/okta.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/oracle.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/pocketbase.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/react.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/remix.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/rest-without-text.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/rest.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/sanity.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/shadcn-ui.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/slack.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/sqlite.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/strapi-with-text.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/strapi.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/supabase-with-text.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/supabase.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/tailwindcss.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/usegenerated.tsx delete mode 100644 apps/www/registry/default/icons/integration-icons/vite.tsx delete mode 100644 apps/www/registry/default/icons/interfaces-icon.tsx delete mode 100644 apps/www/registry/default/icons/list-icon.tsx delete mode 100644 apps/www/registry/default/icons/lit.tsx delete mode 100644 apps/www/registry/default/icons/logomark_astro.tsx delete mode 100644 apps/www/registry/default/icons/logomark_biome.tsx delete mode 100644 apps/www/registry/default/icons/logomark_bun.tsx delete mode 100644 apps/www/registry/default/icons/logomark_chroma.tsx delete mode 100644 apps/www/registry/default/icons/logomark_docker.tsx delete mode 100644 apps/www/registry/default/icons/logomark_figma.tsx delete mode 100644 apps/www/registry/default/icons/logomark_nodejs.tsx delete mode 100644 apps/www/registry/default/icons/logomark_posthog.tsx delete mode 100644 apps/www/registry/default/icons/logomark_react.tsx delete mode 100644 apps/www/registry/default/icons/logomark_sentry.tsx delete mode 100644 apps/www/registry/default/icons/logomark_shadcn.tsx delete mode 100644 apps/www/registry/default/icons/logomark_storybook.tsx delete mode 100644 apps/www/registry/default/icons/logomark_styledictionary.tsx delete mode 100644 apps/www/registry/default/icons/logomark_supabase.tsx delete mode 100644 apps/www/registry/default/icons/logomark_swagger.tsx delete mode 100644 apps/www/registry/default/icons/logomark_tailwind.tsx delete mode 100644 apps/www/registry/default/icons/logomark_turborepo.tsx delete mode 100644 apps/www/registry/default/icons/logomark_typescript.tsx delete mode 100644 apps/www/registry/default/icons/logomark_vercel.tsx delete mode 100644 apps/www/registry/default/icons/logomark_vite.tsx delete mode 100644 apps/www/registry/default/icons/meta-icon.tsx delete mode 100644 apps/www/registry/default/icons/monitor-icon.tsx delete mode 100644 apps/www/registry/default/icons/no-vendor-lockin-icon.tsx delete mode 100644 apps/www/registry/default/icons/pendo.tsx delete mode 100644 apps/www/registry/default/icons/postmark.tsx delete mode 100644 apps/www/registry/default/icons/pro-services-icon.tsx delete mode 100644 apps/www/registry/default/icons/prodkt-navigation/index.tsx delete mode 100644 apps/www/registry/default/icons/providers-icon.tsx delete mode 100644 apps/www/registry/default/icons/react.tsx delete mode 100644 apps/www/registry/default/icons/routes-icon.tsx delete mode 100644 apps/www/registry/default/icons/salesforce-icon.tsx delete mode 100644 apps/www/registry/default/icons/scales.tsx delete mode 100644 apps/www/registry/default/icons/security-icon.tsx delete mode 100644 apps/www/registry/default/icons/self-hosted-icon.tsx delete mode 100644 apps/www/registry/default/icons/starlight.tsx delete mode 100644 apps/www/registry/default/icons/storybook.tsx delete mode 100644 apps/www/registry/default/icons/stripe.tsx delete mode 100644 apps/www/registry/default/icons/supernova.tsx delete mode 100644 apps/www/registry/default/icons/support-icon.tsx delete mode 100644 apps/www/registry/default/icons/timeline-icon.tsx delete mode 100644 apps/www/registry/default/icons/tokens-studio.tsx delete mode 100644 apps/www/registry/default/icons/turborepo.tsx delete mode 100644 apps/www/registry/default/icons/upwork-icon.tsx delete mode 100644 apps/www/registry/default/icons/zendesk.tsx create mode 100644 apps/www/registry/default/prodkt/assets/rive/nexsale_features.riv create mode 100644 apps/www/registry/default/prodkt/assets/rive/nexsale_mode_toggle.riv create mode 100644 apps/www/registry/default/prodkt/assets/rive/nexsaleadvert1.riv delete mode 100644 apps/www/registry/default/prodkt/logo_craft.tsx delete mode 100644 apps/www/registry/default/prodkt/logo_planfoundry.tsx delete mode 100644 apps/www/registry/default/prodkt/logo_scales.tsx create mode 100644 apps/www/registry/default/prodkt/rive/mode-toggle/index.tsx delete mode 100644 apps/www/registry/icons/acrobat.tsx delete mode 100644 apps/www/registry/icons/adobe-illustrator.tsx delete mode 100644 apps/www/registry/icons/amazon-icon.tsx delete mode 100644 apps/www/registry/icons/atlassian-icon.tsx delete mode 100644 apps/www/registry/icons/black-box-icon.tsx delete mode 100644 apps/www/registry/icons/cisco-icon.tsx delete mode 100644 apps/www/registry/icons/cisco.tsx delete mode 100644 apps/www/registry/icons/coke.tsx delete mode 100644 apps/www/registry/icons/datadog.tsx delete mode 100644 apps/www/registry/icons/datatables-icon.tsx delete mode 100644 apps/www/registry/icons/deloitte-icon.tsx delete mode 100644 apps/www/registry/icons/directus.tsx delete mode 100644 apps/www/registry/icons/dominos.tsx delete mode 100644 apps/www/registry/icons/eminem.tsx delete mode 100644 apps/www/registry/icons/figma.tsx delete mode 100644 apps/www/registry/icons/github-icon.tsx delete mode 100644 apps/www/registry/icons/google-analytics.tsx delete mode 100644 apps/www/registry/icons/hellsangels.tsx delete mode 100644 apps/www/registry/icons/hm.tsx delete mode 100644 apps/www/registry/icons/hp.tsx delete mode 100644 apps/www/registry/icons/ideanote.tsx delete mode 100644 apps/www/registry/icons/integration-icons/airtable.tsx delete mode 100644 apps/www/registry/icons/integration-icons/antd.tsx delete mode 100644 apps/www/registry/icons/integration-icons/appwrite.tsx delete mode 100644 apps/www/registry/icons/integration-icons/atlassian.tsx delete mode 100644 apps/www/registry/icons/integration-icons/auth-js.tsx delete mode 100644 apps/www/registry/icons/integration-icons/azure-active-directory.tsx delete mode 100644 apps/www/registry/icons/integration-icons/clerk.tsx delete mode 100644 apps/www/registry/icons/integration-icons/custom-auth.tsx delete mode 100644 apps/www/registry/icons/integration-icons/directus.tsx delete mode 100644 apps/www/registry/icons/integration-icons/elide.tsx delete mode 100644 apps/www/registry/icons/integration-icons/entrefine.tsx delete mode 100644 apps/www/registry/icons/integration-icons/expo.tsx delete mode 100644 apps/www/registry/icons/integration-icons/google.tsx delete mode 100644 apps/www/registry/icons/integration-icons/graphql.tsx delete mode 100644 apps/www/registry/icons/integration-icons/hasura.tsx delete mode 100644 apps/www/registry/icons/integration-icons/hook-form.tsx delete mode 100644 apps/www/registry/icons/integration-icons/hygraph.tsx delete mode 100644 apps/www/registry/icons/integration-icons/index.ts delete mode 100644 apps/www/registry/icons/integration-icons/kbar.tsx delete mode 100644 apps/www/registry/icons/integration-icons/mantine.tsx delete mode 100644 apps/www/registry/icons/integration-icons/mongodb.tsx delete mode 100644 apps/www/registry/icons/integration-icons/ms-sql-server.tsx delete mode 100644 apps/www/registry/icons/integration-icons/mui.tsx delete mode 100644 apps/www/registry/icons/integration-icons/mysql.tsx delete mode 100644 apps/www/registry/icons/integration-icons/nest-query.tsx delete mode 100644 apps/www/registry/icons/integration-icons/nextjs.tsx delete mode 100644 apps/www/registry/icons/integration-icons/oracle.tsx delete mode 100644 apps/www/registry/icons/integration-icons/postgresql.tsx delete mode 100644 apps/www/registry/icons/integration-icons/react.tsx delete mode 100644 apps/www/registry/icons/integration-icons/remix.tsx delete mode 100644 apps/www/registry/icons/integration-icons/shadcn-ui.tsx delete mode 100644 apps/www/registry/icons/integration-icons/strapi.tsx delete mode 100644 apps/www/registry/icons/integration-icons/supabase-with-text.tsx delete mode 100644 apps/www/registry/icons/integration-icons/supabase.tsx delete mode 100644 apps/www/registry/icons/integration-icons/usegenerated.tsx delete mode 100644 apps/www/registry/icons/integration-icons/vite.tsx delete mode 100644 apps/www/registry/icons/intel-icon.tsx delete mode 100644 apps/www/registry/icons/jp-morgan-icon.tsx delete mode 100644 apps/www/registry/icons/lit.tsx delete mode 100644 apps/www/registry/icons/oracle-icon.tsx delete mode 100644 apps/www/registry/icons/posthog.tsx delete mode 100644 apps/www/registry/icons/revolutionvodka.tsx delete mode 100644 apps/www/registry/icons/samsung.tsx delete mode 100644 apps/www/registry/icons/shady.tsx delete mode 100644 apps/www/registry/icons/starlight.tsx delete mode 100644 apps/www/registry/icons/stencil.tsx delete mode 100644 apps/www/registry/icons/storybook.tsx delete mode 100644 apps/www/registry/icons/stripe.tsx delete mode 100644 apps/www/registry/icons/style-dictionary.tsx delete mode 100644 apps/www/registry/icons/supabase.tsx delete mode 100644 apps/www/registry/icons/supernova.tsx delete mode 100644 apps/www/registry/icons/toyota.tsx delete mode 100644 apps/www/registry/icons/truwhip.tsx delete mode 100644 apps/www/registry/icons/upwork-icon.tsx rename apps/www/registry/{default/icons/utilities-icon.tsx.tsx => icons/utilities-icon.tsx} (100%) delete mode 100644 apps/www/registry/icons/utilities-icon.tsx.tsx delete mode 100644 apps/www/registry/icons/wizards-icon.tsx delete mode 100644 apps/www/registry/icons/zendesk.tsx create mode 100644 apps/www/registry/logos/index.tsx rename apps/www/registry/{default/icons/acrobat.tsx => logos/logo_acrobat.tsx} (94%) rename apps/www/registry/{new-york/icons/adobe-illustrator.tsx => logos/logo_adobe-illustrator.tsx} (95%) rename apps/www/registry/{icons/astro.tsx => logos/logo_astro.tsx} (99%) rename apps/www/registry/{new-york/icons/cisco.tsx => logos/logo_cisco.tsx} (99%) rename apps/www/registry/{default/icons/coke.tsx => logos/logo_cocacola.tsx} (100%) rename apps/www/registry/{icons/confluence.tsx => logos/logo_confluence.tsx} (98%) rename apps/www/registry/{new-york/prodkt => logos}/logo_craft.tsx (98%) rename apps/www/registry/{new-york/icons/datadog.tsx => logos/logo_datadog.tsx} (98%) rename apps/www/registry/{new-york/icons/directus.tsx => logos/logo_directus.tsx} (98%) rename apps/www/registry/{icons/docker.tsx => logos/logo_docker.tsx} (98%) rename apps/www/registry/{default/icons/dominos.tsx => logos/logo_dominos.tsx} (99%) rename apps/www/registry/{default/icons/eminem.tsx => logos/logo_eminem.tsx} (100%) rename apps/www/registry/{new-york/icons/figma.tsx => logos/logo_figma.tsx} (96%) rename apps/www/registry/{icons/gitbook.tsx => logos/logo_gitbook.tsx} (98%) rename apps/www/registry/{default/icons/google-analytics.tsx => logos/logo_google-analytics.tsx} (97%) rename apps/www/registry/{default/icons/hellsangels.tsx => logos/logo_hellsangels.tsx} (100%) rename apps/www/registry/{default/icons/hm.tsx => logos/logo_hm.tsx} (100%) rename apps/www/registry/{default/icons/hp.tsx => logos/logo_hp.tsx} (100%) rename apps/www/registry/{new-york/icons/ideanote.tsx => logos/logo_ideanote.tsx} (98%) rename apps/www/registry/{default/icons/nexsale.tsx => logos/logo_nexsale.tsx} (100%) rename apps/www/registry/{default/prodkt => logos}/logo_olio.tsx (98%) rename apps/www/registry/{icons/pendo.tsx => logos/logo_pendo.tsx} (96%) rename apps/www/registry/{new-york/prodkt => logos}/logo_planfoundry.tsx (99%) rename apps/www/registry/{default/icons/posthog.tsx => logos/logo_posthog.tsx} (98%) rename apps/www/registry/{icons/postmark.tsx => logos/logo_postmark.tsx} (99%) rename apps/www/registry/{icons/react.tsx => logos/logo_react.tsx} (97%) rename apps/www/registry/{default/icons/revolutionvodka.tsx => logos/logo_revolutionvodka.tsx} (100%) rename apps/www/registry/{default/icons/samsung.tsx => logos/logo_samsung.tsx} (100%) rename apps/www/registry/{icons/scales.tsx => logos/logo_scales.tsx} (99%) rename apps/www/registry/{default/icons/shady.tsx => logos/logo_shady.tsx} (100%) rename apps/www/registry/{new-york/icons/starlight.tsx => logos/logo_starlight.tsx} (99%) rename apps/www/registry/{default/icons/stencil.tsx => logos/logo_stencil.tsx} (96%) rename apps/www/registry/{new-york/icons/storybook.tsx => logos/logo_storybook.tsx} (98%) rename apps/www/registry/{icons/integration-icons/strapi-with-text.tsx => logos/logo_strapi.tsx} (97%) rename apps/www/registry/{new-york/icons/stripe.tsx => logos/logo_stripe.tsx} (95%) rename apps/www/registry/{default/icons/style-dictionary.tsx => logos/logo_style-dictionary.tsx} (99%) rename apps/www/registry/{default/icons/supabase.tsx => logos/logo_supabase.tsx} (98%) rename apps/www/registry/{new-york/icons/supernova.tsx => logos/logo_supernova.tsx} (98%) rename apps/www/registry/{icons/tokens-studio.tsx => logos/logo_tokens-studio.tsx} (98%) rename apps/www/registry/{default/icons/toyota.tsx => logos/logo_toyota.tsx} (100%) rename apps/www/registry/{default/icons/truwhip.tsx => logos/logo_truwhip.tsx} (100%) rename apps/www/registry/{icons/turborepo.tsx => logos/logo_turborepo.tsx} (98%) rename apps/www/registry/{new-york/icons/zendesk.tsx => logos/logo_zendesk.tsx} (96%) rename apps/www/registry/{icons/integration-icons/ably.tsx => logos/logomark_ably.tsx} (92%) rename apps/www/registry/{default/icons/integration-icons/airtable.tsx => logos/logomark_airtable.tsx} (92%) rename apps/www/registry/{new-york/icons/amazon-icon.tsx => logos/logomark_amazon-icon.tsx} (97%) rename apps/www/registry/{default/prodkt => logos}/logomark_ampersand.tsx (100%) rename apps/www/registry/{default/icons/integration-icons/antd.tsx => logos/logomark_antd.tsx} (98%) rename apps/www/registry/{new-york/icons/integration-icons/appwrite.tsx => logos/logomark_appwrite.tsx} (90%) rename apps/www/registry/{icons => logos}/logomark_astro.tsx (100%) rename apps/www/registry/{new-york/icons/atlassian-icon.tsx => logos/logomark_atlassian.tsx} (96%) rename apps/www/registry/{default/icons/integration-icons/auth-js.tsx => logos/logomark_auth-js.tsx} (99%) rename apps/www/registry/{icons/integration-icons/auth0.tsx => logos/logomark_auth0.tsx} (87%) rename apps/www/registry/{icons/autodesk-icon.tsx => logos/logomark_autodesk.tsx} (95%) rename apps/www/registry/{icons/integration-icons/aws-cognito.tsx => logos/logomark_aws-cognito.tsx} (94%) rename apps/www/registry/{default/icons/integration-icons/azure-active-directory.tsx => logos/logomark_azure-active-directory.tsx} (87%) rename apps/www/registry/{icons => logos}/logomark_biome.tsx (100%) rename apps/www/registry/{new-york/icons/black-box-icon.tsx => logos/logomark_black-box.tsx} (94%) rename apps/www/registry/{icons => logos}/logomark_bun.tsx (100%) rename apps/www/registry/{icons/integration-icons/chakra.tsx => logos/logomark_chakra.tsx} (96%) rename apps/www/registry/{icons => logos}/logomark_chroma.tsx (100%) rename apps/www/registry/{default/prodkt => logos}/logomark_chromatic.tsx (100%) rename apps/www/registry/{default/icons/cisco-icon.tsx => logos/logomark_cisco.tsx} (97%) rename apps/www/registry/{default/icons/integration-icons/clerk.tsx => logos/logomark_clerk.tsx} (95%) rename apps/www/registry/{default/prodkt => logos}/logomark_craft.tsx (100%) rename apps/www/registry/{default/icons/integration-icons/custom-auth.tsx => logos/logomark_custom-auth.tsx} (88%) rename apps/www/registry/{new-york/icons/datatables-icon.tsx => logos/logomark_datatables.tsx} (85%) rename apps/www/registry/{default/icons/deloitte-icon.tsx => logos/logomark_deloitte.tsx} (97%) rename apps/www/registry/{default/prodkt => logos}/logomark_digidoc.tsx (100%) rename apps/www/registry/{default/prodkt => logos}/logomark_directus.tsx (100%) rename apps/www/registry/{icons => logos}/logomark_docker.tsx (100%) rename apps/www/registry/{icons/integration-icons/dp.tsx => logos/logomark_dp.tsx} (95%) rename apps/www/registry/{icons/integration-icons/elide-graphql.tsx => logos/logomark_elide-graphql.tsx} (96%) rename apps/www/registry/{new-york/icons/integration-icons/elide.tsx => logos/logomark_elide.tsx} (94%) rename apps/www/registry/{default/icons/integration-icons/entrefine.tsx => logos/logomark_entrefine.tsx} (96%) rename apps/www/registry/{default/prodkt => logos}/logomark_explor.tsx (100%) rename apps/www/registry/{default/icons/integration-icons/expo.tsx => logos/logomark_expo.tsx} (90%) rename apps/www/registry/{icons => logos}/logomark_figma.tsx (100%) rename apps/www/registry/{icons/integration-icons/firebase.tsx => logos/logomark_firebase.tsx} (99%) rename apps/www/registry/{default/prodkt => logos}/logomark_flows.tsx (100%) rename apps/www/registry/{new-york/icons/github-icon.tsx => logos/logomark_github.tsx} (95%) rename apps/www/registry/{default/icons/integration-icons/google.tsx => logos/logomark_google.tsx} (92%) rename apps/www/registry/{new-york/icons/integration-icons/graphql.tsx => logos/logomark_graphql.tsx} (95%) rename apps/www/registry/{new-york/icons/integration-icons/hasura.tsx => logos/logomark_hasura.tsx} (94%) rename apps/www/registry/{icons/integration-icons/headless.tsx => logos/logomark_headless.tsx} (95%) rename apps/www/registry/{new-york/icons/integration-icons/hook-form.tsx => logos/logomark_hook-form.tsx} (97%) rename apps/www/registry/{new-york/icons/integration-icons/hygraph.tsx => logos/logomark_hygraph.tsx} (89%) rename apps/www/registry/{icons/ibm-icon.tsx => logos/logomark_ibm.tsx} (96%) rename apps/www/registry/{default/icons/intel-icon.tsx => logos/logomark_intel.tsx} (97%) rename apps/www/registry/{default/icons/jp-morgan-icon.tsx => logos/logomark_jp-morgan.tsx} (98%) rename apps/www/registry/{icons/integration-icons/json-api.tsx => logos/logomark_json-api.tsx} (97%) rename apps/www/registry/{new-york/icons/integration-icons/kbar.tsx => logos/logomark_kbar.tsx} (95%) rename apps/www/registry/{icons/integration-icons/kinde.tsx => logos/logomark_kinde.tsx} (96%) rename apps/www/registry/{default/prodkt => logos}/logomark_leveln.tsx (100%) rename apps/www/registry/{default/prodkt => logos}/logomark_lit.tsx (100%) rename apps/www/registry/{new-york/icons/integration-icons/mantine.tsx => logos/logomark_mantine.tsx} (97%) rename apps/www/registry/{icons/integration-icons/medusa.tsx => logos/logomark_medusa.tsx} (92%) rename apps/www/registry/{icons/meta-icon.tsx => logos/logomark_meta.tsx} (97%) rename apps/www/registry/{new-york/icons/integration-icons/mongodb.tsx => logos/logomark_mongodb.tsx} (91%) rename apps/www/registry/{new-york/icons/integration-icons/ms-sql-server.tsx => logos/logomark_ms-sql-server.tsx} (99%) rename apps/www/registry/{new-york/icons/integration-icons/mui.tsx => logos/logomark_mui.tsx} (97%) rename apps/www/registry/{new-york/icons/integration-icons/mysql.tsx => logos/logomark_mysql.tsx} (99%) rename apps/www/registry/{default/icons/integration-icons/nest-query.tsx => logos/logomark_nest-query.tsx} (98%) rename apps/www/registry/{icons/integration-icons/nest.tsx => logos/logomark_nest.tsx} (98%) rename apps/www/registry/{default/prodkt => logos}/logomark_nextjs.tsx (100%) rename apps/www/registry/{icons => logos}/logomark_nodejs.tsx (100%) rename apps/www/registry/{icons/integration-icons/okta.tsx => logos/logomark_okta.tsx} (97%) rename apps/www/registry/{default/prodkt => logos}/logomark_olio.tsx (100%) rename apps/www/registry/{default/icons/oracle-icon.tsx => logos/logomark_oracle.tsx} (93%) rename apps/www/registry/{default/prodkt => logos}/logomark_partytown.tsx (100%) rename apps/www/registry/{default/prodkt => logos}/logomark_pendo.tsx (100%) rename apps/www/registry/{default/prodkt => logos}/logomark_planfoundry.tsx (100%) rename apps/www/registry/{icons/integration-icons/pocketbase.tsx => logos/logomark_pocketbase.tsx} (97%) rename apps/www/registry/{default/icons/integration-icons/postgresql.tsx => logos/logomark_postgresql.tsx} (99%) rename apps/www/registry/{icons => logos}/logomark_posthog.tsx (100%) rename apps/www/registry/{default/prodkt => logos}/logomark_radix.tsx (100%) rename apps/www/registry/{icons => logos}/logomark_react.tsx (100%) rename apps/www/registry/{default/prodkt => logos}/logomark_remix.tsx (100%) rename apps/www/registry/{icons/integration-icons/rest-without-text.tsx => logos/logomark_rest-without-text.tsx} (96%) rename apps/www/registry/{icons/integration-icons/rest.tsx => logos/logomark_rest.tsx} (97%) rename apps/www/registry/{icons/salesforce-icon.tsx => logos/logomark_salesforce.tsx} (98%) rename apps/www/registry/{icons/integration-icons/sanity.tsx => logos/logomark_sanity.tsx} (92%) rename apps/www/registry/{default/prodkt => logos}/logomark_scales.tsx (100%) rename apps/www/registry/{icons => logos}/logomark_sentry.tsx (100%) rename apps/www/registry/{new-york/icons/integration-icons/shadcn-ui.tsx => logos/logomark_shadcn-ui.tsx} (85%) rename apps/www/registry/{icons => logos}/logomark_shadcn.tsx (100%) rename apps/www/registry/{default/prodkt => logos}/logomark_signal.tsx (100%) rename apps/www/registry/{icons/integration-icons/slack.tsx => logos/logomark_slack.tsx} (93%) rename apps/www/registry/{icons/integration-icons/sqlite.tsx => logos/logomark_sqlite.tsx} (95%) rename apps/www/registry/{icons => logos}/logomark_storybook.tsx (100%) rename apps/www/registry/{default/prodkt => logos}/logomark_strapi.tsx (100%) rename apps/www/registry/{icons => logos}/logomark_styledictionary.tsx (100%) rename apps/www/registry/{default/prodkt => logos}/logomark_sugarless.tsx (100%) rename apps/www/registry/{icons => logos}/logomark_supabase.tsx (100%) rename apps/www/registry/{icons => logos}/logomark_swagger.tsx (100%) rename apps/www/registry/{icons => logos}/logomark_tailwind.tsx (100%) rename apps/www/registry/{icons/integration-icons/tailwindcss.tsx => logos/logomark_tailwindcss.tsx} (88%) rename apps/www/registry/{icons => logos}/logomark_turborepo.tsx (100%) rename apps/www/registry/{icons => logos}/logomark_typescript.tsx (100%) rename apps/www/registry/{new-york/icons/upwork-icon.tsx => logos/logomark_upwork.tsx} (95%) rename apps/www/registry/{new-york/icons/integration-icons/usegenerated.tsx => logos/logomark_usegenerated.tsx} (97%) rename apps/www/registry/{icons => logos}/logomark_vercel.tsx (100%) rename apps/www/registry/{icons => logos}/logomark_vite.tsx (100%) rename apps/www/registry/{default/icons/wizards-icon.tsx => logos/logomark_wizards.tsx} (89%) rename apps/www/registry/{default/prodkt => logos}/logomark_zeplin.tsx (100%) create mode 100644 apps/www/registry/new-york/blocks/content-01/components/index.tsx create mode 100644 apps/www/registry/new-york/blocks/content-01/page.tsx create mode 100644 apps/www/registry/new-york/examples/logo-cloud-demo.tsx delete mode 100644 apps/www/registry/new-york/icons/access-control-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/acrobat.tsx delete mode 100644 apps/www/registry/new-york/icons/astro.tsx delete mode 100644 apps/www/registry/new-york/icons/authentication-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/autodesk-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/best-practices-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/charts-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/cisco-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/cloud-tip-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/coke.tsx delete mode 100644 apps/www/registry/new-york/icons/components-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/confluence.tsx delete mode 100644 apps/www/registry/new-york/icons/deloitte-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/design-system/index.tsx delete mode 100644 apps/www/registry/new-york/icons/docker.tsx delete mode 100644 apps/www/registry/new-york/icons/dominos.tsx delete mode 100644 apps/www/registry/new-york/icons/eminem.tsx delete mode 100644 apps/www/registry/new-york/icons/forms-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/gitbook.tsx delete mode 100644 apps/www/registry/new-york/icons/google-analytics.tsx delete mode 100644 apps/www/registry/new-york/icons/hellsangels.tsx delete mode 100644 apps/www/registry/new-york/icons/hm.tsx delete mode 100644 apps/www/registry/new-york/icons/hp.tsx delete mode 100644 apps/www/registry/new-york/icons/ibm-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/identity-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/index.ts delete mode 100644 apps/www/registry/new-york/icons/infinite-scalability-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/ably.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/airtable.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/antd.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/atlassian.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/auth-js.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/auth0.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/aws-cognito.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/azure-active-directory.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/chakra.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/clerk.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/custom-auth.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/directus.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/dp.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/elide-graphql.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/entrefine.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/expo.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/firebase.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/google.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/headless.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/index.ts delete mode 100644 apps/www/registry/new-york/icons/integration-icons/json-api.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/kinde.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/medusa.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/nest-query.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/nest.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/nextjs.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/okta.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/oracle.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/pocketbase.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/postgresql.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/react.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/remix.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/rest-without-text.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/rest.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/sanity.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/slack.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/sqlite.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/strapi-with-text.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/strapi.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/supabase-with-text.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/supabase.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/tailwindcss.tsx delete mode 100644 apps/www/registry/new-york/icons/integration-icons/vite.tsx delete mode 100644 apps/www/registry/new-york/icons/intel-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/interfaces-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/jp-morgan-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/list-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/lit.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_astro.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_biome.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_bun.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_chroma.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_docker.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_figma.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_nodejs.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_posthog.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_react.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_sentry.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_shadcn.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_storybook.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_styledictionary.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_supabase.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_swagger.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_tailwind.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_turborepo.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_typescript.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_vercel.tsx delete mode 100644 apps/www/registry/new-york/icons/logomark_vite.tsx delete mode 100644 apps/www/registry/new-york/icons/meta-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/monitor-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/nexsale.tsx delete mode 100644 apps/www/registry/new-york/icons/no-vendor-lockin-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/oracle-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/pendo.tsx delete mode 100644 apps/www/registry/new-york/icons/posthog.tsx delete mode 100644 apps/www/registry/new-york/icons/postmark.tsx delete mode 100644 apps/www/registry/new-york/icons/pro-services-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/prodkt-navigation/index.tsx delete mode 100644 apps/www/registry/new-york/icons/providers-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/react.tsx delete mode 100644 apps/www/registry/new-york/icons/revolutionvodka.tsx delete mode 100644 apps/www/registry/new-york/icons/routes-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/salesforce-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/samsung.tsx delete mode 100644 apps/www/registry/new-york/icons/scales.tsx delete mode 100644 apps/www/registry/new-york/icons/security-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/self-hosted-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/shady.tsx delete mode 100644 apps/www/registry/new-york/icons/stencil.tsx delete mode 100644 apps/www/registry/new-york/icons/style-dictionary.tsx delete mode 100644 apps/www/registry/new-york/icons/supabase.tsx delete mode 100644 apps/www/registry/new-york/icons/support-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/timeline-icon.tsx delete mode 100644 apps/www/registry/new-york/icons/tokens-studio.tsx delete mode 100644 apps/www/registry/new-york/icons/toyota.tsx delete mode 100644 apps/www/registry/new-york/icons/truwhip.tsx delete mode 100644 apps/www/registry/new-york/icons/turborepo.tsx delete mode 100644 apps/www/registry/new-york/icons/utilities-icon.tsx.tsx delete mode 100644 apps/www/registry/new-york/icons/wizards-icon.tsx create mode 100644 apps/www/registry/new-york/prodkt/assets/rive/nexsale_features.riv create mode 100644 apps/www/registry/new-york/prodkt/assets/rive/nexsale_mode_toggle.riv create mode 100644 apps/www/registry/new-york/prodkt/assets/rive/nexsaleadvert1.riv create mode 100644 apps/www/registry/new-york/prodkt/carousel/carousel_core.tsx create mode 100644 apps/www/registry/new-york/prodkt/carousel/dotButton.tsx create mode 100644 apps/www/registry/new-york/prodkt/carousel/following-pointer.tsx create mode 100644 apps/www/registry/new-york/prodkt/carousel/index.tsx create mode 100644 apps/www/registry/new-york/prodkt/carousel/original-still-solid-styles.tsx create mode 100644 apps/www/registry/new-york/prodkt/carousel/tab.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logo_olio.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logo_scales.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_ampersand.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_craft.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_digidoc.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_explor.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_flows.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_leveln.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_olio.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_planfoundry.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_remix.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_scales.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_signal.tsx delete mode 100644 apps/www/registry/new-york/prodkt/logomark_sugarless.tsx create mode 100644 apps/www/registry/new-york/prodkt/rive/mode-toggle/RiveLoader.js create mode 100644 apps/www/registry/new-york/prodkt/rive/mode-toggle/index.tsx create mode 100644 apps/www/registry/new-york/prodkt/rive/rive-loader.jsx create mode 100644 apps/www/registry/new-york/ui/ripple.tsx create mode 100644 apps/www/registry/registry-logo.ts create mode 100644 apps/www/registry/registry-logomark.ts diff --git a/apps/prepare/package.json b/apps/prepare/package.json index 4f876b42..193390f4 100644 --- a/apps/prepare/package.json +++ b/apps/prepare/package.json @@ -19,10 +19,10 @@ "keywords": [], "license": "ISC", "dependencies": { - "@astrojs/mdx": "^4.0.1", + "@astrojs/mdx": "^4.0.2", "@astrojs/partytown": "^2.1.2", - "@astrojs/react": "^4.0.0", - "@astrojs/rss": "^4.0.9", + "@astrojs/react": "^4.1.1", + "@astrojs/rss": "^4.0.10", "@astrojs/sitemap": "^3.2.1", "@astrojs/tailwind": "^5.1.3", "@fontsource-variable/fustat": "^5.1.0", @@ -41,7 +41,7 @@ "@types/node": "^22.9.1", "@types/react": "^18.2.65", "@types/react-dom": "^18.2.22", - "astro": "^5.0.5", + "astro": "^5.0.9", "class-variance-authority": "0.7.1", "clsx": "^2.1.1", "framer-motion": ">=11.14.4", @@ -58,6 +58,7 @@ }, "devDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "eslint-plugin-astro": "^1.3.1", "postcss-import": "^16.1.0", "prettier": "^3.4.2", "prettier-plugin-astro": "^0.14.1" diff --git a/apps/prepare/tsconfig.json b/apps/prepare/tsconfig.json index ba741664..c94999a2 100644 --- a/apps/prepare/tsconfig.json +++ b/apps/prepare/tsconfig.json @@ -36,10 +36,6 @@ "node_modules/www/registry/new-york/prodkt/**/*", "../www/registry/new-york/prodkt/**/*", "../www/motion/*.js", - // "src/**/*.ts", - // "src/**/*.tsx", - // "src/**/*.js", - // "src/**/*.jsx" ], "exclude": ["node_modules", "dist"] } diff --git a/apps/www/__registry__/default/blocks/effect-jump-to-section-01/page.tsx b/apps/www/__registry__/default/blocks/effect-jump-to-section-01/page.tsx index 366f579d..378e50c0 100644 --- a/apps/www/__registry__/default/blocks/effect-jump-to-section-01/page.tsx +++ b/apps/www/__registry__/default/blocks/effect-jump-to-section-01/page.tsx @@ -1,4 +1,4 @@ -import JumpToSection01 from "@/registry/default/blocks/effect-jump-to-section-01/components/index" +import JumpToSection01 from "@/registry/new-york/blocks/effect-jump-to-section-01/components/index" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/login-01/page.tsx b/apps/www/__registry__/default/blocks/login-01/page.tsx index 6e1c2cb4..20fe9846 100644 --- a/apps/www/__registry__/default/blocks/login-01/page.tsx +++ b/apps/www/__registry__/default/blocks/login-01/page.tsx @@ -1,4 +1,4 @@ -import { LoginForm } from "@/registry/default/blocks/login-01/components/login-form" +import { LoginForm } from "@/registry/new-york/blocks/login-01/components/login-form" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/login-02/page.tsx b/apps/www/__registry__/default/blocks/login-02/page.tsx index 56b73d32..7353a4d4 100644 --- a/apps/www/__registry__/default/blocks/login-02/page.tsx +++ b/apps/www/__registry__/default/blocks/login-02/page.tsx @@ -1,6 +1,6 @@ import { GalleryVerticalEnd } from "lucide-react" -import { LoginForm } from "@/registry/default/blocks/login-02/components/login-form" +import { LoginForm } from "@/registry/new-york/blocks/login-02/components/login-form" export default function LoginPage() { return ( diff --git a/apps/www/__registry__/default/blocks/login-03/page.tsx b/apps/www/__registry__/default/blocks/login-03/page.tsx index 15a0ca45..a4ced503 100644 --- a/apps/www/__registry__/default/blocks/login-03/page.tsx +++ b/apps/www/__registry__/default/blocks/login-03/page.tsx @@ -1,6 +1,6 @@ import { GalleryVerticalEnd } from "lucide-react" -import { LoginForm } from "@/registry/default/blocks/login-03/components/login-form" +import { LoginForm } from "@/registry/new-york/blocks/login-03/components/login-form" export default function LoginPage() { return ( diff --git a/apps/www/__registry__/default/blocks/login-04/page.tsx b/apps/www/__registry__/default/blocks/login-04/page.tsx index d302b4fa..e2188012 100644 --- a/apps/www/__registry__/default/blocks/login-04/page.tsx +++ b/apps/www/__registry__/default/blocks/login-04/page.tsx @@ -1,4 +1,4 @@ -import { LoginForm } from "@/registry/default/blocks/login-04/components/login-form" +import { LoginForm } from "@/registry/new-york/blocks/login-04/components/login-form" export default function LoginPage() { return ( diff --git a/apps/www/__registry__/default/blocks/login-05/page.tsx b/apps/www/__registry__/default/blocks/login-05/page.tsx index b9baa00d..3d03c048 100644 --- a/apps/www/__registry__/default/blocks/login-05/page.tsx +++ b/apps/www/__registry__/default/blocks/login-05/page.tsx @@ -1,4 +1,4 @@ -import { LoginForm } from "@/registry/default/blocks/login-05/components/login-form" +import { LoginForm } from "@/registry/new-york/blocks/login-05/components/login-form" export default function LoginPage() { return ( diff --git a/apps/www/__registry__/default/blocks/login-nexsale/page.tsx b/apps/www/__registry__/default/blocks/login-nexsale/page.tsx index caa1e939..2e47430d 100644 --- a/apps/www/__registry__/default/blocks/login-nexsale/page.tsx +++ b/apps/www/__registry__/default/blocks/login-nexsale/page.tsx @@ -1,4 +1,4 @@ -import { LoginNexsale } from "@/registry/default/blocks/login-nexsale/components/login-form" +import { LoginNexsale } from "@/registry/new-york/blocks/login-nexsale/components/login-form" export default function LoginPage() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-01/page.tsx b/apps/www/__registry__/default/blocks/sidebar-01/page.tsx index 090e3eb2..a13e7b06 100644 --- a/apps/www/__registry__/default/blocks/sidebar-01/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-01/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-01/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-01/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,13 +6,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-02/page.tsx b/apps/www/__registry__/default/blocks/sidebar-02/page.tsx index 179af7cf..140cf70f 100644 --- a/apps/www/__registry__/default/blocks/sidebar-02/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-02/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-02/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-02/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,13 +6,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-03/page.tsx b/apps/www/__registry__/default/blocks/sidebar-03/page.tsx index a3b34b10..768d4775 100644 --- a/apps/www/__registry__/default/blocks/sidebar-03/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-03/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-03/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-03/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,13 +6,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-04/page.tsx b/apps/www/__registry__/default/blocks/sidebar-04/page.tsx index 8a0dbbff..fd5d6c8f 100644 --- a/apps/www/__registry__/default/blocks/sidebar-04/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-04/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-04/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-04/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,13 +6,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-05/page.tsx b/apps/www/__registry__/default/blocks/sidebar-05/page.tsx index 3bfc7a8b..9d630900 100644 --- a/apps/www/__registry__/default/blocks/sidebar-05/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-05/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-05/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-05/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,13 +6,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-06/page.tsx b/apps/www/__registry__/default/blocks/sidebar-06/page.tsx index 028a7ba6..ac30ac9f 100644 --- a/apps/www/__registry__/default/blocks/sidebar-06/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-06/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-06/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-06/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,13 +6,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-07/page.tsx b/apps/www/__registry__/default/blocks/sidebar-07/page.tsx index 16279964..8f9ab725 100644 --- a/apps/www/__registry__/default/blocks/sidebar-07/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-07/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-07/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-07/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,13 +6,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-08/page.tsx b/apps/www/__registry__/default/blocks/sidebar-08/page.tsx index 052b62b3..6df3df5d 100644 --- a/apps/www/__registry__/default/blocks/sidebar-08/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-08/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-08/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-08/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,13 +6,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-09/page.tsx b/apps/www/__registry__/default/blocks/sidebar-09/page.tsx index 6ed155ad..8c5b5946 100644 --- a/apps/www/__registry__/default/blocks/sidebar-09/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-09/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-09/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-09/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,13 +6,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-10/page.tsx b/apps/www/__registry__/default/blocks/sidebar-10/page.tsx index a3570860..d12f8023 100644 --- a/apps/www/__registry__/default/blocks/sidebar-10/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-10/page.tsx @@ -1,17 +1,17 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-10/components/app-sidebar" -import { NavActions } from "@/registry/default/blocks/sidebar-10/components/nav-actions" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-10/components/app-sidebar" +import { NavActions } from "@/registry/new-york/blocks/sidebar-10/components/nav-actions" import { Breadcrumb, BreadcrumbItem, BreadcrumbList, BreadcrumbPage, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-11/page.tsx b/apps/www/__registry__/default/blocks/sidebar-11/page.tsx index 3e60984c..939d72c6 100644 --- a/apps/www/__registry__/default/blocks/sidebar-11/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-11/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-11/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-11/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,13 +6,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-12/page.tsx b/apps/www/__registry__/default/blocks/sidebar-12/page.tsx index ac96a460..ccf68cbe 100644 --- a/apps/www/__registry__/default/blocks/sidebar-12/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-12/page.tsx @@ -1,16 +1,16 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-12/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-12/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, BreadcrumbList, BreadcrumbPage, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-13/page.tsx b/apps/www/__registry__/default/blocks/sidebar-13/page.tsx index 7bebc464..a323b1c5 100644 --- a/apps/www/__registry__/default/blocks/sidebar-13/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-13/page.tsx @@ -1,4 +1,4 @@ -import { SettingsDialog } from "@/registry/default/blocks/sidebar-13/components/settings-dialog" +import { SettingsDialog } from "@/registry/new-york/blocks/sidebar-13/components/settings-dialog" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-14/page.tsx b/apps/www/__registry__/default/blocks/sidebar-14/page.tsx index a299c067..7d6c0b37 100644 --- a/apps/www/__registry__/default/blocks/sidebar-14/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-14/page.tsx @@ -1,4 +1,4 @@ -import { AppSidebar } from "@/registry/default/blocks/sidebar-14/components/app-sidebar" +import { AppSidebar } from "@/registry/new-york/blocks/sidebar-14/components/app-sidebar" import { Breadcrumb, BreadcrumbItem, @@ -6,12 +6,12 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/registry/default/ui/breadcrumb" +} from "@/registry/new-york/ui/breadcrumb" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/default/blocks/sidebar-15/page.tsx b/apps/www/__registry__/default/blocks/sidebar-15/page.tsx index 3bf6087e..acfcc0a4 100644 --- a/apps/www/__registry__/default/blocks/sidebar-15/page.tsx +++ b/apps/www/__registry__/default/blocks/sidebar-15/page.tsx @@ -1,17 +1,17 @@ -import { SidebarLeft } from "@/registry/default/blocks/sidebar-15/components/sidebar-left" -import { SidebarRight } from "@/registry/default/blocks/sidebar-15/components/sidebar-right" +import { SidebarLeft } from "@/registry/new-york/blocks/sidebar-15/components/sidebar-left" +import { SidebarRight } from "@/registry/new-york/blocks/sidebar-15/components/sidebar-right" import { Breadcrumb, BreadcrumbItem, BreadcrumbList, BreadcrumbPage, -} from "@/registry/default/ui/breadcrumb" -import { Separator } from "@/registry/default/ui/separator" +} from "@/registry/new-york/ui/breadcrumb" +import { Separator } from "@/registry/new-york/ui/separator" import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/registry/default/ui/sidebar" +} from "@/registry/new-york/ui/sidebar" export default function Page() { return ( diff --git a/apps/www/__registry__/index.tsx b/apps/www/__registry__/index.tsx index e917a27a..350778fc 100644 --- a/apps/www/__registry__/index.tsx +++ b/apps/www/__registry__/index.tsx @@ -722,7 +722,7 @@ export const Index: Record = { name: "login-nexsale", description: "A login page with form and image.", type: "registry:block", - registryDependencies: undefined, + registryDependencies: ["button","card","input","label"], files: [{ path: "registry/new-york/blocks/login-nexsale/page.tsx", type: "registry:page", @@ -733,11 +733,7 @@ export const Index: Record = { target: "" },{ path: "registry/new-york/blocks/login-nexsale/components/spline-background.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/blocks/login-nexsale/assets/nexsale_background__sales.avif", - type: "registry:prodkt", + type: "registry:component", target: "" }], categories: ["authentication","login"], @@ -749,7 +745,7 @@ export const Index: Record = { name: "web-app-01", description: "A web app layout with a navigation bar and a sidebar.", type: "registry:block", - registryDependencies: ["button","card","input","label","badge","DecorativeBg8","ProdktModeToggle","ThemeSwitcher","Footer","SheetMenu","Sidebar","Container","SocialMedia"], + registryDependencies: ["button","card","input","label","badge","Footer","SheetMenu","Sidebar","Container","SocialMedia"], files: [{ path: "registry/new-york/blocks/layouts/web-app-01/page.tsx", type: "registry:page", @@ -2425,7 +2421,7 @@ export const Index: Record = { name: "button-variants", description: "", type: "registry:lib", - registryDependencies: undefined, + registryDependencies: ["utils"], files: [{ path: "registry/new-york/lib/button-variants.ts", type: "registry:lib", @@ -2466,7155 +2462,11122 @@ export const Index: Record = { source: "", meta: undefined, }, - "buttonVariants": { - name: "buttonVariants", + "logo_supabase": { + name: "logo_supabase", description: "", - type: "registry:lib", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/lib/buttonUtils.ts", - type: "registry:lib", - target: "" - },{ - path: "registry/new-york/lib/button-variants.ts", - type: "registry:lib", + path: "registry/new-york/logos/logo_supabase.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/lib/buttonUtils.ts")), + component: React.lazy(() => import("@/registry/logos/logo_supabase")), source: "", meta: undefined, }, - "use-store": { - name: "use-store", + "logo_acrobat": { + name: "logo_acrobat", description: "", - type: "registry:hook", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/hooks/use-store.ts", - type: "registry:hook", + path: "registry/new-york/logos/logo_acrobat.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/hooks/use-store.ts")), + component: React.lazy(() => import("@/registry/logos/logo_acrobat")), source: "", meta: undefined, }, - "use-sidebar-toggle": { - name: "use-sidebar-toggle", + "logo_adobe-illustrator": { + name: "logo_adobe-illustrator", description: "", - type: "registry:hook", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/hooks/use-sidebar-toggle.ts", - type: "registry:hook", + path: "registry/new-york/logos/logo_adobe-illustrator.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/hooks/use-sidebar-toggle.ts")), + component: React.lazy(() => import("@/registry/logos/logo_adobe-illustrator")), source: "", meta: undefined, }, - "use-mobile": { - name: "use-mobile", + "logo_astro": { + name: "logo_astro", description: "", - type: "registry:hook", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/hooks/use-mobile.tsx", - type: "registry:hook", + path: "registry/new-york/logos/logo_astro.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/hooks/use-mobile.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_astro")), source: "", meta: undefined, }, - "use-toast": { - name: "use-toast", + "logo_cisco": { + name: "logo_cisco", description: "", - type: "registry:hook", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/hooks/use-toast.ts", - type: "registry:hook", + path: "registry/new-york/logos/logo_cisco.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/hooks/use-toast.ts")), + component: React.lazy(() => import("@/registry/logos/logo_cisco")), source: "", meta: undefined, }, - "use-ripple": { - name: "use-ripple", + "logo_cocacola": { + name: "logo_cocacola", description: "", - type: "registry:hook", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/hooks/use-ripple.ts", - type: "registry:hook", + path: "registry/new-york/logos/logo_cocacola.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/hooks/use-ripple.ts")), + component: React.lazy(() => import("@/registry/logos/logo_cocacola")), source: "", meta: undefined, }, - "logo-cloud-01": { - name: "logo-cloud-01", + "logo_confluence": { + name: "logo_confluence", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/sections/logo-cloud-01/index.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_confluence.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/sections/logo-cloud-01/index.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_confluence")), source: "", meta: undefined, }, - "timecard": { - name: "timecard", + "logo_datadog": { + name: "logo_datadog", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/timecard/index.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_datadog.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/timecard/index.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_datadog")), source: "", meta: undefined, }, - "fade-in": { - name: "fade-in", + "logo_directus": { + name: "logo_directus", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/motion/fade-in.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_directus.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/motion/fade-in.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_directus")), source: "", meta: undefined, }, - "fade-out": { - name: "fade-out", + "logo_docker": { + name: "logo_docker", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/motion/fade-out.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_docker.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/motion/fade-out.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_docker")), source: "", meta: undefined, }, - "footer-01": { - name: "footer-01", + "logo_dominos": { + name: "logo_dominos", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/footers/footer-01/index.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_dominos.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/footers/footer-01/index.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_dominos")), source: "", meta: undefined, }, - "web-app-01-layout": { - name: "web-app-01-layout", + "logo_eminem": { + name: "logo_eminem", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/layouts/web-app-01/index.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/offices.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/container.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/social-media.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/admin-panel-layout.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/collapse-menu-button.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/content-layout.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/footer.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/menu-list.ts", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/menu.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/navbar.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/sheet-menu.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/sidebar-toggle.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/sidebar.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/user-nav.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_eminem.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/layouts/web-app-01/index.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_eminem")), source: "", meta: undefined, }, - "jump-to-section": { - name: "jump-to-section", + "logo_figma": { + name: "logo_figma", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/jump-to-section/index.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/jump-to-section/bryan-funk-section.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/jump-to-section/marquee.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/jump-to-section/skill-marquee.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/new-york/prodkt/jump-to-section/grid-bg-03.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_figma.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/jump-to-section/index.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_figma")), source: "", meta: undefined, }, - "tracer-card": { - name: "tracer-card", + "logo_gitbook": { + name: "logo_gitbook", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/effect-card/tracer-card.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_gitbook.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/effect-card/tracer-card.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_gitbook")), source: "", meta: undefined, }, - "marquee-section": { - name: "marquee-section", + "logo_google-analytics": { + name: "logo_google-analytics", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/marquee-section.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_google-analytics.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/marquee-section.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_google-analytics")), source: "", meta: undefined, }, - "bento-grid-uno": { - name: "bento-grid-uno", + "logo_hellsangels": { + name: "logo_hellsangels", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/bento-grid-uno/index.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_hellsangels.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/bento-grid-uno/index.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_hellsangels")), source: "", meta: undefined, }, - "add-action-popout": { - name: "add-action-popout", + "logo_hm": { + name: "logo_hm", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/assets/add-action-popout.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_hm.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/assets/add-action-popout.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_hm")), source: "", meta: undefined, }, - "flows-compact-sidebar": { - name: "flows-compact-sidebar", + "logo_hp": { + name: "logo_hp", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/assets/flows-compact-sidebar.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_hp.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/assets/flows-compact-sidebar.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_hp")), source: "", meta: undefined, }, - "floating-create-dialog": { - name: "floating-create-dialog", + "logo_ideanote": { + name: "logo_ideanote", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/assets/floating-create-dialog.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_ideanote.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/assets/floating-create-dialog.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_ideanote")), source: "", meta: undefined, }, - "flows-floating-topbar": { - name: "flows-floating-topbar", + "logo_nexsale": { + name: "logo_nexsale", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/assets/flows-floating-topbar.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_nexsale.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/assets/flows-floating-topbar.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_nexsale")), source: "", meta: undefined, }, - "keyboard-shortcut-key": { - name: "keyboard-shortcut-key", + "logo_pendo": { + name: "logo_pendo", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/assets/keyboard-shortcut-key.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_pendo.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/assets/keyboard-shortcut-key.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_pendo")), source: "", meta: undefined, }, - "keyboard-shortcut-multikey": { - name: "keyboard-shortcut-multikey", + "logo_posthog": { + name: "logo_posthog", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/assets/keyboard-shortcut-multikey.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_posthog.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/assets/keyboard-shortcut-multikey.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_posthog")), source: "", meta: undefined, }, - "learner-badge": { - name: "learner-badge", + "logo_postmark": { + name: "logo_postmark", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/assets/learner-badge.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_postmark.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/assets/learner-badge.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_postmark")), source: "", meta: undefined, }, - "onboarding-guide": { - name: "onboarding-guide", + "logo_react": { + name: "logo_react", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/assets/onboarding-guide.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_react.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/assets/onboarding-guide.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_react")), source: "", meta: undefined, }, - "planfoundry-collapsed-sidebar": { - name: "planfoundry-collapsed-sidebar", + "logo_revolutionvodka": { + name: "logo_revolutionvodka", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/assets/planfoundry-collapsed-sidebar.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_revolutionvodka.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/assets/planfoundry-collapsed-sidebar.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_revolutionvodka")), source: "", meta: undefined, }, - "planfoundry-sidebar": { - name: "planfoundry-sidebar", + "logo_samsung": { + name: "logo_samsung", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/assets/planfoundry-sidebar.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_samsung.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/assets/planfoundry-sidebar.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_samsung")), source: "", meta: undefined, }, - "logo-context": { - name: "logo-context", + "logo_scales": { + name: "logo_scales", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logo-context.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_scales.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logo-context.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_scales")), source: "", meta: undefined, }, - "design-system-icons": { - name: "design-system-icons", + "logo_shady": { + name: "logo_shady", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/icons/design-system/index.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_shady.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/icons/design-system/index.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_shady")), source: "", meta: undefined, }, - "prodkt-navigation-icons": { - name: "prodkt-navigation-icons", + "logo_starlight": { + name: "logo_starlight", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/icons/prodkt-navigation/index.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_starlight.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/icons/prodkt-navigation/index.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_starlight")), source: "", meta: undefined, }, - "logo_craft": { - name: "logo_craft", + "logo_stencil": { + name: "logo_stencil", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logo_craft.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_stencil.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logo_craft.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_stencil")), source: "", meta: undefined, }, - "logo_olio": { - name: "logo_olio", + "logo_storybook": { + name: "logo_storybook", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logo_olio.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_storybook.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logo_olio.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_storybook")), source: "", meta: undefined, }, - "logo_planfoundry": { - name: "logo_planfoundry", + "logo_strapi": { + name: "logo_strapi", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logo_planfoundry.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_strapi.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logo_planfoundry.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_strapi")), source: "", meta: undefined, }, - "logo_scales": { - name: "logo_scales", + "logo_stripe": { + name: "logo_stripe", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logo_scales.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_stripe.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logo_scales.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_stripe")), source: "", meta: undefined, }, - "logomark_ampersand": { - name: "logomark_ampersand", + "logo_style-dictionary": { + name: "logo_style-dictionary", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_ampersand.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_style-dictionary.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_ampersand.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_style-dictionary")), source: "", meta: undefined, }, - "logomark_craft": { - name: "logomark_craft", + "logo_supernova": { + name: "logo_supernova", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_craft.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_supernova.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_craft.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_supernova")), source: "", meta: undefined, }, - "logomark_digidoc": { - name: "logomark_digidoc", + "logo_tokens-studio": { + name: "logo_tokens-studio", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_digidoc.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_tokens-studio.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_digidoc.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_tokens-studio")), source: "", meta: undefined, }, - "logomark_explor": { - name: "logomark_explor", + "logo_toyota": { + name: "logo_toyota", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_explor.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_toyota.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_explor.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_toyota")), source: "", meta: undefined, }, - "logomark_flows": { - name: "logomark_flows", + "logo_truwhip": { + name: "logo_truwhip", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_flows.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_truwhip.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_flows.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_truwhip")), source: "", meta: undefined, }, - "logomark_leveln": { - name: "logomark_leveln", + "logo_turborepo": { + name: "logo_turborepo", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_leveln.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_turborepo.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_leveln.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_turborepo")), source: "", meta: undefined, }, - "logomark_olio": { - name: "logomark_olio", + "logo_zendesk": { + name: "logo_zendesk", description: "", - type: "registry:prodkt", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_olio.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logo_zendesk.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_olio.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_zendesk")), source: "", meta: undefined, }, - "logomark_planfoundry": { - name: "logomark_planfoundry", + "logomark_supabase": { + name: "logomark_supabase", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_planfoundry.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_supabase.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_planfoundry.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_supabase")), source: "", meta: undefined, }, - "logomark_remix": { - name: "logomark_remix", + "logomark_ably": { + name: "logomark_ably", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_remix.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_ably.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_remix.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_ably")), source: "", meta: undefined, }, - "logomark_scales": { - name: "logomark_scales", + "logomark_airtable": { + name: "logomark_airtable", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_scales.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_airtable.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_scales.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_airtable")), source: "", meta: undefined, }, - "logomark_signal": { - name: "logomark_signal", + "logomark_amazon-icon": { + name: "logomark_amazon-icon", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_signal.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_amazon-icon.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_signal.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_amazon-icon")), source: "", meta: undefined, }, - "logomark_sugarless": { - name: "logomark_sugarless", + "logomark_ampersand": { + name: "logomark_ampersand", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logomark_sugarless.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_ampersand.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logomark_sugarless.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_ampersand")), source: "", meta: undefined, }, - "designer-marks-button": { - name: "designer-marks-button", + "logomark_antd": { + name: "logomark_antd", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/designer-marks-button.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_antd.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/designer-marks-button.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_antd")), source: "", meta: undefined, }, - "site-header": { - name: "site-header", + "logomark_appwrite": { + name: "logomark_appwrite", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/site-header/index.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_appwrite.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/site-header/index.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_appwrite")), source: "", meta: undefined, }, - "effect-ripple": { - name: "effect-ripple", + "logomark_astro": { + name: "logomark_astro", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/effect-ripple.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_astro.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/effect-ripple.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_astro")), source: "", meta: undefined, }, - "site-hero": { - name: "site-hero", + "logomark_atlassian": { + name: "logomark_atlassian", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/site-hero/index.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_atlassian.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/site-hero/index.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_atlassian")), source: "", meta: undefined, }, - "prodkt-mode-toggle": { - name: "prodkt-mode-toggle", + "logomark_auth-js": { + name: "logomark_auth-js", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/prodkt-mode-toggle.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_auth-js.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/prodkt-mode-toggle.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_auth-js")), source: "", meta: undefined, }, - "config-theme-switcher": { - name: "config-theme-switcher", + "logomark_auth0": { + name: "logomark_auth0", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/config-theme-switcher.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_auth0.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/config-theme-switcher.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_auth0")), source: "", meta: undefined, }, - "theme-switcher": { - name: "theme-switcher", + "logomark_autodesk": { + name: "logomark_autodesk", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/theme-switcher.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_autodesk.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/theme-switcher.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_autodesk")), source: "", meta: undefined, }, - "logo-shuffle": { - name: "logo-shuffle", + "logomark_aws-cognito": { + name: "logomark_aws-cognito", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/logo-shuffle.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_aws-cognito.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/logo-shuffle.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_aws-cognito")), source: "", meta: undefined, }, - "client-shuffle": { - name: "client-shuffle", + "logomark_azure-active-directory": { + name: "logomark_azure-active-directory", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/client-shuffle.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_azure-active-directory.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/client-shuffle.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_azure-active-directory")), source: "", meta: undefined, }, - "app-icons-section": { - name: "app-icons-section", + "logomark_biome": { + name: "logomark_biome", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/app-icons-section.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_biome.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/app-icons-section.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_biome")), source: "", meta: undefined, }, - "magnify-app-icons": { - name: "magnify-app-icons", + "logomark_black-box": { + name: "logomark_black-box", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/magnify-app-icons.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_black-box.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/magnify-app-icons.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_black-box")), source: "", meta: undefined, }, - "animated-collaboration": { - name: "animated-collaboration", + "logomark_bun": { + name: "logomark_bun", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/animated-collaboration.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_bun.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/animated-collaboration.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_bun")), source: "", meta: undefined, }, - "github-stars": { - name: "github-stars", + "logomark_chakra": { + name: "logomark_chakra", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/github-stars.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_chakra.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/github-stars.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_chakra")), source: "", meta: undefined, }, - "creative-tab-slider": { - name: "creative-tab-slider", + "logomark_chroma": { + name: "logomark_chroma", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/creative-tab-slider.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_chroma.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/creative-tab-slider.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_chroma")), source: "", meta: undefined, }, - "technology-cloud": { - name: "technology-cloud", + "logomark_chromatic": { + name: "logomark_chromatic", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/technology-cloud.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_chromatic.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/technology-cloud.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_chromatic")), source: "", meta: undefined, }, - "designer-marks": { - name: "designer-marks", + "logomark_cisco": { + name: "logomark_cisco", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/designer-marks.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_cisco.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/designer-marks.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_cisco")), source: "", meta: undefined, }, - "supabase-cta": { - name: "supabase-cta", + "logomark_clerk": { + name: "logomark_clerk", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/supabase-cta.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_clerk.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/supabase-cta.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_clerk")), source: "", meta: undefined, }, - "storybook-cta": { - name: "storybook-cta", + "logomark_craft": { + name: "logomark_craft", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/storybook-cta.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_craft.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/storybook-cta.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_craft")), source: "", meta: undefined, }, - "packages-marquee": { - name: "packages-marquee", + "logomark_custom-auth": { + name: "logomark_custom-auth", description: "", - type: "registry:prodkt", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/prodkt/packages-marquee.tsx", - type: "registry:prodkt", + path: "registry/new-york/logos/logomark_custom-auth.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/prodkt/packages-marquee.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_custom-auth")), source: "", meta: undefined, }, - "marquee": { - name: "marquee", + "logomark_datatables": { + name: "logomark_datatables", description: "", - type: "registry:effect", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/effects/marquee.tsx", - type: "registry:effect", + path: "registry/new-york/logos/logomark_datatables.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/effects/marquee.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_datatables")), source: "", meta: undefined, }, - "tracer": { - name: "tracer", + "logomark_deloitte": { + name: "logomark_deloitte", description: "", - type: "registry:effect", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/effects/tracer.tsx", - type: "registry:effect", + path: "registry/new-york/logos/logomark_deloitte.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/effects/tracer.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_deloitte")), source: "", meta: undefined, }, - "shine": { - name: "shine", + "logomark_digidoc": { + name: "logomark_digidoc", description: "", - type: "registry:effect", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/new-york/effects/shine.tsx", - type: "registry:effect", + path: "registry/new-york/logos/logomark_digidoc.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/effects/shine.tsx")), + component: React.lazy(() => import("@/registry/logos/logomark_digidoc")), source: "", meta: undefined, }, - "sink": { - name: "sink", + "logomark_directus": { + name: "logomark_directus", description: "", - type: "registry:internal", - registryDependencies: ["accordion","alert","alert-dialog","aspect-ratio","avatar","badge","breadcrumb","button","calendar","card","carousel","chart","checkbox","collapsible","command","context-menu","dialog","drawer","dropdown-menu","hover-card","input","input-otp","label","menubar","navigation-menu","pagination","popover","progress","radio-group","resizable","scroll-area","select","separator","sheet","sidebar","skeleton","slider","sonner","switch","table","tabs","textarea","toast","toggle","toggle-group","tooltip"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/new-york/internal/sink/page.tsx", - type: "registry:page", - target: "app/sink/page.tsx" - },{ - path: "registry/new-york/internal/sink/components/app-sidebar.tsx", - type: "registry:component", + path: "registry/new-york/logos/logomark_directus.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/component-wrapper.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_directus")), + source: "", + meta: undefined, + }, + "logomark_docker": { + name: "logomark_docker", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_docker.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/nav-main.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_docker")), + source: "", + meta: undefined, + }, + "logomark_dp": { + name: "logomark_dp", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_dp.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/nav-projects.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_dp")), + source: "", + meta: undefined, + }, + "logomark_elide-graphql": { + name: "logomark_elide-graphql", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_elide-graphql.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/nav-user.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_elide-graphql")), + source: "", + meta: undefined, + }, + "logomark_elide": { + name: "logomark_elide", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_elide.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/team-switcher.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_elide")), + source: "", + meta: undefined, + }, + "logomark_entrefine": { + name: "logomark_entrefine", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_entrefine.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/accordion-demo.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/new-york/internal/sink/components/alert-demo.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/new-york/internal/sink/components/alert-dialog-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_entrefine")), + source: "", + meta: undefined, + }, + "logomark_explor": { + name: "logomark_explor", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_explor.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/aspect-ratio-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_explor")), + source: "", + meta: undefined, + }, + "logomark_expo": { + name: "logomark_expo", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_expo.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/avatar-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_expo")), + source: "", + meta: undefined, + }, + "logomark_figma": { + name: "logomark_figma", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_figma.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/badge-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_figma")), + source: "", + meta: undefined, + }, + "logomark_firebase": { + name: "logomark_firebase", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_firebase.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/breadcrumb-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_firebase")), + source: "", + meta: undefined, + }, + "logomark_flows": { + name: "logomark_flows", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_flows.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/button-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_flows")), + source: "", + meta: undefined, + }, + "logomark_github": { + name: "logomark_github", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_github.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/calendar-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_github")), + source: "", + meta: undefined, + }, + "logomark_google": { + name: "logomark_google", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_google.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/card-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_google")), + source: "", + meta: undefined, + }, + "logomark_graphql": { + name: "logomark_graphql", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_graphql.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/carousel-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_graphql")), + source: "", + meta: undefined, + }, + "logomark_hasura": { + name: "logomark_hasura", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_hasura.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/checkbox-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_hasura")), + source: "", + meta: undefined, + }, + "logomark_headless": { + name: "logomark_headless", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_headless.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/collapsible-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_headless")), + source: "", + meta: undefined, + }, + "logomark_hook-form": { + name: "logomark_hook-form", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_hook-form.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/combobox-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_hook-form")), + source: "", + meta: undefined, + }, + "logomark_hygraph": { + name: "logomark_hygraph", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_hygraph.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/command-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_hygraph")), + source: "", + meta: undefined, + }, + "logomark_ibm": { + name: "logomark_ibm", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_ibm.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/context-menu-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_ibm")), + source: "", + meta: undefined, + }, + "logomark_intel": { + name: "logomark_intel", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_intel.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/date-picker-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_intel")), + source: "", + meta: undefined, + }, + "logomark_jp-morgan": { + name: "logomark_jp-morgan", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_jp-morgan.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/dialog-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_jp-morgan")), + source: "", + meta: undefined, + }, + "logomark_json-api": { + name: "logomark_json-api", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_json-api.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/drawer-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_json-api")), + source: "", + meta: undefined, + }, + "logomark_kbar": { + name: "logomark_kbar", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_kbar.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/dropdown-menu-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_kbar")), + source: "", + meta: undefined, + }, + "logomark_kinde": { + name: "logomark_kinde", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_kinde.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/hover-card-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_kinde")), + source: "", + meta: undefined, + }, + "logomark_leveln": { + name: "logomark_leveln", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_leveln.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/input-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_leveln")), + source: "", + meta: undefined, + }, + "logomark_lit": { + name: "logomark_lit", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_lit.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/input-otp-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_lit")), + source: "", + meta: undefined, + }, + "logomark_mantine": { + name: "logomark_mantine", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_mantine.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/label-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_mantine")), + source: "", + meta: undefined, + }, + "logomark_medusa": { + name: "logomark_medusa", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_medusa.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/menubar-demo.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/new-york/internal/sink/components/navigation-menu-demo.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/new-york/internal/sink/components/pagination-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_medusa")), + source: "", + meta: undefined, + }, + "logomark_meta": { + name: "logomark_meta", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_meta.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/popover-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_meta")), + source: "", + meta: undefined, + }, + "logomark_mongodb": { + name: "logomark_mongodb", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_mongodb.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/progress-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_mongodb")), + source: "", + meta: undefined, + }, + "logomark_ms-sql-server": { + name: "logomark_ms-sql-server", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_ms-sql-server.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/radio-group-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_ms-sql-server")), + source: "", + meta: undefined, + }, + "logomark_mui": { + name: "logomark_mui", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_mui.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/resizable-handle.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_mui")), + source: "", + meta: undefined, + }, + "logomark_mysql": { + name: "logomark_mysql", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_mysql.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/scroll-area-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_mysql")), + source: "", + meta: undefined, + }, + "logomark_nest-query": { + name: "logomark_nest-query", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_nest-query.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/select-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_nest-query")), + source: "", + meta: undefined, + }, + "logomark_nest": { + name: "logomark_nest", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_nest.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/separator-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_nest")), + source: "", + meta: undefined, + }, + "logomark_nextjs": { + name: "logomark_nextjs", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_nextjs.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/sheet-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_nextjs")), + source: "", + meta: undefined, + }, + "logomark_nodejs": { + name: "logomark_nodejs", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_nodejs.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/skeleton-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_nodejs")), + source: "", + meta: undefined, + }, + "logomark_okta": { + name: "logomark_okta", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_okta.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/slider-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_okta")), + source: "", + meta: undefined, + }, + "logomark_olio": { + name: "logomark_olio", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_olio.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/sonner-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_olio")), + source: "", + meta: undefined, + }, + "logomark_oracle": { + name: "logomark_oracle", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_oracle.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/switch-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_oracle")), + source: "", + meta: undefined, + }, + "logomark_partytown": { + name: "logomark_partytown", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_partytown.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/table-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_partytown")), + source: "", + meta: undefined, + }, + "logomark_pendo": { + name: "logomark_pendo", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_pendo.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/tabs-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_pendo")), + source: "", + meta: undefined, + }, + "logomark_planfoundry": { + name: "logomark_planfoundry", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_planfoundry.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/textarea-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_planfoundry")), + source: "", + meta: undefined, + }, + "logomark_pocketbase": { + name: "logomark_pocketbase", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_pocketbase.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/toast-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_pocketbase")), + source: "", + meta: undefined, + }, + "logomark_postgresql": { + name: "logomark_postgresql", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_postgresql.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/toggle-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_postgresql")), + source: "", + meta: undefined, + }, + "logomark_posthog": { + name: "logomark_posthog", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_posthog.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/toggle-group-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_posthog")), + source: "", + meta: undefined, + }, + "logomark_radix": { + name: "logomark_radix", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_radix.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/tooltip-demo.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_radix")), + source: "", + meta: undefined, + }, + "logomark_react": { + name: "logomark_react", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_react.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/badge-destructive.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_react")), + source: "", + meta: undefined, + }, + "logomark_remix": { + name: "logomark_remix", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_remix.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/new-york/internal/sink/components/badge-outline.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_remix")), + source: "", + meta: undefined, + }, + "logomark_rest-without-text": { + name: "logomark_rest-without-text", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_rest-without-text.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_rest-without-text")), + source: "", + meta: undefined, + }, + "logomark_rest": { + name: "logomark_rest", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_rest.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_rest")), + source: "", + meta: undefined, + }, + "logomark_salesforce": { + name: "logomark_salesforce", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_salesforce.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_salesforce")), + source: "", + meta: undefined, + }, + "logomark_sanity": { + name: "logomark_sanity", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_sanity.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_sanity")), + source: "", + meta: undefined, + }, + "logomark_scales": { + name: "logomark_scales", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_scales.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_scales")), + source: "", + meta: undefined, + }, + "logomark_sentry": { + name: "logomark_sentry", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_sentry.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_sentry")), + source: "", + meta: undefined, + }, + "logomark_shadcn-ui": { + name: "logomark_shadcn-ui", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_shadcn-ui.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_shadcn-ui")), + source: "", + meta: undefined, + }, + "logomark_shadcn": { + name: "logomark_shadcn", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_shadcn.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_shadcn")), + source: "", + meta: undefined, + }, + "logomark_signal": { + name: "logomark_signal", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_signal.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_signal")), + source: "", + meta: undefined, + }, + "logomark_slack": { + name: "logomark_slack", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_slack.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_slack")), + source: "", + meta: undefined, + }, + "logomark_sqlite": { + name: "logomark_sqlite", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_sqlite.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_sqlite")), + source: "", + meta: undefined, + }, + "logomark_storybook": { + name: "logomark_storybook", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_storybook.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_storybook")), + source: "", + meta: undefined, + }, + "logomark_strapi": { + name: "logomark_strapi", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_strapi.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_strapi")), + source: "", + meta: undefined, + }, + "logomark_styledictionary": { + name: "logomark_styledictionary", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_styledictionary.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_styledictionary")), + source: "", + meta: undefined, + }, + "logomark_sugarless": { + name: "logomark_sugarless", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_sugarless.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_sugarless")), + source: "", + meta: undefined, + }, + "logomark_swagger": { + name: "logomark_swagger", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_swagger.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_swagger")), + source: "", + meta: undefined, + }, + "logomark_tailwind": { + name: "logomark_tailwind", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_tailwind.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_tailwind")), + source: "", + meta: undefined, + }, + "logomark_tailwindcss": { + name: "logomark_tailwindcss", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_tailwindcss.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_tailwindcss")), + source: "", + meta: undefined, + }, + "logomark_turborepo": { + name: "logomark_turborepo", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_turborepo.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_turborepo")), + source: "", + meta: undefined, + }, + "logomark_typescript": { + name: "logomark_typescript", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_typescript.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_typescript")), + source: "", + meta: undefined, + }, + "logomark_upwork": { + name: "logomark_upwork", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_upwork.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_upwork")), + source: "", + meta: undefined, + }, + "logomark_usegenerated": { + name: "logomark_usegenerated", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_usegenerated.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_usegenerated")), + source: "", + meta: undefined, + }, + "logomark_vercel": { + name: "logomark_vercel", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_vercel.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_vercel")), + source: "", + meta: undefined, + }, + "logomark_vite": { + name: "logomark_vite", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_vite.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_vite")), + source: "", + meta: undefined, + }, + "logomark_wizards": { + name: "logomark_wizards", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_wizards.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_wizards")), + source: "", + meta: undefined, + }, + "logomark_zeplin": { + name: "logomark_zeplin", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/logos/logomark_zeplin.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_zeplin")), + source: "", + meta: undefined, + }, + "use-store": { + name: "use-store", + description: "", + type: "registry:hook", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/hooks/use-store.ts", + type: "registry:hook", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/hooks/use-store.ts")), + source: "", + meta: undefined, + }, + "use-sidebar-toggle": { + name: "use-sidebar-toggle", + description: "", + type: "registry:hook", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/hooks/use-sidebar-toggle.ts", + type: "registry:hook", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/hooks/use-sidebar-toggle.ts")), + source: "", + meta: undefined, + }, + "use-mobile": { + name: "use-mobile", + description: "", + type: "registry:hook", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/hooks/use-mobile.tsx", + type: "registry:hook", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/hooks/use-mobile.tsx")), + source: "", + meta: undefined, + }, + "use-toast": { + name: "use-toast", + description: "", + type: "registry:hook", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/hooks/use-toast.ts", + type: "registry:hook", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/hooks/use-toast.ts")), + source: "", + meta: undefined, + }, + "use-ripple": { + name: "use-ripple", + description: "", + type: "registry:hook", + registryDependencies: ["dom-animation"], + files: [{ + path: "registry/new-york/hooks/use-ripple.ts", + type: "registry:hook", + target: "" + },{ + path: "registry/new-york/lib/dom-animation.ts", + type: "registry:lib", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/hooks/use-ripple.ts")), + source: "", + meta: undefined, + }, + "rive-mode-toggle": { + name: "rive-mode-toggle", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/rive/mode-toggle/index.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/rive/mode-toggle/index.tsx")), + source: "", + meta: undefined, + }, + "logo-cloud-01": { + name: "logo-cloud-01", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/sections/logo-cloud-01/index.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/sections/logo-cloud-01/index.tsx")), + source: "", + meta: undefined, + }, + "timecard": { + name: "timecard", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/timecard/index.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/timecard/index.tsx")), + source: "", + meta: undefined, + }, + "fade-in": { + name: "fade-in", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/motion/fade-in.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/motion/fade-in.tsx")), + source: "", + meta: undefined, + }, + "fade-out": { + name: "fade-out", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/motion/fade-out.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/motion/fade-out.tsx")), + source: "", + meta: undefined, + }, + "footer-01": { + name: "footer-01", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/footers/footer-01/index.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/footers/footer-01/index.tsx")), + source: "", + meta: undefined, + }, + "web-app-01-layout": { + name: "web-app-01-layout", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/layouts/web-app-01/index.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/offices.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/container.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/social-media.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/admin-panel-layout.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/collapse-menu-button.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/content-layout.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/footer.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/menu-list.ts", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/menu.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/navbar.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/sheet-menu.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/sidebar-toggle.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/sidebar.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/layouts/web-app-01/aside-01/user-nav.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/layouts/web-app-01/index.tsx")), + source: "", + meta: undefined, + }, + "jump-to-section": { + name: "jump-to-section", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/jump-to-section/index.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/jump-to-section/bryan-funk-section.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/jump-to-section/marquee.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/jump-to-section/skill-marquee.tsx", + type: "registry:prodkt", + target: "" + },{ + path: "registry/new-york/prodkt/jump-to-section/grid-bg-03.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/jump-to-section/index.tsx")), + source: "", + meta: undefined, + }, + "tracer-card": { + name: "tracer-card", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/effect-card/tracer-card.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/effect-card/tracer-card.tsx")), + source: "", + meta: undefined, + }, + "marquee-section": { + name: "marquee-section", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/marquee-section.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/marquee-section.tsx")), + source: "", + meta: undefined, + }, + "bento-grid-uno": { + name: "bento-grid-uno", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/bento-grid-uno/index.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/bento-grid-uno/index.tsx")), + source: "", + meta: undefined, + }, + "add-action-popout": { + name: "add-action-popout", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/assets/add-action-popout.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/assets/add-action-popout.tsx")), + source: "", + meta: undefined, + }, + "flows-compact-sidebar": { + name: "flows-compact-sidebar", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/assets/flows-compact-sidebar.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/assets/flows-compact-sidebar.tsx")), + source: "", + meta: undefined, + }, + "floating-create-dialog": { + name: "floating-create-dialog", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/assets/floating-create-dialog.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/assets/floating-create-dialog.tsx")), + source: "", + meta: undefined, + }, + "flows-floating-topbar": { + name: "flows-floating-topbar", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/assets/flows-floating-topbar.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/assets/flows-floating-topbar.tsx")), + source: "", + meta: undefined, + }, + "keyboard-shortcut-key": { + name: "keyboard-shortcut-key", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/assets/keyboard-shortcut-key.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/assets/keyboard-shortcut-key.tsx")), + source: "", + meta: undefined, + }, + "keyboard-shortcut-multikey": { + name: "keyboard-shortcut-multikey", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/assets/keyboard-shortcut-multikey.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/assets/keyboard-shortcut-multikey.tsx")), + source: "", + meta: undefined, + }, + "learner-badge": { + name: "learner-badge", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/assets/learner-badge.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/assets/learner-badge.tsx")), + source: "", + meta: undefined, + }, + "onboarding-guide": { + name: "onboarding-guide", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/assets/onboarding-guide.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/assets/onboarding-guide.tsx")), + source: "", + meta: undefined, + }, + "planfoundry-collapsed-sidebar": { + name: "planfoundry-collapsed-sidebar", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/assets/planfoundry-collapsed-sidebar.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/assets/planfoundry-collapsed-sidebar.tsx")), + source: "", + meta: undefined, + }, + "planfoundry-sidebar": { + name: "planfoundry-sidebar", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/assets/planfoundry-sidebar.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/assets/planfoundry-sidebar.tsx")), + source: "", + meta: undefined, + }, + "logo-context": { + name: "logo-context", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/logo-context.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/logo-context.tsx")), + source: "", + meta: undefined, + }, + "designer-marks-button": { + name: "designer-marks-button", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/designer-marks-button.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/designer-marks-button.tsx")), + source: "", + meta: undefined, + }, + "site-header": { + name: "site-header", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/site-header/index.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/site-header/index.tsx")), + source: "", + meta: undefined, + }, + "effect-ripple": { + name: "effect-ripple", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/effect-ripple.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/effect-ripple.tsx")), + source: "", + meta: undefined, + }, + "site-hero": { + name: "site-hero", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/site-hero/index.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/site-hero/index.tsx")), + source: "", + meta: undefined, + }, + "prodkt-mode-toggle": { + name: "prodkt-mode-toggle", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/prodkt-mode-toggle.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/prodkt-mode-toggle.tsx")), + source: "", + meta: undefined, + }, + "config-theme-switcher": { + name: "config-theme-switcher", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/config-theme-switcher.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/config-theme-switcher.tsx")), + source: "", + meta: undefined, + }, + "theme-switcher": { + name: "theme-switcher", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/theme-switcher.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/theme-switcher.tsx")), + source: "", + meta: undefined, + }, + "logo-shuffle": { + name: "logo-shuffle", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/logo-shuffle.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/logo-shuffle.tsx")), + source: "", + meta: undefined, + }, + "client-shuffle": { + name: "client-shuffle", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/client-shuffle.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/client-shuffle.tsx")), + source: "", + meta: undefined, + }, + "app-icons-section": { + name: "app-icons-section", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/app-icons-section.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/app-icons-section.tsx")), + source: "", + meta: undefined, + }, + "magnify-app-icons": { + name: "magnify-app-icons", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/magnify-app-icons.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/magnify-app-icons.tsx")), + source: "", + meta: undefined, + }, + "animated-collaboration": { + name: "animated-collaboration", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/animated-collaboration.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/animated-collaboration.tsx")), + source: "", + meta: undefined, + }, + "github-stars": { + name: "github-stars", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/github-stars.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/github-stars.tsx")), + source: "", + meta: undefined, + }, + "creative-tab-slider": { + name: "creative-tab-slider", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/creative-tab-slider.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/creative-tab-slider.tsx")), + source: "", + meta: undefined, + }, + "technology-cloud": { + name: "technology-cloud", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/technology-cloud.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/technology-cloud.tsx")), + source: "", + meta: undefined, + }, + "designer-marks": { + name: "designer-marks", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/designer-marks.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/designer-marks.tsx")), + source: "", + meta: undefined, + }, + "supabase-cta": { + name: "supabase-cta", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/supabase-cta.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/supabase-cta.tsx")), + source: "", + meta: undefined, + }, + "storybook-cta": { + name: "storybook-cta", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/storybook-cta.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/storybook-cta.tsx")), + source: "", + meta: undefined, + }, + "packages-marquee": { + name: "packages-marquee", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/prodkt/packages-marquee.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/prodkt/packages-marquee.tsx")), + source: "", + meta: undefined, + }, + "marquee": { + name: "marquee", + description: "", + type: "registry:effect", + registryDependencies: ["utils"], + files: [{ + path: "registry/new-york/effects/marquee.tsx", + type: "registry:effect", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/effects/marquee.tsx")), + source: "", + meta: undefined, + }, + "tracer": { + name: "tracer", + description: "", + type: "registry:effect", + registryDependencies: ["utils"], + files: [{ + path: "registry/new-york/effects/tracer.tsx", + type: "registry:effect", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/effects/tracer.tsx")), + source: "", + meta: undefined, + }, + "shine": { + name: "shine", + description: "", + type: "registry:effect", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/effects/shine.tsx", + type: "registry:effect", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/effects/shine.tsx")), + source: "", + meta: undefined, + }, + "sink": { + name: "sink", + description: "", + type: "registry:internal", + registryDependencies: ["accordion","alert","alert-dialog","aspect-ratio","avatar","badge","breadcrumb","button","calendar","card","carousel","chart","checkbox","collapsible","command","context-menu","dialog","drawer","dropdown-menu","hover-card","input","input-otp","label","menubar","navigation-menu","pagination","popover","progress","radio-group","resizable","scroll-area","select","separator","sheet","sidebar","skeleton","slider","sonner","switch","table","tabs","textarea","toast","toggle","toggle-group","tooltip"], + files: [{ + path: "registry/new-york/internal/sink/page.tsx", + type: "registry:page", + target: "app/sink/page.tsx" + },{ + path: "registry/new-york/internal/sink/components/app-sidebar.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/component-wrapper.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/nav-main.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/nav-projects.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/nav-user.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/team-switcher.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/accordion-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/alert-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/alert-dialog-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/aspect-ratio-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/avatar-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/badge-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/breadcrumb-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/button-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/calendar-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/card-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/carousel-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/checkbox-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/collapsible-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/combobox-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/command-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/context-menu-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/date-picker-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/dialog-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/drawer-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/dropdown-menu-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/hover-card-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/input-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/input-otp-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/label-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/menubar-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/navigation-menu-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/pagination-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/popover-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/progress-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/radio-group-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/resizable-handle.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/scroll-area-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/select-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/separator-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/sheet-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/skeleton-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/slider-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/sonner-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/switch-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/table-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/tabs-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/textarea-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/toast-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/toggle-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/toggle-group-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/tooltip-demo.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/badge-destructive.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/badge-outline.tsx", + type: "registry:component", target: "" },{ path: "registry/new-york/internal/sink/components/badge-secondary.tsx", type: "registry:component", target: "" - },{ - path: "registry/new-york/internal/sink/components/button-destructive.tsx", - type: "registry:component", + },{ + path: "registry/new-york/internal/sink/components/button-destructive.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/button-ghost.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/button-link.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/button-loading.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/button-outline.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/button-secondary.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/button-with-icon.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/toggle-disabled.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/toggle-outline.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/new-york/internal/sink/components/toggle-with-text.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sink/page.tsx")), + source: "", + meta: undefined, + }, + "sidebar-demo": { + name: "sidebar-demo", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-demo.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-demo.tsx")), + source: "", + meta: undefined, + }, + "sidebar-header": { + name: "sidebar-header", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-header.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-header.tsx")), + source: "", + meta: undefined, + }, + "sidebar-footer": { + name: "sidebar-footer", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-footer.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-footer.tsx")), + source: "", + meta: undefined, + }, + "sidebar-group": { + name: "sidebar-group", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-group.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-group.tsx")), + source: "", + meta: undefined, + }, + "sidebar-group-collapsible": { + name: "sidebar-group-collapsible", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-group-collapsible.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-group-collapsible.tsx")), + source: "", + meta: undefined, + }, + "sidebar-group-action": { + name: "sidebar-group-action", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-group-action.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-group-action.tsx")), + source: "", + meta: undefined, + }, + "sidebar-menu": { + name: "sidebar-menu", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-menu.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-menu.tsx")), + source: "", + meta: undefined, + }, + "sidebar-menu-action": { + name: "sidebar-menu-action", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-menu-action.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-menu-action.tsx")), + source: "", + meta: undefined, + }, + "sidebar-menu-sub": { + name: "sidebar-menu-sub", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-menu-sub.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-menu-sub.tsx")), + source: "", + meta: undefined, + }, + "sidebar-menu-collapsible": { + name: "sidebar-menu-collapsible", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-menu-collapsible.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-menu-collapsible.tsx")), + source: "", + meta: undefined, + }, + "sidebar-menu-badge": { + name: "sidebar-menu-badge", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-menu-badge.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-menu-badge.tsx")), + source: "", + meta: undefined, + }, + "sidebar-rsc": { + name: "sidebar-rsc", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-rsc.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-rsc.tsx")), + source: "", + meta: undefined, + }, + "sidebar-controlled": { + name: "sidebar-controlled", + description: "", + type: "registry:internal", + registryDependencies: undefined, + files: [{ + path: "registry/new-york/internal/sidebar-controlled.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-controlled.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-01": { + name: "v0-sidebar-01", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","label","dropdown-menu"], + files: [{ + path: "registry/new-york/internal/sidebar-01.tsx", + type: "registry:component", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-01.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-02": { + name: "v0-sidebar-02", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","label","dropdown-menu"], + files: [{ + path: "registry/new-york/internal/sidebar-02.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-02.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-03": { + name: "v0-sidebar-03", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb"], + files: [{ + path: "registry/new-york/internal/sidebar-03.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-03.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-04": { + name: "v0-sidebar-04", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator"], + files: [{ + path: "registry/new-york/internal/sidebar-04.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-04.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-05": { + name: "v0-sidebar-05", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","label","collapsible"], + files: [{ + path: "registry/new-york/internal/sidebar-05.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-05.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-06": { + name: "v0-sidebar-06", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","card","dropdown-menu"], + files: [{ + path: "registry/new-york/internal/sidebar-06.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-06.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-07": { + name: "v0-sidebar-07", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar"], + files: [{ + path: "registry/new-york/internal/sidebar-07.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-07.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-08": { + name: "v0-sidebar-08", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar"], + files: [{ + path: "registry/new-york/internal/sidebar-08.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-08.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-09": { + name: "v0-sidebar-09", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar","switch"], + files: [{ + path: "registry/new-york/internal/sidebar-09.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-09.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-10": { + name: "v0-sidebar-10", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","popover","collapsible","dropdown-menu"], + files: [{ + path: "registry/new-york/internal/sidebar-10.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-10.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-11": { + name: "v0-sidebar-11", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","collapsible"], + files: [{ + path: "registry/new-york/internal/sidebar-11.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-11.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-12": { + name: "v0-sidebar-12", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","collapsible","calendar","dropdown-menu","avatar"], + files: [{ + path: "registry/new-york/internal/sidebar-12.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-12.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-13": { + name: "v0-sidebar-13", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","button","dialog"], + files: [{ + path: "registry/new-york/internal/sidebar-13.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-13.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-14": { + name: "v0-sidebar-14", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb"], + files: [{ + path: "registry/new-york/internal/sidebar-14.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-14.tsx")), + source: "", + meta: undefined, + }, + "v0-sidebar-15": { + name: "v0-sidebar-15", + description: "", + type: "registry:internal", + registryDependencies: ["sidebar","breadcrumb","separator","popover","collapsible","dropdown-menu","calendar","avatar"], + files: [{ + path: "registry/new-york/internal/sidebar-15.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/sidebar-15.tsx")), + source: "", + meta: undefined, + }, + "v0-login-01": { + name: "v0-login-01", + description: "", + type: "registry:internal", + registryDependencies: ["button","card","input","label"], + files: [{ + path: "registry/new-york/internal/login-01.tsx", + type: "registry:internal", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/internal/login-01.tsx")), + source: "", + meta: undefined, + }, + "effect-tracer-card-demo": { + name: "effect-tracer-card-demo", + description: "", + type: "registry:example", + registryDependencies: ["tracer-card"], + files: [{ + path: "registry/new-york/examples/effect-tracer-card-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/effect-tracer-card-demo.tsx")), + source: "", + meta: undefined, + }, + "bento-grid-uno-demo": { + name: "bento-grid-uno-demo", + description: "", + type: "registry:example", + registryDependencies: ["bento-grid-uno"], + files: [{ + path: "registry/new-york/examples/bento-grid-uno-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/bento-grid-uno-demo.tsx")), + source: "", + meta: undefined, + }, + "marquee-section-demo": { + name: "marquee-section-demo", + description: "", + type: "registry:example", + registryDependencies: ["marquee-section"], + files: [{ + path: "registry/new-york/examples/marquee-section-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/marquee-section-demo.tsx")), + source: "", + meta: undefined, + }, + "packages-marquee-demo": { + name: "packages-marquee-demo", + description: "", + type: "registry:example", + registryDependencies: ["packages-marquee"], + files: [{ + path: "registry/new-york/examples/packages-marquee-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/packages-marquee-demo.tsx")), + source: "", + meta: undefined, + }, + "component-library": { + name: "component-library", + description: "", + type: "registry:example", + registryDependencies: ["component-library"], + files: [{ + path: "registry/new-york/examples/design-system-icons/component-library.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/component-library.tsx")), + source: "", + meta: undefined, + }, + "design-language": { + name: "design-language", + description: "", + type: "registry:example", + registryDependencies: ["design-language"], + files: [{ + path: "registry/new-york/examples/design-system-icons/design-language.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/design-language.tsx")), + source: "", + meta: undefined, + }, + "design-libraries": { + name: "design-libraries", + description: "", + type: "registry:example", + registryDependencies: ["design-libraries"], + files: [{ + path: "registry/new-york/examples/design-system-icons/design-libraries.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/design-libraries.tsx")), + source: "", + meta: undefined, + }, + "documentation": { + name: "documentation", + description: "", + type: "registry:example", + registryDependencies: ["documentation"], + files: [{ + path: "registry/new-york/examples/design-system-icons/documentation.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/documentation.tsx")), + source: "", + meta: undefined, + }, + "governance": { + name: "governance", + description: "", + type: "registry:example", + registryDependencies: ["governance"], + files: [{ + path: "registry/new-york/examples/design-system-icons/governance.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/governance.tsx")), + source: "", + meta: undefined, + }, + "sandboxes": { + name: "sandboxes", + description: "", + type: "registry:example", + registryDependencies: ["sandboxes"], + files: [{ + path: "registry/new-york/examples/design-system-icons/sandboxes.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/sandboxes.tsx")), + source: "", + meta: undefined, + }, + "logo_olio-demo": { + name: "logo_olio-demo", + description: "", + type: "registry:example", + registryDependencies: ["logo_olio"], + files: [{ + path: "registry/new-york/examples/logo_olio-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logo_olio-demo.tsx")), + source: "", + meta: undefined, + }, + "logo_craft-demo": { + name: "logo_craft-demo", + description: "", + type: "registry:example", + registryDependencies: ["logo_craft"], + files: [{ + path: "registry/new-york/examples/logo_craft-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logo_craft-demo.tsx")), + source: "", + meta: undefined, + }, + "logo_planfoundry-demo": { + name: "logo_planfoundry-demo", + description: "", + type: "registry:example", + registryDependencies: ["logo_planfoundry"], + files: [{ + path: "registry/new-york/examples/logo_planfoundry-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logo_planfoundry-demo.tsx")), + source: "", + meta: undefined, + }, + "logo_scales-demo": { + name: "logo_scales-demo", + description: "", + type: "registry:example", + registryDependencies: ["logo_scales"], + files: [{ + path: "registry/new-york/examples/logo_scales-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logo_scales-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_ampersand-demo": { + name: "logomark_ampersand-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_ampersand"], + files: [{ + path: "registry/new-york/examples/logomark_ampersand-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_ampersand-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_craft-demo": { + name: "logomark_craft-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_craft"], + files: [{ + path: "registry/new-york/examples/logomark_craft-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_craft-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_digidoc-demo": { + name: "logomark_digidoc-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_digidoc"], + files: [{ + path: "registry/new-york/examples/logomark_digidoc-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_digidoc-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_explor-demo": { + name: "logomark_explor-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_explor"], + files: [{ + path: "registry/new-york/examples/logomark_explor-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_explor-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_flows-demo": { + name: "logomark_flows-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_flows"], + files: [{ + path: "registry/new-york/examples/logomark_flows-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_flows-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_leveln-demo": { + name: "logomark_leveln-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_leveln"], + files: [{ + path: "registry/new-york/examples/logomark_leveln-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_leveln-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_olio-demo": { + name: "logomark_olio-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_olio"], + files: [{ + path: "registry/new-york/examples/logomark_olio-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_olio-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_planfoundry-demo": { + name: "logomark_planfoundry-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_planfoundry"], + files: [{ + path: "registry/new-york/examples/logomark_planfoundry-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_planfoundry-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_remix-demo": { + name: "logomark_remix-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_remix"], + files: [{ + path: "registry/new-york/examples/logomark_remix-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_remix-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_scales-demo": { + name: "logomark_scales-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_scales"], + files: [{ + path: "registry/new-york/examples/logomark_scales-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_scales-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_signal-demo": { + name: "logomark_signal-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_signal"], + files: [{ + path: "registry/new-york/examples/logomark_signal-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_signal-demo.tsx")), + source: "", + meta: undefined, + }, + "logomark_sugarless-demo": { + name: "logomark_sugarless-demo", + description: "", + type: "registry:example", + registryDependencies: ["logomark_sugarless"], + files: [{ + path: "registry/new-york/examples/logomark_sugarless-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logomark_sugarless-demo.tsx")), + source: "", + meta: undefined, + }, + "logo-shuffle-demo": { + name: "logo-shuffle-demo", + description: "", + type: "registry:example", + registryDependencies: ["logo-shuffle"], + files: [{ + path: "registry/new-york/examples/logo-shuffle-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logo-shuffle-demo.tsx")), + source: "", + meta: undefined, + }, + "designer-marks-button-demo": { + name: "designer-marks-button-demo", + description: "", + type: "registry:example", + registryDependencies: ["designer-marks-button"], + files: [{ + path: "registry/new-york/examples/designer-marks-button-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/designer-marks-button-demo.tsx")), + source: "", + meta: undefined, + }, + "theme-switcher-demo": { + name: "theme-switcher-demo", + description: "", + type: "registry:example", + registryDependencies: ["theme-switcher"], + files: [{ + path: "registry/new-york/examples/theme-switcher-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/theme-switcher-demo.tsx")), + source: "", + meta: undefined, + }, + "client-shuffle-demo": { + name: "client-shuffle-demo", + description: "", + type: "registry:example", + registryDependencies: ["client-shuffle"], + files: [{ + path: "registry/new-york/examples/client-shuffle-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/client-shuffle-demo.tsx")), + source: "", + meta: undefined, + }, + "logo-context-demo": { + name: "logo-context-demo", + description: "", + type: "registry:example", + registryDependencies: ["logo-context"], + files: [{ + path: "registry/new-york/examples/logo-context-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/logo-context-demo.tsx")), + source: "", + meta: undefined, + }, + "app-icons-section-demo": { + name: "app-icons-section-demo", + description: "", + type: "registry:example", + registryDependencies: ["app-icons-section"], + files: [{ + path: "registry/new-york/examples/app-icons-section-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/app-icons-section-demo.tsx")), + source: "", + meta: undefined, + }, + "magnify-app-icons-demo": { + name: "magnify-app-icons-demo", + description: "", + type: "registry:example", + registryDependencies: ["magnify-app-icons"], + files: [{ + path: "registry/new-york/examples/magnify-app-icons-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/magnify-app-icons-demo.tsx")), + source: "", + meta: undefined, + }, + "github-stars-demo": { + name: "github-stars-demo", + description: "", + type: "registry:example", + registryDependencies: ["github-stars"], + files: [{ + path: "registry/new-york/examples/github-stars-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/github-stars-demo.tsx")), + source: "", + meta: undefined, + }, + "creative-tab-slider-demo": { + name: "creative-tab-slider-demo", + description: "", + type: "registry:example", + registryDependencies: ["creative-tab-slider"], + files: [{ + path: "registry/new-york/examples/creative-tab-slider-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/creative-tab-slider-demo.tsx")), + source: "", + meta: undefined, + }, + "technology-cloud-demo": { + name: "technology-cloud-demo", + description: "", + type: "registry:example", + registryDependencies: ["technology-cloud"], + files: [{ + path: "registry/new-york/examples/technology-cloud-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/technology-cloud-demo.tsx")), + source: "", + meta: undefined, + }, + "designer-marks-demo": { + name: "designer-marks-demo", + description: "", + type: "registry:example", + registryDependencies: ["designer-marks"], + files: [{ + path: "registry/new-york/examples/designer-marks-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/designer-marks-demo.tsx")), + source: "", + meta: undefined, + }, + "storybook-cta-demo": { + name: "storybook-cta-demo", + description: "", + type: "registry:example", + registryDependencies: ["storybook-cta"], + files: [{ + path: "registry/new-york/examples/storybook-cta-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/storybook-cta-demo.tsx")), + source: "", + meta: undefined, + }, + "supabase-cta-demo": { + name: "supabase-cta-demo", + description: "", + type: "registry:example", + registryDependencies: ["supabase-cta"], + files: [{ + path: "registry/new-york/examples/supabase-cta-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/supabase-cta-demo.tsx")), + source: "", + meta: undefined, + }, + "animated-collaboration-demo": { + name: "animated-collaboration-demo", + description: "", + type: "registry:example", + registryDependencies: ["animated-collaboration"], + files: [{ + path: "registry/new-york/examples/animated-collaboration-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/animated-collaboration-demo.tsx")), + source: "", + meta: undefined, + }, + "accordion-demo": { + name: "accordion-demo", + description: "", + type: "registry:example", + registryDependencies: ["accordion"], + files: [{ + path: "registry/new-york/examples/accordion-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/accordion-demo.tsx")), + source: "", + meta: undefined, + }, + "alert-demo": { + name: "alert-demo", + description: "", + type: "registry:example", + registryDependencies: ["alert"], + files: [{ + path: "registry/new-york/examples/alert-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/alert-demo.tsx")), + source: "", + meta: undefined, + }, + "alert-destructive": { + name: "alert-destructive", + description: "", + type: "registry:example", + registryDependencies: ["alert"], + files: [{ + path: "registry/new-york/examples/alert-destructive.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/alert-destructive.tsx")), + source: "", + meta: undefined, + }, + "alert-dialog-demo": { + name: "alert-dialog-demo", + description: "", + type: "registry:example", + registryDependencies: ["alert-dialog","button"], + files: [{ + path: "registry/new-york/examples/alert-dialog-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/alert-dialog-demo.tsx")), + source: "", + meta: undefined, + }, + "aspect-ratio-demo": { + name: "aspect-ratio-demo", + description: "", + type: "registry:example", + registryDependencies: ["aspect-ratio"], + files: [{ + path: "registry/new-york/examples/aspect-ratio-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/aspect-ratio-demo.tsx")), + source: "", + meta: undefined, + }, + "avatar-demo": { + name: "avatar-demo", + description: "", + type: "registry:example", + registryDependencies: ["avatar"], + files: [{ + path: "registry/new-york/examples/avatar-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/avatar-demo.tsx")), + source: "", + meta: undefined, + }, + "badge-demo": { + name: "badge-demo", + description: "", + type: "registry:example", + registryDependencies: ["badge"], + files: [{ + path: "registry/new-york/examples/badge-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/badge-demo.tsx")), + source: "", + meta: undefined, + }, + "badge-destructive": { + name: "badge-destructive", + description: "", + type: "registry:example", + registryDependencies: ["badge"], + files: [{ + path: "registry/new-york/examples/badge-destructive.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/badge-destructive.tsx")), + source: "", + meta: undefined, + }, + "badge-outline": { + name: "badge-outline", + description: "", + type: "registry:example", + registryDependencies: ["badge"], + files: [{ + path: "registry/new-york/examples/badge-outline.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/badge-outline.tsx")), + source: "", + meta: undefined, + }, + "badge-secondary": { + name: "badge-secondary", + description: "", + type: "registry:example", + registryDependencies: ["badge"], + files: [{ + path: "registry/new-york/examples/badge-secondary.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/badge-secondary.tsx")), + source: "", + meta: undefined, + }, + "breadcrumb-demo": { + name: "breadcrumb-demo", + description: "", + type: "registry:example", + registryDependencies: ["breadcrumb"], + files: [{ + path: "registry/new-york/examples/breadcrumb-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-demo.tsx")), + source: "", + meta: undefined, + }, + "breadcrumb-separator": { + name: "breadcrumb-separator", + description: "", + type: "registry:example", + registryDependencies: ["breadcrumb"], + files: [{ + path: "registry/new-york/examples/breadcrumb-separator.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-separator.tsx")), + source: "", + meta: undefined, + }, + "breadcrumb-dropdown": { + name: "breadcrumb-dropdown", + description: "", + type: "registry:example", + registryDependencies: ["breadcrumb"], + files: [{ + path: "registry/new-york/examples/breadcrumb-dropdown.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-dropdown.tsx")), + source: "", + meta: undefined, + }, + "breadcrumb-ellipsis": { + name: "breadcrumb-ellipsis", + description: "", + type: "registry:example", + registryDependencies: ["breadcrumb"], + files: [{ + path: "registry/new-york/examples/breadcrumb-ellipsis.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-ellipsis.tsx")), + source: "", + meta: undefined, + }, + "breadcrumb-link": { + name: "breadcrumb-link", + description: "", + type: "registry:example", + registryDependencies: ["breadcrumb"], + files: [{ + path: "registry/new-york/examples/breadcrumb-link.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-link.tsx")), + source: "", + meta: undefined, + }, + "breadcrumb-responsive": { + name: "breadcrumb-responsive", + description: "", + type: "registry:example", + registryDependencies: ["breadcrumb"], + files: [{ + path: "registry/new-york/examples/breadcrumb-responsive.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-responsive.tsx")), + source: "", + meta: undefined, + }, + "button-demo": { + name: "button-demo", + description: "", + type: "registry:example", + registryDependencies: ["button"], + files: [{ + path: "registry/new-york/examples/button-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/button-demo.tsx")), + source: "", + meta: undefined, + }, + "button-secondary": { + name: "button-secondary", + description: "", + type: "registry:example", + registryDependencies: ["button"], + files: [{ + path: "registry/new-york/examples/button-secondary.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/button-secondary.tsx")), + source: "", + meta: undefined, + }, + "button-destructive": { + name: "button-destructive", + description: "", + type: "registry:example", + registryDependencies: ["button"], + files: [{ + path: "registry/new-york/examples/button-destructive.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/button-destructive.tsx")), + source: "", + meta: undefined, + }, + "button-outline": { + name: "button-outline", + description: "", + type: "registry:example", + registryDependencies: ["button"], + files: [{ + path: "registry/new-york/examples/button-outline.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/button-outline.tsx")), + source: "", + meta: undefined, + }, + "button-ghost": { + name: "button-ghost", + description: "", + type: "registry:example", + registryDependencies: ["button"], + files: [{ + path: "registry/new-york/examples/button-ghost.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/button-ghost.tsx")), + source: "", + meta: undefined, + }, + "button-link": { + name: "button-link", + description: "", + type: "registry:example", + registryDependencies: ["button"], + files: [{ + path: "registry/new-york/examples/button-link.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/button-link.tsx")), + source: "", + meta: undefined, + }, + "button-with-icon": { + name: "button-with-icon", + description: "", + type: "registry:example", + registryDependencies: ["button"], + files: [{ + path: "registry/new-york/examples/button-with-icon.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/button-with-icon.tsx")), + source: "", + meta: undefined, + }, + "button-loading": { + name: "button-loading", + description: "", + type: "registry:example", + registryDependencies: ["button"], + files: [{ + path: "registry/new-york/examples/button-loading.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/button-loading.tsx")), + source: "", + meta: undefined, + }, + "button-icon": { + name: "button-icon", + description: "", + type: "registry:example", + registryDependencies: ["button"], + files: [{ + path: "registry/new-york/examples/button-icon.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/button-icon.tsx")), + source: "", + meta: undefined, + }, + "button-as-child": { + name: "button-as-child", + description: "", + type: "registry:example", + registryDependencies: ["button"], + files: [{ + path: "registry/new-york/examples/button-as-child.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/button-as-child.tsx")), + source: "", + meta: undefined, + }, + "calendar-demo": { + name: "calendar-demo", + description: "", + type: "registry:example", + registryDependencies: ["calendar"], + files: [{ + path: "registry/new-york/examples/calendar-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/calendar-demo.tsx")), + source: "", + meta: undefined, + }, + "calendar-form": { + name: "calendar-form", + description: "", + type: "registry:example", + registryDependencies: ["calendar","form","popover"], + files: [{ + path: "registry/new-york/examples/calendar-form.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/calendar-form.tsx")), + source: "", + meta: undefined, + }, + "card-demo": { + name: "card-demo", + description: "", + type: "registry:example", + registryDependencies: ["card","button","switch"], + files: [{ + path: "registry/new-york/examples/card-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/card-demo.tsx")), + source: "", + meta: undefined, + }, + "card-with-form": { + name: "card-with-form", + description: "", + type: "registry:example", + registryDependencies: ["button","card","input","label","select"], + files: [{ + path: "registry/new-york/examples/card-with-form.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/card-with-form.tsx")), + source: "", + meta: undefined, + }, + "carousel-demo": { + name: "carousel-demo", + description: "", + type: "registry:example", + registryDependencies: ["carousel"], + files: [{ + path: "registry/new-york/examples/carousel-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/carousel-demo.tsx")), + source: "", + meta: undefined, + }, + "carousel-size": { + name: "carousel-size", + description: "", + type: "registry:example", + registryDependencies: ["carousel"], + files: [{ + path: "registry/new-york/examples/carousel-size.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/carousel-size.tsx")), + source: "", + meta: undefined, + }, + "carousel-spacing": { + name: "carousel-spacing", + description: "", + type: "registry:example", + registryDependencies: ["carousel"], + files: [{ + path: "registry/new-york/examples/carousel-spacing.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/carousel-spacing.tsx")), + source: "", + meta: undefined, + }, + "carousel-orientation": { + name: "carousel-orientation", + description: "", + type: "registry:example", + registryDependencies: ["carousel"], + files: [{ + path: "registry/new-york/examples/carousel-orientation.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/carousel-orientation.tsx")), + source: "", + meta: undefined, + }, + "carousel-api": { + name: "carousel-api", + description: "", + type: "registry:example", + registryDependencies: ["carousel"], + files: [{ + path: "registry/new-york/examples/carousel-api.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/carousel-api.tsx")), + source: "", + meta: undefined, + }, + "carousel-plugin": { + name: "carousel-plugin", + description: "", + type: "registry:example", + registryDependencies: ["carousel"], + files: [{ + path: "registry/new-york/examples/carousel-plugin.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/carousel-plugin.tsx")), + source: "", + meta: undefined, + }, + "checkbox-demo": { + name: "checkbox-demo", + description: "", + type: "registry:example", + registryDependencies: ["checkbox"], + files: [{ + path: "registry/new-york/examples/checkbox-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/checkbox-demo.tsx")), + source: "", + meta: undefined, + }, + "checkbox-disabled": { + name: "checkbox-disabled", + description: "", + type: "registry:example", + registryDependencies: ["checkbox"], + files: [{ + path: "registry/new-york/examples/checkbox-disabled.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/checkbox-disabled.tsx")), + source: "", + meta: undefined, + }, + "checkbox-form-multiple": { + name: "checkbox-form-multiple", + description: "", + type: "registry:example", + registryDependencies: ["checkbox","form"], + files: [{ + path: "registry/new-york/examples/checkbox-form-multiple.tsx", + type: "registry:example", target: "" - },{ - path: "registry/new-york/internal/sink/components/button-ghost.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/checkbox-form-multiple.tsx")), + source: "", + meta: undefined, + }, + "checkbox-form-single": { + name: "checkbox-form-single", + description: "", + type: "registry:example", + registryDependencies: ["checkbox","form"], + files: [{ + path: "registry/new-york/examples/checkbox-form-single.tsx", + type: "registry:example", target: "" - },{ - path: "registry/new-york/internal/sink/components/button-link.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/checkbox-form-single.tsx")), + source: "", + meta: undefined, + }, + "checkbox-with-text": { + name: "checkbox-with-text", + description: "", + type: "registry:example", + registryDependencies: ["checkbox"], + files: [{ + path: "registry/new-york/examples/checkbox-with-text.tsx", + type: "registry:example", target: "" - },{ - path: "registry/new-york/internal/sink/components/button-loading.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/checkbox-with-text.tsx")), + source: "", + meta: undefined, + }, + "collapsible-demo": { + name: "collapsible-demo", + description: "", + type: "registry:example", + registryDependencies: ["collapsible"], + files: [{ + path: "registry/new-york/examples/collapsible-demo.tsx", + type: "registry:example", target: "" - },{ - path: "registry/new-york/internal/sink/components/button-outline.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/collapsible-demo.tsx")), + source: "", + meta: undefined, + }, + "combobox-demo": { + name: "combobox-demo", + description: "", + type: "registry:example", + registryDependencies: ["command"], + files: [{ + path: "registry/new-york/examples/combobox-demo.tsx", + type: "registry:example", target: "" - },{ - path: "registry/new-york/internal/sink/components/button-secondary.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/combobox-demo.tsx")), + source: "", + meta: undefined, + }, + "combobox-dropdown-menu": { + name: "combobox-dropdown-menu", + description: "", + type: "registry:example", + registryDependencies: ["command","dropdown-menu","button"], + files: [{ + path: "registry/new-york/examples/combobox-dropdown-menu.tsx", + type: "registry:example", target: "" - },{ - path: "registry/new-york/internal/sink/components/button-with-icon.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/combobox-dropdown-menu.tsx")), + source: "", + meta: undefined, + }, + "combobox-form": { + name: "combobox-form", + description: "", + type: "registry:example", + registryDependencies: ["command","form"], + files: [{ + path: "registry/new-york/examples/combobox-form.tsx", + type: "registry:example", target: "" - },{ - path: "registry/new-york/internal/sink/components/toggle-disabled.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/combobox-form.tsx")), + source: "", + meta: undefined, + }, + "combobox-popover": { + name: "combobox-popover", + description: "", + type: "registry:example", + registryDependencies: ["combobox","popover"], + files: [{ + path: "registry/new-york/examples/combobox-popover.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/combobox-popover.tsx")), + source: "", + meta: undefined, + }, + "combobox-responsive": { + name: "combobox-responsive", + description: "", + type: "registry:example", + registryDependencies: ["combobox","popover","drawer"], + files: [{ + path: "registry/new-york/examples/combobox-responsive.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/combobox-responsive.tsx")), + source: "", + meta: undefined, + }, + "command-demo": { + name: "command-demo", + description: "", + type: "registry:example", + registryDependencies: ["command"], + files: [{ + path: "registry/new-york/examples/command-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/command-demo.tsx")), + source: "", + meta: undefined, + }, + "command-dialog": { + name: "command-dialog", + description: "", + type: "registry:example", + registryDependencies: ["command","dialog"], + files: [{ + path: "registry/new-york/examples/command-dialog.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/command-dialog.tsx")), + source: "", + meta: undefined, + }, + "context-menu-demo": { + name: "context-menu-demo", + description: "", + type: "registry:example", + registryDependencies: ["context-menu"], + files: [{ + path: "registry/new-york/examples/context-menu-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/context-menu-demo.tsx")), + source: "", + meta: undefined, + }, + "data-table-demo": { + name: "data-table-demo", + description: "", + type: "registry:example", + registryDependencies: ["data-table"], + files: [{ + path: "registry/new-york/examples/data-table-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/data-table-demo.tsx")), + source: "", + meta: undefined, + }, + "date-picker-demo": { + name: "date-picker-demo", + description: "", + type: "registry:example", + registryDependencies: ["button","calendar","popover"], + files: [{ + path: "registry/new-york/examples/date-picker-demo.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/date-picker-demo.tsx")), + source: "", + meta: undefined, + }, + "date-picker-form": { + name: "date-picker-form", + description: "", + type: "registry:example", + registryDependencies: ["button","calendar","form","popover"], + files: [{ + path: "registry/new-york/examples/date-picker-form.tsx", + type: "registry:example", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/date-picker-form.tsx")), + source: "", + meta: undefined, + }, + "date-picker-with-presets": { + name: "date-picker-with-presets", + description: "", + type: "registry:example", + registryDependencies: ["button","calendar","popover","select"], + files: [{ + path: "registry/new-york/examples/date-picker-with-presets.tsx", + type: "registry:example", target: "" - },{ - path: "registry/new-york/internal/sink/components/toggle-outline.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/date-picker-with-presets.tsx")), + source: "", + meta: undefined, + }, + "date-picker-with-range": { + name: "date-picker-with-range", + description: "", + type: "registry:example", + registryDependencies: ["button","calendar","popover"], + files: [{ + path: "registry/new-york/examples/date-picker-with-range.tsx", + type: "registry:example", target: "" - },{ - path: "registry/new-york/internal/sink/components/toggle-with-text.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/new-york/examples/date-picker-with-range.tsx")), + source: "", + meta: undefined, + }, + "dialog-demo": { + name: "dialog-demo", + description: "", + type: "registry:example", + registryDependencies: ["dialog"], + files: [{ + path: "registry/new-york/examples/dialog-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sink/page.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/dialog-demo.tsx")), source: "", meta: undefined, }, - "sidebar-demo": { - name: "sidebar-demo", + "dialog-close-button": { + name: "dialog-close-button", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["dialog","button"], files: [{ - path: "registry/new-york/internal/sidebar-demo.tsx", - type: "registry:component", + path: "registry/new-york/examples/dialog-close-button.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/dialog-close-button.tsx")), source: "", meta: undefined, }, - "sidebar-header": { - name: "sidebar-header", + "drawer-demo": { + name: "drawer-demo", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["drawer"], files: [{ - path: "registry/new-york/internal/sidebar-header.tsx", - type: "registry:component", + path: "registry/new-york/examples/drawer-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-header.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/drawer-demo.tsx")), source: "", meta: undefined, }, - "sidebar-footer": { - name: "sidebar-footer", + "drawer-dialog": { + name: "drawer-dialog", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["drawer","dialog"], files: [{ - path: "registry/new-york/internal/sidebar-footer.tsx", - type: "registry:component", + path: "registry/new-york/examples/drawer-dialog.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-footer.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/drawer-dialog.tsx")), source: "", meta: undefined, }, - "sidebar-group": { - name: "sidebar-group", + "dropdown-menu-demo": { + name: "dropdown-menu-demo", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["dropdown-menu"], files: [{ - path: "registry/new-york/internal/sidebar-group.tsx", - type: "registry:component", + path: "registry/new-york/examples/dropdown-menu-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-group.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/dropdown-menu-demo.tsx")), source: "", meta: undefined, }, - "sidebar-group-collapsible": { - name: "sidebar-group-collapsible", + "dropdown-menu-checkboxes": { + name: "dropdown-menu-checkboxes", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["dropdown-menu","checkbox"], files: [{ - path: "registry/new-york/internal/sidebar-group-collapsible.tsx", - type: "registry:component", + path: "registry/new-york/examples/dropdown-menu-checkboxes.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-group-collapsible.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/dropdown-menu-checkboxes.tsx")), source: "", meta: undefined, }, - "sidebar-group-action": { - name: "sidebar-group-action", + "dropdown-menu-radio-group": { + name: "dropdown-menu-radio-group", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["dropdown-menu","radio-group"], files: [{ - path: "registry/new-york/internal/sidebar-group-action.tsx", - type: "registry:component", + path: "registry/new-york/examples/dropdown-menu-radio-group.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-group-action.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/dropdown-menu-radio-group.tsx")), source: "", meta: undefined, }, - "sidebar-menu": { - name: "sidebar-menu", + "hover-card-demo": { + name: "hover-card-demo", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["hover-card"], files: [{ - path: "registry/new-york/internal/sidebar-menu.tsx", - type: "registry:component", + path: "registry/new-york/examples/hover-card-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-menu.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/hover-card-demo.tsx")), source: "", meta: undefined, }, - "sidebar-menu-action": { - name: "sidebar-menu-action", + "input-demo": { + name: "input-demo", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["input"], files: [{ - path: "registry/new-york/internal/sidebar-menu-action.tsx", - type: "registry:component", + path: "registry/new-york/examples/input-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-menu-action.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-demo.tsx")), source: "", meta: undefined, }, - "sidebar-menu-sub": { - name: "sidebar-menu-sub", + "input-disabled": { + name: "input-disabled", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["input"], files: [{ - path: "registry/new-york/internal/sidebar-menu-sub.tsx", - type: "registry:component", + path: "registry/new-york/examples/input-disabled.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-menu-sub.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-disabled.tsx")), source: "", meta: undefined, }, - "sidebar-menu-collapsible": { - name: "sidebar-menu-collapsible", + "input-file": { + name: "input-file", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["input"], files: [{ - path: "registry/new-york/internal/sidebar-menu-collapsible.tsx", - type: "registry:component", + path: "registry/new-york/examples/input-file.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-menu-collapsible.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-file.tsx")), source: "", meta: undefined, }, - "sidebar-menu-badge": { - name: "sidebar-menu-badge", + "input-form": { + name: "input-form", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["input","button","form"], files: [{ - path: "registry/new-york/internal/sidebar-menu-badge.tsx", - type: "registry:component", + path: "registry/new-york/examples/input-form.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-menu-badge.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-form.tsx")), source: "", meta: undefined, }, - "sidebar-rsc": { - name: "sidebar-rsc", + "input-with-button": { + name: "input-with-button", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["input","button"], files: [{ - path: "registry/new-york/internal/sidebar-rsc.tsx", - type: "registry:component", + path: "registry/new-york/examples/input-with-button.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-rsc.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-with-button.tsx")), source: "", meta: undefined, }, - "sidebar-controlled": { - name: "sidebar-controlled", + "input-with-label": { + name: "input-with-label", description: "", - type: "registry:internal", - registryDependencies: undefined, + type: "registry:example", + registryDependencies: ["input","button","label"], files: [{ - path: "registry/new-york/internal/sidebar-controlled.tsx", - type: "registry:component", + path: "registry/new-york/examples/input-with-label.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-controlled.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-with-label.tsx")), source: "", meta: undefined, }, - "v0-sidebar-01": { - name: "v0-sidebar-01", + "input-with-text": { + name: "input-with-text", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","label","dropdown-menu"], + type: "registry:example", + registryDependencies: ["input","button","label"], files: [{ - path: "registry/new-york/internal/sidebar-01.tsx", - type: "registry:component", + path: "registry/new-york/examples/input-with-text.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-01.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-with-text.tsx")), source: "", meta: undefined, }, - "v0-sidebar-02": { - name: "v0-sidebar-02", + "input-otp-demo": { + name: "input-otp-demo", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","label","dropdown-menu"], + type: "registry:example", + registryDependencies: ["input-otp"], files: [{ - path: "registry/new-york/internal/sidebar-02.tsx", - type: "registry:internal", + path: "registry/new-york/examples/input-otp-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-02.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-otp-demo.tsx")), source: "", meta: undefined, }, - "v0-sidebar-03": { - name: "v0-sidebar-03", + "input-otp-pattern": { + name: "input-otp-pattern", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb"], + type: "registry:example", + registryDependencies: ["input-otp"], files: [{ - path: "registry/new-york/internal/sidebar-03.tsx", - type: "registry:internal", + path: "registry/new-york/examples/input-otp-pattern.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-03.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-otp-pattern.tsx")), source: "", meta: undefined, }, - "v0-sidebar-04": { - name: "v0-sidebar-04", + "input-otp-separator": { + name: "input-otp-separator", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator"], + type: "registry:example", + registryDependencies: ["input-otp"], files: [{ - path: "registry/new-york/internal/sidebar-04.tsx", - type: "registry:internal", + path: "registry/new-york/examples/input-otp-separator.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-04.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-otp-separator.tsx")), source: "", meta: undefined, }, - "v0-sidebar-05": { - name: "v0-sidebar-05", + "input-otp-controlled": { + name: "input-otp-controlled", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","label","collapsible"], + type: "registry:example", + registryDependencies: ["input-otp"], files: [{ - path: "registry/new-york/internal/sidebar-05.tsx", - type: "registry:internal", + path: "registry/new-york/examples/input-otp-controlled.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-05.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-otp-controlled.tsx")), source: "", meta: undefined, }, - "v0-sidebar-06": { - name: "v0-sidebar-06", + "input-otp-form": { + name: "input-otp-form", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","card","dropdown-menu"], + type: "registry:example", + registryDependencies: ["input-otp","form"], files: [{ - path: "registry/new-york/internal/sidebar-06.tsx", - type: "registry:internal", + path: "registry/new-york/examples/input-otp-form.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-06.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/input-otp-form.tsx")), source: "", meta: undefined, }, - "v0-sidebar-07": { - name: "v0-sidebar-07", + "label-demo": { + name: "label-demo", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar"], + type: "registry:example", + registryDependencies: ["label"], files: [{ - path: "registry/new-york/internal/sidebar-07.tsx", - type: "registry:internal", + path: "registry/new-york/examples/label-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-07.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/label-demo.tsx")), source: "", meta: undefined, }, - "v0-sidebar-08": { - name: "v0-sidebar-08", + "menubar-demo": { + name: "menubar-demo", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar"], + type: "registry:example", + registryDependencies: ["menubar"], files: [{ - path: "registry/new-york/internal/sidebar-08.tsx", - type: "registry:internal", + path: "registry/new-york/examples/menubar-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-08.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/menubar-demo.tsx")), source: "", meta: undefined, }, - "v0-sidebar-09": { - name: "v0-sidebar-09", + "navigation-menu-demo": { + name: "navigation-menu-demo", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar","switch"], + type: "registry:example", + registryDependencies: ["navigation-menu"], files: [{ - path: "registry/new-york/internal/sidebar-09.tsx", - type: "registry:internal", + path: "registry/new-york/examples/navigation-menu-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-09.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/navigation-menu-demo.tsx")), source: "", meta: undefined, }, - "v0-sidebar-10": { - name: "v0-sidebar-10", + "pagination-demo": { + name: "pagination-demo", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","popover","collapsible","dropdown-menu"], + type: "registry:example", + registryDependencies: ["pagination"], files: [{ - path: "registry/new-york/internal/sidebar-10.tsx", - type: "registry:internal", + path: "registry/new-york/examples/pagination-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-10.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/pagination-demo.tsx")), source: "", meta: undefined, }, - "v0-sidebar-11": { - name: "v0-sidebar-11", + "popover-demo": { + name: "popover-demo", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","collapsible"], + type: "registry:example", + registryDependencies: ["popover"], files: [{ - path: "registry/new-york/internal/sidebar-11.tsx", - type: "registry:internal", + path: "registry/new-york/examples/popover-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-11.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/popover-demo.tsx")), source: "", meta: undefined, }, - "v0-sidebar-12": { - name: "v0-sidebar-12", + "progress-demo": { + name: "progress-demo", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","collapsible","calendar","dropdown-menu","avatar"], + type: "registry:example", + registryDependencies: ["progress"], files: [{ - path: "registry/new-york/internal/sidebar-12.tsx", - type: "registry:internal", + path: "registry/new-york/examples/progress-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-12.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/progress-demo.tsx")), source: "", meta: undefined, }, - "v0-sidebar-13": { - name: "v0-sidebar-13", + "radio-group-demo": { + name: "radio-group-demo", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","button","dialog"], + type: "registry:example", + registryDependencies: ["radio-group"], files: [{ - path: "registry/new-york/internal/sidebar-13.tsx", - type: "registry:internal", + path: "registry/new-york/examples/radio-group-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-13.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/radio-group-demo.tsx")), source: "", meta: undefined, }, - "v0-sidebar-14": { - name: "v0-sidebar-14", + "radio-group-form": { + name: "radio-group-form", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb"], + type: "registry:example", + registryDependencies: ["radio-group","form"], files: [{ - path: "registry/new-york/internal/sidebar-14.tsx", - type: "registry:internal", + path: "registry/new-york/examples/radio-group-form.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-14.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/radio-group-form.tsx")), source: "", meta: undefined, }, - "v0-sidebar-15": { - name: "v0-sidebar-15", + "resizable-demo": { + name: "resizable-demo", description: "", - type: "registry:internal", - registryDependencies: ["sidebar","breadcrumb","separator","popover","collapsible","dropdown-menu","calendar","avatar"], + type: "registry:example", + registryDependencies: ["resizable"], files: [{ - path: "registry/new-york/internal/sidebar-15.tsx", - type: "registry:internal", + path: "registry/new-york/examples/resizable-demo.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/sidebar-15.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/resizable-demo.tsx")), source: "", meta: undefined, }, - "v0-login-01": { - name: "v0-login-01", + "resizable-demo-with-handle": { + name: "resizable-demo-with-handle", description: "", - type: "registry:internal", - registryDependencies: ["button","card","input","label"], + type: "registry:example", + registryDependencies: ["resizable"], files: [{ - path: "registry/new-york/internal/login-01.tsx", - type: "registry:internal", + path: "registry/new-york/examples/resizable-demo-with-handle.tsx", + type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/internal/login-01.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/resizable-demo-with-handle.tsx")), source: "", meta: undefined, }, - "effect-tracer-card-demo": { - name: "effect-tracer-card-demo", + "resizable-vertical": { + name: "resizable-vertical", description: "", type: "registry:example", - registryDependencies: ["tracer-card"], + registryDependencies: ["resizable"], files: [{ - path: "registry/new-york/examples/effect-tracer-card-demo.tsx", + path: "registry/new-york/examples/resizable-vertical.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/effect-tracer-card-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/resizable-vertical.tsx")), source: "", meta: undefined, }, - "bento-grid-uno-demo": { - name: "bento-grid-uno-demo", + "resizable-handle": { + name: "resizable-handle", description: "", type: "registry:example", - registryDependencies: ["bento-grid-uno"], + registryDependencies: ["resizable"], files: [{ - path: "registry/new-york/examples/bento-grid-uno-demo.tsx", + path: "registry/new-york/examples/resizable-handle.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/bento-grid-uno-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/resizable-handle.tsx")), source: "", meta: undefined, }, - "marquee-section-demo": { - name: "marquee-section-demo", + "scroll-area-demo": { + name: "scroll-area-demo", description: "", type: "registry:example", - registryDependencies: ["marquee-section"], + registryDependencies: ["scroll-area"], files: [{ - path: "registry/new-york/examples/marquee-section-demo.tsx", + path: "registry/new-york/examples/scroll-area-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/marquee-section-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/scroll-area-demo.tsx")), source: "", meta: undefined, }, - "packages-marquee-demo": { - name: "packages-marquee-demo", + "scroll-area-horizontal-demo": { + name: "scroll-area-horizontal-demo", description: "", type: "registry:example", - registryDependencies: ["packages-marquee"], + registryDependencies: ["scroll-area"], files: [{ - path: "registry/new-york/examples/packages-marquee-demo.tsx", + path: "registry/new-york/examples/scroll-area-horizontal-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/packages-marquee-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/scroll-area-horizontal-demo.tsx")), source: "", meta: undefined, }, - "component-library": { - name: "component-library", + "select-demo": { + name: "select-demo", description: "", type: "registry:example", - registryDependencies: ["component-library"], + registryDependencies: ["select"], files: [{ - path: "registry/new-york/examples/design-system-icons/component-library.tsx", + path: "registry/new-york/examples/select-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/component-library.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/select-demo.tsx")), source: "", meta: undefined, }, - "design-language": { - name: "design-language", + "select-scrollable": { + name: "select-scrollable", description: "", type: "registry:example", - registryDependencies: ["design-language"], + registryDependencies: ["select"], files: [{ - path: "registry/new-york/examples/design-system-icons/design-language.tsx", + path: "registry/new-york/examples/select-scrollable.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/design-language.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/select-scrollable.tsx")), source: "", meta: undefined, }, - "design-libraries": { - name: "design-libraries", + "select-form": { + name: "select-form", description: "", type: "registry:example", - registryDependencies: ["design-libraries"], + registryDependencies: ["select"], files: [{ - path: "registry/new-york/examples/design-system-icons/design-libraries.tsx", + path: "registry/new-york/examples/select-form.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/design-libraries.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/select-form.tsx")), source: "", meta: undefined, }, - "documentation": { - name: "documentation", + "separator-demo": { + name: "separator-demo", description: "", type: "registry:example", - registryDependencies: ["documentation"], + registryDependencies: ["separator"], files: [{ - path: "registry/new-york/examples/design-system-icons/documentation.tsx", + path: "registry/new-york/examples/separator-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/documentation.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/separator-demo.tsx")), source: "", meta: undefined, }, - "governance": { - name: "governance", + "sheet-demo": { + name: "sheet-demo", description: "", type: "registry:example", - registryDependencies: ["governance"], + registryDependencies: ["sheet"], files: [{ - path: "registry/new-york/examples/design-system-icons/governance.tsx", + path: "registry/new-york/examples/sheet-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/governance.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/sheet-demo.tsx")), source: "", meta: undefined, }, - "sandboxes": { - name: "sandboxes", + "sheet-side": { + name: "sheet-side", description: "", type: "registry:example", - registryDependencies: ["sandboxes"], + registryDependencies: ["sheet"], files: [{ - path: "registry/new-york/examples/design-system-icons/sandboxes.tsx", + path: "registry/new-york/examples/sheet-side.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/design-system-icons/sandboxes.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/sheet-side.tsx")), source: "", meta: undefined, }, - "logo_olio-demo": { - name: "logo_olio-demo", + "skeleton-demo": { + name: "skeleton-demo", description: "", type: "registry:example", - registryDependencies: ["logo_olio"], + registryDependencies: ["skeleton"], files: [{ - path: "registry/new-york/examples/logo_olio-demo.tsx", + path: "registry/new-york/examples/skeleton-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logo_olio-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/skeleton-demo.tsx")), source: "", meta: undefined, }, - "logo_craft-demo": { - name: "logo_craft-demo", + "skeleton-card": { + name: "skeleton-card", description: "", type: "registry:example", - registryDependencies: ["logo_craft"], + registryDependencies: ["skeleton"], files: [{ - path: "registry/new-york/examples/logo_craft-demo.tsx", + path: "registry/new-york/examples/skeleton-card.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logo_craft-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/skeleton-card.tsx")), source: "", meta: undefined, }, - "logo_planfoundry-demo": { - name: "logo_planfoundry-demo", + "slider-demo": { + name: "slider-demo", description: "", type: "registry:example", - registryDependencies: ["logo_planfoundry"], + registryDependencies: ["slider"], files: [{ - path: "registry/new-york/examples/logo_planfoundry-demo.tsx", + path: "registry/new-york/examples/slider-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logo_planfoundry-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/slider-demo.tsx")), source: "", meta: undefined, }, - "logo_scales-demo": { - name: "logo_scales-demo", + "sonner-demo": { + name: "sonner-demo", description: "", type: "registry:example", - registryDependencies: ["logo_scales"], + registryDependencies: ["sonner"], files: [{ - path: "registry/new-york/examples/logo_scales-demo.tsx", + path: "registry/new-york/examples/sonner-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logo_scales-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/sonner-demo.tsx")), source: "", meta: undefined, }, - "logomark_ampersand-demo": { - name: "logomark_ampersand-demo", + "switch-demo": { + name: "switch-demo", description: "", type: "registry:example", - registryDependencies: ["logomark_ampersand"], + registryDependencies: ["switch"], files: [{ - path: "registry/new-york/examples/logomark_ampersand-demo.tsx", + path: "registry/new-york/examples/switch-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_ampersand-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/switch-demo.tsx")), source: "", meta: undefined, }, - "logomark_craft-demo": { - name: "logomark_craft-demo", + "switch-form": { + name: "switch-form", description: "", type: "registry:example", - registryDependencies: ["logomark_craft"], + registryDependencies: ["switch","form"], files: [{ - path: "registry/new-york/examples/logomark_craft-demo.tsx", + path: "registry/new-york/examples/switch-form.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_craft-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/switch-form.tsx")), source: "", meta: undefined, }, - "logomark_digidoc-demo": { - name: "logomark_digidoc-demo", + "table-demo": { + name: "table-demo", description: "", type: "registry:example", - registryDependencies: ["logomark_digidoc"], + registryDependencies: ["table"], files: [{ - path: "registry/new-york/examples/logomark_digidoc-demo.tsx", + path: "registry/new-york/examples/table-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_digidoc-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/table-demo.tsx")), source: "", meta: undefined, }, - "logomark_explor-demo": { - name: "logomark_explor-demo", + "tabs-demo": { + name: "tabs-demo", description: "", type: "registry:example", - registryDependencies: ["logomark_explor"], + registryDependencies: ["tabs"], files: [{ - path: "registry/new-york/examples/logomark_explor-demo.tsx", + path: "registry/new-york/examples/tabs-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_explor-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/tabs-demo.tsx")), source: "", meta: undefined, }, - "logomark_flows-demo": { - name: "logomark_flows-demo", + "textarea-demo": { + name: "textarea-demo", description: "", type: "registry:example", - registryDependencies: ["logomark_flows"], + registryDependencies: ["textarea"], files: [{ - path: "registry/new-york/examples/logomark_flows-demo.tsx", + path: "registry/new-york/examples/textarea-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_flows-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/textarea-demo.tsx")), source: "", meta: undefined, }, - "logomark_leveln-demo": { - name: "logomark_leveln-demo", + "textarea-disabled": { + name: "textarea-disabled", description: "", type: "registry:example", - registryDependencies: ["logomark_leveln"], + registryDependencies: ["textarea"], files: [{ - path: "registry/new-york/examples/logomark_leveln-demo.tsx", + path: "registry/new-york/examples/textarea-disabled.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_leveln-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/textarea-disabled.tsx")), source: "", meta: undefined, }, - "logomark_olio-demo": { - name: "logomark_olio-demo", + "textarea-form": { + name: "textarea-form", description: "", type: "registry:example", - registryDependencies: ["logomark_olio"], + registryDependencies: ["textarea","form"], files: [{ - path: "registry/new-york/examples/logomark_olio-demo.tsx", + path: "registry/new-york/examples/textarea-form.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_olio-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/textarea-form.tsx")), source: "", meta: undefined, }, - "logomark_planfoundry-demo": { - name: "logomark_planfoundry-demo", + "textarea-with-button": { + name: "textarea-with-button", description: "", type: "registry:example", - registryDependencies: ["logomark_planfoundry"], + registryDependencies: ["textarea","button"], files: [{ - path: "registry/new-york/examples/logomark_planfoundry-demo.tsx", + path: "registry/new-york/examples/textarea-with-button.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_planfoundry-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/textarea-with-button.tsx")), source: "", meta: undefined, }, - "logomark_remix-demo": { - name: "logomark_remix-demo", + "textarea-with-label": { + name: "textarea-with-label", description: "", type: "registry:example", - registryDependencies: ["logomark_remix"], + registryDependencies: ["textarea","label"], files: [{ - path: "registry/new-york/examples/logomark_remix-demo.tsx", + path: "registry/new-york/examples/textarea-with-label.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_remix-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/textarea-with-label.tsx")), source: "", meta: undefined, }, - "logomark_scales-demo": { - name: "logomark_scales-demo", + "textarea-with-text": { + name: "textarea-with-text", description: "", type: "registry:example", - registryDependencies: ["logomark_scales"], + registryDependencies: ["textarea","label"], files: [{ - path: "registry/new-york/examples/logomark_scales-demo.tsx", + path: "registry/new-york/examples/textarea-with-text.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_scales-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/textarea-with-text.tsx")), source: "", meta: undefined, }, - "logomark_signal-demo": { - name: "logomark_signal-demo", + "toast-demo": { + name: "toast-demo", description: "", type: "registry:example", - registryDependencies: ["logomark_signal"], + registryDependencies: ["toast"], files: [{ - path: "registry/new-york/examples/logomark_signal-demo.tsx", + path: "registry/new-york/examples/toast-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_signal-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toast-demo.tsx")), source: "", meta: undefined, }, - "logomark_sugarless-demo": { - name: "logomark_sugarless-demo", + "toast-destructive": { + name: "toast-destructive", description: "", type: "registry:example", - registryDependencies: ["logomark_sugarless"], + registryDependencies: ["toast"], files: [{ - path: "registry/new-york/examples/logomark_sugarless-demo.tsx", + path: "registry/new-york/examples/toast-destructive.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logomark_sugarless-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toast-destructive.tsx")), source: "", meta: undefined, }, - "logo-shuffle-demo": { - name: "logo-shuffle-demo", + "toast-simple": { + name: "toast-simple", description: "", type: "registry:example", - registryDependencies: ["logo-shuffle"], + registryDependencies: ["toast"], files: [{ - path: "registry/new-york/examples/logo-shuffle-demo.tsx", + path: "registry/new-york/examples/toast-simple.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logo-shuffle-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toast-simple.tsx")), source: "", meta: undefined, }, - "designer-marks-button-demo": { - name: "designer-marks-button-demo", + "toast-with-action": { + name: "toast-with-action", description: "", type: "registry:example", - registryDependencies: ["designer-marks-button"], + registryDependencies: ["toast"], files: [{ - path: "registry/new-york/examples/designer-marks-button-demo.tsx", + path: "registry/new-york/examples/toast-with-action.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/designer-marks-button-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toast-with-action.tsx")), source: "", meta: undefined, }, - "theme-switcher-demo": { - name: "theme-switcher-demo", + "toast-with-title": { + name: "toast-with-title", description: "", type: "registry:example", - registryDependencies: ["theme-switcher"], + registryDependencies: ["toast"], files: [{ - path: "registry/new-york/examples/theme-switcher-demo.tsx", + path: "registry/new-york/examples/toast-with-title.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/theme-switcher-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toast-with-title.tsx")), source: "", meta: undefined, }, - "client-shuffle-demo": { - name: "client-shuffle-demo", + "toggle-group-demo": { + name: "toggle-group-demo", description: "", type: "registry:example", - registryDependencies: ["client-shuffle"], + registryDependencies: ["toggle-group"], files: [{ - path: "registry/new-york/examples/client-shuffle-demo.tsx", + path: "registry/new-york/examples/toggle-group-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/client-shuffle-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-demo.tsx")), source: "", meta: undefined, }, - "logo-context-demo": { - name: "logo-context-demo", + "toggle-group-disabled": { + name: "toggle-group-disabled", description: "", type: "registry:example", - registryDependencies: ["logo-context"], + registryDependencies: ["toggle-group"], files: [{ - path: "registry/new-york/examples/logo-context-demo.tsx", + path: "registry/new-york/examples/toggle-group-disabled.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/logo-context-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-disabled.tsx")), source: "", meta: undefined, }, - "app-icons-section-demo": { - name: "app-icons-section-demo", + "toggle-group-lg": { + name: "toggle-group-lg", description: "", type: "registry:example", - registryDependencies: ["app-icons-section"], + registryDependencies: ["toggle-group"], files: [{ - path: "registry/new-york/examples/app-icons-section-demo.tsx", + path: "registry/new-york/examples/toggle-group-lg.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/app-icons-section-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-lg.tsx")), source: "", meta: undefined, }, - "magnify-app-icons-demo": { - name: "magnify-app-icons-demo", + "toggle-group-outline": { + name: "toggle-group-outline", description: "", type: "registry:example", - registryDependencies: ["magnify-app-icons"], + registryDependencies: ["toggle-group"], files: [{ - path: "registry/new-york/examples/magnify-app-icons-demo.tsx", + path: "registry/new-york/examples/toggle-group-outline.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/magnify-app-icons-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-outline.tsx")), source: "", meta: undefined, }, - "github-stars-demo": { - name: "github-stars-demo", + "toggle-group-sm": { + name: "toggle-group-sm", description: "", type: "registry:example", - registryDependencies: ["github-stars"], + registryDependencies: ["toggle-group"], files: [{ - path: "registry/new-york/examples/github-stars-demo.tsx", + path: "registry/new-york/examples/toggle-group-sm.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/github-stars-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-sm.tsx")), source: "", meta: undefined, }, - "creative-tab-slider-demo": { - name: "creative-tab-slider-demo", + "toggle-group-single": { + name: "toggle-group-single", description: "", type: "registry:example", - registryDependencies: ["creative-tab-slider"], + registryDependencies: ["toggle-group"], files: [{ - path: "registry/new-york/examples/creative-tab-slider-demo.tsx", + path: "registry/new-york/examples/toggle-group-single.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/creative-tab-slider-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-single.tsx")), source: "", meta: undefined, }, - "technology-cloud-demo": { - name: "technology-cloud-demo", + "toggle-demo": { + name: "toggle-demo", description: "", type: "registry:example", - registryDependencies: ["technology-cloud"], + registryDependencies: ["toggle"], files: [{ - path: "registry/new-york/examples/technology-cloud-demo.tsx", + path: "registry/new-york/examples/toggle-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/technology-cloud-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-demo.tsx")), source: "", meta: undefined, }, - "designer-marks-demo": { - name: "designer-marks-demo", + "toggle-disabled": { + name: "toggle-disabled", description: "", type: "registry:example", - registryDependencies: ["designer-marks"], + registryDependencies: ["toggle"], files: [{ - path: "registry/new-york/examples/designer-marks-demo.tsx", + path: "registry/new-york/examples/toggle-disabled.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/designer-marks-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-disabled.tsx")), source: "", meta: undefined, }, - "storybook-cta-demo": { - name: "storybook-cta-demo", + "toggle-lg": { + name: "toggle-lg", description: "", type: "registry:example", - registryDependencies: ["storybook-cta"], + registryDependencies: ["toggle"], files: [{ - path: "registry/new-york/examples/storybook-cta-demo.tsx", + path: "registry/new-york/examples/toggle-lg.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/storybook-cta-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-lg.tsx")), source: "", meta: undefined, }, - "supabase-cta-demo": { - name: "supabase-cta-demo", + "toggle-outline": { + name: "toggle-outline", description: "", type: "registry:example", - registryDependencies: ["supabase-cta"], + registryDependencies: ["toggle"], files: [{ - path: "registry/new-york/examples/supabase-cta-demo.tsx", + path: "registry/new-york/examples/toggle-outline.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/supabase-cta-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-outline.tsx")), source: "", meta: undefined, }, - "animated-collaboration-demo": { - name: "animated-collaboration-demo", + "toggle-sm": { + name: "toggle-sm", description: "", type: "registry:example", - registryDependencies: ["animated-collaboration"], + registryDependencies: ["toggle"], files: [{ - path: "registry/new-york/examples/animated-collaboration-demo.tsx", + path: "registry/new-york/examples/toggle-sm.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/animated-collaboration-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-sm.tsx")), source: "", meta: undefined, }, - "accordion-demo": { - name: "accordion-demo", + "toggle-with-text": { + name: "toggle-with-text", description: "", type: "registry:example", - registryDependencies: ["accordion"], + registryDependencies: ["toggle"], files: [{ - path: "registry/new-york/examples/accordion-demo.tsx", + path: "registry/new-york/examples/toggle-with-text.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/accordion-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/toggle-with-text.tsx")), source: "", meta: undefined, }, - "alert-demo": { - name: "alert-demo", + "tooltip-demo": { + name: "tooltip-demo", description: "", type: "registry:example", - registryDependencies: ["alert"], + registryDependencies: ["tooltip"], files: [{ - path: "registry/new-york/examples/alert-demo.tsx", + path: "registry/new-york/examples/tooltip-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/alert-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/tooltip-demo.tsx")), source: "", meta: undefined, }, - "alert-destructive": { - name: "alert-destructive", + "typography-blockquote": { + name: "typography-blockquote", description: "", type: "registry:example", - registryDependencies: ["alert"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/alert-destructive.tsx", + path: "registry/new-york/examples/typography-blockquote.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/alert-destructive.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-blockquote.tsx")), source: "", meta: undefined, }, - "alert-dialog-demo": { - name: "alert-dialog-demo", + "typography-demo": { + name: "typography-demo", description: "", type: "registry:example", - registryDependencies: ["alert-dialog","button"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/alert-dialog-demo.tsx", + path: "registry/new-york/examples/typography-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/alert-dialog-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-demo.tsx")), source: "", meta: undefined, }, - "aspect-ratio-demo": { - name: "aspect-ratio-demo", + "typography-h1": { + name: "typography-h1", description: "", type: "registry:example", - registryDependencies: ["aspect-ratio"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/aspect-ratio-demo.tsx", + path: "registry/new-york/examples/typography-h1.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/aspect-ratio-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-h1.tsx")), source: "", meta: undefined, }, - "avatar-demo": { - name: "avatar-demo", + "typography-h2": { + name: "typography-h2", description: "", type: "registry:example", - registryDependencies: ["avatar"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/avatar-demo.tsx", + path: "registry/new-york/examples/typography-h2.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/avatar-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-h2.tsx")), source: "", meta: undefined, }, - "badge-demo": { - name: "badge-demo", + "typography-h3": { + name: "typography-h3", description: "", type: "registry:example", - registryDependencies: ["badge"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/badge-demo.tsx", + path: "registry/new-york/examples/typography-h3.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/badge-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-h3.tsx")), source: "", meta: undefined, }, - "badge-destructive": { - name: "badge-destructive", + "typography-h4": { + name: "typography-h4", description: "", type: "registry:example", - registryDependencies: ["badge"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/badge-destructive.tsx", + path: "registry/new-york/examples/typography-h4.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/badge-destructive.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-h4.tsx")), source: "", meta: undefined, }, - "badge-outline": { - name: "badge-outline", + "typography-inline-code": { + name: "typography-inline-code", description: "", type: "registry:example", - registryDependencies: ["badge"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/badge-outline.tsx", + path: "registry/new-york/examples/typography-inline-code.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/badge-outline.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-inline-code.tsx")), source: "", meta: undefined, }, - "badge-secondary": { - name: "badge-secondary", + "typography-large": { + name: "typography-large", description: "", type: "registry:example", - registryDependencies: ["badge"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/badge-secondary.tsx", + path: "registry/new-york/examples/typography-large.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/badge-secondary.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-large.tsx")), source: "", meta: undefined, }, - "breadcrumb-demo": { - name: "breadcrumb-demo", + "typography-lead": { + name: "typography-lead", description: "", type: "registry:example", - registryDependencies: ["breadcrumb"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/breadcrumb-demo.tsx", + path: "registry/new-york/examples/typography-lead.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-lead.tsx")), source: "", meta: undefined, }, - "breadcrumb-separator": { - name: "breadcrumb-separator", + "typography-list": { + name: "typography-list", description: "", type: "registry:example", - registryDependencies: ["breadcrumb"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/breadcrumb-separator.tsx", + path: "registry/new-york/examples/typography-list.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-separator.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-list.tsx")), source: "", meta: undefined, }, - "breadcrumb-dropdown": { - name: "breadcrumb-dropdown", + "typography-muted": { + name: "typography-muted", description: "", type: "registry:example", - registryDependencies: ["breadcrumb"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/breadcrumb-dropdown.tsx", + path: "registry/new-york/examples/typography-muted.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-dropdown.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-muted.tsx")), source: "", meta: undefined, }, - "breadcrumb-ellipsis": { - name: "breadcrumb-ellipsis", + "typography-p": { + name: "typography-p", description: "", type: "registry:example", - registryDependencies: ["breadcrumb"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/breadcrumb-ellipsis.tsx", + path: "registry/new-york/examples/typography-p.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-ellipsis.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-p.tsx")), source: "", meta: undefined, }, - "breadcrumb-link": { - name: "breadcrumb-link", + "typography-small": { + name: "typography-small", description: "", type: "registry:example", - registryDependencies: ["breadcrumb"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/breadcrumb-link.tsx", + path: "registry/new-york/examples/typography-small.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-link.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-small.tsx")), source: "", meta: undefined, }, - "breadcrumb-responsive": { - name: "breadcrumb-responsive", + "typography-table": { + name: "typography-table", description: "", type: "registry:example", - registryDependencies: ["breadcrumb"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/breadcrumb-responsive.tsx", + path: "registry/new-york/examples/typography-table.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/breadcrumb-responsive.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/typography-table.tsx")), source: "", meta: undefined, }, - "button-demo": { - name: "button-demo", + "site-header-demo": { + name: "site-header-demo", description: "", type: "registry:example", - registryDependencies: ["button"], + registryDependencies: ["site-header"], files: [{ - path: "registry/new-york/examples/button-demo.tsx", + path: "registry/new-york/examples/site-header-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/button-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/site-header-demo.tsx")), source: "", meta: undefined, }, - "button-secondary": { - name: "button-secondary", + "effect-ripple-demo": { + name: "effect-ripple-demo", description: "", type: "registry:example", - registryDependencies: ["button"], + registryDependencies: ["effect-ripple"], files: [{ - path: "registry/new-york/examples/button-secondary.tsx", + path: "registry/new-york/examples/effect-ripple-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/button-secondary.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/effect-ripple-demo.tsx")), source: "", meta: undefined, }, - "button-destructive": { - name: "button-destructive", + "site-hero-demo": { + name: "site-hero-demo", description: "", type: "registry:example", - registryDependencies: ["button"], + registryDependencies: ["site-hero"], files: [{ - path: "registry/new-york/examples/button-destructive.tsx", + path: "registry/new-york/examples/site-hero-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/button-destructive.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/site-hero-demo.tsx")), source: "", meta: undefined, }, - "button-outline": { - name: "button-outline", + "prodkt-mode-toggle-demo": { + name: "prodkt-mode-toggle-demo", description: "", type: "registry:example", - registryDependencies: ["button"], + registryDependencies: ["prodkt-mode-toggle"], files: [{ - path: "registry/new-york/examples/button-outline.tsx", + path: "registry/new-york/examples/prodkt-mode-toggle-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/button-outline.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/prodkt-mode-toggle-demo.tsx")), source: "", meta: undefined, }, - "button-ghost": { - name: "button-ghost", + "mode-toggle": { + name: "mode-toggle", description: "", type: "registry:example", - registryDependencies: ["button"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/button-ghost.tsx", + path: "registry/new-york/examples/mode-toggle.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/button-ghost.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/mode-toggle.tsx")), source: "", meta: undefined, }, - "button-link": { - name: "button-link", + "chart-bar-demo": { + name: "chart-bar-demo", description: "", type: "registry:example", - registryDependencies: ["button"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/button-link.tsx", + path: "registry/new-york/examples/chart-bar-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/button-link.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/chart-bar-demo.tsx")), source: "", meta: undefined, }, - "button-with-icon": { - name: "button-with-icon", + "chart-bar-demo-grid": { + name: "chart-bar-demo-grid", description: "", type: "registry:example", - registryDependencies: ["button"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/button-with-icon.tsx", + path: "registry/new-york/examples/chart-bar-demo-grid.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/button-with-icon.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/chart-bar-demo-grid.tsx")), source: "", meta: undefined, }, - "button-loading": { - name: "button-loading", + "chart-bar-demo-axis": { + name: "chart-bar-demo-axis", description: "", type: "registry:example", - registryDependencies: ["button"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/button-loading.tsx", + path: "registry/new-york/examples/chart-bar-demo-axis.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/button-loading.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/chart-bar-demo-axis.tsx")), source: "", meta: undefined, }, - "button-icon": { - name: "button-icon", + "chart-bar-demo-tooltip": { + name: "chart-bar-demo-tooltip", description: "", type: "registry:example", - registryDependencies: ["button"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/button-icon.tsx", + path: "registry/new-york/examples/chart-bar-demo-tooltip.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/button-icon.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/chart-bar-demo-tooltip.tsx")), source: "", meta: undefined, }, - "button-as-child": { - name: "button-as-child", + "chart-bar-demo-legend": { + name: "chart-bar-demo-legend", description: "", type: "registry:example", - registryDependencies: ["button"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/button-as-child.tsx", + path: "registry/new-york/examples/chart-bar-demo-legend.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/button-as-child.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/chart-bar-demo-legend.tsx")), source: "", meta: undefined, }, - "calendar-demo": { - name: "calendar-demo", + "chart-tooltip-demo": { + name: "chart-tooltip-demo", description: "", type: "registry:example", - registryDependencies: ["calendar"], + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/calendar-demo.tsx", + path: "registry/new-york/examples/chart-tooltip-demo.tsx", type: "registry:example", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/calendar-demo.tsx")), + component: React.lazy(() => import("@/registry/new-york/examples/chart-tooltip-demo.tsx")), source: "", meta: undefined, }, - "calendar-form": { - name: "calendar-form", + }, "default": { + "accordion": { + name: "accordion", description: "", - type: "registry:example", - registryDependencies: ["calendar","form","popover"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/calendar-form.tsx", - type: "registry:example", + path: "registry/default/ui/accordion.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/calendar-form.tsx")), + component: React.lazy(() => import("@/registry/default/ui/accordion.tsx")), source: "", meta: undefined, }, - "card-demo": { - name: "card-demo", + "alert": { + name: "alert", description: "", - type: "registry:example", - registryDependencies: ["card","button","switch"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/card-demo.tsx", - type: "registry:example", + path: "registry/default/ui/alert.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/card-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/alert.tsx")), source: "", meta: undefined, }, - "card-with-form": { - name: "card-with-form", + "alert-dialog": { + name: "alert-dialog", description: "", - type: "registry:example", - registryDependencies: ["button","card","input","label","select"], + type: "registry:ui", + registryDependencies: ["button"], files: [{ - path: "registry/new-york/examples/card-with-form.tsx", - type: "registry:example", + path: "registry/default/ui/alert-dialog.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/card-with-form.tsx")), + component: React.lazy(() => import("@/registry/default/ui/alert-dialog.tsx")), source: "", meta: undefined, }, - "carousel-demo": { - name: "carousel-demo", + "aspect-ratio": { + name: "aspect-ratio", description: "", - type: "registry:example", - registryDependencies: ["carousel"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/carousel-demo.tsx", - type: "registry:example", + path: "registry/default/ui/aspect-ratio.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/carousel-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/aspect-ratio.tsx")), source: "", meta: undefined, }, - "carousel-size": { - name: "carousel-size", + "avatar": { + name: "avatar", description: "", - type: "registry:example", - registryDependencies: ["carousel"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/carousel-size.tsx", - type: "registry:example", + path: "registry/default/ui/avatar.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/carousel-size.tsx")), + component: React.lazy(() => import("@/registry/default/ui/avatar.tsx")), source: "", meta: undefined, }, - "carousel-spacing": { - name: "carousel-spacing", + "badge": { + name: "badge", description: "", - type: "registry:example", - registryDependencies: ["carousel"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/carousel-spacing.tsx", - type: "registry:example", + path: "registry/default/ui/badge.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/carousel-spacing.tsx")), + component: React.lazy(() => import("@/registry/default/ui/badge.tsx")), source: "", meta: undefined, }, - "carousel-orientation": { - name: "carousel-orientation", + "breadcrumb": { + name: "breadcrumb", description: "", - type: "registry:example", - registryDependencies: ["carousel"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/carousel-orientation.tsx", - type: "registry:example", + path: "registry/default/ui/breadcrumb.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/carousel-orientation.tsx")), + component: React.lazy(() => import("@/registry/default/ui/breadcrumb.tsx")), source: "", meta: undefined, }, - "carousel-api": { - name: "carousel-api", + "button": { + name: "button", description: "", - type: "registry:example", - registryDependencies: ["carousel"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/carousel-api.tsx", - type: "registry:example", + path: "registry/default/ui/button.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/carousel-api.tsx")), + component: React.lazy(() => import("@/registry/default/ui/button.tsx")), source: "", meta: undefined, }, - "carousel-plugin": { - name: "carousel-plugin", + "calendar": { + name: "calendar", description: "", - type: "registry:example", - registryDependencies: ["carousel"], + type: "registry:ui", + registryDependencies: ["button"], files: [{ - path: "registry/new-york/examples/carousel-plugin.tsx", - type: "registry:example", + path: "registry/default/ui/calendar.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/carousel-plugin.tsx")), + component: React.lazy(() => import("@/registry/default/ui/calendar.tsx")), source: "", meta: undefined, }, - "checkbox-demo": { - name: "checkbox-demo", + "card": { + name: "card", description: "", - type: "registry:example", - registryDependencies: ["checkbox"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/checkbox-demo.tsx", - type: "registry:example", + path: "registry/default/ui/card.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/checkbox-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/card.tsx")), source: "", meta: undefined, }, - "checkbox-disabled": { - name: "checkbox-disabled", + "carousel": { + name: "carousel", description: "", - type: "registry:example", - registryDependencies: ["checkbox"], + type: "registry:ui", + registryDependencies: ["button"], files: [{ - path: "registry/new-york/examples/checkbox-disabled.tsx", - type: "registry:example", + path: "registry/default/ui/carousel.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/checkbox-disabled.tsx")), + component: React.lazy(() => import("@/registry/default/ui/carousel.tsx")), source: "", meta: undefined, }, - "checkbox-form-multiple": { - name: "checkbox-form-multiple", + "chart": { + name: "chart", description: "", - type: "registry:example", - registryDependencies: ["checkbox","form"], - files: [{ - path: "registry/new-york/examples/checkbox-form-multiple.tsx", - type: "registry:example", + type: "registry:ui", + registryDependencies: ["card"], + files: [{ + path: "registry/default/ui/chart.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/checkbox-form-multiple.tsx")), + component: React.lazy(() => import("@/registry/default/ui/chart.tsx")), source: "", meta: undefined, }, - "checkbox-form-single": { - name: "checkbox-form-single", + "checkbox": { + name: "checkbox", description: "", - type: "registry:example", - registryDependencies: ["checkbox","form"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/checkbox-form-single.tsx", - type: "registry:example", + path: "registry/default/ui/checkbox.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/checkbox-form-single.tsx")), + component: React.lazy(() => import("@/registry/default/ui/checkbox.tsx")), source: "", meta: undefined, }, - "checkbox-with-text": { - name: "checkbox-with-text", + "collapsible": { + name: "collapsible", description: "", - type: "registry:example", - registryDependencies: ["checkbox"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/checkbox-with-text.tsx", - type: "registry:example", + path: "registry/default/ui/collapsible.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/checkbox-with-text.tsx")), + component: React.lazy(() => import("@/registry/default/ui/collapsible.tsx")), source: "", meta: undefined, }, - "collapsible-demo": { - name: "collapsible-demo", + "command": { + name: "command", description: "", - type: "registry:example", - registryDependencies: ["collapsible"], + type: "registry:ui", + registryDependencies: ["dialog"], files: [{ - path: "registry/new-york/examples/collapsible-demo.tsx", - type: "registry:example", + path: "registry/default/ui/command.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/collapsible-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/command.tsx")), source: "", meta: undefined, }, - "combobox-demo": { - name: "combobox-demo", + "context-menu": { + name: "context-menu", description: "", - type: "registry:example", - registryDependencies: ["command"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/combobox-demo.tsx", - type: "registry:example", + path: "registry/default/ui/context-menu.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/combobox-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/context-menu.tsx")), source: "", meta: undefined, }, - "combobox-dropdown-menu": { - name: "combobox-dropdown-menu", + "dialog": { + name: "dialog", description: "", - type: "registry:example", - registryDependencies: ["command","dropdown-menu","button"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/combobox-dropdown-menu.tsx", - type: "registry:example", + path: "registry/default/ui/dialog.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/combobox-dropdown-menu.tsx")), + component: React.lazy(() => import("@/registry/default/ui/dialog.tsx")), source: "", meta: undefined, }, - "combobox-form": { - name: "combobox-form", + "drawer": { + name: "drawer", description: "", - type: "registry:example", - registryDependencies: ["command","form"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/combobox-form.tsx", - type: "registry:example", + path: "registry/default/ui/drawer.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/combobox-form.tsx")), + component: React.lazy(() => import("@/registry/default/ui/drawer.tsx")), source: "", meta: undefined, }, - "combobox-popover": { - name: "combobox-popover", + "dropdown-menu": { + name: "dropdown-menu", description: "", - type: "registry:example", - registryDependencies: ["combobox","popover"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/combobox-popover.tsx", - type: "registry:example", + path: "registry/default/ui/dropdown-menu.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/combobox-popover.tsx")), + component: React.lazy(() => import("@/registry/default/ui/dropdown-menu.tsx")), source: "", meta: undefined, }, - "combobox-responsive": { - name: "combobox-responsive", + "form": { + name: "form", description: "", - type: "registry:example", - registryDependencies: ["combobox","popover","drawer"], + type: "registry:ui", + registryDependencies: ["button","label"], files: [{ - path: "registry/new-york/examples/combobox-responsive.tsx", - type: "registry:example", + path: "registry/default/ui/form.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/combobox-responsive.tsx")), + component: React.lazy(() => import("@/registry/default/ui/form.tsx")), source: "", meta: undefined, }, - "command-demo": { - name: "command-demo", + "hover-card": { + name: "hover-card", description: "", - type: "registry:example", - registryDependencies: ["command"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/command-demo.tsx", - type: "registry:example", + path: "registry/default/ui/hover-card.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/command-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/hover-card.tsx")), source: "", meta: undefined, }, - "command-dialog": { - name: "command-dialog", + "input": { + name: "input", description: "", - type: "registry:example", - registryDependencies: ["command","dialog"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/command-dialog.tsx", - type: "registry:example", + path: "registry/default/ui/input.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/command-dialog.tsx")), + component: React.lazy(() => import("@/registry/default/ui/input.tsx")), source: "", meta: undefined, }, - "context-menu-demo": { - name: "context-menu-demo", + "input-otp": { + name: "input-otp", description: "", - type: "registry:example", - registryDependencies: ["context-menu"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/context-menu-demo.tsx", - type: "registry:example", + path: "registry/default/ui/input-otp.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/context-menu-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/input-otp.tsx")), source: "", meta: undefined, }, - "data-table-demo": { - name: "data-table-demo", + "label": { + name: "label", description: "", - type: "registry:example", - registryDependencies: ["data-table"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/data-table-demo.tsx", - type: "registry:example", + path: "registry/default/ui/label.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/data-table-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/label.tsx")), source: "", meta: undefined, }, - "date-picker-demo": { - name: "date-picker-demo", + "menubar": { + name: "menubar", description: "", - type: "registry:example", - registryDependencies: ["button","calendar","popover"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/date-picker-demo.tsx", - type: "registry:example", + path: "registry/default/ui/menubar.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/date-picker-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/menubar.tsx")), source: "", meta: undefined, }, - "date-picker-form": { - name: "date-picker-form", + "navigation-menu": { + name: "navigation-menu", description: "", - type: "registry:example", - registryDependencies: ["button","calendar","form","popover"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/date-picker-form.tsx", - type: "registry:example", + path: "registry/default/ui/navigation-menu.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/date-picker-form.tsx")), + component: React.lazy(() => import("@/registry/default/ui/navigation-menu.tsx")), source: "", meta: undefined, }, - "date-picker-with-presets": { - name: "date-picker-with-presets", + "pagination": { + name: "pagination", description: "", - type: "registry:example", - registryDependencies: ["button","calendar","popover","select"], + type: "registry:ui", + registryDependencies: ["button"], files: [{ - path: "registry/new-york/examples/date-picker-with-presets.tsx", - type: "registry:example", + path: "registry/default/ui/pagination.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/date-picker-with-presets.tsx")), + component: React.lazy(() => import("@/registry/default/ui/pagination.tsx")), source: "", meta: undefined, }, - "date-picker-with-range": { - name: "date-picker-with-range", + "popover": { + name: "popover", description: "", - type: "registry:example", - registryDependencies: ["button","calendar","popover"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/date-picker-with-range.tsx", - type: "registry:example", + path: "registry/default/ui/popover.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/date-picker-with-range.tsx")), + component: React.lazy(() => import("@/registry/default/ui/popover.tsx")), source: "", meta: undefined, }, - "dialog-demo": { - name: "dialog-demo", + "progress": { + name: "progress", description: "", - type: "registry:example", - registryDependencies: ["dialog"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/dialog-demo.tsx", - type: "registry:example", + path: "registry/default/ui/progress.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/dialog-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/progress.tsx")), source: "", meta: undefined, }, - "dialog-close-button": { - name: "dialog-close-button", + "radio-group": { + name: "radio-group", description: "", - type: "registry:example", - registryDependencies: ["dialog","button"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/dialog-close-button.tsx", - type: "registry:example", + path: "registry/default/ui/radio-group.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/dialog-close-button.tsx")), + component: React.lazy(() => import("@/registry/default/ui/radio-group.tsx")), source: "", meta: undefined, }, - "drawer-demo": { - name: "drawer-demo", + "resizable": { + name: "resizable", description: "", - type: "registry:example", - registryDependencies: ["drawer"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/drawer-demo.tsx", - type: "registry:example", + path: "registry/default/ui/resizable.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/drawer-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/resizable.tsx")), source: "", meta: undefined, }, - "drawer-dialog": { - name: "drawer-dialog", + "scroll-area": { + name: "scroll-area", description: "", - type: "registry:example", - registryDependencies: ["drawer","dialog"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/drawer-dialog.tsx", - type: "registry:example", + path: "registry/default/ui/scroll-area.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/drawer-dialog.tsx")), + component: React.lazy(() => import("@/registry/default/ui/scroll-area.tsx")), source: "", meta: undefined, }, - "dropdown-menu-demo": { - name: "dropdown-menu-demo", + "select": { + name: "select", description: "", - type: "registry:example", - registryDependencies: ["dropdown-menu"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/dropdown-menu-demo.tsx", - type: "registry:example", + path: "registry/default/ui/select.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/dropdown-menu-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/select.tsx")), source: "", meta: undefined, }, - "dropdown-menu-checkboxes": { - name: "dropdown-menu-checkboxes", + "separator": { + name: "separator", description: "", - type: "registry:example", - registryDependencies: ["dropdown-menu","checkbox"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/dropdown-menu-checkboxes.tsx", - type: "registry:example", + path: "registry/default/ui/separator.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/dropdown-menu-checkboxes.tsx")), + component: React.lazy(() => import("@/registry/default/ui/separator.tsx")), source: "", meta: undefined, }, - "dropdown-menu-radio-group": { - name: "dropdown-menu-radio-group", + "sheet": { + name: "sheet", description: "", - type: "registry:example", - registryDependencies: ["dropdown-menu","radio-group"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/dropdown-menu-radio-group.tsx", - type: "registry:example", + path: "registry/default/ui/sheet.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/dropdown-menu-radio-group.tsx")), + component: React.lazy(() => import("@/registry/default/ui/sheet.tsx")), source: "", meta: undefined, }, - "hover-card-demo": { - name: "hover-card-demo", + "sidebar": { + name: "sidebar", description: "", - type: "registry:example", - registryDependencies: ["hover-card"], + type: "registry:ui", + registryDependencies: ["button","separator","sheet","tooltip","input","use-mobile","skeleton"], files: [{ - path: "registry/new-york/examples/hover-card-demo.tsx", - type: "registry:example", + path: "registry/default/ui/sidebar.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/hover-card-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/sidebar.tsx")), source: "", meta: undefined, }, - "input-demo": { - name: "input-demo", + "skeleton": { + name: "skeleton", description: "", - type: "registry:example", - registryDependencies: ["input"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/input-demo.tsx", - type: "registry:example", + path: "registry/default/ui/skeleton.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/skeleton.tsx")), source: "", meta: undefined, }, - "input-disabled": { - name: "input-disabled", + "slider": { + name: "slider", description: "", - type: "registry:example", - registryDependencies: ["input"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/input-disabled.tsx", - type: "registry:example", + path: "registry/default/ui/slider.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-disabled.tsx")), + component: React.lazy(() => import("@/registry/default/ui/slider.tsx")), source: "", meta: undefined, }, - "input-file": { - name: "input-file", + "sonner": { + name: "sonner", description: "", - type: "registry:example", - registryDependencies: ["input"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/input-file.tsx", - type: "registry:example", + path: "registry/default/ui/sonner.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-file.tsx")), + component: React.lazy(() => import("@/registry/default/ui/sonner.tsx")), source: "", meta: undefined, }, - "input-form": { - name: "input-form", + "switch": { + name: "switch", description: "", - type: "registry:example", - registryDependencies: ["input","button","form"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/input-form.tsx", - type: "registry:example", + path: "registry/default/ui/switch.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-form.tsx")), + component: React.lazy(() => import("@/registry/default/ui/switch.tsx")), source: "", meta: undefined, }, - "input-with-button": { - name: "input-with-button", + "table": { + name: "table", description: "", - type: "registry:example", - registryDependencies: ["input","button"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/input-with-button.tsx", - type: "registry:example", + path: "registry/default/ui/table.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-with-button.tsx")), + component: React.lazy(() => import("@/registry/default/ui/table.tsx")), source: "", meta: undefined, }, - "input-with-label": { - name: "input-with-label", + "tabs": { + name: "tabs", description: "", - type: "registry:example", - registryDependencies: ["input","button","label"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/input-with-label.tsx", - type: "registry:example", + path: "registry/default/ui/tabs.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-with-label.tsx")), + component: React.lazy(() => import("@/registry/default/ui/tabs.tsx")), source: "", meta: undefined, }, - "input-with-text": { - name: "input-with-text", + "textarea": { + name: "textarea", description: "", - type: "registry:example", - registryDependencies: ["input","button","label"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/input-with-text.tsx", - type: "registry:example", + path: "registry/default/ui/textarea.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-with-text.tsx")), + component: React.lazy(() => import("@/registry/default/ui/textarea.tsx")), source: "", meta: undefined, }, - "input-otp-demo": { - name: "input-otp-demo", + "toast": { + name: "toast", description: "", - type: "registry:example", - registryDependencies: ["input-otp"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/input-otp-demo.tsx", - type: "registry:example", + path: "registry/default/ui/toast.tsx", + type: "registry:ui", + target: "" + },{ + path: "registry/default/hooks/use-toast.ts", + type: "registry:hook", + target: "" + },{ + path: "registry/default/ui/toaster.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-otp-demo.tsx")), + component: React.lazy(() => import("@/registry/default/ui/toast.tsx")), source: "", meta: undefined, }, - "input-otp-pattern": { - name: "input-otp-pattern", + "toggle": { + name: "toggle", description: "", - type: "registry:example", - registryDependencies: ["input-otp"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/input-otp-pattern.tsx", - type: "registry:example", + path: "registry/default/ui/toggle.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-otp-pattern.tsx")), + component: React.lazy(() => import("@/registry/default/ui/toggle.tsx")), source: "", meta: undefined, }, - "input-otp-separator": { - name: "input-otp-separator", + "toggle-group": { + name: "toggle-group", description: "", - type: "registry:example", - registryDependencies: ["input-otp"], + type: "registry:ui", + registryDependencies: ["toggle"], files: [{ - path: "registry/new-york/examples/input-otp-separator.tsx", - type: "registry:example", + path: "registry/default/ui/toggle-group.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-otp-separator.tsx")), + component: React.lazy(() => import("@/registry/default/ui/toggle-group.tsx")), source: "", meta: undefined, }, - "input-otp-controlled": { - name: "input-otp-controlled", + "tooltip": { + name: "tooltip", description: "", - type: "registry:example", - registryDependencies: ["input-otp"], + type: "registry:ui", + registryDependencies: undefined, files: [{ - path: "registry/new-york/examples/input-otp-controlled.tsx", - type: "registry:example", + path: "registry/default/ui/tooltip.tsx", + type: "registry:ui", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-otp-controlled.tsx")), + component: React.lazy(() => import("@/registry/default/ui/tooltip.tsx")), source: "", meta: undefined, }, - "input-otp-form": { - name: "input-otp-form", - description: "", - type: "registry:example", - registryDependencies: ["input-otp","form"], + "login-nexsale": { + name: "login-nexsale", + description: "A login page with form and image.", + type: "registry:block", + registryDependencies: ["button","card","input","label"], files: [{ - path: "registry/new-york/examples/input-otp-form.tsx", - type: "registry:example", + path: "registry/default/blocks/login-nexsale/page.tsx", + type: "registry:page", + target: "app/login/page.tsx" + },{ + path: "registry/default/blocks/login-nexsale/components/login-form.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/login-nexsale/components/spline-background.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/input-otp-form.tsx")), - source: "", + categories: ["authentication","login"], + component: React.lazy(() => import("@/registry/default/blocks/login-nexsale/page.tsx")), + source: "__registry__/default/blocks/login-nexsale/page.tsx", meta: undefined, }, - "label-demo": { - name: "label-demo", - description: "", - type: "registry:example", - registryDependencies: ["label"], + "web-app-01": { + name: "web-app-01", + description: "A web app layout with a navigation bar and a sidebar.", + type: "registry:block", + registryDependencies: ["button","card","input","label","badge","Footer","SheetMenu","Sidebar","Container","SocialMedia"], files: [{ - path: "registry/new-york/examples/label-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/layouts/web-app-01/page.tsx", + type: "registry:page", + target: "app/content/page.tsx" + },{ + path: "registry/default/blocks/layouts/web-app-01/components/index.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/label-demo.tsx")), - source: "", + categories: ["content","canvas"], + component: React.lazy(() => import("@/registry/default/blocks/layouts/web-app-01/page.tsx")), + source: "__registry__/default/blocks/layouts/web-app-01/page.tsx", meta: undefined, }, - "menubar-demo": { - name: "menubar-demo", - description: "", - type: "registry:example", - registryDependencies: ["menubar"], + "download-01": { + name: "download-01", + description: "A download button with a resume download.", + type: "registry:block", + registryDependencies: ["button"], files: [{ - path: "registry/new-york/examples/menubar-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/download-01/page.tsx", + type: "registry:page", + target: "app/content/page.tsx" + },{ + path: "registry/default/blocks/download-01/components/download-01.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/menubar-demo.tsx")), - source: "", + categories: ["content","canvas"], + component: React.lazy(() => import("@/registry/default/blocks/download-01/page.tsx")), + source: "__registry__/default/blocks/download-01/page.tsx", meta: undefined, }, - "navigation-menu-demo": { - name: "navigation-menu-demo", - description: "", - type: "registry:example", - registryDependencies: ["navigation-menu"], + "effect-jump-to-section-01": { + name: "effect-jump-to-section-01", + description: "A dropdown menu with visual navigation grouped by sections able to be placed on the canvas.", + type: "registry:block", + registryDependencies: ["card"], files: [{ - path: "registry/new-york/examples/navigation-menu-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/effect-jump-to-section-01/page.tsx", + type: "registry:page", + target: "app/content/page.tsx" + },{ + path: "registry/default/blocks/effect-jump-to-section-01/components/index.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/navigation-menu-demo.tsx")), - source: "", + categories: ["content","canvas"], + component: React.lazy(() => import("@/registry/default/blocks/effect-jump-to-section-01/page.tsx")), + source: "__registry__/default/blocks/effect-jump-to-section-01/page.tsx", meta: undefined, }, - "pagination-demo": { - name: "pagination-demo", - description: "", - type: "registry:example", - registryDependencies: ["pagination"], + "effect-card-01": { + name: "effect-card-01", + description: "A dropdown menu with visual navigation grouped by sections able to be placed on the canvas.", + type: "registry:block", + registryDependencies: ["card"], files: [{ - path: "registry/new-york/examples/pagination-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/effect-card-01/page.tsx", + type: "registry:page", + target: "app/effects/page.tsx" + },{ + path: "registry/default/blocks/effect-card-01/components/effect-card-01.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/pagination-demo.tsx")), - source: "", + categories: ["effects","canvas"], + component: React.lazy(() => import("@/registry/default/blocks/effect-card-01/page.tsx")), + source: "__registry__/default/blocks/effect-card-01/page.tsx", meta: undefined, }, - "popover-demo": { - name: "popover-demo", - description: "", - type: "registry:example", - registryDependencies: ["popover"], + "flow-card-01": { + name: "flow-card-01", + description: "A dropdown menu with visual navigation grouped by sections able to be placed on the canvas.", + type: "registry:block", + registryDependencies: ["card"], files: [{ - path: "registry/new-york/examples/popover-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/flow-card-01/page.tsx", + type: "registry:page", + target: "app/flows/page.tsx" + },{ + path: "registry/default/blocks/flow-card-01/components/flow-card.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/popover-demo.tsx")), - source: "", + categories: ["flows","canvas"], + component: React.lazy(() => import("@/registry/default/blocks/flow-card-01/page.tsx")), + source: "__registry__/default/blocks/flow-card-01/page.tsx", meta: undefined, }, - "progress-demo": { - name: "progress-demo", - description: "", - type: "registry:example", - registryDependencies: ["progress"], + "sidebar-01": { + name: "sidebar-01", + description: "A simple sidebar with navigation grouped by section.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","label","dropdown-menu"], files: [{ - path: "registry/new-york/examples/progress-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-01/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-01/components/app-sidebar.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-01/components/search-form.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-01/components/version-switcher.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/progress-demo.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-01/page.tsx")), + source: "__registry__/default/blocks/sidebar-01/page.tsx", meta: undefined, }, - "radio-group-demo": { - name: "radio-group-demo", - description: "", - type: "registry:example", - registryDependencies: ["radio-group"], + "sidebar-02": { + name: "sidebar-02", + description: "A sidebar with collapsible sections.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","label","dropdown-menu"], files: [{ - path: "registry/new-york/examples/radio-group-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-02/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-02/components/app-sidebar.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-02/components/search-form.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-02/components/version-switcher.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/radio-group-demo.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-02/page.tsx")), + source: "__registry__/default/blocks/sidebar-02/page.tsx", meta: undefined, }, - "radio-group-form": { - name: "radio-group-form", - description: "", - type: "registry:example", - registryDependencies: ["radio-group","form"], + "sidebar-03": { + name: "sidebar-03", + description: "A sidebar with submenus.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb"], files: [{ - path: "registry/new-york/examples/radio-group-form.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-03/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-03/components/app-sidebar.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/radio-group-form.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-03/page.tsx")), + source: "__registry__/default/blocks/sidebar-03/page.tsx", meta: undefined, }, - "resizable-demo": { - name: "resizable-demo", - description: "", - type: "registry:example", - registryDependencies: ["resizable"], + "sidebar-04": { + name: "sidebar-04", + description: "A floating sidebar with submenus.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator"], files: [{ - path: "registry/new-york/examples/resizable-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-04/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-04/components/app-sidebar.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/resizable-demo.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-04/page.tsx")), + source: "__registry__/default/blocks/sidebar-04/page.tsx", meta: undefined, - }, - "resizable-demo-with-handle": { - name: "resizable-demo-with-handle", - description: "", - type: "registry:example", - registryDependencies: ["resizable"], + }, + "sidebar-05": { + name: "sidebar-05", + description: "A sidebar with collapsible submenus.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","label","collapsible"], files: [{ - path: "registry/new-york/examples/resizable-demo-with-handle.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-05/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-05/components/app-sidebar.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-05/components/search-form.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/resizable-demo-with-handle.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-05/page.tsx")), + source: "__registry__/default/blocks/sidebar-05/page.tsx", meta: undefined, }, - "resizable-vertical": { - name: "resizable-vertical", - description: "", - type: "registry:example", - registryDependencies: ["resizable"], + "sidebar-06": { + name: "sidebar-06", + description: "A sidebar with submenus as dropdowns.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","card","dropdown-menu"], files: [{ - path: "registry/new-york/examples/resizable-vertical.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-06/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-06/components/app-sidebar.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-06/components/nav-main.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-06/components/sidebar-opt-in-form.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/resizable-vertical.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-06/page.tsx")), + source: "__registry__/default/blocks/sidebar-06/page.tsx", meta: undefined, }, - "resizable-handle": { - name: "resizable-handle", - description: "", - type: "registry:example", - registryDependencies: ["resizable"], + "sidebar-07": { + name: "sidebar-07", + description: "A sidebar that collapses to icons.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar"], files: [{ - path: "registry/new-york/examples/resizable-handle.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-07/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-07/components/app-sidebar.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-07/components/nav-main.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-07/components/nav-projects.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-07/components/nav-user.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-07/components/team-switcher.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/resizable-handle.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-07/page.tsx")), + source: "__registry__/default/blocks/sidebar-07/page.tsx", meta: undefined, }, - "scroll-area-demo": { - name: "scroll-area-demo", - description: "", - type: "registry:example", - registryDependencies: ["scroll-area"], + "sidebar-08": { + name: "sidebar-08", + description: "An inset sidebar with secondary navigation.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar"], files: [{ - path: "registry/new-york/examples/scroll-area-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-08/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-08/components/app-sidebar.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-08/components/nav-main.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-08/components/nav-projects.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-08/components/nav-secondary.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-08/components/nav-user.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/scroll-area-demo.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-08/page.tsx")), + source: "__registry__/default/blocks/sidebar-08/page.tsx", meta: undefined, }, - "scroll-area-horizontal-demo": { - name: "scroll-area-horizontal-demo", - description: "", - type: "registry:example", - registryDependencies: ["scroll-area"], + "sidebar-09": { + name: "sidebar-09", + description: "Collapsible nested sidebars.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar","switch"], files: [{ - path: "registry/new-york/examples/scroll-area-horizontal-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-09/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-09/components/app-sidebar.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-09/components/nav-user.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/scroll-area-horizontal-demo.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-09/page.tsx")), + source: "__registry__/default/blocks/sidebar-09/page.tsx", meta: undefined, }, - "select-demo": { - name: "select-demo", - description: "", - type: "registry:example", - registryDependencies: ["select"], + "sidebar-10": { + name: "sidebar-10", + description: "A sidebar in a popover.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","popover","collapsible","dropdown-menu"], files: [{ - path: "registry/new-york/examples/select-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-10/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-10/components/app-sidebar.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-10/components/nav-actions.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-10/components/nav-favorites.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-10/components/nav-main.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-10/components/nav-secondary.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-10/components/nav-workspaces.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-10/components/team-switcher.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/select-demo.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-10/page.tsx")), + source: "__registry__/default/blocks/sidebar-10/page.tsx", meta: undefined, }, - "select-scrollable": { - name: "select-scrollable", - description: "", - type: "registry:example", - registryDependencies: ["select"], + "sidebar-11": { + name: "sidebar-11", + description: "A sidebar with a collapsible file tree.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","collapsible"], files: [{ - path: "registry/new-york/examples/select-scrollable.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-11/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-11/components/app-sidebar.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/select-scrollable.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-11/page.tsx")), + source: "__registry__/default/blocks/sidebar-11/page.tsx", meta: undefined, }, - "select-form": { - name: "select-form", - description: "", - type: "registry:example", - registryDependencies: ["select"], + "sidebar-12": { + name: "sidebar-12", + description: "A sidebar with a calendar.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","collapsible","calendar","dropdown-menu","avatar"], files: [{ - path: "registry/new-york/examples/select-form.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-12/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-12/components/app-sidebar.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-12/components/calendars.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-12/components/date-picker.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-12/components/nav-user.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/select-form.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-12/page.tsx")), + source: "__registry__/default/blocks/sidebar-12/page.tsx", meta: undefined, }, - "separator-demo": { - name: "separator-demo", - description: "", - type: "registry:example", - registryDependencies: ["separator"], + "sidebar-13": { + name: "sidebar-13", + description: "A sidebar in a dialog.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","button","dialog"], files: [{ - path: "registry/new-york/examples/separator-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-13/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-13/components/settings-dialog.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/separator-demo.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-13/page.tsx")), + source: "__registry__/default/blocks/sidebar-13/page.tsx", meta: undefined, }, - "sheet-demo": { - name: "sheet-demo", - description: "", - type: "registry:example", - registryDependencies: ["sheet"], + "sidebar-14": { + name: "sidebar-14", + description: "A sidebar on the right.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb"], files: [{ - path: "registry/new-york/examples/sheet-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-14/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-14/components/app-sidebar.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/sheet-demo.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-14/page.tsx")), + source: "__registry__/default/blocks/sidebar-14/page.tsx", meta: undefined, }, - "sheet-side": { - name: "sheet-side", - description: "", - type: "registry:example", - registryDependencies: ["sheet"], + "sidebar-15": { + name: "sidebar-15", + description: "A left and right sidebar.", + type: "registry:block", + registryDependencies: ["sidebar","breadcrumb","separator","popover","collapsible","dropdown-menu","calendar","avatar"], files: [{ - path: "registry/new-york/examples/sheet-side.tsx", - type: "registry:example", + path: "registry/default/blocks/sidebar-15/page.tsx", + type: "registry:page", + target: "app/dashboard/page.tsx" + },{ + path: "registry/default/blocks/sidebar-15/components/calendars.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-15/components/date-picker.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-15/components/nav-favorites.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-15/components/nav-main.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-15/components/nav-secondary.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-15/components/nav-user.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-15/components/nav-workspaces.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-15/components/sidebar-left.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-15/components/sidebar-right.tsx", + type: "registry:component", + target: "" + },{ + path: "registry/default/blocks/sidebar-15/components/team-switcher.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/sheet-side.tsx")), - source: "", + categories: ["sidebar","dashboard"], + component: React.lazy(() => import("@/registry/default/blocks/sidebar-15/page.tsx")), + source: "__registry__/default/blocks/sidebar-15/page.tsx", meta: undefined, }, - "skeleton-demo": { - name: "skeleton-demo", - description: "", - type: "registry:example", - registryDependencies: ["skeleton"], + "login-01": { + name: "login-01", + description: "A simple login form.", + type: "registry:block", + registryDependencies: ["button","card","input","label"], files: [{ - path: "registry/new-york/examples/skeleton-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/login-01/page.tsx", + type: "registry:page", + target: "app/login/page.tsx" + },{ + path: "registry/default/blocks/login-01/components/login-form.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/skeleton-demo.tsx")), - source: "", + categories: ["authentication","login"], + component: React.lazy(() => import("@/registry/default/blocks/login-01/page.tsx")), + source: "__registry__/default/blocks/login-01/page.tsx", meta: undefined, }, - "skeleton-card": { - name: "skeleton-card", - description: "", - type: "registry:example", - registryDependencies: ["skeleton"], + "login-02": { + name: "login-02", + description: "A two column login page with a cover image.", + type: "registry:block", + registryDependencies: ["button","card","input","label"], files: [{ - path: "registry/new-york/examples/skeleton-card.tsx", - type: "registry:example", + path: "registry/default/blocks/login-02/page.tsx", + type: "registry:page", + target: "app/login/page.tsx" + },{ + path: "registry/default/blocks/login-02/components/login-form.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/skeleton-card.tsx")), - source: "", + categories: ["authentication","login"], + component: React.lazy(() => import("@/registry/default/blocks/login-02/page.tsx")), + source: "__registry__/default/blocks/login-02/page.tsx", meta: undefined, }, - "slider-demo": { - name: "slider-demo", - description: "", - type: "registry:example", - registryDependencies: ["slider"], + "login-03": { + name: "login-03", + description: "A login page with a muted background color.", + type: "registry:block", + registryDependencies: ["button","card","input","label"], files: [{ - path: "registry/new-york/examples/slider-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/login-03/page.tsx", + type: "registry:page", + target: "app/login/page.tsx" + },{ + path: "registry/default/blocks/login-03/components/login-form.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/slider-demo.tsx")), - source: "", + categories: ["authentication","login"], + component: React.lazy(() => import("@/registry/default/blocks/login-03/page.tsx")), + source: "__registry__/default/blocks/login-03/page.tsx", meta: undefined, }, - "sonner-demo": { - name: "sonner-demo", - description: "", - type: "registry:example", - registryDependencies: ["sonner"], + "login-04": { + name: "login-04", + description: "A login page with form and image.", + type: "registry:block", + registryDependencies: ["button","card","input","label"], files: [{ - path: "registry/new-york/examples/sonner-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/login-04/page.tsx", + type: "registry:page", + target: "app/login/page.tsx" + },{ + path: "registry/default/blocks/login-04/components/login-form.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/sonner-demo.tsx")), - source: "", + categories: ["authentication","login"], + component: React.lazy(() => import("@/registry/default/blocks/login-04/page.tsx")), + source: "__registry__/default/blocks/login-04/page.tsx", meta: undefined, }, - "switch-demo": { - name: "switch-demo", - description: "", - type: "registry:example", - registryDependencies: ["switch"], + "login-05": { + name: "login-05", + description: "A simple email-only login page.", + type: "registry:block", + registryDependencies: ["button","card","input","label"], files: [{ - path: "registry/new-york/examples/switch-demo.tsx", - type: "registry:example", + path: "registry/default/blocks/login-05/page.tsx", + type: "registry:page", + target: "app/login/page.tsx" + },{ + path: "registry/default/blocks/login-05/components/login-form.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/switch-demo.tsx")), - source: "", + categories: ["authentication","login"], + component: React.lazy(() => import("@/registry/default/blocks/login-05/page.tsx")), + source: "__registry__/default/blocks/login-05/page.tsx", meta: undefined, }, - "switch-form": { - name: "switch-form", + "chart-area-axes": { + name: "chart-area-axes", description: "", - type: "registry:example", - registryDependencies: ["switch","form"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/switch-form.tsx", - type: "registry:example", + path: "registry/default/charts/chart-area-axes.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/switch-form.tsx")), - source: "", + categories: ["charts","charts-area"], + component: React.lazy(() => import("@/registry/default/charts/chart-area-axes.tsx")), + source: "__registry__/default/charts/chart-area-axes.tsx", meta: undefined, }, - "table-demo": { - name: "table-demo", + "chart-area-default": { + name: "chart-area-default", description: "", - type: "registry:example", - registryDependencies: ["table"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/table-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-area-default.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/table-demo.tsx")), - source: "", + categories: ["charts","charts-area"], + component: React.lazy(() => import("@/registry/default/charts/chart-area-default.tsx")), + source: "__registry__/default/charts/chart-area-default.tsx", meta: undefined, }, - "tabs-demo": { - name: "tabs-demo", + "chart-area-gradient": { + name: "chart-area-gradient", description: "", - type: "registry:example", - registryDependencies: ["tabs"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/tabs-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-area-gradient.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/tabs-demo.tsx")), - source: "", + categories: ["charts","charts-area"], + component: React.lazy(() => import("@/registry/default/charts/chart-area-gradient.tsx")), + source: "__registry__/default/charts/chart-area-gradient.tsx", meta: undefined, }, - "textarea-demo": { - name: "textarea-demo", + "chart-area-icons": { + name: "chart-area-icons", description: "", - type: "registry:example", - registryDependencies: ["textarea"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/textarea-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-area-icons.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/textarea-demo.tsx")), - source: "", + categories: ["charts","charts-area"], + component: React.lazy(() => import("@/registry/default/charts/chart-area-icons.tsx")), + source: "__registry__/default/charts/chart-area-icons.tsx", meta: undefined, }, - "textarea-disabled": { - name: "textarea-disabled", + "chart-area-interactive": { + name: "chart-area-interactive", description: "", - type: "registry:example", - registryDependencies: ["textarea"], + type: "registry:block", + registryDependencies: ["card","chart","select"], files: [{ - path: "registry/new-york/examples/textarea-disabled.tsx", - type: "registry:example", + path: "registry/default/charts/chart-area-interactive.tsx", + type: "registry:component", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/textarea-disabled.tsx")), - source: "", + categories: ["charts","charts-area"], + component: React.lazy(() => import("@/registry/default/charts/chart-area-interactive.tsx")), + source: "__registry__/default/charts/chart-area-interactive.tsx", meta: undefined, }, - "textarea-form": { - name: "textarea-form", + "chart-area-legend": { + name: "chart-area-legend", description: "", - type: "registry:example", - registryDependencies: ["textarea","form"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/textarea-form.tsx", - type: "registry:example", + path: "registry/default/charts/chart-area-legend.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/textarea-form.tsx")), - source: "", + categories: ["charts","charts-area"], + component: React.lazy(() => import("@/registry/default/charts/chart-area-legend.tsx")), + source: "__registry__/default/charts/chart-area-legend.tsx", meta: undefined, }, - "textarea-with-button": { - name: "textarea-with-button", + "chart-area-linear": { + name: "chart-area-linear", description: "", - type: "registry:example", - registryDependencies: ["textarea","button"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/textarea-with-button.tsx", - type: "registry:example", + path: "registry/default/charts/chart-area-linear.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/textarea-with-button.tsx")), - source: "", + categories: ["charts","charts-area"], + component: React.lazy(() => import("@/registry/default/charts/chart-area-linear.tsx")), + source: "__registry__/default/charts/chart-area-linear.tsx", meta: undefined, }, - "textarea-with-label": { - name: "textarea-with-label", + "chart-area-stacked-expand": { + name: "chart-area-stacked-expand", description: "", - type: "registry:example", - registryDependencies: ["textarea","label"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/textarea-with-label.tsx", - type: "registry:example", + path: "registry/default/charts/chart-area-stacked-expand.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/textarea-with-label.tsx")), - source: "", + categories: ["charts","charts-area"], + component: React.lazy(() => import("@/registry/default/charts/chart-area-stacked-expand.tsx")), + source: "__registry__/default/charts/chart-area-stacked-expand.tsx", meta: undefined, }, - "textarea-with-text": { - name: "textarea-with-text", + "chart-area-stacked": { + name: "chart-area-stacked", description: "", - type: "registry:example", - registryDependencies: ["textarea","label"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/textarea-with-text.tsx", - type: "registry:example", + path: "registry/default/charts/chart-area-stacked.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/textarea-with-text.tsx")), - source: "", + categories: ["charts","charts-area"], + component: React.lazy(() => import("@/registry/default/charts/chart-area-stacked.tsx")), + source: "__registry__/default/charts/chart-area-stacked.tsx", meta: undefined, }, - "toast-demo": { - name: "toast-demo", + "chart-area-step": { + name: "chart-area-step", description: "", - type: "registry:example", - registryDependencies: ["toast"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toast-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-area-step.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toast-demo.tsx")), - source: "", + categories: ["charts","charts-area"], + component: React.lazy(() => import("@/registry/default/charts/chart-area-step.tsx")), + source: "__registry__/default/charts/chart-area-step.tsx", meta: undefined, }, - "toast-destructive": { - name: "toast-destructive", + "chart-bar-active": { + name: "chart-bar-active", description: "", - type: "registry:example", - registryDependencies: ["toast"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toast-destructive.tsx", - type: "registry:example", + path: "registry/default/charts/chart-bar-active.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toast-destructive.tsx")), - source: "", + categories: ["charts","charts-bar"], + component: React.lazy(() => import("@/registry/default/charts/chart-bar-active.tsx")), + source: "__registry__/default/charts/chart-bar-active.tsx", meta: undefined, }, - "toast-simple": { - name: "toast-simple", + "chart-bar-default": { + name: "chart-bar-default", description: "", - type: "registry:example", - registryDependencies: ["toast"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toast-simple.tsx", - type: "registry:example", + path: "registry/default/charts/chart-bar-default.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toast-simple.tsx")), - source: "", + categories: ["charts","charts-bar"], + component: React.lazy(() => import("@/registry/default/charts/chart-bar-default.tsx")), + source: "__registry__/default/charts/chart-bar-default.tsx", meta: undefined, }, - "toast-with-action": { - name: "toast-with-action", + "chart-bar-horizontal": { + name: "chart-bar-horizontal", description: "", - type: "registry:example", - registryDependencies: ["toast"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toast-with-action.tsx", - type: "registry:example", + path: "registry/default/charts/chart-bar-horizontal.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toast-with-action.tsx")), - source: "", + categories: ["charts","charts-bar"], + component: React.lazy(() => import("@/registry/default/charts/chart-bar-horizontal.tsx")), + source: "__registry__/default/charts/chart-bar-horizontal.tsx", meta: undefined, }, - "toast-with-title": { - name: "toast-with-title", + "chart-bar-interactive": { + name: "chart-bar-interactive", description: "", - type: "registry:example", - registryDependencies: ["toast"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toast-with-title.tsx", - type: "registry:example", + path: "registry/default/charts/chart-bar-interactive.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toast-with-title.tsx")), - source: "", + categories: ["charts","charts-bar"], + component: React.lazy(() => import("@/registry/default/charts/chart-bar-interactive.tsx")), + source: "__registry__/default/charts/chart-bar-interactive.tsx", meta: undefined, }, - "toggle-group-demo": { - name: "toggle-group-demo", + "chart-bar-label-custom": { + name: "chart-bar-label-custom", description: "", - type: "registry:example", - registryDependencies: ["toggle-group"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-group-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-bar-label-custom.tsx", + type: "registry:block", target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-demo.tsx")), - source: "", + }], + categories: ["charts","charts-bar"], + component: React.lazy(() => import("@/registry/default/charts/chart-bar-label-custom.tsx")), + source: "__registry__/default/charts/chart-bar-label-custom.tsx", meta: undefined, }, - "toggle-group-disabled": { - name: "toggle-group-disabled", + "chart-bar-label": { + name: "chart-bar-label", description: "", - type: "registry:example", - registryDependencies: ["toggle-group"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-group-disabled.tsx", - type: "registry:example", + path: "registry/default/charts/chart-bar-label.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-disabled.tsx")), - source: "", + categories: ["charts","charts-bar"], + component: React.lazy(() => import("@/registry/default/charts/chart-bar-label.tsx")), + source: "__registry__/default/charts/chart-bar-label.tsx", meta: undefined, }, - "toggle-group-lg": { - name: "toggle-group-lg", + "chart-bar-mixed": { + name: "chart-bar-mixed", description: "", - type: "registry:example", - registryDependencies: ["toggle-group"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-group-lg.tsx", - type: "registry:example", + path: "registry/default/charts/chart-bar-mixed.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-lg.tsx")), - source: "", + categories: ["charts","charts-bar"], + component: React.lazy(() => import("@/registry/default/charts/chart-bar-mixed.tsx")), + source: "__registry__/default/charts/chart-bar-mixed.tsx", meta: undefined, }, - "toggle-group-outline": { - name: "toggle-group-outline", + "chart-bar-multiple": { + name: "chart-bar-multiple", description: "", - type: "registry:example", - registryDependencies: ["toggle-group"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-group-outline.tsx", - type: "registry:example", + path: "registry/default/charts/chart-bar-multiple.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-outline.tsx")), - source: "", + categories: ["charts","charts-bar"], + component: React.lazy(() => import("@/registry/default/charts/chart-bar-multiple.tsx")), + source: "__registry__/default/charts/chart-bar-multiple.tsx", meta: undefined, }, - "toggle-group-sm": { - name: "toggle-group-sm", + "chart-bar-negative": { + name: "chart-bar-negative", description: "", - type: "registry:example", - registryDependencies: ["toggle-group"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-group-sm.tsx", - type: "registry:example", + path: "registry/default/charts/chart-bar-negative.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-sm.tsx")), - source: "", + categories: ["charts","charts-bar"], + component: React.lazy(() => import("@/registry/default/charts/chart-bar-negative.tsx")), + source: "__registry__/default/charts/chart-bar-negative.tsx", meta: undefined, }, - "toggle-group-single": { - name: "toggle-group-single", + "chart-bar-stacked": { + name: "chart-bar-stacked", description: "", - type: "registry:example", - registryDependencies: ["toggle-group"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-group-single.tsx", - type: "registry:example", + path: "registry/default/charts/chart-bar-stacked.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-group-single.tsx")), - source: "", + categories: ["charts","charts-bar"], + component: React.lazy(() => import("@/registry/default/charts/chart-bar-stacked.tsx")), + source: "__registry__/default/charts/chart-bar-stacked.tsx", meta: undefined, }, - "toggle-demo": { - name: "toggle-demo", + "chart-line-default": { + name: "chart-line-default", description: "", - type: "registry:example", - registryDependencies: ["toggle"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-line-default.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-demo.tsx")), - source: "", + categories: ["charts","charts-line"], + component: React.lazy(() => import("@/registry/default/charts/chart-line-default.tsx")), + source: "__registry__/default/charts/chart-line-default.tsx", meta: undefined, }, - "toggle-disabled": { - name: "toggle-disabled", + "chart-line-dots-colors": { + name: "chart-line-dots-colors", description: "", - type: "registry:example", - registryDependencies: ["toggle"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-disabled.tsx", - type: "registry:example", + path: "registry/default/charts/chart-line-dots-colors.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-disabled.tsx")), - source: "", + categories: ["charts","charts-line"], + component: React.lazy(() => import("@/registry/default/charts/chart-line-dots-colors.tsx")), + source: "__registry__/default/charts/chart-line-dots-colors.tsx", meta: undefined, }, - "toggle-lg": { - name: "toggle-lg", + "chart-line-dots-custom": { + name: "chart-line-dots-custom", description: "", - type: "registry:example", - registryDependencies: ["toggle"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-lg.tsx", - type: "registry:example", + path: "registry/default/charts/chart-line-dots-custom.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-lg.tsx")), - source: "", + categories: ["charts","charts-line"], + component: React.lazy(() => import("@/registry/default/charts/chart-line-dots-custom.tsx")), + source: "__registry__/default/charts/chart-line-dots-custom.tsx", meta: undefined, }, - "toggle-outline": { - name: "toggle-outline", + "chart-line-dots": { + name: "chart-line-dots", description: "", - type: "registry:example", - registryDependencies: ["toggle"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-outline.tsx", - type: "registry:example", + path: "registry/default/charts/chart-line-dots.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-outline.tsx")), - source: "", + categories: ["charts","charts-line"], + component: React.lazy(() => import("@/registry/default/charts/chart-line-dots.tsx")), + source: "__registry__/default/charts/chart-line-dots.tsx", meta: undefined, }, - "toggle-sm": { - name: "toggle-sm", + "chart-line-interactive": { + name: "chart-line-interactive", description: "", - type: "registry:example", - registryDependencies: ["toggle"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-sm.tsx", - type: "registry:example", + path: "registry/default/charts/chart-line-interactive.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-sm.tsx")), - source: "", + categories: ["charts","charts-line"], + component: React.lazy(() => import("@/registry/default/charts/chart-line-interactive.tsx")), + source: "__registry__/default/charts/chart-line-interactive.tsx", meta: undefined, }, - "toggle-with-text": { - name: "toggle-with-text", + "chart-line-label-custom": { + name: "chart-line-label-custom", description: "", - type: "registry:example", - registryDependencies: ["toggle"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/toggle-with-text.tsx", - type: "registry:example", + path: "registry/default/charts/chart-line-label-custom.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/toggle-with-text.tsx")), - source: "", + categories: ["charts","charts-line"], + component: React.lazy(() => import("@/registry/default/charts/chart-line-label-custom.tsx")), + source: "__registry__/default/charts/chart-line-label-custom.tsx", meta: undefined, }, - "tooltip-demo": { - name: "tooltip-demo", + "chart-line-label": { + name: "chart-line-label", description: "", - type: "registry:example", - registryDependencies: ["tooltip"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/tooltip-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-line-label.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/tooltip-demo.tsx")), - source: "", + categories: ["charts","charts-line"], + component: React.lazy(() => import("@/registry/default/charts/chart-line-label.tsx")), + source: "__registry__/default/charts/chart-line-label.tsx", meta: undefined, }, - "typography-blockquote": { - name: "typography-blockquote", + "chart-line-linear": { + name: "chart-line-linear", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-blockquote.tsx", - type: "registry:example", + path: "registry/default/charts/chart-line-linear.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-blockquote.tsx")), - source: "", + categories: ["charts","charts-line"], + component: React.lazy(() => import("@/registry/default/charts/chart-line-linear.tsx")), + source: "__registry__/default/charts/chart-line-linear.tsx", meta: undefined, }, - "typography-demo": { - name: "typography-demo", + "chart-line-multiple": { + name: "chart-line-multiple", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-line-multiple.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-demo.tsx")), - source: "", + categories: ["charts","charts-line"], + component: React.lazy(() => import("@/registry/default/charts/chart-line-multiple.tsx")), + source: "__registry__/default/charts/chart-line-multiple.tsx", meta: undefined, }, - "typography-h1": { - name: "typography-h1", + "chart-line-step": { + name: "chart-line-step", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-h1.tsx", - type: "registry:example", + path: "registry/default/charts/chart-line-step.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-h1.tsx")), - source: "", + categories: ["charts","charts-line"], + component: React.lazy(() => import("@/registry/default/charts/chart-line-step.tsx")), + source: "__registry__/default/charts/chart-line-step.tsx", meta: undefined, }, - "typography-h2": { - name: "typography-h2", + "chart-pie-donut-active": { + name: "chart-pie-donut-active", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-h2.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-donut-active.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-h2.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-donut-active.tsx")), + source: "__registry__/default/charts/chart-pie-donut-active.tsx", meta: undefined, }, - "typography-h3": { - name: "typography-h3", + "chart-pie-donut-text": { + name: "chart-pie-donut-text", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-h3.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-donut-text.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-h3.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-donut-text.tsx")), + source: "__registry__/default/charts/chart-pie-donut-text.tsx", meta: undefined, }, - "typography-h4": { - name: "typography-h4", + "chart-pie-donut": { + name: "chart-pie-donut", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-h4.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-donut.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-h4.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-donut.tsx")), + source: "__registry__/default/charts/chart-pie-donut.tsx", meta: undefined, }, - "typography-inline-code": { - name: "typography-inline-code", + "chart-pie-interactive": { + name: "chart-pie-interactive", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-inline-code.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-interactive.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-inline-code.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-interactive.tsx")), + source: "__registry__/default/charts/chart-pie-interactive.tsx", meta: undefined, }, - "typography-large": { - name: "typography-large", + "chart-pie-label-custom": { + name: "chart-pie-label-custom", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-large.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-label-custom.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-large.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-label-custom.tsx")), + source: "__registry__/default/charts/chart-pie-label-custom.tsx", meta: undefined, }, - "typography-lead": { - name: "typography-lead", + "chart-pie-label-list": { + name: "chart-pie-label-list", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-lead.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-label-list.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-lead.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-label-list.tsx")), + source: "__registry__/default/charts/chart-pie-label-list.tsx", meta: undefined, }, - "typography-list": { - name: "typography-list", + "chart-pie-label": { + name: "chart-pie-label", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-list.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-label.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-list.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-label.tsx")), + source: "__registry__/default/charts/chart-pie-label.tsx", meta: undefined, }, - "typography-muted": { - name: "typography-muted", + "chart-pie-legend": { + name: "chart-pie-legend", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-muted.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-legend.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-muted.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-legend.tsx")), + source: "__registry__/default/charts/chart-pie-legend.tsx", meta: undefined, }, - "typography-p": { - name: "typography-p", + "chart-pie-separator-none": { + name: "chart-pie-separator-none", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-p.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-separator-none.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-p.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-separator-none.tsx")), + source: "__registry__/default/charts/chart-pie-separator-none.tsx", meta: undefined, }, - "typography-small": { - name: "typography-small", + "chart-pie-simple": { + name: "chart-pie-simple", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-small.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-simple.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-small.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-simple.tsx")), + source: "__registry__/default/charts/chart-pie-simple.tsx", meta: undefined, }, - "typography-table": { - name: "typography-table", + "chart-pie-stacked": { + name: "chart-pie-stacked", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/typography-table.tsx", - type: "registry:example", + path: "registry/default/charts/chart-pie-stacked.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/typography-table.tsx")), - source: "", + categories: ["charts","charts-pie"], + component: React.lazy(() => import("@/registry/default/charts/chart-pie-stacked.tsx")), + source: "__registry__/default/charts/chart-pie-stacked.tsx", meta: undefined, }, - "site-header-demo": { - name: "site-header-demo", + "chart-radar-default": { + name: "chart-radar-default", description: "", - type: "registry:example", - registryDependencies: ["site-header"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/site-header-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-default.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/site-header-demo.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-default.tsx")), + source: "__registry__/default/charts/chart-radar-default.tsx", meta: undefined, }, - "effect-ripple-demo": { - name: "effect-ripple-demo", + "chart-radar-dots": { + name: "chart-radar-dots", description: "", - type: "registry:example", - registryDependencies: ["effect-ripple"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/effect-ripple-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-dots.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/effect-ripple-demo.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-dots.tsx")), + source: "__registry__/default/charts/chart-radar-dots.tsx", meta: undefined, }, - "site-hero-demo": { - name: "site-hero-demo", + "chart-radar-grid-circle-fill": { + name: "chart-radar-grid-circle-fill", description: "", - type: "registry:example", - registryDependencies: ["site-hero"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/site-hero-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-grid-circle-fill.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/site-hero-demo.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-circle-fill.tsx")), + source: "__registry__/default/charts/chart-radar-grid-circle-fill.tsx", meta: undefined, }, - "prodkt-mode-toggle-demo": { - name: "prodkt-mode-toggle-demo", + "chart-radar-grid-circle-no-lines": { + name: "chart-radar-grid-circle-no-lines", description: "", - type: "registry:example", - registryDependencies: ["prodkt-mode-toggle"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/prodkt-mode-toggle-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-grid-circle-no-lines.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/prodkt-mode-toggle-demo.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-circle-no-lines.tsx")), + source: "__registry__/default/charts/chart-radar-grid-circle-no-lines.tsx", meta: undefined, }, - "mode-toggle": { - name: "mode-toggle", + "chart-radar-grid-circle": { + name: "chart-radar-grid-circle", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/mode-toggle.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-grid-circle.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/mode-toggle.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-circle.tsx")), + source: "__registry__/default/charts/chart-radar-grid-circle.tsx", meta: undefined, }, - "chart-bar-demo": { - name: "chart-bar-demo", + "chart-radar-grid-custom": { + name: "chart-radar-grid-custom", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/chart-bar-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-grid-custom.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/chart-bar-demo.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-custom.tsx")), + source: "__registry__/default/charts/chart-radar-grid-custom.tsx", meta: undefined, }, - "chart-bar-demo-grid": { - name: "chart-bar-demo-grid", + "chart-radar-grid-fill": { + name: "chart-radar-grid-fill", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/chart-bar-demo-grid.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-grid-fill.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/chart-bar-demo-grid.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-fill.tsx")), + source: "__registry__/default/charts/chart-radar-grid-fill.tsx", meta: undefined, }, - "chart-bar-demo-axis": { - name: "chart-bar-demo-axis", + "chart-radar-grid-none": { + name: "chart-radar-grid-none", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/chart-bar-demo-axis.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-grid-none.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/chart-bar-demo-axis.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-none.tsx")), + source: "__registry__/default/charts/chart-radar-grid-none.tsx", meta: undefined, }, - "chart-bar-demo-tooltip": { - name: "chart-bar-demo-tooltip", + "chart-radar-icons": { + name: "chart-radar-icons", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/chart-bar-demo-tooltip.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-icons.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/chart-bar-demo-tooltip.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-icons.tsx")), + source: "__registry__/default/charts/chart-radar-icons.tsx", meta: undefined, }, - "chart-bar-demo-legend": { - name: "chart-bar-demo-legend", + "chart-radar-label-custom": { + name: "chart-radar-label-custom", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/chart-bar-demo-legend.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-label-custom.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/chart-bar-demo-legend.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-label-custom.tsx")), + source: "__registry__/default/charts/chart-radar-label-custom.tsx", meta: undefined, }, - "chart-tooltip-demo": { - name: "chart-tooltip-demo", + "chart-radar-legend": { + name: "chart-radar-legend", description: "", - type: "registry:example", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/new-york/examples/chart-tooltip-demo.tsx", - type: "registry:example", + path: "registry/default/charts/chart-radar-legend.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/new-york/examples/chart-tooltip-demo.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-legend.tsx")), + source: "__registry__/default/charts/chart-radar-legend.tsx", meta: undefined, }, - }, "default": { - "accordion": { - name: "accordion", + "chart-radar-lines-only": { + name: "chart-radar-lines-only", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/accordion.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-radar-lines-only.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/accordion.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-lines-only.tsx")), + source: "__registry__/default/charts/chart-radar-lines-only.tsx", meta: undefined, }, - "alert": { - name: "alert", + "chart-radar-multiple": { + name: "chart-radar-multiple", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/alert.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-radar-multiple.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/alert.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-multiple.tsx")), + source: "__registry__/default/charts/chart-radar-multiple.tsx", meta: undefined, }, - "alert-dialog": { - name: "alert-dialog", + "chart-radar-radius": { + name: "chart-radar-radius", description: "", - type: "registry:ui", - registryDependencies: ["button"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/alert-dialog.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-radar-radius.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/alert-dialog.tsx")), - source: "", + categories: ["charts","charts-radar"], + component: React.lazy(() => import("@/registry/default/charts/chart-radar-radius.tsx")), + source: "__registry__/default/charts/chart-radar-radius.tsx", meta: undefined, }, - "aspect-ratio": { - name: "aspect-ratio", + "chart-radial-grid": { + name: "chart-radial-grid", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/aspect-ratio.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-radial-grid.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/aspect-ratio.tsx")), - source: "", + categories: ["charts","charts-radial"], + component: React.lazy(() => import("@/registry/default/charts/chart-radial-grid.tsx")), + source: "__registry__/default/charts/chart-radial-grid.tsx", meta: undefined, }, - "avatar": { - name: "avatar", + "chart-radial-label": { + name: "chart-radial-label", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/avatar.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-radial-label.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/avatar.tsx")), - source: "", + categories: ["charts","charts-radial"], + component: React.lazy(() => import("@/registry/default/charts/chart-radial-label.tsx")), + source: "__registry__/default/charts/chart-radial-label.tsx", meta: undefined, }, - "badge": { - name: "badge", + "chart-radial-shape": { + name: "chart-radial-shape", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/badge.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-radial-shape.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/badge.tsx")), - source: "", + categories: ["charts","charts-radial"], + component: React.lazy(() => import("@/registry/default/charts/chart-radial-shape.tsx")), + source: "__registry__/default/charts/chart-radial-shape.tsx", meta: undefined, }, - "breadcrumb": { - name: "breadcrumb", + "chart-radial-simple": { + name: "chart-radial-simple", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/breadcrumb.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-radial-simple.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/breadcrumb.tsx")), - source: "", + categories: ["charts","charts-radial"], + component: React.lazy(() => import("@/registry/default/charts/chart-radial-simple.tsx")), + source: "__registry__/default/charts/chart-radial-simple.tsx", meta: undefined, }, - "button": { - name: "button", + "chart-radial-stacked": { + name: "chart-radial-stacked", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/button.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-radial-stacked.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/button.tsx")), - source: "", + categories: ["charts","charts-radial"], + component: React.lazy(() => import("@/registry/default/charts/chart-radial-stacked.tsx")), + source: "__registry__/default/charts/chart-radial-stacked.tsx", meta: undefined, }, - "calendar": { - name: "calendar", + "chart-radial-text": { + name: "chart-radial-text", description: "", - type: "registry:ui", - registryDependencies: ["button"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/calendar.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-radial-text.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/calendar.tsx")), - source: "", + categories: ["charts","charts-radial"], + component: React.lazy(() => import("@/registry/default/charts/chart-radial-text.tsx")), + source: "__registry__/default/charts/chart-radial-text.tsx", meta: undefined, }, - "card": { - name: "card", + "chart-tooltip-default": { + name: "chart-tooltip-default", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/card.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-tooltip-default.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/card.tsx")), - source: "", + categories: ["charts","charts-tooltip"], + component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-default.tsx")), + source: "__registry__/default/charts/chart-tooltip-default.tsx", meta: undefined, }, - "carousel": { - name: "carousel", + "chart-tooltip-indicator-line": { + name: "chart-tooltip-indicator-line", description: "", - type: "registry:ui", - registryDependencies: ["button"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/carousel.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-tooltip-indicator-line.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/carousel.tsx")), - source: "", + categories: ["charts","charts-tooltip"], + component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-indicator-line.tsx")), + source: "__registry__/default/charts/chart-tooltip-indicator-line.tsx", meta: undefined, }, - "chart": { - name: "chart", + "chart-tooltip-indicator-none": { + name: "chart-tooltip-indicator-none", description: "", - type: "registry:ui", - registryDependencies: ["card"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/chart.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-tooltip-indicator-none.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/chart.tsx")), - source: "", + categories: ["charts","charts-tooltip"], + component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-indicator-none.tsx")), + source: "__registry__/default/charts/chart-tooltip-indicator-none.tsx", meta: undefined, }, - "checkbox": { - name: "checkbox", + "chart-tooltip-label-none": { + name: "chart-tooltip-label-none", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/checkbox.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-tooltip-label-none.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/checkbox.tsx")), - source: "", + categories: ["charts","charts-tooltip"], + component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-label-none.tsx")), + source: "__registry__/default/charts/chart-tooltip-label-none.tsx", meta: undefined, }, - "collapsible": { - name: "collapsible", + "chart-tooltip-label-custom": { + name: "chart-tooltip-label-custom", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/collapsible.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-tooltip-label-custom.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/collapsible.tsx")), - source: "", + categories: ["charts","charts-tooltip"], + component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-label-custom.tsx")), + source: "__registry__/default/charts/chart-tooltip-label-custom.tsx", meta: undefined, }, - "command": { - name: "command", + "chart-tooltip-label-formatter": { + name: "chart-tooltip-label-formatter", description: "", - type: "registry:ui", - registryDependencies: ["dialog"], + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/command.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-tooltip-label-formatter.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/command.tsx")), - source: "", + categories: ["charts","charts-tooltip"], + component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-label-formatter.tsx")), + source: "__registry__/default/charts/chart-tooltip-label-formatter.tsx", meta: undefined, }, - "context-menu": { - name: "context-menu", + "chart-tooltip-formatter": { + name: "chart-tooltip-formatter", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/context-menu.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-tooltip-formatter.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/context-menu.tsx")), - source: "", + categories: ["charts","charts-tooltip"], + component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-formatter.tsx")), + source: "__registry__/default/charts/chart-tooltip-formatter.tsx", meta: undefined, }, - "dialog": { - name: "dialog", + "chart-tooltip-icons": { + name: "chart-tooltip-icons", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/dialog.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-tooltip-icons.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/dialog.tsx")), - source: "", + categories: ["charts","charts-tooltip"], + component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-icons.tsx")), + source: "__registry__/default/charts/chart-tooltip-icons.tsx", meta: undefined, }, - "drawer": { - name: "drawer", + "chart-tooltip-advanced": { + name: "chart-tooltip-advanced", description: "", - type: "registry:ui", - registryDependencies: undefined, + type: "registry:block", + registryDependencies: ["card","chart"], files: [{ - path: "registry/default/ui/drawer.tsx", - type: "registry:ui", + path: "registry/default/charts/chart-tooltip-advanced.tsx", + type: "registry:block", target: "" }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/drawer.tsx")), - source: "", + categories: ["charts","charts-tooltip"], + component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-advanced.tsx")), + source: "__registry__/default/charts/chart-tooltip-advanced.tsx", meta: undefined, }, - "dropdown-menu": { - name: "dropdown-menu", + "buttonUtils": { + name: "buttonUtils", description: "", - type: "registry:ui", + type: "registry:lib", registryDependencies: undefined, files: [{ - path: "registry/default/ui/dropdown-menu.tsx", - type: "registry:ui", + path: "registry/default/lib/buttonUtils.ts", + type: "registry:lib", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/dropdown-menu.tsx")), + component: React.lazy(() => import("@/registry/default/lib/buttonUtils.ts")), source: "", meta: undefined, }, - "form": { - name: "form", + "button-variants": { + name: "button-variants", description: "", - type: "registry:ui", - registryDependencies: ["button","label"], + type: "registry:lib", + registryDependencies: ["utils"], files: [{ - path: "registry/default/ui/form.tsx", - type: "registry:ui", + path: "registry/default/lib/button-variants.ts", + type: "registry:lib", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/form.tsx")), + component: React.lazy(() => import("@/registry/default/lib/button-variants.ts")), source: "", meta: undefined, }, - "hover-card": { - name: "hover-card", + "utils": { + name: "utils", description: "", - type: "registry:ui", + type: "registry:lib", registryDependencies: undefined, files: [{ - path: "registry/default/ui/hover-card.tsx", - type: "registry:ui", + path: "registry/default/lib/utils.ts", + type: "registry:lib", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/hover-card.tsx")), + component: React.lazy(() => import("@/registry/default/lib/utils.ts")), source: "", meta: undefined, }, - "input": { - name: "input", + "dom-animation": { + name: "dom-animation", description: "", - type: "registry:ui", + type: "registry:lib", registryDependencies: undefined, files: [{ - path: "registry/default/ui/input.tsx", - type: "registry:ui", + path: "registry/default/lib/dom-animation.ts", + type: "registry:lib", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/input.tsx")), + component: React.lazy(() => import("@/registry/default/lib/dom-animation.ts")), source: "", meta: undefined, }, - "input-otp": { - name: "input-otp", + "logo_supabase": { + name: "logo_supabase", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/input-otp.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_supabase.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/input-otp.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_supabase")), source: "", meta: undefined, }, - "label": { - name: "label", + "logo_acrobat": { + name: "logo_acrobat", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/label.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_acrobat.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/label.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_acrobat")), source: "", meta: undefined, }, - "menubar": { - name: "menubar", + "logo_adobe-illustrator": { + name: "logo_adobe-illustrator", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/menubar.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_adobe-illustrator.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/menubar.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_adobe-illustrator")), source: "", meta: undefined, }, - "navigation-menu": { - name: "navigation-menu", + "logo_astro": { + name: "logo_astro", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/navigation-menu.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_astro.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/navigation-menu.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_astro")), source: "", meta: undefined, }, - "pagination": { - name: "pagination", + "logo_cisco": { + name: "logo_cisco", description: "", - type: "registry:ui", - registryDependencies: ["button"], + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/ui/pagination.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_cisco.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/pagination.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_cisco")), source: "", meta: undefined, }, - "popover": { - name: "popover", + "logo_cocacola": { + name: "logo_cocacola", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/popover.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_cocacola.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/popover.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_cocacola")), source: "", meta: undefined, }, - "progress": { - name: "progress", + "logo_confluence": { + name: "logo_confluence", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/progress.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_confluence.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/progress.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_confluence")), source: "", meta: undefined, }, - "radio-group": { - name: "radio-group", + "logo_datadog": { + name: "logo_datadog", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/radio-group.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_datadog.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/radio-group.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_datadog")), source: "", meta: undefined, }, - "resizable": { - name: "resizable", + "logo_directus": { + name: "logo_directus", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/resizable.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_directus.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/resizable.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_directus")), source: "", meta: undefined, }, - "scroll-area": { - name: "scroll-area", + "logo_docker": { + name: "logo_docker", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/scroll-area.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_docker.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/scroll-area.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_docker")), source: "", meta: undefined, }, - "select": { - name: "select", + "logo_dominos": { + name: "logo_dominos", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/select.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_dominos.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/select.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_dominos")), source: "", meta: undefined, }, - "separator": { - name: "separator", + "logo_eminem": { + name: "logo_eminem", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/separator.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_eminem.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/separator.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_eminem")), source: "", meta: undefined, }, - "sheet": { - name: "sheet", + "logo_figma": { + name: "logo_figma", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/sheet.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_figma.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/sheet.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_figma")), source: "", meta: undefined, }, - "sidebar": { - name: "sidebar", + "logo_gitbook": { + name: "logo_gitbook", description: "", - type: "registry:ui", - registryDependencies: ["button","separator","sheet","tooltip","input","use-mobile","skeleton"], + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/ui/sidebar.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_gitbook.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/sidebar.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_gitbook")), source: "", meta: undefined, }, - "skeleton": { - name: "skeleton", + "logo_google-analytics": { + name: "logo_google-analytics", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/skeleton.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_google-analytics.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/skeleton.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_google-analytics")), source: "", meta: undefined, }, - "slider": { - name: "slider", + "logo_hellsangels": { + name: "logo_hellsangels", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/slider.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_hellsangels.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/slider.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_hellsangels")), source: "", meta: undefined, }, - "sonner": { - name: "sonner", + "logo_hm": { + name: "logo_hm", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/sonner.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_hm.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/sonner.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_hm")), source: "", meta: undefined, }, - "switch": { - name: "switch", + "logo_hp": { + name: "logo_hp", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/switch.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_hp.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/switch.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_hp")), source: "", meta: undefined, }, - "table": { - name: "table", + "logo_ideanote": { + name: "logo_ideanote", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/table.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_ideanote.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/table.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_ideanote")), source: "", meta: undefined, }, - "tabs": { - name: "tabs", + "logo_nexsale": { + name: "logo_nexsale", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/tabs.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_nexsale.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/tabs.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_nexsale")), source: "", meta: undefined, }, - "textarea": { - name: "textarea", + "logo_pendo": { + name: "logo_pendo", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/textarea.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_pendo.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/textarea.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_pendo")), source: "", meta: undefined, }, - "toast": { - name: "toast", + "logo_posthog": { + name: "logo_posthog", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/toast.tsx", - type: "registry:ui", - target: "" - },{ - path: "registry/default/hooks/use-toast.ts", - type: "registry:hook", - target: "" - },{ - path: "registry/default/ui/toaster.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_posthog.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/toast.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_posthog")), source: "", meta: undefined, }, - "toggle": { - name: "toggle", + "logo_postmark": { + name: "logo_postmark", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/toggle.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_postmark.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/toggle.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_postmark")), source: "", meta: undefined, }, - "toggle-group": { - name: "toggle-group", + "logo_react": { + name: "logo_react", description: "", - type: "registry:ui", - registryDependencies: ["toggle"], + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/ui/toggle-group.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_react.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/toggle-group.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_react")), source: "", meta: undefined, }, - "tooltip": { - name: "tooltip", + "logo_revolutionvodka": { + name: "logo_revolutionvodka", description: "", - type: "registry:ui", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/ui/tooltip.tsx", - type: "registry:ui", + path: "registry/default/logos/logo_revolutionvodka.tsx", + type: "registry:logo", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/ui/tooltip.tsx")), + component: React.lazy(() => import("@/registry/logos/logo_revolutionvodka")), source: "", meta: undefined, }, - "login-nexsale": { - name: "login-nexsale", - description: "A login page with form and image.", - type: "registry:block", + "logo_samsung": { + name: "logo_samsung", + description: "", + type: "registry:logo", registryDependencies: undefined, files: [{ - path: "registry/default/blocks/login-nexsale/page.tsx", - type: "registry:page", - target: "app/login/page.tsx" - },{ - path: "registry/default/blocks/login-nexsale/components/login-form.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/login-nexsale/components/spline-background.tsx", - type: "registry:prodkt", - target: "" - },{ - path: "registry/default/blocks/login-nexsale/assets/nexsale_background__sales.avif", - type: "registry:prodkt", + path: "registry/default/logos/logo_samsung.tsx", + type: "registry:logo", target: "" }], - categories: ["authentication","login"], - component: React.lazy(() => import("@/registry/default/blocks/login-nexsale/page.tsx")), - source: "__registry__/default/blocks/login-nexsale/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_samsung")), + source: "", meta: undefined, }, - "web-app-01": { - name: "web-app-01", - description: "A web app layout with a navigation bar and a sidebar.", - type: "registry:block", - registryDependencies: ["button","card","input","label","badge","DecorativeBg8","ProdktModeToggle","ThemeSwitcher","Footer","SheetMenu","Sidebar","Container","SocialMedia"], + "logo_scales": { + name: "logo_scales", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/layouts/web-app-01/page.tsx", - type: "registry:page", - target: "app/content/page.tsx" - },{ - path: "registry/default/blocks/layouts/web-app-01/components/index.tsx", - type: "registry:component", + path: "registry/default/logos/logo_scales.tsx", + type: "registry:logo", target: "" }], - categories: ["content","canvas"], - component: React.lazy(() => import("@/registry/default/blocks/layouts/web-app-01/page.tsx")), - source: "__registry__/default/blocks/layouts/web-app-01/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_scales")), + source: "", meta: undefined, }, - "download-01": { - name: "download-01", - description: "A download button with a resume download.", - type: "registry:block", - registryDependencies: ["button"], + "logo_shady": { + name: "logo_shady", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/download-01/page.tsx", - type: "registry:page", - target: "app/content/page.tsx" - },{ - path: "registry/default/blocks/download-01/components/download-01.tsx", - type: "registry:component", + path: "registry/default/logos/logo_shady.tsx", + type: "registry:logo", target: "" }], - categories: ["content","canvas"], - component: React.lazy(() => import("@/registry/default/blocks/download-01/page.tsx")), - source: "__registry__/default/blocks/download-01/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_shady")), + source: "", meta: undefined, }, - "effect-jump-to-section-01": { - name: "effect-jump-to-section-01", - description: "A dropdown menu with visual navigation grouped by sections able to be placed on the canvas.", - type: "registry:block", - registryDependencies: ["card"], - files: [{ - path: "registry/default/blocks/effect-jump-to-section-01/page.tsx", - type: "registry:page", - target: "app/content/page.tsx" - },{ - path: "registry/default/blocks/effect-jump-to-section-01/components/index.tsx", - type: "registry:component", + "logo_starlight": { + name: "logo_starlight", + description: "", + type: "registry:logo", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logo_starlight.tsx", + type: "registry:logo", target: "" }], - categories: ["content","canvas"], - component: React.lazy(() => import("@/registry/default/blocks/effect-jump-to-section-01/page.tsx")), - source: "__registry__/default/blocks/effect-jump-to-section-01/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_starlight")), + source: "", meta: undefined, }, - "effect-card-01": { - name: "effect-card-01", - description: "A dropdown menu with visual navigation grouped by sections able to be placed on the canvas.", - type: "registry:block", - registryDependencies: ["card"], + "logo_stencil": { + name: "logo_stencil", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/effect-card-01/page.tsx", - type: "registry:page", - target: "app/effects/page.tsx" - },{ - path: "registry/default/blocks/effect-card-01/components/effect-card-01.tsx", - type: "registry:component", + path: "registry/default/logos/logo_stencil.tsx", + type: "registry:logo", target: "" }], - categories: ["effects","canvas"], - component: React.lazy(() => import("@/registry/default/blocks/effect-card-01/page.tsx")), - source: "__registry__/default/blocks/effect-card-01/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_stencil")), + source: "", meta: undefined, }, - "flow-card-01": { - name: "flow-card-01", - description: "A dropdown menu with visual navigation grouped by sections able to be placed on the canvas.", - type: "registry:block", - registryDependencies: ["card"], + "logo_storybook": { + name: "logo_storybook", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/flow-card-01/page.tsx", - type: "registry:page", - target: "app/flows/page.tsx" - },{ - path: "registry/default/blocks/flow-card-01/components/flow-card.tsx", - type: "registry:component", + path: "registry/default/logos/logo_storybook.tsx", + type: "registry:logo", target: "" }], - categories: ["flows","canvas"], - component: React.lazy(() => import("@/registry/default/blocks/flow-card-01/page.tsx")), - source: "__registry__/default/blocks/flow-card-01/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_storybook")), + source: "", meta: undefined, }, - "sidebar-01": { - name: "sidebar-01", - description: "A simple sidebar with navigation grouped by section.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","label","dropdown-menu"], + "logo_strapi": { + name: "logo_strapi", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-01/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-01/components/app-sidebar.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-01/components/search-form.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-01/components/version-switcher.tsx", - type: "registry:component", + path: "registry/default/logos/logo_strapi.tsx", + type: "registry:logo", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-01/page.tsx")), - source: "__registry__/default/blocks/sidebar-01/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_strapi")), + source: "", meta: undefined, }, - "sidebar-02": { - name: "sidebar-02", - description: "A sidebar with collapsible sections.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","label","dropdown-menu"], + "logo_stripe": { + name: "logo_stripe", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-02/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-02/components/app-sidebar.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-02/components/search-form.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-02/components/version-switcher.tsx", - type: "registry:component", + path: "registry/default/logos/logo_stripe.tsx", + type: "registry:logo", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-02/page.tsx")), - source: "__registry__/default/blocks/sidebar-02/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_stripe")), + source: "", meta: undefined, }, - "sidebar-03": { - name: "sidebar-03", - description: "A sidebar with submenus.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb"], + "logo_style-dictionary": { + name: "logo_style-dictionary", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-03/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-03/components/app-sidebar.tsx", - type: "registry:component", + path: "registry/default/logos/logo_style-dictionary.tsx", + type: "registry:logo", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-03/page.tsx")), - source: "__registry__/default/blocks/sidebar-03/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_style-dictionary")), + source: "", meta: undefined, }, - "sidebar-04": { - name: "sidebar-04", - description: "A floating sidebar with submenus.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator"], + "logo_supernova": { + name: "logo_supernova", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-04/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-04/components/app-sidebar.tsx", - type: "registry:component", + path: "registry/default/logos/logo_supernova.tsx", + type: "registry:logo", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-04/page.tsx")), - source: "__registry__/default/blocks/sidebar-04/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_supernova")), + source: "", meta: undefined, }, - "sidebar-05": { - name: "sidebar-05", - description: "A sidebar with collapsible submenus.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","label","collapsible"], + "logo_tokens-studio": { + name: "logo_tokens-studio", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-05/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-05/components/app-sidebar.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-05/components/search-form.tsx", - type: "registry:component", + path: "registry/default/logos/logo_tokens-studio.tsx", + type: "registry:logo", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-05/page.tsx")), - source: "__registry__/default/blocks/sidebar-05/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_tokens-studio")), + source: "", meta: undefined, }, - "sidebar-06": { - name: "sidebar-06", - description: "A sidebar with submenus as dropdowns.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","card","dropdown-menu"], + "logo_toyota": { + name: "logo_toyota", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-06/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-06/components/app-sidebar.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-06/components/nav-main.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-06/components/sidebar-opt-in-form.tsx", - type: "registry:component", + path: "registry/default/logos/logo_toyota.tsx", + type: "registry:logo", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-06/page.tsx")), - source: "__registry__/default/blocks/sidebar-06/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_toyota")), + source: "", meta: undefined, }, - "sidebar-07": { - name: "sidebar-07", - description: "A sidebar that collapses to icons.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar"], + "logo_truwhip": { + name: "logo_truwhip", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-07/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-07/components/app-sidebar.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-07/components/nav-main.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-07/components/nav-projects.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-07/components/nav-user.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-07/components/team-switcher.tsx", - type: "registry:component", + path: "registry/default/logos/logo_truwhip.tsx", + type: "registry:logo", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-07/page.tsx")), - source: "__registry__/default/blocks/sidebar-07/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_truwhip")), + source: "", meta: undefined, }, - "sidebar-08": { - name: "sidebar-08", - description: "An inset sidebar with secondary navigation.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar"], + "logo_turborepo": { + name: "logo_turborepo", + description: "", + type: "registry:logo", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-08/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-08/components/app-sidebar.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-08/components/nav-main.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-08/components/nav-projects.tsx", - type: "registry:component", + path: "registry/default/logos/logo_turborepo.tsx", + type: "registry:logo", target: "" - },{ - path: "registry/default/blocks/sidebar-08/components/nav-secondary.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_turborepo")), + source: "", + meta: undefined, + }, + "logo_zendesk": { + name: "logo_zendesk", + description: "", + type: "registry:logo", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logo_zendesk.tsx", + type: "registry:logo", target: "" - },{ - path: "registry/default/blocks/sidebar-08/components/nav-user.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logo_zendesk")), + source: "", + meta: undefined, + }, + "logomark_supabase": { + name: "logomark_supabase", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_supabase.tsx", + type: "registry:logomark", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-08/page.tsx")), - source: "__registry__/default/blocks/sidebar-08/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_supabase")), + source: "", meta: undefined, }, - "sidebar-09": { - name: "sidebar-09", - description: "Collapsible nested sidebars.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","collapsible","dropdown-menu","avatar","switch"], + "logomark_ably": { + name: "logomark_ably", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-09/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-09/components/app-sidebar.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-09/components/nav-user.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_ably.tsx", + type: "registry:logomark", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-09/page.tsx")), - source: "__registry__/default/blocks/sidebar-09/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_ably")), + source: "", meta: undefined, }, - "sidebar-10": { - name: "sidebar-10", - description: "A sidebar in a popover.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","popover","collapsible","dropdown-menu"], + "logomark_airtable": { + name: "logomark_airtable", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-10/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-10/components/app-sidebar.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-10/components/nav-actions.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-10/components/nav-favorites.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-10/components/nav-main.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-10/components/nav-secondary.tsx", - type: "registry:component", - target: "" - },{ - path: "registry/default/blocks/sidebar-10/components/nav-workspaces.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_airtable.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-10/components/team-switcher.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_airtable")), + source: "", + meta: undefined, + }, + "logomark_amazon-icon": { + name: "logomark_amazon-icon", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_amazon-icon.tsx", + type: "registry:logomark", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-10/page.tsx")), - source: "__registry__/default/blocks/sidebar-10/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_amazon-icon")), + source: "", meta: undefined, }, - "sidebar-11": { - name: "sidebar-11", - description: "A sidebar with a collapsible file tree.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","collapsible"], + "logomark_ampersand": { + name: "logomark_ampersand", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-11/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-11/components/app-sidebar.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_ampersand.tsx", + type: "registry:logomark", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-11/page.tsx")), - source: "__registry__/default/blocks/sidebar-11/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_ampersand")), + source: "", meta: undefined, }, - "sidebar-12": { - name: "sidebar-12", - description: "A sidebar with a calendar.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","collapsible","calendar","dropdown-menu","avatar"], + "logomark_antd": { + name: "logomark_antd", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-12/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-12/components/app-sidebar.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_antd.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-12/components/calendars.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_antd")), + source: "", + meta: undefined, + }, + "logomark_appwrite": { + name: "logomark_appwrite", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_appwrite.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-12/components/date-picker.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_appwrite")), + source: "", + meta: undefined, + }, + "logomark_astro": { + name: "logomark_astro", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_astro.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-12/components/nav-user.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_astro")), + source: "", + meta: undefined, + }, + "logomark_atlassian": { + name: "logomark_atlassian", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_atlassian.tsx", + type: "registry:logomark", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-12/page.tsx")), - source: "__registry__/default/blocks/sidebar-12/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_atlassian")), + source: "", meta: undefined, }, - "sidebar-13": { - name: "sidebar-13", - description: "A sidebar in a dialog.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","button","dialog"], + "logomark_auth-js": { + name: "logomark_auth-js", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-13/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-13/components/settings-dialog.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_auth-js.tsx", + type: "registry:logomark", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-13/page.tsx")), - source: "__registry__/default/blocks/sidebar-13/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_auth-js")), + source: "", meta: undefined, }, - "sidebar-14": { - name: "sidebar-14", - description: "A sidebar on the right.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb"], + "logomark_auth0": { + name: "logomark_auth0", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-14/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-14/components/app-sidebar.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_auth0.tsx", + type: "registry:logomark", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-14/page.tsx")), - source: "__registry__/default/blocks/sidebar-14/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_auth0")), + source: "", meta: undefined, }, - "sidebar-15": { - name: "sidebar-15", - description: "A left and right sidebar.", - type: "registry:block", - registryDependencies: ["sidebar","breadcrumb","separator","popover","collapsible","dropdown-menu","calendar","avatar"], + "logomark_autodesk": { + name: "logomark_autodesk", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/sidebar-15/page.tsx", - type: "registry:page", - target: "app/dashboard/page.tsx" - },{ - path: "registry/default/blocks/sidebar-15/components/calendars.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_autodesk.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-15/components/date-picker.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_autodesk")), + source: "", + meta: undefined, + }, + "logomark_aws-cognito": { + name: "logomark_aws-cognito", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_aws-cognito.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-15/components/nav-favorites.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_aws-cognito")), + source: "", + meta: undefined, + }, + "logomark_azure-active-directory": { + name: "logomark_azure-active-directory", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_azure-active-directory.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-15/components/nav-main.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_azure-active-directory")), + source: "", + meta: undefined, + }, + "logomark_biome": { + name: "logomark_biome", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_biome.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-15/components/nav-secondary.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_biome")), + source: "", + meta: undefined, + }, + "logomark_black-box": { + name: "logomark_black-box", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_black-box.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-15/components/nav-user.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_black-box")), + source: "", + meta: undefined, + }, + "logomark_bun": { + name: "logomark_bun", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_bun.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-15/components/nav-workspaces.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_bun")), + source: "", + meta: undefined, + }, + "logomark_chakra": { + name: "logomark_chakra", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_chakra.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-15/components/sidebar-left.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_chakra")), + source: "", + meta: undefined, + }, + "logomark_chroma": { + name: "logomark_chroma", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_chroma.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-15/components/sidebar-right.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_chroma")), + source: "", + meta: undefined, + }, + "logomark_chromatic": { + name: "logomark_chromatic", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_chromatic.tsx", + type: "registry:logomark", target: "" - },{ - path: "registry/default/blocks/sidebar-15/components/team-switcher.tsx", - type: "registry:component", + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_chromatic")), + source: "", + meta: undefined, + }, + "logomark_cisco": { + name: "logomark_cisco", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_cisco.tsx", + type: "registry:logomark", target: "" }], - categories: ["sidebar","dashboard"], - component: React.lazy(() => import("@/registry/default/blocks/sidebar-15/page.tsx")), - source: "__registry__/default/blocks/sidebar-15/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_cisco")), + source: "", meta: undefined, }, - "login-01": { - name: "login-01", - description: "A simple login form.", - type: "registry:block", - registryDependencies: ["button","card","input","label"], + "logomark_clerk": { + name: "logomark_clerk", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/login-01/page.tsx", - type: "registry:page", - target: "app/login/page.tsx" - },{ - path: "registry/default/blocks/login-01/components/login-form.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_clerk.tsx", + type: "registry:logomark", target: "" }], - categories: ["authentication","login"], - component: React.lazy(() => import("@/registry/default/blocks/login-01/page.tsx")), - source: "__registry__/default/blocks/login-01/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_clerk")), + source: "", meta: undefined, }, - "login-02": { - name: "login-02", - description: "A two column login page with a cover image.", - type: "registry:block", - registryDependencies: ["button","card","input","label"], + "logomark_craft": { + name: "logomark_craft", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/login-02/page.tsx", - type: "registry:page", - target: "app/login/page.tsx" - },{ - path: "registry/default/blocks/login-02/components/login-form.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_craft.tsx", + type: "registry:logomark", target: "" }], - categories: ["authentication","login"], - component: React.lazy(() => import("@/registry/default/blocks/login-02/page.tsx")), - source: "__registry__/default/blocks/login-02/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_craft")), + source: "", meta: undefined, }, - "login-03": { - name: "login-03", - description: "A login page with a muted background color.", - type: "registry:block", - registryDependencies: ["button","card","input","label"], + "logomark_custom-auth": { + name: "logomark_custom-auth", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/login-03/page.tsx", - type: "registry:page", - target: "app/login/page.tsx" - },{ - path: "registry/default/blocks/login-03/components/login-form.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_custom-auth.tsx", + type: "registry:logomark", target: "" }], - categories: ["authentication","login"], - component: React.lazy(() => import("@/registry/default/blocks/login-03/page.tsx")), - source: "__registry__/default/blocks/login-03/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_custom-auth")), + source: "", meta: undefined, }, - "login-04": { - name: "login-04", - description: "A login page with form and image.", - type: "registry:block", - registryDependencies: ["button","card","input","label"], + "logomark_datatables": { + name: "logomark_datatables", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/login-04/page.tsx", - type: "registry:page", - target: "app/login/page.tsx" - },{ - path: "registry/default/blocks/login-04/components/login-form.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_datatables.tsx", + type: "registry:logomark", target: "" }], - categories: ["authentication","login"], - component: React.lazy(() => import("@/registry/default/blocks/login-04/page.tsx")), - source: "__registry__/default/blocks/login-04/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_datatables")), + source: "", meta: undefined, }, - "login-05": { - name: "login-05", - description: "A simple email-only login page.", - type: "registry:block", - registryDependencies: ["button","card","input","label"], + "logomark_deloitte": { + name: "logomark_deloitte", + description: "", + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/blocks/login-05/page.tsx", - type: "registry:page", - target: "app/login/page.tsx" - },{ - path: "registry/default/blocks/login-05/components/login-form.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_deloitte.tsx", + type: "registry:logomark", target: "" }], - categories: ["authentication","login"], - component: React.lazy(() => import("@/registry/default/blocks/login-05/page.tsx")), - source: "__registry__/default/blocks/login-05/page.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_deloitte")), + source: "", meta: undefined, }, - "chart-area-axes": { - name: "chart-area-axes", + "logomark_digidoc": { + name: "logomark_digidoc", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-area-axes.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_digidoc.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-area"], - component: React.lazy(() => import("@/registry/default/charts/chart-area-axes.tsx")), - source: "__registry__/default/charts/chart-area-axes.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_digidoc")), + source: "", meta: undefined, }, - "chart-area-default": { - name: "chart-area-default", + "logomark_directus": { + name: "logomark_directus", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-area-default.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_directus.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-area"], - component: React.lazy(() => import("@/registry/default/charts/chart-area-default.tsx")), - source: "__registry__/default/charts/chart-area-default.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_directus")), + source: "", meta: undefined, }, - "chart-area-gradient": { - name: "chart-area-gradient", + "logomark_docker": { + name: "logomark_docker", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-area-gradient.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_docker.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-area"], - component: React.lazy(() => import("@/registry/default/charts/chart-area-gradient.tsx")), - source: "__registry__/default/charts/chart-area-gradient.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_docker")), + source: "", meta: undefined, }, - "chart-area-icons": { - name: "chart-area-icons", + "logomark_dp": { + name: "logomark_dp", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-area-icons.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_dp.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-area"], - component: React.lazy(() => import("@/registry/default/charts/chart-area-icons.tsx")), - source: "__registry__/default/charts/chart-area-icons.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_dp")), + source: "", meta: undefined, }, - "chart-area-interactive": { - name: "chart-area-interactive", + "logomark_elide-graphql": { + name: "logomark_elide-graphql", description: "", - type: "registry:block", - registryDependencies: ["card","chart","select"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-area-interactive.tsx", - type: "registry:component", + path: "registry/default/logos/logomark_elide-graphql.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-area"], - component: React.lazy(() => import("@/registry/default/charts/chart-area-interactive.tsx")), - source: "__registry__/default/charts/chart-area-interactive.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_elide-graphql")), + source: "", meta: undefined, }, - "chart-area-legend": { - name: "chart-area-legend", + "logomark_elide": { + name: "logomark_elide", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-area-legend.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_elide.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-area"], - component: React.lazy(() => import("@/registry/default/charts/chart-area-legend.tsx")), - source: "__registry__/default/charts/chart-area-legend.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_elide")), + source: "", meta: undefined, }, - "chart-area-linear": { - name: "chart-area-linear", + "logomark_entrefine": { + name: "logomark_entrefine", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-area-linear.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_entrefine.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-area"], - component: React.lazy(() => import("@/registry/default/charts/chart-area-linear.tsx")), - source: "__registry__/default/charts/chart-area-linear.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_entrefine")), + source: "", meta: undefined, }, - "chart-area-stacked-expand": { - name: "chart-area-stacked-expand", + "logomark_explor": { + name: "logomark_explor", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-area-stacked-expand.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_explor.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-area"], - component: React.lazy(() => import("@/registry/default/charts/chart-area-stacked-expand.tsx")), - source: "__registry__/default/charts/chart-area-stacked-expand.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_explor")), + source: "", meta: undefined, }, - "chart-area-stacked": { - name: "chart-area-stacked", + "logomark_expo": { + name: "logomark_expo", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-area-stacked.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_expo.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-area"], - component: React.lazy(() => import("@/registry/default/charts/chart-area-stacked.tsx")), - source: "__registry__/default/charts/chart-area-stacked.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_expo")), + source: "", meta: undefined, }, - "chart-area-step": { - name: "chart-area-step", + "logomark_figma": { + name: "logomark_figma", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-area-step.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_figma.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-area"], - component: React.lazy(() => import("@/registry/default/charts/chart-area-step.tsx")), - source: "__registry__/default/charts/chart-area-step.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_figma")), + source: "", meta: undefined, }, - "chart-bar-active": { - name: "chart-bar-active", + "logomark_firebase": { + name: "logomark_firebase", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-bar-active.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_firebase.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-bar"], - component: React.lazy(() => import("@/registry/default/charts/chart-bar-active.tsx")), - source: "__registry__/default/charts/chart-bar-active.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_firebase")), + source: "", meta: undefined, }, - "chart-bar-default": { - name: "chart-bar-default", + "logomark_flows": { + name: "logomark_flows", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-bar-default.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_flows.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-bar"], - component: React.lazy(() => import("@/registry/default/charts/chart-bar-default.tsx")), - source: "__registry__/default/charts/chart-bar-default.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_flows")), + source: "", meta: undefined, }, - "chart-bar-horizontal": { - name: "chart-bar-horizontal", + "logomark_github": { + name: "logomark_github", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-bar-horizontal.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_github.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-bar"], - component: React.lazy(() => import("@/registry/default/charts/chart-bar-horizontal.tsx")), - source: "__registry__/default/charts/chart-bar-horizontal.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_github")), + source: "", meta: undefined, }, - "chart-bar-interactive": { - name: "chart-bar-interactive", + "logomark_google": { + name: "logomark_google", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-bar-interactive.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_google.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-bar"], - component: React.lazy(() => import("@/registry/default/charts/chart-bar-interactive.tsx")), - source: "__registry__/default/charts/chart-bar-interactive.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_google")), + source: "", meta: undefined, }, - "chart-bar-label-custom": { - name: "chart-bar-label-custom", + "logomark_graphql": { + name: "logomark_graphql", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-bar-label-custom.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_graphql.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-bar"], - component: React.lazy(() => import("@/registry/default/charts/chart-bar-label-custom.tsx")), - source: "__registry__/default/charts/chart-bar-label-custom.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_graphql")), + source: "", meta: undefined, }, - "chart-bar-label": { - name: "chart-bar-label", + "logomark_hasura": { + name: "logomark_hasura", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-bar-label.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_hasura.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-bar"], - component: React.lazy(() => import("@/registry/default/charts/chart-bar-label.tsx")), - source: "__registry__/default/charts/chart-bar-label.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_hasura")), + source: "", meta: undefined, }, - "chart-bar-mixed": { - name: "chart-bar-mixed", + "logomark_headless": { + name: "logomark_headless", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-bar-mixed.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_headless.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-bar"], - component: React.lazy(() => import("@/registry/default/charts/chart-bar-mixed.tsx")), - source: "__registry__/default/charts/chart-bar-mixed.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_headless")), + source: "", meta: undefined, }, - "chart-bar-multiple": { - name: "chart-bar-multiple", + "logomark_hook-form": { + name: "logomark_hook-form", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-bar-multiple.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_hook-form.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-bar"], - component: React.lazy(() => import("@/registry/default/charts/chart-bar-multiple.tsx")), - source: "__registry__/default/charts/chart-bar-multiple.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_hook-form")), + source: "", meta: undefined, }, - "chart-bar-negative": { - name: "chart-bar-negative", + "logomark_hygraph": { + name: "logomark_hygraph", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-bar-negative.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_hygraph.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-bar"], - component: React.lazy(() => import("@/registry/default/charts/chart-bar-negative.tsx")), - source: "__registry__/default/charts/chart-bar-negative.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_hygraph")), + source: "", meta: undefined, }, - "chart-bar-stacked": { - name: "chart-bar-stacked", + "logomark_ibm": { + name: "logomark_ibm", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-bar-stacked.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_ibm.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-bar"], - component: React.lazy(() => import("@/registry/default/charts/chart-bar-stacked.tsx")), - source: "__registry__/default/charts/chart-bar-stacked.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_ibm")), + source: "", meta: undefined, }, - "chart-line-default": { - name: "chart-line-default", + "logomark_intel": { + name: "logomark_intel", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-line-default.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_intel.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-line"], - component: React.lazy(() => import("@/registry/default/charts/chart-line-default.tsx")), - source: "__registry__/default/charts/chart-line-default.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_intel")), + source: "", meta: undefined, }, - "chart-line-dots-colors": { - name: "chart-line-dots-colors", + "logomark_jp-morgan": { + name: "logomark_jp-morgan", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-line-dots-colors.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_jp-morgan.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-line"], - component: React.lazy(() => import("@/registry/default/charts/chart-line-dots-colors.tsx")), - source: "__registry__/default/charts/chart-line-dots-colors.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_jp-morgan")), + source: "", meta: undefined, }, - "chart-line-dots-custom": { - name: "chart-line-dots-custom", + "logomark_json-api": { + name: "logomark_json-api", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-line-dots-custom.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_json-api.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-line"], - component: React.lazy(() => import("@/registry/default/charts/chart-line-dots-custom.tsx")), - source: "__registry__/default/charts/chart-line-dots-custom.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_json-api")), + source: "", meta: undefined, }, - "chart-line-dots": { - name: "chart-line-dots", + "logomark_kbar": { + name: "logomark_kbar", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-line-dots.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_kbar.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-line"], - component: React.lazy(() => import("@/registry/default/charts/chart-line-dots.tsx")), - source: "__registry__/default/charts/chart-line-dots.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_kbar")), + source: "", meta: undefined, }, - "chart-line-interactive": { - name: "chart-line-interactive", + "logomark_kinde": { + name: "logomark_kinde", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-line-interactive.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_kinde.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-line"], - component: React.lazy(() => import("@/registry/default/charts/chart-line-interactive.tsx")), - source: "__registry__/default/charts/chart-line-interactive.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_kinde")), + source: "", meta: undefined, }, - "chart-line-label-custom": { - name: "chart-line-label-custom", + "logomark_leveln": { + name: "logomark_leveln", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-line-label-custom.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_leveln.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-line"], - component: React.lazy(() => import("@/registry/default/charts/chart-line-label-custom.tsx")), - source: "__registry__/default/charts/chart-line-label-custom.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_leveln")), + source: "", meta: undefined, }, - "chart-line-label": { - name: "chart-line-label", + "logomark_lit": { + name: "logomark_lit", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-line-label.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_lit.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-line"], - component: React.lazy(() => import("@/registry/default/charts/chart-line-label.tsx")), - source: "__registry__/default/charts/chart-line-label.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_lit")), + source: "", meta: undefined, }, - "chart-line-linear": { - name: "chart-line-linear", + "logomark_mantine": { + name: "logomark_mantine", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-line-linear.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_mantine.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-line"], - component: React.lazy(() => import("@/registry/default/charts/chart-line-linear.tsx")), - source: "__registry__/default/charts/chart-line-linear.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_mantine")), + source: "", meta: undefined, }, - "chart-line-multiple": { - name: "chart-line-multiple", + "logomark_medusa": { + name: "logomark_medusa", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-line-multiple.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_medusa.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-line"], - component: React.lazy(() => import("@/registry/default/charts/chart-line-multiple.tsx")), - source: "__registry__/default/charts/chart-line-multiple.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_medusa")), + source: "", meta: undefined, }, - "chart-line-step": { - name: "chart-line-step", + "logomark_meta": { + name: "logomark_meta", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-line-step.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_meta.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-line"], - component: React.lazy(() => import("@/registry/default/charts/chart-line-step.tsx")), - source: "__registry__/default/charts/chart-line-step.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_meta")), + source: "", meta: undefined, }, - "chart-pie-donut-active": { - name: "chart-pie-donut-active", + "logomark_mongodb": { + name: "logomark_mongodb", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-donut-active.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_mongodb.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-donut-active.tsx")), - source: "__registry__/default/charts/chart-pie-donut-active.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_mongodb")), + source: "", meta: undefined, }, - "chart-pie-donut-text": { - name: "chart-pie-donut-text", + "logomark_ms-sql-server": { + name: "logomark_ms-sql-server", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-donut-text.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_ms-sql-server.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-donut-text.tsx")), - source: "__registry__/default/charts/chart-pie-donut-text.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_ms-sql-server")), + source: "", meta: undefined, }, - "chart-pie-donut": { - name: "chart-pie-donut", + "logomark_mui": { + name: "logomark_mui", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-donut.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_mui.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-donut.tsx")), - source: "__registry__/default/charts/chart-pie-donut.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_mui")), + source: "", meta: undefined, }, - "chart-pie-interactive": { - name: "chart-pie-interactive", + "logomark_mysql": { + name: "logomark_mysql", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-interactive.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_mysql.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-interactive.tsx")), - source: "__registry__/default/charts/chart-pie-interactive.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_mysql")), + source: "", meta: undefined, }, - "chart-pie-label-custom": { - name: "chart-pie-label-custom", + "logomark_nest-query": { + name: "logomark_nest-query", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-label-custom.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_nest-query.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-label-custom.tsx")), - source: "__registry__/default/charts/chart-pie-label-custom.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_nest-query")), + source: "", meta: undefined, }, - "chart-pie-label-list": { - name: "chart-pie-label-list", + "logomark_nest": { + name: "logomark_nest", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-label-list.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_nest.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-label-list.tsx")), - source: "__registry__/default/charts/chart-pie-label-list.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_nest")), + source: "", meta: undefined, }, - "chart-pie-label": { - name: "chart-pie-label", + "logomark_nextjs": { + name: "logomark_nextjs", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-label.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_nextjs.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-label.tsx")), - source: "__registry__/default/charts/chart-pie-label.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_nextjs")), + source: "", meta: undefined, }, - "chart-pie-legend": { - name: "chart-pie-legend", + "logomark_nodejs": { + name: "logomark_nodejs", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-legend.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_nodejs.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-legend.tsx")), - source: "__registry__/default/charts/chart-pie-legend.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_nodejs")), + source: "", meta: undefined, }, - "chart-pie-separator-none": { - name: "chart-pie-separator-none", + "logomark_okta": { + name: "logomark_okta", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-separator-none.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_okta.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-separator-none.tsx")), - source: "__registry__/default/charts/chart-pie-separator-none.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_okta")), + source: "", meta: undefined, }, - "chart-pie-simple": { - name: "chart-pie-simple", + "logomark_olio": { + name: "logomark_olio", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-simple.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_olio.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-simple.tsx")), - source: "__registry__/default/charts/chart-pie-simple.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_olio")), + source: "", meta: undefined, }, - "chart-pie-stacked": { - name: "chart-pie-stacked", + "logomark_oracle": { + name: "logomark_oracle", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-pie-stacked.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_oracle.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-pie"], - component: React.lazy(() => import("@/registry/default/charts/chart-pie-stacked.tsx")), - source: "__registry__/default/charts/chart-pie-stacked.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_oracle")), + source: "", meta: undefined, }, - "chart-radar-default": { - name: "chart-radar-default", + "logomark_partytown": { + name: "logomark_partytown", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-default.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_partytown.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-default.tsx")), - source: "__registry__/default/charts/chart-radar-default.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_partytown")), + source: "", meta: undefined, }, - "chart-radar-dots": { - name: "chart-radar-dots", + "logomark_pendo": { + name: "logomark_pendo", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-dots.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_pendo.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-dots.tsx")), - source: "__registry__/default/charts/chart-radar-dots.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_pendo")), + source: "", meta: undefined, }, - "chart-radar-grid-circle-fill": { - name: "chart-radar-grid-circle-fill", + "logomark_planfoundry": { + name: "logomark_planfoundry", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-grid-circle-fill.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_planfoundry.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-circle-fill.tsx")), - source: "__registry__/default/charts/chart-radar-grid-circle-fill.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_planfoundry")), + source: "", meta: undefined, }, - "chart-radar-grid-circle-no-lines": { - name: "chart-radar-grid-circle-no-lines", + "logomark_pocketbase": { + name: "logomark_pocketbase", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-grid-circle-no-lines.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_pocketbase.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-circle-no-lines.tsx")), - source: "__registry__/default/charts/chart-radar-grid-circle-no-lines.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_pocketbase")), + source: "", meta: undefined, }, - "chart-radar-grid-circle": { - name: "chart-radar-grid-circle", + "logomark_postgresql": { + name: "logomark_postgresql", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-grid-circle.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_postgresql.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-circle.tsx")), - source: "__registry__/default/charts/chart-radar-grid-circle.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_postgresql")), + source: "", meta: undefined, }, - "chart-radar-grid-custom": { - name: "chart-radar-grid-custom", + "logomark_posthog": { + name: "logomark_posthog", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-grid-custom.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_posthog.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-custom.tsx")), - source: "__registry__/default/charts/chart-radar-grid-custom.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_posthog")), + source: "", meta: undefined, }, - "chart-radar-grid-fill": { - name: "chart-radar-grid-fill", + "logomark_radix": { + name: "logomark_radix", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-grid-fill.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_radix.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-fill.tsx")), - source: "__registry__/default/charts/chart-radar-grid-fill.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_radix")), + source: "", meta: undefined, }, - "chart-radar-grid-none": { - name: "chart-radar-grid-none", + "logomark_react": { + name: "logomark_react", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-grid-none.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_react.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-grid-none.tsx")), - source: "__registry__/default/charts/chart-radar-grid-none.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_react")), + source: "", meta: undefined, }, - "chart-radar-icons": { - name: "chart-radar-icons", + "logomark_remix": { + name: "logomark_remix", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-icons.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_remix.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-icons.tsx")), - source: "__registry__/default/charts/chart-radar-icons.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_remix")), + source: "", meta: undefined, }, - "chart-radar-label-custom": { - name: "chart-radar-label-custom", + "logomark_rest-without-text": { + name: "logomark_rest-without-text", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-label-custom.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_rest-without-text.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-label-custom.tsx")), - source: "__registry__/default/charts/chart-radar-label-custom.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_rest-without-text")), + source: "", + meta: undefined, + }, + "logomark_rest": { + name: "logomark_rest", + description: "", + type: "registry:logomark", + registryDependencies: undefined, + files: [{ + path: "registry/default/logos/logomark_rest.tsx", + type: "registry:logomark", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_rest")), + source: "", meta: undefined, }, - "chart-radar-legend": { - name: "chart-radar-legend", + "logomark_salesforce": { + name: "logomark_salesforce", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-legend.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_salesforce.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-legend.tsx")), - source: "__registry__/default/charts/chart-radar-legend.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_salesforce")), + source: "", meta: undefined, }, - "chart-radar-lines-only": { - name: "chart-radar-lines-only", + "logomark_sanity": { + name: "logomark_sanity", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-lines-only.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_sanity.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-lines-only.tsx")), - source: "__registry__/default/charts/chart-radar-lines-only.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_sanity")), + source: "", meta: undefined, }, - "chart-radar-multiple": { - name: "chart-radar-multiple", + "logomark_scales": { + name: "logomark_scales", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-multiple.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_scales.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-multiple.tsx")), - source: "__registry__/default/charts/chart-radar-multiple.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_scales")), + source: "", meta: undefined, }, - "chart-radar-radius": { - name: "chart-radar-radius", + "logomark_sentry": { + name: "logomark_sentry", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radar-radius.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_sentry.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radar"], - component: React.lazy(() => import("@/registry/default/charts/chart-radar-radius.tsx")), - source: "__registry__/default/charts/chart-radar-radius.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_sentry")), + source: "", meta: undefined, }, - "chart-radial-grid": { - name: "chart-radial-grid", + "logomark_shadcn-ui": { + name: "logomark_shadcn-ui", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radial-grid.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_shadcn-ui.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radial"], - component: React.lazy(() => import("@/registry/default/charts/chart-radial-grid.tsx")), - source: "__registry__/default/charts/chart-radial-grid.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_shadcn-ui")), + source: "", meta: undefined, }, - "chart-radial-label": { - name: "chart-radial-label", + "logomark_shadcn": { + name: "logomark_shadcn", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radial-label.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_shadcn.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radial"], - component: React.lazy(() => import("@/registry/default/charts/chart-radial-label.tsx")), - source: "__registry__/default/charts/chart-radial-label.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_shadcn")), + source: "", meta: undefined, }, - "chart-radial-shape": { - name: "chart-radial-shape", + "logomark_signal": { + name: "logomark_signal", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radial-shape.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_signal.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radial"], - component: React.lazy(() => import("@/registry/default/charts/chart-radial-shape.tsx")), - source: "__registry__/default/charts/chart-radial-shape.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_signal")), + source: "", meta: undefined, }, - "chart-radial-simple": { - name: "chart-radial-simple", + "logomark_slack": { + name: "logomark_slack", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radial-simple.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_slack.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radial"], - component: React.lazy(() => import("@/registry/default/charts/chart-radial-simple.tsx")), - source: "__registry__/default/charts/chart-radial-simple.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_slack")), + source: "", meta: undefined, }, - "chart-radial-stacked": { - name: "chart-radial-stacked", + "logomark_sqlite": { + name: "logomark_sqlite", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radial-stacked.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_sqlite.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radial"], - component: React.lazy(() => import("@/registry/default/charts/chart-radial-stacked.tsx")), - source: "__registry__/default/charts/chart-radial-stacked.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_sqlite")), + source: "", meta: undefined, }, - "chart-radial-text": { - name: "chart-radial-text", + "logomark_storybook": { + name: "logomark_storybook", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-radial-text.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_storybook.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-radial"], - component: React.lazy(() => import("@/registry/default/charts/chart-radial-text.tsx")), - source: "__registry__/default/charts/chart-radial-text.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_storybook")), + source: "", meta: undefined, }, - "chart-tooltip-default": { - name: "chart-tooltip-default", + "logomark_strapi": { + name: "logomark_strapi", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-tooltip-default.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_strapi.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-tooltip"], - component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-default.tsx")), - source: "__registry__/default/charts/chart-tooltip-default.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_strapi")), + source: "", meta: undefined, }, - "chart-tooltip-indicator-line": { - name: "chart-tooltip-indicator-line", + "logomark_styledictionary": { + name: "logomark_styledictionary", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-tooltip-indicator-line.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_styledictionary.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-tooltip"], - component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-indicator-line.tsx")), - source: "__registry__/default/charts/chart-tooltip-indicator-line.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_styledictionary")), + source: "", meta: undefined, }, - "chart-tooltip-indicator-none": { - name: "chart-tooltip-indicator-none", + "logomark_sugarless": { + name: "logomark_sugarless", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-tooltip-indicator-none.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_sugarless.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-tooltip"], - component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-indicator-none.tsx")), - source: "__registry__/default/charts/chart-tooltip-indicator-none.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_sugarless")), + source: "", meta: undefined, }, - "chart-tooltip-label-none": { - name: "chart-tooltip-label-none", + "logomark_swagger": { + name: "logomark_swagger", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-tooltip-label-none.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_swagger.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-tooltip"], - component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-label-none.tsx")), - source: "__registry__/default/charts/chart-tooltip-label-none.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_swagger")), + source: "", meta: undefined, }, - "chart-tooltip-label-custom": { - name: "chart-tooltip-label-custom", + "logomark_tailwind": { + name: "logomark_tailwind", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-tooltip-label-custom.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_tailwind.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-tooltip"], - component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-label-custom.tsx")), - source: "__registry__/default/charts/chart-tooltip-label-custom.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_tailwind")), + source: "", meta: undefined, }, - "chart-tooltip-label-formatter": { - name: "chart-tooltip-label-formatter", + "logomark_tailwindcss": { + name: "logomark_tailwindcss", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-tooltip-label-formatter.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_tailwindcss.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-tooltip"], - component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-label-formatter.tsx")), - source: "__registry__/default/charts/chart-tooltip-label-formatter.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_tailwindcss")), + source: "", meta: undefined, }, - "chart-tooltip-formatter": { - name: "chart-tooltip-formatter", + "logomark_turborepo": { + name: "logomark_turborepo", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-tooltip-formatter.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_turborepo.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-tooltip"], - component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-formatter.tsx")), - source: "__registry__/default/charts/chart-tooltip-formatter.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_turborepo")), + source: "", meta: undefined, }, - "chart-tooltip-icons": { - name: "chart-tooltip-icons", + "logomark_typescript": { + name: "logomark_typescript", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-tooltip-icons.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_typescript.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-tooltip"], - component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-icons.tsx")), - source: "__registry__/default/charts/chart-tooltip-icons.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_typescript")), + source: "", meta: undefined, }, - "chart-tooltip-advanced": { - name: "chart-tooltip-advanced", + "logomark_upwork": { + name: "logomark_upwork", description: "", - type: "registry:block", - registryDependencies: ["card","chart"], + type: "registry:logomark", + registryDependencies: undefined, files: [{ - path: "registry/default/charts/chart-tooltip-advanced.tsx", - type: "registry:block", + path: "registry/default/logos/logomark_upwork.tsx", + type: "registry:logomark", target: "" }], - categories: ["charts","charts-tooltip"], - component: React.lazy(() => import("@/registry/default/charts/chart-tooltip-advanced.tsx")), - source: "__registry__/default/charts/chart-tooltip-advanced.tsx", + categories: undefined, + component: React.lazy(() => import("@/registry/logos/logomark_upwork")), + source: "", meta: undefined, }, - "buttonUtils": { - name: "buttonUtils", + "logomark_usegenerated": { + name: "logomark_usegenerated", description: "", - type: "registry:lib", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/default/lib/buttonUtils.ts", - type: "registry:lib", + path: "registry/default/logos/logomark_usegenerated.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/lib/buttonUtils.ts")), + component: React.lazy(() => import("@/registry/logos/logomark_usegenerated")), source: "", meta: undefined, }, - "button-variants": { - name: "button-variants", + "logomark_vercel": { + name: "logomark_vercel", description: "", - type: "registry:lib", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/default/lib/button-variants.ts", - type: "registry:lib", + path: "registry/default/logos/logomark_vercel.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/lib/button-variants.ts")), + component: React.lazy(() => import("@/registry/logos/logomark_vercel")), source: "", meta: undefined, }, - "utils": { - name: "utils", + "logomark_vite": { + name: "logomark_vite", description: "", - type: "registry:lib", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/default/lib/utils.ts", - type: "registry:lib", + path: "registry/default/logos/logomark_vite.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/lib/utils.ts")), + component: React.lazy(() => import("@/registry/logos/logomark_vite")), source: "", meta: undefined, }, - "dom-animation": { - name: "dom-animation", + "logomark_wizards": { + name: "logomark_wizards", description: "", - type: "registry:lib", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/default/lib/dom-animation.ts", - type: "registry:lib", + path: "registry/default/logos/logomark_wizards.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/lib/dom-animation.ts")), + component: React.lazy(() => import("@/registry/logos/logomark_wizards")), source: "", meta: undefined, }, - "buttonVariants": { - name: "buttonVariants", + "logomark_zeplin": { + name: "logomark_zeplin", description: "", - type: "registry:lib", + type: "registry:logomark", registryDependencies: undefined, files: [{ - path: "registry/default/lib/buttonUtils.ts", - type: "registry:lib", - target: "" - },{ - path: "registry/default/lib/button-variants.ts", - type: "registry:lib", + path: "registry/default/logos/logomark_zeplin.tsx", + type: "registry:logomark", target: "" }], categories: undefined, - component: React.lazy(() => import("@/registry/default/lib/buttonUtils.ts")), + component: React.lazy(() => import("@/registry/logos/logomark_zeplin")), source: "", meta: undefined, }, @@ -9682,17 +13645,36 @@ export const Index: Record = { name: "use-ripple", description: "", type: "registry:hook", - registryDependencies: undefined, + registryDependencies: ["dom-animation"], files: [{ path: "registry/default/hooks/use-ripple.ts", type: "registry:hook", target: "" + },{ + path: "registry/default/lib/dom-animation.ts", + type: "registry:lib", + target: "" }], categories: undefined, component: React.lazy(() => import("@/registry/default/hooks/use-ripple.ts")), source: "", meta: undefined, }, + "rive-mode-toggle": { + name: "rive-mode-toggle", + description: "", + type: "registry:prodkt", + registryDependencies: undefined, + files: [{ + path: "registry/default/prodkt/rive/mode-toggle/index.tsx", + type: "registry:prodkt", + target: "" + }], + categories: undefined, + component: React.lazy(() => import("@/registry/default/prodkt/rive/mode-toggle/index.tsx")), + source: "", + meta: undefined, + }, "logo-cloud-01": { name: "logo-cloud-01", description: "", @@ -10080,276 +14062,6 @@ export const Index: Record = { source: "", meta: undefined, }, - "design-system-icons": { - name: "design-system-icons", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/icons/design-system/index.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/icons/design-system/index.tsx")), - source: "", - meta: undefined, - }, - "prodkt-navigation-icons": { - name: "prodkt-navigation-icons", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/icons/prodkt-navigation/index.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/icons/prodkt-navigation/index.tsx")), - source: "", - meta: undefined, - }, - "logo_craft": { - name: "logo_craft", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logo_craft.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logo_craft.tsx")), - source: "", - meta: undefined, - }, - "logo_olio": { - name: "logo_olio", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logo_olio.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logo_olio.tsx")), - source: "", - meta: undefined, - }, - "logo_planfoundry": { - name: "logo_planfoundry", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logo_planfoundry.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logo_planfoundry.tsx")), - source: "", - meta: undefined, - }, - "logo_scales": { - name: "logo_scales", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logo_scales.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logo_scales.tsx")), - source: "", - meta: undefined, - }, - "logomark_ampersand": { - name: "logomark_ampersand", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_ampersand.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_ampersand.tsx")), - source: "", - meta: undefined, - }, - "logomark_craft": { - name: "logomark_craft", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_craft.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_craft.tsx")), - source: "", - meta: undefined, - }, - "logomark_digidoc": { - name: "logomark_digidoc", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_digidoc.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_digidoc.tsx")), - source: "", - meta: undefined, - }, - "logomark_explor": { - name: "logomark_explor", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_explor.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_explor.tsx")), - source: "", - meta: undefined, - }, - "logomark_flows": { - name: "logomark_flows", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_flows.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_flows.tsx")), - source: "", - meta: undefined, - }, - "logomark_leveln": { - name: "logomark_leveln", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_leveln.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_leveln.tsx")), - source: "", - meta: undefined, - }, - "logomark_olio": { - name: "logomark_olio", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_olio.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_olio.tsx")), - source: "", - meta: undefined, - }, - "logomark_planfoundry": { - name: "logomark_planfoundry", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_planfoundry.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_planfoundry.tsx")), - source: "", - meta: undefined, - }, - "logomark_remix": { - name: "logomark_remix", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_remix.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_remix.tsx")), - source: "", - meta: undefined, - }, - "logomark_scales": { - name: "logomark_scales", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_scales.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_scales.tsx")), - source: "", - meta: undefined, - }, - "logomark_signal": { - name: "logomark_signal", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_signal.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_signal.tsx")), - source: "", - meta: undefined, - }, - "logomark_sugarless": { - name: "logomark_sugarless", - description: "", - type: "registry:prodkt", - registryDependencies: undefined, - files: [{ - path: "registry/default/prodkt/logomark_sugarless.tsx", - type: "registry:prodkt", - target: "" - }], - categories: undefined, - component: React.lazy(() => import("@/registry/default/prodkt/logomark_sugarless.tsx")), - source: "", - meta: undefined, - }, "designer-marks-button": { name: "designer-marks-button", description: "", @@ -10639,7 +14351,7 @@ export const Index: Record = { name: "marquee", description: "", type: "registry:effect", - registryDependencies: undefined, + registryDependencies: ["utils"], files: [{ path: "registry/default/effects/marquee.tsx", type: "registry:effect", @@ -10654,7 +14366,7 @@ export const Index: Record = { name: "tracer", description: "", type: "registry:effect", - registryDependencies: undefined, + registryDependencies: ["utils"], files: [{ path: "registry/default/effects/tracer.tsx", type: "registry:effect", diff --git a/apps/www/app/layout.tsx b/apps/www/app/layout.tsx index 1dc10385..06578519 100644 --- a/apps/www/app/layout.tsx +++ b/apps/www/app/layout.tsx @@ -1,12 +1,7 @@ import "@/styles/sparkstack_globals.css" import type { Metadata, Viewport } from "next" -import { - META_PRODKT_THEMES, - META_THEMES, - META_THEME_COLORS, - siteConfig, -} from "@/config/site" +import { META_THEME_COLORS, siteConfig } from "@/config/site" import { fontMono, fontSans } from "@/lib/fonts" import { themeScript } from "@/lib/theme-script" import { cn } from "@/lib/utils" @@ -84,7 +79,7 @@ interface RootLayoutProps { children: React.ReactNode } -export default function RootLayout({ children }: RootLayoutProps) { +export default function RootLayout({ children }: Readonly) { return ( diff --git a/apps/www/components/chart-copy-button.tsx b/apps/www/components/chart-copy-button.tsx index 94754d58..e52b8e48 100644 --- a/apps/www/components/chart-copy-button.tsx +++ b/apps/www/components/chart-copy-button.tsx @@ -36,7 +36,7 @@ export function ChartCopyButton({
\n \n \n

😄

\n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n )\n}\n\nconst Cursor = ({ className = \"\", color = \"none\" }) => {\n return (\n \n \n \n )\n}\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/app-icons-section.json b/apps/www/public/r/styles/default/app-icons-section.json new file mode 100644 index 00000000..f8a1fbb2 --- /dev/null +++ b/apps/www/public/r/styles/default/app-icons-section.json @@ -0,0 +1,12 @@ +{ + "name": "app-icons-section", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/app-icons-section.tsx", + "content": "\"use client\"\n\nimport React, { forwardRef, type Ref } from \"react\"\n\nimport type { PRODUCT_SHORTNAMES } from \"@/lib/constants\"\nimport { cn } from \"@/lib/utils\"\n\nimport MagnifiedProducts from \"./magnify-app-icons\"\n\nexport type Products = PRODUCT_SHORTNAMES\n\ninterface Props {\n currentProduct: Products | string\n}\n\nfunction AppIconsSection(props: Props) {\n return (\n \n
\n

\n Explore my products\n

\n

\n Prodkt products are built to work both in isolation and seamlessly\n together to ensure the most flexible and scalable developer\n experience.\n

\n
\n
\n \n
\n
\n )\n}\n\ninterface SectionContainerProps {\n children: React.ReactNode\n className?: string\n id?: string\n}\n\nconst SectionContainer = forwardRef(\n (\n { children, className, id }: SectionContainerProps,\n ref: Ref\n ) => (\n \n {children}\n
\n )\n)\n\nexport default AppIconsSection\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/bento-grid-uno-demo.json b/apps/www/public/r/styles/default/bento-grid-uno-demo.json index b463a0f0..001b4b8e 100644 --- a/apps/www/public/r/styles/default/bento-grid-uno-demo.json +++ b/apps/www/public/r/styles/default/bento-grid-uno-demo.json @@ -7,7 +7,7 @@ "files": [ { "path": "examples/bento-grid-uno-demo.tsx", - "content": "import { BentoGridUno } from \"@/registry/default/prodkt/bento-grid-uno\"\n\nexport default function BentoGridUnoDemo() {\n return (\n
\n \n
\n )\n}\n", + "content": "import { BentoGridUno } from \"@/registry/default/prodkt/bento-grid-uno\"\n\nexport default function BentoGridUnoDemo() {\n return \n}\n", "type": "registry:example", "target": "" } diff --git a/apps/www/public/r/styles/default/bento-grid-uno.json b/apps/www/public/r/styles/default/bento-grid-uno.json new file mode 100644 index 00000000..d75b049a --- /dev/null +++ b/apps/www/public/r/styles/default/bento-grid-uno.json @@ -0,0 +1,12 @@ +{ + "name": "bento-grid-uno", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/bento-grid-uno/index.tsx", + "content": "export * from \"./feature-card\"\nexport * from \"./feature-grid\"\nexport * from \"./feature-showcase\"\nexport * from \"./logomarks\"\nexport * from \"./page\"\nexport * from \"./technology-marquee\"\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/button-variants.json b/apps/www/public/r/styles/default/button-variants.json index 340ef4fd..084b5bcf 100644 --- a/apps/www/public/r/styles/default/button-variants.json +++ b/apps/www/public/r/styles/default/button-variants.json @@ -1,10 +1,13 @@ { "name": "button-variants", "type": "registry:lib", + "registryDependencies": [ + "utils" + ], "files": [ { "path": "lib/button-variants.ts", - "content": "export const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n nexsalePrimary: \"nexsale-btn primary\",\n nexsaleSecondary: \"nexsale-btn secondary\",\n nexsaleGhost: \"nexsale-btn ghost\",\n nexsaleAccent: \"nexsale-btn accent\",\n nexsaleSuccess: \"nexsale-btn success\",\n nexsaleWarning: \"nexsale-btn warning\",\n nexsaleInfo: \"nexsale-btn info\",\n nexsaleDestructive: \"nexsale-btn destructive\",\n nexsaleOutlined: \"nexsale-btn outlined\",\n nexsaleOutlinedPrimary: \"nexsale-btn outlined primary\",\n nexsaleOutlinedSecondary: \"nexsale-btn outlined secondary\",\n nexsaleOutlinedGhost: \"nexsale-btn outlined ghost\",\n nexsaleOutlinedAccent: \"nexsale-btn outlined accent\",\n nexsaleOutlinedSuccess: \"nexsale-btn outlined success\",\n nexsaleOutlinedWarning: \"nexsale-btn outlined warning\",\n nexsaleOutlinedInfo: \"nexsale-btn outlined info\",\n nexsaleOutlinedDestructive: \"nexsale-btn outlined destructive\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\n", + "content": "import { cn } from \"@/lib/utils\"\n\n// registry/default/lib/button-variants-base.ts\nexport const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n primary: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\ntype NexsaleButtonConfig = {\n base: string\n variants: {\n variant: {\n default: string\n primary: string\n secondary: string\n ghost: string\n accent: string\n success: string\n warning: string\n info: string\n destructive: string\n link: string\n }\n bordered: {\n true: string\n }\n size: {\n default: string\n sm: string\n icon: string\n }\n }\n compoundVariants: Array<{\n // Changed from readonly array to mutable\n variant: keyof NexsaleButtonConfig[\"variants\"][\"variant\"]\n bordered: boolean\n className: string\n }>\n defaultVariants: {\n variant: keyof NexsaleButtonConfig[\"variants\"][\"variant\"]\n size: keyof NexsaleButtonConfig[\"variants\"][\"size\"]\n }\n}\n\n// registry/default/lib/button-variants-base.ts\nexport const nexsaleButtonVariantsConfig: NexsaleButtonConfig = {\n base: cn(\n \"select-none cursor-pointer z-[1] focus-within:ring-gray-a10 transition-all duration-300 ease-in-out motion-duration-300 overflow-hidden\",\n \"relative inline-flex items-center justify-center\",\n \"border-transparent shadow-md ring-1 ring-gray-a5\",\n \"hover:shadow-lg hover:before:animate-nexsale-btn\",\n \"active:shadow-lg active:duration-200\",\n \"disabled:bg-gray-a5 disabled:opacity-40\",\n \"after:absolute after:inset-0 after:shadow-[inset_0_0_2px_1px_var(--gray-a4)] hover:after:shadow-[inset_0_0_2px_1px_var(--gray-a5)] after:overflow-hidden\",\n \"before:opacity-0 hover:before:opacity-100 hover:before:duration-300 before:motion-duration-500\",\n \"before:absolute before:rounded-none before:inset-0 before:m-auto before:border-y before:blur-[2px] before:w-2 before:h-[calc(100%+3px)] before:origin-center\"\n ),\n variants: {\n variant: {\n default:\n \"bg-gray-a5 hover:bg-gray-a5 hover:ring-gray-a3 active:bg-gray-a5 active:ring-gray-a3 active:bg-gray-a4 before:border-gray-a12\",\n primary:\n \"bg-primary-a5 hover:bg-primary-a5 hover:ring-primary-a3 active:bg-primary-a5 active:ring-primary-a3 active:bg-primary-a4 before:border-primary-a12\",\n secondary:\n \"bg-ghost-aa5 hover:bg-ghost-aa5 hover:ring-ghost-aa3 active:bg-ghost-aa5 active:ring-ghost-aa3 active:bg-ghost-aa4 before:border-ghost-aa12\",\n ghost:\n \"bg-secondary-a5 hover:bg-secondary-a5 hover:ring-secondary-a3 active:bg-secondary-a5 active:ring-secondary-a3 active:bg-secondary-a4 before:border-secondary-a12\",\n accent:\n \"bg-accent-a5 hover:bg-accent-a5 hover:ring-accent-a3 active:bg-accent-a5 active:ring-accent-a3 active:bg-accent-a4 before:border-accent-a12\",\n destructive:\n \"bg-destructive-a5 hover:bg-destructive-a5 hover:ring-destructive-a3 active:bg-destructive-a5 active:ring-destructive-a3 active:bg-destructive-a4 before:border-destructive-a12\",\n success:\n \"bg-success-a5 hover:bg-success-a5 hover:ring-success-a3 active:bg-success-a5 active:ring-success-a3 active:bg-success-a4 before:border-success-a12\",\n warning:\n \"bg-warning-a5 hover:bg-warning-a5 hover:ring-warning-a3 active:bg-warning-a5 active:ring-warning-a3 active:bg-warning-a4 before:border-warning-a12\",\n info: \"bg-info-a5 hover:bg-info-a5 hover:ring-info-a3 active:bg-info-a5 active:ring-info-a3 active:bg-info-a4 before:border-info-a12\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n bordered: {\n true: \"\",\n },\n size: {\n default:\n \"border-none rounded-lg after:rounded-lg px-3 py-[calc(theme(spacing.2)-2px)] [&_svg]:stroke-[1.5px] [&_svg]:drop-shadow-md gap-x-2 [&_svg]:size-5\",\n sm: \"rounded-lg after:rounded-lg px-2.5 py-[calc(theme(spacing.2)-4px)] gap-x-2 [&_svg]:stroke-1 [&_svg]:drop-shadow-md [&_svg]:size-4 border-none\",\n icon: \"rounded-xl after:rounded-xl px-2 [&_svg]:stroke-1 [&_svg]:drop-shadow-md [&_svg]:size-4 border-none\",\n },\n },\n compoundVariants: [\n {\n variant: \"default\",\n bordered: true,\n className:\n \"bg-gray-a1 hover:bg-gray-a2 hover:ring-ghost-aa2 active:bg-transparent active:ring-ghost-aa1 active:bg-transparent before:border-ghost-aa1\",\n },\n {\n variant: \"primary\",\n bordered: true,\n className:\n \"bg-primary-a1 hover:bg-primary-a2 ring-primary-a5 hover:ring-primary-a6 active:bg-transparent active:ring-primary-a6 active:bg-transparent before:border-primary-a4\",\n },\n {\n variant: \"secondary\",\n bordered: true,\n className:\n \"bg-secondary-a1 hover:bg-secondary-a2 ring-secondary-a5 hover:ring-secondary-a6 active:bg-transparent active:ring-secondary-a6 active:bg-transparent before:border-secondary-a4\",\n },\n {\n variant: \"ghost\",\n bordered: true,\n className:\n \"bg-ghost-aa1 hover:bg-ghost-aa2 ring-ghost-aa5 hover:ring-ghost-aa6 active:bg-transparent active:ring-ghost-aa6 active:bg-transparent before:border-ghost-aa4\",\n },\n {\n variant: \"accent\",\n bordered: true,\n className:\n \"bg-accent-a1 hover:bg-accent-a2 ring-accent-a5 hover:ring-accent-a6 active:bg-transparent active:ring-accent-a6 active:bg-transparent before:border-accent-a4\",\n },\n {\n variant: \"success\",\n bordered: true,\n className:\n \"bg-success-a1 hover:bg-success-a2 ring-success-a5 hover:ring-success-a6 active:bg-transparent active:ring-success-a6 active:bg-transparent before:border-success-a4\",\n },\n {\n variant: \"warning\",\n bordered: true,\n className:\n \"bg-warning-a1 hover:bg-warning-a2 ring-warning-a5 hover:ring-warning-a6 active:bg-transparent active:ring-warning-a6 active:bg-transparent before:border-warning-a4\",\n },\n {\n variant: \"info\",\n bordered: true,\n className:\n \"bg-info-a1 hover:bg-info-a2 ring-info-a5 hover:ring-info-a6 active:bg-transparent active:ring-info-a6 active:bg-transparent before:border-info-a4\",\n },\n {\n variant: \"destructive\",\n bordered: true,\n className:\n \"bg-destructive-a1 hover:bg-destructive-a2 ring-destructive-a5 hover:ring-destructive-a6 active:bg-transparent active:ring-destructive-a6 active:bg-transparent before:border-destructive-a4\",\n },\n ] as const,\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n bordered?: boolean\n className?: string\n}\n\nexport type NexsaleButtonVariantProps = {\n variant?: keyof typeof nexsaleButtonVariantsConfig.variants.variant\n size?: keyof typeof nexsaleButtonVariantsConfig.variants.size\n bordered?: boolean\n className?: string\n}\n", "type": "registry:lib", "target": "" } diff --git a/apps/www/public/r/styles/default/button.json b/apps/www/public/r/styles/default/button.json index 84684183..565a9622 100644 --- a/apps/www/public/r/styles/default/button.json +++ b/apps/www/public/r/styles/default/button.json @@ -7,7 +7,7 @@ "files": [ { "path": "ui/button.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { useCallback } from \"react\"\nimport dynamic from \"next/dynamic\"\nimport { Slot } from \"@radix-ui/react-slot\"\n\nimport { cn } from \"@/lib/utils\"\nimport { useRipple } from \"@/registry/default/hooks/use-ripple\"\nimport {\n buttonVariants,\n type ButtonProps,\n} from \"@/registry/default/lib/buttonUtils\"\n\nexport * from \"@/registry/default/lib/buttonUtils\"\n\nconst Ripple = dynamic(\n () => import(\"@/registry/default/ui/ripple\").then((mod) => mod.default),\n {\n ssr: false,\n }\n)\n\nconst Button = React.forwardRef(\n (\n {\n className,\n variant,\n size,\n asChild = false,\n disableRipple = false,\n onClick,\n children,\n ...props\n },\n ref\n ) => {\n const { ripples, onClick: onRippleClickHandler, onClear } = useRipple()\n\n const handleClick = useCallback(\n (e: React.MouseEvent) => {\n onRippleClickHandler(e)\n onClick?.(e)\n },\n [onClick, onRippleClickHandler]\n )\n\n const getRippleProps = useCallback(\n () => ({ ripples, onClear }),\n [ripples, onClear]\n )\n\n const Comp = asChild ? Slot : \"button\"\n return (\n \n \n {children}\n {!disableRipple && }\n \n \n )\n }\n) as React.ForwardRefExoticComponent<\n ButtonProps & React.RefAttributes\n> & { displayName?: string }\n\nButton.displayName = \"Button\"\n\nexport { Button, buttonVariants }\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Fragment, useCallback } from \"react\"\nimport dynamic from \"next/dynamic\"\nimport { Slot } from \"@radix-ui/react-slot\"\n\nimport { cn } from \"@/lib/utils\"\nimport { useRipple } from \"@/registry/default/hooks/use-ripple\"\nimport {\n buttonVariants,\n buttonVariantsConfig,\n nexsaleButtonVariants,\n nexsaleButtonVariantsConfig,\n type ButtonProps,\n} from \"@/registry/default/lib/buttonUtils\"\n\nexport * from \"@/registry/default/lib/buttonUtils\"\n\nconst Ripple = dynamic(\n () => import(\"@/registry/default/ui/ripple\").then((mod) => mod.default),\n {\n ssr: false,\n }\n)\n\nconst Button = React.forwardRef(\n (\n {\n className,\n variant,\n size,\n bordered,\n nexsale = false,\n asChild = false,\n disableRipple = false,\n onClick,\n children,\n ...props\n },\n ref\n ) => {\n const { ripples, onClick: onRippleClickHandler, onClear } = useRipple()\n\n const handleClick = useCallback(\n (e: React.MouseEvent) => {\n onRippleClickHandler(e)\n onClick?.(e)\n },\n [onClick, onRippleClickHandler]\n )\n\n const getRippleProps = useCallback(\n () => ({ ripples, onClear }),\n [ripples, onClear]\n )\n\n const combinedClassName = cn(\n \"flex items-center justify-center p-0\",\n nexsale\n ? nexsaleButtonVariants({\n variant:\n variant as keyof typeof nexsaleButtonVariantsConfig.variants.variant,\n size: size as keyof typeof nexsaleButtonVariantsConfig.variants.size,\n bordered,\n className,\n })\n : buttonVariants({\n variant:\n variant as keyof typeof buttonVariantsConfig.variants.variant,\n size: size as keyof typeof buttonVariantsConfig.variants.size,\n className,\n })\n )\n\n const content = (\n \n {children}\n {!disableRipple && }\n \n )\n\n const Comp = asChild ? Slot : \"button\"\n return (\n \n {asChild ? children : content}\n \n )\n }\n) as React.ForwardRefExoticComponent<\n ButtonProps & React.RefAttributes\n> & {\n displayName?: string\n}\n\nButton.displayName = \"Button\"\n\nexport { Button, buttonVariants, nexsaleButtonVariants }\n", "type": "registry:ui", "target": "" } diff --git a/apps/www/public/r/styles/default/buttonUtils.json b/apps/www/public/r/styles/default/buttonUtils.json index d0d4ac62..39928168 100644 --- a/apps/www/public/r/styles/default/buttonUtils.json +++ b/apps/www/public/r/styles/default/buttonUtils.json @@ -1,10 +1,13 @@ { "name": "buttonUtils", "type": "registry:lib", + "dependencies": [ + "class-variance-authority" + ], "files": [ { "path": "lib/buttonUtils.ts", - "content": "import { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { buttonVariantsConfig } from \"./button-variants\"\n\nexport const buttonVariants = cva(\n buttonVariantsConfig.base,\n buttonVariantsConfig\n)\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes,\n VariantProps {\n asChild?: boolean\n disableRipple?: boolean\n}\n\nexport type { ButtonVariantProps } from \"./button-variants\"\n", + "content": "import { cva, type VariantProps } from \"class-variance-authority\"\n\nimport {\n buttonVariantsConfig,\n nexsaleButtonVariantsConfig,\n type ButtonVariantProps,\n type NexsaleButtonVariantProps,\n} from \"./button-variants\"\n\nexport const buttonVariants = cva(\n buttonVariantsConfig.base,\n buttonVariantsConfig\n)\nexport const nexsaleButtonVariants = cva(\n nexsaleButtonVariantsConfig.base,\n nexsaleButtonVariantsConfig\n)\n\ntype BaseButtonProps = {\n asChild?: boolean\n disableRipple?: boolean\n className?: string\n} & Omit, \"className\">\n\ntype DefaultButtonProps = BaseButtonProps &\n ButtonVariantProps & {\n nexsale?: false\n }\n\ntype NexsaleButtonProps = BaseButtonProps &\n NexsaleButtonVariantProps & {\n nexsale: true\n }\n\nexport type ButtonProps = DefaultButtonProps | NexsaleButtonProps\n\nexport type {\n ButtonVariantProps,\n NexsaleButtonVariantProps,\n} from \"./button-variants\"\n\nexport { buttonVariantsConfig, nexsaleButtonVariantsConfig }\n", "type": "registry:lib", "target": "" } diff --git a/apps/www/public/r/styles/default/buttonVariants.json b/apps/www/public/r/styles/default/buttonVariants.json index 75034b9d..bc0baf3c 100644 --- a/apps/www/public/r/styles/default/buttonVariants.json +++ b/apps/www/public/r/styles/default/buttonVariants.json @@ -7,13 +7,13 @@ "files": [ { "path": "lib/buttonUtils.ts", - "content": "import { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { buttonVariantsConfig } from \"./button-variants\"\n\nexport const buttonVariants = cva(\n buttonVariantsConfig.base,\n buttonVariantsConfig\n)\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes,\n VariantProps {\n asChild?: boolean\n disableRipple?: boolean\n}\n\nexport type { ButtonVariantProps } from \"./button-variants\"\n", + "content": "import { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { nexsaleButtonVariantsConfig } from \"@/registry/new-york/lib/button-variants\"\n\nimport {\n buttonVariantsConfig,\n type ButtonVariantProps,\n type NexsaleButtonVariantProps,\n} from \"./button-variants\"\n\nexport const buttonVariants = cva(\n buttonVariantsConfig.base,\n buttonVariantsConfig\n)\nexport const nexsaleButtonVariants = cva(\n nexsaleButtonVariantsConfig.base,\n nexsaleButtonVariantsConfig\n)\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes,\n VariantProps {\n asChild?: boolean\n nexsale?: boolean\n disableRipple?: boolean\n}\nexport interface NexsaleButtonProps\n extends React.ButtonHTMLAttributes,\n VariantProps {\n asChild?: boolean\n disableRipple?: boolean\n}\n\nexport type {\n ButtonVariantProps,\n NexsaleButtonVariantProps,\n} from \"./button-variants\"\n", "type": "registry:lib", "target": "" }, { "path": "lib/button-variants.ts", - "content": "export const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n nexsalePrimary: \"nexsale-btn primary\",\n nexsaleSecondary: \"nexsale-btn secondary\",\n nexsaleGhost: \"nexsale-btn ghost\",\n nexsaleAccent: \"nexsale-btn accent\",\n nexsaleSuccess: \"nexsale-btn success\",\n nexsaleWarning: \"nexsale-btn warning\",\n nexsaleInfo: \"nexsale-btn info\",\n nexsaleDestructive: \"nexsale-btn destructive\",\n nexsaleOutlined: \"nexsale-btn outlined\",\n nexsaleOutlinedPrimary: \"nexsale-btn outlined primary\",\n nexsaleOutlinedSecondary: \"nexsale-btn outlined secondary\",\n nexsaleOutlinedGhost: \"nexsale-btn outlined ghost\",\n nexsaleOutlinedAccent: \"nexsale-btn outlined accent\",\n nexsaleOutlinedSuccess: \"nexsale-btn outlined success\",\n nexsaleOutlinedWarning: \"nexsale-btn outlined warning\",\n nexsaleOutlinedInfo: \"nexsale-btn outlined info\",\n nexsaleOutlinedDestructive: \"nexsale-btn outlined destructive\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\n", + "content": "import { cn } from \"@/lib/utils\"\n\n// registry/default/lib/button-variants-base.ts\nexport const buttonVariantsConfig = {\n base: \"relative inline-flex place-content-center place-items-center content-center items-center justify-center gap-2 overflow-hidden whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_a]:inline-flex [&_a]:items-center [&_a]:justify-center [&_a]:gap-x-2 [&_a]:py-0 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary-hover\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive-hover\",\n toolbar:\n \"bg-[var(--gray-a3)] after:shadow-[var(--gray-a2)] after:bg-[var(--gray-6)] after:border-[var(--gray-a3)] hover:after:border-[var(--gray-a4)] text-[var(--gray-11)] hover:text-[var(--red-12)] ring-1 ring-inset ring-[var(--gray-a3)]\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"hover:bg-secondary-hover bg-secondary text-secondary-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n outlineFlows:\n \"after:shadow-[var(--violet-a4)] bg-transparent after:bg-[var(--violet-a4)] after:border-[var(--violet-a2)] hover:after:border-[var(--violet-a2)] stroke-[var(--violet-a9)] text-[var(--violet-a8)] hover:text-[var(--violet-a11)] fill-[var(--violet-a8)] ring-1 ring-inset ring-transparent\",\n outlineCodeblocks:\n \"after:shadow-[var(--green-a4)] bg-transparent after:bg-[var(--green-a4)] after:border-[var(--green-a2)] hover:after:border-[var(--green-a2)] stroke-[var(--green-a9)] text-[var(--green-a8)] hover:text-[var(--green-a11)] fill-[var(--green-a8)] ring-1 ring-inset ring-transparent\",\n outlineRepositories:\n \"after:shadow-[var(--orange-a4)] bg-transparent after:bg-[var(--orange-a4)] after:border-[var(--orange-a2)] hover:after:border-[var(--orange-a2)] stroke-[var(--orange-a9)] text-[var(--orange-a8)] hover:text-[var(--orange-a11)] fill-[var(--orange-a8)] ring-1 ring-inset ring-transparent\",\n outlineDocs:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineFigma:\n \"after:shadow-[var(--gray-a4)] bg-transparent after:bg-[var(--gray-a4)] after:border-[var(--gray-a2)] hover:after:border-[var(--gray-a2)] stroke-[var(--gray-a9)] text-[var(--gray-a8)] hover:text-[var(--gray-a21)] fill-[var(--gray-a8)] ring-1 ring-inset ring-transparent\",\n outlineShowcase:\n \"after:shadow-[var(--red-a4)] bg-transparent after:bg-[var(--red-a4)] after:border-[var(--red-a2)] hover:after:border-[var(--red-a2)] stroke-[var(--red-a9)] text-[var(--red-a8)] hover:text-[var(--red-a11)] fill-[var(--red-a8)] ring-1 ring-inset ring-transparent\",\n outlineProjects:\n \"after:shadow-[var(--indigo-a4)] bg-transparent after:bg-[var(--indigo-a4)] after:border-[var(--indigo-a2)] hover:after:border-[var(--indigo-a2)] stroke-[var(--indigo-a9)] text-[var(--indigo-a8)] hover:text-[var(--indigo-a11)] fill-[var(--indigo-a8)] ring-1 ring-inset ring-transparent\",\n outlineTechnology:\n \"after:shadow-[var(--mint-a4)] bg-transparent after:bg-[var(--mint-a4)] after:border-[var(--mint-a2)] hover:after:border-[var(--mint-a2)] stroke-[var(--mint-a9)] text-[var(--mint-a8)] hover:text-[var(--mint-a11)] fill-[var(--mint-a8)] ring-1 ring-inset ring-transparent\",\n metal:\n \"after:user-select-none before:user-select-none relative z-[1] overflow-hidden rounded-xl border border-accent-2 bg-accent-a2 font-semibold text-background ring ring-inset before:pointer-events-none before:absolute before:inset-auto before:z-[-1] before:size-[calc(100%-2px)] before:rounded-lg before:bg-gradient-to-br before:from-accent-10 before:to-accent-9 before:opacity-90 before:shadow-[0_0_1px_0px_var(--accent-4),inset_0_0_2px_1px_var(--accent-a3)] before:transition-all before:duration-500 before:ease-in-out after:pointer-events-none after:absolute after:inset-auto after:z-[-2] after:size-full after:rounded-lg after:bg-[linear-gradient(108deg,var(--accent-11)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-11)_76%),linear-gradient(169deg,var(--accent-10)_3%,var(--accent-a1)_33%,var(--accent-a1)_45%,var(--accent-5)_76%)] hover:before:opacity-100\",\n dashed:\n \"border border-dashed border-border text-foreground hover:bg-gray-a6\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n size: {\n default: \"h-8 rounded-md px-3 py-1.5 focus-visible:rounded-md\",\n sm: \"h-8 rounded-md px-3 focus-visible:rounded-md\",\n lg: \"h-10 rounded-md px-8 focus-visible:rounded-md\",\n menu: \"text-xs min-h-[32px] w-[32px] px-4 py-4 flex flex-col gap-1 items-center justify-center relative flex-nowrap w-auto rounded-[12px] hover:rounded-[12px] group-hover:rounded-[12px] after:absolute after:opacity-100 after:blur-none after:inset-0 after:border after:rounded-[12px] after:hover:rounded-[12px] after:group-hover:rounded-[12px] after:scale-0 hover:after:scale-100 after:z-[-1] after:w-full after:h-full after:object-center after:transition-all after:ease-in-out after:duration-300\",\n icon: \"max-h-8 size-8 rounded-md p-0 focus-visible:rounded-md [&_svg]:size-4\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\ntype NexsaleButtonConfig = {\n base: string\n variants: {\n variant: {\n default: string\n primary: string\n secondary: string\n ghost: string\n accent: string\n success: string\n warning: string\n info: string\n destructive: string\n link: string\n }\n outline: {\n true: string\n }\n size: {\n default: string\n sm: string\n icon: string\n }\n }\n compoundVariants: Array<{\n // Changed from readonly array to mutable\n variant: keyof NexsaleButtonConfig[\"variants\"][\"variant\"]\n outline: boolean\n className: string\n }>\n defaultVariants: {\n variant: keyof NexsaleButtonConfig[\"variants\"][\"variant\"]\n size: keyof NexsaleButtonConfig[\"variants\"][\"size\"]\n }\n}\n\n// registry/default/lib/button-variants-base.ts\nexport const nexsaleButtonVariantsConfig: NexsaleButtonConfig = {\n base: cn(\n \"select-none cursor-pointer z-[1] focus-within:ring-gray-a10 transition-all duration-300 ease-in-out motion-duration-300 overflow-hidden\",\n \"relative inline-flex items-center justify-center\",\n \"border-transparent shadow-md ring-1 ring-gray-a5\",\n \"hover:shadow-lg hover:before:animate-nexsale-btn\",\n \"active:shadow-lg active:duration-200\",\n \"disabled:bg-gray-a5 disabled:opacity-40\",\n \"after:absolute after:inset-0 after:shadow-[inset_0_0_2px_1px_var(--gray-a4)] hover:after:shadow-[inset_0_0_2px_1px_var(--gray-a5)] after:overflow-hidden\",\n \"before:opacity-0 hover:before:opacity-100 hover:before:duration-300 before:motion-duration-500\",\n \"before:absolute before:rounded-none before:inset-0 before:m-auto before:border-y before:blur-[2px] before:w-2 before:h-[calc(100%+3px)] before:origin-center\"\n ),\n variants: {\n variant: {\n default:\n \"bg-gray-a5 hover:bg-gray-a5 hover:ring-gray-a3 active:bg-gray-a5 active:ring-gray-a3 active:bg-gray-a4 before:border-gray-a12\",\n primary:\n \"bg-primary-a5 hover:bg-primary-a5 hover:ring-primary-a3 active:bg-primary-a5 active:ring-primary-a3 active:bg-primary-a4 before:border-primary-a12\",\n secondary:\n \"bg-ghost-aa5 hover:bg-ghost-aa5 hover:ring-ghost-aa3 active:bg-ghost-aa5 active:ring-ghost-aa3 active:bg-ghost-aa4 before:border-ghost-aa12\",\n ghost:\n \"bg-secondary-a5 hover:bg-secondary-a5 hover:ring-secondary-a3 active:bg-secondary-a5 active:ring-secondary-a3 active:bg-secondary-a4 before:border-secondary-a12\",\n accent:\n \"bg-accent-a5 hover:bg-accent-a5 hover:ring-accent-a3 active:bg-accent-a5 active:ring-accent-a3 active:bg-accent-a4 before:border-accent-a12\",\n destructive:\n \"bg-destructive-a5 hover:bg-destructive-a5 hover:ring-destructive-a3 active:bg-destructive-a5 active:ring-destructive-a3 active:bg-destructive-a4 before:border-destructive-a12\",\n success:\n \"bg-success-a5 hover:bg-success-a5 hover:ring-success-a3 active:bg-success-a5 active:ring-success-a3 active:bg-success-a4 before:border-success-a12\",\n warning:\n \"bg-warning-a5 hover:bg-warning-a5 hover:ring-warning-a3 active:bg-warning-a5 active:ring-warning-a3 active:bg-warning-a4 before:border-warning-a12\",\n info: \"bg-info-a5 hover:bg-info-a5 hover:ring-info-a3 active:bg-info-a5 active:ring-info-a3 active:bg-info-a4 before:border-info-a12\",\n link: \"selected:text-link-selected focus:text-link-focus text-link underline-offset-4 hover:text-link-hover hover:underline active:text-link-active disabled:text-link-disabled\",\n },\n outline: {\n true: \"\",\n },\n size: {\n default:\n \"border-none rounded-lg after:rounded-lg px-3 py-[calc(theme(spacing.2)-2px)] [&_svg]:stroke-[1.5px] [&_svg]:drop-shadow-md gap-x-2 [&_svg]:size-5\",\n sm: \"rounded-lg after:rounded-lg px-2.5 py-[calc(theme(spacing.2)-4px)] gap-x-2 [&_svg]:stroke-1 [&_svg]:drop-shadow-md [&_svg]:size-4 border-none\",\n icon: \"rounded-xl after:rounded-xl px-2 [&_svg]:stroke-1 [&_svg]:drop-shadow-md [&_svg]:size-4 border-none\",\n },\n },\n compoundVariants: [\n {\n variant: \"default\",\n outline: true,\n className:\n \"bg-gray-a1 hover:bg-gray-a2 hover:ring-ghost-aa2 active:bg-transparent active:ring-ghost-aa1 active:bg-transparent before:border-ghost-aa1\",\n },\n {\n variant: \"primary\",\n outline: true,\n className:\n \"bg-primary-a1 hover:bg-primary-a2 ring-primary-a5 hover:ring-primary-a6 active:bg-transparent active:ring-primary-a6 active:bg-transparent before:border-primary-a4\",\n },\n {\n variant: \"secondary\",\n outline: true,\n className:\n \"bg-secondary-a1 hover:bg-secondary-a2 ring-secondary-a5 hover:ring-secondary-a6 active:bg-transparent active:ring-secondary-a6 active:bg-transparent before:border-secondary-a4\",\n },\n {\n variant: \"ghost\",\n outline: true,\n className:\n \"bg-ghost-aa1 hover:bg-ghost-aa2 ring-ghost-aa5 hover:ring-ghost-aa6 active:bg-transparent active:ring-ghost-aa6 active:bg-transparent before:border-ghost-aa4\",\n },\n {\n variant: \"accent\",\n outline: true,\n className:\n \"bg-accent-a1 hover:bg-accent-a2 ring-accent-a5 hover:ring-accent-a6 active:bg-transparent active:ring-accent-a6 active:bg-transparent before:border-accent-a4\",\n },\n {\n variant: \"success\",\n outline: true,\n className:\n \"bg-success-a1 hover:bg-success-a2 ring-success-a5 hover:ring-success-a6 active:bg-transparent active:ring-success-a6 active:bg-transparent before:border-success-a4\",\n },\n {\n variant: \"warning\",\n outline: true,\n className:\n \"bg-warning-a1 hover:bg-warning-a2 ring-warning-a5 hover:ring-warning-a6 active:bg-transparent active:ring-warning-a6 active:bg-transparent before:border-warning-a4\",\n },\n {\n variant: \"info\",\n outline: true,\n className:\n \"bg-info-a1 hover:bg-info-a2 ring-info-a5 hover:ring-info-a6 active:bg-transparent active:ring-info-a6 active:bg-transparent before:border-info-a4\",\n },\n {\n variant: \"destructive\",\n outline: true,\n className:\n \"bg-destructive-a1 hover:bg-destructive-a2 ring-destructive-a5 hover:ring-destructive-a6 active:bg-transparent active:ring-destructive-a6 active:bg-transparent before:border-destructive-a4\",\n },\n ] as const,\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n} as const\n\nexport type ButtonVariantProps = {\n variant?: keyof typeof buttonVariantsConfig.variants.variant\n size?: keyof typeof buttonVariantsConfig.variants.size\n className?: string\n}\nexport type NexsaleButtonVariantProps = {\n variant?: keyof typeof nexsaleButtonVariantsConfig.variants.variant\n size?: keyof typeof nexsaleButtonVariantsConfig.variants.size\n outline?: boolean\n className?: string\n}\n", "type": "registry:lib", "target": "" } diff --git a/apps/www/public/r/styles/default/carousel-plugin.json b/apps/www/public/r/styles/default/carousel-plugin.json index 526fe872..1f26d128 100644 --- a/apps/www/public/r/styles/default/carousel-plugin.json +++ b/apps/www/public/r/styles/default/carousel-plugin.json @@ -7,7 +7,7 @@ "files": [ { "path": "examples/carousel-plugin.tsx", - "content": "import * as React from \"react\"\nimport Autoplay from \"embla-carousel-autoplay\"\n\nimport { Card, CardContent } from \"@/registry/default/ui/card\"\nimport {\n Carousel,\n CarouselContent,\n CarouselItem,\n CarouselNext,\n CarouselPrevious,\n} from \"@/registry/default/ui/carousel\"\n\nexport default function CarouselPlugin() {\n const plugin = React.useRef(\n Autoplay({ delay: 2000, stopOnInteraction: true })\n )\n\n return (\n \n \n {Array.from({ length: 5 }).map((_, index) => (\n \n
\n \n \n {index + 1}\n \n \n
\n
\n ))}\n
\n \n \n \n )\n}\n", + "content": "import * as React from \"react\"\nimport Autoplay from \"embla-carousel-autoplay\"\nimport useEmblaCarousel from \"embla-carousel-react\"\n\nimport { Card, CardContent } from \"@/registry/default/ui/card\"\nimport {\n Carousel,\n CarouselContent,\n CarouselItem,\n CarouselNext,\n CarouselPrevious,\n} from \"@/registry/default/ui/carousel\"\n\nexport default function CarouselPlugin() {\n const autoplay = React.useRef(\n Autoplay({ delay: 2000, stopOnInteraction: true })\n )\n\n const [emblaRef] = useEmblaCarousel({ loop: true }, [autoplay.current as any])\n\n const onMouseEnter = React.useCallback(() => {\n if (autoplay.current) autoplay.current.stop()\n }, [])\n\n const onMouseLeave = React.useCallback(() => {\n if (autoplay.current) autoplay.current.reset()\n }, [])\n const SLIDES = [\n { id: \"slide1\", number: 1 },\n { id: \"slide2\", number: 2 },\n { id: \"slide3\", number: 3 },\n { id: \"slide4\", number: 4 },\n { id: \"slide5\", number: 5 },\n ]\n return (\n \n \n {SLIDES.map((slide) => (\n \n
\n \n \n {slide.number}\n \n \n
\n
\n ))}\n
\n \n \n \n )\n}\n", "type": "registry:example", "target": "" } diff --git a/apps/www/public/r/styles/default/carousel.json b/apps/www/public/r/styles/default/carousel.json index d6fd613f..78c5824f 100644 --- a/apps/www/public/r/styles/default/carousel.json +++ b/apps/www/public/r/styles/default/carousel.json @@ -10,7 +10,7 @@ "files": [ { "path": "ui/carousel.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport useEmblaCarousel, {\n type UseEmblaCarouselType,\n} from \"embla-carousel-react\"\nimport { ArrowLeft, ArrowRight } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/default/ui/button\"\n\ntype CarouselApi = UseEmblaCarouselType[1]\ntype UseCarouselParameters = Parameters\ntype CarouselOptions = UseCarouselParameters[0]\ntype CarouselPlugin = UseCarouselParameters[1]\n\ntype CarouselProps = {\n opts?: CarouselOptions\n plugins?: CarouselPlugin\n orientation?: \"horizontal\" | \"vertical\"\n setApi?: (api: CarouselApi) => void\n}\n\ntype CarouselContextProps = {\n carouselRef: ReturnType[0]\n api: ReturnType[1]\n scrollPrev: () => void\n scrollNext: () => void\n canScrollPrev: boolean\n canScrollNext: boolean\n} & CarouselProps\n\nconst CarouselContext = React.createContext(null)\n\nfunction useCarousel() {\n const context = React.useContext(CarouselContext)\n\n if (!context) {\n throw new Error(\"useCarousel must be used within a \")\n }\n\n return context\n}\n\nconst Carousel = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes & CarouselProps\n>(\n (\n {\n orientation = \"horizontal\",\n opts,\n setApi,\n plugins,\n className,\n children,\n ...props\n },\n ref\n ) => {\n const [carouselRef, api] = useEmblaCarousel(\n {\n ...opts,\n axis: orientation === \"horizontal\" ? \"x\" : \"y\",\n },\n plugins\n )\n const [canScrollPrev, setCanScrollPrev] = React.useState(false)\n const [canScrollNext, setCanScrollNext] = React.useState(false)\n\n const onSelect = React.useCallback((api: CarouselApi) => {\n if (!api) {\n return\n }\n\n setCanScrollPrev(api.canScrollPrev())\n setCanScrollNext(api.canScrollNext())\n }, [])\n\n const scrollPrev = React.useCallback(() => {\n api?.scrollPrev()\n }, [api])\n\n const scrollNext = React.useCallback(() => {\n api?.scrollNext()\n }, [api])\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.key === \"ArrowLeft\") {\n event.preventDefault()\n scrollPrev()\n } else if (event.key === \"ArrowRight\") {\n event.preventDefault()\n scrollNext()\n }\n },\n [scrollPrev, scrollNext]\n )\n\n React.useEffect(() => {\n if (!api || !setApi) {\n return\n }\n\n setApi(api)\n }, [api, setApi])\n\n React.useEffect(() => {\n if (!api) {\n return\n }\n\n onSelect(api)\n api.on(\"reInit\", onSelect)\n api.on(\"select\", onSelect)\n\n return () => {\n api?.off(\"select\", onSelect)\n }\n }, [api, onSelect])\n\n return (\n \n \n {children}\n
\n \n )\n }\n)\nCarousel.displayName = \"Carousel\"\n\nconst CarouselContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes\n>(({ className, ...props }, ref) => {\n const { carouselRef, orientation } = useCarousel()\n\n return (\n
\n \n
\n )\n})\nCarouselContent.displayName = \"CarouselContent\"\n\nconst CarouselItem = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes\n>(({ className, ...props }, ref) => {\n const { orientation } = useCarousel()\n\n return (\n \n )\n})\nCarouselItem.displayName = \"CarouselItem\"\n\nconst CarouselPrevious = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps\n>(({ className, variant = \"outline\", size = \"icon\", ...props }, ref) => {\n const { orientation, scrollPrev, canScrollPrev } = useCarousel()\n\n return (\n \n \n Previous slide\n \n )\n})\nCarouselPrevious.displayName = \"CarouselPrevious\"\n\nconst CarouselNext = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps\n>(({ className, variant = \"outline\", size = \"icon\", ...props }, ref) => {\n const { orientation, scrollNext, canScrollNext } = useCarousel()\n\n return (\n \n \n Next slide\n \n )\n})\nCarouselNext.displayName = \"CarouselNext\"\n\nexport {\n type CarouselApi,\n Carousel,\n CarouselContent,\n CarouselItem,\n CarouselPrevious,\n CarouselNext,\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport useEmblaCarousel, {\n type UseEmblaCarouselType,\n} from \"embla-carousel-react\"\nimport { ArrowLeft, ArrowRight } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport { type ButtonVariantProps } from \"@/registry/default/lib/button-variants\"\nimport { Button } from \"@/registry/default/ui/button\"\n\ntype CarouselApi = UseEmblaCarouselType[1]\ntype UseCarouselParameters = Parameters\ntype CarouselOptions = UseCarouselParameters[0]\ntype CarouselPlugin = UseCarouselParameters[1]\n\ntype CarouselProps = {\n opts?: CarouselOptions\n plugins?: CarouselPlugin\n orientation?: \"horizontal\" | \"vertical\"\n setApi?: (api: CarouselApi) => void\n}\n\ntype CarouselContextProps = {\n carouselRef: ReturnType[0]\n api: ReturnType[1]\n scrollPrev: () => void\n scrollNext: () => void\n canScrollPrev: boolean\n canScrollNext: boolean\n} & CarouselProps\n\nconst CarouselContext = React.createContext(null)\n\nfunction useCarousel() {\n const context = React.useContext(CarouselContext)\n\n if (!context) {\n throw new Error(\"useCarousel must be used within a \")\n }\n\n return context\n}\n\nconst Carousel = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes & CarouselProps\n>(\n (\n {\n orientation = \"horizontal\",\n opts,\n setApi,\n plugins,\n className,\n children,\n ...props\n },\n ref\n ) => {\n const [carouselRef, api] = useEmblaCarousel(\n {\n ...opts,\n axis: orientation === \"horizontal\" ? \"x\" : \"y\",\n },\n plugins\n )\n const [canScrollPrev, setCanScrollPrev] = React.useState(false)\n const [canScrollNext, setCanScrollNext] = React.useState(false)\n\n const onSelect = React.useCallback((api: CarouselApi) => {\n if (!api) {\n return\n }\n\n setCanScrollPrev(api.canScrollPrev())\n setCanScrollNext(api.canScrollNext())\n }, [])\n\n const scrollPrev = React.useCallback(() => {\n api?.scrollPrev()\n }, [api])\n\n const scrollNext = React.useCallback(() => {\n api?.scrollNext()\n }, [api])\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.key === \"ArrowLeft\") {\n event.preventDefault()\n scrollPrev()\n } else if (event.key === \"ArrowRight\") {\n event.preventDefault()\n scrollNext()\n }\n },\n [scrollPrev, scrollNext]\n )\n\n React.useEffect(() => {\n if (!api || !setApi) {\n return\n }\n\n setApi(api)\n }, [api, setApi])\n\n React.useEffect(() => {\n if (!api) {\n return\n }\n\n onSelect(api)\n api.on(\"reInit\", onSelect)\n api.on(\"select\", onSelect)\n\n return () => {\n api?.off(\"select\", onSelect)\n }\n }, [api, onSelect])\n\n return (\n \n \n {children}\n
\n \n )\n }\n)\nCarousel.displayName = \"Carousel\"\n\nconst CarouselContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes\n>(({ className, ...props }, ref) => {\n const { carouselRef, orientation } = useCarousel()\n\n return (\n
\n \n
\n )\n})\nCarouselContent.displayName = \"CarouselContent\"\n\nconst CarouselItem = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes\n>(({ className, ...props }, ref) => {\n const { orientation } = useCarousel()\n\n return (\n \n )\n})\nCarouselItem.displayName = \"CarouselItem\"\n\nconst CarouselPrevious = React.forwardRef<\n HTMLButtonElement,\n ButtonVariantProps\n>(({ className, variant = \"outline\", size = \"icon\", ...props }, ref) => {\n const { orientation, scrollPrev, canScrollPrev } = useCarousel()\n\n return (\n \n \n Previous slide\n \n )\n})\nCarouselPrevious.displayName = \"CarouselPrevious\"\n\nconst CarouselNext = React.forwardRef(\n ({ className, variant = \"outline\", size = \"icon\", ...props }, ref) => {\n const { orientation, scrollNext, canScrollNext } = useCarousel()\n\n return (\n \n \n Next slide\n \n )\n }\n)\nCarouselNext.displayName = \"CarouselNext\"\n\nexport {\n type CarouselApi,\n Carousel,\n CarouselContent,\n CarouselItem,\n CarouselPrevious,\n CarouselNext,\n}\n", "type": "registry:ui", "target": "" } diff --git a/apps/www/public/r/styles/default/client-shuffle.json b/apps/www/public/r/styles/default/client-shuffle.json new file mode 100644 index 00000000..051c8a27 --- /dev/null +++ b/apps/www/public/r/styles/default/client-shuffle.json @@ -0,0 +1,12 @@ +{ + "name": "client-shuffle", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/client-shuffle.tsx", + "content": "\"use client\"\n\nimport React, { useEffect, useLayoutEffect, useRef, type FC } from \"react\"\nimport clsx from \"clsx\"\nimport { useInView } from \"framer-motion\"\n\nimport {\n CiscoLogo,\n CocaColaLogo,\n DominosLogo,\n EminemLogo,\n HellsAngelsLogo2,\n HmLogo,\n NexsaleLogo,\n RevolutionVodkaLogo,\n SamsungLogo,\n ShadyLogo,\n ToyotaLogo,\n TruwhipLogo,\n} from \"@/registry/logos\"\n\ntype Props = {\n className?: string\n}\n\nexport const ClientShuffle: FC = ({ className }) => {\n const ref = useRef(null)\n const inView = useInView(ref)\n\n const lastChangedIndex = React.useRef(0)\n\n const [randomIcons, setRandomIcons] = React.useState([])\n\n useLayoutEffect(() => {\n setRandomIcons(list.sort(() => 0.5 - Math.random()).slice(0, 6))\n }, [])\n\n useEffect(() => {\n let interval: NodeJS.Timeout\n // change one random icon in the list every X seconds.\n if (inView) {\n interval = setInterval(() => {\n setRandomIcons((prev) => {\n const { changedIndex, newList } = changeOneRandomIcon(\n prev,\n list,\n lastChangedIndex.current\n )\n lastChangedIndex.current = changedIndex\n return newList\n })\n }, 2000)\n }\n\n return () => clearInterval(interval)\n }, [randomIcons, inView])\n\n return (\n
\n \n \n Trusted by companies like\n

\n \n {randomIcons.map((item) => (\n \n \n {item.icon}\n
\n
\n ))}\n
\n
\n
\n )\n}\n\n// change only one random icon in the list\nconst changeOneRandomIcon = (\n currentList: IList,\n list: IList,\n lastChangedIndex: number\n): { newList: IList; changedIndex: number } => {\n const newList = [...currentList]\n\n // pick randomIndex from the current list\n let randomIndex = Math.floor(Math.random() * newList.length)\n // if the randomIndex is the same as the last changed index, pick another randomIndex\n while (randomIndex === lastChangedIndex) {\n randomIndex = Math.floor(Math.random() * newList.length)\n }\n\n // pick randomIcon from the list\n let randomIcon = list[Math.floor(Math.random() * list.length)]\n // check if the randomIcon is already in the current list\n let isExist = newList.find((item) => item.id === randomIcon.id)\n // if the randomIcon is already in the current list, pick another randomIcon\n while (isExist) {\n randomIcon = list[Math.floor(Math.random() * list.length)]\n isExist = newList.find((item) => item.id === randomIcon.id)\n }\n\n // change the randomIcon in the current list\n newList[randomIndex] = randomIcon\n\n return { newList, changedIndex: randomIndex }\n}\n\ntype IList = {\n icon: React.ReactNode\n id: number\n}[]\n\nconst list: IList = [\n {\n icon: ,\n id: 1,\n },\n {\n icon: (\n \n ),\n id: 2,\n },\n {\n icon: (\n \n ),\n id: 3,\n },\n {\n icon: ,\n id: 4,\n },\n {\n icon: ,\n id: 8,\n },\n {\n icon: ,\n id: 9,\n },\n {\n icon: ,\n id: 10,\n },\n {\n icon: ,\n id: 11,\n },\n {\n icon: ,\n id: 12,\n },\n {\n icon: (\n \n ),\n id: 13,\n },\n]\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/config-theme-switcher.json b/apps/www/public/r/styles/default/config-theme-switcher.json new file mode 100644 index 00000000..11b87471 --- /dev/null +++ b/apps/www/public/r/styles/default/config-theme-switcher.json @@ -0,0 +1,12 @@ +{ + "name": "config-theme-switcher", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/config-theme-switcher.tsx", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Circle } from \"lucide-react\"\n\nimport {\n META_PRODKT_THEMES,\n META_THEMES,\n META_THEME_COLORS,\n siteConfig,\n} from \"@/config/site\"\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"@/registry/default/ui/command\"\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/registry/default/ui/popover\"\n\ntype Theme = {\n value: string\n label: string\n name?: string\n primaryColor?: string\n grayColor?: string\n secondaryColor?: string\n accentColor?: string\n}\n\ntype ProdktThemes = (typeof META_PRODKT_THEMES)[0]\nconst prodktThemes: ProdktThemes[] = [...META_PRODKT_THEMES]\n\nconst radixColors = [\n {\n value: \"amber\",\n label: \"Amber\",\n },\n {\n value: \"blue\",\n label: \"Blue\",\n },\n {\n value: \"bronze\",\n label: \"Bronze\",\n },\n {\n value: \"brown\",\n label: \"Brown\",\n },\n {\n value: \"crimson\",\n label: \"Crimson\",\n },\n {\n value: \"cyan\",\n label: \"Cyan\",\n },\n {\n value: \"gold\",\n label: \"Gold\",\n },\n {\n value: \"grass\",\n label: \"Grass\",\n },\n {\n value: \"green\",\n label: \"Green\",\n },\n {\n value: \"indigo\",\n label: \"Indigo\",\n },\n {\n value: \"iris\",\n label: \"Iris\",\n },\n {\n value: \"jade\",\n label: \"Jade\",\n },\n {\n value: \"lime\",\n label: \"Lime\",\n },\n {\n value: \"mint\",\n label: \"Mint\",\n },\n {\n value: \"orange\",\n label: \"Orange\",\n },\n {\n value: \"pink\",\n label: \"Pink\",\n },\n {\n value: \"plum\",\n label: \"Plum\",\n },\n {\n value: \"purple\",\n label: \"Purple\",\n },\n {\n value: \"red\",\n label: \"Red\",\n },\n {\n value: \"ruby\",\n label: \"Ruby\",\n },\n {\n value: \"sky\",\n label: \"Sky\",\n },\n {\n value: \"teal\",\n label: \"Teal\",\n },\n {\n value: \"tomato\",\n label: \"Tomato\",\n },\n {\n value: \"violet\",\n label: \"Violet\",\n },\n {\n value: \"yellow\",\n label: \"Yellow\",\n },\n]\n\nconst radixGrayColors = [\n {\n value: \"gray\",\n label: \"Gray\",\n },\n {\n value: \"mauve\",\n label: \"Mauve\",\n },\n {\n value: \"slate\",\n label: \"Slate\",\n },\n {\n value: \"sage\",\n label: \"Sage\",\n },\n {\n value: \"olive\",\n label: \"Olive\",\n },\n {\n value: \"sand\",\n label: \"Sand\",\n },\n]\n\n// Mapping from primary colors to gray colors\nconst grayColorMapping: Record = {\n // mauve group\n tomato: \"mauve\",\n red: \"mauve\",\n ruby: \"mauve\",\n crimson: \"mauve\",\n pink: \"mauve\",\n plum: \"mauve\",\n purple: \"mauve\",\n violet: \"mauve\",\n // slate group\n iris: \"slate\",\n indigo: \"slate\",\n blue: \"slate\",\n sky: \"slate\",\n cyan: \"slate\",\n // sage group\n mint: \"sage\",\n teal: \"sage\",\n jade: \"sage\",\n green: \"sage\",\n // olive group\n grass: \"olive\",\n lime: \"olive\",\n // sand group\n gold: \"sand\",\n yellow: \"sand\",\n amber: \"sand\",\n orange: \"sand\",\n brown: \"sand\",\n}\n\nconst secondaryColorMapping: Record = {\n // mauve group\n tomato: \"mauve\",\n red: \"mauve\",\n ruby: \"mauve\",\n crimson: \"mauve\",\n pink: \"mauve\",\n plum: \"mauve\",\n purple: \"mauve\",\n violet: \"mauve\",\n // slate group\n iris: \"slate\",\n indigo: \"slate\",\n blue: \"slate\",\n sky: \"slate\",\n cyan: \"slate\",\n // sage group\n mint: \"sage\",\n teal: \"sage\",\n jade: \"sage\",\n green: \"sage\",\n // olive group\n grass: \"olive\",\n lime: \"olive\",\n // sand group\n gold: \"sand\",\n yellow: \"sand\",\n amber: \"sand\",\n orange: \"sand\",\n brown: \"sand\",\n}\n\nconst accentColorMapping: Record = {\n // mauve group\n tomato: \"mauve\",\n red: \"mauve\",\n ruby: \"mauve\",\n crimson: \"mauve\",\n pink: \"mauve\",\n plum: \"mauve\",\n purple: \"mauve\",\n violet: \"mauve\",\n // slate group\n iris: \"slate\",\n indigo: \"slate\",\n blue: \"slate\",\n sky: \"slate\",\n cyan: \"slate\",\n // sage group\n mint: \"sage\",\n teal: \"sage\",\n jade: \"sage\",\n green: \"sage\",\n // olive group\n grass: \"olive\",\n lime: \"olive\",\n // sand group\n gold: \"sand\",\n yellow: \"sand\",\n amber: \"sand\",\n orange: \"sand\",\n brown: \"sand\",\n}\n\n// export type ProdktTheme = META_THEMES\n// interface ProdktViewport extends Viewport {\n// themeColor: string\n// defaultMode: string\n// theme: ProdktTheme\n// }\n// export const prodktViewport: ProdktViewport = {\n// themeColor: META_THEME_COLORS.dark,\n// defaultMode:\n// META_PRODKT_THEMES.find((theme) => theme.name === \"default\")?.defaultMode ||\n// \"system\",\n// theme: META_PRODKT_THEMES.find((theme) => theme.name === \"default\") || {\n// name:\n// META_PRODKT_THEMES.find((theme) => theme.name === \"default\")?.name ||\n// \"default\",\n// defaultMode:\n// META_PRODKT_THEMES.find((theme) => theme.name === \"default\")\n// ?.defaultMode || \"system\",\n// primaryColor:\n// META_PRODKT_THEMES.find((theme) => theme.name === \"default\")\n// ?.primaryColor || \"lime\",\n// accentColor:\n// META_PRODKT_THEMES.find((theme) => theme.name === \"default\")\n// ?.accentColor || \"ghost\",\n// secondaryColor:\n// META_PRODKT_THEMES.find((theme) => theme.name === \"default\")\n// ?.secondaryColor || \"mint\",\n// grayColor:\n// META_PRODKT_THEMES.find((theme) => theme.name === \"default\")?.grayColor ||\n// \"olive\",\n// },\n// }\n\nexport function ConfigThemeSwitcher() {\n const [mounted, setMounted] = React.useState(false)\n const [open, setOpen] = React.useState(false)\n const [selectedTheme, setSelectedTheme] = React.useState(\n null\n )\n const [selectedGray, setSelectedGray] = React.useState(\n null\n )\n const [selectedSecondary, setSelectedSecondary] =\n React.useState(null)\n const [selectedAccent, setSelectedAccent] =\n React.useState(null)\n // const [selectedGray, setSelectedGray] = React.useState(\"mauve\")\n // const [selectedSecondary, setSelectedSecondary] = React.useState(\"violet\")\n // const [selectedAccent, setSelectedAccent] = React.useState(\"violet\")\n\n const setThemeCookie = (value: string) => {\n document.cookie = `primary-color=${prodktThemes.find((theme) => theme.name === value)?.primaryColor};path=/;max-age=31536000` // 1 year expiry\n localStorage.setItem(\n \"primary-color\",\n prodktThemes.find((theme) => theme.name === value)?.primaryColor || \"lime\"\n )\n document.documentElement.setAttribute(\n \"data-primary-color\",\n prodktThemes.find((theme) => theme.name === value)?.primaryColor || \"lime\"\n )\n\n // Set the corresponding gray color based on the mapping\n const mappedGray = prodktThemes.find(\n (theme) => theme.name === value\n )?.grayColor\n if (mappedGray) {\n document.cookie = `gray-color=${mappedGray};path=/;max-age=31536000`\n localStorage.setItem(\"gray-color\", mappedGray)\n document.documentElement.setAttribute(\"data-gray-color\", mappedGray)\n }\n\n const mappedSecondary = prodktThemes.find(\n (theme) => theme.name === value\n )?.secondaryColor\n if (mappedSecondary) {\n document.cookie = `secondary-color=${mappedSecondary};path=/;max-age=31536000`\n localStorage.setItem(\"secondary-color\", mappedSecondary)\n document.documentElement.setAttribute(\n \"data-secondary-color\",\n mappedSecondary\n )\n }\n\n const mappedAccent = prodktThemes.find(\n (theme) => theme.name === value\n )?.accentColor\n if (mappedAccent) {\n document.cookie = `accent-color=${mappedAccent};path=/;max-age=31536000`\n localStorage.setItem(\"accent-color\", mappedAccent)\n document.documentElement.setAttribute(\"data-accent-color\", mappedAccent)\n }\n }\n\n const [theme, setThemeState] = React.useState(null)\n const [gray, setGrayState] = React.useState(null)\n const [secondary, setSecondaryState] = React.useState(\n null\n )\n const [accent, setAccentState] = React.useState(null)\n\n React.useEffect(() => {\n setMounted(true)\n }, [])\n\n React.useEffect(() => {\n const storedTheme = localStorage.getItem(\"primary-color\")\n const foundTheme =\n prodktThemes.find((theme) => theme.name === storedTheme) ||\n prodktThemes[0]\n\n setSelectedTheme(foundTheme)\n setThemeState(foundTheme)\n setGrayState(foundTheme)\n setSecondaryState(foundTheme)\n setAccentState(foundTheme)\n\n setThemeCookie(foundTheme.name)\n }, [])\n\n return (\n
\n \n \n \n {selectedTheme ? (\n <>\n \n {selectedTheme.name}\n \n ) : (\n <>\n Set theme\n \n )}\n \n \n \n \n \n \n No results found.\n _div]:grid [&>_div]:w-full [&>_div]:grid-flow-row [&>_div]:grid-cols-2 [&>_div]:gap-1`}\n >\n {prodktThemes.map((theme) => (\n {\n const selectedTheme =\n prodktThemes.find((theme) => theme.name === value) ||\n null\n setSelectedTheme(selectedTheme)\n setThemeState(selectedTheme)\n setThemeCookie(value)\n setOpen(false)\n }}\n style={{\n border: `1px solid var(--${theme.primaryColor}-4)`,\n backgroundColor: `var(--${theme.primaryColor}-1)`,\n }}\n className={`after:bg-[var(-- relative bg-inherit after:absolute after:inset-0 after:z-10${theme.primaryColor}-4)] max-w-1/2 flex w-auto shrink grow-0 basis-1/2 flex-col items-start justify-start gap-1 px-3 py-2 after:opacity-0 after:transition-opacity after:duration-300 after:ease-in-out hover:after:opacity-100 `}\n >\n
\n \n \n \n
\n {theme.name}\n \n ))}\n \n
\n
\n
\n
\n
\n )\n}\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/creative-tab-slider.json b/apps/www/public/r/styles/default/creative-tab-slider.json new file mode 100644 index 00000000..89e1ab49 --- /dev/null +++ b/apps/www/public/r/styles/default/creative-tab-slider.json @@ -0,0 +1,12 @@ +{ + "name": "creative-tab-slider", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/creative-tab-slider.tsx", + "content": "\"use client\"\n\nimport React, { useEffect, useRef, useState, type FC } from \"react\"\nimport clsx from \"clsx\"\nimport { AnimatePresence, motion, useInView } from \"framer-motion\"\nimport {\n Fingerprint as AuthenticationIcon,\n BarChart as ChartsIcon,\n PenIcon as DataTablesIcon,\n Table as FormsIcon,\n List as ListIcon,\n Award as WizardsIcon,\n} from \"lucide-react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\n\ntype Props = {\n className?: string\n}\n\nexport const CreativeTabSlider: FC = ({ className }) => {\n const ref = useRef(null)\n const inView = useInView(ref)\n\n const [activeIndex, setActiveIndex] = useState(0)\n const activeListItem = list[activeIndex]\n\n const [shouldIncrement, setShouldIncrement] = useState(true)\n\n useEffect(() => {\n if (!shouldIncrement) {\n return\n }\n\n let interval: NodeJS.Timeout\n if (inView) {\n interval = setInterval(() => {\n setActiveIndex((prev) => (prev + 1) % list.length)\n }, 3000)\n }\n\n return () => clearInterval(interval)\n }, [shouldIncrement, inView])\n\n return (\n
\n
\n \n I love{\" \"}\n \n bleeding edge\n {\" \"}\n technology. Anything between low-code and full-code to design\n primitives and complete design systems.\n \n \n In my exploration I've started crafting and coding my own tools to\n make the learning process more efficient and always have an outcome.\n

\n
\n\n
\n \n \n \n \n \n \n \n {activeListItem.title}\n \n

\n {activeListItem.description}\n

\n \n {list.map((item, index) => {\n const active = index === activeIndex\n const Icon = item.icon\n\n return (\n {\n setShouldIncrement(false)\n setActiveIndex(index)\n }}\n className={clsx(\n \"appearance-none shadow-[0_-2px_10px_-1px_var(--gray-a3),inset_0_-2px_1px_-1px_var(--gray-1)] !bg-gray-1 border-gray-a5 outline-offset-4 outline outline-1 outline-transparent transition-all duration-100\",\n \"focus:outline-none\",\n \"cursor-pointer\",\n \"mr-auto\",\n active\n ? \" shadow-[inset_0_-2px_10px_-1px_var(--gray-1),inset_0_-14px_24px_-24px_var(--gray-a2)] !bg-gray-a2 border-gray-a4 ring-1 ring-gray-a7 border-solid outline-offset-2 !outline-gray-a2 outline outline-2\"\n : \"bg-gray-a2\",\n\n \"w-max\"\n )}\n >\n
\n \n
\n
\n {item.iconText}\n
\n \n )\n })}\n
\n
\n \n \n {list.map((item, index) => {\n const active = index === activeIndex\n\n return (\n \n \n
\n )\n })}\n
\n\n {list.map((item, index) => {\n const active = index === activeIndex\n\n return (\n \n \n
\n )\n })}\n
\n
\n
\n \n \n )\n}\n\nconst list = [\n {\n title:\n \"Business applications not only share fundamental UI elements, but also the underlying logic.\",\n description: `Stop writing repetitive code for CRUD, security and\n state management. Let Refine automatically transform\n your UI elements to enterprise-grade:`,\n icon: (props: { active: boolean }) => (\n \n ),\n iconText: \"Tables\",\n image1Dark: \"/sparkstack/prodktCraft_appScreenshot_2.avif\",\n image2Dark: \"/sparkstack/prodktCraft_appScreenshot_3.avif\",\n backgroundImage:\n \"dark:bg-creative-tab-slider-glow-cyan-dark bg-creative-tab-slider-glow-cyan-light\",\n },\n {\n title:\n \"Business applications not only share fundamental UI elements, but also the underlying logic.\",\n description: `Stop writing repetitive code for CRUD, security and\n state management. Let Refine automatically transform\n your UI elements to enterprise-grade:`,\n icon: (props: { active: boolean }) => (\n \n ),\n iconText: \"List\",\n image1Dark: \"/sparkstack/prodktCraft_appScreenshot_4.avif\",\n image2Dark: \"/sparkstack/prodktCraft_appScreenshot_6.avif\",\n backgroundImage:\n \"dark:bg-creative-tab-slider-glow-orange-dark bg-creative-tab-slider-glow-orange-light\",\n },\n {\n title:\n \"Business applications not only share fundamental UI elements, but also the underlying logic.\",\n description: `Stop writing repetitive code for CRUD, security and\nstate management. Let Refine automatically transform\nyour UI elements to enterprise-grade:`,\n icon: (props: { active: boolean }) => (\n \n ),\n iconText: \"Charts\",\n image1Dark: \"/sparkstack/prodktCraft_appScreenshot_2.avif\",\n image2Dark: \"/sparkstack/prodktCraft_appScreenshot_3.avif\",\n backgroundImage:\n \"dark:bg-creative-tab-slider-glow-yellow-dark bg-creative-tab-slider-glow-yellow-light\",\n },\n {\n title:\n \"Business applications not only share fundamental UI elements, but also the underlying logic.\",\n description: `Stop writing repetitive code for CRUD, security and\n state management. Let Refine automatically transform\n your UI elements to enterprise-grade:`,\n icon: (props: { active: boolean }) => (\n \n ),\n iconText: \"Forms\",\n image1Dark: \"/sparkstack/prodktCraft_appScreenshot_2.avif\",\n image2Dark: \"/sparkstack/prodktCraft_appScreenshot_3.avif\",\n backgroundImage:\n \"dark:bg-creative-tab-slider-glow-cyan-dark bg-creative-tab-slider-glow-cyan-light\",\n },\n {\n title:\n \"Business applications not only share fundamental UI elements, but also the underlying logic.\",\n description: `Stop writing repetitive code for CRUD, security and\n state management. Let Refine automatically transform\n your UI elements to enterprise-grade:`,\n icon: (props: { active: boolean }) => (\n \n ),\n iconText: \"Wizards\",\n image1Dark: \"/sparkstack/prodktCraft_appScreenshot_2.avif\",\n image2Dark: \"/sparkstack/prodktCraft_appScreenshot_3.avif\",\n backgroundImage:\n \"dark:bg-creative-tab-slider-glow-blue-dark bg-creative-tab-slider-glow-blue-light\",\n },\n {\n title:\n \"Business applications not only share fundamental UI elements, but also the underlying logic.\",\n description: `Stop writing repetitive code for CRUD, security and\n state management. Let Refine automatically transform\n your UI elements to enterprise-grade:`,\n icon: (props: { active: boolean }) => (\n \n ),\n iconText: \"Auth\",\n image1Dark: \"/sparkstack/prodktCraft_appScreenshot_2.avif\",\n image2Dark: \"/sparkstack/prodktCraft_appScreenshot_3.avif\",\n backgroundImage:\n \"dark:bg-creative-tab-slider-glow-indigo-dark bg-creative-tab-slider-glow-indigo-light\",\n },\n]\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/designer-marks-button.json b/apps/www/public/r/styles/default/designer-marks-button.json new file mode 100644 index 00000000..af08decd --- /dev/null +++ b/apps/www/public/r/styles/default/designer-marks-button.json @@ -0,0 +1,12 @@ +{ + "name": "designer-marks-button", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/designer-marks-button.tsx", + "content": "import { forwardRef } from \"react\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/default/ui/button\"\n\nexport const DesignerMarksButton = forwardRef<\n HTMLButtonElement,\n React.ComponentProps\n>(function DesignerMarksButtonComponent(\n { className, children, ...props },\n ref\n) {\n return (\n //
\n
\n \n {children}\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n )\n})\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/designer-marks.json b/apps/www/public/r/styles/default/designer-marks.json new file mode 100644 index 00000000..113bd256 --- /dev/null +++ b/apps/www/public/r/styles/default/designer-marks.json @@ -0,0 +1,12 @@ +{ + "name": "designer-marks", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/designer-marks.tsx", + "content": "import React from \"react\"\n\n/**\n *\n * @param root0\n * @param root0.hideRight\n */\nconst DesignerMarks = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes & {\n hideRight?: boolean\n hideMiddle?: boolean\n hideLeft?: boolean\n children?: React.ReactNode\n }\n>(({ hideLeft, hideMiddle, hideRight, children, ...props }, ref) => (\n <>\n
\n
\n {hideMiddle ? (\n \"\"\n ) : (\n <>\n \n
\n )\n}\n\nconst PackageItem = (props: {\n icon: ReactNode\n label: string\n tooltip: string | null\n}) => {\n const { tooltip, icon, label } = props\n\n return (\n \n
{icon}
\n \n {label}\n
\n\n {tooltip && (\n \n \n {tooltip}\n
\n\n \n \n \n
\n )}\n
\n )\n}\n\nconst list = [\n {\n icon: (props: SVGProps) => ,\n label: \"AWS Cognito\",\n tooltip: null,\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Auth0\",\n tooltip: null,\n },\n {\n icon: (props: SVGProps) => (\n \n ),\n label: \"Azure Active Directory\",\n tooltip: null,\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Okta\",\n tooltip: null,\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Clerk\",\n tooltip: null,\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Atlassian\",\n tooltip: null,\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Google Auth\",\n tooltip: null,\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Auth.js\",\n tooltip: null,\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Expo\",\n tooltip: null,\n },\n] as const\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/marquee.json b/apps/www/public/r/styles/default/marquee.json index ee61267a..ce807e24 100644 --- a/apps/www/public/r/styles/default/marquee.json +++ b/apps/www/public/r/styles/default/marquee.json @@ -1,6 +1,9 @@ { "name": "marquee", "type": "registry:effect", + "registryDependencies": [ + "utils" + ], "files": [ { "path": "effects/marquee.tsx", diff --git a/apps/www/public/r/styles/default/onboarding-guide.json b/apps/www/public/r/styles/default/onboarding-guide.json new file mode 100644 index 00000000..378412b6 --- /dev/null +++ b/apps/www/public/r/styles/default/onboarding-guide.json @@ -0,0 +1,12 @@ +{ + "name": "onboarding-guide", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/assets/onboarding-guide.tsx", + "content": "import * as React from \"react\"\nimport { SVGProps } from \"react\"\n\nexport const OnboardingGuideShortcuts = (props: SVGProps) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n)\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/packages-marquee.json b/apps/www/public/r/styles/default/packages-marquee.json new file mode 100644 index 00000000..5895bd24 --- /dev/null +++ b/apps/www/public/r/styles/default/packages-marquee.json @@ -0,0 +1,12 @@ +{ + "name": "packages-marquee", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/packages-marquee.tsx", + "content": "\"use client\"\n\nimport type React from \"react\"\nimport {\n useRef,\n type DetailedHTMLProps,\n type FC,\n type ReactNode,\n type SVGProps,\n} from \"react\"\nimport clsx from \"clsx\"\nimport { useInView } from \"framer-motion\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n AblyLogomark,\n AirtableLogomark,\n AntdLogomark,\n AppwriteLogomark,\n ChakraLogomark,\n DirectusLogomark,\n ElideGraphqlLogomark,\n ElideLogomark,\n FirebaseLogomark,\n GraphqlLogomark,\n HasuraLogomark,\n HeadlessLogomark,\n HookFormLogomark,\n HygraphLogomark,\n JSONApiLogomark,\n KbarLogomark,\n MantineLogomark,\n MedusaLogomark,\n MuiLogomark,\n NestLogomark,\n NestQueryLogomark,\n NextjsLogomark,\n RestLogomark,\n SQLiteLogomark,\n SanityLogomark,\n ShadCnUILogomark,\n StrapiLogomark,\n SupabaseLogomark,\n TailwindCssLogomark,\n} from \"@/registry/logos\"\n\ntype Props = {\n className?: string\n}\n\nexport const PackagesMarquee: FC = ({ className }) => {\n return (\n
\n
\n \n Start{\" \"}\n \n faster\n \n , maintain{\" \"}\n \n easier\n \n , manage{\" \"}\n \n complexity\n \n .\n \n
\n\n \n \n \n {[...listOne, ...listOne].map(\n ({ icon: Icon, label, tooltip }, index) => (\n }\n />\n )\n )}\n \n \n {[...listTwo, ...listTwo].map(\n ({ icon: Icon, label, tooltip }, index) => (\n }\n />\n )\n )}\n \n
\n\n \n \n Vast platform experience\n \n \n \n I dig exploring new technologies and building products with them.\n

\n \n
\n
\n \n \n )\n}\n\nconst PackagesContainer = ({\n children,\n className,\n animDirection,\n ...props\n}: DetailedHTMLProps, HTMLDivElement> & {\n animDirection: \"left\" | \"right\"\n}) => {\n const ref = useRef(null)\n const inView = useInView(ref)\n\n return (\n \n \n {children}\n \n \n )\n}\n\nconst PackageItem = (props: {\n icon: ReactNode\n label: string\n tooltip: string\n}) => {\n const { tooltip, icon, label } = props\n\n return (\n \n
{icon}
\n \n {label}\n \n\n \n \n {tooltip}\n \n\n \n \n \n \n \n )\n}\n\nconst listOne = [\n {\n icon: (props: SVGProps) => ,\n label: \"Firebase\",\n tooltip: \"npm i refine-firebase\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Ably\",\n tooltip: \"npm i @prodkt/ably\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Airtable\",\n tooltip: \"npm i @prodkt/airtable\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Appwrite\",\n tooltip: \"npm i @prodkt/appwrite\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Directus\",\n tooltip: \"npm i @tspvivek/refine-directus\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Elide\",\n tooltip: \"npm i elide-simple-rest\",\n },\n {\n icon: (props: SVGProps) => (\n \n ),\n label: \"Elide GraphQL\",\n tooltip: \"npm i elide-simple-graphql\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Hasura\",\n tooltip: \"npm i @prodkt/hasura\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Hook Form\",\n tooltip: \"npm i @prodkt/react-hook-form\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Ant Design\",\n tooltip: \"npm i @prodkt/antd\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Material UI\",\n tooltip: \"npm i @prodkt/mui\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Mantine\",\n tooltip: \"npm i @prodkt/mantine\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Chakra UI\",\n tooltip: \"npm i @prodkt/chakra-ui\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"shadcn/ui\",\n tooltip: \"npx sparkstack-ui init\",\n },\n {\n icon: (props: SVGProps) => (\n \n ),\n label: \"Tailwind CSS\",\n tooltip: \"npx tailwindcss init\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Headless UI\",\n tooltip: \"npm i @headlessui/react\",\n },\n]\n\nconst listTwo = [\n {\n icon: (props: SVGProps) => ,\n label: \"GraphQL\",\n tooltip: \"npm i @prodkt/graphql\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Kbar\",\n tooltip: \"npm i @prodkt/kbar\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Medusa\",\n tooltip: \"npm i @prodkt/medusa\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"NestJS CRUD\",\n tooltip: \"npm i @prodkt/nestjsx-crud\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Nestjs-query\",\n tooltip: \"npm i @prodkt/nestjs-query\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Next.js\",\n tooltip: \"npm i @prodkt/nextjs-router\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"REST\",\n tooltip: \"npm i @prodkt/simple-rest\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Strapi\",\n tooltip: \"npm i @prodkt/strapi-v4\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Supabase\",\n tooltip: \"npm i @prodkt/supabase\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Hygraph\",\n tooltip: \"npm i @acomagu/refine-hygraph\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"Sanity\",\n tooltip: \"npm i refine-sanity\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"SQLite\",\n tooltip: \"npm i refine-sqlite\",\n },\n {\n icon: (props: SVGProps) => ,\n label: \"JSON:API\",\n tooltip: \"npm i refine-jsonapi\",\n },\n]\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/planfoundry-collapsed-sidebar.json b/apps/www/public/r/styles/default/planfoundry-collapsed-sidebar.json new file mode 100644 index 00000000..855b90c2 --- /dev/null +++ b/apps/www/public/r/styles/default/planfoundry-collapsed-sidebar.json @@ -0,0 +1,12 @@ +{ + "name": "planfoundry-collapsed-sidebar", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/assets/planfoundry-collapsed-sidebar.tsx", + "content": "import * as React from \"react\"\nimport { SVGProps } from \"react\"\n\nexport const PlanFoundryCollapsedSidebar = (props: SVGProps) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n)\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/planfoundry-sidebar.json b/apps/www/public/r/styles/default/planfoundry-sidebar.json new file mode 100644 index 00000000..5f3708cd --- /dev/null +++ b/apps/www/public/r/styles/default/planfoundry-sidebar.json @@ -0,0 +1,12 @@ +{ + "name": "planfoundry-sidebar", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/assets/planfoundry-sidebar.tsx", + "content": "import * as React from \"react\"\nimport { SVGProps } from \"react\"\n\nexport const PlanFoundrySidebar = (props: SVGProps) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n)\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/prodkt-mode-toggle.json b/apps/www/public/r/styles/default/prodkt-mode-toggle.json new file mode 100644 index 00000000..82ed2a11 --- /dev/null +++ b/apps/www/public/r/styles/default/prodkt-mode-toggle.json @@ -0,0 +1,12 @@ +{ + "name": "prodkt-mode-toggle", + "type": "registry:prodkt", + "files": [ + { + "path": "prodkt/prodkt-mode-toggle.tsx", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Moon, Sun } from \"lucide-react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\n\nexport function ProdktModeToggle() {\n const [theme, setThemeState] = React.useState<\"light\" | \"dark\" | \"system\">(\n () => {\n if (typeof window === \"undefined\") return \"system\"\n return (\n (localStorage.getItem(\"theme\") as \"light\" | \"dark\" | \"system\") ||\n \"system\"\n )\n }\n )\n\n const getEffectiveTheme = (newTheme: \"light\" | \"dark\" | \"system\") => {\n if (newTheme === \"system\") {\n return window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n ? \"dark\"\n : \"light\"\n }\n return newTheme\n }\n\n const updateTheme = (newTheme: \"light\" | \"dark\" | \"system\") => {\n if (typeof window !== \"undefined\") {\n const effectiveTheme = getEffectiveTheme(newTheme)\n\n // Update state and storage\n setThemeState(newTheme)\n localStorage.setItem(\"theme\", newTheme)\n\n // Update DOM\n document.documentElement.classList.remove(\"light\", \"dark\")\n document.documentElement.classList.add(effectiveTheme)\n document.documentElement.setAttribute(\"data-theme\", effectiveTheme)\n }\n }\n\n // Listen for system theme changes\n React.useEffect(() => {\n if (theme === \"system\") {\n const mediaQuery = window.matchMedia(\"(prefers-color-scheme: dark)\")\n const handleChange = () => {\n const effectiveTheme = getEffectiveTheme(\"system\")\n document.documentElement.classList.remove(\"light\", \"dark\")\n document.documentElement.classList.add(effectiveTheme)\n document.documentElement.setAttribute(\"data-theme\", effectiveTheme)\n }\n\n mediaQuery.addEventListener(\"change\", handleChange)\n return () => mediaQuery.removeEventListener(\"change\", handleChange)\n }\n }, [theme])\n\n return (\n \n
\n \n \n \n \n Toggle theme\n \n \n
\n \n updateTheme(\"light\")}>\n Light\n \n updateTheme(\"dark\")}>\n Dark\n \n updateTheme(\"system\")}>\n System\n \n \n
\n )\n}\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/rive-mode-toggle.json b/apps/www/public/r/styles/default/rive-mode-toggle.json new file mode 100644 index 00000000..93965dfa --- /dev/null +++ b/apps/www/public/r/styles/default/rive-mode-toggle.json @@ -0,0 +1,15 @@ +{ + "name": "rive-mode-toggle", + "type": "registry:prodkt", + "dependencies": [ + "@rive-app/react-canvas" + ], + "files": [ + { + "path": "prodkt/rive/mode-toggle/index.tsx", + "content": "\"use client\"\n\nimport { useEffect, useState } from \"react\"\nimport { Alignment, Fit, Layout, useRive } from \"@rive-app/react-canvas\"\n\nexport default function RiveModeToggle() {\n // Initialize state based on localStorage/system preference\n const [isDark, setIsDark] = useState(() => {\n if (typeof window !== \"undefined\") {\n const savedTheme = localStorage.getItem(\"theme\")\n return savedTheme\n ? savedTheme === \"dark\"\n : window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n }\n return false\n })\n\n const RiveAnimation = \"../../assets/rive/nexsale_mode_toggle.riv\"\n\n const { rive, RiveComponent } = useRive({\n src: RiveAnimation,\n stateMachines: \"modeMachine\",\n layout: new Layout({\n fit: Fit.FitWidth,\n alignment: Alignment.Center,\n }),\n autoplay: true,\n })\n\n useEffect(() => {\n if (rive) {\n const input = rive\n .stateMachineInputs(\"modeMachine\")\n ?.find((input) => input.name === \"isDark\")\n\n if (input) {\n input.value = isDark\n }\n }\n }, [rive, isDark])\n\n const toggleMode = () => {\n const newIsDark = !isDark\n setIsDark(newIsDark)\n\n // Update localStorage and class\n if (typeof window !== \"undefined\") {\n localStorage.setItem(\"theme\", newIsDark ? \"dark\" : \"light\")\n document.documentElement.classList[newIsDark ? \"add\" : \"remove\"](\"dark\")\n }\n }\n\n // Handle system theme changes\n useEffect(() => {\n const mediaQuery = window.matchMedia(\"(prefers-color-scheme: dark)\")\n\n const handleChange = (e: MediaQueryListEvent) => {\n const newIsDark = e.matches\n setIsDark(newIsDark)\n localStorage.setItem(\"theme\", newIsDark ? \"dark\" : \"light\")\n document.documentElement.classList[newIsDark ? \"add\" : \"remove\"](\"dark\")\n }\n\n mediaQuery.addEventListener(\"change\", handleChange)\n return () => mediaQuery.removeEventListener(\"change\", handleChange)\n }, [])\n\n return (\n
\n {\n if (e.key === \"Enter\" || e.key === \" \") {\n toggleMode()\n }\n }}\n aria-label={`Switch to ${isDark ? \"light\" : \"dark\"} mode`}\n >\n \n
\n
\n
\n )\n}\n", + "type": "registry:prodkt", + "target": "" + } + ] +} \ No newline at end of file diff --git a/apps/www/public/r/styles/default/shine.json b/apps/www/public/r/styles/default/shine.json index d248bd02..672678d1 100644 --- a/apps/www/public/r/styles/default/shine.json +++ b/apps/www/public/r/styles/default/shine.json @@ -1,6 +1,9 @@ { "name": "shine", "type": "registry:effect", + "dependencies": [ + "framer-motion" + ], "files": [ { "path": "effects/shine.tsx", diff --git a/apps/www/public/r/styles/default/sidebar-01.json b/apps/www/public/r/styles/default/sidebar-01.json index 6cb568a1..cec1e118 100644 --- a/apps/www/public/r/styles/default/sidebar-01.json +++ b/apps/www/public/r/styles/default/sidebar-01.json @@ -12,25 +12,25 @@ "files": [ { "path": "blocks/sidebar-01/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-01/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-01/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-01/components/app-sidebar.tsx", - "content": "import * as React from \"react\"\n\nimport { SearchForm } from \"@/registry/default/blocks/sidebar-01/components/search-form\"\nimport { VersionSwitcher } from \"@/registry/default/blocks/sidebar-01/components/version-switcher\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarRail,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n versions: [\"1.0.1\", \"1.1.0-alpha\", \"2.0.0-beta1\"],\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n {/* We create a SidebarGroup for each parent. */}\n {data.navMain.map((item) => (\n \n {item.title}\n \n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n \n \n ))}\n \n \n \n )\n}\n", + "content": "import * as React from \"react\"\n\nimport { SearchForm } from \"@/registry/new-york/blocks/sidebar-01/components/search-form\"\nimport { VersionSwitcher } from \"@/registry/new-york/blocks/sidebar-01/components/version-switcher\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarRail,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n versions: [\"1.0.1\", \"1.1.0-alpha\", \"2.0.0-beta1\"],\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n {/* We create a SidebarGroup for each parent. */}\n {data.navMain.map((item) => (\n \n {item.title}\n \n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n \n \n ))}\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-01/components/search-form.tsx", - "content": "import { Search } from \"lucide-react\"\n\nimport { Label } from \"@/registry/default/ui/label\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarInput,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function SearchForm({ ...props }: React.ComponentProps<\"form\">) {\n return (\n
\n \n \n \n \n \n \n \n
\n )\n}\n", + "content": "import { Search } from \"lucide-react\"\n\nimport { Label } from \"@/registry/new-york/ui/label\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarInput,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function SearchForm({ ...props }: React.ComponentProps<\"form\">) {\n return (\n
\n \n \n \n \n \n \n \n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-01/components/version-switcher.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Check, ChevronsUpDown, GalleryVerticalEnd } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function VersionSwitcher({\n versions,\n defaultVersion,\n}: {\n versions: string[]\n defaultVersion: string\n}) {\n const [selectedVersion, setSelectedVersion] = React.useState(defaultVersion)\n\n return (\n \n \n \n \n \n
\n \n
\n
\n Documentation\n v{selectedVersion}\n
\n \n \n
\n \n {versions.map((version) => (\n setSelectedVersion(version)}\n >\n v{version}{\" \"}\n {version === selectedVersion && }\n \n ))}\n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Check, ChevronsUpDown, GalleryVerticalEnd } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function VersionSwitcher({\n versions,\n defaultVersion,\n}: {\n versions: string[]\n defaultVersion: string\n}) {\n const [selectedVersion, setSelectedVersion] = React.useState(defaultVersion)\n\n return (\n \n \n \n \n \n
\n \n
\n
\n Documentation\n v{selectedVersion}\n
\n \n \n
\n \n {versions.map((version) => (\n setSelectedVersion(version)}\n >\n v{version}{\" \"}\n {version === selectedVersion && }\n \n ))}\n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-02.json b/apps/www/public/r/styles/default/sidebar-02.json index 4a98160b..b259c749 100644 --- a/apps/www/public/r/styles/default/sidebar-02.json +++ b/apps/www/public/r/styles/default/sidebar-02.json @@ -12,25 +12,25 @@ "files": [ { "path": "blocks/sidebar-02/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-02/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n {Array.from({ length: 24 }).map((_, index) => (\n \n ))}\n
\n
\n
\n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-02/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n {Array.from({ length: 24 }).map((_, index) => (\n \n ))}\n
\n
\n
\n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-02/components/app-sidebar.tsx", - "content": "import * as React from \"react\"\nimport { ChevronRight } from \"lucide-react\"\n\nimport { SearchForm } from \"@/registry/default/blocks/sidebar-02/components/search-form\"\nimport { VersionSwitcher } from \"@/registry/default/blocks/sidebar-02/components/version-switcher\"\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarRail,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n versions: [\"1.0.1\", \"1.1.0-alpha\", \"2.0.0-beta1\"],\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Community\",\n url: \"#\",\n items: [\n {\n title: \"Contribution Guide\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n {/* We create a collapsible SidebarGroup for each parent. */}\n {data.navMain.map((item) => (\n \n \n \n \n {item.title}{\" \"}\n \n \n \n \n \n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n \n \n \n \n ))}\n \n \n \n )\n}\n", + "content": "import * as React from \"react\"\nimport { ChevronRight } from \"lucide-react\"\n\nimport { SearchForm } from \"@/registry/new-york/blocks/sidebar-02/components/search-form\"\nimport { VersionSwitcher } from \"@/registry/new-york/blocks/sidebar-02/components/version-switcher\"\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarRail,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n versions: [\"1.0.1\", \"1.1.0-alpha\", \"2.0.0-beta1\"],\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Community\",\n url: \"#\",\n items: [\n {\n title: \"Contribution Guide\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n {/* We create a collapsible SidebarGroup for each parent. */}\n {data.navMain.map((item) => (\n \n \n \n \n {item.title}{\" \"}\n \n \n \n \n \n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n \n \n \n \n ))}\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-02/components/search-form.tsx", - "content": "import { Search } from \"lucide-react\"\n\nimport { Label } from \"@/registry/default/ui/label\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarInput,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function SearchForm({ ...props }: React.ComponentProps<\"form\">) {\n return (\n
\n \n \n \n \n \n \n \n
\n )\n}\n", + "content": "import { Search } from \"lucide-react\"\n\nimport { Label } from \"@/registry/new-york/ui/label\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarInput,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function SearchForm({ ...props }: React.ComponentProps<\"form\">) {\n return (\n
\n \n \n \n \n \n \n \n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-02/components/version-switcher.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Check, ChevronsUpDown, GalleryVerticalEnd } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function VersionSwitcher({\n versions,\n defaultVersion,\n}: {\n versions: string[]\n defaultVersion: string\n}) {\n const [selectedVersion, setSelectedVersion] = React.useState(defaultVersion)\n\n return (\n \n \n \n \n \n
\n \n
\n
\n Documentation\n v{selectedVersion}\n
\n \n \n
\n \n {versions.map((version) => (\n setSelectedVersion(version)}\n >\n v{version}{\" \"}\n {version === selectedVersion && }\n \n ))}\n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Check, ChevronsUpDown, GalleryVerticalEnd } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function VersionSwitcher({\n versions,\n defaultVersion,\n}: {\n versions: string[]\n defaultVersion: string\n}) {\n const [selectedVersion, setSelectedVersion] = React.useState(defaultVersion)\n\n return (\n \n \n \n \n \n
\n \n
\n
\n Documentation\n v{selectedVersion}\n
\n \n \n
\n \n {versions.map((version) => (\n setSelectedVersion(version)}\n >\n v{version}{\" \"}\n {version === selectedVersion && }\n \n ))}\n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-03.json b/apps/www/public/r/styles/default/sidebar-03.json index 966a036f..bd1180da 100644 --- a/apps/www/public/r/styles/default/sidebar-03.json +++ b/apps/www/public/r/styles/default/sidebar-03.json @@ -9,13 +9,13 @@ "files": [ { "path": "blocks/sidebar-03/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-03/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-03/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-03/components/app-sidebar.tsx", - "content": "import * as React from \"react\"\nimport { GalleryVerticalEnd } from \"lucide-react\"\n\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarRail,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Community\",\n url: \"#\",\n items: [\n {\n title: \"Contribution Guide\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n
\n \n
\n
\n Documentation\n v1.0.0\n
\n
\n
\n
\n
\n
\n \n \n \n {data.navMain.map((item) => (\n \n \n \n {item.title}\n \n \n {item.items?.length ? (\n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n ) : null}\n \n ))}\n \n \n \n \n
\n )\n}\n", + "content": "import * as React from \"react\"\nimport { GalleryVerticalEnd } from \"lucide-react\"\n\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarRail,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Community\",\n url: \"#\",\n items: [\n {\n title: \"Contribution Guide\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n
\n \n
\n
\n Documentation\n v1.0.0\n
\n
\n
\n
\n
\n
\n \n \n \n {data.navMain.map((item) => (\n \n \n \n {item.title}\n \n \n {item.items?.length ? (\n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n ) : null}\n \n ))}\n \n \n \n \n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-04.json b/apps/www/public/r/styles/default/sidebar-04.json index f95fa2d0..0b8f09cf 100644 --- a/apps/www/public/r/styles/default/sidebar-04.json +++ b/apps/www/public/r/styles/default/sidebar-04.json @@ -10,13 +10,13 @@ "files": [ { "path": "blocks/sidebar-04/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-04/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-04/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-04/components/app-sidebar.tsx", - "content": "import * as React from \"react\"\nimport { GalleryVerticalEnd } from \"lucide-react\"\n\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Community\",\n url: \"#\",\n items: [\n {\n title: \"Contribution Guide\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n
\n \n
\n
\n Documentation\n v1.0.0\n
\n
\n
\n
\n
\n
\n \n \n \n {data.navMain.map((item) => (\n \n \n \n {item.title}\n \n \n {item.items?.length ? (\n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n ) : null}\n \n ))}\n \n \n \n
\n )\n}\n", + "content": "import * as React from \"react\"\nimport { GalleryVerticalEnd } from \"lucide-react\"\n\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Community\",\n url: \"#\",\n items: [\n {\n title: \"Contribution Guide\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n
\n \n
\n
\n Documentation\n v1.0.0\n
\n
\n
\n
\n
\n
\n \n \n \n {data.navMain.map((item) => (\n \n \n \n {item.title}\n \n \n {item.items?.length ? (\n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n ) : null}\n \n ))}\n \n \n \n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-05.json b/apps/www/public/r/styles/default/sidebar-05.json index 668f9b0e..052d7ea2 100644 --- a/apps/www/public/r/styles/default/sidebar-05.json +++ b/apps/www/public/r/styles/default/sidebar-05.json @@ -12,19 +12,19 @@ "files": [ { "path": "blocks/sidebar-05/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-05/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-05/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-05/components/app-sidebar.tsx", - "content": "import * as React from \"react\"\nimport { GalleryVerticalEnd, Minus, Plus } from \"lucide-react\"\n\nimport { SearchForm } from \"@/registry/default/blocks/sidebar-05/components/search-form\"\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarRail,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Community\",\n url: \"#\",\n items: [\n {\n title: \"Contribution Guide\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n
\n \n
\n
\n Documentation\n v1.0.0\n
\n
\n
\n
\n
\n \n
\n \n \n \n {data.navMain.map((item, index) => (\n \n \n \n \n {item.title}{\" \"}\n \n \n \n \n {item.items?.length ? (\n \n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n \n ) : null}\n \n \n ))}\n \n \n \n \n
\n )\n}\n", + "content": "import * as React from \"react\"\nimport { GalleryVerticalEnd, Minus, Plus } from \"lucide-react\"\n\nimport { SearchForm } from \"@/registry/new-york/blocks/sidebar-05/components/search-form\"\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarRail,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Community\",\n url: \"#\",\n items: [\n {\n title: \"Contribution Guide\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n
\n \n
\n
\n Documentation\n v1.0.0\n
\n
\n
\n
\n
\n \n
\n \n \n \n {data.navMain.map((item, index) => (\n \n \n \n \n {item.title}{\" \"}\n \n \n \n \n {item.items?.length ? (\n \n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n \n ) : null}\n \n \n ))}\n \n \n \n \n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-05/components/search-form.tsx", - "content": "import { Search } from \"lucide-react\"\n\nimport { Label } from \"@/registry/default/ui/label\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarInput,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function SearchForm({ ...props }: React.ComponentProps<\"form\">) {\n return (\n
\n \n \n \n \n \n \n \n
\n )\n}\n", + "content": "import { Search } from \"lucide-react\"\n\nimport { Label } from \"@/registry/new-york/ui/label\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarInput,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function SearchForm({ ...props }: React.ComponentProps<\"form\">) {\n return (\n
\n \n \n \n \n \n \n \n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-06.json b/apps/www/public/r/styles/default/sidebar-06.json index 3713fc9e..cf26d5f6 100644 --- a/apps/www/public/r/styles/default/sidebar-06.json +++ b/apps/www/public/r/styles/default/sidebar-06.json @@ -12,25 +12,25 @@ "files": [ { "path": "blocks/sidebar-06/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-06/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-06/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-06/components/app-sidebar.tsx", - "content": "import * as React from \"react\"\nimport { GalleryVerticalEnd } from \"lucide-react\"\n\nimport { NavMain } from \"@/registry/default/blocks/sidebar-06/components/nav-main\"\nimport { SidebarOptInForm } from \"@/registry/default/blocks/sidebar-06/components/sidebar-opt-in-form\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarRail,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n
\n \n
\n
\n Documentation\n v1.0.0\n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n \n
\n
\n \n
\n )\n}\n", + "content": "import * as React from \"react\"\nimport { GalleryVerticalEnd } from \"lucide-react\"\n\nimport { NavMain } from \"@/registry/new-york/blocks/sidebar-06/components/nav-main\"\nimport { SidebarOptInForm } from \"@/registry/new-york/blocks/sidebar-06/components/sidebar-opt-in-form\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarRail,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n
\n \n
\n
\n Documentation\n v1.0.0\n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n \n
\n
\n \n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-06/components/nav-main.tsx", - "content": "\"use client\"\n\nimport { MoreHorizontal, type LucideIcon } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon?: LucideIcon\n isActive?: boolean\n items?: {\n title: string\n url: string\n }[]\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n {items.map((item) => (\n \n \n \n \n {item.title} \n \n \n {item.items?.length ? (\n \n {item.items.map((item) => (\n \n {item.title}\n \n ))}\n \n ) : null}\n \n \n ))}\n \n \n )\n}\n", + "content": "\"use client\"\n\nimport { MoreHorizontal, type LucideIcon } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon?: LucideIcon\n isActive?: boolean\n items?: {\n title: string\n url: string\n }[]\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n {items.map((item) => (\n \n \n \n \n {item.title} \n \n \n {item.items?.length ? (\n \n {item.items.map((item) => (\n \n {item.title}\n \n ))}\n \n ) : null}\n \n \n ))}\n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-06/components/sidebar-opt-in-form.tsx", - "content": "import { Button } from \"@/registry/default/ui/button\"\nimport {\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n} from \"@/registry/default/ui/card\"\nimport { SidebarInput } from \"@/registry/default/ui/sidebar\"\n\nexport function SidebarOptInForm() {\n return (\n \n
\n \n Subscribe to our newsletter\n \n Opt-in to receive updates and news about the sidebar.\n \n \n \n \n \n Subscribe\n \n \n
\n
\n )\n}\n", + "content": "import { Button } from \"@/registry/new-york/ui/button\"\nimport {\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n} from \"@/registry/new-york/ui/card\"\nimport { SidebarInput } from \"@/registry/new-york/ui/sidebar\"\n\nexport function SidebarOptInForm() {\n return (\n \n
\n \n Subscribe to our newsletter\n \n Opt-in to receive updates and news about the sidebar.\n \n \n \n \n \n Subscribe\n \n \n
\n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-07.json b/apps/www/public/r/styles/default/sidebar-07.json index caaa2b45..2a998368 100644 --- a/apps/www/public/r/styles/default/sidebar-07.json +++ b/apps/www/public/r/styles/default/sidebar-07.json @@ -13,37 +13,37 @@ "files": [ { "path": "blocks/sidebar-07/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-07/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-07/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-07/components/app-sidebar.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n AudioWaveform,\n BookOpen,\n Bot,\n Command,\n Frame,\n GalleryVerticalEnd,\n Map,\n PieChart,\n Settings2,\n SquareTerminal,\n} from \"lucide-react\"\n\nimport { NavMain } from \"@/registry/default/blocks/sidebar-07/components/nav-main\"\nimport { NavProjects } from \"@/registry/default/blocks/sidebar-07/components/nav-projects\"\nimport { NavUser } from \"@/registry/default/blocks/sidebar-07/components/nav-user\"\nimport { TeamSwitcher } from \"@/registry/default/blocks/sidebar-07/components/team-switcher\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarHeader,\n SidebarRail,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n user: {\n name: \"Bryan Funk\",\n email: \"bryan.funk@prodkt.cloud\",\n avatar: \"/avatars/bryanfunk.jpg\",\n },\n teams: [\n {\n name: \"Acme Inc\",\n logo: GalleryVerticalEnd,\n plan: \"Enterprise\",\n },\n {\n name: \"Acme Corp.\",\n logo: AudioWaveform,\n plan: \"Startup\",\n },\n {\n name: \"Evil Corp.\",\n logo: Command,\n plan: \"Free\",\n },\n ],\n navMain: [\n {\n title: \"Playground\",\n url: \"#\",\n icon: SquareTerminal,\n isActive: true,\n items: [\n {\n title: \"History\",\n url: \"#\",\n },\n {\n title: \"Starred\",\n url: \"#\",\n },\n {\n title: \"Settings\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Models\",\n url: \"#\",\n icon: Bot,\n items: [\n {\n title: \"Genesis\",\n url: \"#\",\n },\n {\n title: \"Explorer\",\n url: \"#\",\n },\n {\n title: \"Quantum\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Documentation\",\n url: \"#\",\n icon: BookOpen,\n items: [\n {\n title: \"Introduction\",\n url: \"#\",\n },\n {\n title: \"Get Started\",\n url: \"#\",\n },\n {\n title: \"Tutorials\",\n url: \"#\",\n },\n {\n title: \"Changelog\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Settings\",\n url: \"#\",\n icon: Settings2,\n items: [\n {\n title: \"General\",\n url: \"#\",\n },\n {\n title: \"Team\",\n url: \"#\",\n },\n {\n title: \"Billing\",\n url: \"#\",\n },\n {\n title: \"Limits\",\n url: \"#\",\n },\n ],\n },\n ],\n projects: [\n {\n name: \"Design Engineering\",\n url: \"#\",\n icon: Frame,\n },\n {\n name: \"Sales & Marketing\",\n url: \"#\",\n icon: PieChart,\n },\n {\n name: \"Travel\",\n url: \"#\",\n icon: Map,\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n AudioWaveform,\n BookOpen,\n Bot,\n Command,\n Frame,\n GalleryVerticalEnd,\n Map,\n PieChart,\n Settings2,\n SquareTerminal,\n} from \"lucide-react\"\n\nimport { NavMain } from \"@/registry/new-york/blocks/sidebar-07/components/nav-main\"\nimport { NavProjects } from \"@/registry/new-york/blocks/sidebar-07/components/nav-projects\"\nimport { NavUser } from \"@/registry/new-york/blocks/sidebar-07/components/nav-user\"\nimport { TeamSwitcher } from \"@/registry/new-york/blocks/sidebar-07/components/team-switcher\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarHeader,\n SidebarRail,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n user: {\n name: \"Bryan Funk\",\n email: \"bryan.funk@prodkt.cloud\",\n avatar: \"/avatars/bryanfunk.jpg\",\n },\n teams: [\n {\n name: \"Acme Inc\",\n logo: GalleryVerticalEnd,\n plan: \"Enterprise\",\n },\n {\n name: \"Acme Corp.\",\n logo: AudioWaveform,\n plan: \"Startup\",\n },\n {\n name: \"Evil Corp.\",\n logo: Command,\n plan: \"Free\",\n },\n ],\n navMain: [\n {\n title: \"Playground\",\n url: \"#\",\n icon: SquareTerminal,\n isActive: true,\n items: [\n {\n title: \"History\",\n url: \"#\",\n },\n {\n title: \"Starred\",\n url: \"#\",\n },\n {\n title: \"Settings\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Models\",\n url: \"#\",\n icon: Bot,\n items: [\n {\n title: \"Genesis\",\n url: \"#\",\n },\n {\n title: \"Explorer\",\n url: \"#\",\n },\n {\n title: \"Quantum\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Documentation\",\n url: \"#\",\n icon: BookOpen,\n items: [\n {\n title: \"Introduction\",\n url: \"#\",\n },\n {\n title: \"Get Started\",\n url: \"#\",\n },\n {\n title: \"Tutorials\",\n url: \"#\",\n },\n {\n title: \"Changelog\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Settings\",\n url: \"#\",\n icon: Settings2,\n items: [\n {\n title: \"General\",\n url: \"#\",\n },\n {\n title: \"Team\",\n url: \"#\",\n },\n {\n title: \"Billing\",\n url: \"#\",\n },\n {\n title: \"Limits\",\n url: \"#\",\n },\n ],\n },\n ],\n projects: [\n {\n name: \"Design Engineering\",\n url: \"#\",\n icon: Frame,\n },\n {\n name: \"Sales & Marketing\",\n url: \"#\",\n icon: PieChart,\n },\n {\n name: \"Travel\",\n url: \"#\",\n icon: Map,\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-07/components/nav-main.tsx", - "content": "\"use client\"\n\nimport { ChevronRight, type LucideIcon } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon?: LucideIcon\n isActive?: boolean\n items?: {\n title: string\n url: string\n }[]\n }[]\n}) {\n return (\n \n Platform\n \n {items.map((item) => (\n \n \n \n \n {item.icon && }\n {item.title}\n \n \n \n \n \n {item.items?.map((subItem) => (\n \n \n \n {subItem.title}\n \n \n \n ))}\n \n \n \n \n ))}\n \n \n )\n}\n", + "content": "\"use client\"\n\nimport { ChevronRight, type LucideIcon } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon?: LucideIcon\n isActive?: boolean\n items?: {\n title: string\n url: string\n }[]\n }[]\n}) {\n return (\n \n Platform\n \n {items.map((item) => (\n \n \n \n \n {item.icon && }\n {item.title}\n \n \n \n \n \n {item.items?.map((subItem) => (\n \n \n \n {subItem.title}\n \n \n \n ))}\n \n \n \n \n ))}\n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-07/components/nav-projects.tsx", - "content": "\"use client\"\n\nimport {\n Folder,\n Forward,\n MoreHorizontal,\n Trash2,\n type LucideIcon,\n} from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavProjects({\n projects,\n}: {\n projects: {\n name: string\n url: string\n icon: LucideIcon\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n Projects\n \n {projects.map((item) => (\n \n \n \n \n {item.name}\n \n \n \n \n \n \n More\n \n \n \n \n \n View Project\n \n \n \n Share Project\n \n \n \n \n Delete Project\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n )\n}\n", + "content": "\"use client\"\n\nimport {\n Folder,\n Forward,\n MoreHorizontal,\n Trash2,\n type LucideIcon,\n} from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavProjects({\n projects,\n}: {\n projects: {\n name: string\n url: string\n icon: LucideIcon\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n Projects\n \n {projects.map((item) => (\n \n \n \n \n {item.name}\n \n \n \n \n \n \n More\n \n \n \n \n \n View Project\n \n \n \n Share Project\n \n \n \n \n Delete Project\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-07/components/nav-user.tsx", - "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/new-york/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-07/components/team-switcher.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ChevronsUpDown, Plus } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function TeamSwitcher({\n teams,\n}: {\n teams: {\n name: string\n logo: React.ElementType\n plan: string\n }[]\n}) {\n const { isMobile } = useSidebar()\n const [activeTeam, setActiveTeam] = React.useState(teams[0])\n\n return (\n \n \n \n \n \n
\n \n
\n
\n \n {activeTeam.name}\n \n {activeTeam.plan}\n
\n \n \n
\n \n \n Teams\n \n {teams.map((team, index) => (\n setActiveTeam(team)}\n className=\"gap-2 p-2\"\n >\n
\n \n
\n {team.name}\n ⌘{index + 1}\n \n ))}\n \n \n
\n \n
\n
Add team
\n
\n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ChevronsUpDown, Plus } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function TeamSwitcher({\n teams,\n}: {\n teams: {\n name: string\n logo: React.ElementType\n plan: string\n }[]\n}) {\n const { isMobile } = useSidebar()\n const [activeTeam, setActiveTeam] = React.useState(teams[0])\n\n return (\n \n \n \n \n \n
\n \n
\n
\n \n {activeTeam.name}\n \n {activeTeam.plan}\n
\n \n \n
\n \n \n Teams\n \n {teams.map((team, index) => (\n setActiveTeam(team)}\n className=\"gap-2 p-2\"\n >\n
\n \n
\n {team.name}\n ⌘{index + 1}\n \n ))}\n \n \n
\n \n
\n
Add team
\n
\n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-08.json b/apps/www/public/r/styles/default/sidebar-08.json index 850ba5a1..cbaed5e2 100644 --- a/apps/www/public/r/styles/default/sidebar-08.json +++ b/apps/www/public/r/styles/default/sidebar-08.json @@ -13,37 +13,37 @@ "files": [ { "path": "blocks/sidebar-08/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-08/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-08/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n
\n \n \n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-08/components/app-sidebar.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n BookOpen,\n Bot,\n Command,\n Frame,\n LifeBuoy,\n Map,\n PieChart,\n Send,\n Settings2,\n SquareTerminal,\n} from \"lucide-react\"\n\nimport { NavMain } from \"@/registry/default/blocks/sidebar-08/components/nav-main\"\nimport { NavProjects } from \"@/registry/default/blocks/sidebar-08/components/nav-projects\"\nimport { NavSecondary } from \"@/registry/default/blocks/sidebar-08/components/nav-secondary\"\nimport { NavUser } from \"@/registry/default/blocks/sidebar-08/components/nav-user\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/default/ui/sidebar\"\n\nconst data = {\n user: {\n name: \"Bryan Funk\",\n email: \"bryan.funk@prodkt.cloud\",\n avatar: \"/avatars/bryanfunk.jpg\",\n },\n navMain: [\n {\n title: \"Playground\",\n url: \"#\",\n icon: SquareTerminal,\n isActive: true,\n items: [\n {\n title: \"History\",\n url: \"#\",\n },\n {\n title: \"Starred\",\n url: \"#\",\n },\n {\n title: \"Settings\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Models\",\n url: \"#\",\n icon: Bot,\n items: [\n {\n title: \"Genesis\",\n url: \"#\",\n },\n {\n title: \"Explorer\",\n url: \"#\",\n },\n {\n title: \"Quantum\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Documentation\",\n url: \"#\",\n icon: BookOpen,\n items: [\n {\n title: \"Introduction\",\n url: \"#\",\n },\n {\n title: \"Get Started\",\n url: \"#\",\n },\n {\n title: \"Tutorials\",\n url: \"#\",\n },\n {\n title: \"Changelog\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Settings\",\n url: \"#\",\n icon: Settings2,\n items: [\n {\n title: \"General\",\n url: \"#\",\n },\n {\n title: \"Team\",\n url: \"#\",\n },\n {\n title: \"Billing\",\n url: \"#\",\n },\n {\n title: \"Limits\",\n url: \"#\",\n },\n ],\n },\n ],\n navSecondary: [\n {\n title: \"Support\",\n url: \"#\",\n icon: LifeBuoy,\n },\n {\n title: \"Feedback\",\n url: \"#\",\n icon: Send,\n },\n ],\n projects: [\n {\n name: \"Design Engineering\",\n url: \"#\",\n icon: Frame,\n },\n {\n name: \"Sales & Marketing\",\n url: \"#\",\n icon: PieChart,\n },\n {\n name: \"Travel\",\n url: \"#\",\n icon: Map,\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n
\n \n
\n
\n Acme Inc\n Enterprise\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n
\n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n BookOpen,\n Bot,\n Command,\n Frame,\n LifeBuoy,\n Map,\n PieChart,\n Send,\n Settings2,\n SquareTerminal,\n} from \"lucide-react\"\n\nimport { NavMain } from \"@/registry/new-york/blocks/sidebar-08/components/nav-main\"\nimport { NavProjects } from \"@/registry/new-york/blocks/sidebar-08/components/nav-projects\"\nimport { NavSecondary } from \"@/registry/new-york/blocks/sidebar-08/components/nav-secondary\"\nimport { NavUser } from \"@/registry/new-york/blocks/sidebar-08/components/nav-user\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nconst data = {\n user: {\n name: \"Bryan Funk\",\n email: \"bryan.funk@prodkt.cloud\",\n avatar: \"/avatars/bryanfunk.jpg\",\n },\n navMain: [\n {\n title: \"Playground\",\n url: \"#\",\n icon: SquareTerminal,\n isActive: true,\n items: [\n {\n title: \"History\",\n url: \"#\",\n },\n {\n title: \"Starred\",\n url: \"#\",\n },\n {\n title: \"Settings\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Models\",\n url: \"#\",\n icon: Bot,\n items: [\n {\n title: \"Genesis\",\n url: \"#\",\n },\n {\n title: \"Explorer\",\n url: \"#\",\n },\n {\n title: \"Quantum\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Documentation\",\n url: \"#\",\n icon: BookOpen,\n items: [\n {\n title: \"Introduction\",\n url: \"#\",\n },\n {\n title: \"Get Started\",\n url: \"#\",\n },\n {\n title: \"Tutorials\",\n url: \"#\",\n },\n {\n title: \"Changelog\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Settings\",\n url: \"#\",\n icon: Settings2,\n items: [\n {\n title: \"General\",\n url: \"#\",\n },\n {\n title: \"Team\",\n url: \"#\",\n },\n {\n title: \"Billing\",\n url: \"#\",\n },\n {\n title: \"Limits\",\n url: \"#\",\n },\n ],\n },\n ],\n navSecondary: [\n {\n title: \"Support\",\n url: \"#\",\n icon: LifeBuoy,\n },\n {\n title: \"Feedback\",\n url: \"#\",\n icon: Send,\n },\n ],\n projects: [\n {\n name: \"Design Engineering\",\n url: \"#\",\n icon: Frame,\n },\n {\n name: \"Sales & Marketing\",\n url: \"#\",\n icon: PieChart,\n },\n {\n name: \"Travel\",\n url: \"#\",\n icon: Map,\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n
\n \n
\n
\n Acme Inc\n Enterprise\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-08/components/nav-main.tsx", - "content": "\"use client\"\n\nimport { ChevronRight, type LucideIcon } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n isActive?: boolean\n items?: {\n title: string\n url: string\n }[]\n }[]\n}) {\n return (\n \n Platform\n \n {items.map((item) => (\n \n \n \n \n \n {item.title}\n \n \n {item.items?.length ? (\n <>\n \n \n \n Toggle\n \n \n \n \n {item.items?.map((subItem) => (\n \n \n \n {subItem.title}\n \n \n \n ))}\n \n \n \n ) : null}\n \n \n ))}\n \n \n )\n}\n", + "content": "\"use client\"\n\nimport { ChevronRight, type LucideIcon } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n isActive?: boolean\n items?: {\n title: string\n url: string\n }[]\n }[]\n}) {\n return (\n \n Platform\n \n {items.map((item) => (\n \n \n \n \n \n {item.title}\n \n \n {item.items?.length ? (\n <>\n \n \n \n Toggle\n \n \n \n \n {item.items?.map((subItem) => (\n \n \n \n {subItem.title}\n \n \n \n ))}\n \n \n \n ) : null}\n \n \n ))}\n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-08/components/nav-projects.tsx", - "content": "\"use client\"\n\nimport {\n Folder,\n MoreHorizontal,\n Share,\n Trash2,\n type LucideIcon,\n} from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavProjects({\n projects,\n}: {\n projects: {\n name: string\n url: string\n icon: LucideIcon\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n Projects\n \n {projects.map((item) => (\n \n \n \n \n {item.name}\n \n \n \n \n \n \n More\n \n \n \n \n \n View Project\n \n \n \n Share Project\n \n \n \n \n Delete Project\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n )\n}\n", + "content": "\"use client\"\n\nimport {\n Folder,\n MoreHorizontal,\n Share,\n Trash2,\n type LucideIcon,\n} from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavProjects({\n projects,\n}: {\n projects: {\n name: string\n url: string\n icon: LucideIcon\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n Projects\n \n {projects.map((item) => (\n \n \n \n \n {item.name}\n \n \n \n \n \n \n More\n \n \n \n \n \n View Project\n \n \n \n Share Project\n \n \n \n \n Delete Project\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-08/components/nav-secondary.tsx", - "content": "import * as React from \"react\"\nimport { type LucideIcon } from \"lucide-react\"\n\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavSecondary({\n items,\n ...props\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n }[]\n} & React.ComponentPropsWithoutRef) {\n return (\n \n \n \n {items.map((item) => (\n \n \n \n \n {item.title}\n \n \n \n ))}\n \n \n \n )\n}\n", + "content": "import * as React from \"react\"\nimport { type LucideIcon } from \"lucide-react\"\n\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavSecondary({\n items,\n ...props\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n }[]\n} & React.ComponentPropsWithoutRef) {\n return (\n \n \n \n {items.map((item) => (\n \n \n \n \n {item.title}\n \n \n \n ))}\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-08/components/nav-user.tsx", - "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/new-york/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-09.json b/apps/www/public/r/styles/default/sidebar-09.json index e20ba63b..74f815c3 100644 --- a/apps/www/public/r/styles/default/sidebar-09.json +++ b/apps/www/public/r/styles/default/sidebar-09.json @@ -14,19 +14,19 @@ "files": [ { "path": "blocks/sidebar-09/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-09/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n All Inboxes\n \n \n \n Inbox\n \n \n \n
\n
\n {Array.from({ length: 24 }).map((_, index) => (\n \n ))}\n
\n
\n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-09/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n All Inboxes\n \n \n \n Inbox\n \n \n \n
\n
\n {Array.from({ length: 24 }).map((_, index) => (\n \n ))}\n
\n
\n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-09/components/app-sidebar.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ArchiveX, Command, File, Inbox, Send, Trash2 } from \"lucide-react\"\n\nimport { NavUser } from \"@/registry/default/blocks/sidebar-09/components/nav-user\"\nimport { Label } from \"@/registry/default/ui/label\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupContent,\n SidebarHeader,\n SidebarInput,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\nimport { Switch } from \"@/registry/default/ui/switch\"\n\n// This is sample data\nconst data = {\n user: {\n name: \"Bryan Funk\",\n email: \"bryan.funk@prodkt.cloud\",\n avatar: \"/avatars/bryanfunk.jpg\",\n },\n navMain: [\n {\n title: \"Inbox\",\n url: \"#\",\n icon: Inbox,\n isActive: true,\n },\n {\n title: \"Drafts\",\n url: \"#\",\n icon: File,\n isActive: false,\n },\n {\n title: \"Sent\",\n url: \"#\",\n icon: Send,\n isActive: false,\n },\n {\n title: \"Junk\",\n url: \"#\",\n icon: ArchiveX,\n isActive: false,\n },\n {\n title: \"Trash\",\n url: \"#\",\n icon: Trash2,\n isActive: false,\n },\n ],\n mails: [\n {\n name: \"William Smith\",\n email: \"williamsmith@example.com\",\n subject: \"Meeting Tomorrow\",\n date: \"09:34 AM\",\n teaser:\n \"Hi team, just a reminder about our meeting tomorrow at 10 AM.\\nPlease come prepared with your project updates.\",\n },\n {\n name: \"Alice Smith\",\n email: \"alicesmith@example.com\",\n subject: \"Re: Project Update\",\n date: \"Yesterday\",\n teaser:\n \"Thanks for the update. The progress looks great so far.\\nLet's schedule a call to discuss the next steps.\",\n },\n {\n name: \"Bob Johnson\",\n email: \"bobjohnson@example.com\",\n subject: \"Weekend Plans\",\n date: \"2 days ago\",\n teaser:\n \"Hey everyone! I'm thinking of organizing a team outing this weekend.\\nWould you be interested in a hiking trip or a beach day?\",\n },\n {\n name: \"Emily Davis\",\n email: \"emilydavis@example.com\",\n subject: \"Re: Question about Budget\",\n date: \"2 days ago\",\n teaser:\n \"I've reviewed the budget numbers you sent over.\\nCan we set up a quick call to discuss some potential adjustments?\",\n },\n {\n name: \"Michael Wilson\",\n email: \"michaelwilson@example.com\",\n subject: \"Important Announcement\",\n date: \"1 week ago\",\n teaser:\n \"Please join us for an all-hands meeting this Friday at 3 PM.\\nWe have some exciting news to share about the company's future.\",\n },\n {\n name: \"Sarah Brown\",\n email: \"sarahbrown@example.com\",\n subject: \"Re: Feedback on Proposal\",\n date: \"1 week ago\",\n teaser:\n \"Thank you for sending over the proposal. I've reviewed it and have some thoughts.\\nCould we schedule a meeting to discuss my feedback in detail?\",\n },\n {\n name: \"David Lee\",\n email: \"davidlee@example.com\",\n subject: \"New Project Idea\",\n date: \"1 week ago\",\n teaser:\n \"I've been brainstorming and came up with an interesting project concept.\\nDo you have time this week to discuss its potential impact and feasibility?\",\n },\n {\n name: \"Olivia Wilson\",\n email: \"oliviawilson@example.com\",\n subject: \"Vacation Plans\",\n date: \"1 week ago\",\n teaser:\n \"Just a heads up that I'll be taking a two-week vacation next month.\\nI'll make sure all my projects are up to date before I leave.\",\n },\n {\n name: \"James Martin\",\n email: \"jamesmartin@example.com\",\n subject: \"Re: Conference Registration\",\n date: \"1 week ago\",\n teaser:\n \"I've completed the registration for the upcoming tech conference.\\nLet me know if you need any additional information from my end.\",\n },\n {\n name: \"Sophia White\",\n email: \"sophiawhite@example.com\",\n subject: \"Team Dinner\",\n date: \"1 week ago\",\n teaser:\n \"To celebrate our recent project success, I'd like to organize a team dinner.\\nAre you available next Friday evening? Please let me know your preferences.\",\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n // Note: I'm using state to show active item.\n // IRL you should use the url/router.\n const [activeItem, setActiveItem] = React.useState(data.navMain[0])\n const [mails, setMails] = React.useState(data.mails)\n const { setOpen } = useSidebar()\n\n return (\n [data-sidebar=sidebar]]:flex-row\"\n {...props}\n >\n {/* This is the first sidebar */}\n {/* We disable collapsible and adjust width to icon. */}\n {/* This will make the sidebar appear as icons. */}\n \n \n \n \n \n \n
\n \n
\n
\n Acme Inc\n Enterprise\n
\n
\n
\n
\n
\n
\n \n \n \n \n {data.navMain.map((item) => (\n \n {\n setActiveItem(item)\n const mail = data.mails.sort(() => Math.random() - 0.5)\n setMails(\n mail.slice(\n 0,\n Math.max(5, Math.floor(Math.random() * 10) + 1)\n )\n )\n setOpen(true)\n }}\n isActive={activeItem.title === item.title}\n className=\"px-2.5 md:px-2\"\n >\n \n {item.title}\n \n \n ))}\n \n \n \n \n \n \n \n \n\n {/* This is the second sidebar */}\n {/* We disable collapsible and let it fill remaining space */}\n \n \n
\n
\n {activeItem.title}\n
\n \n
\n \n
\n \n \n \n {mails.map((mail) => (\n \n
\n {mail.name}{\" \"}\n {mail.date}\n
\n {mail.subject}\n \n {mail.teaser}\n \n \n ))}\n
\n
\n
\n
\n \n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ArchiveX, Command, File, Inbox, Send, Trash2 } from \"lucide-react\"\n\nimport { NavUser } from \"@/registry/new-york/blocks/sidebar-09/components/nav-user\"\nimport { Label } from \"@/registry/new-york/ui/label\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupContent,\n SidebarHeader,\n SidebarInput,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\nimport { Switch } from \"@/registry/new-york/ui/switch\"\n\n// This is sample data\nconst data = {\n user: {\n name: \"Bryan Funk\",\n email: \"bryan.funk@prodkt.cloud\",\n avatar: \"/avatars/bryanfunk.jpg\",\n },\n navMain: [\n {\n title: \"Inbox\",\n url: \"#\",\n icon: Inbox,\n isActive: true,\n },\n {\n title: \"Drafts\",\n url: \"#\",\n icon: File,\n isActive: false,\n },\n {\n title: \"Sent\",\n url: \"#\",\n icon: Send,\n isActive: false,\n },\n {\n title: \"Junk\",\n url: \"#\",\n icon: ArchiveX,\n isActive: false,\n },\n {\n title: \"Trash\",\n url: \"#\",\n icon: Trash2,\n isActive: false,\n },\n ],\n mails: [\n {\n name: \"William Smith\",\n email: \"williamsmith@example.com\",\n subject: \"Meeting Tomorrow\",\n date: \"09:34 AM\",\n teaser:\n \"Hi team, just a reminder about our meeting tomorrow at 10 AM.\\nPlease come prepared with your project updates.\",\n },\n {\n name: \"Alice Smith\",\n email: \"alicesmith@example.com\",\n subject: \"Re: Project Update\",\n date: \"Yesterday\",\n teaser:\n \"Thanks for the update. The progress looks great so far.\\nLet's schedule a call to discuss the next steps.\",\n },\n {\n name: \"Bob Johnson\",\n email: \"bobjohnson@example.com\",\n subject: \"Weekend Plans\",\n date: \"2 days ago\",\n teaser:\n \"Hey everyone! I'm thinking of organizing a team outing this weekend.\\nWould you be interested in a hiking trip or a beach day?\",\n },\n {\n name: \"Emily Davis\",\n email: \"emilydavis@example.com\",\n subject: \"Re: Question about Budget\",\n date: \"2 days ago\",\n teaser:\n \"I've reviewed the budget numbers you sent over.\\nCan we set up a quick call to discuss some potential adjustments?\",\n },\n {\n name: \"Michael Wilson\",\n email: \"michaelwilson@example.com\",\n subject: \"Important Announcement\",\n date: \"1 week ago\",\n teaser:\n \"Please join us for an all-hands meeting this Friday at 3 PM.\\nWe have some exciting news to share about the company's future.\",\n },\n {\n name: \"Sarah Brown\",\n email: \"sarahbrown@example.com\",\n subject: \"Re: Feedback on Proposal\",\n date: \"1 week ago\",\n teaser:\n \"Thank you for sending over the proposal. I've reviewed it and have some thoughts.\\nCould we schedule a meeting to discuss my feedback in detail?\",\n },\n {\n name: \"David Lee\",\n email: \"davidlee@example.com\",\n subject: \"New Project Idea\",\n date: \"1 week ago\",\n teaser:\n \"I've been brainstorming and came up with an interesting project concept.\\nDo you have time this week to discuss its potential impact and feasibility?\",\n },\n {\n name: \"Olivia Wilson\",\n email: \"oliviawilson@example.com\",\n subject: \"Vacation Plans\",\n date: \"1 week ago\",\n teaser:\n \"Just a heads up that I'll be taking a two-week vacation next month.\\nI'll make sure all my projects are up to date before I leave.\",\n },\n {\n name: \"James Martin\",\n email: \"jamesmartin@example.com\",\n subject: \"Re: Conference Registration\",\n date: \"1 week ago\",\n teaser:\n \"I've completed the registration for the upcoming tech conference.\\nLet me know if you need any additional information from my end.\",\n },\n {\n name: \"Sophia White\",\n email: \"sophiawhite@example.com\",\n subject: \"Team Dinner\",\n date: \"1 week ago\",\n teaser:\n \"To celebrate our recent project success, I'd like to organize a team dinner.\\nAre you available next Friday evening? Please let me know your preferences.\",\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n // Note: I'm using state to show active item.\n // IRL you should use the url/router.\n const [activeItem, setActiveItem] = React.useState(data.navMain[0])\n const [mails, setMails] = React.useState(data.mails)\n const { setOpen } = useSidebar()\n\n return (\n [data-sidebar=sidebar]]:flex-row\"\n {...props}\n >\n {/* This is the first sidebar */}\n {/* We disable collapsible and adjust width to icon. */}\n {/* This will make the sidebar appear as icons. */}\n \n \n \n \n \n \n
\n \n
\n
\n Acme Inc\n Enterprise\n
\n
\n
\n
\n
\n
\n \n \n \n \n {data.navMain.map((item) => (\n \n {\n setActiveItem(item)\n const mail = data.mails.sort(() => Math.random() - 0.5)\n setMails(\n mail.slice(\n 0,\n Math.max(5, Math.floor(Math.random() * 10) + 1)\n )\n )\n setOpen(true)\n }}\n isActive={activeItem.title === item.title}\n className=\"px-2.5 md:px-2\"\n >\n \n {item.title}\n \n \n ))}\n \n \n \n \n \n \n \n \n\n {/* This is the second sidebar */}\n {/* We disable collapsible and let it fill remaining space */}\n \n \n
\n
\n {activeItem.title}\n
\n \n
\n \n
\n \n \n \n {mails.map((mail) => (\n \n
\n {mail.name}{\" \"}\n {mail.date}\n
\n {mail.subject}\n \n {mail.teaser}\n \n \n ))}\n
\n
\n
\n
\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-09/components/nav-user.tsx", - "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/new-york/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-10.json b/apps/www/public/r/styles/default/sidebar-10.json index 0a0a362a..0970dbff 100644 --- a/apps/www/public/r/styles/default/sidebar-10.json +++ b/apps/www/public/r/styles/default/sidebar-10.json @@ -13,49 +13,49 @@ "files": [ { "path": "blocks/sidebar-10/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-10/components/app-sidebar\"\nimport { NavActions } from \"@/registry/default/blocks/sidebar-10/components/nav-actions\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbList,\n BreadcrumbPage,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n
\n \n \n \n \n \n \n Project Management & Task Tracking\n \n \n \n \n
\n
\n \n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-10/components/app-sidebar\"\nimport { NavActions } from \"@/registry/new-york/blocks/sidebar-10/components/nav-actions\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbList,\n BreadcrumbPage,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n
\n \n \n \n \n \n \n Project Management & Task Tracking\n \n \n \n \n
\n
\n \n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-10/components/app-sidebar.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n AudioWaveform,\n Blocks,\n Calendar,\n Command,\n Home,\n Inbox,\n MessageCircleQuestion,\n Search,\n Settings2,\n Sparkles,\n Trash2,\n} from \"lucide-react\"\n\nimport { NavFavorites } from \"@/registry/default/blocks/sidebar-10/components/nav-favorites\"\nimport { NavMain } from \"@/registry/default/blocks/sidebar-10/components/nav-main\"\nimport { NavSecondary } from \"@/registry/default/blocks/sidebar-10/components/nav-secondary\"\nimport { NavWorkspaces } from \"@/registry/default/blocks/sidebar-10/components/nav-workspaces\"\nimport { TeamSwitcher } from \"@/registry/default/blocks/sidebar-10/components/team-switcher\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarHeader,\n SidebarRail,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n teams: [\n {\n name: \"Acme Inc\",\n logo: Command,\n plan: \"Enterprise\",\n },\n {\n name: \"Acme Corp.\",\n logo: AudioWaveform,\n plan: \"Startup\",\n },\n {\n name: \"Evil Corp.\",\n logo: Command,\n plan: \"Free\",\n },\n ],\n navMain: [\n {\n title: \"Search\",\n url: \"#\",\n icon: Search,\n },\n {\n title: \"Ask AI\",\n url: \"#\",\n icon: Sparkles,\n },\n {\n title: \"Home\",\n url: \"#\",\n icon: Home,\n isActive: true,\n },\n {\n title: \"Inbox\",\n url: \"#\",\n icon: Inbox,\n badge: \"10\",\n },\n ],\n navSecondary: [\n {\n title: \"Calendar\",\n url: \"#\",\n icon: Calendar,\n },\n {\n title: \"Settings\",\n url: \"#\",\n icon: Settings2,\n },\n {\n title: \"Templates\",\n url: \"#\",\n icon: Blocks,\n },\n {\n title: \"Trash\",\n url: \"#\",\n icon: Trash2,\n },\n {\n title: \"Help\",\n url: \"#\",\n icon: MessageCircleQuestion,\n },\n ],\n favorites: [\n {\n name: \"Project Management & Task Tracking\",\n url: \"#\",\n emoji: \"📊\",\n },\n {\n name: \"Family Recipe Collection & Meal Planning\",\n url: \"#\",\n emoji: \"🍳\",\n },\n {\n name: \"Fitness Tracker & Workout Routines\",\n url: \"#\",\n emoji: \"💪\",\n },\n {\n name: \"Book Notes & Reading List\",\n url: \"#\",\n emoji: \"📚\",\n },\n {\n name: \"Sustainable Gardening Tips & Plant Care\",\n url: \"#\",\n emoji: \"🌱\",\n },\n {\n name: \"Language Learning Progress & Resources\",\n url: \"#\",\n emoji: \"🗣️\",\n },\n {\n name: \"Home Renovation Ideas & Budget Tracker\",\n url: \"#\",\n emoji: \"🏠\",\n },\n {\n name: \"Personal Finance & Investment Portfolio\",\n url: \"#\",\n emoji: \"💰\",\n },\n {\n name: \"Movie & TV Show Watchlist with Reviews\",\n url: \"#\",\n emoji: \"🎬\",\n },\n {\n name: \"Daily Habit Tracker & Goal Setting\",\n url: \"#\",\n emoji: \"✅\",\n },\n ],\n workspaces: [\n {\n name: \"Personal Life Management\",\n emoji: \"🏠\",\n pages: [\n {\n name: \"Daily Journal & Reflection\",\n url: \"#\",\n emoji: \"📔\",\n },\n {\n name: \"Health & Wellness Tracker\",\n url: \"#\",\n emoji: \"🍏\",\n },\n {\n name: \"Personal Growth & Learning Goals\",\n url: \"#\",\n emoji: \"🌟\",\n },\n ],\n },\n {\n name: \"Professional Development\",\n emoji: \"💼\",\n pages: [\n {\n name: \"Career Objectives & Milestones\",\n url: \"#\",\n emoji: \"🎯\",\n },\n {\n name: \"Skill Acquisition & Training Log\",\n url: \"#\",\n emoji: \"🧠\",\n },\n {\n name: \"Networking Contacts & Events\",\n url: \"#\",\n emoji: \"🤝\",\n },\n ],\n },\n {\n name: \"Creative Projects\",\n emoji: \"🎨\",\n pages: [\n {\n name: \"Writing Ideas & Story Outlines\",\n url: \"#\",\n emoji: \"✍️\",\n },\n {\n name: \"Art & Design Portfolio\",\n url: \"#\",\n emoji: \"🖼️\",\n },\n {\n name: \"Music Composition & Practice Log\",\n url: \"#\",\n emoji: \"🎵\",\n },\n ],\n },\n {\n name: \"Home Management\",\n emoji: \"🏡\",\n pages: [\n {\n name: \"Household Budget & Expense Tracking\",\n url: \"#\",\n emoji: \"💰\",\n },\n {\n name: \"Home Maintenance Schedule & Tasks\",\n url: \"#\",\n emoji: \"🔧\",\n },\n {\n name: \"Family Calendar & Event Planning\",\n url: \"#\",\n emoji: \"📅\",\n },\n ],\n },\n {\n name: \"Travel & Adventure\",\n emoji: \"🧳\",\n pages: [\n {\n name: \"Trip Planning & Itineraries\",\n url: \"#\",\n emoji: \"🗺️\",\n },\n {\n name: \"Travel Bucket List & Inspiration\",\n url: \"#\",\n emoji: \"🌎\",\n },\n {\n name: \"Travel Journal & Photo Gallery\",\n url: \"#\",\n emoji: \"📸\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n AudioWaveform,\n Blocks,\n Calendar,\n Command,\n Home,\n Inbox,\n MessageCircleQuestion,\n Search,\n Settings2,\n Sparkles,\n Trash2,\n} from \"lucide-react\"\n\nimport { NavFavorites } from \"@/registry/new-york/blocks/sidebar-10/components/nav-favorites\"\nimport { NavMain } from \"@/registry/new-york/blocks/sidebar-10/components/nav-main\"\nimport { NavSecondary } from \"@/registry/new-york/blocks/sidebar-10/components/nav-secondary\"\nimport { NavWorkspaces } from \"@/registry/new-york/blocks/sidebar-10/components/nav-workspaces\"\nimport { TeamSwitcher } from \"@/registry/new-york/blocks/sidebar-10/components/team-switcher\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarHeader,\n SidebarRail,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n teams: [\n {\n name: \"Acme Inc\",\n logo: Command,\n plan: \"Enterprise\",\n },\n {\n name: \"Acme Corp.\",\n logo: AudioWaveform,\n plan: \"Startup\",\n },\n {\n name: \"Evil Corp.\",\n logo: Command,\n plan: \"Free\",\n },\n ],\n navMain: [\n {\n title: \"Search\",\n url: \"#\",\n icon: Search,\n },\n {\n title: \"Ask AI\",\n url: \"#\",\n icon: Sparkles,\n },\n {\n title: \"Home\",\n url: \"#\",\n icon: Home,\n isActive: true,\n },\n {\n title: \"Inbox\",\n url: \"#\",\n icon: Inbox,\n badge: \"10\",\n },\n ],\n navSecondary: [\n {\n title: \"Calendar\",\n url: \"#\",\n icon: Calendar,\n },\n {\n title: \"Settings\",\n url: \"#\",\n icon: Settings2,\n },\n {\n title: \"Templates\",\n url: \"#\",\n icon: Blocks,\n },\n {\n title: \"Trash\",\n url: \"#\",\n icon: Trash2,\n },\n {\n title: \"Help\",\n url: \"#\",\n icon: MessageCircleQuestion,\n },\n ],\n favorites: [\n {\n name: \"Project Management & Task Tracking\",\n url: \"#\",\n emoji: \"📊\",\n },\n {\n name: \"Family Recipe Collection & Meal Planning\",\n url: \"#\",\n emoji: \"🍳\",\n },\n {\n name: \"Fitness Tracker & Workout Routines\",\n url: \"#\",\n emoji: \"💪\",\n },\n {\n name: \"Book Notes & Reading List\",\n url: \"#\",\n emoji: \"📚\",\n },\n {\n name: \"Sustainable Gardening Tips & Plant Care\",\n url: \"#\",\n emoji: \"🌱\",\n },\n {\n name: \"Language Learning Progress & Resources\",\n url: \"#\",\n emoji: \"🗣️\",\n },\n {\n name: \"Home Renovation Ideas & Budget Tracker\",\n url: \"#\",\n emoji: \"🏠\",\n },\n {\n name: \"Personal Finance & Investment Portfolio\",\n url: \"#\",\n emoji: \"💰\",\n },\n {\n name: \"Movie & TV Show Watchlist with Reviews\",\n url: \"#\",\n emoji: \"🎬\",\n },\n {\n name: \"Daily Habit Tracker & Goal Setting\",\n url: \"#\",\n emoji: \"✅\",\n },\n ],\n workspaces: [\n {\n name: \"Personal Life Management\",\n emoji: \"🏠\",\n pages: [\n {\n name: \"Daily Journal & Reflection\",\n url: \"#\",\n emoji: \"📔\",\n },\n {\n name: \"Health & Wellness Tracker\",\n url: \"#\",\n emoji: \"🍏\",\n },\n {\n name: \"Personal Growth & Learning Goals\",\n url: \"#\",\n emoji: \"🌟\",\n },\n ],\n },\n {\n name: \"Professional Development\",\n emoji: \"💼\",\n pages: [\n {\n name: \"Career Objectives & Milestones\",\n url: \"#\",\n emoji: \"🎯\",\n },\n {\n name: \"Skill Acquisition & Training Log\",\n url: \"#\",\n emoji: \"🧠\",\n },\n {\n name: \"Networking Contacts & Events\",\n url: \"#\",\n emoji: \"🤝\",\n },\n ],\n },\n {\n name: \"Creative Projects\",\n emoji: \"🎨\",\n pages: [\n {\n name: \"Writing Ideas & Story Outlines\",\n url: \"#\",\n emoji: \"✍️\",\n },\n {\n name: \"Art & Design Portfolio\",\n url: \"#\",\n emoji: \"🖼️\",\n },\n {\n name: \"Music Composition & Practice Log\",\n url: \"#\",\n emoji: \"🎵\",\n },\n ],\n },\n {\n name: \"Home Management\",\n emoji: \"🏡\",\n pages: [\n {\n name: \"Household Budget & Expense Tracking\",\n url: \"#\",\n emoji: \"💰\",\n },\n {\n name: \"Home Maintenance Schedule & Tasks\",\n url: \"#\",\n emoji: \"🔧\",\n },\n {\n name: \"Family Calendar & Event Planning\",\n url: \"#\",\n emoji: \"📅\",\n },\n ],\n },\n {\n name: \"Travel & Adventure\",\n emoji: \"🧳\",\n pages: [\n {\n name: \"Trip Planning & Itineraries\",\n url: \"#\",\n emoji: \"🗺️\",\n },\n {\n name: \"Travel Bucket List & Inspiration\",\n url: \"#\",\n emoji: \"🌎\",\n },\n {\n name: \"Travel Journal & Photo Gallery\",\n url: \"#\",\n emoji: \"📸\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-10/components/nav-actions.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n ArrowDown,\n ArrowUp,\n Bell,\n Copy,\n CornerUpLeft,\n CornerUpRight,\n FileText,\n GalleryVerticalEnd,\n LineChart,\n Link,\n MoreHorizontal,\n Settings2,\n Star,\n Trash,\n Trash2,\n} from \"lucide-react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/registry/default/ui/popover\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/default/ui/sidebar\"\n\nconst data = [\n [\n {\n label: \"Customize Page\",\n icon: Settings2,\n },\n {\n label: \"Turn into wiki\",\n icon: FileText,\n },\n ],\n [\n {\n label: \"Copy Link\",\n icon: Link,\n },\n {\n label: \"Duplicate\",\n icon: Copy,\n },\n {\n label: \"Move to\",\n icon: CornerUpRight,\n },\n {\n label: \"Move to Trash\",\n icon: Trash2,\n },\n ],\n [\n {\n label: \"Undo\",\n icon: CornerUpLeft,\n },\n {\n label: \"View analytics\",\n icon: LineChart,\n },\n {\n label: \"Version History\",\n icon: GalleryVerticalEnd,\n },\n {\n label: \"Show delete pages\",\n icon: Trash,\n },\n {\n label: \"Notifications\",\n icon: Bell,\n },\n ],\n [\n {\n label: \"Import\",\n icon: ArrowUp,\n },\n {\n label: \"Export\",\n icon: ArrowDown,\n },\n ],\n]\n\nexport function NavActions() {\n const [isOpen, setIsOpen] = React.useState(false)\n\n React.useEffect(() => {\n setIsOpen(true)\n }, [])\n\n return (\n
\n
\n Edit Oct 08\n
\n \n \n \n \n \n \n \n \n \n \n {data.map((group, index) => (\n \n \n \n {group.map((item, index) => (\n \n \n {item.label}\n \n \n ))}\n \n \n \n ))}\n \n \n \n \n
\n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n ArrowDown,\n ArrowUp,\n Bell,\n Copy,\n CornerUpLeft,\n CornerUpRight,\n FileText,\n GalleryVerticalEnd,\n LineChart,\n Link,\n MoreHorizontal,\n Settings2,\n Star,\n Trash,\n Trash2,\n} from \"lucide-react\"\n\nimport { Button } from \"@/registry/new-york/ui/button\"\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/registry/new-york/ui/popover\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nconst data = [\n [\n {\n label: \"Customize Page\",\n icon: Settings2,\n },\n {\n label: \"Turn into wiki\",\n icon: FileText,\n },\n ],\n [\n {\n label: \"Copy Link\",\n icon: Link,\n },\n {\n label: \"Duplicate\",\n icon: Copy,\n },\n {\n label: \"Move to\",\n icon: CornerUpRight,\n },\n {\n label: \"Move to Trash\",\n icon: Trash2,\n },\n ],\n [\n {\n label: \"Undo\",\n icon: CornerUpLeft,\n },\n {\n label: \"View analytics\",\n icon: LineChart,\n },\n {\n label: \"Version History\",\n icon: GalleryVerticalEnd,\n },\n {\n label: \"Show delete pages\",\n icon: Trash,\n },\n {\n label: \"Notifications\",\n icon: Bell,\n },\n ],\n [\n {\n label: \"Import\",\n icon: ArrowUp,\n },\n {\n label: \"Export\",\n icon: ArrowDown,\n },\n ],\n]\n\nexport function NavActions() {\n const [isOpen, setIsOpen] = React.useState(false)\n\n React.useEffect(() => {\n setIsOpen(true)\n }, [])\n\n return (\n
\n
\n Edit Oct 08\n
\n \n \n \n \n \n \n \n \n \n \n {data.map((group, index) => (\n \n \n \n {group.map((item, index) => (\n \n \n {item.label}\n \n \n ))}\n \n \n \n ))}\n \n \n \n \n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-10/components/nav-favorites.tsx", - "content": "\"use client\"\n\nimport {\n ArrowUpRight,\n Link,\n MoreHorizontal,\n StarOff,\n Trash2,\n} from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavFavorites({\n favorites,\n}: {\n favorites: {\n name: string\n url: string\n emoji: string\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n Favorites\n \n {favorites.map((item) => (\n \n \n \n {item.emoji}\n {item.name}\n \n \n \n \n \n \n More\n \n \n \n \n \n Remove from Favorites\n \n \n \n \n Copy Link\n \n \n \n Open in New Tab\n \n \n \n \n Delete\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n )\n}\n", + "content": "\"use client\"\n\nimport {\n ArrowUpRight,\n Link,\n MoreHorizontal,\n StarOff,\n Trash2,\n} from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavFavorites({\n favorites,\n}: {\n favorites: {\n name: string\n url: string\n emoji: string\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n Favorites\n \n {favorites.map((item) => (\n \n \n \n {item.emoji}\n {item.name}\n \n \n \n \n \n \n More\n \n \n \n \n \n Remove from Favorites\n \n \n \n \n Copy Link\n \n \n \n Open in New Tab\n \n \n \n \n Delete\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-10/components/nav-main.tsx", - "content": "\"use client\"\n\nimport { type LucideIcon } from \"lucide-react\"\n\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n isActive?: boolean\n }[]\n}) {\n return (\n \n {items.map((item) => (\n \n \n \n \n {item.title}\n \n \n \n ))}\n \n )\n}\n", + "content": "\"use client\"\n\nimport { type LucideIcon } from \"lucide-react\"\n\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n isActive?: boolean\n }[]\n}) {\n return (\n \n {items.map((item) => (\n \n \n \n \n {item.title}\n \n \n \n ))}\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-10/components/nav-secondary.tsx", - "content": "import React from \"react\"\nimport { type LucideIcon } from \"lucide-react\"\n\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavSecondary({\n items,\n ...props\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n badge?: React.ReactNode\n }[]\n} & React.ComponentPropsWithoutRef) {\n return (\n \n \n \n {items.map((item) => (\n \n \n \n \n {item.title}\n \n \n {item.badge && {item.badge}}\n \n ))}\n \n \n \n )\n}\n", + "content": "import React from \"react\"\nimport { type LucideIcon } from \"lucide-react\"\n\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavSecondary({\n items,\n ...props\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n badge?: React.ReactNode\n }[]\n} & React.ComponentPropsWithoutRef) {\n return (\n \n \n \n {items.map((item) => (\n \n \n \n \n {item.title}\n \n \n {item.badge && {item.badge}}\n \n ))}\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-10/components/nav-workspaces.tsx", - "content": "import { ChevronRight, MoreHorizontal, Plus } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavWorkspaces({\n workspaces,\n}: {\n workspaces: {\n name: string\n emoji: React.ReactNode\n pages: {\n name: string\n emoji: React.ReactNode\n }[]\n }[]\n}) {\n return (\n \n Workspaces\n \n \n {workspaces.map((workspace) => (\n \n \n \n \n {workspace.emoji}\n {workspace.name}\n \n \n \n \n \n \n \n \n \n \n \n \n {workspace.pages.map((page) => (\n \n \n \n {page.emoji}\n {page.name}\n \n \n \n ))}\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n \n )\n}\n", + "content": "import { ChevronRight, MoreHorizontal, Plus } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavWorkspaces({\n workspaces,\n}: {\n workspaces: {\n name: string\n emoji: React.ReactNode\n pages: {\n name: string\n emoji: React.ReactNode\n }[]\n }[]\n}) {\n return (\n \n Workspaces\n \n \n {workspaces.map((workspace) => (\n \n \n \n \n {workspace.emoji}\n {workspace.name}\n \n \n \n \n \n \n \n \n \n \n \n \n {workspace.pages.map((page) => (\n \n \n \n {page.emoji}\n {page.name}\n \n \n \n ))}\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-10/components/team-switcher.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ChevronDown, Plus } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function TeamSwitcher({\n teams,\n}: {\n teams: {\n name: string\n logo: React.ElementType\n plan: string\n }[]\n}) {\n const [activeTeam, setActiveTeam] = React.useState(teams[0])\n\n return (\n \n \n \n \n \n
\n \n
\n {activeTeam.name}\n \n
\n
\n \n \n Teams\n \n {teams.map((team, index) => (\n setActiveTeam(team)}\n className=\"gap-2 p-2\"\n >\n
\n \n
\n {team.name}\n ⌘{index + 1}\n \n ))}\n \n \n
\n \n
\n
Add team
\n
\n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ChevronDown, Plus } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function TeamSwitcher({\n teams,\n}: {\n teams: {\n name: string\n logo: React.ElementType\n plan: string\n }[]\n}) {\n const [activeTeam, setActiveTeam] = React.useState(teams[0])\n\n return (\n \n \n \n \n \n
\n \n
\n {activeTeam.name}\n \n
\n
\n \n \n Teams\n \n {teams.map((team, index) => (\n setActiveTeam(team)}\n className=\"gap-2 p-2\"\n >\n
\n \n
\n {team.name}\n ⌘{index + 1}\n \n ))}\n \n \n
\n \n
\n
Add team
\n
\n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-11.json b/apps/www/public/r/styles/default/sidebar-11.json index 48ff824d..0c48061b 100644 --- a/apps/www/public/r/styles/default/sidebar-11.json +++ b/apps/www/public/r/styles/default/sidebar-11.json @@ -11,13 +11,13 @@ "files": [ { "path": "blocks/sidebar-11/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-11/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n components\n \n \n \n ui\n \n \n \n button.tsx\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-11/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n components\n \n \n \n ui\n \n \n \n button.tsx\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-11/components/app-sidebar.tsx", - "content": "import * as React from \"react\"\nimport { ChevronRight, File, Folder } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarRail,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n changes: [\n {\n file: \"README.md\",\n state: \"M\",\n },\n {\n file: \"api/hello/route.ts\",\n state: \"U\",\n },\n {\n file: \"app/layout.tsx\",\n state: \"M\",\n },\n ],\n tree: [\n [\n \"app\",\n [\n \"api\",\n [\"hello\", [\"route.ts\"]],\n \"page.tsx\",\n \"layout.tsx\",\n [\"blog\", [\"page.tsx\"]],\n ],\n ],\n [\n \"components\",\n [\"ui\", \"button.tsx\", \"card.tsx\"],\n \"header.tsx\",\n \"footer.tsx\",\n ],\n [\"lib\", [\"util.ts\"]],\n [\"public\", \"favicon.ico\", \"vercel.svg\"],\n \".eslintrc.json\",\n \".gitignore\",\n \"next.config.js\",\n \"tailwind.config.js\",\n \"package.json\",\n \"README.md\",\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n Changes\n \n \n {data.changes.map((item, index) => (\n \n \n \n {item.file}\n \n {item.state}\n \n ))}\n \n \n \n \n Files\n \n \n {data.tree.map((item, index) => (\n \n ))}\n \n \n \n \n \n \n )\n}\n\nfunction Tree({ item }: { item: string | any[] }) {\n const [name, ...items] = Array.isArray(item) ? item : [item]\n\n if (!items.length) {\n return (\n \n \n {name}\n \n )\n }\n\n return (\n \n button>svg:first-child]:rotate-90\"\n defaultOpen={name === \"components\" || name === \"ui\"}\n >\n \n \n \n \n {name}\n \n \n \n \n {items.map((subItem, index) => (\n \n ))}\n \n \n \n \n )\n}\n", + "content": "import * as React from \"react\"\nimport { ChevronRight, File, Folder } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarRail,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n changes: [\n {\n file: \"README.md\",\n state: \"M\",\n },\n {\n file: \"api/hello/route.ts\",\n state: \"U\",\n },\n {\n file: \"app/layout.tsx\",\n state: \"M\",\n },\n ],\n tree: [\n [\n \"app\",\n [\n \"api\",\n [\"hello\", [\"route.ts\"]],\n \"page.tsx\",\n \"layout.tsx\",\n [\"blog\", [\"page.tsx\"]],\n ],\n ],\n [\n \"components\",\n [\"ui\", \"button.tsx\", \"card.tsx\"],\n \"header.tsx\",\n \"footer.tsx\",\n ],\n [\"lib\", [\"util.ts\"]],\n [\"public\", \"favicon.ico\", \"vercel.svg\"],\n \".eslintrc.json\",\n \".gitignore\",\n \"next.config.js\",\n \"tailwind.config.js\",\n \"package.json\",\n \"README.md\",\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n Changes\n \n \n {data.changes.map((item, index) => (\n \n \n \n {item.file}\n \n {item.state}\n \n ))}\n \n \n \n \n Files\n \n \n {data.tree.map((item, index) => (\n \n ))}\n \n \n \n \n \n \n )\n}\n\nfunction Tree({ item }: { item: string | any[] }) {\n const [name, ...items] = Array.isArray(item) ? item : [item]\n\n if (!items.length) {\n return (\n \n \n {name}\n \n )\n }\n\n return (\n \n button>svg:first-child]:rotate-90\"\n defaultOpen={name === \"components\" || name === \"ui\"}\n >\n \n \n \n \n {name}\n \n \n \n \n {items.map((subItem, index) => (\n \n ))}\n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-12.json b/apps/www/public/r/styles/default/sidebar-12.json index 122cfef3..f2593b95 100644 --- a/apps/www/public/r/styles/default/sidebar-12.json +++ b/apps/www/public/r/styles/default/sidebar-12.json @@ -14,31 +14,31 @@ "files": [ { "path": "blocks/sidebar-12/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-12/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbList,\n BreadcrumbPage,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n October 2024\n \n \n \n
\n
\n
\n {Array.from({ length: 20 }).map((_, i) => (\n
\n ))}\n
\n
\n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-12/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbList,\n BreadcrumbPage,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n \n \n \n \n \n October 2024\n \n \n \n
\n
\n
\n {Array.from({ length: 20 }).map((_, i) => (\n
\n ))}\n
\n
\n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-12/components/app-sidebar.tsx", - "content": "import * as React from \"react\"\nimport { Plus } from \"lucide-react\"\n\nimport { Calendars } from \"@/registry/default/blocks/sidebar-12/components/calendars\"\nimport { DatePicker } from \"@/registry/default/blocks/sidebar-12/components/date-picker\"\nimport { NavUser } from \"@/registry/default/blocks/sidebar-12/components/nav-user\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarRail,\n SidebarSeparator,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n user: {\n name: \"Bryan Funk\",\n email: \"bryan.funk@prodkt.cloud\",\n avatar: \"/avatars/bryanfunk.jpg\",\n },\n calendars: [\n {\n name: \"My Calendars\",\n items: [\"Personal\", \"Work\", \"Family\"],\n },\n {\n name: \"Favorites\",\n items: [\"Holidays\", \"Birthdays\"],\n },\n {\n name: \"Other\",\n items: [\"Travel\", \"Reminders\", \"Deadlines\"],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n New Calendar\n \n \n \n \n \n \n )\n}\n", + "content": "import * as React from \"react\"\nimport { Plus } from \"lucide-react\"\n\nimport { Calendars } from \"@/registry/new-york/blocks/sidebar-12/components/calendars\"\nimport { DatePicker } from \"@/registry/new-york/blocks/sidebar-12/components/date-picker\"\nimport { NavUser } from \"@/registry/new-york/blocks/sidebar-12/components/nav-user\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarRail,\n SidebarSeparator,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n user: {\n name: \"Bryan Funk\",\n email: \"bryan.funk@prodkt.cloud\",\n avatar: \"/avatars/bryanfunk.jpg\",\n },\n calendars: [\n {\n name: \"My Calendars\",\n items: [\"Personal\", \"Work\", \"Family\"],\n },\n {\n name: \"Favorites\",\n items: [\"Holidays\", \"Birthdays\"],\n },\n {\n name: \"Other\",\n items: [\"Travel\", \"Reminders\", \"Deadlines\"],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n New Calendar\n \n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-12/components/calendars.tsx", - "content": "import * as React from \"react\"\nimport { Check, ChevronRight } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarSeparator,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function Calendars({\n calendars,\n}: {\n calendars: {\n name: string\n items: string[]\n }[]\n}) {\n return (\n <>\n {calendars.map((calendar, index) => (\n \n \n \n \n \n {calendar.name}{\" \"}\n \n \n \n \n \n \n {calendar.items.map((item, index) => (\n \n \n \n \n
\n {item}\n \n \n ))}\n \n \n \n \n \n \n \n ))}\n \n )\n}\n", + "content": "import * as React from \"react\"\nimport { Check, ChevronRight } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarSeparator,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function Calendars({\n calendars,\n}: {\n calendars: {\n name: string\n items: string[]\n }[]\n}) {\n return (\n <>\n {calendars.map((calendar, index) => (\n \n \n \n \n \n {calendar.name}{\" \"}\n \n \n \n \n \n \n {calendar.items.map((item, index) => (\n \n \n \n \n
\n {item}\n \n \n ))}\n \n \n \n \n \n \n \n ))}\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-12/components/date-picker.tsx", - "content": "import { Calendar } from \"@/registry/default/ui/calendar\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function DatePicker() {\n return (\n \n \n \n \n \n )\n}\n", + "content": "import { Calendar } from \"@/registry/new-york/ui/calendar\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function DatePicker() {\n return (\n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-12/components/nav-user.tsx", - "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/new-york/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-13.json b/apps/www/public/r/styles/default/sidebar-13.json index 24cc0116..e7b995a5 100644 --- a/apps/www/public/r/styles/default/sidebar-13.json +++ b/apps/www/public/r/styles/default/sidebar-13.json @@ -11,13 +11,13 @@ "files": [ { "path": "blocks/sidebar-13/page.tsx", - "content": "import { SettingsDialog } from \"@/registry/default/blocks/sidebar-13/components/settings-dialog\"\n\nexport default function Page() {\n return (\n
\n \n
\n )\n}\n", + "content": "import { SettingsDialog } from \"@/registry/new-york/blocks/sidebar-13/components/settings-dialog\"\n\nexport default function Page() {\n return (\n
\n \n
\n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-13/components/settings-dialog.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n Bell,\n Check,\n Globe,\n Home,\n Keyboard,\n Link,\n Lock,\n Menu,\n MessageCircle,\n Paintbrush,\n Settings,\n Video,\n} from \"lucide-react\"\n\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogTitle,\n DialogTrigger,\n} from \"@/registry/default/ui/dialog\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarProvider,\n} from \"@/registry/default/ui/sidebar\"\n\nconst data = {\n nav: [\n { name: \"Notifications\", icon: Bell },\n { name: \"Navigation\", icon: Menu },\n { name: \"Home\", icon: Home },\n { name: \"Appearance\", icon: Paintbrush },\n { name: \"Messages & media\", icon: MessageCircle },\n { name: \"Language & region\", icon: Globe },\n { name: \"Accessibility\", icon: Keyboard },\n { name: \"Mark as read\", icon: Check },\n { name: \"Audio & video\", icon: Video },\n { name: \"Connected accounts\", icon: Link },\n { name: \"Privacy & visibility\", icon: Lock },\n { name: \"Advanced\", icon: Settings },\n ],\n}\n\nexport function SettingsDialog() {\n const [open, setOpen] = React.useState(true)\n\n return (\n \n \n \n \n \n Settings\n \n Customize your settings here.\n \n \n \n \n \n \n \n {data.nav.map((item) => (\n \n \n \n \n {item.name}\n \n \n \n ))}\n \n \n \n \n \n
\n
\n
\n \n \n \n Settings\n \n \n \n Messages & media\n \n \n \n
\n
\n
\n {Array.from({ length: 10 }).map((_, i) => (\n \n ))}\n
\n
\n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n Bell,\n Check,\n Globe,\n Home,\n Keyboard,\n Link,\n Lock,\n Menu,\n MessageCircle,\n Paintbrush,\n Settings,\n Video,\n} from \"lucide-react\"\n\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Button } from \"@/registry/new-york/ui/button\"\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogTitle,\n DialogTrigger,\n} from \"@/registry/new-york/ui/dialog\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarProvider,\n} from \"@/registry/new-york/ui/sidebar\"\n\nconst data = {\n nav: [\n { name: \"Notifications\", icon: Bell },\n { name: \"Navigation\", icon: Menu },\n { name: \"Home\", icon: Home },\n { name: \"Appearance\", icon: Paintbrush },\n { name: \"Messages & media\", icon: MessageCircle },\n { name: \"Language & region\", icon: Globe },\n { name: \"Accessibility\", icon: Keyboard },\n { name: \"Mark as read\", icon: Check },\n { name: \"Audio & video\", icon: Video },\n { name: \"Connected accounts\", icon: Link },\n { name: \"Privacy & visibility\", icon: Lock },\n { name: \"Advanced\", icon: Settings },\n ],\n}\n\nexport function SettingsDialog() {\n const [open, setOpen] = React.useState(true)\n\n return (\n \n \n \n \n \n Settings\n \n Customize your settings here.\n \n \n \n \n \n \n \n {data.nav.map((item) => (\n \n \n \n \n {item.name}\n \n \n \n ))}\n \n \n \n \n \n
\n
\n
\n \n \n \n Settings\n \n \n \n Messages & media\n \n \n \n
\n
\n
\n {Array.from({ length: 10 }).map((_, i) => (\n \n ))}\n
\n
\n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-14.json b/apps/www/public/r/styles/default/sidebar-14.json index 82abd62f..029ca7c4 100644 --- a/apps/www/public/r/styles/default/sidebar-14.json +++ b/apps/www/public/r/styles/default/sidebar-14.json @@ -9,13 +9,13 @@ "files": [ { "path": "blocks/sidebar-14/page.tsx", - "content": "import { AppSidebar } from \"@/registry/default/blocks/sidebar-14/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n
\n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n )\n}\n", + "content": "import { AppSidebar } from \"@/registry/new-york/blocks/sidebar-14/components/app-sidebar\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n
\n \n \n \n \n Building Your Application\n \n \n \n \n Data Fetching\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-14/components/app-sidebar.tsx", - "content": "import * as React from \"react\"\n\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarRail,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Community\",\n url: \"#\",\n items: [\n {\n title: \"Contribution Guide\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n Table of Contents\n \n \n {data.navMain.map((item) => (\n \n \n \n {item.title}\n \n \n {item.items?.length ? (\n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n ) : null}\n \n ))}\n \n \n \n \n \n \n )\n}\n", + "content": "import * as React from \"react\"\n\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarRail,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n navMain: [\n {\n title: \"Getting Started\",\n url: \"#\",\n items: [\n {\n title: \"Installation\",\n url: \"#\",\n },\n {\n title: \"Project Structure\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Building Your Application\",\n url: \"#\",\n items: [\n {\n title: \"Routing\",\n url: \"#\",\n },\n {\n title: \"Data Fetching\",\n url: \"#\",\n isActive: true,\n },\n {\n title: \"Rendering\",\n url: \"#\",\n },\n {\n title: \"Caching\",\n url: \"#\",\n },\n {\n title: \"Styling\",\n url: \"#\",\n },\n {\n title: \"Optimizing\",\n url: \"#\",\n },\n {\n title: \"Configuring\",\n url: \"#\",\n },\n {\n title: \"Testing\",\n url: \"#\",\n },\n {\n title: \"Authentication\",\n url: \"#\",\n },\n {\n title: \"Deploying\",\n url: \"#\",\n },\n {\n title: \"Upgrading\",\n url: \"#\",\n },\n {\n title: \"Examples\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"API Reference\",\n url: \"#\",\n items: [\n {\n title: \"Components\",\n url: \"#\",\n },\n {\n title: \"File Conventions\",\n url: \"#\",\n },\n {\n title: \"Functions\",\n url: \"#\",\n },\n {\n title: \"next.config.js Options\",\n url: \"#\",\n },\n {\n title: \"CLI\",\n url: \"#\",\n },\n {\n title: \"Edge Runtime\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Architecture\",\n url: \"#\",\n items: [\n {\n title: \"Accessibility\",\n url: \"#\",\n },\n {\n title: \"Fast Refresh\",\n url: \"#\",\n },\n {\n title: \"Next.js Compiler\",\n url: \"#\",\n },\n {\n title: \"Supported Browsers\",\n url: \"#\",\n },\n {\n title: \"Turbopack\",\n url: \"#\",\n },\n ],\n },\n {\n title: \"Community\",\n url: \"#\",\n items: [\n {\n title: \"Contribution Guide\",\n url: \"#\",\n },\n ],\n },\n ],\n}\n\nexport function AppSidebar({ ...props }: React.ComponentProps) {\n return (\n \n \n \n Table of Contents\n \n \n {data.navMain.map((item) => (\n \n \n \n {item.title}\n \n \n {item.items?.length ? (\n \n {item.items.map((item) => (\n \n \n {item.title}\n \n \n ))}\n \n ) : null}\n \n ))}\n \n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" } diff --git a/apps/www/public/r/styles/default/sidebar-15.json b/apps/www/public/r/styles/default/sidebar-15.json index 95cf7253..70142cef 100644 --- a/apps/www/public/r/styles/default/sidebar-15.json +++ b/apps/www/public/r/styles/default/sidebar-15.json @@ -15,67 +15,67 @@ "files": [ { "path": "blocks/sidebar-15/page.tsx", - "content": "import { SidebarLeft } from \"@/registry/default/blocks/sidebar-15/components/sidebar-left\"\nimport { SidebarRight } from \"@/registry/default/blocks/sidebar-15/components/sidebar-right\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbList,\n BreadcrumbPage,\n} from \"@/registry/default/ui/breadcrumb\"\nimport { Separator } from \"@/registry/default/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/default/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n
\n \n \n \n \n \n \n Project Management & Task Tracking\n \n \n \n \n
\n
\n
\n
\n
\n
\n \n \n \n )\n}\n", + "content": "import { SidebarLeft } from \"@/registry/new-york/blocks/sidebar-15/components/sidebar-left\"\nimport { SidebarRight } from \"@/registry/new-york/blocks/sidebar-15/components/sidebar-right\"\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbList,\n BreadcrumbPage,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\nimport {\n SidebarInset,\n SidebarProvider,\n SidebarTrigger,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport default function Page() {\n return (\n \n \n \n
\n
\n \n \n \n \n \n \n Project Management & Task Tracking\n \n \n \n \n
\n
\n
\n
\n
\n
\n \n \n \n )\n}\n", "type": "registry:page", "target": "app/dashboard/page.tsx" }, { "path": "blocks/sidebar-15/components/calendars.tsx", - "content": "import * as React from \"react\"\nimport { Check, ChevronRight } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarSeparator,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function Calendars({\n calendars,\n}: {\n calendars: {\n name: string\n items: string[]\n }[]\n}) {\n return (\n <>\n {calendars.map((calendar, index) => (\n \n \n \n \n \n {calendar.name}{\" \"}\n \n \n \n \n \n \n {calendar.items.map((item, index) => (\n \n \n \n \n
\n {item}\n \n \n ))}\n \n \n \n \n \n \n \n ))}\n \n )\n}\n", + "content": "import * as React from \"react\"\nimport { Check, ChevronRight } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarSeparator,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function Calendars({\n calendars,\n}: {\n calendars: {\n name: string\n items: string[]\n }[]\n}) {\n return (\n <>\n {calendars.map((calendar, index) => (\n \n \n \n \n \n {calendar.name}{\" \"}\n \n \n \n \n \n \n {calendar.items.map((item, index) => (\n \n \n \n \n
\n {item}\n \n \n ))}\n \n \n \n \n \n \n \n ))}\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-15/components/date-picker.tsx", - "content": "import { Calendar } from \"@/registry/default/ui/calendar\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function DatePicker() {\n return (\n \n \n \n \n \n )\n}\n", + "content": "import { Calendar } from \"@/registry/new-york/ui/calendar\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function DatePicker() {\n return (\n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-15/components/nav-favorites.tsx", - "content": "\"use client\"\n\nimport {\n ArrowUpRight,\n Link,\n MoreHorizontal,\n StarOff,\n Trash2,\n} from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavFavorites({\n favorites,\n}: {\n favorites: {\n name: string\n url: string\n emoji: string\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n Favorites\n \n {favorites.map((item) => (\n \n \n \n {item.emoji}\n {item.name}\n \n \n \n \n \n \n More\n \n \n \n \n \n Remove from Favorites\n \n \n \n \n Copy Link\n \n \n \n Open in New Tab\n \n \n \n \n Delete\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n )\n}\n", + "content": "\"use client\"\n\nimport {\n ArrowUpRight,\n Link,\n MoreHorizontal,\n StarOff,\n Trash2,\n} from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavFavorites({\n favorites,\n}: {\n favorites: {\n name: string\n url: string\n emoji: string\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n Favorites\n \n {favorites.map((item) => (\n \n \n \n {item.emoji}\n {item.name}\n \n \n \n \n \n \n More\n \n \n \n \n \n Remove from Favorites\n \n \n \n \n Copy Link\n \n \n \n Open in New Tab\n \n \n \n \n Delete\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-15/components/nav-main.tsx", - "content": "\"use client\"\n\nimport { type LucideIcon } from \"lucide-react\"\n\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n isActive?: boolean\n }[]\n}) {\n return (\n \n {items.map((item) => (\n \n \n \n \n {item.title}\n \n \n \n ))}\n \n )\n}\n", + "content": "\"use client\"\n\nimport { type LucideIcon } from \"lucide-react\"\n\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n isActive?: boolean\n }[]\n}) {\n return (\n \n {items.map((item) => (\n \n \n \n \n {item.title}\n \n \n \n ))}\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-15/components/nav-secondary.tsx", - "content": "import React from \"react\"\nimport { type LucideIcon } from \"lucide-react\"\n\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavSecondary({\n items,\n ...props\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n badge?: React.ReactNode\n }[]\n} & React.ComponentPropsWithoutRef) {\n return (\n \n \n \n {items.map((item) => (\n \n \n \n \n {item.title}\n \n \n {item.badge && {item.badge}}\n \n ))}\n \n \n \n )\n}\n", + "content": "import React from \"react\"\nimport { type LucideIcon } from \"lucide-react\"\n\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavSecondary({\n items,\n ...props\n}: {\n items: {\n title: string\n url: string\n icon: LucideIcon\n badge?: React.ReactNode\n }[]\n} & React.ComponentPropsWithoutRef) {\n return (\n \n \n \n {items.map((item) => (\n \n \n \n \n {item.title}\n \n \n {item.badge && {item.badge}}\n \n ))}\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-15/components/nav-user.tsx", - "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/new-york/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-15/components/nav-workspaces.tsx", - "content": "import { ChevronRight, MoreHorizontal, Plus } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavWorkspaces({\n workspaces,\n}: {\n workspaces: {\n name: string\n emoji: React.ReactNode\n pages: {\n name: string\n emoji: React.ReactNode\n }[]\n }[]\n}) {\n return (\n \n Workspaces\n \n \n {workspaces.map((workspace) => (\n \n \n \n \n {workspace.emoji}\n {workspace.name}\n \n \n \n \n \n \n \n \n \n \n \n \n {workspace.pages.map((page) => (\n \n \n \n {page.emoji}\n {page.name}\n \n \n \n ))}\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n \n )\n}\n", + "content": "import { ChevronRight, MoreHorizontal, Plus } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavWorkspaces({\n workspaces,\n}: {\n workspaces: {\n name: string\n emoji: React.ReactNode\n pages: {\n name: string\n emoji: React.ReactNode\n }[]\n }[]\n}) {\n return (\n \n Workspaces\n \n \n {workspaces.map((workspace) => (\n \n \n \n \n {workspace.emoji}\n {workspace.name}\n \n \n \n \n \n \n \n \n \n \n \n \n {workspace.pages.map((page) => (\n \n \n \n {page.emoji}\n {page.name}\n \n \n \n ))}\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-15/components/sidebar-left.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n AudioWaveform,\n Blocks,\n Calendar,\n Command,\n Home,\n Inbox,\n MessageCircleQuestion,\n Search,\n Settings2,\n Sparkles,\n Trash2,\n} from \"lucide-react\"\n\nimport { NavFavorites } from \"@/registry/default/blocks/sidebar-15/components/nav-favorites\"\nimport { NavMain } from \"@/registry/default/blocks/sidebar-15/components/nav-main\"\nimport { NavSecondary } from \"@/registry/default/blocks/sidebar-15/components/nav-secondary\"\nimport { NavWorkspaces } from \"@/registry/default/blocks/sidebar-15/components/nav-workspaces\"\nimport { TeamSwitcher } from \"@/registry/default/blocks/sidebar-15/components/team-switcher\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarHeader,\n SidebarRail,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n teams: [\n {\n name: \"Acme Inc\",\n logo: Command,\n plan: \"Enterprise\",\n },\n {\n name: \"Acme Corp.\",\n logo: AudioWaveform,\n plan: \"Startup\",\n },\n {\n name: \"Evil Corp.\",\n logo: Command,\n plan: \"Free\",\n },\n ],\n navMain: [\n {\n title: \"Search\",\n url: \"#\",\n icon: Search,\n },\n {\n title: \"Ask AI\",\n url: \"#\",\n icon: Sparkles,\n },\n {\n title: \"Home\",\n url: \"#\",\n icon: Home,\n isActive: true,\n },\n {\n title: \"Inbox\",\n url: \"#\",\n icon: Inbox,\n badge: \"10\",\n },\n ],\n navSecondary: [\n {\n title: \"Calendar\",\n url: \"#\",\n icon: Calendar,\n },\n {\n title: \"Settings\",\n url: \"#\",\n icon: Settings2,\n },\n {\n title: \"Templates\",\n url: \"#\",\n icon: Blocks,\n },\n {\n title: \"Trash\",\n url: \"#\",\n icon: Trash2,\n },\n {\n title: \"Help\",\n url: \"#\",\n icon: MessageCircleQuestion,\n },\n ],\n favorites: [\n {\n name: \"Project Management & Task Tracking\",\n url: \"#\",\n emoji: \"📊\",\n },\n {\n name: \"Family Recipe Collection & Meal Planning\",\n url: \"#\",\n emoji: \"🍳\",\n },\n {\n name: \"Fitness Tracker & Workout Routines\",\n url: \"#\",\n emoji: \"💪\",\n },\n {\n name: \"Book Notes & Reading List\",\n url: \"#\",\n emoji: \"📚\",\n },\n {\n name: \"Sustainable Gardening Tips & Plant Care\",\n url: \"#\",\n emoji: \"🌱\",\n },\n {\n name: \"Language Learning Progress & Resources\",\n url: \"#\",\n emoji: \"🗣️\",\n },\n {\n name: \"Home Renovation Ideas & Budget Tracker\",\n url: \"#\",\n emoji: \"🏠\",\n },\n {\n name: \"Personal Finance & Investment Portfolio\",\n url: \"#\",\n emoji: \"💰\",\n },\n {\n name: \"Movie & TV Show Watchlist with Reviews\",\n url: \"#\",\n emoji: \"🎬\",\n },\n {\n name: \"Daily Habit Tracker & Goal Setting\",\n url: \"#\",\n emoji: \"✅\",\n },\n ],\n workspaces: [\n {\n name: \"Personal Life Management\",\n emoji: \"🏠\",\n pages: [\n {\n name: \"Daily Journal & Reflection\",\n url: \"#\",\n emoji: \"📔\",\n },\n {\n name: \"Health & Wellness Tracker\",\n url: \"#\",\n emoji: \"🍏\",\n },\n {\n name: \"Personal Growth & Learning Goals\",\n url: \"#\",\n emoji: \"🌟\",\n },\n ],\n },\n {\n name: \"Professional Development\",\n emoji: \"💼\",\n pages: [\n {\n name: \"Career Objectives & Milestones\",\n url: \"#\",\n emoji: \"🎯\",\n },\n {\n name: \"Skill Acquisition & Training Log\",\n url: \"#\",\n emoji: \"🧠\",\n },\n {\n name: \"Networking Contacts & Events\",\n url: \"#\",\n emoji: \"🤝\",\n },\n ],\n },\n {\n name: \"Creative Projects\",\n emoji: \"🎨\",\n pages: [\n {\n name: \"Writing Ideas & Story Outlines\",\n url: \"#\",\n emoji: \"✍️\",\n },\n {\n name: \"Art & Design Portfolio\",\n url: \"#\",\n emoji: \"🖼️\",\n },\n {\n name: \"Music Composition & Practice Log\",\n url: \"#\",\n emoji: \"🎵\",\n },\n ],\n },\n {\n name: \"Home Management\",\n emoji: \"🏡\",\n pages: [\n {\n name: \"Household Budget & Expense Tracking\",\n url: \"#\",\n emoji: \"💰\",\n },\n {\n name: \"Home Maintenance Schedule & Tasks\",\n url: \"#\",\n emoji: \"🔧\",\n },\n {\n name: \"Family Calendar & Event Planning\",\n url: \"#\",\n emoji: \"📅\",\n },\n ],\n },\n {\n name: \"Travel & Adventure\",\n emoji: \"🧳\",\n pages: [\n {\n name: \"Trip Planning & Itineraries\",\n url: \"#\",\n emoji: \"🗺️\",\n },\n {\n name: \"Travel Bucket List & Inspiration\",\n url: \"#\",\n emoji: \"🌎\",\n },\n {\n name: \"Travel Journal & Photo Gallery\",\n url: \"#\",\n emoji: \"📸\",\n },\n ],\n },\n ],\n}\n\nexport function SidebarLeft({\n ...props\n}: React.ComponentProps) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n AudioWaveform,\n Blocks,\n Calendar,\n Command,\n Home,\n Inbox,\n MessageCircleQuestion,\n Search,\n Settings2,\n Sparkles,\n Trash2,\n} from \"lucide-react\"\n\nimport { NavFavorites } from \"@/registry/new-york/blocks/sidebar-15/components/nav-favorites\"\nimport { NavMain } from \"@/registry/new-york/blocks/sidebar-15/components/nav-main\"\nimport { NavSecondary } from \"@/registry/new-york/blocks/sidebar-15/components/nav-secondary\"\nimport { NavWorkspaces } from \"@/registry/new-york/blocks/sidebar-15/components/nav-workspaces\"\nimport { TeamSwitcher } from \"@/registry/new-york/blocks/sidebar-15/components/team-switcher\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarHeader,\n SidebarRail,\n} from \"@/registry/new-york/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n teams: [\n {\n name: \"Acme Inc\",\n logo: Command,\n plan: \"Enterprise\",\n },\n {\n name: \"Acme Corp.\",\n logo: AudioWaveform,\n plan: \"Startup\",\n },\n {\n name: \"Evil Corp.\",\n logo: Command,\n plan: \"Free\",\n },\n ],\n navMain: [\n {\n title: \"Search\",\n url: \"#\",\n icon: Search,\n },\n {\n title: \"Ask AI\",\n url: \"#\",\n icon: Sparkles,\n },\n {\n title: \"Home\",\n url: \"#\",\n icon: Home,\n isActive: true,\n },\n {\n title: \"Inbox\",\n url: \"#\",\n icon: Inbox,\n badge: \"10\",\n },\n ],\n navSecondary: [\n {\n title: \"Calendar\",\n url: \"#\",\n icon: Calendar,\n },\n {\n title: \"Settings\",\n url: \"#\",\n icon: Settings2,\n },\n {\n title: \"Templates\",\n url: \"#\",\n icon: Blocks,\n },\n {\n title: \"Trash\",\n url: \"#\",\n icon: Trash2,\n },\n {\n title: \"Help\",\n url: \"#\",\n icon: MessageCircleQuestion,\n },\n ],\n favorites: [\n {\n name: \"Project Management & Task Tracking\",\n url: \"#\",\n emoji: \"📊\",\n },\n {\n name: \"Family Recipe Collection & Meal Planning\",\n url: \"#\",\n emoji: \"🍳\",\n },\n {\n name: \"Fitness Tracker & Workout Routines\",\n url: \"#\",\n emoji: \"💪\",\n },\n {\n name: \"Book Notes & Reading List\",\n url: \"#\",\n emoji: \"📚\",\n },\n {\n name: \"Sustainable Gardening Tips & Plant Care\",\n url: \"#\",\n emoji: \"🌱\",\n },\n {\n name: \"Language Learning Progress & Resources\",\n url: \"#\",\n emoji: \"🗣️\",\n },\n {\n name: \"Home Renovation Ideas & Budget Tracker\",\n url: \"#\",\n emoji: \"🏠\",\n },\n {\n name: \"Personal Finance & Investment Portfolio\",\n url: \"#\",\n emoji: \"💰\",\n },\n {\n name: \"Movie & TV Show Watchlist with Reviews\",\n url: \"#\",\n emoji: \"🎬\",\n },\n {\n name: \"Daily Habit Tracker & Goal Setting\",\n url: \"#\",\n emoji: \"✅\",\n },\n ],\n workspaces: [\n {\n name: \"Personal Life Management\",\n emoji: \"🏠\",\n pages: [\n {\n name: \"Daily Journal & Reflection\",\n url: \"#\",\n emoji: \"📔\",\n },\n {\n name: \"Health & Wellness Tracker\",\n url: \"#\",\n emoji: \"🍏\",\n },\n {\n name: \"Personal Growth & Learning Goals\",\n url: \"#\",\n emoji: \"🌟\",\n },\n ],\n },\n {\n name: \"Professional Development\",\n emoji: \"💼\",\n pages: [\n {\n name: \"Career Objectives & Milestones\",\n url: \"#\",\n emoji: \"🎯\",\n },\n {\n name: \"Skill Acquisition & Training Log\",\n url: \"#\",\n emoji: \"🧠\",\n },\n {\n name: \"Networking Contacts & Events\",\n url: \"#\",\n emoji: \"🤝\",\n },\n ],\n },\n {\n name: \"Creative Projects\",\n emoji: \"🎨\",\n pages: [\n {\n name: \"Writing Ideas & Story Outlines\",\n url: \"#\",\n emoji: \"✍️\",\n },\n {\n name: \"Art & Design Portfolio\",\n url: \"#\",\n emoji: \"🖼️\",\n },\n {\n name: \"Music Composition & Practice Log\",\n url: \"#\",\n emoji: \"🎵\",\n },\n ],\n },\n {\n name: \"Home Management\",\n emoji: \"🏡\",\n pages: [\n {\n name: \"Household Budget & Expense Tracking\",\n url: \"#\",\n emoji: \"💰\",\n },\n {\n name: \"Home Maintenance Schedule & Tasks\",\n url: \"#\",\n emoji: \"🔧\",\n },\n {\n name: \"Family Calendar & Event Planning\",\n url: \"#\",\n emoji: \"📅\",\n },\n ],\n },\n {\n name: \"Travel & Adventure\",\n emoji: \"🧳\",\n pages: [\n {\n name: \"Trip Planning & Itineraries\",\n url: \"#\",\n emoji: \"🗺️\",\n },\n {\n name: \"Travel Bucket List & Inspiration\",\n url: \"#\",\n emoji: \"🌎\",\n },\n {\n name: \"Travel Journal & Photo Gallery\",\n url: \"#\",\n emoji: \"📸\",\n },\n ],\n },\n ],\n}\n\nexport function SidebarLeft({\n ...props\n}: React.ComponentProps) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "blocks/sidebar-15/components/sidebar-right.tsx", - "content": "import * as React from \"react\"\nimport { Plus } from \"lucide-react\"\n\nimport { Calendars } from \"@/registry/default/blocks/sidebar-15/components/calendars\"\nimport { DatePicker } from \"@/registry/default/blocks/sidebar-15/components/date-picker\"\nimport { NavUser } from \"@/registry/default/blocks/sidebar-15/components/nav-user\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarRail,\n SidebarSeparator,\n} from \"@/registry/default/ui/sidebar\"\n\n// This is sample data.\nconst data = {\n user: {\n name: \"Bryan Funk\",\n email: \"bryan.funk@prodkt.cloud\",\n avatar: \"/avatars/bryanfunk.jpg\",\n },\n calendars: [\n {\n name: \"My Calendars\",\n items: [\"Personal\", \"Work\", \"Family\"],\n },\n {\n name: \"Favorites\",\n items: [\"Holidays\", \"Birthdays\"],\n },\n {\n name: \"Other\",\n items: [\"Travel\", \"Reminders\", \"Deadlines\"],\n },\n ],\n}\n\nexport function SidebarRight({\n ...props\n}: React.ComponentProps) {\n return (\n
\n )\n}\n", + "content": "import { cn } from \"@/registry/new-york/lib/utils\"\n\nexport function ComponentWrapper({\n className,\n name,\n children,\n ...props\n}: React.ComponentPropsWithoutRef<\"div\"> & { name: string }) {\n return (\n \n
\n
{name}
\n
\n
div]:max-w-full\">\n {children}\n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/nav-main.tsx", - "content": "\"use client\"\n\nimport { ChevronRight, type LucideIcon } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon?: LucideIcon\n isActive?: boolean\n items?: {\n title: string\n url: string\n }[]\n }[]\n}) {\n return (\n \n Platform\n \n {items.map((item) => (\n \n \n \n \n {item.icon && }\n {item.title}\n \n \n \n \n \n {item.items?.map((subItem) => (\n \n \n \n {subItem.title}\n \n \n \n ))}\n \n \n \n \n ))}\n \n \n )\n}\n", + "content": "\"use client\"\n\nimport { ChevronRight, type LucideIcon } from \"lucide-react\"\n\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavMain({\n items,\n}: {\n items: {\n title: string\n url: string\n icon?: LucideIcon\n isActive?: boolean\n items?: {\n title: string\n url: string\n }[]\n }[]\n}) {\n return (\n \n Platform\n \n {items.map((item) => (\n \n \n \n \n {item.icon && }\n {item.title}\n \n \n \n \n \n {item.items?.map((subItem) => (\n \n \n \n {subItem.title}\n \n \n \n ))}\n \n \n \n \n ))}\n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/nav-projects.tsx", - "content": "\"use client\"\n\nimport {\n Folder,\n Forward,\n MoreHorizontal,\n Trash2,\n type LucideIcon,\n} from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavProjects({\n projects,\n}: {\n projects: {\n name: string\n url: string\n icon: LucideIcon\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n Projects\n \n {projects.map((item) => (\n \n \n \n \n {item.name}\n \n \n \n \n \n \n More\n \n \n \n \n \n View Project\n \n \n \n Share Project\n \n \n \n \n Delete Project\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n )\n}\n", + "content": "\"use client\"\n\nimport {\n Folder,\n Forward,\n MoreHorizontal,\n Trash2,\n type LucideIcon,\n} from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavProjects({\n projects,\n}: {\n projects: {\n name: string\n url: string\n icon: LucideIcon\n }[]\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n Projects\n \n {projects.map((item) => (\n \n \n \n \n {item.name}\n \n \n \n \n \n \n More\n \n \n \n \n \n View Project\n \n \n \n Share Project\n \n \n \n \n Delete Project\n \n \n \n \n ))}\n \n \n \n More\n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/nav-user.tsx", - "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport {\n BadgeCheck,\n Bell,\n ChevronsUpDown,\n CreditCard,\n LogOut,\n Sparkles,\n} from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/new-york/ui/avatar\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function NavUser({\n user,\n}: {\n user: {\n name: string\n email: string\n avatar: string\n }\n}) {\n const { isMobile } = useSidebar()\n\n return (\n \n \n \n \n \n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n \n \n
\n \n \n
\n \n \n CN\n \n
\n {user.name}\n {user.email}\n
\n
\n
\n \n \n \n \n Upgrade to Pro\n \n \n \n \n \n \n Account\n \n \n \n Billing\n \n \n \n Notifications\n \n \n \n \n \n Log out\n \n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/team-switcher.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ChevronsUpDown, Plus } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/default/ui/sidebar\"\n\nexport function TeamSwitcher({\n teams,\n}: {\n teams: {\n name: string\n logo: React.ElementType\n plan: string\n }[]\n}) {\n const { isMobile } = useSidebar()\n const [activeTeam, setActiveTeam] = React.useState(teams[0])\n\n return (\n \n \n \n \n \n
\n \n
\n
\n \n {activeTeam.name}\n \n {activeTeam.plan}\n
\n \n \n
\n \n \n Teams\n \n {teams.map((team, index) => (\n setActiveTeam(team)}\n className=\"gap-2 p-2\"\n >\n
\n \n
\n {team.name}\n ⌘{index + 1}\n \n ))}\n \n \n
\n \n
\n
Add team
\n
\n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ChevronsUpDown, Plus } from \"lucide-react\"\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from \"@/registry/new-york/ui/sidebar\"\n\nexport function TeamSwitcher({\n teams,\n}: {\n teams: {\n name: string\n logo: React.ElementType\n plan: string\n }[]\n}) {\n const { isMobile } = useSidebar()\n const [activeTeam, setActiveTeam] = React.useState(teams[0])\n\n return (\n \n \n \n \n \n
\n \n
\n
\n \n {activeTeam.name}\n \n {activeTeam.plan}\n
\n \n \n
\n \n \n Teams\n \n {teams.map((team, index) => (\n setActiveTeam(team)}\n className=\"gap-2 p-2\"\n >\n
\n \n
\n {team.name}\n ⌘{index + 1}\n \n ))}\n \n \n
\n \n
\n
Add team
\n
\n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/accordion-demo.tsx", - "content": "import {\n Accordion,\n AccordionContent,\n AccordionItem,\n AccordionTrigger,\n} from \"@/registry/default/ui/accordion\"\n\nexport function AccordionDemo() {\n return (\n \n \n Is it accessible?\n \n Yes. It adheres to the WAI-ARIA design pattern.\n \n \n \n Is it styled?\n \n Yes. It comes with default styles that matches the other\n components' aesthetic.\n \n \n \n Is it animated?\n \n Yes. It's animated by default, but you can disable it if you prefer.\n \n \n \n )\n}\n", + "content": "import {\n Accordion,\n AccordionContent,\n AccordionItem,\n AccordionTrigger,\n} from \"@/registry/new-york/ui/accordion\"\n\nexport function AccordionDemo() {\n return (\n \n \n Is it accessible?\n \n Yes. It adheres to the WAI-ARIA design pattern.\n \n \n \n Is it styled?\n \n Yes. It comes with default styles that matches the other\n components' aesthetic.\n \n \n \n Is it animated?\n \n Yes. It's animated by default, but you can disable it if you prefer.\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/alert-demo.tsx", - "content": "import { Terminal } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport function AlertDemo() {\n return (\n \n \n Heads up!\n \n You can add components to your app using the cli.\n \n \n )\n}\n", + "content": "import { Terminal } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/new-york/ui/alert\"\n\nexport function AlertDemo() {\n return (\n \n \n Heads up!\n \n You can add components to your app using the cli.\n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/alert-dialog-demo.tsx", - "content": "import {\n AlertDialog,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogTitle,\n AlertDialogTrigger,\n} from \"@/registry/default/ui/alert-dialog\"\nimport { Button } from \"@/registry/default/ui/button\"\n\nexport function AlertDialogDemo() {\n return (\n \n \n \n \n \n \n Are you absolutely sure?\n \n This action cannot be undone. This will permanently delete your\n account and remove your data from our servers.\n \n \n \n Cancel\n Continue\n \n \n \n )\n}\n", + "content": "import {\n AlertDialog,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogTitle,\n AlertDialogTrigger,\n} from \"@/registry/new-york/ui/alert-dialog\"\nimport { Button } from \"@/registry/new-york/ui/button\"\n\nexport function AlertDialogDemo() {\n return (\n \n \n \n \n \n \n Are you absolutely sure?\n \n This action cannot be undone. This will permanently delete your\n account and remove your data from our servers.\n \n \n \n Cancel\n Continue\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/aspect-ratio-demo.tsx", - "content": "import Image from \"next/image\"\n\nimport { AspectRatio } from \"@/registry/default/ui/aspect-ratio\"\n\nexport function AspectRatioDemo() {\n return (\n \n \n \n )\n}\n", + "content": "import Image from \"next/image\"\n\nimport { AspectRatio } from \"@/registry/new-york/ui/aspect-ratio\"\n\nexport function AspectRatioDemo() {\n return (\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/avatar-demo.tsx", - "content": "import {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nexport function AvatarDemo() {\n return (\n \n \n BF\n \n )\n}\n", + "content": "import {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/new-york/ui/avatar\"\n\nexport function AvatarDemo() {\n return (\n \n \n BF\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/badge-demo.tsx", - "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport function BadgeDemo() {\n return Badge\n}\n", + "content": "import { Badge } from \"@/registry/new-york/ui/badge\"\n\nexport function BadgeDemo() {\n return Badge\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/breadcrumb-demo.tsx", - "content": "import {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/default/ui/breadcrumb\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\n\nexport function BreadcrumbDemo() {\n return (\n \n \n \n Home\n \n \n \n \n \n \n Toggle menu\n \n \n Documentation\n Themes\n GitHub\n \n \n \n \n \n Components\n \n \n \n Breadcrumb\n \n \n \n )\n}\n", + "content": "import {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from \"@/registry/new-york/ui/breadcrumb\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\n\nexport function BreadcrumbDemo() {\n return (\n \n \n \n Home\n \n \n \n \n \n \n Toggle menu\n \n \n Documentation\n Themes\n GitHub\n \n \n \n \n \n Components\n \n \n \n Breadcrumb\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/button-demo.tsx", - "content": "\"use client\"\n\nimport { Button } from \"@/registry/default/ui/button\"\n\nexport function ButtonDemo() {\n return \n}\n", + "content": "\"use client\"\n\nimport { Button } from \"@/registry/new-york/ui/button\"\n\nexport function ButtonDemo() {\n return \n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/calendar-demo.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport { Calendar } from \"@/registry/default/ui/calendar\"\n\nexport function CalendarDemo() {\n const [date, setDate] = React.useState(new Date())\n\n return (\n \n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport { Calendar } from \"@/registry/new-york/ui/calendar\"\n\nexport function CalendarDemo() {\n const [date, setDate] = React.useState(new Date())\n\n return (\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/card-demo.tsx", - "content": "import { BellRing, Check } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Card,\n CardContent,\n CardDescription,\n CardFooter,\n CardHeader,\n CardTitle,\n} from \"@/registry/default/ui/card\"\nimport { Switch } from \"@/registry/default/ui/switch\"\n\nconst notifications = [\n {\n title: \"Your call has been confirmed.\",\n description: \"1 hour ago\",\n },\n {\n title: \"You have a new message!\",\n description: \"1 hour ago\",\n },\n {\n title: \"Your subscription is expiring soon!\",\n description: \"2 hours ago\",\n },\n]\n\ntype CardProps = React.ComponentProps\n\nexport function CardDemo({ className, ...props }: CardProps) {\n return (\n \n \n Notifications\n You have 3 unread messages.\n \n \n
\n \n
\n

\n Push Notifications\n

\n

\n Send notifications to device.\n

\n
\n \n
\n
\n {notifications.map((notification, index) => (\n \n \n
\n

\n {notification.title}\n

\n

\n {notification.description}\n

\n
\n
\n ))}\n
\n \n \n \n \n \n )\n}\n", + "content": "import { BellRing, Check } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/new-york/ui/button\"\nimport {\n Card,\n CardContent,\n CardDescription,\n CardFooter,\n CardHeader,\n CardTitle,\n} from \"@/registry/new-york/ui/card\"\nimport { Switch } from \"@/registry/new-york/ui/switch\"\n\nconst notifications = [\n {\n title: \"Your call has been confirmed.\",\n description: \"1 hour ago\",\n },\n {\n title: \"You have a new message!\",\n description: \"1 hour ago\",\n },\n {\n title: \"Your subscription is expiring soon!\",\n description: \"2 hours ago\",\n },\n]\n\ntype CardProps = React.ComponentProps\n\nexport function CardDemo({ className, ...props }: CardProps) {\n return (\n \n \n Notifications\n You have 3 unread messages.\n \n \n
\n \n
\n

\n Push Notifications\n

\n

\n Send notifications to device.\n

\n
\n \n
\n
\n {notifications.map((notification, index) => (\n \n \n
\n

\n {notification.title}\n

\n

\n {notification.description}\n

\n
\n
\n ))}\n
\n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/carousel-demo.tsx", - "content": "import * as React from \"react\"\n\nimport { Card, CardContent } from \"@/registry/default/ui/card\"\nimport {\n Carousel,\n CarouselContent,\n CarouselItem,\n CarouselNext,\n CarouselPrevious,\n} from \"@/registry/default/ui/carousel\"\n\nexport function CarouselDemo() {\n return (\n \n \n {Array.from({ length: 5 }).map((_, index) => (\n \n
\n \n \n {index + 1}\n \n \n
\n
\n ))}\n
\n \n \n
\n )\n}\n", + "content": "import * as React from \"react\"\n\nimport { Card, CardContent } from \"@/registry/new-york/ui/card\"\nimport {\n Carousel,\n CarouselContent,\n CarouselItem,\n CarouselNext,\n CarouselPrevious,\n} from \"@/registry/new-york/ui/carousel\"\n\nexport function CarouselDemo() {\n return (\n \n \n {Array.from({ length: 5 }).map((_, index) => (\n \n
\n \n \n {index + 1}\n \n \n
\n
\n ))}\n
\n \n \n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/checkbox-demo.tsx", - "content": "\"use client\"\n\nimport { Checkbox } from \"@/registry/default/ui/checkbox\"\n\nexport function CheckboxDemo() {\n return (\n
\n \n \n Accept terms and conditions\n \n
\n )\n}\n", + "content": "\"use client\"\n\nimport { Checkbox } from \"@/registry/new-york/ui/checkbox\"\n\nexport function CheckboxDemo() {\n return (\n
\n \n \n Accept terms and conditions\n \n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/collapsible-demo.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ChevronsUpDown } from \"lucide-react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/default/ui/collapsible\"\n\nexport function CollapsibleDemo() {\n const [isOpen, setIsOpen] = React.useState(false)\n\n return (\n \n
\n

\n @peduarte starred 3 repositories\n

\n \n \n \n
\n
\n @radix-ui/primitives\n
\n \n
\n @radix-ui/colors\n
\n
\n @stitches/react\n
\n
\n \n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ChevronsUpDown } from \"lucide-react\"\n\nimport { Button } from \"@/registry/new-york/ui/button\"\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"@/registry/new-york/ui/collapsible\"\n\nexport function CollapsibleDemo() {\n const [isOpen, setIsOpen] = React.useState(false)\n\n return (\n \n
\n

\n @peduarte starred 3 repositories\n

\n \n \n \n
\n
\n @radix-ui/primitives\n
\n \n
\n @radix-ui/colors\n
\n
\n @stitches/react\n
\n
\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/combobox-demo.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Check, ChevronsUpDown } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"@/registry/default/ui/command\"\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/registry/default/ui/popover\"\n\nconst frameworks = [\n {\n value: \"next.js\",\n label: \"Next.js\",\n },\n {\n value: \"sveltekit\",\n label: \"SvelteKit\",\n },\n {\n value: \"nuxt.js\",\n label: \"Nuxt.js\",\n },\n {\n value: \"remix\",\n label: \"Remix\",\n },\n {\n value: \"astro\",\n label: \"Astro\",\n },\n]\n\nexport function ComboboxDemo() {\n const [open, setOpen] = React.useState(false)\n const [value, setValue] = React.useState(\"\")\n\n return (\n \n \n \n {value\n ? frameworks.find((framework) => framework.value === value)?.label\n : \"Select framework...\"}\n \n \n \n \n \n \n \n No framework found.\n \n {frameworks.map((framework) => (\n {\n setValue(currentValue === value ? \"\" : currentValue)\n setOpen(false)\n }}\n >\n {framework.label}\n \n \n ))}\n \n \n \n \n \n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Check, ChevronsUpDown } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/new-york/ui/button\"\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"@/registry/new-york/ui/command\"\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/registry/new-york/ui/popover\"\n\nconst frameworks = [\n {\n value: \"next.js\",\n label: \"Next.js\",\n },\n {\n value: \"sveltekit\",\n label: \"SvelteKit\",\n },\n {\n value: \"nuxt.js\",\n label: \"Nuxt.js\",\n },\n {\n value: \"remix\",\n label: \"Remix\",\n },\n {\n value: \"astro\",\n label: \"Astro\",\n },\n]\n\nexport function ComboboxDemo() {\n const [open, setOpen] = React.useState(false)\n const [value, setValue] = React.useState(\"\")\n\n return (\n \n \n \n {value\n ? frameworks.find((framework) => framework.value === value)?.label\n : \"Select framework...\"}\n \n \n \n \n \n \n \n No framework found.\n \n {frameworks.map((framework) => (\n {\n setValue(currentValue === value ? \"\" : currentValue)\n setOpen(false)\n }}\n >\n {framework.label}\n \n \n ))}\n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/command-demo.tsx", - "content": "import {\n Calculator,\n Calendar,\n CreditCard,\n Settings,\n Smile,\n User,\n} from \"lucide-react\"\n\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n CommandShortcut,\n} from \"@/registry/default/ui/command\"\n\nexport function CommandDemo() {\n return (\n \n \n \n No results found.\n \n \n \n Calendar\n \n \n \n Search Emoji\n \n \n \n Calculator\n \n \n \n \n \n \n Profile\n ⌘P\n \n \n \n Billing\n ⌘B\n \n \n \n Settings\n ⌘S\n \n \n \n \n )\n}\n", + "content": "import {\n Calculator,\n Calendar,\n CreditCard,\n Settings,\n Smile,\n User,\n} from \"lucide-react\"\n\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n CommandShortcut,\n} from \"@/registry/new-york/ui/command\"\n\nexport function CommandDemo() {\n return (\n \n \n \n No results found.\n \n \n \n Calendar\n \n \n \n Search Emoji\n \n \n \n Calculator\n \n \n \n \n \n \n Profile\n ⌘P\n \n \n \n Billing\n ⌘B\n \n \n \n Settings\n ⌘S\n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/context-menu-demo.tsx", - "content": "import {\n ContextMenu,\n ContextMenuCheckboxItem,\n ContextMenuContent,\n ContextMenuItem,\n ContextMenuLabel,\n ContextMenuRadioGroup,\n ContextMenuRadioItem,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuTrigger,\n} from \"@/registry/default/ui/context-menu\"\n\nexport function ContextMenuDemo() {\n return (\n \n \n Right click here\n \n \n \n Back\n ⌘[\n \n \n Forward\n ⌘]\n \n \n Reload\n ⌘R\n \n \n More Tools\n \n \n Save Page As...\n ⇧⌘S\n \n Create Shortcut...\n Name Window...\n \n Developer Tools\n \n \n \n \n Show Bookmarks Bar\n ⌘⇧B\n \n Show Full URLs\n \n \n People\n \n \n Pedro Duarte\n \n Colm Tuite\n \n \n \n )\n}\n", + "content": "import {\n ContextMenu,\n ContextMenuCheckboxItem,\n ContextMenuContent,\n ContextMenuItem,\n ContextMenuLabel,\n ContextMenuRadioGroup,\n ContextMenuRadioItem,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuTrigger,\n} from \"@/registry/new-york/ui/context-menu\"\n\nexport function ContextMenuDemo() {\n return (\n \n \n Right click here\n \n \n \n Back\n ⌘[\n \n \n Forward\n ⌘]\n \n \n Reload\n ⌘R\n \n \n More Tools\n \n \n Save Page As...\n ⇧⌘S\n \n Create Shortcut...\n Name Window...\n \n Developer Tools\n \n \n \n \n Show Bookmarks Bar\n ⌘⇧B\n \n Show Full URLs\n \n \n People\n \n \n Pedro Duarte\n \n Colm Tuite\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/date-picker-demo.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { format } from \"date-fns\"\nimport { CalendarIcon } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/default/ui/button\"\nimport { Calendar } from \"@/registry/default/ui/calendar\"\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/registry/default/ui/popover\"\n\nexport function DatePickerDemo() {\n const [date, setDate] = React.useState()\n\n return (\n \n \n \n \n {date ? format(date, \"PPP\") : Pick a date}\n \n \n \n \n \n \n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { format } from \"date-fns\"\nimport { CalendarIcon } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/registry/new-york/ui/button\"\nimport { Calendar } from \"@/registry/new-york/ui/calendar\"\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/registry/new-york/ui/popover\"\n\nexport function DatePickerDemo() {\n const [date, setDate] = React.useState()\n\n return (\n \n \n \n \n {date ? format(date, \"PPP\") : Pick a date}\n \n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/dialog-demo.tsx", - "content": "import { Button } from \"@/registry/default/ui/button\"\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@/registry/default/ui/dialog\"\nimport { Input } from \"@/registry/default/ui/input\"\nimport { Label } from \"@/registry/default/ui/label\"\n\nexport function DialogDemo() {\n return (\n \n \n \n \n \n \n Edit profile\n \n Make changes to your profile here. Click save when you're done.\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n \n
\n
\n )\n}\n", + "content": "import { Button } from \"@/registry/new-york/ui/button\"\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@/registry/new-york/ui/dialog\"\nimport { Input } from \"@/registry/new-york/ui/input\"\nimport { Label } from \"@/registry/new-york/ui/label\"\n\nexport function DialogDemo() {\n return (\n \n \n \n \n \n \n Edit profile\n \n Make changes to your profile here. Click save when you're done.\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n \n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/drawer-demo.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Minus, Plus } from \"lucide-react\"\nimport { Bar, BarChart, ResponsiveContainer } from \"recharts\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerTitle,\n DrawerTrigger,\n} from \"@/registry/default/ui/drawer\"\n\nconst data = [\n {\n goal: 400,\n },\n {\n goal: 300,\n },\n {\n goal: 200,\n },\n {\n goal: 300,\n },\n {\n goal: 200,\n },\n {\n goal: 278,\n },\n {\n goal: 189,\n },\n {\n goal: 239,\n },\n {\n goal: 300,\n },\n {\n goal: 200,\n },\n {\n goal: 278,\n },\n {\n goal: 189,\n },\n {\n goal: 349,\n },\n]\n\nexport function DrawerDemo() {\n const [goal, setGoal] = React.useState(350)\n\n function onClick(adjustment: number) {\n setGoal(Math.max(200, Math.min(400, goal + adjustment)))\n }\n\n return (\n \n \n \n \n \n
\n \n Move Goal\n Set your daily activity goal.\n \n
\n
\n onClick(-10)}\n disabled={goal <= 200}\n >\n \n Decrease\n \n
\n
\n {goal}\n
\n
\n Calories/day\n
\n
\n onClick(10)}\n disabled={goal >= 400}\n >\n \n Increase\n \n
\n
\n \n \n \n \n \n
\n
\n \n \n \n \n \n \n
\n
\n
\n )\n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Minus, Plus } from \"lucide-react\"\nimport { Bar, BarChart, ResponsiveContainer } from \"recharts\"\n\nimport { Button } from \"@/registry/new-york/ui/button\"\nimport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerTitle,\n DrawerTrigger,\n} from \"@/registry/new-york/ui/drawer\"\n\nconst data = [\n {\n goal: 400,\n },\n {\n goal: 300,\n },\n {\n goal: 200,\n },\n {\n goal: 300,\n },\n {\n goal: 200,\n },\n {\n goal: 278,\n },\n {\n goal: 189,\n },\n {\n goal: 239,\n },\n {\n goal: 300,\n },\n {\n goal: 200,\n },\n {\n goal: 278,\n },\n {\n goal: 189,\n },\n {\n goal: 349,\n },\n]\n\nexport function DrawerDemo() {\n const [goal, setGoal] = React.useState(350)\n\n function onClick(adjustment: number) {\n setGoal(Math.max(200, Math.min(400, goal + adjustment)))\n }\n\n return (\n \n \n \n \n \n
\n \n Move Goal\n Set your daily activity goal.\n \n
\n
\n onClick(-10)}\n disabled={goal <= 200}\n >\n \n Decrease\n \n
\n
\n {goal}\n
\n
\n Calories/day\n
\n
\n onClick(10)}\n disabled={goal >= 400}\n >\n \n Increase\n \n
\n
\n \n \n \n \n \n
\n
\n \n \n \n \n \n \n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/dropdown-menu-demo.tsx", - "content": "import { Button } from \"@/registry/default/ui/button\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\n\nexport function DropdownMenuDemo() {\n return (\n \n \n \n \n \n My Account\n \n \n \n Profile\n ⇧⌘P\n \n \n Billing\n ⌘B\n \n \n Settings\n ⌘S\n \n \n Keyboard shortcuts\n ⌘K\n \n \n \n \n Team\n \n Invite users\n \n \n Email\n Message\n \n More...\n \n \n \n \n New Team\n ⌘+T\n \n \n \n GitHub\n Support\n API\n \n \n Log out\n ⇧⌘Q\n \n \n \n )\n}\n", + "content": "import { Button } from \"@/registry/new-york/ui/button\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n} from \"@/registry/new-york/ui/dropdown-menu\"\n\nexport function DropdownMenuDemo() {\n return (\n \n \n \n \n \n My Account\n \n \n \n Profile\n ⇧⌘P\n \n \n Billing\n ⌘B\n \n \n Settings\n ⌘S\n \n \n Keyboard shortcuts\n ⌘K\n \n \n \n \n Team\n \n Invite users\n \n \n Email\n Message\n \n More...\n \n \n \n \n New Team\n ⌘+T\n \n \n \n GitHub\n Support\n API\n \n \n Log out\n ⇧⌘Q\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/hover-card-demo.tsx", - "content": "import { CalendarIcon } from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n HoverCard,\n HoverCardContent,\n HoverCardTrigger,\n} from \"@/registry/default/ui/hover-card\"\n\nexport function HoverCardDemo() {\n return (\n \n \n \n \n \n
\n \n \n VC\n \n
\n

@nextjs

\n

\n The React Framework – created and maintained by @vercel.\n

\n
\n {\" \"}\n \n Joined December 2021\n \n
\n
\n
\n
\n
\n )\n}\n", + "content": "import { CalendarIcon } from \"lucide-react\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/new-york/ui/avatar\"\nimport { Button } from \"@/registry/new-york/ui/button\"\nimport {\n HoverCard,\n HoverCardContent,\n HoverCardTrigger,\n} from \"@/registry/new-york/ui/hover-card\"\n\nexport function HoverCardDemo() {\n return (\n \n \n \n \n \n
\n \n \n VC\n \n
\n

@nextjs

\n

\n The React Framework – created and maintained by @vercel.\n

\n
\n {\" \"}\n \n Joined December 2021\n \n
\n
\n
\n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/input-demo.tsx", - "content": "import { Input } from \"@/registry/default/ui/input\"\n\nexport function InputDemo() {\n return \n}\n", + "content": "import { Input } from \"@/registry/new-york/ui/input\"\n\nexport function InputDemo() {\n return \n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/input-otp-demo.tsx", - "content": "import {\n InputOTP,\n InputOTPGroup,\n InputOTPSeparator,\n InputOTPSlot,\n} from \"@/registry/default/ui/input-otp\"\n\nexport function InputOTPDemo() {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n )\n}\n", + "content": "import {\n InputOTP,\n InputOTPGroup,\n InputOTPSeparator,\n InputOTPSlot,\n} from \"@/registry/new-york/ui/input-otp\"\n\nexport function InputOTPDemo() {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/label-demo.tsx", - "content": "import { Checkbox } from \"@/registry/default/ui/checkbox\"\nimport { Label } from \"@/registry/default/ui/label\"\n\nexport function LabelDemo() {\n return (\n
\n
\n \n \n
\n
\n )\n}\n", + "content": "import { Checkbox } from \"@/registry/new-york/ui/checkbox\"\nimport { Label } from \"@/registry/new-york/ui/label\"\n\nexport function LabelDemo() {\n return (\n
\n
\n \n \n
\n
\n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/menubar-demo.tsx", - "content": "import {\n Menubar,\n MenubarCheckboxItem,\n MenubarContent,\n MenubarItem,\n MenubarMenu,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarSeparator,\n MenubarShortcut,\n MenubarSub,\n MenubarSubContent,\n MenubarSubTrigger,\n MenubarTrigger,\n} from \"@/registry/default/ui/menubar\"\n\nexport function MenubarDemo() {\n return (\n \n \n File\n \n \n New Tab ⌘T\n \n \n New Window ⌘N\n \n New Incognito Window\n \n \n Share\n \n Email link\n Messages\n Notes\n \n \n \n \n Print... ⌘P\n \n \n \n \n Edit\n \n \n Undo ⌘Z\n \n \n Redo ⇧⌘Z\n \n \n \n Find\n \n Search the web\n \n Find...\n Find Next\n Find Previous\n \n \n \n Cut\n Copy\n Paste\n \n \n \n View\n \n Always Show Bookmarks Bar\n \n Always Show Full URLs\n \n \n \n Reload ⌘R\n \n \n Force Reload ⇧⌘R\n \n \n Toggle Fullscreen\n \n Hide Sidebar\n \n \n \n Profiles\n \n \n Andy\n Benoit\n Luis\n \n \n Edit...\n \n Add Profile...\n \n \n \n )\n}\n", + "content": "import {\n Menubar,\n MenubarCheckboxItem,\n MenubarContent,\n MenubarItem,\n MenubarMenu,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarSeparator,\n MenubarShortcut,\n MenubarSub,\n MenubarSubContent,\n MenubarSubTrigger,\n MenubarTrigger,\n} from \"@/registry/new-york/ui/menubar\"\n\nexport function MenubarDemo() {\n return (\n \n \n File\n \n \n New Tab ⌘T\n \n \n New Window ⌘N\n \n New Incognito Window\n \n \n Share\n \n Email link\n Messages\n Notes\n \n \n \n \n Print... ⌘P\n \n \n \n \n Edit\n \n \n Undo ⌘Z\n \n \n Redo ⇧⌘Z\n \n \n \n Find\n \n Search the web\n \n Find...\n Find Next\n Find Previous\n \n \n \n Cut\n Copy\n Paste\n \n \n \n View\n \n Always Show Bookmarks Bar\n \n Always Show Full URLs\n \n \n \n Reload ⌘R\n \n \n Force Reload ⇧⌘R\n \n \n Toggle Fullscreen\n \n Hide Sidebar\n \n \n \n Profiles\n \n \n Andy\n Benoit\n Luis\n \n \n Edit...\n \n Add Profile...\n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/navigation-menu-demo.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\nimport Link from \"next/link\"\n\nimport { cn } from \"@/lib/utils\"\nimport {\n NavigationMenu,\n NavigationMenuContent,\n NavigationMenuItem,\n NavigationMenuLink,\n NavigationMenuList,\n NavigationMenuTrigger,\n navigationMenuTriggerStyle,\n} from \"@/registry/default/ui/navigation-menu\"\n\nconst components: { title: string; href: string; description: string }[] = [\n {\n title: \"Alert Dialog\",\n href: \"/docs/primitives/alert-dialog\",\n description:\n \"A modal dialog that interrupts the user with important content and expects a response.\",\n },\n {\n title: \"Hover Card\",\n href: \"/docs/primitives/hover-card\",\n description:\n \"For sighted users to preview content available behind a link.\",\n },\n {\n title: \"Progress\",\n href: \"/docs/primitives/progress\",\n description:\n \"Displays an indicator showing the completion progress of a task, typically displayed as a progress bar.\",\n },\n {\n title: \"Scroll-area\",\n href: \"/docs/primitives/scroll-area\",\n description: \"Visually or semantically separates content.\",\n },\n {\n title: \"Tabs\",\n href: \"/docs/primitives/tabs\",\n description:\n \"A set of layered sections of content—known as tab panels—that are displayed one at a time.\",\n },\n {\n title: \"Tooltip\",\n href: \"/docs/primitives/tooltip\",\n description:\n \"A popup that displays information related to an element when the element receives keyboard focus or the mouse hovers over it.\",\n },\n]\n\nexport function NavigationMenuDemo() {\n return (\n \n \n \n Getting started\n \n
    \n
  • \n \n \n
    \n prodkt/sparkstack\n
    \n

    \n Beautifully designed components built with Radix UI and\n Tailwind CSS.\n

    \n \n
    \n
  • \n \n Re-usable components built using Radix UI and Tailwind CSS.\n \n \n How to install dependencies and structure your app.\n \n \n Styles for headings, paragraphs, lists...etc\n \n
\n
\n
\n \n Components\n \n
    \n {components.map((component) => (\n \n {component.description}\n \n ))}\n
\n
\n
\n \n \n \n Documentation\n \n \n \n
\n
\n )\n}\n\nconst ListItem = React.forwardRef<\n React.ElementRef<\"a\">,\n React.ComponentPropsWithoutRef<\"a\">\n>(({ className, title, children, ...props }, ref) => {\n return (\n
  • \n \n \n
    {title}
    \n

    \n {children}\n

    \n \n
    \n
  • \n )\n})\nListItem.displayName = \"ListItem\"\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\nimport Link from \"next/link\"\n\nimport { cn } from \"@/lib/utils\"\nimport {\n NavigationMenu,\n NavigationMenuContent,\n NavigationMenuItem,\n NavigationMenuLink,\n NavigationMenuList,\n NavigationMenuTrigger,\n navigationMenuTriggerStyle,\n} from \"@/registry/new-york/ui/navigation-menu\"\n\nconst components: { title: string; href: string; description: string }[] = [\n {\n title: \"Alert Dialog\",\n href: \"/docs/primitives/alert-dialog\",\n description:\n \"A modal dialog that interrupts the user with important content and expects a response.\",\n },\n {\n title: \"Hover Card\",\n href: \"/docs/primitives/hover-card\",\n description:\n \"For sighted users to preview content available behind a link.\",\n },\n {\n title: \"Progress\",\n href: \"/docs/primitives/progress\",\n description:\n \"Displays an indicator showing the completion progress of a task, typically displayed as a progress bar.\",\n },\n {\n title: \"Scroll-area\",\n href: \"/docs/primitives/scroll-area\",\n description: \"Visually or semantically separates content.\",\n },\n {\n title: \"Tabs\",\n href: \"/docs/primitives/tabs\",\n description:\n \"A set of layered sections of content—known as tab panels—that are displayed one at a time.\",\n },\n {\n title: \"Tooltip\",\n href: \"/docs/primitives/tooltip\",\n description:\n \"A popup that displays information related to an element when the element receives keyboard focus or the mouse hovers over it.\",\n },\n]\n\nexport function NavigationMenuDemo() {\n return (\n \n \n \n Getting started\n \n
      \n
    • \n \n \n
      \n prodkt/sparkstack\n
      \n

      \n Beautifully designed components built with Radix UI and\n Tailwind CSS.\n

      \n \n
      \n
    • \n \n Re-usable components built using Radix UI and Tailwind CSS.\n \n \n How to install dependencies and structure your app.\n \n \n Styles for headings, paragraphs, lists...etc\n \n
    \n
    \n
    \n \n Components\n \n
      \n {components.map((component) => (\n \n {component.description}\n \n ))}\n
    \n
    \n
    \n \n \n \n Documentation\n \n \n \n
    \n
    \n )\n}\n\nconst ListItem = React.forwardRef<\n React.ElementRef<\"a\">,\n React.ComponentPropsWithoutRef<\"a\">\n>(({ className, title, children, ...props }, ref) => {\n return (\n
  • \n \n \n
    {title}
    \n

    \n {children}\n

    \n \n
    \n
  • \n )\n})\nListItem.displayName = \"ListItem\"\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/pagination-demo.tsx", - "content": "import {\n Pagination,\n PaginationContent,\n PaginationEllipsis,\n PaginationItem,\n PaginationLink,\n PaginationNext,\n PaginationPrevious,\n} from \"@/registry/default/ui/pagination\"\n\nexport function PaginationDemo() {\n return (\n \n \n \n \n \n \n 1\n \n \n \n 2\n \n \n \n 3\n \n \n \n \n \n \n \n \n \n )\n}\n", + "content": "import {\n Pagination,\n PaginationContent,\n PaginationEllipsis,\n PaginationItem,\n PaginationLink,\n PaginationNext,\n PaginationPrevious,\n} from \"@/registry/new-york/ui/pagination\"\n\nexport function PaginationDemo() {\n return (\n \n \n \n \n \n \n 1\n \n \n \n 2\n \n \n \n 3\n \n \n \n \n \n \n \n \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/popover-demo.tsx", - "content": "import { Button } from \"@/registry/default/ui/button\"\nimport { Input } from \"@/registry/default/ui/input\"\nimport { Label } from \"@/registry/default/ui/label\"\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/registry/default/ui/popover\"\n\nexport function PopoverDemo() {\n return (\n \n \n \n \n \n
    \n
    \n

    Dimensions

    \n

    \n Set the dimensions for the layer.\n

    \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n )\n}\n", + "content": "import { Button } from \"@/registry/new-york/ui/button\"\nimport { Input } from \"@/registry/new-york/ui/input\"\nimport { Label } from \"@/registry/new-york/ui/label\"\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@/registry/new-york/ui/popover\"\n\nexport function PopoverDemo() {\n return (\n \n \n \n \n \n
    \n
    \n

    Dimensions

    \n

    \n Set the dimensions for the layer.\n

    \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/progress-demo.tsx", - "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport { Progress } from \"@/registry/default/ui/progress\"\n\nexport function ProgressDemo() {\n const [progress, setProgress] = React.useState(13)\n\n React.useEffect(() => {\n const timer = setTimeout(() => setProgress(66), 500)\n return () => clearTimeout(timer)\n }, [])\n\n return \n}\n", + "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport { Progress } from \"@/registry/new-york/ui/progress\"\n\nexport function ProgressDemo() {\n const [progress, setProgress] = React.useState(13)\n\n React.useEffect(() => {\n const timer = setTimeout(() => setProgress(66), 500)\n return () => clearTimeout(timer)\n }, [])\n\n return \n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/radio-group-demo.tsx", - "content": "import { Label } from \"@/registry/default/ui/label\"\nimport { RadioGroup, RadioGroupItem } from \"@/registry/default/ui/radio-group\"\n\nexport function RadioGroupDemo() {\n return (\n \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n )\n}\n", + "content": "import { Label } from \"@/registry/new-york/ui/label\"\nimport { RadioGroup, RadioGroupItem } from \"@/registry/new-york/ui/radio-group\"\n\nexport function RadioGroupDemo() {\n return (\n \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/resizable-handle.tsx", - "content": "import {\n ResizableHandle,\n ResizablePanel,\n ResizablePanelGroup,\n} from \"@/registry/default/ui/resizable\"\n\nexport function ResizableHandleDemo() {\n return (\n \n \n
    \n Sidebar\n
    \n
    \n \n \n
    \n Content\n
    \n
    \n \n )\n}\n", + "content": "import {\n ResizableHandle,\n ResizablePanel,\n ResizablePanelGroup,\n} from \"@/registry/new-york/ui/resizable\"\n\nexport function ResizableHandleDemo() {\n return (\n \n \n
    \n Sidebar\n
    \n
    \n \n \n
    \n Content\n
    \n
    \n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/scroll-area-demo.tsx", - "content": "import * as React from \"react\"\n\nimport { ScrollArea } from \"@/registry/default/ui/scroll-area\"\nimport { Separator } from \"@/registry/default/ui/separator\"\n\nconst tags = Array.from({ length: 50 }).map(\n (_, i, a) => `v1.2.0-beta.${a.length - i}`\n)\n\nexport function ScrollAreaDemo() {\n return (\n \n
    \n

    Tags

    \n {tags.map((tag) => (\n \n
    {tag}
    \n \n
    \n ))}\n
    \n
    \n )\n}\n", + "content": "import * as React from \"react\"\n\nimport { ScrollArea } from \"@/registry/new-york/ui/scroll-area\"\nimport { Separator } from \"@/registry/new-york/ui/separator\"\n\nconst tags = Array.from({ length: 50 }).map(\n (_, i, a) => `v1.2.0-beta.${a.length - i}`\n)\n\nexport function ScrollAreaDemo() {\n return (\n \n
    \n

    Tags

    \n {tags.map((tag) => (\n \n
    {tag}
    \n \n
    \n ))}\n
    \n
    \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/select-demo.tsx", - "content": "import * as React from \"react\"\n\nimport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectTrigger,\n SelectValue,\n} from \"@/registry/default/ui/select\"\n\nexport function SelectDemo() {\n return (\n \n )\n}\n", + "content": "import * as React from \"react\"\n\nimport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectTrigger,\n SelectValue,\n} from \"@/registry/new-york/ui/select\"\n\nexport function SelectDemo() {\n return (\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/separator-demo.tsx", - "content": "import { Separator } from \"@/registry/default/ui/separator\"\n\nexport function SeparatorDemo() {\n return (\n
    \n
    \n

    Radix Primitives

    \n

    \n An open-source UI component library.\n

    \n
    \n \n
    \n
    Blog
    \n \n
    Docs
    \n \n
    Source
    \n
    \n
    \n )\n}\n", + "content": "import { Separator } from \"@/registry/new-york/ui/separator\"\n\nexport function SeparatorDemo() {\n return (\n
    \n
    \n

    Radix Primitives

    \n

    \n An open-source UI component library.\n

    \n
    \n \n
    \n
    Blog
    \n \n
    Docs
    \n \n
    Source
    \n
    \n
    \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/sheet-demo.tsx", - "content": "import { Button } from \"@/registry/default/ui/button\"\nimport { Input } from \"@/registry/default/ui/input\"\nimport { Label } from \"@/registry/default/ui/label\"\nimport {\n Sheet,\n SheetClose,\n SheetContent,\n SheetDescription,\n SheetFooter,\n SheetHeader,\n SheetTitle,\n SheetTrigger,\n} from \"@/registry/default/ui/sheet\"\n\nexport function SheetDemo() {\n return (\n \n \n \n \n \n \n Edit profile\n \n Make changes to your profile here. Click save when you're done.\n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n
    \n
    \n )\n}\n", + "content": "import { Button } from \"@/registry/new-york/ui/button\"\nimport { Input } from \"@/registry/new-york/ui/input\"\nimport { Label } from \"@/registry/new-york/ui/label\"\nimport {\n Sheet,\n SheetClose,\n SheetContent,\n SheetDescription,\n SheetFooter,\n SheetHeader,\n SheetTitle,\n SheetTrigger,\n} from \"@/registry/new-york/ui/sheet\"\n\nexport function SheetDemo() {\n return (\n \n \n \n \n \n \n Edit profile\n \n Make changes to your profile here. Click save when you're done.\n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n \n \n
    \n
    \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/skeleton-demo.tsx", - "content": "import { Skeleton } from \"@/registry/default/ui/skeleton\"\n\nexport function SkeletonDemo() {\n return (\n
    \n \n
    \n \n \n
    \n
    \n )\n}\n", + "content": "import { Skeleton } from \"@/registry/new-york/ui/skeleton\"\n\nexport function SkeletonDemo() {\n return (\n
    \n \n
    \n \n \n
    \n
    \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/slider-demo.tsx", - "content": "import { cn } from \"@/lib/utils\"\nimport { Slider } from \"@/registry/default/ui/slider\"\n\ntype SliderProps = React.ComponentProps\n\nexport function SliderDemo({ className, ...props }: SliderProps) {\n return (\n \n )\n}\n", + "content": "import { cn } from \"@/lib/utils\"\nimport { Slider } from \"@/registry/new-york/ui/slider\"\n\ntype SliderProps = React.ComponentProps\n\nexport function SliderDemo({ className, ...props }: SliderProps) {\n return (\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/sonner-demo.tsx", - "content": "\"use client\"\n\nimport { toast } from \"sonner\"\n\nimport { Button } from \"@/registry/default/ui/button\"\n\nexport function SonnerDemo() {\n return (\n \n toast(\"Event has been created\", {\n description: \"Sunday, December 03, 2023 at 9:00 AM\",\n action: {\n label: \"Undo\",\n onClick: () => console.log(\"Undo\"),\n },\n })\n }\n >\n Show Toast\n \n )\n}\n", + "content": "\"use client\"\n\nimport { toast } from \"sonner\"\n\nimport { Button } from \"@/registry/new-york/ui/button\"\n\nexport function SonnerDemo() {\n return (\n \n toast(\"Event has been created\", {\n description: \"Sunday, December 03, 2023 at 9:00 AM\",\n action: {\n label: \"Undo\",\n onClick: () => console.log(\"Undo\"),\n },\n })\n }\n >\n Show Toast\n \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/switch-demo.tsx", - "content": "import { Label } from \"@/registry/default/ui/label\"\nimport { Switch } from \"@/registry/default/ui/switch\"\n\nexport function SwitchDemo() {\n return (\n
    \n \n \n
    \n )\n}\n", + "content": "import { Label } from \"@/registry/new-york/ui/label\"\nimport { Switch } from \"@/registry/new-york/ui/switch\"\n\nexport function SwitchDemo() {\n return (\n
    \n \n \n
    \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/table-demo.tsx", - "content": "import {\n Table,\n TableBody,\n TableCaption,\n TableCell,\n TableFooter,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/registry/default/ui/table\"\n\nconst invoices = [\n {\n invoice: \"INV001\",\n paymentStatus: \"Paid\",\n totalAmount: \"$250.00\",\n paymentMethod: \"Credit Card\",\n },\n {\n invoice: \"INV002\",\n paymentStatus: \"Pending\",\n totalAmount: \"$150.00\",\n paymentMethod: \"PayPal\",\n },\n {\n invoice: \"INV003\",\n paymentStatus: \"Unpaid\",\n totalAmount: \"$350.00\",\n paymentMethod: \"Bank Transfer\",\n },\n {\n invoice: \"INV004\",\n paymentStatus: \"Paid\",\n totalAmount: \"$450.00\",\n paymentMethod: \"Credit Card\",\n },\n {\n invoice: \"INV005\",\n paymentStatus: \"Paid\",\n totalAmount: \"$550.00\",\n paymentMethod: \"PayPal\",\n },\n {\n invoice: \"INV006\",\n paymentStatus: \"Pending\",\n totalAmount: \"$200.00\",\n paymentMethod: \"Bank Transfer\",\n },\n {\n invoice: \"INV007\",\n paymentStatus: \"Unpaid\",\n totalAmount: \"$300.00\",\n paymentMethod: \"Credit Card\",\n },\n]\n\nexport function TableDemo() {\n return (\n \n A list of your recent invoices.\n \n \n Invoice\n Status\n Method\n Amount\n \n \n \n {invoices.map((invoice) => (\n \n {invoice.invoice}\n {invoice.paymentStatus}\n {invoice.paymentMethod}\n {invoice.totalAmount}\n \n ))}\n \n \n \n Total\n $2,500.00\n \n \n
    \n )\n}\n", + "content": "import {\n Table,\n TableBody,\n TableCaption,\n TableCell,\n TableFooter,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/registry/new-york/ui/table\"\n\nconst invoices = [\n {\n invoice: \"INV001\",\n paymentStatus: \"Paid\",\n totalAmount: \"$250.00\",\n paymentMethod: \"Credit Card\",\n },\n {\n invoice: \"INV002\",\n paymentStatus: \"Pending\",\n totalAmount: \"$150.00\",\n paymentMethod: \"PayPal\",\n },\n {\n invoice: \"INV003\",\n paymentStatus: \"Unpaid\",\n totalAmount: \"$350.00\",\n paymentMethod: \"Bank Transfer\",\n },\n {\n invoice: \"INV004\",\n paymentStatus: \"Paid\",\n totalAmount: \"$450.00\",\n paymentMethod: \"Credit Card\",\n },\n {\n invoice: \"INV005\",\n paymentStatus: \"Paid\",\n totalAmount: \"$550.00\",\n paymentMethod: \"PayPal\",\n },\n {\n invoice: \"INV006\",\n paymentStatus: \"Pending\",\n totalAmount: \"$200.00\",\n paymentMethod: \"Bank Transfer\",\n },\n {\n invoice: \"INV007\",\n paymentStatus: \"Unpaid\",\n totalAmount: \"$300.00\",\n paymentMethod: \"Credit Card\",\n },\n]\n\nexport function TableDemo() {\n return (\n \n A list of your recent invoices.\n \n \n Invoice\n Status\n Method\n Amount\n \n \n \n {invoices.map((invoice) => (\n \n {invoice.invoice}\n {invoice.paymentStatus}\n {invoice.paymentMethod}\n {invoice.totalAmount}\n \n ))}\n \n \n \n Total\n $2,500.00\n \n \n
    \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/tabs-demo.tsx", - "content": "import { Button } from \"@/registry/default/ui/button\"\nimport {\n Card,\n CardContent,\n CardDescription,\n CardFooter,\n CardHeader,\n CardTitle,\n} from \"@/registry/default/ui/card\"\nimport { Input } from \"@/registry/default/ui/input\"\nimport { Label } from \"@/registry/default/ui/label\"\nimport {\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n} from \"@/registry/default/ui/tabs\"\n\nexport function TabsDemo() {\n return (\n \n \n Account\n Password\n \n \n \n \n Account\n \n Make changes to your account here. Click save when you're done.\n \n \n \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n Password\n \n Change your password here. After saving, you'll be logged out.\n \n \n \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n )\n}\n", + "content": "import { Button } from \"@/registry/new-york/ui/button\"\nimport {\n Card,\n CardContent,\n CardDescription,\n CardFooter,\n CardHeader,\n CardTitle,\n} from \"@/registry/new-york/ui/card\"\nimport { Input } from \"@/registry/new-york/ui/input\"\nimport { Label } from \"@/registry/new-york/ui/label\"\nimport {\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n} from \"@/registry/new-york/ui/tabs\"\n\nexport function TabsDemo() {\n return (\n \n \n Account\n Password\n \n \n \n \n Account\n \n Make changes to your account here. Click save when you're done.\n \n \n \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n Password\n \n Change your password here. After saving, you'll be logged out.\n \n \n \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n )\n}\n", "type": "registry:component", "target": "" }, { "path": "internal/sink/components/textarea-demo.tsx", - "content": "import { Textarea } from \"@/registry/default/ui/textarea\"\n\nexport function TextareaDemo() {\n return