@react-fabric/core 1.0.0-beta.61 → 1.0.0-beta.63

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 (317) hide show
  1. package/css/components/_animations.css +7 -11
  2. package/css/components/_avatar.css +5 -5
  3. package/css/components/_badge.css +2 -1
  4. package/css/components/_breadcrumbs.css +7 -5
  5. package/css/components/_button.css +49 -9
  6. package/css/components/_card.css +9 -17
  7. package/css/components/_chip.css +0 -4
  8. package/css/components/_dropdown.css +1 -0
  9. package/css/components/_flyout.css +1 -1
  10. package/css/components/_media.css +2 -14
  11. package/css/components/_menu.css +1 -1
  12. package/css/components/_modal.css +3 -3
  13. package/css/components/_progress.css +1 -1
  14. package/css/components/_stepper.css +2 -1
  15. package/css/components/_tabPanel.css +4 -4
  16. package/css/core/_aside.css +3 -3
  17. package/css/core/_errorboundary.css +2 -10
  18. package/css/core/_page.css +1 -1
  19. package/css/core/_responsive.css +8 -0
  20. package/css/core/_theme.css +1 -1
  21. package/css/core/_viewport.css +1 -5
  22. package/css/reset/_reset.css +42 -43
  23. package/css/reset/_theme.css +214 -201
  24. package/css/styles.css +5 -0
  25. package/css/theme/_colors.css +14 -0
  26. package/css/theme/_utilities.css +103 -225
  27. package/css/theme/index.css +4 -6
  28. package/dist/cjs/components/actionLabel/ActionLabel.js +1 -1
  29. package/dist/cjs/components/animations/Animations.js +7 -7
  30. package/dist/cjs/components/avatar/Avatar.js +1 -1
  31. package/dist/cjs/components/avatar/AvatarGroup.js +1 -1
  32. package/dist/cjs/components/badge/Badge.js +5 -27
  33. package/dist/cjs/components/breadcrumbs/Breadcrumbs.js +1 -1
  34. package/dist/cjs/components/button/Button.js +8 -6
  35. package/dist/cjs/components/button/ButtonGroup.js +1 -1
  36. package/dist/cjs/components/button/ConfirmButton.js +7 -6
  37. package/dist/cjs/components/button/ToggleButtonGroup.js +1 -1
  38. package/dist/cjs/components/callout/Callout.js +8 -7
  39. package/dist/cjs/components/card/Card.js +3 -3
  40. package/dist/cjs/components/card/CardCover.js +1 -1
  41. package/dist/cjs/components/card/FlipContent.js +2 -2
  42. package/dist/cjs/components/chip/Chip.js +8 -7
  43. package/dist/cjs/components/collapsable/Collapsable.js +4 -3
  44. package/dist/cjs/components/divider/Divider.js +2 -2
  45. package/dist/cjs/components/dropdown/Dropdown.js +28 -14
  46. package/dist/cjs/components/empty/EmptyContent.js +1 -1
  47. package/dist/cjs/components/icon/Icon.js +26 -40
  48. package/dist/cjs/components/media/Media.js +13 -13
  49. package/dist/cjs/components/menu/ContextMenu.js +23 -13
  50. package/dist/cjs/components/menu/Menu.js +19 -14
  51. package/dist/cjs/components/menu/MenuItem.js +5 -4
  52. package/dist/cjs/components/meter/Meter.js +1 -1
  53. package/dist/cjs/components/navigator/Navigator.js +6 -6
  54. package/dist/cjs/components/panel/Panel.js +6 -4
  55. package/dist/cjs/components/panel/PanelGroup.js +3 -3
  56. package/dist/cjs/components/panel/PanelStack.js +5 -5
  57. package/dist/cjs/components/progress/ProgressBar.js +2 -2
  58. package/dist/cjs/components/progress/ProgressCircle.js +2 -2
  59. package/dist/cjs/components/tabpanel/Tab.js +6 -4
  60. package/dist/cjs/components/tabpanel/TabPanel.js +7 -6
  61. package/dist/cjs/context/Global.js +2 -55
  62. package/dist/cjs/context/NotificationCenter.js +38 -39
  63. package/dist/cjs/context/context.js +59 -0
  64. package/dist/cjs/core/aside/Aside.js +9 -7
  65. package/dist/cjs/core/boundary/ErrorBoundary.js +2 -4
  66. package/dist/cjs/core/page/Page.js +4 -1
  67. package/dist/cjs/core/responsive/Responsive.js +3 -2
  68. package/dist/cjs/core/theme/ThemeProvider.js +5 -4
  69. package/dist/cjs/core/viewport/Viewport.js +1 -1
  70. package/dist/cjs/hooks/useContextMenu.js +103 -0
  71. package/dist/cjs/hooks/useIsDark.js +6 -4
  72. package/dist/cjs/hooks/useNavigator.js +11 -10
  73. package/dist/cjs/hooks/useOverlayService.js +27 -38
  74. package/dist/cjs/hooks/usePropToggle.js +2 -2
  75. package/dist/cjs/hooks/useResize.js +8 -6
  76. package/dist/cjs/hooks/useResizeObserver.js +5 -5
  77. package/dist/cjs/hooks/useStepper.js +2 -6
  78. package/dist/cjs/hotkeys/HotKey.js +2 -2
  79. package/dist/cjs/hotkeys/HotKeyWrapper.js +8 -13
  80. package/dist/cjs/hotkeys/commons.js +1 -1
  81. package/dist/cjs/hotkeys/context.js +36 -0
  82. package/dist/cjs/i18n/index.js +4 -4
  83. package/dist/cjs/index.js +10 -5
  84. package/dist/cjs/overlays/alert/Alert.js +6 -5
  85. package/dist/cjs/overlays/flyout/Flyout.js +8 -6
  86. package/dist/cjs/overlays/message/Message.js +5 -5
  87. package/dist/cjs/overlays/modal/Modal.js +5 -3
  88. package/dist/cjs/overlays/toast/Toast.js +4 -4
  89. package/dist/cjs/overlays/tooltip/Tooltip.js +2 -16
  90. package/dist/cjs/typography/Abbr.js +4 -5
  91. package/dist/cjs/typography/Anchor.js +2 -2
  92. package/dist/cjs/typography/Copy.js +2 -2
  93. package/dist/cjs/typography/Mark.js +2 -4
  94. package/dist/cjs/typography/Text.js +4 -4
  95. package/dist/cjs/typography/Title.js +2 -2
  96. package/dist/cjs/utils/cloneElement.js +4 -4
  97. package/dist/cjs/utils/getBadgeProps.js +51 -0
  98. package/dist/cjs/utils/getIconProps.js +42 -0
  99. package/dist/cjs/utils/getTooltipProps.js +45 -0
  100. package/dist/esm/components/actionLabel/ActionLabel.js +1 -1
  101. package/dist/esm/components/animations/Animations.js +7 -7
  102. package/dist/esm/components/avatar/Avatar.js +1 -1
  103. package/dist/esm/components/avatar/AvatarGroup.js +1 -1
  104. package/dist/esm/components/badge/Badge.js +7 -28
  105. package/dist/esm/components/breadcrumbs/Breadcrumbs.js +1 -1
  106. package/dist/esm/components/button/Button.js +9 -7
  107. package/dist/esm/components/button/ButtonGroup.js +3 -3
  108. package/dist/esm/components/button/ConfirmButton.js +8 -7
  109. package/dist/esm/components/button/ToggleButtonGroup.js +3 -3
  110. package/dist/esm/components/callout/Callout.js +8 -7
  111. package/dist/esm/components/card/Card.js +4 -4
  112. package/dist/esm/components/card/CardCover.js +1 -1
  113. package/dist/esm/components/card/FlipContent.js +2 -2
  114. package/dist/esm/components/chip/Chip.js +9 -8
  115. package/dist/esm/components/collapsable/Collapsable.js +4 -3
  116. package/dist/esm/components/divider/Divider.js +2 -2
  117. package/dist/esm/components/dropdown/Dropdown.js +30 -16
  118. package/dist/esm/components/empty/EmptyContent.js +1 -1
  119. package/dist/esm/components/icon/Icon.js +28 -41
  120. package/dist/esm/components/media/Media.js +13 -13
  121. package/dist/esm/components/menu/ContextMenu.js +24 -14
  122. package/dist/esm/components/menu/Menu.js +22 -17
  123. package/dist/esm/components/menu/MenuItem.js +6 -5
  124. package/dist/esm/components/meter/Meter.js +1 -1
  125. package/dist/esm/components/navigator/Navigator.js +7 -7
  126. package/dist/esm/components/panel/Panel.js +6 -4
  127. package/dist/esm/components/panel/PanelGroup.js +4 -4
  128. package/dist/esm/components/panel/PanelStack.js +6 -6
  129. package/dist/esm/components/progress/ProgressBar.js +2 -2
  130. package/dist/esm/components/progress/ProgressCircle.js +2 -2
  131. package/dist/esm/components/tabpanel/Tab.js +6 -4
  132. package/dist/esm/components/tabpanel/TabPanel.js +8 -7
  133. package/dist/esm/context/Global.js +3 -52
  134. package/dist/esm/context/NotificationCenter.js +38 -39
  135. package/dist/esm/context/context.js +56 -0
  136. package/dist/esm/core/aside/Aside.js +10 -8
  137. package/dist/esm/core/boundary/ErrorBoundary.js +1 -3
  138. package/dist/esm/core/page/Page.js +4 -1
  139. package/dist/esm/core/responsive/Responsive.js +3 -2
  140. package/dist/esm/core/theme/ThemeProvider.js +4 -3
  141. package/dist/esm/core/viewport/Viewport.js +1 -1
  142. package/dist/esm/hooks/useContextMenu.js +103 -0
  143. package/dist/esm/hooks/useIsDark.js +7 -5
  144. package/dist/esm/hooks/useNavigator.js +12 -11
  145. package/dist/esm/hooks/useOverlayService.js +28 -39
  146. package/dist/esm/hooks/usePropToggle.js +3 -3
  147. package/dist/esm/hooks/useResize.js +9 -7
  148. package/dist/esm/hooks/useResizeObserver.js +6 -6
  149. package/dist/esm/hooks/useStepper.js +2 -6
  150. package/dist/esm/hotkeys/HotKey.js +1 -1
  151. package/dist/esm/hotkeys/HotKeyWrapper.js +9 -12
  152. package/dist/esm/hotkeys/commons.js +1 -1
  153. package/dist/esm/hotkeys/context.js +35 -0
  154. package/dist/esm/i18n/index.js +2 -2
  155. package/dist/esm/index.js +8 -4
  156. package/dist/esm/overlays/alert/Alert.js +7 -6
  157. package/dist/esm/overlays/flyout/Flyout.js +9 -7
  158. package/dist/esm/overlays/message/Message.js +6 -6
  159. package/dist/esm/overlays/modal/Modal.js +6 -4
  160. package/dist/esm/overlays/toast/Toast.js +5 -5
  161. package/dist/esm/overlays/tooltip/Tooltip.js +4 -17
  162. package/dist/esm/typography/Abbr.js +4 -5
  163. package/dist/esm/typography/Anchor.js +2 -2
  164. package/dist/esm/typography/Copy.js +3 -3
  165. package/dist/esm/typography/Mark.js +2 -4
  166. package/dist/esm/typography/Text.js +5 -5
  167. package/dist/esm/typography/Title.js +2 -2
  168. package/dist/esm/utils/cloneElement.js +4 -4
  169. package/dist/esm/utils/getBadgeProps.js +51 -0
  170. package/dist/esm/utils/getIconProps.js +42 -0
  171. package/dist/esm/utils/getTooltipProps.js +45 -0
  172. package/dist/types/components/actionLabel/ActionLabel.d.ts +1 -1
  173. package/dist/types/components/animations/Animations.d.ts +6 -6
  174. package/dist/types/components/avatar/Avatar.d.ts +1 -1
  175. package/dist/types/components/avatar/AvatarGroup.d.ts +1 -1
  176. package/dist/types/components/badge/Badge.d.ts +2 -10
  177. package/dist/types/components/breadcrumbs/Breadcrumbs.d.ts +1 -1
  178. package/dist/types/components/button/Button.d.ts +1 -1
  179. package/dist/types/components/button/ButtonGroup.d.ts +1 -1
  180. package/dist/types/components/button/ConfirmButton.d.ts +1 -1
  181. package/dist/types/components/button/ToggleButtonGroup.d.ts +1 -1
  182. package/dist/types/components/callout/Callout.d.ts +7 -3
  183. package/dist/types/components/card/Card.d.ts +2 -2
  184. package/dist/types/components/card/CardCover.d.ts +1 -1
  185. package/dist/types/components/card/FlipContent.d.ts +1 -1
  186. package/dist/types/components/chip/Chip.d.ts +1 -1
  187. package/dist/types/components/collapsable/Collapsable.d.ts +1 -1
  188. package/dist/types/components/divider/Divider.d.ts +1 -1
  189. package/dist/types/components/dropdown/Dropdown.d.ts +7 -3
  190. package/dist/types/components/dropdown/DropdownTool.d.ts +1 -1
  191. package/dist/types/components/empty/EmptyContent.d.ts +3 -3
  192. package/dist/types/components/icon/Icon.d.ts +3 -4
  193. package/dist/types/components/index.d.ts +3 -3
  194. package/dist/types/components/media/Media.d.ts +2 -2
  195. package/dist/types/components/menu/ContextMenu.d.ts +1 -1
  196. package/dist/types/components/menu/Menu.d.ts +1 -1
  197. package/dist/types/components/menu/types.d.ts +6 -1
  198. package/dist/types/components/meter/Meter.d.ts +1 -1
  199. package/dist/types/components/navigator/Navigator.d.ts +7 -1
  200. package/dist/types/components/panel/Panel.d.ts +2 -2
  201. package/dist/types/components/panel/PanelGroup.d.ts +1 -1
  202. package/dist/types/components/panel/PanelStack.d.ts +1 -1
  203. package/dist/types/components/progress/ProgressBar.d.ts +1 -1
  204. package/dist/types/components/progress/ProgressCircle.d.ts +1 -1
  205. package/dist/types/components/tabpanel/Tab.d.ts +1 -1
  206. package/dist/types/components/tabpanel/TabPanel.d.ts +1 -1
  207. package/dist/types/context/Global.d.ts +0 -82
  208. package/dist/types/context/context.d.ts +85 -0
  209. package/dist/types/core/aside/Aside.d.ts +2 -2
  210. package/dist/types/core/responsive/Responsive.d.ts +5 -1
  211. package/dist/types/core/theme/ThemeProvider.d.ts +2 -2
  212. package/dist/types/hooks/useContextMenu.d.ts +10 -0
  213. package/dist/types/hooks/useOverlayService.d.ts +3 -5
  214. package/dist/types/hotkeys/HotKeyWrapper.d.ts +0 -9
  215. package/dist/types/hotkeys/context.d.ts +9 -0
  216. package/dist/types/index.d.ts +4 -2
  217. package/dist/types/overlays/alert/Alert.d.ts +2 -2
  218. package/dist/types/overlays/flyout/Flyout.d.ts +2 -2
  219. package/dist/types/overlays/message/Message.d.ts +2 -2
  220. package/dist/types/overlays/modal/Modal.d.ts +2 -2
  221. package/dist/types/overlays/toast/Toast.d.ts +2 -2
  222. package/dist/types/overlays/tooltip/Tooltip.d.ts +0 -3
  223. package/dist/types/types/index.d.ts +2 -2
  224. package/dist/types/typography/Abbr.d.ts +4 -8
  225. package/dist/types/typography/Anchor.d.ts +1 -1
  226. package/dist/types/typography/Copy.d.ts +1 -1
  227. package/dist/types/typography/Mark.d.ts +2 -2
  228. package/dist/types/typography/Text.d.ts +1 -1
  229. package/dist/types/typography/Title.d.ts +1 -1
  230. package/dist/types/utils/getBadgeProps.d.ts +9 -0
  231. package/dist/types/utils/getIconProps.d.ts +2 -0
  232. package/dist/types/utils/getTooltipProps.d.ts +4 -0
  233. package/dist/types/utils/index.d.ts +3 -0
  234. package/package.json +14 -15
  235. package/src/components/actionLabel/ActionLabel.tsx +1 -1
  236. package/src/components/animations/Animations.tsx +6 -6
  237. package/src/components/avatar/Avatar.tsx +1 -1
  238. package/src/components/avatar/AvatarGroup.tsx +1 -1
  239. package/src/components/badge/Badge.tsx +8 -46
  240. package/src/components/breadcrumbs/Breadcrumbs.tsx +1 -1
  241. package/src/components/button/Button.tsx +24 -52
  242. package/src/components/button/ButtonGroup.tsx +1 -1
  243. package/src/components/button/ConfirmButton.tsx +23 -20
  244. package/src/components/button/ToggleButtonGroup.tsx +1 -1
  245. package/src/components/callout/Callout.tsx +14 -19
  246. package/src/components/card/Card.tsx +9 -11
  247. package/src/components/card/CardCover.tsx +1 -1
  248. package/src/components/card/FlipContent.tsx +2 -2
  249. package/src/components/chip/Chip.tsx +16 -33
  250. package/src/components/collapsable/Collapsable.tsx +2 -2
  251. package/src/components/divider/Divider.tsx +1 -1
  252. package/src/components/dropdown/Dropdown.tsx +60 -73
  253. package/src/components/dropdown/DropdownTool.tsx +1 -1
  254. package/src/components/empty/EmptyContent.tsx +3 -3
  255. package/src/components/icon/Icon.tsx +27 -54
  256. package/src/components/index.ts +5 -4
  257. package/src/components/media/Media.tsx +3 -3
  258. package/src/components/menu/ContextMenu.tsx +30 -30
  259. package/src/components/menu/Menu.tsx +35 -63
  260. package/src/components/menu/MenuItem.tsx +9 -28
  261. package/src/components/menu/types.ts +6 -1
  262. package/src/components/meter/Meter.tsx +1 -1
  263. package/src/components/navigator/Navigator.tsx +13 -11
  264. package/src/components/panel/Panel.tsx +13 -54
  265. package/src/components/panel/PanelGroup.tsx +3 -4
  266. package/src/components/panel/PanelStack.tsx +20 -25
  267. package/src/components/progress/ProgressBar.tsx +2 -2
  268. package/src/components/progress/ProgressCircle.tsx +2 -2
  269. package/src/components/tabpanel/Tab.tsx +9 -28
  270. package/src/components/tabpanel/TabPanel.tsx +13 -15
  271. package/src/context/Global.tsx +18 -125
  272. package/src/context/NotificationCenter.tsx +0 -1
  273. package/src/context/context.ts +100 -0
  274. package/src/core/aside/Aside.tsx +18 -55
  275. package/src/core/boundary/ErrorBoundary.tsx +8 -37
  276. package/src/core/page/Page.tsx +3 -5
  277. package/src/core/responsive/Responsive.tsx +10 -34
  278. package/src/core/theme/ThemeProvider.tsx +5 -8
  279. package/src/core/viewport/Viewport.tsx +1 -1
  280. package/src/hooks/useContextMenu.tsx +131 -0
  281. package/src/hooks/useIsDark.ts +7 -5
  282. package/src/hooks/useNavigator.tsx +8 -12
  283. package/src/hooks/useOverlayService.tsx +22 -17
  284. package/src/hooks/usePropToggle.ts +3 -3
  285. package/src/hooks/useResize.ts +14 -17
  286. package/src/hooks/useResizeObserver.ts +21 -21
  287. package/src/hooks/useStepper.tsx +1 -1
  288. package/src/hotkeys/HotKey.tsx +1 -1
  289. package/src/hotkeys/HotKeyWrapper.tsx +81 -105
  290. package/src/hotkeys/commons.ts +2 -0
  291. package/src/hotkeys/context.ts +32 -0
  292. package/src/i18n/index.ts +2 -2
  293. package/src/index.ts +4 -7
  294. package/src/overlays/alert/Alert.tsx +12 -16
  295. package/src/overlays/flyout/Flyout.tsx +32 -69
  296. package/src/overlays/message/Message.tsx +11 -15
  297. package/src/overlays/modal/Modal.tsx +23 -57
  298. package/src/overlays/toast/Toast.tsx +16 -15
  299. package/src/overlays/tooltip/Tooltip.tsx +6 -29
  300. package/src/types/global.d.ts +12 -0
  301. package/src/types/index.ts +2 -2
  302. package/src/typography/Abbr.tsx +11 -39
  303. package/src/typography/Anchor.tsx +1 -1
  304. package/src/typography/Copy.tsx +4 -4
  305. package/src/typography/Mark.tsx +2 -3
  306. package/src/typography/Text.tsx +8 -6
  307. package/src/typography/Title.tsx +1 -1
  308. package/src/utils/getBadgeProps.ts +45 -0
  309. package/src/utils/getIconProps.ts +35 -0
  310. package/src/utils/getTooltipProps.ts +38 -0
  311. package/src/utils/index.ts +3 -0
  312. /package/dist/cjs/i18n/{ar.json.js → ar/core.json.js} +0 -0
  313. /package/dist/cjs/i18n/{en.json.js → en/core.json.js} +0 -0
  314. /package/dist/esm/i18n/{ar.json.js → ar/core.json.js} +0 -0
  315. /package/dist/esm/i18n/{en.json.js → en/core.json.js} +0 -0
  316. /package/src/i18n/{ar.json → ar/core.json} +0 -0
  317. /package/src/i18n/{en.json → en/core.json} +0 -0
@@ -6,7 +6,7 @@ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProper
6
6
  import { useFloating, autoUpdate, shift, flip, offset, arrow, useClick, useDismiss, useInteractions, FloatingPortal, FloatingFocusManager, FloatingArrow } from '@floating-ui/react';
7
7
  import { mergeRefs } from '@react-fabric/utilities';
8
8
  import classNames from 'classnames';
9
- import { useRef, useState, useCallback, useEffect, useMemo, Fragment } from 'react';
9
+ import { useRef, useState, useEffectEvent, useEffect, useCallback, useMemo, Fragment } from 'react';
10
10
  import { useTranslation } from 'react-i18next';
11
11
  import { Button } from './Button.js';
12
12
  import { jsx, jsxs } from 'react/jsx-runtime';
@@ -23,7 +23,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
23
23
  * It also supports custom placement of the dialog, and can display an action message when the action is completed.
24
24
  *
25
25
  * @param {ConfirmButtonProps} props - The properties for the ConfirmButton component.
26
- * @returns {JSX.Element} The rendered ConfirmButton component.
26
+ * @returns {React.ReactElement} The rendered ConfirmButton component.
27
27
  *
28
28
  * @example
29
29
  * ```jsx
@@ -40,6 +40,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
40
40
  * @see {@link https://adarshpastakia.github.io/react-fabric/?path=/docs/core-components-confirmbutton--docs} for more details.
41
41
  */
42
42
  var ConfirmButton = function ConfirmButton(_ref) {
43
+ var _refs$domReference$cu, _refs$domReference$cu2;
43
44
  var ref = _ref.ref,
44
45
  message = _ref.message,
45
46
  color = _ref.color,
@@ -69,7 +70,7 @@ var ConfirmButton = function ConfirmButton(_ref) {
69
70
  _useState6 = _slicedToArray(_useState5, 2),
70
71
  actionDone = _useState6[0],
71
72
  setActionDone = _useState6[1];
72
- var clickHandler = useCallback(function (e) {
73
+ var clickHandler = useEffectEvent(function (e) {
73
74
  setBusy(e);
74
75
  var ret = onClick === null || onClick === void 0 ? void 0 : onClick(e);
75
76
  if (e) {
@@ -80,7 +81,7 @@ var ConfirmButton = function ConfirmButton(_ref) {
80
81
  }
81
82
  });
82
83
  }
83
- }, [onClick, actionMessage, showActionDoneEvent]);
84
+ });
84
85
  useEffect(function () {
85
86
  if (actionDone) {
86
87
  var timer = setTimeout(function () {
@@ -139,12 +140,12 @@ var ConfirmButton = function ConfirmButton(_ref) {
139
140
  }, getReferenceProps()), {}, {
140
141
  "data-dropdown-open": isOpen
141
142
  })), isOpen && /*#__PURE__*/jsx(FloatingPortal, {
143
+ root: (_refs$domReference$cu = (_refs$domReference$cu2 = refs.domReference.current) === null || _refs$domReference$cu2 === void 0 ? void 0 : _refs$domReference$cu2.closest(".theme-base")) !== null && _refs$domReference$cu !== void 0 ? _refs$domReference$cu : undefined,
142
144
  children: /*#__PURE__*/jsx(FloatingFocusManager, {
143
- modal: true,
144
145
  context: context,
145
146
  children: /*#__PURE__*/jsxs("div", _objectSpread(_objectSpread({
146
147
  "data-color": color,
147
- className: classNames("select-none not-italic rounded-capped shadow-lg outline outline-muted bg-base"),
148
+ className: classNames("select-none not-italic rounded-capped shadow-lg outline outline-muted bg-default"),
148
149
  ref: refs.setFloating,
149
150
  style: _objectSpread({
150
151
  zIndex: "var(--z-popover)"
@@ -183,7 +184,7 @@ var ConfirmButton = function ConfirmButton(_ref) {
183
184
  ref: arrowRef,
184
185
  context: context,
185
186
  strokeWidth: 0.5,
186
- className: "fill-base stroke-muted"
187
+ className: "fill-default stroke-muted"
187
188
  })]
188
189
  }))
189
190
  })
@@ -7,7 +7,7 @@ import { isArray, EMPTY_ARRAY } from '@react-fabric/utilities';
7
7
  import classNames from 'classnames';
8
8
  import { useCallback, cloneElement } from 'react';
9
9
  import { useControlledValue } from '../../hooks/useControlledValue.js';
10
- import { cloneChildren } from '../../utils/cloneElement.js';
10
+ import { cloneChildren as _cloneChildren } from '../../utils/cloneElement.js';
11
11
  import { jsx } from 'react/jsx-runtime';
12
12
 
13
13
  var _excluded = ["vertical", "className", "children", "variant", "rounded", "disabled", "fullWidth", "color", "size", "value", "onChange"];
@@ -20,7 +20,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
20
20
  * such as toggle switches, selection groups, or multi-select options.
21
21
  *
22
22
  * @param {ToggleButtonGroupProps} props - The properties for the ToggleButtonGroup component.
23
- * @returns {JSX.Element} The rendered ToggleButtonGroup component.
23
+ * @returns {React.ReactElement} The rendered ToggleButtonGroup component.
24
24
  *
25
25
  * @example
26
26
  * ```jsx
@@ -75,7 +75,7 @@ var ToggleButtonGroup = function ToggleButtonGroup(_ref) {
75
75
  return /*#__PURE__*/jsx("div", _objectSpread(_objectSpread({
76
76
  className: classNames("fabric-buttonGroup", className, fullWidth ? "flex" : "inline-flex", "flex-nowrap align-middle", vertical && "vertical", vertical && "flex-col")
77
77
  }, aria), {}, {
78
- children: cloneChildren(children, function (child) {
78
+ children: _cloneChildren(children, function (child) {
79
79
  return /*#__PURE__*/cloneElement(child, _objectSpread(_objectSpread({
80
80
  color: color,
81
81
  size: size,
@@ -6,14 +6,14 @@ import classNames from 'classnames';
6
6
  import { Icon } from '../icon/Icon.js';
7
7
  import { jsxs, jsx } from 'react/jsx-runtime';
8
8
 
9
- var _excluded = ["children", "color", "legend", "title", "icon", "border", "onClose", "className"];
9
+ var _excluded = ["children", "color", "legend", "legendClassName", "title", "icon", "border", "onClose", "className"];
10
10
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
11
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
12
  // colors for different callout types
13
13
  var colors = {
14
- none: "bg-base text-tint-900 border-tint-100",
15
- "default": "bg-tint-50/50 text-tint-800 border-tint-300",
16
- muted: "bg-tint-50/50 text-muted border-muted",
14
+ "default": "bg-default text-tint-900 border-tint-100",
15
+ dimmed: "bg-dimmed text-dimmed border-tint-200",
16
+ muted: "bg-muted text-muted border-tint-200",
17
17
  primary: "bg-primary-50/50 text-primary-800 border-primary-300",
18
18
  accent: "bg-accent-50/50 text-accent-800 border-accent-300",
19
19
  info: "bg-info-50/50 text-info-800 border-info-300",
@@ -30,7 +30,7 @@ var colors = {
30
30
  * such as alerts, notifications, or important messages.
31
31
  *
32
32
  * @param {CalloutProps} props - The properties for the Callout component.
33
- * @returns {JSX.Element} The rendered Callout component.
33
+ * @returns {React.ReactElement} The rendered Callout component.
34
34
  *
35
35
  * @example
36
36
  * ```jsx
@@ -53,6 +53,7 @@ var Callout = function Callout(_ref) {
53
53
  _ref$color = _ref.color,
54
54
  color = _ref$color === void 0 ? "default" : _ref$color,
55
55
  legend = _ref.legend,
56
+ legendClassName = _ref.legendClassName,
56
57
  title = _ref.title,
57
58
  icon = _ref.icon,
58
59
  border = _ref.border,
@@ -60,10 +61,10 @@ var Callout = function Callout(_ref) {
60
61
  className = _ref.className,
61
62
  aria = _objectWithoutProperties(_ref, _excluded);
62
63
  return /*#__PURE__*/jsxs("fieldset", _objectSpread(_objectSpread({
63
- className: classNames("block rounded-capped border max-w-full relative overflow-hidden mb-4", colors[color], className, border === "dashed" && "border-dashed", border === "dotted" && "border-dotted")
64
+ className: classNames("block rounded-capped border max-w-full relative overflow-hidden", colors[color], className, border === "dashed" && "border-dashed", border === "dotted" && "border-dotted")
64
65
  }, aria), {}, {
65
66
  children: [legend && /*#__PURE__*/jsx("legend", {
66
- className: "px-2 mx-4 font-medium",
67
+ className: classNames("px-2 mx-4 font-medium", legendClassName),
67
68
  "data-ref": "calloutLegend",
68
69
  children: legend
69
70
  }), /*#__PURE__*/jsxs("div", {
@@ -4,7 +4,7 @@ import _defineProperty from '@babel/runtime/helpers/defineProperty';
4
4
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
5
5
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
6
6
  import classNames from 'classnames';
7
- import { useMemo, Children, useCallback } from 'react';
7
+ import { useMemo, Children, useEffectEvent } from 'react';
8
8
  import { ErrorBoundary } from '../../core/boundary/ErrorBoundary.js';
9
9
  import { Header, Footer } from '../../core/headfoot/HeadFoot.js';
10
10
  import { jsx, jsxs } from 'react/jsx-runtime';
@@ -23,7 +23,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
23
23
  * It can be styled with custom CSS classes and supports features like selection indication and drag-and-drop functionality.
24
24
  *
25
25
  * @param {CardProps} props - The properties for the Card component.
26
- * @returns {JSX.Element} The rendered Card component.
26
+ * @returns {React.ReactElement} The rendered Card component.
27
27
  *
28
28
  * @example
29
29
  * ```jsx
@@ -73,11 +73,11 @@ var Card = function Card(_ref) {
73
73
  header = _useMemo2[0],
74
74
  body = _useMemo2[1],
75
75
  footer = _useMemo2[2];
76
- var handleDragStart = useCallback(function (event) {
76
+ var handleDragStart = useEffectEvent(function (event) {
77
77
  var _event$dataTransfer;
78
78
  dragKey && ((_event$dataTransfer = event.dataTransfer) === null || _event$dataTransfer === void 0 ? void 0 : _event$dataTransfer.setData(dragKey, JSON.stringify(dragData)));
79
79
  dragKey && (onDragStart === null || onDragStart === void 0 ? void 0 : onDragStart(event, dragKey, dragData));
80
- }, [onDragStart, dragKey, dragData]);
80
+ });
81
81
  var E = as !== null && as !== void 0 ? as : "div";
82
82
  return /*#__PURE__*/jsx("div", {
83
83
  className: classNames("fabric-cardWrapper", "rounded-capped relative grid", flex && "flex-1", selected && selectedRibbon && "selected", selected && "outline-1 outline-accent-500 outline-offset-2"),
@@ -25,7 +25,7 @@ var scheme = {
25
25
  * It can be used to create visually appealing card layouts with media content.
26
26
  *
27
27
  * @param {CardCoverProps} props - The properties for the CardCover component.
28
- * @returns {JSX.Element} The rendered CardCover component.
28
+ * @returns {React.ReactElement} The rendered CardCover component.
29
29
  *
30
30
  * @example
31
31
  * ```jsx
@@ -14,7 +14,7 @@ import { jsx } from 'react/jsx-runtime';
14
14
  * The `flipCard` method can be called to toggle the visibility of the back content.
15
15
  *
16
16
  * @param {Props} props - The properties for the FlipContent component.
17
- * @returns {JSX.Element} The rendered FlipContent component.
17
+ * @returns {React.ReactElement} The rendered FlipContent component.
18
18
  *
19
19
  * @example
20
20
  * ```jsx
@@ -46,7 +46,7 @@ var FlipContent = function FlipContent(_ref) {
46
46
  children: Children.map(children, function (child, idx) {
47
47
  var _child$props$classNam, _child$props;
48
48
  return /*#__PURE__*/isValidElement(child) && /*#__PURE__*/cloneElement(child, {
49
- className: classNames((_child$props$classNam = (_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.className) !== null && _child$props$classNam !== void 0 ? _child$props$classNam : "", idx === 0 ? "bg-base relative" : "bg-base absolute inset-0"),
49
+ className: classNames((_child$props$classNam = (_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.className) !== null && _child$props$classNam !== void 0 ? _child$props$classNam : "", idx === 0 ? "bg-content relative" : "bg-content absolute inset-0"),
50
50
  "data-card-flip-face": idx === 0 ? "front" : "back"
51
51
  });
52
52
  })
@@ -3,12 +3,13 @@
3
3
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
4
4
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
5
5
  import classNames from 'classnames';
6
- import { useCallback } from 'react';
6
+ import { useEffectEvent } from 'react';
7
7
  import { useMemoDebugger } from '../../hooks/useEffectDebugger.js';
8
8
  import { jsxs, jsx } from 'react/jsx-runtime';
9
- import { getColor } from '../../utils/getColor.js';
10
9
  import '@react-fabric/utilities';
11
- import { Icon, getIconProps } from '../icon/Icon.js';
10
+ import { getColor } from '../../utils/getColor.js';
11
+ import { getIconProps } from '../../utils/getIconProps.js';
12
+ import { Icon } from '../icon/Icon.js';
12
13
 
13
14
  var _excluded = ["ref", "children", "className", "size", "color", "variant", "icon", "disabled", "onClick", "onIconClick", "onRemove", "rounded", "preventDefault", "stopPropagation", "as"];
14
15
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -30,7 +31,7 @@ var SizeMap = {
30
31
  * It can also include an icon and a remove button, making it versatile for different use cases.
31
32
  *
32
33
  * @param {ChipProps} props - The properties for the Chip component.
33
- * @returns {JSX.Element} The rendered Chip component.
34
+ * @returns {React.ReactElement} The rendered Chip component.
34
35
  *
35
36
  * @example
36
37
  * ```jsx
@@ -72,15 +73,15 @@ var Chip = function Chip(_ref) {
72
73
  }
73
74
  return s;
74
75
  }, [color, size], "Chip styles");
75
- var clickHandler = useCallback(function (e) {
76
+ var clickHandler = useEffectEvent(function (e) {
76
77
  preventDefault && e.preventDefault();
77
78
  stopPropagation && e.stopPropagation();
78
79
  onClick === null || onClick === void 0 || onClick(e);
79
- }, [onClick, preventDefault, stopPropagation]);
80
- var removeHandler = useCallback(function (e) {
80
+ });
81
+ var removeHandler = useEffectEvent(function (e) {
81
82
  if (stopPropagation) e.stopPropagation();
82
83
  onRemove === null || onRemove === void 0 || onRemove(e);
83
- }, [onRemove, stopPropagation]);
84
+ });
84
85
  var E = as !== null && as !== void 0 ? as : "div";
85
86
  return /*#__PURE__*/jsxs(E, _objectSpread(_objectSpread({
86
87
  ref: ref,
@@ -12,6 +12,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
12
12
  var _excluded = ["ref", "disabled", "className", "bodyClassName", "headerClassName", "children", "iconAlign", "stickyHeader", "iconClosed", "iconOpen", "open", "onClose", "onOpen"];
13
13
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
14
14
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
15
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
15
16
  /**
16
17
  * A component that can be expanded or collapsed to show or hide content.
17
18
  * It is useful for organizing content in a way that allows users to focus on the information they are interested in.
@@ -19,7 +20,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
19
20
  * This component is ideal for creating accordions, expandable panels, or sections that can be toggled by the user.
20
21
  *
21
22
  * @param {CollapsableProps} props - The properties for the Collapsable component.
22
- * @returns {JSX.Element} The rendered Collapsable component.
23
+ * @returns {React.ReactElement} The rendered Collapsable component.
23
24
  *
24
25
  * @example
25
26
  * ```jsx
@@ -75,7 +76,7 @@ var Collapsable = function Collapsable(_ref) {
75
76
  var _Children$toArray = Children.toArray(children),
76
77
  _Children$toArray2 = _toArray(_Children$toArray),
77
78
  h = _Children$toArray2[0],
78
- b = _Children$toArray2.slice(1);
79
+ b = _arrayLikeToArray(_Children$toArray2).slice(1);
79
80
  return [h, b];
80
81
  }, [children]),
81
82
  _useMemo2 = _slicedToArray(_useMemo, 2),
@@ -87,7 +88,7 @@ var Collapsable = function Collapsable(_ref) {
87
88
  children: [/*#__PURE__*/jsxs("div", {
88
89
  role: "none",
89
90
  ref: headRef,
90
- className: classNames("fabric-collapsableHead", "flex gap-1 flex-nowrap py-2 font-medium cursor-pointer items-center select-none hover:opacity-70", headerClassName, stickyHeader && "bg-base sticky top-0 py-1 z-10", iconAlign === "end" ? "flex-row-reverse" : "flex-row"),
91
+ className: classNames("fabric-collapsableHead", "flex gap-1 flex-nowrap py-2 font-medium cursor-pointer items-center select-none hover:opacity-70", headerClassName, stickyHeader && "bg-default sticky top-0 py-1 z-10", iconAlign === "end" ? "flex-row-reverse" : "flex-row"),
91
92
  onClick: function onClick() {
92
93
  return !disabled && setOpenState(!openState);
93
94
  },
@@ -3,8 +3,8 @@
3
3
  import classNames from 'classnames';
4
4
  import { useCallback } from 'react';
5
5
  import { jsx, jsxs } from 'react/jsx-runtime';
6
- import { getColor } from '../../utils/getColor.js';
7
6
  import '@react-fabric/utilities';
7
+ import { getColor } from '../../utils/getColor.js';
8
8
 
9
9
  /*
10
10
  * React Fabric
@@ -36,7 +36,7 @@ import '@react-fabric/utilities';
36
36
  * styles, and alignment options.
37
37
  *
38
38
  * @param {DividerProps} props - The properties for the Divider component.
39
- * @returns {JSX.Element} The rendered Divider component.
39
+ * @returns {React.ReactElement} The rendered Divider component.
40
40
  *
41
41
  * @example
42
42
  * ```jsx
@@ -2,16 +2,16 @@
2
2
 
3
3
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
4
4
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
5
- import { FloatingTree, useFloatingTree, useFloating, autoUpdate, shift, flip, offset, arrow, safePolygon, useDismiss, useInteractions, FloatingPortal, FloatingOverlay, FloatingFocusManager, FloatingArrow, useHover, useClick } from '@floating-ui/react';
5
+ import { useFloatingTree, FloatingTree, useFloatingNodeId, useFloating, autoUpdate, shift, flip, offset, arrow, safePolygon, useDismiss, useInteractions, FloatingPortal, FloatingOverlay, FloatingFocusManager, FloatingArrow, useHover, useClick } from '@floating-ui/react';
6
6
  import { mergeRefs } from '@react-fabric/utilities';
7
7
  import classNames from 'classnames';
8
- import { useRef, useState, useMemo, Children, useCallback, useEffect, Fragment, cloneElement } from 'react';
8
+ import { useRef, useState, useMemo, Children, useEffectEvent, useEffect, Fragment, cloneElement } from 'react';
9
9
  import { jsx, jsxs } from 'react/jsx-runtime';
10
10
 
11
11
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
12
12
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13
13
  var DropdownElement = function DropdownElement(_ref) {
14
- var _refs$domReference$cu, _refs$domReference$cu2;
14
+ var _ref3, _refs$domReference$cu;
15
15
  var ref = _ref.ref,
16
16
  children = _ref.children,
17
17
  showArrow = _ref.showArrow,
@@ -22,9 +22,11 @@ var DropdownElement = function DropdownElement(_ref) {
22
22
  placement = _ref$placement === void 0 ? "bottom" : _ref$placement,
23
23
  onClose = _ref.onClose,
24
24
  onOpen = _ref.onOpen,
25
+ root = _ref.root,
25
26
  disabled = _ref.disabled,
26
27
  plainDropdown = _ref.plainDropdown,
27
- dropdownEvent = _ref.dropdownEvent,
28
+ _ref$trigger = _ref.trigger,
29
+ trigger = _ref$trigger === void 0 ? "click" : _ref$trigger,
28
30
  dropdownClassName = _ref.dropdownClassName;
29
31
  var arrowRef = useRef(null);
30
32
  var _useState = useState(false),
@@ -32,6 +34,7 @@ var DropdownElement = function DropdownElement(_ref) {
32
34
  isOpen = _useState2[0],
33
35
  setIsOpen = _useState2[1];
34
36
  var tree = useFloatingTree();
37
+ var nodeId = useFloatingNodeId();
35
38
  var _useMemo = useMemo(function () {
36
39
  return Children.toArray(children);
37
40
  }, [children]),
@@ -39,6 +42,7 @@ var DropdownElement = function DropdownElement(_ref) {
39
42
  anchor = _useMemo2[0],
40
43
  panel = _useMemo2[1];
41
44
  var _useFloating = useFloating({
45
+ nodeId: "dropdown-".concat(nodeId),
42
46
  open: isOpen,
43
47
  onOpenChange: function onOpenChange(open, _, reason) {
44
48
  var _ref2;
@@ -58,7 +62,7 @@ var DropdownElement = function DropdownElement(_ref) {
58
62
  refs = _useFloating.refs,
59
63
  floatingStyles = _useFloating.floatingStyles,
60
64
  context = _useFloating.context;
61
- var handler = dropdownEvent === "hover" ? useHover : useClick;
65
+ var handler = trigger === "hover" ? useHover : useClick;
62
66
  var click = handler(context, {
63
67
  enabled: !disabled,
64
68
  handleClose: safePolygon({
@@ -80,7 +84,11 @@ var DropdownElement = function DropdownElement(_ref) {
80
84
  }
81
85
  return undefined;
82
86
  }, [refs, isOpen, fitToParent]);
83
- var tryClosing = useCallback(function (e) {
87
+ var dismissDropdown = useEffectEvent(function () {
88
+ setIsOpen(false);
89
+ onClose === null || onClose === void 0 || onClose();
90
+ });
91
+ var tryClosing = useEffectEvent(function (e) {
84
92
  var _refs$floating$curren, _refs$floating$curren2;
85
93
  if (!((_refs$floating$curren = refs.floating.current) !== null && _refs$floating$curren !== void 0 && _refs$floating$curren.contains(e.target.closest("[data-dropdown-dismiss='false']"))) && (!!closeOnClick || (_refs$floating$curren2 = refs.floating.current) !== null && _refs$floating$curren2 !== void 0 && _refs$floating$curren2.contains(e.target.closest("[data-dropdown-dismiss='true']")))) {
86
94
  setTimeout(function () {
@@ -88,7 +96,7 @@ var DropdownElement = function DropdownElement(_ref) {
88
96
  onClose === null || onClose === void 0 || onClose();
89
97
  }, 100);
90
98
  }
91
- }, [closeOnClick, onClose]);
99
+ });
92
100
  var innerRef = useMemo(function () {
93
101
  return mergeRefs(ref, anchor.props.ref, refs.setReference);
94
102
  }, [ref, anchor.props.ref, refs.setReference]);
@@ -119,10 +127,10 @@ var DropdownElement = function DropdownElement(_ref) {
119
127
  "data-dropdown-open": isOpen ? true : undefined,
120
128
  ref: innerRef
121
129
  })), isOpen && /*#__PURE__*/jsxs(FloatingPortal, {
122
- root: (_refs$domReference$cu = (_refs$domReference$cu2 = refs.domReference.current) === null || _refs$domReference$cu2 === void 0 ? void 0 : _refs$domReference$cu2.closest(".theme-base")) !== null && _refs$domReference$cu !== void 0 ? _refs$domReference$cu : undefined,
130
+ root: (_ref3 = root !== null && root !== void 0 ? root : (_refs$domReference$cu = refs.domReference.current) === null || _refs$domReference$cu === void 0 ? void 0 : _refs$domReference$cu.closest(".theme-base")) !== null && _ref3 !== void 0 ? _ref3 : undefined,
123
131
  children: [/*#__PURE__*/jsx(FloatingOverlay, {}), /*#__PURE__*/jsx(FloatingFocusManager, {
124
132
  context: context,
125
- modal: true,
133
+ closeOnFocusOut: true,
126
134
  children: /*#__PURE__*/jsxs("div", _objectSpread(_objectSpread({
127
135
  ref: refs.setFloating,
128
136
  style: _objectSpread({
@@ -137,14 +145,16 @@ var DropdownElement = function DropdownElement(_ref) {
137
145
  })), {}, {
138
146
  children: [/*#__PURE__*/jsx("div", {
139
147
  role: "none",
140
- className: classNames("fabric-dropdownBody", dropdownClassName, !plainDropdown && "shadow-lg bg-base ring-1 ring-tint-100", "rounded-capped overflow-auto scroll-thin grid max-h-[70vh]"),
148
+ className: classNames("fabric-dropdownBody", dropdownClassName, !plainDropdown && "shadow-lg bg-default ring-1 ring-tint-100", "rounded-capped grid max-h-[70vh]"),
141
149
  onMouseUpCapture: tryClosing,
142
- children: panel
150
+ children: /*#__PURE__*/cloneElement(panel, typeof panel.type === "string" ? {} : {
151
+ dismiss: dismissDropdown
152
+ })
143
153
  }), showArrow && /*#__PURE__*/jsx(FloatingArrow, {
144
154
  ref: arrowRef,
145
155
  context: context,
146
156
  strokeWidth: 0.5,
147
- className: "fill-base stroke-dimmed"
157
+ className: "fill-default stroke-dimmed"
148
158
  })]
149
159
  }))
150
160
  })]
@@ -184,6 +194,10 @@ var DropdownElement = function DropdownElement(_ref) {
184
194
  * @see {@link https://floating-ui.com/docs/react} for more details on Floating UI.
185
195
  */
186
196
  var Dropdown = function Dropdown(props) {
197
+ var tree = useFloatingTree();
198
+ if (tree) {
199
+ return /*#__PURE__*/jsx(DropdownElement, _objectSpread({}, props));
200
+ }
187
201
  return /*#__PURE__*/jsx(FloatingTree, {
188
202
  children: /*#__PURE__*/jsx(DropdownElement, _objectSpread({}, props))
189
203
  });
@@ -198,10 +212,10 @@ var Dropdown = function Dropdown(props) {
198
212
  * @param dismiss - Whether to dismiss the dropdown on click (default: true).
199
213
  * @returns JSX Element
200
214
  */
201
- var DropdownDismiss = function DropdownDismiss(_ref3) {
202
- var children = _ref3.children,
203
- _ref3$dismiss = _ref3.dismiss,
204
- dismiss = _ref3$dismiss === void 0 ? true : _ref3$dismiss;
215
+ var DropdownDismiss = function DropdownDismiss(_ref4) {
216
+ var children = _ref4.children,
217
+ _ref4$dismiss = _ref4.dismiss,
218
+ dismiss = _ref4$dismiss === void 0 ? true : _ref4$dismiss;
205
219
  var tree = useFloatingTree();
206
220
  return /*#__PURE__*/jsx("div", {
207
221
  role: "none",
@@ -58,7 +58,7 @@ var DefaultIcon = function DefaultIcon() {
58
58
  * such as in empty states of lists, tables, or other content areas.
59
59
  *
60
60
  * @param {EmptyContentProps} props - The properties for the EmptyContent component.
61
- * @returns {JSX.Element} The rendered EmptyContent component.
61
+ * @returns {React.ReactElement} The rendered EmptyContent component.
62
62
  *
63
63
  * @example
64
64
  * ```jsx
@@ -5,26 +5,13 @@ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
5
5
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
6
6
  import { isSvgPath, isString } from '@react-fabric/utilities';
7
7
  import classNames from 'classnames';
8
- import { isValidElement, useState, useEffect, useMemo } from 'react';
8
+ import { useState, useEffect, useMemo, isValidElement } from 'react';
9
9
  import { jsx, jsxs } from 'react/jsx-runtime';
10
10
  import { getColor } from '../../utils/getColor.js';
11
11
 
12
12
  var _excluded = ["ref", "icon", "iconSrc", "bg", "color", "size", "rtlFlip", "animate", "rounded", "disabled", "viewBox", "className", "onClick"];
13
13
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
14
14
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
15
- var getIconProps = function getIconProps(props) {
16
- if (typeof props === "string") {
17
- return {
18
- icon: props
19
- };
20
- }
21
- if ( /*#__PURE__*/isValidElement(props)) {
22
- return {
23
- icon: props
24
- };
25
- }
26
- return props;
27
- };
28
15
  var SvgTextSize = ["", ".875em", ".525em", ".35em", ".25em"];
29
16
  var SizeMap = {
30
17
  xs: "0.625rem",
@@ -43,7 +30,7 @@ var SizeMap = {
43
30
  * These include `bg`, `color`, `size`, `rtlFlip`, `animate`, and `rounded`.
44
31
  *
45
32
  * @param {IconProps} props - The properties for the Icon component.
46
- * @returns {JSX.Element} The rendered Icon component.
33
+ * @returns {React.ReactElement} The rendered Icon component.
47
34
  *
48
35
  * @example
49
36
  * ```jsx
@@ -113,32 +100,32 @@ var Icon = function Icon(_ref) {
113
100
 
114
101
  /** ***************** render icon *******************/
115
102
  var iconEl = useMemo(function () {
116
- if ( /*#__PURE__*/isValidElement(icon)) return icon;
117
- if (!isString(icon)) {
118
- throw Error("Invalid icon expected string");
103
+ if (/*#__PURE__*/isValidElement(icon)) return icon;
104
+ if (isString(icon)) {
105
+ return isSvg ? /*#__PURE__*/jsx("svg", {
106
+ viewBox: viewBox,
107
+ children: /*#__PURE__*/jsx("path", {
108
+ fill: "currentColor",
109
+ d: icon.toString()
110
+ })
111
+ }) : (icon === null || icon === void 0 ? void 0 : icon.toString().length) <= 4 ? /*#__PURE__*/jsx("svg", {
112
+ role: "img",
113
+ children: /*#__PURE__*/jsx("text", {
114
+ x: "50%",
115
+ y: "50%",
116
+ dy: ".1em",
117
+ dominantBaseline: "middle",
118
+ textAnchor: "middle",
119
+ style: {
120
+ fontSize: SvgTextSize[icon.length]
121
+ },
122
+ children: icon
123
+ })
124
+ }) : /*#__PURE__*/jsx("i", {
125
+ className: "".concat(icon)
126
+ });
119
127
  }
120
- return isSvg ? /*#__PURE__*/jsx("svg", {
121
- viewBox: viewBox,
122
- children: /*#__PURE__*/jsx("path", {
123
- fill: "currentColor",
124
- d: icon.toString()
125
- })
126
- }) : (icon === null || icon === void 0 ? void 0 : icon.toString().length) <= 4 ? /*#__PURE__*/jsx("svg", {
127
- role: "img",
128
- children: /*#__PURE__*/jsx("text", {
129
- x: "50%",
130
- y: "50%",
131
- dy: ".1em",
132
- dominantBaseline: "middle",
133
- textAnchor: "middle",
134
- style: {
135
- fontSize: SvgTextSize[icon.length]
136
- },
137
- children: icon
138
- })
139
- }) : /*#__PURE__*/jsx("i", {
140
- className: "".concat(icon)
141
- });
128
+ throw Error("Invalid icon expected string");
142
129
  }, [icon, isSvg, viewBox]);
143
130
  return /*#__PURE__*/jsxs("dfn", _objectSpread(_objectSpread({
144
131
  "data-ref": "icon",
@@ -165,4 +152,4 @@ var Icon = function Icon(_ref) {
165
152
  }));
166
153
  };
167
154
 
168
- export { Icon, getIconProps };
155
+ export { Icon };
@@ -34,7 +34,7 @@ var loadIndicator = /*#__PURE__*/jsx("div", {
34
34
  * It automatically adjusts the display based on the provided fit property, allowing for different styles such as cover, contain, or fill.
35
35
  *
36
36
  * @param {ImageProps | VideoProps} props - The properties for the Media component.
37
- * @returns {JSX.Element} The rendered Media component.
37
+ * @returns {React.ReactElement} The rendered Media component.
38
38
  *
39
39
  * @example
40
40
  * ```jsx
@@ -112,7 +112,7 @@ var Image = function Image(_ref) {
112
112
  * It also includes a reel decoration for a more engaging visual presentation.
113
113
  *
114
114
  * @param {VideoProps} props - The properties for the Video component.
115
- * @returns {JSX.Element} The rendered Video component.
115
+ * @returns {React.ReactElement} The rendered Video component.
116
116
  *
117
117
  * @example
118
118
  * ```jsx
@@ -146,21 +146,21 @@ var Video = function Video(_ref2) {
146
146
  loaded = _useState8[0],
147
147
  setLoaded = _useState8[1];
148
148
  var _useState9 = useState(false),
149
- _useState10 = _slicedToArray(_useState9, 2),
150
- errored = _useState10[0],
151
- setErrored = _useState10[1];
149
+ _useState0 = _slicedToArray(_useState9, 2),
150
+ errored = _useState0[0],
151
+ setErrored = _useState0[1];
152
152
  useEffect(function () {
153
153
  setLoaded(false);
154
154
  setErrored(false);
155
155
  }, [src]);
156
- var _useState11 = useState(true),
156
+ var _useState1 = useState(true),
157
+ _useState10 = _slicedToArray(_useState1, 2),
158
+ state = _useState10[0],
159
+ setState = _useState10[1];
160
+ var _useState11 = useState(false),
157
161
  _useState12 = _slicedToArray(_useState11, 2),
158
- state = _useState12[0],
159
- setState = _useState12[1];
160
- var _useState13 = useState(false),
161
- _useState14 = _slicedToArray(_useState13, 2),
162
- volume = _useState14[0],
163
- setVolume = _useState14[1];
162
+ volume = _useState12[0],
163
+ setVolume = _useState12[1];
164
164
  useEffect(function () {
165
165
  setErrored(false);
166
166
  }, [src]);
@@ -207,7 +207,7 @@ var Video = function Video(_ref2) {
207
207
  })]
208
208
  }), /*#__PURE__*/jsxs("div", {
209
209
  "data-inner-clickable": true,
210
- className: classNames("fabric-mediaControls", "absolute bottom-6 end-6 rounded-full flex flex-col"),
210
+ className: classNames("fabric-mediaControls", "absolute bottom-6 inset-e-6 rounded-full flex flex-col"),
211
211
  children: [/*#__PURE__*/jsx(Button, {
212
212
  rounded: true,
213
213
  variant: "link",