@react-fabric/core 1.0.0-beta.9 → 1.0.1

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 (592) hide show
  1. package/{src/components/actionLabel/ActionLabel.module.css → css/components/_actionLabel.css} +4 -4
  2. package/{src/overlays/alert/Alert.module.css → css/components/_alert.css} +3 -3
  3. package/css/components/_animations.css +52 -0
  4. package/css/components/_avatar.css +89 -0
  5. package/css/components/_button.css +218 -0
  6. package/css/components/_buttonGroup.css +62 -0
  7. package/css/components/_callout.css +32 -0
  8. package/css/components/_card.css +167 -0
  9. package/css/components/_chip.css +125 -0
  10. package/css/components/_collapsable.css +32 -0
  11. package/{src/overlays/message/Message.module.css → css/components/_divider.css} +11 -10
  12. package/{src/components/dropdown/Dropdown.module.css → css/components/_dropdown.css} +3 -2
  13. package/{src/overlays/flyout/Flyout.module.css → css/components/_flyout.css} +15 -9
  14. package/css/components/_media.css +102 -0
  15. package/{src/components/menu/Menu.module.css → css/components/_menu.css} +21 -20
  16. package/{src/components/meter/Meter.module.css → css/components/_meter.css} +15 -20
  17. package/{src/overlays/modal/Modal.module.css → css/components/_modal.css} +9 -9
  18. package/{src/components/panel/Panel.module.css → css/components/_panel.css} +19 -19
  19. package/{src/components/progress/Progress.module.css → css/components/_progress.css} +7 -10
  20. package/css/components/_sonner.css +431 -0
  21. package/{src/components/tabpanel/TabPanel.module.css → css/components/_tabPanel.css} +125 -85
  22. package/css/components/_titlebar.css +48 -0
  23. package/css/components/index.css +47 -0
  24. package/css/core/_aside.css +176 -0
  25. package/css/core/_content.css +31 -0
  26. package/css/core/_errorboundary.css +55 -0
  27. package/css/core/_responsive.css +45 -0
  28. package/css/core/_typography.css +69 -0
  29. package/css/core/_viewport.css +33 -0
  30. package/{src/hooks/useClientService.tsx → css/core/index.css} +7 -7
  31. package/css/reset/_gradients.css +36 -33
  32. package/css/reset/_reset.css +206 -300
  33. package/css/reset/_text.css +31 -61
  34. package/css/reset/_theme.css +467 -81
  35. package/css/reset/index.css +23 -21
  36. package/css/styles.css +30 -23
  37. package/css/theme/_colors.css +445 -0
  38. package/css/theme/_utilities.css +528 -0
  39. package/css/theme/_variants.css +128 -0
  40. package/css/theme/index.css +55 -0
  41. package/dist/cjs/components/actionLabel/ActionLabel.js +25 -12
  42. package/dist/cjs/{overlays → components}/alert/Alert.js +76 -53
  43. package/dist/cjs/components/animations/Indicator.js +72 -0
  44. package/dist/cjs/components/animations/Loader.js +77 -0
  45. package/dist/cjs/components/animations/LoadingBars.js +37 -0
  46. package/dist/cjs/components/animations/LoadingLine.js +59 -0
  47. package/dist/cjs/components/animations/LoadingSpinner.js +37 -0
  48. package/dist/cjs/components/animations/Skeleton.js +88 -0
  49. package/dist/cjs/components/avatar/Avatar.js +41 -20
  50. package/dist/cjs/components/avatar/AvatarGroup.js +37 -16
  51. package/dist/cjs/components/badge/Badge.js +90 -68
  52. package/dist/cjs/components/button/Button.js +198 -136
  53. package/dist/cjs/components/button/ButtonGroup.js +86 -21
  54. package/dist/cjs/components/button/ConfirmButton.js +55 -41
  55. package/dist/cjs/components/button/ToggleButtonGroup.js +84 -32
  56. package/dist/cjs/components/callout/Callout.js +56 -25
  57. package/dist/cjs/components/card/Card.js +90 -42
  58. package/dist/cjs/components/card/CardCover.js +38 -27
  59. package/dist/cjs/components/card/FlipContent.js +47 -0
  60. package/dist/cjs/components/chip/Chip.js +80 -37
  61. package/dist/cjs/components/collapsable/Collapsable.js +62 -31
  62. package/dist/cjs/components/divider/Divider.js +58 -24
  63. package/dist/cjs/components/dropdown/Dropdown.js +92 -45
  64. package/dist/cjs/components/dropdown/DropdownTool.js +6 -7
  65. package/dist/cjs/components/effect/GlassEffect.js +259 -0
  66. package/dist/cjs/components/effect/MatteEffect.js +127 -0
  67. package/dist/cjs/components/effect/StyleEffect.js +43 -0
  68. package/dist/cjs/components/empty/EmptyContent.js +37 -49
  69. package/dist/cjs/components/flyout/Flyout.js +170 -0
  70. package/dist/cjs/components/hotkey/HotKey.js +42 -0
  71. package/dist/cjs/components/icon/Icon.js +81 -80
  72. package/dist/cjs/components/media/Media.js +154 -77
  73. package/dist/cjs/components/menu/ContextMenu.js +45 -20
  74. package/dist/cjs/components/menu/Menu.js +98 -38
  75. package/dist/cjs/components/menu/MenuItem.js +102 -74
  76. package/dist/cjs/components/meter/Meter.js +35 -12
  77. package/dist/cjs/components/modal/Modal.js +152 -0
  78. package/dist/cjs/components/navigator/Navigator.js +81 -36
  79. package/dist/cjs/components/panel/Panel.js +115 -60
  80. package/dist/cjs/components/panel/PanelGroup.js +42 -16
  81. package/dist/cjs/components/panel/PanelStack.js +47 -16
  82. package/dist/cjs/components/pillbox/Pillbox.js +118 -0
  83. package/dist/cjs/components/progress/ProgressBar.js +30 -14
  84. package/dist/cjs/components/progress/ProgressCircle.js +27 -11
  85. package/dist/cjs/components/tabpanel/Tab.js +53 -37
  86. package/dist/cjs/components/tabpanel/TabPanel.js +74 -28
  87. package/dist/cjs/components/titlebar/Titlebar.js +52 -0
  88. package/dist/cjs/components/tooltip/Tooltip.js +180 -0
  89. package/dist/cjs/context/Global.js +159 -80
  90. package/dist/cjs/context/ModalManager.js +60 -0
  91. package/dist/cjs/context/context.js +43 -0
  92. package/dist/cjs/core/areaToggle/AreaToggle.js +41 -0
  93. package/dist/cjs/core/aside/Aside.js +178 -83
  94. package/dist/cjs/core/boundary/ErrorBoundary.js +37 -34
  95. package/dist/cjs/core/boundary/ErrorIcon.js +32 -19
  96. package/dist/cjs/core/content/Content.js +26 -37
  97. package/dist/cjs/core/headfoot/HeadFoot.js +133 -35
  98. package/dist/cjs/core/layout/Layout.js +28 -0
  99. package/dist/cjs/core/responsive/Responsive.js +62 -26
  100. package/dist/cjs/core/theme/ThemeProvider.js +35 -41
  101. package/dist/cjs/core/viewport/Viewport.js +26 -22
  102. package/dist/cjs/hooks/useClientService.js +39 -18
  103. package/dist/cjs/hooks/useContextMenu.js +103 -0
  104. package/dist/cjs/hooks/useControlledValue.js +13 -7
  105. package/dist/cjs/hooks/useDebounce.js +37 -21
  106. package/dist/cjs/hooks/useEffectDebugger.js +79 -60
  107. package/dist/cjs/hooks/useIsDark.js +34 -26
  108. package/dist/cjs/hooks/useIsRtl.js +13 -3
  109. package/dist/cjs/hooks/useNavigator.js +12 -9
  110. package/dist/cjs/hooks/useNotificationService.js +199 -0
  111. package/dist/cjs/hooks/useOverlayService.js +82 -41
  112. package/dist/cjs/hooks/usePropState.js +41 -0
  113. package/dist/cjs/hooks/usePropToggle.js +32 -26
  114. package/dist/cjs/hooks/useResize.js +47 -38
  115. package/dist/cjs/hooks/useResizeObserver.js +26 -7
  116. package/dist/cjs/hooks/useStorage.js +29 -16
  117. package/dist/cjs/i18n/index.js +25 -23
  118. package/dist/cjs/index.js +142 -94
  119. package/dist/cjs/typography/Abbr.js +43 -20
  120. package/dist/cjs/typography/Anchor.js +39 -0
  121. package/dist/cjs/typography/Copy.js +28 -28
  122. package/dist/cjs/typography/Kbd.js +43 -0
  123. package/dist/cjs/typography/Mark.js +34 -17
  124. package/dist/cjs/typography/Text.js +36 -54
  125. package/dist/cjs/typography/Title.js +17 -40
  126. package/dist/cjs/utils/calculateDimensions.js +38 -23
  127. package/dist/cjs/utils/cloneElement.js +64 -0
  128. package/dist/cjs/{core/section/Section.js → utils/getBadgeProps.js} +25 -21
  129. package/dist/cjs/utils/getColor.js +42 -36
  130. package/dist/cjs/utils/getIconProps.js +63 -0
  131. package/dist/cjs/utils/getTooltipProps.js +66 -0
  132. package/dist/cjs/utils/nodeCheck.js +4 -4
  133. package/dist/esm/components/actionLabel/ActionLabel.js +25 -12
  134. package/dist/esm/{overlays → components}/alert/Alert.js +73 -50
  135. package/dist/esm/components/animations/Indicator.js +72 -0
  136. package/dist/esm/components/animations/Loader.js +77 -0
  137. package/dist/esm/components/animations/LoadingBars.js +37 -0
  138. package/dist/esm/components/animations/LoadingLine.js +59 -0
  139. package/dist/esm/components/animations/LoadingSpinner.js +37 -0
  140. package/dist/esm/components/animations/Skeleton.js +88 -0
  141. package/dist/esm/components/avatar/Avatar.js +42 -21
  142. package/dist/esm/components/avatar/AvatarGroup.js +37 -16
  143. package/dist/esm/components/badge/Badge.js +93 -70
  144. package/dist/esm/components/button/Button.js +199 -137
  145. package/dist/esm/components/button/ButtonGroup.js +87 -22
  146. package/dist/esm/components/button/ConfirmButton.js +58 -44
  147. package/dist/esm/components/button/ToggleButtonGroup.js +86 -34
  148. package/dist/esm/components/callout/Callout.js +56 -25
  149. package/dist/esm/components/card/Card.js +92 -44
  150. package/dist/esm/components/card/CardCover.js +38 -27
  151. package/dist/esm/components/card/FlipContent.js +47 -0
  152. package/dist/esm/components/chip/Chip.js +81 -38
  153. package/dist/esm/components/collapsable/Collapsable.js +63 -32
  154. package/dist/esm/components/divider/Divider.js +59 -25
  155. package/dist/esm/components/dropdown/Dropdown.js +95 -48
  156. package/dist/esm/components/dropdown/DropdownTool.js +6 -7
  157. package/dist/esm/components/effect/GlassEffect.js +259 -0
  158. package/dist/esm/components/effect/MatteEffect.js +127 -0
  159. package/dist/esm/components/effect/StyleEffect.js +43 -0
  160. package/dist/esm/components/empty/EmptyContent.js +38 -50
  161. package/dist/esm/components/flyout/Flyout.js +170 -0
  162. package/dist/esm/components/hotkey/HotKey.js +42 -0
  163. package/dist/esm/components/icon/Icon.js +83 -82
  164. package/dist/esm/components/media/Media.js +156 -79
  165. package/dist/esm/components/menu/ContextMenu.js +46 -21
  166. package/dist/esm/components/menu/Menu.js +101 -41
  167. package/dist/esm/components/menu/MenuItem.js +98 -70
  168. package/dist/esm/components/meter/Meter.js +36 -13
  169. package/dist/esm/components/modal/Modal.js +152 -0
  170. package/dist/esm/components/navigator/Navigator.js +81 -36
  171. package/dist/esm/components/panel/Panel.js +117 -62
  172. package/dist/esm/components/panel/PanelGroup.js +43 -17
  173. package/dist/esm/components/panel/PanelStack.js +48 -17
  174. package/dist/esm/components/pillbox/Pillbox.js +118 -0
  175. package/dist/esm/components/progress/ProgressBar.js +31 -15
  176. package/dist/esm/components/progress/ProgressCircle.js +28 -12
  177. package/dist/esm/components/tabpanel/Tab.js +54 -38
  178. package/dist/esm/components/tabpanel/TabPanel.js +75 -29
  179. package/dist/esm/components/titlebar/Titlebar.js +52 -0
  180. package/dist/esm/components/tooltip/Tooltip.js +180 -0
  181. package/dist/esm/context/Global.js +161 -78
  182. package/dist/esm/context/ModalManager.js +60 -0
  183. package/dist/esm/context/context.js +40 -0
  184. package/dist/esm/core/areaToggle/AreaToggle.js +41 -0
  185. package/dist/esm/core/aside/Aside.js +179 -84
  186. package/dist/esm/core/boundary/ErrorBoundary.js +38 -35
  187. package/dist/esm/core/boundary/ErrorIcon.js +32 -19
  188. package/dist/esm/core/content/Content.js +26 -37
  189. package/dist/esm/core/headfoot/HeadFoot.js +134 -36
  190. package/dist/esm/core/layout/Layout.js +28 -0
  191. package/dist/esm/core/responsive/Responsive.js +62 -26
  192. package/dist/esm/core/theme/ThemeProvider.js +36 -42
  193. package/dist/esm/core/viewport/Viewport.js +26 -22
  194. package/dist/esm/hooks/useClientService.js +39 -18
  195. package/dist/esm/hooks/useContextMenu.js +103 -0
  196. package/dist/esm/hooks/useControlledValue.js +14 -8
  197. package/dist/esm/hooks/useDebounce.js +37 -21
  198. package/dist/esm/hooks/useEffectDebugger.js +81 -62
  199. package/dist/esm/hooks/useIsDark.js +34 -26
  200. package/dist/esm/hooks/useIsRtl.js +13 -3
  201. package/dist/esm/hooks/useNavigator.js +13 -10
  202. package/dist/esm/hooks/useNotificationService.js +199 -0
  203. package/dist/esm/hooks/useOverlayService.js +83 -42
  204. package/dist/esm/hooks/usePropState.js +40 -0
  205. package/dist/esm/hooks/usePropToggle.js +33 -27
  206. package/dist/esm/hooks/useResize.js +48 -39
  207. package/dist/esm/hooks/useResizeObserver.js +27 -8
  208. package/dist/esm/hooks/useStorage.js +30 -17
  209. package/dist/esm/i18n/index.js +23 -21
  210. package/dist/esm/index.js +87 -44
  211. package/dist/esm/typography/Abbr.js +45 -22
  212. package/dist/esm/typography/Anchor.js +39 -0
  213. package/dist/esm/typography/Copy.js +28 -28
  214. package/dist/esm/typography/Kbd.js +43 -0
  215. package/dist/esm/typography/Mark.js +35 -18
  216. package/dist/esm/typography/Text.js +39 -57
  217. package/dist/esm/typography/Title.js +17 -40
  218. package/dist/esm/utils/calculateDimensions.js +38 -23
  219. package/dist/esm/utils/cloneElement.js +64 -0
  220. package/dist/esm/{core/section/Section.js → utils/getBadgeProps.js} +25 -21
  221. package/dist/esm/utils/getColor.js +43 -34
  222. package/dist/esm/utils/getIconProps.js +63 -0
  223. package/dist/esm/utils/getTooltipProps.js +66 -0
  224. package/dist/esm/utils/nodeCheck.js +4 -4
  225. package/dist/types/components/actionLabel/ActionLabel.d.ts +20 -7
  226. package/dist/types/components/alert/Alert.d.ts +74 -0
  227. package/dist/types/components/animations/Indicator.d.ts +57 -0
  228. package/dist/types/components/animations/Loader.d.ts +65 -0
  229. package/dist/types/components/animations/LoadingBars.d.ts +61 -0
  230. package/dist/types/components/animations/LoadingLine.d.ts +43 -0
  231. package/dist/types/components/animations/LoadingSpinner.d.ts +61 -0
  232. package/dist/types/components/animations/Skeleton.d.ts +61 -0
  233. package/dist/types/components/avatar/Avatar.d.ts +70 -19
  234. package/dist/types/components/avatar/AvatarGroup.d.ts +51 -14
  235. package/dist/types/components/badge/Badge.d.ts +64 -14
  236. package/dist/types/components/button/Button.d.ts +72 -55
  237. package/dist/types/components/button/ButtonGroup.d.ts +86 -24
  238. package/dist/types/components/button/ConfirmButton.d.ts +21 -7
  239. package/dist/types/components/button/ToggleButtonGroup.d.ts +88 -44
  240. package/dist/types/components/callout/Callout.d.ts +58 -7
  241. package/dist/types/components/card/Card.d.ts +66 -25
  242. package/dist/types/components/card/CardCover.d.ts +52 -7
  243. package/dist/types/components/card/FlipContent.d.ts +50 -0
  244. package/dist/types/components/chip/Chip.d.ts +72 -20
  245. package/dist/types/components/collapsable/Collapsable.d.ts +55 -15
  246. package/dist/types/components/divider/Divider.d.ts +25 -8
  247. package/dist/types/components/dropdown/Dropdown.d.ts +42 -9
  248. package/dist/types/components/dropdown/DropdownTool.d.ts +22 -4
  249. package/dist/types/components/effect/GlassEffect.d.ts +5 -0
  250. package/dist/types/components/effect/MatteEffect.d.ts +40 -0
  251. package/dist/types/components/effect/StyleEffect.d.ts +27 -0
  252. package/dist/types/components/empty/EmptyContent.d.ts +53 -9
  253. package/dist/types/components/flyout/Flyout.d.ts +60 -0
  254. package/dist/types/components/hotkey/HotKey.d.ts +41 -0
  255. package/dist/types/components/icon/Icon.d.ts +74 -24
  256. package/dist/types/components/media/Media.d.ts +72 -4
  257. package/dist/types/components/menu/ContextMenu.d.ts +22 -5
  258. package/dist/types/components/menu/Menu.d.ts +26 -2
  259. package/dist/types/components/menu/MenuItem.d.ts +19 -4
  260. package/dist/types/components/menu/types.d.ts +23 -14
  261. package/dist/types/components/meter/Meter.d.ts +23 -3
  262. package/dist/types/components/modal/Modal.d.ts +52 -0
  263. package/dist/types/components/navigator/Navigator.d.ts +30 -4
  264. package/dist/types/components/panel/Panel.d.ts +43 -23
  265. package/dist/types/components/panel/PanelGroup.d.ts +22 -3
  266. package/dist/types/components/panel/PanelStack.d.ts +28 -2
  267. package/dist/types/components/pillbox/Pillbox.d.ts +95 -0
  268. package/dist/types/components/progress/ProgressBar.d.ts +19 -4
  269. package/dist/types/components/progress/ProgressCircle.d.ts +18 -4
  270. package/dist/types/components/tabpanel/Tab.d.ts +42 -10
  271. package/dist/types/components/tabpanel/TabPanel.d.ts +47 -7
  272. package/dist/types/components/titlebar/Titlebar.d.ts +54 -0
  273. package/dist/types/components/tooltip/Tooltip.d.ts +76 -0
  274. package/dist/types/context/Global.d.ts +39 -69
  275. package/dist/types/context/ModalManager.d.ts +30 -0
  276. package/dist/types/context/context.d.ts +107 -0
  277. package/dist/types/core/areaToggle/AreaToggle.d.ts +33 -0
  278. package/dist/types/core/aside/Aside.d.ts +75 -20
  279. package/dist/types/core/boundary/ErrorBoundary.d.ts +43 -4
  280. package/dist/types/core/boundary/ErrorIcon.d.ts +38 -1
  281. package/dist/types/core/content/Content.d.ts +38 -6
  282. package/dist/types/core/headfoot/HeadFoot.d.ts +48 -14
  283. package/dist/types/core/layout/Layout.d.ts +38 -0
  284. package/dist/types/core/responsive/Responsive.d.ts +45 -15
  285. package/dist/types/core/theme/ThemeProvider.d.ts +35 -11
  286. package/dist/types/core/viewport/Viewport.d.ts +27 -3
  287. package/dist/types/hooks/useClientService.d.ts +43 -1
  288. package/dist/types/hooks/useContextMenu.d.ts +10 -0
  289. package/dist/types/hooks/useControlledValue.d.ts +28 -4
  290. package/dist/types/hooks/useDebounce.d.ts +38 -2
  291. package/dist/types/hooks/useEffectDebugger.d.ts +73 -4
  292. package/dist/types/hooks/useIsDark.d.ts +6 -0
  293. package/dist/types/hooks/useIsRtl.d.ts +35 -1
  294. package/dist/types/hooks/useNavigator.d.ts +37 -2
  295. package/dist/types/hooks/useNotificationService.d.ts +60 -0
  296. package/dist/types/hooks/useOverlayService.d.ts +28 -8
  297. package/dist/types/hooks/usePropState.d.ts +26 -0
  298. package/dist/types/hooks/usePropToggle.d.ts +41 -7
  299. package/dist/types/hooks/useResize.d.ts +46 -4
  300. package/dist/types/hooks/useResizeObserver.d.ts +45 -3
  301. package/dist/types/hooks/useStorage.d.ts +32 -2
  302. package/dist/types/i18n/index.d.ts +27 -3
  303. package/dist/types/index.d.ts +106 -18
  304. package/dist/types/types/colors.d.ts +29 -0
  305. package/dist/types/types/index.d.ts +216 -76
  306. package/dist/types/typography/Abbr.d.ts +51 -6
  307. package/dist/types/typography/Anchor.d.ts +41 -0
  308. package/dist/types/typography/Copy.d.ts +36 -2
  309. package/dist/types/typography/Kbd.d.ts +40 -0
  310. package/dist/types/typography/Mark.d.ts +44 -7
  311. package/dist/types/typography/Text.d.ts +40 -24
  312. package/dist/types/typography/Title.d.ts +37 -26
  313. package/dist/types/typography/types.d.ts +32 -0
  314. package/dist/types/utils/calculateDimensions.d.ts +50 -6
  315. package/dist/types/utils/cloneElement.d.ts +41 -0
  316. package/dist/types/utils/getBadgeProps.d.ts +16 -0
  317. package/dist/types/utils/getColor.d.ts +43 -4
  318. package/dist/types/utils/getIconProps.d.ts +45 -0
  319. package/dist/types/utils/getTooltipProps.d.ts +47 -0
  320. package/dist/types/utils/index.d.ts +28 -0
  321. package/dist/types/utils/nodeCheck.d.ts +1 -2
  322. package/package.json +29 -21
  323. package/src/components/actionLabel/ActionLabel.tsx +28 -39
  324. package/src/components/alert/Alert.tsx +261 -0
  325. package/src/components/animations/Indicator.tsx +76 -0
  326. package/src/components/animations/Loader.tsx +89 -0
  327. package/src/components/animations/LoadingBars.tsx +70 -0
  328. package/src/components/animations/LoadingLine.tsx +51 -0
  329. package/src/components/animations/LoadingSpinner.tsx +70 -0
  330. package/src/components/animations/Skeleton.tsx +100 -0
  331. package/src/components/avatar/Avatar.tsx +89 -70
  332. package/src/components/avatar/AvatarGroup.tsx +65 -74
  333. package/src/components/badge/Badge.tsx +141 -108
  334. package/src/components/button/Button.tsx +223 -238
  335. package/src/components/button/ButtonGroup.tsx +117 -77
  336. package/src/components/button/ConfirmButton.tsx +60 -90
  337. package/src/components/button/ToggleButtonGroup.tsx +134 -120
  338. package/src/components/callout/Callout.tsx +81 -59
  339. package/src/components/card/Card.tsx +131 -113
  340. package/src/components/card/CardCover.tsx +61 -61
  341. package/src/components/card/FlipContent.tsx +78 -0
  342. package/src/components/chip/Chip.tsx +139 -99
  343. package/src/components/collapsable/Collapsable.tsx +79 -77
  344. package/src/components/divider/Divider.tsx +74 -53
  345. package/src/components/dropdown/Dropdown.tsx +109 -106
  346. package/src/components/dropdown/DropdownTool.tsx +29 -12
  347. package/src/components/effect/GlassEffect.tsx +221 -0
  348. package/src/components/effect/MatteEffect.tsx +99 -0
  349. package/src/components/effect/StyleEffect.tsx +36 -0
  350. package/src/components/empty/EmptyContent.tsx +60 -99
  351. package/src/components/flyout/Flyout.tsx +257 -0
  352. package/src/components/hotkey/HotKey.tsx +57 -0
  353. package/src/components/icon/Icon.tsx +131 -130
  354. package/src/components/media/Media.tsx +184 -154
  355. package/src/components/menu/ContextMenu.tsx +56 -39
  356. package/src/components/menu/Menu.tsx +121 -84
  357. package/src/components/menu/MenuItem.tsx +87 -69
  358. package/src/components/menu/types.ts +23 -28
  359. package/src/components/meter/Meter.tsx +34 -17
  360. package/src/components/modal/Modal.tsx +226 -0
  361. package/src/components/navigator/Navigator.tsx +93 -38
  362. package/src/components/panel/Panel.tsx +123 -131
  363. package/src/components/panel/PanelGroup.tsx +49 -43
  364. package/src/components/panel/PanelStack.tsx +63 -62
  365. package/src/components/pillbox/Pillbox.tsx +208 -0
  366. package/src/components/progress/ProgressBar.tsx +33 -33
  367. package/src/components/progress/ProgressCircle.tsx +29 -37
  368. package/src/components/tabpanel/Tab.tsx +84 -73
  369. package/src/components/tabpanel/TabPanel.tsx +102 -51
  370. package/src/components/titlebar/Titlebar.tsx +115 -0
  371. package/src/components/tooltip/Tooltip.tsx +255 -0
  372. package/src/context/Global.tsx +148 -148
  373. package/src/context/ModalManager.tsx +68 -0
  374. package/src/context/context.ts +111 -0
  375. package/src/core/areaToggle/AreaToggle.tsx +45 -0
  376. package/src/core/aside/Aside.tsx +200 -155
  377. package/src/core/boundary/ErrorBoundary.tsx +50 -68
  378. package/src/core/boundary/ErrorIcon.tsx +34 -32
  379. package/src/core/content/Content.tsx +41 -50
  380. package/src/core/headfoot/HeadFoot.tsx +162 -81
  381. package/src/core/layout/Layout.tsx +54 -0
  382. package/src/core/responsive/Responsive.tsx +91 -98
  383. package/src/core/theme/ThemeProvider.tsx +45 -56
  384. package/src/core/viewport/Viewport.tsx +25 -27
  385. package/src/hooks/useClientService.ts +47 -0
  386. package/src/hooks/useContextMenu.tsx +131 -0
  387. package/src/hooks/useControlledValue.ts +47 -0
  388. package/src/hooks/useDebounce.ts +41 -24
  389. package/src/hooks/useEffectDebugger.ts +105 -94
  390. package/src/hooks/useIsDark.ts +10 -24
  391. package/src/hooks/useIsRtl.ts +32 -20
  392. package/src/hooks/useNavigator.tsx +41 -26
  393. package/src/hooks/useNotificationService.tsx +239 -0
  394. package/src/hooks/useOverlayService.tsx +67 -20
  395. package/src/hooks/usePropState.ts +52 -0
  396. package/src/hooks/usePropToggle.ts +54 -47
  397. package/src/hooks/useResize.ts +69 -45
  398. package/src/hooks/useResizeObserver.ts +59 -34
  399. package/src/hooks/useStorage.ts +40 -48
  400. package/src/i18n/index.ts +24 -25
  401. package/src/index.ts +115 -44
  402. package/src/types/colors.ts +49 -0
  403. package/src/types/global.d.ts +40 -17
  404. package/src/types/index.ts +243 -155
  405. package/src/typography/Abbr.tsx +62 -59
  406. package/src/typography/Anchor.tsx +63 -0
  407. package/src/typography/Copy.tsx +39 -29
  408. package/src/typography/Kbd.tsx +50 -0
  409. package/src/typography/Mark.tsx +56 -51
  410. package/src/typography/Text.tsx +57 -128
  411. package/src/typography/Title.tsx +36 -108
  412. package/src/typography/types.ts +27 -17
  413. package/src/utils/calculateDimensions.ts +50 -40
  414. package/src/utils/cloneElement.ts +61 -0
  415. package/src/{core/content/Content.module.css → utils/getBadgeProps.ts} +20 -15
  416. package/src/utils/getColor.ts +42 -36
  417. package/src/utils/getIconProps.ts +58 -0
  418. package/src/utils/getTooltipProps.ts +59 -0
  419. package/src/utils/index.ts +23 -17
  420. package/src/utils/nodeCheck.ts +4 -8
  421. package/css/flags.rect.css +0 -1607
  422. package/css/flags.wavy.css +0 -1606
  423. package/css/index.js +0 -250
  424. package/css/tailwind/colors.ts +0 -158
  425. package/dist/cjs/components/actionLabel/ActionLabel.module.css +0 -1
  426. package/dist/cjs/components/animations/Animations.js +0 -142
  427. package/dist/cjs/components/animations/Animations.module.css +0 -1
  428. package/dist/cjs/components/avatar/Avatar.module.css +0 -1
  429. package/dist/cjs/components/badge/Badge.module.css +0 -1
  430. package/dist/cjs/components/breadcrumbs/Breadcrumbs.js +0 -71
  431. package/dist/cjs/components/breadcrumbs/Breadcrumbs.module.css +0 -1
  432. package/dist/cjs/components/button/Button.module.css +0 -1
  433. package/dist/cjs/components/card/Card.module.css +0 -1
  434. package/dist/cjs/components/chip/Chip.module.css +0 -1
  435. package/dist/cjs/components/collapsable/Collapsable.module.css +0 -1
  436. package/dist/cjs/components/dropdown/Dropdown.module.css +0 -1
  437. package/dist/cjs/components/icon/Icon.module.css +0 -1
  438. package/dist/cjs/components/media/Media.module.css +0 -1
  439. package/dist/cjs/components/menu/Menu.module.css +0 -1
  440. package/dist/cjs/components/meter/Meter.module.css +0 -1
  441. package/dist/cjs/components/panel/Panel.module.css +0 -1
  442. package/dist/cjs/components/progress/Progress.module.css +0 -1
  443. package/dist/cjs/components/tabpanel/TabPanel.module.css +0 -1
  444. package/dist/cjs/context/NotificationCenter.js +0 -254
  445. package/dist/cjs/core/aside/Aside.module.css +0 -1
  446. package/dist/cjs/core/boundary/ErrorBoundary.module.css +0 -1
  447. package/dist/cjs/core/content/Content.module.css +0 -1
  448. package/dist/cjs/core/headfoot/HeadFoot.module.css +0 -1
  449. package/dist/cjs/core/page/Page.js +0 -66
  450. package/dist/cjs/core/page/Page.module.css +0 -1
  451. package/dist/cjs/core/responsive/Responsive.module.css +0 -1
  452. package/dist/cjs/core/section/Section.module.css +0 -1
  453. package/dist/cjs/core/theme/Theme.module.css +0 -1
  454. package/dist/cjs/core/viewport/Viewport.module.css +0 -1
  455. package/dist/cjs/hotkeys/HotKey.js +0 -47
  456. package/dist/cjs/hotkeys/HotKeyLabel.js +0 -52
  457. package/dist/cjs/hotkeys/HotKeyWrapper.js +0 -98
  458. package/dist/cjs/hotkeys/commons.js +0 -56
  459. package/dist/cjs/overlays/alert/Alert.module.css +0 -1
  460. package/dist/cjs/overlays/flyout/Flyout.js +0 -152
  461. package/dist/cjs/overlays/flyout/Flyout.module.css +0 -1
  462. package/dist/cjs/overlays/message/Message.js +0 -84
  463. package/dist/cjs/overlays/message/Message.module.css +0 -1
  464. package/dist/cjs/overlays/modal/Modal.js +0 -132
  465. package/dist/cjs/overlays/modal/Modal.module.css +0 -1
  466. package/dist/cjs/overlays/toast/Toast.js +0 -166
  467. package/dist/cjs/overlays/toast/Toast.module.css +0 -1
  468. package/dist/cjs/overlays/tooltip/Tooltip.js +0 -133
  469. package/dist/cjs/overlays/tooltip/Tooltip.module.css +0 -1
  470. package/dist/cjs/types/icons.js +0 -200
  471. package/dist/cjs/typography/Link.js +0 -55
  472. package/dist/cjs/typography/Typography.module.css +0 -1
  473. package/dist/cjs/typography/types.js +0 -42
  474. package/dist/esm/components/actionLabel/ActionLabel.module.css +0 -1
  475. package/dist/esm/components/animations/Animations.js +0 -138
  476. package/dist/esm/components/animations/Animations.module.css +0 -1
  477. package/dist/esm/components/avatar/Avatar.module.css +0 -1
  478. package/dist/esm/components/badge/Badge.module.css +0 -1
  479. package/dist/esm/components/breadcrumbs/Breadcrumbs.js +0 -71
  480. package/dist/esm/components/breadcrumbs/Breadcrumbs.module.css +0 -1
  481. package/dist/esm/components/button/Button.module.css +0 -1
  482. package/dist/esm/components/card/Card.module.css +0 -1
  483. package/dist/esm/components/chip/Chip.module.css +0 -1
  484. package/dist/esm/components/collapsable/Collapsable.module.css +0 -1
  485. package/dist/esm/components/dropdown/Dropdown.module.css +0 -1
  486. package/dist/esm/components/icon/Icon.module.css +0 -1
  487. package/dist/esm/components/media/Media.module.css +0 -1
  488. package/dist/esm/components/menu/Menu.module.css +0 -1
  489. package/dist/esm/components/meter/Meter.module.css +0 -1
  490. package/dist/esm/components/panel/Panel.module.css +0 -1
  491. package/dist/esm/components/progress/Progress.module.css +0 -1
  492. package/dist/esm/components/tabpanel/TabPanel.module.css +0 -1
  493. package/dist/esm/context/NotificationCenter.js +0 -254
  494. package/dist/esm/core/aside/Aside.module.css +0 -1
  495. package/dist/esm/core/boundary/ErrorBoundary.module.css +0 -1
  496. package/dist/esm/core/content/Content.module.css +0 -1
  497. package/dist/esm/core/headfoot/HeadFoot.module.css +0 -1
  498. package/dist/esm/core/page/Page.js +0 -66
  499. package/dist/esm/core/page/Page.module.css +0 -1
  500. package/dist/esm/core/responsive/Responsive.module.css +0 -1
  501. package/dist/esm/core/section/Section.module.css +0 -1
  502. package/dist/esm/core/theme/Theme.module.css +0 -1
  503. package/dist/esm/core/viewport/Viewport.module.css +0 -1
  504. package/dist/esm/hotkeys/HotKey.js +0 -47
  505. package/dist/esm/hotkeys/HotKeyLabel.js +0 -52
  506. package/dist/esm/hotkeys/HotKeyWrapper.js +0 -96
  507. package/dist/esm/hotkeys/commons.js +0 -56
  508. package/dist/esm/overlays/alert/Alert.module.css +0 -1
  509. package/dist/esm/overlays/flyout/Flyout.js +0 -152
  510. package/dist/esm/overlays/flyout/Flyout.module.css +0 -1
  511. package/dist/esm/overlays/message/Message.js +0 -84
  512. package/dist/esm/overlays/message/Message.module.css +0 -1
  513. package/dist/esm/overlays/modal/Modal.js +0 -132
  514. package/dist/esm/overlays/modal/Modal.module.css +0 -1
  515. package/dist/esm/overlays/toast/Toast.js +0 -166
  516. package/dist/esm/overlays/toast/Toast.module.css +0 -1
  517. package/dist/esm/overlays/tooltip/Tooltip.js +0 -132
  518. package/dist/esm/overlays/tooltip/Tooltip.module.css +0 -1
  519. package/dist/esm/types/icons.js +0 -202
  520. package/dist/esm/typography/Link.js +0 -55
  521. package/dist/esm/typography/Typography.module.css +0 -1
  522. package/dist/esm/typography/types.js +0 -41
  523. package/dist/types/components/animations/Animations.d.ts +0 -23
  524. package/dist/types/components/breadcrumbs/Breadcrumbs.d.ts +0 -17
  525. package/dist/types/components/index.d.ts +0 -33
  526. package/dist/types/context/NotificationCenter.d.ts +0 -11
  527. package/dist/types/core/index.d.ts +0 -9
  528. package/dist/types/core/page/Page.d.ts +0 -23
  529. package/dist/types/core/section/Section.d.ts +0 -7
  530. package/dist/types/hotkeys/HotKey.d.ts +0 -2
  531. package/dist/types/hotkeys/HotKeyLabel.d.ts +0 -2
  532. package/dist/types/hotkeys/HotKeyWrapper.d.ts +0 -11
  533. package/dist/types/hotkeys/commons.d.ts +0 -28
  534. package/dist/types/overlays/alert/Alert.d.ts +0 -41
  535. package/dist/types/overlays/flyout/Flyout.d.ts +0 -57
  536. package/dist/types/overlays/index.d.ts +0 -6
  537. package/dist/types/overlays/message/Message.d.ts +0 -21
  538. package/dist/types/overlays/modal/Modal.d.ts +0 -53
  539. package/dist/types/overlays/toast/Toast.d.ts +0 -33
  540. package/dist/types/overlays/tooltip/Tooltip.d.ts +0 -18
  541. package/dist/types/types/icons.d.ts +0 -197
  542. package/dist/types/typography/Link.d.ts +0 -25
  543. package/dist/types/typography/index.d.ts +0 -6
  544. package/src/components/animations/Animations.module.css +0 -253
  545. package/src/components/animations/Animations.tsx +0 -196
  546. package/src/components/avatar/Avatar.module.css +0 -90
  547. package/src/components/badge/Badge.module.css +0 -165
  548. package/src/components/breadcrumbs/Breadcrumbs.module.css +0 -189
  549. package/src/components/breadcrumbs/Breadcrumbs.tsx +0 -109
  550. package/src/components/button/Button.module.css +0 -375
  551. package/src/components/card/Card.module.css +0 -152
  552. package/src/components/chip/Chip.module.css +0 -118
  553. package/src/components/collapsable/Collapsable.module.css +0 -30
  554. package/src/components/icon/Icon.module.css +0 -71
  555. package/src/components/index.ts +0 -62
  556. package/src/components/media/Media.module.css +0 -112
  557. package/src/context/NotificationCenter.tsx +0 -223
  558. package/src/core/aside/Aside.module.css +0 -231
  559. package/src/core/boundary/ErrorBoundary.module.css +0 -65
  560. package/src/core/headfoot/HeadFoot.module.css +0 -38
  561. package/src/core/index.ts +0 -32
  562. package/src/core/page/Page.module.css +0 -46
  563. package/src/core/page/Page.tsx +0 -101
  564. package/src/core/responsive/Responsive.module.css +0 -85
  565. package/src/core/section/Section.module.css +0 -28
  566. package/src/core/section/Section.tsx +0 -54
  567. package/src/core/theme/Theme.module.css +0 -30
  568. package/src/core/viewport/Viewport.module.css +0 -32
  569. package/src/hooks/useControlledValue.tsx +0 -43
  570. package/src/hotkeys/HotKey.tsx +0 -39
  571. package/src/hotkeys/HotKeyLabel.tsx +0 -61
  572. package/src/hotkeys/HotKeyWrapper.tsx +0 -137
  573. package/src/hotkeys/commons.ts +0 -74
  574. package/src/overlays/alert/Alert.tsx +0 -252
  575. package/src/overlays/flyout/Flyout.tsx +0 -283
  576. package/src/overlays/index.ts +0 -29
  577. package/src/overlays/message/Message.tsx +0 -107
  578. package/src/overlays/modal/Modal.tsx +0 -244
  579. package/src/overlays/toast/Toast.module.css +0 -37
  580. package/src/overlays/toast/Toast.tsx +0 -216
  581. package/src/overlays/tooltip/Tooltip.module.css +0 -53
  582. package/src/overlays/tooltip/Tooltip.tsx +0 -200
  583. package/src/types/icons.ts +0 -426
  584. package/src/typography/Link.tsx +0 -113
  585. package/src/typography/Typography.module.css +0 -68
  586. package/src/typography/index.ts +0 -29
  587. /package/dist/cjs/i18n/{ar.json.js → ar/core.json.js} +0 -0
  588. /package/dist/cjs/i18n/{en.json.js → en/core.json.js} +0 -0
  589. /package/dist/esm/i18n/{ar.json.js → ar/core.json.js} +0 -0
  590. /package/dist/esm/i18n/{en.json.js → en/core.json.js} +0 -0
  591. /package/src/i18n/{ar.json → ar/core.json} +0 -0
  592. /package/src/i18n/{en.json → en/core.json} +0 -0
@@ -5,40 +5,53 @@ var react = require('react');
5
5
  var useClientService = require('./useClientService.js');
6
6
  var useEffectDebugger = require('./useEffectDebugger.js');
7
7
 
8
- var useLocalStorage = function useLocalStorage(key, defaultValue) {
9
- var _JSON$parse, _service$getItem;
8
+ /**
9
+ * Hook to manage a value in localStorage with a default fallback. Returns [value, setValue].
10
+ */
11
+ function useLocalStorage(key, defaultValue) {
10
12
  var service = useClientService.useClientService(localStorage);
11
- var _useState = react.useState((_JSON$parse = JSON.parse((_service$getItem = service === null || service === void 0 ? void 0 : service.getItem(key)) !== null && _service$getItem !== void 0 ? _service$getItem : "null")) !== null && _JSON$parse !== void 0 ? _JSON$parse : defaultValue),
13
+ var _useState = react.useState(function () {
14
+ var _ref, _service$getItem;
15
+ return (_ref = JSON.parse((_service$getItem = service === null || service === void 0 ? void 0 : service.getItem(key)) !== null && _service$getItem !== void 0 ? _service$getItem : "null")) !== null && _ref !== void 0 ? _ref : defaultValue;
16
+ }),
12
17
  _useState2 = _slicedToArray(_useState, 2),
13
18
  value = _useState2[0],
14
19
  setValue = _useState2[1];
15
- useEffectDebugger.useEffectDebugger(function () {
16
- var _JSON$parse2, _service$getItem2;
17
- setValue((_JSON$parse2 = JSON.parse((_service$getItem2 = service === null || service === void 0 ? void 0 : service.getItem(key)) !== null && _service$getItem2 !== void 0 ? _service$getItem2 : "null")) !== null && _JSON$parse2 !== void 0 ? _JSON$parse2 : defaultValue);
18
- }, [], "useStorage initial value");
20
+ var init = react.useEffectEvent(function () {
21
+ var _ref2, _service$getItem2;
22
+ setValue((_ref2 = JSON.parse((_service$getItem2 = service === null || service === void 0 ? void 0 : service.getItem(key)) !== null && _service$getItem2 !== void 0 ? _service$getItem2 : "null")) !== null && _ref2 !== void 0 ? _ref2 : defaultValue);
23
+ });
24
+ useEffectDebugger.useEffectDebugger(init, [], "useStorage initial value");
19
25
  var changeValue = function changeValue(value) {
20
26
  service === null || service === void 0 || service.setItem(key, JSON.stringify(value));
21
27
  setValue(value);
22
28
  };
23
29
  return [value, changeValue];
24
- };
25
- var useSessionStorage = function useSessionStorage(key, defaultValue) {
26
- var _JSON$parse3, _service$getItem3;
30
+ }
31
+
32
+ /**
33
+ * Hook to manage a value in sessionStorage with a default fallback. Returns [value, setValue].
34
+ */
35
+ function useSessionStorage(key, defaultValue) {
27
36
  var service = useClientService.useClientService(sessionStorage);
28
- var _useState3 = react.useState((_JSON$parse3 = JSON.parse((_service$getItem3 = service === null || service === void 0 ? void 0 : service.getItem(key)) !== null && _service$getItem3 !== void 0 ? _service$getItem3 : "null")) !== null && _JSON$parse3 !== void 0 ? _JSON$parse3 : defaultValue),
37
+ var _useState3 = react.useState(function () {
38
+ var _ref3, _service$getItem3;
39
+ return (_ref3 = JSON.parse((_service$getItem3 = service === null || service === void 0 ? void 0 : service.getItem(key)) !== null && _service$getItem3 !== void 0 ? _service$getItem3 : "null")) !== null && _ref3 !== void 0 ? _ref3 : defaultValue;
40
+ }),
29
41
  _useState4 = _slicedToArray(_useState3, 2),
30
42
  value = _useState4[0],
31
43
  setValue = _useState4[1];
32
- useEffectDebugger.useEffectDebugger(function () {
33
- var _JSON$parse4, _service$getItem4;
34
- setValue((_JSON$parse4 = JSON.parse((_service$getItem4 = service === null || service === void 0 ? void 0 : service.getItem(key)) !== null && _service$getItem4 !== void 0 ? _service$getItem4 : "null")) !== null && _JSON$parse4 !== void 0 ? _JSON$parse4 : defaultValue);
35
- }, [], "useStorage initial value");
44
+ var init = react.useEffectEvent(function () {
45
+ var _ref4, _service$getItem4;
46
+ setValue((_ref4 = JSON.parse((_service$getItem4 = service === null || service === void 0 ? void 0 : service.getItem(key)) !== null && _service$getItem4 !== void 0 ? _service$getItem4 : "null")) !== null && _ref4 !== void 0 ? _ref4 : defaultValue);
47
+ });
48
+ useEffectDebugger.useEffectDebugger(init, [], "useStorage initial value");
36
49
  var changeValue = function changeValue(value) {
37
50
  service === null || service === void 0 || service.setItem(key, JSON.stringify(value));
38
51
  setValue(value);
39
52
  };
40
53
  return [value, changeValue];
41
- };
54
+ }
42
55
 
43
56
  exports.useLocalStorage = useLocalStorage;
44
57
  exports.useSessionStorage = useSessionStorage;
@@ -1,38 +1,40 @@
1
1
  'use strict';
2
2
 
3
3
  var i18next = require('i18next');
4
- var ar = require('./ar.json.js');
5
- var en = require('./en.json.js');
4
+ var core = require('./ar/core.json.js');
5
+ var core$1 = require('./en/core.json.js');
6
6
 
7
- /*
7
+ /**
8
8
  * React Fabric
9
- * @version: 1.0.0
10
- *
11
- *
12
- * The MIT License (MIT)
13
- * Copyright (c) 2024 Adarsh Pastakia
9
+ * @version 1.0.0
10
+ * @license MIT
11
+ * @copyright 2024 Adarsh Pastakia
14
12
  *
15
- * Permission is hereby granted, free of charge, to any person obtaining a copy of this software
16
- * and associated documentation files (the "Software"), to deal in the Software without restriction,
17
- * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
18
- * and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
19
- * subject to the following conditions:
13
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
14
+ * of this software and associated documentation files (the "Software"), to deal
15
+ * in the Software without restriction, including without limitation the rights
16
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
17
+ * copies of the Software, and to permit persons to whom the Software is
18
+ * furnished to do so, subject to the following conditions:
20
19
  *
21
- * The above copyright notice and this permission notice shall be included in all copies or substantial
22
- * portions of the Software.
20
+ * The above copyright notice and this permission notice shall be included in all
21
+ * copies or substantial portions of the Software.
23
22
  *
24
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
25
- * TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
26
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
27
- * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
24
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
25
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
26
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
27
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
28
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
29
+ * SOFTWARE.
28
30
  */
29
31
  /* istanbul ignore file */
30
32
 
31
33
 
32
34
  /**
33
35
  * add language bundles using bundle keys as namespaces
34
- * @param key
35
- * @param languageBundles: {en: {}, ar: {}}
36
+ * @param {string} key
37
+ * @param {Record<string, Record<string, string>>} languageBundles: {en: {}, ar: {}}
36
38
  */
37
39
  var addTranslationBundle = function addTranslationBundle(key, languageBundles) {
38
40
  var callback = function callback() {
@@ -48,8 +50,8 @@ var addTranslationBundle = function addTranslationBundle(key, languageBundles) {
48
50
  }
49
51
  };
50
52
  addTranslationBundle("core", {
51
- en: en.default,
52
- ar: ar.default
53
+ en: core$1.default,
54
+ ar: core.default
53
55
  });
54
56
 
55
57
  exports.addTranslationBundle = addTranslationBundle;
package/dist/cjs/index.js CHANGED
@@ -1,11 +1,55 @@
1
1
  'use strict';
2
2
 
3
+ var context = require('./context/context.js');
4
+ var Global = require('./context/Global.js');
5
+ var index = require('./i18n/index.js');
6
+ var cloneElement = require('./utils/cloneElement.js');
7
+ var getBadgeProps = require('./utils/getBadgeProps.js');
8
+ var getColor = require('./utils/getColor.js');
9
+ var getIconProps = require('./utils/getIconProps.js');
10
+ require('@react-fabric/utilities');
11
+ require('react');
12
+ var useClientService = require('./hooks/useClientService.js');
13
+ var useContextMenu = require('./hooks/useContextMenu.js');
14
+ var useControlledValue = require('./hooks/useControlledValue.js');
15
+ var useDebounce = require('./hooks/useDebounce.js');
16
+ var useEffectDebugger = require('./hooks/useEffectDebugger.js');
17
+ var useIsDark = require('./hooks/useIsDark.js');
18
+ var useIsRtl = require('./hooks/useIsRtl.js');
19
+ var useNavigator = require('./hooks/useNavigator.js');
20
+ var useNotificationService = require('./hooks/useNotificationService.js');
21
+ var useOverlayService = require('./hooks/useOverlayService.js');
22
+ var usePropState = require('./hooks/usePropState.js');
23
+ var usePropToggle = require('./hooks/usePropToggle.js');
24
+ var useResize = require('./hooks/useResize.js');
25
+ var useResizeObserver = require('./hooks/useResizeObserver.js');
26
+ var useStorage = require('./hooks/useStorage.js');
27
+ var AreaToggle = require('./core/areaToggle/AreaToggle.js');
28
+ var Aside = require('./core/aside/Aside.js');
29
+ var ErrorBoundary = require('./core/boundary/ErrorBoundary.js');
30
+ var Content = require('./core/content/Content.js');
31
+ var HeadFoot = require('./core/headfoot/HeadFoot.js');
32
+ var Layout = require('./core/layout/Layout.js');
33
+ var Responsive = require('./core/responsive/Responsive.js');
34
+ var ThemeProvider = require('./core/theme/ThemeProvider.js');
35
+ var Viewport = require('./core/viewport/Viewport.js');
36
+ var Abbr = require('./typography/Abbr.js');
37
+ var Anchor = require('./typography/Anchor.js');
38
+ var Copy = require('./typography/Copy.js');
39
+ var Kbd = require('./typography/Kbd.js');
40
+ var Mark = require('./typography/Mark.js');
41
+ var Text = require('./typography/Text.js');
42
+ var Title = require('./typography/Title.js');
3
43
  var ActionLabel = require('./components/actionLabel/ActionLabel.js');
4
- var Animations = require('./components/animations/Animations.js');
44
+ var Indicator = require('./components/animations/Indicator.js');
45
+ var Loader = require('./components/animations/Loader.js');
46
+ var LoadingBars = require('./components/animations/LoadingBars.js');
47
+ var LoadingLine = require('./components/animations/LoadingLine.js');
48
+ var LoadingSpinner = require('./components/animations/LoadingSpinner.js');
49
+ var Skeleton = require('./components/animations/Skeleton.js');
5
50
  var Avatar = require('./components/avatar/Avatar.js');
6
51
  var AvatarGroup = require('./components/avatar/AvatarGroup.js');
7
52
  var Badge = require('./components/badge/Badge.js');
8
- var Breadcrumbs = require('./components/breadcrumbs/Breadcrumbs.js');
9
53
  var Button = require('./components/button/Button.js');
10
54
  var ButtonGroup = require('./components/button/ButtonGroup.js');
11
55
  var ConfirmButton = require('./components/button/ConfirmButton.js');
@@ -13,81 +57,120 @@ var ToggleButtonGroup = require('./components/button/ToggleButtonGroup.js');
13
57
  var Callout = require('./components/callout/Callout.js');
14
58
  var Card = require('./components/card/Card.js');
15
59
  var CardCover = require('./components/card/CardCover.js');
60
+ var FlipContent = require('./components/card/FlipContent.js');
16
61
  var Chip = require('./components/chip/Chip.js');
17
62
  var Collapsable = require('./components/collapsable/Collapsable.js');
18
63
  var Divider = require('./components/divider/Divider.js');
19
64
  var Dropdown = require('./components/dropdown/Dropdown.js');
20
65
  var DropdownTool = require('./components/dropdown/DropdownTool.js');
66
+ var StyleEffect = require('./components/effect/StyleEffect.js');
21
67
  var EmptyContent = require('./components/empty/EmptyContent.js');
68
+ var Flyout = require('./components/flyout/Flyout.js');
69
+ var HotKey = require('./components/hotkey/HotKey.js');
22
70
  var Icon = require('./components/icon/Icon.js');
23
71
  var Media = require('./components/media/Media.js');
24
72
  var ContextMenu = require('./components/menu/ContextMenu.js');
25
73
  var Menu = require('./components/menu/Menu.js');
26
74
  var MenuItem = require('./components/menu/MenuItem.js');
27
75
  var Meter = require('./components/meter/Meter.js');
76
+ var Modal = require('./components/modal/Modal.js');
28
77
  var Navigator = require('./components/navigator/Navigator.js');
29
78
  var Panel = require('./components/panel/Panel.js');
30
79
  var PanelGroup = require('./components/panel/PanelGroup.js');
31
80
  var PanelStack = require('./components/panel/PanelStack.js');
81
+ var Pillbox = require('./components/pillbox/Pillbox.js');
32
82
  var ProgressBar = require('./components/progress/ProgressBar.js');
33
83
  var ProgressCircle = require('./components/progress/ProgressCircle.js');
34
84
  var Tab = require('./components/tabpanel/Tab.js');
35
85
  var TabPanel = require('./components/tabpanel/TabPanel.js');
36
- var Aside = require('./core/aside/Aside.js');
37
- var ErrorBoundary = require('./core/boundary/ErrorBoundary.js');
38
- var Content = require('./core/content/Content.js');
39
- var HeadFoot = require('./core/headfoot/HeadFoot.js');
40
- var Page = require('./core/page/Page.js');
41
- var Responsive = require('./core/responsive/Responsive.js');
42
- var Section = require('./core/section/Section.js');
43
- var ThemeProvider = require('./core/theme/ThemeProvider.js');
44
- var Viewport = require('./core/viewport/Viewport.js');
45
- var index = require('./i18n/index.js');
46
- require('@babel/runtime/helpers/defineProperty');
47
- require('@babel/runtime/helpers/slicedToArray');
48
- require('@floating-ui/react');
49
- require('classnames');
50
- require('react');
51
- require('react-i18next');
52
- var icons = require('./types/icons.js');
53
- var Title = require('./typography/Title.js');
54
- require('@react-fabric/utilities');
55
- require('react/jsx-runtime');
56
- var Flyout = require('./overlays/flyout/Flyout.js');
57
- var Modal = require('./overlays/modal/Modal.js');
58
- var Tooltip = require('./overlays/tooltip/Tooltip.js');
59
- var Abbr = require('./typography/Abbr.js');
60
- var Copy = require('./typography/Copy.js');
61
- var Link = require('./typography/Link.js');
62
- var Mark = require('./typography/Mark.js');
63
- var Text = require('./typography/Text.js');
64
- var useClientService = require('./hooks/useClientService.js');
65
- var useDebounce = require('./hooks/useDebounce.js');
66
- var useEffectDebugger = require('./hooks/useEffectDebugger.js');
67
- var useIsDark = require('./hooks/useIsDark.js');
68
- var useIsRtl = require('./hooks/useIsRtl.js');
69
- var useNavigator = require('./hooks/useNavigator.js');
70
- var useOverlayService = require('./hooks/useOverlayService.js');
71
- var useResize = require('./hooks/useResize.js');
72
- var useResizeObserver = require('./hooks/useResizeObserver.js');
73
- var useStorage = require('./hooks/useStorage.js');
74
- var HotKey = require('./hotkeys/HotKey.js');
75
- var HotKeyLabel = require('./hotkeys/HotKeyLabel.js');
76
- var Global = require('./context/Global.js');
86
+ var Titlebar = require('./components/titlebar/Titlebar.js');
87
+ var Tooltip = require('./components/tooltip/Tooltip.js');
88
+
89
+ /**
90
+ * React Fabric
91
+ * @version 1.0.0
92
+ * @license MIT
93
+ * @copyright 2024 Adarsh Pastakia
94
+ *
95
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
96
+ * of this software and associated documentation files (the "Software"), to deal
97
+ * in the Software without restriction, including without limitation the rights
98
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
99
+ * copies of the Software, and to permit persons to whom the Software is
100
+ * furnished to do so, subject to the following conditions:
101
+ *
102
+ * The above copyright notice and this permission notice shall be included in all
103
+ * copies or substantial portions of the Software.
104
+ *
105
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
106
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
107
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
108
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
109
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
110
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
111
+ * SOFTWARE.
112
+ */
77
113
 
114
+ /* istanbul ignore file */
78
115
 
116
+ var CORE_PACKAGE = "@react-fabric/core";
117
+ var CORE_VERSION = "1.0.1";
79
118
 
119
+ exports.useApplicationContext = context.useApplicationContext;
120
+ exports.ApplicationProvider = Global.ApplicationProvider;
121
+ exports.addTranslationBundle = index.addTranslationBundle;
122
+ exports.cloneChildren = cloneElement.cloneChildren;
123
+ exports.getBadgeProps = getBadgeProps.getBadgeProps;
124
+ exports.getColor = getColor.getColor;
125
+ exports.getIconProps = getIconProps.getIconProps;
126
+ exports.useClientService = useClientService.useClientService;
127
+ exports.useContextMenu = useContextMenu.useContextMenu;
128
+ exports.useControlledValue = useControlledValue.useControlledValue;
129
+ exports.useDebounce = useDebounce.useDebounce;
130
+ exports.useEffectDebugger = useEffectDebugger.useEffectDebugger;
131
+ exports.useLayoutEffectDebugger = useEffectDebugger.useLayoutEffectDebugger;
132
+ exports.useMemoDebugger = useEffectDebugger.useMemoDebugger;
133
+ exports.useIsDark = useIsDark.useIsDark;
134
+ exports.useIsRtl = useIsRtl.useIsRtl;
135
+ exports.useNavigator = useNavigator.useNavigator;
136
+ exports.useNotificationService = useNotificationService.useNotificationService;
137
+ exports.useOverlayService = useOverlayService.useOverlayService;
138
+ exports.usePropState = usePropState.usePropState;
139
+ exports.usePropWatcher = usePropState.usePropWatcher;
140
+ exports.usePropToggle = usePropToggle.usePropToggle;
141
+ exports.useResize = useResize.useResize;
142
+ exports.useResizeObserver = useResizeObserver.useResizeObserver;
143
+ exports.useLocalStorage = useStorage.useLocalStorage;
144
+ exports.useSessionStorage = useStorage.useSessionStorage;
145
+ exports.AreaToggle = AreaToggle.AreaToggle;
146
+ exports.Aside = Aside.Aside;
147
+ exports.ErrorBoundary = ErrorBoundary.ErrorBoundary;
148
+ exports.Content = Content.Content;
149
+ exports.Footer = HeadFoot.Footer;
150
+ exports.Header = HeadFoot.Header;
151
+ exports.Layout = Layout.Layout;
152
+ exports.Col = Responsive.Col;
153
+ exports.Container = Responsive.Container;
154
+ exports.Row = Responsive.Row;
155
+ exports.ThemeProvider = ThemeProvider.ThemeProvider;
156
+ exports.Viewport = Viewport.Viewport;
157
+ exports.Abbr = Abbr.Abbr;
158
+ exports.Anchor = Anchor.Anchor;
159
+ exports.Copy = Copy.Copy;
160
+ exports.Kbd = Kbd.Kbd;
161
+ exports.Mark = Mark.Mark;
162
+ exports.Text = Text.Text;
163
+ exports.Title = Title.Title;
80
164
  exports.ActionLabel = ActionLabel.ActionLabel;
81
- exports.AnimationBars = Animations.AnimationBars;
82
- exports.AnimationIndicator = Animations.AnimationIndicator;
83
- exports.AnimationSpinner = Animations.AnimationSpinner;
84
- exports.Loading = Animations.Loading;
85
- exports.Skeleton = Animations.Skeleton;
165
+ exports.AnimationIndicator = Indicator.AnimationIndicator;
166
+ exports.AnimationLoader = Loader.AnimationLoader;
167
+ exports.LoadingBars = LoadingBars.LoadingBars;
168
+ exports.LoadingLine = LoadingLine.LoadingLine;
169
+ exports.LoadingSpinner = LoadingSpinner.LoadingSpinner;
170
+ exports.Skeleton = Skeleton.Skeleton;
86
171
  exports.Avatar = Avatar.Avatar;
87
172
  exports.AvatarGroup = AvatarGroup.AvatarGroup;
88
173
  exports.Badge = Badge.Badge;
89
- exports.getBadgeProps = Badge.getBadgeProps;
90
- exports.Breadcrumbs = Breadcrumbs.Breadcrumbs;
91
174
  exports.Button = Button.Button;
92
175
  exports.ButtonGroup = ButtonGroup.ButtonGroup;
93
176
  exports.ConfirmButton = ConfirmButton.ConfirmButton;
@@ -95,13 +178,17 @@ exports.ToggleButtonGroup = ToggleButtonGroup.ToggleButtonGroup;
95
178
  exports.Callout = Callout.Callout;
96
179
  exports.Card = Card.Card;
97
180
  exports.CardCover = CardCover.CardCover;
181
+ exports.FlipContent = FlipContent.FlipContent;
98
182
  exports.Chip = Chip.Chip;
99
183
  exports.Collapsable = Collapsable.Collapsable;
100
184
  exports.Divider = Divider.Divider;
101
185
  exports.Dropdown = Dropdown.Dropdown;
102
186
  exports.DropdownDismiss = Dropdown.DropdownDismiss;
103
187
  exports.DropdownTool = DropdownTool.DropdownTool;
188
+ exports.StyleEffect = StyleEffect.StyleEffect;
104
189
  exports.EmptyContent = EmptyContent.EmptyContent;
190
+ exports.Flyout = Flyout.Flyout;
191
+ exports.HotKey = HotKey.HotKey;
105
192
  exports.Icon = Icon.Icon;
106
193
  exports.Image = Media.Image;
107
194
  exports.Video = Media.Video;
@@ -109,56 +196,17 @@ exports.ContextMenu = ContextMenu.ContextMenu;
109
196
  exports.Menu = Menu.Menu;
110
197
  exports.MenuItem = MenuItem.MenuItem;
111
198
  exports.Meter = Meter.Meter;
199
+ exports.Modal = Modal.Modal;
112
200
  exports.Navigator = Navigator.Navigator;
113
201
  exports.Panel = Panel.Panel;
114
202
  exports.PanelGroup = PanelGroup.PanelGroup;
115
203
  exports.PanelStack = PanelStack.PanelStack;
204
+ exports.Pillbox = Pillbox.Pillbox;
116
205
  exports.ProgressBar = ProgressBar.ProgressBar;
117
206
  exports.ProgressCircle = ProgressCircle.ProgressCircle;
118
207
  exports.Tab = Tab.Tab;
119
208
  exports.TabPanel = TabPanel.TabPanel;
120
- exports.Aside = Aside.Aside;
121
- exports.ErrorBoundary = ErrorBoundary.ErrorBoundary;
122
- exports.Content = Content.Content;
123
- exports.Footer = HeadFoot.Footer;
124
- exports.Header = HeadFoot.Header;
125
- exports.Page = Page.Page;
126
- exports.Col = Responsive.Col;
127
- exports.Container = Responsive.Container;
128
- exports.Row = Responsive.Row;
129
- exports.Section = Section.Section;
130
- exports.ThemeProvider = ThemeProvider.ThemeProvider;
131
- exports.Viewport = Viewport.Viewport;
132
- exports.addTranslationBundle = index.addTranslationBundle;
133
- Object.defineProperty(exports, "CoreIcons", {
134
- enumerable: true,
135
- get: function () { return icons.CoreIcons; }
136
- });
137
- exports.Title = Title.Title;
138
- exports.Flyout = Flyout.Flyout;
139
- exports.Modal = Modal.Modal;
209
+ exports.Titlebar = Titlebar.Titlebar;
140
210
  exports.Tooltip = Tooltip.Tooltip;
141
- exports.Abbr = Abbr.Abbr;
142
- exports.Copy = Copy.Copy;
143
- exports.Link = Link.Link;
144
- exports.Mark = Mark.Mark;
145
- exports.Text = Text.Text;
146
- exports.useClientService = useClientService.useClientService;
147
- exports.useDebounce = useDebounce.useDebounce;
148
- exports.useEffectDebugger = useEffectDebugger.useEffectDebugger;
149
- exports.useLayoutEffectDebugger = useEffectDebugger.useLayoutEffectDebugger;
150
- exports.useMemoDebugger = useEffectDebugger.useMemoDebugger;
151
- exports.useIsDark = useIsDark.useIsDark;
152
- exports.useIsRtl = useIsRtl.useIsRtl;
153
- exports.useNavigator = useNavigator.useNavigator;
154
- exports.useOverlayService = useOverlayService.useOverlayService;
155
- exports.useResize = useResize.useResize;
156
- exports.useResizeObserver = useResizeObserver.useResizeObserver;
157
- exports.useLocalStorage = useStorage.useLocalStorage;
158
- exports.useSessionStorage = useStorage.useSessionStorage;
159
- exports.HotKey = HotKey.HotKey;
160
- exports.HotKeyLabel = HotKeyLabel.HotKeyLabel;
161
- exports.ApplicationProvider = Global.ApplicationProvider;
162
- exports.useApplicationContext = Global.useApplicationContext;
163
- exports.useGlobals = Global.useGlobals;
164
- exports.useNotificationService = Global.useNotificationService;
211
+ exports.CORE_PACKAGE = CORE_PACKAGE;
212
+ exports.CORE_VERSION = CORE_VERSION;
@@ -3,43 +3,62 @@
3
3
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
4
4
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
5
  var utilities = require('@react-fabric/utilities');
6
- var classNames = require('classnames');
7
6
  var react = require('react');
7
+ var Tooltip = require('../components/tooltip/Tooltip.js');
8
8
  var useEffectDebugger = require('../hooks/useEffectDebugger.js');
9
- var Tooltip = require('../overlays/tooltip/Tooltip.js');
10
- var getColor = require('../utils/getColor.js');
11
- var Typography_module = require('./Typography.module.css');
12
9
  var jsxRuntime = require('react/jsx-runtime');
10
+ var getColor = require('../utils/getColor.js');
11
+ var getTooltipProps = require('../utils/getTooltipProps.js');
13
12
 
14
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; }
15
- 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; }
16
- var AbbrText = function AbbrText(_ref) {
14
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).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 AbbrText(_ref) {
17
16
  var color = _ref.color,
18
17
  children = _ref.children,
19
18
  tooltip = _ref.tooltip,
20
19
  content = _ref.content;
21
- var TooltipWrapper = react.useMemo(function () {
22
- return tooltip ? Tooltip.Tooltip : react.Fragment;
23
- }, [tooltip]);
20
+ var TooltipWrapper = tooltip ? Tooltip.Tooltip : react.Fragment;
24
21
  var tooltipProps = react.useMemo(function () {
25
- return _objectSpread(_objectSpread({}, Tooltip.getTooltipProps(tooltip)), {}, {
22
+ return tooltip ? _objectSpread(_objectSpread({}, getTooltipProps.getTooltipProps(tooltip)), {}, {
26
23
  copyContent: content
27
- });
24
+ }) : {};
28
25
  }, [tooltip, content]);
29
26
  return /*#__PURE__*/jsxRuntime.jsx(TooltipWrapper, _objectSpread(_objectSpread({}, tooltipProps), {}, {
30
27
  children: /*#__PURE__*/jsxRuntime.jsx("abbr", {
31
- className: classNames(Typography_module.abbr, "whitespace-nowrap", color && getColor.getColorClass(color)),
28
+ className: utilities.cn("fabric-abbr whitespace-nowrap"),
32
29
  style: color ? {
33
30
  "--abbr-color": getColor.getColor(color)
34
31
  } : undefined,
35
32
  children: children
36
33
  })
37
34
  }));
38
- };
35
+ }
39
36
  /**
40
- * Typography abbr component to wrap text parts in `abbr` with tooltip
37
+ * A component that renders abbreviated text with tooltips for additional information.
38
+ * It allows you to define a list of abbreviations, each with a tooltip and optional color.
39
+ * The component will tokenize the children text and replace matching parts with the abbreviated version.
40
+ * It supports a copy action that can either copy the text or the tooltip content.
41
+ * This component is useful for displaying technical terms or acronyms in a user-friendly way,
42
+ * while providing additional context through tooltips.
43
+ *
44
+ * @example
45
+ * ```jsx
46
+ * <Abbr
47
+ * abbr={[
48
+ * ["HTML", "HyperText Markup Language", "primary"],
49
+ * ["CSS", "Cascading Style Sheets", "secondary"],
50
+ * ["JS", "JavaScript", "success"],
51
+ * ]}
52
+ * className="text-sm"
53
+ * copyContent="tooltip"
54
+ * >
55
+ * Learn more about HTML, CSS, and JS.
56
+ * </Abbr>
57
+ * // Renders the text with abbreviations for HTML, CSS, and JS,
58
+ * // each with a tooltip showing the full form and colored according to the specified color.
59
+ * ```
41
60
  */
42
- var Abbr = function Abbr(_ref2) {
61
+ function Abbr(_ref2) {
43
62
  var children = _ref2.children,
44
63
  abbr = _ref2.abbr,
45
64
  className = _ref2.className,
@@ -90,9 +109,13 @@ var Abbr = function Abbr(_ref2) {
90
109
  tooltip = _ref9$tooltip === void 0 ? "" : _ref9$tooltip,
91
110
  _ref9$color = _ref9.color,
92
111
  color = _ref9$color === void 0 ? "" : _ref9$color;
93
- return /*#__PURE__*/jsxRuntime.jsxs(react.Fragment, {
94
- children: [start, text ? abbrRender(text, tooltip, color) : null]
95
- }, i);
112
+ return (
113
+ /*#__PURE__*/
114
+ // eslint-disable-next-line @eslint-react/no-array-index-key
115
+ jsxRuntime.jsxs(react.Fragment, {
116
+ children: [start, text ? abbrRender(text, tooltip, color) : null]
117
+ }, "".concat(text, "-").concat(i))
118
+ );
96
119
  })
97
120
  });
98
121
  }
@@ -102,9 +125,9 @@ var Abbr = function Abbr(_ref2) {
102
125
 
103
126
  /** ***************** component *******************/
104
127
  return /*#__PURE__*/jsxRuntime.jsx("span", {
105
- className: className,
128
+ className: utilities.cn(className, "mixed-lang whitespace-pre-wrap"),
106
129
  children: inner
107
130
  });
108
- };
131
+ }
109
132
 
110
133
  exports.Abbr = Abbr;
@@ -0,0 +1,39 @@
1
+ 'use strict';
2
+
3
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
5
+ var utilities = require('@react-fabric/utilities');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+
8
+ var _excluded = ["ref", "as", "children", "className"];
9
+ 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; }
10
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).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; }
11
+ /**
12
+ * A versatile link component that supports polymorphic rendering, allowing it to be used as an anchor (`<a>`), button, or any other HTML element.
13
+ * This component is useful for creating links that need to be styled consistently across an application, while also providing flexibility in terms of the HTML element used.
14
+ *
15
+ * @example
16
+ * ```jsx
17
+ * <Anchor href="https://example.com">
18
+ * Click here
19
+ * </Anchor>
20
+ * // Renders a link with default styling.
21
+ * ```
22
+ */
23
+ function Anchor(_ref) {
24
+ var ref = _ref.ref,
25
+ as = _ref.as,
26
+ children = _ref.children,
27
+ className = _ref.className,
28
+ props = _objectWithoutProperties(_ref, _excluded);
29
+ var E = as !== null && as !== void 0 ? as : "a";
30
+ return /*#__PURE__*/jsxRuntime.jsx(E, _objectSpread(_objectSpread({
31
+ className: utilities.cn("link", className),
32
+ ref: ref,
33
+ "data-clickable": true
34
+ }, props), {}, {
35
+ children: children
36
+ }));
37
+ }
38
+
39
+ exports.Anchor = Anchor;