@exem-ui/react 0.3.4-next.20260902003121 → 0.3.4-next.20260908085941

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.
@@ -390,4 +390,4 @@ declare namespace ConditionalTooltip {
390
390
  var displayName: string;
391
391
  }
392
392
 
393
- export { type TooltipDescriptionProps as A, type TooltipProviderProps as B, type ColorPaletteColor as C, type TooltipRootProps as D, type TooltipTitleProps as E, type TooltipTriggerProps as F, type ColorPaletteProps as G, type ColorPaletteSwatchProps as H, type Icon as I, ColorPalette as J, ColorPaletteColors as K, DEFAULT_COLOR as L, getColorPaletteColor as M, isInPalette as N, type ConditionalTooltipProps as O, type FlatTooltipProps as P, type TooltipConfig as Q, FlatTooltip as R, type Size as S, Tabs as T, type Variant as V, ConditionalTooltip as a, type TabsComponent as b, type TabsContentProps as c, type TabsListProps as d, type TabsRootProps as e, type TabsTriggerProps as f, Select as g, type SelectBoxProps as h, type SelectComponent as i, type SelectDescriptionProps as j, type SelectEmptyProps as k, type SelectGroupProps as l, type SelectItemProps as m, type SelectLabelProps as n, type SelectListProps as o, type SelectRootProps as p, type SelectTriggerProps as q, Segment as r, type SegmentComponent as s, type SegmentContentProps as t, type SegmentItemProps as u, type SegmentListProps as v, type SegmentRootProps as w, Tooltip as x, type TooltipComponent as y, type TooltipContentProps as z };
393
+ export { type TooltipDescriptionProps as A, type TooltipProviderProps as B, type ColorPaletteColor as C, type TooltipRootProps as D, type TooltipTitleProps as E, type TooltipTriggerProps as F, type ColorPaletteProps as G, type ColorPaletteSwatchProps as H, type Icon as I, ColorPalette as J, ColorPaletteColors as K, DEFAULT_COLOR as L, getColorPaletteColor as M, isInPalette as N, type FlatTooltipProps as O, type TooltipConfig as P, ConditionalTooltip as Q, FlatTooltip as R, type Size as S, Tabs as T, type Variant as V, type ConditionalTooltipProps as a, type TabsComponent as b, type TabsContentProps as c, type TabsListProps as d, type TabsRootProps as e, type TabsTriggerProps as f, Select as g, type SelectBoxProps as h, type SelectComponent as i, type SelectDescriptionProps as j, type SelectEmptyProps as k, type SelectGroupProps as l, type SelectItemProps as m, type SelectLabelProps as n, type SelectListProps as o, type SelectRootProps as p, type SelectTriggerProps as q, Segment as r, type SegmentComponent as s, type SegmentContentProps as t, type SegmentItemProps as u, type SegmentListProps as v, type SegmentRootProps as w, Tooltip as x, type TooltipComponent as y, type TooltipContentProps as z };
@@ -390,4 +390,4 @@ declare namespace ConditionalTooltip {
390
390
  var displayName: string;
391
391
  }
392
392
 
393
- export { type TooltipDescriptionProps as A, type TooltipProviderProps as B, type ColorPaletteColor as C, type TooltipRootProps as D, type TooltipTitleProps as E, type TooltipTriggerProps as F, type ColorPaletteProps as G, type ColorPaletteSwatchProps as H, type Icon as I, ColorPalette as J, ColorPaletteColors as K, DEFAULT_COLOR as L, getColorPaletteColor as M, isInPalette as N, type ConditionalTooltipProps as O, type FlatTooltipProps as P, type TooltipConfig as Q, FlatTooltip as R, type Size as S, Tabs as T, type Variant as V, ConditionalTooltip as a, type TabsComponent as b, type TabsContentProps as c, type TabsListProps as d, type TabsRootProps as e, type TabsTriggerProps as f, Select as g, type SelectBoxProps as h, type SelectComponent as i, type SelectDescriptionProps as j, type SelectEmptyProps as k, type SelectGroupProps as l, type SelectItemProps as m, type SelectLabelProps as n, type SelectListProps as o, type SelectRootProps as p, type SelectTriggerProps as q, Segment as r, type SegmentComponent as s, type SegmentContentProps as t, type SegmentItemProps as u, type SegmentListProps as v, type SegmentRootProps as w, Tooltip as x, type TooltipComponent as y, type TooltipContentProps as z };
393
+ export { type TooltipDescriptionProps as A, type TooltipProviderProps as B, type ColorPaletteColor as C, type TooltipRootProps as D, type TooltipTitleProps as E, type TooltipTriggerProps as F, type ColorPaletteProps as G, type ColorPaletteSwatchProps as H, type Icon as I, ColorPalette as J, ColorPaletteColors as K, DEFAULT_COLOR as L, getColorPaletteColor as M, isInPalette as N, type FlatTooltipProps as O, type TooltipConfig as P, ConditionalTooltip as Q, FlatTooltip as R, type Size as S, Tabs as T, type Variant as V, type ConditionalTooltipProps as a, type TabsComponent as b, type TabsContentProps as c, type TabsListProps as d, type TabsRootProps as e, type TabsTriggerProps as f, Select as g, type SelectBoxProps as h, type SelectComponent as i, type SelectDescriptionProps as j, type SelectEmptyProps as k, type SelectGroupProps as l, type SelectItemProps as m, type SelectLabelProps as n, type SelectListProps as o, type SelectRootProps as p, type SelectTriggerProps as q, Segment as r, type SegmentComponent as s, type SegmentContentProps as t, type SegmentItemProps as u, type SegmentListProps as v, type SegmentRootProps as w, Tooltip as x, type TooltipComponent as y, type TooltipContentProps as z };
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { C as ColorPaletteColor, G as ColorPaletteProps, I as Icon, S as Size, V as Variant, u as SegmentItemProps, w as SegmentRootProps, g as Select, f as TabsTriggerProps, e as TabsRootProps } from '../FlatTooltip-DqHMNx-V.mjs';
3
- export { a as ConditionalTooltip, O as ConditionalTooltipProps, R as FlatTooltip, P as FlatTooltipProps, Q as TooltipConfig } from '../FlatTooltip-DqHMNx-V.mjs';
2
+ import { C as ColorPaletteColor, G as ColorPaletteProps, I as Icon, S as Size, V as Variant, u as SegmentItemProps, w as SegmentRootProps, g as Select, f as TabsTriggerProps, e as TabsRootProps } from '../FlatTooltip-CQYzMWkr.mjs';
3
+ export { Q as ConditionalTooltip, a as ConditionalTooltipProps, R as FlatTooltip, O as FlatTooltipProps, P as TooltipConfig } from '../FlatTooltip-CQYzMWkr.mjs';
4
4
  import { ReactNode, ComponentProps } from 'react';
5
5
  import '@radix-ui/react-tabs';
6
6
  import '@radix-ui/react-radio-group';
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { C as ColorPaletteColor, G as ColorPaletteProps, I as Icon, S as Size, V as Variant, u as SegmentItemProps, w as SegmentRootProps, g as Select, f as TabsTriggerProps, e as TabsRootProps } from '../FlatTooltip-DqHMNx-V.js';
3
- export { a as ConditionalTooltip, O as ConditionalTooltipProps, R as FlatTooltip, P as FlatTooltipProps, Q as TooltipConfig } from '../FlatTooltip-DqHMNx-V.js';
2
+ import { C as ColorPaletteColor, G as ColorPaletteProps, I as Icon, S as Size, V as Variant, u as SegmentItemProps, w as SegmentRootProps, g as Select, f as TabsTriggerProps, e as TabsRootProps } from '../FlatTooltip-CQYzMWkr.js';
3
+ export { Q as ConditionalTooltip, a as ConditionalTooltipProps, R as FlatTooltip, O as FlatTooltipProps, P as TooltipConfig } from '../FlatTooltip-CQYzMWkr.js';
4
4
  import { ReactNode, ComponentProps } from 'react';
5
5
  import '@radix-ui/react-tabs';
6
6
  import '@radix-ui/react-radio-group';
package/dist/index.d.mts CHANGED
@@ -2,17 +2,19 @@ import * as class_variance_authority_types from 'class-variance-authority/types'
2
2
  import { VariantProps } from '@exem-ui/core/utils';
3
3
  import * as React$1 from 'react';
4
4
  import React__default, { ComponentProps } from 'react';
5
- import { C as ColorPaletteColor, a as ConditionalTooltip, S as Size$1, I as Icon, V as Variant } from './FlatTooltip-DqHMNx-V.mjs';
6
- export { J as ColorPalette, K as ColorPaletteColors, G as ColorPaletteProps, H as ColorPaletteSwatchProps, L as DEFAULT_COLOR, r as Segment, s as SegmentComponent, t as SegmentContentProps, u as SegmentItemProps, v as SegmentListProps, w as SegmentRootProps, g as Select, h as SelectBoxProps, i as SelectComponent, j as SelectDescriptionProps, k as SelectEmptyProps, l as SelectGroupProps, m as SelectItemProps, n as SelectLabelProps, o as SelectListProps, p as SelectRootProps, q as SelectTriggerProps, T as Tabs, b as TabsComponent, c as TabsContentProps, d as TabsListProps, e as TabsRootProps, f as TabsTriggerProps, x as Tooltip, y as TooltipComponent, z as TooltipContentProps, A as TooltipDescriptionProps, B as TooltipProviderProps, D as TooltipRootProps, E as TooltipTitleProps, F as TooltipTriggerProps, M as getColorPaletteColor, N as isInPalette } from './FlatTooltip-DqHMNx-V.mjs';
5
+ import { C as ColorPaletteColor, a as ConditionalTooltipProps, S as Size$1, I as Icon, V as Variant } from './FlatTooltip-CQYzMWkr.mjs';
6
+ export { J as ColorPalette, K as ColorPaletteColors, G as ColorPaletteProps, H as ColorPaletteSwatchProps, L as DEFAULT_COLOR, r as Segment, s as SegmentComponent, t as SegmentContentProps, u as SegmentItemProps, v as SegmentListProps, w as SegmentRootProps, g as Select, h as SelectBoxProps, i as SelectComponent, j as SelectDescriptionProps, k as SelectEmptyProps, l as SelectGroupProps, m as SelectItemProps, n as SelectLabelProps, o as SelectListProps, p as SelectRootProps, q as SelectTriggerProps, T as Tabs, b as TabsComponent, c as TabsContentProps, d as TabsListProps, e as TabsRootProps, f as TabsTriggerProps, x as Tooltip, y as TooltipComponent, z as TooltipContentProps, A as TooltipDescriptionProps, B as TooltipProviderProps, D as TooltipRootProps, E as TooltipTitleProps, F as TooltipTriggerProps, M as getColorPaletteColor, N as isInPalette } from './FlatTooltip-CQYzMWkr.mjs';
7
+ import * as react_jsx_runtime from 'react/jsx-runtime';
8
+ import { Button as Button$1 } from '@base-ui/react/button';
7
9
  import { I as IconBaseProps } from './types-xnO0gkCW.mjs';
8
10
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
9
11
  import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
10
12
  import * as SwitchPrimitives from '@radix-ui/react-switch';
11
- import * as react_jsx_runtime from 'react/jsx-runtime';
12
13
  import { DayPicker } from 'react-day-picker';
13
14
  import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
14
15
  import { Combobox as Combobox$1 } from '@base-ui/react/combobox';
15
16
  import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
17
+ import { Dialog } from '@base-ui/react/dialog';
16
18
  import * as DialogPrimitive from '@radix-ui/react-dialog';
17
19
  import { Toaster as Toaster$1, ExternalToast, toast as toast$1 } from 'sonner';
18
20
  import '@radix-ui/react-tabs';
@@ -225,18 +227,15 @@ type ButtonVariantProps = {
225
227
  color?: ButtonColor;
226
228
  background?: ButtonBackground;
227
229
  };
228
- type ButtonProps = React__default.ButtonHTMLAttributes<HTMLButtonElement> & Omit<VariantProps<typeof buttonVariants>, 'variant' | 'color' | 'background'> & ButtonVariantProps & {
230
+
231
+ type ButtonProps = Button$1.Props & ButtonVariantProps & {
229
232
  size?: ButtonSize;
230
233
  icon?: React__default.ReactElement<IconBaseProps>;
231
234
  };
232
- type ButtonComponent = React__default.ForwardRefExoticComponent<ButtonProps & React__default.RefAttributes<HTMLButtonElement>>;
233
- declare const buttonVariants: (props?: ({
234
- background?: "fill" | "none" | null | undefined;
235
- color?: "accent" | "primary" | "critical" | null | undefined;
236
- size?: "small" | "xsmall" | "medium" | "large" | "xlarge" | null | undefined;
237
- variant?: "solid" | "assistive" | "outlined" | "invisible" | null | undefined;
238
- } & class_variance_authority_types.ClassProp) | undefined) => string;
239
- declare const Button: ButtonComponent;
235
+ /** @see https://base-ui.com/react/components/button */
236
+ declare function Button({ className, variant, color, background, size, icon, children, ...props }: ButtonProps): react_jsx_runtime.JSX.Element;
237
+ /** @deprecated 컴포넌트 타입은 `typeof Button`으로 바로 얻을 수 있어 이 별칭은 불필요합니다. */
238
+ type ButtonComponent = typeof Button;
240
239
 
241
240
  /** 색 이름 → Tailwind 토큰 class 매핑(배경/텍스트). 컴포넌트 내부 및 소비자용. */
242
241
  declare const colorPaletteColorClasses: Record<ColorPaletteColor, {
@@ -244,16 +243,15 @@ declare const colorPaletteColorClasses: Record<ColorPaletteColor, {
244
243
  text: string;
245
244
  }>;
246
245
 
247
- type ButtonGroupSize = 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
248
246
  interface ButtonGroupItem {
249
247
  id: string;
250
248
  label?: string;
251
249
  icon?: React__default.ReactElement<IconBaseProps>;
252
250
  /** 툴팁 설정 (문자열 또는 FlatTooltip 설정 객체) */
253
- tooltip?: ComponentProps<typeof ConditionalTooltip>['tooltip'];
251
+ tooltip?: ConditionalTooltipProps['tooltip'];
254
252
  onClick?: () => void;
255
253
  }
256
- interface ButtonGroupProps {
254
+ type ButtonGroupProps = Pick<React__default.ComponentProps<'div'>, 'aria-label' | 'aria-labelledby' | 'className' | 'ref'> & {
257
255
  /** 버튼 그룹 스타일 변형 */
258
256
  variant?: 'contained' | 'outlined';
259
257
  /** 아이콘만 표시 */
@@ -261,23 +259,23 @@ interface ButtonGroupProps {
261
259
  /** 배경색 표시 여부 (뒷 레이어가 보이지 않아야 할 때) */
262
260
  hasBackground?: boolean;
263
261
  /** 버튼 크기 */
264
- size?: ButtonGroupSize;
262
+ size?: ButtonSize;
265
263
  /** 버튼 항목 목록 */
266
264
  items: ButtonGroupItem[];
267
- /** 커스텀 className */
268
- className?: string;
269
- }
270
- type ButtonGroupComponent = React__default.ForwardRefExoticComponent<ButtonGroupProps & React__default.RefAttributes<HTMLDivElement>>;
271
- declare const ButtonGroup: ButtonGroupComponent;
265
+ };
266
+ declare function ButtonGroup({ variant, iconOnly, hasBackground, size, items, className, ...props }: ButtonGroupProps): react_jsx_runtime.JSX.Element | null;
267
+ /** @deprecated 컴포넌트 타입은 `typeof ButtonGroup`으로 바로 얻을 수 있어 이 별칭은 불필요합니다. */
268
+ type ButtonGroupComponent = typeof ButtonGroup;
272
269
 
273
- type IconButtonProps = Omit<React__default.ButtonHTMLAttributes<HTMLButtonElement>, 'children'> & ButtonVariantProps & {
270
+ type IconButtonProps = ButtonProps & {
271
+ children?: never;
274
272
  icon: React__default.ReactElement<IconBaseProps>;
275
- size?: ButtonSize;
276
273
  /** 툴팁 설정 (문자열 또는 FlatTooltip 설정 객체) */
277
- tooltip?: ComponentProps<typeof ConditionalTooltip>['tooltip'];
274
+ tooltip?: ConditionalTooltipProps['tooltip'];
278
275
  };
279
- type IconButtonComponent = React__default.ForwardRefExoticComponent<IconButtonProps & React__default.RefAttributes<HTMLButtonElement>>;
280
- declare const IconButton: IconButtonComponent;
276
+ declare function IconButton({ className, tooltip, icon, size, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, ...props }: IconButtonProps): react_jsx_runtime.JSX.Element;
277
+ /** @deprecated 컴포넌트 타입은 `typeof IconButton`으로 바로 얻을 수 있어 이 별칭은 불필요합니다. */
278
+ type IconButtonComponent = typeof IconButton;
281
279
 
282
280
  type CheckboxSize = 'small' | 'medium' | 'large';
283
281
  type LabelPosition = 'left' | 'right';
@@ -640,19 +638,19 @@ declare function ScrollBar({ className, orientation, ...props }: React__default.
640
638
  declare function ScrollArea({ className, children, onScroll, scrollRef, hideVerticalScrollbar, hideHorizontalScrollbar, disableHorizontalScroll, ...props }: ScrollAreaProps): react_jsx_runtime.JSX.Element;
641
639
 
642
640
  type ModalSize = 'default' | 'fullsize';
643
- type ModalRootProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Root>;
644
- type ModalTriggerProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Trigger>;
645
- type ModalPortalProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Portal>;
646
- type ModalOverlayProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>;
647
- type ModalContentProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Content> & {
641
+ type ModalRootProps = Dialog.Root.Props;
642
+ type ModalTriggerProps = Dialog.Trigger.Props;
643
+ type ModalPortalProps = Dialog.Portal.Props;
644
+ type ModalOverlayProps = Dialog.Backdrop.Props;
645
+ type ModalContentProps = Dialog.Popup.Props & {
648
646
  /**
649
647
  * 모달 크기
650
648
  * @default 'default'
651
649
  */
652
650
  size?: ModalSize;
653
651
  };
654
- type ModalCloseProps = Omit<ButtonProps, 'color' | 'variant' | 'background'>;
655
- type ModalHeaderProps = React__default.HTMLAttributes<HTMLDivElement> & {
652
+ type ModalCloseProps = Omit<ButtonProps, 'color' | 'variant' | 'background'> & React__default.RefAttributes<HTMLButtonElement>;
653
+ type ModalHeaderProps = React__default.ComponentProps<'div'> & {
656
654
  /**
657
655
  * 하단 구분선 표시 여부
658
656
  * @default false
@@ -666,46 +664,141 @@ type ModalHeaderProps = React__default.HTMLAttributes<HTMLDivElement> & {
666
664
  */
667
665
  rightSlot?: React__default.ReactNode;
668
666
  };
669
- type ModalBodyProps = React__default.HTMLAttributes<HTMLDivElement>;
670
- type ModalFooterProps = React__default.HTMLAttributes<HTMLDivElement> & {
667
+ type ModalBodyProps = React__default.ComponentProps<'div'> & {
668
+ /**
669
+ * 본문을 ScrollArea로 감쌀지 여부. 끄면 스크롤 컨테이너 없이 패딩만 남아
670
+ * 높이를 소비자가 직접 계산할 수 있다. 넘치는 콘텐츠도 잘리지 않는다.
671
+ * @default true
672
+ */
673
+ scroll?: boolean;
674
+ /**
675
+ * 가로 스크롤 허용 여부. 기본은 꺼져 있어 넓은 콘텐츠도 Body 폭 안에 갇힌다.
676
+ * 넓은 테이블처럼 가로 스크롤이 실제로 필요한 경우에만 켠다.
677
+ * `scroll={false}`면 의미가 없다.
678
+ * @default false
679
+ */
680
+ horizontalScroll?: boolean;
681
+ };
682
+ type ModalFooterProps = React__default.ComponentProps<'div'> & {
671
683
  /**
672
684
  * 상단 구분선 표시 여부
673
685
  * @default true
674
686
  */
675
687
  line?: boolean;
676
688
  };
677
- type ModalFooterDescriptionProps = React__default.HTMLAttributes<HTMLDivElement> & {
689
+ type ModalFooterDescriptionProps = React__default.ComponentProps<'div'> & {
678
690
  /** 에러 상태 표시 여부 */
679
691
  error?: boolean;
680
692
  /** 설명 앞에 표시할 아이콘 요소 */
681
693
  icon?: React__default.ReactNode;
682
694
  };
683
- type ModalActionsProps = React__default.HTMLAttributes<HTMLDivElement>;
684
- type ModalActionProps = Omit<ButtonProps, 'color' | 'variant' | 'background'> & {
695
+ type ModalActionsProps = React__default.ComponentProps<'div'>;
696
+ type ModalActionProps = Omit<ButtonProps, 'color' | 'variant' | 'background'> & React__default.RefAttributes<HTMLButtonElement> & {
685
697
  /**
686
698
  * 버튼 색상
687
699
  * @default 'primary'
688
700
  */
689
701
  color?: 'primary' | 'critical';
690
702
  };
691
- type ModalTitleProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>;
692
- type ModalDescriptionProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>;
693
- type ModalComponent = typeof DialogPrimitive.Root & {
694
- Trigger: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalTriggerProps> & React__default.RefAttributes<React__default.ElementRef<typeof DialogPrimitive.Trigger>>>;
695
- Portal: React__default.FC<ModalPortalProps>;
696
- Close: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalCloseProps> & React__default.RefAttributes<HTMLButtonElement>>;
697
- Overlay: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalOverlayProps> & React__default.RefAttributes<React__default.ElementRef<typeof DialogPrimitive.Overlay>>>;
698
- Content: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalContentProps> & React__default.RefAttributes<React__default.ElementRef<typeof DialogPrimitive.Content>>>;
699
- Header: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalHeaderProps> & React__default.RefAttributes<HTMLDivElement>>;
700
- Body: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalBodyProps> & React__default.RefAttributes<HTMLDivElement>>;
701
- Footer: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalFooterProps> & React__default.RefAttributes<HTMLDivElement>>;
702
- FooterDescription: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalFooterDescriptionProps> & React__default.RefAttributes<HTMLDivElement>>;
703
- Actions: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalActionsProps> & React__default.RefAttributes<HTMLDivElement>>;
704
- Action: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalActionProps> & React__default.RefAttributes<HTMLButtonElement>>;
705
- Title: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalTitleProps> & React__default.RefAttributes<React__default.ElementRef<typeof DialogPrimitive.Title>>>;
706
- Description: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<ModalDescriptionProps> & React__default.RefAttributes<React__default.ElementRef<typeof DialogPrimitive.Description>>>;
703
+ type ModalTitleProps = Dialog.Title.Props;
704
+ type ModalDescriptionProps = Dialog.Description.Props;
705
+ /**
706
+ * 사용자 인터랙션이 필요한 오버레이 다이얼로그 컴포넌트입니다.
707
+ * Base UI Dialog 기반이며 Compound Component 패턴으로 하위 컴포넌트와 함께 사용합니다.
708
+ *
709
+ * @example
710
+ * ```tsx
711
+ * <Modal>
712
+ * <Modal.Trigger>열기</Modal.Trigger>
713
+ * <Modal.Content>
714
+ * <Modal.Header>
715
+ * <Modal.Title>제목</Modal.Title>
716
+ * </Modal.Header>
717
+ * <Modal.Body>내용</Modal.Body>
718
+ * <Modal.Footer>
719
+ * <Modal.Actions>
720
+ * <Modal.Close>닫기</Modal.Close>
721
+ * </Modal.Actions>
722
+ * </Modal.Footer>
723
+ * </Modal.Content>
724
+ * </Modal>
725
+ * ```
726
+ *
727
+ * @see {@link ModalContentProps} Content props 상세
728
+ * @see https://base-ui.com/react/components/dialog
729
+ */
730
+ declare function ModalRoot(props: ModalRootProps): react_jsx_runtime.JSX.Element;
731
+ declare namespace ModalRoot {
732
+ var displayName: string;
733
+ }
734
+ declare function ModalTrigger(props: ModalTriggerProps): react_jsx_runtime.JSX.Element;
735
+ declare namespace ModalTrigger {
736
+ var displayName: string;
737
+ }
738
+ declare function ModalPortal(props: ModalPortalProps): react_jsx_runtime.JSX.Element;
739
+ declare namespace ModalPortal {
740
+ var displayName: string;
741
+ }
742
+ declare function ModalOverlay({ className, ...props }: ModalOverlayProps): react_jsx_runtime.JSX.Element;
743
+ declare namespace ModalOverlay {
744
+ var displayName: string;
745
+ }
746
+ declare function ModalClose({ size, ...props }: ModalCloseProps): react_jsx_runtime.JSX.Element;
747
+ declare namespace ModalClose {
748
+ var displayName: string;
749
+ }
750
+ declare function ModalContent({ className, children, size, ...props }: ModalContentProps): react_jsx_runtime.JSX.Element;
751
+ declare namespace ModalContent {
752
+ var displayName: string;
753
+ }
754
+ declare function ModalHeader({ className, line, rightSlot, children, ...props }: ModalHeaderProps): react_jsx_runtime.JSX.Element;
755
+ declare namespace ModalHeader {
756
+ var displayName: string;
757
+ }
758
+ declare function ModalBody({ className, children, scroll, horizontalScroll, ...props }: ModalBodyProps): react_jsx_runtime.JSX.Element;
759
+ declare namespace ModalBody {
760
+ var displayName: string;
761
+ }
762
+ declare function ModalFooter({ className, line, ...props }: ModalFooterProps): react_jsx_runtime.JSX.Element;
763
+ declare namespace ModalFooter {
764
+ var displayName: string;
765
+ }
766
+ declare function ModalFooterDescription({ className, error, icon, children, ...props }: ModalFooterDescriptionProps): react_jsx_runtime.JSX.Element;
767
+ declare namespace ModalFooterDescription {
768
+ var displayName: string;
769
+ }
770
+ declare function ModalActions({ className, ...props }: ModalActionsProps): react_jsx_runtime.JSX.Element;
771
+ declare namespace ModalActions {
772
+ var displayName: string;
773
+ }
774
+ declare function ModalAction({ color, size, ...props }: ModalActionProps): react_jsx_runtime.JSX.Element;
775
+ declare namespace ModalAction {
776
+ var displayName: string;
777
+ }
778
+ declare function ModalTitle({ className, ...props }: ModalTitleProps): react_jsx_runtime.JSX.Element;
779
+ declare namespace ModalTitle {
780
+ var displayName: string;
781
+ }
782
+ declare function ModalDescription({ className, ...props }: ModalDescriptionProps): react_jsx_runtime.JSX.Element;
783
+ declare namespace ModalDescription {
784
+ var displayName: string;
785
+ }
786
+ declare const Modal: typeof ModalRoot & {
787
+ Trigger: typeof ModalTrigger;
788
+ Portal: typeof ModalPortal;
789
+ Close: typeof ModalClose;
790
+ Overlay: typeof ModalOverlay;
791
+ Content: typeof ModalContent;
792
+ Header: typeof ModalHeader;
793
+ Body: typeof ModalBody;
794
+ Footer: typeof ModalFooter;
795
+ FooterDescription: typeof ModalFooterDescription;
796
+ Actions: typeof ModalActions;
797
+ Action: typeof ModalAction;
798
+ Title: typeof ModalTitle;
799
+ Description: typeof ModalDescription;
707
800
  };
708
- declare const Modal: ModalComponent;
801
+ type ModalComponent = typeof Modal;
709
802
 
710
803
  type SheetResizeOptions = {
711
804
  /** @default true (객체를 전달한 경우) */
@@ -788,30 +881,83 @@ type SheetComponent = typeof DialogPrimitive.Root & {
788
881
  declare const Sheet: SheetComponent;
789
882
 
790
883
  type MessageBoxVariant = 'default' | 'critical';
791
- type MessageBoxRootProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Root>;
792
- type MessageBoxTriggerProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Trigger>;
793
- type MessageBoxContentProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Content> & {
884
+ type MessageBoxRootProps = Dialog.Root.Props;
885
+ type MessageBoxTriggerProps = Dialog.Trigger.Props;
886
+ type MessageBoxContentProps = Dialog.Popup.Props & {
794
887
  /**
795
888
  * 메시지 박스 variant
796
889
  * @default 'default'
797
890
  */
798
891
  variant?: MessageBoxVariant;
799
892
  };
800
- type MessageBoxTitleProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>;
801
- type MessageBoxDescriptionProps = React__default.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>;
802
- type MessageBoxActionsProps = React__default.HTMLAttributes<HTMLDivElement>;
803
- type MessageBoxCancelProps = Omit<ButtonProps, 'color' | 'variant' | 'background'>;
804
- type MessageBoxActionProps = Omit<ButtonProps, 'color' | 'variant' | 'background'>;
805
- type MessageBoxComponent = React__default.FC<MessageBoxRootProps> & {
806
- Trigger: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<MessageBoxTriggerProps> & React__default.RefAttributes<React__default.ElementRef<typeof DialogPrimitive.Trigger>>>;
807
- Content: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<MessageBoxContentProps> & React__default.RefAttributes<React__default.ElementRef<typeof DialogPrimitive.Content>>>;
808
- Title: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<MessageBoxTitleProps> & React__default.RefAttributes<React__default.ElementRef<typeof DialogPrimitive.Title>>>;
809
- Description: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<MessageBoxDescriptionProps> & React__default.RefAttributes<React__default.ElementRef<typeof DialogPrimitive.Description>>>;
810
- Actions: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<MessageBoxActionsProps> & React__default.RefAttributes<HTMLDivElement>>;
811
- Cancel: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<MessageBoxCancelProps> & React__default.RefAttributes<HTMLButtonElement>>;
812
- Action: React__default.ForwardRefExoticComponent<React__default.PropsWithoutRef<MessageBoxActionProps> & React__default.RefAttributes<HTMLButtonElement>>;
893
+ type MessageBoxTitleProps = Dialog.Title.Props;
894
+ type MessageBoxDescriptionProps = Dialog.Description.Props;
895
+ type MessageBoxActionsProps = React__default.ComponentProps<'div'>;
896
+ type MessageBoxCancelProps = Omit<ButtonProps, 'color' | 'variant' | 'background'> & React__default.RefAttributes<HTMLButtonElement>;
897
+ type MessageBoxActionProps = Omit<ButtonProps, 'color' | 'variant' | 'background'> & React__default.RefAttributes<HTMLButtonElement>;
898
+ /**
899
+ * 확인/경고 다이얼로그 컴포넌트입니다.
900
+ * Modal보다 단순한 구조로, title + description + 버튼(취소/확인)으로 구성됩니다.
901
+ *
902
+ * @example
903
+ * ```tsx
904
+ * <MessageBox>
905
+ * <MessageBox.Trigger>열기</MessageBox.Trigger>
906
+ * <MessageBox.Content variant="default">
907
+ * <MessageBox.Title>상태를 확인하시겠습니까?</MessageBox.Title>
908
+ * <MessageBox.Description>현재 상태에 대한 추가 확인이 필요합니다.</MessageBox.Description>
909
+ * <MessageBox.Actions>
910
+ * <MessageBox.Cancel>취소</MessageBox.Cancel>
911
+ * <MessageBox.Action>확인</MessageBox.Action>
912
+ * </MessageBox.Actions>
913
+ * </MessageBox.Content>
914
+ * </MessageBox>
915
+ * ```
916
+ *
917
+ * @see https://base-ui.com/react/components/dialog
918
+ */
919
+ declare function MessageBoxRoot(props: MessageBoxRootProps): react_jsx_runtime.JSX.Element;
920
+ declare namespace MessageBoxRoot {
921
+ var displayName: string;
922
+ }
923
+ declare function MessageBoxTrigger(props: MessageBoxTriggerProps): react_jsx_runtime.JSX.Element;
924
+ declare namespace MessageBoxTrigger {
925
+ var displayName: string;
926
+ }
927
+ declare function MessageBoxContent({ className, children, variant, ...props }: MessageBoxContentProps): react_jsx_runtime.JSX.Element;
928
+ declare namespace MessageBoxContent {
929
+ var displayName: string;
930
+ }
931
+ declare function MessageBoxTitle({ className, ...props }: MessageBoxTitleProps): react_jsx_runtime.JSX.Element;
932
+ declare namespace MessageBoxTitle {
933
+ var displayName: string;
934
+ }
935
+ declare function MessageBoxDescription({ className, ...props }: MessageBoxDescriptionProps): react_jsx_runtime.JSX.Element;
936
+ declare namespace MessageBoxDescription {
937
+ var displayName: string;
938
+ }
939
+ declare function MessageBoxActions({ className, ...props }: MessageBoxActionsProps): react_jsx_runtime.JSX.Element;
940
+ declare namespace MessageBoxActions {
941
+ var displayName: string;
942
+ }
943
+ declare function MessageBoxCancel({ size, ...props }: MessageBoxCancelProps): react_jsx_runtime.JSX.Element;
944
+ declare namespace MessageBoxCancel {
945
+ var displayName: string;
946
+ }
947
+ declare function MessageBoxAction({ size, ...props }: MessageBoxActionProps): react_jsx_runtime.JSX.Element;
948
+ declare namespace MessageBoxAction {
949
+ var displayName: string;
950
+ }
951
+ declare const MessageBox: typeof MessageBoxRoot & {
952
+ Trigger: typeof MessageBoxTrigger;
953
+ Content: typeof MessageBoxContent;
954
+ Title: typeof MessageBoxTitle;
955
+ Description: typeof MessageBoxDescription;
956
+ Actions: typeof MessageBoxActions;
957
+ Cancel: typeof MessageBoxCancel;
958
+ Action: typeof MessageBoxAction;
813
959
  };
814
- declare const MessageBox: MessageBoxComponent;
960
+ type MessageBoxComponent = typeof MessageBox;
815
961
 
816
962
  declare const containerVariants: (props?: ({
817
963
  position?: "fixed" | "absolute" | null | undefined;