@olundot/ui 0.19.0 → 0.20.0-next.0
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.
- package/CHANGELOG.md +42 -0
- package/dist/index.d.ts +269 -13
- package/dist/index.js +1940 -1322
- package/package.json +6 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,47 @@
|
|
|
1
1
|
# @olundot/ui
|
|
2
2
|
|
|
3
|
+
## 0.20.0-next.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 213086c: `ActionMenu`를 추가한다. 같은 `items`를 900px 이상에서는 DropdownMenu로, 미만에서는 메뉴 시트로 그린다. 모양은 열 때 한 번 정하고, 열린 동안 폭이 바뀌어도 그대로 둔다. 항목을 고르면 메뉴가 닫히고 포커스가 트리거로 돌아온 뒤 `onSelect`가 실행된다. `groups`를 주면 묶음 사이에 구분선을 넣는다. `open`과 `onOpenChange`로 제어할 수도 있다.
|
|
8
|
+
|
|
9
|
+
`ActionSheet`는 사용 중단 예정이다. `ActionMenu`로 옮긴다. props는 그대로이고 모양이 바뀐다.
|
|
10
|
+
|
|
11
|
+
- 위에 손잡이가 생기고, 끌어내리면 닫힌다.
|
|
12
|
+
- 머리의 X가 없어지고 스크린 리더용 닫기 버튼만 남는다. `closeLabel`은 그 버튼의 이름이다.
|
|
13
|
+
- 표면 톤이 0.20 오버레이와 같아진다(`--bg-raised`, `--border-subtle`, 윗선 하이라이트).
|
|
14
|
+
- 열면 첫 번째 활성 행에 포커스가 간다.
|
|
15
|
+
- `data-slot`이 `action-menu-sheet`, `action-menu-item`으로 바뀐다.
|
|
16
|
+
|
|
17
|
+
- 213086c: 확인 창 `AlertDialog`를 추가한다. 확인 모드는 `[취소][확인]`, 알림 모드는 버튼 하나이고, `tone`은 `neutral`과 `danger`다. 실행이 실패하면 `onError`로 받고 창은 열어 둔다. `ConfirmDialog`와 `InfoModal`은 `AlertDialog` 위의 래퍼가 되었고 사용 중단 예정이다. 동작이 바뀐다. InfoModal의 역할은 `alertdialog`가 되고, 바깥 클릭으로 닫히지 않으며, 900px 미만에서도 가운데에 고정된다. `mobilePresentation`과 InfoModal `width`는 무시한다.
|
|
18
|
+
- 213086c: 오버레이 scrim 프리셋을 고를 수 있다. 앱 기본값은 루트에 `<html data-scrim="blur|dim">`으로 정하고, 한 오버레이만 바꿀 때는 `scrim` prop을 쓴다. prop이 루트 값보다 우선한다. `DialogContent`, `DialogOverlay`, `SheetContent`, `ConfirmDialog`가 `scrim`을 받는다. `dim`은 블러 없는 딤이고, `blur`는 옅은 딤에 `--scrim-blur`를 더한다. 둘 다 없으면 지금처럼 `--scrim`이다. 프리셋 타입 `OverlayScrim`을 내보낸다.
|
|
19
|
+
- 213086c: `Dialog`에 `title`을 주면 구조형 다이얼로그가 된다. 머리의 X와 `footer`, 본문 스크롤, 푸터 위 선 1줄을 갖춘다. 바깥 클릭으로는 닫히지 않고 Escape와 X로 닫힌다. 폭은 `size` `sm`·`md`·`lg`(420·560·720)만 받고, `className`은 본문 배치에만 쓴다. 900px 미만에서는 손잡이가 있는 아래쪽 시트가 된다. `onSubmit`을 주면 폼 모드가 되어 `[취소][저장]` 푸터를 그리고, 제출 중에는 닫기를 막는다. `onError`를 주면 제출 실패를 넘겨받고 다시 던지지 않는다. `title` 없이 `DialogContent`로 조립한 다이얼로그는 모양과 동작이 그대로다.
|
|
20
|
+
|
|
21
|
+
`FormModal`은 사용 중단 예정이다(`Dialog`의 `onSubmit`을 쓴다). 이제 구조형 다이얼로그 폼 모드로 그린다. 그래서 900px 미만에서 아래쪽 시트가 되고, 표면 톤(`--bg-raised`, `--border-subtle`, `--shadow-16`)과 머리의 X를 갖는다. 바깥 클릭으로는 더 이상 닫히지 않는다. `wide`는 `size="lg"`로 옮겨지고, `mobilePresentation`은 무시된다.
|
|
22
|
+
|
|
23
|
+
옛 조각 `DialogContent`, `DialogHeader`, `DialogFooter`, `DialogTitle`, `DialogDescription`, `DialogEyebrow`, `DialogRawContent`와 `mobilePresentation`은 사용 중단 예정이다. 동작은 바뀌지 않는다.
|
|
24
|
+
|
|
25
|
+
- 213086c: `Sheet`에 `title`을 주면 구조형 시트가 된다. 머리에는 `caption`, 제목, `description`, `headerActions`, 닫기 X가 들어가고, 본문만 스크롤하며, `footer`가 있으면 그 위에 선을 하나 긋는다. 바깥 클릭과 Escape로 닫힌다. 900px 이상에서는 `side`(`right`, `left`) 가장자리 패널이고 `size`는 `md` 480px, `lg` 720px, `full`이다. `motion`은 `SheetContent`와 같다. 900px 미만에서는 아래쪽 시트가 되고, 손잡이나 머리를 끌어내리면 닫힌다. 모션 감소 설정에서는 시트가 손가락을 따라 움직이지 않고 닫기 판정만 한다.
|
|
26
|
+
|
|
27
|
+
`SheetDrawer`는 사용 중단 예정이다. 이제 구조형 `Sheet`의 래퍼이고, `width`는 `size`로, `expanded`는 `full`로, 확장 버튼은 `headerActions`로 넘긴다. 모양이 바뀐다. 머리 아래 선이 없어지고, 푸터 위 선이 옅은 선(`--border-subtle`)이 되며, 표면 톤(`--bg-raised`, 윗선 하이라이트)을 쓰고, 900px 미만에서 손잡이가 보인다. 옛 조각 `SheetContent`, `SheetHeader`, `SheetBody`, `SheetFooter`, `SheetTitle`, `SheetDescription`과 `mobileSide`에도 사용 중단 표시를 붙였다. 동작은 그대로다.
|
|
28
|
+
|
|
29
|
+
### Patch Changes
|
|
30
|
+
|
|
31
|
+
- Updated dependencies [213086c]
|
|
32
|
+
- @olundot/tokens@0.18.0-next.0
|
|
33
|
+
|
|
34
|
+
## 0.19.1
|
|
35
|
+
|
|
36
|
+
### Patch Changes
|
|
37
|
+
|
|
38
|
+
- a1c795c: 오버레이 7종(Dialog·ConfirmDialog·FormModal·InfoModal·Sheet·SheetDrawer·ActionSheet)의 중복 코드를 내부 모듈로 모았습니다. 공개 API와 기본값은 그대로이고, 화면에 보이는 변화는 아래뿐입니다.
|
|
39
|
+
|
|
40
|
+
- **닫기 버튼 통일** — Dialog·Sheet의 `showCloseButton`, SheetDrawer, ActionSheet의 닫기 버튼이 모두 `IconButton` ghost md(32px, 터치 영역 44px)입니다. hover는 `--action-hover`이고, 접근 가능한 이름은 '닫기'(SheetDrawer·ActionSheet는 `closeLabel`)입니다. Sheet 닫기 버튼의 이름이 영어 'Close'에서 '닫기'로 바뀌었습니다. ActionSheet는 버튼이 28px에서 32px로 커져 설명이 없는 헤더가 4px 높아집니다. SheetDrawer 닫기 버튼의 `data-slot="sheet-drawer-close"`는 `data-slot="icon-button"`이 됩니다.
|
|
41
|
+
- **SheetDescription** 글자색이 `text-text-secondary`입니다.
|
|
42
|
+
- **Dialog 포커스 복귀** — `DialogTrigger` 없이 `open`만으로 연 `DialogContent`도 닫으면 연 요소로 포커스를 돌려줍니다. 닫을 때 포커스를 직접 옮기는 화면은 `onCloseAutoFocus`에서 `preventDefault()`를 부르면 지금처럼 동작합니다.
|
|
43
|
+
- **Sheet 쌓임** — Sheet 계열의 오버레이가 `z-modal` 층에 그려집니다. 다른 오버레이 위에서 연 Sheet가 그 오버레이를 어둡게 덮습니다.
|
|
44
|
+
|
|
3
45
|
## 0.19.0
|
|
4
46
|
|
|
5
47
|
### Minor Changes
|
package/dist/index.d.ts
CHANGED
|
@@ -684,6 +684,14 @@ interface FormLayoutProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "ch
|
|
|
684
684
|
declare const FormLayout: React.ForwardRefExoticComponent<FormLayoutProps & React.RefAttributes<HTMLDivElement>>;
|
|
685
685
|
|
|
686
686
|
/**
|
|
687
|
+
* Scrim preset. `"dim"`: a plain dim (no backdrop blur). `"blur"`: a lighter dim over a backdrop
|
|
688
|
+
* blur (`--scrim-blur`). Without a preset (no prop, no `<html data-scrim>`) the scrim is `--scrim`.
|
|
689
|
+
*/
|
|
690
|
+
type OverlayScrim = "blur" | "dim";
|
|
691
|
+
|
|
692
|
+
/**
|
|
693
|
+
* @deprecated The structured Dialog (`title`) is a bottom sheet below 900px on its own.
|
|
694
|
+
*
|
|
687
695
|
* Where a dialog sits below 900px (the DS mobile band, same as Sheet `mobileSide`).
|
|
688
696
|
* - `"center"` (default): the centered card at every width.
|
|
689
697
|
* - `"sheet"`: a bottom sheet below 900px — pinned to the bottom edge, full width, top corners
|
|
@@ -691,33 +699,95 @@ declare const FormLayout: React.ForwardRefExoticComponent<FormLayoutProps & Reac
|
|
|
691
699
|
* Pure CSS, so SSR and hydration render the same tree at every width (no matchMedia swap).
|
|
692
700
|
*/
|
|
693
701
|
type DialogMobilePresentation = "center" | "sheet";
|
|
694
|
-
|
|
702
|
+
/** Structured Dialog width: 420 · 560 · 720. */
|
|
703
|
+
type DialogSize = "sm" | "md" | "lg";
|
|
704
|
+
/**
|
|
705
|
+
* Structured Dialog (spec §3.2): a center window for forms, pickers and long content. X + footer,
|
|
706
|
+
* outside click does not close, Escape does (not while submitting), the body scrolls inside the max
|
|
707
|
+
* height, a bottom sheet below 900px (OVERLAY_POLICY.dialog).
|
|
708
|
+
*/
|
|
709
|
+
interface DialogProps {
|
|
710
|
+
open: boolean;
|
|
711
|
+
onOpenChange: (open: boolean) => void;
|
|
712
|
+
/** Heading, also the dialog's accessible name. Its presence selects the structured mode. */
|
|
713
|
+
title: string;
|
|
714
|
+
/** Line under the title, also the accessible description. */
|
|
715
|
+
description?: string;
|
|
716
|
+
/** Box width: 420 · 560 · 720. Default `"md"`. Other widths are not supported. */
|
|
717
|
+
size?: DialogSize;
|
|
718
|
+
/** Body. Scrolls inside the box's max height. */
|
|
719
|
+
children: React.ReactNode;
|
|
720
|
+
/** Footer content (buttons). Ignored in form mode, which renders `[cancel][submit]`. */
|
|
721
|
+
footer?: React.ReactNode;
|
|
722
|
+
/**
|
|
723
|
+
* Form mode: wraps body and footer in a `<form>` and runs this on submit. While it runs, Escape,
|
|
724
|
+
* cancel and the X do nothing; when it resolves the dialog closes; when it rejects it stays open.
|
|
725
|
+
*/
|
|
726
|
+
onSubmit?: () => void | Promise<void>;
|
|
727
|
+
/** Form mode: receives a rejection of `onSubmit` instead of rethrowing it. */
|
|
728
|
+
onError?: (error: unknown) => void;
|
|
729
|
+
/** Form mode submit label. Default '저장'. */
|
|
730
|
+
submitLabel?: string;
|
|
731
|
+
/** Form mode cancel label. Default '취소'. */
|
|
732
|
+
cancelLabel?: string;
|
|
733
|
+
/** Form mode: shows submit busy and blocks closing, for a submit run outside `onSubmit`. */
|
|
734
|
+
loading?: boolean;
|
|
735
|
+
/** Accessible name of the X. Default '닫기'. */
|
|
736
|
+
closeLabel?: string;
|
|
737
|
+
/** Scrim preset; wins over `<html data-scrim>`. */
|
|
738
|
+
scrim?: OverlayScrim;
|
|
739
|
+
/** Layout of the body content only. It never reaches the box: width comes from `size`. */
|
|
740
|
+
className?: string;
|
|
741
|
+
}
|
|
742
|
+
/** Legacy root: the Radix Dialog Root for `DialogContent` composition (no `title`). */
|
|
743
|
+
type DialogRootProps = React.ComponentProps<typeof Dialog$1.Root> & {
|
|
744
|
+
title?: never;
|
|
745
|
+
};
|
|
746
|
+
declare function Dialog(props: DialogProps | DialogRootProps): react_jsx_runtime.JSX.Element;
|
|
695
747
|
declare const DialogTrigger: React.ForwardRefExoticComponent<Dialog$1.DialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
696
748
|
declare const DialogPortal: React.FC<Dialog$1.DialogPortalProps>;
|
|
697
749
|
declare const DialogClose: React.ForwardRefExoticComponent<Dialog$1.DialogCloseProps & React.RefAttributes<HTMLButtonElement>>;
|
|
698
|
-
declare const DialogOverlay: React.ForwardRefExoticComponent<Omit<Dialog$1.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> &
|
|
750
|
+
declare const DialogOverlay: React.ForwardRefExoticComponent<Omit<Dialog$1.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
751
|
+
/** Scrim preset; wins over `<html data-scrim>`. Default: the root preset, else `--scrim`. */
|
|
752
|
+
scrim?: OverlayScrim;
|
|
753
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
754
|
+
/** @deprecated Pass `title` to `Dialog` for the structured dialog. */
|
|
699
755
|
declare const DialogContent: React.ForwardRefExoticComponent<Omit<Dialog$1.DialogContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
700
756
|
showCloseButton?: boolean;
|
|
701
|
-
/**
|
|
757
|
+
/**
|
|
758
|
+
* @deprecated The structured Dialog (`title`) is a bottom sheet below 900px on its own.
|
|
759
|
+
*
|
|
760
|
+
* Below 900px: `"center"` card (default) or `"sheet"` — see {@link DialogMobilePresentation}.
|
|
761
|
+
*/
|
|
702
762
|
mobilePresentation?: DialogMobilePresentation;
|
|
763
|
+
/** Scrim preset; wins over `<html data-scrim>`. Default: the root preset, else `--scrim`. */
|
|
764
|
+
scrim?: OverlayScrim;
|
|
703
765
|
} & React.RefAttributes<HTMLDivElement>>;
|
|
766
|
+
/** @deprecated The structured Dialog renders the header from `title` and `description`. */
|
|
704
767
|
declare const DialogHeader: {
|
|
705
768
|
({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
706
769
|
displayName: string;
|
|
707
770
|
};
|
|
771
|
+
/** @deprecated Use the structured Dialog `footer` prop. */
|
|
708
772
|
declare const DialogFooter: {
|
|
709
773
|
({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
710
774
|
displayName: string;
|
|
711
775
|
};
|
|
776
|
+
/** @deprecated Use the structured Dialog `title` prop. */
|
|
712
777
|
declare const DialogTitle: React.ForwardRefExoticComponent<Omit<Dialog$1.DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
778
|
+
/** @deprecated Use the structured Dialog `description` prop. */
|
|
713
779
|
declare const DialogDescription: React.ForwardRefExoticComponent<Omit<Dialog$1.DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
714
780
|
/**
|
|
781
|
+
* @deprecated The structured Dialog has no eyebrow; put the context in `title` or `description`.
|
|
782
|
+
*
|
|
715
783
|
* DialogEyebrow — 제목 위 카테고리 overline(eyebrow). 2026 editorial 헤더 위계의 최상단.
|
|
716
784
|
* DialogHeader 안에서 DialogTitle '위'에 둔다(예: "시간 제어" / "시험 제어").
|
|
717
785
|
* 작은 uppercase + tracking + muted 색으로 title(bold)과 대비.
|
|
718
786
|
*/
|
|
719
787
|
declare const DialogEyebrow: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>>;
|
|
720
788
|
/**
|
|
789
|
+
* @deprecated Use the structured Dialog (`title`, `footer`, `size`).
|
|
790
|
+
*
|
|
721
791
|
* DialogRawContent — shadcn 기본 스타일 없는 순수 radix Content.
|
|
722
792
|
* 자체 head/body/foot 슬롯을 가진 ModalShell 등 커스텀 구현용.
|
|
723
793
|
* DialogPortal + DialogOverlay와 함께 수동으로 조합해서 사용.
|
|
@@ -733,13 +803,24 @@ interface FormModalProps {
|
|
|
733
803
|
onSubmit: () => void | Promise<void>;
|
|
734
804
|
submitLabel?: string;
|
|
735
805
|
cancelLabel?: string;
|
|
806
|
+
/** Dialog `size="lg"` (720). Default: `"md"` (560). */
|
|
736
807
|
wide?: boolean;
|
|
737
808
|
loading?: boolean;
|
|
809
|
+
/** Rendered at the top of the body. */
|
|
738
810
|
status?: React.ReactNode;
|
|
739
|
-
/**
|
|
811
|
+
/**
|
|
812
|
+
* @deprecated Ignored. Dialog is a bottom sheet below 900px on its own.
|
|
813
|
+
*/
|
|
740
814
|
mobilePresentation?: DialogMobilePresentation;
|
|
741
815
|
}
|
|
742
|
-
|
|
816
|
+
/**
|
|
817
|
+
* @deprecated Use Dialog with onSubmit.
|
|
818
|
+
*
|
|
819
|
+
* A thin wrapper over the structured Dialog's form mode: `wide` → `size="lg"`, `status` at the top
|
|
820
|
+
* of the body. The submit guard is Dialog's: one submit at a time, no closing while it runs, one
|
|
821
|
+
* close on success, open on failure (the rejection propagates).
|
|
822
|
+
*/
|
|
823
|
+
declare function FormModal({ open, onOpenChange, title, description, children, onSubmit, submitLabel, cancelLabel, wide, loading, status, }: FormModalProps): react_jsx_runtime.JSX.Element;
|
|
743
824
|
|
|
744
825
|
interface InfoModalProps {
|
|
745
826
|
open: boolean;
|
|
@@ -748,12 +829,17 @@ interface InfoModalProps {
|
|
|
748
829
|
description?: string;
|
|
749
830
|
children: React.ReactNode;
|
|
750
831
|
closeLabel?: string;
|
|
832
|
+
/** @deprecated Ignored. Content that needs the wide box belongs in Dialog. */
|
|
751
833
|
width?: "default" | "wide";
|
|
752
834
|
footer?: React.ReactNode;
|
|
753
|
-
/**
|
|
835
|
+
/** @deprecated Ignored. AlertDialog stays a centered card below 900px. */
|
|
754
836
|
mobilePresentation?: DialogMobilePresentation;
|
|
755
837
|
}
|
|
756
|
-
|
|
838
|
+
/**
|
|
839
|
+
* @deprecated Use AlertDialog (short) or Dialog (long content). InfoModal is a thin wrapper over
|
|
840
|
+
* AlertDialog's acknowledge mode: role `alertdialog`, outside click does not close it.
|
|
841
|
+
*/
|
|
842
|
+
declare function InfoModal({ open, onOpenChange, title, description, children, closeLabel, footer, }: InfoModalProps): react_jsx_runtime.JSX.Element;
|
|
757
843
|
|
|
758
844
|
type FilterToolbarCollapseBelow = "sm" | "md" | "lg" | "never";
|
|
759
845
|
interface FilterToolbarProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
@@ -1002,10 +1088,69 @@ interface ConfirmDialogProps {
|
|
|
1002
1088
|
children?: React.ReactNode;
|
|
1003
1089
|
/** Keeps the confirm button disabled (e.g. until the typed count matches). */
|
|
1004
1090
|
confirmDisabled?: boolean;
|
|
1005
|
-
/**
|
|
1091
|
+
/**
|
|
1092
|
+
* @deprecated Ignored. AlertDialog stays a centered card below 900px.
|
|
1093
|
+
*/
|
|
1006
1094
|
mobilePresentation?: DialogMobilePresentation;
|
|
1095
|
+
/** Scrim preset; wins over `<html data-scrim>`. Default: the root preset, else `--scrim`. */
|
|
1096
|
+
scrim?: OverlayScrim;
|
|
1007
1097
|
}
|
|
1008
|
-
|
|
1098
|
+
/**
|
|
1099
|
+
* @deprecated Use AlertDialog. ConfirmDialog is a thin wrapper over it: the surface has role
|
|
1100
|
+
* `alertdialog`, an outside click does not close it, and it stays a centered card below 900px.
|
|
1101
|
+
*/
|
|
1102
|
+
declare function ConfirmDialog({ open, onOpenChange, title, description, tone, confirmLabel, cancelLabel, onConfirm, loading, children, confirmDisabled, scrim, }: ConfirmDialogProps): react_jsx_runtime.JSX.Element;
|
|
1103
|
+
|
|
1104
|
+
/** Confirm button tone. Same words as Button `tone`. */
|
|
1105
|
+
type AlertDialogTone = "neutral" | "danger";
|
|
1106
|
+
interface AlertDialogBaseProps {
|
|
1107
|
+
open: boolean;
|
|
1108
|
+
onOpenChange: (open: boolean) => void;
|
|
1109
|
+
/** Heading, also the dialog's accessible name. */
|
|
1110
|
+
title: string;
|
|
1111
|
+
/** One or two sentences under the title, also the accessible description. */
|
|
1112
|
+
description?: string;
|
|
1113
|
+
/**
|
|
1114
|
+
* Short body between the description and the footer: one input for a typed confirmation, or a
|
|
1115
|
+
* short list. When it holds an input, that input gets the initial focus.
|
|
1116
|
+
*/
|
|
1117
|
+
children?: React.ReactNode;
|
|
1118
|
+
/** Scrim preset; wins over `<html data-scrim>`. Default: the root preset, else `--scrim`. */
|
|
1119
|
+
scrim?: OverlayScrim;
|
|
1120
|
+
}
|
|
1121
|
+
interface AlertDialogConfirmProps {
|
|
1122
|
+
/** Confirm button label. Its presence selects confirm mode (`[cancel][confirm]`). */
|
|
1123
|
+
confirmLabel: string;
|
|
1124
|
+
/**
|
|
1125
|
+
* Runs on confirm. While it runs, Escape and cancel do nothing; when it resolves the dialog
|
|
1126
|
+
* closes. When it rejects the dialog stays open (see `onError`).
|
|
1127
|
+
*/
|
|
1128
|
+
onConfirm: () => void | Promise<void>;
|
|
1129
|
+
/** Receives a rejection of `onConfirm` instead of rethrowing it. Without it the rejection propagates. */
|
|
1130
|
+
onError?: (error: unknown) => void;
|
|
1131
|
+
/** Cancel button label. Default '취소'. Initial focus is on it unless the body holds an input. */
|
|
1132
|
+
cancelLabel?: string;
|
|
1133
|
+
/** Confirm button tone. Default `"neutral"`. */
|
|
1134
|
+
tone?: AlertDialogTone;
|
|
1135
|
+
/** Keeps the confirm button disabled (e.g. until the typed count matches). */
|
|
1136
|
+
confirmDisabled?: boolean;
|
|
1137
|
+
/** Shows the confirm button busy and blocks closing, for an action run outside `onConfirm`. */
|
|
1138
|
+
loading?: boolean;
|
|
1139
|
+
acknowledgeLabel?: never;
|
|
1140
|
+
}
|
|
1141
|
+
interface AlertDialogAcknowledgeProps {
|
|
1142
|
+
/** Label of the single button that closes (acknowledge mode). Default '확인'. Initial focus is on it. */
|
|
1143
|
+
acknowledgeLabel?: string;
|
|
1144
|
+
confirmLabel?: never;
|
|
1145
|
+
onConfirm?: never;
|
|
1146
|
+
onError?: never;
|
|
1147
|
+
cancelLabel?: never;
|
|
1148
|
+
tone?: never;
|
|
1149
|
+
confirmDisabled?: never;
|
|
1150
|
+
loading?: never;
|
|
1151
|
+
}
|
|
1152
|
+
type AlertDialogProps = AlertDialogBaseProps & (AlertDialogConfirmProps | AlertDialogAcknowledgeProps);
|
|
1153
|
+
declare function AlertDialog({ open, onOpenChange, title, description, children, scrim, confirmLabel, onConfirm, onError, cancelLabel, tone, confirmDisabled, loading, acknowledgeLabel, }: AlertDialogProps): React.ReactElement;
|
|
1009
1154
|
|
|
1010
1155
|
declare function Separator({ className, orientation, decorative, ...props }: React.ComponentProps<typeof Separator$1.Root>): react_jsx_runtime.JSX.Element;
|
|
1011
1156
|
|
|
@@ -1031,19 +1176,72 @@ type SheetMotionConfig = {
|
|
|
1031
1176
|
duration?: SheetMotionDuration;
|
|
1032
1177
|
easing?: SheetMotionEasing;
|
|
1033
1178
|
};
|
|
1034
|
-
|
|
1179
|
+
/** Structured Sheet width from 900px: 480 · 720 · viewport minus `--space-8`. */
|
|
1180
|
+
type SheetSize = "md" | "lg" | "full";
|
|
1181
|
+
/**
|
|
1182
|
+
* Structured Sheet (spec §3.3): a side surface for supporting work without leaving the page. X,
|
|
1183
|
+
* outside click and Escape close, the body scrolls, a bottom sheet below 900px (OVERLAY_POLICY.sheet).
|
|
1184
|
+
*/
|
|
1185
|
+
interface SheetProps {
|
|
1186
|
+
open: boolean;
|
|
1187
|
+
onOpenChange: (open: boolean) => void;
|
|
1188
|
+
/** Heading, also the sheet's accessible name. Its presence selects the structured mode. */
|
|
1189
|
+
title: string;
|
|
1190
|
+
/** Line under the title, also the accessible description. */
|
|
1191
|
+
description?: string;
|
|
1192
|
+
/** Above the title: a path or status badges. */
|
|
1193
|
+
caption?: React.ReactNode;
|
|
1194
|
+
/** Header controls before the X, e.g. an expand toggle. */
|
|
1195
|
+
headerActions?: React.ReactNode;
|
|
1196
|
+
/** Edge from 900px. Default `"right"`. Below 900px it is a bottom sheet. */
|
|
1197
|
+
side?: "right" | "left";
|
|
1198
|
+
/** Width from 900px. Default `"md"`. */
|
|
1199
|
+
size?: SheetSize;
|
|
1200
|
+
/** Body. Scrolls inside the sheet. */
|
|
1201
|
+
children: React.ReactNode;
|
|
1202
|
+
/** Footer content (buttons), under one line. No footer, no line. */
|
|
1203
|
+
footer?: React.ReactNode;
|
|
1204
|
+
/** Accessible name of the X. Default '닫기'. */
|
|
1205
|
+
closeLabel?: string;
|
|
1206
|
+
/** Side panel motion from 900px (`false`: none). Same as SheetContent `motion`. */
|
|
1207
|
+
motion?: SheetMotionConfig | false;
|
|
1208
|
+
/** Scrim preset; wins over `<html data-scrim>`. */
|
|
1209
|
+
scrim?: OverlayScrim;
|
|
1210
|
+
/** Body content layout only (not the box). */
|
|
1211
|
+
className?: string;
|
|
1212
|
+
}
|
|
1213
|
+
/** Legacy root: the Radix Dialog Root for `SheetContent` composition (no `title`). */
|
|
1214
|
+
type SheetRootProps = React.ComponentProps<typeof Dialog$1.Root> & {
|
|
1215
|
+
title?: never;
|
|
1216
|
+
};
|
|
1217
|
+
declare function Sheet(props: SheetProps | SheetRootProps): react_jsx_runtime.JSX.Element;
|
|
1035
1218
|
declare function SheetTrigger({ ...props }: React.ComponentProps<typeof Dialog$1.Trigger>): react_jsx_runtime.JSX.Element;
|
|
1036
1219
|
declare function SheetClose({ ...props }: React.ComponentProps<typeof Dialog$1.Close>): react_jsx_runtime.JSX.Element;
|
|
1037
|
-
|
|
1220
|
+
/**
|
|
1221
|
+
* @deprecated Legacy composition, removed in 0.21. Use `Sheet` with `title` (the structured Sheet).
|
|
1222
|
+
*/
|
|
1223
|
+
declare function SheetContent({ className, children, side, mobileSide, motion, showCloseButton, scrim, style, onOpenAutoFocus, onCloseAutoFocus, ...props }: React.ComponentProps<typeof Dialog$1.Content> & {
|
|
1224
|
+
/**
|
|
1225
|
+
* Edge. `"top"` and `"bottom"` are deprecated: the structured Sheet takes `"right"` or `"left"`
|
|
1226
|
+
* from 900px and is a bottom sheet below.
|
|
1227
|
+
*/
|
|
1038
1228
|
side?: "top" | "right" | "bottom" | "left";
|
|
1229
|
+
/** @deprecated The structured Sheet is a bottom sheet below 900px by rule. */
|
|
1039
1230
|
mobileSide?: "top" | "right" | "bottom" | "left";
|
|
1040
1231
|
motion?: SheetMotionConfig | false;
|
|
1041
1232
|
showCloseButton?: boolean;
|
|
1233
|
+
/** Scrim preset; wins over `<html data-scrim>`. Default: the root preset, else `--scrim`. */
|
|
1234
|
+
scrim?: OverlayScrim;
|
|
1042
1235
|
}): react_jsx_runtime.JSX.Element;
|
|
1236
|
+
/** @deprecated Legacy composition, removed in 0.21. Use `Sheet` with `title` (the structured Sheet): the body is the Sheet's children. */
|
|
1043
1237
|
declare function SheetBody({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
1238
|
+
/** @deprecated Legacy composition, removed in 0.21. Use `Sheet` with `title` (the structured Sheet): `title`, `description`, `caption`, `headerActions`. */
|
|
1044
1239
|
declare function SheetHeader({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
1240
|
+
/** @deprecated Legacy composition, removed in 0.21. Use `Sheet` with `title` (the structured Sheet): `footer`. */
|
|
1045
1241
|
declare function SheetFooter({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
1242
|
+
/** @deprecated Legacy composition, removed in 0.21. Use `Sheet` with `title` (the structured Sheet): `title`. */
|
|
1046
1243
|
declare function SheetTitle({ className, ...props }: React.ComponentProps<typeof Dialog$1.Title>): react_jsx_runtime.JSX.Element;
|
|
1244
|
+
/** @deprecated Legacy composition, removed in 0.21. Use `Sheet` with `title` (the structured Sheet): `description`. */
|
|
1047
1245
|
declare function SheetDescription({ className, ...props }: React.ComponentProps<typeof Dialog$1.Description>): react_jsx_runtime.JSX.Element;
|
|
1048
1246
|
|
|
1049
1247
|
interface SheetDrawerProps {
|
|
@@ -1068,6 +1266,11 @@ interface SheetDrawerProps {
|
|
|
1068
1266
|
motion?: SheetMotionConfig | false;
|
|
1069
1267
|
closeLabel?: string;
|
|
1070
1268
|
}
|
|
1269
|
+
/**
|
|
1270
|
+
* @deprecated Use `Sheet` with `title` (the structured Sheet). SheetDrawer is now a thin wrapper:
|
|
1271
|
+
* `width` default/wide/full → `size` md/lg/full, `expanded` → `full`, and the expand toggle goes to
|
|
1272
|
+
* `headerActions`.
|
|
1273
|
+
*/
|
|
1071
1274
|
declare function SheetDrawer({ open, onOpenChange, caption, title, description, children, expandHref, onExpand, expandLabel, expanded, onExpandedChange, collapseLabel, footer, width, motion, closeLabel, }: SheetDrawerProps): react_jsx_runtime.JSX.Element;
|
|
1072
1275
|
|
|
1073
1276
|
type ActionSheetIconProps = {
|
|
@@ -1093,11 +1296,64 @@ interface ActionSheetProps {
|
|
|
1093
1296
|
title: string;
|
|
1094
1297
|
description?: string;
|
|
1095
1298
|
items: ActionSheetItem[];
|
|
1096
|
-
/** Accessible name of the
|
|
1299
|
+
/** Accessible name of the screen-reader-only close button (D9). */
|
|
1097
1300
|
closeLabel?: string;
|
|
1098
1301
|
}
|
|
1302
|
+
/**
|
|
1303
|
+
* @deprecated Use ActionMenu: the same items become a DropdownMenu from 900px and this menu sheet
|
|
1304
|
+
* below, from one trigger.
|
|
1305
|
+
*/
|
|
1099
1306
|
declare function ActionSheet({ open, onOpenChange, title, description, items, closeLabel, }: ActionSheetProps): react_jsx_runtime.JSX.Element;
|
|
1100
1307
|
|
|
1308
|
+
/** Props an item icon receives: a Lucide icon or any component taking `size` and `strokeWidth`. */
|
|
1309
|
+
type ActionMenuIconProps = {
|
|
1310
|
+
size?: number | string;
|
|
1311
|
+
strokeWidth?: number | string;
|
|
1312
|
+
className?: string;
|
|
1313
|
+
"aria-hidden"?: boolean;
|
|
1314
|
+
};
|
|
1315
|
+
interface ActionMenuItem {
|
|
1316
|
+
id: string;
|
|
1317
|
+
label: string;
|
|
1318
|
+
/** Leading icon. */
|
|
1319
|
+
icon?: React.ComponentType<ActionMenuIconProps>;
|
|
1320
|
+
/** Secondary line under the label (menu sheet only). */
|
|
1321
|
+
description?: string;
|
|
1322
|
+
/** Danger color (DropdownMenuItem `variant="destructive"`, the sheet row's error color). */
|
|
1323
|
+
destructive?: boolean;
|
|
1324
|
+
disabled?: boolean;
|
|
1325
|
+
/** Runs after the menu has closed and focus is back on the trigger. */
|
|
1326
|
+
onSelect: () => void;
|
|
1327
|
+
}
|
|
1328
|
+
interface ActionMenuGroup {
|
|
1329
|
+
id: string;
|
|
1330
|
+
/** Group heading. */
|
|
1331
|
+
label?: string;
|
|
1332
|
+
items: ActionMenuItem[];
|
|
1333
|
+
}
|
|
1334
|
+
interface ActionMenuBaseProps {
|
|
1335
|
+
/** The button that opens the menu, e.g. an IconButton with an `aria-label`. */
|
|
1336
|
+
trigger: React.ReactElement;
|
|
1337
|
+
/** Heading of the menu sheet below 900px (also its accessible name). The dropdown shows none. */
|
|
1338
|
+
title?: string;
|
|
1339
|
+
/** Line under the heading, menu sheet only (from ActionSheet). */
|
|
1340
|
+
description?: string;
|
|
1341
|
+
/** Controlled open state (optional). */
|
|
1342
|
+
open?: boolean;
|
|
1343
|
+
onOpenChange?: (open: boolean) => void;
|
|
1344
|
+
/** Accessible name of the menu sheet's screen-reader-only close button. Default '닫기'. */
|
|
1345
|
+
closeLabel?: string;
|
|
1346
|
+
}
|
|
1347
|
+
type ActionMenuProps = ActionMenuBaseProps & ({
|
|
1348
|
+
items: ActionMenuItem[];
|
|
1349
|
+
groups?: never;
|
|
1350
|
+
} | {
|
|
1351
|
+
/** Items in groups, with a separator between groups. Use instead of `items`. */
|
|
1352
|
+
groups: ActionMenuGroup[];
|
|
1353
|
+
items?: never;
|
|
1354
|
+
});
|
|
1355
|
+
declare function ActionMenu({ trigger, title, description, open: openProp, onOpenChange, closeLabel, items, groups, }: ActionMenuProps): react_jsx_runtime.JSX.Element;
|
|
1356
|
+
|
|
1101
1357
|
declare function TooltipProvider({ delayDuration, ...props }: React.ComponentProps<typeof Tooltip$1.Provider>): react_jsx_runtime.JSX.Element;
|
|
1102
1358
|
interface TooltipProps extends React.ComponentProps<typeof Tooltip$1.Root> {
|
|
1103
1359
|
/**
|
|
@@ -1828,4 +2084,4 @@ interface OrganizationLogoProps extends Omit<SVGProps<SVGSVGElement>, "width" |
|
|
|
1828
2084
|
}
|
|
1829
2085
|
declare function OrganizationLogo({ organization, size, className, style, role, "aria-label": ariaLabel, "aria-hidden": ariaHidden, ...props }: OrganizationLogoProps): react_jsx_runtime.JSX.Element;
|
|
1830
2086
|
|
|
1831
|
-
export { ActionFooter, type ActionFooterAction, type ActionFooterProps, type ActionFooterStatus, ActionSheet, type ActionSheetIconProps, type ActionSheetItem, type ActionSheetProps, Alert, type AlertEmphasis, type AlertProps, type AlertVariant, Avatar, AvatarFallback, type AvatarFallbackProps, AvatarImage, Badge, type BadgeProps, type BadgeTone, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, BulkActionBar, type BulkActionBarAction, type BulkActionBarProps, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, CardContent, CardDescription, CardFooter, CardHeader, type CardProps, CardProse, CardTitle, type CardVariant, type CardVariantOptions, Checkbox, type CheckboxCheckedState, CheckboxGroup, type CheckboxGroupAppearance, type CheckboxGroupColumns, CheckboxGroupContext, type CheckboxGroupContextValue, type CheckboxGroupDensity, type CheckboxGroupOrientation, type CheckboxGroupProps, type CheckboxProps, type CheckboxSize, Chip, type ChipProps, type ChipSize, type ChipTone, type ChipVariant, ConfirmDialog, type ConfirmDialogProps, ContextMenu, type ContextMenuPosition, type ContextMenuProps, CopyButton, type CopyButtonProps, DataLayout, type DataLayoutProps, DataTable, type DataTableColumn, type DataTableLinkProps, type DataTableProps, type DataTableSort, type DataTableVirtualHandle, type DataTableVirtualOptions, type DataTableVirtualRange, DetailLayout, type DetailLayoutProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogEyebrow, DialogFooter, DialogHeader, type DialogMobilePresentation, DialogOverlay, DialogPortal, DialogRawContent, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, type EmptyStateProps, type EmptyStateSize, type EmptyStateTone, type EmptyStateVariantOptions, ErrorState, type ErrorStateProps, FileUploadZone, type FileUploadZoneProps, FilterToolbar, type FilterToolbarCollapseBelow, type FilterToolbarProps, FormField, type FormFieldProps, type FormFieldRenderProps, FormLayout, type FormLayoutProps, type FormLayoutSection, FormModal, type FormModalProps, IconButton, type IconButtonBadgeTone, type IconButtonProps, type IconButtonSize, type IconButtonVariant, InfoModal, type InfoModalProps, InlineAlert, type InlineAlertProps, type InlineAlertSurface, Input, type InputProps, type InputSize, type InputSizeLegacy, type InputState, Label, type LabelProps, ModeToggle, type ModeToggleOption, type ModeToggleProps, NotificationBadge, type NotificationBadgePlacement, type NotificationBadgeProps, type NotificationBadgeSize, OTPField, type OTPFieldProps, type OTPFieldSize, OlunLogo, OlunSymbol, type OlunTheme, type OlunThemeDuration, type OlunThemeState, OrganizationLogo, type OrganizationLogoId, type OrganizationLogoProps, PageHeader, type PageHeaderProps, PageSizeSelect, type PageSizeSelectProps, type PageSizeSelectSize, Pagination, type PaginationProps, type PaginationSize, PermissionContext, type PermissionEvaluator, type PermissionFallback, PermissionGuard, type PermissionGuardProps, PermissionProvider, type PermissionProviderProps, type PermissionScope, type PermissionState, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, type PopoverContentProps, type PopoverProps, PopoverTrigger, Progress, type ProgressProps, type ProgressStatus, Radio, RadioGroup, type RadioGroupAppearance, type RadioGroupColumns, type RadioGroupDensity, type RadioGroupOrientation, type RadioGroupProps, type RadioProps, ScrollArea, ScrollBar, SearchField, type SearchFieldProps, type SearchFieldSize, Select, type SelectAppearance, type SelectOption, type SelectProps, type SelectSize, type SelectState, type SelectVariant, type SemanticRole, Separator, type SetOlunThemeOptions, Sheet, SheetBody, SheetClose, SheetContent, SheetDescription, SheetDrawer, type SheetDrawerProps, SheetFooter, SheetHeader, type SheetMotionConfig, type SheetMotionDuration, type SheetMotionEasing, type SheetMotionType, SheetTitle, SheetTrigger, Skeleton, type SkeletonProps, SkeletonRow, type SkeletonRowColumn, type SkeletonRowProps, SkeletonText, type SkeletonTextProps, Spinner, type SpinnerProps, StatusBadge, type StatusBadgeEmphasis, type StatusBadgeProps, type StatusBadgeSize, type StatusBadgeStatus, type SurfaceLevel, Switch, type SwitchProps, type TabItem, Tabs, TabsContent, type TabsProps, type TabsVariant, Textarea, type TextareaProps, type TextareaSize, type TextareaSizeLegacy, type TextareaState, ThemeFab, type ThemeFabProps, ThemeToggle, Toast, type ToastAction, type ToastItem, type ToastOptions, ToastProvider, ToastRoot, type ToastVariant, ToastViewport, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, type TreeItemRowVariantProps, type TreeItemState, type TreeNode, TreeView, type TreeViewProps, TwoTierBadge, type TwoTierBadgeEmphasis, type TwoTierBadgeProps, type TwoTierBadgeSize, type TwoTierBadgeTone, type UseOlunThemeValue, WizardLayout, type WizardLayoutProps, type WizardStep, type WizardStepState, actionFooterStatusVariants, actionFooterVariants, buttonVariants, cardVariants, checkboxBoxVariants, checkboxFieldVariants, checkboxGroupBoxVariants, checkboxGroupItemVariants, checkboxGroupVariants, checkboxRootVariants, checkboxVariants, chipCountVariants, chipVariants, cn, dataTableRowVariants, dataTableVariants, emptyStateIconVariants, emptyStateVariants, errorStateVariants, evaluatePermission, fileUploadIconVariants, fileUploadZoneVariants, formFieldControlStackClassName, formFieldDescriptionClassName, formFieldErrorClassName, formFieldLabelClassName, formFieldRequiredClassName, formFieldVariants, getOlunThemeState, getToastDuration, iconButtonBadgeVariants, iconButtonVariants, inputMessageVariants, inputVariants, limitToasts, modeToggleItemVariants, modeToggleVariants, notificationBadgeVariants, otpCellVariants, otpFieldGroupVariants, otpFieldMessageVariants, otpFieldVariants, paginationControlVariants, paginationVariants, radioControlVariants, radioGroupVariants, radioVariants, searchFieldInputVariants, searchFieldVariants, selectMessageVariants, selectVariants, setOlunTheme, skeletonVariants, spinnerVariants, tabsBadgeVariants, tabsListVariants, tabsRootVariants, tabsTriggerVariants, textareaMessageVariants, textareaVariants, toast, toastVariants, toastViewportVariants, treeItemRowVariants, treeViewVariants, useOlunTheme, usePermission };
|
|
2087
|
+
export { ActionFooter, type ActionFooterAction, type ActionFooterProps, type ActionFooterStatus, ActionMenu, type ActionMenuGroup, type ActionMenuItem, type ActionMenuProps, ActionSheet, type ActionSheetIconProps, type ActionSheetItem, type ActionSheetProps, Alert, AlertDialog, type AlertDialogProps, type AlertDialogTone, type AlertEmphasis, type AlertProps, type AlertVariant, Avatar, AvatarFallback, type AvatarFallbackProps, AvatarImage, Badge, type BadgeProps, type BadgeTone, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, BulkActionBar, type BulkActionBarAction, type BulkActionBarProps, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, CardContent, CardDescription, CardFooter, CardHeader, type CardProps, CardProse, CardTitle, type CardVariant, type CardVariantOptions, Checkbox, type CheckboxCheckedState, CheckboxGroup, type CheckboxGroupAppearance, type CheckboxGroupColumns, CheckboxGroupContext, type CheckboxGroupContextValue, type CheckboxGroupDensity, type CheckboxGroupOrientation, type CheckboxGroupProps, type CheckboxProps, type CheckboxSize, Chip, type ChipProps, type ChipSize, type ChipTone, type ChipVariant, ConfirmDialog, type ConfirmDialogProps, ContextMenu, type ContextMenuPosition, type ContextMenuProps, CopyButton, type CopyButtonProps, DataLayout, type DataLayoutProps, DataTable, type DataTableColumn, type DataTableLinkProps, type DataTableProps, type DataTableSort, type DataTableVirtualHandle, type DataTableVirtualOptions, type DataTableVirtualRange, DetailLayout, type DetailLayoutProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogEyebrow, DialogFooter, DialogHeader, type DialogMobilePresentation, DialogOverlay, DialogPortal, type DialogProps, DialogRawContent, type DialogSize, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, type EmptyStateProps, type EmptyStateSize, type EmptyStateTone, type EmptyStateVariantOptions, ErrorState, type ErrorStateProps, FileUploadZone, type FileUploadZoneProps, FilterToolbar, type FilterToolbarCollapseBelow, type FilterToolbarProps, FormField, type FormFieldProps, type FormFieldRenderProps, FormLayout, type FormLayoutProps, type FormLayoutSection, FormModal, type FormModalProps, IconButton, type IconButtonBadgeTone, type IconButtonProps, type IconButtonSize, type IconButtonVariant, InfoModal, type InfoModalProps, InlineAlert, type InlineAlertProps, type InlineAlertSurface, Input, type InputProps, type InputSize, type InputSizeLegacy, type InputState, Label, type LabelProps, ModeToggle, type ModeToggleOption, type ModeToggleProps, NotificationBadge, type NotificationBadgePlacement, type NotificationBadgeProps, type NotificationBadgeSize, OTPField, type OTPFieldProps, type OTPFieldSize, OlunLogo, OlunSymbol, type OlunTheme, type OlunThemeDuration, type OlunThemeState, OrganizationLogo, type OrganizationLogoId, type OrganizationLogoProps, type OverlayScrim, PageHeader, type PageHeaderProps, PageSizeSelect, type PageSizeSelectProps, type PageSizeSelectSize, Pagination, type PaginationProps, type PaginationSize, PermissionContext, type PermissionEvaluator, type PermissionFallback, PermissionGuard, type PermissionGuardProps, PermissionProvider, type PermissionProviderProps, type PermissionScope, type PermissionState, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, type PopoverContentProps, type PopoverProps, PopoverTrigger, Progress, type ProgressProps, type ProgressStatus, Radio, RadioGroup, type RadioGroupAppearance, type RadioGroupColumns, type RadioGroupDensity, type RadioGroupOrientation, type RadioGroupProps, type RadioProps, ScrollArea, ScrollBar, SearchField, type SearchFieldProps, type SearchFieldSize, Select, type SelectAppearance, type SelectOption, type SelectProps, type SelectSize, type SelectState, type SelectVariant, type SemanticRole, Separator, type SetOlunThemeOptions, Sheet, SheetBody, SheetClose, SheetContent, SheetDescription, SheetDrawer, type SheetDrawerProps, SheetFooter, SheetHeader, type SheetMotionConfig, type SheetMotionDuration, type SheetMotionEasing, type SheetMotionType, type SheetProps, type SheetSize, SheetTitle, SheetTrigger, Skeleton, type SkeletonProps, SkeletonRow, type SkeletonRowColumn, type SkeletonRowProps, SkeletonText, type SkeletonTextProps, Spinner, type SpinnerProps, StatusBadge, type StatusBadgeEmphasis, type StatusBadgeProps, type StatusBadgeSize, type StatusBadgeStatus, type SurfaceLevel, Switch, type SwitchProps, type TabItem, Tabs, TabsContent, type TabsProps, type TabsVariant, Textarea, type TextareaProps, type TextareaSize, type TextareaSizeLegacy, type TextareaState, ThemeFab, type ThemeFabProps, ThemeToggle, Toast, type ToastAction, type ToastItem, type ToastOptions, ToastProvider, ToastRoot, type ToastVariant, ToastViewport, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, type TreeItemRowVariantProps, type TreeItemState, type TreeNode, TreeView, type TreeViewProps, TwoTierBadge, type TwoTierBadgeEmphasis, type TwoTierBadgeProps, type TwoTierBadgeSize, type TwoTierBadgeTone, type UseOlunThemeValue, WizardLayout, type WizardLayoutProps, type WizardStep, type WizardStepState, actionFooterStatusVariants, actionFooterVariants, buttonVariants, cardVariants, checkboxBoxVariants, checkboxFieldVariants, checkboxGroupBoxVariants, checkboxGroupItemVariants, checkboxGroupVariants, checkboxRootVariants, checkboxVariants, chipCountVariants, chipVariants, cn, dataTableRowVariants, dataTableVariants, emptyStateIconVariants, emptyStateVariants, errorStateVariants, evaluatePermission, fileUploadIconVariants, fileUploadZoneVariants, formFieldControlStackClassName, formFieldDescriptionClassName, formFieldErrorClassName, formFieldLabelClassName, formFieldRequiredClassName, formFieldVariants, getOlunThemeState, getToastDuration, iconButtonBadgeVariants, iconButtonVariants, inputMessageVariants, inputVariants, limitToasts, modeToggleItemVariants, modeToggleVariants, notificationBadgeVariants, otpCellVariants, otpFieldGroupVariants, otpFieldMessageVariants, otpFieldVariants, paginationControlVariants, paginationVariants, radioControlVariants, radioGroupVariants, radioVariants, searchFieldInputVariants, searchFieldVariants, selectMessageVariants, selectVariants, setOlunTheme, skeletonVariants, spinnerVariants, tabsBadgeVariants, tabsListVariants, tabsRootVariants, tabsTriggerVariants, textareaMessageVariants, textareaVariants, toast, toastVariants, toastViewportVariants, treeItemRowVariants, treeViewVariants, useOlunTheme, usePermission };
|