@dxos/react-ui 0.8.4-main.84f28bd → 0.8.4-main.937b3ca

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 (314) hide show
  1. package/dist/lib/browser/chunk-CEKVHJ27.mjs +774 -0
  2. package/dist/lib/browser/chunk-CEKVHJ27.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +3069 -60
  4. package/dist/lib/browser/index.mjs.map +4 -4
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/browser/testing/index.mjs +65 -50
  7. package/dist/lib/browser/testing/index.mjs.map +4 -4
  8. package/dist/lib/node-esm/chunk-2NHEX4AD.mjs +776 -0
  9. package/dist/lib/node-esm/chunk-2NHEX4AD.mjs.map +7 -0
  10. package/dist/lib/node-esm/index.mjs +3069 -60
  11. package/dist/lib/node-esm/index.mjs.map +4 -4
  12. package/dist/lib/node-esm/meta.json +1 -1
  13. package/dist/lib/node-esm/testing/index.mjs +65 -50
  14. package/dist/lib/node-esm/testing/index.mjs.map +4 -4
  15. package/dist/types/src/components/Avatars/Avatar.d.ts +1 -1
  16. package/dist/types/src/components/Avatars/Avatar.d.ts.map +1 -1
  17. package/dist/types/src/components/Avatars/Avatar.stories.d.ts +5 -31
  18. package/dist/types/src/components/Avatars/Avatar.stories.d.ts.map +1 -1
  19. package/dist/types/src/components/Avatars/AvatarGroup.stories.d.ts +5 -11
  20. package/dist/types/src/components/Avatars/AvatarGroup.stories.d.ts.map +1 -1
  21. package/dist/types/src/components/Breadcrumb/Breadcrumb.d.ts +1 -1
  22. package/dist/types/src/components/Breadcrumb/Breadcrumb.d.ts.map +1 -1
  23. package/dist/types/src/components/Breadcrumb/Breadcrumb.stories.d.ts +8 -20
  24. package/dist/types/src/components/Breadcrumb/Breadcrumb.stories.d.ts.map +1 -1
  25. package/dist/types/src/components/{Buttons → Button}/Button.d.ts +2 -2
  26. package/dist/types/src/components/Button/Button.d.ts.map +1 -0
  27. package/dist/types/src/components/Button/Button.stories.d.ts +17 -0
  28. package/dist/types/src/components/Button/Button.stories.d.ts.map +1 -0
  29. package/dist/types/src/components/{Buttons → Button}/IconButton.d.ts +4 -4
  30. package/dist/types/src/components/Button/IconButton.d.ts.map +1 -0
  31. package/dist/types/src/components/Button/IconButton.stories.d.ts +13 -0
  32. package/dist/types/src/components/Button/IconButton.stories.d.ts.map +1 -0
  33. package/dist/types/src/components/Button/Toggle.d.ts.map +1 -0
  34. package/dist/types/src/components/Button/Toggle.stories.d.ts +16 -0
  35. package/dist/types/src/components/Button/Toggle.stories.d.ts.map +1 -0
  36. package/dist/types/src/components/Button/ToggleGroup.d.ts +27 -0
  37. package/dist/types/src/components/Button/ToggleGroup.d.ts.map +1 -0
  38. package/dist/types/src/components/Button/ToggleGroup.stories.d.ts +27 -0
  39. package/dist/types/src/components/Button/ToggleGroup.stories.d.ts.map +1 -0
  40. package/dist/types/src/components/Button/index.d.ts.map +1 -0
  41. package/dist/types/src/components/Clipboard/ClipboardProvider.d.ts.map +1 -1
  42. package/dist/types/src/components/Clipboard/CopyButton.d.ts +1 -1
  43. package/dist/types/src/components/Clipboard/CopyButton.d.ts.map +1 -1
  44. package/dist/types/src/components/DensityProvider/DensityProvider.d.ts +1 -1
  45. package/dist/types/src/components/DensityProvider/DensityProvider.d.ts.map +1 -1
  46. package/dist/types/src/components/{Dialogs → Dialog}/AlertDialog.d.ts +1 -1
  47. package/dist/types/src/components/Dialog/AlertDialog.d.ts.map +1 -0
  48. package/dist/types/src/components/Dialog/AlertDialog.stories.d.ts +11 -0
  49. package/dist/types/src/components/Dialog/AlertDialog.stories.d.ts.map +1 -0
  50. package/dist/types/src/components/Dialog/Dialog.d.ts +40 -0
  51. package/dist/types/src/components/Dialog/Dialog.d.ts.map +1 -0
  52. package/dist/types/src/components/Dialog/Dialog.stories.d.ts +27 -0
  53. package/dist/types/src/components/Dialog/Dialog.stories.d.ts.map +1 -0
  54. package/dist/types/src/components/Dialog/index.d.ts.map +1 -0
  55. package/dist/types/src/components/ElevationProvider/ElevationProvider.d.ts +1 -1
  56. package/dist/types/src/components/ElevationProvider/ElevationProvider.d.ts.map +1 -1
  57. package/dist/types/src/components/Icon/Icon.d.ts +2 -2
  58. package/dist/types/src/components/Icon/Icon.d.ts.map +1 -1
  59. package/dist/types/src/components/Icon/Icon.stories.d.ts +17 -0
  60. package/dist/types/src/components/Icon/Icon.stories.d.ts.map +1 -0
  61. package/dist/types/src/components/Input/Input.d.ts +6 -5
  62. package/dist/types/src/components/Input/Input.d.ts.map +1 -1
  63. package/dist/types/src/components/Input/Input.stories.d.ts +11 -12
  64. package/dist/types/src/components/Input/Input.stories.d.ts.map +1 -1
  65. package/dist/types/src/components/Link/Link.stories.d.ts +8 -8
  66. package/dist/types/src/components/Link/Link.stories.d.ts.map +1 -1
  67. package/dist/types/src/components/{Lists → List}/List.d.ts +3 -3
  68. package/dist/types/src/components/List/List.d.ts.map +1 -0
  69. package/dist/types/src/components/List/List.stories.d.ts +14 -0
  70. package/dist/types/src/components/List/List.stories.d.ts.map +1 -0
  71. package/dist/types/src/components/List/ListDropIndicator.d.ts.map +1 -0
  72. package/dist/types/src/components/{Lists → List}/Tree.d.ts +1 -1
  73. package/dist/types/src/components/List/Tree.d.ts.map +1 -0
  74. package/dist/types/src/components/List/Tree.stories.d.ts +15 -0
  75. package/dist/types/src/components/List/Tree.stories.d.ts.map +1 -0
  76. package/dist/types/src/components/List/TreeDropIndicator.d.ts.map +1 -0
  77. package/dist/types/src/components/{Lists → List}/Treegrid.d.ts +1 -1
  78. package/dist/types/src/components/{Lists → List}/Treegrid.d.ts.map +1 -1
  79. package/dist/types/src/components/List/Treegrid.stories.d.ts +12 -0
  80. package/dist/types/src/components/List/Treegrid.stories.d.ts.map +1 -0
  81. package/dist/types/src/components/List/index.d.ts.map +1 -0
  82. package/dist/types/src/components/Main/Main.d.ts +10 -19
  83. package/dist/types/src/components/Main/Main.d.ts.map +1 -1
  84. package/dist/types/src/components/Main/Main.stories.d.ts +6 -7
  85. package/dist/types/src/components/Main/Main.stories.d.ts.map +1 -1
  86. package/dist/types/src/components/{Menus → Menu}/ContextMenu.d.ts +6 -6
  87. package/dist/types/src/components/Menu/ContextMenu.d.ts.map +1 -0
  88. package/dist/types/src/components/Menu/ContextMenu.stories.d.ts +12 -0
  89. package/dist/types/src/components/Menu/ContextMenu.stories.d.ts.map +1 -0
  90. package/dist/types/src/components/{Menus → Menu}/DropdownMenu.d.ts +8 -8
  91. package/dist/types/src/components/Menu/DropdownMenu.d.ts.map +1 -0
  92. package/dist/types/src/components/Menu/DropdownMenu.stories.d.ts +15 -0
  93. package/dist/types/src/components/Menu/DropdownMenu.stories.d.ts.map +1 -0
  94. package/dist/types/src/components/Menu/index.d.ts.map +1 -0
  95. package/dist/types/src/components/Message/Message.d.ts +1 -1
  96. package/dist/types/src/components/Message/Message.d.ts.map +1 -1
  97. package/dist/types/src/components/Message/Message.stories.d.ts +8 -17
  98. package/dist/types/src/components/Message/Message.stories.d.ts.map +1 -1
  99. package/dist/types/src/components/Popover/Popover.d.ts +3 -3
  100. package/dist/types/src/components/Popover/Popover.d.ts.map +1 -1
  101. package/dist/types/src/components/Popover/Popover.stories.d.ts +6 -34
  102. package/dist/types/src/components/Popover/Popover.stories.d.ts.map +1 -1
  103. package/dist/types/src/components/ScrollArea/ScrollArea.d.ts +10 -8
  104. package/dist/types/src/components/ScrollArea/ScrollArea.d.ts.map +1 -1
  105. package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts +8 -30
  106. package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts.map +1 -1
  107. package/dist/types/src/components/ScrollContainer/ScrollContainer.d.ts +39 -0
  108. package/dist/types/src/components/ScrollContainer/ScrollContainer.d.ts.map +1 -0
  109. package/dist/types/src/components/ScrollContainer/ScrollContainer.stories.d.ts +19 -0
  110. package/dist/types/src/components/ScrollContainer/ScrollContainer.stories.d.ts.map +1 -0
  111. package/dist/types/src/components/ScrollContainer/index.d.ts +2 -0
  112. package/dist/types/src/components/ScrollContainer/index.d.ts.map +1 -0
  113. package/dist/types/src/components/Select/Select.d.ts +10 -10
  114. package/dist/types/src/components/Select/Select.d.ts.map +1 -1
  115. package/dist/types/src/components/Select/Select.stories.d.ts +4 -9
  116. package/dist/types/src/components/Select/Select.stories.d.ts.map +1 -1
  117. package/dist/types/src/components/Separator/Separator.d.ts +1 -1
  118. package/dist/types/src/components/Status/Status.stories.d.ts +2 -8
  119. package/dist/types/src/components/Status/Status.stories.d.ts.map +1 -1
  120. package/dist/types/src/components/Tag/Tag.d.ts +1 -1
  121. package/dist/types/src/components/Tag/Tag.d.ts.map +1 -1
  122. package/dist/types/src/components/Tag/Tag.stories.d.ts +12 -12
  123. package/dist/types/src/components/Tag/Tag.stories.d.ts.map +1 -1
  124. package/dist/types/src/components/ThemeProvider/ThemeProvider.d.ts +2 -3
  125. package/dist/types/src/components/ThemeProvider/ThemeProvider.d.ts.map +1 -1
  126. package/dist/types/src/components/ThemeProvider/TranslationsProvider.d.ts +1 -8
  127. package/dist/types/src/components/ThemeProvider/TranslationsProvider.d.ts.map +1 -1
  128. package/dist/types/src/components/ThemeProvider/index.d.ts +2 -1
  129. package/dist/types/src/components/ThemeProvider/index.d.ts.map +1 -1
  130. package/dist/types/src/components/Toast/Toast.d.ts +5 -5
  131. package/dist/types/src/components/Toast/Toast.d.ts.map +1 -1
  132. package/dist/types/src/components/Toast/Toast.stories.d.ts +6 -44
  133. package/dist/types/src/components/Toast/Toast.stories.d.ts.map +1 -1
  134. package/dist/types/src/components/Toolbar/Toolbar.d.ts +17 -17
  135. package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -1
  136. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts +6 -50
  137. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts.map +1 -1
  138. package/dist/types/src/components/Tooltip/Tooltip.d.ts +2 -4
  139. package/dist/types/src/components/Tooltip/Tooltip.d.ts.map +1 -1
  140. package/dist/types/src/components/Tooltip/Tooltip.stories.d.ts +8 -61
  141. package/dist/types/src/components/Tooltip/Tooltip.stories.d.ts.map +1 -1
  142. package/dist/types/src/components/index.d.ts +5 -4
  143. package/dist/types/src/components/index.d.ts.map +1 -1
  144. package/dist/types/src/hooks/useDensityContext.d.ts +1 -1
  145. package/dist/types/src/hooks/useDensityContext.d.ts.map +1 -1
  146. package/dist/types/src/hooks/useElevationContext.d.ts +1 -1
  147. package/dist/types/src/hooks/useElevationContext.d.ts.map +1 -1
  148. package/dist/types/src/hooks/useSafeArea.d.ts.map +1 -1
  149. package/dist/types/src/hooks/useVisualViewport.d.ts +2 -2
  150. package/dist/types/src/hooks/useVisualViewport.d.ts.map +1 -1
  151. package/dist/types/src/index.d.ts +1 -1
  152. package/dist/types/src/index.d.ts.map +1 -1
  153. package/dist/types/src/playground/Controls.stories.d.ts +5 -9
  154. package/dist/types/src/playground/Controls.stories.d.ts.map +1 -1
  155. package/dist/types/src/playground/Custom.stories.d.ts +12 -4
  156. package/dist/types/src/playground/Custom.stories.d.ts.map +1 -1
  157. package/dist/types/src/playground/Typography.stories.d.ts +5 -11
  158. package/dist/types/src/playground/Typography.stories.d.ts.map +1 -1
  159. package/dist/types/src/testing/decorators/index.d.ts +2 -1
  160. package/dist/types/src/testing/decorators/index.d.ts.map +1 -1
  161. package/dist/types/src/testing/decorators/withLayout.d.ts +15 -0
  162. package/dist/types/src/testing/decorators/withLayout.d.ts.map +1 -0
  163. package/dist/types/src/testing/decorators/withLayoutVariants.d.ts +12 -0
  164. package/dist/types/src/testing/decorators/withLayoutVariants.d.ts.map +1 -0
  165. package/dist/types/src/testing/decorators/withTheme.d.ts +3 -0
  166. package/dist/types/src/testing/decorators/withTheme.d.ts.map +1 -1
  167. package/dist/types/src/util/index.d.ts +2 -1
  168. package/dist/types/src/util/index.d.ts.map +1 -1
  169. package/dist/types/src/util/usePx.d.ts +8 -0
  170. package/dist/types/src/util/usePx.d.ts.map +1 -0
  171. package/dist/types/tsconfig.tsbuildinfo +1 -1
  172. package/package.json +35 -27
  173. package/src/components/Avatars/Avatar.stories.tsx +21 -12
  174. package/src/components/Avatars/Avatar.tsx +4 -4
  175. package/src/components/Avatars/AvatarGroup.stories.tsx +10 -6
  176. package/src/components/Breadcrumb/Breadcrumb.stories.tsx +17 -12
  177. package/src/components/Breadcrumb/Breadcrumb.tsx +3 -3
  178. package/src/components/{Buttons → Button}/Button.stories.tsx +10 -11
  179. package/src/components/{Buttons → Button}/Button.tsx +1 -1
  180. package/src/components/{Buttons → Button}/IconButton.stories.tsx +11 -8
  181. package/src/components/{Buttons → Button}/IconButton.tsx +22 -15
  182. package/src/components/Button/Toggle.stories.tsx +37 -0
  183. package/src/components/{Buttons → Button}/ToggleGroup.stories.tsx +13 -10
  184. package/src/components/{Buttons → Button}/ToggleGroup.tsx +17 -4
  185. package/src/components/Clipboard/ClipboardProvider.tsx +1 -1
  186. package/src/components/Clipboard/CopyButton.tsx +7 -6
  187. package/src/components/DensityProvider/DensityProvider.tsx +2 -2
  188. package/src/components/{Dialogs → Dialog}/AlertDialog.stories.tsx +15 -12
  189. package/src/components/{Dialogs → Dialog}/AlertDialog.tsx +13 -13
  190. package/src/components/Dialog/Dialog.stories.tsx +97 -0
  191. package/src/components/{Dialogs → Dialog}/Dialog.tsx +151 -51
  192. package/src/components/ElevationProvider/ElevationProvider.tsx +2 -2
  193. package/src/components/Icon/Icon.stories.tsx +113 -0
  194. package/src/components/Icon/Icon.tsx +2 -2
  195. package/src/components/Input/Input.stories.tsx +13 -15
  196. package/src/components/Input/Input.tsx +28 -19
  197. package/src/components/Link/Link.stories.tsx +10 -6
  198. package/src/components/{Lists → List}/List.stories.tsx +38 -32
  199. package/src/components/{Lists → List}/List.tsx +16 -17
  200. package/src/components/{Lists → List}/ListDropIndicator.tsx +1 -1
  201. package/src/components/{Lists → List}/Tree.stories.tsx +11 -8
  202. package/src/components/{Lists → List}/Tree.tsx +4 -3
  203. package/src/components/{Lists → List}/TreeDropIndicator.tsx +1 -1
  204. package/src/components/{Lists → List}/Treegrid.stories.tsx +12 -6
  205. package/src/components/{Lists → List}/Treegrid.tsx +58 -17
  206. package/src/components/Main/Main.stories.tsx +17 -9
  207. package/src/components/Main/Main.tsx +43 -28
  208. package/src/components/{Menus → Menu}/ContextMenu.stories.tsx +11 -8
  209. package/src/components/{Menus → Menu}/ContextMenu.tsx +1 -0
  210. package/src/components/{Menus → Menu}/DropdownMenu.stories.tsx +12 -9
  211. package/src/components/{Menus → Menu}/DropdownMenu.tsx +102 -71
  212. package/src/components/Message/Message.stories.tsx +12 -8
  213. package/src/components/Message/Message.tsx +30 -5
  214. package/src/components/Popover/Popover.stories.tsx +12 -9
  215. package/src/components/Popover/Popover.tsx +64 -45
  216. package/src/components/ScrollArea/ScrollArea.stories.tsx +64 -11
  217. package/src/components/ScrollArea/ScrollArea.tsx +54 -8
  218. package/src/components/ScrollContainer/ScrollContainer.stories.tsx +70 -0
  219. package/src/components/ScrollContainer/ScrollContainer.tsx +233 -0
  220. package/src/components/ScrollContainer/index.ts +5 -0
  221. package/src/components/Select/Select.stories.tsx +15 -12
  222. package/src/components/Select/Select.tsx +9 -9
  223. package/src/components/Status/Status.stories.tsx +9 -6
  224. package/src/components/Tag/Tag.stories.tsx +20 -11
  225. package/src/components/Tag/Tag.tsx +1 -1
  226. package/src/components/ThemeProvider/ThemeProvider.tsx +3 -4
  227. package/src/components/ThemeProvider/TranslationsProvider.tsx +3 -18
  228. package/src/components/ThemeProvider/index.ts +3 -3
  229. package/src/components/Toast/Toast.stories.tsx +12 -9
  230. package/src/components/Toast/Toast.tsx +9 -9
  231. package/src/components/Toolbar/Toolbar.stories.tsx +21 -19
  232. package/src/components/Toolbar/Toolbar.tsx +37 -10
  233. package/src/components/Tooltip/Tooltip.stories.tsx +16 -12
  234. package/src/components/Tooltip/Tooltip.tsx +27 -24
  235. package/src/components/index.ts +5 -4
  236. package/src/hooks/useDensityContext.ts +1 -1
  237. package/src/hooks/useElevationContext.ts +1 -1
  238. package/src/hooks/useSafeArea.ts +3 -2
  239. package/src/hooks/useSafeCollisionPadding.ts +1 -1
  240. package/src/hooks/useVisualViewport.ts +4 -4
  241. package/src/index.ts +1 -1
  242. package/src/playground/Controls.stories.tsx +20 -17
  243. package/src/playground/Custom.stories.tsx +13 -24
  244. package/src/playground/Typography.stories.tsx +8 -6
  245. package/src/testing/decorators/index.ts +2 -1
  246. package/src/testing/decorators/withLayout.tsx +63 -0
  247. package/src/testing/decorators/{withSurfaceVariantsLayout.tsx → withLayoutVariants.tsx} +5 -5
  248. package/src/testing/decorators/withTheme.tsx +32 -0
  249. package/src/util/index.ts +3 -1
  250. package/src/util/usePx.ts +61 -0
  251. package/dist/lib/browser/chunk-T6YPS45E.mjs +0 -4376
  252. package/dist/lib/browser/chunk-T6YPS45E.mjs.map +0 -7
  253. package/dist/lib/node-esm/chunk-TYVQJ4KW.mjs +0 -4378
  254. package/dist/lib/node-esm/chunk-TYVQJ4KW.mjs.map +0 -7
  255. package/dist/types/src/components/Buttons/Button.d.ts.map +0 -1
  256. package/dist/types/src/components/Buttons/Button.stories.d.ts +0 -12
  257. package/dist/types/src/components/Buttons/Button.stories.d.ts.map +0 -1
  258. package/dist/types/src/components/Buttons/IconButton.d.ts.map +0 -1
  259. package/dist/types/src/components/Buttons/IconButton.stories.d.ts +0 -22
  260. package/dist/types/src/components/Buttons/IconButton.stories.d.ts.map +0 -1
  261. package/dist/types/src/components/Buttons/Toggle.d.ts.map +0 -1
  262. package/dist/types/src/components/Buttons/Toggle.stories.d.ts +0 -19
  263. package/dist/types/src/components/Buttons/Toggle.stories.d.ts.map +0 -1
  264. package/dist/types/src/components/Buttons/ToggleGroup.d.ts +0 -28
  265. package/dist/types/src/components/Buttons/ToggleGroup.d.ts.map +0 -1
  266. package/dist/types/src/components/Buttons/ToggleGroup.stories.d.ts +0 -39
  267. package/dist/types/src/components/Buttons/ToggleGroup.stories.d.ts.map +0 -1
  268. package/dist/types/src/components/Buttons/index.d.ts.map +0 -1
  269. package/dist/types/src/components/Dialogs/AlertDialog.d.ts.map +0 -1
  270. package/dist/types/src/components/Dialogs/AlertDialog.stories.d.ts +0 -43
  271. package/dist/types/src/components/Dialogs/AlertDialog.stories.d.ts.map +0 -1
  272. package/dist/types/src/components/Dialogs/Dialog.d.ts +0 -31
  273. package/dist/types/src/components/Dialogs/Dialog.d.ts.map +0 -1
  274. package/dist/types/src/components/Dialogs/Dialog.stories.d.ts +0 -48
  275. package/dist/types/src/components/Dialogs/Dialog.stories.d.ts.map +0 -1
  276. package/dist/types/src/components/Dialogs/index.d.ts.map +0 -1
  277. package/dist/types/src/components/Lists/List.d.ts.map +0 -1
  278. package/dist/types/src/components/Lists/List.stories.d.ts +0 -37
  279. package/dist/types/src/components/Lists/List.stories.d.ts.map +0 -1
  280. package/dist/types/src/components/Lists/ListDropIndicator.d.ts.map +0 -1
  281. package/dist/types/src/components/Lists/Tree.d.ts.map +0 -1
  282. package/dist/types/src/components/Lists/Tree.stories.d.ts +0 -41
  283. package/dist/types/src/components/Lists/Tree.stories.d.ts.map +0 -1
  284. package/dist/types/src/components/Lists/TreeDropIndicator.d.ts.map +0 -1
  285. package/dist/types/src/components/Lists/Treegrid.stories.d.ts +0 -10
  286. package/dist/types/src/components/Lists/Treegrid.stories.d.ts.map +0 -1
  287. package/dist/types/src/components/Lists/index.d.ts.map +0 -1
  288. package/dist/types/src/components/Menus/ContextMenu.d.ts.map +0 -1
  289. package/dist/types/src/components/Menus/ContextMenu.stories.d.ts +0 -50
  290. package/dist/types/src/components/Menus/ContextMenu.stories.d.ts.map +0 -1
  291. package/dist/types/src/components/Menus/DropdownMenu.d.ts.map +0 -1
  292. package/dist/types/src/components/Menus/DropdownMenu.stories.d.ts +0 -50
  293. package/dist/types/src/components/Menus/DropdownMenu.stories.d.ts.map +0 -1
  294. package/dist/types/src/components/Menus/index.d.ts.map +0 -1
  295. package/dist/types/src/testing/decorators/withSurfaceVariantsLayout.d.ts +0 -12
  296. package/dist/types/src/testing/decorators/withSurfaceVariantsLayout.d.ts.map +0 -1
  297. package/dist/types/src/util/ThemedClassName.d.ts +0 -5
  298. package/dist/types/src/util/ThemedClassName.d.ts.map +0 -1
  299. package/src/components/Buttons/Toggle.stories.tsx +0 -33
  300. package/src/components/Dialogs/Dialog.stories.tsx +0 -65
  301. package/src/testing/decorators/withTheme.ts +0 -22
  302. package/src/util/ThemedClassName.ts +0 -7
  303. /package/dist/types/src/components/{Buttons → Button}/Toggle.d.ts +0 -0
  304. /package/dist/types/src/components/{Buttons → Button}/index.d.ts +0 -0
  305. /package/dist/types/src/components/{Dialogs → Dialog}/index.d.ts +0 -0
  306. /package/dist/types/src/components/{Lists → List}/ListDropIndicator.d.ts +0 -0
  307. /package/dist/types/src/components/{Lists → List}/TreeDropIndicator.d.ts +0 -0
  308. /package/dist/types/src/components/{Lists → List}/index.d.ts +0 -0
  309. /package/dist/types/src/components/{Menus → Menu}/index.d.ts +0 -0
  310. /package/src/components/{Buttons → Button}/Toggle.tsx +0 -0
  311. /package/src/components/{Buttons → Button}/index.ts +0 -0
  312. /package/src/components/{Dialogs → Dialog}/index.ts +0 -0
  313. /package/src/components/{Lists → List}/index.ts +0 -0
  314. /package/src/components/{Menus → Menu}/index.ts +0 -0
@@ -2,23 +2,22 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- import '@dxos-theme';
6
-
7
- import { type StoryObj, type Meta } from '@storybook/react-vite';
5
+ import { type Meta, type StoryObj } from '@storybook/react-vite';
8
6
  import React from 'react';
9
7
 
10
- import { baseSurface, modalSurface, activeSurface, mx, surfaceShadow } from '@dxos/react-ui-theme';
11
- import { type MessageValence } from '@dxos/react-ui-types';
8
+ import { baseSurface, modalSurface, mx, surfaceShadow } from '@dxos/ui-theme';
9
+ import { type MessageValence } from '@dxos/ui-types';
10
+
11
+ import { withTheme } from '../../testing';
12
12
 
13
13
  import {
14
14
  type CheckboxProps,
15
15
  Input,
16
16
  type PinInputProps,
17
17
  type SwitchProps,
18
- type TextInputProps,
19
18
  type TextAreaProps,
19
+ type TextInputProps,
20
20
  } from './Input';
21
- import { withTheme } from '../../testing';
22
21
 
23
22
  type VariantMap = {
24
23
  text: TextInputProps;
@@ -75,10 +74,10 @@ const Wrapper = ({
75
74
  const DefaultStory = (props: BaseProps) => {
76
75
  return (
77
76
  <div className='space-b-4'>
78
- <div className={mx(baseSurface, 'p-4')}>
77
+ <div className={mx(baseSurface, 'p-4 rounded-md')}>
79
78
  <Wrapper {...props} />
80
79
  </div>
81
- <div className={mx(activeSurface, 'p-4 rounded-md', surfaceShadow({ elevation: 'positioned' }))}>
80
+ <div className={mx('bg-cardSurface', 'p-4 rounded-md', surfaceShadow({ elevation: 'positioned' }))}>
82
81
  <Wrapper {...props} />
83
82
  </div>
84
83
  <div className={mx(modalSurface, 'p-4 rounded-md', surfaceShadow({ elevation: 'dialog' }))}>
@@ -88,13 +87,12 @@ const DefaultStory = (props: BaseProps) => {
88
87
  );
89
88
  };
90
89
 
91
- const meta: Meta<BaseProps> = {
90
+ const meta = {
92
91
  title: 'ui/react-ui-core/Input',
93
- component: Input.Root,
92
+ component: Input.Root as any,
94
93
  render: DefaultStory,
95
94
  decorators: [withTheme],
96
- parameters: { chromatic: { disableSnapshot: false } },
97
- };
95
+ } satisfies Meta<typeof DefaultStory>;
98
96
 
99
97
  export default meta;
100
98
 
@@ -221,10 +219,10 @@ export const Checkbox: Story = {
221
219
  },
222
220
  };
223
221
 
224
- export const Switch = {
222
+ export const Switch: Story = {
225
223
  args: {
226
224
  kind: 'switch',
227
225
  label: 'This is a switch',
228
- description: 'It’s either off... or on.',
226
+ description: "It's either off... or on.",
229
227
  },
230
228
  };
@@ -2,34 +2,33 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { type IconWeight } from '@phosphor-icons/react';
6
5
  import { Root as CheckboxPrimitive, type CheckboxProps as CheckboxPrimitiveProps } from '@radix-ui/react-checkbox';
7
6
  import { useControllableState } from '@radix-ui/react-use-controllable-state';
8
- import React, { type ComponentPropsWithRef, forwardRef, type ForwardRefExoticComponent, useCallback } from 'react';
7
+ import React, { type ComponentPropsWithRef, type ForwardRefExoticComponent, forwardRef, useCallback } from 'react';
9
8
 
10
9
  import {
10
+ DescriptionAndValidation as DescriptionAndValidationPrimitive,
11
+ type DescriptionAndValidationProps as DescriptionAndValidationPrimitiveProps,
12
+ Description as DescriptionPrimitive,
13
+ type DescriptionProps as DescriptionPrimitiveProps,
14
+ INPUT_NAME,
11
15
  InputRoot,
12
16
  type InputRootProps,
17
+ type InputScopedProps,
18
+ Label as LabelPrimitive,
19
+ type LabelProps as LabelPrimitiveProps,
13
20
  PinInput as PinInputPrimitive,
14
21
  type PinInputProps as PinInputPrimitiveProps,
15
- TextInput as TextInputPrimitive,
16
- type TextInputProps as TextInputPrimitiveProps,
17
22
  TextArea as TextAreaPrimitive,
18
23
  type TextAreaProps as TextAreaPrimitiveProps,
19
- useInputContext,
20
- INPUT_NAME,
21
- type InputScopedProps,
22
- Description as DescriptionPrimitive,
23
- DescriptionAndValidation as DescriptionAndValidationPrimitive,
24
- type DescriptionAndValidationProps as DescriptionAndValidationPrimitiveProps,
25
- type DescriptionProps as DescriptionPrimitiveProps,
26
- Label as LabelPrimitive,
27
- type LabelProps as LabelPrimitiveProps,
24
+ TextInput as TextInputPrimitive,
25
+ type TextInputProps as TextInputPrimitiveProps,
28
26
  Validation as ValidationPrimitive,
29
27
  type ValidationProps as ValidationPrimitiveProps,
28
+ useInputContext,
30
29
  } from '@dxos/react-input';
31
- import { mx } from '@dxos/react-ui-theme';
32
- import { type Density, type Elevation, type ClassNameValue, type Size } from '@dxos/react-ui-types';
30
+ import { mx } from '@dxos/ui-theme';
31
+ import { type ClassNameValue, type Density, type Elevation, type Size } from '@dxos/ui-types';
33
32
 
34
33
  import { useDensityContext, useElevationContext, useThemeContext } from '../../hooks';
35
34
  import { type ThemedClassName } from '../../util';
@@ -163,10 +162,17 @@ const PinInput = forwardRef<HTMLInputElement, PinInputProps>(
163
162
 
164
163
  // TODO(burdon): Implement inline icon within button: e.g., https://www.radix-ui.com/themes/playground#text-field
165
164
 
166
- type TextInputProps = InputSharedProps & ThemedClassName<TextInputPrimitiveProps>;
165
+ type AutoFillProps = {
166
+ noAutoFill?: boolean;
167
+ };
168
+
169
+ type TextInputProps = InputSharedProps & ThemedClassName<TextInputPrimitiveProps> & AutoFillProps;
167
170
 
168
171
  const TextInput = forwardRef<HTMLInputElement, InputScopedProps<TextInputProps>>(
169
- ({ __inputScope, classNames, density: propsDensity, elevation: propsElevation, variant, ...props }, forwardedRef) => {
172
+ (
173
+ { __inputScope, classNames, density: propsDensity, elevation: propsElevation, variant, noAutoFill, ...props },
174
+ forwardedRef,
175
+ ) => {
170
176
  const { hasIosKeyboard } = useThemeContext();
171
177
  const themeContextValue = useThemeContext();
172
178
  const density = useDensityContext(propsDensity);
@@ -178,6 +184,8 @@ const TextInput = forwardRef<HTMLInputElement, InputScopedProps<TextInputProps>>
178
184
  return (
179
185
  <TextInputPrimitive
180
186
  {...props}
187
+ // TODO(wittjosiah): Factor out autofill properies.
188
+ {...{ 'data-1p-ignore': noAutoFill }}
181
189
  className={tx(
182
190
  'input.input',
183
191
  'input',
@@ -230,7 +238,9 @@ const TextArea = forwardRef<HTMLTextAreaElement, InputScopedProps<TextAreaProps>
230
238
  },
231
239
  );
232
240
 
233
- type CheckboxProps = ThemedClassName<Omit<CheckboxPrimitiveProps, 'children'>> & { size?: Size; weight?: IconWeight };
241
+ type CheckboxProps = ThemedClassName<Omit<CheckboxPrimitiveProps, 'children'>> & {
242
+ size?: Size;
243
+ };
234
244
 
235
245
  const Checkbox: ForwardRefExoticComponent<CheckboxProps> = forwardRef<
236
246
  HTMLButtonElement,
@@ -243,7 +253,6 @@ const Checkbox: ForwardRefExoticComponent<CheckboxProps> = forwardRef<
243
253
  defaultChecked: propsDefaultChecked,
244
254
  onCheckedChange: propsOnCheckedChange,
245
255
  size,
246
- weight = 'bold',
247
256
  classNames,
248
257
  ...props
249
258
  },
@@ -2,16 +2,20 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- import '@dxos-theme';
5
+ import { type Meta, type StoryObj } from '@storybook/react-vite';
6
6
 
7
- import { Link } from './Link';
8
7
  import { withTheme } from '../../testing';
9
8
 
10
- export default {
9
+ import { Link } from './Link';
10
+
11
+ const meta = {
11
12
  title: 'ui/react-ui-core/Link',
12
13
  component: Link,
13
14
  decorators: [withTheme],
14
- parameters: { chromatic: { disableSnapshot: false } },
15
- } as any;
15
+ } satisfies Meta<typeof Link>;
16
+
17
+ export default meta;
18
+
19
+ type Story = StoryObj<typeof meta>;
16
20
 
17
- export const Default = { args: { children: 'Hello', href: '#' } };
21
+ export const Default: Story = { args: { children: 'Hello', href: '#' } };
@@ -2,14 +2,12 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- import '@dxos-theme';
6
-
7
5
  import { DndContext, type DragEndEvent, type DragStartEvent } from '@dnd-kit/core';
8
- import { arrayMove, SortableContext, useSortable, verticalListSortingStrategy } from '@dnd-kit/sortable';
6
+ import { SortableContext, arrayMove, useSortable, verticalListSortingStrategy } from '@dnd-kit/sortable';
9
7
  import { CSS } from '@dnd-kit/utilities';
10
8
  import { useArrowNavigationGroup } from '@fluentui/react-tabster';
11
- import { DotsSixVertical, PushPin } from '@phosphor-icons/react';
12
- import React, { type ReactNode, useState } from 'react';
9
+ import { type Meta, type StoryObj } from '@storybook/react-vite';
10
+ import React, { type ReactNode, useCallback, useState } from 'react';
13
11
 
14
12
  import {
15
13
  getSize,
@@ -18,17 +16,22 @@ import {
18
16
  ghostSelectedTrackingInterFromNormal,
19
17
  mx,
20
18
  surfaceShadow,
21
- } from '@dxos/react-ui-theme';
19
+ } from '@dxos/ui-theme';
22
20
 
23
- import { List, ListItem, type ListScopedProps } from './List';
24
21
  import { withTheme } from '../../testing';
22
+ import { Icon } from '../Icon';
25
23
 
26
- export default {
24
+ import { List, ListItem, type ListScopedProps } from './List';
25
+
26
+ const meta = {
27
27
  title: 'ui/react-ui-core/List',
28
28
  component: List,
29
29
  decorators: [withTheme],
30
- parameters: { chromatic: { disableSnapshot: false } },
31
- };
30
+ } satisfies Meta<typeof List>;
31
+
32
+ export default meta;
33
+
34
+ type Story = StoryObj<typeof meta>;
32
35
 
33
36
  const UniformListItem = ({ id, text }: { id: string; text: string }) => {
34
37
  const { attributes, listeners, setNodeRef, transform } = useSortable({ id });
@@ -41,17 +44,17 @@ const UniformListItem = ({ id, text }: { id: string; text: string }) => {
41
44
  style={{ transform: CSS.Transform.toString(transform) }}
42
45
  >
43
46
  <ListItem.Endcap>
44
- <DotsSixVertical className={mx(getSize(5), 'mbs-2.5')} />
47
+ <Icon icon='ph--dots-six-vertical--regular' classNames={mx(getSize(5), 'mbs-2.5')} />
45
48
  </ListItem.Endcap>
46
49
  <ListItem.Heading classNames='grow pbs-2'>{text}</ListItem.Heading>
47
50
  <ListItem.Endcap>
48
- <PushPin className={mx(getSize(5), 'mbs-2.5')} />
51
+ <Icon icon='ph--push-pin--regular' classNames={mx(getSize(5), 'mbs-2.5')} />
49
52
  </ListItem.Endcap>
50
53
  </ListItem.Root>
51
54
  );
52
55
  };
53
56
 
54
- export const UniformSizeDraggable = {
57
+ export const UniformSizeDraggable: Story = {
55
58
  render: ({ ...args }) => {
56
59
  const [items, setItems] = useState(
57
60
  [...Array(12)].map((_, index) => ({
@@ -60,16 +63,20 @@ export const UniformSizeDraggable = {
60
63
  })),
61
64
  );
62
65
 
63
- const handleDragEnd = (event: DragEndEvent) => {
64
- const { active, over } = event;
65
- if (active.id !== over?.id) {
66
- setItems((items) => {
67
- const oldIndex = items.findIndex((item) => item.id === active.id);
68
- const newIndex = items.findIndex((item) => item.id === over?.id);
69
- return arrayMove(items, oldIndex, newIndex);
70
- });
71
- }
72
- };
66
+ const handleDragEnd = useCallback(
67
+ (event: DragEndEvent) => {
68
+ const { active, over } = event;
69
+ if (active.id !== over?.id) {
70
+ setItems((items) => {
71
+ const oldIndex = items.findIndex((item) => item.id === active.id);
72
+ const newIndex = items.findIndex((item) => item.id === over?.id);
73
+ return arrayMove(items, oldIndex, newIndex);
74
+ });
75
+ }
76
+ },
77
+ [items],
78
+ );
79
+
73
80
  return (
74
81
  <DndContext onDragEnd={handleDragEnd}>
75
82
  <SortableContext items={items.map(({ id }) => id)} strategy={verticalListSortingStrategy}>
@@ -103,19 +110,19 @@ const ManySizesDraggableListItem = ({
103
110
  style={{ transform: CSS.Translate.toString(transform) }}
104
111
  >
105
112
  <ListItem.Endcap>
106
- <DotsSixVertical className={mx(getSize(5), 'mbs-2.5')} />
113
+ <Icon icon='ph--dots-six-vertical--regular' classNames={mx(getSize(5), 'mbs-2.5')} />
107
114
  </ListItem.Endcap>
108
115
  <ListItem.Heading classNames='grow pbs-2' asChild>
109
116
  {text}
110
117
  </ListItem.Heading>
111
118
  <ListItem.Endcap>
112
- <PushPin className={mx(getSize(5), 'mbs-2.5')} />
119
+ <Icon icon='ph--push-pin--regular' classNames={mx(getSize(5), 'mbs-2.5')} />
113
120
  </ListItem.Endcap>
114
121
  </ListItem.Root>
115
122
  );
116
123
  };
117
124
 
118
- export const ManySizesDraggable = {
125
+ export const ManySizesDraggable: Story = {
119
126
  render: ({ ...args }) => {
120
127
  const [items, setItems] = useState(
121
128
  [...Array(12)].map((_, index) => ({
@@ -163,7 +170,7 @@ export const ManySizesDraggable = {
163
170
  args: {},
164
171
  };
165
172
 
166
- export const Collapsible = {
173
+ export const Collapsible: Story = {
167
174
  render: ({ ...args }) => {
168
175
  const [items, _setItems] = useState(
169
176
  [...Array(12)].map((_, index) => ({
@@ -181,7 +188,7 @@ export const Collapsible = {
181
188
  {index !== 2 ? <ListItem.OpenTrigger /> : <ListItem.MockOpenTrigger />}
182
189
  <ListItem.Heading classNames='grow pbs-2'>{text}</ListItem.Heading>
183
190
  <ListItem.Endcap>
184
- <PushPin className={mx(getSize(5), 'mbs-2.5')} />
191
+ <Icon icon='ph--push-pin--regular' classNames={mx(getSize(5), 'mbs-2.5')} />
185
192
  </ListItem.Endcap>
186
193
  </div>
187
194
  {index !== 2 && <ListItem.CollapsibleContent>{body}</ListItem.CollapsibleContent>}
@@ -192,11 +199,10 @@ export const Collapsible = {
192
199
  },
193
200
  args: {
194
201
  variant: 'unordered',
195
- // toggleOpenLabel: 'Open/close storybook list item', // TODO(burdon): ???
196
202
  },
197
203
  };
198
204
 
199
- export const SelectableListbox = {
205
+ export const SelectableListbox: Story = {
200
206
  render: () => {
201
207
  const [selectedId, setSelectedId] = useState<string>();
202
208
  const arrowNavigationAttrs = useArrowNavigationGroup({ axis: 'vertical' });
@@ -223,11 +229,11 @@ export const SelectableListbox = {
223
229
  key={id}
224
230
  tabIndex={0}
225
231
  selected={selectedId === id}
226
- classNames={mx('items-center', ghostHover, ghostSelected, ghostSelectedTrackingInterFromNormal)}
232
+ classNames={mx(ghostHover, ghostSelected, ghostSelectedTrackingInterFromNormal)}
227
233
  onClick={() => setSelectedId(id)}
228
234
  onKeyUp={(event) => handleKeyUp(event, id)}
229
235
  >
230
- <ListItem.Heading classNames='grow'>Lorem ipsum dolor sit amet</ListItem.Heading>
236
+ <ListItem.Heading classNames='flex pli-1 items-center grow truncate'>{text}</ListItem.Heading>
231
237
  </ListItem.Root>
232
238
  ))}
233
239
  </List>
@@ -2,34 +2,35 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { CaretDown, CaretRight } from '@phosphor-icons/react';
6
5
  import { Slot } from '@radix-ui/react-slot';
7
- import React, { type ComponentPropsWithoutRef, type FC, forwardRef, type ForwardRefExoticComponent } from 'react';
6
+ import React, { type ComponentPropsWithoutRef, type FC, type ForwardRefExoticComponent, forwardRef } from 'react';
8
7
 
9
8
  import {
9
+ LIST_ITEM_NAME,
10
+ LIST_NAME,
11
+ ListItemCollapsibleContent,
12
+ type ListItemCollapsibleContentProps,
13
+ type ListItemScopedProps,
10
14
  List as ListPrimitive,
11
- type ListProps as ListPrimitiveProps,
12
- type ListScopedProps,
15
+ ListItem as ListPrimitiveItem,
13
16
  ListItemHeading as ListPrimitiveItemHeading,
14
17
  type ListItemHeadingProps as ListPrimitiveItemHeadingProps,
15
18
  ListItemOpenTrigger as ListPrimitiveItemOpenTrigger,
16
19
  type ListItemOpenTriggerProps as ListPrimitiveItemOpenTriggerProps,
17
- ListItemCollapsibleContent,
18
- type ListItemCollapsibleContentProps,
19
- ListItem as ListPrimitiveItem,
20
20
  type ListItemProps as ListPrimitiveItemProps,
21
- type ListItemScopedProps,
22
- LIST_NAME,
23
- LIST_ITEM_NAME,
21
+ type ListProps as ListPrimitiveProps,
22
+ type ListScopedProps,
24
23
  useListContext,
25
24
  useListItemContext,
26
25
  } from '@dxos/react-list';
27
- import { type Density } from '@dxos/react-ui-types';
26
+ import { type Density } from '@dxos/ui-types';
28
27
 
29
- import { ListDropIndicator } from './ListDropIndicator';
30
28
  import { useDensityContext, useThemeContext } from '../../hooks';
31
29
  import { type ThemedClassName } from '../../util';
32
30
  import { DensityProvider } from '../DensityProvider';
31
+ import { Icon } from '../Icon';
32
+
33
+ import { ListDropIndicator } from './ListDropIndicator';
33
34
 
34
35
  type ListProps = ThemedClassName<ListPrimitiveProps> & { density?: Density };
35
36
 
@@ -106,7 +107,6 @@ const ListItemOpenTrigger = forwardRef<HTMLButtonElement, ListItemOpenTriggerPro
106
107
  const { tx } = useThemeContext();
107
108
  const density = useDensityContext();
108
109
  const { open } = useListItemContext(LIST_ITEM_NAME, __listItemScope);
109
- const Icon = open ? CaretDown : CaretRight;
110
110
  return (
111
111
  <ListPrimitiveItemOpenTrigger
112
112
  {...props}
@@ -115,10 +115,9 @@ const ListItemOpenTrigger = forwardRef<HTMLButtonElement, ListItemOpenTriggerPro
115
115
  >
116
116
  {children || (
117
117
  <Icon
118
- {...{
119
- weight: 'bold',
120
- className: tx('list.item.openTriggerIcon', 'list__listItem__openTrigger__icon', {}),
121
- }}
118
+ size={3}
119
+ icon={open ? 'ph--caret-down--bold' : 'ph--caret-right--bold'}
120
+ classNames={tx('list.item.openTriggerIcon', 'list__listItem__openTrigger__icon', {})}
122
121
  />
123
122
  )}
124
123
  </ListPrimitiveItemOpenTrigger>
@@ -18,7 +18,7 @@ const orientationStyles: Record<Orientation, HTMLAttributes<HTMLElement>['classN
18
18
  horizontal:
19
19
  'h-[--line-thickness] left-[calc(var(--line-inset)+var(--terminal-radius))] right-[--line-inset] before:left-[--terminal-inset]',
20
20
  vertical:
21
- 'w-[--line-thickness] top-[calc(var(--line-inset)+var(--terminal-radius))] bottom-[--line-inset] before:top-[--terminal-inset]',
21
+ 'is-[--line-thickness] top-[calc(var(--line-inset)+var(--terminal-radius))] bottom-[--line-inset] before:top-[--terminal-inset]',
22
22
  };
23
23
 
24
24
  const edgeStyles: Record<Edge, HTMLAttributes<HTMLElement>['className']> = {
@@ -2,13 +2,13 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import '@dxos-theme';
6
-
5
+ import { type Meta, type StoryObj } from '@storybook/react-vite';
7
6
  import React from 'react';
8
7
 
9
- import { Tree, TreeItem } from './Tree';
10
8
  import { withTheme } from '../../testing';
11
9
 
10
+ import { Tree, TreeItem } from './Tree';
11
+
12
12
  type StorybookTreeProps = {
13
13
  data: any;
14
14
  };
@@ -55,15 +55,18 @@ const DefaultStory = ({ data }: StorybookTreeProps) => {
55
55
  return <StorybookTreeItem data={data} />;
56
56
  };
57
57
 
58
- export default {
58
+ const meta = {
59
59
  title: 'ui/react-ui-core/Tree',
60
- component: Tree,
60
+ component: Tree as any,
61
61
  render: DefaultStory,
62
62
  decorators: [withTheme],
63
- parameters: { chromatic: { disableSnapshot: false } },
64
- };
63
+ } satisfies Meta<typeof DefaultStory>;
64
+
65
+ export default meta;
66
+
67
+ type Story = StoryObj<typeof meta>;
65
68
 
66
- export const Default = {
69
+ export const Default: Story = {
67
70
  args: {
68
71
  data: {
69
72
  foo: 100,
@@ -2,9 +2,12 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import React, { type ComponentPropsWithoutRef, type FC, forwardRef, type ForwardRefExoticComponent } from 'react';
5
+ import React, { type ComponentPropsWithoutRef, type FC, type ForwardRefExoticComponent, forwardRef } from 'react';
6
+
7
+ import { type ThemedClassName } from '../../util';
6
8
 
7
9
  import {
10
+ LIST_ITEM_NAME,
8
11
  List,
9
12
  ListItem,
10
13
  type ListItemCollapsibleContentProps,
@@ -13,11 +16,9 @@ import {
13
16
  type ListItemRootProps,
14
17
  type ListProps,
15
18
  type ListScopedProps,
16
- LIST_ITEM_NAME,
17
19
  useListItemContext,
18
20
  } from './List';
19
21
  import { TreeDropIndicator } from './TreeDropIndicator';
20
- import { type ThemedClassName } from '../../util';
21
22
 
22
23
  type TreeRootProps = ListProps;
23
24
 
@@ -3,7 +3,7 @@
3
3
  //
4
4
 
5
5
  import { type Instruction } from '@atlaskit/pragmatic-drag-and-drop-hitbox/tree-item';
6
- import React, { type HTMLAttributes, type CSSProperties } from 'react';
6
+ import React, { type CSSProperties, type HTMLAttributes } from 'react';
7
7
 
8
8
  // Tree item hitbox
9
9
  // https://github.com/atlassian/pragmatic-drag-and-drop/blob/main/packages/hitbox/constellation/index/about.mdx#tree-item
@@ -2,14 +2,16 @@
2
2
  // Copyright 2024 DXOS.org
3
3
  //
4
4
 
5
+ import { type Meta, type StoryObj } from '@storybook/react-vite';
5
6
  import React from 'react';
6
7
 
7
8
  import { faker } from '@dxos/random';
8
9
 
9
- import { Treegrid } from './Treegrid';
10
10
  import { withTheme } from '../../testing';
11
11
  import { Icon } from '../Icon';
12
12
 
13
+ import { Treegrid } from './Treegrid';
14
+
13
15
  faker.seed(1234);
14
16
 
15
17
  type StorybookNode = {
@@ -86,7 +88,7 @@ const content = {
86
88
  icon: 'ph--planet--regular',
87
89
  },
88
90
  ],
89
- } satisfies StorybookNode;
91
+ } as StorybookNode;
90
92
 
91
93
  function* visitor(node: StorybookNode, isOpen?: (node: StorybookNode) => boolean): Generator<StorybookIteratorNode> {
92
94
  const stack: StorybookIteratorNode[] = [
@@ -141,11 +143,15 @@ const DefaultStory = () => {
141
143
  );
142
144
  };
143
145
 
144
- export default {
146
+ const meta = {
145
147
  title: 'ui/react-ui-core/Treegrid',
146
- component: Treegrid.Root,
148
+ component: Treegrid.Root as any,
147
149
  render: DefaultStory,
148
150
  decorators: [withTheme],
149
- };
151
+ } satisfies Meta<typeof DefaultStory>;
152
+
153
+ export default meta;
154
+
155
+ type Story = StoryObj<typeof meta>;
150
156
 
151
- export const Default = {};
157
+ export const Default: Story = {};