@kushagradhawan/kookie-ui 0.1.28 → 0.1.30

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 (538) hide show
  1. package/components.css +4742 -2680
  2. package/dist/cjs/components/_internal/base-button.d.ts +36 -0
  3. package/dist/cjs/components/_internal/base-button.d.ts.map +1 -1
  4. package/dist/cjs/components/_internal/base-button.js +1 -1
  5. package/dist/cjs/components/_internal/base-button.js.map +3 -3
  6. package/dist/cjs/components/_internal/base-button.props.d.ts +61 -0
  7. package/dist/cjs/components/_internal/base-button.props.d.ts.map +1 -1
  8. package/dist/cjs/components/_internal/base-button.props.js +1 -1
  9. package/dist/cjs/components/_internal/base-button.props.js.map +3 -3
  10. package/dist/cjs/components/_internal/base-checkbox.props.d.ts +6 -1
  11. package/dist/cjs/components/_internal/base-checkbox.props.d.ts.map +1 -1
  12. package/dist/cjs/components/_internal/base-checkbox.props.js +1 -1
  13. package/dist/cjs/components/_internal/base-checkbox.props.js.map +3 -3
  14. package/dist/cjs/components/_internal/base-menu.props.d.ts +8 -0
  15. package/dist/cjs/components/_internal/base-menu.props.d.ts.map +1 -1
  16. package/dist/cjs/components/_internal/base-menu.props.js +1 -1
  17. package/dist/cjs/components/_internal/base-menu.props.js.map +3 -3
  18. package/dist/cjs/components/_internal/base-radio.props.d.ts +6 -1
  19. package/dist/cjs/components/_internal/base-radio.props.d.ts.map +1 -1
  20. package/dist/cjs/components/_internal/base-radio.props.js +1 -1
  21. package/dist/cjs/components/_internal/base-radio.props.js.map +3 -3
  22. package/dist/cjs/components/accordion.d.ts +22 -0
  23. package/dist/cjs/components/accordion.d.ts.map +1 -0
  24. package/dist/cjs/components/accordion.js +2 -0
  25. package/dist/cjs/components/accordion.js.map +7 -0
  26. package/dist/cjs/components/accordion.props.d.ts +97 -0
  27. package/dist/cjs/components/accordion.props.d.ts.map +1 -0
  28. package/dist/cjs/components/accordion.props.js +2 -0
  29. package/dist/cjs/components/accordion.props.js.map +7 -0
  30. package/dist/cjs/components/alert-dialog.d.ts.map +1 -1
  31. package/dist/cjs/components/alert-dialog.js +1 -1
  32. package/dist/cjs/components/alert-dialog.js.map +3 -3
  33. package/dist/cjs/components/alert-dialog.props.d.ts +69 -2
  34. package/dist/cjs/components/alert-dialog.props.d.ts.map +1 -1
  35. package/dist/cjs/components/alert-dialog.props.js +1 -1
  36. package/dist/cjs/components/alert-dialog.props.js.map +3 -3
  37. package/dist/cjs/components/avatar.d.ts.map +1 -1
  38. package/dist/cjs/components/avatar.js +1 -1
  39. package/dist/cjs/components/avatar.js.map +3 -3
  40. package/dist/cjs/components/avatar.props.d.ts +9 -1
  41. package/dist/cjs/components/avatar.props.d.ts.map +1 -1
  42. package/dist/cjs/components/avatar.props.js +1 -1
  43. package/dist/cjs/components/avatar.props.js.map +3 -3
  44. package/dist/cjs/components/badge.d.ts +8 -1
  45. package/dist/cjs/components/badge.d.ts.map +1 -1
  46. package/dist/cjs/components/badge.js +1 -1
  47. package/dist/cjs/components/badge.js.map +3 -3
  48. package/dist/cjs/components/badge.props.d.ts +14 -6
  49. package/dist/cjs/components/badge.props.d.ts.map +1 -1
  50. package/dist/cjs/components/badge.props.js +1 -1
  51. package/dist/cjs/components/badge.props.js.map +3 -3
  52. package/dist/cjs/components/blockquote.props.d.ts +1 -1
  53. package/dist/cjs/components/button.d.ts +53 -1
  54. package/dist/cjs/components/button.d.ts.map +1 -1
  55. package/dist/cjs/components/button.js +1 -1
  56. package/dist/cjs/components/button.js.map +3 -3
  57. package/dist/cjs/components/button.props.d.ts +17 -0
  58. package/dist/cjs/components/button.props.d.ts.map +1 -1
  59. package/dist/cjs/components/button.props.js.map +2 -2
  60. package/dist/cjs/components/callout.d.ts +4 -0
  61. package/dist/cjs/components/callout.d.ts.map +1 -1
  62. package/dist/cjs/components/callout.js +1 -1
  63. package/dist/cjs/components/callout.js.map +3 -3
  64. package/dist/cjs/components/callout.props.d.ts +9 -1
  65. package/dist/cjs/components/callout.props.d.ts.map +1 -1
  66. package/dist/cjs/components/callout.props.js +1 -1
  67. package/dist/cjs/components/callout.props.js.map +3 -3
  68. package/dist/cjs/components/card.d.ts.map +1 -1
  69. package/dist/cjs/components/card.js +1 -1
  70. package/dist/cjs/components/card.js.map +3 -3
  71. package/dist/cjs/components/card.props.d.ts +5 -0
  72. package/dist/cjs/components/card.props.d.ts.map +1 -1
  73. package/dist/cjs/components/card.props.js +1 -1
  74. package/dist/cjs/components/card.props.js.map +3 -3
  75. package/dist/cjs/components/checkbox-cards.d.ts.map +1 -1
  76. package/dist/cjs/components/checkbox-cards.js +1 -1
  77. package/dist/cjs/components/checkbox-cards.js.map +3 -3
  78. package/dist/cjs/components/checkbox-cards.props.d.ts +2 -2
  79. package/dist/cjs/components/checkbox-cards.props.js +1 -1
  80. package/dist/cjs/components/checkbox-cards.props.js.map +2 -2
  81. package/dist/cjs/components/checkbox-group.props.d.ts +6 -1
  82. package/dist/cjs/components/checkbox-group.props.d.ts.map +1 -1
  83. package/dist/cjs/components/checkbox.d.ts.map +1 -1
  84. package/dist/cjs/components/checkbox.js +1 -1
  85. package/dist/cjs/components/checkbox.js.map +3 -3
  86. package/dist/cjs/components/code.js.map +1 -1
  87. package/dist/cjs/components/code.props.d.ts +1 -1
  88. package/dist/cjs/components/context-menu.d.ts +1 -1
  89. package/dist/cjs/components/context-menu.d.ts.map +1 -1
  90. package/dist/cjs/components/context-menu.js +1 -1
  91. package/dist/cjs/components/context-menu.js.map +3 -3
  92. package/dist/cjs/components/dialog.d.ts.map +1 -1
  93. package/dist/cjs/components/dialog.js +1 -1
  94. package/dist/cjs/components/dialog.js.map +3 -3
  95. package/dist/cjs/components/dialog.props.d.ts +6 -1
  96. package/dist/cjs/components/dialog.props.d.ts.map +1 -1
  97. package/dist/cjs/components/dialog.props.js +1 -1
  98. package/dist/cjs/components/dialog.props.js.map +3 -3
  99. package/dist/cjs/components/dropdown-menu.d.ts +1 -1
  100. package/dist/cjs/components/dropdown-menu.d.ts.map +1 -1
  101. package/dist/cjs/components/dropdown-menu.js +1 -1
  102. package/dist/cjs/components/dropdown-menu.js.map +3 -3
  103. package/dist/cjs/components/heading.props.d.ts +1 -1
  104. package/dist/cjs/components/icon-button.d.ts +79 -1
  105. package/dist/cjs/components/icon-button.d.ts.map +1 -1
  106. package/dist/cjs/components/icon-button.js +4 -1
  107. package/dist/cjs/components/icon-button.js.map +3 -3
  108. package/dist/cjs/components/image.d.ts +131 -12
  109. package/dist/cjs/components/image.d.ts.map +1 -1
  110. package/dist/cjs/components/image.js +1 -1
  111. package/dist/cjs/components/image.js.map +3 -3
  112. package/dist/cjs/components/image.props.d.ts +136 -21
  113. package/dist/cjs/components/image.props.d.ts.map +1 -1
  114. package/dist/cjs/components/image.props.js +1 -1
  115. package/dist/cjs/components/image.props.js.map +3 -3
  116. package/dist/cjs/components/index.d.ts +1 -0
  117. package/dist/cjs/components/index.d.ts.map +1 -1
  118. package/dist/cjs/components/index.js +1 -1
  119. package/dist/cjs/components/index.js.map +3 -3
  120. package/dist/cjs/components/link.props.d.ts +1 -1
  121. package/dist/cjs/components/progress.props.d.ts +2 -2
  122. package/dist/cjs/components/progress.props.js +1 -1
  123. package/dist/cjs/components/progress.props.js.map +2 -2
  124. package/dist/cjs/components/radio-cards.d.ts.map +1 -1
  125. package/dist/cjs/components/radio-cards.js +1 -1
  126. package/dist/cjs/components/radio-cards.js.map +3 -3
  127. package/dist/cjs/components/radio-cards.props.d.ts +2 -2
  128. package/dist/cjs/components/radio-cards.props.js +1 -1
  129. package/dist/cjs/components/radio-cards.props.js.map +2 -2
  130. package/dist/cjs/components/radio.d.ts.map +1 -1
  131. package/dist/cjs/components/radio.js +1 -1
  132. package/dist/cjs/components/radio.js.map +3 -3
  133. package/dist/cjs/components/segmented-control.props.d.ts +3 -3
  134. package/dist/cjs/components/segmented-control.props.js +1 -1
  135. package/dist/cjs/components/segmented-control.props.js.map +2 -2
  136. package/dist/cjs/components/select.d.ts.map +1 -1
  137. package/dist/cjs/components/select.js +1 -1
  138. package/dist/cjs/components/select.js.map +3 -3
  139. package/dist/cjs/components/select.props.d.ts +12 -0
  140. package/dist/cjs/components/select.props.d.ts.map +1 -1
  141. package/dist/cjs/components/select.props.js +1 -1
  142. package/dist/cjs/components/select.props.js.map +2 -2
  143. package/dist/cjs/components/sidebar.d.ts +5 -0
  144. package/dist/cjs/components/sidebar.d.ts.map +1 -1
  145. package/dist/cjs/components/sidebar.js +1 -1
  146. package/dist/cjs/components/sidebar.js.map +3 -3
  147. package/dist/cjs/components/slider.d.ts +5 -0
  148. package/dist/cjs/components/slider.d.ts.map +1 -1
  149. package/dist/cjs/components/slider.js +1 -1
  150. package/dist/cjs/components/slider.js.map +3 -3
  151. package/dist/cjs/components/slider.props.d.ts +10 -2
  152. package/dist/cjs/components/slider.props.d.ts.map +1 -1
  153. package/dist/cjs/components/slider.props.js +1 -1
  154. package/dist/cjs/components/slider.props.js.map +2 -2
  155. package/dist/cjs/components/switch.d.ts.map +1 -1
  156. package/dist/cjs/components/switch.js +1 -1
  157. package/dist/cjs/components/switch.js.map +3 -3
  158. package/dist/cjs/components/switch.props.d.ts +17 -4
  159. package/dist/cjs/components/switch.props.d.ts.map +1 -1
  160. package/dist/cjs/components/switch.props.js +1 -1
  161. package/dist/cjs/components/switch.props.js.map +3 -3
  162. package/dist/cjs/components/tab-nav.d.ts.map +1 -1
  163. package/dist/cjs/components/tab-nav.js +1 -1
  164. package/dist/cjs/components/tab-nav.js.map +3 -3
  165. package/dist/cjs/components/tabs.d.ts.map +1 -1
  166. package/dist/cjs/components/tabs.js +1 -1
  167. package/dist/cjs/components/tabs.js.map +2 -2
  168. package/dist/cjs/components/text-area.d.ts.map +1 -1
  169. package/dist/cjs/components/text-area.js +1 -1
  170. package/dist/cjs/components/text-area.js.map +3 -3
  171. package/dist/cjs/components/text-area.props.d.ts +29 -0
  172. package/dist/cjs/components/text-area.props.d.ts.map +1 -1
  173. package/dist/cjs/components/text-area.props.js +1 -1
  174. package/dist/cjs/components/text-area.props.js.map +3 -3
  175. package/dist/cjs/components/text-field.d.ts.map +1 -1
  176. package/dist/cjs/components/text-field.js +4 -4
  177. package/dist/cjs/components/text-field.js.map +3 -3
  178. package/dist/cjs/components/text-field.props.d.ts +29 -0
  179. package/dist/cjs/components/text-field.props.d.ts.map +1 -1
  180. package/dist/cjs/components/text-field.props.js +1 -1
  181. package/dist/cjs/components/text-field.props.js.map +3 -3
  182. package/dist/cjs/components/text.props.d.ts +1 -1
  183. package/dist/cjs/components/theme.d.ts +3 -0
  184. package/dist/cjs/components/theme.d.ts.map +1 -1
  185. package/dist/cjs/components/theme.js +1 -1
  186. package/dist/cjs/components/theme.js.map +3 -3
  187. package/dist/cjs/components/theme.props.d.ts +14 -0
  188. package/dist/cjs/components/theme.props.d.ts.map +1 -1
  189. package/dist/cjs/components/theme.props.js +1 -1
  190. package/dist/cjs/components/theme.props.js.map +3 -3
  191. package/dist/cjs/components/toggle-button.d.ts +52 -0
  192. package/dist/cjs/components/toggle-button.d.ts.map +1 -1
  193. package/dist/cjs/components/toggle-button.js +1 -1
  194. package/dist/cjs/components/toggle-button.js.map +3 -3
  195. package/dist/cjs/components/toggle-icon-button.d.ts +84 -2
  196. package/dist/cjs/components/toggle-icon-button.d.ts.map +1 -1
  197. package/dist/cjs/components/toggle-icon-button.js +1 -1
  198. package/dist/cjs/components/toggle-icon-button.js.map +3 -3
  199. package/dist/cjs/helpers/extract-margin-props.d.ts +7 -7
  200. package/dist/cjs/hooks/index.d.ts +2 -0
  201. package/dist/cjs/hooks/index.d.ts.map +1 -0
  202. package/dist/cjs/hooks/index.js +2 -0
  203. package/dist/cjs/hooks/index.js.map +7 -0
  204. package/dist/cjs/hooks/use-live-announcer.d.ts +6 -0
  205. package/dist/cjs/hooks/use-live-announcer.d.ts.map +1 -0
  206. package/dist/cjs/hooks/use-live-announcer.js +10 -0
  207. package/dist/cjs/hooks/use-live-announcer.js.map +7 -0
  208. package/dist/cjs/index.d.ts +1 -0
  209. package/dist/cjs/index.d.ts.map +1 -1
  210. package/dist/cjs/index.js +1 -1
  211. package/dist/cjs/index.js.map +2 -2
  212. package/dist/cjs/props/weight.prop.d.ts +1 -1
  213. package/dist/cjs/props/weight.prop.js +1 -1
  214. package/dist/cjs/props/weight.prop.js.map +2 -2
  215. package/dist/esm/components/_internal/base-button.d.ts +36 -0
  216. package/dist/esm/components/_internal/base-button.d.ts.map +1 -1
  217. package/dist/esm/components/_internal/base-button.js +1 -1
  218. package/dist/esm/components/_internal/base-button.js.map +3 -3
  219. package/dist/esm/components/_internal/base-button.props.d.ts +61 -0
  220. package/dist/esm/components/_internal/base-button.props.d.ts.map +1 -1
  221. package/dist/esm/components/_internal/base-button.props.js +1 -1
  222. package/dist/esm/components/_internal/base-button.props.js.map +3 -3
  223. package/dist/esm/components/_internal/base-checkbox.props.d.ts +6 -1
  224. package/dist/esm/components/_internal/base-checkbox.props.d.ts.map +1 -1
  225. package/dist/esm/components/_internal/base-checkbox.props.js +1 -1
  226. package/dist/esm/components/_internal/base-checkbox.props.js.map +3 -3
  227. package/dist/esm/components/_internal/base-menu.props.d.ts +8 -0
  228. package/dist/esm/components/_internal/base-menu.props.d.ts.map +1 -1
  229. package/dist/esm/components/_internal/base-menu.props.js +1 -1
  230. package/dist/esm/components/_internal/base-menu.props.js.map +3 -3
  231. package/dist/esm/components/_internal/base-radio.props.d.ts +6 -1
  232. package/dist/esm/components/_internal/base-radio.props.d.ts.map +1 -1
  233. package/dist/esm/components/_internal/base-radio.props.js +1 -1
  234. package/dist/esm/components/_internal/base-radio.props.js.map +3 -3
  235. package/dist/esm/components/accordion.d.ts +22 -0
  236. package/dist/esm/components/accordion.d.ts.map +1 -0
  237. package/dist/esm/components/accordion.js +2 -0
  238. package/dist/esm/components/accordion.js.map +7 -0
  239. package/dist/esm/components/accordion.props.d.ts +97 -0
  240. package/dist/esm/components/accordion.props.d.ts.map +1 -0
  241. package/dist/esm/components/accordion.props.js +2 -0
  242. package/dist/esm/components/accordion.props.js.map +7 -0
  243. package/dist/esm/components/alert-dialog.d.ts.map +1 -1
  244. package/dist/esm/components/alert-dialog.js +1 -1
  245. package/dist/esm/components/alert-dialog.js.map +3 -3
  246. package/dist/esm/components/alert-dialog.props.d.ts +69 -2
  247. package/dist/esm/components/alert-dialog.props.d.ts.map +1 -1
  248. package/dist/esm/components/alert-dialog.props.js +1 -1
  249. package/dist/esm/components/alert-dialog.props.js.map +3 -3
  250. package/dist/esm/components/avatar.d.ts.map +1 -1
  251. package/dist/esm/components/avatar.js +1 -1
  252. package/dist/esm/components/avatar.js.map +3 -3
  253. package/dist/esm/components/avatar.props.d.ts +9 -1
  254. package/dist/esm/components/avatar.props.d.ts.map +1 -1
  255. package/dist/esm/components/avatar.props.js +1 -1
  256. package/dist/esm/components/avatar.props.js.map +3 -3
  257. package/dist/esm/components/badge.d.ts +8 -1
  258. package/dist/esm/components/badge.d.ts.map +1 -1
  259. package/dist/esm/components/badge.js +1 -1
  260. package/dist/esm/components/badge.js.map +3 -3
  261. package/dist/esm/components/badge.props.d.ts +14 -6
  262. package/dist/esm/components/badge.props.d.ts.map +1 -1
  263. package/dist/esm/components/badge.props.js +1 -1
  264. package/dist/esm/components/badge.props.js.map +3 -3
  265. package/dist/esm/components/blockquote.props.d.ts +1 -1
  266. package/dist/esm/components/button.d.ts +53 -1
  267. package/dist/esm/components/button.d.ts.map +1 -1
  268. package/dist/esm/components/button.js +1 -1
  269. package/dist/esm/components/button.js.map +3 -3
  270. package/dist/esm/components/button.props.d.ts +17 -0
  271. package/dist/esm/components/button.props.d.ts.map +1 -1
  272. package/dist/esm/components/button.props.js.map +2 -2
  273. package/dist/esm/components/callout.d.ts +4 -0
  274. package/dist/esm/components/callout.d.ts.map +1 -1
  275. package/dist/esm/components/callout.js +1 -1
  276. package/dist/esm/components/callout.js.map +3 -3
  277. package/dist/esm/components/callout.props.d.ts +9 -1
  278. package/dist/esm/components/callout.props.d.ts.map +1 -1
  279. package/dist/esm/components/callout.props.js +1 -1
  280. package/dist/esm/components/callout.props.js.map +3 -3
  281. package/dist/esm/components/card.d.ts.map +1 -1
  282. package/dist/esm/components/card.js +1 -1
  283. package/dist/esm/components/card.js.map +3 -3
  284. package/dist/esm/components/card.props.d.ts +5 -0
  285. package/dist/esm/components/card.props.d.ts.map +1 -1
  286. package/dist/esm/components/card.props.js +1 -1
  287. package/dist/esm/components/card.props.js.map +3 -3
  288. package/dist/esm/components/checkbox-cards.d.ts.map +1 -1
  289. package/dist/esm/components/checkbox-cards.js +1 -1
  290. package/dist/esm/components/checkbox-cards.js.map +3 -3
  291. package/dist/esm/components/checkbox-cards.props.d.ts +2 -2
  292. package/dist/esm/components/checkbox-cards.props.js +1 -1
  293. package/dist/esm/components/checkbox-cards.props.js.map +2 -2
  294. package/dist/esm/components/checkbox-group.props.d.ts +6 -1
  295. package/dist/esm/components/checkbox-group.props.d.ts.map +1 -1
  296. package/dist/esm/components/checkbox.d.ts.map +1 -1
  297. package/dist/esm/components/checkbox.js +1 -1
  298. package/dist/esm/components/checkbox.js.map +3 -3
  299. package/dist/esm/components/code.js.map +1 -1
  300. package/dist/esm/components/code.props.d.ts +1 -1
  301. package/dist/esm/components/context-menu.d.ts +1 -1
  302. package/dist/esm/components/context-menu.d.ts.map +1 -1
  303. package/dist/esm/components/context-menu.js +1 -1
  304. package/dist/esm/components/context-menu.js.map +3 -3
  305. package/dist/esm/components/dialog.d.ts.map +1 -1
  306. package/dist/esm/components/dialog.js +1 -1
  307. package/dist/esm/components/dialog.js.map +3 -3
  308. package/dist/esm/components/dialog.props.d.ts +6 -1
  309. package/dist/esm/components/dialog.props.d.ts.map +1 -1
  310. package/dist/esm/components/dialog.props.js +1 -1
  311. package/dist/esm/components/dialog.props.js.map +3 -3
  312. package/dist/esm/components/dropdown-menu.d.ts +1 -1
  313. package/dist/esm/components/dropdown-menu.d.ts.map +1 -1
  314. package/dist/esm/components/dropdown-menu.js +1 -1
  315. package/dist/esm/components/dropdown-menu.js.map +3 -3
  316. package/dist/esm/components/heading.props.d.ts +1 -1
  317. package/dist/esm/components/icon-button.d.ts +79 -1
  318. package/dist/esm/components/icon-button.d.ts.map +1 -1
  319. package/dist/esm/components/icon-button.js +4 -1
  320. package/dist/esm/components/icon-button.js.map +3 -3
  321. package/dist/esm/components/image.d.ts +131 -12
  322. package/dist/esm/components/image.d.ts.map +1 -1
  323. package/dist/esm/components/image.js +1 -1
  324. package/dist/esm/components/image.js.map +3 -3
  325. package/dist/esm/components/image.props.d.ts +136 -21
  326. package/dist/esm/components/image.props.d.ts.map +1 -1
  327. package/dist/esm/components/image.props.js +1 -1
  328. package/dist/esm/components/image.props.js.map +3 -3
  329. package/dist/esm/components/index.d.ts +1 -0
  330. package/dist/esm/components/index.d.ts.map +1 -1
  331. package/dist/esm/components/index.js +1 -1
  332. package/dist/esm/components/index.js.map +3 -3
  333. package/dist/esm/components/link.props.d.ts +1 -1
  334. package/dist/esm/components/progress.props.d.ts +2 -2
  335. package/dist/esm/components/progress.props.js +1 -1
  336. package/dist/esm/components/progress.props.js.map +2 -2
  337. package/dist/esm/components/radio-cards.d.ts.map +1 -1
  338. package/dist/esm/components/radio-cards.js +1 -1
  339. package/dist/esm/components/radio-cards.js.map +3 -3
  340. package/dist/esm/components/radio-cards.props.d.ts +2 -2
  341. package/dist/esm/components/radio-cards.props.js +1 -1
  342. package/dist/esm/components/radio-cards.props.js.map +2 -2
  343. package/dist/esm/components/radio.d.ts.map +1 -1
  344. package/dist/esm/components/radio.js +1 -1
  345. package/dist/esm/components/radio.js.map +3 -3
  346. package/dist/esm/components/segmented-control.props.d.ts +3 -3
  347. package/dist/esm/components/segmented-control.props.js +1 -1
  348. package/dist/esm/components/segmented-control.props.js.map +2 -2
  349. package/dist/esm/components/select.d.ts.map +1 -1
  350. package/dist/esm/components/select.js +1 -1
  351. package/dist/esm/components/select.js.map +3 -3
  352. package/dist/esm/components/select.props.d.ts +12 -0
  353. package/dist/esm/components/select.props.d.ts.map +1 -1
  354. package/dist/esm/components/select.props.js +1 -1
  355. package/dist/esm/components/select.props.js.map +2 -2
  356. package/dist/esm/components/sidebar.d.ts +5 -0
  357. package/dist/esm/components/sidebar.d.ts.map +1 -1
  358. package/dist/esm/components/sidebar.js +1 -1
  359. package/dist/esm/components/sidebar.js.map +3 -3
  360. package/dist/esm/components/slider.d.ts +5 -0
  361. package/dist/esm/components/slider.d.ts.map +1 -1
  362. package/dist/esm/components/slider.js +1 -1
  363. package/dist/esm/components/slider.js.map +3 -3
  364. package/dist/esm/components/slider.props.d.ts +10 -2
  365. package/dist/esm/components/slider.props.d.ts.map +1 -1
  366. package/dist/esm/components/slider.props.js +1 -1
  367. package/dist/esm/components/slider.props.js.map +2 -2
  368. package/dist/esm/components/switch.d.ts.map +1 -1
  369. package/dist/esm/components/switch.js +1 -1
  370. package/dist/esm/components/switch.js.map +3 -3
  371. package/dist/esm/components/switch.props.d.ts +17 -4
  372. package/dist/esm/components/switch.props.d.ts.map +1 -1
  373. package/dist/esm/components/switch.props.js +1 -1
  374. package/dist/esm/components/switch.props.js.map +3 -3
  375. package/dist/esm/components/tab-nav.d.ts.map +1 -1
  376. package/dist/esm/components/tab-nav.js +1 -1
  377. package/dist/esm/components/tab-nav.js.map +3 -3
  378. package/dist/esm/components/tabs.d.ts.map +1 -1
  379. package/dist/esm/components/tabs.js +1 -1
  380. package/dist/esm/components/tabs.js.map +2 -2
  381. package/dist/esm/components/text-area.d.ts.map +1 -1
  382. package/dist/esm/components/text-area.js +1 -1
  383. package/dist/esm/components/text-area.js.map +3 -3
  384. package/dist/esm/components/text-area.props.d.ts +29 -0
  385. package/dist/esm/components/text-area.props.d.ts.map +1 -1
  386. package/dist/esm/components/text-area.props.js +1 -1
  387. package/dist/esm/components/text-area.props.js.map +3 -3
  388. package/dist/esm/components/text-field.d.ts.map +1 -1
  389. package/dist/esm/components/text-field.js +4 -4
  390. package/dist/esm/components/text-field.js.map +3 -3
  391. package/dist/esm/components/text-field.props.d.ts +29 -0
  392. package/dist/esm/components/text-field.props.d.ts.map +1 -1
  393. package/dist/esm/components/text-field.props.js +1 -1
  394. package/dist/esm/components/text-field.props.js.map +3 -3
  395. package/dist/esm/components/text.props.d.ts +1 -1
  396. package/dist/esm/components/theme.d.ts +3 -0
  397. package/dist/esm/components/theme.d.ts.map +1 -1
  398. package/dist/esm/components/theme.js +1 -1
  399. package/dist/esm/components/theme.js.map +3 -3
  400. package/dist/esm/components/theme.props.d.ts +14 -0
  401. package/dist/esm/components/theme.props.d.ts.map +1 -1
  402. package/dist/esm/components/theme.props.js +1 -1
  403. package/dist/esm/components/theme.props.js.map +3 -3
  404. package/dist/esm/components/toggle-button.d.ts +52 -0
  405. package/dist/esm/components/toggle-button.d.ts.map +1 -1
  406. package/dist/esm/components/toggle-button.js +1 -1
  407. package/dist/esm/components/toggle-button.js.map +3 -3
  408. package/dist/esm/components/toggle-icon-button.d.ts +84 -2
  409. package/dist/esm/components/toggle-icon-button.d.ts.map +1 -1
  410. package/dist/esm/components/toggle-icon-button.js +1 -1
  411. package/dist/esm/components/toggle-icon-button.js.map +3 -3
  412. package/dist/esm/helpers/extract-margin-props.d.ts +7 -7
  413. package/dist/esm/hooks/index.d.ts +2 -0
  414. package/dist/esm/hooks/index.d.ts.map +1 -0
  415. package/dist/esm/hooks/index.js +2 -0
  416. package/dist/esm/hooks/index.js.map +7 -0
  417. package/dist/esm/hooks/use-live-announcer.d.ts +6 -0
  418. package/dist/esm/hooks/use-live-announcer.d.ts.map +1 -0
  419. package/dist/esm/hooks/use-live-announcer.js +10 -0
  420. package/dist/esm/hooks/use-live-announcer.js.map +7 -0
  421. package/dist/esm/index.d.ts +1 -0
  422. package/dist/esm/index.d.ts.map +1 -1
  423. package/dist/esm/index.js +1 -1
  424. package/dist/esm/index.js.map +2 -2
  425. package/dist/esm/props/weight.prop.d.ts +1 -1
  426. package/dist/esm/props/weight.prop.js +1 -1
  427. package/dist/esm/props/weight.prop.js.map +2 -2
  428. package/layout/components.css +1 -0
  429. package/layout.css +1 -0
  430. package/package.json +2 -1
  431. package/src/components/_internal/base-button.css +483 -284
  432. package/src/components/_internal/base-button.props.ts +87 -0
  433. package/src/components/_internal/base-button.tsx +127 -10
  434. package/src/components/_internal/base-card.css +866 -83
  435. package/src/components/_internal/base-checkbox.css +252 -52
  436. package/src/components/_internal/base-checkbox.props.ts +4 -1
  437. package/src/components/_internal/base-dialog.css +39 -8
  438. package/src/components/_internal/base-menu.css +55 -32
  439. package/src/components/_internal/base-menu.props.ts +10 -0
  440. package/src/components/_internal/base-radio.css +222 -52
  441. package/src/components/_internal/base-radio.props.ts +4 -1
  442. package/src/components/_internal/base-sidebar-menu.css +223 -0
  443. package/src/components/_internal/base-sidebar.css +141 -0
  444. package/src/components/_internal/base-tab-list.css +16 -0
  445. package/src/components/accordion.css +657 -0
  446. package/src/components/accordion.props.tsx +90 -0
  447. package/src/components/accordion.tsx +209 -0
  448. package/src/components/alert-dialog.props.tsx +22 -2
  449. package/src/components/alert-dialog.tsx +94 -3
  450. package/src/components/avatar.css +294 -152
  451. package/src/components/avatar.props.tsx +7 -1
  452. package/src/components/avatar.tsx +12 -2
  453. package/src/components/badge.css +160 -138
  454. package/src/components/badge.props.tsx +10 -3
  455. package/src/components/badge.tsx +71 -9
  456. package/src/components/button.css +88 -0
  457. package/src/components/button.props.tsx +17 -0
  458. package/src/components/button.tsx +107 -5
  459. package/src/components/callout.css +122 -35
  460. package/src/components/callout.props.tsx +7 -1
  461. package/src/components/callout.tsx +32 -9
  462. package/src/components/card.css +0 -597
  463. package/src/components/card.props.tsx +3 -0
  464. package/src/components/card.tsx +4 -2
  465. package/src/components/checkbox-cards.css +27 -104
  466. package/src/components/checkbox-cards.props.tsx +2 -2
  467. package/src/components/checkbox-cards.tsx +21 -3
  468. package/src/components/checkbox.tsx +2 -0
  469. package/src/components/code.css +1 -1
  470. package/src/components/code.tsx +1 -1
  471. package/src/components/container.css +1 -0
  472. package/src/components/context-menu.tsx +54 -12
  473. package/src/components/dialog.props.tsx +3 -0
  474. package/src/components/dialog.tsx +93 -3
  475. package/src/components/dropdown-menu.tsx +49 -12
  476. package/src/components/icon-button.css +73 -4
  477. package/src/components/icon-button.tsx +125 -19
  478. package/src/components/image.css +160 -91
  479. package/src/components/image.props.ts +152 -15
  480. package/src/components/image.tsx +290 -247
  481. package/src/components/index.css +1 -0
  482. package/src/components/index.tsx +1 -0
  483. package/src/components/kbd.css +23 -44
  484. package/src/components/progress.css +130 -149
  485. package/src/components/progress.props.tsx +2 -2
  486. package/src/components/radio-cards.css +23 -113
  487. package/src/components/radio-cards.props.tsx +2 -2
  488. package/src/components/radio-cards.tsx +45 -18
  489. package/src/components/radio.tsx +4 -3
  490. package/src/components/scroll-area.css +1 -1
  491. package/src/components/segmented-control.css +83 -64
  492. package/src/components/segmented-control.props.tsx +3 -3
  493. package/src/components/select.css +502 -224
  494. package/src/components/select.props.tsx +8 -0
  495. package/src/components/select.tsx +45 -2
  496. package/src/components/sidebar.css +186 -630
  497. package/src/components/sidebar.tsx +61 -5
  498. package/src/components/slider.css +228 -88
  499. package/src/components/slider.props.tsx +6 -2
  500. package/src/components/slider.tsx +201 -24
  501. package/src/components/spinner.css +12 -0
  502. package/src/components/switch.css +135 -216
  503. package/src/components/switch.props.tsx +16 -4
  504. package/src/components/switch.tsx +5 -3
  505. package/src/components/tab-nav.tsx +6 -3
  506. package/src/components/tabs.tsx +2 -0
  507. package/src/components/text-area.css +222 -140
  508. package/src/components/text-area.props.tsx +18 -1
  509. package/src/components/text-area.tsx +58 -7
  510. package/src/components/text-field.css +214 -131
  511. package/src/components/text-field.props.tsx +17 -0
  512. package/src/components/text-field.tsx +79 -28
  513. package/src/components/theme.props.tsx +12 -0
  514. package/src/components/theme.tsx +31 -1
  515. package/src/components/toggle-button.tsx +102 -3
  516. package/src/components/toggle-icon-button.tsx +150 -7
  517. package/src/components/tooltip.css +3 -3
  518. package/src/hooks/index.ts +1 -0
  519. package/src/hooks/use-live-announcer.ts +52 -0
  520. package/src/index.ts +1 -0
  521. package/src/props/weight.prop.ts +1 -1
  522. package/src/styles/fonts.css +27 -13
  523. package/src/styles/index.css +1 -1
  524. package/src/styles/tokens/base.css +2 -0
  525. package/src/styles/tokens/blur.css +32 -0
  526. package/src/styles/tokens/color.css +9 -9
  527. package/src/styles/tokens/constants.css +88 -140
  528. package/src/styles/tokens/index.css +2 -0
  529. package/src/styles/tokens/opacity.css +32 -0
  530. package/src/styles/tokens/radius.css +6 -10
  531. package/src/styles/tokens/shadow.css +25 -25
  532. package/src/styles/tokens/transition.css +49 -13
  533. package/src/styles/tokens/typography.css +7 -3
  534. package/src/styles/utilities/font-weight.css +16 -0
  535. package/styles.css +11129 -8945
  536. package/tokens/base.css +127 -49
  537. package/tokens.css +158 -114
  538. package/utilities.css +72 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/slider.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Slider as SliderPrimitive } from 'radix-ui';\n\nimport { sliderPropDefs } from './slider.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype SliderElement = React.ElementRef<typeof SliderPrimitive.Root>;\ntype SliderOwnProps = GetPropDefTypes<typeof sliderPropDefs>;\ninterface SliderProps\n extends ComponentPropsWithout<\n typeof SliderPrimitive.Root,\n 'asChild' | 'color' | 'children' | 'defaultChecked'\n >,\n MarginProps,\n SliderOwnProps {}\nconst Slider = React.forwardRef<SliderElement, SliderProps>((props, forwardedRef) => {\n const { className, color, radius, tabIndex, ...sliderProps } = extractProps(\n props,\n sliderPropDefs,\n marginPropDefs\n );\n return (\n <SliderPrimitive.Root\n data-accent-color={color}\n data-radius={radius}\n ref={forwardedRef}\n {...sliderProps}\n asChild={false}\n className={classNames('rt-SliderRoot', className)}\n >\n <SliderPrimitive.Track className=\"rt-SliderTrack\">\n <SliderPrimitive.Range\n className={classNames('rt-SliderRange', { 'rt-high-contrast': props.highContrast })}\n data-inverted={sliderProps.inverted ? '' : undefined}\n />\n </SliderPrimitive.Track>\n {(sliderProps.value ?? sliderProps.defaultValue ?? []).map((value, index) => (\n <SliderPrimitive.Thumb\n key={index}\n className=\"rt-SliderThumb\"\n {...(tabIndex !== undefined ? { tabIndex } : undefined)}\n />\n ))}\n </SliderPrimitive.Root>\n );\n});\nSlider.displayName = 'Slider';\n\nexport { Slider };\nexport type { SliderProps };\n"],
5
- "mappings": "AAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,UAAUC,MAAuB,WAE1C,OAAS,kBAAAC,MAAsB,oBAC/B,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,kBAAAC,MAAsB,2BAe/B,MAAMC,EAASN,EAAM,WAAuC,CAACO,EAAOC,IAAiB,CACnF,KAAM,CAAE,UAAAC,EAAW,MAAAC,EAAO,OAAAC,EAAQ,SAAAC,EAAU,GAAGC,CAAY,EAAIT,EAC7DG,EACAJ,EACAE,CACF,EACA,OACEL,EAAA,cAACE,EAAgB,KAAhB,CACC,oBAAmBQ,EACnB,cAAaC,EACb,IAAKH,EACJ,GAAGK,EACJ,QAAS,GACT,UAAWZ,EAAW,gBAAiBQ,CAAS,GAEhDT,EAAA,cAACE,EAAgB,MAAhB,CAAsB,UAAU,kBAC/BF,EAAA,cAACE,EAAgB,MAAhB,CACC,UAAWD,EAAW,iBAAkB,CAAE,mBAAoBM,EAAM,YAAa,CAAC,EAClF,gBAAeM,EAAY,SAAW,GAAK,OAC7C,CACF,GACEA,EAAY,OAASA,EAAY,cAAgB,CAAC,GAAG,IAAI,CAACC,EAAOC,IACjEf,EAAA,cAACE,EAAgB,MAAhB,CACC,IAAKa,EACL,UAAU,iBACT,GAAIH,IAAa,OAAY,CAAE,SAAAA,CAAS,EAAI,OAC/C,CACD,CACH,CAEJ,CAAC,EACDN,EAAO,YAAc",
6
- "names": ["React", "classNames", "SliderPrimitive", "sliderPropDefs", "extractProps", "marginPropDefs", "Slider", "props", "forwardedRef", "className", "color", "radius", "tabIndex", "sliderProps", "value", "index"]
4
+ "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Slider as SliderPrimitive } from 'radix-ui';\n\nimport { sliderPropDefs } from './slider.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype SliderElement = React.ElementRef<typeof SliderPrimitive.Root>;\ntype SliderOwnProps = GetPropDefTypes<typeof sliderPropDefs>;\ninterface SliderProps\n extends ComponentPropsWithout<\n typeof SliderPrimitive.Root,\n 'asChild' | 'color' | 'children' | 'defaultChecked'\n >,\n MarginProps,\n SliderOwnProps {\n ticks?: Array<{ value: number; label?: string }>;\n unit?: string;\n}\nconst Slider = React.forwardRef<SliderElement, SliderProps>((props, forwardedRef) => {\n const { className, color, radius, tabIndex, ...sliderProps } = extractProps(\n props,\n sliderPropDefs,\n marginPropDefs,\n );\n const { ticks, showTickLabels, snapToTicks, unit } = props;\n\n const min = sliderProps.min ?? 0;\n const max = sliderProps.max ?? 100;\n\n // Current value for accessibility\n const currentValue = sliderProps.value ?? sliderProps.defaultValue ?? [min];\n const isRange = Array.isArray(currentValue) && currentValue.length > 1;\n\n // For snapping to ticks, we need to handle this differently\n // Radix slider doesn't support arbitrary step values, so we'll handle snapping in the onValueChange\n const step = sliderProps.step;\n\n // Optimized snap-to-ticks with memoized sorted ticks\n const sortedTicks = React.useMemo(\n () => (ticks ? [...ticks].sort((a, b) => a.value - b.value) : []),\n [ticks],\n );\n\n // Function to snap value to nearest tick (optimized)\n const snapToNearestTick = React.useCallback(\n (value: number): number => {\n if (!snapToTicks || !sortedTicks.length) return value;\n\n // Binary search for closest tick\n let left = 0;\n let right = sortedTicks.length - 1;\n\n if (value <= sortedTicks[left].value) return sortedTicks[left].value;\n if (value >= sortedTicks[right].value) return sortedTicks[right].value;\n\n while (left <= right) {\n const mid = Math.floor((left + right) / 2);\n if (sortedTicks[mid].value === value) return value;\n\n if (sortedTicks[mid].value < value) {\n left = mid + 1;\n } else {\n right = mid - 1;\n }\n }\n\n // Find closest between left and right\n const leftDistance = Math.abs(value - sortedTicks[right].value);\n const rightDistance = Math.abs(value - sortedTicks[left].value);\n\n return leftDistance <= rightDistance ? sortedTicks[right].value : sortedTicks[left].value;\n },\n [snapToTicks, sortedTicks],\n );\n\n // Format value text for accessibility\n const formatValueText = React.useCallback(\n (values: number[]): string => {\n const formatValue = (val: number) => (unit ? `${val} ${unit}` : val.toString());\n\n if (values.length === 1) {\n return `${formatValue(values[0])} out of ${formatValue(max)}`;\n } else if (values.length === 2) {\n return `${formatValue(values[0])} to ${formatValue(values[1])} out of ${formatValue(max)}`;\n } else {\n return `${values.map(formatValue).join(', ')} out of ${formatValue(max)}`;\n }\n },\n [unit, max],\n );\n\n // Memoize tick elements for performance\n const tickElements = React.useMemo(() => {\n if (!ticks) return null;\n\n return ticks.map((tick, index) => ({\n ...tick,\n percentage: ((tick.value - min) / (max - min)) * 100,\n index,\n }));\n }, [ticks, min, max]);\n\n // Live region state for accessibility announcements\n const [announceValue, setAnnounceValue] = React.useState<string>('');\n\n const { onValueChange } = sliderProps;\n // Handle value changes with snapping\n const handleValueChange = React.useCallback(\n (newValue: number[]) => {\n const finalValue =\n snapToTicks && ticks ? newValue.map((v) => snapToNearestTick(v)) : newValue;\n\n // Update live region for screen readers\n const valueText = formatValueText(finalValue);\n setAnnounceValue(valueText);\n\n onValueChange?.(finalValue);\n },\n [snapToTicks, ticks, snapToNearestTick, formatValueText, onValueChange],\n );\n\n // Clear announcement after a delay to prevent spam\n React.useEffect(() => {\n if (announceValue) {\n const timer = setTimeout(() => setAnnounceValue(''), 1000);\n return () => clearTimeout(timer);\n }\n }, [announceValue]);\n\n return (\n <div className=\"rt-SliderContainer\">\n {/* Live region for screen reader announcements */}\n <div\n aria-live=\"polite\"\n aria-atomic=\"true\"\n className=\"sr-only\"\n style={{\n position: 'absolute',\n left: '-10000px',\n width: '1px',\n height: '1px',\n overflow: 'hidden',\n }}\n >\n {announceValue}\n </div>\n\n <SliderPrimitive.Root\n data-accent-color={color}\n data-radius={radius}\n ref={forwardedRef}\n {...sliderProps}\n step={step}\n onValueChange={handleValueChange}\n asChild={false}\n className={classNames('rt-SliderRoot', className)}\n // Essential ARIA attributes for WCAG 2.2 AA compliance\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={Array.isArray(currentValue) ? currentValue[0] : (currentValue as number)}\n aria-valuetext={formatValueText(currentValue as number[])}\n aria-label={props['aria-label'] || `${isRange ? 'Range' : 'Value'} slider`}\n >\n <SliderPrimitive.Track className=\"rt-SliderTrack\">\n <SliderPrimitive.Range\n className={classNames('rt-SliderRange', { 'rt-high-contrast': props.highContrast })}\n data-inverted={sliderProps.inverted ? '' : undefined}\n />\n </SliderPrimitive.Track>\n {(sliderProps.value ?? sliderProps.defaultValue ?? []).map((value, index) => (\n <SliderPrimitive.Thumb\n key={index}\n className=\"rt-SliderThumb\"\n {...(tabIndex !== undefined ? { tabIndex } : undefined)}\n aria-label={\n isRange\n ? `${index === 0 ? 'Minimum' : index === 1 ? 'Maximum' : `Thumb ${index + 1}`} value: ${unit ? `${value} ${unit}` : value}`\n : `Slider value: ${unit ? `${value} ${unit}` : value}`\n }\n aria-valuetext={unit ? `${value} ${unit}` : value.toString()}\n />\n ))}\n </SliderPrimitive.Root>\n {tickElements && (\n <div className=\"rt-SliderTicks\" role=\"group\" aria-label=\"Slider tick marks\">\n {tickElements.map((tick) => {\n return (\n <button\n key={tick.index}\n className=\"rt-SliderTick\"\n style={{\n left: `${tick.percentage}%`,\n transform: 'translateX(-50%)',\n }}\n onClick={() => {\n const currentValues = sliderProps.value ?? sliderProps.defaultValue ?? [min];\n const newValue = Array.isArray(currentValues)\n ? currentValues.map(() => tick.value)\n : [tick.value];\n\n handleValueChange(newValue);\n }}\n aria-label={`Set to ${tick.label || (unit ? `${tick.value} ${unit}` : tick.value)}`}\n aria-describedby={tick.label ? undefined : `tick-${tick.index}-value`}\n type=\"button\"\n >\n <div className=\"rt-SliderTickMark\" />\n {tick.label && showTickLabels !== false && (\n <div className=\"rt-SliderTickLabel\">{tick.label}</div>\n )}\n {!tick.label && (\n <span id={`tick-${tick.index}-value`} className=\"sr-only\">\n {unit ? `${tick.value} ${unit}` : tick.value}\n </span>\n )}\n </button>\n );\n })}\n </div>\n )}\n </div>\n );\n});\nSlider.displayName = 'Slider';\n\nexport { Slider };\nexport type { SliderProps };\n"],
5
+ "mappings": "AAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,UAAUC,MAAuB,WAE1C,OAAS,kBAAAC,MAAsB,oBAC/B,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,kBAAAC,MAAsB,2BAkB/B,MAAMC,EAASN,EAAM,WAAuC,CAACO,EAAOC,IAAiB,CACnF,KAAM,CAAE,UAAAC,EAAW,MAAAC,EAAO,OAAAC,EAAQ,SAAAC,EAAU,GAAGC,CAAY,EAAIT,EAC7DG,EACAJ,EACAE,CACF,EACM,CAAE,MAAAS,EAAO,eAAAC,EAAgB,YAAAC,EAAa,KAAAC,CAAK,EAAIV,EAE/CW,EAAML,EAAY,KAAO,EACzBM,EAAMN,EAAY,KAAO,IAGzBO,EAAeP,EAAY,OAASA,EAAY,cAAgB,CAACK,CAAG,EACpEG,EAAU,MAAM,QAAQD,CAAY,GAAKA,EAAa,OAAS,EAI/DE,EAAOT,EAAY,KAGnBU,EAAcvB,EAAM,QACxB,IAAOc,EAAQ,CAAC,GAAGA,CAAK,EAAE,KAAK,CAACU,EAAGC,IAAMD,EAAE,MAAQC,EAAE,KAAK,EAAI,CAAC,EAC/D,CAACX,CAAK,CACR,EAGMY,EAAoB1B,EAAM,YAC7B2B,GAA0B,CACzB,GAAI,CAACX,GAAe,CAACO,EAAY,OAAQ,OAAOI,EAGhD,IAAIC,EAAO,EACPC,EAAQN,EAAY,OAAS,EAEjC,GAAII,GAASJ,EAAYK,CAAI,EAAE,MAAO,OAAOL,EAAYK,CAAI,EAAE,MAC/D,GAAID,GAASJ,EAAYM,CAAK,EAAE,MAAO,OAAON,EAAYM,CAAK,EAAE,MAEjE,KAAOD,GAAQC,GAAO,CACpB,MAAMC,EAAM,KAAK,OAAOF,EAAOC,GAAS,CAAC,EACzC,GAAIN,EAAYO,CAAG,EAAE,QAAUH,EAAO,OAAOA,EAEzCJ,EAAYO,CAAG,EAAE,MAAQH,EAC3BC,EAAOE,EAAM,EAEbD,EAAQC,EAAM,CAElB,CAGA,MAAMC,EAAe,KAAK,IAAIJ,EAAQJ,EAAYM,CAAK,EAAE,KAAK,EACxDG,EAAgB,KAAK,IAAIL,EAAQJ,EAAYK,CAAI,EAAE,KAAK,EAE9D,OAAOG,GAAgBC,EAAgBT,EAAYM,CAAK,EAAE,MAAQN,EAAYK,CAAI,EAAE,KACtF,EACA,CAACZ,EAAaO,CAAW,CAC3B,EAGMU,EAAkBjC,EAAM,YAC3BkC,GAA6B,CAC5B,MAAMC,EAAeC,GAAiBnB,EAAO,GAAGmB,CAAG,IAAInB,CAAI,GAAKmB,EAAI,SAAS,EAE7E,OAAIF,EAAO,SAAW,EACb,GAAGC,EAAYD,EAAO,CAAC,CAAC,CAAC,WAAWC,EAAYhB,CAAG,CAAC,GAClDe,EAAO,SAAW,EACpB,GAAGC,EAAYD,EAAO,CAAC,CAAC,CAAC,OAAOC,EAAYD,EAAO,CAAC,CAAC,CAAC,WAAWC,EAAYhB,CAAG,CAAC,GAEjF,GAAGe,EAAO,IAAIC,CAAW,EAAE,KAAK,IAAI,CAAC,WAAWA,EAAYhB,CAAG,CAAC,EAE3E,EACA,CAACF,EAAME,CAAG,CACZ,EAGMkB,EAAerC,EAAM,QAAQ,IAC5Bc,EAEEA,EAAM,IAAI,CAACwB,EAAMC,KAAW,CACjC,GAAGD,EACH,YAAcA,EAAK,MAAQpB,IAAQC,EAAMD,GAAQ,IACjD,MAAAqB,CACF,EAAE,EANiB,KAOlB,CAACzB,EAAOI,EAAKC,CAAG,CAAC,EAGd,CAACqB,EAAeC,CAAgB,EAAIzC,EAAM,SAAiB,EAAE,EAE7D,CAAE,cAAA0C,CAAc,EAAI7B,EAEpB8B,EAAoB3C,EAAM,YAC7B4C,GAAuB,CACtB,MAAMC,EACJ7B,GAAeF,EAAQ8B,EAAS,IAAK,GAAMlB,EAAkB,CAAC,CAAC,EAAIkB,EAG/DE,EAAYb,EAAgBY,CAAU,EAC5CJ,EAAiBK,CAAS,EAE1BJ,IAAgBG,CAAU,CAC5B,EACA,CAAC7B,EAAaF,EAAOY,EAAmBO,EAAiBS,CAAa,CACxE,EAGA,OAAA1C,EAAM,UAAU,IAAM,CACpB,GAAIwC,EAAe,CACjB,MAAMO,EAAQ,WAAW,IAAMN,EAAiB,EAAE,EAAG,GAAI,EACzD,MAAO,IAAM,aAAaM,CAAK,CACjC,CACF,EAAG,CAACP,CAAa,CAAC,EAGhBxC,EAAA,cAAC,OAAI,UAAU,sBAEbA,EAAA,cAAC,OACC,YAAU,SACV,cAAY,OACZ,UAAU,UACV,MAAO,CACL,SAAU,WACV,KAAM,WACN,MAAO,MACP,OAAQ,MACR,SAAU,QACZ,GAECwC,CACH,EAEAxC,EAAA,cAACE,EAAgB,KAAhB,CACC,oBAAmBQ,EACnB,cAAaC,EACb,IAAKH,EACJ,GAAGK,EACJ,KAAMS,EACN,cAAeqB,EACf,QAAS,GACT,UAAW1C,EAAW,gBAAiBQ,CAAS,EAEhD,gBAAeS,EACf,gBAAeC,EACf,gBAAe,MAAM,QAAQC,CAAY,EAAIA,EAAa,CAAC,EAAKA,EAChE,iBAAgBa,EAAgBb,CAAwB,EACxD,aAAYb,EAAM,YAAY,GAAK,GAAGc,EAAU,QAAU,OAAO,WAEjErB,EAAA,cAACE,EAAgB,MAAhB,CAAsB,UAAU,kBAC/BF,EAAA,cAACE,EAAgB,MAAhB,CACC,UAAWD,EAAW,iBAAkB,CAAE,mBAAoBM,EAAM,YAAa,CAAC,EAClF,gBAAeM,EAAY,SAAW,GAAK,OAC7C,CACF,GACEA,EAAY,OAASA,EAAY,cAAgB,CAAC,GAAG,IAAI,CAACc,EAAOY,IACjEvC,EAAA,cAACE,EAAgB,MAAhB,CACC,IAAKqC,EACL,UAAU,iBACT,GAAI3B,IAAa,OAAY,CAAE,SAAAA,CAAS,EAAI,OAC7C,aACES,EACI,GAAGkB,IAAU,EAAI,UAAYA,IAAU,EAAI,UAAY,SAASA,EAAQ,CAAC,EAAE,WAAWtB,EAAO,GAAGU,CAAK,IAAIV,CAAI,GAAKU,CAAK,GACvH,iBAAiBV,EAAO,GAAGU,CAAK,IAAIV,CAAI,GAAKU,CAAK,GAExD,iBAAgBV,EAAO,GAAGU,CAAK,IAAIV,CAAI,GAAKU,EAAM,SAAS,EAC7D,CACD,CACH,EACCU,GACCrC,EAAA,cAAC,OAAI,UAAU,iBAAiB,KAAK,QAAQ,aAAW,qBACrDqC,EAAa,IAAKC,GAEftC,EAAA,cAAC,UACC,IAAKsC,EAAK,MACV,UAAU,gBACV,MAAO,CACL,KAAM,GAAGA,EAAK,UAAU,IACxB,UAAW,kBACb,EACA,QAAS,IAAM,CACb,MAAMU,EAAgBnC,EAAY,OAASA,EAAY,cAAgB,CAACK,CAAG,EACrE0B,EAAW,MAAM,QAAQI,CAAa,EACxCA,EAAc,IAAI,IAAMV,EAAK,KAAK,EAClC,CAACA,EAAK,KAAK,EAEfK,EAAkBC,CAAQ,CAC5B,EACA,aAAY,UAAUN,EAAK,QAAUrB,EAAO,GAAGqB,EAAK,KAAK,IAAIrB,CAAI,GAAKqB,EAAK,MAAM,GACjF,mBAAkBA,EAAK,MAAQ,OAAY,QAAQA,EAAK,KAAK,SAC7D,KAAK,UAELtC,EAAA,cAAC,OAAI,UAAU,oBAAoB,EAClCsC,EAAK,OAASvB,IAAmB,IAChCf,EAAA,cAAC,OAAI,UAAU,sBAAsBsC,EAAK,KAAM,EAEjD,CAACA,EAAK,OACLtC,EAAA,cAAC,QAAK,GAAI,QAAQsC,EAAK,KAAK,SAAU,UAAU,WAC7CrB,EAAO,GAAGqB,EAAK,KAAK,IAAIrB,CAAI,GAAKqB,EAAK,KACzC,CAEJ,CAEH,CACH,CAEJ,CAEJ,CAAC,EACDhC,EAAO,YAAc",
6
+ "names": ["React", "classNames", "SliderPrimitive", "sliderPropDefs", "extractProps", "marginPropDefs", "Slider", "props", "forwardedRef", "className", "color", "radius", "tabIndex", "sliderProps", "ticks", "showTickLabels", "snapToTicks", "unit", "min", "max", "currentValue", "isRange", "step", "sortedTicks", "a", "b", "snapToNearestTick", "value", "left", "right", "mid", "leftDistance", "rightDistance", "formatValueText", "values", "formatValue", "val", "tickElements", "tick", "index", "announceValue", "setAnnounceValue", "onValueChange", "handleValueChange", "newValue", "finalValue", "valueText", "timer", "currentValues"]
7
7
  }
@@ -17,16 +17,24 @@ declare const sliderPropDefs: {
17
17
  size: {
18
18
  type: "enum";
19
19
  className: string;
20
- values: readonly ["1", "2", "3"];
20
+ values: readonly ["1", "2", "3", "4"];
21
21
  default: "2";
22
22
  responsive: true;
23
23
  };
24
24
  variant: {
25
25
  type: "enum";
26
26
  className: string;
27
- values: readonly ["classic", "surface", "soft"];
27
+ values: readonly ["surface", "soft", "outline"];
28
28
  default: "surface";
29
29
  };
30
+ showTickLabels: {
31
+ type: "boolean";
32
+ className: string;
33
+ };
34
+ snapToTicks: {
35
+ type: "boolean";
36
+ className: string;
37
+ };
30
38
  };
31
39
  export { sliderPropDefs };
32
40
  //# sourceMappingURL=slider.props.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slider.props.d.ts","sourceRoot":"","sources":["../../../src/components/slider.props.tsx"],"names":[],"mappings":"AASA,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"slider.props.d.ts","sourceRoot":"","sources":["../../../src/components/slider.props.tsx"],"names":[],"mappings":"AASA,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAanB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import{colorPropDef as s}from"../props/color.prop.js";import{highContrastPropDef as e}from"../props/high-contrast.prop.js";import{radiusPropDef as r}from"../props/radius.prop.js";const o=["1","2","3"],t=["classic","surface","soft"],a={size:{type:"enum",className:"rt-r-size",values:o,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:t,default:"surface"},...s,...e,...r};export{a as sliderPropDefs};
1
+ import{colorPropDef as s}from"../props/color.prop.js";import{highContrastPropDef as e}from"../props/high-contrast.prop.js";import{radiusPropDef as o}from"../props/radius.prop.js";const r=["1","2","3","4"],a=["surface","soft","outline"],t={size:{type:"enum",className:"rt-r-size",values:r,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:a,default:"surface"},showTickLabels:{type:"boolean",className:"rt-show-tick-labels"},snapToTicks:{type:"boolean",className:"rt-snap-to-ticks"},...s,...e,...o};export{t as sliderPropDefs};
2
2
  //# sourceMappingURL=slider.props.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/slider.props.tsx"],
4
- "sourcesContent": ["import { colorPropDef } from '../props/color.prop.js';\nimport { highContrastPropDef } from '../props/high-contrast.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3'] as const;\nconst variants = ['classic', 'surface', 'soft'] as const;\n\nconst sliderPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'surface' },\n ...colorPropDef,\n ...highContrastPropDef,\n ...radiusPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n};\n\nexport { sliderPropDefs };\n"],
5
- "mappings": "AAAA,OAAS,gBAAAA,MAAoB,yBAC7B,OAAS,uBAAAC,MAA2B,iCACpC,OAAS,iBAAAC,MAAqB,0BAI9B,MAAMC,EAAQ,CAAC,IAAK,IAAK,GAAG,EACtBC,EAAW,CAAC,UAAW,UAAW,MAAM,EAExCC,EAAiB,CACrB,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQF,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,SAAU,EACvF,GAAGJ,EACH,GAAGC,EACH,GAAGC,CACL",
4
+ "sourcesContent": ["import { colorPropDef } from '../props/color.prop.js';\nimport { highContrastPropDef } from '../props/high-contrast.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\nconst variants = ['surface', 'soft', 'outline'] as const;\n\nconst sliderPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'surface' },\n showTickLabels: { type: 'boolean', className: 'rt-show-tick-labels' },\n snapToTicks: { type: 'boolean', className: 'rt-snap-to-ticks' },\n ...colorPropDef,\n ...highContrastPropDef,\n ...radiusPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n showTickLabels: PropDef<boolean>;\n snapToTicks: PropDef<boolean>;\n};\n\nexport { sliderPropDefs };\n"],
5
+ "mappings": "AAAA,OAAS,gBAAAA,MAAoB,yBAC7B,OAAS,uBAAAC,MAA2B,iCACpC,OAAS,iBAAAC,MAAqB,0BAI9B,MAAMC,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAC3BC,EAAW,CAAC,UAAW,OAAQ,SAAS,EAExCC,EAAiB,CACrB,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQF,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,SAAU,EACvF,eAAgB,CAAE,KAAM,UAAW,UAAW,qBAAsB,EACpE,YAAa,CAAE,KAAM,UAAW,UAAW,kBAAmB,EAC9D,GAAGJ,EACH,GAAGC,EACH,GAAGC,CACL",
6
6
  "names": ["colorPropDef", "highContrastPropDef", "radiusPropDef", "sizes", "variants", "sliderPropDefs"]
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../src/components/switch.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,UAAU,CAAC;AAIrD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAG3E,KAAK,cAAc,GAAG,eAAe,CAAC,OAAO,cAAc,CAAC,CAAC;AAC7D,UAAU,WACR,SAAQ,qBAAqB,CACzB,OAAO,eAAe,CAAC,IAAI,EAC3B,SAAS,GAAG,OAAO,GAAG,cAAc,GAAG,UAAU,CAClD,EACD,WAAW,EACX,cAAc;CAAG;AACrB,QAAA,MAAM,MAAM,uFAoBV,CAAC;AAGH,OAAO,EAAE,MAAM,EAAE,CAAC;AAClB,YAAY,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../src/components/switch.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,UAAU,CAAC;AAIrD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAG3E,KAAK,cAAc,GAAG,eAAe,CAAC,OAAO,cAAc,CAAC,CAAC;AAC7D,UAAU,WACR,SAAQ,qBAAqB,CACzB,OAAO,eAAe,CAAC,IAAI,EAC3B,SAAS,GAAG,OAAO,GAAG,cAAc,GAAG,UAAU,CAClD,EACD,WAAW,EACX,cAAc;CAAG;AACrB,QAAA,MAAM,MAAM,uFAsBV,CAAC;AAGH,OAAO,EAAE,MAAM,EAAE,CAAC;AAClB,YAAY,EAAE,WAAW,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import*as t from"react";import r from"classnames";import{Switch as e}from"radix-ui";import{extractProps as h}from"../helpers/extract-props.js";import{marginPropDefs as f}from"../props/margin.props.js";import{switchPropDefs as n}from"./switch.props.js";const i=t.forwardRef((o,p)=>{const{className:s,color:m,radius:c,...a}=h(o,n,f);return t.createElement(e.Root,{"data-accent-color":m,"data-radius":c,...a,asChild:!1,ref:p,className:r("rt-reset","rt-SwitchRoot",s)},t.createElement(e.Thumb,{className:r("rt-SwitchThumb",{"rt-high-contrast":o.highContrast})}))});i.displayName="Switch";export{i as Switch};
1
+ import*as t from"react";import e from"classnames";import{Switch as i}from"radix-ui";import{extractProps as f}from"../helpers/extract-props.js";import{marginPropDefs as l}from"../props/margin.props.js";import{switchPropDefs as w}from"./switch.props.js";const p=t.forwardRef((o,s)=>{const{className:a,color:c,panelBackground:m,material:h,...n}=f(o,w,l),r=h||m;return t.createElement(i.Root,{"data-accent-color":c,"data-panel-background":r,"data-material":r,...n,asChild:!1,ref:s,className:e("rt-reset","rt-SwitchRoot",a)},t.createElement(i.Thumb,{className:e("rt-SwitchThumb",{"rt-high-contrast":o.highContrast})}))});p.displayName="Switch";export{p as Switch};
2
2
  //# sourceMappingURL=switch.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/switch.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Switch as SwitchPrimitive } from 'radix-ui';\n\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { switchPropDefs } from './switch.props.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\nimport type { ComponentPropsWithout } from '../helpers/component-props.js';\n\ntype SwitchElement = React.ElementRef<typeof SwitchPrimitive.Root>;\ntype SwitchOwnProps = GetPropDefTypes<typeof switchPropDefs>;\ninterface SwitchProps\n extends ComponentPropsWithout<\n typeof SwitchPrimitive.Root,\n 'asChild' | 'color' | 'defaultValue' | 'children'\n >,\n MarginProps,\n SwitchOwnProps {}\nconst Switch = React.forwardRef<SwitchElement, SwitchProps>((props, forwardedRef) => {\n const { className, color, radius, ...switchProps } = extractProps(\n props,\n switchPropDefs,\n marginPropDefs\n );\n return (\n <SwitchPrimitive.Root\n data-accent-color={color}\n data-radius={radius}\n {...switchProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-SwitchRoot', className)}\n >\n <SwitchPrimitive.Thumb\n className={classNames('rt-SwitchThumb', { 'rt-high-contrast': props.highContrast })}\n />\n </SwitchPrimitive.Root>\n );\n});\nSwitch.displayName = 'Switch';\n\nexport { Switch };\nexport type { SwitchProps };\n"],
5
- "mappings": "AAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,UAAUC,MAAuB,WAE1C,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,kBAAAC,MAAsB,2BAC/B,OAAS,kBAAAC,MAAsB,oBAe/B,MAAMC,EAASN,EAAM,WAAuC,CAACO,EAAOC,IAAiB,CACnF,KAAM,CAAE,UAAAC,EAAW,MAAAC,EAAO,OAAAC,EAAQ,GAAGC,CAAY,EAAIT,EACnDI,EACAF,EACAD,CACF,EACA,OACEJ,EAAA,cAACE,EAAgB,KAAhB,CACC,oBAAmBQ,EACnB,cAAaC,EACZ,GAAGC,EACJ,QAAS,GACT,IAAKJ,EACL,UAAWP,EAAW,WAAY,gBAAiBQ,CAAS,GAE5DT,EAAA,cAACE,EAAgB,MAAhB,CACC,UAAWD,EAAW,iBAAkB,CAAE,mBAAoBM,EAAM,YAAa,CAAC,EACpF,CACF,CAEJ,CAAC,EACDD,EAAO,YAAc",
6
- "names": ["React", "classNames", "SwitchPrimitive", "extractProps", "marginPropDefs", "switchPropDefs", "Switch", "props", "forwardedRef", "className", "color", "radius", "switchProps"]
4
+ "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Switch as SwitchPrimitive } from 'radix-ui';\n\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { switchPropDefs } from './switch.props.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\nimport type { ComponentPropsWithout } from '../helpers/component-props.js';\n\ntype SwitchElement = React.ElementRef<typeof SwitchPrimitive.Root>;\ntype SwitchOwnProps = GetPropDefTypes<typeof switchPropDefs>;\ninterface SwitchProps\n extends ComponentPropsWithout<\n typeof SwitchPrimitive.Root,\n 'asChild' | 'color' | 'defaultValue' | 'children'\n >,\n MarginProps,\n SwitchOwnProps {}\nconst Switch = React.forwardRef<SwitchElement, SwitchProps>((props, forwardedRef) => {\n const { className, color, panelBackground, material, ...switchProps } = extractProps(\n props,\n switchPropDefs,\n marginPropDefs,\n );\n const effectiveMaterial = material || panelBackground;\n return (\n <SwitchPrimitive.Root\n data-accent-color={color}\n data-panel-background={effectiveMaterial}\n data-material={effectiveMaterial}\n {...switchProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-SwitchRoot', className)}\n >\n <SwitchPrimitive.Thumb\n className={classNames('rt-SwitchThumb', { 'rt-high-contrast': props.highContrast })}\n />\n </SwitchPrimitive.Root>\n );\n});\nSwitch.displayName = 'Switch';\n\nexport { Switch };\nexport type { SwitchProps };\n"],
5
+ "mappings": "AAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,UAAUC,MAAuB,WAE1C,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,kBAAAC,MAAsB,2BAC/B,OAAS,kBAAAC,MAAsB,oBAe/B,MAAMC,EAASN,EAAM,WAAuC,CAACO,EAAOC,IAAiB,CACnF,KAAM,CAAE,UAAAC,EAAW,MAAAC,EAAO,gBAAAC,EAAiB,SAAAC,EAAU,GAAGC,CAAY,EAAIV,EACtEI,EACAF,EACAD,CACF,EACMU,EAAoBF,GAAYD,EACtC,OACEX,EAAA,cAACE,EAAgB,KAAhB,CACC,oBAAmBQ,EACnB,wBAAuBI,EACvB,gBAAeA,EACd,GAAGD,EACJ,QAAS,GACT,IAAKL,EACL,UAAWP,EAAW,WAAY,gBAAiBQ,CAAS,GAE5DT,EAAA,cAACE,EAAgB,MAAhB,CACC,UAAWD,EAAW,iBAAkB,CAAE,mBAAoBM,EAAM,YAAa,CAAC,EACpF,CACF,CAEJ,CAAC,EACDD,EAAO,YAAc",
6
+ "names": ["React", "classNames", "SwitchPrimitive", "extractProps", "marginPropDefs", "switchPropDefs", "Switch", "props", "forwardedRef", "className", "color", "panelBackground", "material", "switchProps", "effectiveMaterial"]
7
7
  }
@@ -1,7 +1,20 @@
1
1
  declare const switchPropDefs: {
2
- radius: {
2
+ /**
3
+ * Material type for visual rendering and depth effects
4
+ * Controls how the switch renders its visual elements
5
+ */
6
+ material: {
3
7
  type: "enum";
4
- values: readonly ["none", "small", "medium", "large", "full"];
8
+ values: readonly ["solid", "translucent"];
9
+ default: undefined;
10
+ };
11
+ /**
12
+ * Panel background type (deprecated)
13
+ * @deprecated Use `material` prop instead. This prop will be removed in a future version.
14
+ */
15
+ panelBackground: {
16
+ type: "enum";
17
+ values: readonly ["solid", "translucent"];
5
18
  default: undefined;
6
19
  };
7
20
  highContrast: {
@@ -17,14 +30,14 @@ declare const switchPropDefs: {
17
30
  size: {
18
31
  type: "enum";
19
32
  className: string;
20
- values: readonly ["1", "2", "3"];
33
+ values: readonly ["1", "2", "3", "4"];
21
34
  default: "2";
22
35
  responsive: true;
23
36
  };
24
37
  variant: {
25
38
  type: "enum";
26
39
  className: string;
27
- values: readonly ["classic", "surface", "soft"];
40
+ values: readonly ["surface", "soft", "outline"];
28
41
  default: "surface";
29
42
  };
30
43
  };
@@ -1 +1 @@
1
- {"version":3,"file":"switch.props.d.ts","sourceRoot":"","sources":["../../../src/components/switch.props.tsx"],"names":[],"mappings":"AASA,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"switch.props.d.ts","sourceRoot":"","sources":["../../../src/components/switch.props.tsx"],"names":[],"mappings":"AAUA,QAAA,MAAM,cAAc;IAKlB;;;OAGG;;;;;;IAEH;;;OAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOJ,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import{colorPropDef as s}from"../props/color.prop.js";import{highContrastPropDef as e}from"../props/high-contrast.prop.js";import{radiusPropDef as r}from"../props/radius.prop.js";const o=["1","2","3"],t=["classic","surface","soft"],a={size:{type:"enum",className:"rt-r-size",values:o,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:t,default:"surface"},...s,...e,...r};export{a as switchPropDefs};
1
+ import{colorPropDef as e}from"../props/color.prop.js";import{highContrastPropDef as s}from"../props/high-contrast.prop.js";const a=["1","2","3","4"],t=["surface","soft","outline"],n=["solid","translucent"],r=["solid","translucent"],o={size:{type:"enum",className:"rt-r-size",values:a,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:t,default:"surface"},...e,...s,material:{type:"enum",values:r,default:void 0},panelBackground:{type:"enum",values:n,default:void 0}};export{o as switchPropDefs};
2
2
  //# sourceMappingURL=switch.props.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/switch.props.tsx"],
4
- "sourcesContent": ["import { colorPropDef } from '../props/color.prop.js';\nimport { highContrastPropDef } from '../props/high-contrast.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3'] as const;\nconst variants = ['classic', 'surface', 'soft'] as const;\n\nconst switchPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'surface' },\n ...colorPropDef,\n ...highContrastPropDef,\n ...radiusPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n};\n\nexport { switchPropDefs };\n"],
5
- "mappings": "AAAA,OAAS,gBAAAA,MAAoB,yBAC7B,OAAS,uBAAAC,MAA2B,iCACpC,OAAS,iBAAAC,MAAqB,0BAI9B,MAAMC,EAAQ,CAAC,IAAK,IAAK,GAAG,EACtBC,EAAW,CAAC,UAAW,UAAW,MAAM,EAExCC,EAAiB,CACrB,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQF,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,SAAU,EACvF,GAAGJ,EACH,GAAGC,EACH,GAAGC,CACL",
6
- "names": ["colorPropDef", "highContrastPropDef", "radiusPropDef", "sizes", "variants", "switchPropDefs"]
4
+ "sourcesContent": ["import { colorPropDef } from '../props/color.prop.js';\nimport { highContrastPropDef } from '../props/high-contrast.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\nconst variants = ['surface', 'soft', 'outline'] as const;\nconst panelBackgrounds = ['solid', 'translucent'] as const;\nconst materials = ['solid', 'translucent'] as const;\n\nconst switchPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'surface' },\n ...colorPropDef,\n ...highContrastPropDef,\n /**\n * Material type for visual rendering and depth effects\n * Controls how the switch renders its visual elements\n */\n material: { type: 'enum', values: materials, default: undefined },\n /**\n * Panel background type (deprecated)\n * @deprecated Use `material` prop instead. This prop will be removed in a future version.\n */\n panelBackground: { type: 'enum', values: panelBackgrounds, default: undefined },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n material: PropDef<(typeof materials)[number] | undefined>;\n panelBackground: PropDef<(typeof panelBackgrounds)[number] | undefined>;\n};\n\nexport { switchPropDefs };\n"],
5
+ "mappings": "AAAA,OAAS,gBAAAA,MAAoB,yBAC7B,OAAS,uBAAAC,MAA2B,iCAIpC,MAAMC,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAC3BC,EAAW,CAAC,UAAW,OAAQ,SAAS,EACxCC,EAAmB,CAAC,QAAS,aAAa,EAC1CC,EAAY,CAAC,QAAS,aAAa,EAEnCC,EAAiB,CACrB,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQJ,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,SAAU,EACvF,GAAGH,EACH,GAAGC,EAKH,SAAU,CAAE,KAAM,OAAQ,OAAQI,EAAW,QAAS,MAAU,EAKhE,gBAAiB,CAAE,KAAM,OAAQ,OAAQD,EAAkB,QAAS,MAAU,CAChF",
6
+ "names": ["colorPropDef", "highContrastPropDef", "sizes", "variants", "panelBackgrounds", "materials", "switchPropDefs"]
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tab-nav.d.ts","sourceRoot":"","sources":["../../../src/components/tab-nav.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAKxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,KAAK,sBAAsB,GAAG,qBAAqB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AACzE,KAAK,cAAc,GAAG,eAAe,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACjE,UAAU,eACR,SAAQ,IAAI,CAAC,sBAAsB,EAAE,cAAc,GAAG,KAAK,GAAG,OAAO,CAAC,EACpE,WAAW,EACX,cAAc;CAAG;AACrB,QAAA,MAAM,UAAU,qFAqBd,CAAC;AAIH,KAAK,kBAAkB,GAAG,eAAe,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACrE,UAAU,eACR,SAAQ,qBAAqB,CAAC,OAAO,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,UAAU,CAAC,EAClF,kBAAkB;CAAG;AACzB,QAAA,MAAM,UAAU,2FAuBd,CAAC;AAGH,OAAO,EAAE,UAAU,IAAI,IAAI,EAAE,UAAU,IAAI,IAAI,EAAE,CAAC;AAClD,YAAY,EAAE,eAAe,IAAI,SAAS,EAAE,eAAe,IAAI,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"tab-nav.d.ts","sourceRoot":"","sources":["../../../src/components/tab-nav.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAKxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,KAAK,sBAAsB,GAAG,qBAAqB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AACzE,KAAK,cAAc,GAAG,eAAe,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACjE,UAAU,eACR,SAAQ,IAAI,CAAC,sBAAsB,EAAE,cAAc,GAAG,KAAK,GAAG,OAAO,CAAC,EACpE,WAAW,EACX,cAAc;CAAG;AACrB,QAAA,MAAM,UAAU,qFAsBd,CAAC;AAIH,KAAK,kBAAkB,GAAG,eAAe,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACrE,UAAU,eACR,SAAQ,qBAAqB,CAAC,OAAO,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,UAAU,CAAC,EAClF,kBAAkB;CAAG;AACzB,QAAA,MAAM,UAAU,2FAyBd,CAAC;AAGH,OAAO,EAAE,UAAU,IAAI,IAAI,EAAE,UAAU,IAAI,IAAI,EAAE,CAAC;AAClD,YAAY,EAAE,eAAe,IAAI,SAAS,EAAE,eAAe,IAAI,SAAS,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import*as o from"react";import m from"classnames";import{NavigationMenu as e}from"radix-ui";import{tabNavRootPropDefs as f}from"./tab-nav.props.js";import{extractProps as b}from"../helpers/extract-props.js";import{getSubtree as T}from"../helpers/get-subtree.js";import{marginPropDefs as l}from"../props/margin.props.js";const N=o.forwardRef((t,r)=>{const{children:a,className:s,color:n,...p}=b(t,f,l);return o.createElement(e.Root,{className:"rt-TabNavRoot","data-accent-color":n,...p,asChild:!1,ref:r},o.createElement(e.List,{className:m("rt-reset","rt-BaseTabList","rt-TabNavList",s)},a))});N.displayName="TabNav.Root";const v=o.forwardRef((t,r)=>{const{asChild:a,children:s,className:n,...p}=t;return o.createElement(e.Item,{className:"rt-TabNavItem"},o.createElement(e.Link,{...p,ref:r,className:m("rt-reset","rt-BaseTabListTrigger","rt-TabNavLink",n),onSelect:void 0,asChild:a},T({asChild:a,children:s},i=>o.createElement(o.Fragment,null,o.createElement("span",{className:"rt-BaseTabListTriggerInner rt-TabNavLinkInner"},i),o.createElement("span",{className:"rt-BaseTabListTriggerInnerHidden rt-TabNavLinkInnerHidden"},i)))))});v.displayName="TabNav.Link";export{v as Link,N as Root};
1
+ import*as a from"react";import N from"classnames";import{NavigationMenu as t}from"radix-ui";import{tabNavRootPropDefs as b}from"./tab-nav.props.js";import{extractProps as T}from"../helpers/extract-props.js";import{getSubtree as l}from"../helpers/get-subtree.js";import{marginPropDefs as P}from"../props/margin.props.js";const v=a.forwardRef((r,n)=>{const{children:o,className:s,color:p,panelBackground:e,...i}=T(r,b,P);return a.createElement(t.Root,{className:"rt-TabNavRoot","data-accent-color":p,...i,asChild:!1,ref:n},a.createElement(t.List,{className:N("rt-reset","rt-BaseTabList","rt-TabNavList",s),"data-panel-background":e},o))});v.displayName="TabNav.Root";const f=a.forwardRef((r,n)=>{const{asChild:o,children:s,className:p,active:e,...i}=r;return a.createElement(t.Item,{className:"rt-TabNavItem"},a.createElement(t.Link,{...i,ref:n,className:N("rt-reset","rt-BaseTabListTrigger","rt-TabNavLink",p),onSelect:void 0,asChild:o,"aria-current":e?"page":void 0,"data-active":e||void 0},l({asChild:o,children:s},m=>a.createElement(a.Fragment,null,a.createElement("span",{className:"rt-BaseTabListTriggerInner rt-TabNavLinkInner"},m),a.createElement("span",{className:"rt-BaseTabListTriggerInnerHidden rt-TabNavLinkInnerHidden"},m)))))});f.displayName="TabNav.Link";export{f as Link,v as Root};
2
2
  //# sourceMappingURL=tab-nav.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/tab-nav.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { NavigationMenu } from 'radix-ui';\n\nimport { tabNavRootPropDefs } from './tab-nav.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { getSubtree } from '../helpers/get-subtree.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { tabNavLinkPropDefs } from './tab-nav.props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TabNavRootElement = React.ElementRef<typeof NavigationMenu.Root>;\ntype TabNavRootElementProps = ComponentPropsWithout<'nav', RemovedProps>;\ntype TabNavOwnProps = GetPropDefTypes<typeof tabNavRootPropDefs>;\ninterface TabNavRootProps\n extends Omit<TabNavRootElementProps, 'defaultValue' | 'dir' | 'color'>,\n MarginProps,\n TabNavOwnProps {}\nconst TabNavRoot = React.forwardRef<TabNavRootElement, TabNavRootProps>((props, forwardedRef) => {\n const { children, className, color, ...rootProps } = extractProps(\n props,\n tabNavRootPropDefs,\n marginPropDefs\n );\n return (\n <NavigationMenu.Root\n className=\"rt-TabNavRoot\"\n data-accent-color={color}\n {...rootProps}\n asChild={false}\n ref={forwardedRef}\n >\n <NavigationMenu.List\n className={classNames('rt-reset', 'rt-BaseTabList', 'rt-TabNavList', className)}\n >\n {children}\n </NavigationMenu.List>\n </NavigationMenu.Root>\n );\n});\nTabNavRoot.displayName = 'TabNav.Root';\n\ntype TabNavLinkElement = React.ElementRef<typeof NavigationMenu.Link>;\ntype TabNavLinkOwnProps = GetPropDefTypes<typeof tabNavLinkPropDefs>;\ninterface TabNavLinkProps\n extends ComponentPropsWithout<typeof NavigationMenu.Link, RemovedProps | 'onSelect'>,\n TabNavLinkOwnProps {}\nconst TabNavLink = React.forwardRef<TabNavLinkElement, TabNavLinkProps>((props, forwardedRef) => {\n const { asChild, children, className, ...linkProps } = props;\n\n return (\n <NavigationMenu.Item className=\"rt-TabNavItem\">\n <NavigationMenu.Link\n {...linkProps}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseTabListTrigger', 'rt-TabNavLink', className)}\n onSelect={undefined}\n asChild={asChild}\n >\n {getSubtree({ asChild, children }, (children) => (\n <>\n <span className=\"rt-BaseTabListTriggerInner rt-TabNavLinkInner\">{children}</span>\n <span className=\"rt-BaseTabListTriggerInnerHidden rt-TabNavLinkInnerHidden\">\n {children}\n </span>\n </>\n ))}\n </NavigationMenu.Link>\n </NavigationMenu.Item>\n );\n});\nTabNavLink.displayName = 'TabNav.Link';\n\nexport { TabNavRoot as Root, TabNavLink as Link };\nexport type { TabNavRootProps as RootProps, TabNavLinkProps as LinkProps };\n"],
5
- "mappings": "AAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,kBAAAC,MAAsB,WAE/B,OAAS,sBAAAC,MAA0B,qBACnC,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,cAAAC,MAAkB,4BAC3B,OAAS,kBAAAC,MAAsB,2BAc/B,MAAMC,EAAaP,EAAM,WAA+C,CAACQ,EAAOC,IAAiB,CAC/F,KAAM,CAAE,SAAAC,EAAU,UAAAC,EAAW,MAAAC,EAAO,GAAGC,CAAU,EAAIT,EACnDI,EACAL,EACAG,CACF,EACA,OACEN,EAAA,cAACE,EAAe,KAAf,CACC,UAAU,gBACV,oBAAmBU,EAClB,GAAGC,EACJ,QAAS,GACT,IAAKJ,GAELT,EAAA,cAACE,EAAe,KAAf,CACC,UAAWD,EAAW,WAAY,iBAAkB,gBAAiBU,CAAS,GAE7ED,CACH,CACF,CAEJ,CAAC,EACDH,EAAW,YAAc,cAOzB,MAAMO,EAAad,EAAM,WAA+C,CAACQ,EAAOC,IAAiB,CAC/F,KAAM,CAAE,QAAAM,EAAS,SAAAL,EAAU,UAAAC,EAAW,GAAGK,CAAU,EAAIR,EAEvD,OACER,EAAA,cAACE,EAAe,KAAf,CAAoB,UAAU,iBAC7BF,EAAA,cAACE,EAAe,KAAf,CACE,GAAGc,EACJ,IAAKP,EACL,UAAWR,EAAW,WAAY,wBAAyB,gBAAiBU,CAAS,EACrF,SAAU,OACV,QAASI,GAERV,EAAW,CAAE,QAAAU,EAAS,SAAAL,CAAS,EAAIA,GAClCV,EAAA,cAAAA,EAAA,cACEA,EAAA,cAAC,QAAK,UAAU,iDAAiDU,CAAS,EAC1EV,EAAA,cAAC,QAAK,UAAU,6DACbU,CACH,CACF,CACD,CACH,CACF,CAEJ,CAAC,EACDI,EAAW,YAAc",
6
- "names": ["React", "classNames", "NavigationMenu", "tabNavRootPropDefs", "extractProps", "getSubtree", "marginPropDefs", "TabNavRoot", "props", "forwardedRef", "children", "className", "color", "rootProps", "TabNavLink", "asChild", "linkProps"]
4
+ "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { NavigationMenu } from 'radix-ui';\n\nimport { tabNavRootPropDefs } from './tab-nav.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { getSubtree } from '../helpers/get-subtree.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { tabNavLinkPropDefs } from './tab-nav.props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TabNavRootElement = React.ElementRef<typeof NavigationMenu.Root>;\ntype TabNavRootElementProps = ComponentPropsWithout<'nav', RemovedProps>;\ntype TabNavOwnProps = GetPropDefTypes<typeof tabNavRootPropDefs>;\ninterface TabNavRootProps\n extends Omit<TabNavRootElementProps, 'defaultValue' | 'dir' | 'color'>,\n MarginProps,\n TabNavOwnProps {}\nconst TabNavRoot = React.forwardRef<TabNavRootElement, TabNavRootProps>((props, forwardedRef) => {\n const { children, className, color, panelBackground, ...rootProps } = extractProps(\n props,\n tabNavRootPropDefs,\n marginPropDefs,\n );\n return (\n <NavigationMenu.Root\n className=\"rt-TabNavRoot\"\n data-accent-color={color}\n {...rootProps}\n asChild={false}\n ref={forwardedRef}\n >\n <NavigationMenu.List\n className={classNames('rt-reset', 'rt-BaseTabList', 'rt-TabNavList', className)}\n data-panel-background={panelBackground}\n >\n {children}\n </NavigationMenu.List>\n </NavigationMenu.Root>\n );\n});\nTabNavRoot.displayName = 'TabNav.Root';\n\ntype TabNavLinkElement = React.ElementRef<typeof NavigationMenu.Link>;\ntype TabNavLinkOwnProps = GetPropDefTypes<typeof tabNavLinkPropDefs>;\ninterface TabNavLinkProps\n extends ComponentPropsWithout<typeof NavigationMenu.Link, RemovedProps | 'onSelect'>,\n TabNavLinkOwnProps {}\nconst TabNavLink = React.forwardRef<TabNavLinkElement, TabNavLinkProps>((props, forwardedRef) => {\n const { asChild, children, className, active, ...linkProps } = props;\n\n return (\n <NavigationMenu.Item className=\"rt-TabNavItem\">\n <NavigationMenu.Link\n {...linkProps}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseTabListTrigger', 'rt-TabNavLink', className)}\n onSelect={undefined}\n asChild={asChild}\n aria-current={active ? 'page' : undefined}\n data-active={active || undefined}\n >\n {getSubtree({ asChild, children }, (children) => (\n <>\n <span className=\"rt-BaseTabListTriggerInner rt-TabNavLinkInner\">{children}</span>\n <span className=\"rt-BaseTabListTriggerInnerHidden rt-TabNavLinkInnerHidden\">\n {children}\n </span>\n </>\n ))}\n </NavigationMenu.Link>\n </NavigationMenu.Item>\n );\n});\nTabNavLink.displayName = 'TabNav.Link';\n\nexport { TabNavRoot as Root, TabNavLink as Link };\nexport type { TabNavRootProps as RootProps, TabNavLinkProps as LinkProps };\n"],
5
+ "mappings": "AAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,kBAAAC,MAAsB,WAE/B,OAAS,sBAAAC,MAA0B,qBACnC,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,cAAAC,MAAkB,4BAC3B,OAAS,kBAAAC,MAAsB,2BAc/B,MAAMC,EAAaP,EAAM,WAA+C,CAACQ,EAAOC,IAAiB,CAC/F,KAAM,CAAE,SAAAC,EAAU,UAAAC,EAAW,MAAAC,EAAO,gBAAAC,EAAiB,GAAGC,CAAU,EAAIV,EACpEI,EACAL,EACAG,CACF,EACA,OACEN,EAAA,cAACE,EAAe,KAAf,CACC,UAAU,gBACV,oBAAmBU,EAClB,GAAGE,EACJ,QAAS,GACT,IAAKL,GAELT,EAAA,cAACE,EAAe,KAAf,CACC,UAAWD,EAAW,WAAY,iBAAkB,gBAAiBU,CAAS,EAC9E,wBAAuBE,GAEtBH,CACH,CACF,CAEJ,CAAC,EACDH,EAAW,YAAc,cAOzB,MAAMQ,EAAaf,EAAM,WAA+C,CAACQ,EAAOC,IAAiB,CAC/F,KAAM,CAAE,QAAAO,EAAS,SAAAN,EAAU,UAAAC,EAAW,OAAAM,EAAQ,GAAGC,CAAU,EAAIV,EAE/D,OACER,EAAA,cAACE,EAAe,KAAf,CAAoB,UAAU,iBAC7BF,EAAA,cAACE,EAAe,KAAf,CACE,GAAGgB,EACJ,IAAKT,EACL,UAAWR,EAAW,WAAY,wBAAyB,gBAAiBU,CAAS,EACrF,SAAU,OACV,QAASK,EACT,eAAcC,EAAS,OAAS,OAChC,cAAaA,GAAU,QAEtBZ,EAAW,CAAE,QAAAW,EAAS,SAAAN,CAAS,EAAIA,GAClCV,EAAA,cAAAA,EAAA,cACEA,EAAA,cAAC,QAAK,UAAU,iDAAiDU,CAAS,EAC1EV,EAAA,cAAC,QAAK,UAAU,6DACbU,CACH,CACF,CACD,CACH,CACF,CAEJ,CAAC,EACDK,EAAW,YAAc",
6
+ "names": ["React", "classNames", "NavigationMenu", "tabNavRootPropDefs", "extractProps", "getSubtree", "marginPropDefs", "TabNavRoot", "props", "forwardedRef", "children", "className", "color", "panelBackground", "rootProps", "TabNavLink", "asChild", "active", "linkProps"]
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,UAAU,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAInD,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,KAAK,gBAAgB,GAAG,eAAe,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACjE,UAAU,aACR,SAAQ,qBAAqB,CAAC,OAAO,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,gBAAgB,CAAC,EAC9F,WAAW,EACX,gBAAgB;CAAG;AACvB,QAAA,MAAM,QAAQ,sFASZ,CAAC;AAIH,KAAK,gBAAgB,GAAG,eAAe,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACjE,UAAU,aACR,SAAQ,qBAAqB,CAAC,OAAO,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,EACpE,WAAW,EACX,gBAAgB;CAAG;AACvB,QAAA,MAAM,QAAQ,sFAgBZ,CAAC;AAIH,UAAU,gBACR,SAAQ,qBAAqB,CAAC,OAAO,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC;CAAG;AAC9E,QAAA,MAAM,WAAW,4FAiBhB,CAAC;AAIF,KAAK,mBAAmB,GAAG,eAAe,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACvE,UAAU,gBACR,SAAQ,qBAAqB,CAAC,OAAO,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC,EACvE,WAAW,EACX,mBAAmB;CAAG;AAC1B,QAAA,MAAM,WAAW,yFAWhB,CAAC;AAGF,OAAO,EAAE,QAAQ,IAAI,IAAI,EAAE,QAAQ,IAAI,IAAI,EAAE,WAAW,IAAI,OAAO,EAAE,WAAW,IAAI,OAAO,EAAE,CAAC;AAC9F,YAAY,EACV,aAAa,IAAI,SAAS,EAC1B,aAAa,IAAI,SAAS,EAC1B,gBAAgB,IAAI,YAAY,EAChC,gBAAgB,IAAI,YAAY,GACjC,CAAC"}
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,UAAU,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAInD,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,KAAK,gBAAgB,GAAG,eAAe,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACjE,UAAU,aACR,SAAQ,qBAAqB,CAAC,OAAO,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,gBAAgB,CAAC,EAC9F,WAAW,EACX,gBAAgB;CAAG;AACvB,QAAA,MAAM,QAAQ,sFASZ,CAAC;AAIH,KAAK,gBAAgB,GAAG,eAAe,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACjE,UAAU,aACR,SAAQ,qBAAqB,CAAC,OAAO,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,EACpE,WAAW,EACX,gBAAgB;CAAG;AACvB,QAAA,MAAM,QAAQ,sFAgBZ,CAAC;AAIH,UAAU,gBACR,SAAQ,qBAAqB,CAAC,OAAO,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC;CAAG;AAC9E,QAAA,MAAM,WAAW,4FAiBhB,CAAC;AAIF,KAAK,mBAAmB,GAAG,eAAe,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACvE,UAAU,gBACR,SAAQ,qBAAqB,CAAC,OAAO,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC,EACvE,WAAW,EACX,mBAAmB;CAAG;AAC1B,QAAA,MAAM,WAAW,yFAahB,CAAC;AAGF,OAAO,EAAE,QAAQ,IAAI,IAAI,EAAE,QAAQ,IAAI,IAAI,EAAE,WAAW,IAAI,OAAO,EAAE,WAAW,IAAI,OAAO,EAAE,CAAC;AAC9F,YAAY,EACV,aAAa,IAAI,SAAS,EAC1B,aAAa,IAAI,SAAS,EAC1B,gBAAgB,IAAI,YAAY,EAChC,gBAAgB,IAAI,YAAY,GACjC,CAAC"}
@@ -1,2 +1,2 @@
1
- import*as s from"react";import a from"classnames";import{Tabs as p}from"radix-ui";import{tabsListPropDefs as l}from"./tabs.props.js";import{extractProps as i}from"../helpers/extract-props.js";import{marginPropDefs as T}from"../props/margin.props.js";const m=s.forwardRef((t,o)=>{const{className:r,...e}=i(t,T);return s.createElement(p.Root,{...e,ref:o,className:a("rt-TabsRoot",r)})});m.displayName="Tabs.Root";const b=s.forwardRef((t,o)=>{const{className:r,color:e,panelBackground:n,...g}=i(t,l,T);return s.createElement(p.List,{"data-accent-color":e,"data-panel-background":n,...g,asChild:!1,ref:o,className:a("rt-BaseTabList","rt-TabsList",r)})});b.displayName="Tabs.List";const P=s.forwardRef((t,o)=>{const{className:r,children:e,...n}=t;return s.createElement(p.Trigger,{...n,asChild:!1,ref:o,className:a("rt-reset","rt-BaseTabListTrigger","rt-TabsTrigger",r)},s.createElement("span",{className:"rt-BaseTabListTriggerInner rt-TabsTriggerInner"},e),s.createElement("span",{className:"rt-BaseTabListTriggerInnerHidden rt-TabsTriggerInnerHidden"},e))});P.displayName="Tabs.Trigger";const f=s.forwardRef((t,o)=>{const{className:r,...e}=i(t,T);return s.createElement(p.Content,{...e,ref:o,className:a("rt-TabsContent",r)})});f.displayName="Tabs.Content";export{f as Content,b as List,m as Root,P as Trigger};
1
+ import*as e from"react";import a from"classnames";import{Tabs as p}from"radix-ui";import{tabsListPropDefs as l}from"./tabs.props.js";import{extractProps as n}from"../helpers/extract-props.js";import{marginPropDefs as T}from"../props/margin.props.js";const m=e.forwardRef((t,o)=>{const{className:r,...s}=n(t,T);return e.createElement(p.Root,{...s,ref:o,className:a("rt-TabsRoot",r)})});m.displayName="Tabs.Root";const b=e.forwardRef((t,o)=>{const{className:r,color:s,panelBackground:i,...g}=n(t,l,T);return e.createElement(p.List,{"data-accent-color":s,"data-panel-background":i,...g,asChild:!1,ref:o,className:a("rt-BaseTabList","rt-TabsList",r)})});b.displayName="Tabs.List";const P=e.forwardRef((t,o)=>{const{className:r,children:s,...i}=t;return e.createElement(p.Trigger,{...i,asChild:!1,ref:o,className:a("rt-reset","rt-BaseTabListTrigger","rt-TabsTrigger",r)},e.createElement("span",{className:"rt-BaseTabListTriggerInner rt-TabsTriggerInner"},s),e.createElement("span",{className:"rt-BaseTabListTriggerInnerHidden rt-TabsTriggerInnerHidden"},s))});P.displayName="Tabs.Trigger";const f=e.forwardRef((t,o)=>{const{className:r,...s}=n(t,T);return e.createElement(p.Content,{...s,ref:o,className:a("rt-TabsContent",r),"aria-live":"polite","aria-atomic":"true"})});f.displayName="Tabs.Content";export{f as Content,b as List,m as Root,P as Trigger};
2
2
  //# sourceMappingURL=tabs.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/tabs.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Tabs as TabsPrimitive } from 'radix-ui';\n\nimport { tabsListPropDefs } from './tabs.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { tabsContentPropDefs, tabsRootPropDefs } from './tabs.props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TabsRootElement = React.ElementRef<typeof TabsPrimitive.Root>;\ntype TabsRootOwnProps = GetPropDefTypes<typeof tabsRootPropDefs>;\ninterface TabsRootProps\n extends ComponentPropsWithout<typeof TabsPrimitive.Root, 'asChild' | 'color' | 'defaultChecked'>,\n MarginProps,\n TabsRootOwnProps {}\nconst TabsRoot = React.forwardRef<TabsRootElement, TabsRootProps>((props, forwardedRef) => {\n const { className, ...rootProps } = extractProps(props, marginPropDefs);\n return (\n <TabsPrimitive.Root\n {...rootProps}\n ref={forwardedRef}\n className={classNames('rt-TabsRoot', className)}\n />\n );\n});\nTabsRoot.displayName = 'Tabs.Root';\n\ntype TabsListElement = React.ElementRef<typeof TabsPrimitive.List>;\ntype TabsListOwnProps = GetPropDefTypes<typeof tabsListPropDefs>;\ninterface TabsListProps\n extends ComponentPropsWithout<typeof TabsPrimitive.List, RemovedProps>,\n MarginProps,\n TabsListOwnProps {}\nconst TabsList = React.forwardRef<TabsListElement, TabsListProps>((props, forwardedRef) => {\n const { className, color, panelBackground, ...listProps } = extractProps(\n props,\n tabsListPropDefs,\n marginPropDefs,\n );\n return (\n <TabsPrimitive.List\n data-accent-color={color}\n data-panel-background={panelBackground}\n {...listProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseTabList', 'rt-TabsList', className)}\n />\n );\n});\nTabsList.displayName = 'Tabs.List';\n\ntype TabsTriggerElement = React.ElementRef<typeof TabsPrimitive.Trigger>;\ninterface TabsTriggerProps\n extends ComponentPropsWithout<typeof TabsPrimitive.Trigger, RemovedProps> {}\nconst TabsTrigger = React.forwardRef<TabsTriggerElement, TabsTriggerProps>(\n (props, forwardedRef) => {\n const { className, children, ...triggerProps } = props;\n return (\n <TabsPrimitive.Trigger\n {...triggerProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseTabListTrigger', 'rt-TabsTrigger', className)}\n >\n <span className=\"rt-BaseTabListTriggerInner rt-TabsTriggerInner\">{children}</span>\n <span className=\"rt-BaseTabListTriggerInnerHidden rt-TabsTriggerInnerHidden\">\n {children}\n </span>\n </TabsPrimitive.Trigger>\n );\n },\n);\nTabsTrigger.displayName = 'Tabs.Trigger';\n\ntype TabsContentElement = React.ElementRef<typeof TabsPrimitive.Content>;\ntype TabsContentOwnProps = GetPropDefTypes<typeof tabsContentPropDefs>;\ninterface TabsContentProps\n extends ComponentPropsWithout<typeof TabsPrimitive.Content, RemovedProps>,\n MarginProps,\n TabsContentOwnProps {}\nconst TabsContent = React.forwardRef<TabsContentElement, TabsContentProps>(\n (props, forwardedRef) => {\n const { className, ...contentProps } = extractProps(props, marginPropDefs);\n return (\n <TabsPrimitive.Content\n {...contentProps}\n ref={forwardedRef}\n className={classNames('rt-TabsContent', className)}\n />\n );\n },\n);\nTabsContent.displayName = 'Tabs.Content';\n\nexport { TabsRoot as Root, TabsList as List, TabsTrigger as Trigger, TabsContent as Content };\nexport type {\n TabsRootProps as RootProps,\n TabsListProps as ListProps,\n TabsTriggerProps as TriggerProps,\n TabsContentProps as ContentProps,\n};\n"],
5
- "mappings": "AAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,QAAQC,MAAqB,WAEtC,OAAS,oBAAAC,MAAwB,kBACjC,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,kBAAAC,MAAsB,2BAa/B,MAAMC,EAAWN,EAAM,WAA2C,CAACO,EAAOC,IAAiB,CACzF,KAAM,CAAE,UAAAC,EAAW,GAAGC,CAAU,EAAIN,EAAaG,EAAOF,CAAc,EACtE,OACEL,EAAA,cAACE,EAAc,KAAd,CACE,GAAGQ,EACJ,IAAKF,EACL,UAAWP,EAAW,cAAeQ,CAAS,EAChD,CAEJ,CAAC,EACDH,EAAS,YAAc,YAQvB,MAAMK,EAAWX,EAAM,WAA2C,CAACO,EAAOC,IAAiB,CACzF,KAAM,CAAE,UAAAC,EAAW,MAAAG,EAAO,gBAAAC,EAAiB,GAAGC,CAAU,EAAIV,EAC1DG,EACAJ,EACAE,CACF,EACA,OACEL,EAAA,cAACE,EAAc,KAAd,CACC,oBAAmBU,EACnB,wBAAuBC,EACtB,GAAGC,EACJ,QAAS,GACT,IAAKN,EACL,UAAWP,EAAW,iBAAkB,cAAeQ,CAAS,EAClE,CAEJ,CAAC,EACDE,EAAS,YAAc,YAKvB,MAAMI,EAAcf,EAAM,WACxB,CAACO,EAAOC,IAAiB,CACvB,KAAM,CAAE,UAAAC,EAAW,SAAAO,EAAU,GAAGC,CAAa,EAAIV,EACjD,OACEP,EAAA,cAACE,EAAc,QAAd,CACE,GAAGe,EACJ,QAAS,GACT,IAAKT,EACL,UAAWP,EAAW,WAAY,wBAAyB,iBAAkBQ,CAAS,GAEtFT,EAAA,cAAC,QAAK,UAAU,kDAAkDgB,CAAS,EAC3EhB,EAAA,cAAC,QAAK,UAAU,8DACbgB,CACH,CACF,CAEJ,CACF,EACAD,EAAY,YAAc,eAQ1B,MAAMG,EAAclB,EAAM,WACxB,CAACO,EAAOC,IAAiB,CACvB,KAAM,CAAE,UAAAC,EAAW,GAAGU,CAAa,EAAIf,EAAaG,EAAOF,CAAc,EACzE,OACEL,EAAA,cAACE,EAAc,QAAd,CACE,GAAGiB,EACJ,IAAKX,EACL,UAAWP,EAAW,iBAAkBQ,CAAS,EACnD,CAEJ,CACF,EACAS,EAAY,YAAc",
4
+ "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Tabs as TabsPrimitive } from 'radix-ui';\n\nimport { tabsListPropDefs } from './tabs.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { tabsContentPropDefs, tabsRootPropDefs } from './tabs.props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TabsRootElement = React.ElementRef<typeof TabsPrimitive.Root>;\ntype TabsRootOwnProps = GetPropDefTypes<typeof tabsRootPropDefs>;\ninterface TabsRootProps\n extends ComponentPropsWithout<typeof TabsPrimitive.Root, 'asChild' | 'color' | 'defaultChecked'>,\n MarginProps,\n TabsRootOwnProps {}\nconst TabsRoot = React.forwardRef<TabsRootElement, TabsRootProps>((props, forwardedRef) => {\n const { className, ...rootProps } = extractProps(props, marginPropDefs);\n return (\n <TabsPrimitive.Root\n {...rootProps}\n ref={forwardedRef}\n className={classNames('rt-TabsRoot', className)}\n />\n );\n});\nTabsRoot.displayName = 'Tabs.Root';\n\ntype TabsListElement = React.ElementRef<typeof TabsPrimitive.List>;\ntype TabsListOwnProps = GetPropDefTypes<typeof tabsListPropDefs>;\ninterface TabsListProps\n extends ComponentPropsWithout<typeof TabsPrimitive.List, RemovedProps>,\n MarginProps,\n TabsListOwnProps {}\nconst TabsList = React.forwardRef<TabsListElement, TabsListProps>((props, forwardedRef) => {\n const { className, color, panelBackground, ...listProps } = extractProps(\n props,\n tabsListPropDefs,\n marginPropDefs,\n );\n return (\n <TabsPrimitive.List\n data-accent-color={color}\n data-panel-background={panelBackground}\n {...listProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseTabList', 'rt-TabsList', className)}\n />\n );\n});\nTabsList.displayName = 'Tabs.List';\n\ntype TabsTriggerElement = React.ElementRef<typeof TabsPrimitive.Trigger>;\ninterface TabsTriggerProps\n extends ComponentPropsWithout<typeof TabsPrimitive.Trigger, RemovedProps> {}\nconst TabsTrigger = React.forwardRef<TabsTriggerElement, TabsTriggerProps>(\n (props, forwardedRef) => {\n const { className, children, ...triggerProps } = props;\n return (\n <TabsPrimitive.Trigger\n {...triggerProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseTabListTrigger', 'rt-TabsTrigger', className)}\n >\n <span className=\"rt-BaseTabListTriggerInner rt-TabsTriggerInner\">{children}</span>\n <span className=\"rt-BaseTabListTriggerInnerHidden rt-TabsTriggerInnerHidden\">\n {children}\n </span>\n </TabsPrimitive.Trigger>\n );\n },\n);\nTabsTrigger.displayName = 'Tabs.Trigger';\n\ntype TabsContentElement = React.ElementRef<typeof TabsPrimitive.Content>;\ntype TabsContentOwnProps = GetPropDefTypes<typeof tabsContentPropDefs>;\ninterface TabsContentProps\n extends ComponentPropsWithout<typeof TabsPrimitive.Content, RemovedProps>,\n MarginProps,\n TabsContentOwnProps {}\nconst TabsContent = React.forwardRef<TabsContentElement, TabsContentProps>(\n (props, forwardedRef) => {\n const { className, ...contentProps } = extractProps(props, marginPropDefs);\n return (\n <TabsPrimitive.Content\n {...contentProps}\n ref={forwardedRef}\n className={classNames('rt-TabsContent', className)}\n aria-live=\"polite\"\n aria-atomic=\"true\"\n />\n );\n },\n);\nTabsContent.displayName = 'Tabs.Content';\n\nexport { TabsRoot as Root, TabsList as List, TabsTrigger as Trigger, TabsContent as Content };\nexport type {\n TabsRootProps as RootProps,\n TabsListProps as ListProps,\n TabsTriggerProps as TriggerProps,\n TabsContentProps as ContentProps,\n};\n"],
5
+ "mappings": "AAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,QAAQC,MAAqB,WAEtC,OAAS,oBAAAC,MAAwB,kBACjC,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,kBAAAC,MAAsB,2BAa/B,MAAMC,EAAWN,EAAM,WAA2C,CAACO,EAAOC,IAAiB,CACzF,KAAM,CAAE,UAAAC,EAAW,GAAGC,CAAU,EAAIN,EAAaG,EAAOF,CAAc,EACtE,OACEL,EAAA,cAACE,EAAc,KAAd,CACE,GAAGQ,EACJ,IAAKF,EACL,UAAWP,EAAW,cAAeQ,CAAS,EAChD,CAEJ,CAAC,EACDH,EAAS,YAAc,YAQvB,MAAMK,EAAWX,EAAM,WAA2C,CAACO,EAAOC,IAAiB,CACzF,KAAM,CAAE,UAAAC,EAAW,MAAAG,EAAO,gBAAAC,EAAiB,GAAGC,CAAU,EAAIV,EAC1DG,EACAJ,EACAE,CACF,EACA,OACEL,EAAA,cAACE,EAAc,KAAd,CACC,oBAAmBU,EACnB,wBAAuBC,EACtB,GAAGC,EACJ,QAAS,GACT,IAAKN,EACL,UAAWP,EAAW,iBAAkB,cAAeQ,CAAS,EAClE,CAEJ,CAAC,EACDE,EAAS,YAAc,YAKvB,MAAMI,EAAcf,EAAM,WACxB,CAACO,EAAOC,IAAiB,CACvB,KAAM,CAAE,UAAAC,EAAW,SAAAO,EAAU,GAAGC,CAAa,EAAIV,EACjD,OACEP,EAAA,cAACE,EAAc,QAAd,CACE,GAAGe,EACJ,QAAS,GACT,IAAKT,EACL,UAAWP,EAAW,WAAY,wBAAyB,iBAAkBQ,CAAS,GAEtFT,EAAA,cAAC,QAAK,UAAU,kDAAkDgB,CAAS,EAC3EhB,EAAA,cAAC,QAAK,UAAU,8DACbgB,CACH,CACF,CAEJ,CACF,EACAD,EAAY,YAAc,eAQ1B,MAAMG,EAAclB,EAAM,WACxB,CAACO,EAAOC,IAAiB,CACvB,KAAM,CAAE,UAAAC,EAAW,GAAGU,CAAa,EAAIf,EAAaG,EAAOF,CAAc,EACzE,OACEL,EAAA,cAACE,EAAc,QAAd,CACE,GAAGiB,EACJ,IAAKX,EACL,UAAWP,EAAW,iBAAkBQ,CAAS,EACjD,YAAU,SACV,cAAY,OACd,CAEJ,CACF,EACAS,EAAY,YAAc",
6
6
  "names": ["React", "classNames", "TabsPrimitive", "tabsListPropDefs", "extractProps", "marginPropDefs", "TabsRoot", "props", "forwardedRef", "className", "rootProps", "TabsList", "color", "panelBackground", "listProps", "TabsTrigger", "children", "triggerProps", "TabsContent", "contentProps"]
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"text-area.d.ts","sourceRoot":"","sources":["../../../src/components/text-area.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,KAAK,gBAAgB,GAAG,eAAe,CAAC,OAAO,gBAAgB,CAAC,GAAG;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,UAAU,aACR,SAAQ,qBAAqB,CAAC,UAAU,EAAE,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC,EACxE,WAAW,EACX,gBAAgB;CAAG;AACvB,QAAA,MAAM,QAAQ,2FAiBZ,CAAC;AAGH,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"text-area.d.ts","sourceRoot":"","sources":["../../../src/components/text-area.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,KAAK,gBAAgB,GAAG,eAAe,CAAC,OAAO,gBAAgB,CAAC,GAAG;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,UAAU,aACR,SAAQ,qBAAqB,CAAC,UAAU,EAAE,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC,EACxE,WAAW,EACX,gBAAgB;CAAG;AAEvB,QAAA,MAAM,QAAQ,2FAkEZ,CAAC;AAIH,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,aAAa,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import*as e from"react";import f from"classnames";import{textAreaPropDefs as x}from"./text-area.props.js";import{extractProps as l}from"../helpers/extract-props.js";import{marginPropDefs as P}from"../props/margin.props.js";const r=e.forwardRef((t,o)=>{const{className:a,color:p,radius:s,panelBackground:m,style:n,...i}=l(t,x,P);return e.createElement("div",{"data-accent-color":p,"data-radius":s,"data-panel-background":m,className:f("rt-TextAreaRoot",a),style:n},e.createElement("textarea",{className:"rt-reset rt-TextAreaInput",ref:o,...i}))});r.displayName="TextArea";export{r as TextArea};
1
+ import*as r from"react";import A from"classnames";import{textAreaPropDefs as g}from"./text-area.props.js";import{extractProps as T}from"../helpers/extract-props.js";import{marginPropDefs as M}from"../props/margin.props.js";const l=r.forwardRef((d,m)=>{const{className:c,color:f,radius:x,panelBackground:y,material:b,style:u,...e}=T(d,g,M),i=b||y,t=r.useId(),{"aria-describedby":o,"aria-labelledby":p}=e,s=e.error||e.isInvalid,n=r.useMemo(()=>{const a=[];return e.errorMessage&&a.push(t),o&&a.push(o),a.length>0?a.join(" "):void 0},[e.errorMessage,o,t]),P=r.useMemo(()=>({"aria-invalid":s,"aria-describedby":n,"aria-labelledby":p}),[s,n,p]),{error:D,errorMessage:I,isInvalid:h,required:N,"aria-describedby":j,"aria-labelledby":E,...v}=e;return r.createElement("div",{"data-accent-color":f,"data-radius":x,"data-panel-background":i,"data-material":i,className:A("rt-TextAreaRoot",c,{"rt-error":s}),style:u},r.createElement("textarea",{className:"rt-reset rt-TextAreaInput",ref:m,...v,...P}),e.errorMessage&&r.createElement("div",{id:t,className:"rt-TextAreaErrorMessage",role:"alert","aria-live":"polite"},e.errorMessage))});l.displayName="TextArea";export{l as TextArea};
2
2
  //# sourceMappingURL=text-area.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/text-area.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\n\nimport { textAreaPropDefs } from './text-area.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TextAreaElement = React.ElementRef<'textarea'>;\ntype TextAreaOwnProps = GetPropDefTypes<typeof textAreaPropDefs> & {\n defaultValue?: string;\n value?: string;\n};\ninterface TextAreaProps\n extends ComponentPropsWithout<'textarea', RemovedProps | 'size' | 'value'>,\n MarginProps,\n TextAreaOwnProps {}\nconst TextArea = React.forwardRef<TextAreaElement, TextAreaProps>((props, forwardedRef) => {\n const { className, color, radius, panelBackground, style, ...textAreaProps } = extractProps(\n props,\n textAreaPropDefs,\n marginPropDefs,\n );\n return (\n <div\n data-accent-color={color}\n data-radius={radius}\n data-panel-background={panelBackground}\n className={classNames('rt-TextAreaRoot', className)}\n style={style}\n >\n <textarea className=\"rt-reset rt-TextAreaInput\" ref={forwardedRef} {...textAreaProps} />\n </div>\n );\n});\nTextArea.displayName = 'TextArea';\n\nexport { TextArea };\nexport type { TextAreaProps };\n"],
5
- "mappings": "AAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aAEvB,OAAS,oBAAAC,MAAwB,uBACjC,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,kBAAAC,MAAsB,2BAe/B,MAAMC,EAAWL,EAAM,WAA2C,CAACM,EAAOC,IAAiB,CACzF,KAAM,CAAE,UAAAC,EAAW,MAAAC,EAAO,OAAAC,EAAQ,gBAAAC,EAAiB,MAAAC,EAAO,GAAGC,CAAc,EAAIV,EAC7EG,EACAJ,EACAE,CACF,EACA,OACEJ,EAAA,cAAC,OACC,oBAAmBS,EACnB,cAAaC,EACb,wBAAuBC,EACvB,UAAWV,EAAW,kBAAmBO,CAAS,EAClD,MAAOI,GAEPZ,EAAA,cAAC,YAAS,UAAU,4BAA4B,IAAKO,EAAe,GAAGM,EAAe,CACxF,CAEJ,CAAC,EACDR,EAAS,YAAc",
6
- "names": ["React", "classNames", "textAreaPropDefs", "extractProps", "marginPropDefs", "TextArea", "props", "forwardedRef", "className", "color", "radius", "panelBackground", "style", "textAreaProps"]
4
+ "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\n\nimport { textAreaPropDefs } from './text-area.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TextAreaElement = React.ElementRef<'textarea'>;\ntype TextAreaOwnProps = GetPropDefTypes<typeof textAreaPropDefs> & {\n defaultValue?: string;\n value?: string;\n};\ninterface TextAreaProps\n extends ComponentPropsWithout<'textarea', RemovedProps | 'size' | 'value'>,\n MarginProps,\n TextAreaOwnProps {}\n\nconst TextArea = React.forwardRef<TextAreaElement, TextAreaProps>((props, forwardedRef) => {\n const { className, color, radius, panelBackground, material, style, ...textAreaProps } =\n extractProps(props, textAreaPropDefs, marginPropDefs);\n const effectiveMaterial = material || panelBackground;\n\n // Generate unique IDs for accessibility\n const errorId = React.useId();\n\n const { 'aria-describedby': ariaDescribedby, 'aria-labelledby': ariaLabelledby } = textAreaProps;\n \n // Determine invalid state\n const isInvalid = textAreaProps.error || textAreaProps.isInvalid;\n\n // Build aria-describedby string\n const describedBy = React.useMemo(() => {\n const parts = [];\n if (textAreaProps.errorMessage) parts.push(errorId);\n if (ariaDescribedby) parts.push(ariaDescribedby);\n return parts.length > 0 ? parts.join(' ') : undefined;\n }, [textAreaProps.errorMessage, ariaDescribedby, errorId]);\n\n // Build aria attributes\n const ariaProps = React.useMemo(\n () => ({\n 'aria-invalid': isInvalid,\n 'aria-describedby': describedBy,\n 'aria-labelledby': ariaLabelledby,\n }),\n [isInvalid, describedBy, ariaLabelledby],\n );\n\n // Filter out our custom props to avoid DOM warnings\n const {\n error,\n errorMessage,\n isInvalid: _isInvalid,\n required,\n 'aria-describedby': _ariaDescribedby,\n 'aria-labelledby': _ariaLabelledby,\n ...nativeTextAreaProps\n } = textAreaProps;\n\n return (\n <div\n data-accent-color={color}\n data-radius={radius}\n data-panel-background={effectiveMaterial}\n data-material={effectiveMaterial}\n className={classNames('rt-TextAreaRoot', className, {\n 'rt-error': isInvalid,\n })}\n style={style}\n >\n <textarea\n className=\"rt-reset rt-TextAreaInput\"\n ref={forwardedRef}\n {...nativeTextAreaProps}\n {...ariaProps}\n />\n {textAreaProps.errorMessage && (\n <div id={errorId} className=\"rt-TextAreaErrorMessage\" role=\"alert\" aria-live=\"polite\">\n {textAreaProps.errorMessage}\n </div>\n )}\n </div>\n );\n});\n\nTextArea.displayName = 'TextArea';\n\nexport { TextArea };\nexport type { TextAreaProps };\n"],
5
+ "mappings": "AAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aAEvB,OAAS,oBAAAC,MAAwB,uBACjC,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,kBAAAC,MAAsB,2BAgB/B,MAAMC,EAAWL,EAAM,WAA2C,CAACM,EAAOC,IAAiB,CACzF,KAAM,CAAE,UAAAC,EAAW,MAAAC,EAAO,OAAAC,EAAQ,gBAAAC,EAAiB,SAAAC,EAAU,MAAAC,EAAO,GAAGC,CAAc,EACnFX,EAAaG,EAAOJ,EAAkBE,CAAc,EAChDW,EAAoBH,GAAYD,EAGhCK,EAAUhB,EAAM,MAAM,EAEtB,CAAE,mBAAoBiB,EAAiB,kBAAmBC,CAAe,EAAIJ,EAG7EK,EAAYL,EAAc,OAASA,EAAc,UAGjDM,EAAcpB,EAAM,QAAQ,IAAM,CACtC,MAAMqB,EAAQ,CAAC,EACf,OAAIP,EAAc,cAAcO,EAAM,KAAKL,CAAO,EAC9CC,GAAiBI,EAAM,KAAKJ,CAAe,EACxCI,EAAM,OAAS,EAAIA,EAAM,KAAK,GAAG,EAAI,MAC9C,EAAG,CAACP,EAAc,aAAcG,EAAiBD,CAAO,CAAC,EAGnDM,EAAYtB,EAAM,QACtB,KAAO,CACL,eAAgBmB,EAChB,mBAAoBC,EACpB,kBAAmBF,CACrB,GACA,CAACC,EAAWC,EAAaF,CAAc,CACzC,EAGM,CACJ,MAAAK,EACA,aAAAC,EACA,UAAWC,EACX,SAAAC,EACA,mBAAoBC,EACpB,kBAAmBC,EACnB,GAAGC,CACL,EAAIf,EAEJ,OACEd,EAAA,cAAC,OACC,oBAAmBS,EACnB,cAAaC,EACb,wBAAuBK,EACvB,gBAAeA,EACf,UAAWd,EAAW,kBAAmBO,EAAW,CAClD,WAAYW,CACd,CAAC,EACD,MAAON,GAEPb,EAAA,cAAC,YACC,UAAU,4BACV,IAAKO,EACJ,GAAGsB,EACH,GAAGP,EACN,EACCR,EAAc,cACbd,EAAA,cAAC,OAAI,GAAIgB,EAAS,UAAU,0BAA0B,KAAK,QAAQ,YAAU,UAC1EF,EAAc,YACjB,CAEJ,CAEJ,CAAC,EAEDT,EAAS,YAAc",
6
+ "names": ["React", "classNames", "textAreaPropDefs", "extractProps", "marginPropDefs", "TextArea", "props", "forwardedRef", "className", "color", "radius", "panelBackground", "material", "style", "textAreaProps", "effectiveMaterial", "errorId", "ariaDescribedby", "ariaLabelledby", "isInvalid", "describedBy", "parts", "ariaProps", "error", "errorMessage", "_isInvalid", "required", "_ariaDescribedby", "_ariaLabelledby", "nativeTextAreaProps"]
7
7
  }
@@ -33,6 +33,35 @@ declare const textAreaPropDefs: {
33
33
  values: readonly ["solid", "translucent"];
34
34
  default: undefined;
35
35
  };
36
+ material: {
37
+ type: "enum";
38
+ values: readonly ["solid", "translucent"];
39
+ default: undefined;
40
+ };
41
+ error: {
42
+ type: "boolean";
43
+ default: false;
44
+ };
45
+ errorMessage: {
46
+ type: "string";
47
+ default: undefined;
48
+ };
49
+ isInvalid: {
50
+ type: "boolean";
51
+ default: false;
52
+ };
53
+ required: {
54
+ type: "boolean";
55
+ default: false;
56
+ };
57
+ 'aria-describedby': {
58
+ type: "string";
59
+ default: undefined;
60
+ };
61
+ 'aria-labelledby': {
62
+ type: "string";
63
+ default: undefined;
64
+ };
36
65
  };
37
66
  export { textAreaPropDefs };
38
67
  //# sourceMappingURL=text-area.props.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"text-area.props.d.ts","sourceRoot":"","sources":["../../../src/components/text-area.props.tsx"],"names":[],"mappings":"AAWA,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYjB,CAAC;AAEN,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"text-area.props.d.ts","sourceRoot":"","sources":["../../../src/components/text-area.props.tsx"],"names":[],"mappings":"AAYA,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BrB,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import{colorPropDef as e}from"../props/color.prop.js";import{radiusPropDef as s}from"../props/radius.prop.js";const r=["1","2","3"],a=["classic","surface","soft","outline","ghost"],o=["none","vertical","horizontal","both"],t=["solid","translucent"],n={size:{type:"enum",className:"rt-r-size",values:r,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:a,default:"surface"},resize:{type:"enum",className:"rt-r-resize",values:o,responsive:!0},panelBackground:{type:"enum",values:t,default:void 0},...e,...s};export{n as textAreaPropDefs};
1
+ import{colorPropDef as e}from"../props/color.prop.js";import{radiusPropDef as r}from"../props/radius.prop.js";const a=["1","2","3"],s=["classic","surface","soft","outline","ghost"],n=["none","vertical","horizontal","both"],t=["solid","translucent"],o=["solid","translucent"],i={size:{type:"enum",className:"rt-r-size",values:a,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:s,default:"surface"},resize:{type:"enum",className:"rt-r-resize",values:n,responsive:!0},panelBackground:{type:"enum",values:t,default:void 0},material:{type:"enum",values:o,default:void 0},error:{type:"boolean",default:!1},errorMessage:{type:"string",default:void 0},isInvalid:{type:"boolean",default:!1},required:{type:"boolean",default:!1},"aria-describedby":{type:"string",default:void 0},"aria-labelledby":{type:"string",default:void 0},...e,...r};export{i as textAreaPropDefs};
2
2
  //# sourceMappingURL=text-area.props.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/text-area.props.tsx"],
4
- "sourcesContent": ["import { colorPropDef } from '../props/color.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3'] as const;\nconst variants = ['classic', 'surface', 'soft', 'outline', 'ghost'] as const;\nconst resizeValues = ['none', 'vertical', 'horizontal', 'both'] as const;\nconst panelBackgrounds = ['solid', 'translucent'] as const;\n\n// prettier-ignore\nconst textAreaPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'surface' },\n resize: { type: 'enum', className: 'rt-r-resize', values: resizeValues, responsive: true },\n panelBackground: { type: 'enum', values: panelBackgrounds, default: undefined },\n ...colorPropDef,\n ...radiusPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n resize: PropDef<(typeof resizeValues)[number]>;\n panelBackground: PropDef<(typeof panelBackgrounds)[number] | undefined>;\n };\n\nexport { textAreaPropDefs };\n"],
5
- "mappings": "AAAA,OAAS,gBAAAA,MAAoB,yBAC7B,OAAS,iBAAAC,MAAqB,0BAI9B,MAAMC,EAAQ,CAAC,IAAK,IAAK,GAAG,EACtBC,EAAW,CAAC,UAAW,UAAW,OAAQ,UAAW,OAAO,EAC5DC,EAAe,CAAC,OAAQ,WAAY,aAAc,MAAM,EACxDC,EAAmB,CAAC,QAAS,aAAa,EAG1CC,EAAmB,CACvB,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQJ,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,SAAU,EACvF,OAAQ,CAAE,KAAM,OAAQ,UAAW,cAAe,OAAQC,EAAe,WAAY,EAAK,EAC1F,gBAAiB,CAAE,KAAM,OAAQ,OAAQC,EAAkB,QAAS,MAAU,EAC9E,GAAGL,EACH,GAAGC,CACL",
6
- "names": ["colorPropDef", "radiusPropDef", "sizes", "variants", "resizeValues", "panelBackgrounds", "textAreaPropDefs"]
4
+ "sourcesContent": ["import { colorPropDef } from '../props/color.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3'] as const;\nconst variants = ['classic', 'surface', 'soft', 'outline', 'ghost'] as const;\nconst resizeValues = ['none', 'vertical', 'horizontal', 'both'] as const;\nconst panelBackgrounds = ['solid', 'translucent'] as const;\nconst materials = ['solid', 'translucent'] as const;\n\n// prettier-ignore\nconst textAreaPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'surface' },\n resize: { type: 'enum', className: 'rt-r-resize', values: resizeValues, responsive: true },\n panelBackground: { type: 'enum', values: panelBackgrounds, default: undefined },\n material: { type: 'enum', values: materials, default: undefined },\n // Error and validation props\n error: { type: 'boolean', default: false },\n errorMessage: { type: 'string', default: undefined },\n isInvalid: { type: 'boolean', default: false },\n required: { type: 'boolean', default: false },\n // Accessibility props\n 'aria-describedby': { type: 'string', default: undefined },\n 'aria-labelledby': { type: 'string', default: undefined },\n ...colorPropDef,\n ...radiusPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n resize: PropDef<(typeof resizeValues)[number]>;\n panelBackground: PropDef<(typeof panelBackgrounds)[number] | undefined>;\n material: PropDef<(typeof materials)[number] | undefined>;\n error: PropDef<boolean>;\n errorMessage: PropDef<string | undefined>;\n isInvalid: PropDef<boolean>;\n required: PropDef<boolean>;\n 'aria-describedby': PropDef<string | undefined>;\n 'aria-labelledby': PropDef<string | undefined>;\n};\n\nexport { textAreaPropDefs };\n"],
5
+ "mappings": "AAAA,OAAS,gBAAAA,MAAoB,yBAC7B,OAAS,iBAAAC,MAAqB,0BAI9B,MAAMC,EAAQ,CAAC,IAAK,IAAK,GAAG,EACtBC,EAAW,CAAC,UAAW,UAAW,OAAQ,UAAW,OAAO,EAC5DC,EAAe,CAAC,OAAQ,WAAY,aAAc,MAAM,EACxDC,EAAmB,CAAC,QAAS,aAAa,EAC1CC,EAAY,CAAC,QAAS,aAAa,EAGnCC,EAAmB,CACvB,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQL,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,SAAU,EACvF,OAAQ,CAAE,KAAM,OAAQ,UAAW,cAAe,OAAQC,EAAe,WAAY,EAAK,EAC1F,gBAAiB,CAAE,KAAM,OAAQ,OAAQC,EAAkB,QAAS,MAAU,EAC9E,SAAU,CAAE,KAAM,OAAQ,OAAQC,EAAW,QAAS,MAAU,EAEhE,MAAO,CAAE,KAAM,UAAW,QAAS,EAAM,EACzC,aAAc,CAAE,KAAM,SAAU,QAAS,MAAU,EACnD,UAAW,CAAE,KAAM,UAAW,QAAS,EAAM,EAC7C,SAAU,CAAE,KAAM,UAAW,QAAS,EAAM,EAE5C,mBAAoB,CAAE,KAAM,SAAU,QAAS,MAAU,EACzD,kBAAmB,CAAE,KAAM,SAAU,QAAS,MAAU,EACxD,GAAGN,EACH,GAAGC,CACL",
6
+ "names": ["colorPropDef", "radiusPropDef", "sizes", "variants", "resizeValues", "panelBackgrounds", "materials", "textAreaPropDefs"]
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"text-field.d.ts","sourceRoot":"","sources":["../../../src/components/text-field.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAIrF,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,KAAK,qBAAqB,GAAG,eAAe,CAAC,OAAO,qBAAqB,CAAC,GAAG;IAC3E,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,IAAI,CAAC,EACD,MAAM,GACN,gBAAgB,GAChB,OAAO,GACP,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,UAAU,GACV,QAAQ,GACR,KAAK,GACL,MAAM,GACN,MAAM,GACN,KAAK,GACL,MAAM,CAAC;CACZ,CAAC;AACF,KAAK,mBAAmB,GAAG,qBAAqB,CAC9C,OAAO,EACP,yBAAyB,GAAG,OAAO,GAAG,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CACjF,CAAC;AACF,UAAU,kBAAmB,SAAQ,mBAAmB,EAAE,WAAW,EAAE,qBAAqB;CAAG;AAC/F,QAAA,MAAM,aAAa,6FA+ClB,CAAC;AAIF,KAAK,qBAAqB,GAAG,eAAe,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC3E,UAAU,kBACR,SAAQ,qBAAqB,CAAC,KAAK,EAAE,YAAY,CAAC,EAChD,qBAAqB;CAAG;AAC5B,QAAA,MAAM,aAAa,2FAalB,CAAC;AAGF,OAAO,EAAE,aAAa,IAAI,IAAI,EAAE,aAAa,IAAI,IAAI,EAAE,CAAC;AACxD,YAAY,EAAE,kBAAkB,IAAI,SAAS,EAAE,kBAAkB,IAAI,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"text-field.d.ts","sourceRoot":"","sources":["../../../src/components/text-field.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAIrF,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,KAAK,qBAAqB,GAAG,eAAe,CAAC,OAAO,qBAAqB,CAAC,GAAG;IAC3E,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,IAAI,CAAC,EACD,MAAM,GACN,gBAAgB,GAChB,OAAO,GACP,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,UAAU,GACV,QAAQ,GACR,KAAK,GACL,MAAM,GACN,MAAM,GACN,KAAK,GACL,MAAM,CAAC;CACZ,CAAC;AACF,KAAK,mBAAmB,GAAG,qBAAqB,CAC9C,OAAO,EACP,yBAAyB,GAAG,OAAO,GAAG,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CACjF,CAAC;AACF,UAAU,kBAAmB,SAAQ,mBAAmB,EAAE,WAAW,EAAE,qBAAqB;CAAG;AAC/F,QAAA,MAAM,aAAa,6FAkGlB,CAAC;AAIF,KAAK,qBAAqB,GAAG,eAAe,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC3E,UAAU,kBACR,SAAQ,qBAAqB,CAAC,KAAK,EAAE,YAAY,CAAC,EAChD,qBAAqB;CAAG;AAC5B,QAAA,MAAM,aAAa,2FAalB,CAAC;AAGF,OAAO,EAAE,aAAa,IAAI,IAAI,EAAE,aAAa,IAAI,IAAI,EAAE,CAAC;AACxD,YAAY,EAAE,kBAAkB,IAAI,SAAS,EAAE,kBAAkB,IAAI,SAAS,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
- "use client";import*as t from"react";import d from"classnames";import{composeRefs as R}from"radix-ui/internal";import{textFieldRootPropDefs as y,textFieldSlotPropDefs as S}from"./text-field.props.js";import{extractProps as m}from"../helpers/extract-props.js";import{marginPropDefs as g}from"../props/margin.props.js";const u=t.forwardRef((r,s)=>{const e=t.useRef(null),{children:l,className:p,color:i,radius:f,panelBackground:x,style:P,...T}=m(r,y,g);return t.createElement("div",{"data-accent-color":i,"data-radius":f,"data-panel-background":x,style:P,className:d("rt-TextFieldRoot",p),onPointerDown:F=>{const n=F.target;if(n.closest("input, button, a"))return;const o=e.current;if(!o)return;const a=n.closest(`
2
- .rt-TextFieldSlot[data-side='right'],
3
- .rt-TextFieldSlot:not([data-side='right']) ~ .rt-TextFieldSlot:not([data-side='left'])
4
- `)?o.value.length:0;requestAnimationFrame(()=>{try{o.setSelectionRange(a,a)}catch{}o.focus()})}},t.createElement("input",{spellCheck:"false",...T,ref:R(e,s),className:"rt-reset rt-TextFieldInput"}),l)});u.displayName="TextField.Root";const c=t.forwardRef((r,s)=>{const{className:e,color:l,side:p,...i}=m(r,S);return t.createElement("div",{"data-accent-color":l,"data-side":p,...i,ref:s,className:d("rt-TextFieldSlot",e)})});c.displayName="TextField.Slot";export{u as Root,c as Slot};
1
+ "use client";import*as e from"react";import y from"classnames";import{composeRefs as N}from"radix-ui/internal";import{textFieldRootPropDefs as w,textFieldSlotPropDefs as E}from"./text-field.props.js";import{extractProps as F}from"../helpers/extract-props.js";import{marginPropDefs as j}from"../props/margin.props.js";const b=e.forwardRef((i,a)=>{const r=e.useRef(null),{children:l,className:n,color:p,radius:g,panelBackground:v,material:h,style:S,...t}=F(i,w,j),u=h||v,d=e.useId(),c=t.error||t.isInvalid,{"aria-describedby":m,"aria-labelledby":f}=t,x=e.useMemo(()=>{const o=[];return t.errorMessage&&o.push(d),m&&o.push(m),o.length>0?o.join(" "):void 0},[t.errorMessage,m,d]),I=e.useMemo(()=>({"aria-invalid":c,"aria-describedby":x,"aria-labelledby":f}),[c,x,f]),{error:k,errorMessage:C,isInvalid:L,required:O,"aria-describedby":A,"aria-labelledby":G,...M}=t,D=e.useCallback(o=>{const P=o.target;if(P.closest("input, button, a"))return;const s=r.current;if(!s)return;const T=P.closest(`
2
+ .rt-TextFieldSlot[data-side='right'],
3
+ .rt-TextFieldSlot:not([data-side='right']) ~ .rt-TextFieldSlot:not([data-side='left'])
4
+ `)?s.value.length:0;requestAnimationFrame(()=>{try{s.setSelectionRange(T,T)}catch{}s.focus()})},[]);return e.createElement("div",{"data-accent-color":p,"data-radius":g,"data-panel-background":u,"data-material":u,style:S,className:y("rt-TextFieldRoot",n,{"rt-error":c}),onPointerDown:D},e.createElement("input",{spellCheck:"false",...M,...I,ref:N(r,a),className:"rt-reset rt-TextFieldInput"}),l,t.errorMessage&&e.createElement("div",{id:d,className:"rt-TextFieldErrorMessage",role:"alert","aria-live":"polite"},t.errorMessage))});b.displayName="TextField.Root";const R=e.forwardRef((i,a)=>{const{className:r,color:l,side:n,...p}=F(i,E);return e.createElement("div",{"data-accent-color":l,"data-side":n,...p,ref:a,className:y("rt-TextFieldSlot",r)})});R.displayName="TextField.Slot";export{b as Root,R as Slot};
5
5
  //# sourceMappingURL=text-field.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/text-field.tsx"],
4
- "sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { composeRefs } from 'radix-ui/internal';\n\nimport { textFieldRootPropDefs, textFieldSlotPropDefs } from './text-field.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { NotInputTextualAttributes } from '../helpers/input-attributes.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TextFieldRootElement = React.ElementRef<'input'>;\ntype TextFieldRootOwnProps = GetPropDefTypes<typeof textFieldRootPropDefs> & {\n defaultValue?: string | number;\n value?: string | number;\n type?:\n | 'date'\n | 'datetime-local'\n | 'email'\n | 'hidden'\n | 'month'\n | 'number'\n | 'password'\n | 'search'\n | 'tel'\n | 'text'\n | 'time'\n | 'url'\n | 'week';\n};\ntype TextFieldInputProps = ComponentPropsWithout<\n 'input',\n NotInputTextualAttributes | 'color' | 'defaultValue' | 'size' | 'type' | 'value'\n>;\ninterface TextFieldRootProps extends TextFieldInputProps, MarginProps, TextFieldRootOwnProps {}\nconst TextFieldRoot = React.forwardRef<TextFieldRootElement, TextFieldRootProps>(\n (props, forwardedRef) => {\n const inputRef = React.useRef<HTMLInputElement>(null);\n const { children, className, color, radius, panelBackground, style, ...inputProps } =\n extractProps(props, textFieldRootPropDefs, marginPropDefs);\n return (\n <div\n data-accent-color={color}\n data-radius={radius}\n data-panel-background={panelBackground}\n style={style}\n className={classNames('rt-TextFieldRoot', className)}\n onPointerDown={(event) => {\n const target = event.target as HTMLElement;\n if (target.closest('input, button, a')) return;\n\n const input = inputRef.current;\n if (!input) return;\n\n // Same selector as in the CSS to find the right slot\n const isRightSlot = target.closest(`\n .rt-TextFieldSlot[data-side='right'],\n .rt-TextFieldSlot:not([data-side='right']) ~ .rt-TextFieldSlot:not([data-side='left'])\n `);\n\n const cursorPosition = isRightSlot ? input.value.length : 0;\n\n requestAnimationFrame(() => {\n // Only some input types support this, browsers will throw an error if not supported\n // See: https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange#:~:text=Note%20that%20according,not%20support%20selection%22.\n try {\n input.setSelectionRange(cursorPosition, cursorPosition);\n } catch {}\n input.focus();\n });\n }}\n >\n <input\n spellCheck=\"false\"\n {...inputProps}\n ref={composeRefs(inputRef, forwardedRef)}\n className=\"rt-reset rt-TextFieldInput\"\n />\n {children}\n </div>\n );\n },\n);\nTextFieldRoot.displayName = 'TextField.Root';\n\ntype TextFieldSlotElement = React.ElementRef<'div'>;\ntype TextFieldSlotOwnProps = GetPropDefTypes<typeof textFieldSlotPropDefs>;\ninterface TextFieldSlotProps\n extends ComponentPropsWithout<'div', RemovedProps>,\n TextFieldSlotOwnProps {}\nconst TextFieldSlot = React.forwardRef<TextFieldSlotElement, TextFieldSlotProps>(\n (props, forwardedRef) => {\n const { className, color, side, ...slotProps } = extractProps(props, textFieldSlotPropDefs);\n return (\n <div\n data-accent-color={color}\n data-side={side}\n {...slotProps}\n ref={forwardedRef}\n className={classNames('rt-TextFieldSlot', className)}\n />\n );\n },\n);\nTextFieldSlot.displayName = 'TextField.Slot';\n\nexport { TextFieldRoot as Root, TextFieldSlot as Slot };\nexport type { TextFieldRootProps as RootProps, TextFieldSlotProps as SlotProps };\n"],
5
- "mappings": "aAEA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,eAAAC,MAAmB,oBAE5B,OAAS,yBAAAC,EAAuB,yBAAAC,MAA6B,wBAC7D,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,kBAAAC,MAAsB,2BA+B/B,MAAMC,EAAgBP,EAAM,WAC1B,CAACQ,EAAOC,IAAiB,CACvB,MAAMC,EAAWV,EAAM,OAAyB,IAAI,EAC9C,CAAE,SAAAW,EAAU,UAAAC,EAAW,MAAAC,EAAO,OAAAC,EAAQ,gBAAAC,EAAiB,MAAAC,EAAO,GAAGC,CAAW,EAChFZ,EAAaG,EAAOL,EAAuBG,CAAc,EAC3D,OACEN,EAAA,cAAC,OACC,oBAAmBa,EACnB,cAAaC,EACb,wBAAuBC,EACvB,MAAOC,EACP,UAAWf,EAAW,mBAAoBW,CAAS,EACnD,cAAgBM,GAAU,CACxB,MAAMC,EAASD,EAAM,OACrB,GAAIC,EAAO,QAAQ,kBAAkB,EAAG,OAExC,MAAMC,EAAQV,EAAS,QACvB,GAAI,CAACU,EAAO,OAQZ,MAAMC,EALcF,EAAO,QAAQ;AAAA;AAAA;AAAA,WAGlC,EAEoCC,EAAM,MAAM,OAAS,EAE1D,sBAAsB,IAAM,CAG1B,GAAI,CACFA,EAAM,kBAAkBC,EAAgBA,CAAc,CACxD,MAAQ,CAAC,CACTD,EAAM,MAAM,CACd,CAAC,CACH,GAEApB,EAAA,cAAC,SACC,WAAW,QACV,GAAGiB,EACJ,IAAKf,EAAYQ,EAAUD,CAAY,EACvC,UAAU,6BACZ,EACCE,CACH,CAEJ,CACF,EACAJ,EAAc,YAAc,iBAO5B,MAAMe,EAAgBtB,EAAM,WAC1B,CAACQ,EAAOC,IAAiB,CACvB,KAAM,CAAE,UAAAG,EAAW,MAAAC,EAAO,KAAAU,EAAM,GAAGC,CAAU,EAAInB,EAAaG,EAAOJ,CAAqB,EAC1F,OACEJ,EAAA,cAAC,OACC,oBAAmBa,EACnB,YAAWU,EACV,GAAGC,EACJ,IAAKf,EACL,UAAWR,EAAW,mBAAoBW,CAAS,EACrD,CAEJ,CACF,EACAU,EAAc,YAAc",
6
- "names": ["React", "classNames", "composeRefs", "textFieldRootPropDefs", "textFieldSlotPropDefs", "extractProps", "marginPropDefs", "TextFieldRoot", "props", "forwardedRef", "inputRef", "children", "className", "color", "radius", "panelBackground", "style", "inputProps", "event", "target", "input", "cursorPosition", "TextFieldSlot", "side", "slotProps"]
4
+ "sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { composeRefs } from 'radix-ui/internal';\n\nimport { textFieldRootPropDefs, textFieldSlotPropDefs } from './text-field.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { NotInputTextualAttributes } from '../helpers/input-attributes.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TextFieldRootElement = React.ElementRef<'input'>;\ntype TextFieldRootOwnProps = GetPropDefTypes<typeof textFieldRootPropDefs> & {\n defaultValue?: string | number;\n value?: string | number;\n type?:\n | 'date'\n | 'datetime-local'\n | 'email'\n | 'hidden'\n | 'month'\n | 'number'\n | 'password'\n | 'search'\n | 'tel'\n | 'text'\n | 'time'\n | 'url'\n | 'week';\n};\ntype TextFieldInputProps = ComponentPropsWithout<\n 'input',\n NotInputTextualAttributes | 'color' | 'defaultValue' | 'size' | 'type' | 'value'\n>;\ninterface TextFieldRootProps extends TextFieldInputProps, MarginProps, TextFieldRootOwnProps {}\nconst TextFieldRoot = React.forwardRef<TextFieldRootElement, TextFieldRootProps>(\n (props, forwardedRef) => {\n const inputRef = React.useRef<HTMLInputElement>(null);\n const { children, className, color, radius, panelBackground, material, style, ...inputProps } =\n extractProps(props, textFieldRootPropDefs, marginPropDefs);\n const effectiveMaterial = material || panelBackground;\n\n // Generate unique IDs for accessibility\n const errorId = React.useId();\n\n // Determine invalid state\n const isInvalid = inputProps.error || inputProps.isInvalid;\n\n const { 'aria-describedby': ariaDescribedby, 'aria-labelledby': ariaLabelledby } = inputProps;\n \n // Build aria-describedby string\n const describedBy = React.useMemo(() => {\n const parts = [];\n if (inputProps.errorMessage) parts.push(errorId);\n if (ariaDescribedby) parts.push(ariaDescribedby);\n return parts.length > 0 ? parts.join(' ') : undefined;\n }, [inputProps.errorMessage, ariaDescribedby, errorId]);\n\n // Build aria attributes\n const ariaProps = React.useMemo(\n () => ({\n 'aria-invalid': isInvalid,\n 'aria-describedby': describedBy,\n 'aria-labelledby': ariaLabelledby,\n }),\n [isInvalid, describedBy, ariaLabelledby],\n );\n\n // Filter out our custom props to avoid DOM warnings\n const {\n error,\n errorMessage,\n isInvalid: _isInvalid,\n required,\n 'aria-describedby': _ariaDescribedby,\n 'aria-labelledby': _ariaLabelledby,\n ...nativeInputProps\n } = inputProps;\n\n // Memoized pointer event handler\n const handlePointerDown = React.useCallback((event: React.PointerEvent) => {\n const target = event.target as HTMLElement;\n if (target.closest('input, button, a')) return;\n\n const input = inputRef.current;\n if (!input) return;\n\n // Same selector as in the CSS to find the right slot\n const isRightSlot = target.closest(`\n .rt-TextFieldSlot[data-side='right'],\n .rt-TextFieldSlot:not([data-side='right']) ~ .rt-TextFieldSlot:not([data-side='left'])\n `);\n\n const cursorPosition = isRightSlot ? input.value.length : 0;\n\n requestAnimationFrame(() => {\n // Only some input types support this, browsers will throw an error if not supported\n // See: https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange#:~:text=Note%20that%20according,not%20support%20selection%22.\n try {\n input.setSelectionRange(cursorPosition, cursorPosition);\n } catch {}\n input.focus();\n });\n }, []);\n\n return (\n <div\n data-accent-color={color}\n data-radius={radius}\n data-panel-background={effectiveMaterial}\n data-material={effectiveMaterial}\n style={style}\n className={classNames('rt-TextFieldRoot', className, {\n 'rt-error': isInvalid,\n })}\n onPointerDown={handlePointerDown}\n >\n <input\n spellCheck=\"false\"\n {...nativeInputProps}\n {...ariaProps}\n ref={composeRefs(inputRef, forwardedRef)}\n className=\"rt-reset rt-TextFieldInput\"\n />\n {children}\n {inputProps.errorMessage && (\n <div id={errorId} className=\"rt-TextFieldErrorMessage\" role=\"alert\" aria-live=\"polite\">\n {inputProps.errorMessage}\n </div>\n )}\n </div>\n );\n },\n);\nTextFieldRoot.displayName = 'TextField.Root';\n\ntype TextFieldSlotElement = React.ElementRef<'div'>;\ntype TextFieldSlotOwnProps = GetPropDefTypes<typeof textFieldSlotPropDefs>;\ninterface TextFieldSlotProps\n extends ComponentPropsWithout<'div', RemovedProps>,\n TextFieldSlotOwnProps {}\nconst TextFieldSlot = React.forwardRef<TextFieldSlotElement, TextFieldSlotProps>(\n (props, forwardedRef) => {\n const { className, color, side, ...slotProps } = extractProps(props, textFieldSlotPropDefs);\n return (\n <div\n data-accent-color={color}\n data-side={side}\n {...slotProps}\n ref={forwardedRef}\n className={classNames('rt-TextFieldSlot', className)}\n />\n );\n },\n);\nTextFieldSlot.displayName = 'TextField.Slot';\n\nexport { TextFieldRoot as Root, TextFieldSlot as Slot };\nexport type { TextFieldRootProps as RootProps, TextFieldSlotProps as SlotProps };\n"],
5
+ "mappings": "aAEA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,eAAAC,MAAmB,oBAE5B,OAAS,yBAAAC,EAAuB,yBAAAC,MAA6B,wBAC7D,OAAS,gBAAAC,MAAoB,8BAC7B,OAAS,kBAAAC,MAAsB,2BA+B/B,MAAMC,EAAgBP,EAAM,WAC1B,CAACQ,EAAOC,IAAiB,CACvB,MAAMC,EAAWV,EAAM,OAAyB,IAAI,EAC9C,CAAE,SAAAW,EAAU,UAAAC,EAAW,MAAAC,EAAO,OAAAC,EAAQ,gBAAAC,EAAiB,SAAAC,EAAU,MAAAC,EAAO,GAAGC,CAAW,EAC1Fb,EAAaG,EAAOL,EAAuBG,CAAc,EACrDa,EAAoBH,GAAYD,EAGhCK,EAAUpB,EAAM,MAAM,EAGtBqB,EAAYH,EAAW,OAASA,EAAW,UAE3C,CAAE,mBAAoBI,EAAiB,kBAAmBC,CAAe,EAAIL,EAG7EM,EAAcxB,EAAM,QAAQ,IAAM,CACtC,MAAMyB,EAAQ,CAAC,EACf,OAAIP,EAAW,cAAcO,EAAM,KAAKL,CAAO,EAC3CE,GAAiBG,EAAM,KAAKH,CAAe,EACxCG,EAAM,OAAS,EAAIA,EAAM,KAAK,GAAG,EAAI,MAC9C,EAAG,CAACP,EAAW,aAAcI,EAAiBF,CAAO,CAAC,EAGhDM,EAAY1B,EAAM,QACtB,KAAO,CACL,eAAgBqB,EAChB,mBAAoBG,EACpB,kBAAmBD,CACrB,GACA,CAACF,EAAWG,EAAaD,CAAc,CACzC,EAGM,CACJ,MAAAI,EACA,aAAAC,EACA,UAAWC,EACX,SAAAC,EACA,mBAAoBC,EACpB,kBAAmBC,EACnB,GAAGC,CACL,EAAIf,EAGEgB,EAAoBlC,EAAM,YAAamC,GAA8B,CACzE,MAAMC,EAASD,EAAM,OACrB,GAAIC,EAAO,QAAQ,kBAAkB,EAAG,OAExC,MAAMC,EAAQ3B,EAAS,QACvB,GAAI,CAAC2B,EAAO,OAQZ,MAAMC,EALcF,EAAO,QAAQ;AAAA;AAAA;AAAA,OAGlC,EAEoCC,EAAM,MAAM,OAAS,EAE1D,sBAAsB,IAAM,CAG1B,GAAI,CACFA,EAAM,kBAAkBC,EAAgBA,CAAc,CACxD,MAAQ,CAAC,CACTD,EAAM,MAAM,CACd,CAAC,CACH,EAAG,CAAC,CAAC,EAEL,OACErC,EAAA,cAAC,OACC,oBAAmBa,EACnB,cAAaC,EACb,wBAAuBK,EACvB,gBAAeA,EACf,MAAOF,EACP,UAAWhB,EAAW,mBAAoBW,EAAW,CACnD,WAAYS,CACd,CAAC,EACD,cAAea,GAEflC,EAAA,cAAC,SACC,WAAW,QACV,GAAGiC,EACH,GAAGP,EACJ,IAAKxB,EAAYQ,EAAUD,CAAY,EACvC,UAAU,6BACZ,EACCE,EACAO,EAAW,cACVlB,EAAA,cAAC,OAAI,GAAIoB,EAAS,UAAU,2BAA2B,KAAK,QAAQ,YAAU,UAC3EF,EAAW,YACd,CAEJ,CAEJ,CACF,EACAX,EAAc,YAAc,iBAO5B,MAAMgC,EAAgBvC,EAAM,WAC1B,CAACQ,EAAOC,IAAiB,CACvB,KAAM,CAAE,UAAAG,EAAW,MAAAC,EAAO,KAAA2B,EAAM,GAAGC,CAAU,EAAIpC,EAAaG,EAAOJ,CAAqB,EAC1F,OACEJ,EAAA,cAAC,OACC,oBAAmBa,EACnB,YAAW2B,EACV,GAAGC,EACJ,IAAKhC,EACL,UAAWR,EAAW,mBAAoBW,CAAS,EACrD,CAEJ,CACF,EACA2B,EAAc,YAAc",
6
+ "names": ["React", "classNames", "composeRefs", "textFieldRootPropDefs", "textFieldSlotPropDefs", "extractProps", "marginPropDefs", "TextFieldRoot", "props", "forwardedRef", "inputRef", "children", "className", "color", "radius", "panelBackground", "material", "style", "inputProps", "effectiveMaterial", "errorId", "isInvalid", "ariaDescribedby", "ariaLabelledby", "describedBy", "parts", "ariaProps", "error", "errorMessage", "_isInvalid", "required", "_ariaDescribedby", "_ariaLabelledby", "nativeInputProps", "handlePointerDown", "event", "target", "input", "cursorPosition", "TextFieldSlot", "side", "slotProps"]
7
7
  }
@@ -4,6 +4,11 @@ declare const textFieldRootPropDefs: {
4
4
  values: readonly ["solid", "translucent"];
5
5
  default: undefined;
6
6
  };
7
+ material: {
8
+ type: "enum";
9
+ values: readonly ["solid", "translucent"];
10
+ default: undefined;
11
+ };
7
12
  radius: {
8
13
  type: "enum";
9
14
  values: readonly ["none", "small", "medium", "large", "full"];
@@ -27,6 +32,30 @@ declare const textFieldRootPropDefs: {
27
32
  values: readonly ["classic", "surface", "soft", "ghost", "outline"];
28
33
  default: "surface";
29
34
  };
35
+ error: {
36
+ type: "boolean";
37
+ default: false;
38
+ };
39
+ errorMessage: {
40
+ type: "string";
41
+ default: undefined;
42
+ };
43
+ isInvalid: {
44
+ type: "boolean";
45
+ default: false;
46
+ };
47
+ required: {
48
+ type: "boolean";
49
+ default: false;
50
+ };
51
+ 'aria-describedby': {
52
+ type: "string";
53
+ default: undefined;
54
+ };
55
+ 'aria-labelledby': {
56
+ type: "string";
57
+ default: undefined;
58
+ };
30
59
  };
31
60
  declare const textFieldSlotPropDefs: {
32
61
  gap: {