Skip to content

Commit e9ba4a8

Browse files
committed
chore: update components json file
1 parent 602d11a commit e9ba4a8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+1364
-99
lines changed

playground/public/r/accordion.json

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,11 @@
33
"name": "accordion",
44
"type": "registry:block",
55
"title": "Accordion",
6-
"dependencies": [
7-
"@radix-ui/react-accordion",
8-
"@radix-ui/react-slot"
9-
],
6+
"dependencies": ["@radix-ui/react-accordion", "@radix-ui/react-slot"],
107
"files": [
118
{
129
"path": "src/components/accordion/Accordion.tsx",
13-
"content": "'use client';\n\nimport type { Root } from '@radix-ui/react-accordion';\nimport { forwardRef } from 'react';\n\nimport { cn } from '@/lib/utils';\n\nimport AccordionContent from './AccordionContent';\nimport AccordionHeader from './AccordionHeader';\nimport AccordionItem from './AccordionItem';\nimport AccordionRoot from './AccordionRoot';\nimport AccordionTrigger from './AccordionTrigger';\nimport { accordionVariants } from './accordion-variants';\nimport type { AccordionProps } from './types';\n\nconst Accordion = forwardRef<React.ElementRef<typeof Root>, AccordionProps>((props, ref) => {\n const { className, classNames, items, size, triggerIcon, triggerLeading, triggerTrailing, ...rest } = props;\n\n const { root } = accordionVariants({ size });\n\n const mergedCls = cn(root(), className);\n\n return (\n <AccordionRoot\n className={mergedCls}\n ref={ref}\n {...rest}\n >\n {items.map(item => (\n <AccordionItem\n className={classNames?.item}\n disabled={item.disabled}\n key={item.value}\n value={item.value}\n >\n <AccordionHeader className={classNames?.header}>\n <AccordionTrigger\n className={classNames?.trigger}\n classNames={classNames}\n icon={triggerIcon}\n leading={item.leading || triggerLeading}\n size={size}\n trailing={item.trailing || triggerTrailing}\n >\n {item.title}\n </AccordionTrigger>\n </AccordionHeader>\n\n <AccordionContent\n className={classNames?.content}\n size={size}\n >\n {item.children}\n </AccordionContent>\n </AccordionItem>\n ))}\n </AccordionRoot>\n );\n});\nAccordion.displayName = 'Accordion';\n\nexport default Accordion;\n",
10+
"content": "'use client';\n\nimport type { Root } from '@radix-ui/react-accordion';\nimport type { ComponentRef } from 'react';\nimport { forwardRef } from 'react';\n\nimport { useComponentConfig } from '../config-provider/context';\n\nimport AccordionUI from './AccordionUI';\nimport type { AccordionProps } from './types';\n\nconst Accordion = forwardRef<ComponentRef<typeof Root>, AccordionProps>((props, ref) => {\n const config = useComponentConfig('accordion');\n\n const mergedProps = {\n ...config,\n ...props\n };\n\n return (\n <AccordionUI\n {...mergedProps}\n ref={ref}\n />\n );\n});\n\nAccordion.displayName = 'Accordion';\n\nexport default Accordion;\n",
1411
"type": "registry:ui",
1512
"target": "components/accordion/Accordion.tsx"
1613
},
@@ -44,23 +41,29 @@
4441
"type": "registry:ui",
4542
"target": "components/accordion/AccordionTrigger.tsx"
4643
},
44+
{
45+
"path": "src/components/accordion/AccordionUI.tsx",
46+
"content": "import type { Root } from '@radix-ui/react-accordion';\nimport { forwardRef } from 'react';\n\nimport AccordionContent from './AccordionContent';\nimport AccordionHeader from './AccordionHeader';\nimport AccordionItem from './AccordionItem';\nimport AccordionRoot from './AccordionRoot';\nimport AccordionTrigger from './AccordionTrigger';\nimport type { AccordionProps } from './types';\n\nconst AccordionUI = forwardRef<React.ElementRef<typeof Root>, AccordionProps>((props, ref) => {\n const { className, classNames, dir, items, size, triggerIcon, triggerLeading, triggerTrailing, ...rest } = props;\n\n return (\n <AccordionRoot\n className={className || classNames?.root}\n ref={ref}\n {...rest}\n >\n {items.map(item => (\n <AccordionItem\n className={classNames?.item}\n dir={dir}\n disabled={item.disabled}\n key={item.value}\n value={item.value}\n >\n <AccordionHeader\n className={classNames?.header}\n dir={dir}\n >\n <AccordionTrigger\n className={classNames?.trigger}\n classNames={classNames}\n dir={dir}\n icon={triggerIcon}\n leading={item.leading || triggerLeading}\n size={size}\n trailing={item.trailing || triggerTrailing}\n >\n {item.title}\n </AccordionTrigger>\n </AccordionHeader>\n\n <AccordionContent\n className={classNames?.content}\n dir={dir}\n size={size}\n >\n {item.children}\n </AccordionContent>\n </AccordionItem>\n ))}\n </AccordionRoot>\n );\n});\nAccordionUI.displayName = 'AccordionUI';\n\nexport default AccordionUI;\n",
47+
"type": "registry:ui",
48+
"target": "components/accordion/AccordionUI.tsx"
49+
},
4750
{
4851
"path": "src/components/accordion/accordion-variants.ts",
49-
"content": "import { tv } from 'tailwind-variants';\n\nexport const accordionVariants = tv({\n defaultVariants: {\n size: 'md'\n },\n slots: {\n content: [`overflow-hidden data-[state=open]:animate-accordion-down data-[state=closed]:animate-accordion-up`],\n header: 'flex',\n item: 'border-b',\n root: '',\n trigger: [\n `flex-1 flex items-center justify-start font-medium transition-all duration-200 bg-transparent`,\n `focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-background focus-visible:ring-primary`,\n `hover:underline [&[data-state=open]>.trigger-icon]:rotate-180`\n ],\n triggerIcon: `trigger-icon ml-auto shrink-0 text-muted-foreground transition-transform duration-200`,\n triggerLeadingIcon: `shrink-0`\n },\n variants: {\n size: {\n '2xl': {\n content: 'data-[state=open]:pb-6',\n root: 'text-2xl',\n trigger: 'py-6 gap-6'\n },\n lg: {\n content: 'data-[state=open]:pb-4.5',\n root: 'text-base',\n trigger: 'py-4.5 gap-4.5'\n },\n md: {\n content: 'data-[state=open]:pb-4',\n root: 'text-sm',\n trigger: 'py-4 gap-4'\n },\n sm: {\n content: 'data-[state=open]:pb-3.5',\n root: 'text-xs',\n trigger: 'py-3.5 gap-3.5'\n },\n xl: {\n content: 'data-[state=open]:pb-5',\n root: 'text-lg',\n trigger: 'py-5 gap-5'\n },\n xs: {\n content: 'data-[state=open]:pb-3',\n root: 'text-2xs',\n trigger: 'py-3 gap-3'\n }\n }\n }\n});\n\nexport type AccordionSlots = keyof typeof accordionVariants.slots;\n",
52+
"content": "import { tv } from 'tailwind-variants';\n\nexport const accordionVariants = tv({\n defaultVariants: {\n size: 'md'\n },\n slots: {\n content: [\n `overflow-hidden transition will-change-auto data-[state=open]:animate-accordion-down data-[state=closed]:animate-accordion-up`\n ],\n header: 'flex',\n item: 'border-b',\n root: '',\n trigger: [\n `flex-1 flex items-center justify-start font-medium transition-all duration-200 bg-transparent`,\n `focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-background focus-visible:ring-primary`,\n `hover:underline [&[data-state=open]>.trigger-icon]:rotate-180`\n ],\n triggerIcon: `trigger-icon ml-auto shrink-0 text-muted-foreground transition-transform duration-200`,\n triggerLeadingIcon: `shrink-0`\n },\n variants: {\n size: {\n '2xl': {\n content: 'data-[state=open]:pb-6',\n root: 'text-2xl',\n trigger: 'py-6 gap-6'\n },\n lg: {\n content: 'data-[state=open]:pb-4.5',\n root: 'text-base',\n trigger: 'py-4.5 gap-4.5'\n },\n md: {\n content: 'data-[state=open]:pb-4',\n root: 'text-sm',\n trigger: 'py-4 gap-4'\n },\n sm: {\n content: 'data-[state=open]:pb-3.5',\n root: 'text-xs',\n trigger: 'py-3.5 gap-3.5'\n },\n xl: {\n content: 'data-[state=open]:pb-5',\n root: 'text-lg',\n trigger: 'py-5 gap-5'\n },\n xs: {\n content: 'data-[state=open]:pb-3',\n root: 'text-2xs',\n trigger: 'py-3 gap-3'\n }\n }\n }\n});\n\nexport type AccordionSlots = keyof typeof accordionVariants.slots;\n",
5053
"type": "registry:ui",
5154
"target": "components/accordion/accordion-variants.ts"
5255
},
5356
{
5457
"path": "src/components/accordion/index.ts",
55-
"content": "export { default as Accordion } from './Accordion';\nexport { default as AccordionContent } from './AccordionContent';\nexport { default as AccordionHeader } from './AccordionHeader';\nexport { default as AccordionItem } from './AccordionItem';\nexport { default as AccordionRoot } from './AccordionRoot';\nexport { default as AccordionTrigger } from './AccordionTrigger';\n\nexport * from './types';\n",
58+
"content": "export { default as Accordion } from './Accordion';\nexport { default as AccordionContent } from './AccordionContent';\nexport { default as AccordionHeader } from './AccordionHeader';\nexport { default as AccordionItem } from './AccordionItem';\nexport { default as AccordionRoot } from './AccordionRoot';\nexport { default as AccordionTrigger } from './AccordionTrigger';\nexport { default as AccordionUi } from './AccordionUI';\n\nexport * from './types';\n",
5659
"type": "registry:ui",
5760
"target": "components/accordion/index.ts"
5861
},
5962
{
6063
"path": "src/components/accordion/types.ts",
61-
"content": "import type {\n AccordionContentProps as _AccordionContentProps,\n AccordionHeaderProps as _AccordionHeaderProps,\n AccordionItemProps as _AccordionItemProps,\n // eslint-disable-next-line sort-imports\n AccordionMultipleProps,\n AccordionSingleProps,\n AccordionTriggerProps as _AccordionTriggerProps\n} from '@radix-ui/react-accordion';\n\nimport type { BaseNodeProps, ClassValue, PropsSlot, ThemeSize } from '@/types/other';\n\nimport type { AccordionSlots } from './accordion-variants';\n\n/** The ui of the accordion. */\nexport type AccordionUi = Partial<Record<AccordionSlots, ClassValue>>;\n\nexport type AccordionRootProps = BaseNodeProps<AccordionSingleProps> | BaseNodeProps<AccordionMultipleProps>;\n\nexport interface AccordionHeaderProps extends BaseNodeProps<_AccordionHeaderProps> {}\n\nexport interface AccordionContentProps extends BaseNodeProps<_AccordionContentProps> {}\n\nexport interface AccordionItemProps extends BaseNodeProps<_AccordionItemProps> {}\n\nexport interface AccordionTriggerProps extends BaseNodeProps<_AccordionTriggerProps>, PropsSlot {\n /** The ui of the accordion trigger. */\n classNames?: Pick<AccordionUi, 'triggerIcon' | 'triggerLeadingIcon'>;\n icon?: React.ReactNode;\n}\n\n// Accordion\nexport interface AccordionItemData extends Pick<AccordionItemProps, 'disabled' | 'value'> {\n children: React.ReactNode;\n leading?: React.ReactNode;\n title: React.ReactNode;\n trailing?: React.ReactNode;\n}\n\nexport type AccordionProps<T extends AccordionItemData = AccordionItemData> = AccordionRootProps & {\n classNames?: AccordionUi;\n items: T[];\n size?: ThemeSize;\n triggerIcon?: React.ReactNode;\n triggerLeading?: React.ReactNode;\n triggerTrailing?: React.ReactNode;\n};\n",
64+
"content": "import type {\n AccordionContentProps as _AccordionContentProps,\n AccordionHeaderProps as _AccordionHeaderProps,\n AccordionItemProps as _AccordionItemProps,\n // eslint-disable-next-line sort-imports\n AccordionMultipleProps,\n AccordionSingleProps,\n AccordionTriggerProps as _AccordionTriggerProps\n} from '@radix-ui/react-accordion';\n\nimport type { BaseNodeProps, ClassValue, PropsSlot, ThemeSize } from '@/types/other';\n\nimport type { AccordionSlots } from './accordion-variants';\n\n/** The ui of the accordion. */\nexport type AccordionClassNames = Partial<Record<AccordionSlots, ClassValue>>;\n\nexport type AccordionRootProps = BaseNodeProps<AccordionSingleProps> | BaseNodeProps<AccordionMultipleProps>;\n\nexport interface AccordionHeaderProps extends BaseNodeProps<_AccordionHeaderProps> {}\n\nexport interface AccordionContentProps extends BaseNodeProps<_AccordionContentProps> {}\n\nexport interface AccordionItemProps extends BaseNodeProps<_AccordionItemProps> {}\n\nexport interface AccordionTriggerProps extends BaseNodeProps<_AccordionTriggerProps>, PropsSlot {\n /** The ui of the accordion trigger. */\n classNames?: Pick<AccordionClassNames, 'triggerIcon' | 'triggerLeadingIcon'>;\n icon?: React.ReactNode;\n}\n\n// Accordion\nexport interface AccordionItemData extends Pick<AccordionItemProps, 'disabled' | 'value'> {\n children: React.ReactNode;\n leading?: React.ReactNode;\n title: React.ReactNode;\n trailing?: React.ReactNode;\n}\n\nexport type AccordionProps<T extends AccordionItemData = AccordionItemData> = AccordionRootProps & {\n classNames?: AccordionClassNames;\n items: T[];\n size?: ThemeSize;\n triggerIcon?: React.ReactNode;\n triggerLeading?: React.ReactNode;\n triggerTrailing?: React.ReactNode;\n};\n",
6265
"type": "registry:ui",
6366
"target": "components/accordion/types.ts"
6467
}
6568
]
66-
}
69+
}

playground/public/r/alert-dialog.json

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,8 @@
33
"name": "alert-dialog",
44
"type": "registry:block",
55
"title": "Alert Dialog",
6-
"dependencies": [
7-
"@radix-ui/react-alert-dialog",
8-
"@radix-ui/react-slot"
9-
],
10-
"registryDependencies": [
11-
"button"
12-
],
6+
"dependencies": ["@radix-ui/react-alert-dialog", "@radix-ui/react-slot"],
7+
"registryDependencies": ["button"],
138
"files": [
149
{
1510
"path": "src/components/alert-dialog/AlertDialog.tsx",
@@ -84,4 +79,4 @@
8479
"target": "components/alert-dialog/types.ts"
8580
}
8681
]
87-
}
82+
}

0 commit comments

Comments
 (0)