@usefragments/ui 1.5.4 → 1.7.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 (667) hide show
  1. package/README.md +4 -4
  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/ui.css +10468 -6909
  6. package/dist/chart.cjs +31 -26
  7. package/dist/chart.js +31 -26
  8. package/dist/codeblock.cjs +55 -29
  9. package/dist/codeblock.js +55 -29
  10. package/dist/colorpicker.cjs +5 -2
  11. package/dist/colorpicker.js +5 -2
  12. package/dist/components/Accordion/Accordion.module.scss.cjs +8 -8
  13. package/dist/components/Accordion/Accordion.module.scss.js +8 -8
  14. package/dist/components/Alert/Alert.module.scss.cjs +15 -12
  15. package/dist/components/Alert/Alert.module.scss.js +15 -12
  16. package/dist/components/Alert/index.cjs +7 -1
  17. package/dist/components/Alert/index.d.ts +12 -6
  18. package/dist/components/Alert/index.d.ts.map +1 -1
  19. package/dist/components/Alert/index.js +7 -1
  20. package/dist/components/AppShell/AppShell.module.scss.cjs +14 -14
  21. package/dist/components/AppShell/AppShell.module.scss.js +14 -14
  22. package/dist/components/AppShell/index.cjs +5 -3
  23. package/dist/components/AppShell/index.d.ts +4 -2
  24. package/dist/components/AppShell/index.d.ts.map +1 -1
  25. package/dist/components/AppShell/index.js +5 -3
  26. package/dist/components/Avatar/Avatar.module.scss.cjs +17 -14
  27. package/dist/components/Avatar/Avatar.module.scss.js +17 -14
  28. package/dist/components/Avatar/index.cjs +100 -118
  29. package/dist/components/Avatar/index.d.ts +7 -5
  30. package/dist/components/Avatar/index.d.ts.map +1 -1
  31. package/dist/components/Avatar/index.js +100 -118
  32. package/dist/components/Badge/Badge.module.scss.cjs +19 -19
  33. package/dist/components/Badge/Badge.module.scss.js +19 -19
  34. package/dist/components/BentoGrid/BentoGrid.module.scss.cjs +14 -14
  35. package/dist/components/BentoGrid/BentoGrid.module.scss.js +14 -14
  36. package/dist/components/Box/Box.module.scss.cjs +152 -152
  37. package/dist/components/Box/Box.module.scss.js +152 -152
  38. package/dist/components/Box/index.cjs +64 -75
  39. package/dist/components/Box/index.d.ts +16 -16
  40. package/dist/components/Box/index.d.ts.map +1 -1
  41. package/dist/components/Box/index.js +64 -75
  42. package/dist/components/Breadcrumbs/Breadcrumbs.module.scss.cjs +8 -8
  43. package/dist/components/Breadcrumbs/Breadcrumbs.module.scss.js +8 -8
  44. package/dist/components/Button/Button.module.scss.cjs +14 -14
  45. package/dist/components/Button/Button.module.scss.js +14 -14
  46. package/dist/components/ButtonGroup/ButtonGroup.module.scss.cjs +15 -15
  47. package/dist/components/ButtonGroup/ButtonGroup.module.scss.js +15 -15
  48. package/dist/components/Card/Card.module.scss.cjs +30 -18
  49. package/dist/components/Card/Card.module.scss.js +31 -19
  50. package/dist/components/Card/index.cjs +8 -0
  51. package/dist/components/Card/index.d.ts +12 -2
  52. package/dist/components/Card/index.d.ts.map +1 -1
  53. package/dist/components/Card/index.js +8 -0
  54. package/dist/components/Chart/Chart.module.scss.cjs +15 -15
  55. package/dist/components/Chart/Chart.module.scss.js +15 -15
  56. package/dist/components/Chart/index.d.ts +7 -7
  57. package/dist/components/Chart/index.d.ts.map +1 -1
  58. package/dist/components/Checkbox/Checkbox.module.scss.cjs +9 -15
  59. package/dist/components/Checkbox/Checkbox.module.scss.js +9 -15
  60. package/dist/components/Checkbox/index.cjs +6 -8
  61. package/dist/components/Checkbox/index.d.ts.map +1 -1
  62. package/dist/components/Checkbox/index.js +6 -8
  63. package/dist/components/Chip/Chip.module.scss.cjs +15 -15
  64. package/dist/components/Chip/Chip.module.scss.js +15 -15
  65. package/dist/components/Chip/index.cjs +6 -6
  66. package/dist/components/Chip/index.d.ts +1 -1
  67. package/dist/components/Chip/index.js +4 -4
  68. package/dist/components/CodeBlock/CodeBlock.module.scss.cjs +27 -24
  69. package/dist/components/CodeBlock/CodeBlock.module.scss.js +27 -24
  70. package/dist/components/CodeBlock/css-variables-theme.cjs +98 -0
  71. package/dist/components/CodeBlock/css-variables-theme.d.ts +27 -0
  72. package/dist/components/CodeBlock/css-variables-theme.d.ts.map +1 -0
  73. package/dist/components/CodeBlock/css-variables-theme.js +98 -0
  74. package/dist/components/CodeBlock/index.d.ts +17 -3
  75. package/dist/components/CodeBlock/index.d.ts.map +1 -1
  76. package/dist/components/Collapsible/Collapsible.module.scss.cjs +9 -12
  77. package/dist/components/Collapsible/Collapsible.module.scss.js +9 -12
  78. package/dist/components/Collapsible/index.cjs +3 -2
  79. package/dist/components/Collapsible/index.d.ts +3 -3
  80. package/dist/components/Collapsible/index.d.ts.map +1 -1
  81. package/dist/components/Collapsible/index.js +3 -2
  82. package/dist/components/ColorPicker/ColorPicker.module.scss.cjs +16 -16
  83. package/dist/components/ColorPicker/ColorPicker.module.scss.js +16 -16
  84. package/dist/components/ColorPicker/index.d.ts.map +1 -1
  85. package/dist/components/Combobox/Combobox.module.scss.cjs +21 -27
  86. package/dist/components/Combobox/Combobox.module.scss.js +21 -27
  87. package/dist/components/Combobox/index.cjs +21 -5
  88. package/dist/components/Combobox/index.d.ts.map +1 -1
  89. package/dist/components/Combobox/index.js +21 -5
  90. package/dist/components/Command/Command.module.scss.cjs +11 -11
  91. package/dist/components/Command/Command.module.scss.js +11 -11
  92. package/dist/components/Command/index.cjs +26 -15
  93. package/dist/components/Command/index.d.ts +2 -2
  94. package/dist/components/Command/index.d.ts.map +1 -1
  95. package/dist/components/Command/index.js +26 -15
  96. package/dist/components/ConversationList/ConversationList.module.scss.cjs +11 -14
  97. package/dist/components/ConversationList/ConversationList.module.scss.js +11 -14
  98. package/dist/components/ConversationList/index.cjs +40 -44
  99. package/dist/components/ConversationList/index.d.ts +3 -3
  100. package/dist/components/ConversationList/index.d.ts.map +1 -1
  101. package/dist/components/ConversationList/index.js +40 -44
  102. package/dist/components/DataTable/DataTable.icons.cjs +6 -33
  103. package/dist/components/DataTable/DataTable.icons.d.ts.map +1 -1
  104. package/dist/components/DataTable/DataTable.icons.js +6 -33
  105. package/dist/components/DataTable/DataTable.module.scss.cjs +32 -56
  106. package/dist/components/DataTable/DataTable.module.scss.js +32 -56
  107. package/dist/components/DataTable/index.d.ts +5 -4
  108. package/dist/components/DataTable/index.d.ts.map +1 -1
  109. package/dist/components/DatePicker/DatePicker.module.scss.cjs +33 -33
  110. package/dist/components/DatePicker/DatePicker.module.scss.js +33 -33
  111. package/dist/components/DatePicker/index.d.ts.map +1 -1
  112. package/dist/components/Dialog/Dialog.module.scss.cjs +14 -14
  113. package/dist/components/Dialog/Dialog.module.scss.js +14 -14
  114. package/dist/components/Dialog/index.cjs +11 -14
  115. package/dist/components/Dialog/index.d.ts +7 -7
  116. package/dist/components/Dialog/index.d.ts.map +1 -1
  117. package/dist/components/Dialog/index.js +11 -14
  118. package/dist/components/Drawer/Drawer.module.scss.cjs +31 -28
  119. package/dist/components/Drawer/Drawer.module.scss.js +31 -28
  120. package/dist/components/Drawer/index.cjs +1 -1
  121. package/dist/components/Drawer/index.js +1 -1
  122. package/dist/components/Editor/Editor.module.scss.cjs +23 -23
  123. package/dist/components/Editor/Editor.module.scss.js +23 -23
  124. package/dist/components/Editor/index.d.ts +10 -10
  125. package/dist/components/Editor/index.d.ts.map +1 -1
  126. package/dist/components/EmptyState/EmptyState.module.scss.cjs +15 -12
  127. package/dist/components/EmptyState/EmptyState.module.scss.js +15 -12
  128. package/dist/components/EmptyState/index.cjs +8 -6
  129. package/dist/components/EmptyState/index.d.ts +9 -4
  130. package/dist/components/EmptyState/index.d.ts.map +1 -1
  131. package/dist/components/EmptyState/index.js +8 -6
  132. package/dist/components/Field/Field.module.scss.cjs +8 -5
  133. package/dist/components/Field/Field.module.scss.js +8 -5
  134. package/dist/components/Field/index.cjs +18 -1
  135. package/dist/components/Field/index.d.ts +9 -2
  136. package/dist/components/Field/index.d.ts.map +1 -1
  137. package/dist/components/Field/index.js +18 -1
  138. package/dist/components/Fieldset/Fieldset.module.scss.cjs +3 -3
  139. package/dist/components/Fieldset/Fieldset.module.scss.js +3 -3
  140. package/dist/components/Form/Form.module.scss.cjs +5 -2
  141. package/dist/components/Form/Form.module.scss.js +5 -2
  142. package/dist/components/Form/index.cjs +6 -1
  143. package/dist/components/Form/index.d.ts +8 -3
  144. package/dist/components/Form/index.d.ts.map +1 -1
  145. package/dist/components/Form/index.js +6 -1
  146. package/dist/components/Grid/Grid.module.scss.cjs +54 -72
  147. package/dist/components/Grid/Grid.module.scss.js +54 -72
  148. package/dist/components/Grid/index.cjs +57 -77
  149. package/dist/components/Grid/index.d.ts +11 -11
  150. package/dist/components/Grid/index.d.ts.map +1 -1
  151. package/dist/components/Grid/index.js +57 -77
  152. package/dist/components/Header/Header.module.scss.cjs +33 -33
  153. package/dist/components/Header/Header.module.scss.js +33 -33
  154. package/dist/components/Header/index.cjs +18 -38
  155. package/dist/components/Header/index.d.ts +15 -11
  156. package/dist/components/Header/index.d.ts.map +1 -1
  157. package/dist/components/Header/index.js +18 -38
  158. package/dist/components/Icon/Icon.module.scss.cjs +29 -8
  159. package/dist/components/Icon/Icon.module.scss.js +30 -9
  160. package/dist/components/Icon/index.cjs +30 -48
  161. package/dist/components/Icon/index.d.ts +6 -6
  162. package/dist/components/Icon/index.d.ts.map +1 -1
  163. package/dist/components/Icon/index.js +30 -48
  164. package/dist/components/IconButton/IconButton.module.scss.cjs +8 -8
  165. package/dist/components/IconButton/IconButton.module.scss.js +8 -8
  166. package/dist/components/IconButton/index.cjs +2 -1
  167. package/dist/components/IconButton/index.d.ts.map +1 -1
  168. package/dist/components/IconButton/index.js +2 -1
  169. package/dist/components/Image/Image.module.scss.cjs +27 -27
  170. package/dist/components/Image/Image.module.scss.js +27 -27
  171. package/dist/components/Input/Input.module.scss.cjs +19 -25
  172. package/dist/components/Input/Input.module.scss.js +19 -25
  173. package/dist/components/Input/index.cjs +1 -2
  174. package/dist/components/Input/index.d.ts.map +1 -1
  175. package/dist/components/Input/index.js +1 -2
  176. package/dist/components/Link/Link.module.scss.cjs +14 -10
  177. package/dist/components/Link/Link.module.scss.js +14 -10
  178. package/dist/components/Link/index.d.ts +1 -1
  179. package/dist/components/Link/index.d.ts.map +1 -1
  180. package/dist/components/List/List.module.scss.cjs +19 -19
  181. package/dist/components/List/List.module.scss.js +19 -19
  182. package/dist/components/List/index.cjs +4 -7
  183. package/dist/components/List/index.d.ts.map +1 -1
  184. package/dist/components/List/index.js +4 -7
  185. package/dist/components/Listbox/Listbox.module.scss.cjs +9 -9
  186. package/dist/components/Listbox/Listbox.module.scss.js +9 -9
  187. package/dist/components/Loading/Loading.module.scss.cjs +34 -34
  188. package/dist/components/Loading/Loading.module.scss.js +34 -34
  189. package/dist/components/Loading/index.cjs +39 -67
  190. package/dist/components/Loading/index.d.ts +6 -6
  191. package/dist/components/Loading/index.d.ts.map +1 -1
  192. package/dist/components/Loading/index.js +39 -67
  193. package/dist/components/Main/Main.module.scss.cjs +7 -7
  194. package/dist/components/Main/Main.module.scss.js +7 -7
  195. package/dist/components/Markdown/Markdown.module.scss.cjs +1 -1
  196. package/dist/components/Markdown/Markdown.module.scss.js +1 -1
  197. package/dist/components/Markdown/index.d.ts +2 -2
  198. package/dist/components/Markdown/index.d.ts.map +1 -1
  199. package/dist/components/Menu/Menu.module.scss.cjs +16 -16
  200. package/dist/components/Menu/Menu.module.scss.js +16 -16
  201. package/dist/components/Menu/index.cjs +19 -61
  202. package/dist/components/Menu/index.d.ts +10 -10
  203. package/dist/components/Menu/index.d.ts.map +1 -1
  204. package/dist/components/Menu/index.js +19 -61
  205. package/dist/components/Message/Message.module.scss.cjs +18 -21
  206. package/dist/components/Message/Message.module.scss.js +18 -21
  207. package/dist/components/Message/index.cjs +15 -2
  208. package/dist/components/Message/index.d.ts.map +1 -1
  209. package/dist/components/Message/index.js +15 -2
  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 +18 -9
  217. package/dist/components/Pagination/Pagination.module.scss.js +19 -10
  218. package/dist/components/Pagination/index.cjs +5 -2
  219. package/dist/components/Pagination/index.d.ts +3 -1
  220. package/dist/components/Pagination/index.d.ts.map +1 -1
  221. package/dist/components/Pagination/index.js +5 -2
  222. package/dist/components/Popover/Popover.module.scss.cjs +10 -10
  223. package/dist/components/Popover/Popover.module.scss.js +10 -10
  224. package/dist/components/Progress/Progress.module.scss.cjs +29 -32
  225. package/dist/components/Progress/Progress.module.scss.js +29 -32
  226. package/dist/components/Progress/geometry.cjs +30 -0
  227. package/dist/components/Progress/geometry.d.ts +8 -0
  228. package/dist/components/Progress/geometry.d.ts.map +1 -0
  229. package/dist/components/Progress/geometry.js +30 -0
  230. package/dist/components/Progress/index.cjs +40 -29
  231. package/dist/components/Progress/index.d.ts +4 -3
  232. package/dist/components/Progress/index.d.ts.map +1 -1
  233. package/dist/components/Progress/index.js +40 -29
  234. package/dist/components/Prompt/Prompt.module.scss.cjs +29 -29
  235. package/dist/components/Prompt/Prompt.module.scss.js +29 -29
  236. package/dist/components/Prompt/index.cjs +5 -4
  237. package/dist/components/Prompt/index.d.ts.map +1 -1
  238. package/dist/components/Prompt/index.js +5 -4
  239. package/dist/components/RadioGroup/RadioGroup.module.scss.cjs +15 -21
  240. package/dist/components/RadioGroup/RadioGroup.module.scss.js +15 -21
  241. package/dist/components/RadioGroup/index.cjs +7 -6
  242. package/dist/components/RadioGroup/index.d.ts.map +1 -1
  243. package/dist/components/RadioGroup/index.js +7 -6
  244. package/dist/components/ScrollArea/ScrollArea.module.scss.cjs +7 -22
  245. package/dist/components/ScrollArea/ScrollArea.module.scss.js +7 -22
  246. package/dist/components/ScrollArea/index.cjs +66 -42
  247. package/dist/components/ScrollArea/index.d.ts +6 -5
  248. package/dist/components/ScrollArea/index.d.ts.map +1 -1
  249. package/dist/components/ScrollArea/index.js +66 -42
  250. package/dist/components/ScrollArea/scroll-state.cjs +58 -0
  251. package/dist/components/ScrollArea/scroll-state.d.ts +16 -0
  252. package/dist/components/ScrollArea/scroll-state.d.ts.map +1 -0
  253. package/dist/components/ScrollArea/scroll-state.js +58 -0
  254. package/dist/components/Select/Select.module.scss.cjs +21 -21
  255. package/dist/components/Select/Select.module.scss.js +21 -21
  256. package/dist/components/Select/index.cjs +3 -2
  257. package/dist/components/Select/index.d.ts.map +1 -1
  258. package/dist/components/Select/index.js +3 -2
  259. package/dist/components/Separator/Separator.module.scss.cjs +13 -10
  260. package/dist/components/Separator/Separator.module.scss.js +13 -10
  261. package/dist/components/Separator/index.cjs +37 -38
  262. package/dist/components/Separator/index.d.ts +4 -4
  263. package/dist/components/Separator/index.d.ts.map +1 -1
  264. package/dist/components/Separator/index.js +37 -38
  265. package/dist/components/Sidebar/Sidebar.module.scss.cjs +43 -43
  266. package/dist/components/Sidebar/Sidebar.module.scss.js +43 -43
  267. package/dist/components/Sidebar/index.cjs +17 -38
  268. package/dist/components/Sidebar/index.d.ts +23 -18
  269. package/dist/components/Sidebar/index.d.ts.map +1 -1
  270. package/dist/components/Sidebar/index.js +17 -38
  271. package/dist/components/Skeleton/Skeleton.module.scss.cjs +56 -40
  272. package/dist/components/Skeleton/Skeleton.module.scss.js +56 -40
  273. package/dist/components/Skeleton/index.cjs +41 -55
  274. package/dist/components/Skeleton/index.d.ts +7 -7
  275. package/dist/components/Skeleton/index.d.ts.map +1 -1
  276. package/dist/components/Skeleton/index.js +41 -55
  277. package/dist/components/Slider/Slider.module.scss.cjs +12 -12
  278. package/dist/components/Slider/Slider.module.scss.js +12 -12
  279. package/dist/components/Stack/Stack.module.scss.cjs +25 -45
  280. package/dist/components/Stack/Stack.module.scss.js +25 -45
  281. package/dist/components/Stack/index.cjs +106 -101
  282. package/dist/components/Stack/index.d.ts +7 -7
  283. package/dist/components/Stack/index.d.ts.map +1 -1
  284. package/dist/components/Stack/index.js +106 -101
  285. package/dist/components/Switch/Switch.module.scss.cjs +32 -0
  286. package/dist/components/Switch/Switch.module.scss.js +32 -0
  287. package/dist/components/{Toggle → Switch}/index.cjs +9 -14
  288. package/dist/components/Switch/index.d.ts +37 -1
  289. package/dist/components/Switch/index.d.ts.map +1 -1
  290. package/dist/components/{Toggle → Switch}/index.js +5 -10
  291. package/dist/components/Table/Table.module.scss.cjs +21 -30
  292. package/dist/components/Table/Table.module.scss.js +21 -30
  293. package/dist/components/Table/index.d.ts +6 -5
  294. package/dist/components/Table/index.d.ts.map +1 -1
  295. package/dist/components/TableOfContents/TableOfContents.module.scss.cjs +15 -15
  296. package/dist/components/TableOfContents/TableOfContents.module.scss.js +15 -15
  297. package/dist/components/TableOfContents/index.cjs +13 -9
  298. package/dist/components/TableOfContents/index.d.ts +5 -3
  299. package/dist/components/TableOfContents/index.d.ts.map +1 -1
  300. package/dist/components/TableOfContents/index.js +13 -9
  301. package/dist/components/Tabs/Tabs.module.scss.cjs +12 -12
  302. package/dist/components/Tabs/Tabs.module.scss.js +12 -12
  303. package/dist/components/Tabs/index.cjs +28 -8
  304. package/dist/components/Tabs/index.d.ts.map +1 -1
  305. package/dist/components/Tabs/index.js +28 -8
  306. package/dist/components/Text/Text.module.scss.cjs +105 -57
  307. package/dist/components/Text/Text.module.scss.js +105 -57
  308. package/dist/components/Text/index.cjs +49 -33
  309. package/dist/components/Text/index.d.ts +30 -19
  310. package/dist/components/Text/index.d.ts.map +1 -1
  311. package/dist/components/Text/index.js +49 -33
  312. package/dist/components/Textarea/Textarea.module.scss.cjs +26 -23
  313. package/dist/components/Textarea/Textarea.module.scss.js +26 -23
  314. package/dist/components/Textarea/index.cjs +5 -10
  315. package/dist/components/Textarea/index.d.ts.map +1 -1
  316. package/dist/components/Textarea/index.js +5 -10
  317. package/dist/components/Theme/context.cjs +39 -0
  318. package/dist/components/Theme/context.d.ts +21 -0
  319. package/dist/components/Theme/context.d.ts.map +1 -0
  320. package/dist/components/Theme/context.js +22 -0
  321. package/dist/components/Theme/index.cjs +16 -210
  322. package/dist/components/Theme/index.d.ts +4 -37
  323. package/dist/components/Theme/index.d.ts.map +1 -1
  324. package/dist/components/Theme/index.js +11 -205
  325. package/dist/components/{Theme → ThemeToggle}/ThemeToggle.module.scss.cjs +9 -6
  326. package/dist/components/ThemeToggle/ThemeToggle.module.scss.js +26 -0
  327. package/dist/components/ThemeToggle/index.cjs +140 -0
  328. package/dist/components/ThemeToggle/index.d.ts +26 -0
  329. package/dist/components/ThemeToggle/index.d.ts.map +1 -0
  330. package/dist/components/ThemeToggle/index.js +140 -0
  331. package/dist/components/ThinkingIndicator/ThinkingIndicator.module.scss.cjs +13 -13
  332. package/dist/components/ThinkingIndicator/ThinkingIndicator.module.scss.js +13 -13
  333. package/dist/components/ThinkingIndicator/index.cjs +34 -41
  334. package/dist/components/ThinkingIndicator/index.d.ts +4 -4
  335. package/dist/components/ThinkingIndicator/index.d.ts.map +1 -1
  336. package/dist/components/ThinkingIndicator/index.js +34 -41
  337. package/dist/components/Toast/Toast.module.scss.cjs +20 -20
  338. package/dist/components/Toast/Toast.module.scss.js +20 -20
  339. package/dist/components/Toggle/index.d.ts +2 -42
  340. package/dist/components/Toggle/index.d.ts.map +1 -1
  341. package/dist/components/ToggleGroup/ToggleGroup.module.scss.cjs +20 -20
  342. package/dist/components/ToggleGroup/ToggleGroup.module.scss.js +20 -20
  343. package/dist/components/ToggleGroup/index.cjs +3 -2
  344. package/dist/components/ToggleGroup/index.d.ts +2 -1
  345. package/dist/components/ToggleGroup/index.d.ts.map +1 -1
  346. package/dist/components/ToggleGroup/index.js +3 -2
  347. package/dist/components/Tooltip/Tooltip.module.scss.cjs +3 -3
  348. package/dist/components/Tooltip/Tooltip.module.scss.js +3 -3
  349. package/dist/components/Tooltip/index.cjs +24 -40
  350. package/dist/components/Tooltip/index.d.ts +4 -4
  351. package/dist/components/Tooltip/index.d.ts.map +1 -1
  352. package/dist/components/Tooltip/index.js +24 -40
  353. package/dist/components/VisuallyHidden/VisuallyHidden.module.scss.cjs +1 -1
  354. package/dist/components/VisuallyHidden/VisuallyHidden.module.scss.js +1 -1
  355. package/dist/components/VisuallyHidden/index.d.ts +2 -2
  356. package/dist/data-table.cjs +14 -10
  357. package/dist/data-table.js +14 -10
  358. package/dist/datepicker.cjs +5 -3
  359. package/dist/datepicker.js +5 -3
  360. package/dist/editor.cjs +68 -28
  361. package/dist/editor.js +68 -28
  362. package/dist/index.cjs +101 -99
  363. package/dist/index.d.ts +3 -3
  364. package/dist/index.d.ts.map +1 -1
  365. package/dist/index.js +6 -4
  366. package/dist/markdown.cjs +21 -29
  367. package/dist/markdown.js +22 -30
  368. package/dist/measurements/generated.cjs +304 -0
  369. package/dist/measurements/generated.d.ts +268 -0
  370. package/dist/measurements/generated.d.ts.map +1 -0
  371. package/dist/measurements/generated.js +304 -0
  372. package/dist/measurements/index.d.ts +2 -0
  373. package/dist/measurements/index.d.ts.map +1 -0
  374. package/dist/measurements.cjs +6 -0
  375. package/dist/measurements.js +6 -0
  376. package/dist/recipes/popup.cjs +14 -0
  377. package/dist/recipes/popup.d.ts +4 -0
  378. package/dist/recipes/popup.d.ts.map +1 -0
  379. package/dist/recipes/popup.js +14 -0
  380. package/dist/recipes/table-chrome.cjs +18 -0
  381. package/dist/recipes/table-chrome.d.ts +10 -0
  382. package/dist/recipes/table-chrome.d.ts.map +1 -0
  383. package/dist/recipes/table-chrome.js +18 -0
  384. package/dist/table.cjs +5 -2
  385. package/dist/table.js +5 -2
  386. package/dist/utils/a11y.cjs +5 -2
  387. package/dist/utils/a11y.d.ts +5 -5
  388. package/dist/utils/a11y.d.ts.map +1 -1
  389. package/dist/utils/a11y.js +5 -2
  390. package/dist/utils/canonical-stamp.cjs +2 -8
  391. package/dist/utils/canonical-stamp.d.ts.map +1 -1
  392. package/dist/utils/canonical-stamp.js +1 -7
  393. package/dist/utils/css-warning.cjs +1 -1
  394. package/dist/utils/css-warning.js +1 -1
  395. package/dist/utils/env.cjs +17 -0
  396. package/dist/utils/env.d.ts +3 -0
  397. package/dist/utils/env.d.ts.map +1 -0
  398. package/dist/utils/env.js +17 -0
  399. package/dist/utils/keyboard-shortcuts.cjs +3 -10
  400. package/dist/utils/keyboard-shortcuts.d.ts +4 -4
  401. package/dist/utils/keyboard-shortcuts.d.ts.map +1 -1
  402. package/dist/utils/keyboard-shortcuts.js +3 -10
  403. package/dist/utils/layout-spacing.cjs +27 -0
  404. package/dist/utils/layout-spacing.d.ts +5 -0
  405. package/dist/utils/layout-spacing.d.ts.map +1 -0
  406. package/dist/utils/layout-spacing.js +27 -0
  407. package/dist/utils/seed-derivation.cjs +14 -48
  408. package/dist/utils/seed-derivation.d.ts +4 -3
  409. package/dist/utils/seed-derivation.d.ts.map +1 -1
  410. package/dist/utils/seed-derivation.js +14 -48
  411. package/dist/utils/theme-presets.cjs +1 -0
  412. package/dist/utils/theme-presets.d.ts +3 -2
  413. package/dist/utils/theme-presets.d.ts.map +1 -1
  414. package/dist/utils/theme-presets.js +1 -0
  415. package/fragments.json +1 -1
  416. package/package.json +25 -4
  417. package/src/assets/fragments-logo.tsx +2 -2
  418. package/src/assets/fragments-wordmark.tsx +4 -2
  419. package/src/components/Accordion/Accordion.contract.json +24 -48
  420. package/src/components/Accordion/Accordion.module.scss +31 -52
  421. package/src/components/Alert/Alert.contract.json +37 -53
  422. package/src/components/Alert/Alert.module.scss +52 -44
  423. package/src/components/Alert/index.tsx +55 -29
  424. package/src/components/AppShell/AppShell.contract.json +34 -51
  425. package/src/components/AppShell/AppShell.module.scss +59 -43
  426. package/src/components/AppShell/index.tsx +8 -4
  427. package/src/components/Avatar/Avatar.contract.json +31 -48
  428. package/src/components/Avatar/Avatar.module.scss +25 -60
  429. package/src/components/Avatar/index.tsx +152 -146
  430. package/src/components/Badge/Badge.contract.json +37 -42
  431. package/src/components/Badge/Badge.module.scss +59 -47
  432. package/src/components/BentoGrid/BentoGrid.contract.json +21 -45
  433. package/src/components/BentoGrid/BentoGrid.module.scss +11 -32
  434. package/src/components/Box/Box.contract.json +40 -148
  435. package/src/components/Box/Box.module.scss +253 -81
  436. package/src/components/Box/index.tsx +92 -99
  437. package/src/components/Breadcrumbs/Breadcrumbs.contract.json +21 -34
  438. package/src/components/Breadcrumbs/Breadcrumbs.module.scss +19 -15
  439. package/src/components/Button/Button.module.scss +60 -64
  440. package/src/components/ButtonGroup/ButtonGroup.contract.json +32 -47
  441. package/src/components/ButtonGroup/ButtonGroup.module.scss +5 -5
  442. package/src/components/Card/Card.consumer-fixture.module.scss +8 -0
  443. package/src/components/Card/Card.module.scss +284 -167
  444. package/src/components/Card/index.tsx +21 -2
  445. package/src/components/Chart/Chart.contract.json +21 -29
  446. package/src/components/Chart/Chart.module.scss +28 -29
  447. package/src/components/Chart/index.tsx +72 -55
  448. package/src/components/Checkbox/Checkbox.contract.json +24 -24
  449. package/src/components/Checkbox/Checkbox.module.scss +75 -87
  450. package/src/components/Checkbox/index.tsx +8 -11
  451. package/src/components/Chip/Chip.contract.json +36 -42
  452. package/src/components/Chip/Chip.module.scss +25 -36
  453. package/src/components/Chip/index.tsx +5 -5
  454. package/src/components/CodeBlock/CodeBlock.contract.json +46 -76
  455. package/src/components/CodeBlock/CodeBlock.module.scss +129 -217
  456. package/src/components/CodeBlock/css-variables-theme.ts +102 -0
  457. package/src/components/CodeBlock/index.tsx +91 -35
  458. package/src/components/Collapsible/Collapsible.contract.json +21 -36
  459. package/src/components/Collapsible/Collapsible.module.scss +29 -63
  460. package/src/components/Collapsible/index.tsx +22 -26
  461. package/src/components/ColorPicker/ColorPicker.contract.json +29 -48
  462. package/src/components/ColorPicker/ColorPicker.module.scss +54 -33
  463. package/src/components/ColorPicker/index.tsx +7 -2
  464. package/src/components/Combobox/Combobox.contract.json +36 -37
  465. package/src/components/Combobox/Combobox.module.scss +61 -74
  466. package/src/components/Combobox/index.tsx +34 -6
  467. package/src/components/Command/Command.contract.json +21 -43
  468. package/src/components/Command/Command.module.scss +47 -77
  469. package/src/components/Command/index.tsx +58 -47
  470. package/src/components/ConversationList/ConversationList.contract.json +27 -32
  471. package/src/components/ConversationList/ConversationList.module.scss +20 -78
  472. package/src/components/ConversationList/index.tsx +55 -59
  473. package/src/components/DataTable/DataTable.icons.tsx +4 -21
  474. package/src/components/DataTable/DataTable.module.scss +81 -217
  475. package/src/components/DataTable/index.tsx +28 -32
  476. package/src/components/DatePicker/DatePicker.contract.json +27 -28
  477. package/src/components/DatePicker/DatePicker.module.scss +66 -38
  478. package/src/components/DatePicker/index.tsx +7 -3
  479. package/src/components/Dialog/Dialog.module.scss +45 -69
  480. package/src/components/Dialog/index.tsx +47 -37
  481. package/src/components/Drawer/Drawer.contract.json +22 -36
  482. package/src/components/Drawer/Drawer.module.scss +93 -99
  483. package/src/components/Drawer/index.tsx +1 -1
  484. package/src/components/Editor/Editor.contract.json +31 -48
  485. package/src/components/Editor/Editor.module.scss +137 -220
  486. package/src/components/Editor/index.tsx +240 -179
  487. package/src/components/EmptyState/EmptyState.contract.json +31 -43
  488. package/src/components/EmptyState/EmptyState.module.scss +45 -84
  489. package/src/components/EmptyState/index.tsx +48 -23
  490. package/src/components/Field/Field.contract.json +28 -45
  491. package/src/components/Field/Field.module.scss +9 -11
  492. package/src/components/Field/index.tsx +31 -1
  493. package/src/components/Fieldset/Fieldset.contract.json +21 -38
  494. package/src/components/Fieldset/Fieldset.module.scss +23 -8
  495. package/src/components/Form/Form.contract.json +27 -40
  496. package/src/components/Form/Form.module.scss +9 -4
  497. package/src/components/Form/index.tsx +22 -7
  498. package/src/components/Grid/Grid.contract.json +28 -64
  499. package/src/components/Grid/Grid.module.scss +159 -63
  500. package/src/components/Grid/index.tsx +114 -133
  501. package/src/components/Header/Header.contract.json +31 -67
  502. package/src/components/Header/Header.module.scss +56 -48
  503. package/src/components/Header/index.tsx +134 -121
  504. package/src/components/Icon/Icon.contract.json +22 -62
  505. package/src/components/Icon/Icon.module.scss +16 -0
  506. package/src/components/Icon/index.tsx +74 -86
  507. package/src/components/IconButton/IconButton.contract.json +34 -18
  508. package/src/components/IconButton/IconButton.module.scss +15 -26
  509. package/src/components/IconButton/index.tsx +2 -1
  510. package/src/components/Image/Image.contract.json +23 -56
  511. package/src/components/Input/Input.contract.json +26 -32
  512. package/src/components/Input/Input.module.scss +69 -56
  513. package/src/components/Input/index.tsx +1 -2
  514. package/src/components/Link/Link.contract.json +32 -52
  515. package/src/components/Link/Link.module.scss +29 -13
  516. package/src/components/Link/index.tsx +1 -1
  517. package/src/components/List/List.contract.json +23 -52
  518. package/src/components/List/List.module.scss +16 -21
  519. package/src/components/List/index.tsx +4 -10
  520. package/src/components/Listbox/Listbox.contract.json +21 -37
  521. package/src/components/Listbox/Listbox.module.scss +26 -54
  522. package/src/components/Loading/Loading.contract.json +37 -61
  523. package/src/components/Loading/Loading.module.scss +33 -40
  524. package/src/components/Loading/index.tsx +68 -97
  525. package/src/components/Main/Main.contract.json +17 -9
  526. package/src/components/Main/Main.module.scss +3 -5
  527. package/src/components/Markdown/Markdown.contract.json +22 -43
  528. package/src/components/Markdown/Markdown.module.scss +72 -182
  529. package/src/components/Markdown/index.tsx +50 -51
  530. package/src/components/Menu/Menu.contract.json +25 -41
  531. package/src/components/Menu/Menu.module.scss +63 -133
  532. package/src/components/Menu/index.tsx +57 -89
  533. package/src/components/Message/Message.contract.json +29 -52
  534. package/src/components/Message/Message.module.scss +60 -143
  535. package/src/components/Message/index.tsx +16 -6
  536. package/src/components/NavigationMenu/NavigationMenu.contract.json +36 -45
  537. package/src/components/NavigationMenu/NavigationMenu.module.scss +123 -71
  538. package/src/components/NavigationMenu/index.tsx +105 -81
  539. package/src/components/Pagination/Pagination.contract.json +22 -40
  540. package/src/components/Pagination/Pagination.module.scss +34 -27
  541. package/src/components/Pagination/index.tsx +7 -2
  542. package/src/components/Popover/Popover.contract.json +24 -46
  543. package/src/components/Popover/Popover.module.scss +43 -78
  544. package/src/components/Progress/Progress.contract.json +32 -28
  545. package/src/components/Progress/Progress.module.scss +64 -43
  546. package/src/components/Progress/geometry.ts +41 -0
  547. package/src/components/Progress/index.tsx +44 -30
  548. package/src/components/Prompt/Prompt.contract.json +31 -47
  549. package/src/components/Prompt/Prompt.module.scss +58 -87
  550. package/src/components/Prompt/index.tsx +6 -5
  551. package/src/components/RadioGroup/RadioGroup.contract.json +23 -24
  552. package/src/components/RadioGroup/RadioGroup.module.scss +63 -83
  553. package/src/components/RadioGroup/index.tsx +7 -9
  554. package/src/components/ScrollArea/ScrollArea.contract.json +23 -40
  555. package/src/components/ScrollArea/ScrollArea.module.scss +123 -97
  556. package/src/components/ScrollArea/index.tsx +85 -67
  557. package/src/components/ScrollArea/scroll-state.ts +87 -0
  558. package/src/components/Select/Select.module.scss +55 -43
  559. package/src/components/Select/index.tsx +6 -2
  560. package/src/components/Separator/Separator.contract.json +24 -48
  561. package/src/components/Separator/Separator.module.scss +29 -19
  562. package/src/components/Separator/index.tsx +55 -51
  563. package/src/components/Sidebar/Sidebar.contract.json +42 -62
  564. package/src/components/Sidebar/Sidebar.module.scss +117 -106
  565. package/src/components/Sidebar/index.tsx +169 -162
  566. package/src/components/Skeleton/Skeleton.contract.json +28 -54
  567. package/src/components/Skeleton/Skeleton.module.scss +51 -34
  568. package/src/components/Skeleton/index.tsx +65 -72
  569. package/src/components/Slider/Slider.contract.json +27 -39
  570. package/src/components/Slider/Slider.module.scss +33 -27
  571. package/src/components/Stack/Stack.contract.json +29 -56
  572. package/src/components/Stack/Stack.module.scss +110 -38
  573. package/src/components/Stack/index.tsx +157 -127
  574. package/src/components/{Toggle/Toggle.contract.json → Switch/Switch.contract.json} +34 -47
  575. package/src/components/Switch/Switch.module.scss +255 -0
  576. package/src/components/{Toggle → Switch}/index.tsx +5 -21
  577. package/src/components/Table/Table.contract.json +28 -46
  578. package/src/components/Table/Table.module.scss +50 -129
  579. package/src/components/Table/index.tsx +13 -6
  580. package/src/components/TableOfContents/TableOfContents.contract.json +34 -21
  581. package/src/components/TableOfContents/TableOfContents.module.scss +35 -182
  582. package/src/components/TableOfContents/index.tsx +26 -9
  583. package/src/components/Tabs/Tabs.contract.json +24 -45
  584. package/src/components/Tabs/Tabs.module.scss +28 -23
  585. package/src/components/Tabs/index.tsx +17 -5
  586. package/src/components/Text/Text.contract.json +30 -72
  587. package/src/components/Text/Text.module.scss +43 -7
  588. package/src/components/Text/index.tsx +136 -63
  589. package/src/components/Textarea/Textarea.contract.json +25 -43
  590. package/src/components/Textarea/Textarea.module.scss +58 -40
  591. package/src/components/Textarea/index.tsx +5 -12
  592. package/src/components/Theme/Theme.contract.json +32 -51
  593. package/src/components/Theme/context.ts +42 -0
  594. package/src/components/Theme/index.tsx +16 -310
  595. package/src/components/ThemeToggle/ThemeToggle.module.scss +89 -0
  596. package/src/components/ThemeToggle/index.tsx +180 -0
  597. package/src/components/ThinkingIndicator/ThinkingIndicator.contract.json +23 -40
  598. package/src/components/ThinkingIndicator/ThinkingIndicator.module.scss +24 -19
  599. package/src/components/ThinkingIndicator/index.tsx +44 -54
  600. package/src/components/Toast/Toast.contract.json +35 -61
  601. package/src/components/Toast/Toast.module.scss +62 -139
  602. package/src/components/Toggle/index.ts +7 -0
  603. package/src/components/ToggleGroup/ToggleGroup.contract.json +40 -68
  604. package/src/components/ToggleGroup/ToggleGroup.module.scss +166 -89
  605. package/src/components/ToggleGroup/index.tsx +5 -3
  606. package/src/components/Tooltip/Tooltip.contract.json +31 -52
  607. package/src/components/Tooltip/Tooltip.module.scss +23 -39
  608. package/src/components/Tooltip/index.tsx +19 -24
  609. package/src/components/VisuallyHidden/VisuallyHidden.contract.json +22 -44
  610. package/src/components/VisuallyHidden/VisuallyHidden.module.scss +3 -0
  611. package/src/components/VisuallyHidden/index.tsx +5 -5
  612. package/src/index.ts +4 -3
  613. package/src/measurements/MeasurementTargets.module.scss +229 -0
  614. package/src/measurements/generated.ts +324 -0
  615. package/src/measurements/index.ts +8 -0
  616. package/src/measurements/measurements.json +368 -0
  617. package/src/recipes/_action.scss +138 -0
  618. package/src/recipes/_boolean-range.scss +116 -0
  619. package/src/recipes/_feedback.scss +171 -0
  620. package/src/recipes/_field.scss +102 -0
  621. package/src/recipes/_layout.scss +74 -0
  622. package/src/recipes/_navigation.scss +110 -0
  623. package/src/recipes/_overlay.scss +191 -0
  624. package/src/recipes/_popup.scss +102 -0
  625. package/src/recipes/_prose.scss +182 -0
  626. package/src/recipes/_representation.scss +193 -0
  627. package/src/recipes/_segmented.scss +26 -0
  628. package/src/recipes/_surface.scss +13 -0
  629. package/src/recipes/_table-chrome.scss +119 -0
  630. package/src/recipes/_target.scss +31 -0
  631. package/src/recipes/_typography.scss +38 -0
  632. package/src/recipes/popup.ts +12 -0
  633. package/src/recipes/table-chrome.ts +30 -0
  634. package/src/scss.d.ts +1 -1
  635. package/src/styles/globals.scss +21 -20
  636. package/src/tokens/_component-properties.scss +2 -2
  637. package/src/tokens/_computed.scss +14 -25
  638. package/src/tokens/_density.scss +41 -132
  639. package/src/tokens/_derive.scss +112 -210
  640. package/src/tokens/_measurements.catalog.generated.css +96 -0
  641. package/src/tokens/_measurements.generated.scss +617 -0
  642. package/src/tokens/_mixins.scss +7 -284
  643. package/src/tokens/_palettes.scss +39 -167
  644. package/src/tokens/_property-registrations.scss +96 -92
  645. package/src/tokens/_radius.scss +16 -70
  646. package/src/tokens/_seeds.scss +24 -23
  647. package/src/tokens/_variables.scss +338 -178
  648. package/src/utils/a11y.tsx +69 -69
  649. package/src/utils/aria.ts +3 -3
  650. package/src/utils/canonical-stamp.ts +2 -12
  651. package/src/utils/css-warning.ts +7 -7
  652. package/src/utils/env.ts +25 -0
  653. package/src/utils/keyboard-shortcuts.ts +131 -126
  654. package/src/utils/layout-spacing.ts +31 -0
  655. package/src/utils/seed-derivation.ts +144 -178
  656. package/src/utils/theme-presets.ts +58 -30
  657. package/dist/components/Theme/ThemeToggle.module.scss.js +0 -23
  658. package/dist/components/Toggle/Toggle.module.scss.cjs +0 -44
  659. package/dist/components/Toggle/Toggle.module.scss.js +0 -44
  660. package/src/components/Button/Button.contract.json +0 -218
  661. package/src/components/Card/Card.contract.json +0 -175
  662. package/src/components/DataTable/DataTable.contract.json +0 -302
  663. package/src/components/Dialog/Dialog.contract.json +0 -159
  664. package/src/components/Select/Select.contract.json +0 -259
  665. package/src/components/Switch/index.ts +0 -3
  666. package/src/components/Theme/ThemeToggle.module.scss +0 -91
  667. package/src/components/Toggle/Toggle.module.scss +0 -244
@@ -8,6 +8,8 @@
8
8
 
9
9
  import {
10
10
  type SeedConfig,
11
+ type DensityPreset,
12
+ type RadiusStyle,
11
13
  PALETTES,
12
14
  RADIUS_STYLES,
13
15
  getSemanticColors,
@@ -21,7 +23,7 @@ import {
21
23
  deriveSemanticText,
22
24
  deriveSemanticBg,
23
25
  deriveSemanticHover,
24
- } from './seed-derivation';
26
+ } from "./seed-derivation";
25
27
 
26
28
  // ============================================
27
29
  // Theme Output Types
@@ -108,7 +110,8 @@ export interface ThemeConfig {
108
110
  radius?: ThemeRadius;
109
111
  shadows?: ThemeShadows;
110
112
  dark?: ThemeDarkMode;
111
- density?: string;
113
+ density?: DensityPreset;
114
+ radiusStyle?: RadiusStyle;
112
115
  }
113
116
 
114
117
  // ============================================
@@ -157,8 +160,9 @@ export function seedsToTheme(seeds: SeedConfig): ThemeConfig {
157
160
  const infoTextDark = deriveSemanticText(info, true);
158
161
 
159
162
  return {
160
- name: 'Custom',
163
+ name: "Custom",
161
164
  density: seeds.density,
165
+ radiusStyle: seeds.radiusStyle,
162
166
  colors: {
163
167
  accent: seeds.brand,
164
168
  accentHover: deriveAccentHover(seeds.brand, false),
@@ -199,7 +203,7 @@ export function seedsToTheme(seeds: SeedConfig): ThemeConfig {
199
203
  sm: radius.sm,
200
204
  md: radius.md,
201
205
  lg: radius.lg,
202
- full: '9999px',
206
+ full: "9999px",
203
207
  },
204
208
  shadows: {
205
209
  sm: lightShadows.sm,
@@ -239,7 +243,7 @@ export function seedsToTheme(seeds: SeedConfig): ThemeConfig {
239
243
  successBg: deriveSemanticBg(success, true),
240
244
  warningBg: deriveSemanticBg(warning, true),
241
245
  infoBg: deriveSemanticBg(info, true),
242
- backdrop: 'rgba(0, 0, 0, 0.8)',
246
+ backdrop: "rgba(0, 0, 0, 0.8)",
243
247
  },
244
248
  };
245
249
  }
@@ -257,55 +261,79 @@ export interface PresetDefinition {
257
261
 
258
262
  const PRESET_DEFINITIONS: Record<string, PresetDefinition> = {
259
263
  default: {
260
- name: 'Default',
261
- seeds: { brand: '#18181b', neutral: 'stone', density: 'default', radiusStyle: 'default' },
264
+ name: "Default",
265
+ seeds: { brand: "#18181b", neutral: "stone", density: "default", radiusStyle: "default" },
262
266
  },
263
267
  neutral: {
264
- name: 'Neutral',
265
- seeds: { brand: '#71717a', neutral: 'stone', density: 'default', radiusStyle: 'default' },
268
+ name: "Neutral",
269
+ seeds: { brand: "#71717a", neutral: "stone", density: "default", radiusStyle: "default" },
266
270
  },
267
271
  slate: {
268
- name: 'Slate',
269
- seeds: { brand: '#64748b', neutral: 'stone', density: 'default', radiusStyle: 'default' },
272
+ name: "Slate",
273
+ seeds: { brand: "#64748b", neutral: "stone", density: "default", radiusStyle: "default" },
270
274
  overrides: {
271
- surfaces: { bgSecondary: '#f1f5f9', bgTertiary: '#e2e8f0' },
272
- dark: { surfaces: { bgSecondary: '#1e293b', bgTertiary: '#334155' } },
275
+ surfaces: { bgSecondary: "#f1f5f9", bgTertiary: "#e2e8f0" },
276
+ dark: { surfaces: { bgSecondary: "#1e293b", bgTertiary: "#334155" } },
273
277
  },
274
278
  },
275
279
  emerald: {
276
- name: 'Emerald',
277
- seeds: { brand: '#10b981', neutral: 'stone', density: 'default', radiusStyle: 'default' },
280
+ name: "Emerald",
281
+ seeds: { brand: "#10b981", neutral: "stone", density: "default", radiusStyle: "default" },
278
282
  },
279
283
  rose: {
280
- name: 'Rose',
281
- seeds: { brand: '#f43f5e', neutral: 'stone', density: 'default', radiusStyle: 'default' },
284
+ name: "Rose",
285
+ seeds: { brand: "#f43f5e", neutral: "stone", density: "default", radiusStyle: "default" },
282
286
  },
283
287
  classic: {
284
- name: 'Classic',
288
+ name: "Classic",
285
289
  seeds: {
286
- brand: '#1e40af', neutral: 'stone', density: 'default', radiusStyle: 'default',
287
- danger: '#b91c1c', success: '#15803d', warning: '#a16207', info: '#0369a1',
290
+ brand: "#1e40af",
291
+ neutral: "stone",
292
+ density: "default",
293
+ radiusStyle: "default",
294
+ danger: "#b91c1c",
295
+ success: "#15803d",
296
+ warning: "#a16207",
297
+ info: "#0369a1",
288
298
  },
289
299
  },
290
300
  bold: {
291
- name: 'Bold',
301
+ name: "Bold",
292
302
  seeds: {
293
- brand: '#7c3aed', neutral: 'stone', density: 'default', radiusStyle: 'default',
294
- danger: '#dc2626', success: '#16a34a', warning: '#ea580c', info: '#2563eb',
303
+ brand: "#7c3aed",
304
+ neutral: "stone",
305
+ density: "default",
306
+ radiusStyle: "default",
307
+ danger: "#dc2626",
308
+ success: "#16a34a",
309
+ warning: "#ea580c",
310
+ info: "#2563eb",
295
311
  },
296
312
  },
297
313
  neon: {
298
- name: 'Neon',
314
+ name: "Neon",
299
315
  seeds: {
300
- brand: '#06b6d4', neutral: 'stone', density: 'default', radiusStyle: 'default',
301
- danger: '#f43f5e', success: '#4ade80', warning: '#fbbf24', info: '#a78bfa',
316
+ brand: "#06b6d4",
317
+ neutral: "stone",
318
+ density: "default",
319
+ radiusStyle: "default",
320
+ danger: "#f43f5e",
321
+ success: "#4ade80",
322
+ warning: "#fbbf24",
323
+ info: "#a78bfa",
302
324
  },
303
325
  },
304
326
  minimal: {
305
- name: 'Minimal',
327
+ name: "Minimal",
306
328
  seeds: {
307
- brand: '#525252', neutral: 'stone', density: 'default', radiusStyle: 'default',
308
- danger: '#78716c', success: '#65a30d', warning: '#ca8a04', info: '#64748b',
329
+ brand: "#525252",
330
+ neutral: "stone",
331
+ density: "default",
332
+ radiusStyle: "default",
333
+ danger: "#78716c",
334
+ success: "#65a30d",
335
+ warning: "#ca8a04",
336
+ info: "#64748b",
309
337
  },
310
338
  },
311
339
  };
@@ -315,7 +343,7 @@ const PRESET_DEFINITIONS: Record<string, PresetDefinition> = {
315
343
  // ============================================
316
344
 
317
345
  function isPlainObject(val: unknown): val is Record<string, unknown> {
318
- return typeof val === 'object' && val !== null && !Array.isArray(val);
346
+ return typeof val === "object" && val !== null && !Array.isArray(val);
319
347
  }
320
348
 
321
349
  function deepMergeObjects(
@@ -1,23 +0,0 @@
1
- const toggleGroup = "_toggleGroup_1jmqh_1";
2
- const toggleButton = "_toggleButton_1jmqh_10";
3
- const toggleButtonActive = "_toggleButtonActive_1jmqh_42";
4
- const sizeSm = "_sizeSm_1jmqh_55";
5
- const sizeMd = "_sizeMd_1jmqh_64";
6
- const sizeLg = "_sizeLg_1jmqh_73";
7
- const styles = {
8
- toggleGroup,
9
- toggleButton,
10
- toggleButtonActive,
11
- sizeSm,
12
- sizeMd,
13
- sizeLg
14
- };
15
- export {
16
- styles as default,
17
- sizeLg,
18
- sizeMd,
19
- sizeSm,
20
- toggleButton,
21
- toggleButtonActive,
22
- toggleGroup
23
- };
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const root = "_root_1uoy9_1";
4
- const rootWithHelper = "_rootWithHelper_1uoy9_48";
5
- const track = "_track_1uoy9_51";
6
- const trackSm = "_trackSm_1uoy9_86";
7
- const trackLg = "_trackLg_1uoy9_96";
8
- const trackMd = "_trackMd_1uoy9_106";
9
- const thumb = "_thumb_1uoy9_116";
10
- const content = "_content_1uoy9_139";
11
- const label = "_label_1uoy9_143";
12
- const labelSm = "_labelSm_1uoy9_151";
13
- const labelLg = "_labelLg_1uoy9_155";
14
- const helper = "_helper_1uoy9_159";
15
- const helperSm = "_helperSm_1uoy9_167";
16
- const styles = {
17
- root,
18
- rootWithHelper,
19
- track,
20
- trackSm,
21
- trackLg,
22
- trackMd,
23
- thumb,
24
- content,
25
- label,
26
- labelSm,
27
- labelLg,
28
- helper,
29
- helperSm
30
- };
31
- exports.content = content;
32
- exports.default = styles;
33
- exports.helper = helper;
34
- exports.helperSm = helperSm;
35
- exports.label = label;
36
- exports.labelLg = labelLg;
37
- exports.labelSm = labelSm;
38
- exports.root = root;
39
- exports.rootWithHelper = rootWithHelper;
40
- exports.thumb = thumb;
41
- exports.track = track;
42
- exports.trackLg = trackLg;
43
- exports.trackMd = trackMd;
44
- exports.trackSm = trackSm;
@@ -1,44 +0,0 @@
1
- const root = "_root_1uoy9_1";
2
- const rootWithHelper = "_rootWithHelper_1uoy9_48";
3
- const track = "_track_1uoy9_51";
4
- const trackSm = "_trackSm_1uoy9_86";
5
- const trackLg = "_trackLg_1uoy9_96";
6
- const trackMd = "_trackMd_1uoy9_106";
7
- const thumb = "_thumb_1uoy9_116";
8
- const content = "_content_1uoy9_139";
9
- const label = "_label_1uoy9_143";
10
- const labelSm = "_labelSm_1uoy9_151";
11
- const labelLg = "_labelLg_1uoy9_155";
12
- const helper = "_helper_1uoy9_159";
13
- const helperSm = "_helperSm_1uoy9_167";
14
- const styles = {
15
- root,
16
- rootWithHelper,
17
- track,
18
- trackSm,
19
- trackLg,
20
- trackMd,
21
- thumb,
22
- content,
23
- label,
24
- labelSm,
25
- labelLg,
26
- helper,
27
- helperSm
28
- };
29
- export {
30
- content,
31
- styles as default,
32
- helper,
33
- helperSm,
34
- label,
35
- labelLg,
36
- labelSm,
37
- root,
38
- rootWithHelper,
39
- thumb,
40
- track,
41
- trackLg,
42
- trackMd,
43
- trackSm
44
- };
@@ -1,218 +0,0 @@
1
- {
2
- "$schema": "https://usefragments.com/schemas/contract.v1.json",
3
- "name": "Button",
4
- "description": "Interactive element for user actions and form submissions",
5
- "category": "forms",
6
- "tags": [
7
- "action",
8
- "button",
9
- "form",
10
- "interactive"
11
- ],
12
- "status": "stable",
13
- "sourcePath": "src/components/Button/index.tsx",
14
- "exportName": "Button",
15
- "propsSummary": [
16
- "as: button|a",
17
- "children: node (required)",
18
- "variant: primary|secondary|ghost|link|quiet|danger|outlined|outline|icon (default: \"primary\")",
19
- "size: xs|sm|md|lg (default: \"md\")",
20
- "icon: boolean",
21
- "fullWidth: boolean",
22
- "asChild: boolean"
23
- ],
24
- "props": {
25
- "as": {
26
- "type": "enum",
27
- "description": "Render as a native button or anchor element",
28
- "default": "button",
29
- "required": false,
30
- "values": [
31
- "button",
32
- "a"
33
- ]
34
- },
35
- "children": {
36
- "type": "node",
37
- "description": "Button label content",
38
- "required": true
39
- },
40
- "variant": {
41
- "type": "enum",
42
- "description": "Visual style variant (\"icon\" is a convenience alias for outlined + icon-only layout, \"link\" is accent-coloured + transparent for tertiary CTAs, \"quiet\" is a neutral text button with no box and no height floor for meta lines and footnotes)",
43
- "default": "\"primary\"",
44
- "required": false,
45
- "values": [
46
- "primary",
47
- "secondary",
48
- "ghost",
49
- "link",
50
- "quiet",
51
- "danger",
52
- "outlined",
53
- "outline",
54
- "icon"
55
- ],
56
- "constraints": [
57
- "Only one primary button per context"
58
- ]
59
- },
60
- "size": {
61
- "type": "enum",
62
- "description": "Button size (\"xs\" is for inline row-action controls where \"sm\" is too tall)",
63
- "default": "\"md\"",
64
- "required": false,
65
- "values": [
66
- "xs",
67
- "sm",
68
- "md",
69
- "lg"
70
- ]
71
- },
72
- "icon": {
73
- "type": "boolean",
74
- "description": "Render as icon-only button (square aspect ratio). Useful with any visual variant; variant=\"icon\" is the default outlined icon-only shortcut.",
75
- "default": "false",
76
- "required": false
77
- },
78
- "fullWidth": {
79
- "type": "boolean",
80
- "description": "Make button full width of container",
81
- "default": "false",
82
- "required": false
83
- },
84
- "asChild": {
85
- "type": "boolean",
86
- "description": "Merge button styling onto child element (e.g. Next.js Link)",
87
- "default": "false",
88
- "required": false
89
- }
90
- },
91
- "usage": {
92
- "when": [
93
- "Triggering an action (save, submit, delete, etc.)",
94
- "Form submission",
95
- "Opening dialogs or menus",
96
- "Navigation when action context is needed"
97
- ],
98
- "whenNot": [
99
- "Simple navigation (use Link)",
100
- "Toggling state (use Switch or Checkbox)",
101
- "Selecting from options (use Select or RadioGroup)"
102
- ],
103
- "guidelines": [
104
- "Use Primary for the main action in a context",
105
- "Only one Primary button per section/form",
106
- "Use Danger variant for destructive actions",
107
- "Loading state should disable the button",
108
- "When using asChild, pass interaction and accessibility props directly on Button (they are forwarded to the child element)",
109
- "Use variant=\"icon\" for the default icon-only action button, or combine icon={true} with another visual variant when needed"
110
- ],
111
- "accessibility": [
112
- "Button text should describe the action",
113
- "Avoid generic labels like \"Click here\"",
114
- "Icon-only buttons need aria-label"
115
- ]
116
- },
117
- "examples": [
118
- {
119
- "name": "Primary",
120
- "description": "Default action button for primary actions",
121
- "code": "<Button variant=\"primary\">Save Changes</Button>"
122
- },
123
- {
124
- "name": "Secondary",
125
- "description": "Less prominent action button",
126
- "code": "<Button variant=\"secondary\">Cancel</Button>"
127
- },
128
- {
129
- "name": "Ghost",
130
- "description": "Minimal visual weight for subtle actions",
131
- "code": "<Button variant=\"ghost\">Learn More</Button>"
132
- },
133
- {
134
- "name": "Link",
135
- "description": "Accent-coloured transparent button for tertiary CTAs",
136
- "code": "<Button variant=\"link\">View all →</Button>"
137
- },
138
- {
139
- "name": "Quiet",
140
- "description": "Neutral text button with no box and no height floor, for meta lines and footnotes",
141
- "code": "<Button variant=\"quiet\" size=\"xs\">main</Button>"
142
- },
143
- {
144
- "name": "Danger",
145
- "description": "Destructive action requiring attention",
146
- "code": "<Button variant=\"danger\">Delete Item</Button>"
147
- },
148
- {
149
- "name": "Outline",
150
- "description": "Bordered button with transparent background",
151
- "code": "<Button variant=\"outline\">View Details</Button>"
152
- },
153
- {
154
- "name": "Icon",
155
- "description": "Convenience icon-only button alias (ghost + square icon sizing)",
156
- "code": "<Button variant=\"icon\" aria-label=\"Add item\">\n <span aria-hidden>+</span>\n</Button>"
157
- },
158
- {
159
- "name": "Sizes",
160
- "description": "Available size options",
161
- "code": "<div style={{ display: 'flex', gap: '8px', alignItems: 'center' }}>\n <Button size=\"xs\" variant=\"icon\" aria-label=\"Dismiss\">\u00d7</Button>\n <Button size=\"sm\">Small</Button>\n <Button size=\"md\">Medium</Button>\n <Button size=\"lg\">Large</Button>\n</div>"
162
- },
163
- {
164
- "name": "Disabled",
165
- "description": "Non-interactive state",
166
- "code": "<Button disabled>Cannot Click</Button>"
167
- },
168
- {
169
- "name": "As Child",
170
- "description": "Compose button styles onto another interactive element while preserving forwarded props",
171
- "code": "<Button asChild variant=\"outlined\" aria-label=\"Open billing settings\">\n <a href=\"#billing-settings\">Billing Settings</a>\n</Button>"
172
- }
173
- ],
174
- "relations": [
175
- {
176
- "component": "Link",
177
- "relationship": "alternative",
178
- "note": "Use Link for navigation without action context"
179
- },
180
- {
181
- "component": "Icon",
182
- "relationship": "complementary",
183
- "note": "Use Icon inside Button for icon-leading/trailing or icon-only actions"
184
- },
185
- {
186
- "component": "ButtonGroup",
187
- "relationship": "parent",
188
- "note": "Use ButtonGroup for related action sets"
189
- }
190
- ],
191
- "contract": {
192
- "propsSummary": [
193
- "variant: primary|secondary|ghost|link|quiet|danger|outlined|outline|icon (default: primary, icon = outlined + icon-only, link = accent transparent, quiet = neutral text button, no box)",
194
- "size: xs|sm|md|lg (default: md, xs for inline row-action controls)",
195
- "disabled: boolean - disables interaction",
196
- "type: button|submit|reset (default: button)",
197
- "onClick: (event) => void - action handler",
198
- "asChild: boolean - composes styles/props onto a child element (links/router links)",
199
- "icon: boolean - icon-only square layout (can be combined with visual variants)"
200
- ],
201
- "a11yRules": [
202
- "A11Y_BTN_LABEL",
203
- "A11Y_BTN_FOCUS"
204
- ]
205
- },
206
- "ai": {
207
- "compositionPattern": "compound",
208
- "subComponents": [
209
- "Root"
210
- ]
211
- },
212
- "provenance": {
213
- "source": "migrated",
214
- "verified": false,
215
- "frameworkSupport": "native",
216
- "extractedAt": "2026-03-13T23:18:51.517Z"
217
- }
218
- }
@@ -1,175 +0,0 @@
1
- {
2
- "$schema": "https://usefragments.com/schemas/contract.v1.json",
3
- "name": "Card",
4
- "description": "Container for grouping related content",
5
- "category": "layout",
6
- "tags": ["container", "layout", "surface"],
7
- "status": "stable",
8
- "sourcePath": "src/components/Card/index.tsx",
9
- "exportName": "Card",
10
- "propsSummary": [
11
- "children: node (required)",
12
- "variant: default|outlined|outline|elevated|stat|panel (default: default)",
13
- "padding: none|sm|md|lg (default: md)",
14
- "as: article|div|section (default: article)",
15
- "style: object"
16
- ],
17
- "props": {
18
- "children": {
19
- "type": "node",
20
- "description": "Card content - use Card.Header, Card.Body, Card.Footer sub-components",
21
- "required": true
22
- },
23
- "variant": {
24
- "type": "enum",
25
- "description": "Visual style of the card surface",
26
- "default": "default",
27
- "required": false,
28
- "values": ["default", "outlined", "outline", "elevated", "stat", "panel"],
29
- "constraints": [
30
- "Use \"elevated\" sparingly to maintain visual hierarchy",
31
- "Use \"stat\" for compact dashboard metric tiles",
32
- "Use \"panel\" with Card.Header divided and padding=\"none\" for dashboard panels"
33
- ]
34
- },
35
- "padding": {
36
- "type": "enum",
37
- "description": "Internal padding size",
38
- "default": "md",
39
- "required": false,
40
- "values": ["none", "sm", "md", "lg"]
41
- },
42
- "as": {
43
- "type": "enum",
44
- "description": "Semantic HTML element for the card root",
45
- "default": "article",
46
- "required": false,
47
- "values": ["article", "div", "section"]
48
- },
49
- "style": {
50
- "type": "object",
51
- "description": "",
52
- "required": false
53
- }
54
- },
55
- "usage": {
56
- "when": [
57
- "Grouping related pieces of content together",
58
- "Creating visual separation between content sections",
59
- "Displaying a preview or summary of an item",
60
- "Building dashboard widgets or tiles"
61
- ],
62
- "whenNot": [
63
- "Simple text content that does not need grouping",
64
- "Modal or dialog content (use Dialog component)",
65
- "Navigation items (use List or Sidebar patterns)"
66
- ],
67
- "guidelines": [
68
- "Use consistent card variants within the same context",
69
- "Cards in a grid should have uniform sizing",
70
- "Use elevated variant sparingly for emphasis",
71
- "Use stat and panel variants for dashboard surfaces so spacing, border, and radius stay consistent",
72
- "If a card is clickable, provide clear hover/focus affordances and prefer explicit buttons/links inside the card"
73
- ],
74
- "accessibility": [
75
- "Card is a semantic container (article/div/section); onClick adds keyboard and role=\"button\" behavior, but explicit Button or Link actions are preferred",
76
- "Card titles should be appropriate heading levels"
77
- ]
78
- },
79
- "examples": [
80
- {
81
- "name": "Nested Heading",
82
- "description": "Select the heading level required by the surrounding document outline",
83
- "code": "<Card variant=\"panel\" padding=\"none\">\n <Card.Header divided>\n <Card.Title as=\"h4\">Nested panel</Card.Title>\n </Card.Header>\n <Card.Body padding=\"md\">Panel content</Card.Body>\n</Card>"
84
- },
85
- {
86
- "name": "Default",
87
- "description": "Standard quiet card surface",
88
- "code": "<Card>\n <Card.Header>\n <Card.Title>Card Title</Card.Title>\n <Card.Description>A brief description</Card.Description>\n </Card.Header>\n <Card.Body>Card content goes here.</Card.Body>\n</Card>"
89
- },
90
- {
91
- "name": "Outlined",
92
- "description": "Card with border instead of shadow",
93
- "code": "<Card variant=\"outlined\">\n <Card.Header>\n <Card.Title>Outlined Card</Card.Title>\n </Card.Header>\n <Card.Body>Content with border.</Card.Body>\n</Card>"
94
- },
95
- {
96
- "name": "Outline",
97
- "description": "Card with border, using the \"outline\" alias for \"outlined\"",
98
- "code": "<Card variant=\"outline\">\n <Card.Header>\n <Card.Title>Outline Card</Card.Title>\n </Card.Header>\n <Card.Body>Uses the Radix/Shadcn-style alias.</Card.Body>\n</Card>"
99
- },
100
- {
101
- "name": "Elevated",
102
- "description": "Card with prominent shadow for emphasis",
103
- "code": "<Card variant=\"elevated\">\n <Card.Header>\n <Card.Title>Featured Item</Card.Title>\n </Card.Header>\n <Card.Body>Important content.</Card.Body>\n</Card>"
104
- },
105
- {
106
- "name": "Stat",
107
- "description": "Compact metric tile for dashboard grids",
108
- "code": "<Card variant=\"stat\">\n <Stack gap=\"md\">\n <Stack gap=\"xs\">\n <Text as=\"strong\" size=\"2xl\" weight=\"bold\" letterSpacing=\"tighter\" tabularNums>94%</Text>\n <Text as=\"p\" size=\"sm\" color=\"secondary\">Component coverage</Text>\n </Stack>\n <Progress value={94} variant=\"success\" size=\"sm\" aria-label=\"Component coverage progress\" />\n </Stack>\n</Card>"
109
- },
110
- {
111
- "name": "Panel",
112
- "description": "Dashboard panel with a divided header and body-owned spacing",
113
- "code": "<Card variant=\"panel\" padding=\"none\">\n <Card.Header divided>\n <Card.Title>System states</Card.Title>\n </Card.Header>\n <Card.Body padding=\"md\">\n Panel content\n </Card.Body>\n</Card>"
114
- },
115
- {
116
- "name": "Interactive",
117
- "description": "Clickable card surface (root stays a semantic container)",
118
- "code": "<Card as=\"section\" onClick={() => alert('Card clicked!')}>\n <Card.Header>\n <Card.Title>Click Me</Card.Title>\n <Card.Description>This card is interactive</Card.Description>\n </Card.Header>\n <Card.Body>Click anywhere on this card.</Card.Body>\n</Card>"
119
- },
120
- {
121
- "name": "Section Root",
122
- "description": "Use the as prop to match the surrounding document semantics",
123
- "code": "<Card as=\"section\" aria-labelledby=\"billing-card-title\">\n <Card.Header>\n <Card.Title id=\"billing-card-title\">Billing Summary</Card.Title>\n </Card.Header>\n <Card.Body>Section semantics can improve document structure for grouped content.</Card.Body>\n</Card>"
124
- },
125
- {
126
- "name": "With Footer",
127
- "description": "Card with header, body, and footer",
128
- "code": "<Card>\n <Card.Header>\n <Card.Title>Card with Footer</Card.Title>\n <Card.Description>Complete card layout</Card.Description>\n </Card.Header>\n <Card.Body>Main content area.</Card.Body>\n <Card.Footer>Footer actions go here</Card.Footer>\n</Card>"
129
- },
130
- {
131
- "name": "Content Only",
132
- "description": "Card with just body content",
133
- "code": "<Card>\n <Card.Body>Just content, no header or footer.</Card.Body>\n</Card>"
134
- }
135
- ],
136
- "relations": [
137
- {
138
- "component": "Grid",
139
- "relationship": "parent",
140
- "note": "Use Grid + Card for responsive card layouts"
141
- },
142
- {
143
- "component": "List",
144
- "relationship": "alternative",
145
- "note": "Use List for linear, text-first layouts"
146
- }
147
- ],
148
- "contract": {
149
- "propsSummary": [
150
- "variant: default|outlined|outline|elevated|stat|panel (default: default)",
151
- "padding: none|sm|md|lg (default: md)",
152
- "as: article|div|section (default: article) - card root element",
153
- "onClick: (event) => void - click handler on root (adds role/button keyboard behavior)",
154
- "Sub-components: Card.Header, Card.Title, Card.Description, Card.Body, Card.Footer",
155
- "Card.Body padding: none|sm|md|lg - use for panel body spacing"
156
- ],
157
- "a11yRules": ["A11Y_CARD_HEADING", "A11Y_CARD_INTERACTIVE"]
158
- },
159
- "ai": {
160
- "compositionPattern": "compound",
161
- "subComponents": ["Header", "Title", "Description", "Body", "Footer"],
162
- "requiredChildren": ["Body"],
163
- "commonPatterns": [
164
- "<Card><Card.Body>{content}</Card.Body></Card>",
165
- "<Card><Card.Header><Card.Title>{title}</Card.Title></Card.Header><Card.Body>{content}</Card.Body></Card>",
166
- "<Card><Card.Header><Card.Title>{title}</Card.Title><Card.Description>{desc}</Card.Description></Card.Header><Card.Body>{content}</Card.Body><Card.Footer>{actions}</Card.Footer></Card>"
167
- ]
168
- },
169
- "provenance": {
170
- "source": "migrated",
171
- "verified": false,
172
- "frameworkSupport": "native",
173
- "extractedAt": "2026-03-13T23:18:51.869Z"
174
- }
175
- }