@react-fabric/core 1.0.0-beta.4 → 1.0.0-beta.41

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 (347) 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/{src/components/animations/Animations.module.css → css/components/_animations.css} +9 -9
  4. package/{src/components/avatar/Avatar.module.css → css/components/_avatar.css} +11 -11
  5. package/{src/components/badge/Badge.module.css → css/components/_badge.css} +19 -17
  6. package/{src/components/breadcrumbs/Breadcrumbs.module.css → css/components/_breadcrumbs.css} +49 -44
  7. package/{src/components/button/Button.module.css → css/components/_button.css} +68 -78
  8. package/{src/components/card/Card.module.css → css/components/_card.css} +32 -28
  9. package/{src/components/chip/Chip.module.css → css/components/_chip.css} +15 -11
  10. package/{src/components/collapsable/Collapsable.module.css → css/components/_collapsable.css} +3 -3
  11. package/css/components/_divider.css +32 -0
  12. package/{src/components/dropdown/Dropdown.module.css → css/components/_dropdown.css} +2 -2
  13. package/{src/overlays/flyout/Flyout.module.css → css/components/_flyout.css} +6 -6
  14. package/{src/components/icon/Icon.module.css → css/components/_icon.css} +8 -5
  15. package/{src/components/media/Media.module.css → css/components/_media.css} +17 -17
  16. package/{src/components/menu/Menu.module.css → css/components/_menu.css} +15 -16
  17. package/{src/overlays/message/Message.module.css → css/components/_message.css} +2 -2
  18. package/{src/components/meter/Meter.module.css → css/components/_meter.css} +10 -10
  19. package/{src/overlays/modal/Modal.module.css → css/components/_modal.css} +6 -6
  20. package/{src/components/panel/Panel.module.css → css/components/_panel.css} +17 -17
  21. package/{src/components/progress/Progress.module.css → css/components/_progress.css} +7 -10
  22. package/{src/components/tabpanel/TabPanel.module.css → css/components/_tabPanel.css} +73 -84
  23. package/{src/overlays/toast/Toast.module.css → css/components/_toast.css} +2 -2
  24. package/css/components/_tooltip.css +29 -0
  25. package/{src/core/content/Content.module.css → css/components/index.css} +25 -18
  26. package/{src/core/aside/Aside.module.css → css/core/_aside.css} +42 -42
  27. package/{src/core/section/Section.module.css → css/core/_content.css} +5 -3
  28. package/{src/core/boundary/ErrorBoundary.module.css → css/core/_errorboundary.css} +9 -9
  29. package/{src/core/headfoot/HeadFoot.module.css → css/core/_headfoot.css} +4 -10
  30. package/{src/core/page/Page.module.css → css/core/_page.css} +10 -14
  31. package/{src/core/responsive/Responsive.module.css → css/core/_responsive.css} +10 -10
  32. package/css/core/_section.css +28 -0
  33. package/{src/core/theme/Theme.module.css → css/core/_theme.css} +3 -3
  34. package/{src/typography/Typography.module.css → css/core/_typography.css} +14 -12
  35. package/{src/core/viewport/Viewport.module.css → css/core/_viewport.css} +7 -3
  36. package/css/core/index.css +33 -0
  37. package/css/reset/_gradients.css +8 -8
  38. package/css/reset/_reset.css +41 -223
  39. package/css/reset/_text.css +14 -29
  40. package/css/reset/_theme.css +315 -32
  41. package/css/reset/index.css +4 -4
  42. package/css/styles.css +7 -6
  43. package/css/theme/_colors.css +320 -0
  44. package/css/theme/_utilities.css +530 -0
  45. package/css/theme/index.css +44 -0
  46. package/dist/cjs/components/actionLabel/ActionLabel.js +3 -3
  47. package/dist/cjs/components/animations/Animations.js +29 -18
  48. package/dist/cjs/components/avatar/Avatar.js +10 -13
  49. package/dist/cjs/components/avatar/AvatarGroup.js +3 -3
  50. package/dist/cjs/components/badge/Badge.js +5 -5
  51. package/dist/cjs/components/breadcrumbs/Breadcrumbs.js +10 -8
  52. package/dist/cjs/components/button/Button.js +18 -14
  53. package/dist/cjs/components/button/ButtonGroup.js +4 -3
  54. package/dist/cjs/components/button/ConfirmButton.js +7 -2
  55. package/dist/cjs/components/button/ToggleButtonGroup.js +3 -3
  56. package/dist/cjs/components/callout/Callout.js +15 -4
  57. package/dist/cjs/components/card/Card.js +8 -7
  58. package/dist/cjs/components/card/CardCover.js +10 -5
  59. package/dist/cjs/components/chip/Chip.js +11 -7
  60. package/dist/cjs/components/collapsable/Collapsable.js +5 -5
  61. package/dist/cjs/components/divider/Divider.js +10 -7
  62. package/dist/cjs/components/dropdown/Dropdown.js +5 -4
  63. package/dist/cjs/components/dropdown/DropdownTool.js +4 -3
  64. package/dist/cjs/components/empty/EmptyContent.js +6 -3
  65. package/dist/cjs/components/icon/Icon.js +15 -14
  66. package/dist/cjs/components/media/Media.js +116 -75
  67. package/dist/cjs/components/menu/ContextMenu.js +30 -10
  68. package/dist/cjs/components/menu/Menu.js +39 -20
  69. package/dist/cjs/components/menu/MenuItem.js +30 -16
  70. package/dist/cjs/components/meter/Meter.js +2 -3
  71. package/dist/cjs/components/navigator/Navigator.js +16 -9
  72. package/dist/cjs/components/panel/Panel.js +10 -9
  73. package/dist/cjs/components/panel/PanelGroup.js +1 -2
  74. package/dist/cjs/components/progress/ProgressBar.js +6 -5
  75. package/dist/cjs/components/progress/ProgressCircle.js +6 -4
  76. package/dist/cjs/components/tabpanel/Tab.js +58 -38
  77. package/dist/cjs/components/tabpanel/TabPanel.js +20 -16
  78. package/dist/cjs/core/aside/Aside.js +11 -10
  79. package/dist/cjs/core/boundary/ErrorBoundary.js +6 -7
  80. package/dist/cjs/core/boundary/ErrorIcon.js +1 -2
  81. package/dist/cjs/core/content/Content.js +9 -7
  82. package/dist/cjs/core/headfoot/HeadFoot.js +2 -20
  83. package/dist/cjs/core/page/Page.js +3 -3
  84. package/dist/cjs/core/responsive/Responsive.js +3 -4
  85. package/dist/cjs/core/section/Section.js +1 -2
  86. package/dist/cjs/core/theme/ThemeProvider.js +7 -8
  87. package/dist/cjs/core/viewport/Viewport.js +4 -2
  88. package/dist/cjs/hooks/useNavigator.js +6 -4
  89. package/dist/cjs/hotkeys/HotKeyLabel.js +1 -1
  90. package/dist/cjs/hotkeys/HotKeyWrapper.js +3 -1
  91. package/dist/cjs/index.js +6 -2
  92. package/dist/cjs/overlays/alert/Alert.js +19 -13
  93. package/dist/cjs/overlays/flyout/Flyout.js +49 -60
  94. package/dist/cjs/overlays/message/Message.js +6 -3
  95. package/dist/cjs/overlays/modal/Modal.js +11 -11
  96. package/dist/cjs/overlays/toast/Toast.js +17 -9
  97. package/dist/cjs/overlays/tooltip/Tooltip.js +20 -8
  98. package/dist/cjs/types/icons.js +4 -0
  99. package/dist/cjs/typography/Abbr.js +2 -3
  100. package/dist/cjs/typography/{Link.js → Anchor.js} +5 -4
  101. package/dist/cjs/typography/Mark.js +2 -3
  102. package/dist/cjs/typography/Text.js +3 -4
  103. package/dist/cjs/typography/Title.js +3 -3
  104. package/dist/cjs/utils/cloneElement.js +44 -0
  105. package/dist/cjs/utils/getColor.js +1 -18
  106. package/dist/esm/components/actionLabel/ActionLabel.js +3 -3
  107. package/dist/esm/components/animations/Animations.js +30 -19
  108. package/dist/esm/components/avatar/Avatar.js +11 -14
  109. package/dist/esm/components/avatar/AvatarGroup.js +3 -3
  110. package/dist/esm/components/badge/Badge.js +5 -5
  111. package/dist/esm/components/breadcrumbs/Breadcrumbs.js +10 -8
  112. package/dist/esm/components/button/Button.js +18 -14
  113. package/dist/esm/components/button/ButtonGroup.js +5 -4
  114. package/dist/esm/components/button/ConfirmButton.js +7 -2
  115. package/dist/esm/components/button/ToggleButtonGroup.js +4 -4
  116. package/dist/esm/components/callout/Callout.js +15 -4
  117. package/dist/esm/components/card/Card.js +8 -7
  118. package/dist/esm/components/card/CardCover.js +10 -5
  119. package/dist/esm/components/chip/Chip.js +12 -8
  120. package/dist/esm/components/collapsable/Collapsable.js +5 -5
  121. package/dist/esm/components/divider/Divider.js +11 -8
  122. package/dist/esm/components/dropdown/Dropdown.js +5 -4
  123. package/dist/esm/components/dropdown/DropdownTool.js +4 -3
  124. package/dist/esm/components/empty/EmptyContent.js +6 -3
  125. package/dist/esm/components/icon/Icon.js +15 -14
  126. package/dist/esm/components/media/Media.js +117 -76
  127. package/dist/esm/components/menu/ContextMenu.js +32 -12
  128. package/dist/esm/components/menu/Menu.js +41 -22
  129. package/dist/esm/components/menu/MenuItem.js +24 -10
  130. package/dist/esm/components/meter/Meter.js +2 -3
  131. package/dist/esm/components/navigator/Navigator.js +16 -9
  132. package/dist/esm/components/panel/Panel.js +10 -9
  133. package/dist/esm/components/panel/PanelGroup.js +1 -2
  134. package/dist/esm/components/progress/ProgressBar.js +6 -5
  135. package/dist/esm/components/progress/ProgressCircle.js +6 -4
  136. package/dist/esm/components/tabpanel/Tab.js +59 -39
  137. package/dist/esm/components/tabpanel/TabPanel.js +20 -16
  138. package/dist/esm/core/aside/Aside.js +11 -10
  139. package/dist/esm/core/boundary/ErrorBoundary.js +6 -7
  140. package/dist/esm/core/boundary/ErrorIcon.js +1 -2
  141. package/dist/esm/core/content/Content.js +9 -7
  142. package/dist/esm/core/headfoot/HeadFoot.js +2 -20
  143. package/dist/esm/core/page/Page.js +3 -3
  144. package/dist/esm/core/responsive/Responsive.js +3 -4
  145. package/dist/esm/core/section/Section.js +1 -2
  146. package/dist/esm/core/theme/ThemeProvider.js +7 -8
  147. package/dist/esm/core/viewport/Viewport.js +4 -2
  148. package/dist/esm/hooks/useNavigator.js +7 -5
  149. package/dist/esm/hotkeys/HotKeyLabel.js +1 -1
  150. package/dist/esm/hotkeys/HotKeyWrapper.js +3 -1
  151. package/dist/esm/index.js +3 -1
  152. package/dist/esm/overlays/alert/Alert.js +20 -14
  153. package/dist/esm/overlays/flyout/Flyout.js +52 -63
  154. package/dist/esm/overlays/message/Message.js +7 -4
  155. package/dist/esm/overlays/modal/Modal.js +12 -12
  156. package/dist/esm/overlays/toast/Toast.js +18 -10
  157. package/dist/esm/overlays/tooltip/Tooltip.js +20 -8
  158. package/dist/esm/types/icons.js +4 -0
  159. package/dist/esm/typography/Abbr.js +2 -3
  160. package/dist/esm/typography/{Link.js → Anchor.js} +6 -5
  161. package/dist/esm/typography/Mark.js +2 -3
  162. package/dist/esm/typography/Text.js +4 -5
  163. package/dist/esm/typography/Title.js +4 -4
  164. package/dist/esm/utils/cloneElement.js +44 -0
  165. package/dist/esm/utils/getColor.js +2 -16
  166. package/dist/types/components/actionLabel/ActionLabel.d.ts +2 -2
  167. package/dist/types/components/animations/Animations.d.ts +5 -5
  168. package/dist/types/components/avatar/Avatar.d.ts +3 -3
  169. package/dist/types/components/badge/Badge.d.ts +5 -1
  170. package/dist/types/components/breadcrumbs/Breadcrumbs.d.ts +2 -2
  171. package/dist/types/components/button/Button.d.ts +7 -5
  172. package/dist/types/components/button/ButtonGroup.d.ts +2 -2
  173. package/dist/types/components/button/ConfirmButton.d.ts +6 -1
  174. package/dist/types/components/callout/Callout.d.ts +2 -2
  175. package/dist/types/components/card/Card.d.ts +3 -3
  176. package/dist/types/components/chip/Chip.d.ts +3 -3
  177. package/dist/types/components/collapsable/Collapsable.d.ts +5 -1
  178. package/dist/types/components/divider/Divider.d.ts +7 -3
  179. package/dist/types/components/dropdown/DropdownTool.d.ts +2 -1
  180. package/dist/types/components/empty/EmptyContent.d.ts +6 -2
  181. package/dist/types/components/icon/Icon.d.ts +3 -3
  182. package/dist/types/components/media/Media.d.ts +2 -2
  183. package/dist/types/components/menu/ContextMenu.d.ts +2 -1
  184. package/dist/types/components/menu/MenuItem.d.ts +1 -1
  185. package/dist/types/components/menu/types.d.ts +2 -2
  186. package/dist/types/components/navigator/Navigator.d.ts +4 -4
  187. package/dist/types/components/progress/ProgressBar.d.ts +2 -2
  188. package/dist/types/components/progress/ProgressCircle.d.ts +2 -2
  189. package/dist/types/components/tabpanel/Tab.d.ts +5 -5
  190. package/dist/types/components/tabpanel/TabPanel.d.ts +10 -1
  191. package/dist/types/core/content/Content.d.ts +3 -2
  192. package/dist/types/core/headfoot/HeadFoot.d.ts +1 -9
  193. package/dist/types/core/responsive/Responsive.d.ts +1 -1
  194. package/dist/types/core/theme/ThemeProvider.d.ts +4 -4
  195. package/dist/types/hooks/useOverlayService.d.ts +3 -5
  196. package/dist/types/index.d.ts +3 -0
  197. package/dist/types/overlays/alert/Alert.d.ts +2 -2
  198. package/dist/types/overlays/flyout/Flyout.d.ts +3 -2
  199. package/dist/types/overlays/message/Message.d.ts +2 -2
  200. package/dist/types/overlays/modal/Modal.d.ts +4 -3
  201. package/dist/types/overlays/toast/Toast.d.ts +2 -2
  202. package/dist/types/overlays/tooltip/Tooltip.d.ts +1 -1
  203. package/dist/types/types/icons.d.ts +4 -0
  204. package/dist/types/types/index.d.ts +18 -6
  205. package/dist/types/typography/Abbr.d.ts +6 -2
  206. package/dist/types/typography/Anchor.d.ts +25 -0
  207. package/dist/types/typography/Mark.d.ts +2 -2
  208. package/dist/types/typography/index.d.ts +1 -1
  209. package/dist/types/utils/cloneElement.d.ts +2 -0
  210. package/dist/types/utils/getColor.d.ts +1 -4
  211. package/dist/types/utils/index.d.ts +1 -0
  212. package/package.json +7 -9
  213. package/src/components/actionLabel/ActionLabel.tsx +15 -6
  214. package/src/components/animations/Animations.tsx +29 -23
  215. package/src/components/avatar/Avatar.tsx +74 -88
  216. package/src/components/avatar/AvatarGroup.tsx +4 -4
  217. package/src/components/badge/Badge.tsx +11 -7
  218. package/src/components/breadcrumbs/Breadcrumbs.tsx +13 -9
  219. package/src/components/button/Button.tsx +27 -22
  220. package/src/components/button/ButtonGroup.tsx +7 -7
  221. package/src/components/button/ConfirmButton.tsx +15 -5
  222. package/src/components/button/ToggleButtonGroup.tsx +5 -5
  223. package/src/components/callout/Callout.tsx +26 -11
  224. package/src/components/card/Card.tsx +10 -7
  225. package/src/components/card/CardCover.tsx +11 -6
  226. package/src/components/chip/Chip.tsx +17 -13
  227. package/src/components/collapsable/Collapsable.tsx +9 -4
  228. package/src/components/divider/Divider.tsx +15 -10
  229. package/src/components/dropdown/Dropdown.tsx +5 -5
  230. package/src/components/dropdown/DropdownTool.tsx +5 -3
  231. package/src/components/empty/EmptyContent.tsx +17 -2
  232. package/src/components/icon/Icon.tsx +55 -67
  233. package/src/components/media/Media.tsx +141 -106
  234. package/src/components/menu/ContextMenu.tsx +36 -11
  235. package/src/components/menu/Menu.tsx +51 -30
  236. package/src/components/menu/MenuItem.tsx +19 -9
  237. package/src/components/menu/types.ts +2 -2
  238. package/src/components/meter/Meter.tsx +2 -3
  239. package/src/components/navigator/Navigator.tsx +19 -5
  240. package/src/components/panel/Panel.tsx +10 -9
  241. package/src/components/panel/PanelGroup.tsx +1 -2
  242. package/src/components/progress/ProgressBar.tsx +8 -9
  243. package/src/components/progress/ProgressCircle.tsx +6 -9
  244. package/src/components/tabpanel/Tab.tsx +81 -64
  245. package/src/components/tabpanel/TabPanel.tsx +34 -12
  246. package/src/core/aside/Aside.tsx +11 -10
  247. package/src/core/boundary/ErrorBoundary.tsx +8 -7
  248. package/src/core/boundary/ErrorIcon.tsx +1 -2
  249. package/src/core/content/Content.tsx +17 -12
  250. package/src/core/headfoot/HeadFoot.tsx +2 -35
  251. package/src/core/page/Page.tsx +3 -3
  252. package/src/core/responsive/Responsive.tsx +8 -7
  253. package/src/core/section/Section.tsx +1 -2
  254. package/src/core/theme/ThemeProvider.tsx +11 -12
  255. package/src/core/viewport/Viewport.tsx +1 -2
  256. package/src/hooks/useNavigator.tsx +10 -5
  257. package/src/hooks/useOverlayService.tsx +12 -6
  258. package/src/hotkeys/HotKeyLabel.tsx +1 -1
  259. package/src/hotkeys/HotKeyWrapper.tsx +3 -1
  260. package/src/index.ts +4 -0
  261. package/src/overlays/alert/Alert.tsx +25 -31
  262. package/src/overlays/flyout/Flyout.tsx +71 -84
  263. package/src/overlays/message/Message.tsx +10 -7
  264. package/src/overlays/modal/Modal.tsx +20 -15
  265. package/src/overlays/toast/Toast.tsx +18 -27
  266. package/src/overlays/tooltip/Tooltip.tsx +30 -9
  267. package/src/types/icons.ts +9 -0
  268. package/src/types/index.ts +251 -27
  269. package/src/typography/Abbr.tsx +15 -9
  270. package/src/typography/{Link.tsx → Anchor.tsx} +8 -13
  271. package/src/typography/Mark.tsx +4 -9
  272. package/src/typography/Text.tsx +4 -12
  273. package/src/typography/Title.tsx +2 -6
  274. package/src/typography/index.ts +1 -1
  275. package/src/utils/cloneElement.ts +44 -0
  276. package/src/utils/getColor.ts +1 -17
  277. package/src/utils/index.ts +1 -0
  278. package/css/index.js +0 -250
  279. package/css/tailwind/colors.ts +0 -158
  280. package/dist/cjs/components/actionLabel/ActionLabel.module.css +0 -1
  281. package/dist/cjs/components/animations/Animations.module.css +0 -1
  282. package/dist/cjs/components/avatar/Avatar.module.css +0 -1
  283. package/dist/cjs/components/badge/Badge.module.css +0 -1
  284. package/dist/cjs/components/breadcrumbs/Breadcrumbs.module.css +0 -1
  285. package/dist/cjs/components/button/Button.module.css +0 -1
  286. package/dist/cjs/components/card/Card.module.css +0 -1
  287. package/dist/cjs/components/chip/Chip.module.css +0 -1
  288. package/dist/cjs/components/collapsable/Collapsable.module.css +0 -1
  289. package/dist/cjs/components/dropdown/Dropdown.module.css +0 -1
  290. package/dist/cjs/components/icon/Icon.module.css +0 -1
  291. package/dist/cjs/components/media/Media.module.css +0 -1
  292. package/dist/cjs/components/menu/Menu.module.css +0 -1
  293. package/dist/cjs/components/meter/Meter.module.css +0 -1
  294. package/dist/cjs/components/panel/Panel.module.css +0 -1
  295. package/dist/cjs/components/progress/Progress.module.css +0 -1
  296. package/dist/cjs/components/tabpanel/TabPanel.module.css +0 -1
  297. package/dist/cjs/core/aside/Aside.module.css +0 -1
  298. package/dist/cjs/core/boundary/ErrorBoundary.module.css +0 -1
  299. package/dist/cjs/core/content/Content.module.css +0 -1
  300. package/dist/cjs/core/headfoot/HeadFoot.module.css +0 -1
  301. package/dist/cjs/core/page/Page.module.css +0 -1
  302. package/dist/cjs/core/responsive/Responsive.module.css +0 -1
  303. package/dist/cjs/core/section/Section.module.css +0 -1
  304. package/dist/cjs/core/theme/Theme.module.css +0 -1
  305. package/dist/cjs/core/viewport/Viewport.module.css +0 -1
  306. package/dist/cjs/overlays/alert/Alert.module.css +0 -1
  307. package/dist/cjs/overlays/flyout/Flyout.module.css +0 -1
  308. package/dist/cjs/overlays/message/Message.module.css +0 -1
  309. package/dist/cjs/overlays/modal/Modal.module.css +0 -1
  310. package/dist/cjs/overlays/toast/Toast.module.css +0 -1
  311. package/dist/cjs/overlays/tooltip/Tooltip.module.css +0 -1
  312. package/dist/cjs/typography/Typography.module.css +0 -1
  313. package/dist/esm/components/actionLabel/ActionLabel.module.css +0 -1
  314. package/dist/esm/components/animations/Animations.module.css +0 -1
  315. package/dist/esm/components/avatar/Avatar.module.css +0 -1
  316. package/dist/esm/components/badge/Badge.module.css +0 -1
  317. package/dist/esm/components/breadcrumbs/Breadcrumbs.module.css +0 -1
  318. package/dist/esm/components/button/Button.module.css +0 -1
  319. package/dist/esm/components/card/Card.module.css +0 -1
  320. package/dist/esm/components/chip/Chip.module.css +0 -1
  321. package/dist/esm/components/collapsable/Collapsable.module.css +0 -1
  322. package/dist/esm/components/dropdown/Dropdown.module.css +0 -1
  323. package/dist/esm/components/icon/Icon.module.css +0 -1
  324. package/dist/esm/components/media/Media.module.css +0 -1
  325. package/dist/esm/components/menu/Menu.module.css +0 -1
  326. package/dist/esm/components/meter/Meter.module.css +0 -1
  327. package/dist/esm/components/panel/Panel.module.css +0 -1
  328. package/dist/esm/components/progress/Progress.module.css +0 -1
  329. package/dist/esm/components/tabpanel/TabPanel.module.css +0 -1
  330. package/dist/esm/core/aside/Aside.module.css +0 -1
  331. package/dist/esm/core/boundary/ErrorBoundary.module.css +0 -1
  332. package/dist/esm/core/content/Content.module.css +0 -1
  333. package/dist/esm/core/headfoot/HeadFoot.module.css +0 -1
  334. package/dist/esm/core/page/Page.module.css +0 -1
  335. package/dist/esm/core/responsive/Responsive.module.css +0 -1
  336. package/dist/esm/core/section/Section.module.css +0 -1
  337. package/dist/esm/core/theme/Theme.module.css +0 -1
  338. package/dist/esm/core/viewport/Viewport.module.css +0 -1
  339. package/dist/esm/overlays/alert/Alert.module.css +0 -1
  340. package/dist/esm/overlays/flyout/Flyout.module.css +0 -1
  341. package/dist/esm/overlays/message/Message.module.css +0 -1
  342. package/dist/esm/overlays/modal/Modal.module.css +0 -1
  343. package/dist/esm/overlays/toast/Toast.module.css +0 -1
  344. package/dist/esm/overlays/tooltip/Tooltip.module.css +0 -1
  345. package/dist/esm/typography/Typography.module.css +0 -1
  346. package/dist/types/typography/Link.d.ts +0 -25
  347. package/src/overlays/tooltip/Tooltip.module.css +0 -53
@@ -23,7 +23,7 @@
23
23
 
24
24
  import { EMPTY_ARRAY, isArray } from "@react-fabric/utilities";
25
25
  import classNames from "classnames";
26
- import { Children, cloneElement, useCallback, useMemo } from "react";
26
+ import { cloneElement, useCallback, useMemo } from "react";
27
27
  import { useControlledValue } from "../../hooks/useControlledValue";
28
28
  import {
29
29
  type AriaProps,
@@ -32,8 +32,8 @@ import {
32
32
  type CssProp,
33
33
  type SizeType,
34
34
  } from "../../types";
35
+ import { cloneChildren } from "../../utils";
35
36
  import { type ButtonProps } from "./Button";
36
- import classes from "./Button.module.css";
37
37
 
38
38
  interface BaseProps
39
39
  extends CssProp,
@@ -131,16 +131,16 @@ export const ToggleButtonGroup = ({
131
131
  return (
132
132
  <div
133
133
  className={classNames(
134
- classes.buttonGroup,
134
+ "fabric-buttonGroup",
135
135
  className,
136
136
  fullWidth ? "flex" : "inline-flex",
137
137
  "flex-nowrap align-middle",
138
- vertical && classes.vertical,
138
+ vertical && "vertical",
139
139
  vertical && "flex-col",
140
140
  )}
141
141
  {...aria}
142
142
  >
143
- {Children.map(children, (child: AnyObject) =>
143
+ {cloneChildren(children, (child: AnyObject) =>
144
144
  cloneElement(child, {
145
145
  color,
146
146
  size,
@@ -25,13 +25,11 @@ import classNames from "classnames";
25
25
  import {
26
26
  type AriaProps,
27
27
  type ChildrenProp,
28
- type ColorType,
28
+ type ColorState,
29
29
  type CssProp,
30
- type PaletteType,
31
30
  type TestProps,
32
31
  } from "../../types";
33
32
  import { CoreIcons } from "../../types/icons";
34
- import { getBgClass, getBorderClass, getColorClass } from "../../utils";
35
33
  import { Icon } from "../icon/Icon";
36
34
 
37
35
  export interface CalloutProps
@@ -42,7 +40,7 @@ export interface CalloutProps
42
40
  /**
43
41
  * callout color
44
42
  */
45
- color?: ColorType | PaletteType;
43
+ color?: ColorState;
46
44
  /**
47
45
  * legend title
48
46
  */
@@ -65,6 +63,16 @@ export interface CalloutProps
65
63
  onClose?: () => void;
66
64
  }
67
65
 
66
+ const colors = {
67
+ tint: "bg-tint-50/50 text-tint-800 border-tint-300",
68
+ primary: "bg-primary-50/50 text-primary-800 border-primary-300",
69
+ accent: "bg-accent-50/50 text-accent-800 border-accent-300",
70
+ info: "bg-info-50/50 text-info-800 border-info-300",
71
+ danger: "bg-danger-50/50 text-danger-800 border-danger-300",
72
+ success: "bg-success-50/50 text-success-800 border-success-300",
73
+ warning: "bg-warning-50/50 text-warning-800 border-warning-300",
74
+ };
75
+
68
76
  export const Callout = ({
69
77
  children,
70
78
  // @ts-expect-error ignore
@@ -80,27 +88,34 @@ export const Callout = ({
80
88
  return (
81
89
  <fieldset
82
90
  className={classNames(
83
- className,
84
91
  "block rounded-capped border max-w-full relative overflow-hidden mb-4",
85
- getBgClass(color + "-50"),
86
- getColorClass(color + "-700"),
87
- getBorderClass(color + "-300"),
92
+ colors[color],
93
+ className,
88
94
  border === "dashed" && "border-dashed",
89
95
  border === "dotted" && "border-dotted",
90
96
  )}
91
97
  {...aria}
92
98
  >
93
- {legend && <legend className="px-2 mx-4 font-medium">{legend}</legend>}
99
+ {legend && (
100
+ <legend className="px-2 mx-4 font-medium" data-ref="calloutLegend">
101
+ {legend}
102
+ </legend>
103
+ )}
94
104
  <div className={classNames("break-words whitespace-break-spaces p-2")}>
95
105
  <div className="flex flex-nowrap items-center text-xl pe-4 gap-2 mb-4 empty:mb-0">
96
- {icon && <Icon icon={icon} />}
97
- {title && <p className="flex-1">{title}</p>}
106
+ {icon && <Icon icon={icon} data-ref="calloutIcon" />}
107
+ {title && (
108
+ <p className="flex-1" data-ref="calloutTitle">
109
+ {title}
110
+ </p>
111
+ )}
98
112
  </div>
99
113
  <div className="pe-4">{children}</div>
100
114
  </div>
101
115
  {onClose && (
102
116
  <Icon
103
117
  size="md"
118
+ data-ref="calloutClose"
104
119
  className={classNames("absolute end-2", legend ? "top-0" : "top-2")}
105
120
  icon={CoreIcons.close}
106
121
  onClick={onClose}
@@ -39,15 +39,16 @@ import {
39
39
  type AriaProps,
40
40
  type ChildrenProp,
41
41
  type CssProp,
42
+ type RefProp,
42
43
  type TestProps,
43
44
  } from "../../types";
44
45
  import { nodeCheck } from "../../utils";
45
- import classes from "./Card.module.css";
46
46
 
47
47
  export interface CardProps
48
48
  extends CssProp,
49
49
  AriaProps,
50
50
  TestProps,
51
+ RefProp<HTMLDivElement>,
51
52
  ChildrenProp<React.ReactElement<HeadFootProps | ContentProps>> {
52
53
  /**
53
54
  * apply flex fill styling
@@ -94,6 +95,7 @@ export const Card = ({
94
95
  draggable,
95
96
  dragKey,
96
97
  dragData,
98
+ ref,
97
99
  ...aria
98
100
  }: CardProps) => {
99
101
  const [header, body, footer] = useMemo(() => {
@@ -113,20 +115,20 @@ export const Card = ({
113
115
  return (
114
116
  <div
115
117
  className={classNames(
116
- classes.cardWrapper,
118
+ "fabric-cardWrapper",
117
119
  "rounded-capped relative grid",
118
120
  flex && "flex-1",
119
- selected && selectedRibbon && classes.selected,
120
- selected && "outline outline-2 outline-accent-500 outline-offset-2",
121
+ selected && selectedRibbon && "selected",
122
+ selected && "outline-2 outline-accent-500 outline-offset-2",
121
123
  )}
122
124
  >
123
125
  <ErrorBoundary>
124
126
  <div
125
127
  className={classNames(
126
- classes.card,
128
+ "fabric-card",
127
129
  className,
128
130
  "rounded-capped flex flex-col flex-nowrap overflow-hidden",
129
- onClick && classes.clickable,
131
+ onClick && "clickable",
130
132
  )}
131
133
  draggable={draggable}
132
134
  onDragStart={
@@ -136,12 +138,13 @@ export const Card = ({
136
138
  dragKey &&
137
139
  e.dataTransfer?.setData(dragKey, JSON.stringify(dragData))
138
140
  }
141
+ ref={ref}
139
142
  {...aria}
140
143
  >
141
144
  {header}
142
145
  <div
143
146
  role="none"
144
- className={classNames(classes.cardBody, bodyClassName, "flex-1")}
147
+ className={classNames("fabric-cardBody", bodyClassName, "flex-1")}
145
148
  onClick={onClick}
146
149
  >
147
150
  {body}
@@ -26,7 +26,6 @@ import { Children, useMemo } from "react";
26
26
  import { type AriaProps, type ChildrenProp, type CssProp } from "../../types";
27
27
  import { nodeCheck } from "../../utils";
28
28
  import { Image, Video } from "../media/Media";
29
- import classes from "./Card.module.css";
30
29
 
31
30
  export interface CardCoverProps extends CssProp, AriaProps, ChildrenProp {
32
31
  /**
@@ -43,12 +42,19 @@ export interface CardCoverProps extends CssProp, AriaProps, ChildrenProp {
43
42
  justify?: "start" | "center" | "end";
44
43
  }
45
44
 
45
+ const scheme = {
46
+ inheritScheme: "inheritScheme",
47
+ light: "light",
48
+ dark: "dark",
49
+ };
50
+
46
51
  export const CardCover = ({
47
52
  className,
48
53
  children,
49
54
  height = 120,
50
55
  justify = "end",
51
- colorScheme,
56
+ // @ts-expect-error ignore
57
+ colorScheme = "inheritScheme",
52
58
  ...aria
53
59
  }: CardCoverProps) => {
54
60
  const [media, body] = useMemo(() => {
@@ -64,8 +70,8 @@ export const CardCover = ({
64
70
  <div
65
71
  style={{ height }}
66
72
  className={classNames(
67
- classes.cardCover,
68
- classes[colorScheme ?? "inheritScheme"],
73
+ "fabric-cardCover",
74
+ scheme[colorScheme],
69
75
  "relative z-0",
70
76
  )}
71
77
  {...aria}
@@ -73,9 +79,8 @@ export const CardCover = ({
73
79
  {media}
74
80
  <div
75
81
  className={classNames(
76
- classes.cardCoverContent,
82
+ "fabric-cardCoverContent",
77
83
  "relative pointer-events-none z-1 flex flex-col flex-nowrap p-4 h-full",
78
- className,
79
84
  `justify-${justify}`,
80
85
  className,
81
86
  )}
@@ -30,14 +30,14 @@ import {
30
30
  type ColorType,
31
31
  type CssProp,
32
32
  type IconProps,
33
+ type PaletteType,
33
34
  type PolymorphicProps,
34
35
  type RefProp,
35
36
  type SizeType,
36
37
  type TestProps,
37
38
  } from "../../types";
38
- import { getColor, getColorClass } from "../../utils";
39
+ import { getColor } from "../../utils";
39
40
  import { Icon } from "../icon/Icon";
40
- import classes from "./Chip.module.css";
41
41
 
42
42
  export interface ChipProps
43
43
  extends CssProp,
@@ -49,11 +49,11 @@ export interface ChipProps
49
49
  /**
50
50
  * chip size
51
51
  */
52
- size?: SizeType;
52
+ size?: SizeType | number | string;
53
53
  /**
54
54
  * chip color (CSS color / tailwind color)
55
55
  */
56
- color?: ColorType | string;
56
+ color?: ColorType | PaletteType | string;
57
57
  /**
58
58
  * chip styling
59
59
  */
@@ -152,24 +152,25 @@ export const Chip = <Tag extends React.ElementType = "div">({
152
152
  <E
153
153
  ref={ref}
154
154
  role="term"
155
+ data-ref="chip"
155
156
  className={classNames(
156
- classes.chip,
157
+ "fabric-chip",
157
158
  className,
158
- color && getColorClass(color),
159
- "select-none inline-flex flex-nowrap items-center max-w-72 text-sm leading-none rounded",
159
+ "select-none inline-flex flex-nowrap items-center align-middle max-w-72 rounded",
160
160
  rounded && "rounded-full",
161
- !!onClick && classes.clickable,
162
- disabled && classes.disabled,
161
+ !!onClick && "clickable",
162
+ disabled && "disabled",
163
163
  )}
164
164
  style={styles}
165
165
  data-variant={variant}
166
166
  data-inner-clickable={!!onClick}
167
- {...{ onClick: clickHandler }}
167
+ {...{ onClick: disabled ? undefined : clickHandler }}
168
168
  {...aria}
169
169
  >
170
170
  {icon && (
171
171
  <Icon
172
- className={classNames(classes.chipIcon, "m-1")}
172
+ data-ref="chipIcon"
173
+ className={classNames("fabric-chipIcon", "m-1")}
173
174
  icon={icon}
174
175
  bg={iconBg}
175
176
  onClick={onIconClick}
@@ -179,7 +180,8 @@ export const Chip = <Tag extends React.ElementType = "div">({
179
180
  )}
180
181
  {children && (
181
182
  <label
182
- className={classNames(classes.chipLabel, "leading-none truncate")}
183
+ data-ref="chipLabel"
184
+ className={classNames("fabric-chipLabel", "truncate")}
183
185
  >
184
186
  {children}
185
187
  </label>
@@ -187,8 +189,10 @@ export const Chip = <Tag extends React.ElementType = "div">({
187
189
  {onRemove && (
188
190
  <span
189
191
  role="none"
192
+ data-ref="chipRemove"
193
+ data-inner-cliackable
190
194
  className={classNames(
191
- classes.chipRemove,
195
+ "fabric-chipRemove",
192
196
  "cursor-pointer pe-1 opacity-65 hover:opacity-90",
193
197
  )}
194
198
  onClick={removeHandler}
@@ -40,7 +40,6 @@ import {
40
40
  } from "../../types";
41
41
  import { CoreIcons } from "../../types/icons";
42
42
  import { Icon } from "../icon/Icon";
43
- import classes from "./Collapsable.module.css";
44
43
 
45
44
  interface CollapsableRef {
46
45
  button: RefObject<HTMLElement>;
@@ -66,6 +65,10 @@ export interface CollapsableProps
66
65
  * header button className
67
66
  */
68
67
  headerClassName?: string;
68
+ /**
69
+ * Header position sticky
70
+ */
71
+ stickyHeader?: boolean;
69
72
  /**
70
73
  * open state icon
71
74
  */
@@ -100,6 +103,7 @@ export const Collapsable = ({
100
103
  headerClassName,
101
104
  children,
102
105
  iconAlign,
106
+ stickyHeader,
103
107
  iconClosed = CoreIcons.chevronRight,
104
108
  iconOpen = CoreIcons.chevronDown,
105
109
  open,
@@ -130,14 +134,15 @@ export const Collapsable = ({
130
134
  return [h, b];
131
135
  }, [children]);
132
136
  return (
133
- <div className={classNames(classes.collapsable, className)} {...aria}>
137
+ <div className={classNames("fabric-collapsable", className)} {...aria}>
134
138
  <div
135
139
  role="none"
136
140
  ref={headRef}
137
141
  className={classNames(
138
- classes.collapsableHead,
142
+ "fabric-collapsableHead",
139
143
  "flex gap-1 flex-nowrap py-2 font-medium cursor-pointer items-center select-none hover:opacity-70",
140
144
  headerClassName,
145
+ stickyHeader && "bg-base sticky top-0 px-2 py-1 z-10",
141
146
  iconAlign === "end" ? "flex-row-reverse" : "flex-row",
142
147
  )}
143
148
  onClick={() => !disabled && setOpenState(!openState)}
@@ -148,7 +153,7 @@ export const Collapsable = ({
148
153
  {openState && (
149
154
  <div
150
155
  ref={bodyRef}
151
- className={classNames(classes.collapsableBody, bodyClassName)}
156
+ className={classNames("fabric-collapsableBody", bodyClassName)}
152
157
  >
153
158
  {body}
154
159
  </div>
@@ -24,12 +24,12 @@
24
24
  import classNames from "classnames";
25
25
  import { useCallback } from "react";
26
26
  import {
27
- type CssProp,
28
27
  type ChildProp,
29
28
  type ColorType,
29
+ type CssProp,
30
30
  type PaletteType,
31
31
  } from "../../types";
32
- import { getBgClass, getBorderClass, getColorClass } from "../../utils";
32
+ import { getColor } from "../../utils";
33
33
 
34
34
  export interface DividerProps extends CssProp, Partial<ChildProp> {
35
35
  /**
@@ -40,10 +40,14 @@ export interface DividerProps extends CssProp, Partial<ChildProp> {
40
40
  * vertical rule
41
41
  */
42
42
  vertical?: boolean;
43
+ /**
44
+ * divider label classname(s)
45
+ */
46
+ labelClassName?: string;
43
47
  /**
44
48
  * rule color
45
49
  */
46
- color?: ColorType | PaletteType | "tint";
50
+ color?: ColorType | PaletteType | string;
47
51
  /**
48
52
  * text alignment
49
53
  */
@@ -52,8 +56,9 @@ export interface DividerProps extends CssProp, Partial<ChildProp> {
52
56
 
53
57
  export const Divider = ({
54
58
  children,
55
- color,
59
+ color = "tint-300",
56
60
  vertical,
61
+ labelClassName,
57
62
  fill,
58
63
  align = "start",
59
64
  className,
@@ -62,13 +67,14 @@ export const Divider = ({
62
67
  ({ flex, className }: KeyValue) => {
63
68
  return (
64
69
  <hr
65
- style={{ flex }}
70
+ style={{ flex, borderColor: getColor(color) }}
66
71
  className={classNames(
67
72
  className,
68
73
  vertical && "vertical",
69
74
  !flex && "self-stretch",
70
- vertical ? "mx-1" : "my-1",
71
- color && getBorderClass(color + "-200"),
75
+ vertical
76
+ ? "fabric-divider--vertical"
77
+ : "fabric-divider--horizontal",
72
78
  )}
73
79
  />
74
80
  );
@@ -88,9 +94,8 @@ export const Divider = ({
88
94
  <div
89
95
  className={classNames(
90
96
  "px-2 whitespace-nowrap",
91
- vertical ? "mx-1" : "my-1",
92
- fill && getBgClass((color ?? "tint") + "-200"),
93
- !fill && getColorClass((color ?? "tint") + "-600"),
97
+ vertical ? "fabric-divider--vertical" : "fabric-divider--horizontal",
98
+ labelClassName,
94
99
  "rounded-full text-[0.75em]",
95
100
  vertical && "origin-center -rotate-90 z-1",
96
101
  )}
@@ -54,7 +54,6 @@ import {
54
54
  useState,
55
55
  } from "react";
56
56
  import { type ChildProp, type RefProp } from "../../types";
57
- import classes from "./Dropdown.module.css";
58
57
 
59
58
  export interface DropdownProps extends RefProp {
60
59
  children: [React.ReactNode, React.ReactNode];
@@ -224,6 +223,7 @@ const DropdownElement = ({
224
223
  e.stopPropagation();
225
224
  },
226
225
  }),
226
+ "data-inner-clickable": "true",
227
227
  "data-dropdown-open": isOpen ? true : undefined,
228
228
  ref: innerRef,
229
229
  })}
@@ -248,6 +248,7 @@ const DropdownElement = ({
248
248
  zIndex: "var(--z-popover)",
249
249
  ...floatingStyles,
250
250
  }}
251
+ data-ref="dropdownBody"
251
252
  {...getFloatingProps({
252
253
  onClick: (e) => e.stopPropagation(),
253
254
  })}
@@ -255,10 +256,9 @@ const DropdownElement = ({
255
256
  <div
256
257
  role="none"
257
258
  className={classNames(
258
- classes.dropdownBody,
259
+ "fabric-dropdownBody",
259
260
  dropdownClassName,
260
- !plainDropdown &&
261
- "shadow-lg shadow-base bg-base ring-1 ring-tint-100",
261
+ !plainDropdown && "shadow-lg bg-base ring-1 ring-tint-100",
262
262
  "rounded-capped overflow-auto scroll-thin grid max-h-[70vh]",
263
263
  )}
264
264
  onMouseUpCapture={tryClosing}
@@ -270,7 +270,7 @@ const DropdownElement = ({
270
270
  ref={arrowRef}
271
271
  context={context}
272
272
  strokeWidth={0.5}
273
- className="fill-base stroke-muted"
273
+ className="fill-base stroke-dimmed"
274
274
  />
275
275
  )}
276
276
  </div>
@@ -31,10 +31,12 @@ export const DropdownTool = ({
31
31
  children,
32
32
  className,
33
33
  groupHover,
34
+ icon,
34
35
  ...props
35
36
  }: ChildProp &
36
37
  CssProp &
37
38
  Omit<DropdownProps, "children"> & {
39
+ icon?: string;
38
40
  /**
39
41
  * hide until group hovered
40
42
  */
@@ -43,12 +45,12 @@ export const DropdownTool = ({
43
45
  return (
44
46
  <Dropdown {...props}>
45
47
  <Icon
46
- icon={CoreIcons.caretDown}
48
+ icon={icon ?? CoreIcons.caretDown}
47
49
  className={classNames(
50
+ "outline bg-tint-50/50 flex-content pointer-events-auto cursor-pointer",
48
51
  className,
49
- "outline bg-base flex-content pointer-events-auto cursor-pointer",
50
52
  groupHover &&
51
- "hidden group-hover:inline-block data-[dropdown-open]:inline-block",
53
+ "hidden group-hover/tool:inline-block data-[dropdown-open]:inline-block",
52
54
  )}
53
55
  />
54
56
  {children}
@@ -24,7 +24,14 @@
24
24
  import { isString } from "@react-fabric/utilities";
25
25
  import classNames from "classnames";
26
26
  import { isValidElement } from "react";
27
- import { type ChildrenProp, type CssProp, type TestProps } from "../../types";
27
+ import {
28
+ type ChildrenProp,
29
+ type ColorType,
30
+ type CssProp,
31
+ type PaletteType,
32
+ type TestProps,
33
+ } from "../../types";
34
+ import { getColor } from "../../utils";
28
35
  import { Icon } from "../icon/Icon";
29
36
 
30
37
  export interface EmptyContentProps
@@ -47,6 +54,10 @@ export interface EmptyContentProps
47
54
  * empty icon
48
55
  */
49
56
  icon?: string | React.ReactElement;
57
+ /**
58
+ * icon color
59
+ */
60
+ iconColor?: ColorType | PaletteType;
50
61
  }
51
62
 
52
63
  const SizeMap: KeyValue = {
@@ -101,6 +112,7 @@ export const EmptyContent = ({
101
112
  icon,
102
113
  className,
103
114
  size,
115
+ iconColor,
104
116
  ...test
105
117
  }: EmptyContentProps) => {
106
118
  return (
@@ -116,7 +128,10 @@ export const EmptyContent = ({
116
128
  }
117
129
  {...test}
118
130
  >
119
- <div className="leading-none" style={{ fontSize: "4em" }}>
131
+ <div
132
+ className="leading-none"
133
+ style={{ fontSize: "4em", color: getColor(iconColor ?? "tint-700") }}
134
+ >
120
135
  {isString(icon) && <Icon icon={icon} />}
121
136
  {isValidElement(icon) && icon}
122
137
  {!icon && <DefaultIcon />}