@dxos/react-ui 0.8.4-main.5ea62a8 → 0.8.4-main.66e292d

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 (245) hide show
  1. package/dist/lib/browser/{chunk-P333G32W.mjs → chunk-N5GDJTT2.mjs} +632 -299
  2. package/dist/lib/browser/chunk-N5GDJTT2.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +12 -1
  4. package/dist/lib/browser/index.mjs.map +2 -2
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/browser/testing/index.mjs +57 -29
  7. package/dist/lib/browser/testing/index.mjs.map +4 -4
  8. package/dist/lib/node-esm/{chunk-JRCE5UVS.mjs → chunk-SP7VQH72.mjs} +632 -299
  9. package/dist/lib/node-esm/chunk-SP7VQH72.mjs.map +7 -0
  10. package/dist/lib/node-esm/index.mjs +12 -1
  11. package/dist/lib/node-esm/index.mjs.map +2 -2
  12. package/dist/lib/node-esm/meta.json +1 -1
  13. package/dist/lib/node-esm/testing/index.mjs +57 -29
  14. package/dist/lib/node-esm/testing/index.mjs.map +4 -4
  15. package/dist/types/src/components/Avatars/Avatar.stories.d.ts +0 -6
  16. package/dist/types/src/components/Avatars/Avatar.stories.d.ts.map +1 -1
  17. package/dist/types/src/components/Avatars/AvatarGroup.stories.d.ts +0 -6
  18. package/dist/types/src/components/Avatars/AvatarGroup.stories.d.ts.map +1 -1
  19. package/dist/types/src/components/Breadcrumb/Breadcrumb.stories.d.ts +0 -6
  20. package/dist/types/src/components/Breadcrumb/Breadcrumb.stories.d.ts.map +1 -1
  21. package/dist/types/src/components/{Buttons → Button}/Button.d.ts +1 -1
  22. package/dist/types/src/components/Button/Button.d.ts.map +1 -0
  23. package/dist/types/src/components/{Buttons → Button}/Button.stories.d.ts +1 -7
  24. package/dist/types/src/components/Button/Button.stories.d.ts.map +1 -0
  25. package/dist/types/src/components/{Buttons → Button}/IconButton.d.ts +1 -2
  26. package/dist/types/src/components/Button/IconButton.d.ts.map +1 -0
  27. package/dist/types/src/components/{Buttons → Button}/IconButton.stories.d.ts +0 -6
  28. package/dist/types/src/components/Button/IconButton.stories.d.ts.map +1 -0
  29. package/dist/types/src/components/Button/Toggle.d.ts.map +1 -0
  30. package/dist/types/src/components/Button/Toggle.stories.d.ts +16 -0
  31. package/dist/types/src/components/Button/Toggle.stories.d.ts.map +1 -0
  32. package/dist/types/src/components/{Buttons → Button}/ToggleGroup.d.ts +6 -7
  33. package/dist/types/src/components/Button/ToggleGroup.d.ts.map +1 -0
  34. package/dist/types/src/components/{Buttons → Button}/ToggleGroup.stories.d.ts +2 -12
  35. package/dist/types/src/components/Button/ToggleGroup.stories.d.ts.map +1 -0
  36. package/dist/types/src/components/Button/index.d.ts.map +1 -0
  37. package/dist/types/src/components/Clipboard/CopyButton.d.ts +1 -1
  38. package/dist/types/src/components/Clipboard/CopyButton.d.ts.map +1 -1
  39. package/dist/types/src/components/Dialog/AlertDialog.d.ts.map +1 -0
  40. package/dist/types/src/components/{Dialogs → Dialog}/AlertDialog.stories.d.ts +0 -6
  41. package/dist/types/src/components/Dialog/AlertDialog.stories.d.ts.map +1 -0
  42. package/dist/types/src/components/Dialog/Dialog.d.ts.map +1 -0
  43. package/dist/types/src/components/{Dialogs → Dialog}/Dialog.stories.d.ts +0 -1
  44. package/dist/types/src/components/Dialog/Dialog.stories.d.ts.map +1 -0
  45. package/dist/types/src/components/Dialog/index.d.ts.map +1 -0
  46. package/dist/types/src/components/Icon/Icon.d.ts +1 -1
  47. package/dist/types/src/components/Icon/Icon.d.ts.map +1 -1
  48. package/dist/types/src/components/Icon/Icon.stories.d.ts +17 -0
  49. package/dist/types/src/components/Icon/Icon.stories.d.ts.map +1 -0
  50. package/dist/types/src/components/Input/Input.d.ts +0 -2
  51. package/dist/types/src/components/Input/Input.d.ts.map +1 -1
  52. package/dist/types/src/components/Input/Input.stories.d.ts +0 -6
  53. package/dist/types/src/components/Input/Input.stories.d.ts.map +1 -1
  54. package/dist/types/src/components/Link/Link.stories.d.ts +0 -6
  55. package/dist/types/src/components/Link/Link.stories.d.ts.map +1 -1
  56. package/dist/types/src/components/List/List.d.ts.map +1 -0
  57. package/dist/types/src/components/{Lists → List}/List.stories.d.ts +0 -6
  58. package/dist/types/src/components/List/List.stories.d.ts.map +1 -0
  59. package/dist/types/src/components/List/ListDropIndicator.d.ts.map +1 -0
  60. package/dist/types/src/components/List/Tree.d.ts.map +1 -0
  61. package/dist/types/src/components/{Lists → List}/Tree.stories.d.ts +0 -6
  62. package/dist/types/src/components/List/Tree.stories.d.ts.map +1 -0
  63. package/dist/types/src/components/List/TreeDropIndicator.d.ts.map +1 -0
  64. package/dist/types/src/components/{Lists → List}/Treegrid.d.ts.map +1 -1
  65. package/dist/types/src/components/List/Treegrid.stories.d.ts.map +1 -0
  66. package/dist/types/src/components/List/index.d.ts.map +1 -0
  67. package/dist/types/src/components/Main/Main.d.ts +9 -18
  68. package/dist/types/src/components/Main/Main.d.ts.map +1 -1
  69. package/dist/types/src/components/Main/Main.stories.d.ts +1 -2
  70. package/dist/types/src/components/Main/Main.stories.d.ts.map +1 -1
  71. package/dist/types/src/components/Menus/ContextMenu.d.ts.map +1 -1
  72. package/dist/types/src/components/Menus/ContextMenu.stories.d.ts +0 -6
  73. package/dist/types/src/components/Menus/ContextMenu.stories.d.ts.map +1 -1
  74. package/dist/types/src/components/Menus/DropdownMenu.d.ts +7 -7
  75. package/dist/types/src/components/Menus/DropdownMenu.d.ts.map +1 -1
  76. package/dist/types/src/components/Menus/DropdownMenu.stories.d.ts +0 -6
  77. package/dist/types/src/components/Menus/DropdownMenu.stories.d.ts.map +1 -1
  78. package/dist/types/src/components/Message/Message.stories.d.ts +0 -1
  79. package/dist/types/src/components/Message/Message.stories.d.ts.map +1 -1
  80. package/dist/types/src/components/Popover/Popover.d.ts +1 -1
  81. package/dist/types/src/components/Popover/Popover.d.ts.map +1 -1
  82. package/dist/types/src/components/Popover/Popover.stories.d.ts +0 -6
  83. package/dist/types/src/components/Popover/Popover.stories.d.ts.map +1 -1
  84. package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts +0 -6
  85. package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts.map +1 -1
  86. package/dist/types/src/components/ScrollContainer/ScrollContainer.d.ts +37 -0
  87. package/dist/types/src/components/ScrollContainer/ScrollContainer.d.ts.map +1 -0
  88. package/dist/types/src/components/ScrollContainer/ScrollContainer.stories.d.ts +18 -0
  89. package/dist/types/src/components/ScrollContainer/ScrollContainer.stories.d.ts.map +1 -0
  90. package/dist/types/src/components/ScrollContainer/index.d.ts +2 -0
  91. package/dist/types/src/components/ScrollContainer/index.d.ts.map +1 -0
  92. package/dist/types/src/components/Select/Select.d.ts +1 -1
  93. package/dist/types/src/components/Select/Select.d.ts.map +1 -1
  94. package/dist/types/src/components/Select/Select.stories.d.ts +0 -6
  95. package/dist/types/src/components/Select/Select.stories.d.ts.map +1 -1
  96. package/dist/types/src/components/Status/Status.stories.d.ts +0 -6
  97. package/dist/types/src/components/Status/Status.stories.d.ts.map +1 -1
  98. package/dist/types/src/components/Tag/Tag.stories.d.ts +8 -8
  99. package/dist/types/src/components/Tag/Tag.stories.d.ts.map +1 -1
  100. package/dist/types/src/components/Toast/Toast.stories.d.ts +0 -6
  101. package/dist/types/src/components/Toast/Toast.stories.d.ts.map +1 -1
  102. package/dist/types/src/components/Toolbar/Toolbar.d.ts +12 -12
  103. package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -1
  104. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts +0 -6
  105. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts.map +1 -1
  106. package/dist/types/src/components/Tooltip/Tooltip.d.ts +1 -3
  107. package/dist/types/src/components/Tooltip/Tooltip.d.ts.map +1 -1
  108. package/dist/types/src/components/Tooltip/Tooltip.stories.d.ts +0 -6
  109. package/dist/types/src/components/Tooltip/Tooltip.stories.d.ts.map +1 -1
  110. package/dist/types/src/components/index.d.ts +4 -3
  111. package/dist/types/src/components/index.d.ts.map +1 -1
  112. package/dist/types/src/hooks/useSafeArea.d.ts.map +1 -1
  113. package/dist/types/src/hooks/useVisualViewport.d.ts +2 -2
  114. package/dist/types/src/hooks/useVisualViewport.d.ts.map +1 -1
  115. package/dist/types/src/index.d.ts +1 -1
  116. package/dist/types/src/index.d.ts.map +1 -1
  117. package/dist/types/src/playground/Controls.stories.d.ts +0 -6
  118. package/dist/types/src/playground/Controls.stories.d.ts.map +1 -1
  119. package/dist/types/src/playground/Custom.stories.d.ts +1 -2
  120. package/dist/types/src/playground/Custom.stories.d.ts.map +1 -1
  121. package/dist/types/src/playground/Typography.stories.d.ts +0 -6
  122. package/dist/types/src/playground/Typography.stories.d.ts.map +1 -1
  123. package/dist/types/src/testing/decorators/index.d.ts +2 -1
  124. package/dist/types/src/testing/decorators/index.d.ts.map +1 -1
  125. package/dist/types/src/testing/decorators/withLayout.d.ts +15 -0
  126. package/dist/types/src/testing/decorators/withLayout.d.ts.map +1 -0
  127. package/dist/types/src/testing/decorators/{withSurfaceVariantsLayout.d.ts → withLayoutVariants.d.ts} +2 -2
  128. package/dist/types/src/testing/decorators/withLayoutVariants.d.ts.map +1 -0
  129. package/dist/types/src/testing/decorators/withTheme.d.ts +3 -0
  130. package/dist/types/src/testing/decorators/withTheme.d.ts.map +1 -1
  131. package/dist/types/src/util/domino.d.ts +18 -0
  132. package/dist/types/src/util/domino.d.ts.map +1 -0
  133. package/dist/types/src/util/index.d.ts +2 -0
  134. package/dist/types/src/util/index.d.ts.map +1 -1
  135. package/dist/types/src/util/usePx.d.ts +8 -0
  136. package/dist/types/src/util/usePx.d.ts.map +1 -0
  137. package/dist/types/tsconfig.tsbuildinfo +1 -1
  138. package/package.json +24 -23
  139. package/src/components/Avatars/Avatar.stories.tsx +0 -2
  140. package/src/components/Avatars/AvatarGroup.stories.tsx +0 -3
  141. package/src/components/Breadcrumb/Breadcrumb.stories.tsx +1 -4
  142. package/src/components/{Buttons → Button}/Button.stories.tsx +3 -5
  143. package/src/components/{Buttons → Button}/IconButton.stories.tsx +0 -3
  144. package/src/components/{Buttons → Button}/IconButton.tsx +14 -13
  145. package/src/components/{Buttons → Button}/Toggle.stories.tsx +5 -7
  146. package/src/components/{Buttons → Button}/ToggleGroup.stories.tsx +0 -3
  147. package/src/components/{Buttons → Button}/ToggleGroup.tsx +14 -1
  148. package/src/components/Clipboard/CopyButton.tsx +1 -1
  149. package/src/components/{Dialogs → Dialog}/AlertDialog.stories.tsx +1 -4
  150. package/src/components/{Dialogs → Dialog}/Dialog.stories.tsx +6 -4
  151. package/src/components/Icon/Icon.stories.tsx +113 -0
  152. package/src/components/Icon/Icon.tsx +1 -1
  153. package/src/components/Input/Input.stories.tsx +0 -3
  154. package/src/components/Input/Input.tsx +3 -3
  155. package/src/components/Link/Link.stories.tsx +0 -3
  156. package/src/components/{Lists → List}/List.stories.tsx +2 -6
  157. package/src/components/{Lists → List}/ListDropIndicator.tsx +1 -1
  158. package/src/components/{Lists → List}/Tree.stories.tsx +0 -3
  159. package/src/components/{Lists → List}/Treegrid.tsx +57 -16
  160. package/src/components/Main/Main.stories.tsx +4 -4
  161. package/src/components/Main/Main.tsx +28 -19
  162. package/src/components/Menus/ContextMenu.stories.tsx +0 -3
  163. package/src/components/Menus/ContextMenu.tsx +1 -0
  164. package/src/components/Menus/DropdownMenu.stories.tsx +1 -4
  165. package/src/components/Menus/DropdownMenu.tsx +37 -8
  166. package/src/components/Message/Message.stories.tsx +0 -2
  167. package/src/components/Popover/Popover.stories.tsx +1 -4
  168. package/src/components/Popover/Popover.tsx +22 -5
  169. package/src/components/ScrollArea/ScrollArea.stories.tsx +1 -4
  170. package/src/components/ScrollContainer/ScrollContainer.stories.tsx +69 -0
  171. package/src/components/ScrollContainer/ScrollContainer.tsx +231 -0
  172. package/src/components/ScrollContainer/index.ts +5 -0
  173. package/src/components/Select/Select.stories.tsx +3 -5
  174. package/src/components/Select/Select.tsx +5 -4
  175. package/src/components/Status/Status.stories.tsx +0 -3
  176. package/src/components/Tag/Tag.stories.tsx +8 -7
  177. package/src/components/Toast/Toast.stories.tsx +1 -4
  178. package/src/components/Toolbar/Toolbar.stories.tsx +2 -7
  179. package/src/components/Toolbar/Toolbar.tsx +18 -6
  180. package/src/components/Tooltip/Tooltip.stories.tsx +1 -4
  181. package/src/components/Tooltip/Tooltip.tsx +2 -1
  182. package/src/components/index.ts +4 -3
  183. package/src/hooks/useSafeArea.ts +3 -2
  184. package/src/hooks/useVisualViewport.ts +4 -4
  185. package/src/index.ts +1 -1
  186. package/src/playground/Controls.stories.tsx +3 -5
  187. package/src/playground/Custom.stories.tsx +9 -20
  188. package/src/playground/Typography.stories.tsx +0 -3
  189. package/src/testing/decorators/index.ts +2 -1
  190. package/src/testing/decorators/withLayout.tsx +56 -0
  191. package/src/testing/decorators/{withSurfaceVariantsLayout.tsx → withLayoutVariants.tsx} +2 -2
  192. package/src/testing/decorators/withTheme.tsx +31 -0
  193. package/src/util/domino.ts +53 -0
  194. package/src/util/index.ts +2 -0
  195. package/src/util/usePx.ts +61 -0
  196. package/dist/lib/browser/chunk-P333G32W.mjs.map +0 -7
  197. package/dist/lib/node-esm/chunk-JRCE5UVS.mjs.map +0 -7
  198. package/dist/types/src/components/Buttons/Button.d.ts.map +0 -1
  199. package/dist/types/src/components/Buttons/Button.stories.d.ts.map +0 -1
  200. package/dist/types/src/components/Buttons/IconButton.d.ts.map +0 -1
  201. package/dist/types/src/components/Buttons/IconButton.stories.d.ts.map +0 -1
  202. package/dist/types/src/components/Buttons/Toggle.d.ts.map +0 -1
  203. package/dist/types/src/components/Buttons/Toggle.stories.d.ts +0 -19
  204. package/dist/types/src/components/Buttons/Toggle.stories.d.ts.map +0 -1
  205. package/dist/types/src/components/Buttons/ToggleGroup.d.ts.map +0 -1
  206. package/dist/types/src/components/Buttons/ToggleGroup.stories.d.ts.map +0 -1
  207. package/dist/types/src/components/Buttons/index.d.ts.map +0 -1
  208. package/dist/types/src/components/Dialogs/AlertDialog.d.ts.map +0 -1
  209. package/dist/types/src/components/Dialogs/AlertDialog.stories.d.ts.map +0 -1
  210. package/dist/types/src/components/Dialogs/Dialog.d.ts.map +0 -1
  211. package/dist/types/src/components/Dialogs/Dialog.stories.d.ts.map +0 -1
  212. package/dist/types/src/components/Dialogs/index.d.ts.map +0 -1
  213. package/dist/types/src/components/Lists/List.d.ts.map +0 -1
  214. package/dist/types/src/components/Lists/List.stories.d.ts.map +0 -1
  215. package/dist/types/src/components/Lists/ListDropIndicator.d.ts.map +0 -1
  216. package/dist/types/src/components/Lists/Tree.d.ts.map +0 -1
  217. package/dist/types/src/components/Lists/Tree.stories.d.ts.map +0 -1
  218. package/dist/types/src/components/Lists/TreeDropIndicator.d.ts.map +0 -1
  219. package/dist/types/src/components/Lists/Treegrid.stories.d.ts.map +0 -1
  220. package/dist/types/src/components/Lists/index.d.ts.map +0 -1
  221. package/dist/types/src/testing/decorators/withSurfaceVariantsLayout.d.ts.map +0 -1
  222. package/src/testing/decorators/withTheme.ts +0 -25
  223. /package/dist/types/src/components/{Buttons → Button}/Toggle.d.ts +0 -0
  224. /package/dist/types/src/components/{Buttons → Button}/index.d.ts +0 -0
  225. /package/dist/types/src/components/{Dialogs → Dialog}/AlertDialog.d.ts +0 -0
  226. /package/dist/types/src/components/{Dialogs → Dialog}/Dialog.d.ts +0 -0
  227. /package/dist/types/src/components/{Dialogs → Dialog}/index.d.ts +0 -0
  228. /package/dist/types/src/components/{Lists → List}/List.d.ts +0 -0
  229. /package/dist/types/src/components/{Lists → List}/ListDropIndicator.d.ts +0 -0
  230. /package/dist/types/src/components/{Lists → List}/Tree.d.ts +0 -0
  231. /package/dist/types/src/components/{Lists → List}/TreeDropIndicator.d.ts +0 -0
  232. /package/dist/types/src/components/{Lists → List}/Treegrid.d.ts +0 -0
  233. /package/dist/types/src/components/{Lists → List}/Treegrid.stories.d.ts +0 -0
  234. /package/dist/types/src/components/{Lists → List}/index.d.ts +0 -0
  235. /package/src/components/{Buttons → Button}/Button.tsx +0 -0
  236. /package/src/components/{Buttons → Button}/Toggle.tsx +0 -0
  237. /package/src/components/{Buttons → Button}/index.ts +0 -0
  238. /package/src/components/{Dialogs → Dialog}/AlertDialog.tsx +0 -0
  239. /package/src/components/{Dialogs → Dialog}/Dialog.tsx +0 -0
  240. /package/src/components/{Dialogs → Dialog}/index.ts +0 -0
  241. /package/src/components/{Lists → List}/List.tsx +0 -0
  242. /package/src/components/{Lists → List}/Tree.tsx +0 -0
  243. /package/src/components/{Lists → List}/TreeDropIndicator.tsx +0 -0
  244. /package/src/components/{Lists → List}/Treegrid.stories.tsx +0 -0
  245. /package/src/components/{Lists → List}/index.ts +0 -0
@@ -1,31 +1,44 @@
1
1
  import {
2
- ThemeProvider
3
- } from "../chunk-P333G32W.mjs";
2
+ ThemeProvider,
3
+ Tooltip
4
+ } from "../chunk-N5GDJTT2.mjs";
4
5
 
5
- // src/testing/decorators/withTheme.ts
6
- import { createElement, useEffect } from "react";
7
- import { defaultTx } from "@dxos/react-ui-theme";
8
- var withTheme = (Story, context) => {
9
- const theme = context?.parameters?.theme || context?.globals?.theme;
10
- useEffect(() => {
11
- document.documentElement.classList[theme === "dark" ? "add" : "remove"]("dark");
12
- }, [
13
- theme
14
- ]);
15
- return createElement(ThemeProvider, {
16
- tx: defaultTx
17
- }, createElement(Story));
6
+ // src/testing/decorators/withLayout.tsx
7
+ import React from "react";
8
+ import { mx } from "@dxos/react-ui-theme";
9
+ var withLayout = (props) => (Story) => {
10
+ if (typeof props === "function") {
11
+ const Container3 = props;
12
+ return /* @__PURE__ */ React.createElement(Container3, null, /* @__PURE__ */ React.createElement(Story, null));
13
+ }
14
+ const Container2 = layouts[props.container] ?? layouts.default;
15
+ return /* @__PURE__ */ React.createElement(Container2, {
16
+ classNames: mx(props.classNames, props.scroll ? "overflow-y-auto" : "overflow-hidden")
17
+ }, /* @__PURE__ */ React.createElement(Story, null));
18
+ };
19
+ var layouts = {
20
+ default: ({ children, classNames }) => /* @__PURE__ */ React.createElement("div", {
21
+ role: "none",
22
+ className: mx(classNames)
23
+ }, children),
24
+ column: ({ children, classNames }) => /* @__PURE__ */ React.createElement("div", {
25
+ role: "none",
26
+ className: "fixed inset-0 flex justify-center overflow-hidden bg-deckSurface"
27
+ }, /* @__PURE__ */ React.createElement("div", {
28
+ role: "none",
29
+ className: mx("flex flex-col is-[40rem] bg-baseSurface", classNames)
30
+ }, children))
18
31
  };
19
32
 
20
- // src/testing/decorators/withSurfaceVariantsLayout.tsx
33
+ // src/testing/decorators/withLayoutVariants.tsx
21
34
  import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
22
- import React from "react";
23
- import { mx, surfaceShadow } from "@dxos/react-ui-theme";
35
+ import React2 from "react";
36
+ import { mx as mx2, surfaceShadow } from "@dxos/react-ui-theme";
24
37
  var Container = ({ children, elevation, surface }) => {
25
38
  var _effect = _useSignals();
26
39
  try {
27
- return /* @__PURE__ */ React.createElement("div", {
28
- className: mx("rounded-md border border-separator p-2", surface, surfaceShadow({
40
+ return /* @__PURE__ */ React2.createElement("div", {
41
+ className: mx2("rounded-md border border-separator p-2", surface, surfaceShadow({
29
42
  elevation
30
43
  }))
31
44
  }, children);
@@ -36,18 +49,18 @@ var Container = ({ children, elevation, surface }) => {
36
49
  var Panel = ({ Story, elevations, densities, className }) => {
37
50
  var _effect = _useSignals();
38
51
  try {
39
- return /* @__PURE__ */ React.createElement("div", {
40
- className: mx("flex flex-col h-full p-4 gap-4", className)
41
- }, elevations?.map(({ elevation, surface }) => densities?.map((density) => /* @__PURE__ */ React.createElement(Container, {
52
+ return /* @__PURE__ */ React2.createElement("div", {
53
+ className: mx2("flex flex-col bs-full p-4 gap-4", className)
54
+ }, elevations?.map(({ elevation, surface }) => densities?.map((density) => /* @__PURE__ */ React2.createElement(Container, {
42
55
  key: `${elevation}--${density}`,
43
56
  surface,
44
57
  elevation
45
- }, /* @__PURE__ */ React.createElement(Story, null)))));
58
+ }, /* @__PURE__ */ React2.createElement(Story, null)))));
46
59
  } finally {
47
60
  _effect.f();
48
61
  }
49
62
  };
50
- var withSurfaceVariantsLayout = ({ elevations = [
63
+ var withLayoutVariants = ({ elevations = [
51
64
  {
52
65
  elevation: "base",
53
66
  surface: "bg-baseSurface"
@@ -63,22 +76,37 @@ var withSurfaceVariantsLayout = ({ elevations = [
63
76
  ], densities = [
64
77
  "coarse"
65
78
  ] } = {}) => {
66
- return (Story) => /* @__PURE__ */ React.createElement("div", {
79
+ return (Story) => /* @__PURE__ */ React2.createElement("div", {
67
80
  className: "fixed inset-0 grid grid-cols-2 overflow-y-auto"
68
- }, /* @__PURE__ */ React.createElement(Panel, {
81
+ }, /* @__PURE__ */ React2.createElement(Panel, {
69
82
  Story,
70
83
  className: "light",
71
84
  elevations,
72
85
  densities
73
- }), /* @__PURE__ */ React.createElement(Panel, {
86
+ }), /* @__PURE__ */ React2.createElement(Panel, {
74
87
  Story,
75
88
  className: "dark",
76
89
  elevations,
77
90
  densities
78
91
  }));
79
92
  };
93
+
94
+ // src/testing/decorators/withTheme.tsx
95
+ import React3, { memo } from "react";
96
+ import { defaultTx } from "@dxos/react-ui-theme";
97
+ var withTheme = (Story, context) => {
98
+ const { globals: { theme }, parameters: { translations } } = context;
99
+ const MemoizedStory = /* @__PURE__ */ memo(Story);
100
+ return /* @__PURE__ */ React3.createElement(ThemeProvider, {
101
+ tx: defaultTx,
102
+ themeMode: theme,
103
+ resourceExtensions: translations,
104
+ noCache: true
105
+ }, /* @__PURE__ */ React3.createElement(Tooltip.Provider, null, /* @__PURE__ */ React3.createElement(MemoizedStory, null)));
106
+ };
80
107
  export {
81
- withSurfaceVariantsLayout,
108
+ withLayout,
109
+ withLayoutVariants,
82
110
  withTheme
83
111
  };
84
112
  //# sourceMappingURL=index.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/testing/decorators/withTheme.ts", "../../../../src/testing/decorators/withSurfaceVariantsLayout.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Decorator, type StoryContext, type StoryFn } from '@storybook/react';\nimport { createElement, useEffect } from 'react';\n\nimport { defaultTx } from '@dxos/react-ui-theme';\n\nimport { ThemeProvider } from '../../components';\n\nexport const withTheme: Decorator = (Story: StoryFn, context: StoryContext) => {\n const theme = context?.parameters?.theme || context?.globals?.theme;\n useEffect(() => {\n document.documentElement.classList[theme === 'dark' ? 'add' : 'remove']('dark');\n }, [theme]);\n\n return createElement(\n ThemeProvider,\n {\n tx: defaultTx,\n },\n createElement(Story),\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Decorator } from '@storybook/react';\nimport React, { type ComponentType, type PropsWithChildren } from 'react';\n\nimport { mx, surfaceShadow } from '@dxos/react-ui-theme';\nimport { type Density, type Elevation } from '@dxos/react-ui-types';\n\ntype Config = {\n elevations?: { elevation: Elevation; surface?: string }[];\n densities?: Density[];\n};\n\nconst Container = ({ children, elevation, surface }: PropsWithChildren<{ elevation: Elevation; surface?: string }>) => (\n <div className={mx('rounded-md border border-separator p-2', surface, surfaceShadow({ elevation }))}>{children}</div>\n);\n\nconst Panel = ({\n Story,\n elevations,\n densities,\n className,\n}: { Story: ComponentType } & Config & { className?: string }) => (\n <div className={mx('flex flex-col h-full p-4 gap-4', className)}>\n {elevations?.map(({ elevation, surface }) =>\n densities?.map((density) => (\n <Container key={`${elevation}--${density}`} surface={surface} elevation={elevation}>\n <Story />\n </Container>\n )),\n )}\n </div>\n);\n\nexport const withSurfaceVariantsLayout = ({\n elevations = [\n { elevation: 'base', surface: 'bg-baseSurface' },\n { elevation: 'positioned', surface: 'bg-cardSurface' },\n { elevation: 'dialog', surface: 'bg-modalSurface' },\n ],\n densities = ['coarse'],\n}: Config = {}): Decorator => {\n return (Story) => (\n <div className='fixed inset-0 grid grid-cols-2 overflow-y-auto'>\n <Panel Story={Story} className='light' elevations={elevations} densities={densities} />\n <Panel Story={Story} className='dark' elevations={elevations} densities={densities} />\n </div>\n );\n};\n"],
5
- "mappings": ";;;;;AAKA,SAASA,eAAeC,iBAAiB;AAEzC,SAASC,iBAAiB;AAInB,IAAMC,YAAuB,CAACC,OAAgBC,YAAAA;AACnD,QAAMC,QAAQD,SAASE,YAAYD,SAASD,SAASG,SAASF;AAC9DG,YAAU,MAAA;AACRC,aAASC,gBAAgBC,UAAUN,UAAU,SAAS,QAAQ,QAAA,EAAU,MAAA;EAC1E,GAAG;IAACA;GAAM;AAEV,SAAOO,cACLC,eACA;IACEC,IAAIC;EACN,GACAH,cAAcT,KAAAA,CAAAA;AAElB;;;;ACnBA,OAAOa,WAA2D;AAElE,SAASC,IAAIC,qBAAqB;AAQlC,IAAMC,YAAY,CAAC,EAAEC,UAAUC,WAAWC,QAAO,MAAiE;;;WAChH,sBAAA,cAACC,OAAAA;MAAIC,WAAWC,GAAG,0CAA0CH,SAASI,cAAc;QAAEL;MAAU,CAAA,CAAA;OAAMD,QAAAA;;;;;AAGxG,IAAMO,QAAQ,CAAC,EACbC,OACAC,YACAC,WACAN,UAAS,MACkD;;;WAC3D,sBAAA,cAACD,OAAAA;MAAIC,WAAWC,GAAG,kCAAkCD,SAAAA;OAClDK,YAAYE,IAAI,CAAC,EAAEV,WAAWC,QAAO,MACpCQ,WAAWC,IAAI,CAACC,YACd,sBAAA,cAACb,WAAAA;MAAUc,KAAK,GAAGZ,SAAAA,KAAcW,OAAAA;MAAWV;MAAkBD;OAC5D,sBAAA,cAACO,OAAAA,IAAAA,CAAAA,CAAAA,CAAAA,CAAAA;;;;;AAOJ,IAAMM,4BAA4B,CAAC,EACxCL,aAAa;EACX;IAAER,WAAW;IAAQC,SAAS;EAAiB;EAC/C;IAAED,WAAW;IAAcC,SAAS;EAAiB;EACrD;IAAED,WAAW;IAAUC,SAAS;EAAkB;GAEpDQ,YAAY;EAAC;EAAS,IACZ,CAAC,MAAC;AACZ,SAAO,CAACF,UACN,sBAAA,cAACL,OAAAA;IAAIC,WAAU;KACb,sBAAA,cAACG,OAAAA;IAAMC;IAAcJ,WAAU;IAAQK;IAAwBC;MAC/D,sBAAA,cAACH,OAAAA;IAAMC;IAAcJ,WAAU;IAAOK;IAAwBC;;AAGpE;",
6
- "names": ["createElement", "useEffect", "defaultTx", "withTheme", "Story", "context", "theme", "parameters", "globals", "useEffect", "document", "documentElement", "classList", "createElement", "ThemeProvider", "tx", "defaultTx", "React", "mx", "surfaceShadow", "Container", "children", "elevation", "surface", "div", "className", "mx", "surfaceShadow", "Panel", "Story", "elevations", "densities", "map", "density", "key", "withSurfaceVariantsLayout"]
3
+ "sources": ["../../../../src/testing/decorators/withLayout.tsx", "../../../../src/testing/decorators/withLayoutVariants.tsx", "../../../../src/testing/decorators/withTheme.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Decorator } from '@storybook/react';\nimport React, { type FC, type PropsWithChildren } from 'react';\n\nimport { type ClassNameValue, type ThemedClassName } from '@dxos/react-ui';\nimport { mx } from '@dxos/react-ui-theme';\n\nexport type ContainerProps = ThemedClassName<PropsWithChildren>;\n\nexport type ContainerType = 'default' | 'column';\n\nexport type WithLayoutProps =\n | FC<ContainerProps>\n | { classNames?: ClassNameValue; container?: ContainerType; scroll?: boolean };\n\n/**\n * Adds layout container.\n */\nexport const withLayout =\n (props: WithLayoutProps): Decorator =>\n (Story) => {\n if (typeof props === 'function') {\n const Container = props;\n return (\n <Container>\n <Story />\n </Container>\n );\n }\n\n const Container = layouts[(props as any).container as ContainerType] ?? layouts.default;\n return (\n <Container classNames={mx(props.classNames, props.scroll ? 'overflow-y-auto' : 'overflow-hidden')}>\n <Story />\n </Container>\n );\n };\n\nconst layouts: Record<ContainerType, FC<ContainerProps>> = {\n default: ({ children, classNames }: ContainerProps) => (\n <div role='none' className={mx(classNames)}>\n {children}\n </div>\n ),\n\n column: ({ children, classNames }: ContainerProps) => (\n <div role='none' className='fixed inset-0 flex justify-center overflow-hidden bg-deckSurface'>\n <div role='none' className={mx('flex flex-col is-[40rem] bg-baseSurface', classNames)}>\n {children}\n </div>\n </div>\n ),\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Decorator } from '@storybook/react';\nimport React, { type ComponentType, type PropsWithChildren } from 'react';\n\nimport { mx, surfaceShadow } from '@dxos/react-ui-theme';\nimport { type Density, type Elevation } from '@dxos/react-ui-types';\n\ntype Config = {\n elevations?: { elevation: Elevation; surface?: string }[];\n densities?: Density[];\n};\n\nconst Container = ({ children, elevation, surface }: PropsWithChildren<{ elevation: Elevation; surface?: string }>) => (\n <div className={mx('rounded-md border border-separator p-2', surface, surfaceShadow({ elevation }))}>{children}</div>\n);\n\nconst Panel = ({\n Story,\n elevations,\n densities,\n className,\n}: { Story: ComponentType } & Config & { className?: string }) => (\n <div className={mx('flex flex-col bs-full p-4 gap-4', className)}>\n {elevations?.map(({ elevation, surface }) =>\n densities?.map((density) => (\n <Container key={`${elevation}--${density}`} surface={surface} elevation={elevation}>\n <Story />\n </Container>\n )),\n )}\n </div>\n);\n\nexport const withLayoutVariants = ({\n elevations = [\n { elevation: 'base', surface: 'bg-baseSurface' },\n { elevation: 'positioned', surface: 'bg-cardSurface' },\n { elevation: 'dialog', surface: 'bg-modalSurface' },\n ],\n densities = ['coarse'],\n}: Config = {}): Decorator => {\n return (Story) => (\n <div className='fixed inset-0 grid grid-cols-2 overflow-y-auto'>\n <Panel Story={Story} className='light' elevations={elevations} densities={densities} />\n <Panel Story={Story} className='dark' elevations={elevations} densities={densities} />\n </div>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Decorator } from '@storybook/react';\nimport React, { memo } from 'react';\n\nimport { defaultTx } from '@dxos/react-ui-theme';\n\nimport { type ThemeMode, ThemeProvider, Tooltip } from '../../components';\n\n/**\n * Adds theme decorator (add to preview.ts)\n */\nexport const withTheme: Decorator = (Story, context) => {\n const {\n globals: { theme },\n parameters: { translations },\n } = context;\n\n // Prevent re-rendering of the story.\n const MemoizedStory = memo(Story);\n\n return (\n <ThemeProvider tx={defaultTx} themeMode={theme as ThemeMode} resourceExtensions={translations} noCache>\n <Tooltip.Provider>\n <MemoizedStory />\n </Tooltip.Provider>\n </ThemeProvider>\n );\n};\n"],
5
+ "mappings": ";;;;;;AAKA,OAAOA,WAAgD;AAGvD,SAASC,UAAU;AAaZ,IAAMC,aACX,CAACC,UACD,CAACC,UAAAA;AACC,MAAI,OAAOD,UAAU,YAAY;AAC/B,UAAME,aAAYF;AAClB,WACE,sBAAA,cAACE,YAAAA,MACC,sBAAA,cAACD,OAAAA,IAAAA,CAAAA;EAGP;AAEA,QAAMC,aAAYC,QAASH,MAAcI,SAAS,KAAsBD,QAAQE;AAChF,SACE,sBAAA,cAACH,YAAAA;IAAUI,YAAYC,GAAGP,MAAMM,YAAYN,MAAMQ,SAAS,oBAAoB,iBAAA;KAC7E,sBAAA,cAACP,OAAAA,IAAAA,CAAAA;AAGP;AAEF,IAAME,UAAqD;EACzDE,SAAS,CAAC,EAAEI,UAAUH,WAAU,MAC9B,sBAAA,cAACI,OAAAA;IAAIC,MAAK;IAAOC,WAAWL,GAAGD,UAAAA;KAC5BG,QAAAA;EAILI,QAAQ,CAAC,EAAEJ,UAAUH,WAAU,MAC7B,sBAAA,cAACI,OAAAA;IAAIC,MAAK;IAAOC,WAAU;KACzB,sBAAA,cAACF,OAAAA;IAAIC,MAAK;IAAOC,WAAWL,GAAG,2CAA2CD,UAAAA;KACvEG,QAAAA,CAAAA;AAIT;;;;AClDA,OAAOK,YAA2D;AAElE,SAASC,MAAAA,KAAIC,qBAAqB;AAQlC,IAAMC,YAAY,CAAC,EAAEC,UAAUC,WAAWC,QAAO,MAAiE;;;WAChH,gBAAAC,OAAA,cAACC,OAAAA;MAAIC,WAAWC,IAAG,0CAA0CJ,SAASK,cAAc;QAAEN;MAAU,CAAA,CAAA;OAAMD,QAAAA;;;;;AAGxG,IAAMQ,QAAQ,CAAC,EACbC,OACAC,YACAC,WACAN,UAAS,MACkD;;;WAC3D,gBAAAF,OAAA,cAACC,OAAAA;MAAIC,WAAWC,IAAG,mCAAmCD,SAAAA;OACnDK,YAAYE,IAAI,CAAC,EAAEX,WAAWC,QAAO,MACpCS,WAAWC,IAAI,CAACC,YACd,gBAAAV,OAAA,cAACJ,WAAAA;MAAUe,KAAK,GAAGb,SAAAA,KAAcY,OAAAA;MAAWX;MAAkBD;OAC5D,gBAAAE,OAAA,cAACM,OAAAA,IAAAA,CAAAA,CAAAA,CAAAA,CAAAA;;;;;AAOJ,IAAMM,qBAAqB,CAAC,EACjCL,aAAa;EACX;IAAET,WAAW;IAAQC,SAAS;EAAiB;EAC/C;IAAED,WAAW;IAAcC,SAAS;EAAiB;EACrD;IAAED,WAAW;IAAUC,SAAS;EAAkB;GAEpDS,YAAY;EAAC;EAAS,IACZ,CAAC,MAAC;AACZ,SAAO,CAACF,UACN,gBAAAN,OAAA,cAACC,OAAAA;IAAIC,WAAU;KACb,gBAAAF,OAAA,cAACK,OAAAA;IAAMC;IAAcJ,WAAU;IAAQK;IAAwBC;MAC/D,gBAAAR,OAAA,cAACK,OAAAA;IAAMC;IAAcJ,WAAU;IAAOK;IAAwBC;;AAGpE;;;AC7CA,OAAOK,UAASC,YAAY;AAE5B,SAASC,iBAAiB;AAOnB,IAAMC,YAAuB,CAACC,OAAOC,YAAAA;AAC1C,QAAM,EACJC,SAAS,EAAEC,MAAK,GAChBC,YAAY,EAAEC,aAAY,EAAE,IAC1BJ;AAGJ,QAAMK,gBAAgBC,qBAAKP,KAAAA;AAE3B,SACE,gBAAAQ,OAAA,cAACC,eAAAA;IAAcC,IAAIC;IAAWC,WAAWT;IAAoBU,oBAAoBR;IAAcS,SAAAA;KAC7F,gBAAAN,OAAA,cAACO,QAAQC,UAAQ,MACf,gBAAAR,OAAA,cAACF,eAAAA,IAAAA,CAAAA,CAAAA;AAIT;",
6
+ "names": ["React", "mx", "withLayout", "props", "Story", "Container", "layouts", "container", "default", "classNames", "mx", "scroll", "children", "div", "role", "className", "column", "React", "mx", "surfaceShadow", "Container", "children", "elevation", "surface", "React", "div", "className", "mx", "surfaceShadow", "Panel", "Story", "elevations", "densities", "map", "density", "key", "withLayoutVariants", "React", "memo", "defaultTx", "withTheme", "Story", "context", "globals", "theme", "parameters", "translations", "MemoizedStory", "memo", "React", "ThemeProvider", "tx", "defaultTx", "themeMode", "resourceExtensions", "noCache", "Tooltip", "Provider"]
7
7
  }