@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.
Files changed (265) hide show
  1. package/README.md +413 -53
  2. package/dist/components/data-display/InfoButton.cjs +1 -1
  3. package/dist/components/data-display/InfoButton.cjs.map +1 -1
  4. package/dist/components/data-display/InfoButton.mjs +90 -82
  5. package/dist/components/data-display/InfoButton.mjs.map +1 -1
  6. package/dist/components/data-display/InfoLabel.cjs +1 -1
  7. package/dist/components/data-display/InfoLabel.cjs.map +1 -1
  8. package/dist/components/data-display/InfoLabel.mjs +19 -18
  9. package/dist/components/data-display/InfoLabel.mjs.map +1 -1
  10. package/dist/components/data-display/List.cjs +1 -1
  11. package/dist/components/data-display/List.cjs.map +1 -1
  12. package/dist/components/data-display/List.mjs +405 -219
  13. package/dist/components/data-display/List.mjs.map +1 -1
  14. package/dist/components/data-display/List.registry.cjs +1 -1
  15. package/dist/components/data-display/List.registry.cjs.map +1 -1
  16. package/dist/components/data-display/List.registry.mjs +12 -6
  17. package/dist/components/data-display/List.registry.mjs.map +1 -1
  18. package/dist/components/feedback/MessageBarGroup.cjs +2 -0
  19. package/dist/components/feedback/MessageBarGroup.cjs.map +1 -0
  20. package/dist/components/feedback/MessageBarGroup.mjs +63 -0
  21. package/dist/components/feedback/MessageBarGroup.mjs.map +1 -0
  22. package/dist/components/feedback/ProgressBar.cjs +1 -1
  23. package/dist/components/feedback/ProgressBar.cjs.map +1 -1
  24. package/dist/components/feedback/ProgressBar.mjs +41 -39
  25. package/dist/components/feedback/ProgressBar.mjs.map +1 -1
  26. package/dist/components/feedback/Toaster.cjs +1 -1
  27. package/dist/components/feedback/Toaster.cjs.map +1 -1
  28. package/dist/components/feedback/Toaster.mjs +222 -216
  29. package/dist/components/feedback/Toaster.mjs.map +1 -1
  30. package/dist/components/input/Combobox.cjs +1 -1
  31. package/dist/components/input/Combobox.cjs.map +1 -1
  32. package/dist/components/input/Combobox.mjs +163 -148
  33. package/dist/components/input/Combobox.mjs.map +1 -1
  34. package/dist/components/input/Dropdown.cjs +1 -1
  35. package/dist/components/input/Dropdown.cjs.map +1 -1
  36. package/dist/components/input/Dropdown.mjs +132 -117
  37. package/dist/components/input/Dropdown.mjs.map +1 -1
  38. package/dist/components/input/Listbox.cjs +1 -1
  39. package/dist/components/input/Listbox.cjs.map +1 -1
  40. package/dist/components/input/Listbox.mjs +90 -78
  41. package/dist/components/input/Listbox.mjs.map +1 -1
  42. package/dist/components/input/Option.cjs +1 -1
  43. package/dist/components/input/Option.cjs.map +1 -1
  44. package/dist/components/input/Option.data.cjs +2 -0
  45. package/dist/components/input/Option.data.cjs.map +1 -0
  46. package/dist/components/input/Option.data.mjs +114 -0
  47. package/dist/components/input/Option.data.mjs.map +1 -0
  48. package/dist/components/input/Option.mjs +21 -17
  49. package/dist/components/input/Option.mjs.map +1 -1
  50. package/dist/components/layout/Accordion.cjs +1 -1
  51. package/dist/components/layout/Accordion.cjs.map +1 -1
  52. package/dist/components/layout/Accordion.mjs +124 -109
  53. package/dist/components/layout/Accordion.mjs.map +1 -1
  54. package/dist/components/layout/Carousel.cjs +1 -1
  55. package/dist/components/layout/Carousel.cjs.map +1 -1
  56. package/dist/components/layout/Carousel.mjs +207 -193
  57. package/dist/components/layout/Carousel.mjs.map +1 -1
  58. package/dist/components/layout/FlatTree.cjs +2 -0
  59. package/dist/components/layout/FlatTree.cjs.map +1 -0
  60. package/dist/components/layout/FlatTree.context.cjs +2 -0
  61. package/dist/components/layout/FlatTree.context.cjs.map +1 -0
  62. package/dist/components/layout/FlatTree.context.mjs +20 -0
  63. package/dist/components/layout/FlatTree.context.mjs.map +1 -0
  64. package/dist/components/layout/FlatTree.item.cjs +2 -0
  65. package/dist/components/layout/FlatTree.item.cjs.map +1 -0
  66. package/dist/components/layout/FlatTree.item.mjs +90 -0
  67. package/dist/components/layout/FlatTree.item.mjs.map +1 -0
  68. package/dist/components/layout/FlatTree.mjs +276 -0
  69. package/dist/components/layout/FlatTree.mjs.map +1 -0
  70. package/dist/components/layout/TabList.cjs +1 -1
  71. package/dist/components/layout/TabList.cjs.map +1 -1
  72. package/dist/components/layout/TabList.mjs +149 -108
  73. package/dist/components/layout/TabList.mjs.map +1 -1
  74. package/dist/components/layout/Tree.cjs.map +1 -1
  75. package/dist/components/layout/Tree.context.cjs +1 -1
  76. package/dist/components/layout/Tree.context.cjs.map +1 -1
  77. package/dist/components/layout/Tree.context.mjs +2 -1
  78. package/dist/components/layout/Tree.context.mjs.map +1 -1
  79. package/dist/components/layout/Tree.core.cjs +1 -1
  80. package/dist/components/layout/Tree.core.cjs.map +1 -1
  81. package/dist/components/layout/Tree.core.mjs +162 -148
  82. package/dist/components/layout/Tree.core.mjs.map +1 -1
  83. package/dist/components/layout/Tree.mjs.map +1 -1
  84. package/dist/components/layout/Tree.selection.cjs +1 -1
  85. package/dist/components/layout/Tree.selection.cjs.map +1 -1
  86. package/dist/components/layout/Tree.selection.mjs +11 -57
  87. package/dist/components/layout/Tree.selection.mjs.map +1 -1
  88. package/dist/components/layout/useFlatTree.cjs +2 -0
  89. package/dist/components/layout/useFlatTree.cjs.map +1 -0
  90. package/dist/components/layout/useFlatTree.mjs +83 -0
  91. package/dist/components/layout/useFlatTree.mjs.map +1 -0
  92. package/dist/components/navigation/Menu.popover.cjs +1 -1
  93. package/dist/components/navigation/Menu.popover.cjs.map +1 -1
  94. package/dist/components/navigation/Menu.popover.mjs +154 -168
  95. package/dist/components/navigation/Menu.popover.mjs.map +1 -1
  96. package/dist/components/navigation/Nav.cjs +1 -1
  97. package/dist/components/navigation/Nav.cjs.map +1 -1
  98. package/dist/components/navigation/Nav.mjs +156 -136
  99. package/dist/components/navigation/Nav.mjs.map +1 -1
  100. package/dist/components/navigation/NavDrawer.cjs +1 -1
  101. package/dist/components/navigation/NavDrawer.cjs.map +1 -1
  102. package/dist/components/navigation/NavDrawer.mjs +48 -45
  103. package/dist/components/navigation/NavDrawer.mjs.map +1 -1
  104. package/dist/components/overlays/Dialog.cjs +1 -1
  105. package/dist/components/overlays/Dialog.cjs.map +1 -1
  106. package/dist/components/overlays/Dialog.mjs +128 -122
  107. package/dist/components/overlays/Dialog.mjs.map +1 -1
  108. package/dist/components/overlays/Dialog.slots.cjs +1 -1
  109. package/dist/components/overlays/Dialog.slots.cjs.map +1 -1
  110. package/dist/components/overlays/Dialog.slots.mjs +12 -12
  111. package/dist/components/overlays/Dialog.slots.mjs.map +1 -1
  112. package/dist/components/overlays/Drawer.cjs.map +1 -1
  113. package/dist/components/overlays/Drawer.mjs.map +1 -1
  114. package/dist/components/overlays/Drawer.panel.cjs +1 -1
  115. package/dist/components/overlays/Drawer.panel.cjs.map +1 -1
  116. package/dist/components/overlays/Drawer.panel.mjs +97 -81
  117. package/dist/components/overlays/Drawer.panel.mjs.map +1 -1
  118. package/dist/components/overlays/Drawer.root.cjs +1 -1
  119. package/dist/components/overlays/Drawer.root.cjs.map +1 -1
  120. package/dist/components/overlays/Drawer.root.mjs +34 -31
  121. package/dist/components/overlays/Drawer.root.mjs.map +1 -1
  122. package/dist/components/overlays/Popover.cjs +1 -1
  123. package/dist/components/overlays/Popover.cjs.map +1 -1
  124. package/dist/components/overlays/Popover.mjs +231 -216
  125. package/dist/components/overlays/Popover.mjs.map +1 -1
  126. package/dist/components/overlays/TeachingPopover.cjs.map +1 -1
  127. package/dist/components/overlays/TeachingPopover.mjs.map +1 -1
  128. package/dist/components/overlays/TeachingPopover.parts.cjs +1 -1
  129. package/dist/components/overlays/TeachingPopover.parts.cjs.map +1 -1
  130. package/dist/components/overlays/TeachingPopover.parts.mjs +199 -177
  131. package/dist/components/overlays/TeachingPopover.parts.mjs.map +1 -1
  132. package/dist/components/overlays/TeachingPopover.root.cjs +1 -1
  133. package/dist/components/overlays/TeachingPopover.root.cjs.map +1 -1
  134. package/dist/components/overlays/TeachingPopover.root.mjs +93 -92
  135. package/dist/components/overlays/TeachingPopover.root.mjs.map +1 -1
  136. package/dist/components/overlays/Tooltip.cjs +1 -1
  137. package/dist/components/overlays/Tooltip.cjs.map +1 -1
  138. package/dist/components/overlays/Tooltip.mjs +66 -61
  139. package/dist/components/overlays/Tooltip.mjs.map +1 -1
  140. package/dist/components/provider/WaveProvider.cjs +1 -1
  141. package/dist/components/provider/WaveProvider.cjs.map +1 -1
  142. package/dist/components/provider/WaveProvider.mjs +26 -23
  143. package/dist/components/provider/WaveProvider.mjs.map +1 -1
  144. package/dist/components/table/DataGrid.cjs +1 -1
  145. package/dist/components/table/DataGrid.cjs.map +1 -1
  146. package/dist/components/table/DataGrid.context.cjs +2 -0
  147. package/dist/components/table/DataGrid.context.cjs.map +1 -0
  148. package/dist/components/table/DataGrid.context.mjs +74 -0
  149. package/dist/components/table/DataGrid.context.mjs.map +1 -0
  150. package/dist/components/table/DataGrid.header.cjs +2 -0
  151. package/dist/components/table/DataGrid.header.cjs.map +1 -0
  152. package/dist/components/table/DataGrid.header.mjs +168 -0
  153. package/dist/components/table/DataGrid.header.mjs.map +1 -0
  154. package/dist/components/table/DataGrid.mjs +488 -591
  155. package/dist/components/table/DataGrid.mjs.map +1 -1
  156. package/dist/components/table/DataGrid.sizing.cjs +2 -0
  157. package/dist/components/table/DataGrid.sizing.cjs.map +1 -0
  158. package/dist/components/table/DataGrid.sizing.mjs +187 -0
  159. package/dist/components/table/DataGrid.sizing.mjs.map +1 -0
  160. package/dist/components/table/DataGrid.store.cjs +2 -0
  161. package/dist/components/table/DataGrid.store.cjs.map +1 -0
  162. package/dist/components/table/DataGrid.store.mjs +108 -0
  163. package/dist/components/table/DataGrid.store.mjs.map +1 -0
  164. package/dist/components/table/DataGrid.window.cjs +2 -0
  165. package/dist/components/table/DataGrid.window.cjs.map +1 -0
  166. package/dist/components/table/DataGrid.window.mjs +165 -0
  167. package/dist/components/table/DataGrid.window.mjs.map +1 -0
  168. package/dist/components/table/Table.cjs +1 -1
  169. package/dist/components/table/Table.cjs.map +1 -1
  170. package/dist/components/table/Table.mjs +74 -72
  171. package/dist/components/table/Table.mjs.map +1 -1
  172. package/dist/components/table/Table.resize.cjs +2 -0
  173. package/dist/components/table/Table.resize.cjs.map +1 -0
  174. package/dist/components/table/Table.resize.mjs +98 -0
  175. package/dist/components/table/Table.resize.mjs.map +1 -0
  176. package/dist/components/table/useGridNavigation.cjs +1 -1
  177. package/dist/components/table/useGridNavigation.cjs.map +1 -1
  178. package/dist/components/table/useGridNavigation.mjs +343 -140
  179. package/dist/components/table/useGridNavigation.mjs.map +1 -1
  180. package/dist/components/table/useTableColumnSizing.cjs +2 -0
  181. package/dist/components/table/useTableColumnSizing.cjs.map +1 -0
  182. package/dist/components/table/useTableColumnSizing.mjs +76 -0
  183. package/dist/components/table/useTableColumnSizing.mjs.map +1 -0
  184. package/dist/components/table/useTableFeatures.cjs +2 -0
  185. package/dist/components/table/useTableFeatures.cjs.map +1 -0
  186. package/dist/components/table/useTableFeatures.mjs +110 -0
  187. package/dist/components/table/useTableFeatures.mjs.map +1 -0
  188. package/dist/components/table/useTableSelection.cjs +2 -0
  189. package/dist/components/table/useTableSelection.cjs.map +1 -0
  190. package/dist/components/table/useTableSelection.mjs +39 -0
  191. package/dist/components/table/useTableSelection.mjs.map +1 -0
  192. package/dist/components/table/useTableSort.cjs +2 -0
  193. package/dist/components/table/useTableSort.cjs.map +1 -0
  194. package/dist/components/table/useTableSort.mjs +58 -0
  195. package/dist/components/table/useTableSort.mjs.map +1 -0
  196. package/dist/hooks/useActiveDescendant.cjs +1 -1
  197. package/dist/hooks/useActiveDescendant.cjs.map +1 -1
  198. package/dist/hooks/useActiveDescendant.mjs +33 -25
  199. package/dist/hooks/useActiveDescendant.mjs.map +1 -1
  200. package/dist/hooks/useCollapsePresence.cjs +2 -0
  201. package/dist/hooks/useCollapsePresence.cjs.map +1 -0
  202. package/dist/hooks/useCollapsePresence.mjs +21 -0
  203. package/dist/hooks/useCollapsePresence.mjs.map +1 -0
  204. package/dist/hooks/useFocusBeforeClose.cjs +2 -0
  205. package/dist/hooks/useFocusBeforeClose.cjs.map +1 -0
  206. package/dist/hooks/useFocusBeforeClose.mjs +33 -0
  207. package/dist/hooks/useFocusBeforeClose.mjs.map +1 -0
  208. package/dist/hooks/useListbox.cjs +1 -1
  209. package/dist/hooks/useListbox.cjs.map +1 -1
  210. package/dist/hooks/useListbox.mjs +140 -130
  211. package/dist/hooks/useListbox.mjs.map +1 -1
  212. package/dist/hooks/useMotion.cjs +2 -0
  213. package/dist/hooks/useMotion.cjs.map +1 -0
  214. package/dist/hooks/useMotion.mjs +14 -0
  215. package/dist/hooks/useMotion.mjs.map +1 -0
  216. package/dist/hooks/usePresenceGroup.cjs +2 -0
  217. package/dist/hooks/usePresenceGroup.cjs.map +1 -0
  218. package/dist/hooks/usePresenceGroup.mjs +68 -0
  219. package/dist/hooks/usePresenceGroup.mjs.map +1 -0
  220. package/dist/hooks/useRovingTabIndex.cjs +1 -1
  221. package/dist/hooks/useRovingTabIndex.cjs.map +1 -1
  222. package/dist/hooks/useRovingTabIndex.mjs +1 -1
  223. package/dist/hooks/useRovingTabIndex.mjs.map +1 -1
  224. package/dist/hooks/useSelection.cjs +2 -0
  225. package/dist/hooks/useSelection.cjs.map +1 -0
  226. package/dist/hooks/useSelection.mjs +57 -0
  227. package/dist/hooks/useSelection.mjs.map +1 -0
  228. package/dist/hooks/useVirtualWindow.cjs +2 -0
  229. package/dist/hooks/useVirtualWindow.cjs.map +1 -0
  230. package/dist/hooks/useVirtualWindow.mjs +102 -0
  231. package/dist/hooks/useVirtualWindow.mjs.map +1 -0
  232. package/dist/index.cjs +1 -1
  233. package/dist/index.d.cts +2249 -179
  234. package/dist/index.d.ts +2249 -179
  235. package/dist/index.mjs +147 -135
  236. package/dist/lib/classNames.cjs +1 -1
  237. package/dist/lib/classNames.cjs.map +1 -1
  238. package/dist/lib/classNames.mjs +125 -95
  239. package/dist/lib/classNames.mjs.map +1 -1
  240. package/dist/lib/columnSizing.cjs +2 -0
  241. package/dist/lib/columnSizing.cjs.map +1 -0
  242. package/dist/lib/columnSizing.mjs +27 -0
  243. package/dist/lib/columnSizing.mjs.map +1 -0
  244. package/dist/lib/flatTree.cjs +2 -0
  245. package/dist/lib/flatTree.cjs.map +1 -0
  246. package/dist/lib/flatTree.mjs +118 -0
  247. package/dist/lib/flatTree.mjs.map +1 -0
  248. package/dist/lib/motion.cjs +2 -0
  249. package/dist/lib/motion.cjs.map +1 -0
  250. package/dist/lib/motion.mjs +43 -0
  251. package/dist/lib/motion.mjs.map +1 -0
  252. package/dist/lib/selection.cjs +2 -0
  253. package/dist/lib/selection.cjs.map +1 -0
  254. package/dist/lib/selection.mjs +28 -0
  255. package/dist/lib/selection.mjs.map +1 -0
  256. package/dist/lib/treeCascade.cjs +2 -0
  257. package/dist/lib/treeCascade.cjs.map +1 -0
  258. package/dist/lib/treeCascade.mjs +52 -0
  259. package/dist/lib/treeCascade.mjs.map +1 -0
  260. package/dist/lib/virtual.cjs +2 -0
  261. package/dist/lib/virtual.cjs.map +1 -0
  262. package/dist/lib/virtual.mjs +54 -0
  263. package/dist/lib/virtual.mjs.map +1 -0
  264. package/dist/styles.css +1 -1
  265. 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 { getTabbableThrough as m, usePopoverTabOrder as h } from "./Popover.shared.mjs";
14
- import { ModalSurfaceContext as g, inertModalTrigger as _, useBackdropPress as ee, useModalClosePart as te, useModalDismiss as ne, useModalOpenState as v, useModalOpener as re, useModalTitle as y, useModalTrigger as ie, useModalTriggerPart as ae, useModalTriggerSession as b, useOpenInsideWarning as oe, useRaiseOnOpen as se, useRequiredContext as x, useTitleRegistry as ce, useUnnamedModalWarning as le } from "./Dialog.shared.mjs";
15
- import { ModalBackdrop as ue, ModalCloseButton as de } from "./Dialog.slots.mjs";
16
- import * as S from "react";
17
- import { Fragment as C, jsx as w, jsxs as T } from "react/jsx-runtime";
18
- import { createPortal as E } from "react-dom";
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 D = S.createContext(null);
21
- D.displayName = "DialogContext";
22
- var O = {
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 k(e) {
33
- return x(D, e, "Dialog", () => O);
34
+ function M(e) {
35
+ return T(A, e, "Dialog", () => j);
34
36
  }
35
- var A = ({ open: e, defaultOpen: t, onOpenChange: n, modalType: r = "modal", finalFocusRef: i, unmountOnClose: a = !0, children: o }) => {
36
- let [s, c] = v(e, t, n), l = u(), d = s && l, f = ie();
37
- b(f, d);
38
- let [p, m] = S.useState(void 0), h = S.useCallback((e) => (m(e), () => m((t) => t === e ? void 0 : t)), []), g = S.useMemo(() => ({
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__ */ w(D.Provider, {
59
+ return /* @__PURE__ */ O(A.Provider, {
58
60
  value: g,
59
61
  children: o
60
62
  });
61
63
  };
62
- A.displayName = "Dialog";
63
- var j = (e) => {
64
- let { open: t, requestOpen: n, trigger: r, contentId: i } = k("Dialog.Trigger");
65
- return ae({
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
- j.displayName = "DialogTrigger";
73
- var M = (e) => {
74
- let { requestOpen: t } = k("Dialog.Close");
75
- return te(t, e, "Dialog.Close");
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
- M.displayName = "DialogClose";
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` is 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.";
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] = S.useState(null);
86
- return S.useLayoutEffect(() => {
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 N = ({ title: o, size: u = "medium", backdrop: _, closeButton: te, titleAction: v, closeLabel: y = "Close", children: ie, className: ae, style: b, id: x, onKeyDown: C, ref: E, ...D }) => {
98
- let { open: O, requestOpen: A, modalType: j, trigger: M, finalFocusRef: N, unmountOnClose: P, registerContentId: F } = k("Dialog.Content"), { isMounted: I, ref: L, presenceProps: R } = d(O, { unmountOnExit: P }), z = !P, be = c("wave-dialog"), B = x ?? be, V = c("wave-dialog-title"), H = ce(), [U, xe] = S.useState(null), W = S.useRef(null), Se = S.useCallback((e) => {
99
- W.current = e, xe(e);
100
- }, []), Ce = S.useCallback((e) => e ? F(B) : void 0, [F, B]), we = l(E, Se, Ce, L), G = S.useRef(null);
101
- se(O, z, G);
102
- let K = ee(W, j !== "alert"), Te = ne(A, "Dialog", K.afterOutsidePress), q = f({
103
- open: O,
104
- modalType: j,
105
- onDismiss: Te,
106
- refs: [W],
107
- container: U,
108
- triggerRef: M.focusRef,
109
- finalFocusRef: N
110
- }), J = j === "non-modal", Ee = re(O, M, U), De = h({
111
- enabled: O && J,
112
- surface: U,
113
- anchorRef: Ee,
114
- getPreviousStop: m
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
- le(O ? U : null, H.hasTitle, "Dialog.Content", "Dialog.Title"), oe(O, z, q.layerId, "Dialog");
117
- let Y = J && _ != null && typeof _ != "boolean";
118
- S.useEffect(() => {
119
- Y && t(he, ge);
120
- }, [Y]);
121
- let X = O && J && u === "full";
122
- S.useEffect(() => {
123
- X && t(_e, ve);
124
- }, [X]);
125
- let [Oe, ke] = S.useState(null), [Z, Ae] = S.useState(null), Q = ye(O ? Oe : null), [je, Me] = S.useState(null), Ne = S.useMemo(() => ({
126
- ...H.context,
127
- setFooterHeight: Me,
128
- titleActionsOutlet: Z
129
- }), [H.context, Z]);
130
- if (!I) return null;
131
- let Pe = r(o), $ = Q === null ? void 0 : Q > 0 ? `${Q + me}px` : "0px", Fe = $ === void 0 ? b : {
132
- "--wave-dialog-title-end-padding": $,
133
- ...b
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__ */ T(p, {
136
- ref: G,
137
- layerId: q.layerId,
138
- children: [!J && /* @__PURE__ */ w(ue, {
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: q.layerId,
142
- open: O,
143
- onMouseDown: K.onMouseDown,
144
- presenceProps: R
145
- }), /* @__PURE__ */ w("div", {
146
- ...R,
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__ */ w("div", {
149
- ref: we,
150
- role: j === "alert" ? "alertdialog" : "dialog",
151
- id: B,
152
- "aria-labelledby": Pe ? V : H.titleId,
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": j,
160
+ "data-modal-type": I,
155
161
  "data-size": u,
156
- ...D,
157
- "data-presence": R["data-presence"],
158
- style: Fe,
159
- onKeyDown: i(C, De),
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], ae),
161
- children: /* @__PURE__ */ T(g.Provider, {
162
- value: Ne,
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
- Pe && /* @__PURE__ */ w("h2", {
165
- id: V,
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__ */ T("div", {
170
- ref: ke,
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(v) ? n(v, "span", e(a.titleAction, "inline-flex items-center gap-1")) : null,
174
- /* @__PURE__ */ w("span", {
175
- ref: Ae,
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__ */ w(de, {
184
+ /* @__PURE__ */ O(ue, {
179
185
  componentName: "Dialog.Content",
180
- closeButton: te,
181
- closeLabel: y,
182
- onClose: (e) => A(!1, {
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__ */ w("div", {
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: je === null ? void 0 : { "--wave-dialog-footer-height": `${je}px` },
193
- children: ie
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
- N.displayName = "DialogContent";
202
- var P = ({ id: t, action: i, className: a, children: o, ref: c, ...l }) => {
203
- let { id: u, ref: d } = y("Dialog.Title", "Dialog.Content", t, c), f = S.useContext(g)?.titleActionsOutlet, p = /* @__PURE__ */ w("h2", {
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__ */ T(C, { children: [p, f === void 0 ? m : f && E(m, f)] });
218
+ return /* @__PURE__ */ k(D, { children: [p, f === void 0 ? m : f && de(m, f)] });
213
219
  };
214
- P.displayName = "DialogTitle";
215
- var F = "sticky -bottom-1 z-10 -mx-1 -mb-1 mt-6 flex justify-end gap-2 bg-background px-1 pb-2 pt-3", I = "mt-6 flex justify-end gap-2", L = ({ children: n, className: r, ref: i, ...a }) => {
216
- let s = S.useContext(g), c = s === null, u = s?.setFooterHeight, [d, f] = S.useState(null), p = l(i, f);
217
- return S.useEffect(() => {
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]), S.useLayoutEffect(() => {
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__ */ w("div", {
234
+ }, [d, u]), /* @__PURE__ */ O("div", {
229
235
  ref: p,
230
236
  ...a,
231
- className: e(o.root, u ? F : I, r),
237
+ className: e(o.root, u ? R : z, r),
232
238
  children: n
233
239
  });
234
240
  };
235
- L.displayName = "DialogFooter";
236
- var R = /* @__PURE__ */ Object.assign(A, {
237
- Trigger: j,
238
- Content: N,
239
- Footer: L,
240
- Title: P,
241
- Close: M
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 { R as Dialog, M as DialogClose, N as DialogContent, L as DialogFooter, P as DialogTitle, j as DialogTrigger };
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