chore: move registry, update import path, run app

This commit is contained in:
zernonia 2024-11-21 12:40:47 +08:00
parent 5ff0b20ac2
commit ac14ca835a
1859 changed files with 56227 additions and 3051 deletions

View File

@ -9,12 +9,12 @@ import BlockCopyButton from './BlockCopyButton.vue'
import StyleSwitcher from './StyleSwitcher.vue'
// import { V0Button } from '@/components/v0-button'
import { Badge } from '@/lib/registry/new-york/ui/badge'
import { Popover, PopoverContent, PopoverTrigger } from '@/lib/registry/new-york/ui/popover'
import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from '@/lib/registry/new-york/ui/resizable'
import { Separator } from '@/lib/registry/new-york/ui/separator'
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/lib/registry/new-york/ui/tabs'
import { ToggleGroup, ToggleGroupItem } from '@/lib/registry/new-york/ui/toggle-group'
import { Badge } from '@/registry/new-york/ui/badge'
import { Popover, PopoverContent, PopoverTrigger } from '@/registry/new-york/ui/popover'
import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from '@/registry/new-york/ui/resizable'
import { Separator } from '@/registry/new-york/ui/separator'
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/registry/new-york/ui/tabs'
import { ToggleGroup, ToggleGroupItem } from '@/registry/new-york/ui/toggle-group'
import BlockPreview from './BlockPreview.vue'
const props = defineProps<{
@ -50,7 +50,7 @@ function removeScript(code: string) {
function transformImportPath(code: string) {
const s = new MagicString(code)
s.replaceAll(`@/lib/registry/${style.value}`, codeConfig.value.componentsPath)
s.replaceAll(`@/registry/${style.value}`, codeConfig.value.componentsPath)
s.replaceAll(`@/lib/utils`, codeConfig.value.utilsPath)
return s.toString()
}

View File

@ -1,10 +1,10 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Tooltip,
TooltipContent,
TooltipTrigger,
} from '@/lib/registry/new-york/ui/tooltip'
} from '@/registry/new-york/ui/tooltip'
import { CheckIcon, ClipboardIcon } from '@radix-icons/vue'
import { useClipboard } from '@vueuse/core'
import { toRefs } from 'vue'

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import { buttonVariants } from '@/lib/registry/new-york/ui/button'
import { cn } from '@/lib/utils'
import { buttonVariants } from '@/registry/new-york/ui/button'
import GitHubIcon from '~icons/radix-icons/github-logo'
import { ref } from 'vue'
import Announcement from '../components/Announcement.vue'

View File

@ -3,7 +3,7 @@ import {
Alert,
AlertDescription,
AlertTitle,
} from '@/lib/registry/default/ui/alert'
} from '@/registry/default/ui/alert'
interface CalloutProps {
icon?: string

View File

@ -1,8 +1,8 @@
<script lang="ts" setup>
import { Button } from '@/lib/registry/new-york/ui/button'
import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/lib/registry/new-york/ui/form'
import { Input } from '@/lib/registry/new-york/ui/input'
import { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger } from '@/lib/registry/new-york/ui/sheet'
import { Button } from '@/registry/new-york/ui/button'
import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/registry/new-york/ui/form'
import { Input } from '@/registry/new-york/ui/input'
import { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger } from '@/registry/new-york/ui/sheet'
import { useConfigStore } from '@/stores/config'
import { toTypedSchema } from '@vee-validate/zod'
import RadixIconsGear from '~icons/radix-icons/gear'

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import type { Style } from '@/lib/registry/styles'
import { Button } from '@/lib/registry/new-york/ui/button'
import type { Style } from '@/registry/registry-styles'
import { Button } from '@/registry/new-york/ui/button'
import { Icon } from '@iconify/vue'
import { ref, toRefs, watch } from 'vue'
import { makeCodeSandboxParams } from '../utils/codeeditor'

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/lib/registry/default/ui/tabs'
import { cn } from '@/lib/utils'
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/registry/default/ui/tabs'
import { useConfigStore } from '@/stores/config'
import { useClipboard } from '@vueuse/core'
import MagicString from 'magic-string'
@ -28,7 +28,7 @@ const transformedRawString = computed(() => transformImportPath(rawString.value)
function transformImportPath(code: string) {
const s = new MagicString(code)
s.replaceAll(`@/lib/registry/${style.value}`, codeConfig.value.componentsPath)
s.replaceAll(`@/registry/${style.value}`, codeConfig.value.componentsPath)
s.replaceAll(`@/lib/utils`, codeConfig.value.utilsPath)
return s.toString()
}

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import { themes } from '@/lib/registry'
import { Button } from '@/lib/registry/new-york/ui/button'
import { themes } from '@/registry'
import { Button } from '@/registry/new-york/ui/button'
import { useConfigStore } from '@/stores/config'
import { useClipboard } from '@vueuse/core'
import CheckIcon from '~icons/radix-icons/check'

View File

@ -5,7 +5,7 @@ import {
BreadcrumbLink,
BreadcrumbList,
BreadcrumbSeparator,
} from '@/lib/registry/new-york/ui/breadcrumb'
} from '@/registry/new-york/ui/breadcrumb'
import { useRoute } from 'vitepress'
import { computed } from 'vue'

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/default/ui/button'
import { Button } from '@/registry/default/ui/button'
import Pencil2Icon from '~icons/radix-icons/pencil-2'
import { useData } from 'vitepress'
import { computed } from 'vue'

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import { ScrollArea, ScrollBar } from '@/lib/registry/default/ui/scroll-area'
import { cn } from '@/lib/utils'
import { ScrollArea, ScrollBar } from '@/registry/default/ui/scroll-area'
import { useRoute } from 'vitepress'
import { computed, toRefs } from 'vue'

View File

@ -1,7 +1,7 @@
<script lang="ts" setup>
import type { Color } from '../types/colors'
import { colors } from '@/lib/registry'
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/lib/registry/new-york/ui/tooltip'
import { colors } from '@/registry'
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/registry/new-york/ui/tooltip'
import { useConfigStore } from '@/stores/config'
import RadixIconsCheck from '~icons/radix-icons/check'

View File

@ -8,14 +8,14 @@ import PaymentMethod from '@/examples/cards/components/PaymentMethod.vue'
import ReportAnIssue from '@/examples/cards/components/ReportAnIssue.vue'
import ShareDocument from '@/examples/cards/components/ShareDocument.vue'
import TeamMembers from '@/examples/cards/components/TeamMembers.vue'
import CardChat from '@/lib/registry/new-york/example/CardChat.vue'
import ActivityGoal from '@/lib/registry/new-york/example/Cards/ActivityGoal.vue'
import DataTable from '@/lib/registry/new-york/example/Cards/DataTable.vue'
import CardChat from '@/registry/new-york/example/CardChat.vue'
import ActivityGoal from '@/registry/new-york/example/Cards/ActivityGoal.vue'
import DataTable from '@/registry/new-york/example/Cards/DataTable.vue'
import Metric from '@/lib/registry/new-york/example/Cards/Metric.vue'
import CardStats from '@/lib/registry/new-york/example/CardStats.vue'
import { Card } from '@/lib/registry/new-york/ui/card'
import { RangeCalendar } from '@/lib/registry/new-york/ui/range-calendar'
import Metric from '@/registry/new-york/example/Cards/Metric.vue'
import CardStats from '@/registry/new-york/example/CardStats.vue'
import { Card } from '@/registry/new-york/ui/card'
import { RangeCalendar } from '@/registry/new-york/ui/range-calendar'
import { getLocalTimeZone, today } from '@internationalized/date'
import { type Ref, ref } from 'vue'

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import Button from '@/lib/registry/new-york/ui/button/Button.vue'
import Button from '@/registry/new-york/ui/button/Button.vue'
import Announcement from '../components/Announcement.vue'
import ExamplesNav from '../components/ExamplesNav.vue'
import PageAction from '../components/PageAction.vue'

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '@/lib/registry/default/ui/accordion'
import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '@/registry/default/ui/accordion'
</script>
<template>

View File

@ -1,7 +1,7 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/default/ui/button'
import { ScrollArea } from '@/lib/registry/default/ui/scroll-area'
import { Sheet, SheetContent, SheetTrigger } from '@/lib/registry/default/ui/sheet'
import { Button } from '@/registry/default/ui/button'
import { ScrollArea } from '@/registry/default/ui/scroll-area'
import { Sheet, SheetContent, SheetTrigger } from '@/registry/default/ui/sheet'
import { ref } from 'vue'
import { docsConfig } from '../config/docs'
import Logo from './Logo.vue'

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import type { Style } from '@/lib/registry/styles'
import { Button } from '@/lib/registry/new-york/ui/button'
import type { Style } from '@/registry/registry-styles'
import { Button } from '@/registry/new-york/ui/button'
import { Icon } from '@iconify/vue'
import { ref, toRefs, watch } from 'vue'
import { makeStackblitzParams } from '../utils/codeeditor'

View File

@ -1,15 +1,15 @@
<script setup lang="ts">
import type { SelectTriggerProps } from 'reka-ui'
import { cn } from '@/lib/utils'
import {
Select,
SelectContent,
SelectItem,
SelectTrigger,
SelectValue,
} from '@/lib/registry/new-york/ui/select'
import { styles } from '@/lib/registry/styles'
import { cn } from '@/lib/utils'
} from '@/registry/new-york/ui/select'
import { styles } from '@/registry/registry-styles'
import { useConfigStore } from '@/stores/config'
const props = defineProps<SelectTriggerProps & { class?: string }>()

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { TabsContent } from '@/lib/registry/default/ui/tabs'
import { TabsContent } from '@/registry/default/ui/tabs'
withDefaults(defineProps<{
title?: string

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/lib/registry/default/ui/tabs'
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/registry/default/ui/tabs'
const props = withDefaults(defineProps<{
name: string

View File

@ -1,7 +1,7 @@
<script setup lang="ts">
import type { TableOfContents, TableOfContentsItem } from '../types/docs'
import { buttonVariants } from '@/lib/registry/default/ui/button'
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from '@/lib/registry/default/ui/collapsible'
import { buttonVariants } from '@/registry/default/ui/button'
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from '@/registry/default/ui/collapsible'
import { onContentUpdated } from 'vitepress'
import { shallowRef } from 'vue'
import CarbonAds from '../components/CarbonAds.vue'

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Tabs, TabsList, TabsTrigger } from '@/lib/registry/default/ui/tabs'
import { Tabs, TabsList, TabsTrigger } from '@/registry/default/ui/tabs'
import { computed, useSlots } from 'vue'
const slots = useSlots()

View File

@ -1,8 +1,8 @@
<script lang="ts" setup>
import type { Color } from '../types/colors'
import { colors } from '@/lib/registry'
import { Button } from '@/lib/registry/new-york/ui/button'
import { Label } from '@/lib/registry/new-york/ui/label'
import { Button } from '@/registry/new-york/ui/button'
import { Label } from '@/registry/new-york/ui/label'
import { colors } from '@/registry/registry-colors'
import { RADII, useConfigStore } from '@/stores/config'
import RadixIconsCheck from '~icons/radix-icons/check'
import RadixIconsMoon from '~icons/radix-icons/moon'

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Popover, PopoverContent, PopoverTrigger } from '@/lib/registry/new-york/ui/popover'
import { Button } from '@/registry/new-york/ui/button'
import { Popover, PopoverContent, PopoverTrigger } from '@/registry/new-york/ui/popover'
import { useConfigStore } from '@/stores/config'
import { Paintbrush } from 'lucide-vue-next'
import { onMounted, watch } from 'vue'

View File

@ -4,7 +4,7 @@ import {
TooltipContent,
TooltipProvider,
TooltipTrigger,
} from '@/lib/registry/default/ui/tooltip'
} from '@/registry/default/ui/tooltip'
defineProps<{
content: string

View File

@ -8,14 +8,14 @@ import PaymentMethod from '@/examples/cards/components/PaymentMethod.vue'
import ReportAnIssue from '@/examples/cards/components/ReportAnIssue.vue'
import ShareDocument from '@/examples/cards/components/ShareDocument.vue'
import TeamMembers from '@/examples/cards/components/TeamMembers.vue'
import CardChat from '@/lib/registry/new-york/example/CardChat.vue'
import ActivityGoal from '@/lib/registry/new-york/example/Cards/ActivityGoal.vue'
import DataTable from '@/lib/registry/new-york/example/Cards/DataTable.vue'
import CardChat from '@/registry/new-york/example/CardChat.vue'
import ActivityGoal from '@/registry/new-york/example/Cards/ActivityGoal.vue'
import DataTable from '@/registry/new-york/example/Cards/DataTable.vue'
import Metric from '@/lib/registry/new-york/example/Cards/Metric.vue'
import CardStats from '@/lib/registry/new-york/example/CardStats.vue'
import { Card } from '@/lib/registry/new-york/ui/card'
import { RangeCalendar } from '@/lib/registry/new-york/ui/range-calendar'
import Metric from '@/registry/new-york/example/Cards/Metric.vue'
import CardStats from '@/registry/new-york/example/CardStats.vue'
import { Card } from '@/registry/new-york/ui/card'
import { RangeCalendar } from '@/registry/new-york/ui/range-calendar'
import { getLocalTimeZone, today } from '@internationalized/date'
import { type Ref, ref } from 'vue'

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import Button from '@/lib/registry/new-york/ui/button/Button.vue'
import Button from '@/registry/new-york/ui/button/Button.vue'
import Announcement from '../components/Announcement.vue'
import ExamplesNav from '../components/ExamplesNav.vue'
import PageAction from '../components/PageAction.vue'

View File

@ -1,13 +1,13 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/default/ui/button'
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator } from '@/lib/registry/default/ui/command'
import { Dialog, DialogContent } from '@/lib/registry/default/ui/dialog'
import { Toaster as DefaultToaster } from '@/lib/registry/default/ui/toast'
import { Toaster as NewYorkSonner } from '@/lib/registry/new-york/ui/sonner'
import { Toaster as NewYorkToaster } from '@/lib/registry/new-york/ui/toast'
import { TooltipProvider } from '@/lib/registry/new-york/ui/tooltip'
import { cn } from '@/lib/utils'
import { Button } from '@/registry/default/ui/button'
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator } from '@/registry/default/ui/command'
import { Dialog, DialogContent } from '@/registry/default/ui/dialog'
import { Toaster as DefaultToaster } from '@/registry/default/ui/toast'
import { Toaster as NewYorkSonner } from '@/registry/new-york/ui/sonner'
import { Toaster as NewYorkToaster } from '@/registry/new-york/ui/toast'
import { TooltipProvider } from '@/registry/new-york/ui/tooltip'
import { useConfigStore } from '@/stores/config'
import { useMagicKeys, useToggle } from '@vueuse/core'

View File

@ -1,9 +1,9 @@
<script setup lang="ts">
import type { Color } from '../types/colors'
import { Button } from '@/lib/registry/new-york/ui/button'
import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, DialogTrigger } from '@/lib/registry/new-york/ui/dialog'
import { Drawer, DrawerContent, DrawerTrigger } from '@/lib/registry/new-york/ui/drawer'
import { Popover, PopoverContent, PopoverTrigger } from '@/lib/registry/new-york/ui/popover'
import { Button } from '@/registry/new-york/ui/button'
import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, DialogTrigger } from '@/registry/new-york/ui/dialog'
import { Drawer, DrawerContent, DrawerTrigger } from '@/registry/new-york/ui/drawer'
import { Popover, PopoverContent, PopoverTrigger } from '@/registry/new-york/ui/popover'
import { useConfigStore } from '@/stores/config'
import { Paintbrush } from 'lucide-vue-next'
import { onMounted, watch } from 'vue'

View File

@ -1,4 +1,4 @@
import type { Style } from '@/lib/registry/styles'
import type { Style } from '@/registry/registry-styles'
import sdk from '@stackblitz/sdk'
import { getParameters } from 'codesandbox/lib/api/define'
import { Index as demoIndex } from '../../../../www/__registry__'
@ -117,7 +117,7 @@ function constructFiles(componentName: string, style: Style, sources: Record<str
// We have static replace here as this is only showing for code reproduction, doesn't need dynamic codeConfig
const transformImportPath = (code: string) => {
let parsed = code
parsed = parsed.replaceAll(`@/lib/registry/${style}`, '@/components')
parsed = parsed.replaceAll(`@/registry/${style}`, '@/components')
parsed = parsed.replaceAll('@/lib/utils', '@/utils')
return parsed
}

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +0,0 @@
import type { Registry } from '../registry/schema'
import { hooks } from '../registry/registry-hooks'
import { lib } from '../registry/registry-lib'
import { themes } from '../registry/registry-themes'
import { ui } from '../registry/registry-ui'
export const registry: Registry = [
...ui,
...lib,
...hooks,
...themes,
]

View File

@ -1,23 +0,0 @@
<script setup lang="ts">
import { DonutChart } from '@/lib/registry/new-york/ui/chart-donut'
const data = [
{ name: 'Jan', total: Math.floor(Math.random() * 2000) + 500, predicted: Math.floor(Math.random() * 2000) + 500 },
{ name: 'Feb', total: Math.floor(Math.random() * 2000) + 500, predicted: Math.floor(Math.random() * 2000) + 500 },
{ name: 'Mar', total: Math.floor(Math.random() * 2000) + 500, predicted: Math.floor(Math.random() * 2000) + 500 },
{ name: 'Apr', total: Math.floor(Math.random() * 2000) + 500, predicted: Math.floor(Math.random() * 2000) + 500 },
{ name: 'May', total: Math.floor(Math.random() * 2000) + 500, predicted: Math.floor(Math.random() * 2000) + 500 },
{ name: 'Jun', total: Math.floor(Math.random() * 2000) + 500, predicted: Math.floor(Math.random() * 2000) + 500 },
]
const valueFormatter = (tick: number | Date) => typeof tick === 'number' ? `$ ${new Intl.NumberFormat('us').format(tick).toString()}` : ''
</script>
<template>
<DonutChart
index="name"
:category="'total'"
:data="data"
:value-formatter="valueFormatter"
/>
</template>

View File

@ -1,20 +0,0 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { toast } from 'vue-sonner'
</script>
<template>
<Button
variant="outline" @click="() => {
toast('Event has been created', {
description: 'Sunday, December 03, 2023 at 9:00 AM',
action: {
label: 'Undo',
onClick: () => console.log('Undo'),
},
})
}"
>
Add to calendar
</Button>
</template>

View File

@ -3,7 +3,7 @@ import type {
Registry,
RegistryEntry,
registryItemTypeSchema,
} from '../registry/schema'
} from '../src/registry/schema'
// @sts-nocheck
import { existsSync, promises as fs } from 'node:fs'
import { tmpdir } from 'node:os'
@ -11,16 +11,16 @@ import path from 'node:path'
import { template } from 'lodash-es'
import { rimraf } from 'rimraf'
import { registry } from '../registry'
import { buildRegistry as crawlContent } from '../registry/crawl-content'
import { baseColors } from '../registry/registry-base-colors'
import { colorMapping, colors } from '../registry/registry-colors'
import { iconLibraries, icons } from '../registry/registry-icons'
import { styles } from '../registry/registry-styles'
import { registry } from '../src/registry'
import { buildRegistry as crawlContent } from '../src/registry/crawl-content'
import { baseColors } from '../src/registry/registry-base-colors'
import { colorMapping, colors } from '../src/registry/registry-colors'
import { iconLibraries, icons } from '../src/registry/registry-icons'
import { styles } from '../src/registry/registry-styles'
import {
registryEntrySchema,
registrySchema,
} from '../registry/schema'
} from '../src/registry/schema'
import { fixImport } from './fix-import'
const REGISTRY_PATH = path.join(process.cwd(), 'src/public/r')
@ -75,9 +75,10 @@ export const Index: Record<string, any> = {
// const chunks: any = []
if (item.type === 'registry:block') {
const file = resolveFiles[0]
const filename = path.basename(file)
console.log(item, file)
let raw: string
try {
const filename = path.basename(file)
raw = await fs.readFile(file, 'utf8')
}
catch (error) {
@ -302,7 +303,7 @@ export const Index: Record<string, any> = {
target: "${file.target ?? ''}"
}`
})}],
component: React.lazy(() => import("${componentPath}")),
component: () => import("${componentPath}").then((m) => m.default),
source: "${sourceFilename}",
category: "${item.category ?? ''}",
subcategory: "${item.subcategory ?? ''}"
@ -867,9 +868,9 @@ export const Icons = {
const packageName = iconLibraries[library as keyof typeof iconLibraries].package
if (packageName) {
index += `
${library}: React.lazy(() => import("${packageName}").then(mod => ({
${library}: () => import("${packageName}").then(mod => ({
default: mod.${componentName}
}))),`
})),`
}
}
index += `
@ -893,6 +894,12 @@ try {
const content = await crawlContent()
const result = registrySchema.safeParse([...registry, ...content])
await fs.writeFile(
path.join(REGISTRY_PATH, 'temp.json'),
JSON.stringify(result.data ?? '', null, 2),
'utf8',
)
if (!result.success) {
console.error(result.error)
process.exit(1)
@ -903,8 +910,8 @@ try {
await buildStylesIndex()
await buildThemes()
await buildRegistryIcons()
await buildIcons()
// await buildRegistryIcons()
// await buildIcons()
// eslint-disable-next-line no-console
console.log('✅ Done!')

View File

@ -29,7 +29,7 @@ npm install reka-ui
### Copy and paste the following code into your project:
<<< @/lib/registry/default/ui/aspect-ratio/AspectRatio.vue
<<< @/registry/default/ui/aspect-ratio/AspectRatio.vue
</Steps>

View File

@ -115,27 +115,27 @@ npm install reka-ui vee-validate @vee-validate/zod zod
`index.ts`
<<< @/lib/registry/default/ui/form/index.ts
<<< @/registry/default/ui/form/index.ts
`FormItem.vue`
<<< @/lib/registry/default/ui/form/FormItem.vue
<<< @/registry/default/ui/form/FormItem.vue
`FormLabel.vue`
<<< @/lib/registry/default/ui/form/FormLabel.vue
<<< @/registry/default/ui/form/FormLabel.vue
`FormControl.vue`
<<< @/lib/registry/default/ui/form/FormControl.vue
<<< @/registry/default/ui/form/FormControl.vue
`FormMessage.vue`
<<< @/lib/registry/default/ui/form/FormMessage.vue
<<< @/registry/default/ui/form/FormMessage.vue
`FormDescription.vue`
<<< @/lib/registry/default/ui/form/FormDescription.vue
<<< @/registry/default/ui/form/FormDescription.vue
### Update the import paths to match your project setup.

View File

@ -21,7 +21,7 @@ npx shadcn-vue@latest add input
### Copy and paste the following code into your project:
<<< @/lib/registry/default/ui/input/Input.vue
<<< @/registry/default/ui/input/Input.vue
</Steps>

View File

@ -29,7 +29,7 @@ npm install reka-ui
### Copy and paste the following code into your project:
<<< @/lib/registry/default/ui/label/Label.vue
<<< @/registry/default/ui/label/Label.vue
</Steps>

View File

@ -29,7 +29,7 @@ npm install reka-ui
### Copy and paste the following code into your project:
<<< @/lib/registry/default/ui/progress/Progress.vue
<<< @/registry/default/ui/progress/Progress.vue
</Steps>

View File

@ -31,15 +31,15 @@ npm install reka-ui
`index.ts`
<<< @/lib/registry/default/ui/resizable/index.ts
<<< @/registry/default/ui/resizable/index.ts
`ResizablePanelGroup.vue`
<<< @/lib/registry/default/ui/resizable/ResizablePanelGroup.vue
<<< @/registry/default/ui/resizable/ResizablePanelGroup.vue
`ResizableHandle.vue`
<<< @/lib/registry/default/ui/resizable/ResizableHandle.vue
<<< @/registry/default/ui/resizable/ResizableHandle.vue
</Steps>

View File

@ -29,7 +29,7 @@ npm install reka-ui
### Copy and paste the following code into your project
<<< @/lib/registry/default/ui/separator/Separator.vue
<<< @/registry/default/ui/separator/Separator.vue
</Steps>

View File

@ -21,7 +21,7 @@ npx shadcn-vue@latest add skeleton
### Copy and paste the following code into your project
<<< @/lib/registry/default/ui/skeleton/Skeleton.vue
<<< @/registry/default/ui/skeleton/Skeleton.vue
</Steps>

View File

@ -29,7 +29,7 @@ npm install reka-ui
### Copy and paste the following code into your project
<<< @/lib/registry/default/ui/switch/Switch.vue
<<< @/registry/default/ui/switch/Switch.vue
</Steps>

View File

@ -27,7 +27,7 @@ npm install reka-ui
### Copy and paste the following code into your project
<<< @/lib/registry/default/ui/textarea/Textarea.vue
<<< @/registry/default/ui/textarea/Textarea.vue
</Steps>

View File

@ -29,7 +29,7 @@ npm install reka-ui
### Copy and paste the following code into your project
<<< @/lib/registry/default/ui/toggle-group/ToggleGroup.vue
<<< @/registry/default/ui/toggle-group/ToggleGroup.vue
</Steps>

View File

@ -29,7 +29,7 @@ npm install reka-ui
### Copy and paste the following code into your project
<<< @/lib/registry/default/ui/toggle/Toggle.vue
<<< @/registry/default/ui/toggle/Toggle.vue
</Steps>

View File

@ -33,7 +33,7 @@ npm install v-calendar
### Copy and paste the following code into your project
<<< @/lib/registry/default/ui/v-calendar/Calendar.vue
<<< @/registry/default/ui/v-calendar/Calendar.vue
</Steps>

View File

@ -3,7 +3,7 @@ title: Contribution
description: Learn on how to contribute to shadcn/vue.
---
<script setup lang="ts">
import { Button } from "@/lib/registry/new-york/ui/button"
import { Button } from "@/registry/new-york/ui/button"
const latestSyncCommitTag = "06cc0cdf3d080555d26abbe6639f2d7f6341ec73"

View File

@ -27,7 +27,7 @@ We're using [`useToggle`](https://vueuse.org/shared/useToggle/) from [`@vueuse/c
```vue
<script setup lang="ts">
import { Button } from '@/lib/registry/default/ui/button'
import { Button } from '@/registry/default/ui/button'
import { useToggle } from '@vueuse/core'
import { useData } from 'vitepress'

View File

@ -4,7 +4,7 @@ description: Every component recreated in Figma. With customizable props, typogr
---
<script setup>
import { AspectRatio } from '@/lib/registry/default/ui/aspect-ratio';
import { AspectRatio } from '@/registry/default/ui/aspect-ratio';
</script>
The Figma UI Kit is open sourced by [Pietro Schirano](https://twitter.com/skirano).

View File

@ -4,7 +4,7 @@ description: Re-usable components built with Radix Vue, and Tailwind CSS.
---
<script setup>
import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '@/lib/registry/new-york/ui/accordion'
import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '@/registry/new-york/ui/accordion'
</script>
An unofficial, community-led [Vue](https://vuejs.org/) port of [shadcn/ui](https://ui.shadcn.com). We are not affiliated with [shadcn](https://twitter.com/shadcn), but we did get his blessing before creating a Vue version of his work. This project was born out of the need for a similar project for the Vue ecosystem.

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import { buttonVariants } from '@/lib/registry/new-york/ui/button'
import { cn } from '@/lib/utils'
import { buttonVariants } from '@/registry/new-york/ui/button'
import UserAuthForm from './components/UserAuthForm.vue'
</script>

View File

@ -1,9 +1,9 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Input } from '@/lib/registry/new-york/ui/input'
import { Label } from '@/lib/registry/new-york/ui/label'
import { cn } from '@/lib/utils'
import { Button } from '@/registry/new-york/ui/button'
import { Input } from '@/registry/new-york/ui/input'
import { Label } from '@/registry/new-york/ui/label'
import LucideSpinner from '~icons/lucide/loader-2'
import GitHubLogo from '~icons/radix-icons/github-logo'
import { ref } from 'vue'

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Card,
CardContent,
@ -7,9 +7,9 @@ import {
CardFooter,
CardHeader,
CardTitle,
} from '@/lib/registry/new-york/ui/card'
import { Label } from '@/lib/registry/new-york/ui/label'
import { Switch } from '@/lib/registry/new-york/ui/switch'
} from '@/registry/new-york/ui/card'
import { Label } from '@/registry/new-york/ui/label'
import { Switch } from '@/registry/new-york/ui/switch'
</script>
<template>

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Card,
CardContent,
@ -7,9 +7,9 @@ import {
CardFooter,
CardHeader,
CardTitle,
} from '@/lib/registry/new-york/ui/card'
import { Input } from '@/lib/registry/new-york/ui/input'
import { Label } from '@/lib/registry/new-york/ui/label'
} from '@/registry/new-york/ui/card'
import { Input } from '@/registry/new-york/ui/input'
import { Label } from '@/registry/new-york/ui/label'
import GitHubIcon from '~icons/radix-icons/github-logo'
</script>

View File

@ -1,7 +1,7 @@
<script setup lang="ts">
import DatePickerWithRange from '@/lib/registry/default/example/DatePickerWithRange.vue'
import { Card, CardContent } from '@/lib/registry/new-york/ui/card'
import { Label } from '@/lib/registry/new-york/ui/label'
import DatePickerWithRange from '@/registry/default/example/DatePickerWithRange.vue'
import { Card, CardContent } from '@/registry/new-york/ui/card'
import { Label } from '@/registry/new-york/ui/label'
</script>
<template>

View File

@ -1,12 +1,12 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from '@/lib/registry/new-york/ui/card'
} from '@/registry/new-york/ui/card'
import {
DropdownMenu,
DropdownMenuCheckboxItem,
@ -15,8 +15,8 @@ import {
DropdownMenuLabel,
DropdownMenuSeparator,
DropdownMenuTrigger,
} from '@/lib/registry/new-york/ui/dropdown-menu'
import { Separator } from '@/lib/registry/new-york/ui/separator'
} from '@/registry/new-york/ui/dropdown-menu'
import { Separator } from '@/registry/new-york/ui/separator'
import ChevronDownIcon from '~icons/radix-icons/chevron-down'
import CircleIcon from '~icons/radix-icons/circle'

View File

@ -5,7 +5,7 @@ import {
CardDescription,
CardHeader,
CardTitle,
} from '@/lib/registry/new-york/ui/card'
} from '@/registry/new-york/ui/card'
import BellIcon from '~icons/radix-icons/bell'
import EyeNoneIcon from '~icons/radix-icons/eye-none'

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Card,
CardContent,
@ -7,17 +7,17 @@ import {
CardFooter,
CardHeader,
CardTitle,
} from '@/lib/registry/new-york/ui/card'
import { Input } from '@/lib/registry/new-york/ui/input'
import { Label } from '@/lib/registry/new-york/ui/label'
import { RadioGroup, RadioGroupItem } from '@/lib/registry/new-york/ui/radio-group'
} from '@/registry/new-york/ui/card'
import { Input } from '@/registry/new-york/ui/input'
import { Label } from '@/registry/new-york/ui/label'
import { RadioGroup, RadioGroupItem } from '@/registry/new-york/ui/radio-group'
import {
Select,
SelectContent,
SelectItem,
SelectTrigger,
SelectValue,
} from '@/lib/registry/new-york/ui/select'
} from '@/registry/new-york/ui/select'
</script>
<template>

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Card,
CardContent,
@ -7,17 +7,17 @@ import {
CardFooter,
CardHeader,
CardTitle,
} from '@/lib/registry/new-york/ui/card'
import { Input } from '@/lib/registry/new-york/ui/input'
import { Label } from '@/lib/registry/new-york/ui/label'
} from '@/registry/new-york/ui/card'
import { Input } from '@/registry/new-york/ui/input'
import { Label } from '@/registry/new-york/ui/label'
import {
Select,
SelectContent,
SelectItem,
SelectTrigger,
SelectValue,
} from '@/lib/registry/new-york/ui/select'
import { Textarea } from '@/lib/registry/new-york/ui/textarea'
} from '@/registry/new-york/ui/select'
import { Textarea } from '@/registry/new-york/ui/textarea'
</script>
<template>

View File

@ -3,24 +3,24 @@ import {
Avatar,
AvatarFallback,
AvatarImage,
} from '@/lib/registry/new-york/ui/avatar'
import { Button } from '@/lib/registry/new-york/ui/button'
} from '@/registry/new-york/ui/avatar'
import { Button } from '@/registry/new-york/ui/button'
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from '@/lib/registry/new-york/ui/card'
import { Input } from '@/lib/registry/new-york/ui/input'
} from '@/registry/new-york/ui/card'
import { Input } from '@/registry/new-york/ui/input'
import {
Select,
SelectContent,
SelectItem,
SelectTrigger,
SelectValue,
} from '@/lib/registry/new-york/ui/select'
import { Separator } from '@/lib/registry/new-york/ui/separator'
} from '@/registry/new-york/ui/select'
import { Separator } from '@/registry/new-york/ui/separator'
</script>
<template>

View File

@ -3,8 +3,8 @@ import {
Avatar,
AvatarFallback,
AvatarImage,
} from '@/lib/registry/new-york/ui/avatar'
import { Button } from '@/lib/registry/new-york/ui/button'
} from '@/registry/new-york/ui/avatar'
import { Button } from '@/registry/new-york/ui/button'
import {
Card,
@ -12,13 +12,13 @@ import {
CardDescription,
CardHeader,
CardTitle,
} from '@/lib/registry/new-york/ui/card'
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList } from '@/lib/registry/new-york/ui/command'
} from '@/registry/new-york/ui/card'
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList } from '@/registry/new-york/ui/command'
import {
Popover,
PopoverContent,
PopoverTrigger,
} from '@/lib/registry/new-york/ui/popover'
} from '@/registry/new-york/ui/popover'
import ChevronDownIcon from '~icons/radix-icons/chevron-down'
import { ref } from 'vue'

View File

@ -1,18 +1,18 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from '@/lib/registry/new-york/ui/card'
} from '@/registry/new-york/ui/card'
import {
Tabs,
TabsContent,
TabsList,
TabsTrigger,
} from '@/lib/registry/new-york/ui/tabs'
} from '@/registry/new-york/ui/tabs'
import DateRangePicker from './components/DateRangePicker.vue'
import MainNav from './components/MainNav.vue'
import Overview from './components/Overview.vue'

View File

@ -1,14 +1,14 @@
<script setup lang="ts">
import type { DateRange } from 'reka-ui'
import { Button } from '@/lib/registry/new-york/ui/button'
import { cn } from '@/lib/utils'
import { Button } from '@/registry/new-york/ui/button'
import {
Popover,
PopoverContent,
PopoverTrigger,
} from '@/lib/registry/new-york/ui/popover'
import { RangeCalendar } from '@/lib/registry/new-york/ui/range-calendar'
import { cn } from '@/lib/utils'
} from '@/registry/new-york/ui/popover'
import { RangeCalendar } from '@/registry/new-york/ui/range-calendar'
import { CalendarDate, DateFormatter, getLocalTimeZone } from '@internationalized/date'
import { Calendar as CalendarIcon } from 'lucide-vue-next'
import { type Ref, ref } from 'vue'

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { BarChart } from '@/lib/registry/new-york/ui/chart-bar'
import { BarChart } from '@/registry/new-york/ui/chart-bar'
const data = [
{ name: 'Jan', total: Math.floor(Math.random() * 5000) + 1000 },

View File

@ -3,7 +3,7 @@ import {
Avatar,
AvatarFallback,
AvatarImage,
} from '@/lib/registry/new-york/ui/avatar'
} from '@/registry/new-york/ui/avatar'
</script>
<template>

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Input } from '@/lib/registry/new-york/ui/input'
import { Input } from '@/registry/new-york/ui/input'
</script>
<template>

View File

@ -1,11 +1,13 @@
<script setup lang="ts">
import { cn } from '@/lib/utils'
import {
Avatar,
AvatarFallback,
AvatarImage,
} from '@/lib/registry/new-york/ui/avatar'
import { Button } from '@/lib/registry/new-york/ui/button'
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator } from '@/lib/registry/new-york/ui/command'
} from '@/registry/new-york/ui/avatar'
import { Button } from '@/registry/new-york/ui/button'
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator } from '@/registry/new-york/ui/command'
import {
Dialog,
DialogContent,
@ -14,24 +16,22 @@ import {
DialogHeader,
DialogTitle,
DialogTrigger,
} from '@/lib/registry/new-york/ui/dialog'
} from '@/registry/new-york/ui/dialog'
import { Input } from '@/registry/new-york/ui/input'
import { Label } from '@/registry/new-york/ui/label'
import { Input } from '@/lib/registry/new-york/ui/input'
import { Label } from '@/lib/registry/new-york/ui/label'
import {
Popover,
PopoverContent,
PopoverTrigger,
} from '@/lib/registry/new-york/ui/popover'
} from '@/registry/new-york/ui/popover'
import {
Select,
SelectContent,
SelectItem,
SelectTrigger,
SelectValue,
} from '@/lib/registry/new-york/ui/select'
import { cn } from '@/lib/utils'
} from '@/registry/new-york/ui/select'
import CaretSortIcon from '~icons/radix-icons/caret-sort'
import CheckIcon from '~icons/radix-icons/check'
import PlusCircledIcon from '~icons/radix-icons/plus-circled'

View File

@ -3,8 +3,8 @@ import {
Avatar,
AvatarFallback,
AvatarImage,
} from '@/lib/registry/new-york/ui/avatar'
import { Button } from '@/lib/registry/new-york/ui/button'
} from '@/registry/new-york/ui/avatar'
import { Button } from '@/registry/new-york/ui/button'
import {
DropdownMenu,
DropdownMenuContent,
@ -14,7 +14,7 @@ import {
DropdownMenuSeparator,
DropdownMenuShortcut,
DropdownMenuTrigger,
} from '@/lib/registry/new-york/ui/dropdown-menu'
} from '@/registry/new-york/ui/dropdown-menu'
</script>
<template>

View File

@ -1,6 +1,7 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Calendar } from '@/lib/registry/new-york/ui/calendar'
import { cn } from '@/lib/utils'
import { Button } from '@/registry/new-york/ui/button'
import { Calendar } from '@/registry/new-york/ui/calendar'
import {
Command,
CommandEmpty,
@ -8,19 +9,18 @@ import {
CommandInput,
CommandItem,
CommandList,
} from '@/lib/registry/new-york/ui/command'
import { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/lib/registry/new-york/ui/form'
import { Input } from '@/lib/registry/new-york/ui/input'
} from '@/registry/new-york/ui/command'
import { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/registry/new-york/ui/form'
import { Input } from '@/registry/new-york/ui/input'
import {
Popover,
PopoverContent,
PopoverTrigger,
} from '@/lib/registry/new-york/ui/popover'
import { Separator } from '@/lib/registry/new-york/ui/separator'
} from '@/registry/new-york/ui/popover'
import { toast } from '@/lib/registry/new-york/ui/toast'
import { Separator } from '@/registry/new-york/ui/separator'
import { cn } from '@/lib/utils'
import { toast } from '@/registry/new-york/ui/toast'
import { CalendarDate, DateFormatter, getLocalTimeZone, today } from '@internationalized/date'
import { toTypedSchema } from '@vee-validate/zod'
import RadixIconsCalendar from '~icons/radix-icons/calendar'

View File

@ -1,11 +1,11 @@
<script setup lang="ts">
import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/lib/registry/default/ui/form'
import { RadioGroup, RadioGroupItem } from '@/lib/registry/default/ui/radio-group'
import { Button, buttonVariants } from '@/lib/registry/new-york/ui/button'
import { Separator } from '@/lib/registry/new-york/ui/separator'
import { toast } from '@/lib/registry/new-york/ui/toast'
import { cn } from '@/lib/utils'
import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/registry/default/ui/form'
import { RadioGroup, RadioGroupItem } from '@/registry/default/ui/radio-group'
import { Button, buttonVariants } from '@/registry/new-york/ui/button'
import { Separator } from '@/registry/new-york/ui/separator'
import { toast } from '@/registry/new-york/ui/toast'
import { ChevronDownIcon } from '@radix-icons/vue'
import { toTypedSchema } from '@vee-validate/zod'
import { useForm } from 'vee-validate'

View File

@ -1,10 +1,10 @@
<script setup lang="ts">
import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/lib/registry/default/ui/form'
import { Button } from '@/lib/registry/new-york/ui/button'
import { Checkbox } from '@/lib/registry/new-york/ui/checkbox'
import { Separator } from '@/lib/registry/new-york/ui/separator'
import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/registry/default/ui/form'
import { Button } from '@/registry/new-york/ui/button'
import { Checkbox } from '@/registry/new-york/ui/checkbox'
import { Separator } from '@/registry/new-york/ui/separator'
import { toast } from '@/lib/registry/new-york/ui/toast'
import { toast } from '@/registry/new-york/ui/toast'
import { toTypedSchema } from '@vee-validate/zod'
import { useForm } from 'vee-validate'
import { h } from 'vue'

View File

@ -1,12 +1,12 @@
<script setup lang="ts">
import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/lib/registry/default/ui/form'
import { Button } from '@/lib/registry/new-york/ui/button'
import { Checkbox } from '@/lib/registry/new-york/ui/checkbox'
import { RadioGroup, RadioGroupItem } from '@/lib/registry/new-york/ui/radio-group'
import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/registry/default/ui/form'
import { Button } from '@/registry/new-york/ui/button'
import { Checkbox } from '@/registry/new-york/ui/checkbox'
import { RadioGroup, RadioGroupItem } from '@/registry/new-york/ui/radio-group'
import { Separator } from '@/lib/registry/new-york/ui/separator'
import { Switch } from '@/lib/registry/new-york/ui/switch'
import { toast } from '@/lib/registry/new-york/ui/toast'
import { Separator } from '@/registry/new-york/ui/separator'
import { Switch } from '@/registry/new-york/ui/switch'
import { toast } from '@/registry/new-york/ui/toast'
import { toTypedSchema } from '@vee-validate/zod'
import { useForm } from 'vee-validate'
import { h } from 'vue'

View File

@ -1,7 +1,8 @@
<script setup lang="ts">
import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/lib/registry/default/ui/form'
import { Button } from '@/lib/registry/new-york/ui/button'
import { Input } from '@/lib/registry/new-york/ui/input'
import { cn } from '@/lib/utils'
import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from '@/registry/default/ui/form'
import { Button } from '@/registry/new-york/ui/button'
import { Input } from '@/registry/new-york/ui/input'
import {
Select,
SelectContent,
@ -9,12 +10,11 @@ import {
SelectItem,
SelectTrigger,
SelectValue,
} from '@/lib/registry/new-york/ui/select'
import { Separator } from '@/lib/registry/new-york/ui/separator'
import { Textarea } from '@/lib/registry/new-york/ui/textarea'
} from '@/registry/new-york/ui/select'
import { Separator } from '@/registry/new-york/ui/separator'
import { toast } from '@/lib/registry/new-york/ui/toast'
import { cn } from '@/lib/utils'
import { Textarea } from '@/registry/new-york/ui/textarea'
import { toast } from '@/registry/new-york/ui/toast'
import { Cross1Icon } from '@radix-icons/vue'
import { toTypedSchema } from '@vee-validate/zod'
import { FieldArray, useForm } from 'vee-validate'

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { cn } from '@/lib/utils'
import { Button } from '@/registry/new-york/ui/button'
import { useRoute } from 'vitepress'
interface Item {

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Separator } from '@/lib/registry/new-york/ui/separator'
import { Separator } from '@/registry/new-york/ui/separator'
import SidebarNav from '../components/SidebarNav.vue'
</script>

View File

@ -1,6 +1,6 @@
<script lang="ts" setup>
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/lib/registry/new-york/ui/select'
import { cn } from '@/lib/utils'
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/registry/new-york/ui/select'
import { Icon } from '@iconify/vue'
import { computed, ref } from 'vue'

View File

@ -1,17 +1,17 @@
<script lang="ts" setup>
import type { Mail } from '../data/mails'
import { Input } from '@/lib/registry/new-york/ui/input'
import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from '@/lib/registry/new-york/ui/resizable'
import { Separator } from '@/lib/registry/new-york/ui/separator'
import { cn } from '@/lib/utils'
import { Input } from '@/registry/new-york/ui/input'
import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from '@/registry/new-york/ui/resizable'
import { Separator } from '@/registry/new-york/ui/separator'
import {
Tabs,
TabsContent,
TabsList,
TabsTrigger,
} from '@/lib/registry/new-york/ui/tabs'
import { TooltipProvider } from '@/lib/registry/new-york/ui/tooltip'
import { cn } from '@/lib/utils'
} from '@/registry/new-york/ui/tabs'
import { TooltipProvider } from '@/registry/new-york/ui/tooltip'
import { refDebounced } from '@vueuse/core'
import {
Search,

View File

@ -1,15 +1,15 @@
<script lang="ts" setup>
import type { Mail } from '../data/mails'
import { Avatar, AvatarFallback } from '@/lib/registry/new-york/ui/avatar'
import { Button } from '@/lib/registry/new-york/ui/button'
import { Calendar } from '@/lib/registry/new-york/ui/calendar'
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from '@/lib/registry/new-york/ui/dropdown-menu'
import { Label } from '@/lib/registry/new-york/ui/label'
import { Popover, PopoverContent, PopoverTrigger } from '@/lib/registry/new-york/ui/popover'
import { Separator } from '@/lib/registry/new-york/ui/separator'
import { Switch } from '@/lib/registry/new-york/ui/switch'
import { Textarea } from '@/lib/registry/new-york/ui/textarea'
import { Tooltip, TooltipContent, TooltipTrigger } from '@/lib/registry/new-york/ui/tooltip'
import { Avatar, AvatarFallback } from '@/registry/new-york/ui/avatar'
import { Button } from '@/registry/new-york/ui/button'
import { Calendar } from '@/registry/new-york/ui/calendar'
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from '@/registry/new-york/ui/dropdown-menu'
import { Label } from '@/registry/new-york/ui/label'
import { Popover, PopoverContent, PopoverTrigger } from '@/registry/new-york/ui/popover'
import { Separator } from '@/registry/new-york/ui/separator'
import { Switch } from '@/registry/new-york/ui/switch'
import { Textarea } from '@/registry/new-york/ui/textarea'
import { Tooltip, TooltipContent, TooltipTrigger } from '@/registry/new-york/ui/tooltip'
import addDays from 'date-fns/addDays'
import addHours from 'date-fns/addHours'
import format from 'date-fns/format'

View File

@ -1,8 +1,8 @@
<script lang="ts" setup>
import type { Mail } from '../data/mails'
import { Badge } from '@/lib/registry/new-york/ui/badge'
import { ScrollArea } from '@/lib/registry/new-york/ui/scroll-area'
import { cn } from '@/lib/utils'
import { Badge } from '@/registry/new-york/ui/badge'
import { ScrollArea } from '@/registry/new-york/ui/scroll-area'
import { formatDistanceToNow } from 'date-fns'
interface MailListProps {

View File

@ -1,11 +1,11 @@
<script lang="ts" setup>
import { buttonVariants } from '@/lib/registry/new-york/ui/button'
import { cn } from '@/lib/utils'
import { buttonVariants } from '@/registry/new-york/ui/button'
import {
Tooltip,
TooltipContent,
TooltipTrigger,
} from '@/lib/registry/new-york/ui/tooltip'
import { cn } from '@/lib/utils'
} from '@/registry/new-york/ui/tooltip'
import { Icon } from '@iconify/vue'
export interface LinkProp {

View File

@ -1,13 +1,13 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { ScrollArea, ScrollBar } from '@/lib/registry/new-york/ui/scroll-area'
import { Separator } from '@/lib/registry/new-york/ui/separator'
import { Button } from '@/registry/new-york/ui/button'
import { ScrollArea, ScrollBar } from '@/registry/new-york/ui/scroll-area'
import { Separator } from '@/registry/new-york/ui/separator'
import {
Tabs,
TabsContent,
TabsList,
TabsTrigger,
} from '@/lib/registry/new-york/ui/tabs'
} from '@/registry/new-york/ui/tabs'
import PlusCircledIcon from '~icons/radix-icons/plus-circled'
import AlbumArtwork from './components/AlbumArtwork.vue'

View File

@ -1,5 +1,6 @@
<script setup lang="ts">
import type { Album } from '../data/albums'
import { cn } from '@/lib/utils'
import {
ContextMenu,
ContextMenuContent,
@ -9,8 +10,7 @@ import {
ContextMenuSubContent,
ContextMenuSubTrigger,
ContextMenuTrigger,
} from '@/lib/registry/new-york/ui/context-menu'
import { cn } from '@/lib/utils'
} from '@/registry/new-york/ui/context-menu'
import PlusCircledIcon from '~icons/radix-icons/plus-circled'
import { playlists } from '../data/playlists'

View File

@ -14,7 +14,7 @@ import {
MenubarSubContent,
MenubarSubTrigger,
MenubarTrigger,
} from '@/lib/registry/new-york/ui/menubar'
} from '@/registry/new-york/ui/menubar'
</script>
<template>

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Dialog,
DialogContent,
@ -8,9 +8,9 @@ import {
DialogHeader,
DialogTitle,
DialogTrigger,
} from '@/lib/registry/new-york/ui/dialog'
import { Input } from '@/lib/registry/new-york/ui/input'
import { Label } from '@/lib/registry/new-york/ui/label'
} from '@/registry/new-york/ui/dialog'
import { Input } from '@/registry/new-york/ui/input'
import { Label } from '@/registry/new-york/ui/label'
</script>
<template>

View File

@ -1,8 +1,8 @@
<script setup lang="ts">
import type { Playlist } from '../data/playlists'
import { Button } from '@/lib/registry/new-york/ui/button'
import { ScrollArea } from '@/lib/registry/new-york/ui/scroll-area'
import { cn } from '@/lib/utils'
import { Button } from '@/registry/new-york/ui/button'
import { ScrollArea } from '@/registry/new-york/ui/scroll-area'
interface SidebarProps {
playlists: Playlist[]

View File

@ -1,19 +1,19 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
HoverCard,
HoverCardContent,
HoverCardTrigger,
} from '@/lib/registry/new-york/ui/hover-card'
import { Label } from '@/lib/registry/new-york/ui/label'
import { Separator } from '@/lib/registry/new-york/ui/separator'
} from '@/registry/new-york/ui/hover-card'
import { Label } from '@/registry/new-york/ui/label'
import { Separator } from '@/registry/new-york/ui/separator'
import {
Tabs,
TabsContent,
TabsList,
TabsTrigger,
} from '@/lib/registry/new-york/ui/tabs'
import { Textarea } from '@/lib/registry/new-york/ui/textarea'
} from '@/registry/new-york/ui/tabs'
import { Textarea } from '@/registry/new-york/ui/textarea'
import CounterClockwiseClockIcon from '~icons/radix-icons/counter-clockwise-clock'
import CodeViewer from './components/CodeViewer.vue'
import MaxLengthSelector from './components/MaxLengthSelector.vue'

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Dialog,
DialogContent,
@ -7,7 +7,7 @@ import {
DialogHeader,
DialogTitle,
DialogTrigger,
} from '@/lib/registry/new-york/ui/dialog'
} from '@/registry/new-york/ui/dialog'
</script>
<template>

View File

@ -4,9 +4,9 @@ import {
HoverCard,
HoverCardContent,
HoverCardTrigger,
} from '@/lib/registry/new-york/ui/hover-card'
import { Label } from '@/lib/registry/new-york/ui/label'
import { Slider } from '@/lib/registry/new-york/ui/slider'
} from '@/registry/new-york/ui/hover-card'
import { Label } from '@/registry/new-york/ui/label'
import { Slider } from '@/registry/new-york/ui/slider'
import { ref } from 'vue'
const props = defineProps<{

View File

@ -7,8 +7,8 @@ import {
AlertDialogFooter,
AlertDialogHeader,
AlertDialogTitle,
} from '@/lib/registry/new-york/ui/alert-dialog'
import { Button } from '@/lib/registry/new-york/ui/button'
} from '@/registry/new-york/ui/alert-dialog'
import { Button } from '@/registry/new-york/ui/button'
import {
Dialog,
@ -17,20 +17,20 @@ import {
DialogFooter,
DialogHeader,
DialogTitle,
} from '@/lib/registry/new-york/ui/dialog'
} from '@/registry/new-york/ui/dialog'
import {
DropdownMenu,
DropdownMenuContent,
DropdownMenuItem,
DropdownMenuSeparator,
DropdownMenuTrigger,
} from '@/lib/registry/new-york/ui/dropdown-menu'
import { Label } from '@/lib/registry/new-york/ui/label'
import { Switch } from '@/lib/registry/new-york/ui/switch'
} from '@/registry/new-york/ui/dropdown-menu'
import { Label } from '@/registry/new-york/ui/label'
import { Switch } from '@/registry/new-york/ui/switch'
import DotsHorizontalIcon from '~icons/radix-icons/dots-horizontal'
import { ref } from 'vue'
// import { toast } from "@/lib/registry/new-york/ui/use-toast"
// import { toast } from "@/registry/new-york/ui/use-toast"
const open = ref(false)
const showDeleteDialog = ref(false)

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Dialog,
DialogContent,
@ -8,9 +8,9 @@ import {
DialogHeader,
DialogTitle,
DialogTrigger,
} from '@/lib/registry/new-york/ui/dialog'
import { Input } from '@/lib/registry/new-york/ui/input'
import { Label } from '@/lib/registry/new-york/ui/label'
} from '@/registry/new-york/ui/dialog'
import { Input } from '@/registry/new-york/ui/input'
import { Label } from '@/registry/new-york/ui/label'
</script>
<template>

View File

@ -1,13 +1,13 @@
<script setup lang="ts">
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import { Input } from '@/lib/registry/new-york/ui/input'
import { Label } from '@/lib/registry/new-york/ui/label'
import { Input } from '@/registry/new-york/ui/input'
import { Label } from '@/registry/new-york/ui/label'
import {
Popover,
PopoverContent,
PopoverTrigger,
} from '@/lib/registry/new-york/ui/popover'
} from '@/registry/new-york/ui/popover'
import CopyIcon from '~icons/radix-icons/copy'
</script>

View File

@ -5,9 +5,9 @@ import {
HoverCard,
HoverCardContent,
HoverCardTrigger,
} from '@/lib/registry/new-york/ui/hover-card'
import { Label } from '@/lib/registry/new-york/ui/label'
import { Slider } from '@/lib/registry/new-york/ui/slider'
} from '@/registry/new-york/ui/hover-card'
import { Label } from '@/registry/new-york/ui/label'
import { Slider } from '@/registry/new-york/ui/slider'
import { ref } from 'vue'
const props = defineProps<{

View File

@ -5,9 +5,9 @@ import {
HoverCard,
HoverCardContent,
HoverCardTrigger,
} from '@/lib/registry/new-york/ui/hover-card'
import { Label } from '@/lib/registry/new-york/ui/label'
import { Slider } from '@/lib/registry/new-york/ui/slider'
} from '@/registry/new-york/ui/hover-card'
import { Label } from '@/registry/new-york/ui/label'
import { Slider } from '@/registry/new-york/ui/slider'
import { ref } from 'vue'
const props = defineProps<{

View File

@ -7,6 +7,7 @@ import type {
} from '@tanstack/vue-table'
import type { Task } from '../data/schema'
import { valueUpdater } from '@/lib/utils'
import {
Table,
TableBody,
@ -14,8 +15,7 @@ import {
TableHead,
TableHeader,
TableRow,
} from '@/lib/registry/new-york/ui/table'
import { valueUpdater } from '@/lib/utils'
} from '@/registry/new-york/ui/table'
import {
FlexRender,
getCoreRowModel,

View File

@ -1,15 +1,15 @@
<script setup lang="ts">
import type { Column } from '@tanstack/vue-table'
import type { Task } from '../data/schema'
import { Button } from '@/lib/registry/new-york/ui/button'
import { cn } from '@/lib/utils'
import { Button } from '@/registry/new-york/ui/button'
import {
DropdownMenu,
DropdownMenuContent,
DropdownMenuItem,
DropdownMenuSeparator,
DropdownMenuTrigger,
} from '@/lib/registry/new-york/ui/dropdown-menu'
import { cn } from '@/lib/utils'
} from '@/registry/new-york/ui/dropdown-menu'
import ArrowDownIcon from '~icons/radix-icons/arrow-down'
import ArrowUpIcon from '~icons/radix-icons/arrow-up'

View File

@ -2,17 +2,17 @@
import type { Column } from '@tanstack/vue-table'
import type { Component } from 'vue'
import type { Task } from '../data/schema'
import { Badge } from '@/lib/registry/new-york/ui/badge'
import { Button } from '@/lib/registry/new-york/ui/button'
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator } from '@/lib/registry/new-york/ui/command'
import { cn } from '@/lib/utils'
import { Badge } from '@/registry/new-york/ui/badge'
import { Button } from '@/registry/new-york/ui/button'
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator } from '@/registry/new-york/ui/command'
import {
Popover,
PopoverContent,
PopoverTrigger,
} from '@/lib/registry/new-york/ui/popover'
import { Separator } from '@/lib/registry/new-york/ui/separator'
import { cn } from '@/lib/utils'
} from '@/registry/new-york/ui/popover'
import { Separator } from '@/registry/new-york/ui/separator'
import CheckIcon from '~icons/radix-icons/check'
import PlusCircledIcon from '~icons/radix-icons/plus-circled'

View File

@ -1,14 +1,14 @@
<script setup lang="ts">
import type { Table } from '@tanstack/vue-table'
import type { Task } from '../data/schema'
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
Select,
SelectContent,
SelectItem,
SelectTrigger,
SelectValue,
} from '@/lib/registry/new-york/ui/select'
} from '@/registry/new-york/ui/select'
import ChevronLeftIcon from '~icons/radix-icons/chevron-left'
import ChevronRightIcon from '~icons/radix-icons/chevron-right'

View File

@ -1,7 +1,7 @@
<script setup lang="ts">
import type { Row } from '@tanstack/vue-table'
import type { Task } from '../data/schema'
import { Button } from '@/lib/registry/new-york/ui/button'
import { Button } from '@/registry/new-york/ui/button'
import {
DropdownMenu,
DropdownMenuContent,
@ -14,7 +14,7 @@ import {
DropdownMenuSubContent,
DropdownMenuSubTrigger,
DropdownMenuTrigger,
} from '@/lib/registry/new-york/ui/dropdown-menu'
} from '@/registry/new-york/ui/dropdown-menu'
import DotsHorizontalIcon from '~icons/radix-icons/dots-horizontal'
import { computed } from 'vue'

Some files were not shown because too many files have changed in this diff Show More