feat: add core UI components and baseline tests

This commit is contained in:
2026-03-19 16:56:27 +08:00
parent 12642e0a92
commit 063179933c
73 changed files with 5756 additions and 2 deletions
+156
View File
@@ -1,5 +1,161 @@
export { Button, type ButtonProps } from "./components/button";
export { buttonVariants } from "./components/button.variants";
export { Checkbox, type CheckboxProps } from "./components/checkbox";
export { checkboxVariants } from "./components/checkbox.variants";
export {
Dialog,
DialogClose,
DialogContent,
DialogDescription,
DialogFooter,
DialogHeader,
DialogOverlay,
DialogPortal,
DialogTitle,
DialogTrigger,
type DialogContentProps
} from "./components/dialog";
export {
dialogContentVariants,
dialogFooterVariants,
dialogHeaderVariants,
dialogOverlayVariants
} from "./components/dialog.variants";
export {
DropdownMenu,
DropdownMenuCheckboxItem,
DropdownMenuContent,
DropdownMenuGroup,
DropdownMenuItem,
DropdownMenuLabel,
DropdownMenuPortal,
DropdownMenuRadioGroup,
DropdownMenuRadioItem,
DropdownMenuSeparator,
DropdownMenuShortcut,
DropdownMenuSub,
DropdownMenuSubContent,
DropdownMenuSubTrigger,
DropdownMenuTrigger,
type DropdownMenuCheckboxItemProps,
type DropdownMenuContentProps,
type DropdownMenuItemProps,
type DropdownMenuLabelProps,
type DropdownMenuRadioItemProps,
type DropdownMenuSubContentProps,
type DropdownMenuSubTriggerProps
} from "./components/dropdown-menu";
export {
dropdownMenuContentVariants,
dropdownMenuItemVariants,
dropdownMenuLabelVariants,
dropdownMenuSeparatorVariants
} from "./components/dropdown-menu.variants";
export {
Field,
FieldControl,
FieldDescription,
FieldError,
FieldLabel,
FormItem,
useFieldIds,
type FieldControlProps,
type FieldDescriptionProps,
type FieldErrorProps,
type FieldProps,
type FieldRenderProps
} from "./components/field";
export { Input, type InputProps } from "./components/input";
export { inputVariants } from "./components/input.variants";
export { Label, type LabelProps } from "./components/label";
export {
Popover,
PopoverAnchor,
PopoverArrow,
PopoverClose,
PopoverContent,
PopoverPortal,
PopoverTrigger,
type PopoverContentProps
} from "./components/popover";
export { popoverContentVariants } from "./components/popover.variants";
export {
RadioGroup,
RadioGroupItem,
type RadioGroupItemProps,
type RadioGroupProps
} from "./components/radio-group";
export {
radioGroupItemVariants,
radioGroupVariants
} from "./components/radio-group.variants";
export {
Select,
SelectContent,
SelectGroup,
SelectItem,
SelectLabel,
SelectSeparator,
SelectTrigger,
SelectValue,
type SelectTriggerProps
} from "./components/select";
export {
selectContentVariants,
selectItemVariants,
selectLabelVariants,
selectSeparatorVariants,
selectTriggerVariants,
selectViewportVariants
} from "./components/select.variants";
export { Separator, type SeparatorProps } from "./components/separator";
export { separatorVariants } from "./components/separator.variants";
export { Skeleton, type SkeletonProps } from "./components/skeleton";
export { Spinner, type SpinnerProps } from "./components/spinner";
export { Switch, type SwitchProps } from "./components/switch";
export {
switchThumbVariants,
switchVariants
} from "./components/switch.variants";
export {
Tabs,
TabsContent,
TabsList,
TabsTrigger
} from "./components/tabs";
export {
tabsContentVariants,
tabsListVariants,
tabsTriggerVariants
} from "./components/tabs.variants";
export { Textarea, type TextareaProps } from "./components/textarea";
export { textareaVariants } from "./components/textarea.variants";
export {
Toast,
ToastAction,
ToastClose,
ToastDescription,
ToastProvider,
ToastTitle,
ToastViewport,
type ToastProps
} from "./components/toast";
export {
toastActionVariants,
toastCloseVariants,
toastVariants,
toastViewportVariants
} from "./components/toast.variants";
export {
Tooltip,
TooltipArrow,
TooltipContent,
TooltipPortal,
TooltipProvider,
TooltipTrigger,
type TooltipContentProps
} from "./components/tooltip";
export { tooltipContentVariants } from "./components/tooltip.variants";
export { cn } from "./lib/cn";
export { cva, cx, type VariantProps } from "./lib/cva";
export {