@verdify/ui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (443) hide show
  1. package/LICENSE +12 -0
  2. package/README.md +117 -0
  3. package/dist/components/accordion/accordion.d.ts +66 -0
  4. package/dist/components/accordion/accordion.d.ts.map +1 -0
  5. package/dist/components/accordion/accordion.js +97 -0
  6. package/dist/components/accordion/accordion.js.map +1 -0
  7. package/dist/components/accordion/accordion.variants.d.ts +9 -0
  8. package/dist/components/accordion/accordion.variants.d.ts.map +1 -0
  9. package/dist/components/accordion/accordion.variants.js +54 -0
  10. package/dist/components/accordion/accordion.variants.js.map +1 -0
  11. package/dist/components/accordion/index.d.ts +3 -0
  12. package/dist/components/accordion/index.d.ts.map +1 -0
  13. package/dist/components/accordion/index.js +25 -0
  14. package/dist/components/accordion/index.js.map +1 -0
  15. package/dist/components/agent-badge/agent-badge.d.ts +56 -0
  16. package/dist/components/agent-badge/agent-badge.d.ts.map +1 -0
  17. package/dist/components/agent-badge/agent-badge.js +35 -0
  18. package/dist/components/agent-badge/agent-badge.js.map +1 -0
  19. package/dist/components/agent-badge/agent-badge.variants.d.ts +7 -0
  20. package/dist/components/agent-badge/agent-badge.variants.d.ts.map +1 -0
  21. package/dist/components/agent-badge/agent-badge.variants.js +35 -0
  22. package/dist/components/agent-badge/agent-badge.variants.js.map +1 -0
  23. package/dist/components/agent-badge/index.d.ts +3 -0
  24. package/dist/components/agent-badge/index.d.ts.map +1 -0
  25. package/dist/components/agent-badge/index.js +11 -0
  26. package/dist/components/agent-badge/index.js.map +1 -0
  27. package/dist/components/alert/alert.d.ts +94 -0
  28. package/dist/components/alert/alert.d.ts.map +1 -0
  29. package/dist/components/alert/alert.js +105 -0
  30. package/dist/components/alert/alert.js.map +1 -0
  31. package/dist/components/alert/alert.variants.d.ts +15 -0
  32. package/dist/components/alert/alert.variants.d.ts.map +1 -0
  33. package/dist/components/alert/alert.variants.js +74 -0
  34. package/dist/components/alert/alert.variants.js.map +1 -0
  35. package/dist/components/alert/index.d.ts +3 -0
  36. package/dist/components/alert/index.d.ts.map +1 -0
  37. package/dist/components/alert/index.js +37 -0
  38. package/dist/components/alert/index.js.map +1 -0
  39. package/dist/components/avatar/avatar.d.ts +56 -0
  40. package/dist/components/avatar/avatar.d.ts.map +1 -0
  41. package/dist/components/avatar/avatar.js +107 -0
  42. package/dist/components/avatar/avatar.js.map +1 -0
  43. package/dist/components/avatar/avatar.variants.d.ts +11 -0
  44. package/dist/components/avatar/avatar.variants.d.ts.map +1 -0
  45. package/dist/components/avatar/avatar.variants.js +48 -0
  46. package/dist/components/avatar/avatar.variants.js.map +1 -0
  47. package/dist/components/avatar/index.d.ts +3 -0
  48. package/dist/components/avatar/index.d.ts.map +1 -0
  49. package/dist/components/avatar/index.js +15 -0
  50. package/dist/components/avatar/index.js.map +1 -0
  51. package/dist/components/badge/badge.d.ts +30 -0
  52. package/dist/components/badge/badge.d.ts.map +1 -0
  53. package/dist/components/badge/badge.js +33 -0
  54. package/dist/components/badge/badge.js.map +1 -0
  55. package/dist/components/badge/badge.variants.d.ts +7 -0
  56. package/dist/components/badge/badge.variants.d.ts.map +1 -0
  57. package/dist/components/badge/badge.variants.js +33 -0
  58. package/dist/components/badge/badge.variants.js.map +1 -0
  59. package/dist/components/badge/index.d.ts +3 -0
  60. package/dist/components/badge/index.d.ts.map +1 -0
  61. package/dist/components/badge/index.js +8 -0
  62. package/dist/components/badge/index.js.map +1 -0
  63. package/dist/components/breadcrumb/breadcrumb.d.ts +90 -0
  64. package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -0
  65. package/dist/components/breadcrumb/breadcrumb.js +143 -0
  66. package/dist/components/breadcrumb/breadcrumb.js.map +1 -0
  67. package/dist/components/breadcrumb/breadcrumb.variants.d.ts +10 -0
  68. package/dist/components/breadcrumb/breadcrumb.variants.d.ts.map +1 -0
  69. package/dist/components/breadcrumb/breadcrumb.variants.js +41 -0
  70. package/dist/components/breadcrumb/breadcrumb.variants.js.map +1 -0
  71. package/dist/components/breadcrumb/index.d.ts +3 -0
  72. package/dist/components/breadcrumb/index.d.ts.map +1 -0
  73. package/dist/components/breadcrumb/index.js +35 -0
  74. package/dist/components/breadcrumb/index.js.map +1 -0
  75. package/dist/components/button/button.d.ts +10 -0
  76. package/dist/components/button/button.d.ts.map +1 -0
  77. package/dist/components/button/button.js +42 -0
  78. package/dist/components/button/button.js.map +1 -0
  79. package/dist/components/button/button.variants.d.ts +6 -0
  80. package/dist/components/button/button.variants.d.ts.map +1 -0
  81. package/dist/components/button/button.variants.js +45 -0
  82. package/dist/components/button/button.variants.js.map +1 -0
  83. package/dist/components/button/index.d.ts +3 -0
  84. package/dist/components/button/index.d.ts.map +1 -0
  85. package/dist/components/button/index.js +7 -0
  86. package/dist/components/button/index.js.map +1 -0
  87. package/dist/components/card/card.d.ts +59 -0
  88. package/dist/components/card/card.d.ts.map +1 -0
  89. package/dist/components/card/card.js +101 -0
  90. package/dist/components/card/card.js.map +1 -0
  91. package/dist/components/card/card.variants.d.ts +13 -0
  92. package/dist/components/card/card.variants.d.ts.map +1 -0
  93. package/dist/components/card/card.variants.js +64 -0
  94. package/dist/components/card/card.variants.js.map +1 -0
  95. package/dist/components/card/index.d.ts +3 -0
  96. package/dist/components/card/index.d.ts.map +1 -0
  97. package/dist/components/card/index.js +35 -0
  98. package/dist/components/card/index.js.map +1 -0
  99. package/dist/components/checkbox/checkbox.d.ts +20 -0
  100. package/dist/components/checkbox/checkbox.d.ts.map +1 -0
  101. package/dist/components/checkbox/checkbox.js +102 -0
  102. package/dist/components/checkbox/checkbox.js.map +1 -0
  103. package/dist/components/checkbox/checkbox.variants.d.ts +15 -0
  104. package/dist/components/checkbox/checkbox.variants.d.ts.map +1 -0
  105. package/dist/components/checkbox/checkbox.variants.js +70 -0
  106. package/dist/components/checkbox/checkbox.variants.js.map +1 -0
  107. package/dist/components/checkbox/index.d.ts +3 -0
  108. package/dist/components/checkbox/index.d.ts.map +1 -0
  109. package/dist/components/checkbox/index.js +11 -0
  110. package/dist/components/checkbox/index.js.map +1 -0
  111. package/dist/components/command-palette/command-palette.d.ts +76 -0
  112. package/dist/components/command-palette/command-palette.d.ts.map +1 -0
  113. package/dist/components/command-palette/command-palette.js +271 -0
  114. package/dist/components/command-palette/command-palette.js.map +1 -0
  115. package/dist/components/command-palette/command-palette.variants.d.ts +18 -0
  116. package/dist/components/command-palette/command-palette.variants.d.ts.map +1 -0
  117. package/dist/components/command-palette/command-palette.variants.js +62 -0
  118. package/dist/components/command-palette/command-palette.variants.js.map +1 -0
  119. package/dist/components/command-palette/index.d.ts +3 -0
  120. package/dist/components/command-palette/index.d.ts.map +1 -0
  121. package/dist/components/command-palette/index.js +35 -0
  122. package/dist/components/command-palette/index.js.map +1 -0
  123. package/dist/components/consent-toggle/consent-toggle.d.ts +107 -0
  124. package/dist/components/consent-toggle/consent-toggle.d.ts.map +1 -0
  125. package/dist/components/consent-toggle/consent-toggle.js +68 -0
  126. package/dist/components/consent-toggle/consent-toggle.js.map +1 -0
  127. package/dist/components/consent-toggle/consent-toggle.variants.d.ts +10 -0
  128. package/dist/components/consent-toggle/consent-toggle.variants.d.ts.map +1 -0
  129. package/dist/components/consent-toggle/consent-toggle.variants.js +29 -0
  130. package/dist/components/consent-toggle/consent-toggle.variants.js.map +1 -0
  131. package/dist/components/consent-toggle/index.d.ts +3 -0
  132. package/dist/components/consent-toggle/index.d.ts.map +1 -0
  133. package/dist/components/consent-toggle/index.js +19 -0
  134. package/dist/components/consent-toggle/index.js.map +1 -0
  135. package/dist/components/credential-card/credential-card.d.ts +144 -0
  136. package/dist/components/credential-card/credential-card.d.ts.map +1 -0
  137. package/dist/components/credential-card/credential-card.js +117 -0
  138. package/dist/components/credential-card/credential-card.js.map +1 -0
  139. package/dist/components/credential-card/credential-card.variants.d.ts +15 -0
  140. package/dist/components/credential-card/credential-card.variants.d.ts.map +1 -0
  141. package/dist/components/credential-card/credential-card.variants.js +48 -0
  142. package/dist/components/credential-card/credential-card.variants.js.map +1 -0
  143. package/dist/components/credential-card/index.d.ts +3 -0
  144. package/dist/components/credential-card/index.d.ts.map +1 -0
  145. package/dist/components/credential-card/index.js +29 -0
  146. package/dist/components/credential-card/index.js.map +1 -0
  147. package/dist/components/data-grid/data-grid.d.ts +247 -0
  148. package/dist/components/data-grid/data-grid.d.ts.map +1 -0
  149. package/dist/components/data-grid/data-grid.js +529 -0
  150. package/dist/components/data-grid/data-grid.js.map +1 -0
  151. package/dist/components/data-grid/data-grid.variants.d.ts +29 -0
  152. package/dist/components/data-grid/data-grid.variants.d.ts.map +1 -0
  153. package/dist/components/data-grid/data-grid.variants.js +110 -0
  154. package/dist/components/data-grid/data-grid.variants.js.map +1 -0
  155. package/dist/components/data-grid/index.d.ts +3 -0
  156. package/dist/components/data-grid/index.d.ts.map +1 -0
  157. package/dist/components/data-grid/index.js +59 -0
  158. package/dist/components/data-grid/index.js.map +1 -0
  159. package/dist/components/dialog/dialog.d.ts +98 -0
  160. package/dist/components/dialog/dialog.d.ts.map +1 -0
  161. package/dist/components/dialog/dialog.js +121 -0
  162. package/dist/components/dialog/dialog.js.map +1 -0
  163. package/dist/components/dialog/dialog.variants.d.ts +14 -0
  164. package/dist/components/dialog/dialog.variants.d.ts.map +1 -0
  165. package/dist/components/dialog/dialog.variants.js +71 -0
  166. package/dist/components/dialog/dialog.variants.js.map +1 -0
  167. package/dist/components/dialog/index.d.ts +3 -0
  168. package/dist/components/dialog/index.d.ts.map +1 -0
  169. package/dist/components/dialog/index.js +31 -0
  170. package/dist/components/dialog/index.js.map +1 -0
  171. package/dist/components/identity-chip/identity-chip.d.ts +121 -0
  172. package/dist/components/identity-chip/identity-chip.d.ts.map +1 -0
  173. package/dist/components/identity-chip/identity-chip.js +203 -0
  174. package/dist/components/identity-chip/identity-chip.js.map +1 -0
  175. package/dist/components/identity-chip/identity-chip.variants.d.ts +11 -0
  176. package/dist/components/identity-chip/identity-chip.variants.d.ts.map +1 -0
  177. package/dist/components/identity-chip/identity-chip.variants.js +61 -0
  178. package/dist/components/identity-chip/identity-chip.variants.js.map +1 -0
  179. package/dist/components/identity-chip/index.d.ts +3 -0
  180. package/dist/components/identity-chip/index.d.ts.map +1 -0
  181. package/dist/components/identity-chip/index.js +21 -0
  182. package/dist/components/identity-chip/index.js.map +1 -0
  183. package/dist/components/input/index.d.ts +3 -0
  184. package/dist/components/input/index.d.ts.map +1 -0
  185. package/dist/components/input/index.js +11 -0
  186. package/dist/components/input/index.js.map +1 -0
  187. package/dist/components/input/input.d.ts +17 -0
  188. package/dist/components/input/input.d.ts.map +1 -0
  189. package/dist/components/input/input.js +71 -0
  190. package/dist/components/input/input.js.map +1 -0
  191. package/dist/components/input/input.variants.d.ts +11 -0
  192. package/dist/components/input/input.variants.d.ts.map +1 -0
  193. package/dist/components/input/input.variants.js +64 -0
  194. package/dist/components/input/input.variants.js.map +1 -0
  195. package/dist/components/label/index.d.ts +3 -0
  196. package/dist/components/label/index.d.ts.map +1 -0
  197. package/dist/components/label/index.js +13 -0
  198. package/dist/components/label/index.js.map +1 -0
  199. package/dist/components/label/label.d.ts +16 -0
  200. package/dist/components/label/label.d.ts.map +1 -0
  201. package/dist/components/label/label.js +27 -0
  202. package/dist/components/label/label.js.map +1 -0
  203. package/dist/components/label/label.variants.d.ts +8 -0
  204. package/dist/components/label/label.variants.d.ts.map +1 -0
  205. package/dist/components/label/label.variants.js +27 -0
  206. package/dist/components/label/label.variants.js.map +1 -0
  207. package/dist/components/menu/index.d.ts +3 -0
  208. package/dist/components/menu/index.d.ts.map +1 -0
  209. package/dist/components/menu/index.js +43 -0
  210. package/dist/components/menu/index.js.map +1 -0
  211. package/dist/components/menu/menu.d.ts +115 -0
  212. package/dist/components/menu/menu.d.ts.map +1 -0
  213. package/dist/components/menu/menu.js +130 -0
  214. package/dist/components/menu/menu.js.map +1 -0
  215. package/dist/components/menu/menu.variants.d.ts +13 -0
  216. package/dist/components/menu/menu.variants.d.ts.map +1 -0
  217. package/dist/components/menu/menu.variants.js +56 -0
  218. package/dist/components/menu/menu.variants.js.map +1 -0
  219. package/dist/components/pagination/index.d.ts +3 -0
  220. package/dist/components/pagination/index.d.ts.map +1 -0
  221. package/dist/components/pagination/index.js +37 -0
  222. package/dist/components/pagination/index.js.map +1 -0
  223. package/dist/components/pagination/pagination.d.ts +118 -0
  224. package/dist/components/pagination/pagination.d.ts.map +1 -0
  225. package/dist/components/pagination/pagination.js +204 -0
  226. package/dist/components/pagination/pagination.js.map +1 -0
  227. package/dist/components/pagination/pagination.variants.d.ts +13 -0
  228. package/dist/components/pagination/pagination.variants.d.ts.map +1 -0
  229. package/dist/components/pagination/pagination.variants.js +63 -0
  230. package/dist/components/pagination/pagination.variants.js.map +1 -0
  231. package/dist/components/popover/index.d.ts +3 -0
  232. package/dist/components/popover/index.d.ts.map +1 -0
  233. package/dist/components/popover/index.js +39 -0
  234. package/dist/components/popover/index.js.map +1 -0
  235. package/dist/components/popover/popover.d.ts +92 -0
  236. package/dist/components/popover/popover.d.ts.map +1 -0
  237. package/dist/components/popover/popover.js +135 -0
  238. package/dist/components/popover/popover.js.map +1 -0
  239. package/dist/components/popover/popover.variants.d.ts +9 -0
  240. package/dist/components/popover/popover.variants.d.ts.map +1 -0
  241. package/dist/components/popover/popover.variants.js +19 -0
  242. package/dist/components/popover/popover.variants.js.map +1 -0
  243. package/dist/components/progress/index.d.ts +3 -0
  244. package/dist/components/progress/index.d.ts.map +1 -0
  245. package/dist/components/progress/index.js +23 -0
  246. package/dist/components/progress/index.js.map +1 -0
  247. package/dist/components/progress/progress.d.ts +71 -0
  248. package/dist/components/progress/progress.d.ts.map +1 -0
  249. package/dist/components/progress/progress.js +91 -0
  250. package/dist/components/progress/progress.js.map +1 -0
  251. package/dist/components/progress/progress.variants.d.ts +14 -0
  252. package/dist/components/progress/progress.variants.d.ts.map +1 -0
  253. package/dist/components/progress/progress.variants.js +37 -0
  254. package/dist/components/progress/progress.variants.js.map +1 -0
  255. package/dist/components/radio/index.d.ts +3 -0
  256. package/dist/components/radio/index.d.ts.map +1 -0
  257. package/dist/components/radio/index.js +22 -0
  258. package/dist/components/radio/index.js.map +1 -0
  259. package/dist/components/radio/radio.d.ts +23 -0
  260. package/dist/components/radio/radio.d.ts.map +1 -0
  261. package/dist/components/radio/radio.js +183 -0
  262. package/dist/components/radio/radio.js.map +1 -0
  263. package/dist/components/radio/radio.variants.d.ts +17 -0
  264. package/dist/components/radio/radio.variants.d.ts.map +1 -0
  265. package/dist/components/radio/radio.variants.js +60 -0
  266. package/dist/components/radio/radio.variants.js.map +1 -0
  267. package/dist/components/select/index.d.ts +3 -0
  268. package/dist/components/select/index.d.ts.map +1 -0
  269. package/dist/components/select/index.js +9 -0
  270. package/dist/components/select/index.js.map +1 -0
  271. package/dist/components/select/select.d.ts +27 -0
  272. package/dist/components/select/select.d.ts.map +1 -0
  273. package/dist/components/select/select.js +145 -0
  274. package/dist/components/select/select.js.map +1 -0
  275. package/dist/components/select/select.variants.d.ts +18 -0
  276. package/dist/components/select/select.variants.d.ts.map +1 -0
  277. package/dist/components/select/select.variants.js +102 -0
  278. package/dist/components/select/select.variants.js.map +1 -0
  279. package/dist/components/separator/index.d.ts +3 -0
  280. package/dist/components/separator/index.d.ts.map +1 -0
  281. package/dist/components/separator/index.js +15 -0
  282. package/dist/components/separator/index.js.map +1 -0
  283. package/dist/components/separator/separator.d.ts +23 -0
  284. package/dist/components/separator/separator.d.ts.map +1 -0
  285. package/dist/components/separator/separator.js +61 -0
  286. package/dist/components/separator/separator.js.map +1 -0
  287. package/dist/components/separator/separator.variants.d.ts +13 -0
  288. package/dist/components/separator/separator.variants.d.ts.map +1 -0
  289. package/dist/components/separator/separator.variants.js +46 -0
  290. package/dist/components/separator/separator.variants.js.map +1 -0
  291. package/dist/components/sheet/index.d.ts +3 -0
  292. package/dist/components/sheet/index.d.ts.map +1 -0
  293. package/dist/components/sheet/index.js +31 -0
  294. package/dist/components/sheet/index.js.map +1 -0
  295. package/dist/components/sheet/sheet.d.ts +102 -0
  296. package/dist/components/sheet/sheet.d.ts.map +1 -0
  297. package/dist/components/sheet/sheet.js +120 -0
  298. package/dist/components/sheet/sheet.js.map +1 -0
  299. package/dist/components/sheet/sheet.variants.d.ts +15 -0
  300. package/dist/components/sheet/sheet.variants.d.ts.map +1 -0
  301. package/dist/components/sheet/sheet.variants.js +97 -0
  302. package/dist/components/sheet/sheet.variants.js.map +1 -0
  303. package/dist/components/sidebar/index.d.ts +3 -0
  304. package/dist/components/sidebar/index.d.ts.map +1 -0
  305. package/dist/components/sidebar/index.js +43 -0
  306. package/dist/components/sidebar/index.js.map +1 -0
  307. package/dist/components/sidebar/sidebar.d.ts +114 -0
  308. package/dist/components/sidebar/sidebar.d.ts.map +1 -0
  309. package/dist/components/sidebar/sidebar.js +202 -0
  310. package/dist/components/sidebar/sidebar.js.map +1 -0
  311. package/dist/components/sidebar/sidebar.variants.d.ts +19 -0
  312. package/dist/components/sidebar/sidebar.variants.d.ts.map +1 -0
  313. package/dist/components/sidebar/sidebar.variants.js +93 -0
  314. package/dist/components/sidebar/sidebar.variants.js.map +1 -0
  315. package/dist/components/skeleton/index.d.ts +3 -0
  316. package/dist/components/skeleton/index.d.ts.map +1 -0
  317. package/dist/components/skeleton/index.js +15 -0
  318. package/dist/components/skeleton/index.js.map +1 -0
  319. package/dist/components/skeleton/skeleton.d.ts +42 -0
  320. package/dist/components/skeleton/skeleton.d.ts.map +1 -0
  321. package/dist/components/skeleton/skeleton.js +54 -0
  322. package/dist/components/skeleton/skeleton.js.map +1 -0
  323. package/dist/components/skeleton/skeleton.variants.d.ts +9 -0
  324. package/dist/components/skeleton/skeleton.variants.d.ts.map +1 -0
  325. package/dist/components/skeleton/skeleton.variants.js +31 -0
  326. package/dist/components/skeleton/skeleton.variants.js.map +1 -0
  327. package/dist/components/spinner/index.d.ts +3 -0
  328. package/dist/components/spinner/index.d.ts.map +1 -0
  329. package/dist/components/spinner/index.js +13 -0
  330. package/dist/components/spinner/index.js.map +1 -0
  331. package/dist/components/spinner/spinner.d.ts +41 -0
  332. package/dist/components/spinner/spinner.d.ts.map +1 -0
  333. package/dist/components/spinner/spinner.js +48 -0
  334. package/dist/components/spinner/spinner.js.map +1 -0
  335. package/dist/components/spinner/spinner.variants.d.ts +8 -0
  336. package/dist/components/spinner/spinner.variants.d.ts.map +1 -0
  337. package/dist/components/spinner/spinner.variants.js +32 -0
  338. package/dist/components/spinner/spinner.variants.js.map +1 -0
  339. package/dist/components/switch/index.d.ts +3 -0
  340. package/dist/components/switch/index.d.ts.map +1 -0
  341. package/dist/components/switch/index.js +15 -0
  342. package/dist/components/switch/index.js.map +1 -0
  343. package/dist/components/switch/switch.d.ts +20 -0
  344. package/dist/components/switch/switch.d.ts.map +1 -0
  345. package/dist/components/switch/switch.js +107 -0
  346. package/dist/components/switch/switch.js.map +1 -0
  347. package/dist/components/switch/switch.variants.d.ts +14 -0
  348. package/dist/components/switch/switch.variants.d.ts.map +1 -0
  349. package/dist/components/switch/switch.variants.js +69 -0
  350. package/dist/components/switch/switch.variants.js.map +1 -0
  351. package/dist/components/table/index.d.ts +3 -0
  352. package/dist/components/table/index.d.ts.map +1 -0
  353. package/dist/components/table/index.js +51 -0
  354. package/dist/components/table/index.js.map +1 -0
  355. package/dist/components/table/table.d.ts +173 -0
  356. package/dist/components/table/table.d.ts.map +1 -0
  357. package/dist/components/table/table.js +172 -0
  358. package/dist/components/table/table.js.map +1 -0
  359. package/dist/components/table/table.variants.d.ts +39 -0
  360. package/dist/components/table/table.variants.d.ts.map +1 -0
  361. package/dist/components/table/table.variants.js +124 -0
  362. package/dist/components/table/table.variants.js.map +1 -0
  363. package/dist/components/tabs/index.d.ts +3 -0
  364. package/dist/components/tabs/index.d.ts.map +1 -0
  365. package/dist/components/tabs/index.js +21 -0
  366. package/dist/components/tabs/index.js.map +1 -0
  367. package/dist/components/tabs/tabs.d.ts +66 -0
  368. package/dist/components/tabs/tabs.d.ts.map +1 -0
  369. package/dist/components/tabs/tabs.js +81 -0
  370. package/dist/components/tabs/tabs.js.map +1 -0
  371. package/dist/components/tabs/tabs.variants.d.ts +15 -0
  372. package/dist/components/tabs/tabs.variants.d.ts.map +1 -0
  373. package/dist/components/tabs/tabs.variants.js +98 -0
  374. package/dist/components/tabs/tabs.variants.js.map +1 -0
  375. package/dist/components/textarea/index.d.ts +3 -0
  376. package/dist/components/textarea/index.d.ts.map +1 -0
  377. package/dist/components/textarea/index.js +7 -0
  378. package/dist/components/textarea/index.js.map +1 -0
  379. package/dist/components/textarea/textarea.d.ts +18 -0
  380. package/dist/components/textarea/textarea.d.ts.map +1 -0
  381. package/dist/components/textarea/textarea.js +136 -0
  382. package/dist/components/textarea/textarea.js.map +1 -0
  383. package/dist/components/textarea/textarea.variants.d.ts +6 -0
  384. package/dist/components/textarea/textarea.variants.d.ts.map +1 -0
  385. package/dist/components/textarea/textarea.variants.js +53 -0
  386. package/dist/components/textarea/textarea.variants.js.map +1 -0
  387. package/dist/components/toast/index.d.ts +3 -0
  388. package/dist/components/toast/index.d.ts.map +1 -0
  389. package/dist/components/toast/index.js +43 -0
  390. package/dist/components/toast/index.js.map +1 -0
  391. package/dist/components/toast/toast.d.ts +140 -0
  392. package/dist/components/toast/toast.d.ts.map +1 -0
  393. package/dist/components/toast/toast.js +123 -0
  394. package/dist/components/toast/toast.js.map +1 -0
  395. package/dist/components/toast/toast.variants.d.ts +16 -0
  396. package/dist/components/toast/toast.variants.d.ts.map +1 -0
  397. package/dist/components/toast/toast.variants.js +77 -0
  398. package/dist/components/toast/toast.variants.js.map +1 -0
  399. package/dist/components/tooltip/index.d.ts +3 -0
  400. package/dist/components/tooltip/index.d.ts.map +1 -0
  401. package/dist/components/tooltip/index.js +16 -0
  402. package/dist/components/tooltip/index.js.map +1 -0
  403. package/dist/components/tooltip/tooltip.d.ts +81 -0
  404. package/dist/components/tooltip/tooltip.d.ts.map +1 -0
  405. package/dist/components/tooltip/tooltip.js +44 -0
  406. package/dist/components/tooltip/tooltip.js.map +1 -0
  407. package/dist/components/tooltip/tooltip.variants.d.ts +3 -0
  408. package/dist/components/tooltip/tooltip.variants.d.ts.map +1 -0
  409. package/dist/components/tooltip/tooltip.variants.js +7 -0
  410. package/dist/components/tooltip/tooltip.variants.js.map +1 -0
  411. package/dist/components/trust-score/index.d.ts +3 -0
  412. package/dist/components/trust-score/index.d.ts.map +1 -0
  413. package/dist/components/trust-score/index.js +11 -0
  414. package/dist/components/trust-score/index.js.map +1 -0
  415. package/dist/components/trust-score/trust-score.d.ts +100 -0
  416. package/dist/components/trust-score/trust-score.d.ts.map +1 -0
  417. package/dist/components/trust-score/trust-score.js +146 -0
  418. package/dist/components/trust-score/trust-score.js.map +1 -0
  419. package/dist/components/trust-score/trust-score.variants.d.ts +16 -0
  420. package/dist/components/trust-score/trust-score.variants.d.ts.map +1 -0
  421. package/dist/components/trust-score/trust-score.variants.js +50 -0
  422. package/dist/components/trust-score/trust-score.variants.js.map +1 -0
  423. package/dist/components/verified-badge/index.d.ts +3 -0
  424. package/dist/components/verified-badge/index.d.ts.map +1 -0
  425. package/dist/components/verified-badge/index.js +15 -0
  426. package/dist/components/verified-badge/index.js.map +1 -0
  427. package/dist/components/verified-badge/verified-badge.d.ts +55 -0
  428. package/dist/components/verified-badge/verified-badge.d.ts.map +1 -0
  429. package/dist/components/verified-badge/verified-badge.js +67 -0
  430. package/dist/components/verified-badge/verified-badge.js.map +1 -0
  431. package/dist/components/verified-badge/verified-badge.variants.d.ts +11 -0
  432. package/dist/components/verified-badge/verified-badge.variants.d.ts.map +1 -0
  433. package/dist/components/verified-badge/verified-badge.variants.js +45 -0
  434. package/dist/components/verified-badge/verified-badge.variants.js.map +1 -0
  435. package/dist/index.d.ts +39 -0
  436. package/dist/index.d.ts.map +1 -0
  437. package/dist/index.js +322 -0
  438. package/dist/index.js.map +1 -0
  439. package/dist/lib/cn.d.ts +3 -0
  440. package/dist/lib/cn.d.ts.map +1 -0
  441. package/dist/lib/cn.js +24 -0
  442. package/dist/lib/cn.js.map +1 -0
  443. package/package.json +74 -0
@@ -0,0 +1,13 @@
1
+ import { Spinner } from "./spinner";
2
+ import {
3
+ spinnerIndicatorVariants,
4
+ spinnerRootClass,
5
+ spinnerLabelClass
6
+ } from "./spinner.variants";
7
+ export {
8
+ Spinner,
9
+ spinnerIndicatorVariants,
10
+ spinnerLabelClass,
11
+ spinnerRootClass
12
+ };
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/spinner/index.ts"],"sourcesContent":["export { Spinner, type SpinnerProps } from \"./spinner\";\nexport {\n spinnerIndicatorVariants,\n spinnerRootClass,\n spinnerLabelClass,\n type SpinnerIndicatorVariantProps,\n} from \"./spinner.variants\";\n"],"mappings":"AAAA,SAAS,eAAkC;AAC3C;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAEK;","names":[]}
@@ -0,0 +1,41 @@
1
+ import * as React from "react";
2
+ import { type SpinnerIndicatorVariantProps } from "./spinner.variants";
3
+ export interface SpinnerProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "aria-label">, SpinnerIndicatorVariantProps {
4
+ /**
5
+ * The visible label naming what is running, written as a plain statement ending
6
+ * with a period (spec §2/§8): "Checking your ID." When present it is rendered as
7
+ * text beside the indicator AND becomes the accessible name via `aria-labelledby`.
8
+ */
9
+ label?: React.ReactNode;
10
+ /**
11
+ * The accessible name when there is no visible {@link label} (spec §7). State what
12
+ * is running ("Verifying your ID."). A Spinner is never nameless to assistive
13
+ * technology, so EITHER a `label` or an `aria-label` must be provided.
14
+ */
15
+ "aria-label"?: string;
16
+ /**
17
+ * Whether work is running (spec §4/§7). `true` (the default) sets `aria-busy="true"`
18
+ * on the live region; pass `false` on resolution so assistive technology hears the
19
+ * wait has ended. A rendered Spinner means work is running — if nothing is running,
20
+ * render no Spinner at all (spec §4 Disabled).
21
+ */
22
+ busy?: boolean;
23
+ }
24
+ /**
25
+ * A Spinner signals that work is running when you cannot measure how far it has gone
26
+ * or how long is left — the unmeasured-wait affordance (spec §1). When the work
27
+ * becomes measurable (a known percentage or step count) switch to determinate
28
+ * Progress, because an honest number beats a turning circle.
29
+ *
30
+ * It is a status OUTPUT, not a control: it takes no focus, binds no keys, and is never
31
+ * a tab stop (spec §4/§6). The owning region carries `role="status"` so its presence
32
+ * and resolution are announced politely; the turning glyph itself is decorative
33
+ * (`aria-hidden`). The Spinner is named from its visible `label` (`aria-labelledby`)
34
+ * or, when none exists, an `aria-label` — it is never nameless (spec §7).
35
+ *
36
+ * The arc takes the primary action accent, never the verified status color, and rotates
37
+ * on the ambient duration, never the verified check's only theatre duration: a Spinner
38
+ * means work is running, not that anything is verified (brand != state, spec §3/§5/§8).
39
+ */
40
+ export declare const Spinner: React.ForwardRefExoticComponent<SpinnerProps & React.RefAttributes<HTMLDivElement>>;
41
+ //# sourceMappingURL=spinner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../../src/components/spinner/spinner.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAIL,KAAK,4BAA4B,EAClC,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,YACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,YAAY,CAAC,EAC9D,4BAA4B;IAC9B;;;;OAIG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,OAAO,qFAoCnB,CAAC"}
@@ -0,0 +1,48 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import * as React from "react";
4
+ import { cn } from "../../lib/cn";
5
+ import {
6
+ spinnerIndicatorVariants,
7
+ spinnerRootClass,
8
+ spinnerLabelClass
9
+ } from "./spinner.variants";
10
+ const Spinner = React.forwardRef(
11
+ function Spinner2({ className, size, label, busy = true, "aria-label": ariaLabel, ...props }, ref) {
12
+ const labelId = React.useId();
13
+ const hasVisibleLabel = label != null && label !== false;
14
+ return (
15
+ // role="status" lives on the OWNING region (spec §7) — a polite live region.
16
+ // Non-interactive: no tabIndex, no focus ring, no target-size floor (spec §4/§6).
17
+ // Named by the visible label (aria-labelledby) or, when none, an aria-label —
18
+ // never both, and never nameless.
19
+ /* @__PURE__ */ jsxs(
20
+ "div",
21
+ {
22
+ ref,
23
+ role: "status",
24
+ "aria-busy": busy,
25
+ "aria-labelledby": hasVisibleLabel ? labelId : void 0,
26
+ "aria-label": hasVisibleLabel ? void 0 : ariaLabel,
27
+ className: cn(spinnerRootClass, className),
28
+ ...props,
29
+ children: [
30
+ /* @__PURE__ */ jsx(
31
+ "span",
32
+ {
33
+ "data-testid": "spinner-indicator",
34
+ "aria-hidden": "true",
35
+ className: spinnerIndicatorVariants({ size })
36
+ }
37
+ ),
38
+ hasVisibleLabel ? /* @__PURE__ */ jsx("span", { id: labelId, className: spinnerLabelClass, children: label }) : null
39
+ ]
40
+ }
41
+ )
42
+ );
43
+ }
44
+ );
45
+ export {
46
+ Spinner
47
+ };
48
+ //# sourceMappingURL=spinner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/spinner/spinner.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"../../lib/cn\";\nimport {\n spinnerIndicatorVariants,\n spinnerRootClass,\n spinnerLabelClass,\n type SpinnerIndicatorVariantProps,\n} from \"./spinner.variants\";\n\nexport interface SpinnerProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, \"aria-label\">,\n SpinnerIndicatorVariantProps {\n /**\n * The visible label naming what is running, written as a plain statement ending\n * with a period (spec §2/§8): \"Checking your ID.\" When present it is rendered as\n * text beside the indicator AND becomes the accessible name via `aria-labelledby`.\n */\n label?: React.ReactNode;\n /**\n * The accessible name when there is no visible {@link label} (spec §7). State what\n * is running (\"Verifying your ID.\"). A Spinner is never nameless to assistive\n * technology, so EITHER a `label` or an `aria-label` must be provided.\n */\n \"aria-label\"?: string;\n /**\n * Whether work is running (spec §4/§7). `true` (the default) sets `aria-busy=\"true\"`\n * on the live region; pass `false` on resolution so assistive technology hears the\n * wait has ended. A rendered Spinner means work is running — if nothing is running,\n * render no Spinner at all (spec §4 Disabled).\n */\n busy?: boolean;\n}\n\n/**\n * A Spinner signals that work is running when you cannot measure how far it has gone\n * or how long is left — the unmeasured-wait affordance (spec §1). When the work\n * becomes measurable (a known percentage or step count) switch to determinate\n * Progress, because an honest number beats a turning circle.\n *\n * It is a status OUTPUT, not a control: it takes no focus, binds no keys, and is never\n * a tab stop (spec §4/§6). The owning region carries `role=\"status\"` so its presence\n * and resolution are announced politely; the turning glyph itself is decorative\n * (`aria-hidden`). The Spinner is named from its visible `label` (`aria-labelledby`)\n * or, when none exists, an `aria-label` — it is never nameless (spec §7).\n *\n * The arc takes the primary action accent, never the verified status color, and rotates\n * on the ambient duration, never the verified check's only theatre duration: a Spinner\n * means work is running, not that anything is verified (brand != state, spec §3/§5/§8).\n */\nexport const Spinner = React.forwardRef<HTMLDivElement, SpinnerProps>(\n function Spinner(\n { className, size, label, busy = true, \"aria-label\": ariaLabel, ...props },\n ref,\n ) {\n const labelId = React.useId();\n const hasVisibleLabel = label != null && label !== false;\n return (\n // role=\"status\" lives on the OWNING region (spec §7) — a polite live region.\n // Non-interactive: no tabIndex, no focus ring, no target-size floor (spec §4/§6).\n // Named by the visible label (aria-labelledby) or, when none, an aria-label —\n // never both, and never nameless.\n <div\n ref={ref}\n role=\"status\"\n aria-busy={busy}\n aria-labelledby={hasVisibleLabel ? labelId : undefined}\n aria-label={hasVisibleLabel ? undefined : ariaLabel}\n className={cn(spinnerRootClass, className)}\n {...props}\n >\n {/* the turning glyph is decorative — the accessible name carries the meaning,\n not the spin (spec §2/§7) */}\n <span\n data-testid=\"spinner-indicator\"\n aria-hidden=\"true\"\n className={spinnerIndicatorVariants({ size })}\n />\n {hasVisibleLabel ? (\n <span id={labelId} className={spinnerLabelClass}>\n {label}\n </span>\n ) : null}\n </div>\n );\n },\n);\n"],"mappings":";AA8DM,SAWE,KAXF;AA7DN,YAAY,WAAW;AACvB,SAAS,UAAU;AACnB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AA0CA,MAAM,UAAU,MAAM;AAAA,EAC3B,SAASA,SACP,EAAE,WAAW,MAAM,OAAO,OAAO,MAAM,cAAc,WAAW,GAAG,MAAM,GACzE,KACA;AACA,UAAM,UAAU,MAAM,MAAM;AAC5B,UAAM,kBAAkB,SAAS,QAAQ,UAAU;AACnD;AAAA;AAAA;AAAA;AAAA;AAAA,MAKE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,MAAK;AAAA,UACL,aAAW;AAAA,UACX,mBAAiB,kBAAkB,UAAU;AAAA,UAC7C,cAAY,kBAAkB,SAAY;AAAA,UAC1C,WAAW,GAAG,kBAAkB,SAAS;AAAA,UACxC,GAAG;AAAA,UAIJ;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,eAAY;AAAA,gBACZ,eAAY;AAAA,gBACZ,WAAW,yBAAyB,EAAE,KAAK,CAAC;AAAA;AAAA,YAC9C;AAAA,YACC,kBACC,oBAAC,UAAK,IAAI,SAAS,WAAW,mBAC3B,iBACH,IACE;AAAA;AAAA;AAAA,MACN;AAAA;AAAA,EAEJ;AACF;","names":["Spinner"]}
@@ -0,0 +1,8 @@
1
+ import { type VariantProps } from "class-variance-authority";
2
+ export declare const spinnerIndicatorVariants: (props?: ({
3
+ size?: "md" | "sm" | "lg" | null | undefined;
4
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
+ export declare const spinnerRootClass = "inline-flex items-center gap-(--space-2)";
6
+ export declare const spinnerLabelClass = "text-caption text-text-primary";
7
+ export type SpinnerIndicatorVariantProps = VariantProps<typeof spinnerIndicatorVariants>;
8
+ //# sourceMappingURL=spinner.variants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner.variants.d.ts","sourceRoot":"","sources":["../../../src/components/spinner/spinner.variants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AA0BlE,eAAO,MAAM,wBAAwB;;8EAsBpC,CAAC;AAKF,eAAO,MAAM,gBAAgB,6CAA6C,CAAC;AAK3E,eAAO,MAAM,iBAAiB,mCAAmC,CAAC;AAElE,MAAM,MAAM,4BAA4B,GAAG,YAAY,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { cva } from "class-variance-authority";
2
+ const spinnerIndicatorVariants = cva(
3
+ [
4
+ // a circle drawn from a 2px border; one side transparent reads as the arc/gap
5
+ "inline-block rounded-(--radius-full) border-2",
6
+ // the visible arc = the action accent; the rest of the ring = the default border
7
+ "border-border-default border-t-action-primary-border",
8
+ // continuous rotation on the ambient duration + steady linear ambient easing
9
+ "animate-spin [animation-duration:var(--motion-duration-ambient)] ease-(--motion-easing-ambient)",
10
+ // reduced motion: hold static — the live region + name carry the busy state
11
+ "motion-reduce:animate-none"
12
+ ],
13
+ {
14
+ variants: {
15
+ // STRUCTURAL axis = spec §3: the indicator matches the adjacent icon size
16
+ size: {
17
+ sm: "h-(--size-icon-sm) w-(--size-icon-sm)",
18
+ md: "h-(--size-icon-md) w-(--size-icon-md)",
19
+ lg: "h-(--size-icon-lg) w-(--size-icon-lg)"
20
+ }
21
+ },
22
+ defaultVariants: { size: "md" }
23
+ }
24
+ );
25
+ const spinnerRootClass = "inline-flex items-center gap-(--space-2)";
26
+ const spinnerLabelClass = "text-caption text-text-primary";
27
+ export {
28
+ spinnerIndicatorVariants,
29
+ spinnerLabelClass,
30
+ spinnerRootClass
31
+ };
32
+ //# sourceMappingURL=spinner.variants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/spinner/spinner.variants.ts"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\n\n// A Spinner is the unmeasured-wait affordance: a status OUTPUT, not a control\n// (spec §1/§4/§6). It takes no focus, binds no keys, and renders no focus ring or\n// target-size floor — the owning region carries role=\"status\" and the busy state\n// reaches assistive tech through the accessible name + live region, never motion.\n//\n// Brand != state (spec §3/§5/§8): a Spinner reports ACTIVITY, not a verification\n// result. The turning arc takes the primary ACTION accent (the brand violet, the\n// visible action color on the surface), NEVER --color-status-verified-* — verified\n// green is the in-product verified status and is never a generic activity\n// affordance. There is no \"verified\" Spinner; surfacing a verified outcome is the\n// job of VerifiedBadge, whose deliberate check animation is never borrowed here.\n\n// The turning glyph (spec §2): a partial ring rendered as a CSS border circle. The\n// visible ARC takes the action accent via `border-action-primary-border`, and the\n// unfilled REMAINDER of the ring (the three other sides) takes `border-border-default`\n// behind it. Mirrors the Button loading-spinner technique, but pins the arc to the\n// action border token so a STANDALONE Spinner reads on the surface rather than\n// inheriting a foreground color (spec §5).\n//\n// Motion (spec §4/§5): one full rotation runs on the AMBIENT duration with the\n// ambient (steady, linear) easing — restrained activity, never the 350ms verified-\n// check theatre duration. Under prefers-reduced-motion the rotation is suppressed and\n// the indicator holds as a static glyph; the busy state is carried by the name + live\n// region, not motion alone.\nexport const spinnerIndicatorVariants = cva(\n [\n // a circle drawn from a 2px border; one side transparent reads as the arc/gap\n \"inline-block rounded-(--radius-full) border-2\",\n // the visible arc = the action accent; the rest of the ring = the default border\n \"border-border-default border-t-action-primary-border\",\n // continuous rotation on the ambient duration + steady linear ambient easing\n \"animate-spin [animation-duration:var(--motion-duration-ambient)] ease-(--motion-easing-ambient)\",\n // reduced motion: hold static — the live region + name carry the busy state\n \"motion-reduce:animate-none\",\n ],\n {\n variants: {\n // STRUCTURAL axis = spec §3: the indicator matches the adjacent icon size\n size: {\n sm: \"h-(--size-icon-sm) w-(--size-icon-sm)\",\n md: \"h-(--size-icon-md) w-(--size-icon-md)\",\n lg: \"h-(--size-icon-lg) w-(--size-icon-lg)\",\n },\n },\n defaultVariants: { size: \"md\" },\n },\n);\n\n// The owning region (spec §7): role=\"status\" lives here, a polite live region. It is\n// laid out inline with its optional label at the --space-2 gap. Non-interactive: no\n// focus ring, no tab stop, no target-size floor (spec §4/§6).\nexport const spinnerRootClass = \"inline-flex items-center gap-(--space-2)\";\n\n// The optional visible label (spec §2/§5): a plain statement at the caption type role\n// in the primary text color. The label still names what is running; when omitted, an\n// aria-label carries the name instead — a Spinner is never nameless.\nexport const spinnerLabelClass = \"text-caption text-text-primary\";\n\nexport type SpinnerIndicatorVariantProps = VariantProps<typeof spinnerIndicatorVariants>;\n"],"mappings":"AAAA,SAAS,WAA8B;AA0BhC,MAAM,2BAA2B;AAAA,EACtC;AAAA;AAAA,IAEE;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,EACF;AAAA,EACA;AAAA,IACE,UAAU;AAAA;AAAA,MAER,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACN;AAAA,IACF;AAAA,IACA,iBAAiB,EAAE,MAAM,KAAK;AAAA,EAChC;AACF;AAKO,MAAM,mBAAmB;AAKzB,MAAM,oBAAoB;","names":[]}
@@ -0,0 +1,3 @@
1
+ export { Switch, type SwitchProps } from "./switch";
2
+ export { switchTrackVariants, switchThumbVariants, switchHitAreaVariants, switchLabelVariants, type SwitchVariantProps, } from "./switch.variants";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/switch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,KAAK,kBAAkB,GACxB,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { Switch } from "./switch";
2
+ import {
3
+ switchTrackVariants,
4
+ switchThumbVariants,
5
+ switchHitAreaVariants,
6
+ switchLabelVariants
7
+ } from "./switch.variants";
8
+ export {
9
+ Switch,
10
+ switchHitAreaVariants,
11
+ switchLabelVariants,
12
+ switchThumbVariants,
13
+ switchTrackVariants
14
+ };
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/switch/index.ts"],"sourcesContent":["export { Switch, type SwitchProps } from \"./switch\";\nexport {\n switchTrackVariants,\n switchThumbVariants,\n switchHitAreaVariants,\n switchLabelVariants,\n type SwitchVariantProps,\n} from \"./switch.variants\";\n"],"mappings":"AAAA,SAAS,cAAgC;AACzC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEK;","names":[]}
@@ -0,0 +1,20 @@
1
+ import * as React from "react";
2
+ import { type SwitchVariantProps } from "./switch.variants";
3
+ export interface SwitchProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onChange" | "type" | "role" | "aria-checked">, SwitchVariantProps {
4
+ /** Visible label naming the setting. A Switch is never unlabeled. */
5
+ label: string;
6
+ /** One-line clarification under the label; bound via aria-describedby. */
7
+ description?: string;
8
+ /** Controlled on/off value. Omit for the uncontrolled pattern. */
9
+ checked?: boolean;
10
+ /** Uncontrolled initial value. Ignored when `checked` is provided. */
11
+ defaultChecked?: boolean;
12
+ /** Fires with the next value on every toggle. */
13
+ onCheckedChange?: (checked: boolean) => void;
14
+ /** Async result pending: sets aria-busy and blocks input until it resolves. */
15
+ loading?: boolean;
16
+ /** Default `before` — label precedes the control; `after` follows it. */
17
+ labelPlacement?: "before" | "after";
18
+ }
19
+ export declare const Switch: React.ForwardRefExoticComponent<SwitchProps & React.RefAttributes<HTMLButtonElement>>;
20
+ //# sourceMappingURL=switch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../src/components/switch/switch.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAKL,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,WACf,SAAQ,IAAI,CACR,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAC7C,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,cAAc,CAC9C,EACD,kBAAkB;IACpB,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAC;IACd,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kEAAkE;IAClE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sEAAsE;IACtE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iDAAiD;IACjD,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,+EAA+E;IAC/E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yEAAyE;IACzE,cAAc,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CACrC;AAED,eAAO,MAAM,MAAM,uFAyGlB,CAAC"}
@@ -0,0 +1,107 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import * as React from "react";
4
+ import { cn } from "../../lib/cn";
5
+ import {
6
+ switchTrackVariants,
7
+ switchThumbVariants,
8
+ switchHitAreaVariants,
9
+ switchLabelVariants
10
+ } from "./switch.variants";
11
+ const Switch = React.forwardRef(
12
+ function Switch2({
13
+ className,
14
+ label,
15
+ description,
16
+ checked,
17
+ defaultChecked = false,
18
+ onCheckedChange,
19
+ loading = false,
20
+ disabled,
21
+ size,
22
+ labelPlacement = "before",
23
+ id,
24
+ ...props
25
+ }, ref) {
26
+ const reactId = React.useId();
27
+ const switchId = id ?? `${reactId}-switch`;
28
+ const labelId = `${reactId}-label`;
29
+ const descId = description ? `${reactId}-desc` : void 0;
30
+ const isControlled = checked !== void 0;
31
+ const [internal, setInternal] = React.useState(defaultChecked);
32
+ const isOn = isControlled ? checked : internal;
33
+ const toggle = React.useCallback(() => {
34
+ const next = !isOn;
35
+ if (!isControlled) setInternal(next);
36
+ onCheckedChange?.(next);
37
+ }, [isOn, isControlled, onCheckedChange]);
38
+ return /* @__PURE__ */ jsxs(
39
+ "div",
40
+ {
41
+ "data-testid": "switch-root",
42
+ className: cn(
43
+ "inline-flex items-center gap-3",
44
+ labelPlacement === "after" ? "flex-row-reverse" : "flex-row"
45
+ ),
46
+ children: [
47
+ /* @__PURE__ */ jsx("span", { "data-testid": "switch-hit-area", className: cn(switchHitAreaVariants()), children: /* @__PURE__ */ jsx(
48
+ "button",
49
+ {
50
+ ref,
51
+ id: switchId,
52
+ type: "button",
53
+ role: "switch",
54
+ "aria-checked": isOn,
55
+ "aria-busy": loading || void 0,
56
+ "aria-labelledby": labelId,
57
+ "aria-describedby": descId,
58
+ disabled: (disabled ?? false) || loading,
59
+ onClick: toggle,
60
+ className: cn(switchTrackVariants({ size }), className),
61
+ ...props,
62
+ children: loading ? /* @__PURE__ */ jsx(
63
+ "span",
64
+ {
65
+ "data-testid": "switch-spinner",
66
+ "aria-hidden": "true",
67
+ className: cn(
68
+ "absolute inset-0 m-auto h-4 w-4 animate-spin",
69
+ "rounded-full border-2 border-current border-r-transparent",
70
+ "[animation-duration:var(--motion-duration-ambient)]",
71
+ "motion-reduce:animate-none"
72
+ )
73
+ }
74
+ ) : /* @__PURE__ */ jsx(
75
+ "span",
76
+ {
77
+ "data-testid": "switch-thumb",
78
+ "aria-hidden": "true",
79
+ "aria-checked": isOn,
80
+ className: cn(
81
+ switchThumbVariants({ size, disabled: (disabled ?? false) || loading })
82
+ )
83
+ }
84
+ )
85
+ }
86
+ ) }),
87
+ /* @__PURE__ */ jsxs("span", { className: "inline-flex flex-col", children: [
88
+ /* @__PURE__ */ jsx(
89
+ "label",
90
+ {
91
+ id: labelId,
92
+ htmlFor: switchId,
93
+ className: cn(switchLabelVariants({ disabled: (disabled ?? false) || loading })),
94
+ children: label
95
+ }
96
+ ),
97
+ description ? /* @__PURE__ */ jsx("span", { id: descId, className: "text-caption text-text-secondary", children: description }) : null
98
+ ] })
99
+ ]
100
+ }
101
+ );
102
+ }
103
+ );
104
+ export {
105
+ Switch
106
+ };
107
+ //# sourceMappingURL=switch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/switch/switch.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { cn } from \"../../lib/cn\";\nimport {\n switchTrackVariants,\n switchThumbVariants,\n switchHitAreaVariants,\n switchLabelVariants,\n type SwitchVariantProps,\n} from \"./switch.variants\";\n\nexport interface SwitchProps\n extends Omit<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n \"onChange\" | \"type\" | \"role\" | \"aria-checked\"\n >,\n SwitchVariantProps {\n /** Visible label naming the setting. A Switch is never unlabeled. */\n label: string;\n /** One-line clarification under the label; bound via aria-describedby. */\n description?: string;\n /** Controlled on/off value. Omit for the uncontrolled pattern. */\n checked?: boolean;\n /** Uncontrolled initial value. Ignored when `checked` is provided. */\n defaultChecked?: boolean;\n /** Fires with the next value on every toggle. */\n onCheckedChange?: (checked: boolean) => void;\n /** Async result pending: sets aria-busy and blocks input until it resolves. */\n loading?: boolean;\n /** Default `before` — label precedes the control; `after` follows it. */\n labelPlacement?: \"before\" | \"after\";\n}\n\nexport const Switch = React.forwardRef<HTMLButtonElement, SwitchProps>(\n function Switch(\n {\n className,\n label,\n description,\n checked,\n defaultChecked = false,\n onCheckedChange,\n loading = false,\n disabled,\n size,\n labelPlacement = \"before\",\n id,\n ...props\n },\n ref,\n ) {\n const reactId = React.useId();\n const switchId = id ?? `${reactId}-switch`;\n const labelId = `${reactId}-label`;\n const descId = description ? `${reactId}-desc` : undefined;\n\n const isControlled = checked !== undefined;\n const [internal, setInternal] = React.useState(defaultChecked);\n const isOn = isControlled ? checked : internal;\n\n const toggle = React.useCallback(() => {\n const next = !isOn;\n if (!isControlled) setInternal(next);\n onCheckedChange?.(next);\n }, [isOn, isControlled, onCheckedChange]);\n\n return (\n <div\n data-testid=\"switch-root\"\n className={cn(\n \"inline-flex items-center gap-3\",\n labelPlacement === \"after\" ? \"flex-row-reverse\" : \"flex-row\",\n )}\n >\n {/* hit-area wrapper carries the target-size floor so the visible track can\n keep its smaller h-5/h-6 height — the size variant stays visible. */}\n <span data-testid=\"switch-hit-area\" className={cn(switchHitAreaVariants())}>\n <button\n ref={ref}\n id={switchId}\n type=\"button\"\n role=\"switch\"\n // checked value updates on every toggle and stays readable when disabled\n aria-checked={isOn}\n aria-busy={loading || undefined}\n // a native <button> is NOT named by <label for> (that names form\n // controls only), so the visible label is bound via aria-labelledby —\n // the frozen ARIA contract's permitted naming path for role=\"switch\".\n aria-labelledby={labelId}\n aria-describedby={descId}\n // native <button> activates on Enter AND Space → spec keyboard model\n disabled={(disabled ?? false) || loading}\n onClick={toggle}\n className={cn(switchTrackVariants({ size }), className)}\n {...props}\n >\n {loading ? (\n <span\n data-testid=\"switch-spinner\"\n aria-hidden=\"true\"\n className={cn(\n \"absolute inset-0 m-auto h-4 w-4 animate-spin\",\n \"rounded-full border-2 border-current border-r-transparent\",\n \"[animation-duration:var(--motion-duration-ambient)]\",\n \"motion-reduce:animate-none\",\n )}\n />\n ) : (\n <span\n data-testid=\"switch-thumb\"\n aria-hidden=\"true\"\n aria-checked={isOn}\n className={cn(\n switchThumbVariants({ size, disabled: (disabled ?? false) || loading }),\n )}\n />\n )}\n </button>\n </span>\n <span className=\"inline-flex flex-col\">\n {/* disabled colour from the explicit cva variant — the <label> is nested in\n this column, not a sibling of the button, so peer-disabled cannot reach it. */}\n <label\n id={labelId}\n htmlFor={switchId}\n className={cn(switchLabelVariants({ disabled: (disabled ?? false) || loading }))}\n >\n {label}\n </label>\n {description ? (\n <span id={descId} className=\"text-caption text-text-secondary\">\n {description}\n </span>\n ) : null}\n </span>\n </div>\n );\n },\n);\n"],"mappings":";AAkGc,cAsBN,YAtBM;AAhGd,YAAY,WAAW;AACvB,SAAS,UAAU;AACnB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AAwBA,MAAM,SAAS,MAAM;AAAA,EAC1B,SAASA,QACP;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,iBAAiB;AAAA,IACjB;AAAA,IACA,UAAU;AAAA,IACV;AAAA,IACA;AAAA,IACA,iBAAiB;AAAA,IACjB;AAAA,IACA,GAAG;AAAA,EACL,GACA,KACA;AACA,UAAM,UAAU,MAAM,MAAM;AAC5B,UAAM,WAAW,MAAM,GAAG,OAAO;AACjC,UAAM,UAAU,GAAG,OAAO;AAC1B,UAAM,SAAS,cAAc,GAAG,OAAO,UAAU;AAEjD,UAAM,eAAe,YAAY;AACjC,UAAM,CAAC,UAAU,WAAW,IAAI,MAAM,SAAS,cAAc;AAC7D,UAAM,OAAO,eAAe,UAAU;AAEtC,UAAM,SAAS,MAAM,YAAY,MAAM;AACrC,YAAM,OAAO,CAAC;AACd,UAAI,CAAC,aAAc,aAAY,IAAI;AACnC,wBAAkB,IAAI;AAAA,IACxB,GAAG,CAAC,MAAM,cAAc,eAAe,CAAC;AAExC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAY;AAAA,QACZ,WAAW;AAAA,UACT;AAAA,UACA,mBAAmB,UAAU,qBAAqB;AAAA,QACpD;AAAA,QAIA;AAAA,8BAAC,UAAK,eAAY,mBAAkB,WAAW,GAAG,sBAAsB,CAAC,GACvE;AAAA,YAAC;AAAA;AAAA,cACC;AAAA,cACA,IAAI;AAAA,cACJ,MAAK;AAAA,cACL,MAAK;AAAA,cAEL,gBAAc;AAAA,cACd,aAAW,WAAW;AAAA,cAItB,mBAAiB;AAAA,cACjB,oBAAkB;AAAA,cAElB,WAAW,YAAY,UAAU;AAAA,cACjC,SAAS;AAAA,cACT,WAAW,GAAG,oBAAoB,EAAE,KAAK,CAAC,GAAG,SAAS;AAAA,cACrD,GAAG;AAAA,cAEH,oBACC;AAAA,gBAAC;AAAA;AAAA,kBACC,eAAY;AAAA,kBACZ,eAAY;AAAA,kBACZ,WAAW;AAAA,oBACT;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA;AAAA,cACF,IAEA;AAAA,gBAAC;AAAA;AAAA,kBACC,eAAY;AAAA,kBACZ,eAAY;AAAA,kBACZ,gBAAc;AAAA,kBACd,WAAW;AAAA,oBACT,oBAAoB,EAAE,MAAM,WAAW,YAAY,UAAU,QAAQ,CAAC;AAAA,kBACxE;AAAA;AAAA,cACF;AAAA;AAAA,UAEJ,GACF;AAAA,UACA,qBAAC,UAAK,WAAU,wBAGd;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,IAAI;AAAA,gBACJ,SAAS;AAAA,gBACT,WAAW,GAAG,oBAAoB,EAAE,WAAW,YAAY,UAAU,QAAQ,CAAC,CAAC;AAAA,gBAE9E;AAAA;AAAA,YACH;AAAA,YACC,cACC,oBAAC,UAAK,IAAI,QAAQ,WAAU,oCACzB,uBACH,IACE;AAAA,aACN;AAAA;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;","names":["Switch"]}
@@ -0,0 +1,14 @@
1
+ import { type VariantProps } from "class-variance-authority";
2
+ export declare const switchTrackVariants: (props?: ({
3
+ size?: "md" | "sm" | null | undefined;
4
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
+ export declare const switchThumbVariants: (props?: ({
6
+ size?: "md" | "sm" | null | undefined;
7
+ disabled?: boolean | null | undefined;
8
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
9
+ export declare const switchHitAreaVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
10
+ export declare const switchLabelVariants: (props?: ({
11
+ disabled?: boolean | null | undefined;
12
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
13
+ export type SwitchVariantProps = VariantProps<typeof switchTrackVariants>;
14
+ //# sourceMappingURL=switch.variants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch.variants.d.ts","sourceRoot":"","sources":["../../../src/components/switch/switch.variants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AASlE,eAAO,MAAM,mBAAmB;;8EA8B/B,CAAC;AAUF,eAAO,MAAM,mBAAmB;;;8EAgB/B,CAAC;AAMF,eAAO,MAAM,qBAAqB,oFAGhC,CAAC;AAMH,eAAO,MAAM,mBAAmB;;8EAQ/B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { cva } from "class-variance-authority";
2
+ const switchTrackVariants = cva(
3
+ [
4
+ "relative inline-flex shrink-0 items-center rounded-full border",
5
+ // off (resting) track + resting border
6
+ "bg-control-bg border-control-border",
7
+ // on track (state-variant) + on hover / pressed
8
+ "aria-checked:bg-action-primary-bg aria-checked:border-action-primary-bg",
9
+ "aria-checked:hover:bg-action-primary-bg-hover aria-checked:active:bg-action-primary-bg-active",
10
+ // fast, functional track-tint — no theatre
11
+ "transition-colors duration-(--motion-duration-fast) ease-(--motion-easing-verdify)",
12
+ // visible 2px signal-blue ring at 2px offset, on every state, never removed
13
+ "outline-none",
14
+ "focus-visible:ring-2 focus-visible:ring-border-focus focus-visible:ring-offset-2",
15
+ // disabled: no pointer; the checked value still reads to AT. DEC-C / spec §4:
16
+ // reduced emphasis comes from dimming the thumb (the indicator) to the disabled
17
+ // TOKEN — see switchThumbVariants — NOT a blanket opacity-60 dim of the track.
18
+ "disabled:pointer-events-none",
19
+ "aria-busy:pointer-events-none"
20
+ ],
21
+ {
22
+ variants: {
23
+ // visible track height/width only — the hit-area floor is a separate wrapper,
24
+ // so sm renders a genuinely shorter visible track than md
25
+ size: {
26
+ md: "h-6 w-11 px-0.5",
27
+ sm: "h-5 w-9 px-0.5"
28
+ }
29
+ },
30
+ defaultVariants: { size: "md" }
31
+ }
32
+ );
33
+ const switchThumbVariants = cva(
34
+ [
35
+ "pointer-events-none block rounded-full shadow-sm",
36
+ "translate-x-0 aria-checked:translate-x-full",
37
+ "transition-transform duration-(--motion-duration-fast) ease-(--motion-easing-verdify)"
38
+ ],
39
+ {
40
+ variants: {
41
+ size: {
42
+ md: "h-5 w-5",
43
+ sm: "h-4 w-4"
44
+ },
45
+ disabled: { true: "bg-text-disabled", false: "bg-control-fg" }
46
+ },
47
+ defaultVariants: { size: "md", disabled: false }
48
+ }
49
+ );
50
+ const switchHitAreaVariants = cva([
51
+ "inline-flex shrink-0 items-center justify-center",
52
+ "min-h-(--size-target-mobile) sm:min-h-(--size-target-desktop)"
53
+ ]);
54
+ const switchLabelVariants = cva(
55
+ ["text-label text-text-primary select-none"],
56
+ {
57
+ variants: {
58
+ disabled: { true: "text-text-disabled", false: "" }
59
+ },
60
+ defaultVariants: { disabled: false }
61
+ }
62
+ );
63
+ export {
64
+ switchHitAreaVariants,
65
+ switchLabelVariants,
66
+ switchThumbVariants,
67
+ switchTrackVariants
68
+ };
69
+ //# sourceMappingURL=switch.variants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/switch/switch.variants.ts"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\n\n// The track: a native <button role=\"switch\">. Off binds control-*; the\n// aria-checked: state-variant binds the on (action-primary) track — never a\n// status-* utility (brand ≠ state). The visible 2px focus ring is never removed.\n// The target-size floor lives on the hit-area wrapper (switchHitAreaVariants), NOT\n// here: a min-height floor on the SAME node as the h-5/h-6 track would force both\n// sizes to the 44px floor (used height = max(min-height, height)), erasing the\n// size variant. The track keeps only its own h-5/h-6 visible height.\nexport const switchTrackVariants = cva(\n [\n \"relative inline-flex shrink-0 items-center rounded-full border\",\n // off (resting) track + resting border\n \"bg-control-bg border-control-border\",\n // on track (state-variant) + on hover / pressed\n \"aria-checked:bg-action-primary-bg aria-checked:border-action-primary-bg\",\n \"aria-checked:hover:bg-action-primary-bg-hover aria-checked:active:bg-action-primary-bg-active\",\n // fast, functional track-tint — no theatre\n \"transition-colors duration-(--motion-duration-fast) ease-(--motion-easing-verdify)\",\n // visible 2px signal-blue ring at 2px offset, on every state, never removed\n \"outline-none\",\n \"focus-visible:ring-2 focus-visible:ring-border-focus focus-visible:ring-offset-2\",\n // disabled: no pointer; the checked value still reads to AT. DEC-C / spec §4:\n // reduced emphasis comes from dimming the thumb (the indicator) to the disabled\n // TOKEN — see switchThumbVariants — NOT a blanket opacity-60 dim of the track.\n \"disabled:pointer-events-none\",\n \"aria-busy:pointer-events-none\",\n ],\n {\n variants: {\n // visible track height/width only — the hit-area floor is a separate wrapper,\n // so sm renders a genuinely shorter visible track than md\n size: {\n md: \"h-6 w-11 px-0.5\",\n sm: \"h-5 w-9 px-0.5\",\n },\n },\n defaultVariants: { size: \"md\" },\n },\n);\n\n// The thumb: control-fg fill, slides start→end. Position (not color) carries on/off\n// state, via the aria-checked: translate variant on the parent button.\n//\n// DEC-C / spec §4: a disabled switch dims the thumb (its indicator) to\n// --color-text-disabled — the SAME token the label dims to — NOT a blanket\n// opacity-60 dim of the track. The thumb is a child of the button, not a sibling\n// of a peer input, so the colour is driven by an explicit `disabled` cva variant\n// the component passes (mirrors switchLabelVariants); enabled keeps control-fg.\nexport const switchThumbVariants = cva(\n [\n \"pointer-events-none block rounded-full shadow-sm\",\n \"translate-x-0 aria-checked:translate-x-full\",\n \"transition-transform duration-(--motion-duration-fast) ease-(--motion-easing-verdify)\",\n ],\n {\n variants: {\n size: {\n md: \"h-5 w-5\",\n sm: \"h-4 w-4\",\n },\n disabled: { true: \"bg-text-disabled\", false: \"bg-control-fg\" },\n },\n defaultVariants: { size: \"md\", disabled: false },\n },\n);\n\n// The hit-area wrapper around the track. This — NOT the visible track — carries the\n// target-size floor (44px touch / 40px pointer) so the touch target always meets the\n// minimum while the track keeps its smaller h-5/h-6 visible height. inline-flex +\n// items-center vertically centres the shorter track within the taller hit area.\nexport const switchHitAreaVariants = cva([\n \"inline-flex shrink-0 items-center justify-center\",\n \"min-h-(--size-target-mobile) sm:min-h-(--size-target-desktop)\",\n]);\n\n// The label naming the setting. The <label> element is nested in a column wrapper,\n// not a sibling of the button, so peer-disabled never reaches it; the disabled\n// colour is driven by the explicit `disabled` variant the component passes (mirrors\n// checkboxLabelVariants / radioLabelVariants).\nexport const switchLabelVariants = cva(\n [\"text-label text-text-primary select-none\"],\n {\n variants: {\n disabled: { true: \"text-text-disabled\", false: \"\" },\n },\n defaultVariants: { disabled: false },\n },\n);\n\nexport type SwitchVariantProps = VariantProps<typeof switchTrackVariants>;\n"],"mappings":"AAAA,SAAS,WAA8B;AAShC,MAAM,sBAAsB;AAAA,EACjC;AAAA,IACE;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,IACA;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAIA;AAAA,IACA;AAAA,EACF;AAAA,EACA;AAAA,IACE,UAAU;AAAA;AAAA;AAAA,MAGR,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACN;AAAA,IACF;AAAA,IACA,iBAAiB,EAAE,MAAM,KAAK;AAAA,EAChC;AACF;AAUO,MAAM,sBAAsB;AAAA,EACjC;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACN;AAAA,MACA,UAAU,EAAE,MAAM,oBAAoB,OAAO,gBAAgB;AAAA,IAC/D;AAAA,IACA,iBAAiB,EAAE,MAAM,MAAM,UAAU,MAAM;AAAA,EACjD;AACF;AAMO,MAAM,wBAAwB,IAAI;AAAA,EACvC;AAAA,EACA;AACF,CAAC;AAMM,MAAM,sBAAsB;AAAA,EACjC,CAAC,0CAA0C;AAAA,EAC3C;AAAA,IACE,UAAU;AAAA,MACR,UAAU,EAAE,MAAM,sBAAsB,OAAO,GAAG;AAAA,IACpD;AAAA,IACA,iBAAiB,EAAE,UAAU,MAAM;AAAA,EACrC;AACF;","names":[]}
@@ -0,0 +1,3 @@
1
+ export { Table, TableCaption, TableHeader, TableBody, TableFooter, TableRow, TableHead, TableRowHeader, TableCell, TableEmpty, type TableProps, type TableCaptionProps, type TableHeaderProps, type TableBodyProps, type TableFooterProps, type TableRowProps, type TableHeadProps, type TableRowHeaderProps, type TableCellProps, type TableEmptyProps, type TableDensity, type TableRule, type TableCellStatus, type TableSortDirection, } from "./table";
2
+ export { tableVariants, tableCaptionClass, tableHeaderVariants, tableBodyVariants, tableRowVariants, tableCellVariants, tableRowHeaderVariants, tableHeadVariants, tableSortButtonClass, tableSortCaretClass, tableEmptyClass, tableSkeletonCellClass, type TableVariantProps, type TableHeaderVariantProps, type TableBodyVariantProps, type TableRowVariantProps, type TableCellVariantProps, type TableRowHeaderVariantProps, type TableHeadVariantProps, } from "./table.variants";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,YAAY,EACZ,WAAW,EACX,SAAS,EACT,WAAW,EACX,QAAQ,EACR,SAAS,EACT,cAAc,EACd,SAAS,EACT,UAAU,EACV,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,kBAAkB,GACxB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,qBAAqB,GAC3B,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,51 @@
1
+ import {
2
+ Table,
3
+ TableCaption,
4
+ TableHeader,
5
+ TableBody,
6
+ TableFooter,
7
+ TableRow,
8
+ TableHead,
9
+ TableRowHeader,
10
+ TableCell,
11
+ TableEmpty
12
+ } from "./table";
13
+ import {
14
+ tableVariants,
15
+ tableCaptionClass,
16
+ tableHeaderVariants,
17
+ tableBodyVariants,
18
+ tableRowVariants,
19
+ tableCellVariants,
20
+ tableRowHeaderVariants,
21
+ tableHeadVariants,
22
+ tableSortButtonClass,
23
+ tableSortCaretClass,
24
+ tableEmptyClass,
25
+ tableSkeletonCellClass
26
+ } from "./table.variants";
27
+ export {
28
+ Table,
29
+ TableBody,
30
+ TableCaption,
31
+ TableCell,
32
+ TableEmpty,
33
+ TableFooter,
34
+ TableHead,
35
+ TableHeader,
36
+ TableRow,
37
+ TableRowHeader,
38
+ tableBodyVariants,
39
+ tableCaptionClass,
40
+ tableCellVariants,
41
+ tableEmptyClass,
42
+ tableHeadVariants,
43
+ tableHeaderVariants,
44
+ tableRowHeaderVariants,
45
+ tableRowVariants,
46
+ tableSkeletonCellClass,
47
+ tableSortButtonClass,
48
+ tableSortCaretClass,
49
+ tableVariants
50
+ };
51
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/index.ts"],"sourcesContent":["export {\n Table,\n TableCaption,\n TableHeader,\n TableBody,\n TableFooter,\n TableRow,\n TableHead,\n TableRowHeader,\n TableCell,\n TableEmpty,\n type TableProps,\n type TableCaptionProps,\n type TableHeaderProps,\n type TableBodyProps,\n type TableFooterProps,\n type TableRowProps,\n type TableHeadProps,\n type TableRowHeaderProps,\n type TableCellProps,\n type TableEmptyProps,\n type TableDensity,\n type TableRule,\n type TableCellStatus,\n type TableSortDirection,\n} from \"./table\";\nexport {\n tableVariants,\n tableCaptionClass,\n tableHeaderVariants,\n tableBodyVariants,\n tableRowVariants,\n tableCellVariants,\n tableRowHeaderVariants,\n tableHeadVariants,\n tableSortButtonClass,\n tableSortCaretClass,\n tableEmptyClass,\n tableSkeletonCellClass,\n type TableVariantProps,\n type TableHeaderVariantProps,\n type TableBodyVariantProps,\n type TableRowVariantProps,\n type TableCellVariantProps,\n type TableRowHeaderVariantProps,\n type TableHeadVariantProps,\n} from \"./table.variants\";\n"],"mappings":"AAAA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAeK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAQK;","names":[]}