@womp/kookie-ui 0.23.0 → 0.25.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 (1217) hide show
  1. package/README.md +3 -3
  2. package/components.css +13017 -12024
  3. package/dist/cjs/components/_internal/base-button.d.ts +11 -1
  4. package/dist/cjs/components/_internal/base-button.d.ts.map +1 -1
  5. package/dist/cjs/components/_internal/base-button.js +2 -1
  6. package/dist/cjs/components/_internal/base-button.js.map +4 -4
  7. package/dist/cjs/components/_internal/base-button.props.js +1 -0
  8. package/dist/cjs/components/_internal/base-button.props.js.map +2 -2
  9. package/dist/cjs/components/_internal/base-checkbox.props.js +1 -0
  10. package/dist/cjs/components/_internal/base-checkbox.props.js.map +1 -1
  11. package/dist/cjs/components/_internal/base-menu.props.js +1 -0
  12. package/dist/cjs/components/_internal/base-menu.props.js.map +1 -1
  13. package/dist/cjs/components/_internal/base-menu.utils.js +1 -0
  14. package/dist/cjs/components/_internal/base-menu.utils.js.map +1 -1
  15. package/dist/cjs/components/_internal/base-radio.props.js +1 -0
  16. package/dist/cjs/components/_internal/base-radio.props.js.map +1 -1
  17. package/dist/cjs/components/_internal/base-tab-list.props.js +1 -0
  18. package/dist/cjs/components/_internal/base-tab-list.props.js.map +1 -1
  19. package/dist/cjs/components/_internal/dropdown-menu-drill-down.d.ts +19 -7
  20. package/dist/cjs/components/_internal/dropdown-menu-drill-down.d.ts.map +1 -1
  21. package/dist/cjs/components/_internal/dropdown-menu-drill-down.js +2 -1
  22. package/dist/cjs/components/_internal/dropdown-menu-drill-down.js.map +3 -3
  23. package/dist/cjs/components/_internal/menu-context.d.ts +12 -0
  24. package/dist/cjs/components/_internal/menu-context.d.ts.map +1 -1
  25. package/dist/cjs/components/_internal/menu-context.js +2 -1
  26. package/dist/cjs/components/_internal/menu-context.js.map +3 -3
  27. package/dist/cjs/components/_internal/pane-chrome.d.ts +19 -2
  28. package/dist/cjs/components/_internal/pane-chrome.d.ts.map +1 -1
  29. package/dist/cjs/components/_internal/pane-chrome.js +2 -1
  30. package/dist/cjs/components/_internal/pane-chrome.js.map +4 -4
  31. package/dist/cjs/components/_internal/shell-bottom.d.ts +1 -1
  32. package/dist/cjs/components/_internal/shell-bottom.d.ts.map +1 -1
  33. package/dist/cjs/components/_internal/shell-bottom.js +2 -1
  34. package/dist/cjs/components/_internal/shell-bottom.js.map +3 -3
  35. package/dist/cjs/components/_internal/shell-handles.d.ts.map +1 -1
  36. package/dist/cjs/components/_internal/shell-handles.js +2 -1
  37. package/dist/cjs/components/_internal/shell-handles.js.map +3 -3
  38. package/dist/cjs/components/_internal/shell-inspector.d.ts +1 -1
  39. package/dist/cjs/components/_internal/shell-inspector.d.ts.map +1 -1
  40. package/dist/cjs/components/_internal/shell-inspector.js +2 -1
  41. package/dist/cjs/components/_internal/shell-inspector.js.map +3 -3
  42. package/dist/cjs/components/_internal/shell-pane.d.ts.map +1 -1
  43. package/dist/cjs/components/_internal/shell-pane.js +2 -1
  44. package/dist/cjs/components/_internal/shell-pane.js.map +3 -3
  45. package/dist/cjs/components/_internal/shell-resizable.d.ts.map +1 -1
  46. package/dist/cjs/components/_internal/shell-resizable.js +2 -1
  47. package/dist/cjs/components/_internal/shell-resizable.js.map +3 -3
  48. package/dist/cjs/components/_internal/shell-resize.js +1 -0
  49. package/dist/cjs/components/_internal/shell-resize.js.map +1 -1
  50. package/dist/cjs/components/_internal/shell-rest.js +1 -0
  51. package/dist/cjs/components/_internal/shell-rest.js.map +1 -1
  52. package/dist/cjs/components/_internal/shell-sidebar.d.ts +1 -1
  53. package/dist/cjs/components/_internal/shell-sidebar.d.ts.map +1 -1
  54. package/dist/cjs/components/_internal/shell-sidebar.js +2 -1
  55. package/dist/cjs/components/_internal/shell-sidebar.js.map +4 -4
  56. package/dist/cjs/components/_internal/shell-store.d.ts.map +1 -1
  57. package/dist/cjs/components/_internal/shell-store.js +2 -1
  58. package/dist/cjs/components/_internal/shell-store.js.map +3 -3
  59. package/dist/cjs/components/accessible-icon.js +1 -0
  60. package/dist/cjs/components/accessible-icon.js.map +1 -1
  61. package/dist/cjs/components/accordion.d.ts +2 -2
  62. package/dist/cjs/components/accordion.d.ts.map +1 -1
  63. package/dist/cjs/components/accordion.js +2 -1
  64. package/dist/cjs/components/accordion.js.map +4 -4
  65. package/dist/cjs/components/accordion.props.js +1 -0
  66. package/dist/cjs/components/accordion.props.js.map +1 -1
  67. package/dist/cjs/components/alert-dialog.d.ts.map +1 -1
  68. package/dist/cjs/components/alert-dialog.js +2 -1
  69. package/dist/cjs/components/alert-dialog.js.map +4 -4
  70. package/dist/cjs/components/alert-dialog.props.js +1 -0
  71. package/dist/cjs/components/alert-dialog.props.js.map +1 -1
  72. package/dist/cjs/components/avatar.d.ts +1 -1
  73. package/dist/cjs/components/avatar.d.ts.map +1 -1
  74. package/dist/cjs/components/avatar.js +2 -1
  75. package/dist/cjs/components/avatar.js.map +3 -3
  76. package/dist/cjs/components/avatar.props.d.ts +8 -0
  77. package/dist/cjs/components/avatar.props.d.ts.map +1 -1
  78. package/dist/cjs/components/avatar.props.js +2 -1
  79. package/dist/cjs/components/avatar.props.js.map +2 -2
  80. package/dist/cjs/components/blockquote.d.ts +1 -1
  81. package/dist/cjs/components/blockquote.d.ts.map +1 -1
  82. package/dist/cjs/components/blockquote.js +2 -1
  83. package/dist/cjs/components/blockquote.js.map +4 -4
  84. package/dist/cjs/components/blockquote.props.js +1 -0
  85. package/dist/cjs/components/blockquote.props.js.map +1 -1
  86. package/dist/cjs/components/box.js +1 -0
  87. package/dist/cjs/components/box.js.map +1 -1
  88. package/dist/cjs/components/box.props.js +1 -0
  89. package/dist/cjs/components/box.props.js.map +1 -1
  90. package/dist/cjs/components/button.d.ts.map +1 -1
  91. package/dist/cjs/components/button.js +2 -1
  92. package/dist/cjs/components/button.js.map +4 -4
  93. package/dist/cjs/components/button.props.js +1 -0
  94. package/dist/cjs/components/button.props.js.map +2 -2
  95. package/dist/cjs/components/card.js +1 -0
  96. package/dist/cjs/components/card.js.map +1 -1
  97. package/dist/cjs/components/card.props.js +1 -0
  98. package/dist/cjs/components/card.props.js.map +1 -1
  99. package/dist/cjs/components/chatbar.d.ts.map +1 -1
  100. package/dist/cjs/components/chatbar.js +2 -1
  101. package/dist/cjs/components/chatbar.js.map +4 -4
  102. package/dist/cjs/components/checkbox-group.d.ts.map +1 -1
  103. package/dist/cjs/components/checkbox-group.js +2 -1
  104. package/dist/cjs/components/checkbox-group.js.map +3 -3
  105. package/dist/cjs/components/checkbox-group.primitive.d.ts +12 -5
  106. package/dist/cjs/components/checkbox-group.primitive.d.ts.map +1 -1
  107. package/dist/cjs/components/checkbox-group.primitive.js +2 -1
  108. package/dist/cjs/components/checkbox-group.primitive.js.map +3 -3
  109. package/dist/cjs/components/checkbox-group.props.js +1 -0
  110. package/dist/cjs/components/checkbox-group.props.js.map +1 -1
  111. package/dist/cjs/components/checkbox.js +2 -1
  112. package/dist/cjs/components/checkbox.js.map +3 -3
  113. package/dist/cjs/components/checkbox.props.js +1 -0
  114. package/dist/cjs/components/checkbox.props.js.map +1 -1
  115. package/dist/cjs/components/chip.d.ts.map +1 -1
  116. package/dist/cjs/components/chip.js +2 -1
  117. package/dist/cjs/components/chip.js.map +3 -3
  118. package/dist/cjs/components/chip.props.js +1 -0
  119. package/dist/cjs/components/chip.props.js.map +1 -1
  120. package/dist/cjs/components/code.d.ts.map +1 -1
  121. package/dist/cjs/components/code.js +2 -1
  122. package/dist/cjs/components/code.js.map +2 -2
  123. package/dist/cjs/components/code.props.js +1 -0
  124. package/dist/cjs/components/code.props.js.map +1 -1
  125. package/dist/cjs/components/combobox.d.ts.map +1 -1
  126. package/dist/cjs/components/combobox.js +2 -1
  127. package/dist/cjs/components/combobox.js.map +4 -4
  128. package/dist/cjs/components/combobox.props.js +1 -0
  129. package/dist/cjs/components/combobox.props.js.map +1 -1
  130. package/dist/cjs/components/context-menu.d.ts +1 -2
  131. package/dist/cjs/components/context-menu.d.ts.map +1 -1
  132. package/dist/cjs/components/context-menu.js +2 -1
  133. package/dist/cjs/components/context-menu.js.map +4 -4
  134. package/dist/cjs/components/context-menu.props.js +1 -0
  135. package/dist/cjs/components/context-menu.props.js.map +1 -1
  136. package/dist/cjs/components/dialog.d.ts +1 -1
  137. package/dist/cjs/components/dialog.d.ts.map +1 -1
  138. package/dist/cjs/components/dialog.js +2 -1
  139. package/dist/cjs/components/dialog.js.map +3 -3
  140. package/dist/cjs/components/dialog.props.js +1 -0
  141. package/dist/cjs/components/dialog.props.js.map +1 -1
  142. package/dist/cjs/components/dropdown-menu.d.ts +1 -2
  143. package/dist/cjs/components/dropdown-menu.d.ts.map +1 -1
  144. package/dist/cjs/components/dropdown-menu.js +2 -1
  145. package/dist/cjs/components/dropdown-menu.js.map +4 -4
  146. package/dist/cjs/components/dropdown-menu.props.js +1 -0
  147. package/dist/cjs/components/dropdown-menu.props.js.map +1 -1
  148. package/dist/cjs/components/flex.js +1 -0
  149. package/dist/cjs/components/flex.js.map +2 -2
  150. package/dist/cjs/components/flex.props.js +1 -0
  151. package/dist/cjs/components/flex.props.js.map +2 -2
  152. package/dist/cjs/components/grid.js +1 -0
  153. package/dist/cjs/components/grid.js.map +2 -2
  154. package/dist/cjs/components/grid.props.js +1 -0
  155. package/dist/cjs/components/grid.props.js.map +2 -2
  156. package/dist/cjs/components/heading.d.ts +2 -2
  157. package/dist/cjs/components/heading.d.ts.map +1 -1
  158. package/dist/cjs/components/heading.js +2 -1
  159. package/dist/cjs/components/heading.js.map +2 -2
  160. package/dist/cjs/components/heading.props.d.ts +1 -1
  161. package/dist/cjs/components/heading.props.js +2 -1
  162. package/dist/cjs/components/heading.props.js.map +2 -2
  163. package/dist/cjs/components/icons.d.ts +3 -1
  164. package/dist/cjs/components/icons.d.ts.map +1 -1
  165. package/dist/cjs/components/icons.js +2 -1
  166. package/dist/cjs/components/icons.js.map +3 -3
  167. package/dist/cjs/components/image.d.ts +9 -2
  168. package/dist/cjs/components/image.d.ts.map +1 -1
  169. package/dist/cjs/components/image.js +2 -1
  170. package/dist/cjs/components/image.js.map +3 -3
  171. package/dist/cjs/components/image.props.js +1 -0
  172. package/dist/cjs/components/image.props.js.map +1 -1
  173. package/dist/cjs/components/index.d.ts +2 -2
  174. package/dist/cjs/components/index.d.ts.map +1 -1
  175. package/dist/cjs/components/index.js +3 -10
  176. package/dist/cjs/components/index.js.map +4 -4
  177. package/dist/cjs/components/kbd.js +1 -0
  178. package/dist/cjs/components/kbd.js.map +1 -1
  179. package/dist/cjs/components/kbd.props.js +1 -0
  180. package/dist/cjs/components/kbd.props.js.map +1 -1
  181. package/dist/cjs/components/link.js +1 -0
  182. package/dist/cjs/components/link.js.map +1 -1
  183. package/dist/cjs/components/link.props.js +1 -0
  184. package/dist/cjs/components/link.props.js.map +1 -1
  185. package/dist/cjs/components/message-scroller.d.ts +2 -2
  186. package/dist/cjs/components/message-scroller.d.ts.map +1 -1
  187. package/dist/cjs/components/message-scroller.js +2 -1
  188. package/dist/cjs/components/message-scroller.js.map +4 -4
  189. package/dist/cjs/components/navbar.d.ts.map +1 -1
  190. package/dist/cjs/components/navbar.js +2 -1
  191. package/dist/cjs/components/navbar.js.map +3 -3
  192. package/dist/cjs/components/navbar.props.js +1 -0
  193. package/dist/cjs/components/navbar.props.js.map +1 -1
  194. package/dist/cjs/components/notice.d.ts +4 -1
  195. package/dist/cjs/components/notice.d.ts.map +1 -1
  196. package/dist/cjs/components/notice.js +2 -1
  197. package/dist/cjs/components/notice.js.map +4 -4
  198. package/dist/cjs/components/popover.d.ts +3 -1
  199. package/dist/cjs/components/popover.d.ts.map +1 -1
  200. package/dist/cjs/components/popover.js +2 -1
  201. package/dist/cjs/components/popover.js.map +3 -3
  202. package/dist/cjs/components/popover.props.js +1 -0
  203. package/dist/cjs/components/popover.props.js.map +1 -1
  204. package/dist/cjs/components/portal.js +1 -0
  205. package/dist/cjs/components/portal.js.map +1 -1
  206. package/dist/cjs/components/progress.d.ts.map +1 -1
  207. package/dist/cjs/components/progress.js +2 -1
  208. package/dist/cjs/components/progress.js.map +3 -3
  209. package/dist/cjs/components/progress.props.js +1 -0
  210. package/dist/cjs/components/progress.props.js.map +1 -1
  211. package/dist/cjs/components/radio-group.js +1 -0
  212. package/dist/cjs/components/radio-group.js.map +1 -1
  213. package/dist/cjs/components/radio-group.props.js +1 -0
  214. package/dist/cjs/components/radio-group.props.js.map +1 -1
  215. package/dist/cjs/components/radio.js +1 -0
  216. package/dist/cjs/components/radio.js.map +1 -1
  217. package/dist/cjs/components/radio.props.js +1 -0
  218. package/dist/cjs/components/radio.props.js.map +1 -1
  219. package/dist/cjs/components/reset.js +1 -0
  220. package/dist/cjs/components/reset.js.map +1 -1
  221. package/dist/cjs/components/schemas/base-button.schema.js +1 -0
  222. package/dist/cjs/components/schemas/base-button.schema.js.map +1 -1
  223. package/dist/cjs/components/schemas/button.schema.d.ts +2 -2
  224. package/dist/cjs/components/schemas/button.schema.js +1 -0
  225. package/dist/cjs/components/schemas/button.schema.js.map +1 -1
  226. package/dist/cjs/components/schemas/index.js +1 -0
  227. package/dist/cjs/components/schemas/index.js.map +1 -1
  228. package/dist/cjs/components/schemas/shell.schema.js +1 -0
  229. package/dist/cjs/components/schemas/shell.schema.js.map +1 -1
  230. package/dist/cjs/components/schemas/toggle.schema.d.ts +1 -1
  231. package/dist/cjs/components/schemas/toggle.schema.js +1 -0
  232. package/dist/cjs/components/schemas/toggle.schema.js.map +1 -1
  233. package/dist/cjs/components/scroll-area.d.ts +3 -1
  234. package/dist/cjs/components/scroll-area.d.ts.map +1 -1
  235. package/dist/cjs/components/scroll-area.js +2 -1
  236. package/dist/cjs/components/scroll-area.js.map +4 -4
  237. package/dist/cjs/components/scroll-area.props.js +1 -0
  238. package/dist/cjs/components/scroll-area.props.js.map +1 -1
  239. package/dist/cjs/components/segmented-control.d.ts +3 -1
  240. package/dist/cjs/components/segmented-control.d.ts.map +1 -1
  241. package/dist/cjs/components/segmented-control.js +2 -1
  242. package/dist/cjs/components/segmented-control.js.map +3 -3
  243. package/dist/cjs/components/segmented-control.props.d.ts +0 -1
  244. package/dist/cjs/components/segmented-control.props.d.ts.map +1 -1
  245. package/dist/cjs/components/segmented-control.props.js +2 -1
  246. package/dist/cjs/components/segmented-control.props.js.map +2 -2
  247. package/dist/cjs/components/select.d.ts.map +1 -1
  248. package/dist/cjs/components/select.js +2 -1
  249. package/dist/cjs/components/select.js.map +4 -4
  250. package/dist/cjs/components/select.props.js +1 -0
  251. package/dist/cjs/components/select.props.js.map +1 -1
  252. package/dist/cjs/components/separator.d.ts.map +1 -1
  253. package/dist/cjs/components/separator.js +2 -1
  254. package/dist/cjs/components/separator.js.map +4 -4
  255. package/dist/cjs/components/separator.props.d.ts +1 -1
  256. package/dist/cjs/components/separator.props.js +2 -1
  257. package/dist/cjs/components/separator.props.js.map +2 -2
  258. package/dist/cjs/components/sheet.d.ts +2 -1
  259. package/dist/cjs/components/sheet.d.ts.map +1 -1
  260. package/dist/cjs/components/sheet.js +2 -1
  261. package/dist/cjs/components/sheet.js.map +3 -3
  262. package/dist/cjs/components/shell.context.js +2 -1
  263. package/dist/cjs/components/shell.context.js.map +3 -3
  264. package/dist/cjs/components/shell.d.ts +17 -3
  265. package/dist/cjs/components/shell.d.ts.map +1 -1
  266. package/dist/cjs/components/shell.hooks.js +2 -1
  267. package/dist/cjs/components/shell.hooks.js.map +3 -3
  268. package/dist/cjs/components/shell.js +2 -1
  269. package/dist/cjs/components/shell.js.map +4 -4
  270. package/dist/cjs/components/shell.types.js +1 -0
  271. package/dist/cjs/components/shell.types.js.map +1 -1
  272. package/dist/cjs/components/sidebar.d.ts.map +1 -1
  273. package/dist/cjs/components/sidebar.js +2 -1
  274. package/dist/cjs/components/sidebar.js.map +4 -4
  275. package/dist/cjs/components/slider.d.ts.map +1 -1
  276. package/dist/cjs/components/slider.js +2 -1
  277. package/dist/cjs/components/slider.js.map +3 -3
  278. package/dist/cjs/components/slider.props.d.ts +0 -2
  279. package/dist/cjs/components/slider.props.d.ts.map +1 -1
  280. package/dist/cjs/components/slider.props.js +2 -1
  281. package/dist/cjs/components/slider.props.js.map +2 -2
  282. package/dist/cjs/components/slot.js +1 -0
  283. package/dist/cjs/components/slot.js.map +1 -1
  284. package/dist/cjs/components/spinner.d.ts.map +1 -1
  285. package/dist/cjs/components/spinner.js +2 -1
  286. package/dist/cjs/components/spinner.js.map +3 -3
  287. package/dist/cjs/components/spinner.props.js +1 -0
  288. package/dist/cjs/components/spinner.props.js.map +1 -1
  289. package/dist/cjs/components/switch.js +1 -0
  290. package/dist/cjs/components/switch.js.map +1 -1
  291. package/dist/cjs/components/switch.props.js +1 -0
  292. package/dist/cjs/components/switch.props.js.map +1 -1
  293. package/dist/cjs/components/table.d.ts.map +1 -1
  294. package/dist/cjs/components/table.js +2 -1
  295. package/dist/cjs/components/table.js.map +4 -4
  296. package/dist/cjs/components/table.props.d.ts +0 -2
  297. package/dist/cjs/components/table.props.d.ts.map +1 -1
  298. package/dist/cjs/components/table.props.js +2 -1
  299. package/dist/cjs/components/table.props.js.map +3 -3
  300. package/dist/cjs/components/tabs.d.ts.map +1 -1
  301. package/dist/cjs/components/tabs.js +2 -1
  302. package/dist/cjs/components/tabs.js.map +3 -3
  303. package/dist/cjs/components/tabs.props.js +1 -0
  304. package/dist/cjs/components/tabs.props.js.map +1 -1
  305. package/dist/cjs/components/text-area.d.ts.map +1 -1
  306. package/dist/cjs/components/text-area.js +2 -1
  307. package/dist/cjs/components/text-area.js.map +2 -2
  308. package/dist/cjs/components/text-area.props.js +1 -0
  309. package/dist/cjs/components/text-area.props.js.map +1 -1
  310. package/dist/cjs/components/text-field.d.ts.map +1 -1
  311. package/dist/cjs/components/text-field.js +3 -2
  312. package/dist/cjs/components/text-field.js.map +3 -3
  313. package/dist/cjs/components/text-field.props.js +1 -0
  314. package/dist/cjs/components/text-field.props.js.map +2 -2
  315. package/dist/cjs/components/text.js +1 -0
  316. package/dist/cjs/components/text.js.map +1 -1
  317. package/dist/cjs/components/text.props.js +1 -0
  318. package/dist/cjs/components/text.props.js.map +1 -1
  319. package/dist/cjs/components/theme.d.ts.map +1 -1
  320. package/dist/cjs/components/theme.js +2 -1
  321. package/dist/cjs/components/theme.js.map +3 -3
  322. package/dist/cjs/components/theme.props.js +1 -0
  323. package/dist/cjs/components/theme.props.js.map +1 -1
  324. package/dist/cjs/components/toggle.d.ts +3 -2
  325. package/dist/cjs/components/toggle.d.ts.map +1 -1
  326. package/dist/cjs/components/toggle.js +2 -9
  327. package/dist/cjs/components/toggle.js.map +4 -4
  328. package/dist/cjs/components/toolbar.d.ts +83 -8
  329. package/dist/cjs/components/toolbar.d.ts.map +1 -1
  330. package/dist/cjs/components/toolbar.js +2 -1
  331. package/dist/cjs/components/toolbar.js.map +4 -4
  332. package/dist/cjs/components/toolbar.props.js +1 -0
  333. package/dist/cjs/components/toolbar.props.js.map +1 -1
  334. package/dist/cjs/components/tooltip.d.ts +13 -2
  335. package/dist/cjs/components/tooltip.d.ts.map +1 -1
  336. package/dist/cjs/components/tooltip.js +2 -1
  337. package/dist/cjs/components/tooltip.js.map +3 -3
  338. package/dist/cjs/components/tooltip.props.js +1 -0
  339. package/dist/cjs/components/tooltip.props.js.map +1 -1
  340. package/dist/cjs/components/virtual-menu.d.ts +22 -17
  341. package/dist/cjs/components/virtual-menu.d.ts.map +1 -1
  342. package/dist/cjs/components/virtual-menu.js +2 -1
  343. package/dist/cjs/components/virtual-menu.js.map +3 -3
  344. package/dist/cjs/components/visually-hidden.js +1 -0
  345. package/dist/cjs/components/visually-hidden.js.map +1 -1
  346. package/dist/cjs/helpers/extract-margin-props.d.ts +7 -7
  347. package/dist/cjs/helpers/get-margin-styles.d.ts.map +1 -1
  348. package/dist/cjs/helpers/get-margin-styles.js +1 -1
  349. package/dist/cjs/helpers/get-margin-styles.js.map +3 -3
  350. package/dist/cjs/helpers/index.js +4 -4
  351. package/dist/cjs/helpers/index.js.map +3 -3
  352. package/dist/cjs/hooks/index.js +5 -4
  353. package/dist/cjs/hooks/index.js.map +3 -3
  354. package/dist/cjs/hooks/use-appearance.d.ts.map +1 -1
  355. package/dist/cjs/hooks/use-appearance.js +4 -3
  356. package/dist/cjs/hooks/use-appearance.js.map +3 -3
  357. package/dist/cjs/hooks/use-body-pointer-events-cleanup.d.ts +1 -1
  358. package/dist/cjs/hooks/use-body-pointer-events-cleanup.d.ts.map +1 -1
  359. package/dist/cjs/hooks/use-body-pointer-events-cleanup.js +2 -1
  360. package/dist/cjs/hooks/use-body-pointer-events-cleanup.js.map +3 -3
  361. package/dist/cjs/hooks/use-breakpoint.js +1 -0
  362. package/dist/cjs/hooks/use-breakpoint.js.map +1 -1
  363. package/dist/cjs/hooks/use-live-announcer.js +1 -0
  364. package/dist/cjs/hooks/use-live-announcer.js.map +1 -1
  365. package/dist/cjs/hooks/use-prop-synced-state.js +1 -0
  366. package/dist/cjs/hooks/use-prop-synced-state.js.map +1 -1
  367. package/dist/cjs/hooks/use-scroll-edges.d.ts +4 -2
  368. package/dist/cjs/hooks/use-scroll-edges.d.ts.map +1 -1
  369. package/dist/cjs/hooks/use-scroll-edges.js +2 -1
  370. package/dist/cjs/hooks/use-scroll-edges.js.map +3 -3
  371. package/dist/cjs/hooks/use-thumb-sync.js +1 -0
  372. package/dist/cjs/hooks/use-thumb-sync.js.map +1 -1
  373. package/dist/cjs/hooks/use-toggle-state.js +1 -0
  374. package/dist/cjs/hooks/use-toggle-state.js.map +1 -1
  375. package/dist/cjs/hooks/use-tooltip-wrapper.js +1 -0
  376. package/dist/cjs/hooks/use-tooltip-wrapper.js.map +1 -1
  377. package/dist/cjs/index.js +6 -5
  378. package/dist/cjs/index.js.map +4 -4
  379. package/dist/cjs/props/gap.props.d.ts +4 -4
  380. package/dist/cjs/props/gap.props.js.map +1 -1
  381. package/dist/cjs/props/index.js +1 -1
  382. package/dist/cjs/props/index.js.map +3 -3
  383. package/dist/esm/chunk-2EXOL2BR.js +3 -0
  384. package/dist/esm/chunk-2EXOL2BR.js.map +7 -0
  385. package/dist/esm/chunk-2IU5XPR2.js +3 -0
  386. package/dist/esm/chunk-2IU5XPR2.js.map +7 -0
  387. package/dist/esm/chunk-2IUGM657.js +3 -0
  388. package/dist/esm/chunk-2IUGM657.js.map +7 -0
  389. package/dist/esm/chunk-2VSRZ4IT.js +3 -0
  390. package/dist/esm/chunk-2VSRZ4IT.js.map +7 -0
  391. package/dist/esm/chunk-2XZ7477Y.js +3 -0
  392. package/dist/esm/{chunk-HKPXDQ2B.js.map → chunk-2XZ7477Y.js.map} +1 -1
  393. package/dist/esm/{chunk-GNTNGLYR.js → chunk-2Z2I27ZS.js} +3 -2
  394. package/dist/esm/{chunk-GNTNGLYR.js.map → chunk-2Z2I27ZS.js.map} +1 -1
  395. package/dist/esm/chunk-3223MHQK.js +3 -0
  396. package/dist/esm/{chunk-DSPYHO3L.js.map → chunk-3223MHQK.js.map} +2 -2
  397. package/dist/esm/{chunk-MPTTUBFU.js → chunk-3H23GRNQ.js} +3 -2
  398. package/dist/esm/{chunk-MPTTUBFU.js.map → chunk-3H23GRNQ.js.map} +2 -2
  399. package/dist/esm/chunk-3LIF53YY.js +13 -0
  400. package/dist/esm/chunk-3LIF53YY.js.map +7 -0
  401. package/dist/esm/chunk-3QWGSRYC.js +3 -0
  402. package/dist/esm/chunk-3QWGSRYC.js.map +7 -0
  403. package/dist/esm/chunk-3WZLXGUE.js +3 -0
  404. package/dist/esm/chunk-3WZLXGUE.js.map +7 -0
  405. package/dist/esm/chunk-45O3JZWQ.js +6 -0
  406. package/dist/esm/chunk-45O3JZWQ.js.map +7 -0
  407. package/dist/esm/chunk-4ABQ6CDI.js +3 -0
  408. package/dist/esm/chunk-4ABQ6CDI.js.map +7 -0
  409. package/dist/esm/{chunk-IAEAXIBI.js → chunk-4J7QDLKI.js} +3 -2
  410. package/dist/esm/{chunk-IAEAXIBI.js.map → chunk-4J7QDLKI.js.map} +1 -1
  411. package/dist/esm/chunk-4Q5PUIDJ.js +3 -0
  412. package/dist/esm/chunk-4Q5PUIDJ.js.map +7 -0
  413. package/dist/esm/chunk-54HUG34P.js +3 -0
  414. package/dist/esm/chunk-54HUG34P.js.map +7 -0
  415. package/dist/esm/chunk-5EP3UTM7.js +3 -0
  416. package/dist/esm/{chunk-Q4IA622Q.js.map → chunk-5EP3UTM7.js.map} +1 -1
  417. package/dist/esm/chunk-5JYSYTHA.js +3 -0
  418. package/dist/esm/chunk-5JYSYTHA.js.map +7 -0
  419. package/dist/esm/{chunk-FWB47YCH.js → chunk-5KMEUZWN.js} +2 -1
  420. package/dist/esm/{chunk-FWB47YCH.js.map → chunk-5KMEUZWN.js.map} +1 -1
  421. package/dist/esm/{chunk-7MC7N4BC.js → chunk-5KQCG7AV.js} +2 -1
  422. package/dist/esm/{chunk-7MC7N4BC.js.map → chunk-5KQCG7AV.js.map} +1 -1
  423. package/dist/esm/chunk-5RFDCAKC.js +3 -0
  424. package/dist/esm/{chunk-SKOYHBIE.js.map → chunk-5RFDCAKC.js.map} +1 -1
  425. package/dist/esm/{chunk-BIITGC3Z.js → chunk-5WTSKXAE.js} +3 -2
  426. package/dist/esm/{chunk-BIITGC3Z.js.map → chunk-5WTSKXAE.js.map} +1 -1
  427. package/dist/esm/{chunk-OSSNMF5U.js → chunk-647DRBXQ.js} +3 -2
  428. package/dist/esm/{chunk-OSSNMF5U.js.map → chunk-647DRBXQ.js.map} +1 -1
  429. package/dist/esm/{chunk-KKMOGHIY.js → chunk-64EFWPHI.js} +3 -2
  430. package/dist/esm/{chunk-KKMOGHIY.js.map → chunk-64EFWPHI.js.map} +1 -1
  431. package/dist/esm/{chunk-BWLCTTTN.js → chunk-65KD6WS6.js} +3 -2
  432. package/dist/esm/{chunk-BWLCTTTN.js.map → chunk-65KD6WS6.js.map} +2 -2
  433. package/dist/esm/{chunk-RWTSGUVJ.js → chunk-6AMWYEM7.js} +3 -2
  434. package/dist/esm/{chunk-RWTSGUVJ.js.map → chunk-6AMWYEM7.js.map} +1 -1
  435. package/dist/esm/{chunk-ELAW7ZUG.js → chunk-6FLLFCBU.js} +2 -2
  436. package/dist/esm/{chunk-4P6TKZCA.js → chunk-6UZT3ZLO.js} +3 -2
  437. package/dist/esm/{chunk-4P6TKZCA.js.map → chunk-6UZT3ZLO.js.map} +1 -1
  438. package/dist/esm/chunk-7IHBNDCE.js +3 -0
  439. package/dist/esm/{chunk-XKSU3NLG.js.map → chunk-7IHBNDCE.js.map} +2 -2
  440. package/dist/esm/chunk-7J7RPEPB.js +3 -0
  441. package/dist/esm/chunk-7J7RPEPB.js.map +7 -0
  442. package/dist/esm/chunk-7N2Q5WOM.js +3 -0
  443. package/dist/esm/chunk-7N2Q5WOM.js.map +7 -0
  444. package/dist/esm/{chunk-25FNCKUM.js → chunk-7ROKZHH2.js} +3 -2
  445. package/dist/esm/{chunk-25FNCKUM.js.map → chunk-7ROKZHH2.js.map} +1 -1
  446. package/dist/esm/chunk-7VJF6EXN.js +3 -0
  447. package/dist/esm/chunk-7VJF6EXN.js.map +7 -0
  448. package/dist/esm/chunk-A2OMWZI7.js +2 -0
  449. package/dist/esm/chunk-A7QRPXXB.js +3 -0
  450. package/dist/esm/chunk-A7QRPXXB.js.map +7 -0
  451. package/dist/esm/chunk-AG2YETE6.js +3 -0
  452. package/dist/esm/chunk-AG2YETE6.js.map +7 -0
  453. package/dist/esm/{chunk-4BU4R7UM.js → chunk-AOBY2OUZ.js} +3 -2
  454. package/dist/esm/{chunk-4BU4R7UM.js.map → chunk-AOBY2OUZ.js.map} +1 -1
  455. package/dist/esm/{chunk-XEZXKPLE.js → chunk-AXODGYRY.js} +2 -1
  456. package/dist/esm/{chunk-XEZXKPLE.js.map → chunk-AXODGYRY.js.map} +1 -1
  457. package/dist/esm/chunk-AYKOOEZR.js +2 -0
  458. package/dist/esm/{chunk-YHYPIJCR.js → chunk-AZHSPPBV.js} +3 -2
  459. package/dist/esm/{chunk-YHYPIJCR.js.map → chunk-AZHSPPBV.js.map} +1 -1
  460. package/dist/esm/{chunk-ERNM3KVF.js → chunk-B6YGNB3V.js} +2 -1
  461. package/dist/esm/{chunk-ERNM3KVF.js.map → chunk-B6YGNB3V.js.map} +1 -1
  462. package/dist/esm/chunk-BMKUGZ4I.js +3 -0
  463. package/dist/esm/{chunk-VPSMETY2.js.map → chunk-BMKUGZ4I.js.map} +1 -1
  464. package/dist/esm/chunk-BOLSK63X.js +3 -0
  465. package/dist/esm/{chunk-X4A3XRBY.js.map → chunk-BOLSK63X.js.map} +1 -1
  466. package/dist/esm/chunk-BUZGRMDD.js +3 -0
  467. package/dist/esm/chunk-BUZGRMDD.js.map +7 -0
  468. package/dist/esm/{chunk-IDOZJVO6.js → chunk-CAAEEHGQ.js} +3 -2
  469. package/dist/esm/{chunk-IDOZJVO6.js.map → chunk-CAAEEHGQ.js.map} +1 -1
  470. package/dist/esm/{chunk-3QZBWH2A.js → chunk-CKJXTEVO.js} +3 -2
  471. package/dist/esm/chunk-CKJXTEVO.js.map +7 -0
  472. package/dist/esm/chunk-CLJ6SEGP.js +3 -0
  473. package/dist/esm/chunk-CLJ6SEGP.js.map +7 -0
  474. package/dist/esm/chunk-CR65RYGM.js +3 -0
  475. package/dist/esm/chunk-CR65RYGM.js.map +7 -0
  476. package/dist/esm/chunk-CRCYUJMK.js +3 -0
  477. package/dist/esm/chunk-CRCYUJMK.js.map +7 -0
  478. package/dist/esm/chunk-CV7QQTI3.js +3 -0
  479. package/dist/esm/chunk-CV7QQTI3.js.map +7 -0
  480. package/dist/esm/chunk-CYTPMHSJ.js +3 -0
  481. package/dist/esm/chunk-CYTPMHSJ.js.map +7 -0
  482. package/dist/esm/chunk-D4P7332M.js +3 -0
  483. package/dist/esm/chunk-D4P7332M.js.map +7 -0
  484. package/dist/esm/chunk-DI7RUMLO.js +3 -0
  485. package/dist/esm/chunk-DI7RUMLO.js.map +7 -0
  486. package/dist/esm/{chunk-OY5NT7VT.js → chunk-DVXDFCCV.js} +3 -2
  487. package/dist/esm/{chunk-OY5NT7VT.js.map → chunk-DVXDFCCV.js.map} +1 -1
  488. package/dist/esm/chunk-E4EMG3RC.js +3 -0
  489. package/dist/esm/chunk-E4EMG3RC.js.map +7 -0
  490. package/dist/esm/chunk-EAIQIW23.js +3 -0
  491. package/dist/esm/chunk-EAIQIW23.js.map +7 -0
  492. package/dist/esm/chunk-ENAW44VE.js +3 -0
  493. package/dist/esm/chunk-ENAW44VE.js.map +7 -0
  494. package/dist/esm/chunk-EVCQ6TG5.js +3 -0
  495. package/dist/esm/{chunk-JBHRV364.js.map → chunk-EVCQ6TG5.js.map} +2 -2
  496. package/dist/esm/{chunk-RAVZ7F5L.js → chunk-EY6TCYGG.js} +3 -2
  497. package/dist/esm/{chunk-RAVZ7F5L.js.map → chunk-EY6TCYGG.js.map} +1 -1
  498. package/dist/esm/chunk-FFJE25TJ.js +3 -0
  499. package/dist/esm/chunk-FFJE25TJ.js.map +7 -0
  500. package/dist/esm/chunk-FI32HA4X.js +3 -0
  501. package/dist/esm/{chunk-YXLDRDHW.js.map → chunk-FI32HA4X.js.map} +3 -3
  502. package/dist/esm/{chunk-NA237RHQ.js → chunk-FJLYSZV3.js} +1 -1
  503. package/dist/esm/{chunk-NA237RHQ.js.map → chunk-FJLYSZV3.js.map} +1 -1
  504. package/dist/esm/{chunk-DNOQ6E3W.js → chunk-FM3GBCX5.js} +3 -2
  505. package/dist/esm/{chunk-DNOQ6E3W.js.map → chunk-FM3GBCX5.js.map} +1 -1
  506. package/dist/esm/chunk-G32GSPNO.js +3 -0
  507. package/dist/esm/chunk-G32GSPNO.js.map +7 -0
  508. package/dist/esm/{chunk-TBZO22XK.js → chunk-G66WDIIV.js} +3 -2
  509. package/dist/esm/{chunk-TBZO22XK.js.map → chunk-G66WDIIV.js.map} +1 -1
  510. package/dist/esm/{chunk-PN3RQFSU.js → chunk-GHUAUFG7.js} +2 -1
  511. package/dist/esm/{chunk-PN3RQFSU.js.map → chunk-GHUAUFG7.js.map} +1 -1
  512. package/dist/esm/chunk-GHWEXMF6.js +3 -0
  513. package/dist/esm/chunk-GHWEXMF6.js.map +7 -0
  514. package/dist/esm/{chunk-IX5HIHVI.js → chunk-GKDGNPBD.js} +3 -2
  515. package/dist/esm/{chunk-IX5HIHVI.js.map → chunk-GKDGNPBD.js.map} +3 -3
  516. package/dist/esm/chunk-GNPTPIL7.js +3 -0
  517. package/dist/esm/{chunk-ZNDCZM5A.js.map → chunk-GNPTPIL7.js.map} +2 -2
  518. package/dist/esm/chunk-GPQSC6GL.js +3 -0
  519. package/dist/esm/chunk-GPQSC6GL.js.map +7 -0
  520. package/dist/esm/{chunk-THUBY6L2.js → chunk-GZ333J7L.js} +3 -2
  521. package/dist/esm/{chunk-THUBY6L2.js.map → chunk-GZ333J7L.js.map} +1 -1
  522. package/dist/esm/chunk-HBWBPBSA.js +3 -0
  523. package/dist/esm/chunk-HBWBPBSA.js.map +7 -0
  524. package/dist/esm/chunk-I3SRUPUP.js +3 -0
  525. package/dist/esm/chunk-I3SRUPUP.js.map +7 -0
  526. package/dist/esm/{chunk-3XHTJZNP.js → chunk-I6SMGWS5.js} +3 -2
  527. package/dist/esm/{chunk-3XHTJZNP.js.map → chunk-I6SMGWS5.js.map} +1 -1
  528. package/dist/esm/chunk-ILWS2JUE.js +3 -0
  529. package/dist/esm/chunk-ILWS2JUE.js.map +7 -0
  530. package/dist/esm/{chunk-QWDCLL6R.js → chunk-IN2WND4B.js} +3 -2
  531. package/dist/esm/{chunk-QWDCLL6R.js.map → chunk-IN2WND4B.js.map} +1 -1
  532. package/dist/esm/chunk-IO43RGNR.js +3 -0
  533. package/dist/esm/chunk-IO43RGNR.js.map +7 -0
  534. package/dist/esm/{chunk-OJQNLROL.js → chunk-IQ2RMFOM.js} +3 -2
  535. package/dist/esm/{chunk-OJQNLROL.js.map → chunk-IQ2RMFOM.js.map} +2 -2
  536. package/dist/esm/{chunk-DCNHG6VN.js → chunk-IZIDRDQW.js} +3 -2
  537. package/dist/esm/{chunk-DCNHG6VN.js.map → chunk-IZIDRDQW.js.map} +1 -1
  538. package/dist/esm/{chunk-7FTUTUMD.js → chunk-IZXML75Y.js} +2 -2
  539. package/dist/esm/chunk-J3QIUJ6F.js +2 -0
  540. package/dist/esm/chunk-JIF77MRB.js +3 -0
  541. package/dist/esm/chunk-JIF77MRB.js.map +7 -0
  542. package/dist/esm/{chunk-PBFSBHBS.js → chunk-JUY7CBSL.js} +2 -2
  543. package/dist/esm/chunk-JZ5Z53MN.js +2 -0
  544. package/dist/esm/{chunk-YEHM3FZN.js → chunk-JZVLP2VF.js} +3 -2
  545. package/dist/esm/{chunk-YEHM3FZN.js.map → chunk-JZVLP2VF.js.map} +1 -1
  546. package/dist/esm/chunk-KNBSG2WA.js +3 -0
  547. package/dist/esm/chunk-KNBSG2WA.js.map +7 -0
  548. package/dist/esm/{chunk-IWCFJJBI.js → chunk-KOAWATCI.js} +2 -1
  549. package/dist/esm/{chunk-IWCFJJBI.js.map → chunk-KOAWATCI.js.map} +1 -1
  550. package/dist/esm/chunk-KRFXTPEW.js +3 -0
  551. package/dist/esm/{chunk-63PQNLFJ.js.map → chunk-KRFXTPEW.js.map} +1 -1
  552. package/dist/esm/chunk-KSYHZCLD.js +3 -0
  553. package/dist/esm/{chunk-EZYXYLR2.js.map → chunk-KSYHZCLD.js.map} +1 -1
  554. package/dist/esm/{chunk-VW46DG7H.js → chunk-L4NF3Q2T.js} +3 -2
  555. package/dist/esm/{chunk-VW46DG7H.js.map → chunk-L4NF3Q2T.js.map} +1 -1
  556. package/dist/esm/chunk-L54FWKJE.js +3 -0
  557. package/dist/esm/chunk-L54FWKJE.js.map +7 -0
  558. package/dist/esm/{chunk-XTDXXQTB.js → chunk-L66IUPDW.js} +3 -2
  559. package/dist/esm/{chunk-XTDXXQTB.js.map → chunk-L66IUPDW.js.map} +1 -1
  560. package/dist/esm/chunk-LB2HB4NG.js +3 -0
  561. package/dist/esm/{chunk-NNZTSXKH.js.map → chunk-LB2HB4NG.js.map} +2 -2
  562. package/dist/esm/{chunk-VVWYAVHM.js → chunk-LCG3JZ3C.js} +3 -2
  563. package/dist/esm/{chunk-VVWYAVHM.js.map → chunk-LCG3JZ3C.js.map} +1 -1
  564. package/dist/esm/chunk-LPLW7OWA.js +3 -0
  565. package/dist/esm/chunk-LPLW7OWA.js.map +7 -0
  566. package/dist/esm/chunk-M37GE2TE.js +3 -0
  567. package/dist/esm/{chunk-UONSKZQT.js.map → chunk-M37GE2TE.js.map} +1 -1
  568. package/dist/esm/{chunk-5YLKKQFK.js → chunk-MAA6LEE2.js} +2 -1
  569. package/dist/esm/{chunk-5YLKKQFK.js.map → chunk-MAA6LEE2.js.map} +1 -1
  570. package/dist/esm/chunk-MXIVYALY.js +3 -0
  571. package/dist/esm/chunk-MXIVYALY.js.map +7 -0
  572. package/dist/esm/chunk-N53NJCEM.js +3 -0
  573. package/dist/esm/chunk-N53NJCEM.js.map +7 -0
  574. package/dist/esm/{chunk-LXTGEI62.js → chunk-NBVCQQSY.js} +3 -2
  575. package/dist/esm/{chunk-LXTGEI62.js.map → chunk-NBVCQQSY.js.map} +1 -1
  576. package/dist/esm/chunk-NG54K6FL.js +2 -0
  577. package/dist/esm/chunk-NMQGDBLD.js +3 -0
  578. package/dist/esm/chunk-NMQGDBLD.js.map +7 -0
  579. package/dist/esm/chunk-OAJ5DARR.js +3 -0
  580. package/dist/esm/chunk-OAJ5DARR.js.map +7 -0
  581. package/dist/esm/chunk-OKQAVYW4.js +3 -0
  582. package/dist/esm/chunk-OKQAVYW4.js.map +7 -0
  583. package/dist/esm/chunk-PF67GJ5D.js +3 -0
  584. package/dist/esm/chunk-PF67GJ5D.js.map +7 -0
  585. package/dist/esm/chunk-PHWT772P.js +3 -0
  586. package/dist/esm/{chunk-XZQSSRTG.js.map → chunk-PHWT772P.js.map} +1 -1
  587. package/dist/esm/chunk-PPQ7URZL.js +3 -0
  588. package/dist/esm/chunk-PPQ7URZL.js.map +7 -0
  589. package/dist/esm/{chunk-FNAE6HUI.js → chunk-PT45Q47V.js} +3 -2
  590. package/dist/esm/{chunk-FNAE6HUI.js.map → chunk-PT45Q47V.js.map} +1 -1
  591. package/dist/esm/{chunk-HCBR74BW.js → chunk-PT4KBXXP.js} +3 -2
  592. package/dist/esm/{chunk-HCBR74BW.js.map → chunk-PT4KBXXP.js.map} +1 -1
  593. package/dist/esm/chunk-PZ6Z7WTR.js +3 -0
  594. package/dist/esm/chunk-PZ6Z7WTR.js.map +7 -0
  595. package/dist/esm/{chunk-PSPENFPH.js → chunk-PZCQDZVJ.js} +3 -2
  596. package/dist/esm/{chunk-PSPENFPH.js.map → chunk-PZCQDZVJ.js.map} +1 -1
  597. package/dist/esm/{chunk-I53SGTKV.js → chunk-QH64BDXO.js} +3 -2
  598. package/dist/esm/{chunk-I53SGTKV.js.map → chunk-QH64BDXO.js.map} +1 -1
  599. package/dist/esm/{chunk-LUNWI377.js → chunk-QQY4WFJL.js} +3 -2
  600. package/dist/esm/{chunk-LUNWI377.js.map → chunk-QQY4WFJL.js.map} +1 -1
  601. package/dist/esm/{chunk-BE7LMBBC.js → chunk-RIHTVZVJ.js} +3 -2
  602. package/dist/esm/{chunk-BE7LMBBC.js.map → chunk-RIHTVZVJ.js.map} +1 -1
  603. package/dist/esm/chunk-RVPLXLRA.js +3 -0
  604. package/dist/esm/chunk-RVPLXLRA.js.map +7 -0
  605. package/dist/esm/{chunk-GS2QSZUR.js → chunk-SCIFT27R.js} +2 -1
  606. package/dist/esm/{chunk-GS2QSZUR.js.map → chunk-SCIFT27R.js.map} +1 -1
  607. package/dist/esm/chunk-SGJKXIWG.js +3 -0
  608. package/dist/esm/{chunk-DFGY2NZB.js.map → chunk-SGJKXIWG.js.map} +1 -1
  609. package/dist/esm/chunk-SHLERRO3.js +3 -0
  610. package/dist/esm/chunk-SHLERRO3.js.map +7 -0
  611. package/dist/esm/chunk-SV3CYQY5.js +3 -0
  612. package/dist/esm/{chunk-LVCUY2OS.js.map → chunk-SV3CYQY5.js.map} +2 -2
  613. package/dist/esm/chunk-TDT2CNES.js +2 -0
  614. package/dist/esm/chunk-TDT2CNES.js.map +7 -0
  615. package/dist/esm/chunk-TGRHRMQI.js +3 -0
  616. package/dist/esm/chunk-TGRHRMQI.js.map +7 -0
  617. package/dist/esm/{chunk-HIEGLLY7.js → chunk-TGUWRU7N.js} +2 -1
  618. package/dist/esm/{chunk-HIEGLLY7.js.map → chunk-TGUWRU7N.js.map} +1 -1
  619. package/dist/esm/{chunk-7ZOGH5NT.js → chunk-U5GQ3IFS.js} +2 -1
  620. package/dist/esm/{chunk-7ZOGH5NT.js.map → chunk-U5GQ3IFS.js.map} +1 -1
  621. package/dist/esm/chunk-UFJGZUKK.js +3 -0
  622. package/dist/esm/chunk-UFJGZUKK.js.map +7 -0
  623. package/dist/esm/chunk-UUQGOQ5H.js +3 -0
  624. package/dist/esm/{chunk-23KT3D2Z.js.map → chunk-UUQGOQ5H.js.map} +3 -3
  625. package/dist/esm/chunk-UZAS4PYM.js +3 -0
  626. package/dist/esm/chunk-UZAS4PYM.js.map +7 -0
  627. package/dist/esm/{chunk-OS3FCYZY.js → chunk-VQPANPMI.js} +2 -1
  628. package/dist/esm/chunk-VVBSYWUA.js +3 -0
  629. package/dist/esm/chunk-VVBSYWUA.js.map +7 -0
  630. package/dist/esm/chunk-WCGQ4IDE.js +3 -0
  631. package/dist/esm/{chunk-H3IAGAEL.js.map → chunk-WCGQ4IDE.js.map} +1 -1
  632. package/dist/esm/{chunk-HWQ3NTJP.js → chunk-WEBNIUEX.js} +2 -1
  633. package/dist/esm/{chunk-HWQ3NTJP.js.map → chunk-WEBNIUEX.js.map} +1 -1
  634. package/dist/esm/chunk-WH7PQSSG.js +2 -0
  635. package/dist/esm/{chunk-KL73COYX.js → chunk-WMZLMZHB.js} +2 -1
  636. package/dist/esm/{chunk-KL73COYX.js.map → chunk-WMZLMZHB.js.map} +1 -1
  637. package/dist/esm/{chunk-GBQZ4Z2H.js → chunk-WN3WMFAM.js} +3 -2
  638. package/dist/esm/{chunk-GBQZ4Z2H.js.map → chunk-WN3WMFAM.js.map} +1 -1
  639. package/dist/esm/{chunk-ETQNRMHU.js → chunk-WT2SYGTU.js} +3 -2
  640. package/dist/esm/{chunk-ETQNRMHU.js.map → chunk-WT2SYGTU.js.map} +1 -1
  641. package/dist/esm/{chunk-SUPFDIJL.js → chunk-WTP2KIK3.js} +2 -1
  642. package/dist/esm/{chunk-SUPFDIJL.js.map → chunk-WTP2KIK3.js.map} +1 -1
  643. package/dist/esm/{chunk-AGAQC4HH.js → chunk-WUCBFB25.js} +2 -1
  644. package/dist/esm/{chunk-AGAQC4HH.js.map → chunk-WUCBFB25.js.map} +1 -1
  645. package/dist/esm/chunk-WZKSLTBH.js +3 -0
  646. package/dist/esm/{chunk-BJUCBOGU.js.map → chunk-WZKSLTBH.js.map} +1 -1
  647. package/dist/esm/chunk-X272YV2E.js +3 -0
  648. package/dist/esm/chunk-X272YV2E.js.map +7 -0
  649. package/dist/esm/chunk-XH2CRCXR.js +3 -0
  650. package/dist/esm/chunk-XH2CRCXR.js.map +7 -0
  651. package/dist/esm/{chunk-KZEZDBE7.js → chunk-XL5OHW6Z.js} +3 -2
  652. package/dist/esm/{chunk-KZEZDBE7.js.map → chunk-XL5OHW6Z.js.map} +1 -1
  653. package/dist/esm/chunk-XMHNOIPB.js +3 -0
  654. package/dist/esm/{chunk-3BUQ7ADW.js.map → chunk-XMHNOIPB.js.map} +1 -1
  655. package/dist/esm/chunk-XU74PNM2.js +3 -0
  656. package/dist/esm/chunk-XU74PNM2.js.map +7 -0
  657. package/dist/esm/{chunk-3J6AUDID.js → chunk-XUCR7L4G.js} +2 -1
  658. package/dist/esm/{chunk-3J6AUDID.js.map → chunk-XUCR7L4G.js.map} +1 -1
  659. package/dist/esm/chunk-XVDT6DQZ.js +3 -0
  660. package/dist/esm/{chunk-TZTUPQYK.js.map → chunk-XVDT6DQZ.js.map} +1 -1
  661. package/dist/esm/{chunk-2N2AQNJH.js → chunk-Y2DBXOLT.js} +2 -1
  662. package/dist/esm/{chunk-2N2AQNJH.js.map → chunk-Y2DBXOLT.js.map} +1 -1
  663. package/dist/esm/chunk-YD2D73LF.js +3 -0
  664. package/dist/esm/chunk-YD2D73LF.js.map +7 -0
  665. package/dist/esm/chunk-YIKLO2XL.js +3 -0
  666. package/dist/esm/chunk-YIKLO2XL.js.map +7 -0
  667. package/dist/esm/chunk-YNCI5PY6.js +3 -0
  668. package/dist/esm/chunk-YNCI5PY6.js.map +7 -0
  669. package/dist/esm/chunk-YOSLXJI5.js +3 -0
  670. package/dist/esm/chunk-YOSLXJI5.js.map +7 -0
  671. package/dist/esm/chunk-YVZTQA2L.js +3 -0
  672. package/dist/esm/chunk-YVZTQA2L.js.map +7 -0
  673. package/dist/esm/chunk-YWG476GC.js +3 -0
  674. package/dist/esm/{chunk-MGQ4A2FI.js.map → chunk-YWG476GC.js.map} +1 -1
  675. package/dist/esm/chunk-YZZMQ457.js +3 -0
  676. package/dist/esm/{chunk-S6GWR6EZ.js.map → chunk-YZZMQ457.js.map} +1 -1
  677. package/dist/esm/chunk-Z27REN6T.js +3 -0
  678. package/dist/esm/chunk-Z27REN6T.js.map +7 -0
  679. package/dist/esm/{chunk-FVY44PTM.js → chunk-ZFDHZEWN.js} +3 -2
  680. package/dist/esm/{chunk-FVY44PTM.js.map → chunk-ZFDHZEWN.js.map} +1 -1
  681. package/dist/esm/chunk-ZPWKWESI.js +3 -0
  682. package/dist/esm/chunk-ZPWKWESI.js.map +7 -0
  683. package/dist/esm/components/_internal/base-button.d.ts +11 -1
  684. package/dist/esm/components/_internal/base-button.d.ts.map +1 -1
  685. package/dist/esm/components/_internal/base-button.js +2 -1
  686. package/dist/esm/components/_internal/base-button.props.js +2 -1
  687. package/dist/esm/components/_internal/base-checkbox.props.js +2 -1
  688. package/dist/esm/components/_internal/base-menu.props.js +2 -1
  689. package/dist/esm/components/_internal/base-menu.utils.js +2 -1
  690. package/dist/esm/components/_internal/base-radio.props.js +2 -1
  691. package/dist/esm/components/_internal/base-tab-list.props.js +2 -1
  692. package/dist/esm/components/_internal/dropdown-menu-drill-down.d.ts +19 -7
  693. package/dist/esm/components/_internal/dropdown-menu-drill-down.d.ts.map +1 -1
  694. package/dist/esm/components/_internal/dropdown-menu-drill-down.js +2 -1
  695. package/dist/esm/components/_internal/menu-context.d.ts +12 -0
  696. package/dist/esm/components/_internal/menu-context.d.ts.map +1 -1
  697. package/dist/esm/components/_internal/menu-context.js +2 -1
  698. package/dist/esm/components/_internal/pane-chrome.d.ts +19 -2
  699. package/dist/esm/components/_internal/pane-chrome.d.ts.map +1 -1
  700. package/dist/esm/components/_internal/pane-chrome.js +2 -1
  701. package/dist/esm/components/_internal/shell-bottom.d.ts +1 -1
  702. package/dist/esm/components/_internal/shell-bottom.d.ts.map +1 -1
  703. package/dist/esm/components/_internal/shell-bottom.js +2 -1
  704. package/dist/esm/components/_internal/shell-handles.d.ts.map +1 -1
  705. package/dist/esm/components/_internal/shell-handles.js +2 -1
  706. package/dist/esm/components/_internal/shell-inspector.d.ts +1 -1
  707. package/dist/esm/components/_internal/shell-inspector.d.ts.map +1 -1
  708. package/dist/esm/components/_internal/shell-inspector.js +2 -1
  709. package/dist/esm/components/_internal/shell-pane.d.ts.map +1 -1
  710. package/dist/esm/components/_internal/shell-pane.js +2 -1
  711. package/dist/esm/components/_internal/shell-resizable.d.ts.map +1 -1
  712. package/dist/esm/components/_internal/shell-resizable.js +2 -1
  713. package/dist/esm/components/_internal/shell-resize.js +2 -1
  714. package/dist/esm/components/_internal/shell-rest.js +2 -1
  715. package/dist/esm/components/_internal/shell-sidebar.d.ts +1 -1
  716. package/dist/esm/components/_internal/shell-sidebar.d.ts.map +1 -1
  717. package/dist/esm/components/_internal/shell-sidebar.js +2 -1
  718. package/dist/esm/components/_internal/shell-store.d.ts.map +1 -1
  719. package/dist/esm/components/_internal/shell-store.js +2 -1
  720. package/dist/esm/components/accessible-icon.js +2 -1
  721. package/dist/esm/components/accordion.d.ts +2 -2
  722. package/dist/esm/components/accordion.d.ts.map +1 -1
  723. package/dist/esm/components/accordion.js +2 -1
  724. package/dist/esm/components/accordion.props.js +2 -1
  725. package/dist/esm/components/alert-dialog.d.ts.map +1 -1
  726. package/dist/esm/components/alert-dialog.js +2 -1
  727. package/dist/esm/components/alert-dialog.props.js +2 -1
  728. package/dist/esm/components/avatar.d.ts +1 -1
  729. package/dist/esm/components/avatar.d.ts.map +1 -1
  730. package/dist/esm/components/avatar.js +2 -1
  731. package/dist/esm/components/avatar.props.d.ts +8 -0
  732. package/dist/esm/components/avatar.props.d.ts.map +1 -1
  733. package/dist/esm/components/avatar.props.js +2 -1
  734. package/dist/esm/components/blockquote.d.ts +1 -1
  735. package/dist/esm/components/blockquote.d.ts.map +1 -1
  736. package/dist/esm/components/blockquote.js +2 -1
  737. package/dist/esm/components/blockquote.props.js +2 -1
  738. package/dist/esm/components/box.js +2 -1
  739. package/dist/esm/components/box.props.js +2 -1
  740. package/dist/esm/components/button.d.ts.map +1 -1
  741. package/dist/esm/components/button.js +2 -1
  742. package/dist/esm/components/button.props.js +2 -1
  743. package/dist/esm/components/card.js +2 -1
  744. package/dist/esm/components/card.props.js +2 -1
  745. package/dist/esm/components/chatbar.d.ts.map +1 -1
  746. package/dist/esm/components/chatbar.js +2 -1
  747. package/dist/esm/components/checkbox-group.d.ts.map +1 -1
  748. package/dist/esm/components/checkbox-group.js +2 -1
  749. package/dist/esm/components/checkbox-group.primitive.d.ts +12 -5
  750. package/dist/esm/components/checkbox-group.primitive.d.ts.map +1 -1
  751. package/dist/esm/components/checkbox-group.primitive.js +2 -1
  752. package/dist/esm/components/checkbox-group.props.js +2 -1
  753. package/dist/esm/components/checkbox.js +2 -1
  754. package/dist/esm/components/checkbox.props.js +2 -1
  755. package/dist/esm/components/chip.d.ts.map +1 -1
  756. package/dist/esm/components/chip.js +2 -1
  757. package/dist/esm/components/chip.props.js +2 -1
  758. package/dist/esm/components/code.d.ts.map +1 -1
  759. package/dist/esm/components/code.js +2 -1
  760. package/dist/esm/components/code.props.js +2 -1
  761. package/dist/esm/components/combobox.d.ts.map +1 -1
  762. package/dist/esm/components/combobox.js +2 -1
  763. package/dist/esm/components/combobox.props.js +2 -1
  764. package/dist/esm/components/context-menu.d.ts +1 -2
  765. package/dist/esm/components/context-menu.d.ts.map +1 -1
  766. package/dist/esm/components/context-menu.js +2 -1
  767. package/dist/esm/components/context-menu.props.js +2 -1
  768. package/dist/esm/components/dialog.d.ts +1 -1
  769. package/dist/esm/components/dialog.d.ts.map +1 -1
  770. package/dist/esm/components/dialog.js +2 -1
  771. package/dist/esm/components/dialog.props.js +2 -1
  772. package/dist/esm/components/dropdown-menu.d.ts +1 -2
  773. package/dist/esm/components/dropdown-menu.d.ts.map +1 -1
  774. package/dist/esm/components/dropdown-menu.js +2 -1
  775. package/dist/esm/components/dropdown-menu.props.js +2 -1
  776. package/dist/esm/components/flex.js +2 -1
  777. package/dist/esm/components/flex.props.js +2 -1
  778. package/dist/esm/components/grid.js +2 -1
  779. package/dist/esm/components/grid.props.js +2 -1
  780. package/dist/esm/components/heading.d.ts +2 -2
  781. package/dist/esm/components/heading.d.ts.map +1 -1
  782. package/dist/esm/components/heading.js +2 -1
  783. package/dist/esm/components/heading.props.d.ts +1 -1
  784. package/dist/esm/components/heading.props.js +2 -1
  785. package/dist/esm/components/icons.d.ts +3 -1
  786. package/dist/esm/components/icons.d.ts.map +1 -1
  787. package/dist/esm/components/icons.js +2 -1
  788. package/dist/esm/components/image.d.ts +9 -2
  789. package/dist/esm/components/image.d.ts.map +1 -1
  790. package/dist/esm/components/image.js +2 -1
  791. package/dist/esm/components/image.props.js +2 -1
  792. package/dist/esm/components/index.d.ts +2 -2
  793. package/dist/esm/components/index.d.ts.map +1 -1
  794. package/dist/esm/components/index.js +2 -1
  795. package/dist/esm/components/kbd.js +2 -1
  796. package/dist/esm/components/kbd.props.js +2 -1
  797. package/dist/esm/components/link.js +2 -1
  798. package/dist/esm/components/link.props.js +2 -1
  799. package/dist/esm/components/message-scroller.d.ts +2 -2
  800. package/dist/esm/components/message-scroller.d.ts.map +1 -1
  801. package/dist/esm/components/message-scroller.js +2 -1
  802. package/dist/esm/components/navbar.d.ts.map +1 -1
  803. package/dist/esm/components/navbar.js +2 -1
  804. package/dist/esm/components/navbar.props.js +2 -1
  805. package/dist/esm/components/notice.d.ts +4 -1
  806. package/dist/esm/components/notice.d.ts.map +1 -1
  807. package/dist/esm/components/notice.js +2 -1
  808. package/dist/esm/components/popover.d.ts +3 -1
  809. package/dist/esm/components/popover.d.ts.map +1 -1
  810. package/dist/esm/components/popover.js +2 -1
  811. package/dist/esm/components/popover.props.js +2 -1
  812. package/dist/esm/components/portal.js +2 -1
  813. package/dist/esm/components/progress.d.ts.map +1 -1
  814. package/dist/esm/components/progress.js +2 -1
  815. package/dist/esm/components/progress.props.js +2 -1
  816. package/dist/esm/components/radio-group.js +2 -1
  817. package/dist/esm/components/radio-group.props.js +2 -1
  818. package/dist/esm/components/radio.js +2 -1
  819. package/dist/esm/components/radio.props.js +2 -1
  820. package/dist/esm/components/reset.js +2 -1
  821. package/dist/esm/components/schemas/base-button.schema.js +2 -1
  822. package/dist/esm/components/schemas/button.schema.d.ts +2 -2
  823. package/dist/esm/components/schemas/button.schema.js +2 -1
  824. package/dist/esm/components/schemas/index.js +2 -1
  825. package/dist/esm/components/schemas/index.js.map +1 -1
  826. package/dist/esm/components/schemas/shell.schema.js +2 -1
  827. package/dist/esm/components/schemas/toggle.schema.d.ts +1 -1
  828. package/dist/esm/components/schemas/toggle.schema.js +2 -1
  829. package/dist/esm/components/scroll-area.d.ts +3 -1
  830. package/dist/esm/components/scroll-area.d.ts.map +1 -1
  831. package/dist/esm/components/scroll-area.js +2 -1
  832. package/dist/esm/components/scroll-area.props.js +2 -1
  833. package/dist/esm/components/segmented-control.d.ts +3 -1
  834. package/dist/esm/components/segmented-control.d.ts.map +1 -1
  835. package/dist/esm/components/segmented-control.js +2 -1
  836. package/dist/esm/components/segmented-control.props.d.ts +0 -1
  837. package/dist/esm/components/segmented-control.props.d.ts.map +1 -1
  838. package/dist/esm/components/segmented-control.props.js +2 -1
  839. package/dist/esm/components/select.d.ts.map +1 -1
  840. package/dist/esm/components/select.js +2 -1
  841. package/dist/esm/components/select.props.js +2 -1
  842. package/dist/esm/components/separator.d.ts.map +1 -1
  843. package/dist/esm/components/separator.js +2 -1
  844. package/dist/esm/components/separator.props.d.ts +1 -1
  845. package/dist/esm/components/separator.props.js +2 -1
  846. package/dist/esm/components/sheet.d.ts +2 -1
  847. package/dist/esm/components/sheet.d.ts.map +1 -1
  848. package/dist/esm/components/sheet.js +2 -1
  849. package/dist/esm/components/shell.context.js +2 -1
  850. package/dist/esm/components/shell.d.ts +17 -3
  851. package/dist/esm/components/shell.d.ts.map +1 -1
  852. package/dist/esm/components/shell.hooks.js +2 -1
  853. package/dist/esm/components/shell.js +2 -1
  854. package/dist/esm/components/shell.types.js +2 -1
  855. package/dist/esm/components/sidebar.d.ts.map +1 -1
  856. package/dist/esm/components/sidebar.js +2 -1
  857. package/dist/esm/components/slider.d.ts.map +1 -1
  858. package/dist/esm/components/slider.js +2 -1
  859. package/dist/esm/components/slider.props.d.ts +0 -2
  860. package/dist/esm/components/slider.props.d.ts.map +1 -1
  861. package/dist/esm/components/slider.props.js +2 -1
  862. package/dist/esm/components/slot.js +2 -1
  863. package/dist/esm/components/spinner.d.ts.map +1 -1
  864. package/dist/esm/components/spinner.js +2 -1
  865. package/dist/esm/components/spinner.props.js +2 -1
  866. package/dist/esm/components/switch.js +2 -1
  867. package/dist/esm/components/switch.props.js +2 -1
  868. package/dist/esm/components/table.d.ts.map +1 -1
  869. package/dist/esm/components/table.js +2 -1
  870. package/dist/esm/components/table.props.d.ts +0 -2
  871. package/dist/esm/components/table.props.d.ts.map +1 -1
  872. package/dist/esm/components/table.props.js +2 -1
  873. package/dist/esm/components/tabs.d.ts.map +1 -1
  874. package/dist/esm/components/tabs.js +2 -1
  875. package/dist/esm/components/tabs.props.js +2 -1
  876. package/dist/esm/components/text-area.d.ts.map +1 -1
  877. package/dist/esm/components/text-area.js +2 -1
  878. package/dist/esm/components/text-area.props.js +2 -1
  879. package/dist/esm/components/text-field.d.ts.map +1 -1
  880. package/dist/esm/components/text-field.js +2 -1
  881. package/dist/esm/components/text-field.props.js +2 -1
  882. package/dist/esm/components/text.js +2 -1
  883. package/dist/esm/components/text.props.js +2 -1
  884. package/dist/esm/components/theme.d.ts.map +1 -1
  885. package/dist/esm/components/theme.js +2 -1
  886. package/dist/esm/components/theme.props.js +2 -1
  887. package/dist/esm/components/toggle.d.ts +3 -2
  888. package/dist/esm/components/toggle.d.ts.map +1 -1
  889. package/dist/esm/components/toggle.js +2 -1
  890. package/dist/esm/components/toolbar.d.ts +83 -8
  891. package/dist/esm/components/toolbar.d.ts.map +1 -1
  892. package/dist/esm/components/toolbar.js +2 -1
  893. package/dist/esm/components/toolbar.props.js +2 -1
  894. package/dist/esm/components/tooltip.d.ts +13 -2
  895. package/dist/esm/components/tooltip.d.ts.map +1 -1
  896. package/dist/esm/components/tooltip.js +2 -1
  897. package/dist/esm/components/tooltip.props.js +2 -1
  898. package/dist/esm/components/virtual-menu.d.ts +22 -17
  899. package/dist/esm/components/virtual-menu.d.ts.map +1 -1
  900. package/dist/esm/components/virtual-menu.js +2 -1
  901. package/dist/esm/components/visually-hidden.js +2 -1
  902. package/dist/esm/helpers/compile-prop-defs.js +1 -1
  903. package/dist/esm/helpers/extract-margin-props.d.ts +7 -7
  904. package/dist/esm/helpers/extract-margin-props.js +1 -1
  905. package/dist/esm/helpers/extract-props.js +1 -1
  906. package/dist/esm/helpers/font-config.js +1 -1
  907. package/dist/esm/helpers/get-margin-styles.d.ts.map +1 -1
  908. package/dist/esm/helpers/get-margin-styles.js +1 -1
  909. package/dist/esm/helpers/get-matching-gray-color.js +1 -1
  910. package/dist/esm/helpers/get-responsive-styles.js +1 -1
  911. package/dist/esm/helpers/get-subtree.js +1 -1
  912. package/dist/esm/helpers/has-own-property.js +1 -1
  913. package/dist/esm/helpers/index.js +1 -1
  914. package/dist/esm/helpers/inert.js +1 -1
  915. package/dist/esm/helpers/inert.js.map +1 -1
  916. package/dist/esm/helpers/is-responsive-object.js +1 -1
  917. package/dist/esm/helpers/map-prop-values.js +1 -1
  918. package/dist/esm/helpers/merge-styles.js +1 -1
  919. package/dist/esm/helpers/normalize-to-px.js +1 -1
  920. package/dist/esm/helpers/require-react-element.js +1 -1
  921. package/dist/esm/helpers/theme-size.js +1 -1
  922. package/dist/esm/helpers/warn-deprecated.js +1 -1
  923. package/dist/esm/helpers/warn-deprecated.js.map +4 -4
  924. package/dist/esm/hooks/appearance-script.js +11 -1
  925. package/dist/esm/hooks/appearance-script.js.map +4 -4
  926. package/dist/esm/hooks/index.js +2 -1
  927. package/dist/esm/hooks/use-appearance.d.ts.map +1 -1
  928. package/dist/esm/hooks/use-appearance.js +2 -1
  929. package/dist/esm/hooks/use-body-pointer-events-cleanup.d.ts +1 -1
  930. package/dist/esm/hooks/use-body-pointer-events-cleanup.d.ts.map +1 -1
  931. package/dist/esm/hooks/use-body-pointer-events-cleanup.js +2 -1
  932. package/dist/esm/hooks/use-breakpoint.js +2 -1
  933. package/dist/esm/hooks/use-live-announcer.js +2 -1
  934. package/dist/esm/hooks/use-prop-synced-state.js +2 -1
  935. package/dist/esm/hooks/use-scroll-edges.d.ts +4 -2
  936. package/dist/esm/hooks/use-scroll-edges.d.ts.map +1 -1
  937. package/dist/esm/hooks/use-scroll-edges.js +2 -1
  938. package/dist/esm/hooks/use-thumb-sync.js +2 -1
  939. package/dist/esm/hooks/use-toggle-state.js +2 -1
  940. package/dist/esm/hooks/use-tooltip-wrapper.js +2 -1
  941. package/dist/esm/index.js +2 -1
  942. package/dist/esm/props/as-child.prop.js +1 -1
  943. package/dist/esm/props/color.prop.js +1 -1
  944. package/dist/esm/props/emphasis.prop.js +1 -1
  945. package/dist/esm/props/font-family.prop.js +1 -1
  946. package/dist/esm/props/gap.props.d.ts +4 -4
  947. package/dist/esm/props/gap.props.js +1 -1
  948. package/dist/esm/props/height.props.js +1 -1
  949. package/dist/esm/props/index.js +1 -1
  950. package/dist/esm/props/index.js.map +4 -4
  951. package/dist/esm/props/layout.props.js +1 -1
  952. package/dist/esm/props/leading-trim.prop.js +1 -1
  953. package/dist/esm/props/margin.props.js +1 -1
  954. package/dist/esm/props/padding.props.js +1 -1
  955. package/dist/esm/props/prop-def.js +1 -1
  956. package/dist/esm/props/radius.prop.js +1 -1
  957. package/dist/esm/props/shadow.props.js +1 -1
  958. package/dist/esm/props/text-align.prop.js +1 -1
  959. package/dist/esm/props/text-wrap.prop.js +1 -1
  960. package/dist/esm/props/truncate.prop.js +1 -1
  961. package/dist/esm/props/weight.prop.js +1 -1
  962. package/dist/esm/props/width.props.js +1 -1
  963. package/layout/utilities.css +2 -2
  964. package/layout.css +2 -2
  965. package/package.json +3 -7
  966. package/src/components/_internal/base-button.css +24 -6
  967. package/src/components/_internal/base-button.props.ts +1 -1
  968. package/src/components/_internal/base-button.tsx +127 -43
  969. package/src/components/_internal/base-checkbox.css +23 -0
  970. package/src/components/_internal/base-menu.css +9 -3
  971. package/src/components/_internal/base-radio.css +22 -0
  972. package/src/components/_internal/base-sidebar-menu.css +8 -0
  973. package/src/components/_internal/base-tab-list.css +5 -0
  974. package/src/components/_internal/dropdown-menu-drill-down.tsx +45 -26
  975. package/src/components/_internal/menu-context.tsx +47 -1
  976. package/src/components/_internal/pane-chrome.tsx +50 -11
  977. package/src/components/_internal/shell-bottom.tsx +2 -0
  978. package/src/components/_internal/shell-handles.tsx +10 -1
  979. package/src/components/_internal/shell-inspector.tsx +3 -0
  980. package/src/components/_internal/shell-pane.tsx +5 -4
  981. package/src/components/_internal/shell-resizable.tsx +17 -8
  982. package/src/components/_internal/shell-sidebar.tsx +3 -0
  983. package/src/components/_internal/shell-store.tsx +2 -1
  984. package/src/components/accordion.css +76 -58
  985. package/src/components/accordion.tsx +12 -42
  986. package/src/components/alert-dialog.tsx +63 -161
  987. package/src/components/avatar.css +6 -2
  988. package/src/components/avatar.props.tsx +6 -0
  989. package/src/components/avatar.tsx +79 -60
  990. package/src/components/blockquote.css +2 -2
  991. package/src/components/blockquote.tsx +8 -9
  992. package/src/components/button.tsx +12 -5
  993. package/src/components/card.css +14 -3
  994. package/src/components/chatbar.css +20 -3
  995. package/src/components/chatbar.tsx +41 -31
  996. package/src/components/checkbox-group.css +1 -5
  997. package/src/components/checkbox-group.primitive.tsx +40 -51
  998. package/src/components/checkbox-group.tsx +1 -9
  999. package/src/components/checkbox.css +1 -5
  1000. package/src/components/chip.css +18 -23
  1001. package/src/components/chip.tsx +3 -4
  1002. package/src/components/code.tsx +3 -2
  1003. package/src/components/combobox.tsx +25 -26
  1004. package/src/components/context-menu.tsx +69 -31
  1005. package/src/components/dialog.tsx +59 -160
  1006. package/src/components/dropdown-menu.css +0 -6
  1007. package/src/components/dropdown-menu.tsx +78 -38
  1008. package/src/components/heading.props.tsx +1 -1
  1009. package/src/components/heading.tsx +4 -4
  1010. package/src/components/icons.tsx +11 -1
  1011. package/src/components/image.css +5 -0
  1012. package/src/components/image.tsx +29 -3
  1013. package/src/components/index.tsx +8 -1
  1014. package/src/components/kbd.css +6 -5
  1015. package/src/components/link.css +1 -5
  1016. package/src/components/message-scroller.tsx +56 -45
  1017. package/src/components/navbar.css +9 -1
  1018. package/src/components/navbar.tsx +34 -69
  1019. package/src/components/notice.tsx +6 -3
  1020. package/src/components/popover.css +14 -10
  1021. package/src/components/popover.tsx +13 -11
  1022. package/src/components/progress.css +33 -6
  1023. package/src/components/progress.tsx +8 -3
  1024. package/src/components/scroll-area.css +62 -6
  1025. package/src/components/scroll-area.tsx +49 -3
  1026. package/src/components/segmented-control.css +181 -273
  1027. package/src/components/segmented-control.props.tsx +1 -1
  1028. package/src/components/segmented-control.tsx +98 -42
  1029. package/src/components/select.css +16 -29
  1030. package/src/components/select.tsx +27 -18
  1031. package/src/components/separator.css +8 -1
  1032. package/src/components/separator.props.tsx +1 -1
  1033. package/src/components/separator.tsx +31 -1
  1034. package/src/components/sheet.css +11 -11
  1035. package/src/components/sheet.tsx +76 -141
  1036. package/src/components/shell.css +162 -21
  1037. package/src/components/shell.tsx +47 -9
  1038. package/src/components/sidebar.css +1 -135
  1039. package/src/components/sidebar.tsx +202 -173
  1040. package/src/components/slider.css +90 -21
  1041. package/src/components/slider.props.tsx +2 -2
  1042. package/src/components/slider.tsx +120 -114
  1043. package/src/components/spinner.css +10 -2
  1044. package/src/components/spinner.tsx +15 -3
  1045. package/src/components/switch.css +40 -8
  1046. package/src/components/table.css +5 -1
  1047. package/src/components/table.props.tsx +0 -9
  1048. package/src/components/table.tsx +20 -6
  1049. package/src/components/tabs.css +34 -0
  1050. package/src/components/tabs.tsx +10 -5
  1051. package/src/components/text-area.css +19 -3
  1052. package/src/components/text-area.tsx +20 -16
  1053. package/src/components/text-field.css +51 -36
  1054. package/src/components/text-field.tsx +100 -49
  1055. package/src/components/theme.tsx +14 -44
  1056. package/src/components/toggle.tsx +21 -39
  1057. package/src/components/toolbar.css +34 -0
  1058. package/src/components/toolbar.tsx +459 -23
  1059. package/src/components/tooltip.css +8 -1
  1060. package/src/components/tooltip.tsx +30 -3
  1061. package/src/components/virtual-menu.css +80 -0
  1062. package/src/components/virtual-menu.tsx +209 -95
  1063. package/src/helpers/get-margin-styles.ts +8 -10
  1064. package/src/hooks/use-appearance.ts +32 -19
  1065. package/src/hooks/use-body-pointer-events-cleanup.ts +123 -124
  1066. package/src/hooks/use-scroll-edges.ts +11 -2
  1067. package/src/props/gap.props.ts +4 -4
  1068. package/src/styles/utilities/margin.css +2 -2
  1069. package/src/styles/utilities/text-align.css +8 -0
  1070. package/src/styles/utilities/truncate.css +10 -0
  1071. package/styles.css +2024 -990
  1072. package/utilities.css +43 -2
  1073. package/dist/esm/chunk-23KT3D2Z.js +0 -2
  1074. package/dist/esm/chunk-2E4P5XQL.js +0 -2
  1075. package/dist/esm/chunk-2E4P5XQL.js.map +0 -7
  1076. package/dist/esm/chunk-2KZ4NI3X.js +0 -1
  1077. package/dist/esm/chunk-3BUQ7ADW.js +0 -2
  1078. package/dist/esm/chunk-3JA7SJDT.js +0 -2
  1079. package/dist/esm/chunk-3JA7SJDT.js.map +0 -7
  1080. package/dist/esm/chunk-3KQE2PSJ.js +0 -2
  1081. package/dist/esm/chunk-3KQE2PSJ.js.map +0 -7
  1082. package/dist/esm/chunk-3PTKPDSA.js +0 -2
  1083. package/dist/esm/chunk-3PTKPDSA.js.map +0 -7
  1084. package/dist/esm/chunk-3QZBWH2A.js.map +0 -7
  1085. package/dist/esm/chunk-5BWLY27A.js +0 -2
  1086. package/dist/esm/chunk-5BWLY27A.js.map +0 -7
  1087. package/dist/esm/chunk-5ROQAZ7J.js +0 -2
  1088. package/dist/esm/chunk-5ROQAZ7J.js.map +0 -7
  1089. package/dist/esm/chunk-63PQNLFJ.js +0 -2
  1090. package/dist/esm/chunk-6CK7UTNH.js +0 -2
  1091. package/dist/esm/chunk-6CK7UTNH.js.map +0 -7
  1092. package/dist/esm/chunk-6DDOR73D.js +0 -2
  1093. package/dist/esm/chunk-6DDOR73D.js.map +0 -7
  1094. package/dist/esm/chunk-6DWDNKLS.js +0 -1
  1095. package/dist/esm/chunk-6RK26HIY.js +0 -2
  1096. package/dist/esm/chunk-6RK26HIY.js.map +0 -7
  1097. package/dist/esm/chunk-7CUQMU3T.js +0 -2
  1098. package/dist/esm/chunk-7CUQMU3T.js.map +0 -7
  1099. package/dist/esm/chunk-7ESWH773.js +0 -2
  1100. package/dist/esm/chunk-7ESWH773.js.map +0 -7
  1101. package/dist/esm/chunk-7SS4UUJH.js +0 -2
  1102. package/dist/esm/chunk-7SS4UUJH.js.map +0 -7
  1103. package/dist/esm/chunk-AB3QCCUM.js +0 -2
  1104. package/dist/esm/chunk-AB3QCCUM.js.map +0 -7
  1105. package/dist/esm/chunk-BEP4AH5V.js +0 -2
  1106. package/dist/esm/chunk-BEP4AH5V.js.map +0 -7
  1107. package/dist/esm/chunk-BJUCBOGU.js +0 -2
  1108. package/dist/esm/chunk-BOL3VVSN.js +0 -2
  1109. package/dist/esm/chunk-BOL3VVSN.js.map +0 -7
  1110. package/dist/esm/chunk-CLZW2IDD.js +0 -2
  1111. package/dist/esm/chunk-CLZW2IDD.js.map +0 -7
  1112. package/dist/esm/chunk-DBROSD2J.js +0 -2
  1113. package/dist/esm/chunk-DBROSD2J.js.map +0 -7
  1114. package/dist/esm/chunk-DFGY2NZB.js +0 -2
  1115. package/dist/esm/chunk-DSPYHO3L.js +0 -2
  1116. package/dist/esm/chunk-E2D2VWUI.js +0 -2
  1117. package/dist/esm/chunk-E2D2VWUI.js.map +0 -7
  1118. package/dist/esm/chunk-EMNSA65L.js +0 -2
  1119. package/dist/esm/chunk-EMNSA65L.js.map +0 -7
  1120. package/dist/esm/chunk-EZYXYLR2.js +0 -2
  1121. package/dist/esm/chunk-FDHWAC6W.js +0 -2
  1122. package/dist/esm/chunk-FDHWAC6W.js.map +0 -7
  1123. package/dist/esm/chunk-FFG32ERA.js +0 -5
  1124. package/dist/esm/chunk-FFG32ERA.js.map +0 -7
  1125. package/dist/esm/chunk-FHPHEIYJ.js +0 -2
  1126. package/dist/esm/chunk-FHPHEIYJ.js.map +0 -7
  1127. package/dist/esm/chunk-FJFBM7HW.js +0 -2
  1128. package/dist/esm/chunk-FJFBM7HW.js.map +0 -7
  1129. package/dist/esm/chunk-FYT7TYGS.js +0 -2
  1130. package/dist/esm/chunk-FYT7TYGS.js.map +0 -7
  1131. package/dist/esm/chunk-GLV7VGBH.js +0 -2
  1132. package/dist/esm/chunk-GLV7VGBH.js.map +0 -7
  1133. package/dist/esm/chunk-H3IAGAEL.js +0 -2
  1134. package/dist/esm/chunk-HIKMKGPT.js +0 -2
  1135. package/dist/esm/chunk-HIKMKGPT.js.map +0 -7
  1136. package/dist/esm/chunk-HKPXDQ2B.js +0 -2
  1137. package/dist/esm/chunk-HT7RFHLW.js +0 -2
  1138. package/dist/esm/chunk-HT7RFHLW.js.map +0 -7
  1139. package/dist/esm/chunk-IUER6BNH.js +0 -12
  1140. package/dist/esm/chunk-IUER6BNH.js.map +0 -7
  1141. package/dist/esm/chunk-IVQHRM33.js +0 -2
  1142. package/dist/esm/chunk-IVQHRM33.js.map +0 -7
  1143. package/dist/esm/chunk-JBHRV364.js +0 -2
  1144. package/dist/esm/chunk-KS4U4VPH.js +0 -2
  1145. package/dist/esm/chunk-KS4U4VPH.js.map +0 -7
  1146. package/dist/esm/chunk-KT2CMUS5.js +0 -2
  1147. package/dist/esm/chunk-KT2CMUS5.js.map +0 -7
  1148. package/dist/esm/chunk-L2R62BOB.js +0 -2
  1149. package/dist/esm/chunk-L2R62BOB.js.map +0 -7
  1150. package/dist/esm/chunk-LHIS3UKQ.js +0 -2
  1151. package/dist/esm/chunk-LHIS3UKQ.js.map +0 -7
  1152. package/dist/esm/chunk-LVCUY2OS.js +0 -2
  1153. package/dist/esm/chunk-M7I6ISPL.js +0 -2
  1154. package/dist/esm/chunk-M7I6ISPL.js.map +0 -7
  1155. package/dist/esm/chunk-MGQ4A2FI.js +0 -2
  1156. package/dist/esm/chunk-MHANZINI.js +0 -2
  1157. package/dist/esm/chunk-MHANZINI.js.map +0 -7
  1158. package/dist/esm/chunk-MYYXOFU5.js +0 -1
  1159. package/dist/esm/chunk-NNZTSXKH.js +0 -2
  1160. package/dist/esm/chunk-NQDMTOGB.js +0 -2
  1161. package/dist/esm/chunk-NQDMTOGB.js.map +0 -7
  1162. package/dist/esm/chunk-OA7C34MJ.js +0 -1
  1163. package/dist/esm/chunk-PJR6GRZC.js +0 -2
  1164. package/dist/esm/chunk-PJR6GRZC.js.map +0 -7
  1165. package/dist/esm/chunk-PPZY7PJA.js +0 -2
  1166. package/dist/esm/chunk-PPZY7PJA.js.map +0 -7
  1167. package/dist/esm/chunk-Q4IA622Q.js +0 -2
  1168. package/dist/esm/chunk-Q6MFPATL.js +0 -2
  1169. package/dist/esm/chunk-Q6MFPATL.js.map +0 -7
  1170. package/dist/esm/chunk-QGCXTULQ.js +0 -2
  1171. package/dist/esm/chunk-QGCXTULQ.js.map +0 -7
  1172. package/dist/esm/chunk-QOHJIF25.js +0 -2
  1173. package/dist/esm/chunk-QOHJIF25.js.map +0 -7
  1174. package/dist/esm/chunk-R4XJNQX5.js +0 -2
  1175. package/dist/esm/chunk-R4XJNQX5.js.map +0 -7
  1176. package/dist/esm/chunk-S6GWR6EZ.js +0 -2
  1177. package/dist/esm/chunk-SKOYHBIE.js +0 -2
  1178. package/dist/esm/chunk-STPMPY3X.js +0 -1
  1179. package/dist/esm/chunk-TZTUPQYK.js +0 -2
  1180. package/dist/esm/chunk-UE3HATOA.js +0 -2
  1181. package/dist/esm/chunk-UE3HATOA.js.map +0 -7
  1182. package/dist/esm/chunk-UICSVJ3B.js +0 -1
  1183. package/dist/esm/chunk-UONSKZQT.js +0 -2
  1184. package/dist/esm/chunk-V32EP3S7.js +0 -2
  1185. package/dist/esm/chunk-V32EP3S7.js.map +0 -7
  1186. package/dist/esm/chunk-VPSMETY2.js +0 -2
  1187. package/dist/esm/chunk-VXQQ6KXI.js +0 -2
  1188. package/dist/esm/chunk-VXQQ6KXI.js.map +0 -7
  1189. package/dist/esm/chunk-WOR3JCLX.js +0 -1
  1190. package/dist/esm/chunk-WOR3JCLX.js.map +0 -7
  1191. package/dist/esm/chunk-X4A3XRBY.js +0 -2
  1192. package/dist/esm/chunk-XKSU3NLG.js +0 -2
  1193. package/dist/esm/chunk-XRCMPBAY.js +0 -2
  1194. package/dist/esm/chunk-XRCMPBAY.js.map +0 -7
  1195. package/dist/esm/chunk-XZQSSRTG.js +0 -2
  1196. package/dist/esm/chunk-Y3JYEEFB.js +0 -2
  1197. package/dist/esm/chunk-Y3JYEEFB.js.map +0 -7
  1198. package/dist/esm/chunk-YIK4ACXS.js +0 -2
  1199. package/dist/esm/chunk-YIK4ACXS.js.map +0 -7
  1200. package/dist/esm/chunk-YXLDRDHW.js +0 -2
  1201. package/dist/esm/chunk-YZM54IJE.js +0 -2
  1202. package/dist/esm/chunk-YZM54IJE.js.map +0 -7
  1203. package/dist/esm/chunk-ZEX2DECM.js +0 -2
  1204. package/dist/esm/chunk-ZEX2DECM.js.map +0 -7
  1205. package/dist/esm/chunk-ZJI2IK7C.js +0 -2
  1206. package/dist/esm/chunk-ZJI2IK7C.js.map +0 -7
  1207. package/dist/esm/chunk-ZNDCZM5A.js +0 -2
  1208. /package/dist/esm/{chunk-ELAW7ZUG.js.map → chunk-6FLLFCBU.js.map} +0 -0
  1209. /package/dist/esm/{chunk-2KZ4NI3X.js.map → chunk-A2OMWZI7.js.map} +0 -0
  1210. /package/dist/esm/{chunk-6DWDNKLS.js.map → chunk-AYKOOEZR.js.map} +0 -0
  1211. /package/dist/esm/{chunk-7FTUTUMD.js.map → chunk-IZXML75Y.js.map} +0 -0
  1212. /package/dist/esm/{chunk-MYYXOFU5.js.map → chunk-J3QIUJ6F.js.map} +0 -0
  1213. /package/dist/esm/{chunk-PBFSBHBS.js.map → chunk-JUY7CBSL.js.map} +0 -0
  1214. /package/dist/esm/{chunk-OA7C34MJ.js.map → chunk-JZ5Z53MN.js.map} +0 -0
  1215. /package/dist/esm/{chunk-OS3FCYZY.js.map → chunk-NG54K6FL.js.map} +0 -0
  1216. /package/dist/esm/{chunk-STPMPY3X.js.map → chunk-VQPANPMI.js.map} +0 -0
  1217. /package/dist/esm/{chunk-UICSVJ3B.js.map → chunk-WH7PQSSG.js.map} +0 -0
@@ -10,6 +10,30 @@ import { tooltipPropDefs } from './tooltip.props.js';
10
10
  import type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';
11
11
  import type { GetPropDefTypes } from '../props/prop-def.js';
12
12
 
13
+ /** The rest before a tooltip opens, in milliseconds. */
14
+ const TOOLTIP_DELAY = 200;
15
+
16
+ /** True inside a `TooltipProvider`, so a Tooltip knows it need not bring its own. */
17
+ const TooltipProviderContext = React.createContext(false);
18
+
19
+ interface TooltipProviderProps extends React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Provider> {}
20
+
21
+ /**
22
+ * Groups the tooltips inside it: the first one waits `delayDuration` (200ms), and the next ones
23
+ * open at once while the pointer moves between them. Put it once near the root of the app.
24
+ * A Tooltip outside one still works, with the same delay, but each one waits on its own.
25
+ */
26
+ function TooltipProvider({ delayDuration = TOOLTIP_DELAY, children, ...props }: TooltipProviderProps) {
27
+ return (
28
+ <TooltipProviderContext.Provider value={true}>
29
+ <TooltipPrimitive.Provider delayDuration={delayDuration} {...props}>
30
+ {children}
31
+ </TooltipPrimitive.Provider>
32
+ </TooltipProviderContext.Provider>
33
+ );
34
+ }
35
+ TooltipProvider.displayName = 'TooltipProvider';
36
+
13
37
  type TooltipElement = React.ElementRef<typeof TooltipPrimitive.Content>;
14
38
  type TooltipOwnProps = GetPropDefTypes<typeof tooltipPropDefs>;
15
39
  interface TooltipProps
@@ -34,7 +58,8 @@ const Tooltip = React.forwardRef<TooltipElement, TooltipProps>((props, forwarded
34
58
  ...tooltipContentProps
35
59
  } = extractProps(props, tooltipPropDefs);
36
60
  const rootProps = { open, defaultOpen, onOpenChange, delayDuration, disableHoverableContent };
37
- return (
61
+ const hasProvider = React.useContext(TooltipProviderContext);
62
+ const tooltip = (
38
63
  <TooltipPrimitive.Root {...rootProps}>
39
64
  <TooltipPrimitive.Trigger asChild>{children}</TooltipPrimitive.Trigger>
40
65
  <TooltipPrimitive.Portal container={container} forceMount={forceMount}>
@@ -56,8 +81,10 @@ const Tooltip = React.forwardRef<TooltipElement, TooltipProps>((props, forwarded
56
81
  </TooltipPrimitive.Portal>
57
82
  </TooltipPrimitive.Root>
58
83
  );
84
+ // Radix needs a provider above every tooltip. Outside a TooltipProvider, bring one.
85
+ return hasProvider ? tooltip : <TooltipPrimitive.Provider delayDuration={TOOLTIP_DELAY}>{tooltip}</TooltipPrimitive.Provider>;
59
86
  });
60
87
  Tooltip.displayName = 'Tooltip';
61
88
 
62
- export { Tooltip };
63
- export type { TooltipProps };
89
+ export { Tooltip, TooltipProvider };
90
+ export type { TooltipProps, TooltipProviderProps };
@@ -47,3 +47,83 @@
47
47
  /* - cursor, user-select */
48
48
  /* - transition */
49
49
  }
50
+
51
+ /*
52
+ * On its own (in a Popover, a panel), the list is not inside a menu surface, so it sets the
53
+ * menu row tokens itself at its `size`. The class is only added outside a menu.
54
+ */
55
+ .kui-VirtualMenuRoot:where(.kui-r-size-1, .kui-r-size-2, .kui-r-size-3, .kui-r-size-4) {
56
+ --base-menu-item-height: max(24px, calc(var(--base-menu-line-height) + 2 * var(--base-menu-item-padding-y)));
57
+ --base-menu-item-padding-x: calc(
58
+ var(--base-menu-item-px) + min(var(--radius-full, 0px), var(--base-menu-item-px-pill) - var(--base-menu-item-px))
59
+ );
60
+ --base-menu-item-padding-left: var(--base-menu-item-padding-x);
61
+ --base-menu-item-padding-right: var(--base-menu-item-padding-x);
62
+ --base-menu-content-padding: 0px;
63
+
64
+ & :where(.kui-BaseMenuItem[data-highlighted]) {
65
+ background-color: var(--accent-4);
66
+ }
67
+
68
+ @media (prefers-contrast: more) {
69
+ & :where(.kui-BaseMenuItem[data-highlighted]) {
70
+ background-color: var(--accent-solid);
71
+ color: var(--accent-solid-contrast);
72
+ }
73
+ }
74
+
75
+ @media (forced-colors: active) {
76
+ & :where(.kui-BaseMenuItem[data-highlighted]) {
77
+ background-color: Highlight;
78
+ color: HighlightText;
79
+ }
80
+ }
81
+ }
82
+
83
+ .kui-VirtualMenuRoot:where(.kui-r-size-1) {
84
+ --base-menu-item-padding-y: var(--row-inset-1);
85
+ --base-menu-item-px: var(--control-px-1);
86
+ --base-menu-item-px-pill: var(--control-px-pill-1);
87
+ --base-menu-item-gap: var(--control-gap-1);
88
+ --base-menu-item-radius: var(--radius-row-1);
89
+ --base-menu-icon-size: var(--icon-size-1);
90
+ --base-menu-font-size: var(--font-size-1);
91
+ --base-menu-line-height: var(--line-height-1);
92
+ --base-menu-letter-spacing: var(--letter-spacing-1);
93
+ }
94
+
95
+ .kui-VirtualMenuRoot:where(.kui-r-size-2) {
96
+ --base-menu-item-padding-y: var(--row-inset-2);
97
+ --base-menu-item-px: var(--control-px-2);
98
+ --base-menu-item-px-pill: var(--control-px-pill-2);
99
+ --base-menu-item-gap: var(--control-gap-2);
100
+ --base-menu-item-radius: var(--radius-row-2);
101
+ --base-menu-icon-size: var(--icon-size-2);
102
+ --base-menu-font-size: var(--font-size-2);
103
+ --base-menu-line-height: var(--line-height-2);
104
+ --base-menu-letter-spacing: var(--letter-spacing-2);
105
+ }
106
+
107
+ .kui-VirtualMenuRoot:where(.kui-r-size-3) {
108
+ --base-menu-item-padding-y: var(--row-inset-3);
109
+ --base-menu-item-px: var(--control-px-3);
110
+ --base-menu-item-px-pill: var(--control-px-pill-3);
111
+ --base-menu-item-gap: var(--control-gap-3);
112
+ --base-menu-item-radius: var(--radius-row-3);
113
+ --base-menu-icon-size: var(--icon-size-3);
114
+ --base-menu-font-size: var(--font-size-3);
115
+ --base-menu-line-height: var(--line-height-3);
116
+ --base-menu-letter-spacing: var(--letter-spacing-3);
117
+ }
118
+
119
+ .kui-VirtualMenuRoot:where(.kui-r-size-4) {
120
+ --base-menu-item-padding-y: var(--row-inset-4);
121
+ --base-menu-item-px: var(--control-px-4);
122
+ --base-menu-item-px-pill: var(--control-px-pill-4);
123
+ --base-menu-item-gap: var(--control-gap-4);
124
+ --base-menu-item-radius: var(--radius-row-4);
125
+ --base-menu-icon-size: var(--icon-size-4);
126
+ --base-menu-font-size: var(--font-size-4);
127
+ --base-menu-line-height: var(--line-height-4);
128
+ --base-menu-letter-spacing: var(--letter-spacing-4);
129
+ }
@@ -3,7 +3,8 @@
3
3
  import * as React from 'react';
4
4
  import classNames from 'classnames';
5
5
  import { useVirtualizer } from '@tanstack/react-virtual';
6
- import { useMenuContext, getMenuItemHeight } from './_internal/menu-context.js';
6
+ import { useLayoutEffect } from 'radix-ui/internal';
7
+ import { useMenuContext, useMenuClose, getMenuItemHeight } from './_internal/menu-context.js';
7
8
 
8
9
  import type { MenuSize } from './_internal/menu-context.js';
9
10
 
@@ -55,37 +56,58 @@ interface VirtualMenuRenderItemProps<T> {
55
56
  'data-highlighted': true | undefined;
56
57
  /** Data attribute for event delegation */
57
58
  'data-index': number;
59
+ /** Number of items in the whole list, since only some rows are mounted */
60
+ 'aria-setsize': number;
61
+ /** Position of this row in the whole list, from 1 */
62
+ 'aria-posinset': number;
58
63
  /** Mouse enter handler */
59
64
  onMouseEnter: (e: React.MouseEvent<HTMLElement>) => void;
60
65
  /** Mouse leave handler */
61
- onMouseLeave: () => void;
66
+ onMouseLeave: (e: React.MouseEvent<HTMLElement>) => void;
62
67
  /** Click handler */
63
68
  onClick: (e: React.MouseEvent<HTMLElement>) => void;
64
69
  /** Keyboard handler for Enter/Space activation */
65
70
  onKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;
66
71
  }
67
72
 
68
- interface VirtualMenuProps<T> {
73
+ /** How rows are drawn: one of `itemLabel` or `renderItem` is required. */
74
+ type VirtualMenuRowProps<T> =
75
+ | {
76
+ /**
77
+ * Simple label accessor for basic text items.
78
+ * Can be a property key or a function.
79
+ * @example
80
+ * itemLabel="name"
81
+ * itemLabel={(item) => item.name}
82
+ */
83
+ itemLabel: keyof T | ((item: T) => React.ReactNode);
84
+ renderItem?: undefined;
85
+ }
86
+ | {
87
+ itemLabel?: undefined;
88
+ /**
89
+ * Custom component for rendering items.
90
+ * Must be memoized (React.memo) for optimal performance.
91
+ * @example
92
+ * const MyItem = React.memo(({ item, ...props }) => (
93
+ * <VirtualMenu.Item {...props}>{item.name}</VirtualMenu.Item>
94
+ * ));
95
+ * <VirtualMenu items={items} renderItem={MyItem} />
96
+ */
97
+ renderItem: React.ComponentType<VirtualMenuRenderItemProps<T>>;
98
+ };
99
+
100
+ /** Attributes of the list element that pass through, such as `id`, `aria-labelledby` or `data-*`. */
101
+ type VirtualMenuDivProps = Omit<
102
+ React.ComponentPropsWithoutRef<'div'>,
103
+ 'children' | 'onSelect' | 'role' | 'tabIndex' | 'aria-activedescendant'
104
+ >;
105
+
106
+ type VirtualMenuProps<T> = VirtualMenuDivProps & VirtualMenuRowProps<T> & VirtualMenuOwnProps<T>;
107
+
108
+ interface VirtualMenuOwnProps<T> {
69
109
  /** Array of items to render */
70
110
  items: T[];
71
- /**
72
- * Simple label accessor for basic text items.
73
- * Can be a property key or a function.
74
- * @example
75
- * itemLabel="name"
76
- * itemLabel={(item) => item.name}
77
- */
78
- itemLabel?: keyof T | ((item: T) => React.ReactNode);
79
- /**
80
- * Custom component for rendering items.
81
- * Must be memoized (React.memo) for optimal performance.
82
- * @example
83
- * const MyItem = React.memo(({ item, ...props }) => (
84
- * <VirtualMenu.Item {...props}>{item.name}</VirtualMenu.Item>
85
- * ));
86
- * <VirtualMenu items={items} renderItem={MyItem} />
87
- */
88
- renderItem?: React.ComponentType<VirtualMenuRenderItemProps<T>>;
89
111
  /**
90
112
  * Menu size - controls item height.
91
113
  * Automatically inherited from parent DropdownMenu.Content/ContextMenu.Content.
@@ -104,18 +126,24 @@ interface VirtualMenuProps<T> {
104
126
  overscan?: number;
105
127
  /** Callback when an item is selected */
106
128
  onSelect?: (item: T, index: number) => void;
107
- /** Additional class name */
108
- className?: string;
109
- /** Additional styles */
110
- style?: React.CSSProperties;
111
- /** Accessible label for the menu */
112
- 'aria-label'?: string;
113
129
  }
114
130
 
115
131
  // ============================================================================
116
132
  // Internal Memoized Item Component
117
133
  // ============================================================================
118
134
 
135
+ /**
136
+ * Rows get a new style object every render, so style is compared by the two values the
137
+ * list sets. Every other prop is compared shallowly, so aria-*, data-* and handlers update.
138
+ */
139
+ function areRowPropsEqual<P extends { style?: React.CSSProperties }>(prev: P, next: P) {
140
+ if (prev.style?.height !== next.style?.height) return false;
141
+ if (prev.style?.transform !== next.style?.transform) return false;
142
+ const prevKeys = Object.keys(prev) as (keyof P)[];
143
+ if (prevKeys.length !== Object.keys(next).length) return false;
144
+ return prevKeys.every((key) => key === 'style' || Object.is(prev[key], next[key]));
145
+ }
146
+
119
147
  interface SimpleItemProps {
120
148
  label: React.ReactNode;
121
149
  isHighlighted: boolean;
@@ -124,8 +152,10 @@ interface SimpleItemProps {
124
152
  tabIndex: number;
125
153
  'data-highlighted': true | undefined;
126
154
  'data-index': number;
155
+ 'aria-setsize': number;
156
+ 'aria-posinset': number;
127
157
  onMouseEnter: (e: React.MouseEvent<HTMLElement>) => void;
128
- onMouseLeave: () => void;
158
+ onMouseLeave: (e: React.MouseEvent<HTMLElement>) => void;
129
159
  onClick: (e: React.MouseEvent<HTMLElement>) => void;
130
160
  onKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;
131
161
  }
@@ -139,6 +169,8 @@ const SimpleItem = React.memo(
139
169
  tabIndex,
140
170
  'data-highlighted': dataHighlighted,
141
171
  'data-index': dataIndex,
172
+ 'aria-setsize': setSize,
173
+ 'aria-posinset': posInSet,
142
174
  onMouseEnter,
143
175
  onMouseLeave,
144
176
  onClick,
@@ -153,6 +185,8 @@ const SimpleItem = React.memo(
153
185
  tabIndex={tabIndex}
154
186
  data-highlighted={dataHighlighted}
155
187
  data-index={dataIndex}
188
+ aria-setsize={setSize}
189
+ aria-posinset={posInSet}
156
190
  onMouseEnter={onMouseEnter}
157
191
  onMouseLeave={onMouseLeave}
158
192
  onClick={onClick}
@@ -162,47 +196,84 @@ const SimpleItem = React.memo(
162
196
  </div>
163
197
  );
164
198
  },
165
- (prev, next) => {
166
- // Custom comparison - only re-render if these change
167
- if (prev.label !== next.label) return false;
168
- if (prev['data-highlighted'] !== next['data-highlighted']) return false;
169
- if (prev.style.height !== next.style.height) return false;
170
- if (prev.style.transform !== next.style.transform) return false;
171
- if (prev.tabIndex !== next.tabIndex) return false;
172
- if (prev.id !== next.id) return false;
173
- // Event handlers are stable, skip comparison
174
- return true;
175
- },
199
+ areRowPropsEqual,
176
200
  );
177
201
 
178
202
  // ============================================================================
179
203
  // VirtualMenu Component
180
204
  // ============================================================================
181
205
 
182
- function VirtualMenuRoot<T>({
183
- items,
184
- itemLabel,
185
- renderItem: RenderItem,
186
- size: sizeProp,
187
- estimatedItemSize: estimatedItemSizeProp,
188
- overscan = 5,
189
- onSelect,
190
- className,
191
- style,
192
- 'aria-label': ariaLabel,
193
- }: VirtualMenuProps<T>) {
206
+ /**
207
+ * Measures the row height the menu's CSS draws (--base-menu-item-height), so rows follow
208
+ * the theme scale instead of the fixed 100% table. Returns undefined until measured.
209
+ */
210
+ function useMeasuredRowHeight(
211
+ rootRef: React.RefObject<HTMLDivElement | null>,
212
+ enabled: boolean,
213
+ size: MenuSize | undefined,
214
+ ) {
215
+ const [height, setHeight] = React.useState<number | undefined>(undefined);
216
+ useLayoutEffect(() => {
217
+ const root = rootRef.current;
218
+ if (!enabled || !root) return;
219
+ const probe = document.createElement('div');
220
+ probe.className = 'kui-reset kui-BaseMenuItem kui-VirtualMenuItem';
221
+ probe.setAttribute('aria-hidden', 'true');
222
+ probe.style.visibility = 'hidden';
223
+ probe.textContent = '\u00a0';
224
+ root.appendChild(probe);
225
+ const measured = probe.getBoundingClientRect().height;
226
+ probe.remove();
227
+ setHeight(measured > 0 ? measured : undefined);
228
+ }, [rootRef, enabled, size]);
229
+ return enabled ? height : undefined;
230
+ }
231
+
232
+ function VirtualMenuRootInner<T>(
233
+ {
234
+ items,
235
+ itemLabel,
236
+ renderItem: RenderItem,
237
+ size: sizeProp,
238
+ estimatedItemSize: estimatedItemSizeProp,
239
+ overscan = 5,
240
+ onSelect,
241
+ className,
242
+ style,
243
+ onKeyDown,
244
+ onFocus,
245
+ ...rootProps
246
+ }: VirtualMenuProps<T>,
247
+ forwardedRef: React.ForwardedRef<HTMLDivElement>,
248
+ ) {
194
249
  const menuId = React.useId();
195
250
  const parentRef = React.useRef<HTMLDivElement>(null);
196
251
  const [highlightedIndex, setHighlightedIndex] = React.useState<number>(-1);
197
252
  const { isInsideMenu, size: contextSize, itemHeight: contextItemHeight } = useMenuContext();
253
+ const closeMenu = useMenuClose();
254
+
255
+ const setRootRef = React.useCallback(
256
+ (node: HTMLDivElement | null) => {
257
+ parentRef.current = node;
258
+ if (typeof forwardedRef === 'function') forwardedRef(node);
259
+ else if (forwardedRef) forwardedRef.current = node;
260
+ },
261
+ [forwardedRef],
262
+ );
263
+
264
+ // Inside a menu, the CSS row height is measured so it tracks the theme scale.
265
+ const measuredItemHeight = useMeasuredRowHeight(
266
+ parentRef,
267
+ isInsideMenu && sizeProp == null && estimatedItemSizeProp == null,
268
+ contextSize,
269
+ );
198
270
 
199
- // Resolve item height: explicit prop > own size > parent menu > default size '2'.
200
- // Heights follow the theme scaling, like the --base-menu-item-height token.
271
+ // Resolve item height: explicit prop > own size > measured CSS row > parent menu > default size '2'.
201
272
  const estimatedItemSize =
202
273
  estimatedItemSizeProp ??
203
274
  (sizeProp
204
275
  ? getMenuItemHeight(sizeProp)
205
- : (contextItemHeight ?? getMenuItemHeight(contextSize ?? '2')));
276
+ : (measuredItemHeight ?? contextItemHeight ?? getMenuItemHeight(contextSize ?? '2')));
206
277
 
207
278
  // Validate props
208
279
  if (!itemLabel && !RenderItem) {
@@ -241,11 +312,45 @@ function VirtualMenuRoot<T>({
241
312
 
242
313
  const virtualItems = virtualizer.getVirtualItems();
243
314
 
315
+ // Re-measure cached rows when the resolved row height changes.
316
+ useLayoutEffect(() => {
317
+ virtualizer.measure();
318
+ }, [virtualizer, estimatedItemSize]);
319
+
320
+ // Inside a menu, the menu focuses its own content on open (and a submenu on keyboard
321
+ // open). Hand that focus to the list so arrow keys reach the rows.
322
+ React.useEffect(() => {
323
+ const root = parentRef.current;
324
+ if (!isInsideMenu || !root) return;
325
+ const content = root.closest<HTMLElement>('[data-radix-menu-content]');
326
+ if (!content) return;
327
+ const handleFocusIn = (event: FocusEvent) => {
328
+ if (event.target === content) root.focus({ preventScroll: true });
329
+ };
330
+ content.addEventListener('focusin', handleFocusIn);
331
+ if (document.activeElement === content) root.focus({ preventScroll: true });
332
+ return () => content.removeEventListener('focusin', handleFocusIn);
333
+ }, [isInsideMenu]);
334
+
244
335
  // Refs for stable handler references
336
+ const onKeyDownRef = React.useRef(onKeyDown);
337
+ const onFocusRef = React.useRef(onFocus);
338
+ onKeyDownRef.current = onKeyDown;
339
+ onFocusRef.current = onFocus;
245
340
  const itemsRef = React.useRef(items);
246
341
  const onSelectRef = React.useRef(onSelect);
342
+ const closeMenuRef = React.useRef(closeMenu);
247
343
  itemsRef.current = items;
248
344
  onSelectRef.current = onSelect;
345
+ closeMenuRef.current = closeMenu;
346
+
347
+ // Choosing a row calls onSelect, then closes the parent menu like a menu item does.
348
+ const selectIndex = React.useCallback((idx: number) => {
349
+ const currentItems = itemsRef.current;
350
+ if (idx < 0 || idx >= currentItems.length) return;
351
+ onSelectRef.current?.(currentItems[idx], idx);
352
+ closeMenuRef.current?.();
353
+ }, []);
249
354
 
250
355
  const scrollToIndexRef = React.useRef(virtualizer.scrollToIndex);
251
356
  scrollToIndexRef.current = virtualizer.scrollToIndex;
@@ -263,34 +368,29 @@ function VirtualMenuRoot<T>({
263
368
 
264
369
  const handleItemClick = React.useCallback((e: React.MouseEvent<HTMLElement>) => {
265
370
  const index = e.currentTarget.dataset.index;
266
- if (index != null) {
267
- const idx = Number(index);
268
- const currentItems = itemsRef.current;
269
- if (idx >= 0 && idx < currentItems.length) {
270
- onSelectRef.current?.(currentItems[idx], idx);
271
- }
272
- }
273
- }, []);
371
+ if (index != null) selectIndex(Number(index));
372
+ }, [selectIndex]);
274
373
 
275
- const noop = React.useCallback(() => {}, []);
374
+ // Leaving a row clears its highlight, as a Radix item does on pointer leave.
375
+ const handleItemMouseLeave = React.useCallback((e: React.MouseEvent<HTMLElement>) => {
376
+ const index = Number(e.currentTarget.dataset.index);
377
+ setHighlightedIndex((current) => (current === index ? -1 : current));
378
+ }, []);
276
379
 
277
380
  // Item-level keyboard handler for Enter/Space activation (satisfies a11y lint rule)
278
381
  const handleItemKeyDown = React.useCallback((e: React.KeyboardEvent<HTMLElement>) => {
279
382
  if (e.key === 'Enter' || e.key === ' ') {
280
383
  e.preventDefault();
384
+ e.stopPropagation();
281
385
  const index = e.currentTarget.dataset.index;
282
- if (index != null) {
283
- const idx = Number(index);
284
- const currentItems = itemsRef.current;
285
- if (idx >= 0 && idx < currentItems.length) {
286
- onSelectRef.current?.(currentItems[idx], idx);
287
- }
288
- }
386
+ if (index != null) selectIndex(Number(index));
289
387
  }
290
- }, []);
388
+ }, [selectIndex]);
291
389
 
292
390
  // Keyboard navigation
293
- const handleKeyDown = React.useCallback((e: React.KeyboardEvent) => {
391
+ const handleKeyDown = React.useCallback((e: React.KeyboardEvent<HTMLDivElement>) => {
392
+ onKeyDownRef.current?.(e);
393
+ if (e.defaultPrevented) return;
294
394
  const currentItems = itemsRef.current;
295
395
  const currentHighlightedIndex = highlightedIndexRef.current;
296
396
 
@@ -327,20 +427,33 @@ function VirtualMenuRoot<T>({
327
427
  case 'Enter':
328
428
  case ' ': {
329
429
  e.preventDefault();
330
- if (currentHighlightedIndex >= 0 && currentHighlightedIndex < currentItems.length) {
331
- onSelectRef.current?.(currentItems[currentHighlightedIndex], currentHighlightedIndex);
332
- }
430
+ selectIndex(currentHighlightedIndex);
333
431
  break;
334
432
  }
335
433
  case 'Tab': {
336
- e.preventDefault();
434
+ // Inside a menu, Tab does not leave it. On its own, the list is one tab stop.
435
+ if (isInsideMenu) e.preventDefault();
337
436
  break;
338
437
  }
339
438
  case 'Escape': {
340
- (e.currentTarget as HTMLElement).blur();
439
+ // Inside a menu, the menu handles Escape and returns focus to its trigger.
440
+ if (!isInsideMenu) e.currentTarget.blur();
341
441
  break;
342
442
  }
443
+ default: {
444
+ // The parent menu's typeahead would move focus off the list onto one of its items.
445
+ if (isInsideMenu && e.key.length === 1 && !e.ctrlKey && !e.altKey && !e.metaKey) {
446
+ e.stopPropagation();
447
+ }
448
+ }
343
449
  }
450
+ }, [selectIndex, isInsideMenu]);
451
+
452
+ // Keyboard focus on the list highlights the first row when none is highlighted.
453
+ const handleFocus = React.useCallback((e: React.FocusEvent<HTMLDivElement>) => {
454
+ onFocusRef.current?.(e);
455
+ if (e.target !== e.currentTarget) return;
456
+ if (highlightedIndexRef.current < 0 && itemsRef.current.length > 0) setHighlightedIndex(0);
344
457
  }, []);
345
458
 
346
459
  // Item ID generator
@@ -371,13 +484,19 @@ function VirtualMenuRoot<T>({
371
484
 
372
485
  return (
373
486
  <div
374
- ref={parentRef}
487
+ {...rootProps}
488
+ ref={setRootRef}
375
489
  role={isInsideMenu ? 'group' : 'menu'}
376
- aria-label={ariaLabel}
377
490
  aria-activedescendant={safeHighlightedIndex >= 0 ? getItemId(safeHighlightedIndex) : undefined}
378
491
  tabIndex={0}
379
492
  onKeyDown={handleKeyDown}
380
- className={classNames('kui-VirtualMenuRoot', className)}
493
+ onFocus={handleFocus}
494
+ className={classNames(
495
+ 'kui-VirtualMenuRoot',
496
+ // On its own, the list draws menu rows at its own size (virtual-menu.css).
497
+ !isInsideMenu && `kui-r-size-${sizeProp ?? '2'}`,
498
+ className,
499
+ )}
381
500
  style={rootStyle}
382
501
  >
383
502
  <div className="kui-VirtualMenuViewport" style={viewportStyle}>
@@ -395,11 +514,14 @@ function VirtualMenuRoot<T>({
395
514
  id: getItemId(index),
396
515
  isHighlighted,
397
516
  style: itemStyle,
398
- tabIndex: isHighlighted ? 0 : -1,
517
+ // The list holds focus and points aria-activedescendant at the row, so it is the only tab stop.
518
+ tabIndex: -1,
399
519
  'data-highlighted': isHighlighted ? true as const : undefined,
400
520
  'data-index': index,
521
+ 'aria-setsize': items.length,
522
+ 'aria-posinset': index + 1,
401
523
  onMouseEnter: handleItemMouseEnter,
402
- onMouseLeave: noop,
524
+ onMouseLeave: handleItemMouseLeave,
403
525
  onClick: handleItemClick,
404
526
  onKeyDown: handleItemKeyDown,
405
527
  };
@@ -429,6 +551,9 @@ function VirtualMenuRoot<T>({
429
551
  );
430
552
  }
431
553
 
554
+ const VirtualMenuRoot = React.forwardRef(VirtualMenuRootInner) as (<T>(
555
+ props: VirtualMenuProps<T> & React.RefAttributes<HTMLDivElement>,
556
+ ) => React.ReactElement) & { displayName?: string };
432
557
  VirtualMenuRoot.displayName = 'VirtualMenu';
433
558
 
434
559
  // ============================================================================
@@ -460,19 +585,8 @@ const VirtualMenuItemInner = React.forwardRef<HTMLDivElement, VirtualMenuItemPro
460
585
 
461
586
  VirtualMenuItemInner.displayName = 'VirtualMenu.Item';
462
587
 
463
- // Memoized with custom comparison
464
- const VirtualMenuItem = React.memo(VirtualMenuItemInner, (prevProps, nextProps) => {
465
- const prevStyle = prevProps.style as React.CSSProperties | undefined;
466
- const nextStyle = nextProps.style as React.CSSProperties | undefined;
467
- if (prevStyle?.height !== nextStyle?.height) return false;
468
- if (prevStyle?.transform !== nextStyle?.transform) return false;
469
- if (prevProps['data-highlighted'] !== nextProps['data-highlighted']) return false;
470
- if (prevProps.tabIndex !== nextProps.tabIndex) return false;
471
- if (prevProps.id !== nextProps.id) return false;
472
- if (prevProps.className !== nextProps.className) return false;
473
- if (prevProps.children !== nextProps.children) return false;
474
- return true;
475
- });
588
+ // Style is compared by height and transform; every other prop shallowly.
589
+ const VirtualMenuItem = React.memo(VirtualMenuItemInner, areRowPropsEqual);
476
590
 
477
591
  // ============================================================================
478
592
  // Exports
@@ -7,21 +7,19 @@ import type { MarginProps } from '../props/margin.props.js';
7
7
  const marginValues = marginPropDefs.m.values;
8
8
  const marginValueSet: ReadonlySet<string> = new Set(marginValues);
9
9
 
10
- // Static table so the common case — a component with no margin props at all —
10
+ // Built once from the prop defs, so the custom properties are the ones the
11
+ // stylesheet reads. The common case, a component with no margin props at all,
11
12
  // is seven property reads and nothing else.
13
+ const MARGIN_KEYS = ['m', 'mx', 'my', 'mt', 'mr', 'mb', 'ml'] as const;
12
14
  const MARGIN_PROPS: ReadonlyArray<{
13
15
  key: keyof MarginProps;
14
16
  className: string;
15
17
  customProperties: `--${string}`[];
16
- }> = [
17
- { key: 'm', className: 'kui-r-m', customProperties: ['--margin'] },
18
- { key: 'mx', className: 'kui-r-mx', customProperties: ['--margin-left', '--margin-right'] },
19
- { key: 'my', className: 'kui-r-my', customProperties: ['--margin-top', '--margin-bottom'] },
20
- { key: 'mt', className: 'kui-r-mt', customProperties: ['--margin-top'] },
21
- { key: 'mr', className: 'kui-r-mr', customProperties: ['--margin-right'] },
22
- { key: 'mb', className: 'kui-r-mb', customProperties: ['--margin-bottom'] },
23
- { key: 'ml', className: 'kui-r-ml', customProperties: ['--margin-left'] },
24
- ];
18
+ }> = MARGIN_KEYS.map((key) => ({
19
+ key,
20
+ className: marginPropDefs[key].className,
21
+ customProperties: [...marginPropDefs[key].customProperties] as `--${string}`[],
22
+ }));
25
23
 
26
24
  export function getMarginStyles(props: MarginProps) {
27
25
  let classes: string[] | undefined;