This commit is contained in:
ryan
2026-07-13 15:44:03 +08:00
parent 0548a8a5d4
commit 26be762c3a
102 changed files with 909 additions and 490 deletions
+2 -2
View File
@@ -2,9 +2,9 @@
import * as React from 'react';
import * as AccordionPrimitive from '@radix-ui/react-accordion';
import {ChevronDownIcon} from 'lucide-react';
import { ChevronDownIcon } from 'lucide-react';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
function Accordion({
...props
+2 -2
View File
@@ -3,8 +3,8 @@
import * as React from 'react';
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
import {cn} from '@/lib/utils';
import {buttonVariants} from '@/components/ui/button';
import { cn } from '@/lib/utils';
import { buttonVariants } from '@/components/ui/button';
function AlertDialog({
...props
+2 -2
View File
@@ -1,6 +1,6 @@
'use client';
import {cn} from '@/lib/utils';
import React, {ReactNode, useEffect, useState} from 'react';
import { cn } from '@/lib/utils';
import React, { ReactNode, useEffect, useState } from 'react';
interface AuroraBackgroundProps extends React.HTMLProps<HTMLDivElement> {
children: ReactNode;
+1 -1
View File
@@ -3,7 +3,7 @@
import * as React from 'react';
import * as AvatarPrimitive from '@radix-ui/react-avatar';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
function Avatar({
className,
+3 -3
View File
@@ -1,8 +1,8 @@
import * as React from 'react';
import {Slot} from '@radix-ui/react-slot';
import {cva, type VariantProps} from 'class-variance-authority';
import { Slot } from '@radix-ui/react-slot';
import { cva, type VariantProps } from 'class-variance-authority';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
const badgeVariants = cva(
'inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden',
+3 -3
View File
@@ -1,8 +1,8 @@
import * as React from 'react';
import {Slot} from '@radix-ui/react-slot';
import {ChevronRight, MoreHorizontal} from 'lucide-react';
import { Slot } from '@radix-ui/react-slot';
import { ChevronRight, MoreHorizontal } from 'lucide-react';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
function Breadcrumb({ ...props }: React.ComponentProps<'nav'>) {
return <nav aria-label='breadcrumb' data-slot='breadcrumb' {...props} />;
+3 -3
View File
@@ -1,8 +1,8 @@
import * as React from 'react';
import {Slot} from '@radix-ui/react-slot';
import {cva, type VariantProps} from 'class-variance-authority';
import { Slot } from '@radix-ui/react-slot';
import { cva, type VariantProps } from 'class-variance-authority';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
const buttonVariants = cva(
"cursor-pointer inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
+8 -4
View File
@@ -1,11 +1,15 @@
'use client';
import * as React from 'react';
import {ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon,} from 'lucide-react';
import {DayButton, DayPicker, getDefaultClassNames} from 'react-day-picker';
import {
ChevronDownIcon,
ChevronLeftIcon,
ChevronRightIcon,
} from 'lucide-react';
import { DayButton, DayPicker, getDefaultClassNames } from 'react-day-picker';
import {cn} from '@/lib/utils';
import {Button, buttonVariants} from '@/components/ui/button';
import { cn } from '@/lib/utils';
import { Button, buttonVariants } from '@/components/ui/button';
function Calendar({
className,
+1 -1
View File
@@ -1,6 +1,6 @@
import * as React from 'react';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
function Card({ className, ...props }: React.ComponentProps<'div'>) {
return (
+6 -4
View File
@@ -1,11 +1,13 @@
'use client';
import * as React from 'react';
import useEmblaCarousel, {type UseEmblaCarouselType,} from 'embla-carousel-react';
import {ArrowLeft, ArrowRight} from 'lucide-react';
import useEmblaCarousel, {
type UseEmblaCarouselType,
} from 'embla-carousel-react';
import { ArrowLeft, ArrowRight } from 'lucide-react';
import {cn} from '@/lib/utils';
import {Button} from '@/components/ui/button';
import { cn } from '@/lib/utils';
import { Button } from '@/components/ui/button';
type CarouselApi = UseEmblaCarouselType[1];
type UseCarouselParameters = Parameters<typeof useEmblaCarousel>;
+1 -1
View File
@@ -3,7 +3,7 @@
import * as React from 'react';
import * as RechartsPrimitive from 'recharts';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
// Format: { THEME_NAME: CSS_SELECTOR }
const THEMES = { light: '', dark: '.dark' } as const;
+2 -2
View File
@@ -2,9 +2,9 @@
import * as React from 'react';
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
import {CheckIcon} from 'lucide-react';
import { CheckIcon } from 'lucide-react';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
function Checkbox({
className,
+2 -2
View File
@@ -1,8 +1,8 @@
'use client';
import * as React from 'react';
import {Check, Copy} from 'lucide-react';
import {cn} from '@/lib/utils';
import { Check, Copy } from 'lucide-react';
import { cn } from '@/lib/utils';
interface CodeBlockProps extends React.HTMLAttributes<HTMLDivElement> {
code: string;
+1 -1
View File
@@ -1,7 +1,7 @@
'use client';
import * as React from 'react';
import {Collapsible as CollapsiblePrimitive} from 'radix-ui';
import { Collapsible as CollapsiblePrimitive } from 'radix-ui';
function Collapsible({
...props
+11 -5
View File
@@ -1,12 +1,18 @@
'use client';
import * as React from 'react';
import {Command as CommandPrimitive} from 'cmdk';
import {SearchIcon} from 'lucide-react';
import {motion} from 'motion/react';
import { Command as CommandPrimitive } from 'cmdk';
import { SearchIcon } from 'lucide-react';
import { motion } from 'motion/react';
import {cn} from '@/lib/utils';
import {Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle,} from '@/components/ui/dialog';
import { cn } from '@/lib/utils';
import {
Dialog,
DialogContent,
DialogDescription,
DialogHeader,
DialogTitle,
} from '@/components/ui/dialog';
function Command({
className,
+2 -2
View File
@@ -2,9 +2,9 @@
import * as React from 'react';
import * as DialogPrimitive from '@radix-ui/react-dialog';
import {XIcon} from 'lucide-react';
import { XIcon } from 'lucide-react';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
function Dialog({
...props
+1 -1
View File
@@ -1,5 +1,5 @@
import * as React from 'react';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
const DocsTable = React.forwardRef<
HTMLTableElement,
+2 -2
View File
@@ -1,9 +1,9 @@
'use client';
import * as React from 'react';
import {Drawer as DrawerPrimitive} from 'vaul';
import { Drawer as DrawerPrimitive } from 'vaul';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
function Drawer({
...props
+2 -2
View File
@@ -2,9 +2,9 @@
import * as React from 'react';
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
import {CheckIcon, ChevronRightIcon, CircleIcon} from 'lucide-react';
import { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
function DropdownMenu({
...props
+5 -5
View File
@@ -1,11 +1,11 @@
'use client';
import {useMemo} from 'react';
import {cva, type VariantProps} from 'class-variance-authority';
import { useMemo } from 'react';
import { cva, type VariantProps } from 'class-variance-authority';
import {cn} from '@/lib/utils';
import {Label} from '@/components/ui/label';
import {Separator} from '@/components/ui/separator';
import { cn } from '@/lib/utils';
import { Label } from '@/components/ui/label';
import { Separator } from '@/components/ui/separator';
function FieldSet({ className, ...props }: React.ComponentProps<'fieldset'>) {
return (
+1 -1
View File
@@ -1,6 +1,6 @@
'use client';
import {useEffect, useRef} from 'react';
import { useEffect, useRef } from 'react';
interface Particle {
x: number;
+3 -3
View File
@@ -2,7 +2,7 @@
import * as React from 'react';
import * as LabelPrimitive from '@radix-ui/react-label';
import {Slot} from '@radix-ui/react-slot';
import { Slot } from '@radix-ui/react-slot';
import {
Controller,
type ControllerProps,
@@ -13,8 +13,8 @@ import {
useFormState,
} from 'react-hook-form';
import {cn} from '@/lib/utils';
import {Label} from '@/components/ui/label';
import { cn } from '@/lib/utils';
import { Label } from '@/components/ui/label';
const Form = FormProvider;