@vaneui/ui 1.4.2 → 1.4.3

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 (325) hide show
  1. package/CHANGELOG.md +93 -0
  2. package/dist/cjs/components/ui/alert/AlertCategories.cjs +1 -0
  3. package/dist/cjs/components/ui/alert/AlertCategories.cjs.map +1 -1
  4. package/dist/cjs/components/ui/alert/alertDefaults.cjs +2 -1
  5. package/dist/cjs/components/ui/alert/alertDefaults.cjs.map +1 -1
  6. package/dist/cjs/components/ui/alert/defaultAlertTheme.cjs +3 -1
  7. package/dist/cjs/components/ui/alert/defaultAlertTheme.cjs.map +1 -1
  8. package/dist/cjs/components/ui/button/Button.cjs +1 -1
  9. package/dist/cjs/components/ui/button/Button.cjs.map +1 -1
  10. package/dist/cjs/components/ui/card/Card.cjs +14 -2
  11. package/dist/cjs/components/ui/card/Card.cjs.map +1 -1
  12. package/dist/cjs/components/ui/card/defaultCardTheme.cjs +6 -1
  13. package/dist/cjs/components/ui/card/defaultCardTheme.cjs.map +1 -1
  14. package/dist/cjs/components/ui/checkbox/Checkbox.cjs +9 -2
  15. package/dist/cjs/components/ui/checkbox/Checkbox.cjs.map +1 -1
  16. package/dist/cjs/components/ui/checkbox/CheckboxCategories.cjs +2 -1
  17. package/dist/cjs/components/ui/checkbox/CheckboxCategories.cjs.map +1 -1
  18. package/dist/cjs/components/ui/checkbox/defaultCheckboxWrapperTheme.cjs +3 -0
  19. package/dist/cjs/components/ui/checkbox/defaultCheckboxWrapperTheme.cjs.map +1 -1
  20. package/dist/cjs/components/ui/chip/Chip.cjs +2 -1
  21. package/dist/cjs/components/ui/chip/Chip.cjs.map +1 -1
  22. package/dist/cjs/components/ui/classes/appearanceClasses.cjs +2 -0
  23. package/dist/cjs/components/ui/classes/appearanceClasses.cjs.map +1 -1
  24. package/dist/cjs/components/ui/field/Field.cjs +42 -3
  25. package/dist/cjs/components/ui/field/Field.cjs.map +1 -1
  26. package/dist/cjs/components/ui/field/FieldContext.cjs +4 -1
  27. package/dist/cjs/components/ui/field/FieldContext.cjs.map +1 -1
  28. package/dist/cjs/components/ui/iconButton/IconButton.cjs +1 -1
  29. package/dist/cjs/components/ui/iconButton/IconButton.cjs.map +1 -1
  30. package/dist/cjs/components/ui/input/defaultInputTheme.cjs +1 -1
  31. package/dist/cjs/components/ui/input/defaultInputTheme.cjs.map +1 -1
  32. package/dist/cjs/components/ui/label/defaultLabelTheme.cjs +1 -1
  33. package/dist/cjs/components/ui/label/defaultLabelTheme.cjs.map +1 -1
  34. package/dist/cjs/components/ui/menu/Menu.cjs +18 -8
  35. package/dist/cjs/components/ui/menu/Menu.cjs.map +1 -1
  36. package/dist/cjs/components/ui/menu/MenuContext.cjs.map +1 -1
  37. package/dist/cjs/components/ui/menu/MenuItem.cjs +2 -9
  38. package/dist/cjs/components/ui/menu/MenuItem.cjs.map +1 -1
  39. package/dist/cjs/components/ui/menu/menuPopupDefaults.cjs +1 -0
  40. package/dist/cjs/components/ui/menu/menuPopupDefaults.cjs.map +1 -1
  41. package/dist/cjs/components/ui/modal/Modal.cjs +3 -2
  42. package/dist/cjs/components/ui/modal/Modal.cjs.map +1 -1
  43. package/dist/cjs/components/ui/modal/modalCloseButtonDefaults.cjs +3 -0
  44. package/dist/cjs/components/ui/modal/modalCloseButtonDefaults.cjs.map +1 -1
  45. package/dist/cjs/components/ui/navLink/NavLinkLabelCategories.cjs +1 -1
  46. package/dist/cjs/components/ui/navLink/NavLinkLabelCategories.cjs.map +1 -1
  47. package/dist/cjs/components/ui/navLink/defaultNavLinkLabelTheme.cjs +3 -1
  48. package/dist/cjs/components/ui/navLink/defaultNavLinkLabelTheme.cjs.map +1 -1
  49. package/dist/cjs/components/ui/navLink/navLinkLabelDefaults.cjs +3 -1
  50. package/dist/cjs/components/ui/navLink/navLinkLabelDefaults.cjs.map +1 -1
  51. package/dist/cjs/components/ui/popup/Popup.cjs +9 -9
  52. package/dist/cjs/components/ui/popup/Popup.cjs.map +1 -1
  53. package/dist/cjs/components/ui/popup/popupDefaults.cjs +1 -0
  54. package/dist/cjs/components/ui/popup/popupDefaults.cjs.map +1 -1
  55. package/dist/cjs/components/ui/props/categoryBuilders.cjs +2 -0
  56. package/dist/cjs/components/ui/props/categoryBuilders.cjs.map +1 -1
  57. package/dist/cjs/components/ui/radio/Radio.cjs +4 -3
  58. package/dist/cjs/components/ui/radio/Radio.cjs.map +1 -1
  59. package/dist/cjs/components/ui/radio/RadioGroup.cjs +3 -2
  60. package/dist/cjs/components/ui/radio/RadioGroup.cjs.map +1 -1
  61. package/dist/cjs/components/ui/radio/RadioGroupContext.cjs.map +1 -1
  62. package/dist/cjs/components/ui/radio/defaultRadioTheme.cjs +1 -2
  63. package/dist/cjs/components/ui/radio/defaultRadioTheme.cjs.map +1 -1
  64. package/dist/cjs/components/ui/radio/defaultRadioWrapperTheme.cjs +3 -0
  65. package/dist/cjs/components/ui/radio/defaultRadioWrapperTheme.cjs.map +1 -1
  66. package/dist/cjs/components/ui/select/Select.cjs +15 -1
  67. package/dist/cjs/components/ui/select/Select.cjs.map +1 -1
  68. package/dist/cjs/components/ui/select/SelectWrapperCategories.cjs +1 -1
  69. package/dist/cjs/components/ui/select/SelectWrapperCategories.cjs.map +1 -1
  70. package/dist/cjs/components/ui/select/defaultSelectTheme.cjs +1 -1
  71. package/dist/cjs/components/ui/select/defaultSelectTheme.cjs.map +1 -1
  72. package/dist/cjs/components/ui/select/defaultSelectWrapperTheme.cjs +3 -1
  73. package/dist/cjs/components/ui/select/defaultSelectWrapperTheme.cjs.map +1 -1
  74. package/dist/cjs/components/ui/switch/Switch.cjs +12 -3
  75. package/dist/cjs/components/ui/switch/Switch.cjs.map +1 -1
  76. package/dist/cjs/components/ui/switch/defaultSwitchWrapperTheme.cjs +3 -0
  77. package/dist/cjs/components/ui/switch/defaultSwitchWrapperTheme.cjs.map +1 -1
  78. package/dist/cjs/components/ui/table/TableCategories.cjs +1 -0
  79. package/dist/cjs/components/ui/table/TableCategories.cjs.map +1 -1
  80. package/dist/cjs/components/ui/table/defaultTableTheme.cjs +3 -1
  81. package/dist/cjs/components/ui/table/defaultTableTheme.cjs.map +1 -1
  82. package/dist/cjs/components/ui/table/tableDefaults.cjs +2 -1
  83. package/dist/cjs/components/ui/table/tableDefaults.cjs.map +1 -1
  84. package/dist/cjs/components/ui/textarea/defaultTextareaTheme.cjs +1 -1
  85. package/dist/cjs/components/ui/textarea/defaultTextareaTheme.cjs.map +1 -1
  86. package/dist/cjs/components/ui/theme/appearance/disabledClassMapper.cjs +8 -1
  87. package/dist/cjs/components/ui/theme/appearance/disabledClassMapper.cjs.map +1 -1
  88. package/dist/cjs/components/ui/theme/appearance/disabledOpacityClassMapper.cjs +1 -1
  89. package/dist/cjs/components/ui/theme/appearance/disabledOpacityClassMapper.cjs.map +1 -1
  90. package/dist/cjs/components/ui/theme/appearance/readOnlyClassMapper.cjs.map +1 -1
  91. package/dist/cjs/components/ui/theme/appearance/statusClassMapper.cjs +2 -2
  92. package/dist/cjs/components/ui/theme/appearance/statusClassMapper.cjs.map +1 -1
  93. package/dist/cjs/components/ui/theme/common/ComponentTheme.cjs +3 -2
  94. package/dist/cjs/components/ui/theme/common/ComponentTheme.cjs.map +1 -1
  95. package/dist/cjs/components/ui/theme/common/appearanceClassMappers.cjs +2 -0
  96. package/dist/cjs/components/ui/theme/common/appearanceClassMappers.cjs.map +1 -1
  97. package/dist/cjs/components/ui/theme/layout/transitionClassMapper.cjs +2 -2
  98. package/dist/cjs/components/ui/theme/layout/transitionClassMapper.cjs.map +1 -1
  99. package/dist/cjs/components/ui/tooltip/tooltipDefaults.cjs +1 -0
  100. package/dist/cjs/components/ui/tooltip/tooltipDefaults.cjs.map +1 -1
  101. package/dist/cjs/components/ui/typography/link/Link.cjs +4 -1
  102. package/dist/cjs/components/ui/typography/link/Link.cjs.map +1 -1
  103. package/dist/cjs/components/ui/typography/link/LinkCategories.cjs +1 -1
  104. package/dist/cjs/components/ui/typography/link/LinkCategories.cjs.map +1 -1
  105. package/dist/cjs/components/ui/typography/link/defaultLinkTheme.cjs +8 -2
  106. package/dist/cjs/components/ui/typography/link/defaultLinkTheme.cjs.map +1 -1
  107. package/dist/cjs/components/ui/typography/listItem/ListItem.cjs +0 -2
  108. package/dist/cjs/components/ui/typography/listItem/ListItem.cjs.map +1 -1
  109. package/dist/cjs/index.cjs +4 -4
  110. package/dist/esm/components/ui/alert/AlertCategories.mjs +2 -1
  111. package/dist/esm/components/ui/alert/AlertCategories.mjs.map +1 -1
  112. package/dist/esm/components/ui/alert/alertDefaults.mjs +2 -1
  113. package/dist/esm/components/ui/alert/alertDefaults.mjs.map +1 -1
  114. package/dist/esm/components/ui/alert/defaultAlertTheme.mjs +3 -1
  115. package/dist/esm/components/ui/alert/defaultAlertTheme.mjs.map +1 -1
  116. package/dist/esm/components/ui/button/Button.mjs +1 -1
  117. package/dist/esm/components/ui/button/Button.mjs.map +1 -1
  118. package/dist/esm/components/ui/card/Card.mjs +15 -3
  119. package/dist/esm/components/ui/card/Card.mjs.map +1 -1
  120. package/dist/esm/components/ui/card/defaultCardTheme.mjs +6 -1
  121. package/dist/esm/components/ui/card/defaultCardTheme.mjs.map +1 -1
  122. package/dist/esm/components/ui/checkbox/Checkbox.mjs +10 -3
  123. package/dist/esm/components/ui/checkbox/Checkbox.mjs.map +1 -1
  124. package/dist/esm/components/ui/checkbox/CheckboxCategories.mjs +3 -2
  125. package/dist/esm/components/ui/checkbox/CheckboxCategories.mjs.map +1 -1
  126. package/dist/esm/components/ui/checkbox/defaultCheckboxWrapperTheme.mjs +3 -0
  127. package/dist/esm/components/ui/checkbox/defaultCheckboxWrapperTheme.mjs.map +1 -1
  128. package/dist/esm/components/ui/chip/Chip.mjs +2 -1
  129. package/dist/esm/components/ui/chip/Chip.mjs.map +1 -1
  130. package/dist/esm/components/ui/classes/appearanceClasses.mjs +2 -1
  131. package/dist/esm/components/ui/classes/appearanceClasses.mjs.map +1 -1
  132. package/dist/esm/components/ui/field/Field.mjs +42 -3
  133. package/dist/esm/components/ui/field/Field.mjs.map +1 -1
  134. package/dist/esm/components/ui/field/FieldContext.mjs +4 -1
  135. package/dist/esm/components/ui/field/FieldContext.mjs.map +1 -1
  136. package/dist/esm/components/ui/iconButton/IconButton.mjs +1 -1
  137. package/dist/esm/components/ui/iconButton/IconButton.mjs.map +1 -1
  138. package/dist/esm/components/ui/input/defaultInputTheme.mjs +2 -2
  139. package/dist/esm/components/ui/input/defaultInputTheme.mjs.map +1 -1
  140. package/dist/esm/components/ui/label/defaultLabelTheme.mjs +1 -1
  141. package/dist/esm/components/ui/label/defaultLabelTheme.mjs.map +1 -1
  142. package/dist/esm/components/ui/menu/Menu.mjs +18 -8
  143. package/dist/esm/components/ui/menu/Menu.mjs.map +1 -1
  144. package/dist/esm/components/ui/menu/MenuContext.mjs.map +1 -1
  145. package/dist/esm/components/ui/menu/MenuItem.mjs +2 -9
  146. package/dist/esm/components/ui/menu/MenuItem.mjs.map +1 -1
  147. package/dist/esm/components/ui/menu/menuPopupDefaults.mjs +1 -0
  148. package/dist/esm/components/ui/menu/menuPopupDefaults.mjs.map +1 -1
  149. package/dist/esm/components/ui/modal/Modal.mjs +3 -2
  150. package/dist/esm/components/ui/modal/Modal.mjs.map +1 -1
  151. package/dist/esm/components/ui/modal/modalCloseButtonDefaults.mjs +3 -0
  152. package/dist/esm/components/ui/modal/modalCloseButtonDefaults.mjs.map +1 -1
  153. package/dist/esm/components/ui/navLink/NavLinkLabelCategories.mjs +1 -1
  154. package/dist/esm/components/ui/navLink/NavLinkLabelCategories.mjs.map +1 -1
  155. package/dist/esm/components/ui/navLink/defaultNavLinkLabelTheme.mjs +3 -1
  156. package/dist/esm/components/ui/navLink/defaultNavLinkLabelTheme.mjs.map +1 -1
  157. package/dist/esm/components/ui/navLink/navLinkLabelDefaults.mjs +3 -1
  158. package/dist/esm/components/ui/navLink/navLinkLabelDefaults.mjs.map +1 -1
  159. package/dist/esm/components/ui/popup/Popup.mjs +9 -9
  160. package/dist/esm/components/ui/popup/Popup.mjs.map +1 -1
  161. package/dist/esm/components/ui/popup/popupDefaults.mjs +1 -0
  162. package/dist/esm/components/ui/popup/popupDefaults.mjs.map +1 -1
  163. package/dist/esm/components/ui/props/categoryBuilders.mjs +2 -1
  164. package/dist/esm/components/ui/props/categoryBuilders.mjs.map +1 -1
  165. package/dist/esm/components/ui/radio/Radio.mjs +4 -3
  166. package/dist/esm/components/ui/radio/Radio.mjs.map +1 -1
  167. package/dist/esm/components/ui/radio/RadioGroup.mjs +4 -3
  168. package/dist/esm/components/ui/radio/RadioGroup.mjs.map +1 -1
  169. package/dist/esm/components/ui/radio/RadioGroupContext.mjs.map +1 -1
  170. package/dist/esm/components/ui/radio/defaultRadioTheme.mjs +2 -3
  171. package/dist/esm/components/ui/radio/defaultRadioTheme.mjs.map +1 -1
  172. package/dist/esm/components/ui/radio/defaultRadioWrapperTheme.mjs +3 -0
  173. package/dist/esm/components/ui/radio/defaultRadioWrapperTheme.mjs.map +1 -1
  174. package/dist/esm/components/ui/select/Select.mjs +16 -2
  175. package/dist/esm/components/ui/select/Select.mjs.map +1 -1
  176. package/dist/esm/components/ui/select/SelectWrapperCategories.mjs +1 -1
  177. package/dist/esm/components/ui/select/SelectWrapperCategories.mjs.map +1 -1
  178. package/dist/esm/components/ui/select/defaultSelectTheme.mjs +2 -2
  179. package/dist/esm/components/ui/select/defaultSelectTheme.mjs.map +1 -1
  180. package/dist/esm/components/ui/select/defaultSelectWrapperTheme.mjs +3 -1
  181. package/dist/esm/components/ui/select/defaultSelectWrapperTheme.mjs.map +1 -1
  182. package/dist/esm/components/ui/switch/Switch.mjs +12 -3
  183. package/dist/esm/components/ui/switch/Switch.mjs.map +1 -1
  184. package/dist/esm/components/ui/switch/defaultSwitchWrapperTheme.mjs +3 -0
  185. package/dist/esm/components/ui/switch/defaultSwitchWrapperTheme.mjs.map +1 -1
  186. package/dist/esm/components/ui/table/TableCategories.mjs +2 -1
  187. package/dist/esm/components/ui/table/TableCategories.mjs.map +1 -1
  188. package/dist/esm/components/ui/table/defaultTableTheme.mjs +3 -1
  189. package/dist/esm/components/ui/table/defaultTableTheme.mjs.map +1 -1
  190. package/dist/esm/components/ui/table/tableDefaults.mjs +2 -1
  191. package/dist/esm/components/ui/table/tableDefaults.mjs.map +1 -1
  192. package/dist/esm/components/ui/textarea/defaultTextareaTheme.mjs +2 -2
  193. package/dist/esm/components/ui/textarea/defaultTextareaTheme.mjs.map +1 -1
  194. package/dist/esm/components/ui/theme/appearance/disabledClassMapper.mjs +8 -2
  195. package/dist/esm/components/ui/theme/appearance/disabledClassMapper.mjs.map +1 -1
  196. package/dist/esm/components/ui/theme/appearance/disabledOpacityClassMapper.mjs +1 -1
  197. package/dist/esm/components/ui/theme/appearance/disabledOpacityClassMapper.mjs.map +1 -1
  198. package/dist/esm/components/ui/theme/appearance/readOnlyClassMapper.mjs.map +1 -1
  199. package/dist/esm/components/ui/theme/appearance/statusClassMapper.mjs +2 -2
  200. package/dist/esm/components/ui/theme/appearance/statusClassMapper.mjs.map +1 -1
  201. package/dist/esm/components/ui/theme/common/ComponentTheme.mjs +3 -2
  202. package/dist/esm/components/ui/theme/common/ComponentTheme.mjs.map +1 -1
  203. package/dist/esm/components/ui/theme/common/appearanceClassMappers.mjs +3 -2
  204. package/dist/esm/components/ui/theme/common/appearanceClassMappers.mjs.map +1 -1
  205. package/dist/esm/components/ui/theme/layout/transitionClassMapper.mjs +2 -2
  206. package/dist/esm/components/ui/theme/layout/transitionClassMapper.mjs.map +1 -1
  207. package/dist/esm/components/ui/tooltip/tooltipDefaults.mjs +1 -0
  208. package/dist/esm/components/ui/tooltip/tooltipDefaults.mjs.map +1 -1
  209. package/dist/esm/components/ui/typography/link/Link.mjs +4 -1
  210. package/dist/esm/components/ui/typography/link/Link.mjs.map +1 -1
  211. package/dist/esm/components/ui/typography/link/LinkCategories.mjs +1 -1
  212. package/dist/esm/components/ui/typography/link/LinkCategories.mjs.map +1 -1
  213. package/dist/esm/components/ui/typography/link/defaultLinkTheme.mjs +8 -2
  214. package/dist/esm/components/ui/typography/link/defaultLinkTheme.mjs.map +1 -1
  215. package/dist/esm/components/ui/typography/listItem/ListItem.mjs +0 -2
  216. package/dist/esm/components/ui/typography/listItem/ListItem.mjs.map +1 -1
  217. package/dist/esm/index.mjs +2 -2
  218. package/dist/types/components/ui/alert/Alert.d.cts +1 -1
  219. package/dist/types/components/ui/alert/Alert.d.mts +1 -1
  220. package/dist/types/components/ui/alert/Alert.d.ts +1 -1
  221. package/dist/types/components/ui/alert/AlertCategories.d.cts +1 -1
  222. package/dist/types/components/ui/alert/AlertCategories.d.mts +1 -1
  223. package/dist/types/components/ui/alert/AlertCategories.d.ts +1 -1
  224. package/dist/types/components/ui/alert/AlertProps.d.cts +2 -2
  225. package/dist/types/components/ui/alert/AlertProps.d.mts +2 -2
  226. package/dist/types/components/ui/alert/AlertProps.d.ts +2 -2
  227. package/dist/types/components/ui/alert/AlertTheme.d.cts +2 -1
  228. package/dist/types/components/ui/alert/AlertTheme.d.mts +2 -1
  229. package/dist/types/components/ui/alert/AlertTheme.d.ts +2 -1
  230. package/dist/types/components/ui/card/CardTheme.d.cts +1 -0
  231. package/dist/types/components/ui/card/CardTheme.d.mts +1 -0
  232. package/dist/types/components/ui/card/CardTheme.d.ts +1 -0
  233. package/dist/types/components/ui/checkbox/CheckboxCategories.d.cts +1 -1
  234. package/dist/types/components/ui/checkbox/CheckboxCategories.d.mts +1 -1
  235. package/dist/types/components/ui/checkbox/CheckboxCategories.d.ts +1 -1
  236. package/dist/types/components/ui/checkbox/CheckboxWrapperTheme.d.cts +2 -1
  237. package/dist/types/components/ui/checkbox/CheckboxWrapperTheme.d.mts +2 -1
  238. package/dist/types/components/ui/checkbox/CheckboxWrapperTheme.d.ts +2 -1
  239. package/dist/types/components/ui/classes/appearanceClasses.d.cts +2 -0
  240. package/dist/types/components/ui/classes/appearanceClasses.d.mts +2 -0
  241. package/dist/types/components/ui/classes/appearanceClasses.d.ts +2 -0
  242. package/dist/types/components/ui/field/FieldContext.d.cts +7 -0
  243. package/dist/types/components/ui/field/FieldContext.d.mts +7 -0
  244. package/dist/types/components/ui/field/FieldContext.d.ts +7 -0
  245. package/dist/types/components/ui/menu/MenuContext.d.cts +4 -0
  246. package/dist/types/components/ui/menu/MenuContext.d.mts +4 -0
  247. package/dist/types/components/ui/menu/MenuContext.d.ts +4 -0
  248. package/dist/types/components/ui/navLink/NavLinkLabelCategories.d.cts +2 -2
  249. package/dist/types/components/ui/navLink/NavLinkLabelCategories.d.mts +2 -2
  250. package/dist/types/components/ui/navLink/NavLinkLabelCategories.d.ts +2 -2
  251. package/dist/types/components/ui/navLink/NavLinkLabelProps.d.cts +2 -2
  252. package/dist/types/components/ui/navLink/NavLinkLabelProps.d.mts +2 -2
  253. package/dist/types/components/ui/navLink/NavLinkLabelProps.d.ts +2 -2
  254. package/dist/types/components/ui/navLink/NavLinkLabelTheme.d.cts +2 -0
  255. package/dist/types/components/ui/navLink/NavLinkLabelTheme.d.mts +2 -0
  256. package/dist/types/components/ui/navLink/NavLinkLabelTheme.d.ts +2 -0
  257. package/dist/types/components/ui/props/categoryBuilders.d.cts +1 -0
  258. package/dist/types/components/ui/props/categoryBuilders.d.mts +1 -0
  259. package/dist/types/components/ui/props/categoryBuilders.d.ts +1 -0
  260. package/dist/types/components/ui/radio/RadioCategories.d.cts +1 -1
  261. package/dist/types/components/ui/radio/RadioCategories.d.mts +1 -1
  262. package/dist/types/components/ui/radio/RadioCategories.d.ts +1 -1
  263. package/dist/types/components/ui/radio/RadioGroupContext.d.cts +3 -0
  264. package/dist/types/components/ui/radio/RadioGroupContext.d.mts +3 -0
  265. package/dist/types/components/ui/radio/RadioGroupContext.d.ts +3 -0
  266. package/dist/types/components/ui/radio/RadioWrapperTheme.d.cts +2 -1
  267. package/dist/types/components/ui/radio/RadioWrapperTheme.d.mts +2 -1
  268. package/dist/types/components/ui/radio/RadioWrapperTheme.d.ts +2 -1
  269. package/dist/types/components/ui/select/SelectWrapperCategories.d.cts +2 -2
  270. package/dist/types/components/ui/select/SelectWrapperCategories.d.mts +2 -2
  271. package/dist/types/components/ui/select/SelectWrapperCategories.d.ts +2 -2
  272. package/dist/types/components/ui/select/SelectWrapperProps.d.cts +2 -2
  273. package/dist/types/components/ui/select/SelectWrapperProps.d.mts +2 -2
  274. package/dist/types/components/ui/select/SelectWrapperProps.d.ts +2 -2
  275. package/dist/types/components/ui/select/SelectWrapperTheme.d.cts +2 -1
  276. package/dist/types/components/ui/select/SelectWrapperTheme.d.mts +2 -1
  277. package/dist/types/components/ui/select/SelectWrapperTheme.d.ts +2 -1
  278. package/dist/types/components/ui/switch/SwitchCategories.d.cts +1 -1
  279. package/dist/types/components/ui/switch/SwitchCategories.d.mts +1 -1
  280. package/dist/types/components/ui/switch/SwitchCategories.d.ts +1 -1
  281. package/dist/types/components/ui/switch/SwitchWrapperTheme.d.cts +2 -1
  282. package/dist/types/components/ui/switch/SwitchWrapperTheme.d.mts +2 -1
  283. package/dist/types/components/ui/switch/SwitchWrapperTheme.d.ts +2 -1
  284. package/dist/types/components/ui/table/Table.d.cts +1 -1
  285. package/dist/types/components/ui/table/Table.d.mts +1 -1
  286. package/dist/types/components/ui/table/Table.d.ts +1 -1
  287. package/dist/types/components/ui/table/TableCategories.d.cts +1 -1
  288. package/dist/types/components/ui/table/TableCategories.d.mts +1 -1
  289. package/dist/types/components/ui/table/TableCategories.d.ts +1 -1
  290. package/dist/types/components/ui/table/TableProps.d.cts +2 -2
  291. package/dist/types/components/ui/table/TableProps.d.mts +2 -2
  292. package/dist/types/components/ui/table/TableProps.d.ts +2 -2
  293. package/dist/types/components/ui/table/TableTheme.d.cts +2 -1
  294. package/dist/types/components/ui/table/TableTheme.d.mts +2 -1
  295. package/dist/types/components/ui/table/TableTheme.d.ts +2 -1
  296. package/dist/types/components/ui/theme/appearance/disabledClassMapper.d.cts +4 -0
  297. package/dist/types/components/ui/theme/appearance/disabledClassMapper.d.mts +4 -0
  298. package/dist/types/components/ui/theme/appearance/disabledClassMapper.d.ts +4 -0
  299. package/dist/types/components/ui/theme/appearance/index.d.cts +1 -1
  300. package/dist/types/components/ui/theme/appearance/index.d.mts +1 -1
  301. package/dist/types/components/ui/theme/appearance/index.d.ts +1 -1
  302. package/dist/types/components/ui/theme/appearance/readOnlyClassMapper.d.cts +1 -1
  303. package/dist/types/components/ui/theme/appearance/readOnlyClassMapper.d.mts +1 -1
  304. package/dist/types/components/ui/theme/appearance/readOnlyClassMapper.d.ts +1 -1
  305. package/dist/types/components/ui/theme/appearance/statusClassMapper.d.cts +1 -1
  306. package/dist/types/components/ui/theme/appearance/statusClassMapper.d.mts +1 -1
  307. package/dist/types/components/ui/theme/appearance/statusClassMapper.d.ts +1 -1
  308. package/dist/types/components/ui/theme/common/appearanceClassMappers.d.cts +2 -0
  309. package/dist/types/components/ui/theme/common/appearanceClassMappers.d.mts +2 -0
  310. package/dist/types/components/ui/theme/common/appearanceClassMappers.d.ts +2 -0
  311. package/dist/types/components/ui/theme/common/index.d.cts +1 -1
  312. package/dist/types/components/ui/theme/common/index.d.mts +1 -1
  313. package/dist/types/components/ui/theme/common/index.d.ts +1 -1
  314. package/dist/types/components/ui/theme/layout/transitionClassMapper.d.cts +1 -1
  315. package/dist/types/components/ui/theme/layout/transitionClassMapper.d.mts +1 -1
  316. package/dist/types/components/ui/theme/layout/transitionClassMapper.d.ts +1 -1
  317. package/dist/types/components/ui/typography/link/LinkCategories.d.cts +3 -3
  318. package/dist/types/components/ui/typography/link/LinkCategories.d.mts +3 -3
  319. package/dist/types/components/ui/typography/link/LinkCategories.d.ts +3 -3
  320. package/dist/types/components/ui/typography/link/LinkTheme.d.cts +4 -0
  321. package/dist/types/components/ui/typography/link/LinkTheme.d.mts +4 -0
  322. package/dist/types/components/ui/typography/link/LinkTheme.d.ts +4 -0
  323. package/dist/ui.css +1 -1
  324. package/dist/vars.css +1 -1
  325. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Radio.mjs","sources":["../../../../../src/components/ui/radio/Radio.tsx"],"sourcesContent":["import { forwardRef, useCallback, useMemo, type ChangeEvent, type MouseEvent } from 'react';\nimport type { RadioProps } from './RadioProps';\nimport { useTheme } from \"../../themeContext\";\nimport { useFieldControlProps } from \"../field/FieldContext\";\nimport { ThemedComponent } from \"../../themedComponent\";\nimport { useLabelSizeContext, withLabelSizeDefault } from \"../label/LabelSizeContext\";\nimport { useRadioGroupContext } from \"./RadioGroupContext\";\nimport { defaultRadioTheme } from \"./defaultRadioTheme\";\nimport { defaultRadioDotTheme } from \"./defaultRadioDotTheme\";\nimport { defaultRadioWrapperTheme } from \"./defaultRadioWrapperTheme\";\n\n/* RadioProps['value'] widens to string | number | readonly string[], so compare as strings. */\nconst matchesGroupValue = (groupValue: string, value: RadioProps['value']): boolean =>\n value !== undefined && String(value) === groupValue;\n\nexport const Radio = forwardRef<HTMLInputElement, RadioProps>(\n function Radio(rawProps, ref) {\n const props = useFieldControlProps(rawProps);\n const theme = useTheme();\n const wrapperThemeBase = theme?.radio.wrapper ?? defaultRadioWrapperTheme;\n const inputThemeBase = theme?.radio.input ?? defaultRadioTheme;\n const dotTheme = theme?.radio.dot ?? defaultRadioDotTheme;\n\n const group = useRadioGroupContext();\n // a RadioGroup's explicit size, else the enclosing Label's, seeds the sized sub-themes; own size prop wins\n const labelSize = useLabelSizeContext();\n const inheritedSize = group?.size ?? labelSize;\n const wrapperTheme = useMemo(\n () => withLabelSizeDefault(wrapperThemeBase, inheritedSize),\n [wrapperThemeBase, inheritedSize]\n );\n const radioInputTheme = useMemo(\n () => withLabelSizeDefault(inputThemeBase, inheritedSize),\n [inputThemeBase, inheritedSize]\n );\n\n const {\n xs, sm, md, lg, xl,\n primary, accent, secondary, tertiary, success, danger, warning, info,\n filled, outline, ghost,\n pill, sharp, rounded,\n invalid,\n checked, defaultChecked, disabled, name, value, onChange, onBlur, onFocus, onClick, required, readOnly,\n id, className, tabIndex, 'aria-label': ariaLabel,\n ...remainingProps\n } = props;\n\n const groupOnChange = group?.onChange;\n const handleChange = useCallback((event: ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n groupOnChange?.(event);\n }, [onChange, groupOnChange]);\n\n // native readOnly is inert on radio inputs — cancel activation so aria-readonly stays truthful\n const handleClick = useCallback((event: MouseEvent<HTMLInputElement>) => {\n if (readOnly) event.preventDefault();\n onClick?.(event);\n }, [readOnly, onClick]);\n\n // a group `value` makes every Radio controlled; `defaultValue` only seeds the uncontrolled one\n const resolvedChecked = checked ?? (group?.value !== undefined ? matchesGroupValue(group.value, value) : undefined);\n const resolvedDefaultChecked = resolvedChecked !== undefined\n ? undefined\n : defaultChecked ?? (group?.defaultValue !== undefined ? matchesGroupValue(group.defaultValue, value) : undefined);\n\n const themeProps = {\n xs, sm, md, lg, xl,\n primary, accent, secondary, tertiary, success, danger, warning, info,\n filled, outline, ghost,\n pill, sharp, rounded,\n disabled,\n };\n\n const inputProps = {\n type: \"radio\" as const,\n checked: resolvedChecked,\n defaultChecked: resolvedDefaultChecked,\n name: name ?? group?.name,\n value, onBlur, onFocus, required, readOnly,\n onChange: onChange || groupOnChange ? handleChange : undefined,\n onClick: handleClick,\n id, tabIndex, 'aria-label': ariaLabel,\n ...remainingProps,\n ...themeProps,\n // validity belongs on the input only, never duplicated onto the wrapper\n invalid,\n };\n\n return (\n <ThemedComponent theme={wrapperTheme} className={className} {...themeProps}>\n <ThemedComponent theme={radioInputTheme} ref={ref} {...inputProps} />\n {/* decorative dot — the real state lives on the <input>; hide it from AT */}\n <ThemedComponent theme={dotTheme} aria-hidden=\"true\">\n {dotTheme.themes.dotElement()}\n </ThemedComponent>\n </ThemedComponent>\n );\n }\n);\n\nRadio.displayName = 'Radio';\n"],"names":["Radio"],"mappings":"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"}
1
+ {"version":3,"file":"Radio.mjs","sources":["../../../../../src/components/ui/radio/Radio.tsx"],"sourcesContent":["import { forwardRef, useCallback, useMemo, type ChangeEvent, type MouseEvent } from 'react';\nimport type { RadioProps } from './RadioProps';\nimport { useTheme } from \"../../themeContext\";\nimport { useFieldControlProps } from \"../field/FieldContext\";\nimport { ThemedComponent } from \"../../themedComponent\";\nimport { useLabelSizeContext, withLabelSizeDefault } from \"../label/LabelSizeContext\";\nimport { useRadioGroupContext } from \"./RadioGroupContext\";\nimport { defaultRadioTheme } from \"./defaultRadioTheme\";\nimport { defaultRadioDotTheme } from \"./defaultRadioDotTheme\";\nimport { defaultRadioWrapperTheme } from \"./defaultRadioWrapperTheme\";\n\n/* RadioProps['value'] widens to string | number | readonly string[], so compare as strings. */\nconst matchesGroupValue = (groupValue: string, value: RadioProps['value']): boolean =>\n value !== undefined && String(value) === groupValue;\n\nexport const Radio = forwardRef<HTMLInputElement, RadioProps>(\n function Radio(rawProps, ref) {\n const props = useFieldControlProps(rawProps);\n const theme = useTheme();\n const wrapperThemeBase = theme?.radio.wrapper ?? defaultRadioWrapperTheme;\n const inputThemeBase = theme?.radio.input ?? defaultRadioTheme;\n const dotTheme = theme?.radio.dot ?? defaultRadioDotTheme;\n\n const group = useRadioGroupContext();\n // a RadioGroup's explicit size, else the enclosing Label's, seeds the sized sub-themes; own size prop wins\n const labelSize = useLabelSizeContext();\n const inheritedSize = group?.size ?? labelSize;\n const wrapperTheme = useMemo(\n () => withLabelSizeDefault(wrapperThemeBase, inheritedSize),\n [wrapperThemeBase, inheritedSize]\n );\n const radioInputTheme = useMemo(\n () => withLabelSizeDefault(inputThemeBase, inheritedSize),\n [inputThemeBase, inheritedSize]\n );\n\n const {\n xs, sm, md, lg, xl,\n primary, accent, secondary, tertiary, success, danger, warning, info,\n filled, outline, ghost,\n pill, sharp, rounded,\n invalid,\n checked, defaultChecked, disabled, name, value, onChange, onBlur, onFocus, onClick, required, readOnly,\n id, className, tabIndex, 'aria-label': ariaLabel,\n ...remainingProps\n } = props;\n\n const groupOnChange = group?.onChange;\n const handleChange = useCallback((event: ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n groupOnChange?.(event);\n }, [onChange, groupOnChange]);\n\n // native readOnly is inert on radio inputs — cancel activation so aria-readonly stays truthful\n const handleClick = useCallback((event: MouseEvent<HTMLInputElement>) => {\n if (readOnly) event.preventDefault();\n onClick?.(event);\n }, [readOnly, onClick]);\n\n // a group `value` makes every Radio controlled; `defaultValue` only seeds the uncontrolled one\n const resolvedChecked = checked ?? (group?.value !== undefined ? matchesGroupValue(group.value, value) : undefined);\n const resolvedDefaultChecked = resolvedChecked !== undefined\n ? undefined\n : defaultChecked ?? (group?.defaultValue !== undefined ? matchesGroupValue(group.defaultValue, value) : undefined);\n\n const themeProps = {\n xs, sm, md, lg, xl,\n primary, accent, secondary, tertiary, success, danger, warning, info,\n filled, outline, ghost,\n pill, sharp, rounded,\n disabled: disabled ?? group?.disabled,\n // read-only dims the wrapper like a read-only text field\n readOnly,\n };\n\n const inputProps = {\n type: \"radio\" as const,\n checked: resolvedChecked,\n defaultChecked: resolvedDefaultChecked,\n name: name ?? group?.name,\n value, onBlur, onFocus, required: required ?? group?.required,\n onChange: onChange || groupOnChange ? handleChange : undefined,\n onClick: handleClick,\n id, tabIndex, 'aria-label': ariaLabel,\n ...remainingProps,\n ...themeProps,\n // validity belongs on the input only, never duplicated onto the wrapper\n invalid,\n };\n\n return (\n <ThemedComponent theme={wrapperTheme} className={className} {...themeProps}>\n <ThemedComponent theme={radioInputTheme} ref={ref} {...inputProps} />\n {/* decorative dot — the real state lives on the <input>; hide it from AT */}\n <ThemedComponent theme={dotTheme} aria-hidden=\"true\">\n {dotTheme.themes.dotElement()}\n </ThemedComponent>\n </ThemedComponent>\n );\n }\n);\n\nRadio.displayName = 'Radio';\n"],"names":["Radio"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { jsx } from 'react/jsx-runtime';
3
- import { forwardRef, useId, useMemo } from 'react';
3
+ import { forwardRef, useContext, useId, useMemo } from 'react';
4
4
  import { useTheme } from '../../themeContext.mjs';
5
5
  import { ThemedComponent } from '../../themedComponent.mjs';
6
6
  import { RadioGroupContext } from './RadioGroupContext.mjs';
@@ -11,13 +11,14 @@ import { defaultRadioGroupTheme } from './defaultRadioGroupTheme.mjs';
11
11
  const RadioGroup = forwardRef(
12
12
  function RadioGroup2(rawProps, ref) {
13
13
  const props = useFieldGroupProps(rawProps);
14
+ const field = useContext(FieldControlContext);
14
15
  const theme = useTheme();
15
16
  const { name, value, defaultValue, onChange, ...rest } = props;
16
17
  const generatedName = useId();
17
18
  const size = pickFirstTruthyKeyByCategory(props, {}, "size");
18
19
  const group = useMemo(
19
- () => ({ name: name ?? generatedName, value, defaultValue, onChange, size }),
20
- [name, generatedName, value, defaultValue, onChange, size]
20
+ () => ({ name: name ?? generatedName, value, defaultValue, onChange, size, disabled: field?.disabled, required: field?.required }),
21
+ [name, generatedName, value, defaultValue, onChange, size, field?.disabled, field?.required]
21
22
  );
22
23
  return /* @__PURE__ */ jsx(RadioGroupContext.Provider, { value: group, children: /* @__PURE__ */ jsx(FieldControlContext.Provider, { value: null, children: /* @__PURE__ */ jsx(
23
24
  ThemedComponent,
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroup.mjs","sources":["../../../../../src/components/ui/radio/RadioGroup.tsx"],"sourcesContent":["import { forwardRef, useId, useMemo } from 'react';\nimport type { RadioGroupProps } from './RadioGroupProps';\nimport { useTheme } from \"../../themeContext\";\nimport { ThemedComponent } from \"../../themedComponent\";\nimport { RadioGroupContext } from \"./RadioGroupContext\";\nimport { FieldControlContext, useFieldGroupProps } from \"../field/FieldContext\";\nimport { pickFirstTruthyKeyByCategory } from \"../../utils/componentUtils\";\nimport { defaultRadioGroupTheme } from \"./defaultRadioGroupTheme\";\n\nexport const RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n function RadioGroup(rawProps, ref) {\n // the group takes the Field wiring itself, so its Radios must not each claim the id\n const props = useFieldGroupProps(rawProps);\n const theme = useTheme();\n // name/value/defaultValue/onChange drive the child Radios, not the group element\n const { name, value, defaultValue, onChange, ...rest } = props;\n // radios are only mutually exclusive when they share a name, so fall back to a generated one\n const generatedName = useId();\n // only an explicit group size cascades — the group's own default must not outrank a nearer Label\n const size = pickFirstTruthyKeyByCategory(props as Record<string, unknown>, {}, 'size');\n const group = useMemo(\n () => ({ name: name ?? generatedName, value, defaultValue, onChange, size }),\n [name, generatedName, value, defaultValue, onChange, size]\n );\n\n return (\n <RadioGroupContext.Provider value={group}>\n <FieldControlContext.Provider value={null}>\n <ThemedComponent\n theme={theme?.radioGroup ?? defaultRadioGroupTheme}\n ref={ref}\n role=\"radiogroup\"\n {...rest}\n />\n </FieldControlContext.Provider>\n </RadioGroupContext.Provider>\n );\n }\n);\n\nRadioGroup.displayName = 'RadioGroup';\n"],"names":["RadioGroup"],"mappings":"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"}
1
+ {"version":3,"file":"RadioGroup.mjs","sources":["../../../../../src/components/ui/radio/RadioGroup.tsx"],"sourcesContent":["import { forwardRef, useContext, useId, useMemo } from 'react';\nimport type { RadioGroupProps } from './RadioGroupProps';\nimport { useTheme } from \"../../themeContext\";\nimport { ThemedComponent } from \"../../themedComponent\";\nimport { RadioGroupContext } from \"./RadioGroupContext\";\nimport { FieldControlContext, useFieldGroupProps } from \"../field/FieldContext\";\nimport { pickFirstTruthyKeyByCategory } from \"../../utils/componentUtils\";\nimport { defaultRadioGroupTheme } from \"./defaultRadioGroupTheme\";\n\nexport const RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n function RadioGroup(rawProps, ref) {\n // the group takes the Field wiring itself, so its Radios must not each claim the id\n const props = useFieldGroupProps(rawProps);\n // the group resets the Field context for its Radios, so it forwards the Field's control state itself\n const field = useContext(FieldControlContext);\n const theme = useTheme();\n // name/value/defaultValue/onChange drive the child Radios, not the group element\n const { name, value, defaultValue, onChange, ...rest } = props;\n // radios are only mutually exclusive when they share a name, so fall back to a generated one\n const generatedName = useId();\n // only an explicit group size cascades — the group's own default must not outrank a nearer Label\n const size = pickFirstTruthyKeyByCategory(props as Record<string, unknown>, {}, 'size');\n const group = useMemo(\n () => ({ name: name ?? generatedName, value, defaultValue, onChange, size, disabled: field?.disabled, required: field?.required }),\n [name, generatedName, value, defaultValue, onChange, size, field?.disabled, field?.required]\n );\n\n return (\n <RadioGroupContext.Provider value={group}>\n <FieldControlContext.Provider value={null}>\n <ThemedComponent\n theme={theme?.radioGroup ?? defaultRadioGroupTheme}\n ref={ref}\n role=\"radiogroup\"\n {...rest}\n />\n </FieldControlContext.Provider>\n </RadioGroupContext.Provider>\n );\n }\n);\n\nRadioGroup.displayName = 'RadioGroup';\n"],"names":["RadioGroup"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroupContext.mjs","sources":["../../../../../src/components/ui/radio/RadioGroupContext.ts"],"sourcesContent":["import { createContext, useContext, type ChangeEventHandler } from 'react';\nimport type { SizeKey } from '../props';\n\nexport interface RadioGroupContextValue {\n /** Name shared by every Radio in the group, so the browser enforces single selection. */\n name?: string;\n /** Size explicitly set on the group — the size default for its Radios; an explicit Radio size wins. */\n size?: SizeKey;\n /** Selected value when the group is controlled. */\n value?: string;\n /** Initially selected value when the group is uncontrolled. */\n defaultValue?: string;\n /** Called after the Radio's own onChange whenever a Radio in the group changes. */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n}\n\n/* Group state consumed by descendant Radios — a scalar context like LabelSizeContext, so mounting a RadioGroup never forks the theme graph. */\nexport const RadioGroupContext = createContext<RadioGroupContextValue | null>(null);\n\nexport function useRadioGroupContext(): RadioGroupContextValue | null {\n return useContext(RadioGroupContext);\n}\n"],"names":[],"mappings":";;;AAiBO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAA6C,CAAA,CAAA,CAAA,CAAI,CAAA;AAE3E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,oBAAA,CAAA,CAAA,CAAsD;AACpE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,CAAA;AACrC;;"}
1
+ {"version":3,"file":"RadioGroupContext.mjs","sources":["../../../../../src/components/ui/radio/RadioGroupContext.ts"],"sourcesContent":["import { createContext, useContext, type ChangeEventHandler } from 'react';\nimport type { SizeKey } from '../props';\n\nexport interface RadioGroupContextValue {\n /** Name shared by every Radio in the group, so the browser enforces single selection. */\n name?: string;\n /** Size explicitly set on the group — the size default for its Radios; an explicit Radio size wins. */\n size?: SizeKey;\n /** Selected value when the group is controlled. */\n value?: string;\n /** Initially selected value when the group is uncontrolled. */\n defaultValue?: string;\n /** Called after the Radio's own onChange whenever a Radio in the group changes. */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n /** Set by an enclosing Field; a Radio's own prop wins. */\n disabled?: boolean;\n required?: boolean;\n}\n\n/* Group state consumed by descendant Radios — a scalar context like LabelSizeContext, so mounting a RadioGroup never forks the theme graph. */\nexport const RadioGroupContext = createContext<RadioGroupContextValue | null>(null);\n\nexport function useRadioGroupContext(): RadioGroupContextValue | null {\n return useContext(RadioGroupContext);\n}\n"],"names":[],"mappings":";;;AAoBO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAA6C,CAAA,CAAA,CAAA,CAAI,CAAA;AAE3E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,oBAAA,CAAA,CAAA,CAAsD;AACpE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,CAAA;AACrC;;"}
@@ -2,7 +2,7 @@ import { ComponentTheme, defaultSizedLayoutClassMappers } from '../theme/common/
2
2
  import '../theme/common/interactiveClassMappers.mjs';
3
3
  import '../theme/common/layoutClassMappers.mjs';
4
4
  import '../theme/common/typographyClassMappers.mjs';
5
- import { shadowAppearance, checkedBgAppearance, focusVisibleAppearance, ringAppearance, borderAppearance, accentAppearance } from '../theme/common/appearanceClassMappers.mjs';
5
+ import { shadowAppearance, checkedOnlyBgAppearance, focusVisibleAppearance, ringAppearance, borderAppearance, accentAppearance } from '../theme/common/appearanceClassMappers.mjs';
6
6
  import { BorderClassMapper } from '../theme/layout/borderClassMapper.mjs';
7
7
  import { CursorClassMapper } from '../theme/layout/cursorClassMapper.mjs';
8
8
  import { FocusVisibleClassMapper } from '../theme/layout/focusVisibleClassMapper.mjs';
@@ -41,8 +41,7 @@ const defaultRadioTheme = new ComponentTheme(
41
41
  background: new SimpleConsumerClassMapper({ base: "bg-(--color-bg-form)" }, "bg"),
42
42
  ring: ringAppearance,
43
43
  focusVisible: focusVisibleAppearance,
44
- // shared with Checkbox; its `indeterminate:` variant is inert on a radio
45
- dot: checkedBgAppearance,
44
+ dot: checkedOnlyBgAppearance,
46
45
  shadow: shadowAppearance,
47
46
  status: new StatusClassMapper(),
48
47
  disabled: new DisabledInteractiveClassMapper()
@@ -1 +1 @@
1
- {"version":3,"file":"defaultRadioTheme.mjs","sources":["../../../../../src/components/ui/radio/defaultRadioTheme.ts"],"sourcesContent":["import { defaultSizedLayoutClassMappers } from \"../theme/common/ComponentTheme\";\nimport { ComponentTheme, accentAppearance, borderAppearance, ringAppearance, focusVisibleAppearance, checkedBgAppearance, shadowAppearance } from \"../theme/common\";\nimport type { RadioProps } from \"./RadioProps\";\nimport { RadiusClassMapper, BorderClassMapper, RingClassMapper, CursorClassMapper, TransitionClassMapper, FocusVisibleClassMapper } from \"../theme/layout\";\nimport { SimpleConsumerClassMapper, StatusClassMapper, DisabledInteractiveClassMapper } from \"../theme/appearance\";\nimport { SizeClassMapper, FontSizeClassMapper } from \"../theme/size\";\nimport { RADIO_CATEGORIES } from \"./RadioCategories\";\nimport type { RadioTheme } from \"./RadioTheme\";\nimport { radioInputDefaults } from \"./radioInputDefaults\";\n\nexport const defaultRadioTheme = new ComponentTheme<RadioProps, RadioTheme>(\n \"input\",\n \"vane-radio peer col-start-1 row-start-1 appearance-none ring-transparent size-(--size)\",\n {\n size: {\n size: new SizeClassMapper(),\n text: new FontSizeClassMapper()\n },\n layout: {\n ...defaultSizedLayoutClassMappers,\n border: new BorderClassMapper(),\n ring: new RingClassMapper(),\n focusVisible: new FocusVisibleClassMapper(),\n cursor: new CursorClassMapper(),\n transition: new TransitionClassMapper(),\n radius: new RadiusClassMapper(),\n },\n appearance: {\n accent: accentAppearance,\n border: borderAppearance,\n background: new SimpleConsumerClassMapper({ base: 'bg-(--color-bg-form)' }, 'bg'),\n ring: ringAppearance,\n focusVisible: focusVisibleAppearance,\n // shared with Checkbox; its `indeterminate:` variant is inert on a radio\n dot: checkedBgAppearance,\n shadow: shadowAppearance,\n status: new StatusClassMapper(),\n disabled: new DisabledInteractiveClassMapper(),\n }\n },\n radioInputDefaults,\n RADIO_CATEGORIES,\n undefined,\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAUO,MAAM,oBAAoB,IAAI,cAAA;AAAA,EACnC,OAAA;AAAA,EACA,wFAAA;AAAA,EACA;AAAA,IACE,IAAA,EAAM;AAAA,MACJ,IAAA,EAAM,IAAI,eAAA,EAAgB;AAAA,MAC1B,IAAA,EAAM,IAAI,mBAAA;AAAoB,KAChC;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,GAAG,8BAAA;AAAA,MACH,MAAA,EAAQ,IAAI,iBAAA,EAAkB;AAAA,MAC9B,IAAA,EAAM,IAAI,eAAA,EAAgB;AAAA,MAC1B,YAAA,EAAc,IAAI,uBAAA,EAAwB;AAAA,MAC1C,MAAA,EAAQ,IAAI,iBAAA,EAAkB;AAAA,MAC9B,UAAA,EAAY,IAAI,qBAAA,EAAsB;AAAA,MACtC,MAAA,EAAQ,IAAI,iBAAA;AAAkB,KAChC;AAAA,IACA,UAAA,EAAY;AAAA,MACV,MAAA,EAAQ,gBAAA;AAAA,MACR,MAAA,EAAQ,gBAAA;AAAA,MACR,YAAY,IAAI,yBAAA,CAA0B,EAAE,IAAA,EAAM,sBAAA,IAA0B,IAAI,CAAA;AAAA,MAChF,IAAA,EAAM,cAAA;AAAA,MACN,YAAA,EAAc,sBAAA;AAAA;AAAA,MAEd,GAAA,EAAK,mBAAA;AAAA,MACL,MAAA,EAAQ,gBAAA;AAAA,MACR,MAAA,EAAQ,IAAI,iBAAA,EAAkB;AAAA,MAC9B,QAAA,EAAU,IAAI,8BAAA;AAA+B;AAC/C,GACF;AAAA,EACA,kBAAA;AAAA,EACA,gBAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF;;;;"}
1
+ {"version":3,"file":"defaultRadioTheme.mjs","sources":["../../../../../src/components/ui/radio/defaultRadioTheme.ts"],"sourcesContent":["import { defaultSizedLayoutClassMappers } from \"../theme/common/ComponentTheme\";\nimport { ComponentTheme, accentAppearance, borderAppearance, ringAppearance, focusVisibleAppearance, checkedOnlyBgAppearance, shadowAppearance } from \"../theme/common\";\nimport type { RadioProps } from \"./RadioProps\";\nimport { RadiusClassMapper, BorderClassMapper, RingClassMapper, CursorClassMapper, TransitionClassMapper, FocusVisibleClassMapper } from \"../theme/layout\";\nimport { SimpleConsumerClassMapper, StatusClassMapper, DisabledInteractiveClassMapper } from \"../theme/appearance\";\nimport { SizeClassMapper, FontSizeClassMapper } from \"../theme/size\";\nimport { RADIO_CATEGORIES } from \"./RadioCategories\";\nimport type { RadioTheme } from \"./RadioTheme\";\nimport { radioInputDefaults } from \"./radioInputDefaults\";\n\nexport const defaultRadioTheme = new ComponentTheme<RadioProps, RadioTheme>(\n \"input\",\n \"vane-radio peer col-start-1 row-start-1 appearance-none ring-transparent size-(--size)\",\n {\n size: {\n size: new SizeClassMapper(),\n text: new FontSizeClassMapper()\n },\n layout: {\n ...defaultSizedLayoutClassMappers,\n border: new BorderClassMapper(),\n ring: new RingClassMapper(),\n focusVisible: new FocusVisibleClassMapper(),\n cursor: new CursorClassMapper(),\n transition: new TransitionClassMapper(),\n radius: new RadiusClassMapper(),\n },\n appearance: {\n accent: accentAppearance,\n border: borderAppearance,\n background: new SimpleConsumerClassMapper({ base: 'bg-(--color-bg-form)' }, 'bg'),\n ring: ringAppearance,\n focusVisible: focusVisibleAppearance,\n dot: checkedOnlyBgAppearance,\n shadow: shadowAppearance,\n status: new StatusClassMapper(),\n disabled: new DisabledInteractiveClassMapper(),\n }\n },\n radioInputDefaults,\n RADIO_CATEGORIES,\n undefined,\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAUO,MAAM,oBAAoB,IAAI,cAAA;AAAA,EACnC,OAAA;AAAA,EACA,wFAAA;AAAA,EACA;AAAA,IACE,IAAA,EAAM;AAAA,MACJ,IAAA,EAAM,IAAI,eAAA,EAAgB;AAAA,MAC1B,IAAA,EAAM,IAAI,mBAAA;AAAoB,KAChC;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,GAAG,8BAAA;AAAA,MACH,MAAA,EAAQ,IAAI,iBAAA,EAAkB;AAAA,MAC9B,IAAA,EAAM,IAAI,eAAA,EAAgB;AAAA,MAC1B,YAAA,EAAc,IAAI,uBAAA,EAAwB;AAAA,MAC1C,MAAA,EAAQ,IAAI,iBAAA,EAAkB;AAAA,MAC9B,UAAA,EAAY,IAAI,qBAAA,EAAsB;AAAA,MACtC,MAAA,EAAQ,IAAI,iBAAA;AAAkB,KAChC;AAAA,IACA,UAAA,EAAY;AAAA,MACV,MAAA,EAAQ,gBAAA;AAAA,MACR,MAAA,EAAQ,gBAAA;AAAA,MACR,YAAY,IAAI,yBAAA,CAA0B,EAAE,IAAA,EAAM,sBAAA,IAA0B,IAAI,CAAA;AAAA,MAChF,IAAA,EAAM,cAAA;AAAA,MACN,YAAA,EAAc,sBAAA;AAAA,MACd,GAAA,EAAK,uBAAA;AAAA,MACL,MAAA,EAAQ,gBAAA;AAAA,MACR,MAAA,EAAQ,IAAI,iBAAA,EAAkB;AAAA,MAC9B,QAAA,EAAU,IAAI,8BAAA;AAA+B;AAC/C,GACF;AAAA,EACA,kBAAA;AAAA,EACA,gBAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF;;;;"}
@@ -5,6 +5,7 @@ import '../theme/common/typographyClassMappers.mjs';
5
5
  import '../theme/common/appearanceClassMappers.mjs';
6
6
  import '../theme/appearance/shadowAppearanceClassMapper.mjs';
7
7
  import { SimpleConsumerClassMapper } from '../theme/appearance/simpleConsumerClassMapper.mjs';
8
+ import { ReadOnlyClassMapper } from '../theme/appearance/readOnlyClassMapper.mjs';
8
9
  import { DisabledOpacityClassMapper } from '../theme/appearance/disabledOpacityClassMapper.mjs';
9
10
  import { FocusVisibleClassMapper } from '../theme/layout/focusVisibleClassMapper.mjs';
10
11
  import { AlignSelfClassMapper } from '../theme/layout/alignSelfClassMapper.mjs';
@@ -35,6 +36,8 @@ const defaultRadioWrapperTheme = new ComponentTheme(
35
36
  appearance: {
36
37
  variant: new SimpleConsumerClassMapper({ base: "" }, "bg"),
37
38
  focusVisible: new SimpleConsumerClassMapper({ base: focusVisibleConsumerClass }, "focusVisible"),
39
+ // read-only toggles dim like read-only text fields; listed before disabled so a disabled opacity wins
40
+ readOnly: new ReadOnlyClassMapper(),
38
41
  disabled: new DisabledOpacityClassMapper()
39
42
  }
40
43
  },
@@ -1 +1 @@
1
- {"version":3,"file":"defaultRadioWrapperTheme.mjs","sources":["../../../../../src/components/ui/radio/defaultRadioWrapperTheme.ts"],"sourcesContent":["import { ComponentTheme, defaultLayoutClassMappers } from \"../theme/common\";\nimport type { RadioProps } from \"./RadioProps\";\nimport { SimpleConsumerClassMapper, DisabledOpacityClassMapper } from \"../theme/appearance\";\nimport { FocusVisibleClassMapper, AlignSelfClassMapper } from \"../theme/layout\";\nimport { SizeClassMapper } from \"../theme/size\";\nimport { focusVisibleConsumerClass } from \"../classes/appearanceClasses\";\nimport { RADIO_CATEGORIES } from \"./RadioCategories\";\nimport type { RadioWrapperTheme } from \"./RadioWrapperTheme\";\nimport { radioWrapperDefaults } from \"./radioWrapperDefaults\";\n\nexport const defaultRadioWrapperTheme = new ComponentTheme<RadioProps, RadioWrapperTheme>(\n \"span\",\n \"\",\n {\n size: {\n height: new SizeClassMapper({\n xs: 'h-[calc(var(--lh)*var(--fs))]',\n sm: 'h-[calc(var(--lh)*var(--fs))]',\n md: 'h-[calc(var(--lh)*var(--fs))]',\n lg: 'h-[calc(var(--lh)*var(--fs))]',\n xl: 'h-[calc(var(--lh)*var(--fs))]'\n }) // Uses custom mode for calculated height\n },\n layout: {\n ...defaultLayoutClassMappers,\n focusVisible: new FocusVisibleClassMapper(),\n alignSelf: new AlignSelfClassMapper()\n },\n appearance: {\n variant: new SimpleConsumerClassMapper({ base: '' }, 'bg'),\n focusVisible: new SimpleConsumerClassMapper({ base: focusVisibleConsumerClass }, 'focusVisible'),\n disabled: new DisabledOpacityClassMapper(),\n }\n },\n radioWrapperDefaults,\n RADIO_CATEGORIES,\n undefined,\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAUO,MAAM,2BAA2B,IAAI,cAAA;AAAA,EAC1C,MAAA;AAAA,EACA,EAAA;AAAA,EACA;AAAA,IACE,IAAA,EAAM;AAAA,MACJ,MAAA,EAAQ,IAAI,eAAA,CAAgB;AAAA,QAC1B,EAAA,EAAI,+BAAA;AAAA,QACJ,EAAA,EAAI,+BAAA;AAAA,QACJ,EAAA,EAAI,+BAAA;AAAA,QACJ,EAAA,EAAI,+BAAA;AAAA,QACJ,EAAA,EAAI;AAAA,OACL;AAAA;AAAA,KACH;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,GAAG,yBAAA;AAAA,MACH,YAAA,EAAc,IAAI,uBAAA,EAAwB;AAAA,MAC1C,SAAA,EAAW,IAAI,oBAAA;AAAqB,KACtC;AAAA,IACA,UAAA,EAAY;AAAA,MACV,SAAS,IAAI,yBAAA,CAA0B,EAAE,IAAA,EAAM,EAAA,IAAM,IAAI,CAAA;AAAA,MACzD,cAAc,IAAI,yBAAA,CAA0B,EAAE,IAAA,EAAM,yBAAA,IAA6B,cAAc,CAAA;AAAA,MAC/F,QAAA,EAAU,IAAI,0BAAA;AAA2B;AAC3C,GACF;AAAA,EACA,oBAAA;AAAA,EACA,gBAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF;;;;"}
1
+ {"version":3,"file":"defaultRadioWrapperTheme.mjs","sources":["../../../../../src/components/ui/radio/defaultRadioWrapperTheme.ts"],"sourcesContent":["import { ComponentTheme, defaultLayoutClassMappers } from \"../theme/common\";\nimport type { RadioProps } from \"./RadioProps\";\nimport { SimpleConsumerClassMapper, DisabledOpacityClassMapper, ReadOnlyClassMapper } from \"../theme/appearance\";\nimport { FocusVisibleClassMapper, AlignSelfClassMapper } from \"../theme/layout\";\nimport { SizeClassMapper } from \"../theme/size\";\nimport { focusVisibleConsumerClass } from \"../classes/appearanceClasses\";\nimport { RADIO_CATEGORIES } from \"./RadioCategories\";\nimport type { RadioWrapperTheme } from \"./RadioWrapperTheme\";\nimport { radioWrapperDefaults } from \"./radioWrapperDefaults\";\n\nexport const defaultRadioWrapperTheme = new ComponentTheme<RadioProps, RadioWrapperTheme>(\n \"span\",\n \"\",\n {\n size: {\n height: new SizeClassMapper({\n xs: 'h-[calc(var(--lh)*var(--fs))]',\n sm: 'h-[calc(var(--lh)*var(--fs))]',\n md: 'h-[calc(var(--lh)*var(--fs))]',\n lg: 'h-[calc(var(--lh)*var(--fs))]',\n xl: 'h-[calc(var(--lh)*var(--fs))]'\n }) // Uses custom mode for calculated height\n },\n layout: {\n ...defaultLayoutClassMappers,\n focusVisible: new FocusVisibleClassMapper(),\n alignSelf: new AlignSelfClassMapper()\n },\n appearance: {\n variant: new SimpleConsumerClassMapper({ base: '' }, 'bg'),\n focusVisible: new SimpleConsumerClassMapper({ base: focusVisibleConsumerClass }, 'focusVisible'),\n // read-only toggles dim like read-only text fields; listed before disabled so a disabled opacity wins\n readOnly: new ReadOnlyClassMapper(),\n disabled: new DisabledOpacityClassMapper(),\n }\n },\n radioWrapperDefaults,\n RADIO_CATEGORIES,\n undefined,\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAUO,MAAM,2BAA2B,IAAI,cAAA;AAAA,EAC1C,MAAA;AAAA,EACA,EAAA;AAAA,EACA;AAAA,IACE,IAAA,EAAM;AAAA,MACJ,MAAA,EAAQ,IAAI,eAAA,CAAgB;AAAA,QAC1B,EAAA,EAAI,+BAAA;AAAA,QACJ,EAAA,EAAI,+BAAA;AAAA,QACJ,EAAA,EAAI,+BAAA;AAAA,QACJ,EAAA,EAAI,+BAAA;AAAA,QACJ,EAAA,EAAI;AAAA,OACL;AAAA;AAAA,KACH;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,GAAG,yBAAA;AAAA,MACH,YAAA,EAAc,IAAI,uBAAA,EAAwB;AAAA,MAC1C,SAAA,EAAW,IAAI,oBAAA;AAAqB,KACtC;AAAA,IACA,UAAA,EAAY;AAAA,MACV,SAAS,IAAI,yBAAA,CAA0B,EAAE,IAAA,EAAM,EAAA,IAAM,IAAI,CAAA;AAAA,MACzD,cAAc,IAAI,yBAAA,CAA0B,EAAE,IAAA,EAAM,yBAAA,IAA6B,cAAc,CAAA;AAAA;AAAA,MAE/F,QAAA,EAAU,IAAI,mBAAA,EAAoB;AAAA,MAClC,QAAA,EAAU,IAAI,0BAAA;AAA2B;AAC3C,GACF;AAAA,EACA,oBAAA;AAAA,EACA,gBAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF;;;;"}
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { jsxs, jsx } from 'react/jsx-runtime';
3
- import { forwardRef, useMemo } from 'react';
3
+ import { forwardRef, useMemo, useCallback } from 'react';
4
4
  import { ThemedComponent } from '../../themedComponent.mjs';
5
5
  import { useTheme } from '../../themeContext.mjs';
6
6
  import { useFieldControlProps } from '../field/FieldContext.mjs';
@@ -42,10 +42,22 @@ const Select = forwardRef(
42
42
  mobileHide,
43
43
  tabletHide,
44
44
  desktopHide,
45
+ noShrink,
45
46
  disabled,
47
+ onMouseDown,
48
+ onKeyDown,
46
49
  ...rest
47
50
  } = props;
48
- const fieldProps = { ...rest, disabled };
51
+ const readOnly = rest.readOnly;
52
+ const handleMouseDown = useCallback((event) => {
53
+ if (readOnly) event.preventDefault();
54
+ onMouseDown?.(event);
55
+ }, [readOnly, onMouseDown]);
56
+ const handleKeyDown = useCallback((event) => {
57
+ if (readOnly && event.key !== "Tab") event.preventDefault();
58
+ onKeyDown?.(event);
59
+ }, [readOnly, onKeyDown]);
60
+ const fieldProps = { ...rest, disabled, onMouseDown: handleMouseDown, onKeyDown: handleKeyDown };
49
61
  const wrapperProps = {
50
62
  className,
51
63
  wFull,
@@ -55,6 +67,8 @@ const Select = forwardRef(
55
67
  mobileHide,
56
68
  tabletHide,
57
69
  desktopHide,
70
+ noShrink,
71
+ // the wrapper is the flex item, so shrink belongs on it
58
72
  disabled
59
73
  // dims the chevron with the field; the field also keeps the native attribute
60
74
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Select.mjs","sources":["../../../../../src/components/ui/select/Select.tsx"],"sourcesContent":["import { forwardRef, useMemo } from 'react';\nimport type { SelectProps } from \"./SelectProps\";\nimport type { SelectChevronProps } from \"./SelectChevronProps\";\nimport { ThemedComponent } from \"../../themedComponent\";\nimport { useTheme } from \"../../themeContext\";\nimport { useFieldControlProps } from \"../field/FieldContext\";\nimport { useLabelSizeContext, withLabelSizeDefault } from \"../label/LabelSizeContext\";\nimport { pickFirstTruthyKeyByCategory } from \"../../utils/componentUtils\";\nimport { defaultSelectTheme } from \"./defaultSelectTheme\";\nimport { defaultSelectChevronTheme } from \"./defaultSelectChevronTheme\";\nimport { defaultSelectWrapperTheme } from \"./defaultSelectWrapperTheme\";\n\nexport const Select = forwardRef<HTMLSelectElement, SelectProps>(\n function Select(rawProps, ref) {\n const props = useFieldControlProps(rawProps);\n const theme = useTheme();\n const selectThemeBase = theme?.select ?? defaultSelectTheme;\n const chevronTheme = theme?.selectChevron ?? defaultSelectChevronTheme;\n const wrapperTheme = theme?.selectWrapper ?? defaultSelectWrapperTheme;\n // inside a Label, the Label's size becomes this control's size default; an explicit prop wins\n const labelSize = useLabelSizeContext();\n const selectTheme = useMemo(\n () => withLabelSizeDefault(selectThemeBase, labelSize),\n [selectThemeBase, labelSize]\n );\n // chevron tracks the field's RESOLVED size (explicit prop > Label size > theme defaults)\n const fieldSize = pickFirstTruthyKeyByCategory(\n props as unknown as Record<string, unknown>,\n selectTheme.defaults as unknown as Record<string, unknown>,\n 'size'\n );\n const chevronSize = (fieldSize ? { [fieldSize]: true } : {}) as Partial<SelectChevronProps>;\n\n // The dropdown is a pseudo-element, so it cannot take the shape prop's class; publish the\n // resolved shape as an attribute the picker rules can read.\n const fieldShape = pickFirstTruthyKeyByCategory(\n props as unknown as Record<string, unknown>,\n selectTheme.defaults as unknown as Record<string, unknown>,\n 'shape'\n );\n\n // Width, visibility and className size and place the whole control, so they belong on the\n // wrapper: left on the field they would narrow it while the wrapper stayed full width, and\n // the absolutely-positioned chevron would detach from the field's edge.\n const {\n className,\n wFull, wFit, wAuto, wScreen,\n mobileHide, tabletHide, desktopHide,\n disabled,\n ...rest\n } = props;\n\n // disabled stays on the field too, so the native attribute is still emitted\n const fieldProps = { ...rest, disabled };\n\n const wrapperProps = {\n className,\n wFull, wFit, wAuto, wScreen,\n mobileHide, tabletHide, desktopHide,\n disabled, // dims the chevron with the field; the field also keeps the native attribute\n };\n\n // the chevron always shows, so the field is always wrapped and the icon overlays its end edge\n return (\n <ThemedComponent theme={wrapperTheme} {...wrapperProps}>\n <ThemedComponent ref={ref} theme={selectTheme} {...fieldProps} data-shape={fieldShape} />\n <ThemedComponent theme={chevronTheme} aria-hidden=\"true\" {...chevronSize}>\n {chevronTheme.themes.chevronElement()}\n </ThemedComponent>\n </ThemedComponent>\n );\n }\n);\n\nSelect.displayName = 'Select';\n"],"names":["Select"],"mappings":"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"}
1
+ {"version":3,"file":"Select.mjs","sources":["../../../../../src/components/ui/select/Select.tsx"],"sourcesContent":["import { forwardRef, useCallback, useMemo, type KeyboardEvent, type MouseEvent } from 'react';\nimport type { SelectProps } from \"./SelectProps\";\nimport type { SelectChevronProps } from \"./SelectChevronProps\";\nimport { ThemedComponent } from \"../../themedComponent\";\nimport { useTheme } from \"../../themeContext\";\nimport { useFieldControlProps } from \"../field/FieldContext\";\nimport { useLabelSizeContext, withLabelSizeDefault } from \"../label/LabelSizeContext\";\nimport { pickFirstTruthyKeyByCategory } from \"../../utils/componentUtils\";\nimport { defaultSelectTheme } from \"./defaultSelectTheme\";\nimport { defaultSelectChevronTheme } from \"./defaultSelectChevronTheme\";\nimport { defaultSelectWrapperTheme } from \"./defaultSelectWrapperTheme\";\n\nexport const Select = forwardRef<HTMLSelectElement, SelectProps>(\n function Select(rawProps, ref) {\n const props = useFieldControlProps(rawProps);\n const theme = useTheme();\n const selectThemeBase = theme?.select ?? defaultSelectTheme;\n const chevronTheme = theme?.selectChevron ?? defaultSelectChevronTheme;\n const wrapperTheme = theme?.selectWrapper ?? defaultSelectWrapperTheme;\n // inside a Label, the Label's size becomes this control's size default; an explicit prop wins\n const labelSize = useLabelSizeContext();\n const selectTheme = useMemo(\n () => withLabelSizeDefault(selectThemeBase, labelSize),\n [selectThemeBase, labelSize]\n );\n // chevron tracks the field's RESOLVED size (explicit prop > Label size > theme defaults)\n const fieldSize = pickFirstTruthyKeyByCategory(\n props as unknown as Record<string, unknown>,\n selectTheme.defaults as unknown as Record<string, unknown>,\n 'size'\n );\n const chevronSize = (fieldSize ? { [fieldSize]: true } : {}) as Partial<SelectChevronProps>;\n\n // The dropdown is a pseudo-element, so it cannot take the shape prop's class; publish the\n // resolved shape as an attribute the picker rules can read.\n const fieldShape = pickFirstTruthyKeyByCategory(\n props as unknown as Record<string, unknown>,\n selectTheme.defaults as unknown as Record<string, unknown>,\n 'shape'\n );\n\n // Width, visibility and className size and place the whole control, so they belong on the\n // wrapper: left on the field they would narrow it while the wrapper stayed full width, and\n // the absolutely-positioned chevron would detach from the field's edge.\n const {\n className,\n wFull, wFit, wAuto, wScreen,\n mobileHide, tabletHide, desktopHide,\n noShrink,\n disabled,\n onMouseDown, onKeyDown,\n ...rest\n } = props;\n\n // <select> has no native readOnly, so block opening and keyboard changes (Tab still moves focus)\n const readOnly = (rest as { readOnly?: boolean }).readOnly;\n const handleMouseDown = useCallback((event: MouseEvent<HTMLSelectElement>) => {\n if (readOnly) event.preventDefault();\n onMouseDown?.(event);\n }, [readOnly, onMouseDown]);\n const handleKeyDown = useCallback((event: KeyboardEvent<HTMLSelectElement>) => {\n if (readOnly && event.key !== 'Tab') event.preventDefault();\n onKeyDown?.(event);\n }, [readOnly, onKeyDown]);\n\n // disabled stays on the field too, so the native attribute is still emitted\n const fieldProps = { ...rest, disabled, onMouseDown: handleMouseDown, onKeyDown: handleKeyDown };\n\n const wrapperProps = {\n className,\n wFull, wFit, wAuto, wScreen,\n mobileHide, tabletHide, desktopHide,\n noShrink, // the wrapper is the flex item, so shrink belongs on it\n disabled, // dims the chevron with the field; the field also keeps the native attribute\n };\n\n // the chevron always shows, so the field is always wrapped and the icon overlays its end edge\n return (\n <ThemedComponent theme={wrapperTheme} {...wrapperProps}>\n <ThemedComponent ref={ref} theme={selectTheme} {...fieldProps} data-shape={fieldShape} />\n <ThemedComponent theme={chevronTheme} aria-hidden=\"true\" {...chevronSize}>\n {chevronTheme.themes.chevronElement()}\n </ThemedComponent>\n </ThemedComponent>\n );\n }\n);\n\nSelect.displayName = 'Select';\n"],"names":["Select"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- const SELECT_WRAPPER_CATEGORIES = ["display", "position", "width", "items", "justify", "hide", "disabled"];
1
+ const SELECT_WRAPPER_CATEGORIES = ["display", "position", "width", "items", "justify", "hide", "shrink", "disabled"];
2
2
 
3
3
  export { SELECT_WRAPPER_CATEGORIES };
4
4
  //# sourceMappingURL=SelectWrapperCategories.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectWrapperCategories.mjs","sources":["../../../../../src/components/ui/select/SelectWrapperCategories.ts"],"sourcesContent":["/** Categories for the select wrapper sub-theme (positioning only) */\nexport const SELECT_WRAPPER_CATEGORIES = ['display', 'position', 'width', 'items', 'justify', 'hide', 'disabled'] as const;\n"],"names":[],"mappings":"AACO,MAAM,yBAAA,GAA4B,CAAC,SAAA,EAAW,UAAA,EAAY,SAAS,OAAA,EAAS,SAAA,EAAW,QAAQ,UAAU;;;;"}
1
+ {"version":3,"file":"SelectWrapperCategories.mjs","sources":["../../../../../src/components/ui/select/SelectWrapperCategories.ts"],"sourcesContent":["/** Categories for the select wrapper sub-theme (positioning, plus flex shrink since the wrapper is the flex item) */\nexport const SELECT_WRAPPER_CATEGORIES = ['display', 'position', 'width', 'items', 'justify', 'hide', 'shrink', 'disabled'] as const;\n"],"names":[],"mappings":"AACO,MAAM,yBAAA,GAA4B,CAAC,SAAA,EAAW,UAAA,EAAY,SAAS,OAAA,EAAS,SAAA,EAAW,MAAA,EAAQ,QAAA,EAAU,UAAU;;;;"}
@@ -5,7 +5,7 @@ import '../theme/common/typographyClassMappers.mjs';
5
5
  import { bgHoverAppearance } from '../theme/common/appearanceClassMappers.mjs';
6
6
  import '../theme/appearance/shadowAppearanceClassMapper.mjs';
7
7
  import { StatusClassMapper } from '../theme/appearance/statusClassMapper.mjs';
8
- import { DisabledClassMapper } from '../theme/appearance/disabledClassMapper.mjs';
8
+ import { DisabledVisualClassMapper } from '../theme/appearance/disabledClassMapper.mjs';
9
9
  import { ReadOnlyClassMapper } from '../theme/appearance/readOnlyClassMapper.mjs';
10
10
  import { INPUT_CATEGORIES } from '../input/InputCategories.mjs';
11
11
  import { selectDefaults } from './selectDefaults.mjs';
@@ -19,7 +19,7 @@ const defaultSelectTheme = new ComponentTheme(
19
19
  ...interactiveClassMappers.appearance,
20
20
  background: bgHoverAppearance,
21
21
  status: new StatusClassMapper(),
22
- disabled: new DisabledClassMapper(),
22
+ disabled: new DisabledVisualClassMapper(),
23
23
  readOnly: new ReadOnlyClassMapper()
24
24
  }
25
25
  },
@@ -1 +1 @@
1
- {"version":3,"file":"defaultSelectTheme.mjs","sources":["../../../../../src/components/ui/select/defaultSelectTheme.ts"],"sourcesContent":["import { ComponentTheme, interactiveClassMappers, bgHoverAppearance } from \"../theme/common\";\nimport type { SelectProps } from \"./SelectProps\";\nimport { StatusClassMapper, DisabledClassMapper, ReadOnlyClassMapper } from \"../theme/appearance\";\nimport { INPUT_CATEGORIES } from \"../input/InputCategories\";\nimport type { InputTheme } from \"../input/InputTheme\";\nimport { selectDefaults } from \"./selectDefaults\";\n\n// Shares InputTheme/INPUT_CATEGORIES; `appearance-none` drops the native arrow for the themed chevron.\nexport const defaultSelectTheme = new ComponentTheme<SelectProps, InputTheme>(\n \"select\",\n \"vane-select appearance-none\",\n {\n ...interactiveClassMappers,\n appearance: {\n ...interactiveClassMappers.appearance,\n background: bgHoverAppearance,\n status: new StatusClassMapper(),\n disabled: new DisabledClassMapper(),\n readOnly: new ReadOnlyClassMapper(),\n },\n },\n selectDefaults,\n INPUT_CATEGORIES,\n () => \"select\",\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;;AAQO,MAAM,qBAAqB,IAAI,cAAA;AAAA,EACpC,QAAA;AAAA,EACA,6BAAA;AAAA,EACA;AAAA,IACE,GAAG,uBAAA;AAAA,IACH,UAAA,EAAY;AAAA,MACV,GAAG,uBAAA,CAAwB,UAAA;AAAA,MAC3B,UAAA,EAAY,iBAAA;AAAA,MACZ,MAAA,EAAQ,IAAI,iBAAA,EAAkB;AAAA,MAC9B,QAAA,EAAU,IAAI,mBAAA,EAAoB;AAAA,MAClC,QAAA,EAAU,IAAI,mBAAA;AAAoB;AACpC,GACF;AAAA,EACA,cAAA;AAAA,EACA,gBAAA;AAAA,EACA,MAAM,QAAA;AAAA,EACN;AACF;;;;"}
1
+ {"version":3,"file":"defaultSelectTheme.mjs","sources":["../../../../../src/components/ui/select/defaultSelectTheme.ts"],"sourcesContent":["import { ComponentTheme, interactiveClassMappers, bgHoverAppearance } from \"../theme/common\";\nimport type { SelectProps } from \"./SelectProps\";\nimport { StatusClassMapper, DisabledVisualClassMapper, ReadOnlyClassMapper } from \"../theme/appearance\";\nimport { INPUT_CATEGORIES } from \"../input/InputCategories\";\nimport type { InputTheme } from \"../input/InputTheme\";\nimport { selectDefaults } from \"./selectDefaults\";\n\n// Shares InputTheme/INPUT_CATEGORIES; `appearance-none` drops the native arrow for the themed chevron.\nexport const defaultSelectTheme = new ComponentTheme<SelectProps, InputTheme>(\n \"select\",\n \"vane-select appearance-none\",\n {\n ...interactiveClassMappers,\n appearance: {\n ...interactiveClassMappers.appearance,\n background: bgHoverAppearance,\n status: new StatusClassMapper(),\n disabled: new DisabledVisualClassMapper(),\n readOnly: new ReadOnlyClassMapper(),\n },\n },\n selectDefaults,\n INPUT_CATEGORIES,\n () => \"select\",\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;;AAQO,MAAM,qBAAqB,IAAI,cAAA;AAAA,EACpC,QAAA;AAAA,EACA,6BAAA;AAAA,EACA;AAAA,IACE,GAAG,uBAAA;AAAA,IACH,UAAA,EAAY;AAAA,MACV,GAAG,uBAAA,CAAwB,UAAA;AAAA,MAC3B,UAAA,EAAY,iBAAA;AAAA,MACZ,MAAA,EAAQ,IAAI,iBAAA,EAAkB;AAAA,MAC9B,QAAA,EAAU,IAAI,yBAAA,EAA0B;AAAA,MACxC,QAAA,EAAU,IAAI,mBAAA;AAAoB;AACpC,GACF;AAAA,EACA,cAAA;AAAA,EACA,gBAAA;AAAA,EACA,MAAM,QAAA;AAAA,EACN;AACF;;;;"}
@@ -4,6 +4,7 @@ import '../theme/common/layoutClassMappers.mjs';
4
4
  import '../theme/common/typographyClassMappers.mjs';
5
5
  import '../theme/common/appearanceClassMappers.mjs';
6
6
  import { WidthClassMapper } from '../theme/layout/widthClassMapper.mjs';
7
+ import { ShrinkClassMapper } from '../theme/layout/shrinkClassMapper.mjs';
7
8
  import '../theme/appearance/shadowAppearanceClassMapper.mjs';
8
9
  import { DisabledOpacityClassMapper } from '../theme/appearance/disabledOpacityClassMapper.mjs';
9
10
  import { SELECT_WRAPPER_CATEGORIES } from './SelectWrapperCategories.mjs';
@@ -15,7 +16,8 @@ const defaultSelectWrapperTheme = new ComponentTheme(
15
16
  {
16
17
  layout: {
17
18
  ...defaultLayoutClassMappers,
18
- width: new WidthClassMapper()
19
+ width: new WidthClassMapper(),
20
+ shrink: new ShrinkClassMapper()
19
21
  },
20
22
  // the chevron is a sibling, so dimming only the field would leave it at full strength
21
23
  appearance: {
@@ -1 +1 @@
1
- {"version":3,"file":"defaultSelectWrapperTheme.mjs","sources":["../../../../../src/components/ui/select/defaultSelectWrapperTheme.ts"],"sourcesContent":["import { ComponentTheme, defaultLayoutClassMappers } from \"../theme/common\";\nimport type { SelectWrapperProps } from \"./SelectWrapperProps\";\nimport { WidthClassMapper } from \"../theme/layout\";\nimport { DisabledOpacityClassMapper } from \"../theme/appearance\";\nimport { SELECT_WRAPPER_CATEGORIES } from \"./SelectWrapperCategories\";\nimport type { SelectWrapperTheme } from \"./SelectWrapperTheme\";\nimport { selectWrapperDefaults } from \"./selectWrapperDefaults\";\n\n// Positioning shell so the chevron can overlay the field's trailing edge; mirrors inputWrapper.\nexport const defaultSelectWrapperTheme = new ComponentTheme<SelectWrapperProps, SelectWrapperTheme>(\n \"span\",\n \"vane-select-wrapper\",\n {\n layout: {\n ...defaultLayoutClassMappers,\n width: new WidthClassMapper(),\n },\n // the chevron is a sibling, so dimming only the field would leave it at full strength\n appearance: {\n disabled: new DisabledOpacityClassMapper(),\n },\n },\n selectWrapperDefaults,\n SELECT_WRAPPER_CATEGORIES,\n undefined,\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;AASO,MAAM,4BAA4B,IAAI,cAAA;AAAA,EAC3C,MAAA;AAAA,EACA,qBAAA;AAAA,EACA;AAAA,IACE,MAAA,EAAQ;AAAA,MACN,GAAG,yBAAA;AAAA,MACH,KAAA,EAAO,IAAI,gBAAA;AAAiB,KAC9B;AAAA;AAAA,IAEA,UAAA,EAAY;AAAA,MACV,QAAA,EAAU,IAAI,0BAAA;AAA2B;AAC3C,GACF;AAAA,EACA,qBAAA;AAAA,EACA,yBAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF;;;;"}
1
+ {"version":3,"file":"defaultSelectWrapperTheme.mjs","sources":["../../../../../src/components/ui/select/defaultSelectWrapperTheme.ts"],"sourcesContent":["import { ComponentTheme, defaultLayoutClassMappers } from \"../theme/common\";\nimport type { SelectWrapperProps } from \"./SelectWrapperProps\";\nimport { WidthClassMapper, ShrinkClassMapper } from \"../theme/layout\";\nimport { DisabledOpacityClassMapper } from \"../theme/appearance\";\nimport { SELECT_WRAPPER_CATEGORIES } from \"./SelectWrapperCategories\";\nimport type { SelectWrapperTheme } from \"./SelectWrapperTheme\";\nimport { selectWrapperDefaults } from \"./selectWrapperDefaults\";\n\n// Positioning shell so the chevron can overlay the field's trailing edge; mirrors inputWrapper.\nexport const defaultSelectWrapperTheme = new ComponentTheme<SelectWrapperProps, SelectWrapperTheme>(\n \"span\",\n \"vane-select-wrapper\",\n {\n layout: {\n ...defaultLayoutClassMappers,\n width: new WidthClassMapper(),\n shrink: new ShrinkClassMapper(),\n },\n // the chevron is a sibling, so dimming only the field would leave it at full strength\n appearance: {\n disabled: new DisabledOpacityClassMapper(),\n },\n },\n selectWrapperDefaults,\n SELECT_WRAPPER_CATEGORIES,\n undefined,\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;;AASO,MAAM,4BAA4B,IAAI,cAAA;AAAA,EAC3C,MAAA;AAAA,EACA,qBAAA;AAAA,EACA;AAAA,IACE,MAAA,EAAQ;AAAA,MACN,GAAG,yBAAA;AAAA,MACH,KAAA,EAAO,IAAI,gBAAA,EAAiB;AAAA,MAC5B,MAAA,EAAQ,IAAI,iBAAA;AAAkB,KAChC;AAAA;AAAA,IAEA,UAAA,EAAY;AAAA,MACV,QAAA,EAAU,IAAI,0BAAA;AAA2B;AAC3C,GACF;AAAA,EACA,qBAAA;AAAA,EACA,yBAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF;;;;"}
@@ -5,6 +5,7 @@ import { useTheme } from '../../themeContext.mjs';
5
5
  import { useFieldControlProps } from '../field/FieldContext.mjs';
6
6
  import { ThemedComponent } from '../../themedComponent.mjs';
7
7
  import { useLabelSizeContext, withLabelSizeDefault } from '../label/LabelSizeContext.mjs';
8
+ import { pickFirstTruthyKeyByCategory } from '../../utils/componentUtils.mjs';
8
9
  import { defaultSwitchTheme } from './defaultSwitchTheme.mjs';
9
10
  import { defaultSwitchThumbTheme } from './defaultSwitchThumbTheme.mjs';
10
11
  import { defaultSwitchWrapperTheme } from './defaultSwitchWrapperTheme.mjs';
@@ -25,6 +26,13 @@ const Switch = forwardRef(
25
26
  () => withLabelSizeDefault(inputThemeBase, labelSize),
26
27
  [inputThemeBase, labelSize]
27
28
  );
29
+ const inputSize = pickFirstTruthyKeyByCategory(
30
+ rawProps,
31
+ switchInputTheme.defaults,
32
+ "size"
33
+ );
34
+ const librarySize = pickFirstTruthyKeyByCategory({}, defaultSwitchTheme.defaults, "size");
35
+ const wrapperSize = inputSize && inputSize !== librarySize ? { [inputSize]: true } : void 0;
28
36
  const {
29
37
  xs,
30
38
  sm,
@@ -88,7 +96,9 @@ const Switch = forwardRef(
88
96
  pill,
89
97
  sharp,
90
98
  rounded,
91
- disabled
99
+ disabled,
100
+ // read-only dims the wrapper like a read-only text field
101
+ readOnly
92
102
  };
93
103
  const inputProps = {
94
104
  type: "checkbox",
@@ -101,7 +111,6 @@ const Switch = forwardRef(
101
111
  onBlur,
102
112
  onFocus,
103
113
  required,
104
- readOnly,
105
114
  onClick: handleClick,
106
115
  id,
107
116
  tabIndex,
@@ -111,7 +120,7 @@ const Switch = forwardRef(
111
120
  // validity belongs on the input only, never duplicated onto the wrapper
112
121
  invalid
113
122
  };
114
- return /* @__PURE__ */ jsxs(ThemedComponent, { theme: wrapperTheme, className, ...themeProps, children: [
123
+ return /* @__PURE__ */ jsxs(ThemedComponent, { theme: wrapperTheme, className, ...themeProps, ...wrapperSize, children: [
115
124
  /* @__PURE__ */ jsx(ThemedComponent, { theme: switchInputTheme, ref, ...inputProps }),
116
125
  /* @__PURE__ */ jsx(ThemedComponent, { theme: thumbTheme, "aria-hidden": "true", ...{ pill, sharp, rounded } })
117
126
  ] });
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.mjs","sources":["../../../../../src/components/ui/switch/Switch.tsx"],"sourcesContent":["import { forwardRef, useCallback, useMemo, type MouseEvent } from 'react';\nimport type { SwitchProps } from './SwitchProps';\nimport { useTheme } from \"../../themeContext\";\nimport { useFieldControlProps } from \"../field/FieldContext\";\nimport { ThemedComponent } from \"../../themedComponent\";\nimport { useLabelSizeContext, withLabelSizeDefault } from \"../label/LabelSizeContext\";\nimport { defaultSwitchTheme } from \"./defaultSwitchTheme\";\nimport { defaultSwitchThumbTheme } from \"./defaultSwitchThumbTheme\";\nimport { defaultSwitchWrapperTheme } from \"./defaultSwitchWrapperTheme\";\n\nexport const Switch = forwardRef<HTMLInputElement, SwitchProps>(\n function Switch(rawProps, ref) {\n const props = useFieldControlProps(rawProps);\n const theme = useTheme();\n const wrapperThemeBase = theme?.switch.wrapper ?? defaultSwitchWrapperTheme;\n const inputThemeBase = theme?.switch.input ?? defaultSwitchTheme;\n const thumbTheme = theme?.switch.thumb ?? defaultSwitchThumbTheme;\n\n // inside a Label, the Label's resolved size becomes the size default for the\n // sized sub-themes (wrapper + input; the thumb has no size category — it\n // scales via CSS variables). Explicit size props still win.\n const labelSize = useLabelSizeContext();\n const wrapperTheme = useMemo(\n () => withLabelSizeDefault(wrapperThemeBase, labelSize),\n [wrapperThemeBase, labelSize]\n );\n const switchInputTheme = useMemo(\n () => withLabelSizeDefault(inputThemeBase, labelSize),\n [inputThemeBase, labelSize]\n );\n\n const {\n xs, sm, md, lg, xl,\n primary, accent, secondary, tertiary, success, danger, warning, info,\n filled, outline, ghost,\n pill, sharp, rounded,\n invalid,\n checked, defaultChecked, disabled, name, value, onChange, onBlur, onFocus, onClick, required, readOnly,\n id, className, tabIndex, 'aria-label': ariaLabel,\n ...remainingProps\n } = props;\n\n // native readOnly is inert on checkbox inputs — cancel activation so aria-readonly stays truthful\n const handleClick = useCallback((event: MouseEvent<HTMLInputElement>) => {\n if (readOnly) event.preventDefault();\n onClick?.(event);\n }, [readOnly, onClick]);\n\n const themeProps = {\n xs, sm, md, lg, xl,\n primary, accent, secondary, tertiary, success, danger, warning, info,\n // ghost must reach the wrapper too: the thumb reads --text-color from it\n filled, outline, ghost,\n pill, sharp, rounded,\n disabled,\n };\n\n const inputProps = {\n type: \"checkbox\" as const,\n role: \"switch\",\n checked, defaultChecked, name, value, onChange, onBlur, onFocus, required, readOnly,\n onClick: handleClick,\n id, tabIndex, 'aria-label': ariaLabel,\n ...remainingProps,\n ...themeProps,\n // validity belongs on the input only, never duplicated onto the wrapper\n invalid,\n };\n\n return (\n <ThemedComponent theme={wrapperTheme} className={className} {...themeProps}>\n <ThemedComponent theme={switchInputTheme} ref={ref} {...inputProps} />\n {/* decorative knob — hidden from AT; shape only, since the rest has no category here and would hit the DOM */}\n <ThemedComponent theme={thumbTheme} aria-hidden=\"true\" {...{ pill, sharp, rounded }} />\n </ThemedComponent>\n );\n }\n);\n\nSwitch.displayName = 'Switch';\n"],"names":["Switch"],"mappings":"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"}
1
+ {"version":3,"file":"Switch.mjs","sources":["../../../../../src/components/ui/switch/Switch.tsx"],"sourcesContent":["import { forwardRef, useCallback, useMemo, type MouseEvent } from 'react';\nimport type { SwitchProps } from './SwitchProps';\nimport { useTheme } from \"../../themeContext\";\nimport { useFieldControlProps } from \"../field/FieldContext\";\nimport { ThemedComponent } from \"../../themedComponent\";\nimport { useLabelSizeContext, withLabelSizeDefault } from \"../label/LabelSizeContext\";\nimport { pickFirstTruthyKeyByCategory } from \"../../utils/componentUtils\";\nimport { defaultSwitchTheme } from \"./defaultSwitchTheme\";\nimport { defaultSwitchThumbTheme } from \"./defaultSwitchThumbTheme\";\nimport { defaultSwitchWrapperTheme } from \"./defaultSwitchWrapperTheme\";\n\nexport const Switch = forwardRef<HTMLInputElement, SwitchProps>(\n function Switch(rawProps, ref) {\n const props = useFieldControlProps(rawProps);\n const theme = useTheme();\n const wrapperThemeBase = theme?.switch.wrapper ?? defaultSwitchWrapperTheme;\n const inputThemeBase = theme?.switch.input ?? defaultSwitchTheme;\n const thumbTheme = theme?.switch.thumb ?? defaultSwitchThumbTheme;\n\n // inside a Label, the Label's resolved size becomes the size default for the\n // sized sub-themes (wrapper + input; the thumb has no size category — it\n // scales via CSS variables). Explicit size props still win.\n const labelSize = useLabelSizeContext();\n const wrapperTheme = useMemo(\n () => withLabelSizeDefault(wrapperThemeBase, labelSize),\n [wrapperThemeBase, labelSize]\n );\n const switchInputTheme = useMemo(\n () => withLabelSizeDefault(inputThemeBase, labelSize),\n [inputThemeBase, labelSize]\n );\n\n // the track's geometry lives on the wrapper, so a size set on the input (as for Checkbox and Radio) must reach it;\n // the library default is skipped so a switch.wrapper size default still applies\n const inputSize = pickFirstTruthyKeyByCategory(\n rawProps as unknown as Record<string, unknown>,\n switchInputTheme.defaults as unknown as Record<string, unknown>,\n 'size'\n );\n const librarySize = pickFirstTruthyKeyByCategory({}, defaultSwitchTheme.defaults as unknown as Record<string, unknown>, 'size');\n const wrapperSize = inputSize && inputSize !== librarySize ? { [inputSize]: true } : undefined;\n\n const {\n xs, sm, md, lg, xl,\n primary, accent, secondary, tertiary, success, danger, warning, info,\n filled, outline, ghost,\n pill, sharp, rounded,\n invalid,\n checked, defaultChecked, disabled, name, value, onChange, onBlur, onFocus, onClick, required, readOnly,\n id, className, tabIndex, 'aria-label': ariaLabel,\n ...remainingProps\n } = props;\n\n // native readOnly is inert on checkbox inputs — cancel activation so aria-readonly stays truthful\n const handleClick = useCallback((event: MouseEvent<HTMLInputElement>) => {\n if (readOnly) event.preventDefault();\n onClick?.(event);\n }, [readOnly, onClick]);\n\n const themeProps = {\n xs, sm, md, lg, xl,\n primary, accent, secondary, tertiary, success, danger, warning, info,\n // ghost must reach the wrapper too: the thumb reads --text-color from it\n filled, outline, ghost,\n pill, sharp, rounded,\n disabled,\n // read-only dims the wrapper like a read-only text field\n readOnly,\n };\n\n const inputProps = {\n type: \"checkbox\" as const,\n role: \"switch\",\n checked, defaultChecked, name, value, onChange, onBlur, onFocus, required,\n onClick: handleClick,\n id, tabIndex, 'aria-label': ariaLabel,\n ...remainingProps,\n ...themeProps,\n // validity belongs on the input only, never duplicated onto the wrapper\n invalid,\n };\n\n return (\n <ThemedComponent theme={wrapperTheme} className={className} {...themeProps} {...wrapperSize}>\n <ThemedComponent theme={switchInputTheme} ref={ref} {...inputProps} />\n {/* decorative knob — hidden from AT; shape only, since the rest has no category here and would hit the DOM */}\n <ThemedComponent theme={thumbTheme} aria-hidden=\"true\" {...{ pill, sharp, rounded }} />\n </ThemedComponent>\n );\n }\n);\n\nSwitch.displayName = 'Switch';\n"],"names":["Switch"],"mappings":"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"}
@@ -5,6 +5,7 @@ import '../theme/common/typographyClassMappers.mjs';
5
5
  import '../theme/common/appearanceClassMappers.mjs';
6
6
  import '../theme/appearance/shadowAppearanceClassMapper.mjs';
7
7
  import { SimpleConsumerClassMapper } from '../theme/appearance/simpleConsumerClassMapper.mjs';
8
+ import { ReadOnlyClassMapper } from '../theme/appearance/readOnlyClassMapper.mjs';
8
9
  import { DisabledOpacityClassMapper } from '../theme/appearance/disabledOpacityClassMapper.mjs';
9
10
  import { FocusVisibleClassMapper } from '../theme/layout/focusVisibleClassMapper.mjs';
10
11
  import { AlignSelfClassMapper } from '../theme/layout/alignSelfClassMapper.mjs';
@@ -28,6 +29,8 @@ const defaultSwitchWrapperTheme = new ComponentTheme(
28
29
  },
29
30
  appearance: {
30
31
  focusVisible: new SimpleConsumerClassMapper({ base: focusVisibleConsumerClass }, "focusVisible"),
32
+ // read-only toggles dim like read-only text fields; listed before disabled so a disabled opacity wins
33
+ readOnly: new ReadOnlyClassMapper(),
31
34
  disabled: new DisabledOpacityClassMapper()
32
35
  }
33
36
  },
@@ -1 +1 @@
1
- {"version":3,"file":"defaultSwitchWrapperTheme.mjs","sources":["../../../../../src/components/ui/switch/defaultSwitchWrapperTheme.ts"],"sourcesContent":["import { ComponentTheme, defaultLayoutClassMappers } from \"../theme/common\";\nimport type { SwitchProps } from \"./SwitchProps\";\nimport { SimpleConsumerClassMapper, DisabledOpacityClassMapper } from \"../theme/appearance\";\nimport { FocusVisibleClassMapper, AlignSelfClassMapper } from \"../theme/layout\";\nimport { SizeClassMapper } from \"../theme/size\";\nimport { focusVisibleConsumerClass } from \"../classes/appearanceClasses\";\nimport { SWITCH_CATEGORIES } from \"./SwitchCategories\";\nimport type { SwitchWrapperTheme } from \"./SwitchWrapperTheme\";\nimport { switchWrapperDefaults } from \"./switchWrapperDefaults\";\n\n// wrapper is one text line tall so the track centers on the label's first row\nconst lineBox = \"h-[calc(var(--lh)*var(--fs))]\";\n\nexport const defaultSwitchWrapperTheme = new ComponentTheme<SwitchProps, SwitchWrapperTheme>(\n \"span\",\n \"vane-switch-wrapper\",\n {\n size: {\n height: new SizeClassMapper({ xs: lineBox, sm: lineBox, md: lineBox, lg: lineBox, xl: lineBox })\n },\n layout: {\n ...defaultLayoutClassMappers,\n focusVisible: new FocusVisibleClassMapper(),\n alignSelf: new AlignSelfClassMapper()\n },\n appearance: {\n focusVisible: new SimpleConsumerClassMapper({ base: focusVisibleConsumerClass }, 'focusVisible'),\n disabled: new DisabledOpacityClassMapper(),\n }\n },\n switchWrapperDefaults,\n SWITCH_CATEGORIES,\n undefined,\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAWA,MAAM,OAAA,GAAU,+BAAA;AAET,MAAM,4BAA4B,IAAI,cAAA;AAAA,EAC3C,MAAA;AAAA,EACA,qBAAA;AAAA,EACA;AAAA,IACE,IAAA,EAAM;AAAA,MACJ,MAAA,EAAQ,IAAI,eAAA,CAAgB,EAAE,IAAI,OAAA,EAAS,EAAA,EAAI,OAAA,EAAS,EAAA,EAAI,OAAA,EAAS,EAAA,EAAI,OAAA,EAAS,EAAA,EAAI,SAAS;AAAA,KACjG;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,GAAG,yBAAA;AAAA,MACH,YAAA,EAAc,IAAI,uBAAA,EAAwB;AAAA,MAC1C,SAAA,EAAW,IAAI,oBAAA;AAAqB,KACtC;AAAA,IACA,UAAA,EAAY;AAAA,MACV,cAAc,IAAI,yBAAA,CAA0B,EAAE,IAAA,EAAM,yBAAA,IAA6B,cAAc,CAAA;AAAA,MAC/F,QAAA,EAAU,IAAI,0BAAA;AAA2B;AAC3C,GACF;AAAA,EACA,qBAAA;AAAA,EACA,iBAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF;;;;"}
1
+ {"version":3,"file":"defaultSwitchWrapperTheme.mjs","sources":["../../../../../src/components/ui/switch/defaultSwitchWrapperTheme.ts"],"sourcesContent":["import { ComponentTheme, defaultLayoutClassMappers } from \"../theme/common\";\nimport type { SwitchProps } from \"./SwitchProps\";\nimport { SimpleConsumerClassMapper, DisabledOpacityClassMapper, ReadOnlyClassMapper } from \"../theme/appearance\";\nimport { FocusVisibleClassMapper, AlignSelfClassMapper } from \"../theme/layout\";\nimport { SizeClassMapper } from \"../theme/size\";\nimport { focusVisibleConsumerClass } from \"../classes/appearanceClasses\";\nimport { SWITCH_CATEGORIES } from \"./SwitchCategories\";\nimport type { SwitchWrapperTheme } from \"./SwitchWrapperTheme\";\nimport { switchWrapperDefaults } from \"./switchWrapperDefaults\";\n\n// wrapper is one text line tall so the track centers on the label's first row\nconst lineBox = \"h-[calc(var(--lh)*var(--fs))]\";\n\nexport const defaultSwitchWrapperTheme = new ComponentTheme<SwitchProps, SwitchWrapperTheme>(\n \"span\",\n \"vane-switch-wrapper\",\n {\n size: {\n height: new SizeClassMapper({ xs: lineBox, sm: lineBox, md: lineBox, lg: lineBox, xl: lineBox })\n },\n layout: {\n ...defaultLayoutClassMappers,\n focusVisible: new FocusVisibleClassMapper(),\n alignSelf: new AlignSelfClassMapper()\n },\n appearance: {\n focusVisible: new SimpleConsumerClassMapper({ base: focusVisibleConsumerClass }, 'focusVisible'),\n // read-only toggles dim like read-only text fields; listed before disabled so a disabled opacity wins\n readOnly: new ReadOnlyClassMapper(),\n disabled: new DisabledOpacityClassMapper(),\n }\n },\n switchWrapperDefaults,\n SWITCH_CATEGORIES,\n undefined,\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAWA,MAAM,OAAA,GAAU,+BAAA;AAET,MAAM,4BAA4B,IAAI,cAAA;AAAA,EAC3C,MAAA;AAAA,EACA,qBAAA;AAAA,EACA;AAAA,IACE,IAAA,EAAM;AAAA,MACJ,MAAA,EAAQ,IAAI,eAAA,CAAgB,EAAE,IAAI,OAAA,EAAS,EAAA,EAAI,OAAA,EAAS,EAAA,EAAI,OAAA,EAAS,EAAA,EAAI,OAAA,EAAS,EAAA,EAAI,SAAS;AAAA,KACjG;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,GAAG,yBAAA;AAAA,MACH,YAAA,EAAc,IAAI,uBAAA,EAAwB;AAAA,MAC1C,SAAA,EAAW,IAAI,oBAAA;AAAqB,KACtC;AAAA,IACA,UAAA,EAAY;AAAA,MACV,cAAc,IAAI,yBAAA,CAA0B,EAAE,IAAA,EAAM,yBAAA,IAA6B,cAAc,CAAA;AAAA;AAAA,MAE/F,QAAA,EAAU,IAAI,mBAAA,EAAoB;AAAA,MAClC,QAAA,EAAU,IAAI,0BAAA;AAA2B;AAC3C,GACF;AAAA,EACA,qBAAA;AAAA,EACA,iBAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF;;;;"}
@@ -1,4 +1,4 @@
1
- import { VISUAL_CORE, VARIANT, BORDER, WIDTH, MARGIN, TEXT_ALIGN, RESPONSIVE } from '../props/categoryBuilders.mjs';
1
+ import { VISUAL_CORE, VARIANT, BORDER, WIDTH, MARGIN, TEXT_ALIGN, FONT_FAMILY, RESPONSIVE } from '../props/categoryBuilders.mjs';
2
2
 
3
3
  const TABLE_CATEGORIES = [
4
4
  "size",
@@ -8,6 +8,7 @@ const TABLE_CATEGORIES = [
8
8
  ...WIDTH,
9
9
  ...MARGIN,
10
10
  ...TEXT_ALIGN,
11
+ ...FONT_FAMILY,
11
12
  "hide",
12
13
  ...RESPONSIVE
13
14
  ];