@mortenbrudvik/waveui 0.14.1 → 0.16.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/README.md +413 -53
- package/dist/components/data-display/InfoButton.cjs +1 -1
- package/dist/components/data-display/InfoButton.cjs.map +1 -1
- package/dist/components/data-display/InfoButton.mjs +90 -82
- package/dist/components/data-display/InfoButton.mjs.map +1 -1
- package/dist/components/data-display/InfoLabel.cjs +1 -1
- package/dist/components/data-display/InfoLabel.cjs.map +1 -1
- package/dist/components/data-display/InfoLabel.mjs +19 -18
- package/dist/components/data-display/InfoLabel.mjs.map +1 -1
- package/dist/components/data-display/List.cjs +1 -1
- package/dist/components/data-display/List.cjs.map +1 -1
- package/dist/components/data-display/List.mjs +405 -219
- package/dist/components/data-display/List.mjs.map +1 -1
- package/dist/components/data-display/List.registry.cjs +1 -1
- package/dist/components/data-display/List.registry.cjs.map +1 -1
- package/dist/components/data-display/List.registry.mjs +12 -6
- package/dist/components/data-display/List.registry.mjs.map +1 -1
- package/dist/components/feedback/MessageBarGroup.cjs +2 -0
- package/dist/components/feedback/MessageBarGroup.cjs.map +1 -0
- package/dist/components/feedback/MessageBarGroup.mjs +63 -0
- package/dist/components/feedback/MessageBarGroup.mjs.map +1 -0
- package/dist/components/feedback/ProgressBar.cjs +1 -1
- package/dist/components/feedback/ProgressBar.cjs.map +1 -1
- package/dist/components/feedback/ProgressBar.mjs +41 -39
- package/dist/components/feedback/ProgressBar.mjs.map +1 -1
- package/dist/components/feedback/Toaster.cjs +1 -1
- package/dist/components/feedback/Toaster.cjs.map +1 -1
- package/dist/components/feedback/Toaster.mjs +222 -216
- package/dist/components/feedback/Toaster.mjs.map +1 -1
- package/dist/components/input/Combobox.cjs +1 -1
- package/dist/components/input/Combobox.cjs.map +1 -1
- package/dist/components/input/Combobox.mjs +163 -148
- package/dist/components/input/Combobox.mjs.map +1 -1
- package/dist/components/input/Dropdown.cjs +1 -1
- package/dist/components/input/Dropdown.cjs.map +1 -1
- package/dist/components/input/Dropdown.mjs +132 -117
- package/dist/components/input/Dropdown.mjs.map +1 -1
- package/dist/components/input/Listbox.cjs +1 -1
- package/dist/components/input/Listbox.cjs.map +1 -1
- package/dist/components/input/Listbox.mjs +90 -78
- package/dist/components/input/Listbox.mjs.map +1 -1
- package/dist/components/input/Option.cjs +1 -1
- package/dist/components/input/Option.cjs.map +1 -1
- package/dist/components/input/Option.data.cjs +2 -0
- package/dist/components/input/Option.data.cjs.map +1 -0
- package/dist/components/input/Option.data.mjs +114 -0
- package/dist/components/input/Option.data.mjs.map +1 -0
- package/dist/components/input/Option.mjs +21 -17
- package/dist/components/input/Option.mjs.map +1 -1
- package/dist/components/layout/Accordion.cjs +1 -1
- package/dist/components/layout/Accordion.cjs.map +1 -1
- package/dist/components/layout/Accordion.mjs +124 -109
- package/dist/components/layout/Accordion.mjs.map +1 -1
- package/dist/components/layout/Carousel.cjs +1 -1
- package/dist/components/layout/Carousel.cjs.map +1 -1
- package/dist/components/layout/Carousel.mjs +207 -193
- package/dist/components/layout/Carousel.mjs.map +1 -1
- package/dist/components/layout/FlatTree.cjs +2 -0
- package/dist/components/layout/FlatTree.cjs.map +1 -0
- package/dist/components/layout/FlatTree.context.cjs +2 -0
- package/dist/components/layout/FlatTree.context.cjs.map +1 -0
- package/dist/components/layout/FlatTree.context.mjs +20 -0
- package/dist/components/layout/FlatTree.context.mjs.map +1 -0
- package/dist/components/layout/FlatTree.item.cjs +2 -0
- package/dist/components/layout/FlatTree.item.cjs.map +1 -0
- package/dist/components/layout/FlatTree.item.mjs +90 -0
- package/dist/components/layout/FlatTree.item.mjs.map +1 -0
- package/dist/components/layout/FlatTree.mjs +276 -0
- package/dist/components/layout/FlatTree.mjs.map +1 -0
- package/dist/components/layout/TabList.cjs +1 -1
- package/dist/components/layout/TabList.cjs.map +1 -1
- package/dist/components/layout/TabList.mjs +149 -108
- package/dist/components/layout/TabList.mjs.map +1 -1
- package/dist/components/layout/Tree.cjs.map +1 -1
- package/dist/components/layout/Tree.context.cjs +1 -1
- package/dist/components/layout/Tree.context.cjs.map +1 -1
- package/dist/components/layout/Tree.context.mjs +2 -1
- package/dist/components/layout/Tree.context.mjs.map +1 -1
- package/dist/components/layout/Tree.core.cjs +1 -1
- package/dist/components/layout/Tree.core.cjs.map +1 -1
- package/dist/components/layout/Tree.core.mjs +162 -148
- package/dist/components/layout/Tree.core.mjs.map +1 -1
- package/dist/components/layout/Tree.mjs.map +1 -1
- package/dist/components/layout/Tree.selection.cjs +1 -1
- package/dist/components/layout/Tree.selection.cjs.map +1 -1
- package/dist/components/layout/Tree.selection.mjs +11 -57
- package/dist/components/layout/Tree.selection.mjs.map +1 -1
- package/dist/components/layout/useFlatTree.cjs +2 -0
- package/dist/components/layout/useFlatTree.cjs.map +1 -0
- package/dist/components/layout/useFlatTree.mjs +83 -0
- package/dist/components/layout/useFlatTree.mjs.map +1 -0
- package/dist/components/navigation/Menu.popover.cjs +1 -1
- package/dist/components/navigation/Menu.popover.cjs.map +1 -1
- package/dist/components/navigation/Menu.popover.mjs +154 -168
- package/dist/components/navigation/Menu.popover.mjs.map +1 -1
- package/dist/components/navigation/Nav.cjs +1 -1
- package/dist/components/navigation/Nav.cjs.map +1 -1
- package/dist/components/navigation/Nav.mjs +156 -136
- package/dist/components/navigation/Nav.mjs.map +1 -1
- package/dist/components/navigation/NavDrawer.cjs +1 -1
- package/dist/components/navigation/NavDrawer.cjs.map +1 -1
- package/dist/components/navigation/NavDrawer.mjs +48 -45
- package/dist/components/navigation/NavDrawer.mjs.map +1 -1
- package/dist/components/overlays/Dialog.cjs +1 -1
- package/dist/components/overlays/Dialog.cjs.map +1 -1
- package/dist/components/overlays/Dialog.mjs +128 -122
- package/dist/components/overlays/Dialog.mjs.map +1 -1
- package/dist/components/overlays/Dialog.slots.cjs +1 -1
- package/dist/components/overlays/Dialog.slots.cjs.map +1 -1
- package/dist/components/overlays/Dialog.slots.mjs +12 -12
- package/dist/components/overlays/Dialog.slots.mjs.map +1 -1
- package/dist/components/overlays/Drawer.cjs.map +1 -1
- package/dist/components/overlays/Drawer.mjs.map +1 -1
- package/dist/components/overlays/Drawer.panel.cjs +1 -1
- package/dist/components/overlays/Drawer.panel.cjs.map +1 -1
- package/dist/components/overlays/Drawer.panel.mjs +97 -81
- package/dist/components/overlays/Drawer.panel.mjs.map +1 -1
- package/dist/components/overlays/Drawer.root.cjs +1 -1
- package/dist/components/overlays/Drawer.root.cjs.map +1 -1
- package/dist/components/overlays/Drawer.root.mjs +34 -31
- package/dist/components/overlays/Drawer.root.mjs.map +1 -1
- package/dist/components/overlays/Popover.cjs +1 -1
- package/dist/components/overlays/Popover.cjs.map +1 -1
- package/dist/components/overlays/Popover.mjs +231 -216
- package/dist/components/overlays/Popover.mjs.map +1 -1
- package/dist/components/overlays/TeachingPopover.cjs.map +1 -1
- package/dist/components/overlays/TeachingPopover.mjs.map +1 -1
- package/dist/components/overlays/TeachingPopover.parts.cjs +1 -1
- package/dist/components/overlays/TeachingPopover.parts.cjs.map +1 -1
- package/dist/components/overlays/TeachingPopover.parts.mjs +199 -177
- package/dist/components/overlays/TeachingPopover.parts.mjs.map +1 -1
- package/dist/components/overlays/TeachingPopover.root.cjs +1 -1
- package/dist/components/overlays/TeachingPopover.root.cjs.map +1 -1
- package/dist/components/overlays/TeachingPopover.root.mjs +93 -92
- package/dist/components/overlays/TeachingPopover.root.mjs.map +1 -1
- package/dist/components/overlays/Tooltip.cjs +1 -1
- package/dist/components/overlays/Tooltip.cjs.map +1 -1
- package/dist/components/overlays/Tooltip.mjs +66 -61
- package/dist/components/overlays/Tooltip.mjs.map +1 -1
- package/dist/components/provider/WaveProvider.cjs +1 -1
- package/dist/components/provider/WaveProvider.cjs.map +1 -1
- package/dist/components/provider/WaveProvider.mjs +26 -23
- package/dist/components/provider/WaveProvider.mjs.map +1 -1
- package/dist/components/table/DataGrid.cjs +1 -1
- package/dist/components/table/DataGrid.cjs.map +1 -1
- package/dist/components/table/DataGrid.context.cjs +2 -0
- package/dist/components/table/DataGrid.context.cjs.map +1 -0
- package/dist/components/table/DataGrid.context.mjs +74 -0
- package/dist/components/table/DataGrid.context.mjs.map +1 -0
- package/dist/components/table/DataGrid.header.cjs +2 -0
- package/dist/components/table/DataGrid.header.cjs.map +1 -0
- package/dist/components/table/DataGrid.header.mjs +168 -0
- package/dist/components/table/DataGrid.header.mjs.map +1 -0
- package/dist/components/table/DataGrid.mjs +488 -591
- package/dist/components/table/DataGrid.mjs.map +1 -1
- package/dist/components/table/DataGrid.sizing.cjs +2 -0
- package/dist/components/table/DataGrid.sizing.cjs.map +1 -0
- package/dist/components/table/DataGrid.sizing.mjs +187 -0
- package/dist/components/table/DataGrid.sizing.mjs.map +1 -0
- package/dist/components/table/DataGrid.store.cjs +2 -0
- package/dist/components/table/DataGrid.store.cjs.map +1 -0
- package/dist/components/table/DataGrid.store.mjs +108 -0
- package/dist/components/table/DataGrid.store.mjs.map +1 -0
- package/dist/components/table/DataGrid.window.cjs +2 -0
- package/dist/components/table/DataGrid.window.cjs.map +1 -0
- package/dist/components/table/DataGrid.window.mjs +165 -0
- package/dist/components/table/DataGrid.window.mjs.map +1 -0
- package/dist/components/table/Table.cjs +1 -1
- package/dist/components/table/Table.cjs.map +1 -1
- package/dist/components/table/Table.mjs +74 -72
- package/dist/components/table/Table.mjs.map +1 -1
- package/dist/components/table/Table.resize.cjs +2 -0
- package/dist/components/table/Table.resize.cjs.map +1 -0
- package/dist/components/table/Table.resize.mjs +98 -0
- package/dist/components/table/Table.resize.mjs.map +1 -0
- package/dist/components/table/useGridNavigation.cjs +1 -1
- package/dist/components/table/useGridNavigation.cjs.map +1 -1
- package/dist/components/table/useGridNavigation.mjs +343 -140
- package/dist/components/table/useGridNavigation.mjs.map +1 -1
- package/dist/components/table/useTableColumnSizing.cjs +2 -0
- package/dist/components/table/useTableColumnSizing.cjs.map +1 -0
- package/dist/components/table/useTableColumnSizing.mjs +76 -0
- package/dist/components/table/useTableColumnSizing.mjs.map +1 -0
- package/dist/components/table/useTableFeatures.cjs +2 -0
- package/dist/components/table/useTableFeatures.cjs.map +1 -0
- package/dist/components/table/useTableFeatures.mjs +110 -0
- package/dist/components/table/useTableFeatures.mjs.map +1 -0
- package/dist/components/table/useTableSelection.cjs +2 -0
- package/dist/components/table/useTableSelection.cjs.map +1 -0
- package/dist/components/table/useTableSelection.mjs +39 -0
- package/dist/components/table/useTableSelection.mjs.map +1 -0
- package/dist/components/table/useTableSort.cjs +2 -0
- package/dist/components/table/useTableSort.cjs.map +1 -0
- package/dist/components/table/useTableSort.mjs +58 -0
- package/dist/components/table/useTableSort.mjs.map +1 -0
- package/dist/hooks/useActiveDescendant.cjs +1 -1
- package/dist/hooks/useActiveDescendant.cjs.map +1 -1
- package/dist/hooks/useActiveDescendant.mjs +33 -25
- package/dist/hooks/useActiveDescendant.mjs.map +1 -1
- package/dist/hooks/useCollapsePresence.cjs +2 -0
- package/dist/hooks/useCollapsePresence.cjs.map +1 -0
- package/dist/hooks/useCollapsePresence.mjs +21 -0
- package/dist/hooks/useCollapsePresence.mjs.map +1 -0
- package/dist/hooks/useFocusBeforeClose.cjs +2 -0
- package/dist/hooks/useFocusBeforeClose.cjs.map +1 -0
- package/dist/hooks/useFocusBeforeClose.mjs +33 -0
- package/dist/hooks/useFocusBeforeClose.mjs.map +1 -0
- package/dist/hooks/useListbox.cjs +1 -1
- package/dist/hooks/useListbox.cjs.map +1 -1
- package/dist/hooks/useListbox.mjs +140 -130
- package/dist/hooks/useListbox.mjs.map +1 -1
- package/dist/hooks/useMotion.cjs +2 -0
- package/dist/hooks/useMotion.cjs.map +1 -0
- package/dist/hooks/useMotion.mjs +14 -0
- package/dist/hooks/useMotion.mjs.map +1 -0
- package/dist/hooks/usePresenceGroup.cjs +2 -0
- package/dist/hooks/usePresenceGroup.cjs.map +1 -0
- package/dist/hooks/usePresenceGroup.mjs +68 -0
- package/dist/hooks/usePresenceGroup.mjs.map +1 -0
- package/dist/hooks/useRovingTabIndex.cjs +1 -1
- package/dist/hooks/useRovingTabIndex.cjs.map +1 -1
- package/dist/hooks/useRovingTabIndex.mjs +1 -1
- package/dist/hooks/useRovingTabIndex.mjs.map +1 -1
- package/dist/hooks/useSelection.cjs +2 -0
- package/dist/hooks/useSelection.cjs.map +1 -0
- package/dist/hooks/useSelection.mjs +57 -0
- package/dist/hooks/useSelection.mjs.map +1 -0
- package/dist/hooks/useVirtualWindow.cjs +2 -0
- package/dist/hooks/useVirtualWindow.cjs.map +1 -0
- package/dist/hooks/useVirtualWindow.mjs +102 -0
- package/dist/hooks/useVirtualWindow.mjs.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +2249 -179
- package/dist/index.d.ts +2249 -179
- package/dist/index.mjs +147 -135
- package/dist/lib/classNames.cjs +1 -1
- package/dist/lib/classNames.cjs.map +1 -1
- package/dist/lib/classNames.mjs +125 -95
- package/dist/lib/classNames.mjs.map +1 -1
- package/dist/lib/columnSizing.cjs +2 -0
- package/dist/lib/columnSizing.cjs.map +1 -0
- package/dist/lib/columnSizing.mjs +27 -0
- package/dist/lib/columnSizing.mjs.map +1 -0
- package/dist/lib/flatTree.cjs +2 -0
- package/dist/lib/flatTree.cjs.map +1 -0
- package/dist/lib/flatTree.mjs +118 -0
- package/dist/lib/flatTree.mjs.map +1 -0
- package/dist/lib/motion.cjs +2 -0
- package/dist/lib/motion.cjs.map +1 -0
- package/dist/lib/motion.mjs +43 -0
- package/dist/lib/motion.mjs.map +1 -0
- package/dist/lib/selection.cjs +2 -0
- package/dist/lib/selection.cjs.map +1 -0
- package/dist/lib/selection.mjs +28 -0
- package/dist/lib/selection.mjs.map +1 -0
- package/dist/lib/treeCascade.cjs +2 -0
- package/dist/lib/treeCascade.cjs.map +1 -0
- package/dist/lib/treeCascade.mjs +52 -0
- package/dist/lib/treeCascade.mjs.map +1 -0
- package/dist/lib/virtual.cjs +2 -0
- package/dist/lib/virtual.cjs.map +1 -0
- package/dist/lib/virtual.mjs +54 -0
- package/dist/lib/virtual.mjs.map +1 -0
- package/dist/styles.css +1 -1
- package/package.json +2 -1
|
@@ -10,32 +10,34 @@ import { useIsClient as u } from "../../hooks/useIsClient.mjs";
|
|
|
10
10
|
import { usePresence as d } from "../../hooks/usePresence.mjs";
|
|
11
11
|
import { useModalLayer as f } from "../../hooks/useModalLayer.mjs";
|
|
12
12
|
import { Portal as p } from "../portal/Portal.mjs";
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import
|
|
17
|
-
import {
|
|
18
|
-
import
|
|
13
|
+
import { dialogBackdropMotion as m, dialogMotion as h } from "../../lib/motion.mjs";
|
|
14
|
+
import { useMotionClasses as g } from "../../hooks/useMotion.mjs";
|
|
15
|
+
import { getTabbableThrough as ee, usePopoverTabOrder as te } from "./Popover.shared.mjs";
|
|
16
|
+
import { ModalSurfaceContext as _, inertModalTrigger as v, useBackdropPress as ne, useModalClosePart as y, useModalDismiss as re, useModalOpenState as b, useModalOpener as ie, useModalTitle as x, useModalTrigger as S, useModalTriggerPart as C, useModalTriggerSession as w, useOpenInsideWarning as ae, useRaiseOnOpen as oe, useRequiredContext as T, useTitleRegistry as se, useUnnamedModalWarning as ce } from "./Dialog.shared.mjs";
|
|
17
|
+
import { ModalBackdrop as le, ModalCloseButton as ue } from "./Dialog.slots.mjs";
|
|
18
|
+
import * as E from "react";
|
|
19
|
+
import { Fragment as D, jsx as O, jsxs as k } from "react/jsx-runtime";
|
|
20
|
+
import { createPortal as de } from "react-dom";
|
|
19
21
|
//#region src/components/overlays/Dialog.tsx
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
var
|
|
22
|
+
var A = E.createContext(null);
|
|
23
|
+
A.displayName = "DialogContext";
|
|
24
|
+
var j = {
|
|
23
25
|
open: !1,
|
|
24
26
|
requestOpen: () => {},
|
|
25
27
|
modalType: "modal",
|
|
26
|
-
trigger:
|
|
28
|
+
trigger: v,
|
|
27
29
|
finalFocusRef: void 0,
|
|
28
30
|
unmountOnClose: !0,
|
|
29
31
|
contentId: void 0,
|
|
30
32
|
registerContentId: () => () => {}
|
|
31
33
|
};
|
|
32
|
-
function
|
|
33
|
-
return
|
|
34
|
+
function M(e) {
|
|
35
|
+
return T(A, e, "Dialog", () => j);
|
|
34
36
|
}
|
|
35
|
-
var
|
|
36
|
-
let [s, c] =
|
|
37
|
-
|
|
38
|
-
let [p, m] =
|
|
37
|
+
var N = ({ open: e, defaultOpen: t, onOpenChange: n, modalType: r = "modal", finalFocusRef: i, unmountOnClose: a = !0, children: o }) => {
|
|
38
|
+
let [s, c] = b(e, t, n), l = u(), d = s && l, f = S();
|
|
39
|
+
w(f, d);
|
|
40
|
+
let [p, m] = E.useState(void 0), h = E.useCallback((e) => (m(e), () => m((t) => t === e ? void 0 : t)), []), g = E.useMemo(() => ({
|
|
39
41
|
open: d,
|
|
40
42
|
requestOpen: c,
|
|
41
43
|
modalType: r,
|
|
@@ -54,36 +56,36 @@ var A = ({ open: e, defaultOpen: t, onOpenChange: n, modalType: r = "modal", fin
|
|
|
54
56
|
p,
|
|
55
57
|
h
|
|
56
58
|
]);
|
|
57
|
-
return /* @__PURE__ */
|
|
59
|
+
return /* @__PURE__ */ O(A.Provider, {
|
|
58
60
|
value: g,
|
|
59
61
|
children: o
|
|
60
62
|
});
|
|
61
63
|
};
|
|
62
|
-
|
|
63
|
-
var
|
|
64
|
-
let { open: t, requestOpen: n, trigger: r, contentId: i } =
|
|
65
|
-
return
|
|
64
|
+
N.displayName = "Dialog";
|
|
65
|
+
var P = (e) => {
|
|
66
|
+
let { open: t, requestOpen: n, trigger: r, contentId: i } = M("Dialog.Trigger");
|
|
67
|
+
return C({
|
|
66
68
|
open: t,
|
|
67
69
|
requestOpen: n,
|
|
68
70
|
trigger: r,
|
|
69
71
|
controlsId: i
|
|
70
72
|
}, e, "Dialog.Trigger");
|
|
71
73
|
};
|
|
72
|
-
|
|
73
|
-
var
|
|
74
|
-
let { requestOpen: t } =
|
|
75
|
-
return
|
|
74
|
+
P.displayName = "DialogTrigger";
|
|
75
|
+
var F = (e) => {
|
|
76
|
+
let { requestOpen: t } = M("Dialog.Close");
|
|
77
|
+
return y(t, e, "Dialog.Close");
|
|
76
78
|
};
|
|
77
|
-
|
|
79
|
+
F.displayName = "DialogClose";
|
|
78
80
|
var fe = {
|
|
79
81
|
small: "max-w-[400px]",
|
|
80
82
|
medium: "max-w-[600px]",
|
|
81
83
|
large: "max-w-[940px]",
|
|
82
84
|
full: "m-0 h-dvh max-h-none max-w-none rounded-none border-0 pt-[max(1.5rem,env(safe-area-inset-top))] pb-[max(1.5rem,env(safe-area-inset-bottom))] pl-[max(1.5rem,env(safe-area-inset-left))] pr-[max(1.5rem,env(safe-area-inset-right))]"
|
|
83
|
-
}, pe = "top-[max(1rem,env(safe-area-inset-top))] end-[max(1rem,env(safe-area-inset-right))] wave-rtl:end-[max(1rem,env(safe-area-inset-left))]", me = 8, he = "Dialog.Content:backdrop-ignored", ge = "Dialog.Content: `backdrop`
|
|
85
|
+
}, pe = "top-[max(1rem,env(safe-area-inset-top))] end-[max(1rem,env(safe-area-inset-right))] wave-rtl:end-[max(1rem,env(safe-area-inset-left))]", me = 8, he = "Dialog.Content:backdrop-ignored", ge = "Dialog.Content: `backdrop` and `backdropMotion` are ignored with `modalType=\"non-modal\"`: a non-modal dialog has no backdrop, so the page behind it stays usable.", _e = "Dialog.Content:non-modal-full", ve = "Dialog.Content: `size=\"full\"` with `modalType=\"non-modal\"` covers the whole page while leaving it usable, so Tab reaches controls hidden behind the dialog. Use `modalType=\"modal\"`, or a smaller size with the page's controls kept clear of it.";
|
|
84
86
|
function ye(e) {
|
|
85
|
-
let [t, n] =
|
|
86
|
-
return
|
|
87
|
+
let [t, n] = E.useState(null);
|
|
88
|
+
return E.useLayoutEffect(() => {
|
|
87
89
|
if (!e || typeof ResizeObserver > "u") return;
|
|
88
90
|
let t = new ResizeObserver((t) => {
|
|
89
91
|
let r = t[t.length - 1];
|
|
@@ -94,92 +96,96 @@ function ye(e) {
|
|
|
94
96
|
};
|
|
95
97
|
}, [e]), t;
|
|
96
98
|
}
|
|
97
|
-
var
|
|
98
|
-
let { open:
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
99
|
+
var I = ({ title: o, size: u = "medium", backdrop: v, motion: y, backdropMotion: b, closeButton: x, titleAction: S, closeLabel: C = "Close", children: w, className: T, style: D, id: de, onKeyDown: A, ref: j, ...N }) => {
|
|
100
|
+
let { open: P, requestOpen: F, modalType: I, trigger: L, finalFocusRef: R, unmountOnClose: z, registerContentId: B } = M("Dialog.Content"), { isMounted: V, ref: be, presenceProps: H } = d(P, {
|
|
101
|
+
appear: !0,
|
|
102
|
+
unmountOnExit: z
|
|
103
|
+
}), xe = H["data-presence"] === "exiting", Se = g(y, h, T), Ce = g(b, m), we = !z, Te = c("wave-dialog"), U = de ?? Te, W = c("wave-dialog-title"), G = se(), [K, Ee] = E.useState(null), q = E.useRef(null), De = E.useCallback((e) => {
|
|
104
|
+
q.current = e, Ee(e);
|
|
105
|
+
}, []), Oe = E.useCallback((e) => e ? B(U) : void 0, [B, U]), ke = l(j, De, Oe, be), J = E.useRef(null);
|
|
106
|
+
oe(P, we, J);
|
|
107
|
+
let Y = ne(q, I !== "alert"), Ae = re(F, "Dialog", Y.afterOutsidePress), X = f({
|
|
108
|
+
open: P,
|
|
109
|
+
modalType: I,
|
|
110
|
+
onDismiss: Ae,
|
|
111
|
+
refs: [q],
|
|
112
|
+
container: K,
|
|
113
|
+
triggerRef: L.focusRef,
|
|
114
|
+
finalFocusRef: R
|
|
115
|
+
}), Z = I === "non-modal", je = ie(P, L, K), Me = te({
|
|
116
|
+
enabled: P && Z,
|
|
117
|
+
surface: K,
|
|
118
|
+
anchorRef: je,
|
|
119
|
+
getPreviousStop: ee
|
|
115
120
|
});
|
|
116
|
-
|
|
117
|
-
let
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
}, [
|
|
121
|
-
let
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
}, [
|
|
125
|
-
let [
|
|
126
|
-
...
|
|
127
|
-
setFooterHeight:
|
|
128
|
-
titleActionsOutlet:
|
|
129
|
-
}), [
|
|
130
|
-
if (!
|
|
131
|
-
let
|
|
132
|
-
"--wave-dialog-title-end-padding":
|
|
133
|
-
...
|
|
121
|
+
ce(P ? K : null, G.hasTitle, "Dialog.Content", "Dialog.Title"), ae(P, we, X.layerId, "Dialog");
|
|
122
|
+
let Q = Z && (v != null && typeof v != "boolean" || b !== void 0);
|
|
123
|
+
E.useEffect(() => {
|
|
124
|
+
Q && t(he, ge);
|
|
125
|
+
}, [Q]);
|
|
126
|
+
let Ne = P && Z && u === "full";
|
|
127
|
+
E.useEffect(() => {
|
|
128
|
+
Ne && t(_e, ve);
|
|
129
|
+
}, [Ne]);
|
|
130
|
+
let [Pe, Fe] = E.useState(null), [Ie, Le] = E.useState(null), $ = ye(P || xe ? Pe : null), [Re, ze] = E.useState(null), Be = E.useMemo(() => ({
|
|
131
|
+
...G.context,
|
|
132
|
+
setFooterHeight: ze,
|
|
133
|
+
titleActionsOutlet: Ie
|
|
134
|
+
}), [G.context, Ie]);
|
|
135
|
+
if (!V) return null;
|
|
136
|
+
let Ve = r(o), He = $ === null ? void 0 : $ > 0 ? `${$ + me}px` : "0px", Ue = He === void 0 ? D : {
|
|
137
|
+
"--wave-dialog-title-end-padding": He,
|
|
138
|
+
...D
|
|
134
139
|
};
|
|
135
|
-
return /* @__PURE__ */
|
|
136
|
-
ref:
|
|
137
|
-
layerId:
|
|
138
|
-
children: [!
|
|
139
|
-
backdrop:
|
|
140
|
+
return /* @__PURE__ */ k(p, {
|
|
141
|
+
ref: J,
|
|
142
|
+
layerId: X.layerId,
|
|
143
|
+
children: [!Z && /* @__PURE__ */ O(le, {
|
|
144
|
+
backdrop: v,
|
|
140
145
|
className: a.backdrop,
|
|
141
|
-
layerId:
|
|
142
|
-
open:
|
|
143
|
-
onMouseDown:
|
|
144
|
-
presenceProps:
|
|
145
|
-
|
|
146
|
-
|
|
146
|
+
layerId: X.layerId,
|
|
147
|
+
open: P,
|
|
148
|
+
onMouseDown: Y.onMouseDown,
|
|
149
|
+
presenceProps: H,
|
|
150
|
+
motionClassName: Ce
|
|
151
|
+
}), /* @__PURE__ */ O("div", {
|
|
152
|
+
...H,
|
|
147
153
|
className: e(a.positioner, "pointer-events-none fixed inset-0 flex items-center justify-center"),
|
|
148
|
-
children: /* @__PURE__ */
|
|
149
|
-
ref:
|
|
150
|
-
role:
|
|
151
|
-
id:
|
|
152
|
-
"aria-labelledby":
|
|
154
|
+
children: /* @__PURE__ */ O("div", {
|
|
155
|
+
ref: ke,
|
|
156
|
+
role: I === "alert" ? "alertdialog" : "dialog",
|
|
157
|
+
id: U,
|
|
158
|
+
"aria-labelledby": Ve ? W : G.titleId,
|
|
153
159
|
tabIndex: -1,
|
|
154
|
-
"data-modal-type":
|
|
160
|
+
"data-modal-type": I,
|
|
155
161
|
"data-size": u,
|
|
156
|
-
...
|
|
157
|
-
"data-presence":
|
|
158
|
-
style:
|
|
159
|
-
onKeyDown: i(
|
|
160
|
-
className: e(a.root, "pointer-events-auto relative m-4 flex min-w-0 max-h-[calc(100dvh-2rem)] w-full flex-col rounded-lg border border-border bg-background p-6 text-foreground shadow-64", fe[u],
|
|
161
|
-
children: /* @__PURE__ */
|
|
162
|
-
value:
|
|
162
|
+
...N,
|
|
163
|
+
"data-presence": H["data-presence"],
|
|
164
|
+
style: Ue,
|
|
165
|
+
onKeyDown: i(A, Me),
|
|
166
|
+
className: e(a.root, "pointer-events-auto relative m-4 flex min-w-0 max-h-[calc(100dvh-2rem)] w-full flex-col rounded-lg border border-border bg-background p-6 text-foreground shadow-64", fe[u], Se, T),
|
|
167
|
+
children: /* @__PURE__ */ k(_.Provider, {
|
|
168
|
+
value: Be,
|
|
163
169
|
children: [
|
|
164
|
-
|
|
165
|
-
id:
|
|
170
|
+
Ve && /* @__PURE__ */ O("h2", {
|
|
171
|
+
id: W,
|
|
166
172
|
className: e(s.root, "pe-[var(--wave-dialog-title-end-padding,2rem)] text-subtitle-1 font-semibold"),
|
|
167
173
|
children: o
|
|
168
174
|
}),
|
|
169
|
-
/* @__PURE__ */
|
|
170
|
-
ref:
|
|
175
|
+
/* @__PURE__ */ k("div", {
|
|
176
|
+
ref: Fe,
|
|
171
177
|
className: e(a.titleActions, "absolute end-4 top-4 flex items-start gap-1", u === "full" && pe),
|
|
172
178
|
children: [
|
|
173
|
-
r(
|
|
174
|
-
/* @__PURE__ */
|
|
175
|
-
ref:
|
|
179
|
+
r(S) ? n(S, "span", e(a.titleAction, "inline-flex items-center gap-1")) : null,
|
|
180
|
+
/* @__PURE__ */ O("span", {
|
|
181
|
+
ref: Le,
|
|
176
182
|
className: "contents"
|
|
177
183
|
}),
|
|
178
|
-
/* @__PURE__ */
|
|
184
|
+
/* @__PURE__ */ O(ue, {
|
|
179
185
|
componentName: "Dialog.Content",
|
|
180
|
-
closeButton:
|
|
181
|
-
closeLabel:
|
|
182
|
-
onClose: (e) =>
|
|
186
|
+
closeButton: x,
|
|
187
|
+
closeLabel: C,
|
|
188
|
+
onClose: (e) => F(!1, {
|
|
183
189
|
reason: "close-button",
|
|
184
190
|
event: e
|
|
185
191
|
}),
|
|
@@ -187,10 +193,10 @@ var N = ({ title: o, size: u = "medium", backdrop: _, closeButton: te, titleActi
|
|
|
187
193
|
})
|
|
188
194
|
]
|
|
189
195
|
}),
|
|
190
|
-
/* @__PURE__ */
|
|
196
|
+
/* @__PURE__ */ O("div", {
|
|
191
197
|
className: e(a.body, "-mx-1 mt-1 min-h-0 flex-1 overflow-y-auto scroll-pb-(--wave-dialog-footer-height) p-1 text-body-1"),
|
|
192
|
-
style:
|
|
193
|
-
children:
|
|
198
|
+
style: Re === null ? void 0 : { "--wave-dialog-footer-height": `${Re}px` },
|
|
199
|
+
children: w
|
|
194
200
|
})
|
|
195
201
|
]
|
|
196
202
|
})
|
|
@@ -198,9 +204,9 @@ var N = ({ title: o, size: u = "medium", backdrop: _, closeButton: te, titleActi
|
|
|
198
204
|
})]
|
|
199
205
|
});
|
|
200
206
|
};
|
|
201
|
-
|
|
202
|
-
var
|
|
203
|
-
let { id: u, ref: d } =
|
|
207
|
+
I.displayName = "DialogContent";
|
|
208
|
+
var L = ({ id: t, action: i, className: a, children: o, ref: c, ...l }) => {
|
|
209
|
+
let { id: u, ref: d } = x("Dialog.Title", "Dialog.Content", t, c), f = E.useContext(_)?.titleActionsOutlet, p = /* @__PURE__ */ O("h2", {
|
|
204
210
|
...l,
|
|
205
211
|
id: u,
|
|
206
212
|
ref: d,
|
|
@@ -209,14 +215,14 @@ var P = ({ id: t, action: i, className: a, children: o, ref: c, ...l }) => {
|
|
|
209
215
|
});
|
|
210
216
|
if (!r(i)) return p;
|
|
211
217
|
let m = n(i, "span", e(s.action, "inline-flex items-center gap-1"));
|
|
212
|
-
return /* @__PURE__ */
|
|
218
|
+
return /* @__PURE__ */ k(D, { children: [p, f === void 0 ? m : f && de(m, f)] });
|
|
213
219
|
};
|
|
214
|
-
|
|
215
|
-
var
|
|
216
|
-
let s =
|
|
217
|
-
return
|
|
220
|
+
L.displayName = "DialogTitle";
|
|
221
|
+
var R = "sticky -bottom-1 z-10 -mx-1 -mb-1 mt-6 flex justify-end gap-2 bg-background px-1 pb-2 pt-3", z = "mt-6 flex justify-end gap-2", B = ({ children: n, className: r, ref: i, ...a }) => {
|
|
222
|
+
let s = E.useContext(_), c = s === null, u = s?.setFooterHeight, [d, f] = E.useState(null), p = l(i, f);
|
|
223
|
+
return E.useEffect(() => {
|
|
218
224
|
c && t("Dialog.Footer:outside-content", "Dialog.Footer must be rendered inside Dialog.Content. Outside it, the footer stays on the page while the dialog is closed.");
|
|
219
|
-
}, [c]),
|
|
225
|
+
}, [c]), E.useLayoutEffect(() => {
|
|
220
226
|
if (!d || !u || typeof ResizeObserver > "u") return;
|
|
221
227
|
let e = new ResizeObserver((e) => {
|
|
222
228
|
let t = e[e.length - 1];
|
|
@@ -225,22 +231,22 @@ var F = "sticky -bottom-1 z-10 -mx-1 -mb-1 mt-6 flex justify-end gap-2 bg-backgr
|
|
|
225
231
|
return e.observe(d, { box: "border-box" }), () => {
|
|
226
232
|
e.disconnect(), u(null);
|
|
227
233
|
};
|
|
228
|
-
}, [d, u]), /* @__PURE__ */
|
|
234
|
+
}, [d, u]), /* @__PURE__ */ O("div", {
|
|
229
235
|
ref: p,
|
|
230
236
|
...a,
|
|
231
|
-
className: e(o.root, u ?
|
|
237
|
+
className: e(o.root, u ? R : z, r),
|
|
232
238
|
children: n
|
|
233
239
|
});
|
|
234
240
|
};
|
|
235
|
-
|
|
236
|
-
var
|
|
237
|
-
Trigger:
|
|
238
|
-
Content:
|
|
239
|
-
Footer:
|
|
240
|
-
Title:
|
|
241
|
-
Close:
|
|
241
|
+
B.displayName = "DialogFooter";
|
|
242
|
+
var V = /* @__PURE__ */ Object.assign(N, {
|
|
243
|
+
Trigger: P,
|
|
244
|
+
Content: I,
|
|
245
|
+
Footer: B,
|
|
246
|
+
Title: L,
|
|
247
|
+
Close: F
|
|
242
248
|
});
|
|
243
249
|
//#endregion
|
|
244
|
-
export {
|
|
250
|
+
export { V as Dialog, F as DialogClose, I as DialogContent, B as DialogFooter, L as DialogTitle, P as DialogTrigger };
|
|
245
251
|
|
|
246
252
|
//# sourceMappingURL=Dialog.mjs.map
|