@mzc-fe/design-system 0.0.6 → 0.0.7-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/components/accordion/accordion.d.ts +50 -0
  2. package/dist/components/alert/alert.d.ts +31 -0
  3. package/dist/components/alert-dialog/alert-dialog.d.ts +35 -0
  4. package/dist/components/aspect-ratio/aspect-ratio.d.ts +12 -0
  5. package/dist/components/avatar/avatar.d.ts +11 -0
  6. package/dist/components/badge/badge.d.ts +12 -0
  7. package/dist/components/breadcrumb/breadcrumb.d.ts +23 -0
  8. package/dist/components/button/button.d.ts +15 -0
  9. package/dist/components/button-group/button-group.d.ts +16 -0
  10. package/dist/components/calendar/calendar.d.ts +15 -0
  11. package/dist/components/card/card.d.ts +15 -0
  12. package/dist/components/carousel/carousel.d.ts +24 -0
  13. package/dist/components/chart/chart.d.ts +20 -0
  14. package/dist/components/checkbox/checkbox.d.ts +9 -0
  15. package/dist/components/collapsible/collapsible.d.ts +13 -0
  16. package/dist/components/command/command.d.ts +18 -0
  17. package/dist/components/context-menu/context-menu.d.ts +18 -0
  18. package/dist/components/dialog/dialog.d.ts +25 -0
  19. package/dist/components/drawer/drawer.d.ts +18 -0
  20. package/dist/components/dropdown-menu/dropdown-menu.d.ts +21 -0
  21. package/dist/components/empty/empty.d.ts +25 -0
  22. package/dist/components/field/field.d.ts +26 -0
  23. package/dist/components/form/form.d.ts +30 -1
  24. package/dist/components/hover-card/hover-card.d.ts +13 -0
  25. package/dist/components/input/input.d.ts +10 -0
  26. package/dist/components/input-group/input-group.d.ts +19 -0
  27. package/dist/components/input-otp/input-otp.d.ts +23 -0
  28. package/dist/components/item/item.d.ts +33 -1
  29. package/dist/components/kbd/kbd.d.ts +10 -0
  30. package/dist/components/label/label.d.ts +9 -0
  31. package/dist/components/menubar/menubar.d.ts +25 -0
  32. package/dist/components/navigation-menu/navigation-menu.d.ts +26 -0
  33. package/dist/components/pagination/pagination.d.ts +26 -0
  34. package/dist/components/popover/popover.d.ts +17 -0
  35. package/dist/components/progress/progress.d.ts +10 -0
  36. package/dist/components/radio-group/radio-group.d.ts +12 -0
  37. package/dist/components/resizable/resizable.d.ts +19 -0
  38. package/dist/components/scroll-area/scroll-area.d.ts +14 -0
  39. package/dist/components/select/select.d.ts +25 -0
  40. package/dist/components/separator/separator.d.ts +11 -0
  41. package/dist/components/sheet/sheet.d.ts +23 -0
  42. package/dist/components/sidebar/sidebar.d.ts +50 -0
  43. package/dist/components/skeleton/skeleton.d.ts +8 -0
  44. package/dist/components/slider/slider.d.ts +12 -0
  45. package/dist/components/sonner/sonner.d.ts +14 -0
  46. package/dist/components/spinner/spinner.d.ts +9 -0
  47. package/dist/components/switch/switch.d.ts +8 -0
  48. package/dist/components/table/table.d.ts +26 -0
  49. package/dist/components/tabs/tabs.d.ts +16 -6
  50. package/dist/components/textarea/textarea.d.ts +8 -0
  51. package/dist/components/toggle/toggle.d.ts +13 -0
  52. package/dist/components/toggle-group/toggle-group.d.ts +1 -0
  53. package/dist/components/tooltip/tooltip.d.ts +21 -0
  54. package/dist/design-system.css +1 -1
  55. package/dist/design-system.es.js +3481 -28494
  56. package/dist/design-system.umd.js +4 -257
  57. package/package.json +25 -18
  58. package/README.md +0 -184
  59. package/dist/vite.svg +0 -1
@@ -1,7 +1,57 @@
1
1
  import * as React from "react";
2
2
  import * as AccordionPrimitive from "@radix-ui/react-accordion";
3
+ /**
4
+ * 접을 수 있는 콘텐츠 섹션을 제공하는 아코디언 컴포넌트입니다.
5
+ * Radix UI의 Accordion primitive를 기반으로 합니다.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * <Accordion type="single" collapsible>
10
+ * <AccordionItem value="item-1">
11
+ * <AccordionTrigger>제목</AccordionTrigger>
12
+ * <AccordionContent>내용</AccordionContent>
13
+ * </AccordionItem>
14
+ * </Accordion>
15
+ * ```
16
+ *
17
+ * @param props - Radix UI Accordion.Root props
18
+ * @param props.type - 'single'은 하나의 아이템만, 'multiple'은 여러 아이템을 동시에 열 수 있습니다
19
+ * @param props.collapsible - type이 'single'일 때, 열린 아이템을 다시 클릭하여 닫을 수 있게 합니다
20
+ * @param props.defaultValue - 초기에 열려있을 아이템의 value
21
+ * @param props.value - 제어 모드에서 열려있는 아이템의 value
22
+ * @param props.onValueChange - 열린 아이템이 변경될 때 호출되는 콜백
23
+ * @param props.disabled - 모든 아이템을 비활성화합니다
24
+ */
3
25
  declare function Accordion({ ...props }: React.ComponentProps<typeof AccordionPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
26
+ /**
27
+ * 아코디언의 개별 아이템을 나타내는 컴포넌트입니다.
28
+ * 각 아이템은 고유한 value를 가져야 합니다.
29
+ *
30
+ * @param props - Radix UI Accordion.Item props
31
+ * @param props.value - 아이템의 고유 식별자 (필수)
32
+ * @param props.disabled - 이 아이템만 비활성화합니다
33
+ * @param props.className - 추가 CSS 클래스
34
+ */
4
35
  declare function AccordionItem({ className, ...props }: React.ComponentProps<typeof AccordionPrimitive.Item>): import("react/jsx-runtime").JSX.Element;
36
+ /**
37
+ * 아코디언 아이템을 열고 닫는 트리거 버튼입니다.
38
+ * 클릭하면 해당 아이템의 콘텐츠가 펼쳐지거나 접힙니다.
39
+ * 우측에 화살표 아이콘이 표시되며, 열린 상태에서는 회전합니다.
40
+ *
41
+ * @param props - Radix UI Accordion.Trigger props
42
+ * @param props.children - 트리거에 표시될 텍스트 또는 요소
43
+ * @param props.className - 추가 CSS 클래스
44
+ * @param props.disabled - 트리거를 비활성화합니다
45
+ */
5
46
  declare function AccordionTrigger({ className, children, ...props }: React.ComponentProps<typeof AccordionPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
47
+ /**
48
+ * 아코디언 아이템의 접히는 콘텐츠 영역입니다.
49
+ * 트리거를 클릭하면 애니메이션과 함께 펼쳐지거나 접힙니다.
50
+ *
51
+ * @param props - Radix UI Accordion.Content props
52
+ * @param props.children - 콘텐츠 영역에 표시될 내용
53
+ * @param props.className - 내부 콘텐츠 래퍼에 적용될 추가 CSS 클래스
54
+ * @param props.forceMount - 닫힌 상태에서도 DOM에 마운트 유지 (애니메이션용)
55
+ */
6
56
  declare function AccordionContent({ className, children, ...props }: React.ComponentProps<typeof AccordionPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
7
57
  export { Accordion, AccordionItem, AccordionTrigger, AccordionContent };
@@ -1,9 +1,40 @@
1
1
  import { VariantProps } from 'class-variance-authority';
2
2
  import * as React from "react";
3
+ /**
4
+ * Alert 컴포넌트의 스타일 변형을 정의합니다.
5
+ */
3
6
  declare const alertVariants: (props?: ({
4
7
  variant?: "default" | "destructive" | null | undefined;
5
8
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
9
+ /**
10
+ * 사용자에게 중요한 정보를 전달하는 알림 컴포넌트입니다.
11
+ * 아이콘, 제목, 설명을 포함할 수 있습니다.
12
+ *
13
+ * @example
14
+ * ```tsx
15
+ * <Alert variant="default">
16
+ * <InfoIcon />
17
+ * <AlertTitle>알림</AlertTitle>
18
+ * <AlertDescription>중요한 정보입니다.</AlertDescription>
19
+ * </Alert>
20
+ * ```
21
+ *
22
+ * @param props.variant - 'default' | 'destructive' 스타일 변형
23
+ * @param props.className - 추가 CSS 클래스
24
+ */
6
25
  declare function Alert({ className, variant, ...props }: React.ComponentProps<"div"> & VariantProps<typeof alertVariants>): import("react/jsx-runtime").JSX.Element;
26
+ /**
27
+ * Alert의 제목을 표시하는 컴포넌트입니다.
28
+ *
29
+ * @param props.className - 추가 CSS 클래스
30
+ * @param props.children - 제목 텍스트
31
+ */
7
32
  declare function AlertTitle({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
33
+ /**
34
+ * Alert의 상세 설명을 표시하는 컴포넌트입니다.
35
+ *
36
+ * @param props.className - 추가 CSS 클래스
37
+ * @param props.children - 설명 내용
38
+ */
8
39
  declare function AlertDescription({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
9
40
  export { Alert, AlertTitle, AlertDescription };
@@ -1,14 +1,49 @@
1
1
  import * as React from "react";
2
2
  import * as AlertDialogPrimitive from "@radix-ui/react-alert-dialog";
3
+ /**
4
+ * 사용자의 확인이 필요한 중요한 작업에 대한 모달 다이얼로그입니다.
5
+ * 일반 Dialog와 달리 배경 클릭이나 Escape로 닫히지 않습니다.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * <AlertDialog>
10
+ * <AlertDialogTrigger asChild>
11
+ * <Button>삭제</Button>
12
+ * </AlertDialogTrigger>
13
+ * <AlertDialogContent>
14
+ * <AlertDialogHeader>
15
+ * <AlertDialogTitle>정말 삭제하시겠습니까?</AlertDialogTitle>
16
+ * <AlertDialogDescription>이 작업은 취소할 수 없습니다.</AlertDialogDescription>
17
+ * </AlertDialogHeader>
18
+ * <AlertDialogFooter>
19
+ * <AlertDialogCancel>취소</AlertDialogCancel>
20
+ * <AlertDialogAction>삭제</AlertDialogAction>
21
+ * </AlertDialogFooter>
22
+ * </AlertDialogContent>
23
+ * </AlertDialog>
24
+ * ```
25
+ */
3
26
  declare function AlertDialog({ ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
27
  declare function AlertDialogTrigger({ ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
28
  declare function AlertDialogPortal({ ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
6
29
  declare function AlertDialogOverlay({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Overlay>): import("react/jsx-runtime").JSX.Element;
30
+ /**
31
+ * AlertDialog의 메인 콘텐츠 영역입니다.
32
+ * 자동으로 Overlay와 Portal을 포함합니다.
33
+ */
7
34
  declare function AlertDialogContent({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
8
35
  declare function AlertDialogHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
9
36
  declare function AlertDialogFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
10
37
  declare function AlertDialogTitle({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
11
38
  declare function AlertDialogDescription({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
39
+ /**
40
+ * AlertDialog의 확인 버튼입니다.
41
+ * 클릭 시 다이얼로그가 닫히고 지정된 액션이 실행됩니다.
42
+ */
12
43
  declare function AlertDialogAction({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Action>): import("react/jsx-runtime").JSX.Element;
44
+ /**
45
+ * AlertDialog의 취소 버튼입니다.
46
+ * 클릭 시 다이얼로그가 닫히고 아무 작업도 수행하지 않습니다.
47
+ */
13
48
  declare function AlertDialogCancel({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Cancel>): import("react/jsx-runtime").JSX.Element;
14
49
  export { AlertDialog, AlertDialogPortal, AlertDialogOverlay, AlertDialogTrigger, AlertDialogContent, AlertDialogHeader, AlertDialogFooter, AlertDialogTitle, AlertDialogDescription, AlertDialogAction, AlertDialogCancel, };
@@ -1,3 +1,15 @@
1
1
  import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio";
2
+ /**
3
+ * 지정된 비율로 콘텐츠 영역을 유지하는 컴포넌트입니다.
4
+ *
5
+ * @param props.ratio - 가로:세로 비율 (예: 16/9, 4/3, 1)
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * <AspectRatio ratio={16/9}>
10
+ * <img src="image.jpg" className="object-cover" />
11
+ * </AspectRatio>
12
+ * ```
13
+ */
2
14
  declare function AspectRatio({ ...props }: React.ComponentProps<typeof AspectRatioPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
3
15
  export { AspectRatio };
@@ -1,5 +1,16 @@
1
1
  import * as React from "react";
2
2
  import * as AvatarPrimitive from "@radix-ui/react-avatar";
3
+ /**
4
+ * 사용자의 프로필 이미지나 이니셜을 표시하는 아바타 컴포넌트입니다.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <Avatar>
9
+ * <AvatarImage src="/profile.jpg" alt="사용자" />
10
+ * <AvatarFallback>AB</AvatarFallback>
11
+ * </Avatar>
12
+ * ```
13
+ */
3
14
  declare function Avatar({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
15
  declare function AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>): import("react/jsx-runtime").JSX.Element;
5
16
  declare function AvatarFallback({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Fallback>): import("react/jsx-runtime").JSX.Element;
@@ -3,6 +3,18 @@ import * as React from "react";
3
3
  declare const badgeVariants: (props?: ({
4
4
  variant?: "default" | "destructive" | "outline" | "secondary" | null | undefined;
5
5
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
6
+ /**
7
+ * 상태, 카테고리, 카운트 등을 표시하는 뱃지 컴포넌트입니다.
8
+ *
9
+ * @example
10
+ * ```tsx
11
+ * <Badge variant="default">New</Badge>
12
+ * <Badge variant="destructive">Error</Badge>
13
+ * ```
14
+ *
15
+ * @param props.variant - 'default' | 'secondary' | 'destructive' | 'outline'
16
+ * @param props.asChild - true면 자식 요소로 렌더링 (링크 등)
17
+ */
6
18
  declare function Badge({ className, variant, asChild, ...props }: React.ComponentProps<"span"> & VariantProps<typeof badgeVariants> & {
7
19
  asChild?: boolean;
8
20
  }): import("react/jsx-runtime").JSX.Element;
@@ -1,11 +1,34 @@
1
1
  import * as React from "react";
2
+ /**
3
+ * 현재 페이지의 경로를 계층적으로 보여주는 브레드크럼 컴포넌트입니다.
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * <Breadcrumb>
8
+ * <BreadcrumbList>
9
+ * <BreadcrumbItem>
10
+ * <BreadcrumbLink href="/">홈</BreadcrumbLink>
11
+ * </BreadcrumbItem>
12
+ * <BreadcrumbSeparator />
13
+ * <BreadcrumbItem>
14
+ * <BreadcrumbPage>현재 페이지</BreadcrumbPage>
15
+ * </BreadcrumbItem>
16
+ * </BreadcrumbList>
17
+ * </Breadcrumb>
18
+ * ```
19
+ */
2
20
  declare function Breadcrumb({ ...props }: React.ComponentProps<"nav">): import("react/jsx-runtime").JSX.Element;
21
+ /** 브레드크럼 아이템들을 감싸는 리스트입니다. */
3
22
  declare function BreadcrumbList({ className, ...props }: React.ComponentProps<"ol">): import("react/jsx-runtime").JSX.Element;
23
+ /** 브레드크럼 개별 아이템입니다. */
4
24
  declare function BreadcrumbItem({ className, ...props }: React.ComponentProps<"li">): import("react/jsx-runtime").JSX.Element;
25
+ /** 클릭 가능한 브레드크럼 링크입니다. */
5
26
  declare function BreadcrumbLink({ asChild, className, ...props }: React.ComponentProps<"a"> & {
6
27
  asChild?: boolean;
7
28
  }): import("react/jsx-runtime").JSX.Element;
29
+ /** 현재 페이지를 나타내는 비활성 텍스트입니다. */
8
30
  declare function BreadcrumbPage({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
31
+ /** 아이템 사이의 구분자입니다. */
9
32
  declare function BreadcrumbSeparator({ children, className, ...props }: React.ComponentProps<"li">): import("react/jsx-runtime").JSX.Element;
10
33
  declare function BreadcrumbEllipsis({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
11
34
  export { Breadcrumb, BreadcrumbList, BreadcrumbItem, BreadcrumbLink, BreadcrumbPage, BreadcrumbSeparator, BreadcrumbEllipsis, };
@@ -4,6 +4,21 @@ declare const buttonVariants: (props?: ({
4
4
  variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
5
5
  size?: "default" | "sm" | "lg" | "icon" | "icon-sm" | "icon-lg" | null | undefined;
6
6
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
7
+ /**
8
+ * 클릭 가능한 버튼 컴포넌트입니다.
9
+ * 다양한 variant와 size를 지원합니다.
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <Button variant="default">기본 버튼</Button>
14
+ * <Button variant="destructive">삭제</Button>
15
+ * <Button variant="outline" size="sm">작은 버튼</Button>
16
+ * ```
17
+ *
18
+ * @param props.variant - 버튼 스타일: 'default' | 'destructive' | 'outline' | 'secondary' | 'ghost' | 'link'
19
+ * @param props.size - 버튼 크기: 'default' | 'sm' | 'lg' | 'icon' | 'icon-sm' | 'icon-lg'
20
+ * @param props.asChild - true면 자식 요소로 렌더링 (링크 등)
21
+ */
7
22
  declare function Button({ className, variant, size, asChild, ...props }: React.ComponentProps<"button"> & VariantProps<typeof buttonVariants> & {
8
23
  asChild?: boolean;
9
24
  }): import("react/jsx-runtime").JSX.Element;
@@ -3,9 +3,25 @@ import { Separator } from '../separator';
3
3
  declare const buttonGroupVariants: (props?: ({
4
4
  orientation?: "horizontal" | "vertical" | null | undefined;
5
5
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
6
+ /**
7
+ * 관련 버튼들을 그룹으로 묶어주는 컴포넌트입니다.
8
+ *
9
+ * @param props.orientation - 버튼 그룹 방향 ('horizontal' | 'vertical')
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <ButtonGroup>
14
+ * <Button>One</Button>
15
+ * <Button>Two</Button>
16
+ * <Button>Three</Button>
17
+ * </ButtonGroup>
18
+ * ```
19
+ */
6
20
  declare function ButtonGroup({ className, orientation, ...props }: React.ComponentProps<"div"> & VariantProps<typeof buttonGroupVariants>): import("react/jsx-runtime").JSX.Element;
21
+ /** 버튼 그룹 내 텍스트 레이블 컴포넌트입니다. */
7
22
  declare function ButtonGroupText({ className, asChild, ...props }: React.ComponentProps<"div"> & {
8
23
  asChild?: boolean;
9
24
  }): import("react/jsx-runtime").JSX.Element;
25
+ /** 버튼 그룹 내 구분선 컴포넌트입니다. */
10
26
  declare function ButtonGroupSeparator({ className, orientation, ...props }: React.ComponentProps<typeof Separator>): import("react/jsx-runtime").JSX.Element;
11
27
  export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants, };
@@ -1,6 +1,21 @@
1
1
  import { DayPicker, DayButton } from 'react-day-picker';
2
2
  import { Button } from '../button';
3
3
  import * as React from "react";
4
+ /**
5
+ * 날짜 선택을 위한 캘린더 컴포넌트입니다.
6
+ *
7
+ * @param props.mode - 선택 모드 ('single' | 'range' | 'multiple')
8
+ * @param props.showOutsideDays - 현재 월 외의 날짜 표시 여부
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * <Calendar
13
+ * mode="single"
14
+ * selected={date}
15
+ * onSelect={setDate}
16
+ * />
17
+ * ```
18
+ */
4
19
  declare function Calendar({ className, classNames, showOutsideDays, captionLayout, buttonVariant, formatters, components, ...props }: React.ComponentProps<typeof DayPicker> & {
5
20
  buttonVariant?: React.ComponentProps<typeof Button>["variant"];
6
21
  }): import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,19 @@
1
1
  import * as React from "react";
2
+ /**
3
+ * 콘텐츠를 그룹화하여 표시하는 카드 컴포넌트입니다.
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * <Card>
8
+ * <CardHeader>
9
+ * <CardTitle>제목</CardTitle>
10
+ * <CardDescription>설명</CardDescription>
11
+ * </CardHeader>
12
+ * <CardContent>내용</CardContent>
13
+ * <CardFooter>푸터</CardFooter>
14
+ * </Card>
15
+ * ```
16
+ */
2
17
  declare function Card({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
3
18
  declare function CardHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
4
19
  declare function CardTitle({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
@@ -11,9 +11,33 @@ type CarouselProps = {
11
11
  orientation?: "horizontal" | "vertical";
12
12
  setApi?: (api: CarouselApi) => void;
13
13
  };
14
+ /**
15
+ * 슬라이드 형태로 콘텐츠를 표시하는 캐러셀 컴포넌트입니다.
16
+ *
17
+ * @param props.orientation - 캐러셀 방향 ('horizontal' | 'vertical')
18
+ * @param props.opts - Embla Carousel 옵션
19
+ * @param props.plugins - Embla Carousel 플러그인
20
+ * @param props.setApi - API 인스턴스 설정 콜백
21
+ *
22
+ * @example
23
+ * ```tsx
24
+ * <Carousel>
25
+ * <CarouselContent>
26
+ * <CarouselItem>슬라이드 1</CarouselItem>
27
+ * <CarouselItem>슬라이드 2</CarouselItem>
28
+ * </CarouselContent>
29
+ * <CarouselPrevious />
30
+ * <CarouselNext />
31
+ * </Carousel>
32
+ * ```
33
+ */
14
34
  declare function Carousel({ orientation, opts, setApi, plugins, className, children, ...props }: React.ComponentProps<"div"> & CarouselProps): import("react/jsx-runtime").JSX.Element;
35
+ /** 캐러셀 콘텐츠 컨테이너입니다. */
15
36
  declare function CarouselContent({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
37
+ /** 개별 캐러셀 슬라이드 아이템입니다. */
16
38
  declare function CarouselItem({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
39
+ /** 이전 슬라이드로 이동하는 버튼입니다. */
17
40
  declare function CarouselPrevious({ className, variant, size, ...props }: React.ComponentProps<typeof Button>): import("react/jsx-runtime").JSX.Element;
41
+ /** 다음 슬라이드로 이동하는 버튼입니다. */
18
42
  declare function CarouselNext({ className, variant, size, ...props }: React.ComponentProps<typeof Button>): import("react/jsx-runtime").JSX.Element;
19
43
  export { type CarouselApi, Carousel, CarouselContent, CarouselItem, CarouselPrevious, CarouselNext, };
@@ -16,6 +16,24 @@ export type ChartConfig = {
16
16
  theme: Record<keyof typeof THEMES, string>;
17
17
  });
18
18
  };
19
+ /**
20
+ * Recharts 기반 차트를 위한 컨테이너 컴포넌트입니다.
21
+ *
22
+ * @param props.config - 차트 데이터 시리즈 설정 (레이블, 색상, 아이콘)
23
+ *
24
+ * @example
25
+ * ```tsx
26
+ * const chartConfig = {
27
+ * value: { label: "값", color: "hsl(var(--chart-1))" }
28
+ * };
29
+ *
30
+ * <ChartContainer config={chartConfig}>
31
+ * <BarChart data={data}>
32
+ * <Bar dataKey="value" />
33
+ * </BarChart>
34
+ * </ChartContainer>
35
+ * ```
36
+ */
19
37
  declare function ChartContainer({ id, className, children, config, ...props }: React.ComponentProps<"div"> & {
20
38
  config: ChartConfig;
21
39
  children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>["children"];
@@ -25,6 +43,7 @@ declare const ChartStyle: ({ id, config }: {
25
43
  config: ChartConfig;
26
44
  }) => import("react/jsx-runtime").JSX.Element | null;
27
45
  declare const ChartTooltip: typeof RechartsPrimitive.Tooltip;
46
+ /** 차트 툴팁 콘텐츠 컴포넌트입니다. */
28
47
  declare function ChartTooltipContent({ active, payload, className, indicator, hideLabel, hideIndicator, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }: React.ComponentProps<typeof RechartsPrimitive.Tooltip> & React.ComponentProps<"div"> & {
29
48
  hideLabel?: boolean;
30
49
  hideIndicator?: boolean;
@@ -33,6 +52,7 @@ declare function ChartTooltipContent({ active, payload, className, indicator, hi
33
52
  labelKey?: string;
34
53
  }): import("react/jsx-runtime").JSX.Element | null;
35
54
  declare const ChartLegend: typeof RechartsPrimitive.Legend;
55
+ /** 차트 범례 콘텐츠 컴포넌트입니다. */
36
56
  declare function ChartLegendContent({ className, hideIcon, payload, verticalAlign, nameKey, }: React.ComponentProps<"div"> & Pick<RechartsPrimitive.LegendProps, "payload" | "verticalAlign"> & {
37
57
  hideIcon?: boolean;
38
58
  nameKey?: string;
@@ -1,4 +1,13 @@
1
1
  import * as React from "react";
2
2
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
3
+ /**
4
+ * 선택/해제가 가능한 체크박스 컴포넌트입니다.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <Checkbox id="terms" />
9
+ * <label htmlFor="terms">이용약관에 동의합니다</label>
10
+ * ```
11
+ */
3
12
  declare function Checkbox({ className, ...props }: React.ComponentProps<typeof CheckboxPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
13
  export { Checkbox };
@@ -1,5 +1,18 @@
1
1
  import * as CollapsiblePrimitive from "@radix-ui/react-collapsible";
2
+ /**
3
+ * 콘텐츠를 접고 펼 수 있는 컬랩서블 컴포넌트입니다.
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * <Collapsible>
8
+ * <CollapsibleTrigger>토글</CollapsibleTrigger>
9
+ * <CollapsibleContent>숨겨진 콘텐츠</CollapsibleContent>
10
+ * </Collapsible>
11
+ * ```
12
+ */
2
13
  declare function Collapsible({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.Root>): import("react/jsx-runtime").JSX.Element;
14
+ /** 컬랩서블을 열고 닫는 트리거입니다. */
3
15
  declare function CollapsibleTrigger({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>): import("react/jsx-runtime").JSX.Element;
16
+ /** 접혔다 펼쳐지는 콘텐츠 영역입니다. */
4
17
  declare function CollapsibleContent({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>): import("react/jsx-runtime").JSX.Element;
5
18
  export { Collapsible, CollapsibleTrigger, CollapsibleContent };
@@ -1,18 +1,36 @@
1
1
  import { Command as CommandPrimitive } from 'cmdk';
2
2
  import { Dialog } from '../dialog';
3
3
  import * as React from "react";
4
+ /**
5
+ * 키보드 기반의 명령 팔레트/검색 컴포넌트입니다.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * <Command>
10
+ * <CommandInput placeholder="검색..." />
11
+ * <CommandList>
12
+ * <CommandGroup heading="제안">
13
+ * <CommandItem>항목 1</CommandItem>
14
+ * </CommandGroup>
15
+ * </CommandList>
16
+ * </Command>
17
+ * ```
18
+ */
4
19
  declare function Command({ className, ...props }: React.ComponentProps<typeof CommandPrimitive>): import("react/jsx-runtime").JSX.Element;
20
+ /** 다이얼로그 형태의 커맨드 컴포넌트입니다. */
5
21
  declare function CommandDialog({ title, description, children, className, showCloseButton, ...props }: React.ComponentProps<typeof Dialog> & {
6
22
  title?: string;
7
23
  description?: string;
8
24
  className?: string;
9
25
  showCloseButton?: boolean;
10
26
  }): import("react/jsx-runtime").JSX.Element;
27
+ /** 커맨드 검색 입력창입니다. */
11
28
  declare function CommandInput({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Input>): import("react/jsx-runtime").JSX.Element;
12
29
  declare function CommandList({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.List>): import("react/jsx-runtime").JSX.Element;
13
30
  declare function CommandEmpty({ ...props }: React.ComponentProps<typeof CommandPrimitive.Empty>): import("react/jsx-runtime").JSX.Element;
14
31
  declare function CommandGroup({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
15
32
  declare function CommandSeparator({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
33
+ /** 선택 가능한 커맨드 아이템입니다. */
16
34
  declare function CommandItem({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Item>): import("react/jsx-runtime").JSX.Element;
17
35
  declare function CommandShortcut({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
18
36
  export { Command, CommandDialog, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, CommandShortcut, CommandSeparator, };
@@ -1,5 +1,19 @@
1
1
  import * as React from "react";
2
2
  import * as ContextMenuPrimitive from "@radix-ui/react-context-menu";
3
+ /**
4
+ * 우클릭 시 표시되는 컨텍스트 메뉴 컴포넌트입니다.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <ContextMenu>
9
+ * <ContextMenuTrigger>우클릭하세요</ContextMenuTrigger>
10
+ * <ContextMenuContent>
11
+ * <ContextMenuItem>복사</ContextMenuItem>
12
+ * <ContextMenuItem>붙여넣기</ContextMenuItem>
13
+ * </ContextMenuContent>
14
+ * </ContextMenu>
15
+ * ```
16
+ */
3
17
  declare function ContextMenu({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
18
  declare function ContextMenuTrigger({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
19
  declare function ContextMenuGroup({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
@@ -11,6 +25,10 @@ declare function ContextMenuSubTrigger({ className, inset, children, ...props }:
11
25
  }): import("react/jsx-runtime").JSX.Element;
12
26
  declare function ContextMenuSubContent({ className, ...props }: React.ComponentProps<typeof ContextMenuPrimitive.SubContent>): import("react/jsx-runtime").JSX.Element;
13
27
  declare function ContextMenuContent({ className, ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
28
+ /**
29
+ * 컨텍스트 메뉴 아이템입니다.
30
+ * @param props.variant - 스타일 변형 ('default' | 'destructive')
31
+ */
14
32
  declare function ContextMenuItem({ className, inset, variant, ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Item> & {
15
33
  inset?: boolean;
16
34
  variant?: "default" | "destructive";
@@ -1,15 +1,40 @@
1
1
  import * as React from "react";
2
2
  import * as DialogPrimitive from "@radix-ui/react-dialog";
3
+ /**
4
+ * 사용자의 주의를 끌거나 중요한 정보를 표시하는 모달 다이얼로그 컴포넌트입니다.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <Dialog>
9
+ * <DialogTrigger>열기</DialogTrigger>
10
+ * <DialogContent>
11
+ * <DialogHeader>
12
+ * <DialogTitle>제목</DialogTitle>
13
+ * <DialogDescription>설명</DialogDescription>
14
+ * </DialogHeader>
15
+ * </DialogContent>
16
+ * </Dialog>
17
+ * ```
18
+ */
3
19
  declare function Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
20
+ /** 다이얼로그를 열기 위한 트리거 요소입니다. */
4
21
  declare function DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
22
  declare function DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
6
23
  declare function DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
7
24
  declare function DialogOverlay({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Overlay>): import("react/jsx-runtime").JSX.Element;
25
+ /**
26
+ * 다이얼로그의 메인 콘텐츠 영역입니다.
27
+ * @param props.showCloseButton - 닫기 버튼 표시 여부 (기본값: true)
28
+ */
8
29
  declare function DialogContent({ className, children, showCloseButton, ...props }: React.ComponentProps<typeof DialogPrimitive.Content> & {
9
30
  showCloseButton?: boolean;
10
31
  }): import("react/jsx-runtime").JSX.Element;
32
+ /** 다이얼로그 헤더 영역으로, 제목과 설명을 포함합니다. */
11
33
  declare function DialogHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
34
+ /** 다이얼로그 푸터 영역으로, 액션 버튼들을 포함합니다. */
12
35
  declare function DialogFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
36
+ /** 다이얼로그 제목 컴포넌트입니다. */
13
37
  declare function DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
38
+ /** 다이얼로그 설명 컴포넌트입니다. */
14
39
  declare function DialogDescription({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
15
40
  export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, };
@@ -1,13 +1,31 @@
1
1
  import { Drawer as DrawerPrimitive } from 'vaul';
2
2
  import * as React from "react";
3
+ /**
4
+ * 화면 하단에서 슬라이드업되는 모바일 친화적 드로어 컴포넌트입니다.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <Drawer>
9
+ * <DrawerTrigger>열기</DrawerTrigger>
10
+ * <DrawerContent>
11
+ * <DrawerHeader>
12
+ * <DrawerTitle>제목</DrawerTitle>
13
+ * </DrawerHeader>
14
+ * </DrawerContent>
15
+ * </Drawer>
16
+ * ```
17
+ */
3
18
  declare function Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
19
  declare function DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
20
  declare function DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
6
21
  declare function DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
7
22
  declare function DrawerOverlay({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Overlay>): import("react/jsx-runtime").JSX.Element;
8
23
  declare function DrawerContent({ className, children, ...props }: React.ComponentProps<typeof DrawerPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
24
+ /** 드로어 헤더 영역입니다. */
9
25
  declare function DrawerHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
26
+ /** 드로어 푸터 영역입니다. */
10
27
  declare function DrawerFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
28
+ /** 드로어 제목 컴포넌트입니다. */
11
29
  declare function DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
12
30
  declare function DrawerDescription({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
13
31
  export { Drawer, DrawerPortal, DrawerOverlay, DrawerTrigger, DrawerClose, DrawerContent, DrawerHeader, DrawerFooter, DrawerTitle, DrawerDescription, };
@@ -1,16 +1,37 @@
1
1
  import * as React from "react";
2
2
  import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ /**
4
+ * 트리거를 클릭하면 표시되는 드롭다운 메뉴 컴포넌트입니다.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <DropdownMenu>
9
+ * <DropdownMenuTrigger>메뉴</DropdownMenuTrigger>
10
+ * <DropdownMenuContent>
11
+ * <DropdownMenuItem>항목 1</DropdownMenuItem>
12
+ * <DropdownMenuItem>항목 2</DropdownMenuItem>
13
+ * </DropdownMenuContent>
14
+ * </DropdownMenu>
15
+ * ```
16
+ */
3
17
  declare function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
18
  declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
5
19
  declare function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
6
20
  declare function DropdownMenuContent({ className, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
7
21
  declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
22
+ /**
23
+ * 드롭다운 메뉴 아이템입니다.
24
+ * @param props.inset - 왼쪽 여백 추가 여부
25
+ * @param props.variant - 스타일 변형 ('default' | 'destructive')
26
+ */
8
27
  declare function DropdownMenuItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
9
28
  inset?: boolean;
10
29
  variant?: "default" | "destructive";
11
30
  }): import("react/jsx-runtime").JSX.Element;
31
+ /** 체크박스 형태의 메뉴 아이템입니다. */
12
32
  declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): import("react/jsx-runtime").JSX.Element;
13
33
  declare function DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): import("react/jsx-runtime").JSX.Element;
34
+ /** 라디오 버튼 형태의 메뉴 아이템입니다. */
14
35
  declare function DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): import("react/jsx-runtime").JSX.Element;
15
36
  declare function DropdownMenuLabel({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
16
37
  inset?: boolean;