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
@@ -1,13 +1,13 @@
'use client';
import * as React from 'react';
import {cva, type VariantProps} from 'class-variance-authority';
import { cva, type VariantProps } from 'class-variance-authority';
import {
Button as ButtonPrimitive,
type ButtonProps as ButtonPrimitiveProps,
} from '@/components/animate-ui/primitives/buttons/button';
import {cn} from '@/lib/utils';
import { cn } from '@/lib/utils';
const buttonVariants = cva(
"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[box-shadow,_color,_background-color,_border-color,_outline-color,_text-decoration-color,_fill,_stroke] 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",
@@ -1,9 +1,14 @@
'use client';
import * as React from 'react';
import {motion, type Variants} from 'motion/react';
import { motion, type Variants } from 'motion/react';
import {getVariants, type IconProps, IconWrapper, useAnimateIconContext,} from '@/components/animate-ui/icons/icon';
import {
getVariants,
type IconProps,
IconWrapper,
useAnimateIconContext,
} from '@/components/animate-ui/icons/icon';
type CheckProps = IconProps<keyof typeof animations>;
@@ -1,9 +1,14 @@
'use client';
import * as React from 'react';
import {motion, type Variants} from 'motion/react';
import { motion, type Variants } from 'motion/react';
import {getVariants, type IconProps, IconWrapper, useAnimateIconContext,} from '@/components/animate-ui/icons/icon';
import {
getVariants,
type IconProps,
IconWrapper,
useAnimateIconContext,
} from '@/components/animate-ui/icons/icon';
type ChevronDownProps = IconProps<keyof typeof animations>;
@@ -1,9 +1,14 @@
'use client';
import * as React from 'react';
import {motion, type Variants} from 'motion/react';
import { motion, type Variants } from 'motion/react';
import {getVariants, type IconProps, IconWrapper, useAnimateIconContext,} from '@/components/animate-ui/icons/icon';
import {
getVariants,
type IconProps,
IconWrapper,
useAnimateIconContext,
} from '@/components/animate-ui/icons/icon';
type ChevronLeftProps = IconProps<keyof typeof animations>;
@@ -1,9 +1,14 @@
'use client';
import * as React from 'react';
import {motion, type Variants} from 'motion/react';
import { motion, type Variants } from 'motion/react';
import {getVariants, type IconProps, IconWrapper, useAnimateIconContext,} from '@/components/animate-ui/icons/icon';
import {
getVariants,
type IconProps,
IconWrapper,
useAnimateIconContext,
} from '@/components/animate-ui/icons/icon';
type ChevronRightProps = IconProps<keyof typeof animations>;
@@ -1,9 +1,14 @@
'use client';
import * as React from 'react';
import {motion, type Variants} from 'motion/react';
import { motion, type Variants } from 'motion/react';
import {getVariants, type IconProps, IconWrapper, useAnimateIconContext,} from '@/components/animate-ui/icons/icon';
import {
getVariants,
type IconProps,
IconWrapper,
useAnimateIconContext,
} from '@/components/animate-ui/icons/icon';
type CircleCheckProps = IconProps<keyof typeof animations>;
@@ -1,9 +1,12 @@
'use client';
import * as React from 'react';
import {type HTMLMotionProps, motion} from 'motion/react';
import { type HTMLMotionProps, motion } from 'motion/react';
import {Slot, type WithAsChild,} from '@/components/animate-ui/primitives/animate/slot';
import {
Slot,
type WithAsChild,
} from '@/components/animate-ui/primitives/animate/slot';
type ButtonProps = WithAsChild<
HTMLMotionProps<'button'> & {
@@ -1,11 +1,11 @@
'use client';
import * as React from 'react';
import {Collapsible as CollapsiblePrimitive} from 'radix-ui';
import {AnimatePresence, type HTMLMotionProps, motion} from 'motion/react';
import { Collapsible as CollapsiblePrimitive } from 'radix-ui';
import { AnimatePresence, type HTMLMotionProps, motion } from 'motion/react';
import {getStrictContext} from '@/lib/utils/get-strict-context';
import {useControlledState} from '@/hooks/use-controlled-state';
import { getStrictContext } from '@/lib/utils/get-strict-context';
import { useControlledState } from '@/hooks/use-controlled-state';
type CollapsibleContextType = {
isOpen: boolean;
@@ -1,9 +1,9 @@
'use client';
import * as React from 'react';
import {type SpringOptions, useMotionValue, useSpring} from 'motion/react';
import { type SpringOptions, useMotionValue, useSpring } from 'motion/react';
import {useIsInView, type UseIsInViewOptions} from '@/hooks/use-is-in-view';
import { useIsInView, type UseIsInViewOptions } from '@/hooks/use-is-in-view';
type CountingNumberProps = Omit<React.ComponentProps<'span'>, 'children'> & {
number: number;