@womp/kookie-ui 0.17.0 → 0.19.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 (851) hide show
  1. package/components.css +2086 -4086
  2. package/dist/cjs/components/_internal/base-button.d.ts.map +1 -1
  3. package/dist/cjs/components/_internal/base-button.js +1 -1
  4. package/dist/cjs/components/_internal/base-button.js.map +4 -4
  5. package/dist/cjs/components/_internal/base-checkbox.props.d.ts +1 -1
  6. package/dist/cjs/components/_internal/base-checkbox.props.js +1 -1
  7. package/dist/cjs/components/_internal/base-checkbox.props.js.map +2 -2
  8. package/dist/cjs/components/_internal/base-menu.utils.js +1 -1
  9. package/dist/cjs/components/_internal/base-menu.utils.js.map +2 -2
  10. package/dist/cjs/components/_internal/base-radio.props.d.ts +1 -1
  11. package/dist/cjs/components/_internal/base-radio.props.js +1 -1
  12. package/dist/cjs/components/_internal/base-radio.props.js.map +2 -2
  13. package/dist/cjs/components/_internal/pane-chrome.js +1 -1
  14. package/dist/cjs/components/_internal/pane-chrome.js.map +3 -3
  15. package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
  16. package/dist/cjs/components/_internal/shell-sidebar.js.map +3 -3
  17. package/dist/cjs/components/accordion.d.ts.map +1 -1
  18. package/dist/cjs/components/accordion.js +1 -1
  19. package/dist/cjs/components/accordion.js.map +4 -4
  20. package/dist/cjs/components/alert-dialog.d.ts.map +1 -1
  21. package/dist/cjs/components/alert-dialog.js +1 -1
  22. package/dist/cjs/components/alert-dialog.js.map +4 -4
  23. package/dist/cjs/components/alert-dialog.props.d.ts +1 -2
  24. package/dist/cjs/components/alert-dialog.props.d.ts.map +1 -1
  25. package/dist/cjs/components/alert-dialog.props.js +1 -1
  26. package/dist/cjs/components/alert-dialog.props.js.map +2 -2
  27. package/dist/cjs/components/avatar.js +1 -1
  28. package/dist/cjs/components/avatar.js.map +2 -2
  29. package/dist/cjs/components/badge.js +1 -1
  30. package/dist/cjs/components/badge.js.map +4 -4
  31. package/dist/cjs/components/badge.props.d.ts +1 -1
  32. package/dist/cjs/components/badge.props.js +1 -1
  33. package/dist/cjs/components/badge.props.js.map +1 -1
  34. package/dist/cjs/components/blockquote.js +1 -1
  35. package/dist/cjs/components/blockquote.js.map +2 -2
  36. package/dist/cjs/components/box.js +1 -1
  37. package/dist/cjs/components/box.js.map +2 -2
  38. package/dist/cjs/components/button.js +2 -2
  39. package/dist/cjs/components/button.js.map +4 -4
  40. package/dist/cjs/components/card.d.ts.map +1 -1
  41. package/dist/cjs/components/card.js +1 -1
  42. package/dist/cjs/components/card.js.map +4 -4
  43. package/dist/cjs/components/card.props.d.ts +3 -10
  44. package/dist/cjs/components/card.props.d.ts.map +1 -1
  45. package/dist/cjs/components/card.props.js +1 -1
  46. package/dist/cjs/components/card.props.js.map +2 -2
  47. package/dist/cjs/components/chatbar.d.ts.map +1 -1
  48. package/dist/cjs/components/chatbar.js +2 -2
  49. package/dist/cjs/components/chatbar.js.map +4 -4
  50. package/dist/cjs/components/checkbox-cards.d.ts.map +1 -1
  51. package/dist/cjs/components/checkbox-cards.js +1 -1
  52. package/dist/cjs/components/checkbox-cards.js.map +4 -4
  53. package/dist/cjs/components/checkbox-cards.props.d.ts +2 -1
  54. package/dist/cjs/components/checkbox-cards.props.d.ts.map +1 -1
  55. package/dist/cjs/components/checkbox-cards.props.js +1 -1
  56. package/dist/cjs/components/checkbox-cards.props.js.map +2 -2
  57. package/dist/cjs/components/checkbox-group.d.ts.map +1 -1
  58. package/dist/cjs/components/checkbox-group.js +1 -1
  59. package/dist/cjs/components/checkbox-group.js.map +4 -4
  60. package/dist/cjs/components/checkbox-group.props.d.ts +1 -1
  61. package/dist/cjs/components/checkbox-group.props.js +1 -1
  62. package/dist/cjs/components/checkbox-group.props.js.map +2 -2
  63. package/dist/cjs/components/checkbox.d.ts.map +1 -1
  64. package/dist/cjs/components/checkbox.js +1 -1
  65. package/dist/cjs/components/checkbox.js.map +4 -4
  66. package/dist/cjs/components/checkbox.props.js +1 -1
  67. package/dist/cjs/components/checkbox.props.js.map +2 -2
  68. package/dist/cjs/components/code.js +1 -1
  69. package/dist/cjs/components/code.js.map +2 -2
  70. package/dist/cjs/components/combobox.d.ts.map +1 -1
  71. package/dist/cjs/components/combobox.js +1 -1
  72. package/dist/cjs/components/combobox.js.map +4 -4
  73. package/dist/cjs/components/container.js +1 -1
  74. package/dist/cjs/components/container.js.map +2 -2
  75. package/dist/cjs/components/context-menu.d.ts.map +1 -1
  76. package/dist/cjs/components/context-menu.js +1 -1
  77. package/dist/cjs/components/context-menu.js.map +4 -4
  78. package/dist/cjs/components/data-list.d.ts.map +1 -1
  79. package/dist/cjs/components/data-list.js +1 -1
  80. package/dist/cjs/components/data-list.js.map +4 -4
  81. package/dist/cjs/components/dialog.d.ts.map +1 -1
  82. package/dist/cjs/components/dialog.js +1 -1
  83. package/dist/cjs/components/dialog.js.map +4 -4
  84. package/dist/cjs/components/dialog.props.d.ts +1 -2
  85. package/dist/cjs/components/dialog.props.d.ts.map +1 -1
  86. package/dist/cjs/components/dialog.props.js +1 -1
  87. package/dist/cjs/components/dialog.props.js.map +2 -2
  88. package/dist/cjs/components/dropdown-menu.d.ts.map +1 -1
  89. package/dist/cjs/components/dropdown-menu.js +1 -1
  90. package/dist/cjs/components/dropdown-menu.js.map +4 -4
  91. package/dist/cjs/components/flex.js +1 -1
  92. package/dist/cjs/components/flex.js.map +2 -2
  93. package/dist/cjs/components/grid.js +1 -1
  94. package/dist/cjs/components/grid.js.map +2 -2
  95. package/dist/cjs/components/heading.js +1 -1
  96. package/dist/cjs/components/heading.js.map +2 -2
  97. package/dist/cjs/components/hover-card.d.ts.map +1 -1
  98. package/dist/cjs/components/hover-card.js +1 -1
  99. package/dist/cjs/components/hover-card.js.map +4 -4
  100. package/dist/cjs/components/hover-card.props.d.ts +1 -1
  101. package/dist/cjs/components/hover-card.props.js +1 -1
  102. package/dist/cjs/components/hover-card.props.js.map +2 -2
  103. package/dist/cjs/components/icon-button.js +2 -2
  104. package/dist/cjs/components/icon-button.js.map +4 -4
  105. package/dist/cjs/components/image.js +1 -1
  106. package/dist/cjs/components/image.js.map +2 -2
  107. package/dist/cjs/components/index.d.ts +0 -1
  108. package/dist/cjs/components/index.d.ts.map +1 -1
  109. package/dist/cjs/components/index.js +5 -5
  110. package/dist/cjs/components/index.js.map +4 -4
  111. package/dist/cjs/components/kbd.js +1 -1
  112. package/dist/cjs/components/kbd.js.map +2 -2
  113. package/dist/cjs/components/link.js +1 -1
  114. package/dist/cjs/components/link.js.map +2 -2
  115. package/dist/cjs/components/message-scroller.js +2 -2
  116. package/dist/cjs/components/message-scroller.js.map +4 -4
  117. package/dist/cjs/components/navbar.d.ts.map +1 -1
  118. package/dist/cjs/components/navbar.js +1 -1
  119. package/dist/cjs/components/navbar.js.map +4 -4
  120. package/dist/cjs/components/notice.d.ts +2 -2
  121. package/dist/cjs/components/notice.d.ts.map +1 -1
  122. package/dist/cjs/components/notice.js +2 -2
  123. package/dist/cjs/components/notice.js.map +4 -4
  124. package/dist/cjs/components/popover.d.ts.map +1 -1
  125. package/dist/cjs/components/popover.js +1 -1
  126. package/dist/cjs/components/popover.js.map +4 -4
  127. package/dist/cjs/components/progress.js +1 -1
  128. package/dist/cjs/components/progress.js.map +3 -3
  129. package/dist/cjs/components/progress.props.d.ts +0 -7
  130. package/dist/cjs/components/progress.props.d.ts.map +1 -1
  131. package/dist/cjs/components/progress.props.js +1 -1
  132. package/dist/cjs/components/progress.props.js.map +3 -3
  133. package/dist/cjs/components/radio-cards.d.ts.map +1 -1
  134. package/dist/cjs/components/radio-cards.js +1 -1
  135. package/dist/cjs/components/radio-cards.js.map +4 -4
  136. package/dist/cjs/components/radio-cards.props.d.ts +2 -1
  137. package/dist/cjs/components/radio-cards.props.d.ts.map +1 -1
  138. package/dist/cjs/components/radio-cards.props.js +1 -1
  139. package/dist/cjs/components/radio-cards.props.js.map +2 -2
  140. package/dist/cjs/components/radio-group.d.ts.map +1 -1
  141. package/dist/cjs/components/radio-group.js +1 -1
  142. package/dist/cjs/components/radio-group.js.map +4 -4
  143. package/dist/cjs/components/radio-group.props.d.ts +1 -1
  144. package/dist/cjs/components/radio-group.props.js +1 -1
  145. package/dist/cjs/components/radio-group.props.js.map +2 -2
  146. package/dist/cjs/components/radio.d.ts.map +1 -1
  147. package/dist/cjs/components/radio.js +1 -1
  148. package/dist/cjs/components/radio.js.map +4 -4
  149. package/dist/cjs/components/radio.props.js +1 -1
  150. package/dist/cjs/components/radio.props.js.map +2 -2
  151. package/dist/cjs/components/scroll-area.d.ts.map +1 -1
  152. package/dist/cjs/components/scroll-area.js +1 -1
  153. package/dist/cjs/components/scroll-area.js.map +3 -3
  154. package/dist/cjs/components/scroll-area.props.d.ts +0 -7
  155. package/dist/cjs/components/scroll-area.props.d.ts.map +1 -1
  156. package/dist/cjs/components/scroll-area.props.js +1 -1
  157. package/dist/cjs/components/scroll-area.props.js.map +3 -3
  158. package/dist/cjs/components/section.js +1 -1
  159. package/dist/cjs/components/section.js.map +2 -2
  160. package/dist/cjs/components/segmented-control.d.ts.map +1 -1
  161. package/dist/cjs/components/segmented-control.js +1 -1
  162. package/dist/cjs/components/segmented-control.js.map +4 -4
  163. package/dist/cjs/components/select.d.ts.map +1 -1
  164. package/dist/cjs/components/select.js +1 -1
  165. package/dist/cjs/components/select.js.map +4 -4
  166. package/dist/cjs/components/separator.js +1 -1
  167. package/dist/cjs/components/separator.js.map +3 -3
  168. package/dist/cjs/components/separator.props.d.ts +0 -7
  169. package/dist/cjs/components/separator.props.d.ts.map +1 -1
  170. package/dist/cjs/components/separator.props.js +1 -1
  171. package/dist/cjs/components/separator.props.js.map +3 -3
  172. package/dist/cjs/components/sheet.d.ts +2 -2
  173. package/dist/cjs/components/sheet.d.ts.map +1 -1
  174. package/dist/cjs/components/sheet.js +1 -1
  175. package/dist/cjs/components/sheet.js.map +4 -4
  176. package/dist/cjs/components/shell.d.ts +1 -1
  177. package/dist/cjs/components/shell.d.ts.map +1 -1
  178. package/dist/cjs/components/shell.js +1 -1
  179. package/dist/cjs/components/shell.js.map +4 -4
  180. package/dist/cjs/components/sidebar.js +1 -1
  181. package/dist/cjs/components/sidebar.js.map +4 -4
  182. package/dist/cjs/components/skeleton.js +1 -1
  183. package/dist/cjs/components/skeleton.js.map +2 -2
  184. package/dist/cjs/components/slider.d.ts.map +1 -1
  185. package/dist/cjs/components/slider.js +1 -1
  186. package/dist/cjs/components/slider.js.map +4 -4
  187. package/dist/cjs/components/spinner.js +1 -1
  188. package/dist/cjs/components/spinner.js.map +3 -3
  189. package/dist/cjs/components/spinner.props.d.ts +0 -7
  190. package/dist/cjs/components/spinner.props.d.ts.map +1 -1
  191. package/dist/cjs/components/spinner.props.js +1 -1
  192. package/dist/cjs/components/spinner.props.js.map +3 -3
  193. package/dist/cjs/components/switch.d.ts.map +1 -1
  194. package/dist/cjs/components/switch.js +1 -1
  195. package/dist/cjs/components/switch.js.map +4 -4
  196. package/dist/cjs/components/tab-nav.d.ts.map +1 -1
  197. package/dist/cjs/components/tab-nav.js +1 -1
  198. package/dist/cjs/components/tab-nav.js.map +4 -4
  199. package/dist/cjs/components/table.d.ts.map +1 -1
  200. package/dist/cjs/components/table.js +1 -1
  201. package/dist/cjs/components/table.js.map +4 -4
  202. package/dist/cjs/components/table.props.d.ts +1 -1
  203. package/dist/cjs/components/table.props.js +1 -1
  204. package/dist/cjs/components/table.props.js.map +2 -2
  205. package/dist/cjs/components/tabs.d.ts.map +1 -1
  206. package/dist/cjs/components/tabs.js +1 -1
  207. package/dist/cjs/components/tabs.js.map +4 -4
  208. package/dist/cjs/components/text-area.d.ts.map +1 -1
  209. package/dist/cjs/components/text-area.js +1 -1
  210. package/dist/cjs/components/text-area.js.map +4 -4
  211. package/dist/cjs/components/text-field.d.ts.map +1 -1
  212. package/dist/cjs/components/text-field.js +2 -2
  213. package/dist/cjs/components/text-field.js.map +4 -4
  214. package/dist/cjs/components/text.js +1 -1
  215. package/dist/cjs/components/text.js.map +2 -2
  216. package/dist/cjs/components/theme-panel.js +3 -3
  217. package/dist/cjs/components/theme-panel.js.map +4 -4
  218. package/dist/cjs/components/theme.d.ts +3 -0
  219. package/dist/cjs/components/theme.d.ts.map +1 -1
  220. package/dist/cjs/components/theme.js +1 -1
  221. package/dist/cjs/components/theme.js.map +4 -4
  222. package/dist/cjs/components/theme.props.d.ts +12 -0
  223. package/dist/cjs/components/theme.props.d.ts.map +1 -1
  224. package/dist/cjs/components/theme.props.js +1 -1
  225. package/dist/cjs/components/theme.props.js.map +3 -3
  226. package/dist/cjs/components/toggle-button.js +3 -3
  227. package/dist/cjs/components/toggle-button.js.map +4 -4
  228. package/dist/cjs/components/toggle-icon-button.js +3 -3
  229. package/dist/cjs/components/toggle-icon-button.js.map +4 -4
  230. package/dist/cjs/components/toolbar.d.ts.map +1 -1
  231. package/dist/cjs/components/toolbar.js +2 -2
  232. package/dist/cjs/components/toolbar.js.map +4 -4
  233. package/dist/cjs/components/tooltip.js +1 -1
  234. package/dist/cjs/components/tooltip.js.map +4 -4
  235. package/dist/cjs/helpers/extract-margin-props.d.ts +7 -7
  236. package/dist/cjs/helpers/get-margin-styles.js +1 -1
  237. package/dist/cjs/helpers/get-margin-styles.js.map +2 -2
  238. package/dist/cjs/helpers/index.d.ts +1 -0
  239. package/dist/cjs/helpers/index.d.ts.map +1 -1
  240. package/dist/cjs/helpers/index.js +3 -3
  241. package/dist/cjs/helpers/index.js.map +4 -4
  242. package/dist/cjs/helpers/map-prop-values.d.ts +1 -4
  243. package/dist/cjs/helpers/map-prop-values.d.ts.map +1 -1
  244. package/dist/cjs/helpers/map-prop-values.js +1 -1
  245. package/dist/cjs/helpers/map-prop-values.js.map +3 -3
  246. package/dist/cjs/helpers/theme-size.d.ts +41 -0
  247. package/dist/cjs/helpers/theme-size.d.ts.map +1 -0
  248. package/dist/cjs/helpers/theme-size.js +2 -0
  249. package/dist/cjs/helpers/theme-size.js.map +7 -0
  250. package/dist/cjs/index.js +7 -7
  251. package/dist/cjs/index.js.map +4 -4
  252. package/dist/cjs/props/index.d.ts +0 -1
  253. package/dist/cjs/props/index.d.ts.map +1 -1
  254. package/dist/cjs/props/index.js +1 -1
  255. package/dist/cjs/props/index.js.map +4 -4
  256. package/dist/cjs/props/margin.props.d.ts +7 -7
  257. package/dist/cjs/props/margin.props.js +1 -1
  258. package/dist/cjs/props/margin.props.js.map +2 -2
  259. package/dist/esm/chunk-2FPJ6Q2N.js +2 -0
  260. package/dist/esm/chunk-2FPJ6Q2N.js.map +7 -0
  261. package/dist/esm/{chunk-6WFEMPCF.js → chunk-2XQECQF2.js} +2 -2
  262. package/dist/esm/{chunk-4STOJSJZ.js → chunk-32ATKZAP.js} +2 -2
  263. package/dist/esm/{chunk-4STOJSJZ.js.map → chunk-32ATKZAP.js.map} +2 -2
  264. package/dist/esm/chunk-3YLYGKFB.js +2 -0
  265. package/dist/esm/chunk-3YLYGKFB.js.map +7 -0
  266. package/dist/esm/chunk-42LDZ7L5.js +2 -0
  267. package/dist/esm/chunk-42LDZ7L5.js.map +7 -0
  268. package/dist/esm/{chunk-AMP7O3DM.js → chunk-43A5GUSI.js} +2 -2
  269. package/dist/esm/{chunk-MDHXSEGH.js → chunk-4ITIXBIP.js} +2 -2
  270. package/dist/esm/{chunk-MDHXSEGH.js.map → chunk-4ITIXBIP.js.map} +2 -2
  271. package/dist/esm/chunk-4YQXYWDQ.js +2 -0
  272. package/dist/esm/chunk-4YQXYWDQ.js.map +7 -0
  273. package/dist/esm/chunk-54KMG7NX.js +2 -0
  274. package/dist/esm/chunk-54KMG7NX.js.map +7 -0
  275. package/dist/esm/{chunk-COSHAOEK.js → chunk-63ASTOS2.js} +2 -2
  276. package/dist/esm/chunk-6AZV4VFW.js +2 -0
  277. package/dist/esm/chunk-6AZV4VFW.js.map +7 -0
  278. package/dist/esm/{chunk-UBSLEGQZ.js → chunk-6FLLFCBU.js} +2 -2
  279. package/dist/esm/{chunk-SM27AC7E.js → chunk-6RZVKCNG.js} +2 -2
  280. package/dist/esm/{chunk-RFURPE7W.js → chunk-6XNQ5XD3.js} +2 -2
  281. package/dist/esm/{chunk-JLI7WHV6.js → chunk-7FC7HF76.js} +2 -2
  282. package/dist/esm/chunk-7KIKAEI7.js +2 -0
  283. package/dist/esm/chunk-7KIKAEI7.js.map +7 -0
  284. package/dist/esm/chunk-7SS6EIE5.js +5 -0
  285. package/dist/esm/chunk-7SS6EIE5.js.map +7 -0
  286. package/dist/esm/chunk-7UV4FYYL.js +2 -0
  287. package/dist/esm/chunk-7UV4FYYL.js.map +7 -0
  288. package/dist/esm/chunk-ABS275QZ.js +2 -0
  289. package/dist/esm/{chunk-TPHNDGSV.js → chunk-AI6UQ5VD.js} +2 -2
  290. package/dist/esm/chunk-BINUV3ME.js +2 -0
  291. package/dist/esm/chunk-BINUV3ME.js.map +7 -0
  292. package/dist/esm/chunk-BQS6XXJR.js +2 -0
  293. package/dist/esm/chunk-BQS6XXJR.js.map +7 -0
  294. package/dist/esm/{chunk-O6K6RZXY.js → chunk-BUBV3C6C.js} +2 -2
  295. package/dist/esm/{chunk-AO32NT75.js → chunk-CLEH57SW.js} +2 -2
  296. package/dist/esm/chunk-CR2BSCFM.js +2 -0
  297. package/dist/esm/chunk-CR2BSCFM.js.map +7 -0
  298. package/dist/esm/chunk-D2ZHYCTG.js +2 -0
  299. package/dist/esm/chunk-D2ZHYCTG.js.map +7 -0
  300. package/dist/esm/{chunk-XHKL4PG7.js → chunk-DIR22XIX.js} +2 -2
  301. package/dist/esm/{chunk-TGRRQHLQ.js → chunk-DMWLY6ZP.js} +2 -2
  302. package/dist/esm/chunk-E453PYTG.js +2 -0
  303. package/dist/esm/chunk-E453PYTG.js.map +7 -0
  304. package/dist/esm/chunk-E4KCVRBQ.js +2 -0
  305. package/dist/esm/chunk-E4KCVRBQ.js.map +7 -0
  306. package/dist/esm/chunk-F2UUKVBM.js +1 -0
  307. package/dist/esm/chunk-FNRKTMNN.js +2 -0
  308. package/dist/esm/chunk-FNRKTMNN.js.map +7 -0
  309. package/dist/esm/{chunk-WKMJIWFP.js → chunk-FTGD2SZ6.js} +2 -2
  310. package/dist/esm/{chunk-RSJSVJ6A.js → chunk-G3U6OHVA.js} +2 -2
  311. package/dist/esm/chunk-G6PO4QKW.js +2 -0
  312. package/dist/esm/chunk-G6PO4QKW.js.map +7 -0
  313. package/dist/esm/{chunk-CRYT55SY.js → chunk-GIIMBBVM.js} +2 -2
  314. package/dist/esm/{chunk-DSB3TEAQ.js → chunk-GLERJXVS.js} +2 -2
  315. package/dist/esm/chunk-GPVPXAUC.js +2 -0
  316. package/dist/esm/chunk-GPVPXAUC.js.map +7 -0
  317. package/dist/esm/chunk-GYB7PAGB.js +2 -0
  318. package/dist/esm/chunk-GYB7PAGB.js.map +7 -0
  319. package/dist/esm/{chunk-MZQDDG5K.js → chunk-GYNRAVCL.js} +2 -2
  320. package/dist/esm/chunk-HIEGLLY7.js +2 -0
  321. package/dist/esm/chunk-HIEGLLY7.js.map +7 -0
  322. package/dist/esm/chunk-HT5EFJA3.js +2 -0
  323. package/dist/esm/chunk-HT5EFJA3.js.map +7 -0
  324. package/dist/esm/chunk-HZYE46V2.js +2 -0
  325. package/dist/esm/chunk-HZYE46V2.js.map +7 -0
  326. package/dist/esm/{chunk-BFLO4IVZ.js → chunk-IXNJFV4O.js} +2 -2
  327. package/dist/esm/chunk-JBC6DT2X.js +2 -0
  328. package/dist/esm/chunk-JBC6DT2X.js.map +7 -0
  329. package/dist/esm/chunk-JRIBL4WJ.js +2 -0
  330. package/dist/esm/chunk-JRIBL4WJ.js.map +7 -0
  331. package/dist/esm/{chunk-PBFSBHBS.js → chunk-JUY7CBSL.js} +2 -2
  332. package/dist/esm/{chunk-V2TPYSZ2.js → chunk-JZSXHYUU.js} +2 -2
  333. package/dist/esm/{chunk-GVLTTTFL.js → chunk-K6Y2SM5N.js} +2 -2
  334. package/dist/esm/{chunk-CL6LRPCS.js → chunk-KDKL3HXD.js} +2 -2
  335. package/dist/esm/{chunk-XHF6RBOE.js → chunk-KRPEEM4C.js} +2 -2
  336. package/dist/esm/{chunk-5SQL4ZRC.js → chunk-KSZOVI57.js} +2 -2
  337. package/dist/esm/{chunk-5SQL4ZRC.js.map → chunk-KSZOVI57.js.map} +1 -1
  338. package/dist/esm/{chunk-DP3OWU5T.js → chunk-L2IIIELE.js} +2 -2
  339. package/dist/esm/chunk-LFUPGIPA.js +2 -0
  340. package/dist/esm/chunk-LFUPGIPA.js.map +7 -0
  341. package/dist/esm/chunk-MLXHD7YF.js +2 -0
  342. package/dist/esm/chunk-MLXHD7YF.js.map +7 -0
  343. package/dist/esm/chunk-MZR6YBE7.js +2 -0
  344. package/dist/esm/chunk-MZR6YBE7.js.map +7 -0
  345. package/dist/esm/{chunk-K5SC3CZZ.js → chunk-N5OSP3PU.js} +2 -2
  346. package/dist/esm/{chunk-IF4PYIUV.js → chunk-N77QJUTO.js} +2 -2
  347. package/dist/esm/{chunk-XZ5XZS5O.js → chunk-NETIWKIR.js} +2 -2
  348. package/dist/esm/{chunk-2IPVLV6B.js → chunk-OMYAVTX6.js} +2 -2
  349. package/dist/esm/{chunk-7CBZFHSQ.js → chunk-OXYHRNJA.js} +2 -2
  350. package/dist/esm/{chunk-L6M2MI7Y.js → chunk-PIMNQEDG.js} +2 -2
  351. package/dist/esm/chunk-PUQXBW2K.js +2 -0
  352. package/dist/esm/chunk-PUQXBW2K.js.map +7 -0
  353. package/dist/esm/chunk-PUVZFRTQ.js +2 -0
  354. package/dist/esm/chunk-PUVZFRTQ.js.map +7 -0
  355. package/dist/esm/chunk-Q5LPCJXN.js +2 -0
  356. package/dist/esm/chunk-Q5LPCJXN.js.map +7 -0
  357. package/dist/esm/chunk-QWLKMVZY.js +2 -0
  358. package/dist/esm/chunk-RUWKVDFT.js +2 -0
  359. package/dist/esm/chunk-RUWKVDFT.js.map +7 -0
  360. package/dist/esm/chunk-RVM4LGAU.js +2 -0
  361. package/dist/esm/chunk-RVM4LGAU.js.map +7 -0
  362. package/dist/esm/chunk-STMTXK7U.js +2 -0
  363. package/dist/esm/chunk-STMTXK7U.js.map +7 -0
  364. package/dist/esm/chunk-TLWCU336.js +2 -0
  365. package/dist/esm/chunk-TLWCU336.js.map +7 -0
  366. package/dist/esm/chunk-TQIR5LLY.js +2 -0
  367. package/dist/esm/chunk-TQIR5LLY.js.map +7 -0
  368. package/dist/esm/chunk-UFJJTUOU.js +2 -0
  369. package/dist/esm/chunk-UFJJTUOU.js.map +7 -0
  370. package/dist/esm/chunk-UONSKZQT.js +2 -0
  371. package/dist/esm/chunk-UONSKZQT.js.map +7 -0
  372. package/dist/esm/chunk-UUHTK35B.js +2 -0
  373. package/dist/esm/chunk-UUHTK35B.js.map +7 -0
  374. package/dist/esm/{chunk-YZABQ4LS.js → chunk-UUV5UNYL.js} +2 -2
  375. package/dist/esm/chunk-UUWGAQDT.js +2 -0
  376. package/dist/esm/chunk-UUWGAQDT.js.map +7 -0
  377. package/dist/esm/chunk-UZQO4APP.js +2 -0
  378. package/dist/esm/chunk-UZQO4APP.js.map +7 -0
  379. package/dist/esm/chunk-VLLJ7A6P.js +2 -0
  380. package/dist/esm/chunk-VLLJ7A6P.js.map +7 -0
  381. package/dist/esm/{chunk-S53ZQNHK.js → chunk-VLQ2LX5M.js} +2 -2
  382. package/dist/esm/chunk-VTTJFBV6.js +2 -0
  383. package/dist/esm/chunk-VTTJFBV6.js.map +7 -0
  384. package/dist/esm/{chunk-ORMCQAPS.js → chunk-WDDO73O5.js} +2 -2
  385. package/dist/esm/chunk-X3D3JR64.js +2 -0
  386. package/dist/esm/chunk-X3D3JR64.js.map +7 -0
  387. package/dist/esm/{chunk-3OABA7AF.js → chunk-X7HFFVFD.js} +2 -2
  388. package/dist/esm/chunk-XASK6LMX.js +2 -0
  389. package/dist/esm/chunk-XASK6LMX.js.map +7 -0
  390. package/dist/esm/{chunk-6HRBG5H2.js → chunk-XTE22CXV.js} +2 -2
  391. package/dist/esm/chunk-YS5BZRRK.js +2 -0
  392. package/dist/esm/chunk-YS5BZRRK.js.map +7 -0
  393. package/dist/esm/chunk-YVHRWMSZ.js +2 -0
  394. package/dist/esm/chunk-YVHRWMSZ.js.map +7 -0
  395. package/dist/esm/chunk-YYZBPQQ4.js +2 -0
  396. package/dist/esm/chunk-YYZBPQQ4.js.map +7 -0
  397. package/dist/esm/chunk-Z6NRR7KS.js +2 -0
  398. package/dist/esm/chunk-Z6NRR7KS.js.map +7 -0
  399. package/dist/esm/chunk-ZCAI2PRH.js +2 -0
  400. package/dist/esm/chunk-ZCAI2PRH.js.map +7 -0
  401. package/dist/esm/chunk-ZIKJ2WZN.js +2 -0
  402. package/dist/esm/chunk-ZIKJ2WZN.js.map +7 -0
  403. package/dist/esm/{chunk-35KS5AQE.js → chunk-ZMOBKT4T.js} +2 -2
  404. package/dist/esm/components/_internal/base-button.d.ts.map +1 -1
  405. package/dist/esm/components/_internal/base-button.js +1 -1
  406. package/dist/esm/components/_internal/base-checkbox.props.d.ts +1 -1
  407. package/dist/esm/components/_internal/base-checkbox.props.js +1 -1
  408. package/dist/esm/components/_internal/base-menu.utils.js +1 -1
  409. package/dist/esm/components/_internal/base-radio.props.d.ts +1 -1
  410. package/dist/esm/components/_internal/base-radio.props.js +1 -1
  411. package/dist/esm/components/_internal/menu-context.js +1 -1
  412. package/dist/esm/components/_internal/pane-chrome.js +1 -1
  413. package/dist/esm/components/_internal/shell-sidebar.js +1 -1
  414. package/dist/esm/components/accordion.d.ts.map +1 -1
  415. package/dist/esm/components/accordion.js +1 -1
  416. package/dist/esm/components/alert-dialog.d.ts.map +1 -1
  417. package/dist/esm/components/alert-dialog.js +1 -1
  418. package/dist/esm/components/alert-dialog.props.d.ts +1 -2
  419. package/dist/esm/components/alert-dialog.props.d.ts.map +1 -1
  420. package/dist/esm/components/alert-dialog.props.js +1 -1
  421. package/dist/esm/components/avatar.js +1 -1
  422. package/dist/esm/components/badge.js +1 -1
  423. package/dist/esm/components/badge.props.d.ts +1 -1
  424. package/dist/esm/components/badge.props.js +1 -1
  425. package/dist/esm/components/blockquote.js +1 -1
  426. package/dist/esm/components/box.js +1 -1
  427. package/dist/esm/components/button.js +1 -1
  428. package/dist/esm/components/card.d.ts.map +1 -1
  429. package/dist/esm/components/card.js +1 -1
  430. package/dist/esm/components/card.props.d.ts +3 -10
  431. package/dist/esm/components/card.props.d.ts.map +1 -1
  432. package/dist/esm/components/card.props.js +1 -1
  433. package/dist/esm/components/chatbar.d.ts.map +1 -1
  434. package/dist/esm/components/chatbar.js +1 -1
  435. package/dist/esm/components/checkbox-cards.d.ts.map +1 -1
  436. package/dist/esm/components/checkbox-cards.js +1 -1
  437. package/dist/esm/components/checkbox-cards.props.d.ts +2 -1
  438. package/dist/esm/components/checkbox-cards.props.d.ts.map +1 -1
  439. package/dist/esm/components/checkbox-cards.props.js +1 -1
  440. package/dist/esm/components/checkbox-group.d.ts.map +1 -1
  441. package/dist/esm/components/checkbox-group.js +1 -1
  442. package/dist/esm/components/checkbox-group.props.d.ts +1 -1
  443. package/dist/esm/components/checkbox-group.props.js +1 -1
  444. package/dist/esm/components/checkbox.d.ts.map +1 -1
  445. package/dist/esm/components/checkbox.js +1 -1
  446. package/dist/esm/components/checkbox.props.js +1 -1
  447. package/dist/esm/components/code.js +1 -1
  448. package/dist/esm/components/combobox.d.ts.map +1 -1
  449. package/dist/esm/components/combobox.js +1 -1
  450. package/dist/esm/components/container.js +1 -1
  451. package/dist/esm/components/context-menu.d.ts.map +1 -1
  452. package/dist/esm/components/context-menu.js +1 -1
  453. package/dist/esm/components/data-list.d.ts.map +1 -1
  454. package/dist/esm/components/data-list.js +1 -1
  455. package/dist/esm/components/dialog.d.ts.map +1 -1
  456. package/dist/esm/components/dialog.js +1 -1
  457. package/dist/esm/components/dialog.props.d.ts +1 -2
  458. package/dist/esm/components/dialog.props.d.ts.map +1 -1
  459. package/dist/esm/components/dialog.props.js +1 -1
  460. package/dist/esm/components/dropdown-menu.d.ts.map +1 -1
  461. package/dist/esm/components/dropdown-menu.js +1 -1
  462. package/dist/esm/components/em.js +1 -1
  463. package/dist/esm/components/flex.js +1 -1
  464. package/dist/esm/components/grid.js +1 -1
  465. package/dist/esm/components/heading.js +1 -1
  466. package/dist/esm/components/hover-card.d.ts.map +1 -1
  467. package/dist/esm/components/hover-card.js +1 -1
  468. package/dist/esm/components/hover-card.props.d.ts +1 -1
  469. package/dist/esm/components/hover-card.props.js +1 -1
  470. package/dist/esm/components/icon-button.js +1 -1
  471. package/dist/esm/components/image.js +1 -1
  472. package/dist/esm/components/index.d.ts +0 -1
  473. package/dist/esm/components/index.d.ts.map +1 -1
  474. package/dist/esm/components/index.js +1 -1
  475. package/dist/esm/components/kbd.js +1 -1
  476. package/dist/esm/components/link.js +1 -1
  477. package/dist/esm/components/message-scroller.js +1 -1
  478. package/dist/esm/components/navbar.d.ts.map +1 -1
  479. package/dist/esm/components/navbar.js +1 -1
  480. package/dist/esm/components/notice.d.ts +2 -2
  481. package/dist/esm/components/notice.d.ts.map +1 -1
  482. package/dist/esm/components/notice.js +1 -1
  483. package/dist/esm/components/popover.d.ts.map +1 -1
  484. package/dist/esm/components/popover.js +1 -1
  485. package/dist/esm/components/progress.js +1 -1
  486. package/dist/esm/components/progress.props.d.ts +0 -7
  487. package/dist/esm/components/progress.props.d.ts.map +1 -1
  488. package/dist/esm/components/progress.props.js +1 -1
  489. package/dist/esm/components/quote.js +1 -1
  490. package/dist/esm/components/radio-cards.d.ts.map +1 -1
  491. package/dist/esm/components/radio-cards.js +1 -1
  492. package/dist/esm/components/radio-cards.props.d.ts +2 -1
  493. package/dist/esm/components/radio-cards.props.d.ts.map +1 -1
  494. package/dist/esm/components/radio-cards.props.js +1 -1
  495. package/dist/esm/components/radio-group.d.ts.map +1 -1
  496. package/dist/esm/components/radio-group.js +1 -1
  497. package/dist/esm/components/radio-group.props.d.ts +1 -1
  498. package/dist/esm/components/radio-group.props.js +1 -1
  499. package/dist/esm/components/radio.d.ts.map +1 -1
  500. package/dist/esm/components/radio.js +1 -1
  501. package/dist/esm/components/radio.props.js +1 -1
  502. package/dist/esm/components/schemas/index.js +1 -1
  503. package/dist/esm/components/scroll-area.d.ts.map +1 -1
  504. package/dist/esm/components/scroll-area.js +1 -1
  505. package/dist/esm/components/scroll-area.props.d.ts +0 -7
  506. package/dist/esm/components/scroll-area.props.d.ts.map +1 -1
  507. package/dist/esm/components/scroll-area.props.js +1 -1
  508. package/dist/esm/components/section.js +1 -1
  509. package/dist/esm/components/segmented-control.d.ts.map +1 -1
  510. package/dist/esm/components/segmented-control.js +1 -1
  511. package/dist/esm/components/select.d.ts.map +1 -1
  512. package/dist/esm/components/select.js +1 -1
  513. package/dist/esm/components/separator.js +1 -1
  514. package/dist/esm/components/separator.props.d.ts +0 -7
  515. package/dist/esm/components/separator.props.d.ts.map +1 -1
  516. package/dist/esm/components/separator.props.js +1 -1
  517. package/dist/esm/components/sheet.d.ts +2 -2
  518. package/dist/esm/components/sheet.d.ts.map +1 -1
  519. package/dist/esm/components/sheet.js +1 -1
  520. package/dist/esm/components/shell.d.ts +1 -1
  521. package/dist/esm/components/shell.d.ts.map +1 -1
  522. package/dist/esm/components/shell.js +1 -1
  523. package/dist/esm/components/sidebar.js +1 -1
  524. package/dist/esm/components/skeleton.js +1 -1
  525. package/dist/esm/components/slider.d.ts.map +1 -1
  526. package/dist/esm/components/slider.js +1 -1
  527. package/dist/esm/components/spinner.js +1 -1
  528. package/dist/esm/components/spinner.props.d.ts +0 -7
  529. package/dist/esm/components/spinner.props.d.ts.map +1 -1
  530. package/dist/esm/components/spinner.props.js +1 -1
  531. package/dist/esm/components/strong.js +1 -1
  532. package/dist/esm/components/switch.d.ts.map +1 -1
  533. package/dist/esm/components/switch.js +1 -1
  534. package/dist/esm/components/tab-nav.d.ts.map +1 -1
  535. package/dist/esm/components/tab-nav.js +1 -1
  536. package/dist/esm/components/table.d.ts.map +1 -1
  537. package/dist/esm/components/table.js +1 -1
  538. package/dist/esm/components/table.props.d.ts +1 -1
  539. package/dist/esm/components/table.props.js +1 -1
  540. package/dist/esm/components/tabs.d.ts.map +1 -1
  541. package/dist/esm/components/tabs.js +1 -1
  542. package/dist/esm/components/text-area.d.ts.map +1 -1
  543. package/dist/esm/components/text-area.js +1 -1
  544. package/dist/esm/components/text-field.d.ts.map +1 -1
  545. package/dist/esm/components/text-field.js +1 -1
  546. package/dist/esm/components/text.js +1 -1
  547. package/dist/esm/components/theme-panel.js +1 -1
  548. package/dist/esm/components/theme.d.ts +3 -0
  549. package/dist/esm/components/theme.d.ts.map +1 -1
  550. package/dist/esm/components/theme.js +1 -1
  551. package/dist/esm/components/theme.props.d.ts +12 -0
  552. package/dist/esm/components/theme.props.d.ts.map +1 -1
  553. package/dist/esm/components/theme.props.js +1 -1
  554. package/dist/esm/components/toggle-button.js +1 -1
  555. package/dist/esm/components/toggle-icon-button.js +1 -1
  556. package/dist/esm/components/toolbar.d.ts.map +1 -1
  557. package/dist/esm/components/toolbar.js +1 -1
  558. package/dist/esm/components/tooltip.js +1 -1
  559. package/dist/esm/components/virtual-menu.js +1 -1
  560. package/dist/esm/helpers/extract-margin-props.d.ts +7 -7
  561. package/dist/esm/helpers/extract-props.js +1 -1
  562. package/dist/esm/helpers/get-margin-styles.js +1 -1
  563. package/dist/esm/helpers/get-responsive-styles.js +1 -1
  564. package/dist/esm/helpers/index.d.ts +1 -0
  565. package/dist/esm/helpers/index.d.ts.map +1 -1
  566. package/dist/esm/helpers/index.js +1 -1
  567. package/dist/esm/helpers/map-prop-values.d.ts +1 -4
  568. package/dist/esm/helpers/map-prop-values.d.ts.map +1 -1
  569. package/dist/esm/helpers/map-prop-values.js +1 -1
  570. package/dist/esm/helpers/theme-size.d.ts +41 -0
  571. package/dist/esm/helpers/theme-size.d.ts.map +1 -0
  572. package/dist/esm/helpers/theme-size.js +2 -0
  573. package/dist/esm/index.js +1 -1
  574. package/dist/esm/props/index.d.ts +0 -1
  575. package/dist/esm/props/index.d.ts.map +1 -1
  576. package/dist/esm/props/index.js +1 -1
  577. package/dist/esm/props/margin.props.d.ts +7 -7
  578. package/dist/esm/props/margin.props.js +1 -1
  579. package/layout/tokens.css +14 -0
  580. package/layout/utilities.css +240 -198
  581. package/layout.css +254 -198
  582. package/package.json +1 -1
  583. package/src/components/_internal/base-button.css +114 -78
  584. package/src/components/_internal/base-button.tsx +48 -9
  585. package/src/components/_internal/base-card.css +21 -73
  586. package/src/components/_internal/base-checkbox.css +91 -8
  587. package/src/components/_internal/base-checkbox.props.ts +1 -1
  588. package/src/components/_internal/base-dialog.css +18 -12
  589. package/src/components/_internal/base-menu.css +3 -3
  590. package/src/components/_internal/base-radio.css +68 -6
  591. package/src/components/_internal/base-radio.props.ts +1 -1
  592. package/src/components/_internal/base-tab-list.css +33 -25
  593. package/src/components/accordion.css +3 -3
  594. package/src/components/accordion.tsx +3 -1
  595. package/src/components/alert-dialog.css +4 -0
  596. package/src/components/alert-dialog.tsx +3 -1
  597. package/src/components/avatar.css +30 -24
  598. package/src/components/badge.css +17 -26
  599. package/src/components/badge.props.tsx +1 -1
  600. package/src/components/button.css +5 -175
  601. package/src/components/card.css +11 -2
  602. package/src/components/card.props.tsx +3 -6
  603. package/src/components/card.tsx +7 -9
  604. package/src/components/chatbar.css +6 -6
  605. package/src/components/chatbar.tsx +9 -4
  606. package/src/components/checkbox-cards.css +4 -48
  607. package/src/components/checkbox-cards.props.tsx +2 -1
  608. package/src/components/checkbox-cards.tsx +9 -3
  609. package/src/components/checkbox-group.css +6 -11
  610. package/src/components/checkbox-group.tsx +3 -1
  611. package/src/components/checkbox.css +6 -11
  612. package/src/components/checkbox.tsx +3 -1
  613. package/src/components/combobox.tsx +3 -1
  614. package/src/components/context-menu.tsx +3 -1
  615. package/src/components/data-list.tsx +3 -1
  616. package/src/components/dialog.css +4 -0
  617. package/src/components/dialog.props.tsx +3 -2
  618. package/src/components/dialog.tsx +3 -1
  619. package/src/components/dropdown-menu.tsx +3 -1
  620. package/src/components/hover-card.css +10 -10
  621. package/src/components/hover-card.props.tsx +1 -1
  622. package/src/components/hover-card.tsx +3 -1
  623. package/src/components/icon-button.css +4 -152
  624. package/src/components/index.css +0 -1
  625. package/src/components/index.tsx +0 -1
  626. package/src/components/kbd.css +14 -14
  627. package/src/components/message-scroller.tsx +1 -1
  628. package/src/components/navbar.tsx +3 -1
  629. package/src/components/notice.css +21 -11
  630. package/src/components/notice.tsx +8 -4
  631. package/src/components/popover.css +8 -12
  632. package/src/components/popover.tsx +3 -1
  633. package/src/components/progress.css +4 -37
  634. package/src/components/progress.props.tsx +0 -3
  635. package/src/components/radio-cards.css +0 -38
  636. package/src/components/radio-cards.props.tsx +2 -1
  637. package/src/components/radio-cards.tsx +13 -3
  638. package/src/components/radio-group.props.tsx +1 -1
  639. package/src/components/radio-group.tsx +3 -1
  640. package/src/components/radio.tsx +3 -1
  641. package/src/components/scroll-area.css +2 -23
  642. package/src/components/scroll-area.props.tsx +0 -3
  643. package/src/components/scroll-area.tsx +2 -18
  644. package/src/components/segmented-control.css +38 -31
  645. package/src/components/segmented-control.tsx +3 -1
  646. package/src/components/select.css +82 -80
  647. package/src/components/select.tsx +4 -2
  648. package/src/components/separator.css +2 -23
  649. package/src/components/separator.props.tsx +0 -3
  650. package/src/components/sheet.css +2 -1
  651. package/src/components/sheet.tsx +6 -10
  652. package/src/components/shell.css +1 -1
  653. package/src/components/shell.tsx +8 -2
  654. package/src/components/sidebar.css +6 -6
  655. package/src/components/slider.css +19 -11
  656. package/src/components/slider.tsx +3 -1
  657. package/src/components/spinner.css +2 -23
  658. package/src/components/spinner.props.tsx +0 -4
  659. package/src/components/switch.css +51 -17
  660. package/src/components/switch.tsx +3 -1
  661. package/src/components/tab-nav.tsx +3 -1
  662. package/src/components/table.css +3 -11
  663. package/src/components/table.props.tsx +1 -1
  664. package/src/components/table.tsx +3 -1
  665. package/src/components/tabs.css +2 -1
  666. package/src/components/tabs.tsx +3 -1
  667. package/src/components/text-area.css +55 -107
  668. package/src/components/text-area.tsx +8 -6
  669. package/src/components/text-field.css +133 -131
  670. package/src/components/text-field.tsx +8 -6
  671. package/src/components/theme.props.tsx +10 -0
  672. package/src/components/theme.tsx +86 -71
  673. package/src/components/toolbar.css +4 -4
  674. package/src/components/toolbar.tsx +3 -1
  675. package/src/helpers/index.ts +1 -0
  676. package/src/helpers/map-prop-values.ts +1 -18
  677. package/src/helpers/theme-size.ts +73 -0
  678. package/src/props/index.ts +0 -1
  679. package/src/props/margin.props.ts +1 -1
  680. package/src/styles/tokens/constants.css +4 -0
  681. package/src/styles/tokens/radius.css +97 -53
  682. package/src/styles/tokens/space.css +16 -0
  683. package/src/styles/utilities/margin.css +40 -7
  684. package/src/styles/utilities/padding.css +0 -26
  685. package/styles.css +2557 -4324
  686. package/tokens/base.css +215 -26
  687. package/tokens.css +217 -26
  688. package/utilities.css +240 -198
  689. package/dist/cjs/components/inset.d.ts +0 -12
  690. package/dist/cjs/components/inset.d.ts.map +0 -1
  691. package/dist/cjs/components/inset.js +0 -2
  692. package/dist/cjs/components/inset.js.map +0 -7
  693. package/dist/cjs/components/inset.props.d.ts +0 -71
  694. package/dist/cjs/components/inset.props.d.ts.map +0 -1
  695. package/dist/cjs/components/inset.props.js +0 -2
  696. package/dist/cjs/components/inset.props.js.map +0 -7
  697. package/dist/esm/chunk-2CNQGDY3.js +0 -2
  698. package/dist/esm/chunk-2CNQGDY3.js.map +0 -7
  699. package/dist/esm/chunk-2HUAVZZL.js +0 -2
  700. package/dist/esm/chunk-2HUAVZZL.js.map +0 -7
  701. package/dist/esm/chunk-2O3WL25H.js +0 -2
  702. package/dist/esm/chunk-2XSRO44Q.js +0 -2
  703. package/dist/esm/chunk-2XSRO44Q.js.map +0 -7
  704. package/dist/esm/chunk-3KB2XWBE.js +0 -2
  705. package/dist/esm/chunk-3KB2XWBE.js.map +0 -7
  706. package/dist/esm/chunk-4D7OU2UA.js +0 -2
  707. package/dist/esm/chunk-4D7OU2UA.js.map +0 -7
  708. package/dist/esm/chunk-5GYIQIPW.js +0 -2
  709. package/dist/esm/chunk-5GYIQIPW.js.map +0 -7
  710. package/dist/esm/chunk-655TAWHX.js +0 -2
  711. package/dist/esm/chunk-655TAWHX.js.map +0 -7
  712. package/dist/esm/chunk-6VPYP3VN.js +0 -2
  713. package/dist/esm/chunk-6VPYP3VN.js.map +0 -7
  714. package/dist/esm/chunk-6XHM724Y.js +0 -2
  715. package/dist/esm/chunk-6XHM724Y.js.map +0 -7
  716. package/dist/esm/chunk-6YWJUNMB.js +0 -2
  717. package/dist/esm/chunk-6YWJUNMB.js.map +0 -7
  718. package/dist/esm/chunk-7BE6N3KY.js +0 -2
  719. package/dist/esm/chunk-7BE6N3KY.js.map +0 -7
  720. package/dist/esm/chunk-AHOUZS3V.js +0 -2
  721. package/dist/esm/chunk-AHOUZS3V.js.map +0 -7
  722. package/dist/esm/chunk-BALS3AVM.js +0 -2
  723. package/dist/esm/chunk-BALS3AVM.js.map +0 -7
  724. package/dist/esm/chunk-BOLRYGFQ.js +0 -2
  725. package/dist/esm/chunk-BOLRYGFQ.js.map +0 -7
  726. package/dist/esm/chunk-BUEYZEAY.js +0 -2
  727. package/dist/esm/chunk-BUEYZEAY.js.map +0 -7
  728. package/dist/esm/chunk-CG54MBMW.js +0 -2
  729. package/dist/esm/chunk-CG54MBMW.js.map +0 -7
  730. package/dist/esm/chunk-DKALDTCN.js +0 -2
  731. package/dist/esm/chunk-DKALDTCN.js.map +0 -7
  732. package/dist/esm/chunk-EJOVE3JH.js +0 -2
  733. package/dist/esm/chunk-EJOVE3JH.js.map +0 -7
  734. package/dist/esm/chunk-EO7WQYFO.js +0 -2
  735. package/dist/esm/chunk-EO7WQYFO.js.map +0 -7
  736. package/dist/esm/chunk-FPDLBLO3.js +0 -2
  737. package/dist/esm/chunk-FPDLBLO3.js.map +0 -7
  738. package/dist/esm/chunk-GOYI2U6F.js +0 -2
  739. package/dist/esm/chunk-GOYI2U6F.js.map +0 -7
  740. package/dist/esm/chunk-GSTOGDAJ.js +0 -2
  741. package/dist/esm/chunk-GSTOGDAJ.js.map +0 -7
  742. package/dist/esm/chunk-HKRQ3E3I.js +0 -2
  743. package/dist/esm/chunk-HKRQ3E3I.js.map +0 -7
  744. package/dist/esm/chunk-HSFQO4QM.js +0 -2
  745. package/dist/esm/chunk-HSFQO4QM.js.map +0 -7
  746. package/dist/esm/chunk-HVQ3SLQC.js +0 -2
  747. package/dist/esm/chunk-HVQ3SLQC.js.map +0 -7
  748. package/dist/esm/chunk-IGBEDJBC.js +0 -2
  749. package/dist/esm/chunk-IGBEDJBC.js.map +0 -7
  750. package/dist/esm/chunk-IYFDCW7Y.js +0 -2
  751. package/dist/esm/chunk-IYFDCW7Y.js.map +0 -7
  752. package/dist/esm/chunk-JAMLW534.js +0 -2
  753. package/dist/esm/chunk-JAMLW534.js.map +0 -7
  754. package/dist/esm/chunk-JCOALADA.js +0 -5
  755. package/dist/esm/chunk-JCOALADA.js.map +0 -7
  756. package/dist/esm/chunk-K7J23OPW.js +0 -2
  757. package/dist/esm/chunk-K7J23OPW.js.map +0 -7
  758. package/dist/esm/chunk-M55KFXYV.js +0 -2
  759. package/dist/esm/chunk-M55KFXYV.js.map +0 -7
  760. package/dist/esm/chunk-MGSHX5N5.js +0 -2
  761. package/dist/esm/chunk-MGSHX5N5.js.map +0 -7
  762. package/dist/esm/chunk-MJC4NKYG.js +0 -2
  763. package/dist/esm/chunk-MJC4NKYG.js.map +0 -7
  764. package/dist/esm/chunk-MOYLXCMW.js +0 -2
  765. package/dist/esm/chunk-MOYLXCMW.js.map +0 -7
  766. package/dist/esm/chunk-MVW2SY4F.js +0 -2
  767. package/dist/esm/chunk-MVW2SY4F.js.map +0 -7
  768. package/dist/esm/chunk-NOSR2XWD.js +0 -2
  769. package/dist/esm/chunk-NOSR2XWD.js.map +0 -7
  770. package/dist/esm/chunk-OMUUPPJO.js +0 -2
  771. package/dist/esm/chunk-OMUUPPJO.js.map +0 -7
  772. package/dist/esm/chunk-PNIVUG5D.js +0 -2
  773. package/dist/esm/chunk-PNIVUG5D.js.map +0 -7
  774. package/dist/esm/chunk-PSS45RHX.js +0 -2
  775. package/dist/esm/chunk-PSS45RHX.js.map +0 -7
  776. package/dist/esm/chunk-PYYI64XK.js +0 -2
  777. package/dist/esm/chunk-PYYI64XK.js.map +0 -7
  778. package/dist/esm/chunk-QDW5ZG5E.js +0 -1
  779. package/dist/esm/chunk-QDW5ZG5E.js.map +0 -7
  780. package/dist/esm/chunk-QJFAGWBO.js +0 -2
  781. package/dist/esm/chunk-QJFAGWBO.js.map +0 -7
  782. package/dist/esm/chunk-QWFFYUFH.js +0 -2
  783. package/dist/esm/chunk-QWFFYUFH.js.map +0 -7
  784. package/dist/esm/chunk-RJ6SA7AY.js +0 -2
  785. package/dist/esm/chunk-RJ6SA7AY.js.map +0 -7
  786. package/dist/esm/chunk-RVHKSNMJ.js +0 -2
  787. package/dist/esm/chunk-RVHKSNMJ.js.map +0 -7
  788. package/dist/esm/chunk-RYURXQLJ.js +0 -2
  789. package/dist/esm/chunk-RYURXQLJ.js.map +0 -7
  790. package/dist/esm/chunk-UA6FP7HS.js +0 -2
  791. package/dist/esm/chunk-V7UP4SLZ.js +0 -2
  792. package/dist/esm/chunk-V7UP4SLZ.js.map +0 -7
  793. package/dist/esm/chunk-VJSZG35J.js +0 -2
  794. package/dist/esm/chunk-VJSZG35J.js.map +0 -7
  795. package/dist/esm/chunk-X5KCVLKG.js +0 -2
  796. package/dist/esm/chunk-X5KCVLKG.js.map +0 -7
  797. package/dist/esm/chunk-XPRPYCII.js +0 -2
  798. package/dist/esm/chunk-XPRPYCII.js.map +0 -7
  799. package/dist/esm/chunk-YDRFILTX.js +0 -2
  800. package/dist/esm/chunk-YDRFILTX.js.map +0 -7
  801. package/dist/esm/chunk-YGPUKJEB.js +0 -2
  802. package/dist/esm/chunk-YGPUKJEB.js.map +0 -7
  803. package/dist/esm/components/inset.d.ts +0 -12
  804. package/dist/esm/components/inset.d.ts.map +0 -1
  805. package/dist/esm/components/inset.js +0 -2
  806. package/dist/esm/components/inset.props.d.ts +0 -71
  807. package/dist/esm/components/inset.props.d.ts.map +0 -1
  808. package/dist/esm/components/inset.props.js +0 -2
  809. package/src/components/inset.css +0 -111
  810. package/src/components/inset.props.tsx +0 -90
  811. package/src/components/inset.tsx +0 -28
  812. /package/dist/esm/{chunk-6WFEMPCF.js.map → chunk-2XQECQF2.js.map} +0 -0
  813. /package/dist/esm/{chunk-AMP7O3DM.js.map → chunk-43A5GUSI.js.map} +0 -0
  814. /package/dist/esm/{chunk-COSHAOEK.js.map → chunk-63ASTOS2.js.map} +0 -0
  815. /package/dist/esm/{chunk-UBSLEGQZ.js.map → chunk-6FLLFCBU.js.map} +0 -0
  816. /package/dist/esm/{chunk-SM27AC7E.js.map → chunk-6RZVKCNG.js.map} +0 -0
  817. /package/dist/esm/{chunk-RFURPE7W.js.map → chunk-6XNQ5XD3.js.map} +0 -0
  818. /package/dist/esm/{chunk-JLI7WHV6.js.map → chunk-7FC7HF76.js.map} +0 -0
  819. /package/dist/esm/{chunk-UA6FP7HS.js.map → chunk-ABS275QZ.js.map} +0 -0
  820. /package/dist/esm/{chunk-TPHNDGSV.js.map → chunk-AI6UQ5VD.js.map} +0 -0
  821. /package/dist/esm/{chunk-O6K6RZXY.js.map → chunk-BUBV3C6C.js.map} +0 -0
  822. /package/dist/esm/{chunk-AO32NT75.js.map → chunk-CLEH57SW.js.map} +0 -0
  823. /package/dist/esm/{chunk-XHKL4PG7.js.map → chunk-DIR22XIX.js.map} +0 -0
  824. /package/dist/esm/{chunk-TGRRQHLQ.js.map → chunk-DMWLY6ZP.js.map} +0 -0
  825. /package/dist/esm/{components/inset.props.js.map → chunk-F2UUKVBM.js.map} +0 -0
  826. /package/dist/esm/{chunk-WKMJIWFP.js.map → chunk-FTGD2SZ6.js.map} +0 -0
  827. /package/dist/esm/{chunk-RSJSVJ6A.js.map → chunk-G3U6OHVA.js.map} +0 -0
  828. /package/dist/esm/{chunk-CRYT55SY.js.map → chunk-GIIMBBVM.js.map} +0 -0
  829. /package/dist/esm/{chunk-DSB3TEAQ.js.map → chunk-GLERJXVS.js.map} +0 -0
  830. /package/dist/esm/{chunk-MZQDDG5K.js.map → chunk-GYNRAVCL.js.map} +0 -0
  831. /package/dist/esm/{chunk-BFLO4IVZ.js.map → chunk-IXNJFV4O.js.map} +0 -0
  832. /package/dist/esm/{chunk-PBFSBHBS.js.map → chunk-JUY7CBSL.js.map} +0 -0
  833. /package/dist/esm/{chunk-V2TPYSZ2.js.map → chunk-JZSXHYUU.js.map} +0 -0
  834. /package/dist/esm/{chunk-GVLTTTFL.js.map → chunk-K6Y2SM5N.js.map} +0 -0
  835. /package/dist/esm/{chunk-CL6LRPCS.js.map → chunk-KDKL3HXD.js.map} +0 -0
  836. /package/dist/esm/{chunk-XHF6RBOE.js.map → chunk-KRPEEM4C.js.map} +0 -0
  837. /package/dist/esm/{chunk-DP3OWU5T.js.map → chunk-L2IIIELE.js.map} +0 -0
  838. /package/dist/esm/{chunk-K5SC3CZZ.js.map → chunk-N5OSP3PU.js.map} +0 -0
  839. /package/dist/esm/{chunk-IF4PYIUV.js.map → chunk-N77QJUTO.js.map} +0 -0
  840. /package/dist/esm/{chunk-XZ5XZS5O.js.map → chunk-NETIWKIR.js.map} +0 -0
  841. /package/dist/esm/{chunk-2IPVLV6B.js.map → chunk-OMYAVTX6.js.map} +0 -0
  842. /package/dist/esm/{chunk-7CBZFHSQ.js.map → chunk-OXYHRNJA.js.map} +0 -0
  843. /package/dist/esm/{chunk-L6M2MI7Y.js.map → chunk-PIMNQEDG.js.map} +0 -0
  844. /package/dist/esm/{chunk-2O3WL25H.js.map → chunk-QWLKMVZY.js.map} +0 -0
  845. /package/dist/esm/{chunk-YZABQ4LS.js.map → chunk-UUV5UNYL.js.map} +0 -0
  846. /package/dist/esm/{chunk-S53ZQNHK.js.map → chunk-VLQ2LX5M.js.map} +0 -0
  847. /package/dist/esm/{chunk-ORMCQAPS.js.map → chunk-WDDO73O5.js.map} +0 -0
  848. /package/dist/esm/{chunk-3OABA7AF.js.map → chunk-X7HFFVFD.js.map} +0 -0
  849. /package/dist/esm/{chunk-6HRBG5H2.js.map → chunk-XTE22CXV.js.map} +0 -0
  850. /package/dist/esm/{chunk-35KS5AQE.js.map → chunk-ZMOBKT4T.js.map} +0 -0
  851. /package/dist/esm/{components/inset.js.map → helpers/theme-size.js.map} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@womp/kookie-ui",
3
- "version": "0.17.0",
3
+ "version": "0.19.0",
4
4
  "description": "Kookie UI v1: a React component library with design tokens, flexible theming, a full layout shell, and comprehensive documentation.",
5
5
  "keywords": [
6
6
  "react",
@@ -36,8 +36,27 @@
36
36
  position: relative;
37
37
  cursor: pointer;
38
38
  contain: paint;
39
+ touch-action: manipulation;
40
+ -webkit-tap-highlight-color: transparent;
41
+
42
+ /* The control ladder. min-height, not height: a hard height clips a resized or wrapped label. */
43
+ min-height: var(--base-button-height);
39
44
  gap: var(--base-button-gap);
40
- height: var(--base-button-height);
45
+
46
+ /* Side padding is per side. Under a full radius a bare side pads wider (the corner curve swings
47
+ in at the text); a side that starts or ends with an icon keeps the plain padding. Outside the
48
+ full radius --radius-full is 0px, so the bare padding IS the plain padding. */
49
+ --base-button-px-bare: calc(
50
+ var(--base-button-px) + min(var(--radius-full), var(--base-button-px-pill) - var(--base-button-px))
51
+ );
52
+ padding-inline-start: var(--base-button-px-bare);
53
+ padding-inline-end: var(--base-button-px-bare);
54
+
55
+ /* Each level keeps v1's roundness; a full radius is half the control's height. */
56
+ border-radius: max(
57
+ var(--base-button-radius),
58
+ min(var(--radius-full), calc(var(--base-button-height) / 2))
59
+ );
41
60
 
42
61
  /* Typography */
43
62
  font-family: var(--default-font-family);
@@ -59,11 +78,16 @@
59
78
  background-color: Canvas;
60
79
  }
61
80
 
62
- /* Disabled state styling */
63
- &:where([data-disabled]) {
81
+ /* One focus ring for every variant */
82
+ &:where(:focus-visible) {
83
+ outline: var(--focus-ring-width) solid var(--focus-8);
84
+ outline-offset: var(--focus-ring-offset);
85
+ }
86
+
87
+ /* Disabled is a colour remap (per variant, below). It still hit-tests and keeps the arrow. */
88
+ &:where([data-disabled], [aria-disabled='true']) {
64
89
  --spinner-opacity: 1;
65
- cursor: not-allowed;
66
- pointer-events: none;
90
+ cursor: default;
67
91
  @media (forced-colors: active) {
68
92
  border-color: GrayText;
69
93
  color: GrayText;
@@ -71,10 +95,18 @@
71
95
  }
72
96
  }
73
97
 
74
- /* Loading state styling */
98
+ /* Loading: busy, not frozen */
75
99
  &:where(.rt-loading) {
76
100
  position: relative;
77
- cursor: wait;
101
+ cursor: progress;
102
+ }
103
+
104
+ /* Icons ride the icon ladder */
105
+ /* stylelint-disable-next-line selector-max-type */
106
+ & :where(svg) {
107
+ width: var(--base-button-icon-size);
108
+ height: var(--base-button-icon-size);
109
+ flex: none;
78
110
  }
79
111
 
80
112
  /* Stabilize SVGs during scale transforms (prevent wobble, especially Firefox) */
@@ -87,6 +119,22 @@
87
119
  }
88
120
  }
89
121
 
122
+ /* An edge holding an icon keeps the plain padding under a pill */
123
+ .rt-BaseButton:where([data-icon-start]) {
124
+ padding-inline-start: var(--base-button-px);
125
+ }
126
+
127
+ .rt-BaseButton:where([data-icon-end]) {
128
+ padding-inline-end: var(--base-button-px);
129
+ }
130
+
131
+ /* An icon-only button is square: no inline padding, and aspect-ratio rather than a width ladder,
132
+ so a hosted icon button whose height comes from its container (Toolbar, Chatbar) stays square. */
133
+ .rt-BaseButton:where(.rt-IconButton) {
134
+ padding-inline: 0;
135
+ aspect-ratio: 1;
136
+ }
137
+
90
138
  /* Full width mode */
91
139
  .rt-BaseButton:where(.rt-full-width) {
92
140
  display: flex;
@@ -97,28 +145,47 @@
97
145
  * *
98
146
  * SIZES *
99
147
  * *
148
+ * The control ladder: height 28/32/40/48, side padding, pill padding, gap and icon size all come *
149
+ * from the role tokens. Only the corner keeps v1's own level. *
150
+ * *
100
151
  ***************************************************************************************************/
101
152
 
102
153
  @breakpoints {
103
154
  .rt-BaseButton {
104
155
  &:where(.rt-r-size-1) {
105
156
  --base-button-height: var(--control-height-1);
106
- border-radius: var(--radius-pill-1);
157
+ --base-button-px: var(--control-px-1);
158
+ --base-button-px-pill: var(--control-px-pill-1);
159
+ --base-button-gap: var(--control-gap-1);
160
+ --base-button-icon-size: var(--icon-size-1);
161
+ --base-button-radius: var(--radius-1);
107
162
  }
108
163
 
109
164
  &:where(.rt-r-size-2) {
110
165
  --base-button-height: var(--control-height-2);
111
- border-radius: var(--radius-pill-2);
166
+ --base-button-px: var(--control-px-2);
167
+ --base-button-px-pill: var(--control-px-pill-2);
168
+ --base-button-gap: var(--control-gap-2);
169
+ --base-button-icon-size: var(--icon-size-2);
170
+ --base-button-radius: var(--radius-2);
112
171
  }
113
172
 
114
173
  &:where(.rt-r-size-3) {
115
174
  --base-button-height: var(--control-height-3);
116
- border-radius: var(--radius-pill-3);
175
+ --base-button-px: var(--control-px-3);
176
+ --base-button-px-pill: var(--control-px-pill-3);
177
+ --base-button-gap: var(--control-gap-3);
178
+ --base-button-icon-size: var(--icon-size-3);
179
+ --base-button-radius: var(--radius-3);
117
180
  }
118
181
 
119
182
  &:where(.rt-r-size-4) {
120
183
  --base-button-height: var(--control-height-4);
121
- border-radius: var(--radius-pill-4);
184
+ --base-button-px: var(--control-px-4);
185
+ --base-button-px-pill: var(--control-px-pill-4);
186
+ --base-button-gap: var(--control-gap-4);
187
+ --base-button-icon-size: var(--icon-size-4);
188
+ --base-button-radius: var(--radius-4);
122
189
  }
123
190
  }
124
191
  }
@@ -128,7 +195,7 @@
128
195
  * VARIANT PALETTES *
129
196
  * *
130
197
  * Each variant defines its color scale. Shared state logic uses these variables. *
131
- * Variables: --v-color, --v-bg-*, --v-border-*, --v-shadow-*, --v-focus-* *
198
+ * Variables: --v-color, --v-bg-*, --v-border-*, --v-shadow-* *
132
199
  * *
133
200
  ***************************************************************************************************/
134
201
 
@@ -144,8 +211,6 @@
144
211
  --v-bg-pressed: var(--accent-5);
145
212
  --v-bg-pressed-a: var(--accent-a5);
146
213
  --v-shadow-hover: var(--shadow-2);
147
- --v-focus-color: var(--accent-8);
148
- --v-focus-offset: -1px;
149
214
  }
150
215
 
151
216
  /* Ghost variant palette */
@@ -160,8 +225,6 @@
160
225
  --v-bg-pressed: var(--accent-4);
161
226
  --v-bg-pressed-a: var(--accent-a4);
162
227
  --v-bg-disabled: transparent;
163
- --v-focus-color: var(--focus-8);
164
- --v-focus-offset: -1px;
165
228
  }
166
229
 
167
230
  /* Outline variant palette */
@@ -185,8 +248,6 @@
185
248
  --v-border-active: var(--accent-8);
186
249
  --v-border-active-a: var(--accent-a8);
187
250
  --v-border-disabled: var(--gray-a7);
188
- --v-focus-color: var(--focus-8);
189
- --v-focus-offset: -1px;
190
251
  }
191
252
 
192
253
  /* Surface variant palette */
@@ -210,15 +271,14 @@
210
271
  --v-border-active: var(--accent-8);
211
272
  --v-border-active-a: var(--accent-a8);
212
273
  --v-border-disabled: var(--gray-a6);
213
- --v-focus-color: var(--focus-8);
214
- --v-focus-offset: -1px;
215
274
  }
216
275
 
217
276
  /***************************************************************************************************
218
277
  * *
219
278
  * SHARED STATE LOGIC *
220
279
  * *
221
- * Single set of state selectors that use variant palette variables. *
280
+ * One rule for every variant: hover = +1 step and press = +2 steps on the variant's own ramp. *
281
+ * Hover only where hovering exists. Disabled is a colour remap: no opacity, no pointer-events. *
222
282
  * Applies to: soft, ghost, outline, surface *
223
283
  * *
224
284
  ***************************************************************************************************/
@@ -228,15 +288,9 @@
228
288
  color: var(--v-color);
229
289
  background-color: var(--v-bg);
230
290
 
231
- /* Focus visible */
232
- &:where(:focus-visible) {
233
- outline: 2px solid var(--v-focus-color);
234
- outline-offset: var(--v-focus-offset);
235
- }
236
-
237
291
  /* Hover state */
238
292
  @media (hover: hover) {
239
- &:where(:hover:not([data-disabled])) {
293
+ &:where(:hover:not([data-disabled], [aria-disabled='true'])) {
240
294
  background-color: var(--v-bg-hover);
241
295
  box-shadow: var(--v-shadow-hover, none);
242
296
  }
@@ -248,7 +302,7 @@
248
302
  }
249
303
 
250
304
  /* Active state */
251
- &:where(:active:not([data-state='open'], [data-disabled])) {
305
+ &:where(:active:not([data-state='open'], [data-disabled], [aria-disabled='true'])) {
252
306
  background-color: var(--v-bg-active);
253
307
  box-shadow: var(--shadow-1);
254
308
  }
@@ -259,11 +313,10 @@
259
313
  }
260
314
 
261
315
  /* Disabled state */
262
- &:where([data-disabled]) {
316
+ &:where([data-disabled], [aria-disabled='true']) {
263
317
  color: var(--gray-a8);
264
318
  background-color: var(--v-bg-disabled, var(--gray-a3));
265
- cursor: not-allowed;
266
- pointer-events: none;
319
+ box-shadow: none;
267
320
  }
268
321
  }
269
322
 
@@ -274,7 +327,7 @@
274
327
 
275
328
  /* Hover state border */
276
329
  @media (hover: hover) {
277
- &:where(:hover:not([data-disabled])) {
330
+ &:where(:hover:not([data-disabled], [aria-disabled='true'])) {
278
331
  box-shadow: inset 0 0 0 1px var(--v-border-hover);
279
332
  }
280
333
  }
@@ -285,26 +338,26 @@
285
338
  }
286
339
 
287
340
  /* Active and pressed state border */
288
- &:where(:active:not([data-state='open'], [data-disabled])),
341
+ &:where(:active:not([data-state='open'], [data-disabled], [aria-disabled='true'])),
289
342
  &:where([data-state='on']) {
290
343
  box-shadow: inset 0 0 0 1px var(--v-border-active);
291
344
  }
292
345
 
293
346
  /* Disabled state border */
294
- &:where([data-disabled]) {
347
+ &:where([data-disabled], [aria-disabled='true']) {
295
348
  box-shadow: inset 0 0 0 1px var(--v-border-disabled);
296
349
  }
297
350
  }
298
351
 
299
- /* Ghost flush mode */
352
+ /* Ghost flush mode: pull the button out by its own padding so its content sits on the text line */
300
353
  .rt-BaseButton:where(.rt-variant-ghost[data-flush='true']) {
301
354
  --margin-top: 0px;
302
355
  --margin-right: 0px;
303
356
  --margin-bottom: 0px;
304
357
  --margin-left: 0px;
305
358
 
306
- --button-padding-x: calc(var(--base-button-height) * var(--padding-ratio-horizontal) / 4);
307
- --button-padding-y: calc(var(--base-button-height) / 8);
359
+ --button-padding-x: var(--base-button-px);
360
+ --button-padding-y: calc((var(--base-button-height) - 1lh) / 2);
308
361
 
309
362
  --margin-top-override: calc(var(--margin-top) - var(--button-padding-y));
310
363
  --margin-right-override: calc(var(--margin-right) - var(--button-padding-x));
@@ -324,6 +377,12 @@
324
377
  }
325
378
  }
326
379
 
380
+ /* A flush ghost icon button pulls out by the space around its glyph */
381
+ .rt-BaseButton:where(.rt-IconButton.rt-variant-ghost[data-flush='true']) {
382
+ --button-padding-x: calc((var(--base-button-height) - var(--base-button-icon-size)) / 2);
383
+ --button-padding-y: var(--button-padding-x);
384
+ }
385
+
327
386
  /***************************************************************************************************
328
387
  * *
329
388
  * SPECIAL VARIANTS *
@@ -332,62 +391,50 @@
332
391
  * *
333
392
  ***************************************************************************************************/
334
393
 
335
- /* Raised variant - uses --color-surface and gray interactive states */
394
+ /* Raised variant - surface at rest, then gray 2 on hover and gray 3 on press */
336
395
  .rt-BaseButton:where(.rt-variant-raised) {
337
396
  position: relative;
338
397
  color: var(--accent-ink);
339
398
  background-color: var(--color-surface-solid);
340
399
  box-shadow: var(--shadow-2);
341
400
 
342
- &:where(:focus-visible) {
343
- outline: 2px solid var(--focus-8);
344
- outline-offset: 2px;
345
- }
346
-
347
401
  @media (hover: hover) {
348
- &:where(:hover) {
402
+ &:where(:hover:not([data-disabled], [aria-disabled='true'])) {
349
403
  background-color: var(--gray-2);
350
404
  box-shadow: var(--shadow-2);
351
405
  }
352
406
  }
353
407
 
354
408
  &:where([data-state='open']),
355
- &:where(:active:not([data-state='open'], [data-disabled])),
356
- &:where([data-state='on']:not([data-disabled])) {
409
+ &:where(:active:not([data-state='open'], [data-disabled], [aria-disabled='true'])),
410
+ &:where([data-state='on']:not([data-disabled], [aria-disabled='true'])) {
357
411
  background-color: var(--gray-3);
358
412
  box-shadow: var(--shadow-1);
359
413
  }
360
414
 
361
415
  @media (pointer: coarse) {
362
- &:where(:active:not([data-state='open'])) {
416
+ &:where(:active:not([data-state='open'], [data-disabled], [aria-disabled='true'])) {
363
417
  outline: var(--raised-shadow-blur-large) solid var(--gray-a4);
364
418
  outline-offset: 0;
365
419
  }
366
420
  }
367
421
 
368
- &:where([data-disabled]) {
422
+ &:where([data-disabled], [aria-disabled='true']) {
369
423
  color: var(--gray-a8);
370
424
  background-color: var(--gray-a3);
371
425
  box-shadow: none;
372
- outline: none;
373
- cursor: not-allowed;
374
- pointer-events: none;
375
426
  top: 0;
376
427
  }
377
428
  }
378
429
 
379
- /* Solid variant - fills with the accent solid tokens (gray resolves to step 12 automatically) */
430
+ /* Solid variant - accent solid at rest, solid-hover on hover, solid-active on press
431
+ (gray resolves the three to step 12 and the filters carry the change) */
380
432
  .rt-BaseButton:where(.rt-variant-solid) {
381
433
  background-color: var(--accent-solid);
382
434
  color: var(--accent-solid-contrast);
383
435
 
384
- &:where(:focus-visible) {
385
- outline: 2px solid var(--focus-8);
386
- outline-offset: 2px;
387
- }
388
-
389
436
  @media (hover: hover) {
390
- &:where(:hover) {
437
+ &:where(:hover:not([data-disabled], [aria-disabled='true'])) {
391
438
  background-color: var(--accent-solid-hover);
392
439
  filter: var(--accent-solid-hover-filter);
393
440
  box-shadow: var(--shadow-2);
@@ -399,7 +446,8 @@
399
446
  filter: var(--accent-solid-open-filter);
400
447
  }
401
448
 
402
- &:where(:active:not([data-state='open'])) {
449
+ &:where(:active:not([data-state='open'], [data-disabled], [aria-disabled='true'])) {
450
+ background-color: var(--accent-solid-active);
403
451
  filter: var(--accent-solid-active-filter);
404
452
  }
405
453
 
@@ -409,19 +457,18 @@
409
457
  }
410
458
 
411
459
  @media (pointer: coarse) {
412
- &:where(:active:not([data-state='open'])) {
460
+ &:where(:active:not([data-state='open'], [data-disabled], [aria-disabled='true'])) {
413
461
  outline: var(--raised-shadow-blur-large) solid var(--accent-a4);
414
462
  outline-offset: 0;
415
463
  }
416
464
  }
417
465
 
418
- &:where([data-disabled]) {
466
+ &:where([data-disabled], [aria-disabled='true']) {
419
467
  color: var(--gray-a8);
420
468
  background-color: var(--gray-a3);
421
- outline: none;
469
+ box-shadow: none;
422
470
  filter: none;
423
- cursor: not-allowed;
424
- pointer-events: none;
471
+ opacity: 1;
425
472
  }
426
473
  }
427
474
 
@@ -431,24 +478,13 @@
431
478
  * *
432
479
  ***************************************************************************************************/
433
480
 
434
- .rt-BaseButton:where([disabled][aria-pressed]) {
481
+ .rt-BaseButton:where([data-disabled][aria-pressed], [aria-disabled='true'][aria-pressed]) {
435
482
  transform: none;
436
483
  color: var(--gray-a8);
437
484
  background-color: var(--gray-a3);
438
- background: var(--gray-a3);
439
485
  box-shadow: none;
440
486
  filter: none;
441
- opacity: 0.6;
442
- cursor: not-allowed;
443
- pointer-events: none;
444
-
445
- &:where([data-state='on']) {
446
- transform: none;
447
- background: var(--gray-a3);
448
- background-color: var(--gray-a3);
449
- box-shadow: none;
450
- filter: none;
451
- }
487
+ opacity: 1;
452
488
 
453
489
  /* Raised needs special handling for top position */
454
490
  &:where(.rt-variant-raised) {
@@ -7,7 +7,7 @@ import { Flex } from '../flex.js';
7
7
  import { Spinner } from '../spinner.js';
8
8
  import { VisuallyHidden } from '../visually-hidden.js';
9
9
  import { extractProps } from '../../helpers/extract-props.js';
10
- import { mapResponsiveProp, mapButtonSizeToSpinnerSize } from '../../helpers/map-prop-values.js';
10
+ import { useThemeSizeProps } from '../../helpers/theme-size.js';
11
11
  import { marginPropDefs } from '../../props/margin.props.js';
12
12
 
13
13
  import type { MarginProps } from '../../props/margin.props.js';
@@ -59,8 +59,8 @@ interface BaseButtonProps extends PolymorphicBaseButtonProps {}
59
59
  * <BaseButton as="a" href="/link">Link Button</BaseButton>
60
60
  * ```
61
61
  */
62
- const BaseButton = React.forwardRef<BaseButtonElement, BaseButtonProps>((props, forwardedRef) => {
63
- const { size = baseButtonPropDefs.size.default } = props;
62
+ const BaseButton = React.forwardRef<BaseButtonElement, BaseButtonProps>((ownProps, forwardedRef) => {
63
+ const props = useThemeSizeProps(ownProps, baseButtonPropDefs.size);
64
64
 
65
65
  // Extract button-specific props from the combined props object
66
66
  const {
@@ -71,10 +71,45 @@ const BaseButton = React.forwardRef<BaseButtonElement, BaseButtonProps>((props,
71
71
  color,
72
72
  radius,
73
73
  flush,
74
- disabled = props.loading, // Loading state automatically disables the button
74
+ disabled: nativeDisabled,
75
75
  ...baseButtonProps
76
76
  } = extractProps(props, baseButtonPropDefs, marginPropDefs);
77
77
 
78
+ // Loading blocks activation but keeps the native `disabled` off, so the button keeps focus
79
+ // and its place in the tab order (aria-disabled carries the state). An explicit `disabled`
80
+ // stays native.
81
+ const loading = Boolean(props.loading);
82
+ const disabled = Boolean(nativeDisabled) || loading;
83
+ const { onClick } = baseButtonProps as { onClick?: React.MouseEventHandler<HTMLElement> };
84
+ const handleClick = React.useCallback(
85
+ (event: React.MouseEvent<HTMLElement>) => {
86
+ if (loading) {
87
+ event.preventDefault();
88
+ return;
89
+ }
90
+ onClick?.(event);
91
+ },
92
+ [loading, onClick],
93
+ );
94
+
95
+ // Which edges start or end with an icon. A bare edge pads wider under a full radius; an edge
96
+ // holding an icon keeps the plain padding (the icon already stands between text and curve).
97
+ const { iconStart, iconEnd } = React.useMemo(() => {
98
+ const content =
99
+ asChild && React.isValidElement(children) ? (children.props as { children?: React.ReactNode }).children : children;
100
+ // Fragments are see-through: their own first and last children are the edges.
101
+ const flatten = (nodes: React.ReactNode): React.ReactNode[] =>
102
+ React.Children.toArray(nodes).flatMap((node) =>
103
+ React.isValidElement(node) && node.type === React.Fragment
104
+ ? flatten((node.props as { children?: React.ReactNode }).children)
105
+ : [node],
106
+ );
107
+ const items = flatten(content);
108
+ const isIcon = (node: React.ReactNode) =>
109
+ React.isValidElement(node) && (node.type === 'svg' || typeof node.type !== 'string');
110
+ return { iconStart: isIcon(items[0]), iconEnd: isIcon(items[items.length - 1]) };
111
+ }, [asChild, children]);
112
+
78
113
 
79
114
  // asChild takes precedence over as prop for Radix Slot integration
80
115
  // When asChild is true, we use Slot.Root to merge props onto the child element
@@ -94,7 +129,7 @@ const BaseButton = React.forwardRef<BaseButtonElement, BaseButtonProps>((props,
94
129
 
95
130
  // Generate unique ID for loading announcements
96
131
  const loadingId = React.useId();
97
- const describedById = props.loading ? `${loadingId}-loading` : undefined;
132
+ const describedById = loading ? `${loadingId}-loading` : undefined;
98
133
 
99
134
  // Extract button text for accessibility announcements
100
135
  const buttonText = React.useMemo(() => {
@@ -121,16 +156,20 @@ const BaseButton = React.forwardRef<BaseButtonElement, BaseButtonProps>((props,
121
156
 
122
157
  return (
123
158
  <Comp
124
- // The `data-disabled` attribute enables correct styles when doing `<Button asChild disabled>`
125
- data-disabled={disabled || undefined}
126
159
  data-accent-color={color}
127
160
  data-radius={radius}
128
161
  data-flush={flush ? 'true' : undefined}
162
+ data-icon-start={iconStart || undefined}
163
+ data-icon-end={iconEnd || undefined}
129
164
  {...baseButtonProps}
130
165
  {...accessibilityProps}
166
+ // After the spread: `data-disabled` styles `<Button asChild disabled>`, and a wrapping
167
+ // Radix Toggle (asChild) passes `data-disabled={undefined}` that must not erase it.
168
+ data-disabled={disabled || undefined}
169
+ onClick={handleClick}
131
170
  ref={forwardedRef}
132
171
  className={classNames('rt-reset', 'rt-BaseButton', className)}
133
- {...(shouldPassDisabled && { disabled })}
172
+ {...(shouldPassDisabled && { disabled: nativeDisabled })}
134
173
  {...(isNativeButtonElement && !hasExplicitTypeAttribute ? { type: 'button' } : {})}
135
174
  >
136
175
  {props.loading ? (
@@ -155,7 +194,7 @@ const BaseButton = React.forwardRef<BaseButtonElement, BaseButtonProps>((props,
155
194
  {/* Centered spinner overlay during loading state */}
156
195
  <Flex asChild align="center" justify="center" position="absolute" inset="0">
157
196
  <span>
158
- <Spinner size={mapResponsiveProp(size, mapButtonSizeToSpinnerSize)} aria-hidden="true" />
197
+ <Spinner aria-hidden="true" />
159
198
  </span>
160
199
  </Flex>
161
200
  </>
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * ARCHITECTURE (matching base-button.css):
8
8
  * 1. Base styles: Layout, pseudo-element setup
9
- * 2. Sizes: Responsive padding and border-radius
9
+ * 2. Sizes 1-4: padding --surface-p-N, corner --radius-surface-N
10
10
  * 3. Variant palettes: Each variant defines its color variables
11
11
  * 4. Shared state logic: Single set of hover/active/open selectors (outline, soft, surface)
12
12
  * 5. Border variants: Outline & surface border handling
@@ -43,14 +43,6 @@
43
43
  font-style: normal;
44
44
  text-align: start;
45
45
 
46
- /* Inset calculations */
47
- --inset-border-width: var(--base-card-border-width);
48
- --inset-border-radius: var(--base-card-border-radius);
49
- --inset-padding-top: calc(var(--base-card-padding-top) - var(--base-card-border-width));
50
- --inset-padding-right: calc(var(--base-card-padding-right) - var(--base-card-border-width));
51
- --inset-padding-bottom: calc(var(--base-card-padding-bottom) - var(--base-card-border-width));
52
- --inset-padding-left: calc(var(--base-card-padding-left) - var(--base-card-border-width));
53
-
54
46
  /*
55
47
  * Pseudo-element setup
56
48
  * ::before = background color (z-index: -1)
@@ -83,56 +75,36 @@
83
75
  @breakpoints {
84
76
  .rt-BaseCard {
85
77
  &:where(.rt-r-size-1) {
86
- --base-card-padding-top: var(--space-3);
87
- --base-card-padding-right: var(--space-3);
88
- --base-card-padding-bottom: var(--space-3);
89
- --base-card-padding-left: var(--space-3);
90
- --base-card-border-radius: min(var(--radius-surface-5), calc(var(--radius-surface-1) + var(--space-2)));
78
+ --base-card-padding-top: var(--surface-p-1);
79
+ --base-card-padding-right: var(--surface-p-1);
80
+ --base-card-padding-bottom: var(--surface-p-1);
81
+ --base-card-padding-left: var(--surface-p-1);
82
+ --base-card-border-radius: var(--radius-surface-1);
91
83
  }
92
84
  &:where(.rt-r-size-2) {
93
- --base-card-padding-top: var(--space-4);
94
- --base-card-padding-right: var(--space-4);
95
- --base-card-padding-bottom: var(--space-4);
96
- --base-card-padding-left: var(--space-4);
97
- --base-card-border-radius: min(var(--radius-surface-6), calc(var(--radius-surface-2) + var(--space-3)));
85
+ --base-card-padding-top: var(--surface-p-2);
86
+ --base-card-padding-right: var(--surface-p-2);
87
+ --base-card-padding-bottom: var(--surface-p-2);
88
+ --base-card-padding-left: var(--surface-p-2);
89
+ --base-card-border-radius: var(--radius-surface-2);
98
90
  }
99
91
  &:where(.rt-r-size-3) {
100
- --base-card-padding-top: var(--space-5);
101
- --base-card-padding-right: var(--space-5);
102
- --base-card-padding-bottom: var(--space-5);
103
- --base-card-padding-left: var(--space-5);
104
- --base-card-border-radius: min(var(--radius-surface-7), calc(var(--radius-surface-3) + var(--space-4)));
92
+ --base-card-padding-top: var(--surface-p-3);
93
+ --base-card-padding-right: var(--surface-p-3);
94
+ --base-card-padding-bottom: var(--surface-p-3);
95
+ --base-card-padding-left: var(--surface-p-3);
96
+ --base-card-border-radius: var(--radius-surface-3);
105
97
  }
106
98
  &:where(.rt-r-size-4) {
107
- --base-card-padding-top: var(--space-6);
108
- --base-card-padding-right: var(--space-6);
109
- --base-card-padding-bottom: var(--space-6);
110
- --base-card-padding-left: var(--space-6);
111
- --base-card-border-radius: min(var(--radius-surface-8), calc(var(--radius-surface-4) + var(--space-5)));
112
- }
113
- &:where(.rt-r-size-5) {
114
- --base-card-padding-top: var(--space-7);
115
- --base-card-padding-right: var(--space-7);
116
- --base-card-padding-bottom: var(--space-7);
117
- --base-card-padding-left: var(--space-7);
118
- --base-card-border-radius: min(var(--radius-surface-9), calc(var(--radius-surface-5) + var(--space-6)));
99
+ --base-card-padding-top: var(--surface-p-4);
100
+ --base-card-padding-right: var(--surface-p-4);
101
+ --base-card-padding-bottom: var(--surface-p-4);
102
+ --base-card-padding-left: var(--surface-p-4);
103
+ --base-card-border-radius: var(--radius-surface-4);
119
104
  }
120
105
  }
121
106
  }
122
107
 
123
- /***************************************************************************************************
124
- * *
125
- * INSET MODE *
126
- * *
127
- ***************************************************************************************************/
128
-
129
- .rt-BaseCard:where([data-inset='true']) {
130
- --base-card-padding-top: 0px;
131
- --base-card-padding-right: 0px;
132
- --base-card-padding-bottom: 0px;
133
- --base-card-padding-left: 0px;
134
- }
135
-
136
108
  /***************************************************************************************************
137
109
  * *
138
110
  * VARIANT PALETTES *
@@ -299,30 +271,6 @@
299
271
  --v-focus-color: var(--focus-8);
300
272
  --v-focus-offset: -1px;
301
273
 
302
- /* Flush mode */
303
- &:where([data-flush='true']) {
304
- --margin-top: 0px;
305
- --margin-right: 0px;
306
- --margin-bottom: 0px;
307
- --margin-left: 0px;
308
- --margin-top-override: calc(var(--margin-top) - var(--card-padding));
309
- --margin-right-override: calc(var(--margin-right) - var(--card-padding));
310
- --margin-bottom-override: calc(var(--margin-bottom) - var(--card-padding));
311
- --margin-left-override: calc(var(--margin-left) - var(--card-padding));
312
-
313
- margin-top: var(--margin-top-override);
314
- margin-right: var(--margin-right-override);
315
- margin-bottom: var(--margin-bottom-override);
316
- margin-left: var(--margin-left-override);
317
-
318
- :where(&) > * {
319
- --margin-top-override: initial;
320
- --margin-right-override: initial;
321
- --margin-bottom-override: initial;
322
- --margin-left-override: initial;
323
- }
324
- }
325
-
326
274
  /* Focus */
327
275
  &:where(:focus-visible) {
328
276
  outline: 2px solid var(--v-focus-color);