@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
@@ -0,0 +1,132 @@
1
+ 'use strict';
2
+
3
+ var chunkZS5756ZC_js = require('./chunk-ZS5756ZC.js');
4
+ var classVarianceAuthority = require('class-variance-authority');
5
+ var hi2 = require('react-icons/hi2');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+
8
+ // src/design-system/badge.ts
9
+ var zuiButtonLikeSolidAppearances = {
10
+ default: "bg-[var(--zui-badge-default-bg,oklch(20.8%_0.042_265.755))] dark:bg-[var(--zui-badge-default-bg-dark,oklch(98.4%_0.003_247.858))] text-[color:var(--zui-badge-default-fg,oklch(98.4%_0.003_247.858))] dark:text-[color:var(--zui-badge-default-fg-dark,oklch(12.9%_0.042_264.695))] shadow-[var(--zui-badge-default-shadow,0_1px_2px_rgba(15,23,42,0.08))] dark:shadow-[var(--zui-badge-default-shadow-dark,0_1px_2px_rgba(15,23,42,0.12))]",
11
+ secondary: "bg-[var(--zui-badge-secondary-bg,oklch(92.9%_0.013_255.508))] dark:bg-[var(--zui-badge-secondary-bg-dark,oklch(27.9%_0.041_260.031))] text-[color:var(--zui-badge-secondary-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-badge-secondary-fg-dark,oklch(98.4%_0.003_247.858))]",
12
+ destructive: "bg-[var(--zui-badge-destructive-bg,oklch(64.5%_0.246_16.439))] dark:bg-[var(--zui-badge-destructive-bg-dark,oklch(51.4%_0.222_16.935))] text-[color:var(--zui-badge-default-fg,oklch(98.4%_0.003_247.858))] dark:text-[color:var(--zui-badge-destructive-fg-dark,#ffffff)]",
13
+ outline: "border border-[color:var(--zui-badge-outline-border,#0000001a)] dark:border-[color:var(--zui-badge-outline-border-dark,#ffffff1a)] bg-[var(--zui-badge-outline-bg,#0000000d)] dark:bg-[var(--zui-badge-outline-bg-dark,#ffffff0d)] text-[color:var(--zui-badge-outline-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-badge-outline-fg-dark,oklch(98.4%_0.003_247.858))]",
14
+ ghost: "bg-[var(--zui-badge-ghost-bg,transparent)] text-[color:var(--zui-badge-ghost-fg,oklch(37.2%_0.044_257.287))] dark:text-[color:var(--zui-badge-ghost-fg-dark,oklch(92.9%_0.013_255.508))]",
15
+ glass: "border border-[color:var(--zui-badge-glass-border,#00000026)] dark:border-[color:var(--zui-badge-glass-border-dark,#ffffff26)] bg-[var(--zui-badge-glass-bg,#0000001a)] dark:bg-[var(--zui-badge-glass-bg-dark,#ffffff1a)] text-[color:var(--zui-badge-glass-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-badge-glass-fg-dark,#ffffff)] backdrop-blur-md",
16
+ emerald: "bg-[var(--zui-badge-emerald-bg,oklch(69.6%_0.17_162.48))] dark:bg-[var(--zui-badge-emerald-bg-dark,oklch(43.2%_0.095_166.913))] text-[color:var(--zui-badge-emerald-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-emerald-fg-dark,#ffffff)]",
17
+ indigo: "bg-[var(--zui-badge-indigo-bg,oklch(39.8%_0.195_277.366))] dark:bg-[var(--zui-badge-indigo-bg-dark,oklch(51.1%_0.262_276.966))] text-[color:var(--zui-badge-indigo-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-indigo-fg-dark,#ffffff)]",
18
+ purple: "bg-[var(--zui-badge-purple-bg,oklch(43.8%_0.218_303.724))] dark:bg-[var(--zui-badge-purple-bg-dark,oklch(55.8%_0.288_302.321))] text-[color:var(--zui-badge-purple-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-purple-fg-dark,#ffffff)]",
19
+ pink: "bg-[var(--zui-badge-pink-bg,oklch(45.9%_0.187_3.815))] dark:bg-[var(--zui-badge-pink-bg-dark,oklch(59.2%_0.249_0.584))] text-[color:var(--zui-badge-pink-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-pink-fg-dark,#ffffff)]",
20
+ rose: "bg-[var(--zui-badge-rose-bg,oklch(64.5%_0.246_16.439))] dark:bg-[var(--zui-badge-rose-bg-dark,oklch(51.4%_0.222_16.935))] text-[color:var(--zui-badge-rose-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-rose-fg-dark,#ffffff)]",
21
+ sky: "bg-[var(--zui-badge-sky-bg,oklch(68.5%_0.169_237.323))] dark:bg-[var(--zui-badge-sky-bg-dark,oklch(50%_0.134_242.749))] text-[color:var(--zui-badge-sky-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-sky-fg-dark,#ffffff)]",
22
+ teal: "bg-[var(--zui-badge-teal-bg,oklch(70.4%_0.14_182.503))] dark:bg-[var(--zui-badge-teal-bg-dark,oklch(51.1%_0.096_186.391))] text-[color:var(--zui-badge-teal-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-teal-fg-dark,#ffffff)]",
23
+ yellow: "bg-[var(--zui-badge-yellow-bg,oklch(79.5%_0.184_86.047))] dark:bg-[var(--zui-badge-yellow-bg-dark,oklch(47.6%_0.114_61.907))] text-[color:var(--zui-badge-yellow-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-yellow-fg-dark,#ffffff)]",
24
+ orange: "bg-[var(--zui-badge-orange-bg,oklch(70.5%_0.213_47.604))] dark:bg-[var(--zui-badge-orange-bg-dark,oklch(47%_0.157_37.304))] text-[color:var(--zui-badge-orange-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-orange-fg-dark,#ffffff)]",
25
+ "gradient-blue": "bg-linear-to-r from-[var(--zui-badge-gradient-blue-from,oklch(42.4%_0.199_265.638))] dark:from-[var(--zui-badge-gradient-blue-from-dark,oklch(54.6%_0.245_262.881))] to-[var(--zui-badge-gradient-blue-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-badge-gradient-blue-to-dark,oklch(55.8%_0.288_302.321))] text-[color:var(--zui-badge-gradient-blue-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-blue-fg-dark,#ffffff)]",
26
+ "gradient-green": "bg-linear-to-r from-[var(--zui-badge-gradient-green-from,oklch(44.8%_0.119_151.328))] dark:from-[var(--zui-badge-gradient-green-from-dark,oklch(62.7%_0.194_149.214))] to-[var(--zui-badge-gradient-green-to,oklch(45.3%_0.124_130.933))] dark:to-[var(--zui-badge-gradient-green-to-dark,oklch(64.8%_0.2_131.684))] text-[color:var(--zui-badge-gradient-green-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-green-fg-dark,#ffffff)]",
27
+ "gradient-red": "bg-linear-to-r from-[var(--zui-badge-gradient-red-from,oklch(44.4%_0.177_26.899))] dark:from-[var(--zui-badge-gradient-red-from-dark,oklch(57.7%_0.245_27.325))] to-[var(--zui-badge-gradient-red-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-badge-gradient-red-to-dark,oklch(59.2%_0.249_0.584))] text-[color:var(--zui-badge-gradient-red-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-red-fg-dark,#ffffff)]",
28
+ "gradient-yellow": "bg-linear-to-r from-[var(--zui-badge-gradient-yellow-from,oklch(47.6%_0.114_61.907))] dark:from-[var(--zui-badge-gradient-yellow-from-dark,oklch(68.1%_0.162_75.834))] to-[var(--zui-badge-gradient-yellow-to,oklch(47%_0.157_37.304))] dark:to-[var(--zui-badge-gradient-yellow-to-dark,oklch(64.6%_0.222_41.116))] text-[color:var(--zui-badge-gradient-yellow-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-yellow-fg-dark,#ffffff)]",
29
+ "gradient-purple": "bg-linear-to-r from-[var(--zui-badge-gradient-purple-from,oklch(43.8%_0.218_303.724))] dark:from-[var(--zui-badge-gradient-purple-from-dark,oklch(55.8%_0.288_302.321))] to-[var(--zui-badge-gradient-purple-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-badge-gradient-purple-to-dark,oklch(59.2%_0.249_0.584))] text-[color:var(--zui-badge-gradient-purple-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-purple-fg-dark,#ffffff)]",
30
+ "gradient-teal": "bg-linear-to-r from-[var(--zui-badge-gradient-teal-from,oklch(43.7%_0.078_188.216))] dark:from-[var(--zui-badge-gradient-teal-from-dark,oklch(60%_0.118_184.704))] to-[var(--zui-badge-gradient-teal-to,oklch(45%_0.085_224.283))] dark:to-[var(--zui-badge-gradient-teal-to-dark,oklch(60.9%_0.126_221.723))] text-[color:var(--zui-badge-gradient-teal-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-teal-fg-dark,#ffffff)]",
31
+ "gradient-indigo": "bg-linear-to-r from-[var(--zui-badge-gradient-indigo-from,oklch(39.8%_0.195_277.366))] dark:from-[var(--zui-badge-gradient-indigo-from-dark,oklch(51.1%_0.262_276.966))] to-[var(--zui-badge-gradient-indigo-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-badge-gradient-indigo-to-dark,oklch(55.8%_0.288_302.321))] text-[color:var(--zui-badge-gradient-indigo-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-indigo-fg-dark,#ffffff)]",
32
+ "gradient-pink": "bg-linear-to-r from-[var(--zui-badge-gradient-pink-from,oklch(45.9%_0.187_3.815))] dark:from-[var(--zui-badge-gradient-pink-from-dark,oklch(59.2%_0.249_0.584))] to-[var(--zui-badge-gradient-pink-to,oklch(45.5%_0.188_13.697))] dark:to-[var(--zui-badge-gradient-pink-to-dark,oklch(58.6%_0.253_17.585))] text-[color:var(--zui-badge-gradient-pink-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-pink-fg-dark,#ffffff)]",
33
+ "gradient-orange": "bg-linear-to-r from-[var(--zui-badge-gradient-orange-from,oklch(47%_0.157_37.304))] dark:from-[var(--zui-badge-gradient-orange-from-dark,oklch(64.6%_0.222_41.116))] to-[var(--zui-badge-gradient-orange-to,oklch(44.4%_0.177_26.899))] dark:to-[var(--zui-badge-gradient-orange-to-dark,oklch(57.7%_0.245_27.325))] text-[color:var(--zui-badge-gradient-orange-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-orange-fg-dark,#ffffff)]"
34
+ };
35
+ var zuiBadgeBase = [
36
+ "inline-flex max-w-full items-center justify-center gap-1 font-medium",
37
+ "whitespace-nowrap ring-offset-[var(--zui-badge-ring-offset,oklch(98.4%_0.003_247.858))] dark:ring-offset-[var(--zui-badge-ring-offset-dark,oklch(12.9%_0.042_264.695))] transition-colors",
38
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--zui-badge-ring-focus,oklch(44.6%_0.043_257.281))] dark:focus-visible:ring-[var(--zui-badge-ring-focus-dark,oklch(86.9%_0.022_252.894))] focus-visible:ring-offset-2",
39
+ "select-none"
40
+ ];
41
+ var zuiBadgeAppearances = {
42
+ ...zuiButtonLikeSolidAppearances,
43
+ outline: "border border-[color:var(--zui-badge-outline-border,#00000026)] dark:border-[color:var(--zui-badge-outline-border-dark,#ffffff26)] bg-[var(--zui-badge-outline-bg,transparent)] text-[color:var(--zui-badge-outline-fg,oklch(37.2%_0.044_257.287))] dark:text-[color:var(--zui-badge-outline-fg-dark,oklch(92.9%_0.013_255.508))] shadow-none",
44
+ ghost: "bg-[var(--zui-badge-ghost-bg,transparent)] text-[color:var(--zui-badge-ghost-fg,oklch(44.6%_0.043_257.281))] dark:text-[color:var(--zui-badge-ghost-fg-dark,oklch(86.9%_0.022_252.894))] shadow-none"
45
+ };
46
+ var zuiBadgeSizes = {
47
+ sm: "h-6 min-h-6 px-2 text-[0.65rem] leading-none",
48
+ md: "h-7 min-h-7 px-2.5 text-xs leading-none",
49
+ lg: "h-8 min-h-8 px-3 text-sm leading-none"
50
+ };
51
+ var zuiBadgeShapes = {
52
+ pill: "rounded-full",
53
+ square: "rounded-md",
54
+ dot: "h-2.5 min-h-2.5 w-2.5 min-w-2.5 rounded-full p-0 px-0 text-[0]"
55
+ };
56
+ var zuiBadgeCloseButtonBase = "inline-flex shrink-0 items-center justify-center rounded-md p-0.5 text-current transition focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--zui-badge-close-button-ring-focus,#00000066)] dark:focus-visible:ring-[var(--zui-badge-close-button-ring-focus-dark,#ffffff66)]";
57
+ var zuiBadgeCloseButtonSizes = {
58
+ sm: "size-4",
59
+ md: "size-5",
60
+ lg: "size-6"
61
+ };
62
+
63
+ // src/ui/badge/variants.ts
64
+ var badgeVariants = classVarianceAuthority.cva(zuiBadgeBase, {
65
+ variants: {
66
+ appearance: zuiBadgeAppearances,
67
+ size: zuiBadgeSizes,
68
+ shape: zuiBadgeShapes
69
+ },
70
+ defaultVariants: {
71
+ appearance: "default",
72
+ size: "md",
73
+ shape: "pill"
74
+ }
75
+ });
76
+ var badgeCloseButtonVariants = classVarianceAuthority.cva(zuiBadgeCloseButtonBase, {
77
+ variants: {
78
+ size: zuiBadgeCloseButtonSizes
79
+ },
80
+ defaultVariants: { size: "md" }
81
+ });
82
+ function BadgeBase({
83
+ className,
84
+ appearance,
85
+ size,
86
+ shape,
87
+ closable = false,
88
+ liveRegion = false,
89
+ onClose,
90
+ closeLabel = "Remove",
91
+ children,
92
+ ref,
93
+ "aria-label": ariaLabel,
94
+ as: Wrapper = "span",
95
+ ...rest
96
+ }) {
97
+ const isDot = shape === "dot";
98
+ const resolvedAriaLabel = ariaLabel ?? (isDot ? "Status indicator" : void 0);
99
+ const landmarkRole = liveRegion === true || isDot ? "status" : void 0;
100
+ return /* @__PURE__ */ jsxRuntime.jsxs(
101
+ Wrapper,
102
+ {
103
+ ref,
104
+ role: landmarkRole,
105
+ "data-slot": "badge",
106
+ "aria-label": resolvedAriaLabel,
107
+ className: chunkZS5756ZC_js.cn(badgeVariants({ appearance, size, shape }), className),
108
+ ...rest,
109
+ children: [
110
+ !isDot ? children : null,
111
+ closable ? /* @__PURE__ */ jsxRuntime.jsx(
112
+ "button",
113
+ {
114
+ type: "button",
115
+ "data-slot": "badge-close",
116
+ "aria-label": closeLabel,
117
+ onClick: onClose,
118
+ className: badgeCloseButtonVariants({ size }),
119
+ children: /* @__PURE__ */ jsxRuntime.jsx(hi2.HiXMark, { className: "size-3.5", "aria-hidden": true })
120
+ }
121
+ ) : null
122
+ ]
123
+ }
124
+ );
125
+ }
126
+ BadgeBase.displayName = "Badge";
127
+
128
+ exports.BadgeBase = BadgeBase;
129
+ exports.badgeCloseButtonVariants = badgeCloseButtonVariants;
130
+ exports.badgeVariants = badgeVariants;
131
+ //# sourceMappingURL=chunk-PR4QXFJT.js.map
132
+ //# sourceMappingURL=chunk-PR4QXFJT.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/design-system/badge.ts","../src/ui/badge/variants.ts","../src/ui/badge/badge-base.tsx"],"names":["cva","jsxs","cn","jsx","HiXMark"],"mappings":"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","file":"chunk-PR4QXFJT.js","sourcesContent":["export const zuiButtonLikeSolidAppearances = {\n default:\n \"bg-[var(--zui-badge-default-bg,oklch(20.8%_0.042_265.755))] dark:bg-[var(--zui-badge-default-bg-dark,oklch(98.4%_0.003_247.858))] text-[color:var(--zui-badge-default-fg,oklch(98.4%_0.003_247.858))] dark:text-[color:var(--zui-badge-default-fg-dark,oklch(12.9%_0.042_264.695))] shadow-[var(--zui-badge-default-shadow,0_1px_2px_rgba(15,23,42,0.08))] dark:shadow-[var(--zui-badge-default-shadow-dark,0_1px_2px_rgba(15,23,42,0.12))]\",\n secondary:\n \"bg-[var(--zui-badge-secondary-bg,oklch(92.9%_0.013_255.508))] dark:bg-[var(--zui-badge-secondary-bg-dark,oklch(27.9%_0.041_260.031))] text-[color:var(--zui-badge-secondary-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-badge-secondary-fg-dark,oklch(98.4%_0.003_247.858))]\",\n destructive:\n \"bg-[var(--zui-badge-destructive-bg,oklch(64.5%_0.246_16.439))] dark:bg-[var(--zui-badge-destructive-bg-dark,oklch(51.4%_0.222_16.935))] text-[color:var(--zui-badge-default-fg,oklch(98.4%_0.003_247.858))] dark:text-[color:var(--zui-badge-destructive-fg-dark,#ffffff)]\",\n outline:\n \"border border-[color:var(--zui-badge-outline-border,#0000001a)] dark:border-[color:var(--zui-badge-outline-border-dark,#ffffff1a)] bg-[var(--zui-badge-outline-bg,#0000000d)] dark:bg-[var(--zui-badge-outline-bg-dark,#ffffff0d)] text-[color:var(--zui-badge-outline-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-badge-outline-fg-dark,oklch(98.4%_0.003_247.858))]\",\n ghost:\n \"bg-[var(--zui-badge-ghost-bg,transparent)] text-[color:var(--zui-badge-ghost-fg,oklch(37.2%_0.044_257.287))] dark:text-[color:var(--zui-badge-ghost-fg-dark,oklch(92.9%_0.013_255.508))]\",\n glass:\n \"border border-[color:var(--zui-badge-glass-border,#00000026)] dark:border-[color:var(--zui-badge-glass-border-dark,#ffffff26)] bg-[var(--zui-badge-glass-bg,#0000001a)] dark:bg-[var(--zui-badge-glass-bg-dark,#ffffff1a)] text-[color:var(--zui-badge-glass-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-badge-glass-fg-dark,#ffffff)] backdrop-blur-md\",\n emerald:\n \"bg-[var(--zui-badge-emerald-bg,oklch(69.6%_0.17_162.48))] dark:bg-[var(--zui-badge-emerald-bg-dark,oklch(43.2%_0.095_166.913))] text-[color:var(--zui-badge-emerald-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-emerald-fg-dark,#ffffff)]\",\n indigo:\n \"bg-[var(--zui-badge-indigo-bg,oklch(39.8%_0.195_277.366))] dark:bg-[var(--zui-badge-indigo-bg-dark,oklch(51.1%_0.262_276.966))] text-[color:var(--zui-badge-indigo-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-indigo-fg-dark,#ffffff)]\",\n purple:\n \"bg-[var(--zui-badge-purple-bg,oklch(43.8%_0.218_303.724))] dark:bg-[var(--zui-badge-purple-bg-dark,oklch(55.8%_0.288_302.321))] text-[color:var(--zui-badge-purple-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-purple-fg-dark,#ffffff)]\",\n pink: \"bg-[var(--zui-badge-pink-bg,oklch(45.9%_0.187_3.815))] dark:bg-[var(--zui-badge-pink-bg-dark,oklch(59.2%_0.249_0.584))] text-[color:var(--zui-badge-pink-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-pink-fg-dark,#ffffff)]\",\n rose: \"bg-[var(--zui-badge-rose-bg,oklch(64.5%_0.246_16.439))] dark:bg-[var(--zui-badge-rose-bg-dark,oklch(51.4%_0.222_16.935))] text-[color:var(--zui-badge-rose-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-rose-fg-dark,#ffffff)]\",\n sky: \"bg-[var(--zui-badge-sky-bg,oklch(68.5%_0.169_237.323))] dark:bg-[var(--zui-badge-sky-bg-dark,oklch(50%_0.134_242.749))] text-[color:var(--zui-badge-sky-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-sky-fg-dark,#ffffff)]\",\n teal: \"bg-[var(--zui-badge-teal-bg,oklch(70.4%_0.14_182.503))] dark:bg-[var(--zui-badge-teal-bg-dark,oklch(51.1%_0.096_186.391))] text-[color:var(--zui-badge-teal-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-teal-fg-dark,#ffffff)]\",\n yellow:\n \"bg-[var(--zui-badge-yellow-bg,oklch(79.5%_0.184_86.047))] dark:bg-[var(--zui-badge-yellow-bg-dark,oklch(47.6%_0.114_61.907))] text-[color:var(--zui-badge-yellow-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-yellow-fg-dark,#ffffff)]\",\n orange:\n \"bg-[var(--zui-badge-orange-bg,oklch(70.5%_0.213_47.604))] dark:bg-[var(--zui-badge-orange-bg-dark,oklch(47%_0.157_37.304))] text-[color:var(--zui-badge-orange-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-orange-fg-dark,#ffffff)]\",\n \"gradient-blue\":\n \"bg-linear-to-r from-[var(--zui-badge-gradient-blue-from,oklch(42.4%_0.199_265.638))] dark:from-[var(--zui-badge-gradient-blue-from-dark,oklch(54.6%_0.245_262.881))] to-[var(--zui-badge-gradient-blue-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-badge-gradient-blue-to-dark,oklch(55.8%_0.288_302.321))] text-[color:var(--zui-badge-gradient-blue-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-blue-fg-dark,#ffffff)]\",\n \"gradient-green\":\n \"bg-linear-to-r from-[var(--zui-badge-gradient-green-from,oklch(44.8%_0.119_151.328))] dark:from-[var(--zui-badge-gradient-green-from-dark,oklch(62.7%_0.194_149.214))] to-[var(--zui-badge-gradient-green-to,oklch(45.3%_0.124_130.933))] dark:to-[var(--zui-badge-gradient-green-to-dark,oklch(64.8%_0.2_131.684))] text-[color:var(--zui-badge-gradient-green-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-green-fg-dark,#ffffff)]\",\n \"gradient-red\":\n \"bg-linear-to-r from-[var(--zui-badge-gradient-red-from,oklch(44.4%_0.177_26.899))] dark:from-[var(--zui-badge-gradient-red-from-dark,oklch(57.7%_0.245_27.325))] to-[var(--zui-badge-gradient-red-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-badge-gradient-red-to-dark,oklch(59.2%_0.249_0.584))] text-[color:var(--zui-badge-gradient-red-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-red-fg-dark,#ffffff)]\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-[var(--zui-badge-gradient-yellow-from,oklch(47.6%_0.114_61.907))] dark:from-[var(--zui-badge-gradient-yellow-from-dark,oklch(68.1%_0.162_75.834))] to-[var(--zui-badge-gradient-yellow-to,oklch(47%_0.157_37.304))] dark:to-[var(--zui-badge-gradient-yellow-to-dark,oklch(64.6%_0.222_41.116))] text-[color:var(--zui-badge-gradient-yellow-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-yellow-fg-dark,#ffffff)]\",\n \"gradient-purple\":\n \"bg-linear-to-r from-[var(--zui-badge-gradient-purple-from,oklch(43.8%_0.218_303.724))] dark:from-[var(--zui-badge-gradient-purple-from-dark,oklch(55.8%_0.288_302.321))] to-[var(--zui-badge-gradient-purple-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-badge-gradient-purple-to-dark,oklch(59.2%_0.249_0.584))] text-[color:var(--zui-badge-gradient-purple-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-purple-fg-dark,#ffffff)]\",\n \"gradient-teal\":\n \"bg-linear-to-r from-[var(--zui-badge-gradient-teal-from,oklch(43.7%_0.078_188.216))] dark:from-[var(--zui-badge-gradient-teal-from-dark,oklch(60%_0.118_184.704))] to-[var(--zui-badge-gradient-teal-to,oklch(45%_0.085_224.283))] dark:to-[var(--zui-badge-gradient-teal-to-dark,oklch(60.9%_0.126_221.723))] text-[color:var(--zui-badge-gradient-teal-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-teal-fg-dark,#ffffff)]\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-[var(--zui-badge-gradient-indigo-from,oklch(39.8%_0.195_277.366))] dark:from-[var(--zui-badge-gradient-indigo-from-dark,oklch(51.1%_0.262_276.966))] to-[var(--zui-badge-gradient-indigo-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-badge-gradient-indigo-to-dark,oklch(55.8%_0.288_302.321))] text-[color:var(--zui-badge-gradient-indigo-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-indigo-fg-dark,#ffffff)]\",\n \"gradient-pink\":\n \"bg-linear-to-r from-[var(--zui-badge-gradient-pink-from,oklch(45.9%_0.187_3.815))] dark:from-[var(--zui-badge-gradient-pink-from-dark,oklch(59.2%_0.249_0.584))] to-[var(--zui-badge-gradient-pink-to,oklch(45.5%_0.188_13.697))] dark:to-[var(--zui-badge-gradient-pink-to-dark,oklch(58.6%_0.253_17.585))] text-[color:var(--zui-badge-gradient-pink-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-pink-fg-dark,#ffffff)]\",\n \"gradient-orange\":\n \"bg-linear-to-r from-[var(--zui-badge-gradient-orange-from,oklch(47%_0.157_37.304))] dark:from-[var(--zui-badge-gradient-orange-from-dark,oklch(64.6%_0.222_41.116))] to-[var(--zui-badge-gradient-orange-to,oklch(44.4%_0.177_26.899))] dark:to-[var(--zui-badge-gradient-orange-to-dark,oklch(57.7%_0.245_27.325))] text-[color:var(--zui-badge-gradient-orange-fg,oklch(96.8%_0.007_247.896))] dark:text-[color:var(--zui-badge-gradient-orange-fg-dark,#ffffff)]\",\n} as const;\n\nexport type ZuiButtonLikeSolidAppearance =\n keyof typeof zuiButtonLikeSolidAppearances;\n\nexport const zuiBadgeBase = [\n \"inline-flex max-w-full items-center justify-center gap-1 font-medium\",\n \"whitespace-nowrap ring-offset-[var(--zui-badge-ring-offset,oklch(98.4%_0.003_247.858))] dark:ring-offset-[var(--zui-badge-ring-offset-dark,oklch(12.9%_0.042_264.695))] transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--zui-badge-ring-focus,oklch(44.6%_0.043_257.281))] dark:focus-visible:ring-[var(--zui-badge-ring-focus-dark,oklch(86.9%_0.022_252.894))] focus-visible:ring-offset-2\",\n \"select-none\",\n] as const;\n\nexport const zuiBadgeAppearances = {\n ...zuiButtonLikeSolidAppearances,\n outline:\n \"border border-[color:var(--zui-badge-outline-border,#00000026)] dark:border-[color:var(--zui-badge-outline-border-dark,#ffffff26)] bg-[var(--zui-badge-outline-bg,transparent)] text-[color:var(--zui-badge-outline-fg,oklch(37.2%_0.044_257.287))] dark:text-[color:var(--zui-badge-outline-fg-dark,oklch(92.9%_0.013_255.508))] shadow-none\",\n ghost:\n \"bg-[var(--zui-badge-ghost-bg,transparent)] text-[color:var(--zui-badge-ghost-fg,oklch(44.6%_0.043_257.281))] dark:text-[color:var(--zui-badge-ghost-fg-dark,oklch(86.9%_0.022_252.894))] shadow-none\",\n} as const;\n\nexport const zuiBadgeSizes = {\n sm: \"h-6 min-h-6 px-2 text-[0.65rem] leading-none\",\n md: \"h-7 min-h-7 px-2.5 text-xs leading-none\",\n lg: \"h-8 min-h-8 px-3 text-sm leading-none\",\n} as const;\n\nexport const zuiBadgeShapes = {\n pill: \"rounded-full\",\n square: \"rounded-md\",\n dot: \"h-2.5 min-h-2.5 w-2.5 min-w-2.5 rounded-full p-0 px-0 text-[0]\",\n} as const;\n\nexport const zuiBadgeCloseButtonBase =\n \"inline-flex shrink-0 items-center justify-center rounded-md p-0.5 text-current transition focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--zui-badge-close-button-ring-focus,#00000066)] dark:focus-visible:ring-[var(--zui-badge-close-button-ring-focus-dark,#ffffff66)]\";\n\nexport const zuiBadgeCloseButtonSizes = {\n sm: \"size-4\",\n md: \"size-5\",\n lg: \"size-6\",\n} as const;\n","import { cva } from \"class-variance-authority\";\n\nimport {\n zuiBadgeAppearances,\n zuiBadgeBase,\n zuiBadgeCloseButtonBase,\n zuiBadgeCloseButtonSizes,\n zuiBadgeShapes,\n zuiBadgeSizes,\n zuiButtonLikeSolidAppearances,\n type ZuiButtonLikeSolidAppearance,\n} from \"../../design-system/badge\";\n\nexport const buttonLikeSolidAppearances = zuiButtonLikeSolidAppearances;\nexport type ButtonLikeSolidAppearance = ZuiButtonLikeSolidAppearance;\n\nexport const badgeVariants = cva(zuiBadgeBase, {\n variants: {\n appearance: zuiBadgeAppearances,\n size: zuiBadgeSizes,\n shape: zuiBadgeShapes,\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n shape: \"pill\",\n },\n});\n\nexport const badgeCloseButtonVariants = cva(zuiBadgeCloseButtonBase, {\n variants: {\n size: zuiBadgeCloseButtonSizes,\n },\n defaultVariants: { size: \"md\" },\n});\n","\"use client\";\n\nimport { HiXMark } from \"react-icons/hi2\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { BadgeBaseProps } from \"./types\";\nimport { badgeCloseButtonVariants, badgeVariants } from \"./variants\";\n\nexport function BadgeBase({\n className,\n appearance,\n size,\n shape,\n closable = false,\n liveRegion = false,\n onClose,\n closeLabel = \"Remove\",\n children,\n ref,\n \"aria-label\": ariaLabel,\n as: Wrapper = \"span\",\n ...rest\n}: BadgeBaseProps) {\n const isDot = shape === \"dot\";\n const resolvedAriaLabel =\n ariaLabel ?? (isDot ? \"Status indicator\" : undefined);\n const landmarkRole =\n liveRegion === true || isDot ? (\"status\" as const) : undefined;\n\n return (\n <Wrapper\n ref={ref}\n role={landmarkRole}\n data-slot=\"badge\"\n aria-label={resolvedAriaLabel}\n className={cn(badgeVariants({ appearance, size, shape }), className)}\n {...rest}\n >\n {!isDot ? children : null}\n {closable ? (\n <button\n type=\"button\"\n data-slot=\"badge-close\"\n aria-label={closeLabel}\n onClick={onClose}\n className={badgeCloseButtonVariants({ size })}\n >\n <HiXMark className=\"size-3.5\" aria-hidden />\n </button>\n ) : null}\n </Wrapper>\n );\n}\n\nBadgeBase.displayName = \"Badge\";\n"]}
@@ -0,0 +1,281 @@
1
+ 'use strict';
2
+
3
+ var chunkZS5756ZC_js = require('./chunk-ZS5756ZC.js');
4
+ var classVarianceAuthority = require('class-variance-authority');
5
+ var react = require('react');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+
8
+ // src/design-system/tabs.ts
9
+ var zuiTabsListBase = "flex flex-wrap items-center gap-1";
10
+ var zuiTabsListVariants = {
11
+ default: "bg-[var(--zui-tabs-list-default-bg,transparent)]",
12
+ underline: "border-b-2 border-[color:var(--zui-tabs-list-underline-border,transparent)]",
13
+ pills: "rounded-md"
14
+ };
15
+ var zuiTabsListSizes = {
16
+ sm: "text-sm p-1",
17
+ md: "text-base p-1.5",
18
+ lg: "text-lg p-2"
19
+ };
20
+ var zuiTabsOrientations = {
21
+ horizontal: "flex-row",
22
+ vertical: "flex-col"
23
+ };
24
+ var zuiTabsTriggerBase = "px-3 py-1.5 rounded-md transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring";
25
+ var zuiTabsTriggerAppearances = {
26
+ default: "bg-[var(--zui-tabs-trigger-default-bg,transparent)] text-[color:var(--zui-tabs-trigger-default-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-tabs-trigger-default-fg-dark,oklch(98.4%_0.003_247.858))]",
27
+ sky: "bg-[var(--zui-tabs-trigger-sky-bg,oklch(82.8%_0.111_230.318))] text-[color:var(--zui-tabs-trigger-sky-fg,oklch(39.1%_0.09_240.876))] dark:bg-[var(--zui-tabs-trigger-sky-bg-dark,oklch(39.1%_0.09_240.876))] dark:text-[color:var(--zui-tabs-trigger-sky-fg-dark,oklch(90.1%_0.058_230.902))] data-[state=active]:bg-[var(--zui-tabs-trigger-sky-bg-active,oklch(39.1%_0.09_240.876))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-sky-bg-active-dark,oklch(50%_0.134_242.749))] data-[state=active]:text-[color:var(--zui-tabs-trigger-sky-fg-active,oklch(97.7%_0.013_236.62))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-sky-fg-active-dark,oklch(95.1%_0.026_236.824))]",
28
+ rose: "bg-[var(--zui-tabs-trigger-rose-bg,oklch(81%_0.117_11.638))] text-[color:var(--zui-tabs-trigger-rose-fg,oklch(41%_0.159_10.272))] dark:bg-[var(--zui-tabs-trigger-rose-bg-dark,oklch(41%_0.159_10.272))] dark:text-[color:var(--zui-tabs-trigger-rose-fg-dark,oklch(89.2%_0.058_10.001))] data-[state=active]:bg-[var(--zui-tabs-trigger-rose-bg-active,oklch(41%_0.159_10.272))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-rose-bg-active-dark,oklch(51.4%_0.222_16.935))] data-[state=active]:text-[color:var(--zui-tabs-trigger-rose-fg-active,oklch(96.9%_0.015_12.422))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-rose-fg-active-dark,oklch(94.1%_0.03_12.58))]",
29
+ purple: "bg-[var(--zui-tabs-trigger-purple-bg,oklch(82.7%_0.119_306.383))] text-[color:var(--zui-tabs-trigger-purple-fg,oklch(38.1%_0.176_304.987))] dark:bg-[var(--zui-tabs-trigger-purple-bg-dark,oklch(38.1%_0.176_304.987))] dark:text-[color:var(--zui-tabs-trigger-purple-fg-dark,oklch(90.2%_0.063_306.703))] data-[state=active]:bg-[var(--zui-tabs-trigger-purple-bg-active,oklch(38.1%_0.176_304.987))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-purple-bg-active-dark,oklch(49.6%_0.265_301.924))] data-[state=active]:text-[color:var(--zui-tabs-trigger-purple-fg-active,oklch(97.7%_0.014_308.299))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-purple-fg-active-dark,oklch(94.6%_0.033_307.174))]",
30
+ pink: "bg-[var(--zui-tabs-trigger-pink-bg,oklch(82.3%_0.12_346.018))] text-[color:var(--zui-tabs-trigger-pink-fg,oklch(40.8%_0.153_2.432))] dark:bg-[var(--zui-tabs-trigger-pink-bg-dark,oklch(40.8%_0.153_2.432))] dark:text-[color:var(--zui-tabs-trigger-pink-fg-dark,oklch(89.9%_0.061_343.231))] data-[state=active]:bg-[var(--zui-tabs-trigger-pink-bg-active,oklch(40.8%_0.153_2.432))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-pink-bg-active-dark,oklch(52.5%_0.223_3.958))] data-[state=active]:text-[color:var(--zui-tabs-trigger-pink-fg-active,oklch(97.1%_0.014_343.198))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-pink-fg-active-dark,oklch(94.8%_0.028_342.258))]",
31
+ orange: "bg-[var(--zui-tabs-trigger-orange-bg,oklch(83.7%_0.128_66.29))] text-[color:var(--zui-tabs-trigger-orange-fg,oklch(40.8%_0.123_38.172))] dark:bg-[var(--zui-tabs-trigger-orange-bg-dark,oklch(40.8%_0.123_38.172))] dark:text-[color:var(--zui-tabs-trigger-orange-fg-dark,oklch(90.1%_0.076_70.697))] data-[state=active]:bg-[var(--zui-tabs-trigger-orange-bg-active,oklch(40.8%_0.123_38.172))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-orange-bg-active-dark,oklch(55.3%_0.195_38.402))] data-[state=active]:text-[color:var(--zui-tabs-trigger-orange-fg-active,oklch(98%_0.016_73.684))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-orange-fg-active-dark,oklch(95.4%_0.038_75.164))]",
32
+ yellow: "bg-[var(--zui-tabs-trigger-yellow-bg,oklch(90.5%_0.182_98.111))] text-[color:var(--zui-tabs-trigger-yellow-fg,oklch(42.1%_0.095_57.708))] dark:bg-[var(--zui-tabs-trigger-yellow-bg-dark,oklch(42.1%_0.095_57.708))] dark:text-[color:var(--zui-tabs-trigger-yellow-fg-dark,oklch(94.5%_0.129_101.54))] data-[state=active]:bg-[var(--zui-tabs-trigger-yellow-bg-active,oklch(42.1%_0.095_57.708))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-yellow-bg-active-dark,oklch(55.4%_0.135_66.442))] data-[state=active]:text-[color:var(--zui-tabs-trigger-yellow-fg-active,oklch(98.7%_0.026_102.212))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-yellow-fg-active-dark,oklch(97.3%_0.071_103.193))]",
33
+ teal: "bg-[var(--zui-tabs-trigger-teal-bg,oklch(85.5%_0.138_181.071))] text-[color:var(--zui-tabs-trigger-teal-fg,oklch(38.6%_0.063_188.416))] dark:bg-[var(--zui-tabs-trigger-teal-bg-dark,oklch(38.6%_0.063_188.416))] dark:text-[color:var(--zui-tabs-trigger-teal-fg-dark,oklch(91%_0.096_180.426))] data-[state=active]:bg-[var(--zui-tabs-trigger-teal-bg-active,oklch(38.6%_0.063_188.416))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-teal-bg-active-dark,oklch(51.1%_0.096_186.391))] data-[state=active]:text-[color:var(--zui-tabs-trigger-teal-fg-active,oklch(98.4%_0.014_180.72))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-teal-fg-active-dark,oklch(95.3%_0.051_180.801))]",
34
+ indigo: "bg-[var(--zui-tabs-trigger-indigo-bg,oklch(78.5%_0.115_274.713))] text-[color:var(--zui-tabs-trigger-indigo-fg,oklch(35.9%_0.144_278.697))] dark:bg-[var(--zui-tabs-trigger-indigo-bg-dark,oklch(35.9%_0.144_278.697))] dark:text-[color:var(--zui-tabs-trigger-indigo-fg-dark,oklch(87%_0.065_274.039))] data-[state=active]:bg-[var(--zui-tabs-trigger-indigo-bg-active,oklch(35.9%_0.144_278.697))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-indigo-bg-active-dark,oklch(45.7%_0.24_277.023))] data-[state=active]:text-[color:var(--zui-tabs-trigger-indigo-fg-active,oklch(96.2%_0.018_272.314))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-indigo-fg-active-dark,oklch(93%_0.034_272.788))]",
35
+ emerald: "bg-[var(--zui-tabs-trigger-emerald-bg,oklch(84.5%_0.143_164.978))] text-[color:var(--zui-tabs-trigger-emerald-fg,oklch(37.8%_0.077_168.94))] dark:bg-[var(--zui-tabs-trigger-emerald-bg-dark,oklch(37.8%_0.077_168.94))] dark:text-[color:var(--zui-tabs-trigger-emerald-fg-dark,oklch(90.5%_0.093_164.15))] data-[state=active]:bg-[var(--zui-tabs-trigger-emerald-bg-active,oklch(37.8%_0.077_168.94))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-emerald-bg-active-dark,oklch(50.8%_0.118_165.612))] data-[state=active]:text-[color:var(--zui-tabs-trigger-emerald-fg-active,oklch(97.9%_0.021_166.113))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-emerald-fg-active-dark,oklch(95%_0.052_163.051))]",
36
+ gray: "bg-[var(--zui-tabs-trigger-gray-bg,oklch(87.2%_0.01_258.338))] text-[color:var(--zui-tabs-trigger-gray-fg,oklch(21%_0.034_264.665))] dark:bg-[var(--zui-tabs-trigger-gray-bg-dark,oklch(21%_0.034_264.665))] dark:text-[color:var(--zui-tabs-trigger-gray-fg-dark,oklch(92.8%_0.006_264.531))] data-[state=active]:bg-[var(--zui-tabs-trigger-gray-bg-active,oklch(21%_0.034_264.665))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-gray-bg-active-dark,oklch(37.3%_0.034_259.733))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gray-fg-active,oklch(98.5%_0.002_247.839))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gray-fg-active-dark,oklch(96.7%_0.003_264.542))]",
37
+ "gradient-blue": "bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-blue-from,oklch(42.4%_0.199_265.638))] dark:from-[var(--zui-tabs-trigger-gradient-blue-from-dark,oklch(42.4%_0.199_265.638))] to-[var(--zui-tabs-trigger-gradient-blue-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-tabs-trigger-gradient-blue-to-dark,oklch(43.8%_0.218_303.724))] text-[color:var(--zui-tabs-trigger-gradient-blue-fg,oklch(93.2%_0.032_255.585))] dark:text-[color:var(--zui-tabs-trigger-gradient-blue-fg-dark,oklch(97%_0.014_254.604))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-blue-from-active,oklch(54.6%_0.245_262.881))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-blue-from-active-dark,oklch(54.6%_0.245_262.881))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-blue-to-active,oklch(55.8%_0.288_302.321))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-blue-to-active-dark,oklch(55.8%_0.288_302.321))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-blue-fg-active,oklch(93.2%_0.032_255.585))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-blue-fg-active-dark,oklch(93.2%_0.032_255.585))]",
38
+ "gradient-green": "bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-green-from,oklch(44.8%_0.119_151.328))] dark:from-[var(--zui-tabs-trigger-gradient-green-from-dark,oklch(44.8%_0.119_151.328))] to-[var(--zui-tabs-trigger-gradient-green-to,oklch(45.3%_0.124_130.933))] dark:to-[var(--zui-tabs-trigger-gradient-green-to-dark,oklch(45.3%_0.124_130.933))] text-[color:var(--zui-tabs-trigger-gradient-green-fg,oklch(96.2%_0.044_156.743))] dark:text-[color:var(--zui-tabs-trigger-gradient-green-fg-dark,oklch(98.2%_0.018_155.826))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-green-from-active,oklch(62.7%_0.194_149.214))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-green-from-active-dark,oklch(62.7%_0.194_149.214))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-green-to-active,oklch(64.8%_0.2_131.684))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-green-to-active-dark,oklch(64.8%_0.2_131.684))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-green-fg-active,oklch(96.2%_0.044_156.743))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-green-fg-active-dark,oklch(96.2%_0.044_156.743))]",
39
+ "gradient-red": "bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-red-from,oklch(44.4%_0.177_26.899))] dark:from-[var(--zui-tabs-trigger-gradient-red-from-dark,oklch(44.4%_0.177_26.899))] to-[var(--zui-tabs-trigger-gradient-red-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-tabs-trigger-gradient-red-to-dark,oklch(45.9%_0.187_3.815))] text-[color:var(--zui-tabs-trigger-gradient-red-fg,oklch(93.6%_0.032_17.717))] dark:text-[color:var(--zui-tabs-trigger-gradient-red-fg-dark,oklch(97.1%_0.013_17.38))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-red-from-active,oklch(57.7%_0.245_27.325))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-red-from-active-dark,oklch(57.7%_0.245_27.325))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-red-to-active,oklch(59.2%_0.249_0.584))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-red-to-active-dark,oklch(59.2%_0.249_0.584))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-red-fg-active,oklch(93.6%_0.032_17.717))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-red-fg-active-dark,oklch(93.6%_0.032_17.717))]",
40
+ "gradient-yellow": "bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-yellow-from,oklch(47.6%_0.114_61.907))] dark:from-[var(--zui-tabs-trigger-gradient-yellow-from-dark,oklch(47.6%_0.114_61.907))] to-[var(--zui-tabs-trigger-gradient-yellow-to,oklch(47%_0.157_37.304))] dark:to-[var(--zui-tabs-trigger-gradient-yellow-to-dark,oklch(47%_0.157_37.304))] text-[color:var(--zui-tabs-trigger-gradient-yellow-fg,oklch(97.3%_0.071_103.193))] dark:text-[color:var(--zui-tabs-trigger-gradient-yellow-fg-dark,oklch(98.7%_0.026_102.212))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-yellow-from-active,oklch(68.1%_0.162_75.834))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-yellow-from-active-dark,oklch(68.1%_0.162_75.834))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-yellow-to-active,oklch(64.6%_0.222_41.116))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-yellow-to-active-dark,oklch(64.6%_0.222_41.116))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-yellow-fg-active,oklch(97.3%_0.071_103.193))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-yellow-fg-active-dark,oklch(97.3%_0.071_103.193))]",
41
+ "gradient-purple": "bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-purple-from,oklch(43.8%_0.218_303.724))] dark:from-[var(--zui-tabs-trigger-gradient-purple-from-dark,oklch(43.8%_0.218_303.724))] to-[var(--zui-tabs-trigger-gradient-purple-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-tabs-trigger-gradient-purple-to-dark,oklch(45.9%_0.187_3.815))] text-[color:var(--zui-tabs-trigger-gradient-purple-fg,oklch(94.6%_0.033_307.174))] dark:text-[color:var(--zui-tabs-trigger-gradient-purple-fg-dark,oklch(97.7%_0.014_308.299))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-purple-from-active,oklch(55.8%_0.288_302.321))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-purple-from-active-dark,oklch(55.8%_0.288_302.321))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-purple-to-active,oklch(59.2%_0.249_0.584))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-purple-to-active-dark,oklch(59.2%_0.249_0.584))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-purple-fg-active,oklch(94.6%_0.033_307.174))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-purple-fg-active-dark,oklch(94.6%_0.033_307.174))]",
42
+ "gradient-teal": "bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-teal-from,oklch(43.7%_0.078_188.216))] dark:from-[var(--zui-tabs-trigger-gradient-teal-from-dark,oklch(43.7%_0.078_188.216))] to-[var(--zui-tabs-trigger-gradient-teal-to,oklch(45%_0.085_224.283))] dark:to-[var(--zui-tabs-trigger-gradient-teal-to-dark,oklch(45%_0.085_224.283))] text-[color:var(--zui-tabs-trigger-gradient-teal-fg,oklch(95.3%_0.051_180.801))] dark:text-[color:var(--zui-tabs-trigger-gradient-teal-fg-dark,oklch(98.4%_0.014_180.72))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-teal-from-active,oklch(60%_0.118_184.704))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-teal-from-active-dark,oklch(60%_0.118_184.704))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-teal-to-active,oklch(60.9%_0.126_221.723))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-teal-to-active-dark,oklch(60.9%_0.126_221.723))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-teal-fg-active,oklch(95.3%_0.051_180.801))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-teal-fg-active-dark,oklch(95.3%_0.051_180.801))]",
43
+ "gradient-indigo": "bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-indigo-from,oklch(39.8%_0.195_277.366))] dark:from-[var(--zui-tabs-trigger-gradient-indigo-from-dark,oklch(39.8%_0.195_277.366))] to-[var(--zui-tabs-trigger-gradient-indigo-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-tabs-trigger-gradient-indigo-to-dark,oklch(43.8%_0.218_303.724))] text-[color:var(--zui-tabs-trigger-gradient-indigo-fg,oklch(93%_0.034_272.788))] dark:text-[color:var(--zui-tabs-trigger-gradient-indigo-fg-dark,oklch(96.2%_0.018_272.314))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-indigo-from-active,oklch(51.1%_0.262_276.966))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-indigo-from-active-dark,oklch(51.1%_0.262_276.966))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-indigo-to-active,oklch(55.8%_0.288_302.321))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-indigo-to-active-dark,oklch(55.8%_0.288_302.321))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-indigo-fg-active,oklch(93%_0.034_272.788))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-indigo-fg-active-dark,oklch(93%_0.034_272.788))]",
44
+ "gradient-pink": "bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-pink-from,oklch(45.9%_0.187_3.815))] dark:from-[var(--zui-tabs-trigger-gradient-pink-from-dark,oklch(45.9%_0.187_3.815))] to-[var(--zui-tabs-trigger-gradient-pink-to,oklch(45.5%_0.188_13.697))] dark:to-[var(--zui-tabs-trigger-gradient-pink-to-dark,oklch(45.5%_0.188_13.697))] text-[color:var(--zui-tabs-trigger-gradient-pink-fg,oklch(94.8%_0.028_342.258))] dark:text-[color:var(--zui-tabs-trigger-gradient-pink-fg-dark,oklch(97.1%_0.014_343.198))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-pink-from-active,oklch(59.2%_0.249_0.584))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-pink-from-active-dark,oklch(59.2%_0.249_0.584))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-pink-to-active,oklch(58.6%_0.253_17.585))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-pink-to-active-dark,oklch(58.6%_0.253_17.585))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-pink-fg-active,oklch(94.8%_0.028_342.258))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-pink-fg-active-dark,oklch(94.8%_0.028_342.258))]",
45
+ "gradient-orange": "bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-orange-from,oklch(47%_0.157_37.304))] dark:from-[var(--zui-tabs-trigger-gradient-orange-from-dark,oklch(47%_0.157_37.304))] to-[var(--zui-tabs-trigger-gradient-orange-to,oklch(44.4%_0.177_26.899))] dark:to-[var(--zui-tabs-trigger-gradient-orange-to-dark,oklch(44.4%_0.177_26.899))] text-[color:var(--zui-tabs-trigger-gradient-orange-fg,oklch(95.4%_0.038_75.164))] dark:text-[color:var(--zui-tabs-trigger-gradient-orange-fg-dark,oklch(98%_0.016_73.684))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-orange-from-active,oklch(64.6%_0.222_41.116))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-orange-from-active-dark,oklch(64.6%_0.222_41.116))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-orange-to-active,oklch(57.7%_0.245_27.325))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-orange-to-active-dark,oklch(57.7%_0.245_27.325))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-orange-fg-active,oklch(95.4%_0.038_75.164))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-orange-fg-active-dark,oklch(95.4%_0.038_75.164))]"
46
+ };
47
+ var zuiTabsTriggerVariants = {
48
+ default: "data-[state=active]:bg-background",
49
+ underline: "border-b-2 border-[color:var(--zui-tabs-trigger-underline-border,transparent)] data-[state=active]:border-current rounded-none",
50
+ pills: ""
51
+ };
52
+ var zuiTabsTriggerSizes = {
53
+ sm: "px-2 py-1",
54
+ md: "px-3 py-1.5",
55
+ lg: "px-4 py-2"
56
+ };
57
+
58
+ // src/ui/tabs/variants.ts
59
+ var tabsListVariants = classVarianceAuthority.cva(zuiTabsListBase, {
60
+ variants: {
61
+ variant: zuiTabsListVariants,
62
+ size: zuiTabsListSizes,
63
+ orientation: zuiTabsOrientations
64
+ },
65
+ defaultVariants: {
66
+ size: "md",
67
+ orientation: "horizontal",
68
+ variant: "pills"
69
+ }
70
+ });
71
+ var tabsTriggerVariants = classVarianceAuthority.cva(zuiTabsTriggerBase, {
72
+ variants: {
73
+ appearance: zuiTabsTriggerAppearances,
74
+ variant: zuiTabsTriggerVariants,
75
+ size: zuiTabsTriggerSizes
76
+ },
77
+ defaultVariants: {
78
+ appearance: "default",
79
+ variant: "pills",
80
+ size: "md"
81
+ }
82
+ });
83
+ var TabsContext = react.createContext(null);
84
+ var useTabs = () => {
85
+ const ctx = react.useContext(TabsContext);
86
+ if (!ctx) throw new Error("Tabs components must be used within Tabs");
87
+ return ctx;
88
+ };
89
+ function Tabs({
90
+ value,
91
+ defaultValue,
92
+ onValueChange,
93
+ orientation = "horizontal",
94
+ variant,
95
+ size,
96
+ appearance,
97
+ children,
98
+ className
99
+ }) {
100
+ const [internalValue, setInternalValue] = react.useState(defaultValue);
101
+ const idPrefix = react.useId();
102
+ const listRef = react.useRef(null);
103
+ const isControlled = value !== void 0;
104
+ const currentValue = isControlled ? value : internalValue;
105
+ const setValue = (val) => {
106
+ if (!isControlled) setInternalValue(val);
107
+ onValueChange?.(val);
108
+ };
109
+ const tabTriggerId = (tabValue) => `${idPrefix}zentauri-tab-${tabValue}`;
110
+ const tabPanelId = (tabValue) => `${idPrefix}zentauri-panel-${tabValue}`;
111
+ return /* @__PURE__ */ jsxRuntime.jsx(
112
+ TabsContext.Provider,
113
+ {
114
+ value: {
115
+ value: currentValue,
116
+ setValue,
117
+ listRef,
118
+ orientation,
119
+ size,
120
+ variant,
121
+ appearance,
122
+ tabTriggerId,
123
+ tabPanelId
124
+ },
125
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "tabs", className: chunkZS5756ZC_js.cn("w-full", className), children })
126
+ }
127
+ );
128
+ }
129
+ function TabsList({ children, className, ...props }) {
130
+ const { orientation, size, listRef } = useTabs();
131
+ return /* @__PURE__ */ jsxRuntime.jsx(
132
+ "div",
133
+ {
134
+ ref: listRef,
135
+ role: "tablist",
136
+ "aria-orientation": orientation,
137
+ className: chunkZS5756ZC_js.cn(tabsListVariants({ orientation, size }), className),
138
+ ...props,
139
+ children
140
+ }
141
+ );
142
+ }
143
+ function TabsTrigger({
144
+ value,
145
+ children,
146
+ disabled,
147
+ className,
148
+ ...props
149
+ }) {
150
+ const {
151
+ value: activeValue,
152
+ setValue,
153
+ listRef,
154
+ orientation,
155
+ tabTriggerId,
156
+ tabPanelId,
157
+ size,
158
+ appearance,
159
+ variant
160
+ } = useTabs();
161
+ const isActive = activeValue === value;
162
+ const handleKeyDown = (e) => {
163
+ const list = listRef.current;
164
+ const triggers = list === null ? [] : Array.from(list.querySelectorAll('[role="tab"]'));
165
+ const nextKeys = orientation === "vertical" ? ["ArrowDown"] : ["ArrowRight"];
166
+ const prevKeys = orientation === "vertical" ? ["ArrowUp"] : ["ArrowLeft"];
167
+ const index = triggers.findIndex((el) => el === e.currentTarget);
168
+ if (index === -1) {
169
+ return;
170
+ }
171
+ const findEnabledIndex = (start, direction) => {
172
+ const n = triggers.length;
173
+ if (n === 0) {
174
+ return void 0;
175
+ }
176
+ let i = start;
177
+ for (let step = 0; step < n; step += 1) {
178
+ i = (i + direction + n) % n;
179
+ if (triggers[i]?.disabled !== true) {
180
+ return i;
181
+ }
182
+ }
183
+ return void 0;
184
+ };
185
+ const focusAt = (i) => {
186
+ const target = triggers[i];
187
+ if (target !== void 0 && target.disabled !== true) {
188
+ target.focus();
189
+ }
190
+ };
191
+ const isNext = nextKeys.includes(e.key);
192
+ const isPrev = prevKeys.includes(e.key);
193
+ if (isNext) {
194
+ e.preventDefault();
195
+ const nextIdx = findEnabledIndex(index, 1);
196
+ if (nextIdx !== void 0) {
197
+ focusAt(nextIdx);
198
+ }
199
+ return;
200
+ }
201
+ if (isPrev) {
202
+ e.preventDefault();
203
+ const prevIdx = findEnabledIndex(index, -1);
204
+ if (prevIdx !== void 0) {
205
+ focusAt(prevIdx);
206
+ }
207
+ return;
208
+ }
209
+ if (e.key === "Home") {
210
+ e.preventDefault();
211
+ const firstEnabledIndex = triggers.findIndex((btn) => !btn.disabled);
212
+ if (firstEnabledIndex !== -1) {
213
+ triggers[firstEnabledIndex]?.focus();
214
+ }
215
+ return;
216
+ }
217
+ if (e.key === "End") {
218
+ e.preventDefault();
219
+ for (let i = triggers.length - 1; i >= 0; i -= 1) {
220
+ if (!triggers[i]?.disabled) {
221
+ triggers[i]?.focus();
222
+ break;
223
+ }
224
+ }
225
+ }
226
+ };
227
+ return /* @__PURE__ */ jsxRuntime.jsx(
228
+ "button",
229
+ {
230
+ id: tabTriggerId(value),
231
+ type: "button",
232
+ role: "tab",
233
+ "data-state": isActive ? "active" : "inactive",
234
+ "aria-selected": isActive,
235
+ "aria-controls": tabPanelId(value),
236
+ disabled,
237
+ tabIndex: activeValue === void 0 ? void 0 : isActive ? 0 : -1,
238
+ onClick: () => setValue(value),
239
+ onKeyDown: handleKeyDown,
240
+ className: chunkZS5756ZC_js.cn(
241
+ tabsTriggerVariants({ size, appearance, variant }),
242
+ className,
243
+ "cursor-pointer"
244
+ ),
245
+ ...props,
246
+ children
247
+ }
248
+ );
249
+ }
250
+ function TabsContent({
251
+ value,
252
+ children,
253
+ className,
254
+ as: Wrapper = "div",
255
+ ...props
256
+ }) {
257
+ const { value: activeValue, tabTriggerId, tabPanelId } = useTabs();
258
+ if (activeValue !== value) return null;
259
+ return /* @__PURE__ */ jsxRuntime.jsx(
260
+ Wrapper,
261
+ {
262
+ id: tabPanelId(value),
263
+ role: "tabpanel",
264
+ "aria-labelledby": tabTriggerId(value),
265
+ className: chunkZS5756ZC_js.cn("mt-2", className),
266
+ ...props,
267
+ children
268
+ }
269
+ );
270
+ }
271
+
272
+ exports.Tabs = Tabs;
273
+ exports.TabsContent = TabsContent;
274
+ exports.TabsContext = TabsContext;
275
+ exports.TabsList = TabsList;
276
+ exports.TabsTrigger = TabsTrigger;
277
+ exports.tabsListVariants = tabsListVariants;
278
+ exports.tabsTriggerVariants = tabsTriggerVariants;
279
+ exports.useTabs = useTabs;
280
+ //# sourceMappingURL=chunk-QAJOE3HJ.js.map
281
+ //# sourceMappingURL=chunk-QAJOE3HJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/design-system/tabs.ts","../src/ui/tabs/variants.ts","../src/ui/tabs/tabs-base.tsx"],"names":["cva","createContext","useContext","useState","useId","useRef","jsx","cn"],"mappings":"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","file":"chunk-QAJOE3HJ.js","sourcesContent":["export const zuiTabsListBase = \"flex flex-wrap items-center gap-1\";\n\nexport const zuiTabsListVariants = {\n default: \"bg-[var(--zui-tabs-list-default-bg,transparent)]\",\n underline:\n \"border-b-2 border-[color:var(--zui-tabs-list-underline-border,transparent)]\",\n pills: \"rounded-md\",\n} as const;\n\nexport const zuiTabsListSizes = {\n sm: \"text-sm p-1\",\n md: \"text-base p-1.5\",\n lg: \"text-lg p-2\",\n} as const;\n\nexport const zuiTabsOrientations = {\n horizontal: \"flex-row\",\n vertical: \"flex-col\",\n} as const;\n\nexport const zuiTabsTriggerBase =\n \"px-3 py-1.5 rounded-md transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring\";\n\nexport const zuiTabsTriggerAppearances = {\n default:\n \"bg-[var(--zui-tabs-trigger-default-bg,transparent)] text-[color:var(--zui-tabs-trigger-default-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-tabs-trigger-default-fg-dark,oklch(98.4%_0.003_247.858))]\",\n sky: \"bg-[var(--zui-tabs-trigger-sky-bg,oklch(82.8%_0.111_230.318))] text-[color:var(--zui-tabs-trigger-sky-fg,oklch(39.1%_0.09_240.876))] dark:bg-[var(--zui-tabs-trigger-sky-bg-dark,oklch(39.1%_0.09_240.876))] dark:text-[color:var(--zui-tabs-trigger-sky-fg-dark,oklch(90.1%_0.058_230.902))] data-[state=active]:bg-[var(--zui-tabs-trigger-sky-bg-active,oklch(39.1%_0.09_240.876))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-sky-bg-active-dark,oklch(50%_0.134_242.749))] data-[state=active]:text-[color:var(--zui-tabs-trigger-sky-fg-active,oklch(97.7%_0.013_236.62))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-sky-fg-active-dark,oklch(95.1%_0.026_236.824))]\",\n rose: \"bg-[var(--zui-tabs-trigger-rose-bg,oklch(81%_0.117_11.638))] text-[color:var(--zui-tabs-trigger-rose-fg,oklch(41%_0.159_10.272))] dark:bg-[var(--zui-tabs-trigger-rose-bg-dark,oklch(41%_0.159_10.272))] dark:text-[color:var(--zui-tabs-trigger-rose-fg-dark,oklch(89.2%_0.058_10.001))] data-[state=active]:bg-[var(--zui-tabs-trigger-rose-bg-active,oklch(41%_0.159_10.272))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-rose-bg-active-dark,oklch(51.4%_0.222_16.935))] data-[state=active]:text-[color:var(--zui-tabs-trigger-rose-fg-active,oklch(96.9%_0.015_12.422))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-rose-fg-active-dark,oklch(94.1%_0.03_12.58))]\",\n purple:\n \"bg-[var(--zui-tabs-trigger-purple-bg,oklch(82.7%_0.119_306.383))] text-[color:var(--zui-tabs-trigger-purple-fg,oklch(38.1%_0.176_304.987))] dark:bg-[var(--zui-tabs-trigger-purple-bg-dark,oklch(38.1%_0.176_304.987))] dark:text-[color:var(--zui-tabs-trigger-purple-fg-dark,oklch(90.2%_0.063_306.703))] data-[state=active]:bg-[var(--zui-tabs-trigger-purple-bg-active,oklch(38.1%_0.176_304.987))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-purple-bg-active-dark,oklch(49.6%_0.265_301.924))] data-[state=active]:text-[color:var(--zui-tabs-trigger-purple-fg-active,oklch(97.7%_0.014_308.299))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-purple-fg-active-dark,oklch(94.6%_0.033_307.174))]\",\n pink: \"bg-[var(--zui-tabs-trigger-pink-bg,oklch(82.3%_0.12_346.018))] text-[color:var(--zui-tabs-trigger-pink-fg,oklch(40.8%_0.153_2.432))] dark:bg-[var(--zui-tabs-trigger-pink-bg-dark,oklch(40.8%_0.153_2.432))] dark:text-[color:var(--zui-tabs-trigger-pink-fg-dark,oklch(89.9%_0.061_343.231))] data-[state=active]:bg-[var(--zui-tabs-trigger-pink-bg-active,oklch(40.8%_0.153_2.432))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-pink-bg-active-dark,oklch(52.5%_0.223_3.958))] data-[state=active]:text-[color:var(--zui-tabs-trigger-pink-fg-active,oklch(97.1%_0.014_343.198))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-pink-fg-active-dark,oklch(94.8%_0.028_342.258))]\",\n orange:\n \"bg-[var(--zui-tabs-trigger-orange-bg,oklch(83.7%_0.128_66.29))] text-[color:var(--zui-tabs-trigger-orange-fg,oklch(40.8%_0.123_38.172))] dark:bg-[var(--zui-tabs-trigger-orange-bg-dark,oklch(40.8%_0.123_38.172))] dark:text-[color:var(--zui-tabs-trigger-orange-fg-dark,oklch(90.1%_0.076_70.697))] data-[state=active]:bg-[var(--zui-tabs-trigger-orange-bg-active,oklch(40.8%_0.123_38.172))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-orange-bg-active-dark,oklch(55.3%_0.195_38.402))] data-[state=active]:text-[color:var(--zui-tabs-trigger-orange-fg-active,oklch(98%_0.016_73.684))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-orange-fg-active-dark,oklch(95.4%_0.038_75.164))]\",\n yellow:\n \"bg-[var(--zui-tabs-trigger-yellow-bg,oklch(90.5%_0.182_98.111))] text-[color:var(--zui-tabs-trigger-yellow-fg,oklch(42.1%_0.095_57.708))] dark:bg-[var(--zui-tabs-trigger-yellow-bg-dark,oklch(42.1%_0.095_57.708))] dark:text-[color:var(--zui-tabs-trigger-yellow-fg-dark,oklch(94.5%_0.129_101.54))] data-[state=active]:bg-[var(--zui-tabs-trigger-yellow-bg-active,oklch(42.1%_0.095_57.708))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-yellow-bg-active-dark,oklch(55.4%_0.135_66.442))] data-[state=active]:text-[color:var(--zui-tabs-trigger-yellow-fg-active,oklch(98.7%_0.026_102.212))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-yellow-fg-active-dark,oklch(97.3%_0.071_103.193))]\",\n teal: \"bg-[var(--zui-tabs-trigger-teal-bg,oklch(85.5%_0.138_181.071))] text-[color:var(--zui-tabs-trigger-teal-fg,oklch(38.6%_0.063_188.416))] dark:bg-[var(--zui-tabs-trigger-teal-bg-dark,oklch(38.6%_0.063_188.416))] dark:text-[color:var(--zui-tabs-trigger-teal-fg-dark,oklch(91%_0.096_180.426))] data-[state=active]:bg-[var(--zui-tabs-trigger-teal-bg-active,oklch(38.6%_0.063_188.416))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-teal-bg-active-dark,oklch(51.1%_0.096_186.391))] data-[state=active]:text-[color:var(--zui-tabs-trigger-teal-fg-active,oklch(98.4%_0.014_180.72))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-teal-fg-active-dark,oklch(95.3%_0.051_180.801))]\",\n indigo:\n \"bg-[var(--zui-tabs-trigger-indigo-bg,oklch(78.5%_0.115_274.713))] text-[color:var(--zui-tabs-trigger-indigo-fg,oklch(35.9%_0.144_278.697))] dark:bg-[var(--zui-tabs-trigger-indigo-bg-dark,oklch(35.9%_0.144_278.697))] dark:text-[color:var(--zui-tabs-trigger-indigo-fg-dark,oklch(87%_0.065_274.039))] data-[state=active]:bg-[var(--zui-tabs-trigger-indigo-bg-active,oklch(35.9%_0.144_278.697))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-indigo-bg-active-dark,oklch(45.7%_0.24_277.023))] data-[state=active]:text-[color:var(--zui-tabs-trigger-indigo-fg-active,oklch(96.2%_0.018_272.314))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-indigo-fg-active-dark,oklch(93%_0.034_272.788))]\",\n emerald:\n \"bg-[var(--zui-tabs-trigger-emerald-bg,oklch(84.5%_0.143_164.978))] text-[color:var(--zui-tabs-trigger-emerald-fg,oklch(37.8%_0.077_168.94))] dark:bg-[var(--zui-tabs-trigger-emerald-bg-dark,oklch(37.8%_0.077_168.94))] dark:text-[color:var(--zui-tabs-trigger-emerald-fg-dark,oklch(90.5%_0.093_164.15))] data-[state=active]:bg-[var(--zui-tabs-trigger-emerald-bg-active,oklch(37.8%_0.077_168.94))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-emerald-bg-active-dark,oklch(50.8%_0.118_165.612))] data-[state=active]:text-[color:var(--zui-tabs-trigger-emerald-fg-active,oklch(97.9%_0.021_166.113))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-emerald-fg-active-dark,oklch(95%_0.052_163.051))]\",\n gray: \"bg-[var(--zui-tabs-trigger-gray-bg,oklch(87.2%_0.01_258.338))] text-[color:var(--zui-tabs-trigger-gray-fg,oklch(21%_0.034_264.665))] dark:bg-[var(--zui-tabs-trigger-gray-bg-dark,oklch(21%_0.034_264.665))] dark:text-[color:var(--zui-tabs-trigger-gray-fg-dark,oklch(92.8%_0.006_264.531))] data-[state=active]:bg-[var(--zui-tabs-trigger-gray-bg-active,oklch(21%_0.034_264.665))] dark:data-[state=active]:bg-[var(--zui-tabs-trigger-gray-bg-active-dark,oklch(37.3%_0.034_259.733))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gray-fg-active,oklch(98.5%_0.002_247.839))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gray-fg-active-dark,oklch(96.7%_0.003_264.542))]\",\n \"gradient-blue\":\n \"bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-blue-from,oklch(42.4%_0.199_265.638))] dark:from-[var(--zui-tabs-trigger-gradient-blue-from-dark,oklch(42.4%_0.199_265.638))] to-[var(--zui-tabs-trigger-gradient-blue-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-tabs-trigger-gradient-blue-to-dark,oklch(43.8%_0.218_303.724))] text-[color:var(--zui-tabs-trigger-gradient-blue-fg,oklch(93.2%_0.032_255.585))] dark:text-[color:var(--zui-tabs-trigger-gradient-blue-fg-dark,oklch(97%_0.014_254.604))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-blue-from-active,oklch(54.6%_0.245_262.881))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-blue-from-active-dark,oklch(54.6%_0.245_262.881))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-blue-to-active,oklch(55.8%_0.288_302.321))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-blue-to-active-dark,oklch(55.8%_0.288_302.321))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-blue-fg-active,oklch(93.2%_0.032_255.585))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-blue-fg-active-dark,oklch(93.2%_0.032_255.585))]\",\n \"gradient-green\":\n \"bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-green-from,oklch(44.8%_0.119_151.328))] dark:from-[var(--zui-tabs-trigger-gradient-green-from-dark,oklch(44.8%_0.119_151.328))] to-[var(--zui-tabs-trigger-gradient-green-to,oklch(45.3%_0.124_130.933))] dark:to-[var(--zui-tabs-trigger-gradient-green-to-dark,oklch(45.3%_0.124_130.933))] text-[color:var(--zui-tabs-trigger-gradient-green-fg,oklch(96.2%_0.044_156.743))] dark:text-[color:var(--zui-tabs-trigger-gradient-green-fg-dark,oklch(98.2%_0.018_155.826))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-green-from-active,oklch(62.7%_0.194_149.214))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-green-from-active-dark,oklch(62.7%_0.194_149.214))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-green-to-active,oklch(64.8%_0.2_131.684))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-green-to-active-dark,oklch(64.8%_0.2_131.684))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-green-fg-active,oklch(96.2%_0.044_156.743))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-green-fg-active-dark,oklch(96.2%_0.044_156.743))]\",\n \"gradient-red\":\n \"bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-red-from,oklch(44.4%_0.177_26.899))] dark:from-[var(--zui-tabs-trigger-gradient-red-from-dark,oklch(44.4%_0.177_26.899))] to-[var(--zui-tabs-trigger-gradient-red-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-tabs-trigger-gradient-red-to-dark,oklch(45.9%_0.187_3.815))] text-[color:var(--zui-tabs-trigger-gradient-red-fg,oklch(93.6%_0.032_17.717))] dark:text-[color:var(--zui-tabs-trigger-gradient-red-fg-dark,oklch(97.1%_0.013_17.38))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-red-from-active,oklch(57.7%_0.245_27.325))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-red-from-active-dark,oklch(57.7%_0.245_27.325))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-red-to-active,oklch(59.2%_0.249_0.584))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-red-to-active-dark,oklch(59.2%_0.249_0.584))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-red-fg-active,oklch(93.6%_0.032_17.717))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-red-fg-active-dark,oklch(93.6%_0.032_17.717))]\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-yellow-from,oklch(47.6%_0.114_61.907))] dark:from-[var(--zui-tabs-trigger-gradient-yellow-from-dark,oklch(47.6%_0.114_61.907))] to-[var(--zui-tabs-trigger-gradient-yellow-to,oklch(47%_0.157_37.304))] dark:to-[var(--zui-tabs-trigger-gradient-yellow-to-dark,oklch(47%_0.157_37.304))] text-[color:var(--zui-tabs-trigger-gradient-yellow-fg,oklch(97.3%_0.071_103.193))] dark:text-[color:var(--zui-tabs-trigger-gradient-yellow-fg-dark,oklch(98.7%_0.026_102.212))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-yellow-from-active,oklch(68.1%_0.162_75.834))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-yellow-from-active-dark,oklch(68.1%_0.162_75.834))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-yellow-to-active,oklch(64.6%_0.222_41.116))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-yellow-to-active-dark,oklch(64.6%_0.222_41.116))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-yellow-fg-active,oklch(97.3%_0.071_103.193))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-yellow-fg-active-dark,oklch(97.3%_0.071_103.193))]\",\n \"gradient-purple\":\n \"bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-purple-from,oklch(43.8%_0.218_303.724))] dark:from-[var(--zui-tabs-trigger-gradient-purple-from-dark,oklch(43.8%_0.218_303.724))] to-[var(--zui-tabs-trigger-gradient-purple-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-tabs-trigger-gradient-purple-to-dark,oklch(45.9%_0.187_3.815))] text-[color:var(--zui-tabs-trigger-gradient-purple-fg,oklch(94.6%_0.033_307.174))] dark:text-[color:var(--zui-tabs-trigger-gradient-purple-fg-dark,oklch(97.7%_0.014_308.299))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-purple-from-active,oklch(55.8%_0.288_302.321))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-purple-from-active-dark,oklch(55.8%_0.288_302.321))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-purple-to-active,oklch(59.2%_0.249_0.584))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-purple-to-active-dark,oklch(59.2%_0.249_0.584))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-purple-fg-active,oklch(94.6%_0.033_307.174))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-purple-fg-active-dark,oklch(94.6%_0.033_307.174))]\",\n \"gradient-teal\":\n \"bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-teal-from,oklch(43.7%_0.078_188.216))] dark:from-[var(--zui-tabs-trigger-gradient-teal-from-dark,oklch(43.7%_0.078_188.216))] to-[var(--zui-tabs-trigger-gradient-teal-to,oklch(45%_0.085_224.283))] dark:to-[var(--zui-tabs-trigger-gradient-teal-to-dark,oklch(45%_0.085_224.283))] text-[color:var(--zui-tabs-trigger-gradient-teal-fg,oklch(95.3%_0.051_180.801))] dark:text-[color:var(--zui-tabs-trigger-gradient-teal-fg-dark,oklch(98.4%_0.014_180.72))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-teal-from-active,oklch(60%_0.118_184.704))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-teal-from-active-dark,oklch(60%_0.118_184.704))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-teal-to-active,oklch(60.9%_0.126_221.723))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-teal-to-active-dark,oklch(60.9%_0.126_221.723))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-teal-fg-active,oklch(95.3%_0.051_180.801))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-teal-fg-active-dark,oklch(95.3%_0.051_180.801))]\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-indigo-from,oklch(39.8%_0.195_277.366))] dark:from-[var(--zui-tabs-trigger-gradient-indigo-from-dark,oklch(39.8%_0.195_277.366))] to-[var(--zui-tabs-trigger-gradient-indigo-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-tabs-trigger-gradient-indigo-to-dark,oklch(43.8%_0.218_303.724))] text-[color:var(--zui-tabs-trigger-gradient-indigo-fg,oklch(93%_0.034_272.788))] dark:text-[color:var(--zui-tabs-trigger-gradient-indigo-fg-dark,oklch(96.2%_0.018_272.314))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-indigo-from-active,oklch(51.1%_0.262_276.966))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-indigo-from-active-dark,oklch(51.1%_0.262_276.966))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-indigo-to-active,oklch(55.8%_0.288_302.321))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-indigo-to-active-dark,oklch(55.8%_0.288_302.321))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-indigo-fg-active,oklch(93%_0.034_272.788))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-indigo-fg-active-dark,oklch(93%_0.034_272.788))]\",\n \"gradient-pink\":\n \"bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-pink-from,oklch(45.9%_0.187_3.815))] dark:from-[var(--zui-tabs-trigger-gradient-pink-from-dark,oklch(45.9%_0.187_3.815))] to-[var(--zui-tabs-trigger-gradient-pink-to,oklch(45.5%_0.188_13.697))] dark:to-[var(--zui-tabs-trigger-gradient-pink-to-dark,oklch(45.5%_0.188_13.697))] text-[color:var(--zui-tabs-trigger-gradient-pink-fg,oklch(94.8%_0.028_342.258))] dark:text-[color:var(--zui-tabs-trigger-gradient-pink-fg-dark,oklch(97.1%_0.014_343.198))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-pink-from-active,oklch(59.2%_0.249_0.584))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-pink-from-active-dark,oklch(59.2%_0.249_0.584))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-pink-to-active,oklch(58.6%_0.253_17.585))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-pink-to-active-dark,oklch(58.6%_0.253_17.585))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-pink-fg-active,oklch(94.8%_0.028_342.258))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-pink-fg-active-dark,oklch(94.8%_0.028_342.258))]\",\n \"gradient-orange\":\n \"bg-linear-to-r from-[var(--zui-tabs-trigger-gradient-orange-from,oklch(47%_0.157_37.304))] dark:from-[var(--zui-tabs-trigger-gradient-orange-from-dark,oklch(47%_0.157_37.304))] to-[var(--zui-tabs-trigger-gradient-orange-to,oklch(44.4%_0.177_26.899))] dark:to-[var(--zui-tabs-trigger-gradient-orange-to-dark,oklch(44.4%_0.177_26.899))] text-[color:var(--zui-tabs-trigger-gradient-orange-fg,oklch(95.4%_0.038_75.164))] dark:text-[color:var(--zui-tabs-trigger-gradient-orange-fg-dark,oklch(98%_0.016_73.684))] data-[state=active]:from-[var(--zui-tabs-trigger-gradient-orange-from-active,oklch(64.6%_0.222_41.116))] dark:data-[state=active]:from-[var(--zui-tabs-trigger-gradient-orange-from-active-dark,oklch(64.6%_0.222_41.116))] data-[state=active]:to-[var(--zui-tabs-trigger-gradient-orange-to-active,oklch(57.7%_0.245_27.325))] dark:data-[state=active]:to-[var(--zui-tabs-trigger-gradient-orange-to-active-dark,oklch(57.7%_0.245_27.325))] data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-orange-fg-active,oklch(95.4%_0.038_75.164))] dark:data-[state=active]:text-[color:var(--zui-tabs-trigger-gradient-orange-fg-active-dark,oklch(95.4%_0.038_75.164))]\",\n} as const;\n\nexport const zuiTabsTriggerVariants = {\n default: \"data-[state=active]:bg-background\",\n underline:\n \"border-b-2 border-[color:var(--zui-tabs-trigger-underline-border,transparent)] data-[state=active]:border-current rounded-none\",\n pills: \"\",\n} as const;\n\nexport const zuiTabsTriggerSizes = {\n sm: \"px-2 py-1\",\n md: \"px-3 py-1.5\",\n lg: \"px-4 py-2\",\n} as const;\n","import { cva } from \"class-variance-authority\";\n\nimport {\n zuiTabsListBase,\n zuiTabsListSizes,\n zuiTabsListVariants,\n zuiTabsOrientations,\n zuiTabsTriggerAppearances,\n zuiTabsTriggerBase,\n zuiTabsTriggerSizes,\n zuiTabsTriggerVariants,\n} from \"../../design-system/tabs\";\n\nexport const tabsListVariants = cva(zuiTabsListBase, {\n variants: {\n variant: zuiTabsListVariants,\n size: zuiTabsListSizes,\n orientation: zuiTabsOrientations,\n },\n defaultVariants: {\n size: \"md\",\n orientation: \"horizontal\",\n variant: \"pills\",\n },\n});\n\nexport const tabsTriggerVariants = cva(zuiTabsTriggerBase, {\n variants: {\n appearance: zuiTabsTriggerAppearances,\n variant: zuiTabsTriggerVariants,\n size: zuiTabsTriggerSizes,\n },\n defaultVariants: {\n appearance: \"default\",\n variant: \"pills\",\n size: \"md\",\n },\n});\n","\"use client\";\n\nimport {\n createContext,\n KeyboardEvent,\n useContext,\n useId,\n useRef,\n useState,\n} from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport {\n TabsContentProps,\n TabsListProps,\n TabsProps,\n TabsTriggerProps,\n TabsValue,\n TabsContextType,\n} from \"./types\";\nimport { tabsListVariants, tabsTriggerVariants } from \"./variants\";\n\nexport const TabsContext = createContext<TabsContextType | null>(null);\n\nexport const useTabs = () => {\n const ctx = useContext(TabsContext);\n if (!ctx) throw new Error(\"Tabs components must be used within Tabs\");\n return ctx;\n};\n\nexport function Tabs({\n value,\n defaultValue,\n onValueChange,\n orientation = \"horizontal\",\n variant,\n size,\n appearance,\n children,\n className,\n}: TabsProps) {\n const [internalValue, setInternalValue] = useState(defaultValue);\n const idPrefix = useId();\n const listRef = useRef<HTMLDivElement | null>(null);\n\n const isControlled = value !== undefined;\n const currentValue = isControlled ? value : internalValue;\n\n const setValue = (val: string) => {\n if (!isControlled) setInternalValue(val);\n onValueChange?.(val);\n };\n\n const tabTriggerId = (tabValue: TabsValue) =>\n `${idPrefix}zentauri-tab-${tabValue}`;\n const tabPanelId = (tabValue: TabsValue) =>\n `${idPrefix}zentauri-panel-${tabValue}`;\n\n return (\n <TabsContext.Provider\n value={{\n value: currentValue,\n setValue,\n listRef,\n orientation,\n size,\n variant,\n appearance,\n tabTriggerId,\n tabPanelId,\n }}\n >\n <div data-slot=\"tabs\" className={cn(\"w-full\", className)}>\n {children}\n </div>\n </TabsContext.Provider>\n );\n}\n\nexport function TabsList({ children, className, ...props }: TabsListProps) {\n const { orientation, size, listRef } = useTabs();\n\n return (\n <div\n ref={listRef}\n role=\"tablist\"\n aria-orientation={orientation}\n className={cn(tabsListVariants({ orientation, size }), className)}\n {...props}\n >\n {children}\n </div>\n );\n}\n\nexport function TabsTrigger({\n value,\n children,\n disabled,\n className,\n ...props\n}: TabsTriggerProps) {\n const {\n value: activeValue,\n setValue,\n listRef,\n orientation,\n tabTriggerId,\n tabPanelId,\n size,\n appearance,\n variant,\n } = useTabs();\n\n const isActive = activeValue === value;\n\n const handleKeyDown = (e: KeyboardEvent<HTMLButtonElement>) => {\n const list = listRef.current;\n const triggers =\n list === null\n ? []\n : Array.from(list.querySelectorAll<HTMLButtonElement>('[role=\"tab\"]'));\n\n const nextKeys =\n orientation === \"vertical\" ? [\"ArrowDown\"] : [\"ArrowRight\"];\n const prevKeys = orientation === \"vertical\" ? [\"ArrowUp\"] : [\"ArrowLeft\"];\n\n const index = triggers.findIndex((el) => el === e.currentTarget);\n if (index === -1) {\n return;\n }\n\n const findEnabledIndex = (\n start: number,\n direction: 1 | -1,\n ): number | undefined => {\n const n = triggers.length;\n if (n === 0) {\n return undefined;\n }\n let i = start;\n for (let step = 0; step < n; step += 1) {\n i = (i + direction + n) % n;\n if (triggers[i]?.disabled !== true) {\n return i;\n }\n }\n return undefined;\n };\n\n const focusAt = (i: number) => {\n const target = triggers[i];\n if (target !== undefined && target.disabled !== true) {\n target.focus();\n }\n };\n\n const isNext = nextKeys.includes(e.key);\n const isPrev = prevKeys.includes(e.key);\n\n if (isNext) {\n e.preventDefault();\n const nextIdx = findEnabledIndex(index, 1);\n if (nextIdx !== undefined) {\n focusAt(nextIdx);\n }\n return;\n }\n\n if (isPrev) {\n e.preventDefault();\n const prevIdx = findEnabledIndex(index, -1);\n if (prevIdx !== undefined) {\n focusAt(prevIdx);\n }\n return;\n }\n\n if (e.key === \"Home\") {\n e.preventDefault();\n const firstEnabledIndex = triggers.findIndex((btn) => !btn.disabled);\n if (firstEnabledIndex !== -1) {\n triggers[firstEnabledIndex]?.focus();\n }\n return;\n }\n\n if (e.key === \"End\") {\n e.preventDefault();\n for (let i = triggers.length - 1; i >= 0; i -= 1) {\n if (!triggers[i]?.disabled) {\n triggers[i]?.focus();\n break;\n }\n }\n }\n };\n\n return (\n <button\n id={tabTriggerId(value)}\n type=\"button\"\n role=\"tab\"\n data-state={isActive ? \"active\" : \"inactive\"}\n aria-selected={isActive}\n aria-controls={tabPanelId(value)}\n disabled={disabled}\n tabIndex={activeValue === undefined ? undefined : isActive ? 0 : -1}\n onClick={() => setValue(value)}\n onKeyDown={handleKeyDown}\n className={cn(\n tabsTriggerVariants({ size, appearance, variant }),\n className,\n \"cursor-pointer\",\n )}\n {...props}\n >\n {children}\n </button>\n );\n}\n\nexport function TabsContent({\n value,\n children,\n className,\n as: Wrapper = \"div\",\n ...props\n}: TabsContentProps) {\n const { value: activeValue, tabTriggerId, tabPanelId } = useTabs();\n\n if (activeValue !== value) return null;\n\n return (\n <Wrapper\n id={tabPanelId(value)}\n role=\"tabpanel\"\n aria-labelledby={tabTriggerId(value)}\n className={cn(\"mt-2\", className)}\n {...props}\n >\n {children}\n </Wrapper>\n );\n}\n"]}