@dxos/react-ui 0.1.41-next.d517c89 → 0.3.3-main.3ce60d4

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 (546) hide show
  1. package/README.md +5 -1
  2. package/README.yml +1 -0
  3. package/dist/lib/browser/index.mjs +2096 -2849
  4. package/dist/lib/browser/index.mjs.map +4 -4
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/types/src/components/Avatars/Avatar.d.ts +51 -0
  7. package/dist/types/src/components/Avatars/Avatar.d.ts.map +1 -0
  8. package/dist/types/src/components/Avatars/Avatar.stories.d.ts +27 -0
  9. package/dist/types/src/components/Avatars/Avatar.stories.d.ts.map +1 -0
  10. package/dist/types/src/components/Avatars/AvatarGroup.d.ts +21 -0
  11. package/dist/types/src/components/Avatars/AvatarGroup.d.ts.map +1 -0
  12. package/dist/types/src/components/Avatars/AvatarGroup.stories.d.ts +9 -0
  13. package/dist/types/src/components/Avatars/AvatarGroup.stories.d.ts.map +1 -0
  14. package/dist/types/src/components/Avatars/index.d.ts +3 -0
  15. package/dist/types/src/components/Avatars/index.d.ts.map +1 -0
  16. package/dist/types/src/components/Breadcrumb/Breadcrumb.d.ts +29 -0
  17. package/dist/types/src/components/Breadcrumb/Breadcrumb.d.ts.map +1 -0
  18. package/dist/types/src/components/Breadcrumb/Breadcrumb.stories.d.ts +9 -0
  19. package/dist/types/src/components/Breadcrumb/Breadcrumb.stories.d.ts.map +1 -0
  20. package/dist/types/src/components/Breadcrumb/index.d.ts +2 -0
  21. package/dist/types/src/components/Breadcrumb/index.d.ts.map +1 -0
  22. package/dist/types/src/components/Buttons/Button.d.ts +24 -0
  23. package/dist/types/src/components/Buttons/Button.d.ts.map +1 -0
  24. package/dist/types/src/components/Buttons/Button.stories.d.ts +37 -0
  25. package/dist/types/src/components/Buttons/Button.stories.d.ts.map +1 -0
  26. package/dist/types/src/components/Buttons/Toggle.d.ts +8 -0
  27. package/dist/types/src/components/Buttons/Toggle.d.ts.map +1 -0
  28. package/dist/types/src/components/Buttons/Toggle.stories.d.ts +10 -0
  29. package/dist/types/src/components/Buttons/Toggle.stories.d.ts.map +1 -0
  30. package/dist/types/src/components/Buttons/ToggleGroup.d.ts +28 -0
  31. package/dist/types/src/components/Buttons/ToggleGroup.d.ts.map +1 -0
  32. package/dist/types/src/components/Buttons/ToggleGroup.stories.d.ts +15 -0
  33. package/dist/types/src/components/Buttons/ToggleGroup.stories.d.ts.map +1 -0
  34. package/dist/types/src/components/Buttons/index.d.ts +4 -0
  35. package/dist/types/src/components/Buttons/index.d.ts.map +1 -0
  36. package/dist/types/src/components/Card/Card.d.ts +44 -0
  37. package/dist/types/src/components/Card/Card.d.ts.map +1 -0
  38. package/dist/types/src/components/Card/Card.stories.d.ts +49 -0
  39. package/dist/types/src/components/Card/Card.stories.d.ts.map +1 -0
  40. package/dist/types/src/components/Card/index.d.ts +2 -0
  41. package/dist/types/src/components/Card/index.d.ts.map +1 -0
  42. package/dist/types/src/components/Card/testing.d.ts +9 -0
  43. package/dist/types/src/components/Card/testing.d.ts.map +1 -0
  44. package/dist/types/src/components/Center/Center.d.ts +4 -0
  45. package/dist/types/src/components/Center/Center.d.ts.map +1 -0
  46. package/dist/types/src/components/Center/Center.stories.d.ts +11 -0
  47. package/dist/types/src/components/Center/Center.stories.d.ts.map +1 -0
  48. package/dist/types/src/components/Center/index.d.ts +2 -0
  49. package/dist/types/src/components/Center/index.d.ts.map +1 -0
  50. package/dist/types/src/components/ComboBox/ComboBox.d.ts +49 -0
  51. package/dist/types/src/components/ComboBox/ComboBox.d.ts.map +1 -0
  52. package/dist/types/src/components/ComboBox/ComboBox.stories.d.ts +25 -0
  53. package/dist/types/src/components/ComboBox/ComboBox.stories.d.ts.map +1 -0
  54. package/dist/types/src/components/ComboBox/index.d.ts +2 -0
  55. package/dist/types/src/components/ComboBox/index.d.ts.map +1 -0
  56. package/dist/types/src/components/DensityProvider/DensityProvider.d.ts +11 -0
  57. package/dist/types/src/components/DensityProvider/DensityProvider.d.ts.map +1 -0
  58. package/dist/types/src/components/DensityProvider/index.d.ts +2 -0
  59. package/dist/types/src/components/DensityProvider/index.d.ts.map +1 -0
  60. package/dist/types/src/components/Dialogs/AlertDialog.d.ts +29 -0
  61. package/dist/types/src/components/Dialogs/AlertDialog.d.ts.map +1 -0
  62. package/dist/types/src/components/Dialogs/AlertDialog.stories.d.ts +23 -0
  63. package/dist/types/src/components/Dialogs/AlertDialog.stories.d.ts.map +1 -0
  64. package/dist/types/src/components/Dialogs/Dialog.d.ts +27 -0
  65. package/dist/types/src/components/Dialogs/Dialog.d.ts.map +1 -0
  66. package/dist/types/src/components/Dialogs/Dialog.stories.d.ts +21 -0
  67. package/dist/types/src/components/Dialogs/Dialog.stories.d.ts.map +1 -0
  68. package/dist/types/src/components/Dialogs/index.d.ts +3 -0
  69. package/dist/types/src/components/Dialogs/index.d.ts.map +1 -0
  70. package/dist/types/src/components/DropdownMenu/DropdownMenu.d.ts +44 -0
  71. package/dist/types/src/components/DropdownMenu/DropdownMenu.d.ts.map +1 -0
  72. package/dist/types/src/components/DropdownMenu/DropdownMenu.stories.d.ts +14 -0
  73. package/dist/types/src/components/DropdownMenu/DropdownMenu.stories.d.ts.map +1 -0
  74. package/dist/types/src/components/DropdownMenu/index.d.ts +2 -0
  75. package/dist/types/src/components/DropdownMenu/index.d.ts.map +1 -0
  76. package/dist/types/src/components/ElevationProvider/ElevationProvider.d.ts +11 -0
  77. package/dist/types/src/components/ElevationProvider/ElevationProvider.d.ts.map +1 -0
  78. package/dist/types/src/components/ElevationProvider/index.d.ts +2 -0
  79. package/dist/types/src/components/ElevationProvider/index.d.ts.map +1 -0
  80. package/dist/types/src/components/Input/Input.d.ts +55 -0
  81. package/dist/types/src/components/Input/Input.d.ts.map +1 -0
  82. package/dist/types/src/components/Input/Input.stories.d.ts +151 -0
  83. package/dist/types/src/components/Input/Input.stories.d.ts.map +1 -0
  84. package/dist/types/src/components/Input/index.d.ts +2 -0
  85. package/dist/types/src/components/Input/index.d.ts.map +1 -0
  86. package/dist/types/src/components/Link/Link.d.ts +8 -0
  87. package/dist/types/src/components/Link/Link.d.ts.map +1 -0
  88. package/dist/types/src/components/Link/Link.stories.d.ts +10 -0
  89. package/dist/types/src/components/Link/Link.stories.d.ts.map +1 -0
  90. package/dist/types/src/components/Link/index.d.ts +2 -0
  91. package/dist/types/src/components/Link/index.d.ts.map +1 -0
  92. package/dist/types/src/components/List/List.d.ts +25 -0
  93. package/dist/types/src/components/List/List.d.ts.map +1 -0
  94. package/dist/types/src/components/List/List.stories.d.ts +29 -0
  95. package/dist/types/src/components/List/List.stories.d.ts.map +1 -0
  96. package/dist/types/src/components/List/Tree.d.ts +21 -0
  97. package/dist/types/src/components/List/Tree.d.ts.map +1 -0
  98. package/dist/types/src/components/List/Tree.stories.d.ts +29 -0
  99. package/dist/types/src/components/List/Tree.stories.d.ts.map +1 -0
  100. package/dist/types/src/components/List/index.d.ts +3 -0
  101. package/dist/types/src/components/List/index.d.ts.map +1 -0
  102. package/dist/types/src/components/Main/Main.d.ts +57 -0
  103. package/dist/types/src/components/Main/Main.d.ts.map +1 -0
  104. package/dist/types/src/components/Main/Main.stories.d.ts +11 -0
  105. package/dist/types/src/components/Main/Main.stories.d.ts.map +1 -0
  106. package/dist/types/src/components/Main/index.d.ts +2 -0
  107. package/dist/types/src/components/Main/index.d.ts.map +1 -0
  108. package/dist/types/src/components/Main/useSwipeToDismiss.d.ts +11 -0
  109. package/dist/types/src/components/Main/useSwipeToDismiss.d.ts.map +1 -0
  110. package/dist/types/src/components/Message/Message.d.ts +23 -0
  111. package/dist/types/src/components/Message/Message.d.ts.map +1 -0
  112. package/dist/types/src/components/Message/Message.stories.d.ts +19 -0
  113. package/dist/types/src/components/Message/Message.stories.d.ts.map +1 -0
  114. package/dist/types/src/components/Message/index.d.ts +2 -0
  115. package/dist/types/src/components/Message/index.d.ts.map +1 -0
  116. package/dist/types/src/components/Popover/Popover.d.ts +32 -0
  117. package/dist/types/src/components/Popover/Popover.d.ts.map +1 -0
  118. package/dist/types/src/components/Popover/Popover.stories.d.ts +15 -0
  119. package/dist/types/src/components/Popover/Popover.stories.d.ts.map +1 -0
  120. package/dist/types/src/components/Popover/index.d.ts +2 -0
  121. package/dist/types/src/components/Popover/index.d.ts.map +1 -0
  122. package/dist/types/src/components/ProgressBar/ProgressBar.d.ts +7 -0
  123. package/dist/types/src/components/ProgressBar/ProgressBar.d.ts.map +1 -0
  124. package/dist/types/src/components/ProgressBar/ProgressBar.stories.d.ts +12 -0
  125. package/dist/types/src/components/ProgressBar/ProgressBar.stories.d.ts.map +1 -0
  126. package/dist/types/src/components/ProgressBar/index.d.ts +2 -0
  127. package/dist/types/src/components/ProgressBar/index.d.ts.map +1 -0
  128. package/dist/types/src/components/ScrollArea/ScrollArea.d.ts +27 -0
  129. package/dist/types/src/components/ScrollArea/ScrollArea.d.ts.map +1 -0
  130. package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts +14 -0
  131. package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts.map +1 -0
  132. package/dist/types/src/components/ScrollArea/index.d.ts +2 -0
  133. package/dist/types/src/components/ScrollArea/index.d.ts.map +1 -0
  134. package/dist/types/src/components/Select/Select.d.ts +60 -0
  135. package/dist/types/src/components/Select/Select.d.ts.map +1 -0
  136. package/dist/types/src/components/Select/Select.stories.d.ts +16 -0
  137. package/dist/types/src/components/Select/Select.stories.d.ts.map +1 -0
  138. package/dist/types/src/components/Select/index.d.ts +2 -0
  139. package/dist/types/src/components/Select/index.d.ts.map +1 -0
  140. package/dist/types/src/components/Separator/Separator.d.ts +7 -0
  141. package/dist/types/src/components/Separator/Separator.d.ts.map +1 -0
  142. package/dist/types/src/components/Separator/index.d.ts +2 -0
  143. package/dist/types/src/components/Separator/index.d.ts.map +1 -0
  144. package/dist/types/src/components/Tag/Tag.d.ts +10 -0
  145. package/dist/types/src/components/Tag/Tag.d.ts.map +1 -0
  146. package/dist/types/src/components/Tag/Tag.stories.d.ts +10 -0
  147. package/dist/types/src/components/Tag/Tag.stories.d.ts.map +1 -0
  148. package/dist/types/src/components/Tag/index.d.ts +2 -0
  149. package/dist/types/src/components/Tag/index.d.ts.map +1 -0
  150. package/dist/types/src/components/ThemeProvider/ThemeProvider.d.ts +16 -0
  151. package/dist/types/src/components/ThemeProvider/ThemeProvider.d.ts.map +1 -0
  152. package/dist/types/src/components/ThemeProvider/TranslationsProvider.d.ts +20 -0
  153. package/dist/types/src/components/ThemeProvider/TranslationsProvider.d.ts.map +1 -0
  154. package/dist/types/src/components/ThemeProvider/index.d.ts +2 -0
  155. package/dist/types/src/components/ThemeProvider/index.d.ts.map +1 -0
  156. package/dist/types/src/components/Toast/Toast.d.ts +34 -0
  157. package/dist/types/src/components/Toast/Toast.d.ts.map +1 -0
  158. package/dist/types/src/components/Toast/Toast.stories.d.ts +34 -0
  159. package/dist/types/src/components/Toast/Toast.stories.d.ts.map +1 -0
  160. package/dist/types/src/components/Toast/index.d.ts +2 -0
  161. package/dist/types/src/components/Toast/index.d.ts.map +1 -0
  162. package/dist/types/src/components/Toolbar/Toolbar.d.ts +42 -0
  163. package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -0
  164. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts +10 -0
  165. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts.map +1 -0
  166. package/dist/types/src/components/Toolbar/index.d.ts +2 -0
  167. package/dist/types/src/components/Toolbar/index.d.ts.map +1 -0
  168. package/dist/types/src/components/Tooltip/Tooltip.d.ts +23 -0
  169. package/dist/types/src/components/Tooltip/Tooltip.d.ts.map +1 -0
  170. package/dist/types/src/components/Tooltip/Tooltip.stories.d.ts +19 -0
  171. package/dist/types/src/components/Tooltip/Tooltip.stories.d.ts.map +1 -0
  172. package/dist/types/src/components/Tooltip/index.d.ts +2 -0
  173. package/dist/types/src/components/Tooltip/index.d.ts.map +1 -0
  174. package/dist/types/src/components/index.d.ts +25 -6
  175. package/dist/types/src/components/index.d.ts.map +1 -1
  176. package/dist/types/src/hooks/index.d.ts +6 -0
  177. package/dist/types/src/hooks/index.d.ts.map +1 -0
  178. package/dist/types/src/hooks/useDensityContext.d.ts +3 -0
  179. package/dist/types/src/hooks/useDensityContext.d.ts.map +1 -0
  180. package/dist/types/src/hooks/useElevationContext.d.ts +3 -0
  181. package/dist/types/src/hooks/useElevationContext.d.ts.map +1 -0
  182. package/dist/types/src/hooks/useThemeContext.d.ts +2 -0
  183. package/dist/types/src/hooks/useThemeContext.d.ts.map +1 -0
  184. package/dist/types/src/hooks/useTranslationsContext.d.ts +4 -0
  185. package/dist/types/src/hooks/useTranslationsContext.d.ts.map +1 -0
  186. package/dist/types/src/hooks/useVisualViewport.d.ts +6 -0
  187. package/dist/types/src/hooks/useVisualViewport.d.ts.map +1 -0
  188. package/dist/types/src/index.d.ts +6 -5
  189. package/dist/types/src/index.d.ts.map +1 -1
  190. package/dist/types/src/playground/Controls.stories.d.ts +11 -0
  191. package/dist/types/src/playground/Controls.stories.d.ts.map +1 -0
  192. package/dist/types/src/playground/Surfaces.stories.d.ts +9 -0
  193. package/dist/types/src/playground/Surfaces.stories.d.ts.map +1 -0
  194. package/dist/types/src/playground/helpers.d.ts +6 -0
  195. package/dist/types/src/playground/helpers.d.ts.map +1 -0
  196. package/dist/types/src/util/ThemedClassName.d.ts +5 -0
  197. package/dist/types/src/util/ThemedClassName.d.ts.map +1 -0
  198. package/dist/types/src/util/hasIosKeyboard.d.ts +2 -0
  199. package/dist/types/src/util/hasIosKeyboard.d.ts.map +1 -0
  200. package/dist/types/src/util/index.d.ts +2 -2
  201. package/dist/types/src/util/index.d.ts.map +1 -1
  202. package/package.json +43 -41
  203. package/src/components/Avatars/Avatar.stories.tsx +104 -0
  204. package/src/components/Avatars/Avatar.tsx +303 -0
  205. package/src/components/Avatars/AvatarGroup.stories.tsx +49 -0
  206. package/src/components/Avatars/AvatarGroup.tsx +111 -0
  207. package/src/components/Avatars/index.ts +6 -0
  208. package/src/components/Breadcrumb/Breadcrumb.stories.tsx +46 -0
  209. package/src/components/Breadcrumb/Breadcrumb.tsx +116 -0
  210. package/src/{composites/JoinDialog → components/Breadcrumb}/index.ts +1 -1
  211. package/src/components/Buttons/Button.stories.tsx +85 -0
  212. package/src/components/Buttons/Button.tsx +93 -0
  213. package/src/components/Buttons/Toggle.stories.tsx +28 -0
  214. package/src/components/Buttons/Toggle.tsx +23 -0
  215. package/src/components/Buttons/ToggleGroup.stories.tsx +38 -0
  216. package/src/components/Buttons/ToggleGroup.tsx +41 -0
  217. package/src/components/Buttons/index.ts +7 -0
  218. package/src/components/Card/Card.stories.tsx +215 -0
  219. package/src/components/Card/Card.tsx +114 -0
  220. package/src/{panels/SpacePanel → components/Card}/index.ts +1 -1
  221. package/src/components/Card/testing.ts +90 -0
  222. package/src/components/Center/Center.stories.tsx +18 -0
  223. package/src/components/Center/Center.tsx +16 -0
  224. package/src/{layouts/PanelDialog → components/Center}/index.ts +1 -1
  225. package/src/components/ComboBox/ComboBox.stories.tsx +82 -0
  226. package/src/components/ComboBox/ComboBox.tsx +218 -0
  227. package/src/components/ComboBox/index.ts +5 -0
  228. package/src/components/DensityProvider/DensityProvider.tsx +21 -0
  229. package/src/components/DensityProvider/index.ts +5 -0
  230. package/src/components/Dialogs/AlertDialog.stories.tsx +68 -0
  231. package/src/components/Dialogs/AlertDialog.tsx +157 -0
  232. package/src/components/Dialogs/Dialog.stories.tsx +52 -0
  233. package/src/components/Dialogs/Dialog.tsx +143 -0
  234. package/src/components/Dialogs/index.ts +6 -0
  235. package/src/components/DropdownMenu/DropdownMenu.stories.tsx +102 -0
  236. package/src/components/DropdownMenu/DropdownMenu.tsx +171 -0
  237. package/src/{layouts/PanelPopover → components/DropdownMenu}/index.ts +1 -1
  238. package/src/components/ElevationProvider/ElevationProvider.tsx +21 -0
  239. package/src/components/ElevationProvider/index.ts +5 -0
  240. package/src/components/Input/Input.stories.tsx +199 -0
  241. package/src/components/Input/Input.tsx +369 -0
  242. package/src/{composites/SpaceDialog → components/Input}/index.ts +1 -1
  243. package/src/components/Link/Link.stories.tsx +13 -0
  244. package/src/components/Link/Link.tsx +20 -0
  245. package/src/components/Link/index.ts +5 -0
  246. package/src/components/List/List.stories.tsx +184 -0
  247. package/src/components/List/List.tsx +173 -0
  248. package/src/components/List/Tree.stories.tsx +80 -0
  249. package/src/components/List/Tree.tsx +76 -0
  250. package/src/components/List/index.ts +6 -0
  251. package/src/components/Main/Main.stories.tsx +52 -0
  252. package/src/components/Main/Main.tsx +271 -0
  253. package/src/components/Main/index.ts +5 -0
  254. package/src/components/Main/useSwipeToDismiss.ts +103 -0
  255. package/src/components/Message/Message.stories.tsx +39 -0
  256. package/src/components/Message/Message.tsx +109 -0
  257. package/src/components/Message/index.ts +5 -0
  258. package/src/components/Popover/Popover.stories.tsx +38 -0
  259. package/src/components/Popover/Popover.tsx +123 -0
  260. package/src/components/Popover/index.ts +5 -0
  261. package/src/components/ProgressBar/ProgressBar.stories.tsx +33 -0
  262. package/src/components/ProgressBar/ProgressBar.tsx +29 -0
  263. package/src/components/ProgressBar/index.ts +5 -0
  264. package/src/components/ScrollArea/ScrollArea.stories.tsx +43 -0
  265. package/src/components/ScrollArea/ScrollArea.tsx +105 -0
  266. package/src/components/ScrollArea/index.ts +5 -0
  267. package/src/components/Select/Select.stories.tsx +68 -0
  268. package/src/components/Select/Select.tsx +223 -0
  269. package/src/components/Select/index.ts +5 -0
  270. package/src/components/Separator/Separator.tsx +28 -0
  271. package/src/components/Separator/index.ts +5 -0
  272. package/src/components/Tag/Tag.stories.tsx +42 -0
  273. package/src/components/Tag/Tag.tsx +23 -0
  274. package/src/components/Tag/index.ts +5 -0
  275. package/src/components/ThemeProvider/ThemeProvider.tsx +76 -0
  276. package/src/components/ThemeProvider/TranslationsProvider.tsx +63 -0
  277. package/src/components/ThemeProvider/index.ts +5 -0
  278. package/src/components/Toast/Toast.stories.tsx +61 -0
  279. package/src/components/Toast/Toast.tsx +126 -0
  280. package/src/components/Toast/index.ts +5 -0
  281. package/src/components/Toolbar/Toolbar.stories.tsx +77 -0
  282. package/src/components/Toolbar/Toolbar.tsx +99 -0
  283. package/src/components/Toolbar/index.ts +5 -0
  284. package/src/components/Tooltip/Tooltip.stories.tsx +41 -0
  285. package/src/components/Tooltip/Tooltip.tsx +84 -0
  286. package/src/components/Tooltip/index.ts +5 -0
  287. package/src/components/index.ts +27 -7
  288. package/src/hooks/index.ts +9 -0
  289. package/src/hooks/useDensityContext.ts +14 -0
  290. package/src/hooks/useElevationContext.ts +14 -0
  291. package/src/hooks/useThemeContext.ts +9 -0
  292. package/src/hooks/useTranslationsContext.ts +9 -0
  293. package/src/hooks/useVisualViewport.ts +24 -0
  294. package/src/index.ts +8 -6
  295. package/src/playground/Controls.stories.tsx +90 -0
  296. package/src/playground/Surfaces.stories.tsx +43 -0
  297. package/src/playground/helpers.tsx +32 -0
  298. package/src/util/ThemedClassName.ts +7 -0
  299. package/src/util/hasIosKeyboard.ts +8 -0
  300. package/src/util/index.ts +2 -2
  301. package/dist/lib/browser/chunk-5VRACIDE.mjs +0 -10
  302. package/dist/lib/browser/chunk-5VRACIDE.mjs.map +0 -7
  303. package/dist/lib/browser/testing/index.mjs +0 -64
  304. package/dist/lib/browser/testing/index.mjs.map +0 -7
  305. package/dist/types/src/components/Clipboard/ClipboardProvider.d.ts +0 -9
  306. package/dist/types/src/components/Clipboard/ClipboardProvider.d.ts.map +0 -1
  307. package/dist/types/src/components/Clipboard/CopyButton.d.ts +0 -5
  308. package/dist/types/src/components/Clipboard/CopyButton.d.ts.map +0 -1
  309. package/dist/types/src/components/Clipboard/index.d.ts +0 -3
  310. package/dist/types/src/components/Clipboard/index.d.ts.map +0 -1
  311. package/dist/types/src/components/IdentityList/DeviceList.d.ts +0 -7
  312. package/dist/types/src/components/IdentityList/DeviceList.d.ts.map +0 -1
  313. package/dist/types/src/components/IdentityList/IdentityListItem.d.ts +0 -7
  314. package/dist/types/src/components/IdentityList/IdentityListItem.d.ts.map +0 -1
  315. package/dist/types/src/components/IdentityList/IdentityListItem.stories.d.ts +0 -21
  316. package/dist/types/src/components/IdentityList/IdentityListItem.stories.d.ts.map +0 -1
  317. package/dist/types/src/components/IdentityList/SpaceMemberList.d.ts +0 -7
  318. package/dist/types/src/components/IdentityList/SpaceMemberList.d.ts.map +0 -1
  319. package/dist/types/src/components/IdentityList/SpaceMemberListContainer.d.ts +0 -9
  320. package/dist/types/src/components/IdentityList/SpaceMemberListContainer.d.ts.map +0 -1
  321. package/dist/types/src/components/IdentityList/index.d.ts +0 -5
  322. package/dist/types/src/components/IdentityList/index.d.ts.map +0 -1
  323. package/dist/types/src/components/InvitationEmoji/InvitationEmoji.d.ts +0 -7
  324. package/dist/types/src/components/InvitationEmoji/InvitationEmoji.d.ts.map +0 -1
  325. package/dist/types/src/components/InvitationEmoji/index.d.ts +0 -2
  326. package/dist/types/src/components/InvitationEmoji/index.d.ts.map +0 -1
  327. package/dist/types/src/components/InvitationList/InvitationList.d.ts +0 -7
  328. package/dist/types/src/components/InvitationList/InvitationList.d.ts.map +0 -1
  329. package/dist/types/src/components/InvitationList/InvitationList.stories.d.ts +0 -10
  330. package/dist/types/src/components/InvitationList/InvitationList.stories.d.ts.map +0 -1
  331. package/dist/types/src/components/InvitationList/InvitationListContainer.d.ts +0 -7
  332. package/dist/types/src/components/InvitationList/InvitationListContainer.d.ts.map +0 -1
  333. package/dist/types/src/components/InvitationList/InvitationListItem.d.ts +0 -9
  334. package/dist/types/src/components/InvitationList/InvitationListItem.d.ts.map +0 -1
  335. package/dist/types/src/components/InvitationList/InvitationListProps.d.ts +0 -4
  336. package/dist/types/src/components/InvitationList/InvitationListProps.d.ts.map +0 -1
  337. package/dist/types/src/components/InvitationList/InvitationStatusAvatar.d.ts +0 -15
  338. package/dist/types/src/components/InvitationList/InvitationStatusAvatar.d.ts.map +0 -1
  339. package/dist/types/src/components/InvitationList/InvitationStatusAvatar.stories.d.ts +0 -9
  340. package/dist/types/src/components/InvitationList/InvitationStatusAvatar.stories.d.ts.map +0 -1
  341. package/dist/types/src/components/InvitationList/index.d.ts +0 -5
  342. package/dist/types/src/components/InvitationList/index.d.ts.map +0 -1
  343. package/dist/types/src/components/PanelSeparator/PanelSeparator.d.ts +0 -3
  344. package/dist/types/src/components/PanelSeparator/PanelSeparator.d.ts.map +0 -1
  345. package/dist/types/src/components/PanelSeparator/index.d.ts +0 -2
  346. package/dist/types/src/components/PanelSeparator/index.d.ts.map +0 -1
  347. package/dist/types/src/components/SpaceList/SpaceListItem.d.ts +0 -7
  348. package/dist/types/src/components/SpaceList/SpaceListItem.d.ts.map +0 -1
  349. package/dist/types/src/components/SpaceList/index.d.ts +0 -2
  350. package/dist/types/src/components/SpaceList/index.d.ts.map +0 -1
  351. package/dist/types/src/composites/DevicesDialog/DevicesDialog.d.ts +0 -6
  352. package/dist/types/src/composites/DevicesDialog/DevicesDialog.d.ts.map +0 -1
  353. package/dist/types/src/composites/DevicesDialog/index.d.ts +0 -2
  354. package/dist/types/src/composites/DevicesDialog/index.d.ts.map +0 -1
  355. package/dist/types/src/composites/IdentityPopover/IdentityPopover.d.ts +0 -9
  356. package/dist/types/src/composites/IdentityPopover/IdentityPopover.d.ts.map +0 -1
  357. package/dist/types/src/composites/IdentityPopover/index.d.ts +0 -2
  358. package/dist/types/src/composites/IdentityPopover/index.d.ts.map +0 -1
  359. package/dist/types/src/composites/JoinDialog/JoinDialog.d.ts +0 -6
  360. package/dist/types/src/composites/JoinDialog/JoinDialog.d.ts.map +0 -1
  361. package/dist/types/src/composites/JoinDialog/JoinDialog.stories.d.ts +0 -10
  362. package/dist/types/src/composites/JoinDialog/JoinDialog.stories.d.ts.map +0 -1
  363. package/dist/types/src/composites/JoinDialog/index.d.ts +0 -2
  364. package/dist/types/src/composites/JoinDialog/index.d.ts.map +0 -1
  365. package/dist/types/src/composites/Shell/Shell.d.ts +0 -6
  366. package/dist/types/src/composites/Shell/Shell.d.ts.map +0 -1
  367. package/dist/types/src/composites/Shell/Shell.stories.d.ts +0 -10
  368. package/dist/types/src/composites/Shell/Shell.stories.d.ts.map +0 -1
  369. package/dist/types/src/composites/Shell/ShellContext.d.ts +0 -22
  370. package/dist/types/src/composites/Shell/ShellContext.d.ts.map +0 -1
  371. package/dist/types/src/composites/Shell/index.d.ts +0 -3
  372. package/dist/types/src/composites/Shell/index.d.ts.map +0 -1
  373. package/dist/types/src/composites/SpaceDialog/SpaceDialog.d.ts +0 -6
  374. package/dist/types/src/composites/SpaceDialog/SpaceDialog.d.ts.map +0 -1
  375. package/dist/types/src/composites/SpaceDialog/index.d.ts +0 -2
  376. package/dist/types/src/composites/SpaceDialog/index.d.ts.map +0 -1
  377. package/dist/types/src/composites/index.d.ts +0 -5
  378. package/dist/types/src/composites/index.d.ts.map +0 -1
  379. package/dist/types/src/layouts/PanelAlertDialog/PanelAlertDialog.d.ts +0 -14
  380. package/dist/types/src/layouts/PanelAlertDialog/PanelAlertDialog.d.ts.map +0 -1
  381. package/dist/types/src/layouts/PanelAlertDialog/index.d.ts +0 -2
  382. package/dist/types/src/layouts/PanelAlertDialog/index.d.ts.map +0 -1
  383. package/dist/types/src/layouts/PanelDialog/PanelDialog.d.ts +0 -14
  384. package/dist/types/src/layouts/PanelDialog/PanelDialog.d.ts.map +0 -1
  385. package/dist/types/src/layouts/PanelDialog/index.d.ts +0 -2
  386. package/dist/types/src/layouts/PanelDialog/index.d.ts.map +0 -1
  387. package/dist/types/src/layouts/PanelPopover/PanelPopover.d.ts +0 -11
  388. package/dist/types/src/layouts/PanelPopover/PanelPopover.d.ts.map +0 -1
  389. package/dist/types/src/layouts/PanelPopover/index.d.ts +0 -2
  390. package/dist/types/src/layouts/PanelPopover/index.d.ts.map +0 -1
  391. package/dist/types/src/layouts/PanelSidebar/PanelSidebar.d.ts +0 -19
  392. package/dist/types/src/layouts/PanelSidebar/PanelSidebar.d.ts.map +0 -1
  393. package/dist/types/src/layouts/PanelSidebar/index.d.ts +0 -2
  394. package/dist/types/src/layouts/PanelSidebar/index.d.ts.map +0 -1
  395. package/dist/types/src/layouts/index.d.ts +0 -5
  396. package/dist/types/src/layouts/index.d.ts.map +0 -1
  397. package/dist/types/src/panels/DevicesPanel/DevicesPanel.d.ts +0 -10
  398. package/dist/types/src/panels/DevicesPanel/DevicesPanel.d.ts.map +0 -1
  399. package/dist/types/src/panels/DevicesPanel/index.d.ts +0 -2
  400. package/dist/types/src/panels/DevicesPanel/index.d.ts.map +0 -1
  401. package/dist/types/src/panels/IdentityPanel/IdentityPanel.d.ts +0 -6
  402. package/dist/types/src/panels/IdentityPanel/IdentityPanel.d.ts.map +0 -1
  403. package/dist/types/src/panels/IdentityPanel/index.d.ts +0 -2
  404. package/dist/types/src/panels/IdentityPanel/index.d.ts.map +0 -1
  405. package/dist/types/src/panels/JoinPanel/JoinHeading.d.ts +0 -13
  406. package/dist/types/src/panels/JoinPanel/JoinHeading.d.ts.map +0 -1
  407. package/dist/types/src/panels/JoinPanel/JoinPanel.d.ts +0 -3
  408. package/dist/types/src/panels/JoinPanel/JoinPanel.d.ts.map +0 -1
  409. package/dist/types/src/panels/JoinPanel/JoinPanelProps.d.ts +0 -54
  410. package/dist/types/src/panels/JoinPanel/JoinPanelProps.d.ts.map +0 -1
  411. package/dist/types/src/panels/JoinPanel/index.d.ts +0 -3
  412. package/dist/types/src/panels/JoinPanel/index.d.ts.map +0 -1
  413. package/dist/types/src/panels/JoinPanel/joinMachine.d.ts +0 -64
  414. package/dist/types/src/panels/JoinPanel/joinMachine.d.ts.map +0 -1
  415. package/dist/types/src/panels/JoinPanel/view-states/AdditionMethodSelector.d.ts +0 -4
  416. package/dist/types/src/panels/JoinPanel/view-states/AdditionMethodSelector.d.ts.map +0 -1
  417. package/dist/types/src/panels/JoinPanel/view-states/IdentityAdded.d.ts +0 -15
  418. package/dist/types/src/panels/JoinPanel/view-states/IdentityAdded.d.ts.map +0 -1
  419. package/dist/types/src/panels/JoinPanel/view-states/IdentityInput.d.ts +0 -6
  420. package/dist/types/src/panels/JoinPanel/view-states/IdentityInput.d.ts.map +0 -1
  421. package/dist/types/src/panels/JoinPanel/view-states/InvitationAccepted.d.ts +0 -10
  422. package/dist/types/src/panels/JoinPanel/view-states/InvitationAccepted.d.ts.map +0 -1
  423. package/dist/types/src/panels/JoinPanel/view-states/InvitationAuthenticator.d.ts +0 -7
  424. package/dist/types/src/panels/JoinPanel/view-states/InvitationAuthenticator.d.ts.map +0 -1
  425. package/dist/types/src/panels/JoinPanel/view-states/InvitationInput.d.ts +0 -6
  426. package/dist/types/src/panels/JoinPanel/view-states/InvitationInput.d.ts.map +0 -1
  427. package/dist/types/src/panels/JoinPanel/view-states/InvitationRescuer.d.ts +0 -6
  428. package/dist/types/src/panels/JoinPanel/view-states/InvitationRescuer.d.ts.map +0 -1
  429. package/dist/types/src/panels/JoinPanel/view-states/ViewState.d.ts +0 -10
  430. package/dist/types/src/panels/JoinPanel/view-states/ViewState.d.ts.map +0 -1
  431. package/dist/types/src/panels/JoinPanel/view-states/index.d.ts +0 -8
  432. package/dist/types/src/panels/JoinPanel/view-states/index.d.ts.map +0 -1
  433. package/dist/types/src/panels/SpacePanel/SpacePanel.d.ts +0 -12
  434. package/dist/types/src/panels/SpacePanel/SpacePanel.d.ts.map +0 -1
  435. package/dist/types/src/panels/SpacePanel/SpacePanel.stories.d.ts +0 -8
  436. package/dist/types/src/panels/SpacePanel/SpacePanel.stories.d.ts.map +0 -1
  437. package/dist/types/src/panels/SpacePanel/index.d.ts +0 -2
  438. package/dist/types/src/panels/SpacePanel/index.d.ts.map +0 -1
  439. package/dist/types/src/panels/index.d.ts +0 -5
  440. package/dist/types/src/panels/index.d.ts.map +0 -1
  441. package/dist/types/src/playwright/invitations-manager.d.ts +0 -25
  442. package/dist/types/src/playwright/invitations-manager.d.ts.map +0 -1
  443. package/dist/types/src/playwright/invitations.spec.d.ts +0 -2
  444. package/dist/types/src/playwright/invitations.spec.d.ts.map +0 -1
  445. package/dist/types/src/playwright/playwright.config.d.ts +0 -3
  446. package/dist/types/src/playwright/playwright.config.d.ts.map +0 -1
  447. package/dist/types/src/stories/Invitations.stories.d.ts +0 -14
  448. package/dist/types/src/stories/Invitations.stories.d.ts.map +0 -1
  449. package/dist/types/src/styles/dialogStyles.d.ts +0 -3
  450. package/dist/types/src/styles/dialogStyles.d.ts.map +0 -1
  451. package/dist/types/src/styles/index.d.ts +0 -4
  452. package/dist/types/src/styles/index.d.ts.map +0 -1
  453. package/dist/types/src/styles/invitationStatusStyles.d.ts +0 -20
  454. package/dist/types/src/styles/invitationStatusStyles.d.ts.map +0 -1
  455. package/dist/types/src/styles/panelStyles.d.ts +0 -4
  456. package/dist/types/src/styles/panelStyles.d.ts.map +0 -1
  457. package/dist/types/src/testing/index.d.ts +0 -2
  458. package/dist/types/src/testing/index.d.ts.map +0 -1
  459. package/dist/types/src/testing/shell-manager.d.ts +0 -17
  460. package/dist/types/src/testing/shell-manager.d.ts.map +0 -1
  461. package/dist/types/src/translations/index.d.ts +0 -5
  462. package/dist/types/src/translations/index.d.ts.map +0 -1
  463. package/dist/types/src/translations/locales/en-US.d.ts +0 -66
  464. package/dist/types/src/translations/locales/en-US.d.ts.map +0 -1
  465. package/dist/types/src/util/invitationStatusValue.d.ts +0 -8
  466. package/dist/types/src/util/invitationStatusValue.d.ts.map +0 -1
  467. package/dist/types/src/util/toEmoji.d.ts +0 -2
  468. package/dist/types/src/util/toEmoji.d.ts.map +0 -1
  469. package/src/components/Clipboard/ClipboardProvider.tsx +0 -26
  470. package/src/components/Clipboard/CopyButton.tsx +0 -38
  471. package/src/components/Clipboard/index.ts +0 -6
  472. package/src/components/IdentityList/DeviceList.tsx +0 -31
  473. package/src/components/IdentityList/IdentityListItem.stories.tsx +0 -23
  474. package/src/components/IdentityList/IdentityListItem.tsx +0 -48
  475. package/src/components/IdentityList/SpaceMemberList.tsx +0 -33
  476. package/src/components/IdentityList/SpaceMemberListContainer.tsx +0 -32
  477. package/src/components/IdentityList/index.ts +0 -8
  478. package/src/components/InvitationEmoji/InvitationEmoji.tsx +0 -32
  479. package/src/components/InvitationEmoji/index.ts +0 -5
  480. package/src/components/InvitationList/InvitationList.stories.tsx +0 -65
  481. package/src/components/InvitationList/InvitationList.tsx +0 -33
  482. package/src/components/InvitationList/InvitationListContainer.tsx +0 -27
  483. package/src/components/InvitationList/InvitationListItem.tsx +0 -91
  484. package/src/components/InvitationList/InvitationListProps.ts +0 -7
  485. package/src/components/InvitationList/InvitationStatusAvatar.stories.tsx +0 -52
  486. package/src/components/InvitationList/InvitationStatusAvatar.tsx +0 -91
  487. package/src/components/InvitationList/index.ts +0 -8
  488. package/src/components/PanelSeparator/PanelSeparator.tsx +0 -17
  489. package/src/components/PanelSeparator/index.ts +0 -5
  490. package/src/components/SpaceList/SpaceListItem.tsx +0 -32
  491. package/src/components/SpaceList/index.ts +0 -5
  492. package/src/composites/DevicesDialog/DevicesDialog.tsx +0 -39
  493. package/src/composites/DevicesDialog/index.ts +0 -5
  494. package/src/composites/IdentityPopover/IdentityPopover.tsx +0 -54
  495. package/src/composites/IdentityPopover/index.ts +0 -5
  496. package/src/composites/JoinDialog/JoinDialog.stories.tsx +0 -74
  497. package/src/composites/JoinDialog/JoinDialog.tsx +0 -35
  498. package/src/composites/Shell/Shell.stories.tsx +0 -93
  499. package/src/composites/Shell/Shell.tsx +0 -100
  500. package/src/composites/Shell/ShellContext.tsx +0 -178
  501. package/src/composites/Shell/index.ts +0 -6
  502. package/src/composites/SpaceDialog/SpaceDialog.tsx +0 -39
  503. package/src/composites/index.ts +0 -8
  504. package/src/layouts/PanelAlertDialog/PanelAlertDialog.tsx +0 -40
  505. package/src/layouts/PanelAlertDialog/index.ts +0 -5
  506. package/src/layouts/PanelDialog/PanelDialog.tsx +0 -41
  507. package/src/layouts/PanelPopover/PanelPopover.tsx +0 -40
  508. package/src/layouts/PanelSidebar/PanelSidebar.tsx +0 -124
  509. package/src/layouts/PanelSidebar/index.ts +0 -5
  510. package/src/layouts/index.ts +0 -8
  511. package/src/panels/DevicesPanel/DevicesPanel.tsx +0 -113
  512. package/src/panels/DevicesPanel/index.ts +0 -5
  513. package/src/panels/IdentityPanel/IdentityPanel.tsx +0 -43
  514. package/src/panels/IdentityPanel/index.ts +0 -5
  515. package/src/panels/JoinPanel/JoinHeading.tsx +0 -73
  516. package/src/panels/JoinPanel/JoinPanel.tsx +0 -247
  517. package/src/panels/JoinPanel/JoinPanelProps.ts +0 -90
  518. package/src/panels/JoinPanel/index.ts +0 -6
  519. package/src/panels/JoinPanel/joinMachine.ts +0 -444
  520. package/src/panels/JoinPanel/view-states/AdditionMethodSelector.tsx +0 -63
  521. package/src/panels/JoinPanel/view-states/IdentityAdded.tsx +0 -99
  522. package/src/panels/JoinPanel/view-states/IdentityInput.tsx +0 -81
  523. package/src/panels/JoinPanel/view-states/InvitationAccepted.tsx +0 -74
  524. package/src/panels/JoinPanel/view-states/InvitationAuthenticator.tsx +0 -152
  525. package/src/panels/JoinPanel/view-states/InvitationInput.tsx +0 -75
  526. package/src/panels/JoinPanel/view-states/InvitationRescuer.tsx +0 -115
  527. package/src/panels/JoinPanel/view-states/ViewState.tsx +0 -153
  528. package/src/panels/JoinPanel/view-states/index.ts +0 -11
  529. package/src/panels/SpacePanel/SpacePanel.stories.tsx +0 -15
  530. package/src/panels/SpacePanel/SpacePanel.tsx +0 -105
  531. package/src/panels/index.ts +0 -8
  532. package/src/playwright/invitations-manager.ts +0 -165
  533. package/src/playwright/invitations.spec.ts +0 -393
  534. package/src/playwright/playwright.config.ts +0 -7
  535. package/src/stories/Invitations.stories.tsx +0 -187
  536. package/src/styles/dialogStyles.ts +0 -8
  537. package/src/styles/index.ts +0 -7
  538. package/src/styles/invitationStatusStyles.ts +0 -42
  539. package/src/styles/panelStyles.ts +0 -7
  540. package/src/testing/index.ts +0 -5
  541. package/src/testing/shell-manager.ts +0 -79
  542. package/src/translations/index.ts +0 -7
  543. package/src/translations/locales/en-US.ts +0 -69
  544. package/src/util/invitationStatusValue.ts +0 -22
  545. package/src/util/toEmoji.ts +0 -22
  546. package/theme-extensions.js +0 -11
@@ -0,0 +1,218 @@
1
+ //
2
+ // Copyright 2023 DXOS.org
3
+ //
4
+
5
+ import { CaretDown, CaretUp } from '@phosphor-icons/react';
6
+ import { createContextScope, type Scope } from '@radix-ui/react-context';
7
+ import { createPopperScope } from '@radix-ui/react-popper';
8
+ import * as PopperPrimitive from '@radix-ui/react-popper';
9
+ import { useCombobox, type UseComboboxReturnValue } from 'downshift';
10
+ import React, { forwardRef, type PropsWithChildren } from 'react';
11
+
12
+ import { useThemeContext } from '../../hooks';
13
+ import { type ThemedClassName } from '../../util';
14
+ import { Button } from '../Buttons';
15
+ import { Input } from '../Input';
16
+
17
+ const COMBOBOX_NAME = 'ComboBox';
18
+
19
+ type ScopedProps<P> = P & { __scopeComboBox?: Scope };
20
+
21
+ type ComboBoxItem = {
22
+ id: string;
23
+ label: string;
24
+ data?: any;
25
+ };
26
+
27
+ type ComboBoxContextValue = {
28
+ items: ComboBoxItem[];
29
+ } & UseComboboxReturnValue<ComboBoxItem>;
30
+
31
+ const usePopperScope = createPopperScope();
32
+ const [createComboBoxContext] = createContextScope(COMBOBOX_NAME, [createPopperScope]);
33
+ const [ComboBoxProvider, useComboBoxContext] = createComboBoxContext<ComboBoxContextValue>(COMBOBOX_NAME);
34
+
35
+ type ComboBoxRootProps = ThemedClassName<
36
+ ScopedProps<
37
+ PropsWithChildren<{
38
+ items?: ComboBoxItem[];
39
+ value?: ComboBoxItem;
40
+ onChange?: (selected: ComboBoxItem | undefined) => void;
41
+ onInputChange?: (text?: string) => void;
42
+ }>
43
+ >
44
+ >;
45
+
46
+ /**
47
+ * Type-ahead combobox.
48
+ */
49
+ const ComboBoxRoot = ({
50
+ __scopeComboBox,
51
+ children,
52
+ classNames,
53
+ items = [],
54
+ value,
55
+ onChange,
56
+ onInputChange,
57
+ }: ComboBoxRootProps) => {
58
+ const { tx } = useThemeContext();
59
+ const popperScope = usePopperScope(__scopeComboBox);
60
+
61
+ // TODO(burdon): Remove and implement natively?
62
+ // https://www.downshift-js.com/use-combobox
63
+ const comboProps = useCombobox<ComboBoxItem>({
64
+ items,
65
+ itemToString: (selectedItem) => selectedItem?.label ?? '',
66
+ onInputValueChange: ({ inputValue }) => onInputChange?.(inputValue),
67
+ selectedItem: value ?? null,
68
+ onSelectedItemChange: ({ selectedItem }) => onChange?.(selectedItem === null ? undefined : selectedItem),
69
+ });
70
+
71
+ return (
72
+ <ComboBoxProvider scope={__scopeComboBox} items={items} {...comboProps}>
73
+ <PopperPrimitive.Root {...popperScope}>
74
+ <div className={tx('combobox.root', 'combobox__root', {}, classNames)}>{children}</div>
75
+ </PopperPrimitive.Root>
76
+ </ComboBoxProvider>
77
+ );
78
+ };
79
+
80
+ //
81
+ // Input
82
+ //
83
+
84
+ const INPUT_NAME = 'ComboBoxInput';
85
+
86
+ type ComboBoxInputProps = ThemedClassName<
87
+ ScopedProps<
88
+ PropsWithChildren<{
89
+ placeholder?: string;
90
+ }>
91
+ >
92
+ >;
93
+
94
+ const ComboBoxInput = forwardRef<HTMLDivElement, ComboBoxInputProps>(
95
+ ({ __scopeComboBox, classNames, placeholder }: ComboBoxInputProps, forwardedRef) => {
96
+ const { tx } = useThemeContext();
97
+ const popperScope = usePopperScope(__scopeComboBox);
98
+ const { getInputProps, getToggleButtonProps, isOpen } = useComboBoxContext(INPUT_NAME, __scopeComboBox);
99
+
100
+ // TODO(burdon): Break out input and button.
101
+ return (
102
+ <PopperPrimitive.Anchor asChild {...popperScope} ref={forwardedRef}>
103
+ {/* TODO(burdon): Move class to theme. */}
104
+ <div role='none' className='flex items-center gap-1'>
105
+ <Input.Root>
106
+ <Input.TextInput
107
+ {...getInputProps()}
108
+ placeholder={placeholder}
109
+ variant='subdued'
110
+ classNames={tx('combobox.input', 'combobox__input', {}, classNames)}
111
+ />
112
+ </Input.Root>
113
+ <Button
114
+ {...getToggleButtonProps()}
115
+ aria-label='toggle menu'
116
+ variant='ghost'
117
+ classNames={tx('combobox.button', 'combobox__button')}
118
+ >
119
+ {(isOpen && <CaretUp />) || <CaretDown />}
120
+ </Button>
121
+ </div>
122
+ </PopperPrimitive.Anchor>
123
+ );
124
+ },
125
+ );
126
+
127
+ //
128
+ // Content
129
+ //
130
+
131
+ const CONTENT_NAME = 'ComboBoxContent';
132
+
133
+ type ComboBoxContentProps = ThemedClassName<ScopedProps<PropsWithChildren<{}>>>;
134
+
135
+ const ComboBoxContent = forwardRef<HTMLDivElement, ComboBoxContentProps>(
136
+ ({ __scopeComboBox, classNames, children }: ComboBoxContentProps, forwardedRef) => {
137
+ const { tx } = useThemeContext();
138
+ const popperScope = usePopperScope(__scopeComboBox);
139
+ const { getMenuProps, isOpen } = useComboBoxContext(CONTENT_NAME, __scopeComboBox);
140
+
141
+ return (
142
+ <PopperPrimitive.Content
143
+ data-state={isOpen}
144
+ role='dialog'
145
+ {...popperScope}
146
+ ref={forwardedRef}
147
+ style={
148
+ {
149
+ // Re-namespace exposed content custom properties.
150
+ ...{
151
+ '--radix-combobox-content-transform-origin': 'var(--radix-popper-transform-origin)',
152
+ '--radix-combobox-content-available-width': 'var(--radix-popper-available-width)',
153
+ '--radix-combobox-content-available-height': 'var(--radix-popper-available-height)',
154
+ '--radix-combobox-trigger-width': 'var(--radix-popper-anchor-width)',
155
+ '--radix-combobox-trigger-height': 'var(--radix-popper-anchor-height)',
156
+ },
157
+ } as any // TODO(burdon): Why any?
158
+ }
159
+ >
160
+ <ul {...getMenuProps()} className={tx('combobox.content', 'combobox__content', {}, classNames)}>
161
+ {isOpen && children}
162
+ </ul>
163
+ </PopperPrimitive.Content>
164
+ );
165
+ },
166
+ );
167
+
168
+ //
169
+ // Item
170
+ //
171
+
172
+ const ITEM_NAME = 'ComboBoxItem';
173
+
174
+ type ComboBoxItemProps = ThemedClassName<
175
+ ScopedProps<
176
+ PropsWithChildren<{
177
+ item: ComboBoxItem;
178
+ }>
179
+ >
180
+ >;
181
+
182
+ const ComboBoxItem = forwardRef<HTMLLIElement, ComboBoxItemProps>(
183
+ ({ __scopeComboBox, classNames, children, item }, forwardedRef) => {
184
+ const { tx } = useThemeContext();
185
+ const { getItemProps, items, selectedItem, highlightedIndex } = useComboBoxContext(ITEM_NAME, __scopeComboBox);
186
+
187
+ return (
188
+ <li
189
+ ref={forwardedRef}
190
+ data-selected={selectedItem?.id === item.id ? 'true' : undefined}
191
+ data-highlighted={
192
+ highlightedIndex !== undefined && items[highlightedIndex]?.id === item.id ? 'true' : undefined
193
+ }
194
+ className={tx('combobox.item', 'item', {}, classNames)}
195
+ {...getItemProps({ item })}
196
+ >
197
+ {children}
198
+ </li>
199
+ );
200
+ },
201
+ );
202
+
203
+ // prettier-ignore
204
+ export const ComboBox = {
205
+ Root: ComboBoxRoot,
206
+ Input: ComboBoxInput,
207
+ Content: ComboBoxContent,
208
+ Item: ComboBoxItem
209
+ };
210
+
211
+ // prettier-ignore
212
+ export type {
213
+ ComboBoxItem,
214
+ ComboBoxRootProps,
215
+ ComboBoxInputProps,
216
+ ComboBoxContentProps,
217
+ ComboBoxItemProps
218
+ };
@@ -0,0 +1,5 @@
1
+ //
2
+ // Copyright 2022 DXOS.org
3
+ //
4
+
5
+ export * from './ComboBox';
@@ -0,0 +1,21 @@
1
+ //
2
+ // Copyright 2023 DXOS.org
3
+ //
4
+
5
+ import React, { createContext, type PropsWithChildren } from 'react';
6
+
7
+ import { type Density } from '@dxos/react-ui-types';
8
+
9
+ export interface DensityContextValue {
10
+ density?: Density;
11
+ }
12
+
13
+ export type DensityProviderProps = PropsWithChildren<{
14
+ density?: Density;
15
+ }>;
16
+
17
+ export const DensityContext = createContext<DensityContextValue>({ density: 'coarse' });
18
+
19
+ export const DensityProvider = ({ density, children }: DensityProviderProps) => (
20
+ <DensityContext.Provider value={{ density }}>{children}</DensityContext.Provider>
21
+ );
@@ -0,0 +1,5 @@
1
+ //
2
+ // Copyright 2023 DXOS.org
3
+ //
4
+
5
+ export * from './DensityProvider';
@@ -0,0 +1,68 @@
1
+ //
2
+ // Copyright 2022 DXOS.org
3
+ //
4
+
5
+ import '@dxosTheme';
6
+
7
+ import React from 'react';
8
+
9
+ import { AlertDialog } from './AlertDialog';
10
+ import { Button } from '../Buttons';
11
+ import { Toolbar } from '../Toolbar';
12
+
13
+ type StorybookAlertDialogProps = Partial<{
14
+ title: string;
15
+ description: string;
16
+ body: string;
17
+ cancelTrigger: string; // TODO(burdon): Why trigger?
18
+ actionTrigger: string;
19
+ openTrigger: string;
20
+ }>;
21
+
22
+ const StorybookAlertDialog = ({
23
+ title,
24
+ openTrigger,
25
+ description,
26
+ body,
27
+ cancelTrigger,
28
+ actionTrigger,
29
+ }: StorybookAlertDialogProps) => {
30
+ return (
31
+ <AlertDialog.Root defaultOpen>
32
+ <AlertDialog.Trigger asChild>
33
+ <Button>{openTrigger}</Button>
34
+ </AlertDialog.Trigger>
35
+ <AlertDialog.Overlay>
36
+ <AlertDialog.Content>
37
+ <AlertDialog.Title>{title}</AlertDialog.Title>
38
+ <AlertDialog.Description>{description}</AlertDialog.Description>
39
+ <p className='mbs-2 mbe-8'>{body}</p>
40
+ <Toolbar.Root>
41
+ <div className='grow' />
42
+ <AlertDialog.Cancel asChild>
43
+ <Toolbar.Button>{cancelTrigger}</Toolbar.Button>
44
+ </AlertDialog.Cancel>
45
+ <AlertDialog.Action asChild>
46
+ <Toolbar.Button variant='primary'>{actionTrigger}</Toolbar.Button>
47
+ </AlertDialog.Action>
48
+ </Toolbar.Root>
49
+ </AlertDialog.Content>
50
+ </AlertDialog.Overlay>
51
+ </AlertDialog.Root>
52
+ );
53
+ };
54
+
55
+ export default {
56
+ component: StorybookAlertDialog,
57
+ };
58
+
59
+ export const Default = {
60
+ args: {
61
+ title: 'AlertDialog title',
62
+ openTrigger: 'Open AlertDialog',
63
+ description: 'AlertDialog description',
64
+ body: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.',
65
+ cancelTrigger: 'Cancel',
66
+ actionTrigger: 'Action',
67
+ },
68
+ };
@@ -0,0 +1,157 @@
1
+ //
2
+ // Copyright 2023 DXOS.org
3
+ //
4
+
5
+ import {
6
+ type AlertDialogProps as AlertDialogRootPrimitiveProps,
7
+ Root as AlertDialogRootPrimitive,
8
+ AlertDialogTrigger as AlertDialogTriggerPrimitive,
9
+ type AlertDialogTriggerProps as AlertDialogTriggerPrimitiveProps,
10
+ AlertDialogPortal as AlertDialogPortalPrimitive,
11
+ type AlertDialogPortalProps as AlertDialogPortalPrimitiveProps,
12
+ AlertDialogOverlay as AlertDialogOverlayPrimitive,
13
+ type AlertDialogOverlayProps as AlertDialogOverlayPrimitiveProps,
14
+ AlertDialogTitle as AlertDialogTitlePrimitive,
15
+ type AlertDialogTitleProps as AlertDialogTitlePrimitiveProps,
16
+ AlertDialogDescription as AlertDialogDescriptionPrimitive,
17
+ type AlertDialogDescriptionProps as AlertDialogDescriptionPrimitiveProps,
18
+ AlertDialogAction as AlertDialogActionPrimitive,
19
+ type AlertDialogActionProps as AlertDialogActionPrimitiveProps,
20
+ AlertDialogCancel as AlertDialogCancelPrimitive,
21
+ type AlertDialogCancelProps as AlertDialogCancelPrimitiveProps,
22
+ AlertDialogContent as AlertDialogContentPrimitive,
23
+ type AlertDialogContentProps as AlertDialogContentPrimitiveProps,
24
+ } from '@radix-ui/react-alert-dialog';
25
+ import { createContext } from '@radix-ui/react-context';
26
+ import React, { forwardRef, type ForwardRefExoticComponent, type FunctionComponent } from 'react';
27
+
28
+ import { useThemeContext } from '../../hooks';
29
+ import { type ThemedClassName } from '../../util';
30
+ import { ElevationProvider } from '../ElevationProvider';
31
+
32
+ type AlertDialogRootProps = AlertDialogRootPrimitiveProps;
33
+
34
+ const AlertDialogRoot: FunctionComponent<AlertDialogRootProps> = AlertDialogRootPrimitive;
35
+
36
+ type AlertDialogTriggerProps = AlertDialogTriggerPrimitiveProps;
37
+
38
+ const AlertDialogTrigger: FunctionComponent<AlertDialogTriggerProps> = AlertDialogTriggerPrimitive;
39
+
40
+ type AlertDialogPortalProps = AlertDialogPortalPrimitiveProps;
41
+
42
+ const AlertDialogPortal: FunctionComponent<AlertDialogPortalProps> = AlertDialogPortalPrimitive;
43
+
44
+ type AlertDialogCancelProps = AlertDialogCancelPrimitiveProps;
45
+
46
+ const AlertDialogCancel: FunctionComponent<AlertDialogCancelProps> = AlertDialogCancelPrimitive;
47
+
48
+ type AlertDialogActionProps = AlertDialogActionPrimitiveProps;
49
+
50
+ const AlertDialogAction: FunctionComponent<AlertDialogActionProps> = AlertDialogActionPrimitive;
51
+
52
+ type AlertDialogTitleProps = ThemedClassName<AlertDialogTitlePrimitiveProps> & { srOnly?: boolean };
53
+
54
+ const AlertDialogTitle: ForwardRefExoticComponent<AlertDialogTitleProps> = forwardRef<
55
+ HTMLHeadingElement,
56
+ AlertDialogTitleProps
57
+ >(({ classNames, srOnly, ...props }, forwardedRef) => {
58
+ const { tx } = useThemeContext();
59
+ return (
60
+ <AlertDialogTitlePrimitive
61
+ {...props}
62
+ className={tx('dialog.title', 'dialog--alert__title', { srOnly }, classNames)}
63
+ ref={forwardedRef}
64
+ />
65
+ );
66
+ });
67
+
68
+ type AlertDialogDescriptionProps = ThemedClassName<AlertDialogDescriptionPrimitiveProps> & { srOnly?: boolean };
69
+
70
+ const AlertDialogDescription: ForwardRefExoticComponent<AlertDialogTitleProps> = forwardRef<
71
+ HTMLParagraphElement,
72
+ AlertDialogDescriptionProps
73
+ >(({ classNames, srOnly, ...props }, forwardedRef) => {
74
+ const { tx } = useThemeContext();
75
+ return (
76
+ <AlertDialogDescriptionPrimitive
77
+ {...props}
78
+ className={tx('dialog.description', 'dialog--alert__description', { srOnly }, classNames)}
79
+ ref={forwardedRef}
80
+ />
81
+ );
82
+ });
83
+
84
+ type OverlayLayoutContextValue = { inOverlayLayout?: boolean };
85
+ const ALERT_DIALOG_OVERLAY_NAME = 'AlertDialogOverlay';
86
+ const ALERT_DIALOG_CONTENT_NAME = 'AlertDialogContent';
87
+ const [OverlayLayoutProvider, useOverlayLayoutContext] = createContext<OverlayLayoutContextValue>(
88
+ ALERT_DIALOG_OVERLAY_NAME,
89
+ {
90
+ inOverlayLayout: false,
91
+ },
92
+ );
93
+
94
+ type AlertDialogOverlayProps = ThemedClassName<AlertDialogOverlayPrimitiveProps>;
95
+
96
+ const AlertDialogOverlay: ForwardRefExoticComponent<AlertDialogOverlayProps> = forwardRef<
97
+ HTMLDivElement,
98
+ AlertDialogOverlayProps
99
+ >(({ classNames, children, ...props }, forwardedRef) => {
100
+ const { tx } = useThemeContext();
101
+ return (
102
+ <AlertDialogOverlayPrimitive
103
+ {...props}
104
+ className={tx('dialog.overlay', 'dialog--alert__overlay', {}, classNames)}
105
+ ref={forwardedRef}
106
+ >
107
+ <OverlayLayoutProvider inOverlayLayout>{children}</OverlayLayoutProvider>
108
+ </AlertDialogOverlayPrimitive>
109
+ );
110
+ });
111
+
112
+ AlertDialogOverlay.displayName = ALERT_DIALOG_OVERLAY_NAME;
113
+
114
+ type AlertDialogContentProps = ThemedClassName<AlertDialogContentPrimitiveProps>;
115
+
116
+ const AlertDialogContent: ForwardRefExoticComponent<AlertDialogContentProps> = forwardRef<
117
+ HTMLDivElement,
118
+ AlertDialogContentProps
119
+ >(({ classNames, children, ...props }, forwardedRef) => {
120
+ const { tx } = useThemeContext();
121
+ const { inOverlayLayout } = useOverlayLayoutContext(ALERT_DIALOG_CONTENT_NAME);
122
+ return (
123
+ <AlertDialogContentPrimitive
124
+ {...props}
125
+ className={tx('dialog.content', 'dialog--alert', { inOverlayLayout }, classNames)}
126
+ ref={forwardedRef}
127
+ >
128
+ <ElevationProvider elevation='chrome'>{children}</ElevationProvider>
129
+ </AlertDialogContentPrimitive>
130
+ );
131
+ });
132
+
133
+ AlertDialogContent.displayName = ALERT_DIALOG_CONTENT_NAME;
134
+
135
+ export const AlertDialog = {
136
+ Root: AlertDialogRoot,
137
+ Trigger: AlertDialogTrigger,
138
+ Portal: AlertDialogPortal,
139
+ Overlay: AlertDialogOverlay,
140
+ Content: AlertDialogContent,
141
+ Title: AlertDialogTitle,
142
+ Description: AlertDialogDescription,
143
+ Cancel: AlertDialogCancel,
144
+ Action: AlertDialogAction,
145
+ };
146
+
147
+ export type {
148
+ AlertDialogRootProps,
149
+ AlertDialogTriggerProps,
150
+ AlertDialogPortalProps,
151
+ AlertDialogOverlayProps,
152
+ AlertDialogContentProps,
153
+ AlertDialogTitleProps,
154
+ AlertDialogDescriptionProps,
155
+ AlertDialogCancelProps,
156
+ AlertDialogActionProps,
157
+ };
@@ -0,0 +1,52 @@
1
+ //
2
+ // Copyright 2022 DXOS.org
3
+ //
4
+
5
+ import '@dxosTheme';
6
+
7
+ import React from 'react';
8
+
9
+ import { Dialog } from './Dialog';
10
+ import { Button } from '../Buttons';
11
+
12
+ type StorybookDialogProps = Partial<{
13
+ title: string;
14
+ description: string;
15
+ body: string;
16
+ closeTrigger: string;
17
+ openTrigger: string;
18
+ }>;
19
+
20
+ const StorybookDialog = ({ title, openTrigger, description, body, closeTrigger }: StorybookDialogProps) => {
21
+ return (
22
+ <Dialog.Root defaultOpen>
23
+ <Dialog.Trigger asChild>
24
+ <Button>{openTrigger}</Button>
25
+ </Dialog.Trigger>
26
+ <Dialog.Overlay>
27
+ <Dialog.Content>
28
+ <Dialog.Title>{title}</Dialog.Title>
29
+ <Dialog.Description>{description}</Dialog.Description>
30
+ <p className='mbs-2 mbe-4'>{body}</p>
31
+ <Dialog.Close asChild>
32
+ <Button variant='primary'>{closeTrigger}</Button>
33
+ </Dialog.Close>
34
+ </Dialog.Content>
35
+ </Dialog.Overlay>
36
+ </Dialog.Root>
37
+ );
38
+ };
39
+
40
+ export default {
41
+ component: StorybookDialog,
42
+ };
43
+
44
+ export const Default = {
45
+ args: {
46
+ title: 'Dialog title',
47
+ openTrigger: 'Open Dialog',
48
+ description: 'Dialog description',
49
+ body: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.',
50
+ closeTrigger: 'Close trigger',
51
+ },
52
+ };
@@ -0,0 +1,143 @@
1
+ //
2
+ // Copyright 2023 DXOS.org
3
+ //
4
+
5
+ import { createContext } from '@radix-ui/react-context';
6
+ import {
7
+ type DialogProps as DialogRootPrimitiveProps,
8
+ Root as DialogRootPrimitive,
9
+ DialogTrigger as DialogTriggerPrimitive,
10
+ type DialogTriggerProps as DialogTriggerPrimitiveProps,
11
+ DialogPortal as DialogPortalPrimitive,
12
+ type DialogPortalProps as DialogPortalPrimitiveProps,
13
+ DialogOverlay as DialogOverlayPrimitive,
14
+ type DialogOverlayProps as DialogOverlayPrimitiveProps,
15
+ DialogTitle as DialogTitlePrimitive,
16
+ type DialogTitleProps as DialogTitlePrimitiveProps,
17
+ DialogDescription as DialogDescriptionPrimitive,
18
+ type DialogDescriptionProps as DialogDescriptionPrimitiveProps,
19
+ DialogClose as DialogClosePrimitive,
20
+ type DialogCloseProps as DialogClosePrimitiveProps,
21
+ DialogContent as DialogContentPrimitive,
22
+ type DialogContentProps as DialogContentPrimitiveProps,
23
+ } from '@radix-ui/react-dialog';
24
+ import React, { forwardRef, type ForwardRefExoticComponent, type FunctionComponent } from 'react';
25
+
26
+ import { useThemeContext } from '../../hooks';
27
+ import { type ThemedClassName } from '../../util';
28
+ import { ElevationProvider } from '../ElevationProvider';
29
+
30
+ type DialogRootProps = DialogRootPrimitiveProps;
31
+
32
+ const DialogRoot: FunctionComponent<DialogRootProps> = DialogRootPrimitive;
33
+
34
+ type DialogTriggerProps = DialogTriggerPrimitiveProps;
35
+
36
+ const DialogTrigger: FunctionComponent<DialogTriggerProps> = DialogTriggerPrimitive;
37
+
38
+ type DialogPortalProps = DialogPortalPrimitiveProps;
39
+
40
+ const DialogPortal: FunctionComponent<DialogPortalProps> = DialogPortalPrimitive;
41
+
42
+ type DialogTitleProps = ThemedClassName<DialogTitlePrimitiveProps> & { srOnly?: boolean };
43
+
44
+ const DialogTitle: ForwardRefExoticComponent<DialogTitleProps> = forwardRef<HTMLHeadingElement, DialogTitleProps>(
45
+ ({ classNames, srOnly, ...props }, forwardedRef) => {
46
+ const { tx } = useThemeContext();
47
+ return (
48
+ <DialogTitlePrimitive
49
+ {...props}
50
+ className={tx('dialog.title', 'dialog__title', { srOnly }, classNames)}
51
+ ref={forwardedRef}
52
+ />
53
+ );
54
+ },
55
+ );
56
+
57
+ type DialogDescriptionProps = ThemedClassName<DialogDescriptionPrimitiveProps> & { srOnly?: boolean };
58
+
59
+ const DialogDescription: ForwardRefExoticComponent<DialogTitleProps> = forwardRef<
60
+ HTMLParagraphElement,
61
+ DialogDescriptionProps
62
+ >(({ classNames, srOnly, ...props }, forwardedRef) => {
63
+ const { tx } = useThemeContext();
64
+ return (
65
+ <DialogDescriptionPrimitive
66
+ {...props}
67
+ className={tx('dialog.description', 'dialog__description', { srOnly }, classNames)}
68
+ ref={forwardedRef}
69
+ />
70
+ );
71
+ });
72
+
73
+ type DialogCloseProps = DialogClosePrimitiveProps;
74
+
75
+ const DialogClose: FunctionComponent<DialogCloseProps> = DialogClosePrimitive;
76
+
77
+ type OverlayLayoutContextValue = { inOverlayLayout?: boolean };
78
+ const DIALOG_OVERLAY_NAME = 'DialogOverlay';
79
+ const DIALOG_CONTENT_NAME = 'DialogContent';
80
+ const [OverlayLayoutProvider, useOverlayLayoutContext] = createContext<OverlayLayoutContextValue>(DIALOG_OVERLAY_NAME, {
81
+ inOverlayLayout: false,
82
+ });
83
+
84
+ type DialogOverlayProps = ThemedClassName<DialogOverlayPrimitiveProps>;
85
+
86
+ const DialogOverlay: ForwardRefExoticComponent<DialogOverlayProps> = forwardRef<HTMLDivElement, DialogOverlayProps>(
87
+ ({ classNames, children, ...props }, forwardedRef) => {
88
+ const { tx } = useThemeContext();
89
+ return (
90
+ <DialogOverlayPrimitive
91
+ {...props}
92
+ className={tx('dialog.overlay', 'dialog__overlay', {}, classNames)}
93
+ ref={forwardedRef}
94
+ >
95
+ <OverlayLayoutProvider inOverlayLayout>{children}</OverlayLayoutProvider>
96
+ </DialogOverlayPrimitive>
97
+ );
98
+ },
99
+ );
100
+
101
+ DialogOverlay.displayName = DIALOG_OVERLAY_NAME;
102
+
103
+ type DialogContentProps = ThemedClassName<DialogContentPrimitiveProps>;
104
+
105
+ const DialogContent: ForwardRefExoticComponent<DialogContentProps> = forwardRef<HTMLDivElement, DialogContentProps>(
106
+ ({ classNames, children, ...props }, forwardedRef) => {
107
+ const { tx } = useThemeContext();
108
+ const { inOverlayLayout } = useOverlayLayoutContext(DIALOG_CONTENT_NAME);
109
+ return (
110
+ <DialogContentPrimitive
111
+ {...props}
112
+ className={tx('dialog.content', 'dialog', { inOverlayLayout }, classNames)}
113
+ ref={forwardedRef}
114
+ >
115
+ <ElevationProvider elevation='chrome'>{children}</ElevationProvider>
116
+ </DialogContentPrimitive>
117
+ );
118
+ },
119
+ );
120
+
121
+ DialogContent.displayName = DIALOG_CONTENT_NAME;
122
+
123
+ export const Dialog = {
124
+ Root: DialogRoot,
125
+ Trigger: DialogTrigger,
126
+ Portal: DialogPortal,
127
+ Overlay: DialogOverlay,
128
+ Content: DialogContent,
129
+ Title: DialogTitle,
130
+ Description: DialogDescription,
131
+ Close: DialogClose,
132
+ };
133
+
134
+ export type {
135
+ DialogRootProps,
136
+ DialogTriggerProps,
137
+ DialogPortalProps,
138
+ DialogOverlayProps,
139
+ DialogContentProps,
140
+ DialogTitleProps,
141
+ DialogDescriptionProps,
142
+ DialogCloseProps,
143
+ };
@@ -0,0 +1,6 @@
1
+ //
2
+ // Copyright 2023 DXOS.org
3
+ //
4
+
5
+ export * from './Dialog';
6
+ export * from './AlertDialog';