@usefragments/ui 1.6.0 → 2.0.0

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 (685) hide show
  1. package/README.md +54 -66
  2. package/dist/assets/fragments-wordmark.cjs +2 -2
  3. package/dist/assets/fragments-wordmark.d.ts.map +1 -1
  4. package/dist/assets/fragments-wordmark.js +2 -2
  5. package/dist/assets/nav-glyph.cjs +139 -0
  6. package/dist/assets/nav-glyph.d.ts +28 -0
  7. package/dist/assets/nav-glyph.d.ts.map +1 -0
  8. package/dist/assets/nav-glyph.js +139 -0
  9. package/dist/assets/nav-glyph.module.scss.cjs +71 -0
  10. package/dist/assets/nav-glyph.module.scss.js +71 -0
  11. package/dist/assets/ui.css +6885 -6308
  12. package/dist/blocks/components/StatsCard.d.ts +1 -1
  13. package/dist/blocks/components/StatsCard.d.ts.map +1 -1
  14. package/dist/chart.cjs +24 -6
  15. package/dist/chart.js +24 -6
  16. package/dist/codeblock.cjs +76 -43
  17. package/dist/codeblock.js +71 -38
  18. package/dist/colorpicker.cjs +4 -1
  19. package/dist/colorpicker.js +4 -1
  20. package/dist/components/Accordion/Accordion.module.scss.cjs +8 -8
  21. package/dist/components/Accordion/Accordion.module.scss.js +8 -8
  22. package/dist/components/Alert/Alert.module.scss.cjs +23 -20
  23. package/dist/components/Alert/Alert.module.scss.js +23 -20
  24. package/dist/components/Alert/index.cjs +20 -8
  25. package/dist/components/Alert/index.d.ts +17 -11
  26. package/dist/components/Alert/index.d.ts.map +1 -1
  27. package/dist/components/Alert/index.js +20 -8
  28. package/dist/components/AppShell/AppShell.module.scss.cjs +14 -14
  29. package/dist/components/AppShell/AppShell.module.scss.js +14 -14
  30. package/dist/components/AppShell/index.cjs +2 -2
  31. package/dist/components/AppShell/index.js +2 -2
  32. package/dist/components/Avatar/Avatar.module.scss.cjs +14 -14
  33. package/dist/components/Avatar/Avatar.module.scss.js +14 -14
  34. package/dist/components/Badge/Badge.module.scss.cjs +33 -31
  35. package/dist/components/Badge/Badge.module.scss.js +33 -31
  36. package/dist/components/Badge/index.cjs +13 -3
  37. package/dist/components/Badge/index.d.ts +18 -13
  38. package/dist/components/Badge/index.d.ts.map +1 -1
  39. package/dist/components/Badge/index.js +13 -3
  40. package/dist/components/BentoGrid/BentoGrid.module.scss.cjs +14 -14
  41. package/dist/components/BentoGrid/BentoGrid.module.scss.js +14 -14
  42. package/dist/components/Box/Box.module.scss.cjs +152 -152
  43. package/dist/components/Box/Box.module.scss.js +152 -152
  44. package/dist/components/Box/index.cjs +64 -75
  45. package/dist/components/Box/index.d.ts +16 -16
  46. package/dist/components/Box/index.d.ts.map +1 -1
  47. package/dist/components/Box/index.js +64 -75
  48. package/dist/components/Breadcrumbs/Breadcrumbs.module.scss.cjs +11 -8
  49. package/dist/components/Breadcrumbs/Breadcrumbs.module.scss.js +11 -8
  50. package/dist/components/Breadcrumbs/index.cjs +1 -1
  51. package/dist/components/Breadcrumbs/index.d.ts.map +1 -1
  52. package/dist/components/Breadcrumbs/index.js +1 -1
  53. package/dist/components/Button/Button.module.scss.cjs +36 -27
  54. package/dist/components/Button/Button.module.scss.js +36 -27
  55. package/dist/components/Button/index.cjs +20 -4
  56. package/dist/components/Button/index.d.ts +18 -10
  57. package/dist/components/Button/index.d.ts.map +1 -1
  58. package/dist/components/Button/index.js +20 -4
  59. package/dist/components/ButtonGroup/ButtonGroup.module.scss.cjs +15 -15
  60. package/dist/components/ButtonGroup/ButtonGroup.module.scss.js +15 -15
  61. package/dist/components/Card/Card.module.scss.cjs +31 -26
  62. package/dist/components/Card/Card.module.scss.js +32 -27
  63. package/dist/components/Card/index.cjs +16 -3
  64. package/dist/components/Card/index.d.ts +23 -15
  65. package/dist/components/Card/index.d.ts.map +1 -1
  66. package/dist/components/Card/index.js +16 -3
  67. package/dist/components/Chart/Chart.module.scss.cjs +15 -15
  68. package/dist/components/Chart/Chart.module.scss.js +15 -15
  69. package/dist/components/Chart/index.d.ts.map +1 -1
  70. package/dist/components/Checkbox/Checkbox.module.scss.cjs +11 -11
  71. package/dist/components/Checkbox/Checkbox.module.scss.js +11 -11
  72. package/dist/components/Checkbox/index.cjs +4 -4
  73. package/dist/components/Checkbox/index.d.ts +4 -6
  74. package/dist/components/Checkbox/index.d.ts.map +1 -1
  75. package/dist/components/Checkbox/index.js +4 -4
  76. package/dist/components/Chip/Chip.module.scss.cjs +19 -19
  77. package/dist/components/Chip/Chip.module.scss.js +19 -19
  78. package/dist/components/Chip/index.cjs +3 -3
  79. package/dist/components/Chip/index.d.ts +8 -3
  80. package/dist/components/Chip/index.d.ts.map +1 -1
  81. package/dist/components/Chip/index.js +3 -3
  82. package/dist/components/CodeBlock/CodeBlock.module.scss.cjs +26 -23
  83. package/dist/components/CodeBlock/CodeBlock.module.scss.js +26 -23
  84. package/dist/components/CodeBlock/css-variables-theme.cjs +98 -0
  85. package/dist/components/CodeBlock/css-variables-theme.d.ts +27 -0
  86. package/dist/components/CodeBlock/css-variables-theme.d.ts.map +1 -0
  87. package/dist/components/CodeBlock/css-variables-theme.js +98 -0
  88. package/dist/components/CodeBlock/index.d.ts +20 -5
  89. package/dist/components/CodeBlock/index.d.ts.map +1 -1
  90. package/dist/components/Collapsible/Collapsible.module.scss.cjs +9 -9
  91. package/dist/components/Collapsible/Collapsible.module.scss.js +9 -9
  92. package/dist/components/ColorPicker/ColorPicker.module.scss.cjs +14 -14
  93. package/dist/components/ColorPicker/ColorPicker.module.scss.js +14 -14
  94. package/dist/components/ColorPicker/index.d.ts.map +1 -1
  95. package/dist/components/Combobox/Combobox.module.scss.cjs +21 -21
  96. package/dist/components/Combobox/Combobox.module.scss.js +21 -21
  97. package/dist/components/Combobox/index.cjs +26 -6
  98. package/dist/components/Combobox/index.d.ts.map +1 -1
  99. package/dist/components/Combobox/index.js +26 -6
  100. package/dist/components/Command/Command.module.scss.cjs +14 -11
  101. package/dist/components/Command/Command.module.scss.js +14 -11
  102. package/dist/components/Command/index.cjs +28 -16
  103. package/dist/components/Command/index.d.ts +8 -3
  104. package/dist/components/Command/index.d.ts.map +1 -1
  105. package/dist/components/Command/index.js +28 -16
  106. package/dist/components/ConversationList/ConversationList.module.scss.cjs +10 -10
  107. package/dist/components/ConversationList/ConversationList.module.scss.js +10 -10
  108. package/dist/components/ConversationList/index.cjs +2 -2
  109. package/dist/components/ConversationList/index.js +2 -2
  110. package/dist/components/DataTable/DataTable.icons.cjs +6 -33
  111. package/dist/components/DataTable/DataTable.icons.d.ts.map +1 -1
  112. package/dist/components/DataTable/DataTable.icons.js +6 -33
  113. package/dist/components/DataTable/DataTable.module.scss.cjs +31 -28
  114. package/dist/components/DataTable/DataTable.module.scss.js +31 -28
  115. package/dist/components/DataTable/DataTable.virtual.d.ts.map +1 -1
  116. package/dist/components/DataTable/index.d.ts.map +1 -1
  117. package/dist/components/DatePicker/DatePicker.module.scss.cjs +33 -33
  118. package/dist/components/DatePicker/DatePicker.module.scss.js +33 -33
  119. package/dist/components/DatePicker/index.d.ts.map +1 -1
  120. package/dist/components/Dialog/Dialog.module.scss.cjs +14 -14
  121. package/dist/components/Dialog/Dialog.module.scss.js +14 -14
  122. package/dist/components/Dialog/index.cjs +13 -16
  123. package/dist/components/Dialog/index.d.ts +11 -10
  124. package/dist/components/Dialog/index.d.ts.map +1 -1
  125. package/dist/components/Dialog/index.js +13 -16
  126. package/dist/components/Drawer/Drawer.module.scss.cjs +39 -39
  127. package/dist/components/Drawer/Drawer.module.scss.js +40 -40
  128. package/dist/components/Drawer/index.cjs +2 -2
  129. package/dist/components/Drawer/index.d.ts +5 -4
  130. package/dist/components/Drawer/index.d.ts.map +1 -1
  131. package/dist/components/Drawer/index.js +2 -2
  132. package/dist/components/Editor/Editor.module.scss.cjs +17 -17
  133. package/dist/components/Editor/Editor.module.scss.js +17 -17
  134. package/dist/components/Editor/index.d.ts +10 -10
  135. package/dist/components/Editor/index.d.ts.map +1 -1
  136. package/dist/components/EmptyState/EmptyState.module.scss.cjs +11 -8
  137. package/dist/components/EmptyState/EmptyState.module.scss.js +11 -8
  138. package/dist/components/EmptyState/index.cjs +13 -6
  139. package/dist/components/EmptyState/index.d.ts +13 -5
  140. package/dist/components/EmptyState/index.d.ts.map +1 -1
  141. package/dist/components/EmptyState/index.js +13 -6
  142. package/dist/components/Field/Field.module.scss.cjs +5 -5
  143. package/dist/components/Field/Field.module.scss.js +5 -5
  144. package/dist/components/Field/index.cjs +9 -1
  145. package/dist/components/Field/index.d.ts.map +1 -1
  146. package/dist/components/Field/index.js +9 -1
  147. package/dist/components/Fieldset/Fieldset.module.scss.cjs +3 -3
  148. package/dist/components/Fieldset/Fieldset.module.scss.js +3 -3
  149. package/dist/components/Grid/Grid.module.scss.cjs +54 -54
  150. package/dist/components/Grid/Grid.module.scss.js +54 -54
  151. package/dist/components/Grid/index.cjs +1 -1
  152. package/dist/components/Grid/index.js +1 -1
  153. package/dist/components/Header/Header.module.scss.cjs +33 -33
  154. package/dist/components/Header/Header.module.scss.js +33 -33
  155. package/dist/components/Header/index.cjs +17 -38
  156. package/dist/components/Header/index.d.ts +15 -11
  157. package/dist/components/Header/index.d.ts.map +1 -1
  158. package/dist/components/Header/index.js +17 -38
  159. package/dist/components/Icon/Icon.module.scss.cjs +30 -33
  160. package/dist/components/Icon/Icon.module.scss.js +30 -33
  161. package/dist/components/Icon/index.cjs +15 -14
  162. package/dist/components/Icon/index.d.ts +23 -12
  163. package/dist/components/Icon/index.d.ts.map +1 -1
  164. package/dist/components/Icon/index.js +15 -14
  165. package/dist/components/IconButton/IconButton.module.scss.cjs +12 -12
  166. package/dist/components/IconButton/IconButton.module.scss.js +12 -12
  167. package/dist/components/IconButton/index.cjs +2 -1
  168. package/dist/components/IconButton/index.d.ts +4 -4
  169. package/dist/components/IconButton/index.d.ts.map +1 -1
  170. package/dist/components/IconButton/index.js +2 -1
  171. package/dist/components/Image/Image.module.scss.cjs +27 -27
  172. package/dist/components/Image/Image.module.scss.js +27 -27
  173. package/dist/components/Input/Input.module.scss.cjs +15 -21
  174. package/dist/components/Input/Input.module.scss.js +15 -21
  175. package/dist/components/Input/index.cjs +2 -14
  176. package/dist/components/Input/index.d.ts +0 -2
  177. package/dist/components/Input/index.d.ts.map +1 -1
  178. package/dist/components/Input/index.js +2 -14
  179. package/dist/components/Link/Link.module.scss.cjs +26 -14
  180. package/dist/components/Link/Link.module.scss.js +26 -14
  181. package/dist/components/Link/index.cjs +13 -2
  182. package/dist/components/Link/index.d.ts +11 -4
  183. package/dist/components/Link/index.d.ts.map +1 -1
  184. package/dist/components/Link/index.js +13 -2
  185. package/dist/components/List/List.module.scss.cjs +23 -19
  186. package/dist/components/List/List.module.scss.js +23 -19
  187. package/dist/components/List/index.cjs +7 -7
  188. package/dist/components/List/index.d.ts +10 -7
  189. package/dist/components/List/index.d.ts.map +1 -1
  190. package/dist/components/List/index.js +7 -7
  191. package/dist/components/Listbox/Listbox.module.scss.cjs +8 -8
  192. package/dist/components/Listbox/Listbox.module.scss.js +8 -8
  193. package/dist/components/Loading/Loading.module.scss.cjs +34 -34
  194. package/dist/components/Loading/Loading.module.scss.js +34 -34
  195. package/dist/components/Loading/index.cjs +5 -5
  196. package/dist/components/Loading/index.d.ts +8 -7
  197. package/dist/components/Loading/index.d.ts.map +1 -1
  198. package/dist/components/Loading/index.js +5 -5
  199. package/dist/components/Markdown/Markdown.module.scss.cjs +1 -1
  200. package/dist/components/Markdown/Markdown.module.scss.js +1 -1
  201. package/dist/components/Markdown/index.d.ts +2 -2
  202. package/dist/components/Markdown/index.d.ts.map +1 -1
  203. package/dist/components/Menu/Menu.module.scss.cjs +14 -14
  204. package/dist/components/Menu/Menu.module.scss.js +14 -14
  205. package/dist/components/Message/Message.module.scss.cjs +20 -20
  206. package/dist/components/Message/Message.module.scss.js +20 -20
  207. package/dist/components/Message/index.cjs +1 -1
  208. package/dist/components/Message/index.d.ts +1 -1
  209. package/dist/components/Message/index.js +1 -1
  210. package/dist/components/NavigationMenu/NavigationMenu.module.scss.cjs +34 -31
  211. package/dist/components/NavigationMenu/NavigationMenu.module.scss.js +34 -31
  212. package/dist/components/NavigationMenu/index.cjs +32 -15
  213. package/dist/components/NavigationMenu/index.d.ts +12 -6
  214. package/dist/components/NavigationMenu/index.d.ts.map +1 -1
  215. package/dist/components/NavigationMenu/index.js +32 -15
  216. package/dist/components/Pagination/Pagination.module.scss.cjs +10 -10
  217. package/dist/components/Pagination/Pagination.module.scss.js +10 -10
  218. package/dist/components/Popover/Popover.module.scss.cjs +10 -10
  219. package/dist/components/Popover/Popover.module.scss.js +10 -10
  220. package/dist/components/Progress/Progress.module.scss.cjs +28 -25
  221. package/dist/components/Progress/Progress.module.scss.js +28 -25
  222. package/dist/components/Progress/index.cjs +21 -12
  223. package/dist/components/Progress/index.d.ts +10 -6
  224. package/dist/components/Progress/index.d.ts.map +1 -1
  225. package/dist/components/Progress/index.js +21 -12
  226. package/dist/components/Prompt/Prompt.module.scss.cjs +30 -30
  227. package/dist/components/Prompt/Prompt.module.scss.js +30 -30
  228. package/dist/components/Prompt/index.cjs +7 -7
  229. package/dist/components/Prompt/index.d.ts +11 -9
  230. package/dist/components/Prompt/index.d.ts.map +1 -1
  231. package/dist/components/Prompt/index.js +7 -7
  232. package/dist/components/RadioGroup/RadioGroup.module.scss.cjs +20 -17
  233. package/dist/components/RadioGroup/RadioGroup.module.scss.js +20 -17
  234. package/dist/components/RadioGroup/index.cjs +10 -5
  235. package/dist/components/RadioGroup/index.d.ts +11 -7
  236. package/dist/components/RadioGroup/index.d.ts.map +1 -1
  237. package/dist/components/RadioGroup/index.js +10 -5
  238. package/dist/components/ScrollArea/ScrollArea.module.scss.cjs +5 -5
  239. package/dist/components/ScrollArea/ScrollArea.module.scss.js +5 -5
  240. package/dist/components/ScrollArea/index.d.ts +4 -4
  241. package/dist/components/ScrollArea/index.d.ts.map +1 -1
  242. package/dist/components/ScrollArea/scroll-state.d.ts +5 -5
  243. package/dist/components/Select/Select.module.scss.cjs +21 -21
  244. package/dist/components/Select/Select.module.scss.js +21 -21
  245. package/dist/components/Select/index.cjs +26 -20
  246. package/dist/components/Select/index.d.ts +5 -5
  247. package/dist/components/Select/index.d.ts.map +1 -1
  248. package/dist/components/Select/index.js +26 -20
  249. package/dist/components/Separator/Separator.module.scss.cjs +25 -19
  250. package/dist/components/Separator/Separator.module.scss.js +25 -19
  251. package/dist/components/Separator/index.cjs +10 -8
  252. package/dist/components/Separator/index.d.ts +4 -2
  253. package/dist/components/Separator/index.d.ts.map +1 -1
  254. package/dist/components/Separator/index.js +10 -8
  255. package/dist/components/Sidebar/Sidebar.module.scss.cjs +43 -43
  256. package/dist/components/Sidebar/Sidebar.module.scss.js +43 -43
  257. package/dist/components/Sidebar/index.cjs +15 -38
  258. package/dist/components/Sidebar/index.d.ts +19 -19
  259. package/dist/components/Sidebar/index.d.ts.map +1 -1
  260. package/dist/components/Sidebar/index.js +15 -38
  261. package/dist/components/Skeleton/Skeleton.module.scss.cjs +50 -46
  262. package/dist/components/Skeleton/Skeleton.module.scss.js +50 -46
  263. package/dist/components/Skeleton/index.cjs +7 -7
  264. package/dist/components/Skeleton/index.d.ts +8 -7
  265. package/dist/components/Skeleton/index.d.ts.map +1 -1
  266. package/dist/components/Skeleton/index.js +7 -7
  267. package/dist/components/Slider/Slider.module.scss.cjs +12 -12
  268. package/dist/components/Slider/Slider.module.scss.js +12 -12
  269. package/dist/components/Stack/Stack.module.scss.cjs +25 -25
  270. package/dist/components/Stack/Stack.module.scss.js +25 -25
  271. package/dist/components/Stack/index.cjs +1 -1
  272. package/dist/components/Stack/index.js +1 -1
  273. package/dist/components/Switch/Switch.module.scss.cjs +9 -9
  274. package/dist/components/Switch/Switch.module.scss.js +9 -9
  275. package/dist/components/Table/Table.module.scss.cjs +19 -19
  276. package/dist/components/Table/Table.module.scss.js +19 -19
  277. package/dist/components/TableOfContents/TableOfContents.module.scss.cjs +15 -15
  278. package/dist/components/TableOfContents/TableOfContents.module.scss.js +15 -15
  279. package/dist/components/TableOfContents/index.cjs +14 -10
  280. package/dist/components/TableOfContents/index.d.ts +5 -3
  281. package/dist/components/TableOfContents/index.d.ts.map +1 -1
  282. package/dist/components/TableOfContents/index.js +14 -10
  283. package/dist/components/Tabs/Tabs.module.scss.cjs +18 -18
  284. package/dist/components/Tabs/Tabs.module.scss.js +18 -18
  285. package/dist/components/Tabs/index.cjs +30 -11
  286. package/dist/components/Tabs/index.d.ts +8 -6
  287. package/dist/components/Tabs/index.d.ts.map +1 -1
  288. package/dist/components/Tabs/index.js +30 -11
  289. package/dist/components/Text/Text.module.scss.cjs +109 -97
  290. package/dist/components/Text/Text.module.scss.js +109 -97
  291. package/dist/components/Text/index.cjs +45 -41
  292. package/dist/components/Text/index.d.ts +24 -19
  293. package/dist/components/Text/index.d.ts.map +1 -1
  294. package/dist/components/Text/index.js +45 -41
  295. package/dist/components/Textarea/Textarea.module.scss.cjs +22 -28
  296. package/dist/components/Textarea/Textarea.module.scss.js +22 -28
  297. package/dist/components/Textarea/index.cjs +3 -10
  298. package/dist/components/Textarea/index.d.ts +0 -2
  299. package/dist/components/Textarea/index.d.ts.map +1 -1
  300. package/dist/components/Textarea/index.js +3 -10
  301. package/dist/components/Theme/index.cjs +22 -5
  302. package/dist/components/Theme/index.d.ts +6 -12
  303. package/dist/components/Theme/index.d.ts.map +1 -1
  304. package/dist/components/Theme/index.js +22 -5
  305. package/dist/components/ThemeToggle/ThemeButton.cjs +51 -0
  306. package/dist/components/ThemeToggle/ThemeButton.d.ts +16 -0
  307. package/dist/components/ThemeToggle/ThemeButton.d.ts.map +1 -0
  308. package/dist/components/ThemeToggle/ThemeButton.js +34 -0
  309. package/dist/components/ThemeToggle/ThemeToggle.module.scss.cjs +6 -6
  310. package/dist/components/ThemeToggle/ThemeToggle.module.scss.js +6 -6
  311. package/dist/components/ThemeToggle/icons.cjs +48 -0
  312. package/dist/components/ThemeToggle/icons.d.ts +10 -0
  313. package/dist/components/ThemeToggle/icons.d.ts.map +1 -0
  314. package/dist/components/ThemeToggle/icons.js +48 -0
  315. package/dist/components/ThemeToggle/index.cjs +6 -50
  316. package/dist/components/ThemeToggle/index.d.ts +5 -3
  317. package/dist/components/ThemeToggle/index.d.ts.map +1 -1
  318. package/dist/components/ThemeToggle/index.js +3 -47
  319. package/dist/components/ThinkingIndicator/ThinkingIndicator.module.scss.cjs +18 -15
  320. package/dist/components/ThinkingIndicator/ThinkingIndicator.module.scss.js +18 -15
  321. package/dist/components/ThinkingIndicator/index.cjs +7 -8
  322. package/dist/components/ThinkingIndicator/index.d.ts +6 -5
  323. package/dist/components/ThinkingIndicator/index.d.ts.map +1 -1
  324. package/dist/components/ThinkingIndicator/index.js +7 -8
  325. package/dist/components/Toast/Toast.module.scss.cjs +28 -29
  326. package/dist/components/Toast/Toast.module.scss.js +29 -30
  327. package/dist/components/Toast/index.cjs +28 -30
  328. package/dist/components/Toast/index.d.ts +9 -8
  329. package/dist/components/Toast/index.d.ts.map +1 -1
  330. package/dist/components/Toast/index.js +28 -30
  331. package/dist/components/ToggleGroup/ToggleGroup.module.scss.cjs +21 -19
  332. package/dist/components/ToggleGroup/ToggleGroup.module.scss.js +22 -20
  333. package/dist/components/ToggleGroup/index.cjs +4 -5
  334. package/dist/components/ToggleGroup/index.d.ts +7 -6
  335. package/dist/components/ToggleGroup/index.d.ts.map +1 -1
  336. package/dist/components/ToggleGroup/index.js +4 -5
  337. package/dist/components/Tooltip/Tooltip.module.scss.cjs +3 -3
  338. package/dist/components/Tooltip/Tooltip.module.scss.js +3 -3
  339. package/dist/components/Tooltip/index.cjs +24 -40
  340. package/dist/components/Tooltip/index.d.ts +4 -4
  341. package/dist/components/Tooltip/index.d.ts.map +1 -1
  342. package/dist/components/Tooltip/index.js +24 -40
  343. package/dist/components/VisuallyHidden/VisuallyHidden.module.scss.cjs +1 -1
  344. package/dist/components/VisuallyHidden/VisuallyHidden.module.scss.js +1 -1
  345. package/dist/components/VisuallyHidden/index.d.ts +2 -2
  346. package/dist/data-table-virtual.cjs +3 -2
  347. package/dist/data-table-virtual.js +3 -2
  348. package/dist/data-table.cjs +3 -2
  349. package/dist/data-table.js +3 -2
  350. package/dist/datepicker.cjs +26 -13
  351. package/dist/datepicker.js +26 -13
  352. package/dist/editor.cjs +68 -28
  353. package/dist/editor.js +68 -28
  354. package/dist/index.cjs +6 -2
  355. package/dist/index.d.ts +9 -9
  356. package/dist/index.d.ts.map +1 -1
  357. package/dist/index.js +8 -4
  358. package/dist/markdown.cjs +21 -29
  359. package/dist/markdown.js +21 -29
  360. package/dist/measurements/generated.cjs +46 -94
  361. package/dist/measurements/generated.d.ts +44 -92
  362. package/dist/measurements/generated.d.ts.map +1 -1
  363. package/dist/measurements/generated.js +46 -94
  364. package/dist/measurements/index.d.ts +1 -1
  365. package/dist/measurements/index.d.ts.map +1 -1
  366. package/dist/utils/a11y.cjs +5 -2
  367. package/dist/utils/a11y.d.ts +5 -5
  368. package/dist/utils/a11y.d.ts.map +1 -1
  369. package/dist/utils/a11y.js +5 -2
  370. package/dist/utils/canonical-stamp.cjs +2 -8
  371. package/dist/utils/canonical-stamp.d.ts.map +1 -1
  372. package/dist/utils/canonical-stamp.js +1 -7
  373. package/dist/utils/css-warning.cjs +1 -1
  374. package/dist/utils/css-warning.js +1 -1
  375. package/dist/utils/env.cjs +17 -0
  376. package/dist/utils/env.d.ts +3 -0
  377. package/dist/utils/env.d.ts.map +1 -0
  378. package/dist/utils/env.js +17 -0
  379. package/dist/utils/keyboard-shortcuts.cjs +3 -10
  380. package/dist/utils/keyboard-shortcuts.d.ts +4 -4
  381. package/dist/utils/keyboard-shortcuts.d.ts.map +1 -1
  382. package/dist/utils/keyboard-shortcuts.js +3 -10
  383. package/dist/utils/seed-derivation.cjs +10 -7
  384. package/dist/utils/seed-derivation.d.ts +1 -3
  385. package/dist/utils/seed-derivation.d.ts.map +1 -1
  386. package/dist/utils/seed-derivation.js +10 -7
  387. package/dist/utils/theme-presets.cjs +5 -10
  388. package/dist/utils/theme-presets.d.ts +1 -2
  389. package/dist/utils/theme-presets.d.ts.map +1 -1
  390. package/dist/utils/theme-presets.js +5 -10
  391. package/fragments.json +1 -1
  392. package/package.json +9 -10
  393. package/src/assets/fragments-logo.tsx +2 -2
  394. package/src/assets/fragments-wordmark.tsx +4 -2
  395. package/src/assets/nav-glyph.module.scss +166 -0
  396. package/src/assets/nav-glyph.tsx +188 -0
  397. package/src/components/Accordion/Accordion.contract.json +24 -48
  398. package/src/components/Accordion/Accordion.module.scss +5 -3
  399. package/src/components/Alert/Alert.contract.json +49 -65
  400. package/src/components/Alert/Alert.module.scss +57 -47
  401. package/src/components/Alert/index.tsx +72 -39
  402. package/src/components/AppShell/AppShell.contract.json +34 -51
  403. package/src/components/AppShell/AppShell.module.scss +99 -54
  404. package/src/components/AppShell/index.tsx +2 -2
  405. package/src/components/Avatar/Avatar.contract.json +31 -48
  406. package/src/components/Avatar/Avatar.module.scss +4 -2
  407. package/src/components/Badge/Badge.contract.json +86 -55
  408. package/src/components/Badge/Badge.module.scss +80 -48
  409. package/src/components/Badge/index.tsx +34 -17
  410. package/src/components/BentoGrid/BentoGrid.contract.json +21 -45
  411. package/src/components/BentoGrid/BentoGrid.module.scss +4 -8
  412. package/src/components/Box/Box.contract.json +40 -148
  413. package/src/components/Box/Box.module.scss +7 -6
  414. package/src/components/Box/index.tsx +92 -99
  415. package/src/components/Breadcrumbs/Breadcrumbs.contract.json +21 -34
  416. package/src/components/Breadcrumbs/Breadcrumbs.module.scss +27 -12
  417. package/src/components/Breadcrumbs/index.tsx +5 -1
  418. package/src/components/Button/Button.module.scss +261 -185
  419. package/src/components/Button/index.tsx +41 -28
  420. package/src/components/ButtonGroup/ButtonGroup.contract.json +34 -49
  421. package/src/components/ButtonGroup/ButtonGroup.module.scss +8 -6
  422. package/src/components/Card/Card.consumer-fixture.module.scss +5 -2
  423. package/src/components/Card/Card.module.scss +97 -76
  424. package/src/components/Card/index.tsx +44 -20
  425. package/src/components/Chart/Chart.contract.json +21 -29
  426. package/src/components/Chart/Chart.module.scss +6 -5
  427. package/src/components/Chart/index.tsx +36 -6
  428. package/src/components/Checkbox/Checkbox.contract.json +28 -27
  429. package/src/components/Checkbox/Checkbox.module.scss +47 -54
  430. package/src/components/Checkbox/index.tsx +10 -10
  431. package/src/components/Chip/Chip.contract.json +38 -45
  432. package/src/components/Chip/Chip.module.scss +24 -23
  433. package/src/components/Chip/index.tsx +12 -7
  434. package/src/components/CodeBlock/CodeBlock.contract.json +46 -76
  435. package/src/components/CodeBlock/CodeBlock.module.scss +75 -73
  436. package/src/components/CodeBlock/css-variables-theme.ts +102 -0
  437. package/src/components/CodeBlock/index.tsx +114 -51
  438. package/src/components/Collapsible/Collapsible.contract.json +21 -36
  439. package/src/components/Collapsible/Collapsible.module.scss +1 -7
  440. package/src/components/ColorPicker/ColorPicker.contract.json +29 -48
  441. package/src/components/ColorPicker/ColorPicker.module.scss +34 -24
  442. package/src/components/ColorPicker/index.tsx +6 -1
  443. package/src/components/Combobox/Combobox.contract.json +36 -37
  444. package/src/components/Combobox/Combobox.module.scss +16 -19
  445. package/src/components/Combobox/index.tsx +41 -6
  446. package/src/components/Command/Command.contract.json +28 -44
  447. package/src/components/Command/Command.module.scss +19 -21
  448. package/src/components/Command/index.tsx +64 -47
  449. package/src/components/ComponentDefaults/ComponentDefaults.contract.json +91 -0
  450. package/src/components/ConversationList/ConversationList.contract.json +27 -32
  451. package/src/components/ConversationList/ConversationList.module.scss +2 -3
  452. package/src/components/ConversationList/index.tsx +2 -2
  453. package/src/components/DataTable/DataTable.icons.tsx +4 -21
  454. package/src/components/DataTable/DataTable.module.scss +24 -17
  455. package/src/components/DataTable/DataTable.virtual.tsx +3 -2
  456. package/src/components/DataTable/index.tsx +9 -8
  457. package/src/components/DatePicker/DatePicker.contract.json +27 -28
  458. package/src/components/DatePicker/DatePicker.module.scss +41 -44
  459. package/src/components/DatePicker/index.tsx +23 -9
  460. package/src/components/Dialog/Dialog.module.scss +26 -32
  461. package/src/components/Dialog/index.tsx +51 -39
  462. package/src/components/Drawer/Drawer.contract.json +28 -42
  463. package/src/components/Drawer/Drawer.module.scss +123 -64
  464. package/src/components/Drawer/index.tsx +7 -5
  465. package/src/components/Editor/Editor.contract.json +32 -49
  466. package/src/components/Editor/Editor.module.scss +60 -25
  467. package/src/components/Editor/index.tsx +240 -179
  468. package/src/components/EmptyState/EmptyState.contract.json +33 -45
  469. package/src/components/EmptyState/EmptyState.module.scss +37 -21
  470. package/src/components/EmptyState/index.tsx +56 -23
  471. package/src/components/Field/Field.contract.json +28 -46
  472. package/src/components/Field/Field.module.scss +2 -1
  473. package/src/components/Field/index.tsx +5 -1
  474. package/src/components/Fieldset/Fieldset.contract.json +21 -38
  475. package/src/components/Fieldset/Fieldset.module.scss +15 -7
  476. package/src/components/Form/Form.contract.json +23 -23
  477. package/src/components/Grid/Grid.contract.json +28 -64
  478. package/src/components/Grid/Grid.module.scss +2 -2
  479. package/src/components/Grid/index.tsx +10 -10
  480. package/src/components/Header/Header.contract.json +31 -67
  481. package/src/components/Header/Header.module.scss +57 -54
  482. package/src/components/Header/index.tsx +134 -122
  483. package/src/components/Icon/Icon.contract.json +37 -81
  484. package/src/components/Icon/Icon.module.scss +13 -12
  485. package/src/components/Icon/index.tsx +31 -31
  486. package/src/components/IconButton/IconButton.contract.json +37 -21
  487. package/src/components/IconButton/IconButton.module.scss +19 -11
  488. package/src/components/IconButton/index.tsx +6 -5
  489. package/src/components/Image/Image.contract.json +23 -56
  490. package/src/components/Input/Input.contract.json +25 -44
  491. package/src/components/Input/Input.module.scss +6 -55
  492. package/src/components/Input/index.tsx +2 -18
  493. package/src/components/Link/Link.contract.json +46 -58
  494. package/src/components/Link/Link.module.scss +41 -10
  495. package/src/components/Link/index.tsx +27 -6
  496. package/src/components/List/List.contract.json +33 -62
  497. package/src/components/List/List.module.scss +10 -5
  498. package/src/components/List/index.tsx +17 -13
  499. package/src/components/Listbox/Listbox.contract.json +21 -37
  500. package/src/components/Listbox/Listbox.module.scss +14 -20
  501. package/src/components/Loading/Loading.contract.json +41 -65
  502. package/src/components/Loading/Loading.module.scss +37 -31
  503. package/src/components/Loading/index.tsx +15 -14
  504. package/src/components/Main/Main.contract.json +17 -9
  505. package/src/components/Markdown/Markdown.contract.json +22 -43
  506. package/src/components/Markdown/Markdown.module.scss +45 -6
  507. package/src/components/Markdown/index.tsx +48 -49
  508. package/src/components/Menu/Menu.contract.json +30 -46
  509. package/src/components/Menu/Menu.module.scss +32 -16
  510. package/src/components/Message/Message.contract.json +31 -54
  511. package/src/components/Message/Message.module.scss +18 -9
  512. package/src/components/Message/index.tsx +2 -2
  513. package/src/components/NavigationMenu/NavigationMenu.contract.json +36 -45
  514. package/src/components/NavigationMenu/NavigationMenu.module.scss +66 -66
  515. package/src/components/NavigationMenu/index.tsx +105 -81
  516. package/src/components/Pagination/Pagination.contract.json +22 -40
  517. package/src/components/Pagination/Pagination.module.scss +9 -16
  518. package/src/components/Popover/Popover.contract.json +28 -50
  519. package/src/components/Popover/Popover.module.scss +30 -28
  520. package/src/components/Progress/Progress.contract.json +39 -35
  521. package/src/components/Progress/Progress.module.scss +16 -10
  522. package/src/components/Progress/index.tsx +34 -16
  523. package/src/components/Prompt/Prompt.contract.json +40 -56
  524. package/src/components/Prompt/Prompt.module.scss +49 -48
  525. package/src/components/Prompt/index.tsx +17 -15
  526. package/src/components/RadioGroup/RadioGroup.contract.json +29 -28
  527. package/src/components/RadioGroup/RadioGroup.module.scss +50 -45
  528. package/src/components/RadioGroup/index.tsx +23 -10
  529. package/src/components/ScrollArea/ScrollArea.contract.json +18 -19
  530. package/src/components/ScrollArea/ScrollArea.module.scss +45 -48
  531. package/src/components/ScrollArea/index.tsx +16 -16
  532. package/src/components/ScrollArea/scroll-state.ts +24 -24
  533. package/src/components/Select/Select.module.scss +20 -19
  534. package/src/components/Select/index.tsx +26 -24
  535. package/src/components/Separator/Separator.contract.json +29 -53
  536. package/src/components/Separator/Separator.module.scss +24 -40
  537. package/src/components/Separator/index.tsx +16 -11
  538. package/src/components/Sidebar/Sidebar.contract.json +35 -67
  539. package/src/components/Sidebar/Sidebar.module.scss +94 -88
  540. package/src/components/Sidebar/index.tsx +167 -167
  541. package/src/components/Skeleton/Skeleton.contract.json +34 -60
  542. package/src/components/Skeleton/Skeleton.module.scss +50 -26
  543. package/src/components/Skeleton/index.tsx +16 -15
  544. package/src/components/Slider/Slider.contract.json +27 -39
  545. package/src/components/Slider/Slider.module.scss +9 -22
  546. package/src/components/Stack/Stack.contract.json +30 -57
  547. package/src/components/Stack/Stack.module.scss +26 -24
  548. package/src/components/Stack/index.tsx +3 -3
  549. package/src/components/Switch/Switch.contract.json +33 -46
  550. package/src/components/Switch/Switch.module.scss +106 -59
  551. package/src/components/Table/Table.contract.json +28 -46
  552. package/src/components/Table/Table.module.scss +24 -16
  553. package/src/components/TableOfContents/TableOfContents.contract.json +34 -21
  554. package/src/components/TableOfContents/TableOfContents.module.scss +17 -13
  555. package/src/components/TableOfContents/index.tsx +27 -10
  556. package/src/components/Tabs/Tabs.contract.json +35 -56
  557. package/src/components/Tabs/Tabs.module.scss +27 -31
  558. package/src/components/Tabs/index.tsx +30 -15
  559. package/src/components/Text/Text.contract.json +52 -72
  560. package/src/components/Text/Text.module.scss +34 -18
  561. package/src/components/Text/index.tsx +123 -83
  562. package/src/components/Textarea/Textarea.contract.json +24 -55
  563. package/src/components/Textarea/Textarea.module.scss +22 -52
  564. package/src/components/Textarea/index.tsx +3 -14
  565. package/src/components/Theme/Theme.contract.json +35 -53
  566. package/src/components/Theme/index.tsx +41 -13
  567. package/src/components/ThemeToggle/ThemeButton.tsx +49 -0
  568. package/src/components/ThemeToggle/ThemeToggle.module.scss +20 -27
  569. package/src/components/ThemeToggle/icons.tsx +46 -0
  570. package/src/components/ThemeToggle/index.tsx +9 -55
  571. package/src/components/ThinkingIndicator/ThinkingIndicator.contract.json +34 -50
  572. package/src/components/ThinkingIndicator/ThinkingIndicator.module.scss +9 -7
  573. package/src/components/ThinkingIndicator/index.tsx +12 -14
  574. package/src/components/Toast/Toast.contract.json +55 -49
  575. package/src/components/Toast/Toast.module.scss +50 -105
  576. package/src/components/Toast/index.tsx +39 -34
  577. package/src/components/ToggleGroup/ToggleGroup.contract.json +39 -40
  578. package/src/components/ToggleGroup/ToggleGroup.module.scss +30 -27
  579. package/src/components/ToggleGroup/index.tsx +11 -11
  580. package/src/components/Tooltip/Tooltip.contract.json +31 -52
  581. package/src/components/Tooltip/Tooltip.module.scss +16 -10
  582. package/src/components/Tooltip/index.tsx +19 -24
  583. package/src/components/VisuallyHidden/VisuallyHidden.contract.json +22 -44
  584. package/src/components/VisuallyHidden/VisuallyHidden.module.scss +4 -14
  585. package/src/components/VisuallyHidden/index.tsx +5 -5
  586. package/src/index.ts +16 -12
  587. package/src/measurements/MeasurementTargets.module.scss +6 -7
  588. package/src/measurements/generated.ts +46 -97
  589. package/src/measurements/index.ts +0 -1
  590. package/src/measurements/measurements.json +44 -116
  591. package/src/recipes/_action.scss +4 -4
  592. package/src/recipes/_boolean-range.scss +12 -16
  593. package/src/recipes/_feedback.scss +17 -16
  594. package/src/recipes/_field.scss +28 -16
  595. package/src/recipes/_layout.scss +14 -7
  596. package/src/recipes/_navigation.scss +84 -29
  597. package/src/recipes/_overlay.scss +143 -43
  598. package/src/recipes/_popup.scss +54 -34
  599. package/src/recipes/_prose.scss +48 -28
  600. package/src/recipes/_representation.scss +10 -9
  601. package/src/recipes/_segmented.scss +1 -1
  602. package/src/recipes/_table-chrome.scss +42 -17
  603. package/src/recipes/_target.scss +2 -4
  604. package/src/recipes/_typography.scss +10 -0
  605. package/src/scss.d.ts +1 -1
  606. package/src/styles/globals.scss +31 -25
  607. package/src/tokens/_component-properties.scss +19 -1
  608. package/src/tokens/_computed.scss +32 -49
  609. package/src/tokens/_derive.scss +112 -210
  610. package/src/tokens/_measurements.catalog.generated.css +62 -44
  611. package/src/tokens/_measurements.generated.scss +119 -249
  612. package/src/tokens/_mixins.scss +49 -48
  613. package/src/tokens/_palettes.scss +39 -167
  614. package/src/tokens/_property-registrations.scss +9 -0
  615. package/src/tokens/_seeds.scss +20 -31
  616. package/src/tokens/_variables.scss +251 -94
  617. package/src/utils/a11y.tsx +69 -69
  618. package/src/utils/aria.ts +3 -3
  619. package/src/utils/canonical-stamp.ts +2 -12
  620. package/src/utils/css-warning.ts +7 -7
  621. package/src/utils/env.ts +25 -0
  622. package/src/utils/keyboard-shortcuts.ts +131 -126
  623. package/src/utils/seed-derivation.ts +11 -14
  624. package/src/utils/theme-presets.ts +5 -12
  625. package/dist/blocks/AccountSettings.block.d.ts +0 -3
  626. package/dist/blocks/AccountSettings.block.d.ts.map +0 -1
  627. package/dist/blocks/ActivityFeedSkeleton.block.d.ts +0 -3
  628. package/dist/blocks/ActivityFeedSkeleton.block.d.ts.map +0 -1
  629. package/dist/blocks/BlogEditor.block.d.ts +0 -3
  630. package/dist/blocks/BlogEditor.block.d.ts.map +0 -1
  631. package/dist/blocks/ChatInterface.block.d.ts +0 -3
  632. package/dist/blocks/ChatInterface.block.d.ts.map +0 -1
  633. package/dist/blocks/ChatMessages.block.d.ts +0 -3
  634. package/dist/blocks/ChatMessages.block.d.ts.map +0 -1
  635. package/dist/blocks/CheckoutForm.block.d.ts +0 -3
  636. package/dist/blocks/CheckoutForm.block.d.ts.map +0 -1
  637. package/dist/blocks/CommandPalette.block.d.ts +0 -3
  638. package/dist/blocks/CommandPalette.block.d.ts.map +0 -1
  639. package/dist/blocks/ContactForm.block.d.ts +0 -3
  640. package/dist/blocks/ContactForm.block.d.ts.map +0 -1
  641. package/dist/blocks/DashboardPage.block.d.ts +0 -3
  642. package/dist/blocks/DashboardPage.block.d.ts.map +0 -1
  643. package/dist/blocks/DashboardSkeleton.block.d.ts +0 -3
  644. package/dist/blocks/DashboardSkeleton.block.d.ts.map +0 -1
  645. package/dist/blocks/DataTable.block.d.ts +0 -3
  646. package/dist/blocks/DataTable.block.d.ts.map +0 -1
  647. package/dist/blocks/EmptyState.block.d.ts +0 -3
  648. package/dist/blocks/EmptyState.block.d.ts.map +0 -1
  649. package/dist/blocks/FAQSection.block.d.ts +0 -3
  650. package/dist/blocks/FAQSection.block.d.ts.map +0 -1
  651. package/dist/blocks/FeatureGrid.block.d.ts +0 -3
  652. package/dist/blocks/FeatureGrid.block.d.ts.map +0 -1
  653. package/dist/blocks/HeroSection.block.d.ts +0 -3
  654. package/dist/blocks/HeroSection.block.d.ts.map +0 -1
  655. package/dist/blocks/NavigationHeader.block.d.ts +0 -3
  656. package/dist/blocks/NavigationHeader.block.d.ts.map +0 -1
  657. package/dist/blocks/PaginatedTable.block.d.ts +0 -3
  658. package/dist/blocks/PaginatedTable.block.d.ts.map +0 -1
  659. package/dist/blocks/PricingComparison.block.d.ts +0 -3
  660. package/dist/blocks/PricingComparison.block.d.ts.map +0 -1
  661. package/dist/blocks/ProductCard.block.d.ts +0 -3
  662. package/dist/blocks/ProductCard.block.d.ts.map +0 -1
  663. package/dist/blocks/RegistrationForm.block.d.ts +0 -3
  664. package/dist/blocks/RegistrationForm.block.d.ts.map +0 -1
  665. package/dist/blocks/SettingsDrawer.block.d.ts +0 -3
  666. package/dist/blocks/SettingsDrawer.block.d.ts.map +0 -1
  667. package/dist/blocks/SettingsPanel.block.d.ts +0 -3
  668. package/dist/blocks/SettingsPanel.block.d.ts.map +0 -1
  669. package/dist/blocks/ShoppingCart.block.d.ts +0 -3
  670. package/dist/blocks/ShoppingCart.block.d.ts.map +0 -1
  671. package/dist/blocks/StatsCardSkeleton.block.d.ts +0 -3
  672. package/dist/blocks/StatsCardSkeleton.block.d.ts.map +0 -1
  673. package/dist/blocks/TableSkeleton.block.d.ts +0 -3
  674. package/dist/blocks/TableSkeleton.block.d.ts.map +0 -1
  675. package/dist/blocks/ThinkingStates.block.d.ts +0 -3
  676. package/dist/blocks/ThinkingStates.block.d.ts.map +0 -1
  677. package/dist/components/Toggle/index.d.ts +0 -3
  678. package/dist/components/Toggle/index.d.ts.map +0 -1
  679. package/src/components/Button/Button.contract.json +0 -218
  680. package/src/components/Card/Card.contract.json +0 -175
  681. package/src/components/DataTable/DataTable.contract.json +0 -302
  682. package/src/components/Dialog/Dialog.contract.json +0 -159
  683. package/src/components/Select/Select.contract.json +0 -259
  684. package/src/components/Toggle/index.ts +0 -7
  685. package/src/tokens/_density.scss +0 -85
@@ -1,17 +1,20 @@
1
- 'use client';
1
+ "use client";
2
2
 
3
- import * as React from 'react';
4
- import { Tooltip as BaseTooltip } from '@base-ui/react/tooltip';
5
- import styles from './Tooltip.module.scss';
3
+ import * as React from "react";
4
+ import { Tooltip as BaseTooltip } from "@base-ui/react/tooltip";
5
+ import styles from "./Tooltip.module.scss";
6
6
 
7
7
  // ============================================
8
8
  // Types
9
9
  // ============================================
10
10
 
11
- export type TooltipSide = 'top' | 'bottom' | 'left' | 'right';
12
- export type TooltipAlign = 'start' | 'center' | 'end';
11
+ export type TooltipSide = "top" | "bottom" | "left" | "right";
12
+ export type TooltipAlign = "start" | "center" | "end";
13
13
 
14
- export interface TooltipProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'content' | 'defaultChecked'> {
14
+ export interface TooltipProps extends Omit<
15
+ React.HTMLAttributes<HTMLDivElement>,
16
+ "content" | "defaultChecked"
17
+ > {
15
18
  /** The element that triggers the tooltip */
16
19
  children: React.ReactElement;
17
20
  /** Content to display in the tooltip */
@@ -76,8 +79,8 @@ const TooltipProviderContext = React.createContext(false);
76
79
  function TooltipRoot({
77
80
  children,
78
81
  content,
79
- side = 'top',
80
- align = 'center',
82
+ side = "top",
83
+ align = "center",
81
84
  sideOffset = 6,
82
85
  delay,
83
86
  closeDelay,
@@ -101,9 +104,9 @@ function TooltipRoot({
101
104
  for (const [key, triggerHandler] of Object.entries(triggerProps)) {
102
105
  const childHandler = childProps[key];
103
106
  if (
104
- key.startsWith('on') &&
105
- typeof triggerHandler === 'function' &&
106
- typeof childHandler === 'function'
107
+ key.startsWith("on") &&
108
+ typeof triggerHandler === "function" &&
109
+ typeof childHandler === "function"
107
110
  ) {
108
111
  mergedProps[key] = (...args: unknown[]) => {
109
112
  (childHandler as (...event: unknown[]) => void)(...args);
@@ -114,7 +117,7 @@ function TooltipRoot({
114
117
 
115
118
  return React.cloneElement(children, mergedProps);
116
119
  },
117
- [children],
120
+ [children]
118
121
  );
119
122
 
120
123
  if (disabled || !children) {
@@ -128,11 +131,7 @@ function TooltipRoot({
128
131
  } = contentProps ?? {};
129
132
 
130
133
  const tooltipNode = (
131
- <BaseTooltip.Root
132
- open={open}
133
- defaultOpen={defaultOpen}
134
- onOpenChange={onOpenChange}
135
- >
134
+ <BaseTooltip.Root open={open} defaultOpen={defaultOpen} onOpenChange={onOpenChange}>
136
135
  <BaseTooltip.Trigger closeOnClick={closeOnClick} render={renderTrigger} />
137
136
  <BaseTooltip.Portal>
138
137
  <BaseTooltip.Positioner
@@ -144,7 +143,7 @@ function TooltipRoot({
144
143
  <BaseTooltip.Popup
145
144
  {...htmlProps}
146
145
  {...contentHtmlProps}
147
- className={[styles.popup, className, contentClassName].filter(Boolean).join(' ')}
146
+ className={[styles.popup, className, contentClassName].filter(Boolean).join(" ")}
148
147
  style={{ ...(style ?? {}), ...(contentStyle ?? {}) }}
149
148
  >
150
149
  {content}
@@ -192,11 +191,7 @@ export function TooltipProvider({
192
191
 
193
192
  return (
194
193
  <TooltipProviderContext.Provider value={true}>
195
- <BaseTooltip.Provider
196
- delay={resolvedDelay}
197
- closeDelay={closeDelay}
198
- timeout={resolvedTimeout}
199
- >
194
+ <BaseTooltip.Provider delay={resolvedDelay} closeDelay={closeDelay} timeout={resolvedTimeout}>
200
195
  {children}
201
196
  </BaseTooltip.Provider>
202
197
  </TooltipProviderContext.Provider>
@@ -1,22 +1,13 @@
1
1
  {
2
2
  "$schema": "https://usefragments.com/schemas/contract.v1.json",
3
3
  "name": "VisuallyHidden",
4
- "description": "Hides content visually while keeping it accessible to screen readers. Essential for accessible icon-only buttons and supplementary text.",
5
- "category": "navigation",
6
- "tags": [
7
- "accessibility",
8
- "a11y",
9
- "screen-reader",
10
- "hidden",
11
- "sr-only"
12
- ],
4
+ "description": "Keeps text in the accessibility tree while taking it off the screen.",
5
+ "category": "utilities",
6
+ "tags": ["accessibility", "a11y", "screen-reader", "hidden", "sr-only"],
13
7
  "status": "stable",
14
8
  "sourcePath": "src/components/VisuallyHidden/index.tsx",
15
9
  "exportName": "VisuallyHidden",
16
- "propsSummary": [
17
- "children: node (required)",
18
- "as: span|div (default: span)"
19
- ],
10
+ "propsSummary": ["children: node (required)", "as: span|div (default: span)"],
20
11
  "props": {
21
12
  "children": {
22
13
  "type": "node",
@@ -28,53 +19,45 @@
28
19
  "description": "HTML element to render",
29
20
  "default": "span",
30
21
  "required": false,
31
- "values": [
32
- "span",
33
- "div"
34
- ]
22
+ "values": ["span", "div"]
35
23
  }
36
24
  },
37
25
  "usage": {
38
26
  "when": [
39
- "Providing accessible labels for icon-only buttons",
40
- "Adding context that screen readers need but sighted users don't",
41
- "Hiding decorative content while providing text alternatives",
42
- "Skip links for keyboard navigation"
27
+ "An icon-only control needs a name",
28
+ "A link's text is vague out of context",
29
+ "A skip link needs to hide until focused"
43
30
  ],
44
31
  "whenNot": [
45
- "Hiding content from everyone (use display: none or conditional render)",
46
- "Content that should be visible on focus (use focus-visible styles)",
47
- "Temporarily hidden content (use proper ARIA attributes)",
48
- "Lazy-loaded content (use suspense or loading states)"
32
+ "Nobody should see or hear it (render nothing)",
33
+ "The content is just collapsed (use aria-expanded)"
49
34
  ],
50
35
  "guidelines": [
51
- "Always use with icon-only interactive elements",
52
- "Keep hidden text concise but descriptive",
53
- "Test with screen readers to verify announcements",
54
- "Don't overuse; visible text is often better",
55
- "VisuallyHidden forwards DOM props and className to the rendered element"
36
+ "Every icon-only button gets one",
37
+ "Say the action, not the icon: \"Search\", not \"magnifier\"",
38
+ "Keep it short it is read aloud",
39
+ "Visible text beats hidden text whenever there is room"
56
40
  ],
57
41
  "accessibility": [
58
- "Content is announced by screen readers",
59
- "Content is focusable if interactive elements are inside",
60
- "Essential for WCAG 2.1 compliance with icon-only controls",
61
- "Must convey equivalent information to visual content"
42
+ "Screen readers announce it; the layout never moves",
43
+ "Focusable children inside still receive focus",
44
+ "Required for WCAG 2.1 on icon-only controls"
62
45
  ]
63
46
  },
64
47
  "examples": [
65
48
  {
66
49
  "name": "Icon Button Label",
67
- "description": "Accessible label for icon-only button",
50
+ "description": "The only thing telling a screen reader what this button does.",
68
51
  "code": "<button style={{\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n width: '40px',\n height: '40px',\n border: '1px solid var(--fui-border-default)',\n borderRadius: '8px',\n background: 'var(--fui-color-surface-primary)',\n cursor: 'pointer'\n}}>\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\">\n <path d=\"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z\" />\n </svg>\n <VisuallyHidden>Search</VisuallyHidden>\n</button>"
69
52
  },
70
53
  {
71
54
  "name": "Supplementary Text",
72
- "description": "Additional context for screen readers",
55
+ "description": "Gives a vague link the context sighted readers get from layout.",
73
56
  "code": "<a href=\"#\" style={{ color: 'var(--fui-color-accent)' }}>\n Read more\n <VisuallyHidden> about our accessibility features</VisuallyHidden>\n</a>"
74
57
  },
75
58
  {
76
59
  "name": "Skip Link",
77
- "description": "Navigation aid that becomes visible on focus",
60
+ "description": "Hidden until focused, then it jumps keyboard users past the nav.",
78
61
  "code": "<div>\n <VisuallyHidden as=\"div\">\n <a\n href=\"#main-content\"\n style={{\n position: 'absolute',\n padding: '8px 16px',\n background: 'var(--fui-color-accent)',\n color: 'white'\n }}\n >\n Skip to main content\n </a>\n </VisuallyHidden>\n <p style={{ color: 'var(--fui-color-text-tertiary)', fontSize: '14px' }}>\n (Screen reader only: \"Skip to main content\" link)\n </p>\n</div>"
79
62
  }
80
63
  ],
@@ -96,16 +79,11 @@
96
79
  "as: span|div - HTML element",
97
80
  "Forwards standard DOM props (id, aria-*, data-*, className, handlers)"
98
81
  ],
99
- "a11yRules": [
100
- "A11Y_SR_ONLY",
101
- "A11Y_ICON_LABEL"
102
- ]
82
+ "a11yRules": ["A11Y_SR_ONLY", "A11Y_ICON_LABEL"]
103
83
  },
104
84
  "ai": {
105
85
  "compositionPattern": "compound",
106
- "subComponents": [
107
- "Root"
108
- ]
86
+ "subComponents": ["Root"]
109
87
  },
110
88
  "provenance": {
111
89
  "source": "migrated",
@@ -1,16 +1,6 @@
1
- // Screen reader only - hides content visually but keeps it accessible
2
- // Based on the widely-used sr-only pattern
1
+ @use "../../tokens/mixins" as *;
2
+
3
+ // Screen reader only - hides content visually but keeps it accessible.
3
4
  .visuallyHidden {
4
- position: absolute;
5
- /* fragments-allow FUI2004 reason="Accessibility clipping box must remain exactly one CSS pixel" expires="2027-08-01" */
6
- width: 1px;
7
- /* fragments-allow FUI2004 reason="Accessibility clipping box must remain exactly one CSS pixel" expires="2027-08-01" */
8
- height: 1px;
9
- padding: 0;
10
- /* fragments-allow FUI2004 reason="Negative offset keeps the clipping box outside visual layout" expires="2027-08-01" */
11
- margin: -1px;
12
- overflow: hidden;
13
- clip: rect(0, 0, 0, 0);
14
- white-space: nowrap;
15
- border-width: 0;
5
+ @include visually-hidden;
16
6
  }
@@ -1,10 +1,10 @@
1
- import * as React from 'react';
2
- import styles from './VisuallyHidden.module.scss';
1
+ import * as React from "react";
2
+ import styles from "./VisuallyHidden.module.scss";
3
3
 
4
4
  export interface VisuallyHiddenProps extends React.HTMLAttributes<HTMLElement> {
5
5
  children: React.ReactNode;
6
6
  /** HTML element to render */
7
- as?: 'span' | 'div';
7
+ as?: "span" | "div";
8
8
  }
9
9
 
10
10
  /**
@@ -19,12 +19,12 @@ export interface VisuallyHiddenProps extends React.HTMLAttributes<HTMLElement> {
19
19
  * </Button>
20
20
  */
21
21
  const VisuallyHiddenRoot = React.forwardRef<HTMLElement, VisuallyHiddenProps>(
22
- function VisuallyHidden({ children, as: Component = 'span', className, ...htmlProps }, ref) {
22
+ function VisuallyHidden({ children, as: Component = "span", className, ...htmlProps }, ref) {
23
23
  return (
24
24
  <Component
25
25
  ref={ref as React.Ref<never>}
26
26
  {...htmlProps}
27
- className={[styles.visuallyHidden, className].filter(Boolean).join(' ')}
27
+ className={[styles.visuallyHidden, className].filter(Boolean).join(" ")}
28
28
  >
29
29
  {children}
30
30
  </Component>
package/src/index.ts CHANGED
@@ -41,7 +41,7 @@ export {
41
41
  AlertAction,
42
42
  AlertClose,
43
43
  type AlertProps,
44
- type AlertSeverity,
44
+ type AlertTone,
45
45
  type AlertIconProps,
46
46
  type AlertBodyProps,
47
47
  type AlertTitleProps,
@@ -50,7 +50,7 @@ export {
50
50
  type AlertActionProps,
51
51
  type AlertCloseProps,
52
52
  } from "./components/Alert";
53
- export { Badge, type BadgeProps } from "./components/Badge";
53
+ export { Badge, type BadgeProps, type BadgeTone, type BadgeVariant } from "./components/Badge";
54
54
  export { IconButton, type IconButtonProps } from "./components/IconButton";
55
55
  export {
56
56
  ComponentDefaultsProvider,
@@ -216,7 +216,7 @@ export {
216
216
  Skeleton,
217
217
  type SkeletonProps,
218
218
  type SkeletonTextProps,
219
- type SkeletonVariant,
219
+ type SkeletonShape,
220
220
  type SkeletonSize,
221
221
  } from "./components/Skeleton";
222
222
 
@@ -228,7 +228,7 @@ export {
228
228
  LoadingScreen,
229
229
  type LoadingProps,
230
230
  type LoadingSize,
231
- type LoadingVariant,
231
+ type LoadingKind,
232
232
  type LoadingInlineProps,
233
233
  type LoadingScreenProps,
234
234
  } from "./components/Loading";
@@ -289,7 +289,7 @@ export {
289
289
  type ToastProps,
290
290
  type ToastProviderProps,
291
291
  type ToastData,
292
- type ToastVariant,
292
+ type ToastTone,
293
293
  type ToastPosition,
294
294
  } from "./components/Toast";
295
295
 
@@ -344,15 +344,16 @@ export {
344
344
  Theme,
345
345
  ThemeProvider,
346
346
  ThemeToggle,
347
+ ThemeButton,
347
348
  useTheme,
348
349
  configureTheme,
349
350
  type ThemeProviderProps,
350
351
  type ThemeToggleProps,
352
+ type ThemeButtonProps,
351
353
  type ThemeMode,
352
354
  type UseThemeReturn,
353
355
  type ConfigureThemeOptions,
354
356
  type NeutralPalette,
355
- type DensityPreset,
356
357
  type RadiusStyle,
357
358
  } from "./components/Theme";
358
359
 
@@ -559,7 +560,7 @@ export {
559
560
  ThinkingStep,
560
561
  useThinkingIndicatorContext,
561
562
  type ThinkingIndicatorProps,
562
- type ThinkingVariant,
563
+ type ThinkingKind,
563
564
  type ThinkingStep as ThinkingStepType,
564
565
  type StepStatus,
565
566
  type ThinkingStepsProps,
@@ -584,6 +585,12 @@ export {
584
585
  // Assets
585
586
  export { FragmentsLogo, fragmentsLogoSvg, type FragmentsLogoProps } from "./assets/fragments-logo";
586
587
  export { FragmentsWordmark, type FragmentsWordmarkProps } from "./assets/fragments-wordmark";
588
+ export {
589
+ NavGlyph,
590
+ NAV_GLYPH_NAMES,
591
+ type NavGlyphName,
592
+ type NavGlyphProps,
593
+ } from "./assets/nav-glyph";
587
594
 
588
595
  // NavigationMenu
589
596
  export {
@@ -678,8 +685,8 @@ export {
678
685
  usePrefersContrast,
679
686
  useFocusTrap,
680
687
  handleArrowNavigation,
681
- VisuallyHidden as A11yVisuallyHidden,
682
- type VisuallyHiddenProps as A11yVisuallyHiddenProps,
688
+ A11yVisuallyHidden,
689
+ type A11yVisuallyHiddenProps,
683
690
  } from "./utils/a11y";
684
691
 
685
692
  // Keyboard Shortcuts
@@ -728,6 +735,3 @@ export {
728
735
  type ThemeConfig,
729
736
  type PresetDefinition,
730
737
  } from "./utils/theme-presets";
731
-
732
- // Legacy aliases (deprecated)
733
- export { Switch as Toggle, type SwitchProps as ToggleProps } from "./components/Switch";
@@ -30,21 +30,20 @@
30
30
  }
31
31
 
32
32
  .eyebrow {
33
- margin: 0;
33
+ margin: var(--fui-raw-space-0, #{measurements.raw-space(0)});
34
34
  color: var(--fui-text-tertiary, #{tokens.$fui-text-tertiary});
35
- text-transform: uppercase;
36
35
  }
37
36
 
38
37
  .title {
39
38
  @include typography.role("title-lg");
40
39
 
41
- margin: 0;
40
+ margin: var(--fui-raw-space-0, #{measurements.raw-space(0)});
42
41
  }
43
42
 
44
43
  .description {
45
44
  @include typography.role("body-compact");
46
45
 
47
- margin: 0;
46
+ margin: var(--fui-raw-space-0, #{measurements.raw-space(0)});
48
47
  color: var(--fui-text-secondary, #{tokens.$fui-text-secondary});
49
48
  }
50
49
 
@@ -78,7 +77,7 @@
78
77
  .sectionTitle {
79
78
  @include typography.role("title-sm");
80
79
 
81
- margin: 0;
80
+ margin: var(--fui-raw-space-0, #{measurements.raw-space(0)});
82
81
  }
83
82
 
84
83
  .specimenList {
@@ -99,7 +98,7 @@
99
98
 
100
99
  .specimenName,
101
100
  .specimenValue {
102
- margin: 0;
101
+ margin: var(--fui-raw-space-0, #{measurements.raw-space(0)});
103
102
  }
104
103
 
105
104
  .specimenName {
@@ -188,7 +187,7 @@
188
187
  }
189
188
 
190
189
  .typographySample {
191
- margin: 0;
190
+ margin: var(--fui-raw-space-0, #{measurements.raw-space(0)});
192
191
  overflow-wrap: anywhere;
193
192
  }
194
193
 
@@ -1,98 +1,30 @@
1
1
  // This file is generated by scripts/generate-measurements.mjs. Do not edit.
2
- // Source SHA-256: 1e8a256c12eaf2f8f4a2a5c4ed25477bf303b56dc2184ac3e29dec71207853bd
2
+ // Source SHA-256: 2783cbbef495c746894385914699542d96008deb952c3f3ab6adf84bf3fac80d
3
3
 
4
4
  export const MEASUREMENT_PROFILES = {
5
- density: {
6
- compact: {
7
- baseUnit: "6px",
8
- baseFontSize: "14px",
9
- spacingMultipliers: {
10
- "1": 1,
11
- "2": 2,
12
- "3": 3,
13
- "4": 4,
14
- "5": 5,
15
- "6": 6,
16
- "8": 8,
17
- "10": 10,
18
- "12": 12,
19
- px: "1px",
20
- "0-5": 0.3,
21
- "0-75": 0.43,
22
- },
23
- controlHeight: {
24
- xs: "32px",
25
- sm: "32px",
26
- md: "32px",
27
- lg: "36px",
28
- },
29
- touch: {
30
- sm: "32px",
31
- md: "32px",
32
- lg: "40px",
33
- },
34
- sidebarItemHeight: "32px",
5
+ spacing: {
6
+ baseUnit: "7px",
7
+ baseFontSize: "14px",
8
+ multipliers: {
9
+ "1": 1,
10
+ "2": 2,
11
+ "3": 3,
12
+ "4": 4,
13
+ "5": 5,
14
+ "6": 6,
15
+ "8": 8,
16
+ "10": 10,
17
+ "12": 12,
18
+ px: "1px",
19
+ "0-5": 0.3,
20
+ "0-75": 0.43,
35
21
  },
36
- default: {
37
- baseUnit: "7px",
38
- baseFontSize: "14px",
39
- spacingMultipliers: {
40
- "1": 1,
41
- "2": 2,
42
- "3": 3,
43
- "4": 4,
44
- "5": 5,
45
- "6": 6,
46
- "8": 8,
47
- "10": 10,
48
- "12": 12,
49
- px: "1px",
50
- "0-5": 0.3,
51
- "0-75": 0.43,
52
- },
53
- controlHeight: {
54
- xs: "32px",
55
- sm: "32px",
56
- md: "40px",
57
- lg: "44px",
58
- },
59
- touch: {
60
- sm: "32px",
61
- md: "32px",
62
- lg: "44px",
63
- },
64
- sidebarItemHeight: "32px",
65
- },
66
- relaxed: {
67
- baseUnit: "8px",
68
- baseFontSize: "14px",
69
- spacingMultipliers: {
70
- "1": 1,
71
- "2": 2,
72
- "3": 3,
73
- "4": 4,
74
- "5": 5,
75
- "6": 6,
76
- "8": 8,
77
- "10": 10,
78
- "12": 12,
79
- px: "1px",
80
- "0-5": 0.3,
81
- "0-75": 0.43,
82
- },
83
- controlHeight: {
84
- xs: "32px",
85
- sm: "32px",
86
- md: "44px",
87
- lg: "48px",
88
- },
89
- touch: {
90
- sm: "32px",
91
- md: "40px",
92
- lg: "48px",
93
- },
94
- sidebarItemHeight: "36px",
22
+ touch: {
23
+ sm: "32px",
24
+ md: "32px",
25
+ lg: "44px",
95
26
  },
27
+ sidebarItemHeight: "32px",
96
28
  },
97
29
  radius: {
98
30
  sharp: {
@@ -182,10 +114,26 @@ export const MEASUREMENT_PROFILES = {
182
114
  "field-minimum": "140px",
183
115
  "inline-floor": "56px",
184
116
  "compact-content": "168px",
117
+ "menu-min": "192px",
185
118
  "grid-cell": "224px",
186
119
  "composer-item": "210px",
187
120
  "page-narrow": "800px",
188
121
  },
122
+ overlay: {
123
+ "popover-min": "192px",
124
+ "popover-sm": "256px",
125
+ "popover-md": "384px",
126
+ "popover-lg": "512px",
127
+ "tooltip-max": "320px",
128
+ "dialog-sm": "384px",
129
+ "dialog-md": "448px",
130
+ "dialog-lg": "576px",
131
+ "dialog-xl": "768px",
132
+ "drawer-sm": "320px",
133
+ "drawer-md": "384px",
134
+ "drawer-lg": "512px",
135
+ "drawer-xl": "768px",
136
+ },
189
137
  },
190
138
  typography: {
191
139
  caption: {
@@ -218,6 +166,12 @@ export const MEASUREMENT_PROFILES = {
218
166
  weight: 400,
219
167
  tracking: "0",
220
168
  },
169
+ display: {
170
+ size: "32px",
171
+ line: "40px",
172
+ weight: 600,
173
+ tracking: "-0.02em",
174
+ },
221
175
  "title-sm": {
222
176
  size: "16px",
223
177
  line: "24px",
@@ -254,11 +208,9 @@ export const MEASUREMENT_PROFILES = {
254
208
  },
255
209
  } as const;
256
210
 
257
- export type MeasurementDensity = keyof typeof MEASUREMENT_PROFILES.density;
258
211
  export type MeasurementRadiusStyle = keyof typeof MEASUREMENT_PROFILES.radius;
259
212
 
260
213
  export type MeasurementSelection = Readonly<{
261
- density?: MeasurementDensity;
262
214
  radiusStyle?: MeasurementRadiusStyle;
263
215
  }>;
264
216
 
@@ -273,7 +225,7 @@ export function measurementPx(value: string, path = "measurement"): number {
273
225
  return pixels;
274
226
  }
275
227
 
276
- type MeasurementAttribute = "data-fui-density" | "data-fui-radius-style";
228
+ type MeasurementAttribute = "data-fui-radius-style";
277
229
 
278
230
  function setRestorableAttribute(
279
231
  element: HTMLElement,
@@ -299,9 +251,6 @@ export function applyMeasurementSelection(
299
251
  ): () => void {
300
252
  const restore: Array<() => void> = [];
301
253
 
302
- if (selection.density !== undefined) {
303
- restore.push(setRestorableAttribute(element, "data-fui-density", selection.density));
304
- }
305
254
  if (selection.radiusStyle !== undefined) {
306
255
  restore.push(setRestorableAttribute(element, "data-fui-radius-style", selection.radiusStyle));
307
256
  }
@@ -311,7 +260,7 @@ export function applyMeasurementSelection(
311
260
  if (cleaned) return;
312
261
  cleaned = true;
313
262
  for (let index = restore.length - 1; index >= 0; index -= 1) {
314
- restore[index]();
263
+ restore[index]?.();
315
264
  }
316
265
  };
317
266
  }
@@ -2,7 +2,6 @@ export {
2
2
  MEASUREMENT_PROFILES,
3
3
  applyMeasurementSelection,
4
4
  measurementPx,
5
- type MeasurementDensity,
6
5
  type MeasurementRadiusStyle,
7
6
  type MeasurementSelection,
8
7
  } from "./generated";