@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,80 +1,29 @@
1
1
  import { cva } from "class-variance-authority";
2
2
 
3
- export const toastViewportVariants = cva(
4
- "fixed z-[60] flex max-h-screen flex-col gap-2 p-4",
5
- {
6
- variants: {
7
- position: {
8
- "top-left": "left-0 top-0 items-start",
9
- "top-center": "left-1/2 top-0 -translate-x-1/2 items-center",
10
- "top-right": "right-0 top-0 items-end",
11
- "bottom-left": "bottom-0 left-0 items-start",
12
- "bottom-center": "bottom-0 left-1/2 -translate-x-1/2 items-center",
13
- "bottom-right": "bottom-0 right-0 items-end",
14
- },
15
- },
16
- defaultVariants: {
17
- position: "bottom-right",
18
- },
3
+ import {
4
+ zuiToastRootAppearances,
5
+ zuiToastRootBase,
6
+ zuiToastRootSizes,
7
+ zuiToastViewportBase,
8
+ zuiToastViewportPositions,
9
+ } from "../../design-system/toast";
10
+
11
+ export const toastViewportVariants = cva(zuiToastViewportBase, {
12
+ variants: {
13
+ position: zuiToastViewportPositions,
14
+ },
15
+ defaultVariants: {
16
+ position: "bottom-right",
19
17
  },
20
- );
18
+ });
21
19
 
22
- export const toastRootVariants = cva(
23
- "pointer-events-auto w-[min(100vw-2rem,380px)] rounded-xl border bg-slate-50 p-4 text-slate-900 dark:text-slate-50 shadow-[0_8px_24px_rgba(15,23,42,0.12)] dark:shadow-[0_18px_48px_rgba(15,23,42,0.45)]",
24
- {
25
- variants: {
26
- appearance: {
27
- default: "bg-slate-950 text-slate-50",
28
- success: "border-emerald-500/40 bg-emerald-950 text-emerald-50",
29
- warning: "border-amber-500/40 bg-amber-950 text-amber-50",
30
- error: "border-rose-500/50 bg-rose-950 text-rose-50",
31
- info: "border-sky-500/40 bg-sky-950 text-sky-50",
32
- ghost: "border-transparent bg-transparent text-slate-900",
33
- purple:
34
- "border-purple-800 dark:border-purple-600 bg-purple-950 backdrop-blur-xl text-purple-50",
35
- pink: "border-pink-800 dark:border-pink-600 bg-pink-950 backdrop-blur-xl text-pink-50",
36
- orange:
37
- "border-orange-800 dark:border-orange-600 bg-orange-950 backdrop-blur-xl text-orange-50",
38
- yellow:
39
- "border-yellow-800 dark:border-yellow-600 bg-yellow-950 backdrop-blur-xl text-yellow-50",
40
- teal: "border-teal-800 dark:border-teal-600 bg-teal-950 backdrop-blur-xl text-teal-50",
41
- indigo:
42
- "border-indigo-800 dark:border-indigo-600 bg-indigo-950 backdrop-blur-xl text-indigo-50",
43
- emerald:
44
- "border-emerald-800 dark:border-emerald-600 bg-emerald-950 backdrop-blur-xl text-emerald-50",
45
- gray: "border-gray-800 dark:border-gray-600 bg-gray-950 backdrop-blur-xl text-gray-50",
46
- amber:
47
- "border-amber-800 dark:border-amber-600 bg-amber-950 backdrop-blur-xl text-amber-50",
48
- violet:
49
- "border-violet-800 dark:border-violet-600 bg-violet-950 backdrop-blur-xl text-violet-50",
50
- "gradient-blue":
51
- "border-blue-800 dark:border-blue-600 bg-linear-to-r from-blue-50 dark:from-blue-950/70 to-purple-50 dark:to-purple-950/70 backdrop-blur-xl",
52
- "gradient-green":
53
- "border-green-800 dark:border-green-600 bg-linear-to-r from-green-50 dark:from-green-950/70 to-lime-50 dark:to-lime-950/70 backdrop-blur-xl",
54
- "gradient-red":
55
- "border-red-800 dark:border-red-600 bg-linear-to-r from-red-50 dark:from-red-950/70 to-pink-50 dark:to-pink-950/70 backdrop-blur-xl",
56
- "gradient-yellow":
57
- "border-yellow-800 dark:border-yellow-600 bg-linear-to-r from-yellow-50 dark:from-yellow-950/70 to-orange-50 dark:to-orange-950/70 backdrop-blur-xl",
58
- "gradient-purple":
59
- "border-purple-800 dark:border-purple-600 bg-linear-to-r from-purple-50 dark:from-purple-950/70 to-pink-50 dark:to-pink-950/70 backdrop-blur-xl",
60
- "gradient-teal":
61
- "border-teal-800 dark:border-teal-600 bg-linear-to-r from-teal-50 dark:from-teal-950/70 to-cyan-50 dark:to-cyan-950/70 backdrop-blur-xl",
62
- "gradient-indigo":
63
- "border-indigo-800 dark:border-indigo-600 bg-linear-to-r from-indigo-50 dark:from-indigo-950/70 to-purple-50 dark:to-purple-950/70 backdrop-blur-xl",
64
- "gradient-pink":
65
- "border-pink-800 dark:border-pink-600 bg-linear-to-r from-pink-50 dark:from-pink-950/70 to-rose-50 dark:to-rose-950/70 backdrop-blur-xl",
66
- "gradient-orange":
67
- "border-orange-800 dark:border-orange-600 bg-linear-to-r from-orange-50 dark:from-orange-950/70 to-red-50 dark:to-red-950/70 backdrop-blur-xl",
68
- },
69
- size: {
70
- sm: "p-3 text-xs",
71
- md: "p-4 text-sm",
72
- lg: "p-5 text-base",
73
- },
74
- },
75
- defaultVariants: {
76
- appearance: "default",
77
- size: "md",
78
- },
20
+ export const toastRootVariants = cva(zuiToastRootBase, {
21
+ variants: {
22
+ appearance: zuiToastRootAppearances,
23
+ size: zuiToastRootSizes,
24
+ },
25
+ defaultVariants: {
26
+ appearance: "default",
27
+ size: "md",
79
28
  },
80
- );
29
+ });
@@ -1,13 +1,14 @@
1
1
  "use client";
2
2
 
3
3
  import { motion } from "framer-motion";
4
- import { useCallback, useState } from "react";
4
+ import { useCallback, useId, useState } from "react";
5
5
 
6
6
  import { cn } from "../../../lib/utils";
7
7
 
8
8
  import { toggleThumbAnimationPresets } from "./animations";
9
9
  import type { ToggleAnimatedProps } from "./types";
10
10
  import { toggleThumbVariants, toggleTrackVariants } from "../variants";
11
+ import { hasToggleLabelChildren } from "../toggle-base";
11
12
 
12
13
  export function ToggleAnimated(props: ToggleAnimatedProps) {
13
14
  const {
@@ -25,6 +26,7 @@ export function ToggleAnimated(props: ToggleAnimatedProps) {
25
26
  children,
26
27
  ...rest
27
28
  } = props;
29
+ const toggleLabelId = useId();
28
30
  const isControlled = checked !== undefined;
29
31
  const [uncontrolled, setUncontrolled] = useState(defaultChecked);
30
32
  const resolved = isControlled ? Boolean(checked) : uncontrolled;
@@ -40,7 +42,15 @@ export function ToggleAnimated(props: ToggleAnimatedProps) {
40
42
  [isControlled, onCheckedChange],
41
43
  );
42
44
 
43
- const thumbShiftPx = size === "sm" ? 14 : size === "lg" ? 24 : 18;
45
+ const thumbShiftPx = size === "sm" ? 16 : size === "lg" ? 24 : 20;
46
+ const labeledByChildren = hasToggleLabelChildren(children);
47
+ const labeling = labeledByChildren
48
+ ? {
49
+ "aria-labelledby": toggleLabelId,
50
+ }
51
+ : {
52
+ "aria-label": ariaLabel ?? "Toggle",
53
+ };
44
54
 
45
55
  return (
46
56
  <button
@@ -49,9 +59,9 @@ export function ToggleAnimated(props: ToggleAnimatedProps) {
49
59
  role="switch"
50
60
  data-slot="toggle"
51
61
  aria-checked={resolved}
52
- aria-label={ariaLabel}
53
62
  data-state={resolved ? "checked" : "unchecked"}
54
63
  disabled={disabled}
64
+ {...labeling}
55
65
  className={cn(toggleTrackVariants({ size, appearance }), className)}
56
66
  onClick={() => {
57
67
  if (!disabled) {
@@ -60,7 +70,7 @@ export function ToggleAnimated(props: ToggleAnimatedProps) {
60
70
  }}
61
71
  {...rest}
62
72
  >
63
- <span className="sr-only">{children}</span>
73
+ <span className="sr-only" id={labeledByChildren ? toggleLabelId : undefined}>{children}</span>
64
74
  <motion.span
65
75
  className={cn(
66
76
  toggleThumbVariants({ size, thumbColor }),
@@ -7,7 +7,7 @@ import { cn } from "../../lib/utils";
7
7
  import type { ToggleProps } from "./types";
8
8
  import { toggleThumbVariants, toggleTrackVariants } from "./variants";
9
9
 
10
- function hasToggleLabelChildren(node: ReactNode): boolean {
10
+ export function hasToggleLabelChildren(node: ReactNode): boolean {
11
11
  if (node === undefined || node === null) {
12
12
  return false;
13
13
  }
@@ -56,7 +56,7 @@ export function ToggleBase(props: ToggleProps) {
56
56
  [isControlled, onCheckedChange],
57
57
  );
58
58
 
59
- const thumbShiftPx = size === "sm" ? 14 : size === "lg" ? 24 : 19;
59
+ const thumbShiftPx = size === "sm" ? 16 : size === "lg" ? 24 : 20;
60
60
  const labeledByChildren = hasToggleLabelChildren(children);
61
61
  const labeling = labeledByChildren
62
62
  ? {
@@ -84,11 +84,7 @@ export function ToggleBase(props: ToggleProps) {
84
84
  }}
85
85
  {...rest}
86
86
  >
87
- {labeledByChildren ? (
88
- <span id={toggleLabelId} className="sr-only">
89
- {children}
90
- </span>
91
- ) : null}
87
+ <span className="sr-only" id={labeledByChildren ? toggleLabelId : undefined}>{children}</span>
92
88
  <span
93
89
  className={cn(
94
90
  toggleThumbVariants({ size, thumbColor }),
@@ -1,116 +1,32 @@
1
1
  import { cva } from "class-variance-authority";
2
2
 
3
- export const toggleTrackVariants = cva(
4
- "relative inline-flex shrink-0 cursor-pointer rounded-full border border-black/10 dark:border-white/10 transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-600 dark:focus-visible:ring-slate-300 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-50 dark:focus-visible:ring-offset-slate-950 data-[state=checked]:border-cyan-500/40 disabled:cursor-not-allowed disabled:opacity-50",
5
- {
6
- variants: {
7
- size: {
8
- sm: "h-5 w-9",
9
- md: "h-6 w-11",
10
- lg: "h-7 w-[3.25rem]",
11
- },
12
- appearance: {
13
- default:
14
- "data-[state=checked]:bg-cyan-400/70 dark:data-[state=checked]:bg-cyan-600/90",
15
- success:
16
- "data-[state=checked]:border-emerald-500/70 data-[state=checked]:bg-emerald-400/80 dark:data-[state=checked]:bg-emerald-600/80",
17
- destructive:
18
- "data-[state=checked]:border-rose-500/40 data-[state=checked]:bg-rose-400/80 dark:data-[state=checked]:bg-rose-600/80",
19
- neutral:
20
- "data-[state=checked]:border-slate-500/40 dark:data-[state=checked]:border-slate-400/40 data-[state=checked]:bg-slate-400/90 dark:data-[state=checked]:bg-slate-600/90",
21
- indigo:
22
- "data-[state=checked]:border-indigo-500/40 data-[state=checked]:bg-indigo-400/80 dark:data-[state=checked]:bg-indigo-600/80",
23
- purple:
24
- "data-[state=checked]:border-purple-500/40 data-[state=checked]:bg-purple-400/80 dark:data-[state=checked]:bg-purple-600/80",
25
- pink: "data-[state=checked]:border-pink-500/40 data-[state=checked]:bg-pink-400/80 dark:data-[state=checked]:bg-pink-600/80",
26
- orange:
27
- "data-[state=checked]:border-orange-500/40 data-[state=checked]:bg-orange-400/80 dark:data-[state=checked]:bg-orange-600/80",
28
- yellow:
29
- "data-[state=checked]:border-yellow-500/40 data-[state=checked]:bg-yellow-400/80 dark:data-[state=checked]:bg-yellow-600/80",
30
- green:
31
- "data-[state=checked]:border-green-500/40 data-[state=checked]:bg-green-400/80 dark:data-[state=checked]:bg-green-600/80",
32
- teal: "data-[state=checked]:border-teal-500/40 data-[state=checked]:bg-teal-400/80 dark:data-[state=checked]:bg-teal-600/80",
33
- cyan: "data-[state=checked]:border-cyan-500/40 data-[state=checked]:bg-cyan-400/80 dark:data-[state=checked]:bg-cyan-600/80",
34
- lime: "data-[state=checked]:border-lime-500/40 data-[state=checked]:bg-lime-400/80 dark:data-[state=checked]:bg-lime-600/80",
35
- emerald:
36
- "data-[state=checked]:border-emerald-500/40 data-[state=checked]:bg-emerald-400/80 dark:data-[state=checked]:bg-emerald-600/80",
37
- rose: "data-[state=checked]:border-rose-500/40 data-[state=checked]:bg-rose-400/80 dark:data-[state=checked]:bg-rose-600/80",
38
- slate:
39
- "data-[state=checked]:border-slate-500/40 dark:data-[state=checked]:border-slate-400/40 data-[state=checked]:bg-slate-400/90 dark:data-[state=checked]:bg-slate-600/90",
40
- zinc: "data-[state=checked]:border-zinc-400/40 data-[state=checked]:bg-zinc-600/90",
41
- gray: "data-[state=checked]:border-gray-400/40 data-[state=checked]:bg-gray-400/80 dark:data-[state=checked]:bg-gray-600/90",
42
- stone:
43
- "bg-stone-300 data-[state=checked]:border-stone-400/40 data-[state=checked]:bg-stone-600/90",
44
- "gradient-blue":
45
- "bg-blue-300 data-[state=checked]:bg-linear-to-r from-blue-800 dark:from-blue-600 to-purple-800 dark:to-purple-600",
46
- "gradient-green":
47
- "bg-green-300 data-[state=checked]:bg-linear-to-r from-green-800 dark:from-green-600 to-lime-800 dark:to-lime-600",
48
- "gradient-red":
49
- "bg-red-300 data-[state=checked]:bg-linear-to-r from-red-800 dark:from-red-600 to-pink-800 dark:to-pink-600",
50
- "gradient-yellow":
51
- "bg-yellow-300 data-[state=checked]:bg-linear-to-r from-yellow-800 dark:from-yellow-600 to-orange-800 dark:to-orange-600",
52
- "gradient-purple":
53
- "bg-purple-300 data-[state=checked]:bg-linear-to-r from-purple-800 dark:from-purple-600 to-pink-800 dark:to-pink-600",
54
- "gradient-teal":
55
- "bg-teal-300 data-[state=checked]:bg-linear-to-r from-teal-800 dark:from-teal-600 to-cyan-800 dark:to-cyan-600",
56
- "gradient-indigo":
57
- "bg-indigo-300 data-[state=checked]:bg-linear-to-r from-indigo-800 dark:from-indigo-600 to-purple-800 dark:to-purple-600",
58
- "gradient-pink":
59
- "bg-pink-300 data-[state=checked]:bg-linear-to-r from-pink-800 dark:from-pink-600 to-rose-800 dark:to-rose-600",
60
- "gradient-orange":
61
- "bg-orange-300 data-[state=checked]:bg-linear-to-r from-orange-800 dark:from-orange-600 to-red-800 dark:to-red-600",
62
- },
63
- },
64
- defaultVariants: {
65
- size: "md",
66
- appearance: "default",
67
- },
3
+ import {
4
+ zuiToggleThumbBase,
5
+ zuiToggleThumbColors,
6
+ zuiToggleThumbSizes,
7
+ zuiToggleTrackAppearances,
8
+ zuiToggleTrackBase,
9
+ zuiToggleTrackSizes,
10
+ } from "../../design-system/toggle";
11
+
12
+ export const toggleTrackVariants = cva(zuiToggleTrackBase, {
13
+ variants: {
14
+ size: zuiToggleTrackSizes,
15
+ appearance: zuiToggleTrackAppearances,
16
+ },
17
+ defaultVariants: {
18
+ size: "md",
19
+ appearance: "default",
68
20
  },
69
- );
21
+ });
70
22
 
71
- export const toggleThumbVariants = cva(
72
- "pointer-events-none block rounded-full border border-slate-900/30 dark:border-white/10 shadow-[0_1px_2px_rgba(15,23,42,0.12)] dark:shadow-[0_1px_2px_rgba(15,23,42,0.35)] ring-0",
73
- {
74
- variants: {
75
- size: {
76
- sm: "size-4",
77
- md: "size-5",
78
- lg: "size-6",
79
- },
80
- thumbColor: {
81
- default: "bg-white",
82
- success: "bg-emerald-500",
83
- destructive: "bg-rose-500",
84
- neutral: "bg-slate-500",
85
- indigo: "bg-indigo-500",
86
- purple: "bg-purple-500",
87
- pink: "bg-pink-500",
88
- orange: "bg-orange-500",
89
- yellow: "bg-yellow-500",
90
- green: "bg-green-500",
91
- teal: "bg-teal-500",
92
- cyan: "bg-cyan-500",
93
- lime: "bg-lime-500",
94
- emerald: "bg-emerald-500",
95
- rose: "bg-rose-500",
96
- slate: "bg-slate-500",
97
- zinc: "bg-zinc-500",
98
- gray: "bg-gray-500",
99
- stone: "bg-stone-500",
100
- "gradient-blue": "bg-blue-500",
101
- "gradient-green": "bg-green-500",
102
- "gradient-red": "bg-red-500",
103
- "gradient-yellow": "bg-yellow-500",
104
- "gradient-purple": "bg-purple-500",
105
- "gradient-teal": "bg-teal-500",
106
- "gradient-indigo": "bg-indigo-500",
107
- "gradient-pink": "bg-pink-500",
108
- "gradient-orange": "bg-orange-500",
109
- },
110
- },
111
- defaultVariants: {
112
- size: "md",
113
- thumbColor: "default",
114
- },
23
+ export const toggleThumbVariants = cva(zuiToggleThumbBase, {
24
+ variants: {
25
+ size: zuiToggleThumbSizes,
26
+ thumbColor: zuiToggleThumbColors,
27
+ },
28
+ defaultVariants: {
29
+ size: "md",
30
+ thumbColor: "default",
115
31
  },
116
- );
32
+ });
@@ -1,60 +1,21 @@
1
1
  import { cva } from "class-variance-authority";
2
2
 
3
- export const tooltipVariants = cva(
4
- "absolute z-50 rounded-md shadow-md transition-all duration-200 pointer-events-none",
5
- {
6
- variants: {
7
- variant: {
8
- default: "bg-white dark:bg-black text-slate-900 dark:text-white",
9
- outline: "border bg-black dark:bg-white text-white dark:text-black",
10
- ghost: "bg-gray-800 text-white/90",
11
- glass:
12
- "border border-black/15 dark:border-white/15 bg-black/10 dark:bg-white/10 text-slate-900 dark:text-white backdrop-blur-md",
13
- emerald: "bg-emerald-800 text-white",
14
- indigo: "bg-indigo-800 text-white",
15
- purple: "bg-purple-800 text-white",
16
- pink: "bg-pink-800 text-white",
17
- rose: "bg-rose-800 text-white",
18
- sky: "bg-sky-700 text-white",
19
- teal: "bg-teal-800 text-white",
20
- yellow: "bg-yellow-800 text-white",
21
- orange: "bg-orange-800 text-white",
22
- green: "bg-green-800 text-white",
23
- "gradient-blue":
24
- "bg-linear-to-r from-blue-800 to-purple-800 text-white",
25
- "gradient-green":
26
- "bg-linear-to-r from-green-800 to-lime-800 text-white",
27
- "gradient-red": "bg-linear-to-r from-red-800 to-pink-800 text-white",
28
- "gradient-yellow":
29
- "bg-linear-to-r from-yellow-800 to-orange-800 text-white",
30
- "gradient-purple":
31
- "bg-linear-to-r from-purple-800 to-pink-800 text-white",
32
- "gradient-teal": "bg-linear-to-r from-teal-800 to-cyan-800 text-white",
33
- "gradient-indigo":
34
- "bg-linear-to-r from-indigo-800 to-purple-800 text-white",
35
- "gradient-pink": "bg-linear-to-r from-pink-800 to-rose-800 text-white",
36
- "gradient-orange":
37
- "bg-linear-to-r from-orange-800 to-red-800 text-white",
38
- },
39
- size: {
40
- sm: "text-xs px-2 py-1",
41
- md: "text-sm px-3 py-1.5",
42
- lg: "text-base px-4 py-2",
43
- },
44
- width: {
45
- fit: "min-w-75 md:min-w-fit",
46
- xs: "min-w-75 md:min-w-xs",
47
- sm: "min-w-75 md:min-w-sm",
48
- md: "min-w-75 md:min-w-md",
49
- lg: "min-w-75 md:min-w-lg",
50
- xl: "min-w-75 md:min-w-xl",
51
- "2xl": "min-w-75 md:min-w-2xl",
52
- },
53
- },
54
- defaultVariants: {
55
- variant: "default",
56
- size: "md",
57
- width: "xs",
58
- },
3
+ import {
4
+ zuiTooltipBase,
5
+ zuiTooltipSizes,
6
+ zuiTooltipVariants,
7
+ zuiTooltipWidths,
8
+ } from "../../design-system/tooltip";
9
+
10
+ export const tooltipVariants = cva(zuiTooltipBase, {
11
+ variants: {
12
+ variant: zuiTooltipVariants,
13
+ size: zuiTooltipSizes,
14
+ width: zuiTooltipWidths,
15
+ },
16
+ defaultVariants: {
17
+ variant: "default",
18
+ size: "md",
19
+ width: "xs",
59
20
  },
60
- );
21
+ });
@@ -27,7 +27,7 @@ describe("Typography primitives", () => {
27
27
  </Text>,
28
28
  );
29
29
  const node = container.querySelector('[data-testid="muted-text"]');
30
- expect(node?.className).toMatch(/text-slate-400/);
30
+ expect(node?.className).toMatch(/--zui-typography-muted-fg/);
31
31
  });
32
32
 
33
33
  it("should render unordered List with list marker utilities", () => {
@@ -1,83 +1,46 @@
1
1
  import { cva } from "class-variance-authority";
2
2
 
3
- /** Semantic text colors aligned with slate/cyan/violet accents used across the kit (dark-first). */
3
+ import {
4
+ zuiHeadingBase,
5
+ zuiHeadingLevels,
6
+ zuiOrderedListBase,
7
+ zuiTextSizes,
8
+ zuiTypographyTones,
9
+ zuiUnorderedListBase,
10
+ zuiUnorderedMarkers,
11
+ } from "../../design-system/typography";
12
+
4
13
  export const typographyToneVariants = cva("", {
5
14
  variants: {
6
- tone: {
7
- default:
8
- "text-slate-900 dark:text-slate-50 border-black/15 dark:border-white/15",
9
- muted:
10
- "text-slate-500 dark:text-slate-400 border-black/15 dark:border-white/15",
11
- primary: "text-cyan-700 dark:text-cyan-300 border-cyan-300/40",
12
- secondary:
13
- "text-slate-600 dark:text-slate-300 border-black/15 dark:border-white/15",
14
- accent: "text-violet-700 dark:text-violet-300 border-violet-300/40",
15
- destructive: "text-rose-600 dark:text-rose-400 border-rose-300/40",
16
- info: "text-sky-700 dark:text-sky-300 border-sky-300/40",
17
- success: "text-emerald-700 dark:text-emerald-300 border-emerald-300/40",
18
- warning: "text-amber-700 dark:text-amber-300 border-amber-300/40",
19
- error: "text-red-700 dark:text-red-300 border-red-300/40",
20
- "gradient-pink-violet":
21
- "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":
23
- "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",
24
- "gradient-cyan-blue":
25
- "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",
26
- "gradient-cyan-green":
27
- "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",
28
- "gradient-cyan-orange":
29
- "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",
30
- "gradient-cyan-red":
31
- "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",
32
- "gradient-cyan-purple":
33
- "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",
34
- "gradient-cyan-pink":
35
- "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",
36
- },
15
+ tone: zuiTypographyTones,
37
16
  },
38
17
  defaultVariants: {
39
18
  tone: "default",
40
19
  },
41
20
  });
42
21
 
43
- export const headingLevelVariants = cva("scroll-m-20", {
22
+ export const headingLevelVariants = cva(zuiHeadingBase, {
44
23
  variants: {
45
- level: {
46
- 1: "text-4xl font-bold tracking-tight md:text-5xl",
47
- 2: "text-3xl font-semibold tracking-tight",
48
- 3: "text-2xl font-semibold tracking-tight",
49
- 4: "text-xl font-semibold tracking-tight",
50
- 5: "text-lg font-medium",
51
- 6: "text-base font-medium",
52
- },
24
+ level: zuiHeadingLevels,
53
25
  },
54
26
  });
55
27
 
56
28
  export const textSizeVariants = cva("", {
57
29
  variants: {
58
- size: {
59
- sm: "text-sm leading-relaxed",
60
- base: "text-base leading-relaxed",
61
- lg: "text-lg leading-relaxed",
62
- },
30
+ size: zuiTextSizes,
63
31
  },
64
32
  defaultVariants: {
65
33
  size: "base",
66
34
  },
67
35
  });
68
36
 
69
- /** Marker style for unordered lists; ignored when `ordered` is true (decimal numbering). */
70
- export const unorderedListMarkerVariants = cva("space-y-2 pl-5", {
37
+ export const unorderedListMarkerVariants = cva(zuiUnorderedListBase, {
71
38
  variants: {
72
- marker: {
73
- disc: "list-disc",
74
- circle: "[list-style-type:circle]",
75
- none: "list-none pl-0",
76
- },
39
+ marker: zuiUnorderedMarkers,
77
40
  },
78
41
  defaultVariants: {
79
42
  marker: "disc",
80
43
  },
81
44
  });
82
45
 
83
- export const orderedListVariants = cva("list-decimal space-y-2 pl-5");
46
+ export const orderedListVariants = cva(zuiOrderedListBase);