@warp-ds/elements 2.10.0-next.9 → 2.10.1-next.1

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 (724) hide show
  1. package/dist/.storybook/utilities.js +4 -4
  2. package/dist/api.js.map +2 -2
  3. package/dist/custom-elements.json +1211 -542
  4. package/dist/docs/affix/affix.md +111 -2
  5. package/dist/docs/affix/api.md +2 -2
  6. package/dist/docs/affix/styling.md +107 -0
  7. package/dist/docs/alert/alert.md +5 -5
  8. package/dist/docs/alert/api.md +4 -4
  9. package/dist/docs/attention/api.md +50 -2
  10. package/dist/docs/attention/attention.md +53 -3
  11. package/dist/docs/badge/api.md +50 -4
  12. package/dist/docs/badge/badge.md +50 -4
  13. package/dist/docs/box/api.md +2 -2
  14. package/dist/docs/box/box.md +4 -2
  15. package/dist/docs/breadcrumb-item/api.md +27 -0
  16. package/dist/docs/breadcrumb-item/breadcrumb-item.md +36 -0
  17. package/dist/docs/breadcrumbs/accessibility.md +8 -18
  18. package/dist/docs/breadcrumbs/breadcrumbs.md +123 -34
  19. package/dist/docs/breadcrumbs/examples.md +8 -8
  20. package/dist/docs/breadcrumbs/styling.md +96 -0
  21. package/dist/docs/breadcrumbs/usage.md +8 -8
  22. package/dist/docs/button/api.md +32 -24
  23. package/dist/docs/button/button.md +35 -24
  24. package/dist/docs/card/api.md +8 -0
  25. package/dist/docs/card/card.md +10 -0
  26. package/dist/docs/checkbox/api.md +52 -13
  27. package/dist/docs/checkbox/checkbox.md +231 -14
  28. package/dist/docs/checkbox/styling.md +173 -0
  29. package/dist/docs/checkbox-group/api.md +30 -6
  30. package/dist/docs/checkbox-group/checkbox-group.md +66 -36
  31. package/dist/docs/checkbox-group/styling.md +31 -29
  32. package/dist/docs/combobox/api.md +20 -12
  33. package/dist/docs/combobox/combobox.md +22 -12
  34. package/dist/docs/datepicker/api.md +22 -14
  35. package/dist/docs/datepicker/datepicker.md +24 -16
  36. package/dist/docs/expandable/api.md +6 -6
  37. package/dist/docs/expandable/expandable.md +8 -6
  38. package/dist/docs/icon/api.md +4 -4
  39. package/dist/docs/icon/icon.md +5 -5
  40. package/dist/docs/index.md +35 -32
  41. package/dist/docs/link/api.md +10 -10
  42. package/dist/docs/link/link.md +13 -11
  43. package/dist/docs/modal/api.md +20 -2
  44. package/dist/docs/modal/modal.md +101 -10
  45. package/dist/docs/modal/styling.md +75 -0
  46. package/dist/docs/modal/usage.md +4 -8
  47. package/dist/docs/modal-footer/modal-footer.md +2 -0
  48. package/dist/docs/modal-header/modal-header.md +2 -0
  49. package/dist/docs/page-indicator/page-indicator.md +2 -0
  50. package/dist/docs/pagination/api.md +4 -4
  51. package/dist/docs/pagination/pagination.md +6 -4
  52. package/dist/docs/pill/api.md +8 -8
  53. package/dist/docs/pill/pill.md +10 -8
  54. package/dist/docs/radio/radio.md +5 -1
  55. package/dist/docs/radio-group/api.md +4 -4
  56. package/dist/docs/radio-group/radio-group.md +186 -69
  57. package/dist/docs/radio-group/styling.md +179 -64
  58. package/dist/docs/select/api.md +10 -10
  59. package/dist/docs/select/select.md +103 -10
  60. package/dist/docs/select/styling.md +91 -0
  61. package/dist/docs/slider/api.md +38 -22
  62. package/dist/docs/slider/slider.md +40 -22
  63. package/dist/docs/slider-thumb/api.md +28 -12
  64. package/dist/docs/slider-thumb/slider-thumb.md +28 -12
  65. package/dist/docs/snackbar/accessibility.md +20 -0
  66. package/dist/docs/snackbar/api.md +30 -0
  67. package/dist/docs/snackbar/examples.md +191 -0
  68. package/dist/docs/snackbar/snackbar.md +387 -0
  69. package/dist/docs/snackbar/styling.md +72 -0
  70. package/dist/docs/snackbar/usage.md +60 -0
  71. package/dist/docs/snackbar-item/api.md +41 -0
  72. package/dist/docs/snackbar-item/snackbar-item.md +51 -0
  73. package/dist/docs/step/api.md +16 -0
  74. package/dist/docs/step/step.md +19 -1
  75. package/dist/docs/step-indicator/step-indicator.md +2 -0
  76. package/dist/docs/switch/api.md +8 -0
  77. package/dist/docs/switch/switch.md +10 -0
  78. package/dist/docs/tab/tab.md +2 -0
  79. package/dist/docs/tab-panel/tab-panel.md +3 -0
  80. package/dist/docs/tabs/api.md +3 -3
  81. package/dist/docs/tabs/tabs.md +5 -3
  82. package/dist/docs/textarea/api.md +54 -14
  83. package/dist/docs/textarea/styling.md +91 -0
  84. package/dist/docs/textarea/textarea.md +146 -19
  85. package/dist/docs/textfield/api.md +74 -34
  86. package/dist/docs/textfield/styling.md +95 -0
  87. package/dist/docs/textfield/textfield.md +171 -34
  88. package/dist/entrypoint-react.d.ts +38 -0
  89. package/dist/entrypoint-react.js +39 -0
  90. package/dist/index.d.ts +1007 -154
  91. package/dist/packages/affix/affix-styles.d.ts +8 -0
  92. package/dist/packages/affix/affix-styles.js +108 -0
  93. package/dist/packages/affix/affix.d.ts +12 -14
  94. package/dist/packages/affix/affix.hydration.test.d.ts +1 -1
  95. package/dist/packages/affix/affix.hydration.test.js +15 -15
  96. package/dist/packages/affix/affix.js +451 -320
  97. package/dist/packages/affix/affix.js.map +4 -4
  98. package/dist/packages/affix/affix.react.stories.d.ts +3 -3
  99. package/dist/packages/affix/affix.react.stories.js +3 -3
  100. package/dist/packages/affix/affix.react.test.js +5 -3
  101. package/dist/packages/affix/affix.stories.d.ts +3 -3
  102. package/dist/packages/affix/affix.stories.js +10 -10
  103. package/dist/packages/affix/affix.test.d.ts +1 -1
  104. package/dist/packages/affix/affix.test.js +10 -10
  105. package/dist/packages/affix/react.d.ts +8 -3
  106. package/dist/packages/affix/react.js +11 -6
  107. package/dist/packages/affix/styles.js +2 -2
  108. package/dist/packages/alert/alert.d.ts +9 -6
  109. package/dist/packages/alert/alert.hydration.test.d.ts +1 -1
  110. package/dist/packages/alert/alert.hydration.test.js +21 -21
  111. package/dist/packages/alert/alert.js +349 -324
  112. package/dist/packages/alert/alert.js.map +3 -3
  113. package/dist/packages/alert/alert.react.stories.d.ts +2 -2
  114. package/dist/packages/alert/alert.react.stories.js +13 -13
  115. package/dist/packages/alert/alert.stories.d.ts +4 -4
  116. package/dist/packages/alert/alert.stories.js +29 -27
  117. package/dist/packages/alert/alert.test.d.ts +1 -1
  118. package/dist/packages/alert/alert.test.js +34 -21
  119. package/dist/packages/alert/react.d.ts +8 -1
  120. package/dist/packages/alert/react.js +11 -4
  121. package/dist/packages/alert/styles.js +2 -2
  122. package/dist/packages/attention/attention.d.ts +14 -7
  123. package/dist/packages/attention/attention.hydration.test.d.ts +1 -1
  124. package/dist/packages/attention/attention.hydration.test.js +29 -29
  125. package/dist/packages/attention/attention.js +1744 -1681
  126. package/dist/packages/attention/attention.js.map +4 -4
  127. package/dist/packages/attention/attention.react.stories.d.ts +3 -3
  128. package/dist/packages/attention/attention.react.stories.js +13 -13
  129. package/dist/packages/attention/attention.react.test.js +11 -7
  130. package/dist/packages/attention/attention.stories.d.ts +4 -4
  131. package/dist/packages/attention/attention.stories.js +126 -117
  132. package/dist/packages/attention/attention.test.d.ts +1 -1
  133. package/dist/packages/attention/attention.test.js +18 -10
  134. package/dist/packages/attention/layout-styles.js +900 -900
  135. package/dist/packages/attention/react.d.ts +16 -6
  136. package/dist/packages/attention/react.js +22 -11
  137. package/dist/packages/attention/styles.js +2 -2
  138. package/dist/packages/badge/badge.d.ts +8 -3
  139. package/dist/packages/badge/badge.hydration.test.d.ts +1 -1
  140. package/dist/packages/badge/badge.hydration.test.js +25 -25
  141. package/dist/packages/badge/badge.js +281 -281
  142. package/dist/packages/badge/badge.js.map +3 -3
  143. package/dist/packages/badge/badge.react.stories.d.ts +3 -3
  144. package/dist/packages/badge/badge.react.stories.js +17 -17
  145. package/dist/packages/badge/badge.stories.d.ts +3 -3
  146. package/dist/packages/badge/badge.stories.js +22 -20
  147. package/dist/packages/badge/badge.test.d.ts +1 -1
  148. package/dist/packages/badge/badge.test.js +13 -11
  149. package/dist/packages/badge/react.d.ts +6 -1
  150. package/dist/packages/badge/react.js +9 -4
  151. package/dist/packages/badge/styles.js +2 -2
  152. package/dist/packages/box/box.d.ts +7 -2
  153. package/dist/packages/box/box.hydration.test.d.ts +1 -1
  154. package/dist/packages/box/box.hydration.test.js +14 -14
  155. package/dist/packages/box/box.js +288 -288
  156. package/dist/packages/box/box.js.map +3 -3
  157. package/dist/packages/box/box.react.stories.d.ts +4 -4
  158. package/dist/packages/box/box.react.stories.js +8 -8
  159. package/dist/packages/box/box.stories.d.ts +3 -3
  160. package/dist/packages/box/box.stories.js +25 -19
  161. package/dist/packages/box/box.test.d.ts +1 -1
  162. package/dist/packages/box/box.test.js +6 -6
  163. package/dist/packages/box/react.d.ts +6 -1
  164. package/dist/packages/box/react.js +9 -4
  165. package/dist/packages/box/slot.test.d.ts +1 -1
  166. package/dist/packages/box/slot.test.js +6 -6
  167. package/dist/packages/box/styles.js +2 -2
  168. package/dist/packages/breadcrumb-item/breadcrumb-item.d.ts +34 -0
  169. package/dist/packages/breadcrumb-item/breadcrumb-item.js +2529 -0
  170. package/dist/packages/breadcrumb-item/breadcrumb-item.js.map +7 -0
  171. package/dist/packages/breadcrumb-item/react.d.ts +8 -0
  172. package/dist/packages/breadcrumb-item/react.js +17 -0
  173. package/dist/packages/breadcrumb-item/styles.d.ts +4 -0
  174. package/dist/packages/breadcrumb-item/styles.js +81 -0
  175. package/dist/packages/breadcrumbs/breadcrumbs.d.ts +11 -4
  176. package/dist/packages/breadcrumbs/breadcrumbs.hydration.test.d.ts +1 -1
  177. package/dist/packages/breadcrumbs/breadcrumbs.hydration.test.js +55 -49
  178. package/dist/packages/breadcrumbs/breadcrumbs.js +288 -284
  179. package/dist/packages/breadcrumbs/breadcrumbs.js.map +4 -4
  180. package/dist/packages/breadcrumbs/breadcrumbs.react.stories.d.ts +4 -4
  181. package/dist/packages/breadcrumbs/breadcrumbs.react.stories.js +17 -16
  182. package/dist/packages/breadcrumbs/breadcrumbs.stories.d.ts +7 -8
  183. package/dist/packages/breadcrumbs/breadcrumbs.stories.js +30 -26
  184. package/dist/packages/breadcrumbs/breadcrumbs.test.d.ts +1 -1
  185. package/dist/packages/breadcrumbs/breadcrumbs.test.js +19 -17
  186. package/dist/packages/breadcrumbs/react.d.ts +8 -1
  187. package/dist/packages/breadcrumbs/react.js +11 -4
  188. package/dist/packages/breadcrumbs/styles.js +2 -2
  189. package/dist/packages/button/button.d.ts +22 -16
  190. package/dist/packages/button/button.hydration.test.d.ts +1 -1
  191. package/dist/packages/button/button.hydration.test.js +19 -19
  192. package/dist/packages/button/button.js +758 -711
  193. package/dist/packages/button/button.js.map +4 -4
  194. package/dist/packages/button/button.react.stories.d.ts +5 -5
  195. package/dist/packages/button/button.react.stories.js +30 -30
  196. package/dist/packages/button/button.react.test.js +13 -13
  197. package/dist/packages/button/button.stories.d.ts +4 -4
  198. package/dist/packages/button/button.stories.js +276 -167
  199. package/dist/packages/button/button.test.d.ts +1 -1
  200. package/dist/packages/button/button.test.js +36 -35
  201. package/dist/packages/button/react.d.ts +10 -3
  202. package/dist/packages/button/react.js +14 -7
  203. package/dist/packages/button/styles.js +373 -331
  204. package/dist/packages/card/card.d.ts +7 -2
  205. package/dist/packages/card/card.hydration.test.d.ts +1 -1
  206. package/dist/packages/card/card.hydration.test.js +14 -14
  207. package/dist/packages/card/card.js +310 -295
  208. package/dist/packages/card/card.js.map +4 -4
  209. package/dist/packages/card/card.react.stories.d.ts +4 -4
  210. package/dist/packages/card/card.react.stories.js +11 -11
  211. package/dist/packages/card/card.stories.d.ts +3 -3
  212. package/dist/packages/card/card.stories.js +36 -24
  213. package/dist/packages/card/card.test.d.ts +1 -1
  214. package/dist/packages/card/card.test.js +6 -6
  215. package/dist/packages/card/react.d.ts +6 -1
  216. package/dist/packages/card/react.js +9 -4
  217. package/dist/packages/card/styles.js +2 -2
  218. package/dist/packages/checkbox/checkbox.a11y.test.d.ts +1 -1
  219. package/dist/packages/checkbox/checkbox.a11y.test.js +47 -33
  220. package/dist/packages/checkbox/checkbox.d.ts +10 -4
  221. package/dist/packages/checkbox/checkbox.hydration.test.d.ts +1 -1
  222. package/dist/packages/checkbox/checkbox.hydration.test.js +21 -21
  223. package/dist/packages/checkbox/checkbox.js +481 -430
  224. package/dist/packages/checkbox/checkbox.js.map +3 -3
  225. package/dist/packages/checkbox/checkbox.react.stories.d.ts +4 -4
  226. package/dist/packages/checkbox/checkbox.react.stories.js +3 -3
  227. package/dist/packages/checkbox/checkbox.stories.d.ts +4 -4
  228. package/dist/packages/checkbox/checkbox.stories.js +99 -91
  229. package/dist/packages/checkbox/checkbox.test.d.ts +1 -1
  230. package/dist/packages/checkbox/checkbox.test.js +64 -64
  231. package/dist/packages/checkbox/react.d.ts +12 -3
  232. package/dist/packages/checkbox/react.js +13 -6
  233. package/dist/packages/checkbox/styles.js +183 -132
  234. package/dist/packages/checkbox-group/checkbox-group.a11y.test.d.ts +2 -2
  235. package/dist/packages/checkbox-group/checkbox-group.a11y.test.js +83 -73
  236. package/dist/packages/checkbox-group/checkbox-group.d.ts +13 -6
  237. package/dist/packages/checkbox-group/checkbox-group.hydration.test.d.ts +2 -2
  238. package/dist/packages/checkbox-group/checkbox-group.hydration.test.js +36 -19
  239. package/dist/packages/checkbox-group/checkbox-group.js +62 -57
  240. package/dist/packages/checkbox-group/checkbox-group.js.map +3 -3
  241. package/dist/packages/checkbox-group/checkbox-group.react.test.js +4 -4
  242. package/dist/packages/checkbox-group/checkbox-group.test.d.ts +2 -2
  243. package/dist/packages/checkbox-group/checkbox-group.test.js +183 -90
  244. package/dist/packages/checkbox-group/react.d.ts +10 -3
  245. package/dist/packages/checkbox-group/react.js +13 -6
  246. package/dist/packages/combobox/combobox.a11y.test.d.ts +2 -2
  247. package/dist/packages/combobox/combobox.a11y.test.js +72 -49
  248. package/dist/packages/combobox/combobox.d.ts +8 -3
  249. package/dist/packages/combobox/combobox.hydration.test.d.ts +1 -1
  250. package/dist/packages/combobox/combobox.hydration.test.js +45 -45
  251. package/dist/packages/combobox/combobox.js +337 -338
  252. package/dist/packages/combobox/combobox.js.map +4 -4
  253. package/dist/packages/combobox/combobox.react.stories.d.ts +45 -13
  254. package/dist/packages/combobox/combobox.react.stories.js +29 -29
  255. package/dist/packages/combobox/combobox.react.test.js +8 -8
  256. package/dist/packages/combobox/combobox.stories.d.ts +4 -4
  257. package/dist/packages/combobox/combobox.stories.js +100 -94
  258. package/dist/packages/combobox/combobox.test.d.ts +2 -2
  259. package/dist/packages/combobox/combobox.test.js +249 -133
  260. package/dist/packages/combobox/react.d.ts +28 -7
  261. package/dist/packages/combobox/react.js +23 -14
  262. package/dist/packages/combobox/styles.js +2 -3
  263. package/dist/packages/datepicker/DatePicker.test.d.ts +2 -2
  264. package/dist/packages/datepicker/DatePicker.test.js +49 -42
  265. package/dist/packages/datepicker/datepicker.d.ts +15 -12
  266. package/dist/packages/datepicker/datepicker.hydration.test.d.ts +1 -1
  267. package/dist/packages/datepicker/datepicker.hydration.test.js +21 -21
  268. package/dist/packages/datepicker/datepicker.js +673 -632
  269. package/dist/packages/datepicker/datepicker.js.map +4 -4
  270. package/dist/packages/datepicker/datepicker.react.stories.d.ts +17 -17
  271. package/dist/packages/datepicker/datepicker.react.stories.js +9 -9
  272. package/dist/packages/datepicker/datepicker.react.test.js +6 -6
  273. package/dist/packages/datepicker/datepicker.stories.d.ts +4 -4
  274. package/dist/packages/datepicker/datepicker.stories.js +32 -32
  275. package/dist/packages/datepicker/datepicker.test.d.ts +2 -2
  276. package/dist/packages/datepicker/datepicker.test.js +77 -79
  277. package/dist/packages/datepicker/react.d.ts +15 -9
  278. package/dist/packages/datepicker/react.js +21 -14
  279. package/dist/packages/datepicker/styles/w-datepicker-calendar.styles.js +13 -12
  280. package/dist/packages/datepicker/styles/w-datepicker-day.styles.js +58 -55
  281. package/dist/packages/datepicker/styles/w-datepicker-month.styles.js +60 -57
  282. package/dist/packages/datepicker/styles/w-datepicker.styles.js +87 -87
  283. package/dist/packages/datepicker/utils.d.ts +3 -0
  284. package/dist/packages/datepicker/utils.js +40 -1
  285. package/dist/packages/datepicker/utils.test.d.ts +1 -0
  286. package/dist/packages/datepicker/utils.test.js +29 -0
  287. package/dist/packages/expandable/expandable.d.ts +14 -7
  288. package/dist/packages/expandable/expandable.hydration.test.d.ts +1 -1
  289. package/dist/packages/expandable/expandable.hydration.test.js +21 -21
  290. package/dist/packages/expandable/expandable.js +359 -332
  291. package/dist/packages/expandable/expandable.js.map +4 -4
  292. package/dist/packages/expandable/expandable.react.stories.d.ts +3 -3
  293. package/dist/packages/expandable/expandable.react.stories.js +7 -7
  294. package/dist/packages/expandable/expandable.react.test.js +15 -7
  295. package/dist/packages/expandable/expandable.stories.d.ts +5 -5
  296. package/dist/packages/expandable/expandable.stories.js +51 -45
  297. package/dist/packages/expandable/expandable.test.d.ts +1 -1
  298. package/dist/packages/expandable/expandable.test.js +19 -17
  299. package/dist/packages/expandable/react.d.ts +7 -2
  300. package/dist/packages/expandable/react.js +14 -9
  301. package/dist/packages/expandable/styles.js +2 -2
  302. package/dist/packages/global.d.ts +1 -0
  303. package/dist/packages/global.js +5 -0
  304. package/dist/packages/i18n.d.ts +1 -1
  305. package/dist/packages/i18n.js +37 -29
  306. package/dist/packages/icon/icon.d.ts +10 -2
  307. package/dist/packages/icon/icon.hydration.test.d.ts +1 -1
  308. package/dist/packages/icon/icon.hydration.test.js +25 -25
  309. package/dist/packages/icon/icon.js +31 -26
  310. package/dist/packages/icon/icon.js.map +2 -2
  311. package/dist/packages/icon/icon.react.stories.d.ts +3 -2
  312. package/dist/packages/icon/icon.react.stories.js +284 -283
  313. package/dist/packages/icon/icon.stories.d.ts +7 -30
  314. package/dist/packages/icon/icon.stories.js +307 -297
  315. package/dist/packages/icon/icon.test.d.ts +1 -1
  316. package/dist/packages/icon/icon.test.js +36 -28
  317. package/dist/packages/icon/react.d.ts +4 -1
  318. package/dist/packages/icon/react.js +7 -4
  319. package/dist/packages/icon/style.js +24 -25
  320. package/dist/packages/interaction-type-detection.d.ts +22 -0
  321. package/dist/packages/interaction-type-detection.js +38 -0
  322. package/dist/packages/link/link.d.ts +14 -9
  323. package/dist/packages/link/link.hydration.test.d.ts +1 -1
  324. package/dist/packages/link/link.hydration.test.js +27 -27
  325. package/dist/packages/link/link.js +726 -679
  326. package/dist/packages/link/link.js.map +3 -3
  327. package/dist/packages/link/link.react.stories.d.ts +5 -5
  328. package/dist/packages/link/link.react.stories.js +42 -42
  329. package/dist/packages/link/link.react.test.js +5 -3
  330. package/dist/packages/link/link.stories.d.ts +3 -3
  331. package/dist/packages/link/link.stories.js +51 -51
  332. package/dist/packages/link/link.test.d.ts +1 -1
  333. package/dist/packages/link/link.test.js +11 -7
  334. package/dist/packages/link/react.d.ts +8 -3
  335. package/dist/packages/link/react.js +11 -6
  336. package/dist/packages/link/styles.js +63 -58
  337. package/dist/packages/modal/index.d.ts +7 -7
  338. package/dist/packages/modal/index.js +7 -7
  339. package/dist/packages/modal/modal.d.ts +26 -4
  340. package/dist/packages/modal/modal.hydration.test.d.ts +1 -1
  341. package/dist/packages/modal/modal.hydration.test.js +12 -12
  342. package/dist/packages/modal/modal.js +456 -409
  343. package/dist/packages/modal/modal.js.map +4 -4
  344. package/dist/packages/modal/modal.react.stories.d.ts +7 -7
  345. package/dist/packages/modal/modal.react.stories.js +15 -6
  346. package/dist/packages/modal/modal.react.test.js +5 -5
  347. package/dist/packages/modal/modal.stories.d.ts +9 -8
  348. package/dist/packages/modal/modal.stories.js +266 -248
  349. package/dist/packages/modal/react.d.ts +40 -8
  350. package/dist/packages/modal/react.js +45 -13
  351. package/dist/packages/modal/styles.d.ts +1 -0
  352. package/dist/packages/modal/styles.js +171 -0
  353. package/dist/packages/modal/util.js +3 -1
  354. package/dist/packages/modal-footer/modal-footer.d.ts +13 -2
  355. package/dist/packages/modal-footer/modal-footer.js +299 -296
  356. package/dist/packages/modal-footer/modal-footer.js.map +4 -4
  357. package/dist/packages/modal-footer/react.d.ts +6 -1
  358. package/dist/packages/modal-footer/react.js +9 -4
  359. package/dist/packages/modal-footer/styles.d.ts +1 -0
  360. package/dist/packages/modal-footer/styles.js +22 -0
  361. package/dist/packages/modal-header/modal-header.d.ts +21 -7
  362. package/dist/packages/modal-header/modal-header.js +451 -422
  363. package/dist/packages/modal-header/modal-header.js.map +4 -4
  364. package/dist/packages/modal-header/modal-header.react.test.js +5 -3
  365. package/dist/packages/modal-header/react.d.ts +9 -4
  366. package/dist/packages/modal-header/react.js +13 -8
  367. package/dist/packages/modal-header/styles.d.ts +1 -0
  368. package/dist/packages/modal-header/styles.js +96 -0
  369. package/dist/packages/page-indicator/page-indicator.d.ts +8 -5
  370. package/dist/packages/page-indicator/page-indicator.hydration.test.d.ts +1 -1
  371. package/dist/packages/page-indicator/page-indicator.hydration.test.js +22 -22
  372. package/dist/packages/page-indicator/page-indicator.js +29 -29
  373. package/dist/packages/page-indicator/page-indicator.js.map +4 -4
  374. package/dist/packages/page-indicator/page-indicator.react.stories.d.ts +3 -3
  375. package/dist/packages/page-indicator/page-indicator.react.stories.js +11 -11
  376. package/dist/packages/page-indicator/page-indicator.react.test.js +5 -5
  377. package/dist/packages/page-indicator/page-indicator.stories.d.ts +9 -27
  378. package/dist/packages/page-indicator/page-indicator.stories.js +63 -32
  379. package/dist/packages/page-indicator/page-indicator.test.d.ts +1 -1
  380. package/dist/packages/page-indicator/page-indicator.test.js +110 -70
  381. package/dist/packages/page-indicator/react.d.ts +9 -2
  382. package/dist/packages/page-indicator/react.js +14 -7
  383. package/dist/packages/page-indicator/style.js +21 -21
  384. package/dist/packages/pagination/pagination.a11y.test.d.ts +1 -1
  385. package/dist/packages/pagination/pagination.a11y.test.js +59 -25
  386. package/dist/packages/pagination/pagination.d.ts +17 -11
  387. package/dist/packages/pagination/pagination.hydration.test.d.ts +1 -1
  388. package/dist/packages/pagination/pagination.hydration.test.js +19 -19
  389. package/dist/packages/pagination/pagination.js +385 -354
  390. package/dist/packages/pagination/pagination.js.map +4 -4
  391. package/dist/packages/pagination/pagination.react.stories.d.ts +19 -11
  392. package/dist/packages/pagination/pagination.react.stories.js +8 -8
  393. package/dist/packages/pagination/pagination.react.test.js +6 -6
  394. package/dist/packages/pagination/pagination.stories.d.ts +3 -3
  395. package/dist/packages/pagination/pagination.stories.js +18 -18
  396. package/dist/packages/pagination/pagination.test.d.ts +1 -1
  397. package/dist/packages/pagination/pagination.test.js +146 -72
  398. package/dist/packages/pagination/react.d.ts +15 -6
  399. package/dist/packages/pagination/react.js +17 -10
  400. package/dist/packages/pagination/styles.js +2 -2
  401. package/dist/packages/pill/pill.d.ts +13 -6
  402. package/dist/packages/pill/pill.hydration.test.d.ts +1 -1
  403. package/dist/packages/pill/pill.hydration.test.js +14 -14
  404. package/dist/packages/pill/pill.js +337 -314
  405. package/dist/packages/pill/pill.js.map +4 -4
  406. package/dist/packages/pill/pill.react.stories.d.ts +15 -11
  407. package/dist/packages/pill/pill.react.stories.js +7 -3
  408. package/dist/packages/pill/pill.react.test.js +8 -8
  409. package/dist/packages/pill/pill.stories.d.ts +3 -3
  410. package/dist/packages/pill/pill.stories.js +8 -8
  411. package/dist/packages/pill/pill.test.d.ts +1 -1
  412. package/dist/packages/pill/pill.test.js +17 -15
  413. package/dist/packages/pill/react.d.ts +11 -6
  414. package/dist/packages/pill/react.js +23 -14
  415. package/dist/packages/pill/styles.js +2 -2
  416. package/dist/packages/radio/base-element.d.ts +3 -3
  417. package/dist/packages/radio/base-element.js +3 -3
  418. package/dist/packages/radio/custom-error-validator.d.ts +1 -1
  419. package/dist/packages/radio/custom-error-validator.js +3 -3
  420. package/dist/packages/radio/form-associated-element.d.ts +9 -9
  421. package/dist/packages/radio/form-associated-element.js +27 -26
  422. package/dist/packages/radio/host-styles.js +9 -9
  423. package/dist/packages/radio/invalid.d.ts +1 -1
  424. package/dist/packages/radio/invalid.js +1 -1
  425. package/dist/packages/radio/radio-styles.js +199 -160
  426. package/dist/packages/radio/radio.a11y.test.d.ts +2 -2
  427. package/dist/packages/radio/radio.a11y.test.js +60 -58
  428. package/dist/packages/radio/radio.d.ts +10 -4
  429. package/dist/packages/radio/radio.hydration.test.d.ts +1 -1
  430. package/dist/packages/radio/radio.hydration.test.js +23 -14
  431. package/dist/packages/radio/radio.js +491 -452
  432. package/dist/packages/radio/radio.js.map +3 -3
  433. package/dist/packages/radio/radio.react.stories.d.ts +2 -2
  434. package/dist/packages/radio/radio.react.stories.js +3 -3
  435. package/dist/packages/radio/radio.stories.d.ts +4 -4
  436. package/dist/packages/radio/radio.stories.js +152 -136
  437. package/dist/packages/radio/radio.test.d.ts +1 -1
  438. package/dist/packages/radio/radio.test.js +74 -73
  439. package/dist/packages/radio/react.d.ts +8 -1
  440. package/dist/packages/radio/react.js +11 -4
  441. package/dist/packages/radio/required-validator.d.ts +1 -1
  442. package/dist/packages/radio/required-validator.js +12 -7
  443. package/dist/packages/radio/slot.d.ts +1 -1
  444. package/dist/packages/radio/slot.js +11 -8
  445. package/dist/packages/radio/watch.d.ts +1 -1
  446. package/dist/packages/radio/watch.js +3 -1
  447. package/dist/packages/radio-group/radio-group-styles.js +121 -88
  448. package/dist/packages/radio-group/radio-group.a11y.test.d.ts +2 -2
  449. package/dist/packages/radio-group/radio-group.a11y.test.js +81 -79
  450. package/dist/packages/radio-group/radio-group.d.ts +10 -8
  451. package/dist/packages/radio-group/radio-group.hydration.test.d.ts +2 -2
  452. package/dist/packages/radio-group/radio-group.hydration.test.js +29 -18
  453. package/dist/packages/radio-group/radio-group.js +654 -566
  454. package/dist/packages/radio-group/radio-group.js.map +4 -4
  455. package/dist/packages/radio-group/radio-group.react.test.js +4 -4
  456. package/dist/packages/radio-group/radio-group.test.d.ts +2 -2
  457. package/dist/packages/radio-group/radio-group.test.js +304 -230
  458. package/dist/packages/radio-group/react.d.ts +14 -7
  459. package/dist/packages/radio-group/react.js +18 -10
  460. package/dist/packages/select/input-styles.d.ts +11 -0
  461. package/dist/packages/select/input-styles.js +88 -0
  462. package/dist/packages/select/locales/da/messages.mjs +1 -1
  463. package/dist/packages/select/locales/en/messages.mjs +1 -1
  464. package/dist/packages/select/locales/fi/messages.mjs +1 -1
  465. package/dist/packages/select/locales/nb/messages.mjs +1 -1
  466. package/dist/packages/select/locales/sv/messages.mjs +1 -1
  467. package/dist/packages/select/react.d.ts +11 -5
  468. package/dist/packages/select/react.js +16 -11
  469. package/dist/packages/select/select.a11y.test.d.ts +1 -1
  470. package/dist/packages/select/select.a11y.test.js +98 -91
  471. package/dist/packages/select/select.d.ts +18 -13
  472. package/dist/packages/select/select.hydration.test.d.ts +1 -1
  473. package/dist/packages/select/select.hydration.test.js +16 -16
  474. package/dist/packages/select/select.js +432 -336
  475. package/dist/packages/select/select.js.map +4 -4
  476. package/dist/packages/select/select.react.stories.d.ts +10 -10
  477. package/dist/packages/select/select.react.stories.js +19 -14
  478. package/dist/packages/select/select.react.test.js +6 -6
  479. package/dist/packages/select/select.stories.d.ts +3 -3
  480. package/dist/packages/select/select.stories.js +51 -48
  481. package/dist/packages/select/select.test.d.ts +1 -1
  482. package/dist/packages/select/select.test.js +227 -178
  483. package/dist/packages/select/styles.js +2 -2
  484. package/dist/packages/slider/index.d.ts +2 -2
  485. package/dist/packages/slider/index.js +2 -2
  486. package/dist/packages/slider/locales/da/messages.mjs +1 -1
  487. package/dist/packages/slider/locales/en/messages.mjs +1 -1
  488. package/dist/packages/slider/locales/fi/messages.mjs +1 -1
  489. package/dist/packages/slider/locales/nb/messages.mjs +1 -1
  490. package/dist/packages/slider/locales/sv/messages.mjs +1 -1
  491. package/dist/packages/slider/react.d.ts +9 -4
  492. package/dist/packages/slider/react.js +14 -9
  493. package/dist/packages/slider/slider.d.ts +32 -17
  494. package/dist/packages/slider/slider.hydration.test.d.ts +1 -1
  495. package/dist/packages/slider/slider.hydration.test.js +39 -20
  496. package/dist/packages/slider/slider.js +523 -466
  497. package/dist/packages/slider/slider.js.map +4 -4
  498. package/dist/packages/slider/slider.react.stories.d.ts +4 -4
  499. package/dist/packages/slider/slider.react.stories.js +31 -34
  500. package/dist/packages/slider/slider.react.test.js +6 -6
  501. package/dist/packages/slider/slider.stories.d.ts +9 -7
  502. package/dist/packages/slider/slider.stories.js +369 -340
  503. package/dist/packages/slider/slider.test.d.ts +5 -5
  504. package/dist/packages/slider/slider.test.js +476 -336
  505. package/dist/packages/slider/styles/w-slider.styles.js +166 -148
  506. package/dist/packages/slider/styles.js +2 -2
  507. package/dist/packages/slider-thumb/oddbird-css-anchor-positioning.d.ts +1 -1
  508. package/dist/packages/slider-thumb/oddbird-css-anchor-positioning.js +1 -1
  509. package/dist/packages/slider-thumb/react.d.ts +16 -5
  510. package/dist/packages/slider-thumb/react.js +16 -9
  511. package/dist/packages/slider-thumb/slider-thumb.d.ts +22 -17
  512. package/dist/packages/slider-thumb/slider-thumb.hydration.test.d.ts +1 -1
  513. package/dist/packages/slider-thumb/slider-thumb.hydration.test.js +26 -17
  514. package/dist/packages/slider-thumb/slider-thumb.js +549 -552
  515. package/dist/packages/slider-thumb/slider-thumb.js.map +4 -4
  516. package/dist/packages/slider-thumb/slider-thumb.react.test.js +9 -5
  517. package/dist/packages/slider-thumb/styles/w-slider-thumb.styles.js +189 -188
  518. package/dist/packages/slider-thumb/styles.d.ts +1 -0
  519. package/dist/packages/slider-thumb/styles.js +2 -0
  520. package/dist/packages/snackbar/locales/da/messages.d.mts +1 -0
  521. package/dist/packages/snackbar/locales/da/messages.mjs +1 -0
  522. package/dist/packages/snackbar/locales/en/messages.d.mts +1 -0
  523. package/dist/packages/snackbar/locales/en/messages.mjs +1 -0
  524. package/dist/packages/snackbar/locales/fi/messages.d.mts +1 -0
  525. package/dist/packages/snackbar/locales/fi/messages.mjs +1 -0
  526. package/dist/packages/snackbar/locales/nb/messages.d.mts +1 -0
  527. package/dist/packages/snackbar/locales/nb/messages.mjs +1 -0
  528. package/dist/packages/snackbar/locales/sv/messages.d.mts +1 -0
  529. package/dist/packages/snackbar/locales/sv/messages.mjs +1 -0
  530. package/dist/packages/snackbar/react.d.ts +41 -0
  531. package/dist/packages/snackbar/react.js +50 -0
  532. package/dist/packages/snackbar/snackbar.d.ts +134 -0
  533. package/dist/packages/snackbar/snackbar.hydration.test.d.ts +1 -0
  534. package/dist/packages/snackbar/snackbar.hydration.test.js +13 -0
  535. package/dist/packages/snackbar/snackbar.js +2665 -0
  536. package/dist/packages/snackbar/snackbar.js.map +7 -0
  537. package/dist/packages/snackbar/snackbar.react.stories.d.ts +12 -0
  538. package/dist/packages/snackbar/snackbar.react.stories.js +160 -0
  539. package/dist/packages/snackbar/snackbar.stories.d.ts +20 -0
  540. package/dist/packages/snackbar/snackbar.stories.js +363 -0
  541. package/dist/packages/snackbar/snackbar.test.d.ts +4 -0
  542. package/dist/packages/snackbar/snackbar.test.js +17 -0
  543. package/dist/packages/snackbar/styles.d.ts +1 -0
  544. package/dist/packages/snackbar/styles.js +35 -0
  545. package/dist/packages/snackbar-item/react.d.ts +12 -0
  546. package/dist/packages/snackbar-item/react.js +23 -0
  547. package/dist/packages/snackbar-item/snackbar-item.d.ts +71 -0
  548. package/dist/packages/snackbar-item/snackbar-item.js +2620 -0
  549. package/dist/packages/snackbar-item/snackbar-item.js.map +7 -0
  550. package/dist/packages/snackbar-item/snackbar-item.react.test.d.ts +1 -0
  551. package/dist/packages/snackbar-item/snackbar-item.react.test.js +5 -0
  552. package/dist/packages/snackbar-item/styles.d.ts +1 -0
  553. package/dist/packages/snackbar-item/styles.js +133 -0
  554. package/dist/packages/step/react.d.ts +6 -1
  555. package/dist/packages/step/react.js +9 -4
  556. package/dist/packages/step/step.d.ts +10 -3
  557. package/dist/packages/step/step.hydration.test.d.ts +1 -1
  558. package/dist/packages/step/step.hydration.test.js +10 -10
  559. package/dist/packages/step/step.js +336 -314
  560. package/dist/packages/step/step.js.map +4 -4
  561. package/dist/packages/step/styles.d.ts +1 -0
  562. package/dist/packages/step/styles.js +2 -0
  563. package/dist/packages/step-indicator/index.d.ts +2 -2
  564. package/dist/packages/step-indicator/index.js +2 -2
  565. package/dist/packages/step-indicator/react.d.ts +7 -2
  566. package/dist/packages/step-indicator/react.js +10 -5
  567. package/dist/packages/step-indicator/step-indicator.a11y.test.d.ts +2 -2
  568. package/dist/packages/step-indicator/step-indicator.a11y.test.js +48 -46
  569. package/dist/packages/step-indicator/step-indicator.d.ts +8 -1
  570. package/dist/packages/step-indicator/step-indicator.hydration.test.d.ts +1 -1
  571. package/dist/packages/step-indicator/step-indicator.hydration.test.js +10 -10
  572. package/dist/packages/step-indicator/step-indicator.js +285 -281
  573. package/dist/packages/step-indicator/step-indicator.js.map +3 -3
  574. package/dist/packages/step-indicator/stepindicator.react.stories.d.ts +2 -2
  575. package/dist/packages/step-indicator/stepindicator.react.stories.js +3 -3
  576. package/dist/packages/step-indicator/stepindicator.stories.d.ts +3 -3
  577. package/dist/packages/step-indicator/stepindicator.stories.js +129 -129
  578. package/dist/packages/step-indicator/styles.js +2 -2
  579. package/dist/packages/styles.js +277 -275
  580. package/dist/packages/switch/react.d.ts +9 -3
  581. package/dist/packages/switch/react.js +11 -6
  582. package/dist/packages/switch/styles.js +2 -2
  583. package/dist/packages/switch/switch.a11y.test.d.ts +1 -1
  584. package/dist/packages/switch/switch.a11y.test.js +46 -38
  585. package/dist/packages/switch/switch.d.ts +10 -3
  586. package/dist/packages/switch/switch.hydration.test.d.ts +1 -1
  587. package/dist/packages/switch/switch.hydration.test.js +23 -23
  588. package/dist/packages/switch/switch.js +304 -304
  589. package/dist/packages/switch/switch.js.map +3 -3
  590. package/dist/packages/switch/switch.react.stories.d.ts +4 -4
  591. package/dist/packages/switch/switch.react.stories.js +2 -2
  592. package/dist/packages/switch/switch.stories.d.ts +2 -2
  593. package/dist/packages/switch/switch.stories.js +42 -37
  594. package/dist/packages/switch/switch.test.d.ts +1 -1
  595. package/dist/packages/switch/switch.test.js +30 -35
  596. package/dist/packages/tab/react.d.ts +12 -7
  597. package/dist/packages/tab/react.js +14 -10
  598. package/dist/packages/tab/styles.d.ts +1 -0
  599. package/dist/packages/tab/styles.js +2 -0
  600. package/dist/packages/tab/tab.d.ts +13 -6
  601. package/dist/packages/tab/tab.hydration.test.d.ts +1 -1
  602. package/dist/packages/tab/tab.hydration.test.js +18 -12
  603. package/dist/packages/tab/tab.js +309 -308
  604. package/dist/packages/tab/tab.js.map +4 -4
  605. package/dist/packages/tab/tab.react.test.js +5 -3
  606. package/dist/packages/tab-panel/react.d.ts +10 -2
  607. package/dist/packages/tab-panel/react.js +18 -5
  608. package/dist/packages/tab-panel/tab-panel.d.ts +6 -3
  609. package/dist/packages/tab-panel/tab-panel.hydration.test.d.ts +1 -1
  610. package/dist/packages/tab-panel/tab-panel.hydration.test.js +13 -10
  611. package/dist/packages/tab-panel/tab-panel.js +293 -291
  612. package/dist/packages/tab-panel/tab-panel.js.map +3 -3
  613. package/dist/packages/tabs/index.d.ts +4 -4
  614. package/dist/packages/tabs/index.js +3 -3
  615. package/dist/packages/tabs/react.d.ts +31 -8
  616. package/dist/packages/tabs/react.js +34 -9
  617. package/dist/packages/tabs/styles.js +2 -2
  618. package/dist/packages/tabs/tabs.a11y.test.d.ts +3 -3
  619. package/dist/packages/tabs/tabs.a11y.test.js +188 -169
  620. package/dist/packages/tabs/tabs.d.ts +9 -6
  621. package/dist/packages/tabs/tabs.hydration.test.d.ts +3 -1
  622. package/dist/packages/tabs/tabs.hydration.test.js +22 -8
  623. package/dist/packages/tabs/tabs.js +293 -286
  624. package/dist/packages/tabs/tabs.js.map +3 -3
  625. package/dist/packages/tabs/tabs.react.stories.d.ts +12 -10
  626. package/dist/packages/tabs/tabs.react.stories.js +28 -28
  627. package/dist/packages/tabs/tabs.stories.d.ts +4 -4
  628. package/dist/packages/tabs/tabs.stories.js +101 -95
  629. package/dist/packages/tabs/tabs.test.d.ts +3 -3
  630. package/dist/packages/tabs/tabs.test.js +136 -122
  631. package/dist/packages/textarea/input-styles.d.ts +11 -0
  632. package/dist/packages/textarea/input-styles.js +88 -0
  633. package/dist/packages/textarea/locales/da/messages.mjs +1 -1
  634. package/dist/packages/textarea/locales/en/messages.mjs +1 -1
  635. package/dist/packages/textarea/locales/fi/messages.mjs +1 -1
  636. package/dist/packages/textarea/locales/nb/messages.mjs +1 -1
  637. package/dist/packages/textarea/locales/sv/messages.mjs +1 -1
  638. package/dist/packages/textarea/react.d.ts +17 -11
  639. package/dist/packages/textarea/react.js +22 -17
  640. package/dist/packages/textarea/styles.js +2 -2
  641. package/dist/packages/textarea/textarea.a11y.test.d.ts +1 -1
  642. package/dist/packages/textarea/textarea.a11y.test.js +90 -58
  643. package/dist/packages/textarea/textarea.d.ts +20 -20
  644. package/dist/packages/textarea/textarea.hydration.test.d.ts +1 -1
  645. package/dist/packages/textarea/textarea.hydration.test.js +19 -19
  646. package/dist/packages/textarea/textarea.js +385 -304
  647. package/dist/packages/textarea/textarea.js.map +4 -4
  648. package/dist/packages/textarea/textarea.react.stories.d.ts +38 -21
  649. package/dist/packages/textarea/textarea.react.stories.js +30 -13
  650. package/dist/packages/textarea/textarea.react.test.js +7 -7
  651. package/dist/packages/textarea/textarea.stories.d.ts +3 -3
  652. package/dist/packages/textarea/textarea.stories.js +44 -42
  653. package/dist/packages/textarea/textarea.test.d.ts +1 -1
  654. package/dist/packages/textarea/textarea.test.js +197 -88
  655. package/dist/packages/textfield/input-styles.d.ts +11 -0
  656. package/dist/packages/textfield/input-styles.js +88 -0
  657. package/dist/packages/textfield/locales/da/messages.d.mts +1 -0
  658. package/dist/packages/textfield/locales/da/messages.mjs +1 -0
  659. package/dist/packages/textfield/locales/en/messages.d.mts +1 -0
  660. package/dist/packages/textfield/locales/en/messages.mjs +1 -0
  661. package/dist/packages/textfield/locales/fi/messages.d.mts +1 -0
  662. package/dist/packages/textfield/locales/fi/messages.mjs +1 -0
  663. package/dist/packages/textfield/locales/nb/messages.d.mts +1 -0
  664. package/dist/packages/textfield/locales/nb/messages.mjs +1 -0
  665. package/dist/packages/textfield/locales/sv/messages.d.mts +1 -0
  666. package/dist/packages/textfield/locales/sv/messages.mjs +1 -0
  667. package/dist/packages/textfield/react.d.ts +17 -11
  668. package/dist/packages/textfield/react.js +22 -17
  669. package/dist/packages/textfield/react.test.d.ts +1 -0
  670. package/dist/packages/textfield/react.test.js +20 -0
  671. package/dist/packages/textfield/styles/w-textfield.styles.js +60 -58
  672. package/dist/packages/textfield/styles.js +2 -2
  673. package/dist/packages/textfield/textfield.d.ts +38 -26
  674. package/dist/packages/textfield/textfield.hydration.test.d.ts +1 -1
  675. package/dist/packages/textfield/textfield.hydration.test.js +19 -19
  676. package/dist/packages/textfield/textfield.js +468 -373
  677. package/dist/packages/textfield/textfield.js.map +4 -4
  678. package/dist/packages/textfield/textfield.react.stories.d.ts +51 -21
  679. package/dist/packages/textfield/textfield.react.stories.js +63 -31
  680. package/dist/packages/textfield/textfield.react.test.js +7 -7
  681. package/dist/packages/textfield/textfield.stories.d.ts +4 -4
  682. package/dist/packages/textfield/textfield.stories.js +107 -89
  683. package/dist/packages/textfield/textfield.test.d.ts +2 -2
  684. package/dist/packages/textfield/textfield.test.js +174 -71
  685. package/dist/packages/toast/api.d.ts +2 -2
  686. package/dist/packages/toast/api.js +3 -3
  687. package/dist/packages/toast/index.d.ts +5 -5
  688. package/dist/packages/toast/index.js +5 -5
  689. package/dist/packages/toast/styles.js +2 -2
  690. package/dist/packages/toast/toast.d.ts +10 -5
  691. package/dist/packages/toast/toast.js +349 -320
  692. package/dist/packages/toast/toast.js.map +4 -4
  693. package/dist/packages/toast/toast.stories.d.ts +4 -4
  694. package/dist/packages/toast/toast.stories.js +37 -16
  695. package/dist/packages/toast/toast.test.d.ts +1 -1
  696. package/dist/packages/toast/toast.test.js +48 -31
  697. package/dist/packages/toast/types.d.ts +1 -1
  698. package/dist/packages/toast-container/styles.d.ts +1 -0
  699. package/dist/packages/toast-container/styles.js +2 -0
  700. package/dist/packages/toast-container/toast-container.d.ts +8 -3
  701. package/dist/packages/toast-container/toast-container.js +295 -294
  702. package/dist/packages/toast-container/toast-container.js.map +4 -4
  703. package/dist/packages/types.d.ts +16 -0
  704. package/dist/packages/types.js +1 -0
  705. package/dist/packages/utils/element-collapse.d.ts +12 -0
  706. package/dist/packages/utils/element-collapse.js +102 -0
  707. package/dist/packages/utils/expand-transition.d.ts +1 -1
  708. package/dist/packages/utils/expand-transition.js +12 -10
  709. package/dist/packages/utils/unstyled-heading.d.ts +1 -1
  710. package/dist/packages/utils/unstyled-heading.js +4 -4
  711. package/dist/packages/utils/window-exists.js +1 -1
  712. package/dist/packages/utils.js +2 -2
  713. package/dist/setup-tests.d.ts +3 -3
  714. package/dist/setup-tests.js +16 -13
  715. package/dist/tests/react-hydration.js +29 -30
  716. package/dist/tests/react-ssr-attributes.d.ts +1 -1
  717. package/dist/tests/react-ssr-attributes.js +4 -4
  718. package/dist/web-types.json +458 -256
  719. package/eik/index.js +20 -2460
  720. package/package.json +21 -129
  721. package/dist/packages/slider/Slider.d.ts +0 -2
  722. package/dist/packages/slider/Slider.js +0 -8
  723. package/dist/packages/slider-thumb/SliderThumb.d.ts +0 -2
  724. package/dist/packages/slider-thumb/SliderThumb.js +0 -8
@@ -4,7 +4,9 @@
4
4
 
5
5
  Radios allow users to select a single option from a list of choices.
6
6
 
7
- Use with `w-radio`.
7
+ Wrap individual radio components in a radio group.
8
+
9
+ [Warp component reference](https://warp-ds.github.io/docs/components/radio/frameworks/elements)
8
10
 
9
11
  ## Usage
10
12
 
@@ -122,123 +124,238 @@ Please consider more informative alternatives before choosing to use disabled on
122
124
 
123
125
  </elements-example>
124
126
 
125
- ## Styling API
127
+ # Radio and Radio Group Styling
126
128
 
127
- This section documents the supported styling hooks for `<w-radio>` and `<w-radio-group>`.
129
+ This document covers the styling API for both `<w-radio>` (individual radio buttons) and `<w-radio-group>` (the container that manages them).
128
130
 
129
- Use these hooks to customize appearance without relying on internal structure or selectors.
131
+ ## Quick Start
130
132
 
131
- Before changing the default styles, remember that doing so can result in less consistent experiences for users across the product. Prefer defaults.
133
+ ```html
134
+ <w-radio-group label="Choose a size" name="size">
135
+ <w-radio value="small">Small</w-radio>
136
+ <w-radio value="medium">Medium</w-radio>
137
+ <w-radio value="large">Large</w-radio>
138
+ </w-radio-group>
139
+ ```
132
140
 
133
- - Prefer **component tokens** for size, spacing, and state styling.
134
- - Use **parts** only for small, local tweaks.
135
- - Avoid relying on internal class names or selectors.
141
+ Customize via component tokens:
136
142
 
137
- ### Parts
143
+ ```css
144
+ /* Style all radio groups in a section */
145
+ .settings {
146
+ --w-c-radio-group-gap: 12px;
147
+ --w-c-radio-size: 2.4rem;
148
+ }
149
+ ```
150
+
151
+ ---
138
152
 
139
- The radio exposes a small set of parts that can be targeted for last‑mile layout or typography tweaks.
153
+ ## Styling Philosophy
140
154
 
141
- | Part | Targets | Typical use |
142
- |---|---|---|
143
- | `control` | radio control (circle) | minor alignment or sizing tweaks |
144
- | `label` | label content | typography tweaks |
155
+ Before customizing, remember that changing defaults can create inconsistent experiences. Prefer the defaults.
145
156
 
146
- Example:
157
+ - **Component tokens** for size, spacing, color, and state styling
158
+ - **Parts** only for small, one-off tweaks
159
+ - Avoid relying on internal class names
147
160
 
161
+ ---
162
+
163
+ ## Radio Group (`<w-radio-group>`)
164
+
165
+ ### Parts
166
+
167
+ | Part | Targets | Use Case |
168
+ |------|---------|----------|
169
+ | `form-control` | The `<fieldset>` wrapper | Outer container tweaks |
170
+ | `form-control-label` | The group label element | Label typography overrides |
171
+ | `form-control-input` | Container for radio buttons | Adjust layout/flow of radios |
172
+ | `help-text` | Help text / error message | Style hint text |
173
+
174
+ **Example:**
148
175
  ```css
149
- w-radio::part(label) {
150
- font-weight: 600;
176
+ w-radio-group::part(form-control-label) {
177
+ text-transform: uppercase;
151
178
  }
152
179
 
153
- w-radio::part(control) {
154
- margin-top: 1px;
180
+ w-radio-group::part(form-control-input) {
181
+ flex-direction: row; /* horizontal radios */
155
182
  }
156
183
  ```
157
184
 
158
- Parts are intended as an **escape hatch**.
159
- Prefer component tokens for anything state‑ or size‑related.
185
+ ### Component Tokens
186
+
187
+ #### Label
160
188
 
189
+ | Token | Purpose | Default |
190
+ |-------|---------|---------|
191
+ | `--w-c-radio-group-label-font-size` | Label font size | `var(--w-font-size-s)` |
192
+ | `--w-c-radio-group-label-line-height` | Label line height | `var(--w-line-height-s)` |
193
+ | `--w-c-radio-group-label-font-weight` | Label font weight | `700` |
194
+ | `--w-c-radio-group-label-color` | Label text color | `var(--w-s-color-text)` |
195
+ | `--w-c-radio-group-label-color-disabled` | Label color when disabled | `var(--w-s-color-text-disabled)` |
196
+ | `--w-c-radio-group-label-padding-bottom` | Space below label | `16px` |
161
197
 
162
- ### Component tokens
198
+ #### Optional Indicator
199
+
200
+ | Token | Purpose | Default |
201
+ |-------|---------|---------|
202
+ | `--w-c-radio-group-optional-font-weight` | "Optional" text weight | `400` |
203
+ | `--w-c-radio-group-optional-color` | "Optional" text color | `var(--w-s-color-text-subtle)` |
204
+ | `--w-c-radio-group-optional-margin-inline-start` | Space before "Optional" | `0.5rem` |
163
205
 
164
- Component tokens (`--w-c-radio-*`) act as inputs to the radio styling.
165
- They can be set directly on the component or inherited from a parent container.
206
+ #### Radio Spacing
166
207
 
208
+ | Token | Purpose | Default |
209
+ |-------|---------|---------|
210
+ | `--w-c-radio-group-gap` | Gap between radio buttons | `16px` |
211
+
212
+ #### Help Text
213
+
214
+ | Token | Purpose | Default |
215
+ |-------|---------|---------|
216
+ | `--w-c-radio-group-help-text-margin-block-start` | Space above help text | `16px` |
217
+ | `--w-c-radio-group-help-text-font-size` | Help text font size | `var(--w-font-size-xs)` |
218
+ | `--w-c-radio-group-help-text-line-height` | Help text line height | `var(--w-line-height-xs)` |
219
+ | `--w-c-radio-group-help-text-color` | Help text color | `var(--w-s-color-text-subtle)` |
220
+ | `--w-c-radio-group-help-text-color-disabled` | Help text color when disabled | `var(--w-s-color-text-disabled)` |
221
+ | `--w-c-radio-group-help-text-color-error` | Help text color when invalid | `var(--w-s-color-text-negative)` |
222
+
223
+ **Example:**
167
224
  ```css
168
- .settings-panel {
169
- --w-c-radio-gap: 12px;
225
+ w-radio-group {
226
+ --w-c-radio-group-gap: 12px;
227
+ --w-c-radio-group-label-font-weight: 600;
228
+ --w-c-radio-group-help-text-color: var(--w-s-color-text);
170
229
  }
171
230
  ```
172
231
 
173
- Defaults are defined internally; setting a token is always optional.
232
+ ---
174
233
 
234
+ ## Individual Radio (`<w-radio>`)
175
235
 
176
- #### Layout & size
177
-
178
- | Token | Purpose | Default |
179
- |---|---|---|
180
- | `--w-c-radio-gap` | space between control and label | `8px` |
181
- | `--w-c-radio-size` | width/height of the control | `2rem` |
182
- | `--w-c-radio-radius` | border radius of the control | `50%` |
183
- | `--w-c-radio-border-width` | border width | `1px` |
184
- | `--w-c-radio-checked-border-width` | border width when checked | `0.6rem` |
236
+ ### Parts
185
237
 
238
+ | Part | Targets | Use Case |
239
+ |------|---------|----------|
240
+ | `base` | Wrapper containing control and label | Container-level adjustments |
241
+ | `control` | Radio control (circle) | Alignment or sizing tweaks |
242
+ | `label` | Label content | Typography overrides |
186
243
 
187
- #### Colors
244
+ **Example:**
245
+ ```css
246
+ w-radio::part(label) {
247
+ font-weight: 600;
248
+ }
188
249
 
189
- | Token | Purpose | Default |
190
- |---|---|---|
191
- | `--w-c-radio-bg` | control background | theme default |
192
- | `--w-c-radio-border-color` | control border color | theme default |
193
- | `--w-c-radio-border-color-checked` | border color when checked | theme default |
194
- | `--w-c-radio-label-color` | label text color | `currentColor` |
250
+ w-radio::part(control) {
251
+ margin-top: 1px;
252
+ }
253
+ ```
195
254
 
255
+ ### Component Tokens
196
256
 
197
- #### Invalid state
257
+ #### Layout & Size
198
258
 
199
259
  | Token | Purpose | Default |
200
- |---|---|---|
201
- | `--w-c-radio-border-color-invalid` | border color when invalid | theme default |
260
+ |-------|---------|---------|
261
+ | `--w-c-radio-gap` | Space between control and label | `8px` |
262
+ | `--w-c-radio-size` | Width/height of control | `2rem` |
263
+ | `--w-c-radio-radius` | Border radius | `50%` |
264
+ | `--w-c-radio-border-width` | Border width | `1px` |
265
+ | `--w-c-radio-checked-border-width` | Border width when checked | `0.6rem` |
202
266
 
267
+ #### Colors
268
+
269
+ | Token | Purpose | Default |
270
+ |-------|---------|---------|
271
+ | `--w-c-radio-bg` | Control background | `var(--w-s-color-background)` |
272
+ | `--w-c-radio-border-color` | Control border color | `var(--w-s-color-border-strong)` |
273
+ | `--w-c-radio-border-color-checked` | Border when checked | `var(--w-s-color-border-selected)` |
274
+ | `--w-c-radio-border-color-invalid` | Border when invalid | `var(--w-s-color-border-negative)` |
275
+ | `--w-c-radio-label-color` | Label text color | `currentColor` |
203
276
 
204
- #### Disabled state
277
+ #### Disabled State
205
278
 
206
279
  | Token | Purpose | Default |
207
- |---|---|---|
208
- | `--w-c-radio-bg-disabled` | background when disabled | theme default |
209
- | `--w-c-radio-border-color-disabled` | border when disabled | theme default |
210
- | `--w-c-radio-label-color-disabled` | label color when disabled | theme default |
211
- | `--w-c-radio-cursor-disabled` | cursor when disabled | `not-allowed` |
280
+ |-------|---------|---------|
281
+ | `--w-c-radio-bg-disabled` | Background when disabled | `var(--w-s-color-background-disabled-subtle)` |
282
+ | `--w-c-radio-border-color-disabled` | Border when disabled | `var(--w-s-color-border-disabled)` |
283
+ | `--w-c-radio-label-color-disabled` | Label color when disabled | `var(--w-s-color-text-disabled)` |
284
+ | `--w-c-radio-cursor-disabled` | Cursor when disabled | `not-allowed` |
212
285
 
213
286
  #### Typography
214
287
 
215
288
  | Token | Purpose | Default |
216
- |---|---|---|
217
- | `--w-c-radio-label-font-size` | label font size | theme default |
218
- | `--w-c-radio-label-line-height` | label line height | theme default |
219
-
289
+ |-------|---------|---------|
290
+ | `--w-c-radio-label-font-size` | Label font size | `var(--w-font-size-m)` |
291
+ | `--w-c-radio-label-line-height` | Label line height | `var(--w-line-height-m)` |
220
292
 
221
293
  #### Focus
222
294
 
223
295
  | Token | Purpose | Default |
224
- |---|---|---|
225
- | `--w-c-radio-outline-width` | focus outline width | `2px` |
226
- | `--w-c-radio-outline-color` | focus outline color | theme default |
227
- | `--w-c-radio-outline-offset` | focus outline offset | theme default |
296
+ |-------|---------|---------|
297
+ | `--w-c-radio-outline-width` | Focus outline width | `2px` |
298
+ | `--w-c-radio-outline-color` | Focus outline color | `var(--w-s-color-border-focus)` |
299
+ | `--w-c-radio-outline-offset` | Focus outline offset | `var(--w-outline-offset, 1px)` |
228
300
 
229
301
  #### Interaction
230
302
 
231
303
  | Token | Purpose | Default |
232
- |---|---|---|
233
- | `--w-c-radio-cursor` | cursor in enabled state | `pointer` |
304
+ |-------|---------|---------|
305
+ | `--w-c-radio-cursor` | Cursor in enabled state | `pointer` |
234
306
 
235
307
  #### Motion
236
308
 
237
309
  | Token | Purpose | Default |
238
- |---|---|---|
239
- | `--w-c-radio-transition` | transition for control | `150ms cubic-bezier(0.4, 0, 0.2, 1)` |
310
+ |-------|---------|---------|
311
+ | `--w-c-radio-transition` | Transition for control | `border-color 150ms, border-width 150ms, background-color 150ms` |
312
+
313
+ **Note:** Transitions automatically disable when `prefers-reduced-motion: reduce` is active.
314
+
315
+ ---
316
+
317
+ ## Complete Examples
318
+
319
+ ### Horizontal Radio Group
320
+
321
+ ```css
322
+ w-radio-group::part(form-control-input) {
323
+ flex-direction: row;
324
+ flex-wrap: wrap;
325
+ }
326
+ ```
327
+
328
+ ### Larger Radio Buttons
329
+
330
+ ```css
331
+ w-radio {
332
+ --w-c-radio-size: 2.4rem;
333
+ --w-c-radio-checked-border-width: 0.8rem;
334
+ }
335
+ ```
336
+
337
+ ### Custom Colors
338
+
339
+ ```css
340
+ w-radio {
341
+ --w-c-radio-border-color-checked: var(--w-s-color-border-success);
342
+ }
343
+ ```
344
+
345
+ ### Tighter Spacing
346
+
347
+ ```css
348
+ w-radio-group {
349
+ --w-c-radio-group-gap: 8px;
350
+ --w-c-radio-group-label-padding-bottom: 8px;
351
+ }
352
+ ```
353
+
354
+ ---
355
+
356
+ ## Architecture Note
240
357
 
241
- Transitions are automatically disabled when `prefers-reduced-motion: reduce` is active.
358
+ **Radio-group uses `<fieldset>`** which is the semantic HTML element for grouping form controls. Note that `<w-checkbox-group>` currently uses `<div>` instead - this inconsistency may be addressed in a future major version to align both components on the more accessible `<fieldset>` approach.
242
359
 
243
360
  ## `<w-radio-group>` API
244
361
 
@@ -249,9 +366,9 @@ Unless otherwise noted all properties are HTML attributes (as opposed to JavaScr
249
366
  | Name | Type | Default | Summary |
250
367
  |-|-|-|-|
251
368
  | disabled | `boolean` | `false` | Disables the radio group and all child radios. |
252
- | help-text | `string` | `''` | Help text for the radio group. |
369
+ | help-text | `string` | `""` | Help text for the radio group. |
253
370
  | invalid | `boolean` | `false` | Marks the radio group as invalid. |
254
- | label | `string` | `''` | Label for the radio group. |
371
+ | label | `string` | `""` | Label for the radio group. |
255
372
  | name | `string \| null` | `null` | The [name](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#name) of the select when submitting the form. |
256
373
  | optional | `boolean` | `false` | Whether to show optional text next to the label. |
257
374
  | required | `boolean` | `false` | Makes selecting a radio in the the group required. |
@@ -272,7 +389,7 @@ Help text for the radio group.
272
389
  If you set `required` and `invalid` the group gets a default error message, but you can override it with this attribute.
273
390
 
274
391
  - Type: `string`
275
- - Default: `''`
392
+ - Default: `""`
276
393
 
277
394
  #### invalid
278
395
 
@@ -286,7 +403,7 @@ Marks the radio group as invalid.
286
403
  Label for the radio group.
287
404
 
288
405
  - Type: `string`
289
- - Default: `''`
406
+ - Default: `""`
290
407
 
291
408
  #### name
292
409
 
@@ -1,118 +1,233 @@
1
- ## Styling API
1
+ # Radio and Radio Group Styling
2
2
 
3
- This section documents the supported styling hooks for `<w-radio>` and `<w-radio-group>`.
3
+ This document covers the styling API for both `<w-radio>` (individual radio buttons) and `<w-radio-group>` (the container that manages them).
4
4
 
5
- Use these hooks to customize appearance without relying on internal structure or selectors.
5
+ ## Quick Start
6
6
 
7
- Before changing the default styles, remember that doing so can result in less consistent experiences for users across the product. Prefer defaults.
7
+ ```html
8
+ <w-radio-group label="Choose a size" name="size">
9
+ <w-radio value="small">Small</w-radio>
10
+ <w-radio value="medium">Medium</w-radio>
11
+ <w-radio value="large">Large</w-radio>
12
+ </w-radio-group>
13
+ ```
8
14
 
9
- - Prefer **component tokens** for size, spacing, and state styling.
10
- - Use **parts** only for small, local tweaks.
11
- - Avoid relying on internal class names or selectors.
15
+ Customize via component tokens:
12
16
 
13
- ### Parts
17
+ ```css
18
+ /* Style all radio groups in a section */
19
+ .settings {
20
+ --w-c-radio-group-gap: 12px;
21
+ --w-c-radio-size: 2.4rem;
22
+ }
23
+ ```
14
24
 
15
- The radio exposes a small set of parts that can be targeted for last‑mile layout or typography tweaks.
25
+ ---
16
26
 
17
- | Part | Targets | Typical use |
18
- |---|---|---|
19
- | `control` | radio control (circle) | minor alignment or sizing tweaks |
20
- | `label` | label content | typography tweaks |
27
+ ## Styling Philosophy
21
28
 
22
- Example:
29
+ Before customizing, remember that changing defaults can create inconsistent experiences. Prefer the defaults.
23
30
 
31
+ - **Component tokens** for size, spacing, color, and state styling
32
+ - **Parts** only for small, one-off tweaks
33
+ - Avoid relying on internal class names
34
+
35
+ ---
36
+
37
+ ## Radio Group (`<w-radio-group>`)
38
+
39
+ ### Parts
40
+
41
+ | Part | Targets | Use Case |
42
+ |------|---------|----------|
43
+ | `form-control` | The `<fieldset>` wrapper | Outer container tweaks |
44
+ | `form-control-label` | The group label element | Label typography overrides |
45
+ | `form-control-input` | Container for radio buttons | Adjust layout/flow of radios |
46
+ | `help-text` | Help text / error message | Style hint text |
47
+
48
+ **Example:**
24
49
  ```css
25
- w-radio::part(label) {
26
- font-weight: 600;
50
+ w-radio-group::part(form-control-label) {
51
+ text-transform: uppercase;
27
52
  }
28
53
 
29
- w-radio::part(control) {
30
- margin-top: 1px;
54
+ w-radio-group::part(form-control-input) {
55
+ flex-direction: row; /* horizontal radios */
31
56
  }
32
57
  ```
33
58
 
34
- Parts are intended as an **escape hatch**.
35
- Prefer component tokens for anything state‑ or size‑related.
59
+ ### Component Tokens
36
60
 
61
+ #### Label
37
62
 
38
- ### Component tokens
63
+ | Token | Purpose | Default |
64
+ |-------|---------|---------|
65
+ | `--w-c-radio-group-label-font-size` | Label font size | `var(--w-font-size-s)` |
66
+ | `--w-c-radio-group-label-line-height` | Label line height | `var(--w-line-height-s)` |
67
+ | `--w-c-radio-group-label-font-weight` | Label font weight | `700` |
68
+ | `--w-c-radio-group-label-color` | Label text color | `var(--w-s-color-text)` |
69
+ | `--w-c-radio-group-label-color-disabled` | Label color when disabled | `var(--w-s-color-text-disabled)` |
70
+ | `--w-c-radio-group-label-padding-bottom` | Space below label | `16px` |
39
71
 
40
- Component tokens (`--w-c-radio-*`) act as inputs to the radio styling.
41
- They can be set directly on the component or inherited from a parent container.
72
+ #### Optional Indicator
42
73
 
74
+ | Token | Purpose | Default |
75
+ |-------|---------|---------|
76
+ | `--w-c-radio-group-optional-font-weight` | "Optional" text weight | `400` |
77
+ | `--w-c-radio-group-optional-color` | "Optional" text color | `var(--w-s-color-text-subtle)` |
78
+ | `--w-c-radio-group-optional-margin-inline-start` | Space before "Optional" | `0.5rem` |
79
+
80
+ #### Radio Spacing
81
+
82
+ | Token | Purpose | Default |
83
+ |-------|---------|---------|
84
+ | `--w-c-radio-group-gap` | Gap between radio buttons | `16px` |
85
+
86
+ #### Help Text
87
+
88
+ | Token | Purpose | Default |
89
+ |-------|---------|---------|
90
+ | `--w-c-radio-group-help-text-margin-block-start` | Space above help text | `16px` |
91
+ | `--w-c-radio-group-help-text-font-size` | Help text font size | `var(--w-font-size-xs)` |
92
+ | `--w-c-radio-group-help-text-line-height` | Help text line height | `var(--w-line-height-xs)` |
93
+ | `--w-c-radio-group-help-text-color` | Help text color | `var(--w-s-color-text-subtle)` |
94
+ | `--w-c-radio-group-help-text-color-disabled` | Help text color when disabled | `var(--w-s-color-text-disabled)` |
95
+ | `--w-c-radio-group-help-text-color-error` | Help text color when invalid | `var(--w-s-color-text-negative)` |
96
+
97
+ **Example:**
43
98
  ```css
44
- .settings-panel {
45
- --w-c-radio-gap: 12px;
99
+ w-radio-group {
100
+ --w-c-radio-group-gap: 12px;
101
+ --w-c-radio-group-label-font-weight: 600;
102
+ --w-c-radio-group-help-text-color: var(--w-s-color-text);
46
103
  }
47
104
  ```
48
105
 
49
- Defaults are defined internally; setting a token is always optional.
106
+ ---
50
107
 
108
+ ## Individual Radio (`<w-radio>`)
51
109
 
52
- #### Layout & size
53
-
54
- | Token | Purpose | Default |
55
- |---|---|---|
56
- | `--w-c-radio-gap` | space between control and label | `8px` |
57
- | `--w-c-radio-size` | width/height of the control | `2rem` |
58
- | `--w-c-radio-radius` | border radius of the control | `50%` |
59
- | `--w-c-radio-border-width` | border width | `1px` |
60
- | `--w-c-radio-checked-border-width` | border width when checked | `0.6rem` |
110
+ ### Parts
61
111
 
112
+ | Part | Targets | Use Case |
113
+ |------|---------|----------|
114
+ | `base` | Wrapper containing control and label | Container-level adjustments |
115
+ | `control` | Radio control (circle) | Alignment or sizing tweaks |
116
+ | `label` | Label content | Typography overrides |
62
117
 
63
- #### Colors
118
+ **Example:**
119
+ ```css
120
+ w-radio::part(label) {
121
+ font-weight: 600;
122
+ }
64
123
 
65
- | Token | Purpose | Default |
66
- |---|---|---|
67
- | `--w-c-radio-bg` | control background | theme default |
68
- | `--w-c-radio-border-color` | control border color | theme default |
69
- | `--w-c-radio-border-color-checked` | border color when checked | theme default |
70
- | `--w-c-radio-label-color` | label text color | `currentColor` |
124
+ w-radio::part(control) {
125
+ margin-top: 1px;
126
+ }
127
+ ```
71
128
 
129
+ ### Component Tokens
72
130
 
73
- #### Invalid state
131
+ #### Layout & Size
74
132
 
75
133
  | Token | Purpose | Default |
76
- |---|---|---|
77
- | `--w-c-radio-border-color-invalid` | border color when invalid | theme default |
134
+ |-------|---------|---------|
135
+ | `--w-c-radio-gap` | Space between control and label | `8px` |
136
+ | `--w-c-radio-size` | Width/height of control | `2rem` |
137
+ | `--w-c-radio-radius` | Border radius | `50%` |
138
+ | `--w-c-radio-border-width` | Border width | `1px` |
139
+ | `--w-c-radio-checked-border-width` | Border width when checked | `0.6rem` |
140
+
141
+ #### Colors
78
142
 
143
+ | Token | Purpose | Default |
144
+ |-------|---------|---------|
145
+ | `--w-c-radio-bg` | Control background | `var(--w-s-color-background)` |
146
+ | `--w-c-radio-border-color` | Control border color | `var(--w-s-color-border-strong)` |
147
+ | `--w-c-radio-border-color-checked` | Border when checked | `var(--w-s-color-border-selected)` |
148
+ | `--w-c-radio-border-color-invalid` | Border when invalid | `var(--w-s-color-border-negative)` |
149
+ | `--w-c-radio-label-color` | Label text color | `currentColor` |
79
150
 
80
- #### Disabled state
151
+ #### Disabled State
81
152
 
82
153
  | Token | Purpose | Default |
83
- |---|---|---|
84
- | `--w-c-radio-bg-disabled` | background when disabled | theme default |
85
- | `--w-c-radio-border-color-disabled` | border when disabled | theme default |
86
- | `--w-c-radio-label-color-disabled` | label color when disabled | theme default |
87
- | `--w-c-radio-cursor-disabled` | cursor when disabled | `not-allowed` |
154
+ |-------|---------|---------|
155
+ | `--w-c-radio-bg-disabled` | Background when disabled | `var(--w-s-color-background-disabled-subtle)` |
156
+ | `--w-c-radio-border-color-disabled` | Border when disabled | `var(--w-s-color-border-disabled)` |
157
+ | `--w-c-radio-label-color-disabled` | Label color when disabled | `var(--w-s-color-text-disabled)` |
158
+ | `--w-c-radio-cursor-disabled` | Cursor when disabled | `not-allowed` |
88
159
 
89
160
  #### Typography
90
161
 
91
162
  | Token | Purpose | Default |
92
- |---|---|---|
93
- | `--w-c-radio-label-font-size` | label font size | theme default |
94
- | `--w-c-radio-label-line-height` | label line height | theme default |
95
-
163
+ |-------|---------|---------|
164
+ | `--w-c-radio-label-font-size` | Label font size | `var(--w-font-size-m)` |
165
+ | `--w-c-radio-label-line-height` | Label line height | `var(--w-line-height-m)` |
96
166
 
97
167
  #### Focus
98
168
 
99
169
  | Token | Purpose | Default |
100
- |---|---|---|
101
- | `--w-c-radio-outline-width` | focus outline width | `2px` |
102
- | `--w-c-radio-outline-color` | focus outline color | theme default |
103
- | `--w-c-radio-outline-offset` | focus outline offset | theme default |
170
+ |-------|---------|---------|
171
+ | `--w-c-radio-outline-width` | Focus outline width | `2px` |
172
+ | `--w-c-radio-outline-color` | Focus outline color | `var(--w-s-color-border-focus)` |
173
+ | `--w-c-radio-outline-offset` | Focus outline offset | `var(--w-outline-offset, 1px)` |
104
174
 
105
175
  #### Interaction
106
176
 
107
177
  | Token | Purpose | Default |
108
- |---|---|---|
109
- | `--w-c-radio-cursor` | cursor in enabled state | `pointer` |
178
+ |-------|---------|---------|
179
+ | `--w-c-radio-cursor` | Cursor in enabled state | `pointer` |
110
180
 
111
181
  #### Motion
112
182
 
113
183
  | Token | Purpose | Default |
114
- |---|---|---|
115
- | `--w-c-radio-transition` | transition for control | `150ms cubic-bezier(0.4, 0, 0.2, 1)` |
184
+ |-------|---------|---------|
185
+ | `--w-c-radio-transition` | Transition for control | `border-color 150ms, border-width 150ms, background-color 150ms` |
186
+
187
+ **Note:** Transitions automatically disable when `prefers-reduced-motion: reduce` is active.
188
+
189
+ ---
190
+
191
+ ## Complete Examples
192
+
193
+ ### Horizontal Radio Group
194
+
195
+ ```css
196
+ w-radio-group::part(form-control-input) {
197
+ flex-direction: row;
198
+ flex-wrap: wrap;
199
+ }
200
+ ```
201
+
202
+ ### Larger Radio Buttons
203
+
204
+ ```css
205
+ w-radio {
206
+ --w-c-radio-size: 2.4rem;
207
+ --w-c-radio-checked-border-width: 0.8rem;
208
+ }
209
+ ```
210
+
211
+ ### Custom Colors
212
+
213
+ ```css
214
+ w-radio {
215
+ --w-c-radio-border-color-checked: var(--w-s-color-border-success);
216
+ }
217
+ ```
218
+
219
+ ### Tighter Spacing
220
+
221
+ ```css
222
+ w-radio-group {
223
+ --w-c-radio-group-gap: 8px;
224
+ --w-c-radio-group-label-padding-bottom: 8px;
225
+ }
226
+ ```
227
+
228
+ ---
229
+
230
+ ## Architecture Note
116
231
 
117
- Transitions are automatically disabled when `prefers-reduced-motion: reduce` is active.
232
+ **Radio-group uses `<fieldset>`** which is the semantic HTML element for grouping form controls. Note that `<w-checkbox-group>` currently uses `<div>` instead - this inconsistency may be addressed in a future major version to align both components on the more accessible `<fieldset>` approach.
118
233