@zentauri-ui/zentauri-components 1.6.2 → 1.7.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 (492) hide show
  1. package/README.md +105 -0
  2. package/cli/cli.integration.test.ts +8 -0
  3. package/cli/index.mjs +46 -1
  4. package/dist/charts/area.js +11 -10
  5. package/dist/charts/area.js.map +1 -1
  6. package/dist/charts/area.mjs +4 -3
  7. package/dist/charts/area.mjs.map +1 -1
  8. package/dist/charts/bar.js +10 -9
  9. package/dist/charts/bar.js.map +1 -1
  10. package/dist/charts/bar.mjs +4 -3
  11. package/dist/charts/bar.mjs.map +1 -1
  12. package/dist/charts/bubble.js +10 -9
  13. package/dist/charts/bubble.js.map +1 -1
  14. package/dist/charts/bubble.mjs +4 -3
  15. package/dist/charts/bubble.mjs.map +1 -1
  16. package/dist/charts/line.js +10 -9
  17. package/dist/charts/line.js.map +1 -1
  18. package/dist/charts/line.mjs +4 -3
  19. package/dist/charts/line.mjs.map +1 -1
  20. package/dist/charts/pie.js +6 -5
  21. package/dist/charts/pie.js.map +1 -1
  22. package/dist/charts/pie.mjs +3 -2
  23. package/dist/charts/pie.mjs.map +1 -1
  24. package/dist/charts/shared/chart-frame.d.ts.map +1 -1
  25. package/dist/{chunk-QSIJKHC5.mjs → chunk-4XVNQ7IY.mjs} +223 -214
  26. package/dist/chunk-4XVNQ7IY.mjs.map +1 -0
  27. package/dist/chunk-4ZKBLVQX.js +248 -0
  28. package/dist/chunk-4ZKBLVQX.js.map +1 -0
  29. package/dist/chunk-ABOZ5QIX.js +84 -0
  30. package/dist/chunk-ABOZ5QIX.js.map +1 -0
  31. package/dist/chunk-ACGVDY5J.mjs +220 -0
  32. package/dist/chunk-ACGVDY5J.mjs.map +1 -0
  33. package/dist/{chunk-PPVJ4INP.mjs → chunk-ASJQP53L.mjs} +3 -3
  34. package/dist/{chunk-PPVJ4INP.mjs.map → chunk-ASJQP53L.mjs.map} +1 -1
  35. package/dist/{chunk-D55YIHBN.js → chunk-BTJYXKCW.js} +223 -214
  36. package/dist/chunk-BTJYXKCW.js.map +1 -0
  37. package/dist/{chunk-MM3P52WS.js → chunk-CL55KGDF.js} +56 -52
  38. package/dist/chunk-CL55KGDF.js.map +1 -0
  39. package/dist/chunk-CSFLMMAT.mjs +198 -0
  40. package/dist/chunk-CSFLMMAT.mjs.map +1 -0
  41. package/dist/chunk-EDARAO7X.js +206 -0
  42. package/dist/chunk-EDARAO7X.js.map +1 -0
  43. package/dist/chunk-EIRCCTNA.js +175 -0
  44. package/dist/chunk-EIRCCTNA.js.map +1 -0
  45. package/dist/chunk-EN4VLNBF.js +197 -0
  46. package/dist/chunk-EN4VLNBF.js.map +1 -0
  47. package/dist/chunk-FHLZH3PB.mjs +326 -0
  48. package/dist/chunk-FHLZH3PB.mjs.map +1 -0
  49. package/dist/chunk-FXYPRPAT.mjs +35 -0
  50. package/dist/chunk-FXYPRPAT.mjs.map +1 -0
  51. package/dist/{chunk-SPX2QDIB.mjs → chunk-G2WARVAM.mjs} +8 -4
  52. package/dist/chunk-G2WARVAM.mjs.map +1 -0
  53. package/dist/chunk-HCGSEPOD.mjs +196 -0
  54. package/dist/chunk-HCGSEPOD.mjs.map +1 -0
  55. package/dist/chunk-HDO5ZM2S.mjs +82 -0
  56. package/dist/chunk-HDO5ZM2S.mjs.map +1 -0
  57. package/dist/chunk-HMNIH3KJ.mjs +277 -0
  58. package/dist/chunk-HMNIH3KJ.mjs.map +1 -0
  59. package/dist/chunk-HNLQXHSQ.mjs +263 -0
  60. package/dist/chunk-HNLQXHSQ.mjs.map +1 -0
  61. package/dist/{chunk-M6FS7X54.mjs → chunk-ITVMSCOJ.mjs} +56 -52
  62. package/dist/chunk-ITVMSCOJ.mjs.map +1 -0
  63. package/dist/chunk-K7TCW5PJ.js +338 -0
  64. package/dist/chunk-K7TCW5PJ.js.map +1 -0
  65. package/dist/chunk-KTGV76M3.mjs +325 -0
  66. package/dist/chunk-KTGV76M3.mjs.map +1 -0
  67. package/dist/{chunk-JOMSI4WH.js → chunk-NFEA5TN2.js} +52 -47
  68. package/dist/chunk-NFEA5TN2.js.map +1 -0
  69. package/dist/chunk-NHQ3S4Y6.mjs +282 -0
  70. package/dist/chunk-NHQ3S4Y6.mjs.map +1 -0
  71. package/dist/{chunk-OVTWPGMW.mjs → chunk-NMQAHUYA.mjs} +52 -47
  72. package/dist/chunk-NMQAHUYA.mjs.map +1 -0
  73. package/dist/{chunk-MWR5DIA5.mjs → chunk-OULU7OC4.mjs} +3 -3
  74. package/dist/{chunk-MWR5DIA5.mjs.map → chunk-OULU7OC4.mjs.map} +1 -1
  75. package/dist/chunk-OZHETX4J.mjs +169 -0
  76. package/dist/chunk-OZHETX4J.mjs.map +1 -0
  77. package/dist/chunk-OZMSE44N.mjs +235 -0
  78. package/dist/chunk-OZMSE44N.mjs.map +1 -0
  79. package/dist/chunk-P5WLYJ2C.mjs +272 -0
  80. package/dist/chunk-P5WLYJ2C.mjs.map +1 -0
  81. package/dist/chunk-PMWRJ2KS.mjs +192 -0
  82. package/dist/chunk-PMWRJ2KS.mjs.map +1 -0
  83. package/dist/chunk-PR4QXFJT.js +132 -0
  84. package/dist/chunk-PR4QXFJT.js.map +1 -0
  85. package/dist/chunk-QAJOE3HJ.js +281 -0
  86. package/dist/chunk-QAJOE3HJ.js.map +1 -0
  87. package/dist/chunk-QBPVJH4P.mjs +128 -0
  88. package/dist/chunk-QBPVJH4P.mjs.map +1 -0
  89. package/dist/{chunk-MTJRPLMG.js → chunk-QNUDODDX.js} +8 -4
  90. package/dist/chunk-QNUDODDX.js.map +1 -0
  91. package/dist/{chunk-DO2LEXUY.js → chunk-QQ6F4LZK.js} +5 -5
  92. package/dist/{chunk-DO2LEXUY.js.map → chunk-QQ6F4LZK.js.map} +1 -1
  93. package/dist/chunk-QXHS3HHZ.mjs +340 -0
  94. package/dist/chunk-QXHS3HHZ.mjs.map +1 -0
  95. package/dist/chunk-QYLTKBH7.js +338 -0
  96. package/dist/chunk-QYLTKBH7.js.map +1 -0
  97. package/dist/chunk-TTTYW3TR.js +207 -0
  98. package/dist/chunk-TTTYW3TR.js.map +1 -0
  99. package/dist/chunk-W3QRRWQX.js +37 -0
  100. package/dist/chunk-W3QRRWQX.js.map +1 -0
  101. package/dist/chunk-WPXQHWPV.js +232 -0
  102. package/dist/chunk-WPXQHWPV.js.map +1 -0
  103. package/dist/chunk-XRDVD2EN.js +288 -0
  104. package/dist/chunk-XRDVD2EN.js.map +1 -0
  105. package/dist/chunk-XYEMP4K7.js +273 -0
  106. package/dist/chunk-XYEMP4K7.js.map +1 -0
  107. package/dist/chunk-YAO62VH2.js +342 -0
  108. package/dist/chunk-YAO62VH2.js.map +1 -0
  109. package/dist/{chunk-PVTTWOYV.js → chunk-Z6S36PDD.js} +7 -7
  110. package/dist/{chunk-PVTTWOYV.js.map → chunk-Z6S36PDD.js.map} +1 -1
  111. package/dist/chunk-ZYKJC5HH.js +296 -0
  112. package/dist/chunk-ZYKJC5HH.js.map +1 -0
  113. package/dist/design-system/accordion.d.ts +70 -0
  114. package/dist/design-system/accordion.d.ts.map +1 -0
  115. package/dist/design-system/alert.d.ts +39 -0
  116. package/dist/design-system/alert.d.ts.map +1 -0
  117. package/dist/design-system/avatar.d.ts +36 -0
  118. package/dist/design-system/avatar.d.ts.map +1 -0
  119. package/dist/design-system/badge.d.ts +71 -0
  120. package/dist/design-system/badge.d.ts.map +1 -0
  121. package/dist/design-system/breadcrumb.d.ts +27 -0
  122. package/dist/design-system/breadcrumb.d.ts.map +1 -0
  123. package/dist/design-system/button.d.ts +48 -0
  124. package/dist/design-system/button.d.ts.map +1 -0
  125. package/dist/design-system/card.d.ts +65 -0
  126. package/dist/design-system/card.d.ts.map +1 -0
  127. package/dist/design-system/divider.d.ts +45 -0
  128. package/dist/design-system/divider.d.ts.map +1 -0
  129. package/dist/design-system/drawer.d.ts +67 -0
  130. package/dist/design-system/drawer.d.ts.map +1 -0
  131. package/dist/design-system/dropdown.d.ts +79 -0
  132. package/dist/design-system/dropdown.d.ts.map +1 -0
  133. package/dist/design-system/dynamic-stepper.d.ts +29 -0
  134. package/dist/design-system/dynamic-stepper.d.ts.map +1 -0
  135. package/dist/design-system/empty-state.d.ts +29 -0
  136. package/dist/design-system/empty-state.d.ts.map +1 -0
  137. package/dist/design-system/file-upload.d.ts +19 -0
  138. package/dist/design-system/file-upload.d.ts.map +1 -0
  139. package/dist/design-system/index.d.ts +30 -0
  140. package/dist/design-system/index.d.ts.map +1 -0
  141. package/dist/design-system/inputs.d.ts +31 -0
  142. package/dist/design-system/inputs.d.ts.map +1 -0
  143. package/dist/design-system/modal.d.ts +66 -0
  144. package/dist/design-system/modal.d.ts.map +1 -0
  145. package/dist/design-system/pagination.d.ts +65 -0
  146. package/dist/design-system/pagination.d.ts.map +1 -0
  147. package/dist/design-system/progress.d.ts +57 -0
  148. package/dist/design-system/progress.d.ts.map +1 -0
  149. package/dist/design-system/select.d.ts +92 -0
  150. package/dist/design-system/select.d.ts.map +1 -0
  151. package/dist/design-system/skeleton.d.ts +104 -0
  152. package/dist/design-system/skeleton.d.ts.map +1 -0
  153. package/dist/design-system/slider.d.ts +44 -0
  154. package/dist/design-system/slider.d.ts.map +1 -0
  155. package/dist/design-system/spinner.d.ts +39 -0
  156. package/dist/design-system/spinner.d.ts.map +1 -0
  157. package/dist/design-system/stepper.d.ts +42 -0
  158. package/dist/design-system/stepper.d.ts.map +1 -0
  159. package/dist/design-system/table.d.ts +77 -0
  160. package/dist/design-system/table.d.ts.map +1 -0
  161. package/dist/design-system/tabs.d.ts +49 -0
  162. package/dist/design-system/tabs.d.ts.map +1 -0
  163. package/dist/design-system/toast.d.ts +43 -0
  164. package/dist/design-system/toast.d.ts.map +1 -0
  165. package/dist/design-system/toggle.d.ts +73 -0
  166. package/dist/design-system/toggle.d.ts.map +1 -0
  167. package/dist/design-system/tokens.d.ts +15 -0
  168. package/dist/design-system/tokens.d.ts.map +1 -0
  169. package/dist/design-system/tooltip.d.ts +41 -0
  170. package/dist/design-system/tooltip.d.ts.map +1 -0
  171. package/dist/design-system/typography.d.ts +42 -0
  172. package/dist/design-system/typography.d.ts.map +1 -0
  173. package/dist/hooks/useResizeObserver.js +6 -31
  174. package/dist/hooks/useResizeObserver.js.map +1 -1
  175. package/dist/hooks/useResizeObserver.mjs +1 -33
  176. package/dist/hooks/useResizeObserver.mjs.map +1 -1
  177. package/dist/ui/accordion/animated.js +7 -7
  178. package/dist/ui/accordion/animated.mjs +2 -2
  179. package/dist/ui/accordion/variants.d.ts +5 -5
  180. package/dist/ui/accordion/variants.d.ts.map +1 -1
  181. package/dist/ui/accordion.js +9 -9
  182. package/dist/ui/accordion.mjs +2 -2
  183. package/dist/ui/alert/animated.js +2 -2
  184. package/dist/ui/alert/animated.mjs +1 -1
  185. package/dist/ui/alert/variants.d.ts +4 -4
  186. package/dist/ui/alert/variants.d.ts.map +1 -1
  187. package/dist/ui/alert.js +10 -10
  188. package/dist/ui/alert.mjs +2 -2
  189. package/dist/ui/avatar/animated.js +5 -5
  190. package/dist/ui/avatar/animated.mjs +2 -2
  191. package/dist/ui/avatar/variants.d.ts +1 -1
  192. package/dist/ui/avatar/variants.d.ts.map +1 -1
  193. package/dist/ui/avatar.js +9 -9
  194. package/dist/ui/avatar.mjs +2 -2
  195. package/dist/ui/badge/animated.js +2 -2
  196. package/dist/ui/badge/animated.mjs +1 -1
  197. package/dist/ui/badge/variants.d.ts +29 -32
  198. package/dist/ui/badge/variants.d.ts.map +1 -1
  199. package/dist/ui/badge.js +4 -4
  200. package/dist/ui/badge.mjs +2 -2
  201. package/dist/ui/breadcrumb/variants.d.ts +1 -1
  202. package/dist/ui/breadcrumb/variants.d.ts.map +1 -1
  203. package/dist/ui/breadcrumb.js +42 -40
  204. package/dist/ui/breadcrumb.js.map +1 -1
  205. package/dist/ui/breadcrumb.mjs +42 -40
  206. package/dist/ui/breadcrumb.mjs.map +1 -1
  207. package/dist/ui/buttons/animated.js +3 -3
  208. package/dist/ui/buttons/animated.mjs +1 -1
  209. package/dist/ui/buttons/variants.d.ts +2 -2
  210. package/dist/ui/buttons/variants.d.ts.map +1 -1
  211. package/dist/ui/buttons.js +4 -4
  212. package/dist/ui/buttons.mjs +2 -2
  213. package/dist/ui/card/animated.js +7 -7
  214. package/dist/ui/card/animated.mjs +2 -2
  215. package/dist/ui/card/variants.d.ts +7 -7
  216. package/dist/ui/card/variants.d.ts.map +1 -1
  217. package/dist/ui/card.js +12 -12
  218. package/dist/ui/card.mjs +2 -2
  219. package/dist/ui/divider/animated.js +2 -2
  220. package/dist/ui/divider/animated.mjs +1 -1
  221. package/dist/ui/divider/variants.d.ts +4 -4
  222. package/dist/ui/divider/variants.d.ts.map +1 -1
  223. package/dist/ui/divider.js +6 -6
  224. package/dist/ui/divider.mjs +2 -2
  225. package/dist/ui/drawer/animated.js +11 -11
  226. package/dist/ui/drawer/animated.mjs +2 -2
  227. package/dist/ui/drawer/variants.d.ts +1 -1
  228. package/dist/ui/drawer/variants.d.ts.map +1 -1
  229. package/dist/ui/drawer.js +11 -11
  230. package/dist/ui/drawer.mjs +1 -1
  231. package/dist/ui/dropdown/variants.d.ts +4 -4
  232. package/dist/ui/dropdown/variants.d.ts.map +1 -1
  233. package/dist/ui/dropdown.js +106 -104
  234. package/dist/ui/dropdown.js.map +1 -1
  235. package/dist/ui/dropdown.mjs +106 -104
  236. package/dist/ui/dropdown.mjs.map +1 -1
  237. package/dist/ui/dynamic-stepper/variants.d.ts +5 -9
  238. package/dist/ui/dynamic-stepper/variants.d.ts.map +1 -1
  239. package/dist/ui/dynamic-stepper.js +100 -93
  240. package/dist/ui/dynamic-stepper.js.map +1 -1
  241. package/dist/ui/dynamic-stepper.mjs +98 -91
  242. package/dist/ui/dynamic-stepper.mjs.map +1 -1
  243. package/dist/ui/empty-state/animated.js +2 -2
  244. package/dist/ui/empty-state/animated.mjs +1 -1
  245. package/dist/ui/empty-state/variants.d.ts +3 -3
  246. package/dist/ui/empty-state/variants.d.ts.map +1 -1
  247. package/dist/ui/empty-state.js +10 -10
  248. package/dist/ui/empty-state.mjs +2 -2
  249. package/dist/ui/file-upload/variants.d.ts.map +1 -1
  250. package/dist/ui/file-upload.js +28 -26
  251. package/dist/ui/file-upload.js.map +1 -1
  252. package/dist/ui/file-upload.mjs +28 -26
  253. package/dist/ui/file-upload.mjs.map +1 -1
  254. package/dist/ui/inputs/animated.js +3 -3
  255. package/dist/ui/inputs/animated.mjs +1 -1
  256. package/dist/ui/inputs/variants.d.ts +1 -1
  257. package/dist/ui/inputs/variants.d.ts.map +1 -1
  258. package/dist/ui/inputs.js +4 -4
  259. package/dist/ui/inputs.mjs +2 -2
  260. package/dist/ui/modal/animated.js +4 -4
  261. package/dist/ui/modal/animated.mjs +1 -1
  262. package/dist/ui/modal/variants.d.ts +1 -1
  263. package/dist/ui/modal/variants.d.ts.map +1 -1
  264. package/dist/ui/modal.js +12 -12
  265. package/dist/ui/modal.mjs +2 -2
  266. package/dist/ui/pagination/variants.d.ts +3 -7
  267. package/dist/ui/pagination/variants.d.ts.map +1 -1
  268. package/dist/ui/pagination.js +84 -84
  269. package/dist/ui/pagination.js.map +1 -1
  270. package/dist/ui/pagination.mjs +81 -81
  271. package/dist/ui/pagination.mjs.map +1 -1
  272. package/dist/ui/progress/animated.js +8 -8
  273. package/dist/ui/progress/animated.mjs +2 -2
  274. package/dist/ui/progress/variants.d.ts +3 -3
  275. package/dist/ui/progress/variants.d.ts.map +1 -1
  276. package/dist/ui/progress.js +9 -9
  277. package/dist/ui/progress.mjs +2 -2
  278. package/dist/ui/search.js +2 -2
  279. package/dist/ui/search.mjs +1 -1
  280. package/dist/ui/select/variants.d.ts +6 -6
  281. package/dist/ui/select/variants.d.ts.map +1 -1
  282. package/dist/ui/select.js +122 -123
  283. package/dist/ui/select.js.map +1 -1
  284. package/dist/ui/select.mjs +122 -123
  285. package/dist/ui/select.mjs.map +1 -1
  286. package/dist/ui/skeleton/animated.js +8 -8
  287. package/dist/ui/skeleton/animated.mjs +1 -1
  288. package/dist/ui/skeleton/variants.d.ts +5 -4
  289. package/dist/ui/skeleton/variants.d.ts.map +1 -1
  290. package/dist/ui/skeleton.js +9 -9
  291. package/dist/ui/skeleton.mjs +1 -1
  292. package/dist/ui/slider/variants.d.ts +3 -3
  293. package/dist/ui/slider/variants.d.ts.map +1 -1
  294. package/dist/ui/slider.js +69 -67
  295. package/dist/ui/slider.js.map +1 -1
  296. package/dist/ui/slider.mjs +69 -67
  297. package/dist/ui/slider.mjs.map +1 -1
  298. package/dist/ui/spinner/animated/variants.d.ts +2 -2
  299. package/dist/ui/spinner/animated/variants.d.ts.map +1 -1
  300. package/dist/ui/spinner/animated.js +44 -38
  301. package/dist/ui/spinner/animated.js.map +1 -1
  302. package/dist/ui/spinner/animated.mjs +44 -38
  303. package/dist/ui/spinner/animated.mjs.map +1 -1
  304. package/dist/ui/stepper/variants.d.ts +1 -1
  305. package/dist/ui/stepper/variants.d.ts.map +1 -1
  306. package/dist/ui/stepper.js +57 -50
  307. package/dist/ui/stepper.js.map +1 -1
  308. package/dist/ui/stepper.mjs +57 -50
  309. package/dist/ui/stepper.mjs.map +1 -1
  310. package/dist/ui/table/animated.js +8 -8
  311. package/dist/ui/table/animated.mjs +2 -2
  312. package/dist/ui/table/variants.d.ts +2 -2
  313. package/dist/ui/table/variants.d.ts.map +1 -1
  314. package/dist/ui/table.js +14 -14
  315. package/dist/ui/table.mjs +1 -1
  316. package/dist/ui/tabs/animated.js +2 -2
  317. package/dist/ui/tabs/animated.mjs +1 -1
  318. package/dist/ui/tabs/variants.d.ts +2 -2
  319. package/dist/ui/tabs/variants.d.ts.map +1 -1
  320. package/dist/ui/tabs.js +9 -9
  321. package/dist/ui/tabs.mjs +1 -1
  322. package/dist/ui/toast/animated.js +7 -7
  323. package/dist/ui/toast/animated.mjs +1 -1
  324. package/dist/ui/toast/variants.d.ts +3 -3
  325. package/dist/ui/toast/variants.d.ts.map +1 -1
  326. package/dist/ui/toast.js +12 -12
  327. package/dist/ui/toast.mjs +1 -1
  328. package/dist/ui/toggle/animated/toggle-animated.d.ts.map +1 -1
  329. package/dist/ui/toggle/animated.js +13 -6
  330. package/dist/ui/toggle/animated.js.map +1 -1
  331. package/dist/ui/toggle/animated.mjs +12 -5
  332. package/dist/ui/toggle/animated.mjs.map +1 -1
  333. package/dist/ui/toggle/toggle-base.d.ts +2 -0
  334. package/dist/ui/toggle/toggle-base.d.ts.map +1 -1
  335. package/dist/ui/toggle/variants.d.ts +4 -4
  336. package/dist/ui/toggle/variants.d.ts.map +1 -1
  337. package/dist/ui/toggle.js +5 -94
  338. package/dist/ui/toggle.js.map +1 -1
  339. package/dist/ui/toggle.mjs +4 -93
  340. package/dist/ui/toggle.mjs.map +1 -1
  341. package/dist/ui/tooltip/animated.js +3 -3
  342. package/dist/ui/tooltip/animated.mjs +1 -1
  343. package/dist/ui/tooltip/variants.d.ts +3 -3
  344. package/dist/ui/tooltip/variants.d.ts.map +1 -1
  345. package/dist/ui/tooltip.js +7 -7
  346. package/dist/ui/tooltip.mjs +1 -1
  347. package/dist/ui/typography/variants.d.ts +1 -3
  348. package/dist/ui/typography/variants.d.ts.map +1 -1
  349. package/dist/ui/typography.js +51 -41
  350. package/dist/ui/typography.js.map +1 -1
  351. package/dist/ui/typography.mjs +51 -41
  352. package/dist/ui/typography.mjs.map +1 -1
  353. package/package.json +2 -1
  354. package/src/charts/shared/chart-frame.tsx +19 -8
  355. package/src/design-system/accordion.ts +111 -0
  356. package/src/design-system/alert.ts +64 -0
  357. package/src/design-system/avatar.ts +61 -0
  358. package/src/design-system/badge.ts +85 -0
  359. package/src/design-system/breadcrumb.ts +45 -0
  360. package/src/design-system/button.ts +81 -0
  361. package/src/design-system/card.ts +104 -0
  362. package/src/design-system/divider.ts +73 -0
  363. package/src/design-system/drawer.ts +111 -0
  364. package/src/design-system/dropdown.ts +130 -0
  365. package/src/design-system/dynamic-stepper.ts +218 -0
  366. package/src/design-system/empty-state.ts +39 -0
  367. package/src/design-system/file-upload.ts +30 -0
  368. package/src/design-system/index.ts +29 -0
  369. package/src/design-system/inputs.ts +74 -0
  370. package/src/design-system/modal.ts +110 -0
  371. package/src/design-system/pagination.ts +92 -0
  372. package/src/design-system/progress.ts +86 -0
  373. package/src/design-system/select.ts +155 -0
  374. package/src/design-system/skeleton.ts +129 -0
  375. package/src/design-system/slider.ts +70 -0
  376. package/src/design-system/spinner.ts +59 -0
  377. package/src/design-system/stepper.ts +66 -0
  378. package/src/design-system/table.ts +115 -0
  379. package/src/design-system/tabs.ts +73 -0
  380. package/src/design-system/toast.ts +69 -0
  381. package/src/design-system/toggle.ts +120 -0
  382. package/src/design-system/tokens.ts +22 -0
  383. package/src/design-system/tooltip.ts +63 -0
  384. package/src/design-system/typography.ts +64 -0
  385. package/src/ui/accordion/variants.ts +24 -106
  386. package/src/ui/alert/alert.test.tsx +1 -1
  387. package/src/ui/alert/variants.ts +25 -77
  388. package/src/ui/avatar/variants.ts +21 -66
  389. package/src/ui/badge/badge.test.tsx +1 -1
  390. package/src/ui/badge/variants.ts +28 -89
  391. package/src/ui/breadcrumb/variants.ts +24 -40
  392. package/src/ui/buttons/button.test.tsx +25 -5
  393. package/src/ui/buttons/variants.ts +15 -84
  394. package/src/ui/card/card.test.tsx +1 -1
  395. package/src/ui/card/variants.ts +46 -121
  396. package/src/ui/divider/divider-base.tsx +1 -1
  397. package/src/ui/divider/variants.ts +32 -70
  398. package/src/ui/drawer/drawer-base.tsx +1 -1
  399. package/src/ui/drawer/variants.ts +41 -132
  400. package/src/ui/dropdown/variants.ts +36 -142
  401. package/src/ui/dynamic-stepper/variants.ts +32 -216
  402. package/src/ui/empty-state/variants.ts +29 -44
  403. package/src/ui/file-upload/variants.ts +12 -36
  404. package/src/ui/inputs/input.test.tsx +11 -11
  405. package/src/ui/inputs/variants.ts +308 -371
  406. package/src/ui/modal/variants.ts +29 -120
  407. package/src/ui/pagination/pagination.test.tsx +1 -1
  408. package/src/ui/pagination/variants.ts +22 -95
  409. package/src/ui/progress/variants.ts +41 -112
  410. package/src/ui/select/variants.ts +40 -165
  411. package/src/ui/skeleton/variants.ts +154 -250
  412. package/src/ui/slider/variants.ts +34 -67
  413. package/src/ui/spinner/animated/variants.ts +10 -39
  414. package/src/ui/stepper/stepper.test.tsx +12 -4
  415. package/src/ui/stepper/variants.ts +23 -68
  416. package/src/ui/table/variants.ts +36 -106
  417. package/src/ui/tabs/variants.ts +26 -73
  418. package/src/ui/toast/variants.ts +24 -75
  419. package/src/ui/toggle/animated/toggle-animated.tsx +14 -4
  420. package/src/ui/toggle/toggle-base.tsx +3 -7
  421. package/src/ui/toggle/variants.ts +27 -111
  422. package/src/ui/tooltip/variants.ts +18 -57
  423. package/src/ui/typography/typography.test.tsx +1 -1
  424. package/src/ui/typography/variants.ts +17 -54
  425. package/dist/chunk-25EAVVGS.mjs +0 -267
  426. package/dist/chunk-25EAVVGS.mjs.map +0 -1
  427. package/dist/chunk-3OXIZ4ZO.js +0 -175
  428. package/dist/chunk-3OXIZ4ZO.js.map +0 -1
  429. package/dist/chunk-3Z73M5TW.js +0 -273
  430. package/dist/chunk-3Z73M5TW.js.map +0 -1
  431. package/dist/chunk-4F56BLZQ.js +0 -336
  432. package/dist/chunk-4F56BLZQ.js.map +0 -1
  433. package/dist/chunk-4PZIDDC6.js +0 -279
  434. package/dist/chunk-4PZIDDC6.js.map +0 -1
  435. package/dist/chunk-73RHHGIA.mjs +0 -197
  436. package/dist/chunk-73RHHGIA.mjs.map +0 -1
  437. package/dist/chunk-746CV3AN.js +0 -246
  438. package/dist/chunk-746CV3AN.js.map +0 -1
  439. package/dist/chunk-CFTDAGKD.js +0 -130
  440. package/dist/chunk-CFTDAGKD.js.map +0 -1
  441. package/dist/chunk-D55YIHBN.js.map +0 -1
  442. package/dist/chunk-EU63V22F.mjs +0 -126
  443. package/dist/chunk-EU63V22F.mjs.map +0 -1
  444. package/dist/chunk-EZS47EZW.mjs +0 -70
  445. package/dist/chunk-EZS47EZW.mjs.map +0 -1
  446. package/dist/chunk-GHJN3Z3V.js +0 -292
  447. package/dist/chunk-GHJN3Z3V.js.map +0 -1
  448. package/dist/chunk-GIC3J6HR.mjs +0 -196
  449. package/dist/chunk-GIC3J6HR.mjs.map +0 -1
  450. package/dist/chunk-GPAUYUM3.js +0 -232
  451. package/dist/chunk-GPAUYUM3.js.map +0 -1
  452. package/dist/chunk-HARD4NMB.mjs +0 -268
  453. package/dist/chunk-HARD4NMB.mjs.map +0 -1
  454. package/dist/chunk-HV7LVRK3.js +0 -277
  455. package/dist/chunk-HV7LVRK3.js.map +0 -1
  456. package/dist/chunk-J5QJEKY2.mjs +0 -169
  457. package/dist/chunk-J5QJEKY2.mjs.map +0 -1
  458. package/dist/chunk-JE6B3DHW.mjs +0 -220
  459. package/dist/chunk-JE6B3DHW.mjs.map +0 -1
  460. package/dist/chunk-JOMSI4WH.js.map +0 -1
  461. package/dist/chunk-KA5MORDC.js +0 -336
  462. package/dist/chunk-KA5MORDC.js.map +0 -1
  463. package/dist/chunk-LPL6NJ5Q.mjs +0 -264
  464. package/dist/chunk-LPL6NJ5Q.mjs.map +0 -1
  465. package/dist/chunk-M6FS7X54.mjs.map +0 -1
  466. package/dist/chunk-MM3P52WS.js.map +0 -1
  467. package/dist/chunk-MTJRPLMG.js.map +0 -1
  468. package/dist/chunk-OB6TYS5Q.js +0 -205
  469. package/dist/chunk-OB6TYS5Q.js.map +0 -1
  470. package/dist/chunk-OHST7AHC.mjs +0 -99
  471. package/dist/chunk-OHST7AHC.mjs.map +0 -1
  472. package/dist/chunk-OVTWPGMW.mjs.map +0 -1
  473. package/dist/chunk-PSIAOIXJ.mjs +0 -278
  474. package/dist/chunk-PSIAOIXJ.mjs.map +0 -1
  475. package/dist/chunk-QNF4JPFP.js +0 -339
  476. package/dist/chunk-QNF4JPFP.js.map +0 -1
  477. package/dist/chunk-QSIJKHC5.mjs.map +0 -1
  478. package/dist/chunk-RFFGQYDQ.mjs +0 -337
  479. package/dist/chunk-RFFGQYDQ.mjs.map +0 -1
  480. package/dist/chunk-S5H2OMTZ.mjs +0 -233
  481. package/dist/chunk-S5H2OMTZ.mjs.map +0 -1
  482. package/dist/chunk-SPX2QDIB.mjs.map +0 -1
  483. package/dist/chunk-TIPNRH26.js +0 -102
  484. package/dist/chunk-TIPNRH26.js.map +0 -1
  485. package/dist/chunk-V2PEOBAT.mjs +0 -324
  486. package/dist/chunk-V2PEOBAT.mjs.map +0 -1
  487. package/dist/chunk-VGWA26BN.js +0 -72
  488. package/dist/chunk-VGWA26BN.js.map +0 -1
  489. package/dist/chunk-WNLDXBS6.mjs +0 -323
  490. package/dist/chunk-WNLDXBS6.mjs.map +0 -1
  491. package/dist/chunk-YIO7DFUA.js +0 -207
  492. package/dist/chunk-YIO7DFUA.js.map +0 -1
@@ -1,8 +1,8 @@
1
1
  "use client";
2
- import { toggleThumbVariants, toggleTrackVariants } from '../../chunk-OHST7AHC.mjs';
2
+ import { hasToggleLabelChildren, toggleThumbVariants, toggleTrackVariants } from '../../chunk-PMWRJ2KS.mjs';
3
3
  import { cn } from '../../chunk-4D54YOL6.mjs';
4
4
  import { motion } from 'framer-motion';
5
- import { useState, useCallback } from 'react';
5
+ import { useId, useState, useCallback } from 'react';
6
6
  import { jsxs, jsx } from 'react/jsx-runtime';
7
7
 
8
8
  // src/ui/toggle/animated/animations.ts
@@ -29,6 +29,7 @@ function ToggleAnimated(props) {
29
29
  children,
30
30
  ...rest
31
31
  } = props;
32
+ const toggleLabelId = useId();
32
33
  const isControlled = checked !== void 0;
33
34
  const [uncontrolled, setUncontrolled] = useState(defaultChecked);
34
35
  const resolved = isControlled ? Boolean(checked) : uncontrolled;
@@ -42,7 +43,13 @@ function ToggleAnimated(props) {
42
43
  },
43
44
  [isControlled, onCheckedChange]
44
45
  );
45
- const thumbShiftPx = size === "sm" ? 14 : size === "lg" ? 24 : 18;
46
+ const thumbShiftPx = size === "sm" ? 16 : size === "lg" ? 24 : 20;
47
+ const labeledByChildren = hasToggleLabelChildren(children);
48
+ const labeling = labeledByChildren ? {
49
+ "aria-labelledby": toggleLabelId
50
+ } : {
51
+ "aria-label": ariaLabel ?? "Toggle"
52
+ };
46
53
  return /* @__PURE__ */ jsxs(
47
54
  "button",
48
55
  {
@@ -51,9 +58,9 @@ function ToggleAnimated(props) {
51
58
  role: "switch",
52
59
  "data-slot": "toggle",
53
60
  "aria-checked": resolved,
54
- "aria-label": ariaLabel,
55
61
  "data-state": resolved ? "checked" : "unchecked",
56
62
  disabled,
63
+ ...labeling,
57
64
  className: cn(toggleTrackVariants({ size, appearance }), className),
58
65
  onClick: () => {
59
66
  if (!disabled) {
@@ -62,7 +69,7 @@ function ToggleAnimated(props) {
62
69
  },
63
70
  ...rest,
64
71
  children: [
65
- /* @__PURE__ */ jsx("span", { className: "sr-only", children }),
72
+ /* @__PURE__ */ jsx("span", { className: "sr-only", id: labeledByChildren ? toggleLabelId : void 0, children }),
66
73
  /* @__PURE__ */ jsx(
67
74
  motion.span,
68
75
  {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/ui/toggle/animated/animations.ts","../../../src/ui/toggle/animated/toggle-animated.tsx"],"names":[],"mappings":";;;;;;;AAEO,IAAM,2BAAA,GAAsD;AAAA,EACjE,MAAM,EAAC;AAAA,EACP,MAAA,EAAQ;AAAA,IACN,MAAA,EAAQ,IAAA;AAAA,IACR,YAAY,EAAE,IAAA,EAAM,UAAU,SAAA,EAAW,GAAA,EAAK,SAAS,EAAA;AAAG;AAE9D;ACGO,SAAS,eAAe,KAAA,EAA4B;AACzD,EAAA,MAAM;AAAA,IACJ,SAAA;AAAA,IACA,IAAA;AAAA,IACA,UAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA,GAAY,QAAA;AAAA,IACZ,OAAA;AAAA,IACA,cAAA,GAAiB,KAAA;AAAA,IACjB,eAAA;AAAA,IACA,QAAA;AAAA,IACA,GAAA;AAAA,IACA,cAAc,SAAA,GAAY,QAAA;AAAA,IAC1B,QAAA;AAAA,IACA,GAAG;AAAA,GACL,GAAI,KAAA;AACJ,EAAA,MAAM,eAAe,OAAA,KAAY,MAAA;AACjC,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,SAAS,cAAc,CAAA;AAC/D,EAAA,MAAM,QAAA,GAAW,YAAA,GAAe,OAAA,CAAQ,OAAO,CAAA,GAAI,YAAA;AACnD,EAAA,MAAM,WAAA,GAAc,4BAA4B,SAAS,CAAA;AAEzD,EAAA,MAAM,UAAA,GAAa,WAAA;AAAA,IACjB,CAAC,IAAA,KAAkB;AACjB,MAAA,IAAI,CAAC,YAAA,EAAc;AACjB,QAAA,eAAA,CAAgB,IAAI,CAAA;AAAA,MACtB;AACA,MAAA,eAAA,GAAkB,IAAI,CAAA;AAAA,IACxB,CAAA;AAAA,IACA,CAAC,cAAc,eAAe;AAAA,GAChC;AAEA,EAAA,MAAM,eAAe,IAAA,KAAS,IAAA,GAAO,EAAA,GAAK,IAAA,KAAS,OAAO,EAAA,GAAK,EAAA;AAE/D,EAAA,uBACE,IAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,GAAA;AAAA,MACA,IAAA,EAAK,QAAA;AAAA,MACL,IAAA,EAAK,QAAA;AAAA,MACL,WAAA,EAAU,QAAA;AAAA,MACV,cAAA,EAAc,QAAA;AAAA,MACd,YAAA,EAAY,SAAA;AAAA,MACZ,YAAA,EAAY,WAAW,SAAA,GAAY,WAAA;AAAA,MACnC,QAAA;AAAA,MACA,SAAA,EAAW,GAAG,mBAAA,CAAoB,EAAE,MAAM,UAAA,EAAY,GAAG,SAAS,CAAA;AAAA,MAClE,SAAS,MAAM;AACb,QAAA,IAAI,CAAC,QAAA,EAAU;AACb,UAAA,UAAA,CAAW,CAAC,QAAQ,CAAA;AAAA,QACtB;AAAA,MACF,CAAA;AAAA,MACC,GAAG,IAAA;AAAA,MAEJ,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,SAAA,EAAW,QAAA,EAAS,CAAA;AAAA,wBACpC,GAAA;AAAA,UAAC,MAAA,CAAO,IAAA;AAAA,UAAP;AAAA,YACC,SAAA,EAAW,EAAA;AAAA,cACT,mBAAA,CAAoB,EAAE,IAAA,EAAM,UAAA,EAAY,CAAA;AAAA,cACxC;AAAA,aACF;AAAA,YACA,OAAA,EAAS,EAAE,CAAA,EAAG,QAAA,GAAW,eAAe,CAAA,EAAE;AAAA,YAC1C,YAAY,WAAA,CAAY,UAAA;AAAA,YACxB,QAAQ,WAAA,CAAY;AAAA;AAAA;AACtB;AAAA;AAAA,GACF;AAEJ;AAEA,cAAA,CAAe,WAAA,GAAc,QAAA","file":"animated.mjs","sourcesContent":["import { ToggleAnimationPresets } from \"./types\";\n\nexport const toggleThumbAnimationPresets: ToggleAnimationPresets = {\n none: {},\n spring: {\n layout: true,\n transition: { type: \"spring\", stiffness: 520, damping: 32 },\n },\n};\n","\"use client\";\n\nimport { motion } from \"framer-motion\";\nimport { useCallback, useState } from \"react\";\n\nimport { cn } from \"../../../lib/utils\";\n\nimport { toggleThumbAnimationPresets } from \"./animations\";\nimport type { ToggleAnimatedProps } from \"./types\";\nimport { toggleThumbVariants, toggleTrackVariants } from \"../variants\";\n\nexport function ToggleAnimated(props: ToggleAnimatedProps) {\n const {\n className,\n size,\n appearance,\n thumbColor,\n animation = \"spring\",\n checked,\n defaultChecked = false,\n onCheckedChange,\n disabled,\n ref,\n \"aria-label\": ariaLabel = \"Toggle\",\n children,\n ...rest\n } = props;\n const isControlled = checked !== undefined;\n const [uncontrolled, setUncontrolled] = useState(defaultChecked);\n const resolved = isControlled ? Boolean(checked) : uncontrolled;\n const thumbMotion = toggleThumbAnimationPresets[animation];\n\n const setChecked = useCallback(\n (next: boolean) => {\n if (!isControlled) {\n setUncontrolled(next);\n }\n onCheckedChange?.(next);\n },\n [isControlled, onCheckedChange],\n );\n\n const thumbShiftPx = size === \"sm\" ? 14 : size === \"lg\" ? 24 : 18;\n\n return (\n <button\n ref={ref}\n type=\"button\"\n role=\"switch\"\n data-slot=\"toggle\"\n aria-checked={resolved}\n aria-label={ariaLabel}\n data-state={resolved ? \"checked\" : \"unchecked\"}\n disabled={disabled}\n className={cn(toggleTrackVariants({ size, appearance }), className)}\n onClick={() => {\n if (!disabled) {\n setChecked(!resolved);\n }\n }}\n {...rest}\n >\n <span className=\"sr-only\">{children}</span>\n <motion.span\n className={cn(\n toggleThumbVariants({ size, thumbColor }),\n \"absolute left-1 top-1/2 -translate-y-1/2\",\n )}\n animate={{ x: resolved ? thumbShiftPx : 0 }}\n transition={thumbMotion.transition}\n layout={thumbMotion.layout}\n />\n </button>\n );\n}\n\nToggleAnimated.displayName = \"Toggle\";\n"]}
1
+ {"version":3,"sources":["../../../src/ui/toggle/animated/animations.ts","../../../src/ui/toggle/animated/toggle-animated.tsx"],"names":[],"mappings":"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","file":"animated.mjs","sourcesContent":["import { ToggleAnimationPresets } from \"./types\";\n\nexport const toggleThumbAnimationPresets: ToggleAnimationPresets = {\n none: {},\n spring: {\n layout: true,\n transition: { type: \"spring\", stiffness: 520, damping: 32 },\n },\n};\n","\"use client\";\n\nimport { motion } from \"framer-motion\";\nimport { useCallback, useId, useState } from \"react\";\n\nimport { cn } from \"../../../lib/utils\";\n\nimport { toggleThumbAnimationPresets } from \"./animations\";\nimport type { ToggleAnimatedProps } from \"./types\";\nimport { toggleThumbVariants, toggleTrackVariants } from \"../variants\";\nimport { hasToggleLabelChildren } from \"../toggle-base\";\n\nexport function ToggleAnimated(props: ToggleAnimatedProps) {\n const {\n className,\n size,\n appearance,\n thumbColor,\n animation = \"spring\",\n checked,\n defaultChecked = false,\n onCheckedChange,\n disabled,\n ref,\n \"aria-label\": ariaLabel = \"Toggle\",\n children,\n ...rest\n } = props;\n const toggleLabelId = useId();\n const isControlled = checked !== undefined;\n const [uncontrolled, setUncontrolled] = useState(defaultChecked);\n const resolved = isControlled ? Boolean(checked) : uncontrolled;\n const thumbMotion = toggleThumbAnimationPresets[animation];\n\n const setChecked = useCallback(\n (next: boolean) => {\n if (!isControlled) {\n setUncontrolled(next);\n }\n onCheckedChange?.(next);\n },\n [isControlled, onCheckedChange],\n );\n\n const thumbShiftPx = size === \"sm\" ? 16 : size === \"lg\" ? 24 : 20;\n const labeledByChildren = hasToggleLabelChildren(children);\n const labeling = labeledByChildren\n ? {\n \"aria-labelledby\": toggleLabelId,\n }\n : {\n \"aria-label\": ariaLabel ?? \"Toggle\",\n };\n\n return (\n <button\n ref={ref}\n type=\"button\"\n role=\"switch\"\n data-slot=\"toggle\"\n aria-checked={resolved}\n data-state={resolved ? \"checked\" : \"unchecked\"}\n disabled={disabled}\n {...labeling}\n className={cn(toggleTrackVariants({ size, appearance }), className)}\n onClick={() => {\n if (!disabled) {\n setChecked(!resolved);\n }\n }}\n {...rest}\n >\n <span className=\"sr-only\" id={labeledByChildren ? toggleLabelId : undefined}>{children}</span>\n <motion.span\n className={cn(\n toggleThumbVariants({ size, thumbColor }),\n \"absolute left-1 top-1/2 -translate-y-1/2\",\n )}\n animate={{ x: resolved ? thumbShiftPx : 0 }}\n transition={thumbMotion.transition}\n layout={thumbMotion.layout}\n />\n </button>\n );\n}\n\nToggleAnimated.displayName = \"Toggle\";\n"]}
@@ -1,4 +1,6 @@
1
+ import { type ReactNode } from "react";
1
2
  import type { ToggleProps } from "./types";
3
+ export declare function hasToggleLabelChildren(node: ReactNode): boolean;
2
4
  export declare function ToggleBase(props: ToggleProps): import("react/jsx-runtime").JSX.Element;
3
5
  export declare namespace ToggleBase {
4
6
  var displayName: string;
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-base.d.ts","sourceRoot":"","sources":["../../../src/ui/toggle/toggle-base.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAsB3C,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,2CAwE5C;yBAxEe,UAAU"}
1
+ {"version":3,"file":"toggle-base.d.ts","sourceRoot":"","sources":["../../../src/ui/toggle/toggle-base.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAgC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAiB/D;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,2CAoE5C;yBApEe,UAAU"}
@@ -1,9 +1,9 @@
1
1
  export declare const toggleTrackVariants: (props?: ({
2
- size?: "sm" | "md" | "lg" | null | undefined;
3
- appearance?: "default" | "emerald" | "rose" | "slate" | "gray" | "indigo" | "cyan" | "green" | "lime" | "orange" | "pink" | "purple" | "teal" | "yellow" | "destructive" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | "success" | "neutral" | "zinc" | "stone" | null | undefined;
2
+ size?: "md" | "sm" | "lg" | null | undefined;
3
+ appearance?: "default" | "emerald" | "rose" | "slate" | "gray" | "indigo" | "cyan" | "green" | "lime" | "orange" | "pink" | "purple" | "teal" | "yellow" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | "destructive" | "success" | "neutral" | "zinc" | "stone" | null | undefined;
4
4
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
5
  export declare const toggleThumbVariants: (props?: ({
6
- size?: "sm" | "md" | "lg" | null | undefined;
7
- thumbColor?: "default" | "emerald" | "rose" | "slate" | "gray" | "indigo" | "cyan" | "green" | "lime" | "orange" | "pink" | "purple" | "teal" | "yellow" | "destructive" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | "success" | "neutral" | "zinc" | "stone" | null | undefined;
6
+ size?: "md" | "sm" | "lg" | null | undefined;
7
+ thumbColor?: "default" | "emerald" | "rose" | "slate" | "gray" | "indigo" | "cyan" | "green" | "lime" | "orange" | "pink" | "purple" | "teal" | "yellow" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | "destructive" | "success" | "neutral" | "zinc" | "stone" | null | undefined;
8
8
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
9
9
  //# sourceMappingURL=variants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/toggle/variants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB;;;8EAkE/B,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;8EA6C/B,CAAC"}
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/toggle/variants.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,mBAAmB;;;8EAS9B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;8EAS9B,CAAC"}
package/dist/ui/toggle.js CHANGED
@@ -1,111 +1,22 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkTIPNRH26_js = require('../chunk-TIPNRH26.js');
5
- var chunkZS5756ZC_js = require('../chunk-ZS5756ZC.js');
6
- var react = require('react');
4
+ var chunkEN4VLNBF_js = require('../chunk-EN4VLNBF.js');
5
+ require('../chunk-ZS5756ZC.js');
7
6
  var jsxRuntime = require('react/jsx-runtime');
8
7
 
9
- function hasToggleLabelChildren(node) {
10
- if (node === void 0 || node === null) {
11
- return false;
12
- }
13
- if (typeof node === "boolean") {
14
- return false;
15
- }
16
- if (typeof node === "string") {
17
- return node.trim().length > 0;
18
- }
19
- if (typeof node === "number") {
20
- return true;
21
- }
22
- if (Array.isArray(node)) {
23
- return node.some(hasToggleLabelChildren);
24
- }
25
- return true;
26
- }
27
- function ToggleBase(props) {
28
- const {
29
- className,
30
- size,
31
- appearance,
32
- checked,
33
- defaultChecked = false,
34
- onCheckedChange,
35
- disabled,
36
- ref,
37
- "aria-label": ariaLabelProp,
38
- children,
39
- thumbColor,
40
- ...rest
41
- } = props;
42
- const toggleLabelId = react.useId();
43
- const isControlled = checked !== void 0;
44
- const [uncontrolled, setUncontrolled] = react.useState(defaultChecked);
45
- const resolved = isControlled ? Boolean(checked) : uncontrolled;
46
- const setChecked = react.useCallback(
47
- (next) => {
48
- if (!isControlled) {
49
- setUncontrolled(next);
50
- }
51
- onCheckedChange?.(next);
52
- },
53
- [isControlled, onCheckedChange]
54
- );
55
- const thumbShiftPx = size === "sm" ? 14 : size === "lg" ? 24 : 19;
56
- const labeledByChildren = hasToggleLabelChildren(children);
57
- const labeling = labeledByChildren ? {
58
- "aria-labelledby": toggleLabelId
59
- } : {
60
- "aria-label": ariaLabelProp ?? "Toggle"
61
- };
62
- return /* @__PURE__ */ jsxRuntime.jsxs(
63
- "button",
64
- {
65
- ref,
66
- type: "button",
67
- role: "switch",
68
- "data-slot": "toggle",
69
- "aria-checked": resolved,
70
- "data-state": resolved ? "checked" : "unchecked",
71
- disabled,
72
- className: chunkZS5756ZC_js.cn(chunkTIPNRH26_js.toggleTrackVariants({ size, appearance }), className),
73
- ...labeling,
74
- onClick: () => {
75
- if (!disabled) {
76
- setChecked(!resolved);
77
- }
78
- },
79
- ...rest,
80
- children: [
81
- labeledByChildren ? /* @__PURE__ */ jsxRuntime.jsx("span", { id: toggleLabelId, className: "sr-only", children }) : null,
82
- /* @__PURE__ */ jsxRuntime.jsx(
83
- "span",
84
- {
85
- className: chunkZS5756ZC_js.cn(
86
- chunkTIPNRH26_js.toggleThumbVariants({ size, thumbColor }),
87
- "absolute top-1/2 -translate-y-1/2 transition-[transform] duration-200 ease-out"
88
- ),
89
- style: { transform: `translateX(${resolved ? thumbShiftPx : 0}px)` }
90
- }
91
- )
92
- ]
93
- }
94
- );
95
- }
96
- ToggleBase.displayName = "Toggle";
97
8
  function Toggle(props) {
98
- return /* @__PURE__ */ jsxRuntime.jsx(ToggleBase, { ...props });
9
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkEN4VLNBF_js.ToggleBase, { ...props });
99
10
  }
100
11
  Toggle.displayName = "Toggle";
101
12
 
102
13
  Object.defineProperty(exports, "toggleThumbVariants", {
103
14
  enumerable: true,
104
- get: function () { return chunkTIPNRH26_js.toggleThumbVariants; }
15
+ get: function () { return chunkEN4VLNBF_js.toggleThumbVariants; }
105
16
  });
106
17
  Object.defineProperty(exports, "toggleTrackVariants", {
107
18
  enumerable: true,
108
- get: function () { return chunkTIPNRH26_js.toggleTrackVariants; }
19
+ get: function () { return chunkEN4VLNBF_js.toggleTrackVariants; }
109
20
  });
110
21
  exports.Toggle = Toggle;
111
22
  //# sourceMappingURL=toggle.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ui/toggle/toggle-base.tsx","../../src/ui/toggle/toggle.tsx"],"names":["useId","useState","useCallback","jsxs","cn","toggleTrackVariants","jsx","toggleThumbVariants"],"mappings":"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","file":"toggle.js","sourcesContent":["\"use client\";\n\nimport { useCallback, useId, useState, type ReactNode } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { ToggleProps } from \"./types\";\nimport { toggleThumbVariants, toggleTrackVariants } from \"./variants\";\n\nfunction hasToggleLabelChildren(node: ReactNode): boolean {\n if (node === undefined || node === null) {\n return false;\n }\n if (typeof node === \"boolean\") {\n return false;\n }\n if (typeof node === \"string\") {\n return node.trim().length > 0;\n }\n if (typeof node === \"number\") {\n return true;\n }\n if (Array.isArray(node)) {\n return node.some(hasToggleLabelChildren);\n }\n return true;\n}\n\nexport function ToggleBase(props: ToggleProps) {\n const {\n className,\n size,\n appearance,\n checked,\n defaultChecked = false,\n onCheckedChange,\n disabled,\n ref,\n \"aria-label\": ariaLabelProp,\n children,\n thumbColor,\n ...rest\n } = props;\n const toggleLabelId = useId();\n const isControlled = checked !== undefined;\n const [uncontrolled, setUncontrolled] = useState(defaultChecked);\n const resolved = isControlled ? Boolean(checked) : uncontrolled;\n\n const setChecked = useCallback(\n (next: boolean) => {\n if (!isControlled) {\n setUncontrolled(next);\n }\n onCheckedChange?.(next);\n },\n [isControlled, onCheckedChange],\n );\n\n const thumbShiftPx = size === \"sm\" ? 14 : size === \"lg\" ? 24 : 19;\n const labeledByChildren = hasToggleLabelChildren(children);\n const labeling = labeledByChildren\n ? {\n \"aria-labelledby\": toggleLabelId,\n }\n : {\n \"aria-label\": ariaLabelProp ?? \"Toggle\",\n };\n\n return (\n <button\n ref={ref}\n type=\"button\"\n role=\"switch\"\n data-slot=\"toggle\"\n aria-checked={resolved}\n data-state={resolved ? \"checked\" : \"unchecked\"}\n disabled={disabled}\n className={cn(toggleTrackVariants({ size, appearance }), className)}\n {...labeling}\n onClick={() => {\n if (!disabled) {\n setChecked(!resolved);\n }\n }}\n {...rest}\n >\n {labeledByChildren ? (\n <span id={toggleLabelId} className=\"sr-only\">\n {children}\n </span>\n ) : null}\n <span\n className={cn(\n toggleThumbVariants({ size, thumbColor }),\n \"absolute top-1/2 -translate-y-1/2 transition-[transform] duration-200 ease-out\",\n )}\n style={{ transform: `translateX(${resolved ? thumbShiftPx : 0}px)` }}\n />\n </button>\n );\n}\n\nToggleBase.displayName = \"Toggle\";\n","// toggle.tsx — default static entry (no framer-motion)\nimport { ToggleBase } from \"./toggle-base\";\nimport type { ToggleProps } from \"./types\";\n\nexport function Toggle(props: ToggleProps) {\n return <ToggleBase {...props} />;\n}\n\nToggle.displayName = \"Toggle\";\n"]}
1
+ {"version":3,"sources":["../../src/ui/toggle/toggle.tsx"],"names":["jsx","ToggleBase"],"mappings":";;;;;;AAIO,SAAS,OAAO,KAAA,EAAoB;AACzC,EAAA,uBAAOA,cAAA,CAACC,2BAAA,EAAA,EAAY,GAAG,KAAA,EAAO,CAAA;AAChC;AAEA,MAAA,CAAO,WAAA,GAAc,QAAA","file":"toggle.js","sourcesContent":["// toggle.tsx — default static entry (no framer-motion)\nimport { ToggleBase } from \"./toggle-base\";\nimport type { ToggleProps } from \"./types\";\n\nexport function Toggle(props: ToggleProps) {\n return <ToggleBase {...props} />;\n}\n\nToggle.displayName = \"Toggle\";\n"]}
@@ -1,98 +1,9 @@
1
1
  "use client";
2
- import { toggleThumbVariants, toggleTrackVariants } from '../chunk-OHST7AHC.mjs';
3
- export { toggleThumbVariants, toggleTrackVariants } from '../chunk-OHST7AHC.mjs';
4
- import { cn } from '../chunk-4D54YOL6.mjs';
5
- import { useId, useState, useCallback } from 'react';
6
- import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { ToggleBase } from '../chunk-PMWRJ2KS.mjs';
3
+ export { toggleThumbVariants, toggleTrackVariants } from '../chunk-PMWRJ2KS.mjs';
4
+ import '../chunk-4D54YOL6.mjs';
5
+ import { jsx } from 'react/jsx-runtime';
7
6
 
8
- function hasToggleLabelChildren(node) {
9
- if (node === void 0 || node === null) {
10
- return false;
11
- }
12
- if (typeof node === "boolean") {
13
- return false;
14
- }
15
- if (typeof node === "string") {
16
- return node.trim().length > 0;
17
- }
18
- if (typeof node === "number") {
19
- return true;
20
- }
21
- if (Array.isArray(node)) {
22
- return node.some(hasToggleLabelChildren);
23
- }
24
- return true;
25
- }
26
- function ToggleBase(props) {
27
- const {
28
- className,
29
- size,
30
- appearance,
31
- checked,
32
- defaultChecked = false,
33
- onCheckedChange,
34
- disabled,
35
- ref,
36
- "aria-label": ariaLabelProp,
37
- children,
38
- thumbColor,
39
- ...rest
40
- } = props;
41
- const toggleLabelId = useId();
42
- const isControlled = checked !== void 0;
43
- const [uncontrolled, setUncontrolled] = useState(defaultChecked);
44
- const resolved = isControlled ? Boolean(checked) : uncontrolled;
45
- const setChecked = useCallback(
46
- (next) => {
47
- if (!isControlled) {
48
- setUncontrolled(next);
49
- }
50
- onCheckedChange?.(next);
51
- },
52
- [isControlled, onCheckedChange]
53
- );
54
- const thumbShiftPx = size === "sm" ? 14 : size === "lg" ? 24 : 19;
55
- const labeledByChildren = hasToggleLabelChildren(children);
56
- const labeling = labeledByChildren ? {
57
- "aria-labelledby": toggleLabelId
58
- } : {
59
- "aria-label": ariaLabelProp ?? "Toggle"
60
- };
61
- return /* @__PURE__ */ jsxs(
62
- "button",
63
- {
64
- ref,
65
- type: "button",
66
- role: "switch",
67
- "data-slot": "toggle",
68
- "aria-checked": resolved,
69
- "data-state": resolved ? "checked" : "unchecked",
70
- disabled,
71
- className: cn(toggleTrackVariants({ size, appearance }), className),
72
- ...labeling,
73
- onClick: () => {
74
- if (!disabled) {
75
- setChecked(!resolved);
76
- }
77
- },
78
- ...rest,
79
- children: [
80
- labeledByChildren ? /* @__PURE__ */ jsx("span", { id: toggleLabelId, className: "sr-only", children }) : null,
81
- /* @__PURE__ */ jsx(
82
- "span",
83
- {
84
- className: cn(
85
- toggleThumbVariants({ size, thumbColor }),
86
- "absolute top-1/2 -translate-y-1/2 transition-[transform] duration-200 ease-out"
87
- ),
88
- style: { transform: `translateX(${resolved ? thumbShiftPx : 0}px)` }
89
- }
90
- )
91
- ]
92
- }
93
- );
94
- }
95
- ToggleBase.displayName = "Toggle";
96
7
  function Toggle(props) {
97
8
  return /* @__PURE__ */ jsx(ToggleBase, { ...props });
98
9
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ui/toggle/toggle-base.tsx","../../src/ui/toggle/toggle.tsx"],"names":["jsx"],"mappings":"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","file":"toggle.mjs","sourcesContent":["\"use client\";\n\nimport { useCallback, useId, useState, type ReactNode } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { ToggleProps } from \"./types\";\nimport { toggleThumbVariants, toggleTrackVariants } from \"./variants\";\n\nfunction hasToggleLabelChildren(node: ReactNode): boolean {\n if (node === undefined || node === null) {\n return false;\n }\n if (typeof node === \"boolean\") {\n return false;\n }\n if (typeof node === \"string\") {\n return node.trim().length > 0;\n }\n if (typeof node === \"number\") {\n return true;\n }\n if (Array.isArray(node)) {\n return node.some(hasToggleLabelChildren);\n }\n return true;\n}\n\nexport function ToggleBase(props: ToggleProps) {\n const {\n className,\n size,\n appearance,\n checked,\n defaultChecked = false,\n onCheckedChange,\n disabled,\n ref,\n \"aria-label\": ariaLabelProp,\n children,\n thumbColor,\n ...rest\n } = props;\n const toggleLabelId = useId();\n const isControlled = checked !== undefined;\n const [uncontrolled, setUncontrolled] = useState(defaultChecked);\n const resolved = isControlled ? Boolean(checked) : uncontrolled;\n\n const setChecked = useCallback(\n (next: boolean) => {\n if (!isControlled) {\n setUncontrolled(next);\n }\n onCheckedChange?.(next);\n },\n [isControlled, onCheckedChange],\n );\n\n const thumbShiftPx = size === \"sm\" ? 14 : size === \"lg\" ? 24 : 19;\n const labeledByChildren = hasToggleLabelChildren(children);\n const labeling = labeledByChildren\n ? {\n \"aria-labelledby\": toggleLabelId,\n }\n : {\n \"aria-label\": ariaLabelProp ?? \"Toggle\",\n };\n\n return (\n <button\n ref={ref}\n type=\"button\"\n role=\"switch\"\n data-slot=\"toggle\"\n aria-checked={resolved}\n data-state={resolved ? \"checked\" : \"unchecked\"}\n disabled={disabled}\n className={cn(toggleTrackVariants({ size, appearance }), className)}\n {...labeling}\n onClick={() => {\n if (!disabled) {\n setChecked(!resolved);\n }\n }}\n {...rest}\n >\n {labeledByChildren ? (\n <span id={toggleLabelId} className=\"sr-only\">\n {children}\n </span>\n ) : null}\n <span\n className={cn(\n toggleThumbVariants({ size, thumbColor }),\n \"absolute top-1/2 -translate-y-1/2 transition-[transform] duration-200 ease-out\",\n )}\n style={{ transform: `translateX(${resolved ? thumbShiftPx : 0}px)` }}\n />\n </button>\n );\n}\n\nToggleBase.displayName = \"Toggle\";\n","// toggle.tsx — default static entry (no framer-motion)\nimport { ToggleBase } from \"./toggle-base\";\nimport type { ToggleProps } from \"./types\";\n\nexport function Toggle(props: ToggleProps) {\n return <ToggleBase {...props} />;\n}\n\nToggle.displayName = \"Toggle\";\n"]}
1
+ {"version":3,"sources":["../../src/ui/toggle/toggle.tsx"],"names":[],"mappings":";;;;;AAIO,SAAS,OAAO,KAAA,EAAoB;AACzC,EAAA,uBAAO,GAAA,CAAC,UAAA,EAAA,EAAY,GAAG,KAAA,EAAO,CAAA;AAChC;AAEA,MAAA,CAAO,WAAA,GAAc,QAAA","file":"toggle.mjs","sourcesContent":["// toggle.tsx — default static entry (no framer-motion)\nimport { ToggleBase } from \"./toggle-base\";\nimport type { ToggleProps } from \"./types\";\n\nexport function Toggle(props: ToggleProps) {\n return <ToggleBase {...props} />;\n}\n\nToggle.displayName = \"Toggle\";\n"]}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkMM3P52WS_js = require('../../chunk-MM3P52WS.js');
4
+ var chunkCL55KGDF_js = require('../../chunk-CL55KGDF.js');
5
5
  var chunkZS5756ZC_js = require('../../chunk-ZS5756ZC.js');
6
6
  var framerMotion = require('framer-motion');
7
7
  var jsxRuntime = require('react/jsx-runtime');
@@ -28,7 +28,7 @@ var TooltipContentAnimated = ({
28
28
  width,
29
29
  animation = "none"
30
30
  }) => {
31
- const { open, position } = chunkMM3P52WS_js.useTooltip();
31
+ const { open, position } = chunkCL55KGDF_js.useTooltip();
32
32
  if (!open) return null;
33
33
  const positionStyles = {
34
34
  top: "bottom-full mb-2",
@@ -44,7 +44,7 @@ var TooltipContentAnimated = ({
44
44
  role: "tooltip",
45
45
  ...motionProps,
46
46
  className: chunkZS5756ZC_js.cn(
47
- chunkMM3P52WS_js.tooltipVariants({ variant, size, width }),
47
+ chunkCL55KGDF_js.tooltipVariants({ variant, size, width }),
48
48
  positionStyles[position],
49
49
  className
50
50
  ),
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { useTooltip, tooltipVariants } from '../../chunk-M6FS7X54.mjs';
2
+ import { useTooltip, tooltipVariants } from '../../chunk-ITVMSCOJ.mjs';
3
3
  import { cn } from '../../chunk-4D54YOL6.mjs';
4
4
  import { motion } from 'framer-motion';
5
5
  import { jsx } from 'react/jsx-runtime';
@@ -1,6 +1,6 @@
1
1
  export declare const tooltipVariants: (props?: ({
2
- variant?: "default" | "outline" | "glass" | "sky" | "emerald" | "rose" | "indigo" | "green" | "orange" | "pink" | "purple" | "teal" | "yellow" | "ghost" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | null | undefined;
3
- size?: "sm" | "md" | "lg" | null | undefined;
4
- width?: "sm" | "md" | "lg" | "xl" | "2xl" | "xs" | "fit" | null | undefined;
2
+ variant?: "default" | "outline" | "glass" | "sky" | "emerald" | "rose" | "indigo" | "green" | "orange" | "pink" | "purple" | "teal" | "yellow" | "gradient-blue" | "gradient-green" | "gradient-red" | "gradient-yellow" | "gradient-purple" | "gradient-teal" | "gradient-indigo" | "gradient-pink" | "gradient-orange" | "ghost" | null | undefined;
3
+ size?: "md" | "sm" | "lg" | null | undefined;
4
+ width?: "md" | "sm" | "lg" | "xl" | "2xl" | "xs" | "fit" | null | undefined;
5
5
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
6
6
  //# sourceMappingURL=variants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/tooltip/variants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe;;;;8EAyD3B,CAAC"}
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/tooltip/variants.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,eAAe;;;;8EAW1B,CAAC"}
@@ -1,34 +1,34 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkMM3P52WS_js = require('../chunk-MM3P52WS.js');
4
+ var chunkCL55KGDF_js = require('../chunk-CL55KGDF.js');
5
5
  require('../chunk-ZS5756ZC.js');
6
6
 
7
7
 
8
8
 
9
9
  Object.defineProperty(exports, "Tooltip", {
10
10
  enumerable: true,
11
- get: function () { return chunkMM3P52WS_js.Tooltip; }
11
+ get: function () { return chunkCL55KGDF_js.Tooltip; }
12
12
  });
13
13
  Object.defineProperty(exports, "TooltipContent", {
14
14
  enumerable: true,
15
- get: function () { return chunkMM3P52WS_js.TooltipContent; }
15
+ get: function () { return chunkCL55KGDF_js.TooltipContent; }
16
16
  });
17
17
  Object.defineProperty(exports, "TooltipContext", {
18
18
  enumerable: true,
19
- get: function () { return chunkMM3P52WS_js.TooltipContext; }
19
+ get: function () { return chunkCL55KGDF_js.TooltipContext; }
20
20
  });
21
21
  Object.defineProperty(exports, "TooltipTrigger", {
22
22
  enumerable: true,
23
- get: function () { return chunkMM3P52WS_js.TooltipTrigger; }
23
+ get: function () { return chunkCL55KGDF_js.TooltipTrigger; }
24
24
  });
25
25
  Object.defineProperty(exports, "tooltipVariants", {
26
26
  enumerable: true,
27
- get: function () { return chunkMM3P52WS_js.tooltipVariants; }
27
+ get: function () { return chunkCL55KGDF_js.tooltipVariants; }
28
28
  });
29
29
  Object.defineProperty(exports, "useTooltip", {
30
30
  enumerable: true,
31
- get: function () { return chunkMM3P52WS_js.useTooltip; }
31
+ get: function () { return chunkCL55KGDF_js.useTooltip; }
32
32
  });
33
33
  //# sourceMappingURL=tooltip.js.map
34
34
  //# sourceMappingURL=tooltip.js.map
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- export { Tooltip, TooltipContent, TooltipContext, TooltipTrigger, tooltipVariants, useTooltip } from '../chunk-M6FS7X54.mjs';
2
+ export { Tooltip, TooltipContent, TooltipContext, TooltipTrigger, tooltipVariants, useTooltip } from '../chunk-ITVMSCOJ.mjs';
3
3
  import '../chunk-4D54YOL6.mjs';
4
4
  //# sourceMappingURL=tooltip.mjs.map
5
5
  //# sourceMappingURL=tooltip.mjs.map
@@ -1,6 +1,5 @@
1
- /** Semantic text colors aligned with slate/cyan/violet accents used across the kit (dark-first). */
2
1
  export declare const typographyToneVariants: (props?: ({
3
- tone?: "default" | "muted" | "gradient-cyan-violet" | "gradient-cyan-blue" | "error" | "secondary" | "destructive" | "success" | "warning" | "info" | "primary" | "accent" | "gradient-pink-violet" | "gradient-cyan-green" | "gradient-cyan-orange" | "gradient-cyan-red" | "gradient-cyan-purple" | "gradient-cyan-pink" | null | undefined;
2
+ tone?: "default" | "muted" | "gradient-cyan-violet" | "gradient-cyan-blue" | "secondary" | "destructive" | "error" | "success" | "warning" | "info" | "primary" | "accent" | "gradient-pink-violet" | "gradient-cyan-green" | "gradient-cyan-orange" | "gradient-cyan-red" | "gradient-cyan-purple" | "gradient-cyan-pink" | null | undefined;
4
3
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
4
  export declare const headingLevelVariants: (props?: ({
6
5
  level?: 1 | 2 | 4 | 6 | 5 | 3 | null | undefined;
@@ -8,7 +7,6 @@ export declare const headingLevelVariants: (props?: ({
8
7
  export declare const textSizeVariants: (props?: ({
9
8
  size?: "base" | "sm" | "lg" | null | undefined;
10
9
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
11
- /** Marker style for unordered lists; ignored when `ordered` is true (decimal numbering). */
12
10
  export declare const unorderedListMarkerVariants: (props?: ({
13
11
  marker?: "none" | "circle" | "disc" | null | undefined;
14
12
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/typography/variants.ts"],"names":[],"mappings":"AAEA,oGAAoG;AACpG,eAAO,MAAM,sBAAsB;;8EAqCjC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;8EAW/B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;8EAW3B,CAAC;AAEH,4FAA4F;AAC5F,eAAO,MAAM,2BAA2B;;8EAWtC,CAAC;AAEH,eAAO,MAAM,mBAAmB,oFAAqC,CAAC"}
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/typography/variants.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,sBAAsB;;8EAOjC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;8EAI/B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;8EAO3B,CAAC;AAEH,eAAO,MAAM,2BAA2B;;8EAOtC,CAAC;AAEH,eAAO,MAAM,mBAAmB,oFAA0B,CAAC"}
@@ -5,70 +5,80 @@ var chunkZS5756ZC_js = require('../chunk-ZS5756ZC.js');
5
5
  var classVarianceAuthority = require('class-variance-authority');
6
6
  var jsxRuntime = require('react/jsx-runtime');
7
7
 
8
+ // src/design-system/typography.ts
9
+ var zuiTypographyTones = {
10
+ default: "text-[color:var(--zui-typography-default-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-typography-default-fg-dark,oklch(98.4%_0.003_247.858))] border-[color:var(--zui-typography-default-border,#00000026)] dark:border-[color:var(--zui-typography-default-border-dark,#ffffff26)]",
11
+ muted: "text-[color:var(--zui-typography-muted-fg,oklch(55.4%_0.046_257.417))] dark:text-[color:var(--zui-typography-muted-fg-dark,oklch(70.4%_0.04_256.788))] border-[color:var(--zui-typography-muted-border,#00000026)] dark:border-[color:var(--zui-typography-muted-border-dark,#ffffff26)]",
12
+ primary: "text-[color:var(--zui-typography-primary-fg,oklch(52%_0.105_223.128))] dark:text-[color:var(--zui-typography-primary-fg-dark,oklch(86.5%_0.127_207.078))] border-[color:var(--zui-typography-primary-border,oklch(86.5%_0.127_207.078_/_0.4))]",
13
+ secondary: "text-[color:var(--zui-typography-secondary-fg,oklch(44.6%_0.043_257.281))] dark:text-[color:var(--zui-typography-secondary-fg-dark,oklch(86.9%_0.022_252.894))] border-[color:var(--zui-typography-secondary-border,#00000026)] dark:border-[color:var(--zui-typography-secondary-border-dark,#ffffff26)]",
14
+ accent: "text-[color:var(--zui-typography-accent-fg,oklch(49.1%_0.27_292.581))] dark:text-[color:var(--zui-typography-accent-fg-dark,oklch(81.1%_0.111_293.571))] border-[color:var(--zui-typography-accent-border,oklch(81.1%_0.111_293.571_/_0.4))]",
15
+ destructive: "text-[color:var(--zui-typography-destructive-fg,oklch(58.6%_0.253_17.585))] dark:text-[color:var(--zui-typography-destructive-fg-dark,oklch(71.2%_0.194_13.428))] border-[color:var(--zui-typography-destructive-border,oklch(81%_0.117_11.638_/_0.4))]",
16
+ info: "text-[color:var(--zui-typography-info-fg,oklch(50%_0.134_242.749))] dark:text-[color:var(--zui-typography-info-fg-dark,oklch(82.8%_0.111_230.318))] border-[color:var(--zui-typography-info-border,oklch(82.8%_0.111_230.318_/_0.4))]",
17
+ success: "text-[color:var(--zui-typography-success-fg,oklch(50.8%_0.118_165.612))] dark:text-[color:var(--zui-typography-success-fg-dark,oklch(84.5%_0.143_164.978))] border-[color:var(--zui-typography-success-border,oklch(84.5%_0.143_164.978_/_0.4))]",
18
+ warning: "text-[color:var(--zui-typography-warning-fg,oklch(55.5%_0.163_48.998))] dark:text-[color:var(--zui-typography-warning-fg-dark,oklch(87.9%_0.169_91.605))] border-[color:var(--zui-typography-warning-border,oklch(87.9%_0.169_91.605_/_0.4))]",
19
+ error: "text-[color:var(--zui-typography-error-fg,oklch(50.5%_0.213_27.518))] dark:text-[color:var(--zui-typography-error-fg-dark,oklch(80.8%_0.114_19.571))] border-[color:var(--zui-typography-error-border,oklch(80.8%_0.114_19.571_/_0.4))]",
20
+ "gradient-pink-violet": "bg-linear-to-r from-[var(--zui-typography-gradient-pink-violet-from,oklch(59.2%_0.249_0.584))] dark:from-[var(--zui-typography-gradient-pink-violet-from-dark,oklch(71.8%_0.202_349.761))] to-[var(--zui-typography-gradient-pink-violet-to,oklch(54.1%_0.281_293.009))] dark:to-[var(--zui-typography-gradient-pink-violet-to-dark,oklch(70.2%_0.183_293.541))] bg-clip-text text-[color:var(--zui-typography-gradient-pink-violet-fg,transparent)] border-[color:var(--zui-typography-gradient-pink-violet-border,oklch(81.1%_0.111_293.571_/_0.4))]",
21
+ "gradient-cyan-violet": "bg-linear-to-r from-[var(--zui-typography-gradient-cyan-violet-from,oklch(60.9%_0.126_221.723))] dark:from-[var(--zui-typography-gradient-cyan-violet-from-dark,oklch(78.9%_0.154_211.53))] to-[var(--zui-typography-gradient-cyan-violet-to,oklch(54.1%_0.281_293.009))] dark:to-[var(--zui-typography-gradient-cyan-violet-to-dark,oklch(70.2%_0.183_293.541))] bg-clip-text text-[color:var(--zui-typography-gradient-cyan-violet-fg,transparent)] border-[color:var(--zui-typography-gradient-cyan-violet-border,oklch(81.1%_0.111_293.571_/_0.4))]",
22
+ "gradient-cyan-blue": "bg-linear-to-r from-[var(--zui-typography-gradient-cyan-blue-from,oklch(60.9%_0.126_221.723))] dark:from-[var(--zui-typography-gradient-cyan-blue-from-dark,oklch(78.9%_0.154_211.53))] to-[var(--zui-typography-gradient-cyan-blue-to,oklch(54.6%_0.245_262.881))] dark:to-[var(--zui-typography-gradient-cyan-blue-to-dark,oklch(70.7%_0.165_254.624))] bg-clip-text text-[color:var(--zui-typography-gradient-cyan-blue-fg,transparent)] border-[color:var(--zui-typography-gradient-cyan-blue-border,oklch(80.9%_0.105_251.813_/_0.4))]",
23
+ "gradient-cyan-green": "bg-linear-to-r from-[var(--zui-typography-gradient-cyan-green-from,oklch(60.9%_0.126_221.723))] dark:from-[var(--zui-typography-gradient-cyan-green-from-dark,oklch(78.9%_0.154_211.53))] to-[var(--zui-typography-gradient-cyan-green-to,oklch(62.7%_0.194_149.214))] dark:to-[var(--zui-typography-gradient-cyan-green-to-dark,oklch(79.2%_0.209_151.711))] bg-clip-text text-[color:var(--zui-typography-gradient-cyan-green-fg,transparent)] border-[color:var(--zui-typography-gradient-cyan-green-border,oklch(87.1%_0.15_154.449_/_0.4))]",
24
+ "gradient-cyan-orange": "bg-linear-to-r from-[var(--zui-typography-gradient-cyan-orange-from,oklch(60.9%_0.126_221.723))] dark:from-[var(--zui-typography-gradient-cyan-orange-from-dark,oklch(78.9%_0.154_211.53))] to-[var(--zui-typography-gradient-cyan-orange-to,oklch(64.6%_0.222_41.116))] dark:to-[var(--zui-typography-gradient-cyan-orange-to-dark,oklch(75%_0.183_55.934))] bg-clip-text text-[color:var(--zui-typography-gradient-cyan-orange-fg,transparent)] border-[color:var(--zui-typography-gradient-cyan-orange-border,oklch(83.7%_0.128_66.29_/_0.4))]",
25
+ "gradient-cyan-red": "bg-linear-to-r from-[var(--zui-typography-gradient-cyan-red-from,oklch(60.9%_0.126_221.723))] dark:from-[var(--zui-typography-gradient-cyan-red-from-dark,oklch(78.9%_0.154_211.53))] to-[var(--zui-typography-gradient-cyan-red-to,oklch(57.7%_0.245_27.325))] dark:to-[var(--zui-typography-gradient-cyan-red-to-dark,oklch(70.4%_0.191_22.216))] bg-clip-text text-[color:var(--zui-typography-gradient-cyan-red-fg,transparent)] border-[color:var(--zui-typography-gradient-cyan-red-border,oklch(80.8%_0.114_19.571_/_0.4))]",
26
+ "gradient-cyan-purple": "bg-linear-to-r from-[var(--zui-typography-gradient-cyan-purple-from,oklch(60.9%_0.126_221.723))] dark:from-[var(--zui-typography-gradient-cyan-purple-from-dark,oklch(78.9%_0.154_211.53))] to-[var(--zui-typography-gradient-cyan-purple-to,oklch(55.8%_0.288_302.321))] dark:to-[var(--zui-typography-gradient-cyan-purple-to-dark,oklch(71.4%_0.203_305.504))] bg-clip-text text-[color:var(--zui-typography-gradient-cyan-purple-fg,transparent)] border-[color:var(--zui-typography-gradient-cyan-purple-border,oklch(82.7%_0.119_306.383_/_0.4))]",
27
+ "gradient-cyan-pink": "bg-linear-to-r from-[var(--zui-typography-gradient-cyan-pink-from,oklch(60.9%_0.126_221.723))] dark:from-[var(--zui-typography-gradient-cyan-pink-from-dark,oklch(78.9%_0.154_211.53))] to-[var(--zui-typography-gradient-cyan-pink-to,oklch(59.2%_0.249_0.584))] dark:to-[var(--zui-typography-gradient-cyan-pink-to-dark,oklch(71.8%_0.202_349.761))] bg-clip-text text-[color:var(--zui-typography-gradient-cyan-pink-fg,transparent)] border-[color:var(--zui-typography-gradient-cyan-pink-border,oklch(82.3%_0.12_346.018_/_0.4))]"
28
+ };
29
+ var zuiHeadingBase = "scroll-m-20";
30
+ var zuiHeadingLevels = {
31
+ 1: "text-4xl font-bold tracking-tight md:text-5xl",
32
+ 2: "text-3xl font-semibold tracking-tight",
33
+ 3: "text-2xl font-semibold tracking-tight",
34
+ 4: "text-xl font-semibold tracking-tight",
35
+ 5: "text-lg font-medium",
36
+ 6: "text-base font-medium"
37
+ };
38
+ var zuiTextSizes = {
39
+ sm: "text-sm leading-relaxed",
40
+ base: "text-base leading-relaxed",
41
+ lg: "text-lg leading-relaxed"
42
+ };
43
+ var zuiUnorderedListBase = "space-y-2 pl-5";
44
+ var zuiUnorderedMarkers = {
45
+ disc: "list-disc",
46
+ circle: "[list-style-type:circle]",
47
+ none: "list-none pl-0"
48
+ };
49
+ var zuiOrderedListBase = "list-decimal space-y-2 pl-5";
50
+
51
+ // src/ui/typography/variants.ts
8
52
  var typographyToneVariants = classVarianceAuthority.cva("", {
9
53
  variants: {
10
- tone: {
11
- default: "text-slate-900 dark:text-slate-50 border-black/15 dark:border-white/15",
12
- muted: "text-slate-500 dark:text-slate-400 border-black/15 dark:border-white/15",
13
- primary: "text-cyan-700 dark:text-cyan-300 border-cyan-300/40",
14
- secondary: "text-slate-600 dark:text-slate-300 border-black/15 dark:border-white/15",
15
- accent: "text-violet-700 dark:text-violet-300 border-violet-300/40",
16
- destructive: "text-rose-600 dark:text-rose-400 border-rose-300/40",
17
- info: "text-sky-700 dark:text-sky-300 border-sky-300/40",
18
- success: "text-emerald-700 dark:text-emerald-300 border-emerald-300/40",
19
- warning: "text-amber-700 dark:text-amber-300 border-amber-300/40",
20
- error: "text-red-700 dark:text-red-300 border-red-300/40",
21
- "gradient-pink-violet": "bg-linear-to-r from-pink-600 dark:from-pink-400 to-violet-600 dark:to-violet-400 bg-clip-text text-transparent border-violet-300/40",
22
- "gradient-cyan-violet": "bg-linear-to-r from-cyan-600 dark:from-cyan-400 to-violet-600 dark:to-violet-400 bg-clip-text text-transparent border-violet-300/40",
23
- "gradient-cyan-blue": "bg-linear-to-r from-cyan-600 dark:from-cyan-400 to-blue-600 dark:to-blue-400 bg-clip-text text-transparent border-blue-300/40",
24
- "gradient-cyan-green": "bg-linear-to-r from-cyan-600 dark:from-cyan-400 to-green-600 dark:to-green-400 bg-clip-text text-transparent border-green-300/40",
25
- "gradient-cyan-orange": "bg-linear-to-r from-cyan-600 dark:from-cyan-400 to-orange-600 dark:to-orange-400 bg-clip-text text-transparent border-orange-300/40",
26
- "gradient-cyan-red": "bg-linear-to-r from-cyan-600 dark:from-cyan-400 to-red-600 dark:to-red-400 bg-clip-text text-transparent border-red-300/40",
27
- "gradient-cyan-purple": "bg-linear-to-r from-cyan-600 dark:from-cyan-400 to-purple-600 dark:to-purple-400 bg-clip-text text-transparent border-purple-300/40",
28
- "gradient-cyan-pink": "bg-linear-to-r from-cyan-600 dark:from-cyan-400 to-pink-600 dark:to-pink-400 bg-clip-text text-transparent border-pink-300/40"
29
- }
54
+ tone: zuiTypographyTones
30
55
  },
31
56
  defaultVariants: {
32
57
  tone: "default"
33
58
  }
34
59
  });
35
- var headingLevelVariants = classVarianceAuthority.cva("scroll-m-20", {
60
+ var headingLevelVariants = classVarianceAuthority.cva(zuiHeadingBase, {
36
61
  variants: {
37
- level: {
38
- 1: "text-4xl font-bold tracking-tight md:text-5xl",
39
- 2: "text-3xl font-semibold tracking-tight",
40
- 3: "text-2xl font-semibold tracking-tight",
41
- 4: "text-xl font-semibold tracking-tight",
42
- 5: "text-lg font-medium",
43
- 6: "text-base font-medium"
44
- }
62
+ level: zuiHeadingLevels
45
63
  }
46
64
  });
47
65
  var textSizeVariants = classVarianceAuthority.cva("", {
48
66
  variants: {
49
- size: {
50
- sm: "text-sm leading-relaxed",
51
- base: "text-base leading-relaxed",
52
- lg: "text-lg leading-relaxed"
53
- }
67
+ size: zuiTextSizes
54
68
  },
55
69
  defaultVariants: {
56
70
  size: "base"
57
71
  }
58
72
  });
59
- var unorderedListMarkerVariants = classVarianceAuthority.cva("space-y-2 pl-5", {
73
+ var unorderedListMarkerVariants = classVarianceAuthority.cva(zuiUnorderedListBase, {
60
74
  variants: {
61
- marker: {
62
- disc: "list-disc",
63
- circle: "[list-style-type:circle]",
64
- none: "list-none pl-0"
65
- }
75
+ marker: zuiUnorderedMarkers
66
76
  },
67
77
  defaultVariants: {
68
78
  marker: "disc"
69
79
  }
70
80
  });
71
- var orderedListVariants = classVarianceAuthority.cva("list-decimal space-y-2 pl-5");
81
+ var orderedListVariants = classVarianceAuthority.cva(zuiOrderedListBase);
72
82
  var HEADING_TAGS = {
73
83
  1: "h1",
74
84
  2: "h2",