@zentauri-ui/zentauri-components 1.8.42 → 1.9.1

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 (649) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +9 -8
  3. package/cli/registry.json +0 -1
  4. package/dist/animations/blur-in.js +2 -2
  5. package/dist/animations/blur-in.mjs +1 -1
  6. package/dist/animations/blur-out.js +2 -2
  7. package/dist/animations/blur-out.mjs +1 -1
  8. package/dist/animations/bounce.js +2 -2
  9. package/dist/animations/bounce.mjs +1 -1
  10. package/dist/animations/fade-down.js +2 -2
  11. package/dist/animations/fade-down.mjs +1 -1
  12. package/dist/animations/fade-in.js +2 -2
  13. package/dist/animations/fade-in.mjs +1 -1
  14. package/dist/animations/fade-left.js +2 -2
  15. package/dist/animations/fade-left.mjs +1 -1
  16. package/dist/animations/fade-out.js +2 -2
  17. package/dist/animations/fade-out.mjs +1 -1
  18. package/dist/animations/fade-right.js +2 -2
  19. package/dist/animations/fade-right.mjs +1 -1
  20. package/dist/animations/fade-up.js +2 -2
  21. package/dist/animations/fade-up.mjs +1 -1
  22. package/dist/animations/flip-in.js +2 -2
  23. package/dist/animations/flip-in.mjs +1 -1
  24. package/dist/animations/flip.js +2 -2
  25. package/dist/animations/flip.mjs +1 -1
  26. package/dist/animations/float.js +2 -2
  27. package/dist/animations/float.mjs +1 -1
  28. package/dist/animations/hover-lift.js +2 -2
  29. package/dist/animations/hover-lift.mjs +1 -1
  30. package/dist/animations/hover-scale.js +2 -2
  31. package/dist/animations/hover-scale.mjs +1 -1
  32. package/dist/animations/magnetic.js +2 -2
  33. package/dist/animations/magnetic.mjs +1 -1
  34. package/dist/animations/parallax.js +2 -2
  35. package/dist/animations/parallax.mjs +1 -1
  36. package/dist/animations/ping.js +2 -2
  37. package/dist/animations/ping.mjs +1 -1
  38. package/dist/animations/pop-in.js +2 -2
  39. package/dist/animations/pop-in.mjs +1 -1
  40. package/dist/animations/press.js +2 -2
  41. package/dist/animations/press.mjs +1 -1
  42. package/dist/animations/progress.js +2 -2
  43. package/dist/animations/progress.mjs +1 -1
  44. package/dist/animations/pulse.js +2 -2
  45. package/dist/animations/pulse.mjs +1 -1
  46. package/dist/animations/reorder.js +2 -2
  47. package/dist/animations/reorder.mjs +1 -1
  48. package/dist/animations/reveal-blur.js +2 -2
  49. package/dist/animations/reveal-blur.mjs +1 -1
  50. package/dist/animations/reveal-down.js +2 -2
  51. package/dist/animations/reveal-down.mjs +1 -1
  52. package/dist/animations/reveal-left.js +2 -2
  53. package/dist/animations/reveal-left.mjs +1 -1
  54. package/dist/animations/reveal-right.js +2 -2
  55. package/dist/animations/reveal-right.mjs +1 -1
  56. package/dist/animations/reveal-up.js +2 -2
  57. package/dist/animations/reveal-up.mjs +1 -1
  58. package/dist/animations/rotate-in.js +2 -2
  59. package/dist/animations/rotate-in.mjs +1 -1
  60. package/dist/animations/scale-in.js +2 -2
  61. package/dist/animations/scale-in.mjs +1 -1
  62. package/dist/animations/scale-out.js +2 -2
  63. package/dist/animations/scale-out.mjs +1 -1
  64. package/dist/animations/shake.js +2 -2
  65. package/dist/animations/shake.mjs +1 -1
  66. package/dist/animations/shared/create-motion-animation.d.ts.map +1 -1
  67. package/dist/animations/skeleton-shimmer.js +2 -2
  68. package/dist/animations/skeleton-shimmer.mjs +1 -1
  69. package/dist/animations/slide-down.js +2 -2
  70. package/dist/animations/slide-down.mjs +1 -1
  71. package/dist/animations/slide-left.js +2 -2
  72. package/dist/animations/slide-left.mjs +1 -1
  73. package/dist/animations/slide-right.js +2 -2
  74. package/dist/animations/slide-right.mjs +1 -1
  75. package/dist/animations/slide-up.js +2 -2
  76. package/dist/animations/slide-up.mjs +1 -1
  77. package/dist/animations/spin.js +2 -2
  78. package/dist/animations/spin.mjs +1 -1
  79. package/dist/animations/text-reveal.js +2 -2
  80. package/dist/animations/text-reveal.mjs +1 -1
  81. package/dist/animations/text-shimmer.js +2 -2
  82. package/dist/animations/text-shimmer.mjs +1 -1
  83. package/dist/animations/tilt.js +2 -2
  84. package/dist/animations/tilt.mjs +1 -1
  85. package/dist/animations/wiggle.js +2 -2
  86. package/dist/animations/wiggle.mjs +1 -1
  87. package/dist/chunk-2RBUROXJ.js +316 -0
  88. package/dist/chunk-2RBUROXJ.js.map +1 -0
  89. package/dist/{chunk-3W224B3M.js → chunk-3IBWZM52.js} +23 -3
  90. package/dist/chunk-3IBWZM52.js.map +1 -0
  91. package/dist/{chunk-466QDL44.js → chunk-3RHJJZIT.js} +24 -3
  92. package/dist/chunk-3RHJJZIT.js.map +1 -0
  93. package/dist/{chunk-LNYCEPW5.js → chunk-4GVMPQZS.js} +23 -2
  94. package/dist/chunk-4GVMPQZS.js.map +1 -0
  95. package/dist/chunk-4WRCXG5E.mjs +942 -0
  96. package/dist/chunk-4WRCXG5E.mjs.map +1 -0
  97. package/dist/chunk-6GPUHFXI.mjs +299 -0
  98. package/dist/chunk-6GPUHFXI.mjs.map +1 -0
  99. package/dist/{chunk-HLG2YJFZ.mjs → chunk-6ONKAOI7.mjs} +24 -3
  100. package/dist/chunk-6ONKAOI7.mjs.map +1 -0
  101. package/dist/chunk-6VZGM4DI.mjs +170 -0
  102. package/dist/chunk-6VZGM4DI.mjs.map +1 -0
  103. package/dist/{chunk-2ZKW2E7B.mjs → chunk-7PIOCFV3.mjs} +34 -4
  104. package/dist/chunk-7PIOCFV3.mjs.map +1 -0
  105. package/dist/{chunk-IM6KN77X.mjs → chunk-7XHWUEQR.mjs} +46 -4
  106. package/dist/chunk-7XHWUEQR.mjs.map +1 -0
  107. package/dist/{chunk-QHEHBC6M.js → chunk-AFBKMQMK.js} +46 -4
  108. package/dist/chunk-AFBKMQMK.js.map +1 -0
  109. package/dist/{chunk-NNZXBL7R.mjs → chunk-AS34PVUG.mjs} +24 -3
  110. package/dist/chunk-AS34PVUG.mjs.map +1 -0
  111. package/dist/{chunk-TTTYW3TR.js → chunk-B3LCKPBX.js} +23 -2
  112. package/dist/chunk-B3LCKPBX.js.map +1 -0
  113. package/dist/chunk-CARQELOX.mjs +101 -0
  114. package/dist/chunk-CARQELOX.mjs.map +1 -0
  115. package/dist/{chunk-CIEZFHCO.mjs → chunk-CCVQ5KX6.mjs} +24 -3
  116. package/dist/chunk-CCVQ5KX6.mjs.map +1 -0
  117. package/dist/{chunk-UR7TNW45.mjs → chunk-DBW25HOR.mjs} +68 -5
  118. package/dist/chunk-DBW25HOR.mjs.map +1 -0
  119. package/dist/chunk-DMDCXYNN.js +105 -0
  120. package/dist/chunk-DMDCXYNN.js.map +1 -0
  121. package/dist/{chunk-H7WDA6U6.mjs → chunk-EKLWWV3G.mjs} +23 -2
  122. package/dist/chunk-EKLWWV3G.mjs.map +1 -0
  123. package/dist/{chunk-OZHETX4J.mjs → chunk-ENV73575.mjs} +24 -3
  124. package/dist/chunk-ENV73575.mjs.map +1 -0
  125. package/dist/{chunk-7OVJXYSS.mjs → chunk-F4BM6LX2.mjs} +2 -2
  126. package/dist/{chunk-7OVJXYSS.mjs.map → chunk-F4BM6LX2.mjs.map} +1 -1
  127. package/dist/{chunk-ZX2IBIZT.js → chunk-FWY22BZZ.js} +46 -4
  128. package/dist/chunk-FWY22BZZ.js.map +1 -0
  129. package/dist/chunk-HI54NLVM.js +179 -0
  130. package/dist/chunk-HI54NLVM.js.map +1 -0
  131. package/dist/{chunk-BU2MPXPZ.js → chunk-IW2E4MLG.js} +24 -3
  132. package/dist/chunk-IW2E4MLG.js.map +1 -0
  133. package/dist/{chunk-DEZRB6DS.mjs → chunk-IZAQBJKT.mjs} +46 -4
  134. package/dist/chunk-IZAQBJKT.mjs.map +1 -0
  135. package/dist/{chunk-VHVQELWF.js → chunk-JGSQZZHF.js} +23 -3
  136. package/dist/chunk-JGSQZZHF.js.map +1 -0
  137. package/dist/{chunk-DFCDLVZA.js → chunk-JRB22VVK.js} +23 -2
  138. package/dist/chunk-JRB22VVK.js.map +1 -0
  139. package/dist/{chunk-XYEMP4K7.js → chunk-KC77BXBC.js} +24 -3
  140. package/dist/chunk-KC77BXBC.js.map +1 -0
  141. package/dist/{chunk-EIRCCTNA.js → chunk-KIAYTBS5.js} +24 -3
  142. package/dist/chunk-KIAYTBS5.js.map +1 -0
  143. package/dist/{chunk-UY65KX3M.js → chunk-KLGB3FYE.js} +46 -4
  144. package/dist/chunk-KLGB3FYE.js.map +1 -0
  145. package/dist/{chunk-C6NA452Q.mjs → chunk-NUYNJV5U.mjs} +3 -3
  146. package/dist/{chunk-C6NA452Q.mjs.map → chunk-NUYNJV5U.mjs.map} +1 -1
  147. package/dist/{chunk-EZCYSFML.mjs → chunk-O233I5N7.mjs} +23 -2
  148. package/dist/chunk-O233I5N7.mjs.map +1 -0
  149. package/dist/chunk-OEDD43IT.mjs +141 -0
  150. package/dist/chunk-OEDD43IT.mjs.map +1 -0
  151. package/dist/{chunk-3F4FF2H4.mjs → chunk-OY3YJGOX.mjs} +23 -3
  152. package/dist/chunk-OY3YJGOX.mjs.map +1 -0
  153. package/dist/{chunk-INXWZ4DS.js → chunk-PZBTZGJE.js} +46 -4
  154. package/dist/chunk-PZBTZGJE.js.map +1 -0
  155. package/dist/{chunk-2F7P4EJQ.js → chunk-QCHHXFJQ.js} +25 -4
  156. package/dist/chunk-QCHHXFJQ.js.map +1 -0
  157. package/dist/{chunk-CSFLMMAT.mjs → chunk-REDZL4DY.mjs} +23 -2
  158. package/dist/chunk-REDZL4DY.mjs.map +1 -0
  159. package/dist/{chunk-BJSWQQSC.mjs → chunk-RFBTMJ2Z.mjs} +24 -3
  160. package/dist/chunk-RFBTMJ2Z.mjs.map +1 -0
  161. package/dist/chunk-S4NQTWMW.mjs +121 -0
  162. package/dist/chunk-S4NQTWMW.mjs.map +1 -0
  163. package/dist/{chunk-X3O45MPI.js → chunk-SRLYXLUU.js} +44 -2
  164. package/dist/chunk-SRLYXLUU.js.map +1 -0
  165. package/dist/{chunk-6HPS3ZOP.js → chunk-U7FZ5RMV.js} +68 -5
  166. package/dist/chunk-U7FZ5RMV.js.map +1 -0
  167. package/dist/{chunk-OL3BJSRC.mjs → chunk-UMXCV5IT.mjs} +68 -5
  168. package/dist/chunk-UMXCV5IT.mjs.map +1 -0
  169. package/dist/{chunk-IL4LH2XX.js → chunk-UNPKDNLA.js} +68 -5
  170. package/dist/chunk-UNPKDNLA.js.map +1 -0
  171. package/dist/{chunk-OKCC7E36.js → chunk-UOZZUWIX.js} +6 -6
  172. package/dist/{chunk-OKCC7E36.js.map → chunk-UOZZUWIX.js.map} +1 -1
  173. package/dist/{chunk-ORFI4BCJ.mjs → chunk-URXYF25P.mjs} +44 -2
  174. package/dist/chunk-URXYF25P.mjs.map +1 -0
  175. package/dist/{chunk-5565GZ4T.js → chunk-VGVB5XZX.js} +24 -3
  176. package/dist/chunk-VGVB5XZX.js.map +1 -0
  177. package/dist/{chunk-PYUZOVLY.js → chunk-VJSME7ML.js} +23 -2
  178. package/dist/{chunk-EZCYSFML.mjs.map → chunk-VJSME7ML.js.map} +1 -1
  179. package/dist/{chunk-SSJXWD2M.mjs → chunk-VO7LNOC5.mjs} +46 -4
  180. package/dist/chunk-VO7LNOC5.mjs.map +1 -0
  181. package/dist/{chunk-ECLHBSC6.mjs → chunk-VX56EVPF.mjs} +25 -4
  182. package/dist/chunk-VX56EVPF.mjs.map +1 -0
  183. package/dist/{chunk-R2JJTREQ.mjs → chunk-W73CZFMA.mjs} +23 -3
  184. package/dist/chunk-W73CZFMA.mjs.map +1 -0
  185. package/dist/{chunk-3J3FYIG3.js → chunk-WRHUWKZS.js} +34 -4
  186. package/dist/chunk-WRHUWKZS.js.map +1 -0
  187. package/dist/{chunk-NSJ6KGW2.js → chunk-WVBFSJEB.js} +24 -3
  188. package/dist/chunk-WVBFSJEB.js.map +1 -0
  189. package/dist/chunk-XIG2QDVN.js +145 -0
  190. package/dist/chunk-XIG2QDVN.js.map +1 -0
  191. package/dist/{chunk-HNLQXHSQ.mjs → chunk-XJFDGKZO.mjs} +24 -3
  192. package/dist/chunk-XJFDGKZO.mjs.map +1 -0
  193. package/dist/{chunk-GRJFGIZC.mjs → chunk-XOYCFLEZ.mjs} +46 -4
  194. package/dist/chunk-XOYCFLEZ.mjs.map +1 -0
  195. package/dist/chunk-XYKDSHRG.js +944 -0
  196. package/dist/chunk-XYKDSHRG.js.map +1 -0
  197. package/dist/{chunk-UROKWFPX.mjs → chunk-YFXGRV7X.mjs} +23 -2
  198. package/dist/chunk-YFXGRV7X.mjs.map +1 -0
  199. package/dist/{chunk-R5LL56ZO.js → chunk-ZHXYGUMA.js} +2 -2
  200. package/dist/{chunk-R5LL56ZO.js.map → chunk-ZHXYGUMA.js.map} +1 -1
  201. package/dist/chunk-ZZ53RJNH.js +128 -0
  202. package/dist/chunk-ZZ53RJNH.js.map +1 -0
  203. package/dist/design-system/accordion.d.ts +42 -0
  204. package/dist/design-system/accordion.d.ts.map +1 -1
  205. package/dist/design-system/alert.d.ts +21 -0
  206. package/dist/design-system/alert.d.ts.map +1 -1
  207. package/dist/design-system/animated-number.d.ts +21 -0
  208. package/dist/design-system/animated-number.d.ts.map +1 -1
  209. package/dist/design-system/avatar.d.ts +21 -0
  210. package/dist/design-system/avatar.d.ts.map +1 -1
  211. package/dist/design-system/badge.d.ts +42 -0
  212. package/dist/design-system/badge.d.ts.map +1 -1
  213. package/dist/design-system/breadcrumb.d.ts +21 -0
  214. package/dist/design-system/breadcrumb.d.ts.map +1 -1
  215. package/dist/design-system/button.d.ts +22 -1
  216. package/dist/design-system/button.d.ts.map +1 -1
  217. package/dist/design-system/card.d.ts +21 -0
  218. package/dist/design-system/card.d.ts.map +1 -1
  219. package/dist/design-system/checkbox.d.ts +22 -1
  220. package/dist/design-system/checkbox.d.ts.map +1 -1
  221. package/dist/design-system/command.d.ts +21 -0
  222. package/dist/design-system/command.d.ts.map +1 -1
  223. package/dist/design-system/context-menu.d.ts +21 -0
  224. package/dist/design-system/context-menu.d.ts.map +1 -1
  225. package/dist/design-system/copy-button.d.ts +22 -1
  226. package/dist/design-system/copy-button.d.ts.map +1 -1
  227. package/dist/design-system/divider.d.ts +21 -0
  228. package/dist/design-system/divider.d.ts.map +1 -1
  229. package/dist/design-system/drawer.d.ts +42 -0
  230. package/dist/design-system/drawer.d.ts.map +1 -1
  231. package/dist/design-system/dropdown.d.ts +42 -0
  232. package/dist/design-system/dropdown.d.ts.map +1 -1
  233. package/dist/design-system/dynamic-stepper.d.ts +98 -6
  234. package/dist/design-system/dynamic-stepper.d.ts.map +1 -1
  235. package/dist/design-system/empty-state.d.ts +21 -0
  236. package/dist/design-system/empty-state.d.ts.map +1 -1
  237. package/dist/design-system/file-upload.d.ts +21 -0
  238. package/dist/design-system/file-upload.d.ts.map +1 -1
  239. package/dist/design-system/index.d.ts +0 -1
  240. package/dist/design-system/index.d.ts.map +1 -1
  241. package/dist/design-system/inputs.d.ts +173 -0
  242. package/dist/design-system/inputs.d.ts.map +1 -1
  243. package/dist/design-system/kbd.d.ts +23 -1
  244. package/dist/design-system/kbd.d.ts.map +1 -1
  245. package/dist/design-system/marquee.d.ts +30 -9
  246. package/dist/design-system/marquee.d.ts.map +1 -1
  247. package/dist/design-system/modal.d.ts +42 -0
  248. package/dist/design-system/modal.d.ts.map +1 -1
  249. package/dist/design-system/otp-input.d.ts +21 -0
  250. package/dist/design-system/otp-input.d.ts.map +1 -1
  251. package/dist/design-system/pagination.d.ts +21 -0
  252. package/dist/design-system/pagination.d.ts.map +1 -1
  253. package/dist/design-system/popover.d.ts +20 -0
  254. package/dist/design-system/popover.d.ts.map +1 -1
  255. package/dist/design-system/progress.d.ts +21 -0
  256. package/dist/design-system/progress.d.ts.map +1 -1
  257. package/dist/design-system/radio-group.d.ts +21 -0
  258. package/dist/design-system/radio-group.d.ts.map +1 -1
  259. package/dist/design-system/rating.d.ts +21 -0
  260. package/dist/design-system/rating.d.ts.map +1 -1
  261. package/dist/design-system/scroll-area.d.ts +21 -0
  262. package/dist/design-system/scroll-area.d.ts.map +1 -1
  263. package/dist/design-system/select.d.ts +63 -0
  264. package/dist/design-system/select.d.ts.map +1 -1
  265. package/dist/design-system/skeleton.d.ts +63 -0
  266. package/dist/design-system/skeleton.d.ts.map +1 -1
  267. package/dist/design-system/slider.d.ts +22 -1
  268. package/dist/design-system/slider.d.ts.map +1 -1
  269. package/dist/design-system/spinner.d.ts +21 -0
  270. package/dist/design-system/spinner.d.ts.map +1 -1
  271. package/dist/design-system/table.d.ts +63 -0
  272. package/dist/design-system/table.d.ts.map +1 -1
  273. package/dist/design-system/tabs.d.ts +21 -0
  274. package/dist/design-system/tabs.d.ts.map +1 -1
  275. package/dist/design-system/timeline.d.ts +30 -9
  276. package/dist/design-system/timeline.d.ts.map +1 -1
  277. package/dist/design-system/toast.d.ts +21 -0
  278. package/dist/design-system/toast.d.ts.map +1 -1
  279. package/dist/design-system/toggle.d.ts +30 -0
  280. package/dist/design-system/toggle.d.ts.map +1 -1
  281. package/dist/design-system/tooltip.d.ts +20 -0
  282. package/dist/design-system/tooltip.d.ts.map +1 -1
  283. package/dist/design-system/tree-view.d.ts +42 -0
  284. package/dist/design-system/tree-view.d.ts.map +1 -1
  285. package/dist/design-system/typography.d.ts +1 -1
  286. package/dist/test-utils/axe.d.ts +30 -0
  287. package/dist/test-utils/axe.d.ts.map +1 -0
  288. package/dist/ui/accordion/animated.js +7 -7
  289. package/dist/ui/accordion/animated.mjs +2 -2
  290. package/dist/ui/accordion/variants.d.ts +2 -2
  291. package/dist/ui/accordion.js +9 -9
  292. package/dist/ui/accordion.mjs +2 -2
  293. package/dist/ui/alert/animated.js +2 -2
  294. package/dist/ui/alert/animated.mjs +1 -1
  295. package/dist/ui/alert/variants.d.ts +1 -1
  296. package/dist/ui/alert.js +10 -10
  297. package/dist/ui/alert.mjs +2 -2
  298. package/dist/ui/animated-number/variants.d.ts +1 -1
  299. package/dist/ui/animated-number.js +21 -0
  300. package/dist/ui/animated-number.js.map +1 -1
  301. package/dist/ui/animated-number.mjs +21 -0
  302. package/dist/ui/animated-number.mjs.map +1 -1
  303. package/dist/ui/avatar/animated.js +5 -5
  304. package/dist/ui/avatar/animated.mjs +2 -2
  305. package/dist/ui/avatar/variants.d.ts +1 -1
  306. package/dist/ui/avatar.js +9 -9
  307. package/dist/ui/avatar.mjs +2 -2
  308. package/dist/ui/badge/animated.js +2 -2
  309. package/dist/ui/badge/animated.mjs +1 -1
  310. package/dist/ui/badge/variants.d.ts +22 -1
  311. package/dist/ui/badge/variants.d.ts.map +1 -1
  312. package/dist/ui/badge.js +4 -4
  313. package/dist/ui/badge.mjs +2 -2
  314. package/dist/ui/breadcrumb/variants.d.ts +1 -1
  315. package/dist/ui/breadcrumb.js +21 -0
  316. package/dist/ui/breadcrumb.js.map +1 -1
  317. package/dist/ui/breadcrumb.mjs +21 -0
  318. package/dist/ui/breadcrumb.mjs.map +1 -1
  319. package/dist/ui/buttons/animated.js +3 -3
  320. package/dist/ui/buttons/animated.mjs +1 -1
  321. package/dist/ui/buttons/variants.d.ts +1 -1
  322. package/dist/ui/buttons.js +4 -4
  323. package/dist/ui/buttons.mjs +2 -2
  324. package/dist/ui/card/animated.js +7 -7
  325. package/dist/ui/card/animated.mjs +2 -2
  326. package/dist/ui/card/variants.d.ts +1 -1
  327. package/dist/ui/card.js +12 -12
  328. package/dist/ui/card.mjs +2 -2
  329. package/dist/ui/checkbox/animated.js +4 -4
  330. package/dist/ui/checkbox/animated.mjs +1 -1
  331. package/dist/ui/checkbox/variants.d.ts +1 -1
  332. package/dist/ui/checkbox.js +8 -8
  333. package/dist/ui/checkbox.mjs +2 -2
  334. package/dist/ui/command/animated.js +2 -2
  335. package/dist/ui/command/animated.mjs +1 -1
  336. package/dist/ui/command/variants.d.ts +1 -1
  337. package/dist/ui/command.js +15 -15
  338. package/dist/ui/command.mjs +2 -2
  339. package/dist/ui/context-menu/variants.d.ts +1 -1
  340. package/dist/ui/context-menu.js +47 -26
  341. package/dist/ui/context-menu.js.map +1 -1
  342. package/dist/ui/context-menu.mjs +23 -2
  343. package/dist/ui/context-menu.mjs.map +1 -1
  344. package/dist/ui/copy-button/animated.js +2 -2
  345. package/dist/ui/copy-button/animated.mjs +1 -1
  346. package/dist/ui/copy-button/variants.d.ts +1 -1
  347. package/dist/ui/copy-button.js +3 -3
  348. package/dist/ui/copy-button.mjs +2 -2
  349. package/dist/ui/divider/animated.js +2 -2
  350. package/dist/ui/divider/animated.mjs +1 -1
  351. package/dist/ui/divider/variants.d.ts +2 -2
  352. package/dist/ui/divider.js +6 -6
  353. package/dist/ui/divider.mjs +2 -2
  354. package/dist/ui/drawer/animated.js +11 -11
  355. package/dist/ui/drawer/animated.mjs +2 -2
  356. package/dist/ui/drawer/variants.d.ts +2 -2
  357. package/dist/ui/drawer.js +11 -11
  358. package/dist/ui/drawer.mjs +1 -1
  359. package/dist/ui/dropdown/types.d.ts +2 -1
  360. package/dist/ui/dropdown/types.d.ts.map +1 -1
  361. package/dist/ui/dropdown/variants.d.ts +2 -2
  362. package/dist/ui/dropdown.js +9 -9
  363. package/dist/ui/dropdown.mjs +1 -1
  364. package/dist/ui/dynamic-stepper/variants.d.ts +2 -2
  365. package/dist/ui/dynamic-stepper/variants.d.ts.map +1 -1
  366. package/dist/ui/dynamic-stepper.js +7 -8
  367. package/dist/ui/dynamic-stepper.js.map +1 -1
  368. package/dist/ui/dynamic-stepper.mjs +5 -6
  369. package/dist/ui/dynamic-stepper.mjs.map +1 -1
  370. package/dist/ui/empty-state/animated.js +2 -2
  371. package/dist/ui/empty-state/animated.mjs +1 -1
  372. package/dist/ui/empty-state/variants.d.ts +1 -1
  373. package/dist/ui/empty-state.js +10 -10
  374. package/dist/ui/empty-state.mjs +2 -2
  375. package/dist/ui/file-upload/variants.d.ts +1 -1
  376. package/dist/ui/file-upload.js +22 -1
  377. package/dist/ui/file-upload.js.map +1 -1
  378. package/dist/ui/file-upload.mjs +22 -1
  379. package/dist/ui/file-upload.mjs.map +1 -1
  380. package/dist/ui/inputs/animated.js +3 -3
  381. package/dist/ui/inputs/animated.mjs +1 -1
  382. package/dist/ui/inputs/variants.d.ts +1 -1
  383. package/dist/ui/inputs/variants.d.ts.map +1 -1
  384. package/dist/ui/inputs.js +4 -4
  385. package/dist/ui/inputs.mjs +2 -2
  386. package/dist/ui/kbd/animated.js +2 -2
  387. package/dist/ui/kbd/animated.mjs +1 -1
  388. package/dist/ui/kbd/variants.d.ts +1 -1
  389. package/dist/ui/kbd/variants.d.ts.map +1 -1
  390. package/dist/ui/kbd.js +4 -4
  391. package/dist/ui/kbd.mjs +2 -2
  392. package/dist/ui/marquee/variants.d.ts +1 -1
  393. package/dist/ui/marquee.js +30 -9
  394. package/dist/ui/marquee.js.map +1 -1
  395. package/dist/ui/marquee.mjs +30 -9
  396. package/dist/ui/marquee.mjs.map +1 -1
  397. package/dist/ui/modal/animated.js +4 -4
  398. package/dist/ui/modal/animated.mjs +1 -1
  399. package/dist/ui/modal/variants.d.ts +2 -2
  400. package/dist/ui/modal.js +12 -12
  401. package/dist/ui/modal.mjs +2 -2
  402. package/dist/ui/otp-input/variants.d.ts +1 -1
  403. package/dist/ui/otp-input.js +22 -1
  404. package/dist/ui/otp-input.js.map +1 -1
  405. package/dist/ui/otp-input.mjs +22 -1
  406. package/dist/ui/otp-input.mjs.map +1 -1
  407. package/dist/ui/pagination/types.d.ts +4 -2
  408. package/dist/ui/pagination/types.d.ts.map +1 -1
  409. package/dist/ui/pagination/variants.d.ts +1 -1
  410. package/dist/ui/pagination.js +26 -5
  411. package/dist/ui/pagination.js.map +1 -1
  412. package/dist/ui/pagination.mjs +23 -2
  413. package/dist/ui/pagination.mjs.map +1 -1
  414. package/dist/ui/popover/animated.js +4 -4
  415. package/dist/ui/popover/animated.mjs +1 -1
  416. package/dist/ui/popover/variants.d.ts +1 -1
  417. package/dist/ui/popover.js +7 -7
  418. package/dist/ui/popover.mjs +1 -1
  419. package/dist/ui/progress/animated.js +8 -8
  420. package/dist/ui/progress/animated.mjs +2 -2
  421. package/dist/ui/progress/variants.d.ts +1 -1
  422. package/dist/ui/progress.js +9 -9
  423. package/dist/ui/progress.mjs +2 -2
  424. package/dist/ui/radio-group/animated.js +7 -7
  425. package/dist/ui/radio-group/animated.mjs +1 -1
  426. package/dist/ui/radio-group/variants.d.ts +1 -1
  427. package/dist/ui/radio-group.js +11 -11
  428. package/dist/ui/radio-group.mjs +2 -2
  429. package/dist/ui/rating/variants.d.ts +1 -1
  430. package/dist/ui/rating.js +22 -1
  431. package/dist/ui/rating.js.map +1 -1
  432. package/dist/ui/rating.mjs +22 -1
  433. package/dist/ui/rating.mjs.map +1 -1
  434. package/dist/ui/scroll-area/variants.d.ts +1 -1
  435. package/dist/ui/scroll-area.js +22 -1
  436. package/dist/ui/scroll-area.js.map +1 -1
  437. package/dist/ui/scroll-area.mjs +22 -1
  438. package/dist/ui/scroll-area.mjs.map +1 -1
  439. package/dist/ui/search.js +2 -2
  440. package/dist/ui/search.mjs +1 -1
  441. package/dist/ui/select/select.d.ts +2 -2
  442. package/dist/ui/select/select.d.ts.map +1 -1
  443. package/dist/ui/select/types.d.ts +4 -1
  444. package/dist/ui/select/types.d.ts.map +1 -1
  445. package/dist/ui/select/variants.d.ts +3 -3
  446. package/dist/ui/select.js +92 -7
  447. package/dist/ui/select.js.map +1 -1
  448. package/dist/ui/select.mjs +93 -8
  449. package/dist/ui/select.mjs.map +1 -1
  450. package/dist/ui/skeleton/animated.js +8 -8
  451. package/dist/ui/skeleton/animated.mjs +1 -1
  452. package/dist/ui/skeleton/variants.d.ts +23 -2
  453. package/dist/ui/skeleton/variants.d.ts.map +1 -1
  454. package/dist/ui/skeleton.js +9 -9
  455. package/dist/ui/skeleton.mjs +1 -1
  456. package/dist/ui/slider/variants.d.ts +1 -1
  457. package/dist/ui/slider.js +23 -2
  458. package/dist/ui/slider.js.map +1 -1
  459. package/dist/ui/slider.mjs +23 -2
  460. package/dist/ui/slider.mjs.map +1 -1
  461. package/dist/ui/spinner/animated/variants.d.ts +1 -1
  462. package/dist/ui/spinner/animated.js +22 -1
  463. package/dist/ui/spinner/animated.js.map +1 -1
  464. package/dist/ui/spinner/animated.mjs +22 -1
  465. package/dist/ui/spinner/animated.mjs.map +1 -1
  466. package/dist/ui/table/animated.js +8 -8
  467. package/dist/ui/table/animated.mjs +2 -2
  468. package/dist/ui/table/variants.d.ts +3 -3
  469. package/dist/ui/table.js +14 -14
  470. package/dist/ui/table.mjs +1 -1
  471. package/dist/ui/tabs/animated.js +2 -2
  472. package/dist/ui/tabs/animated.mjs +1 -1
  473. package/dist/ui/tabs/types.d.ts +4 -2
  474. package/dist/ui/tabs/types.d.ts.map +1 -1
  475. package/dist/ui/tabs/variants.d.ts +1 -1
  476. package/dist/ui/tabs.js +9 -9
  477. package/dist/ui/tabs.mjs +1 -1
  478. package/dist/ui/timeline/animated.js +11 -11
  479. package/dist/ui/timeline/animated.mjs +2 -2
  480. package/dist/ui/timeline/variants.d.ts +1 -1
  481. package/dist/ui/timeline.js +14 -14
  482. package/dist/ui/timeline.mjs +2 -2
  483. package/dist/ui/toast/animated.js +7 -7
  484. package/dist/ui/toast/animated.mjs +1 -1
  485. package/dist/ui/toast/variants.d.ts +1 -1
  486. package/dist/ui/toast.js +12 -12
  487. package/dist/ui/toast.mjs +1 -1
  488. package/dist/ui/toggle/animated.js +4 -4
  489. package/dist/ui/toggle/animated.mjs +1 -1
  490. package/dist/ui/toggle/variants.d.ts +2 -2
  491. package/dist/ui/toggle.js +4 -4
  492. package/dist/ui/toggle.mjs +2 -2
  493. package/dist/ui/tooltip/animated.js +3 -3
  494. package/dist/ui/tooltip/animated.mjs +1 -1
  495. package/dist/ui/tooltip/types.d.ts +3 -1
  496. package/dist/ui/tooltip/types.d.ts.map +1 -1
  497. package/dist/ui/tooltip/variants.d.ts +1 -1
  498. package/dist/ui/tooltip.js +7 -7
  499. package/dist/ui/tooltip.mjs +1 -1
  500. package/dist/ui/tree-view/animated.js +2 -2
  501. package/dist/ui/tree-view/animated.mjs +1 -1
  502. package/dist/ui/tree-view/variants.d.ts +2 -2
  503. package/dist/ui/tree-view.js +5 -5
  504. package/dist/ui/tree-view.mjs +2 -2
  505. package/dist/ui/typography.js +1 -1
  506. package/dist/ui/typography.js.map +1 -1
  507. package/dist/ui/typography.mjs +1 -1
  508. package/dist/ui/typography.mjs.map +1 -1
  509. package/package.json +6 -3
  510. package/src/animations/animations.test.tsx +1 -2
  511. package/src/animations/shared/create-motion-animation.tsx +3 -1
  512. package/src/design-system/accordion.ts +66 -0
  513. package/src/design-system/alert.ts +33 -0
  514. package/src/design-system/animated-number.ts +33 -0
  515. package/src/design-system/avatar.ts +33 -0
  516. package/src/design-system/badge.ts +33 -0
  517. package/src/design-system/breadcrumb.ts +33 -0
  518. package/src/design-system/button.ts +34 -1
  519. package/src/design-system/card.ts +33 -0
  520. package/src/design-system/checkbox.ts +34 -1
  521. package/src/design-system/command.ts +33 -0
  522. package/src/design-system/context-menu.ts +21 -0
  523. package/src/design-system/copy-button.ts +34 -1
  524. package/src/design-system/divider.ts +33 -0
  525. package/src/design-system/drawer.ts +66 -0
  526. package/src/design-system/dropdown.ts +66 -0
  527. package/src/design-system/dynamic-stepper.ts +7 -29
  528. package/src/design-system/empty-state.ts +33 -0
  529. package/src/design-system/file-upload.ts +33 -0
  530. package/src/design-system/index.ts +0 -1
  531. package/src/design-system/inputs.ts +273 -0
  532. package/src/design-system/kbd.ts +37 -1
  533. package/src/design-system/marquee.ts +42 -9
  534. package/src/design-system/modal.ts +66 -0
  535. package/src/design-system/otp-input.ts +33 -0
  536. package/src/design-system/pagination.ts +33 -0
  537. package/src/design-system/popover.ts +31 -0
  538. package/src/design-system/progress.ts +33 -0
  539. package/src/design-system/radio-group.ts +33 -0
  540. package/src/design-system/rating.ts +33 -0
  541. package/src/design-system/scroll-area.ts +33 -0
  542. package/src/design-system/select.ts +99 -0
  543. package/src/design-system/skeleton.ts +75 -0
  544. package/src/design-system/slider.ts +34 -2
  545. package/src/design-system/spinner.ts +33 -0
  546. package/src/design-system/table.ts +99 -0
  547. package/src/design-system/tabs.ts +33 -0
  548. package/src/design-system/timeline.ts +42 -9
  549. package/src/design-system/toast.ts +33 -0
  550. package/src/design-system/toggle.ts +48 -0
  551. package/src/design-system/tooltip.ts +31 -0
  552. package/src/design-system/tree-view.ts +66 -0
  553. package/src/design-system/typography.ts +1 -1
  554. package/src/ui/accessibility/axe-core.test.tsx +139 -0
  555. package/src/ui/dropdown/types.ts +3 -27
  556. package/src/ui/dynamic-stepper/variants.ts +7 -3
  557. package/src/ui/inputs/variants.ts +492 -90
  558. package/src/ui/kbd/variants.ts +8 -10
  559. package/src/ui/pagination/types.ts +4 -2
  560. package/src/ui/select/select.test.tsx +24 -0
  561. package/src/ui/select/select.tsx +37 -4
  562. package/src/ui/select/types.ts +4 -23
  563. package/src/ui/tabs/types.ts +5 -42
  564. package/src/ui/tooltip/types.ts +4 -24
  565. package/dist/chunk-2F7P4EJQ.js.map +0 -1
  566. package/dist/chunk-2ZKW2E7B.mjs.map +0 -1
  567. package/dist/chunk-3F4FF2H4.mjs.map +0 -1
  568. package/dist/chunk-3J3FYIG3.js.map +0 -1
  569. package/dist/chunk-3W224B3M.js.map +0 -1
  570. package/dist/chunk-466QDL44.js.map +0 -1
  571. package/dist/chunk-5565GZ4T.js.map +0 -1
  572. package/dist/chunk-6HPS3ZOP.js.map +0 -1
  573. package/dist/chunk-7XCUMSCJ.mjs +0 -80
  574. package/dist/chunk-7XCUMSCJ.mjs.map +0 -1
  575. package/dist/chunk-BJSWQQSC.mjs.map +0 -1
  576. package/dist/chunk-BU2MPXPZ.js.map +0 -1
  577. package/dist/chunk-CIEZFHCO.mjs.map +0 -1
  578. package/dist/chunk-CJXGDY7A.mjs +0 -122
  579. package/dist/chunk-CJXGDY7A.mjs.map +0 -1
  580. package/dist/chunk-CSFLMMAT.mjs.map +0 -1
  581. package/dist/chunk-D3VZKUMH.mjs +0 -340
  582. package/dist/chunk-D3VZKUMH.mjs.map +0 -1
  583. package/dist/chunk-DEZRB6DS.mjs.map +0 -1
  584. package/dist/chunk-DFCDLVZA.js.map +0 -1
  585. package/dist/chunk-ECLHBSC6.mjs.map +0 -1
  586. package/dist/chunk-EIRCCTNA.js.map +0 -1
  587. package/dist/chunk-GRJFGIZC.mjs.map +0 -1
  588. package/dist/chunk-H7WDA6U6.mjs.map +0 -1
  589. package/dist/chunk-HLG2YJFZ.mjs.map +0 -1
  590. package/dist/chunk-HNLQXHSQ.mjs.map +0 -1
  591. package/dist/chunk-IL4LH2XX.js.map +0 -1
  592. package/dist/chunk-IM6KN77X.mjs.map +0 -1
  593. package/dist/chunk-INXWZ4DS.js.map +0 -1
  594. package/dist/chunk-LNYCEPW5.js.map +0 -1
  595. package/dist/chunk-NFEA5TN2.js +0 -158
  596. package/dist/chunk-NFEA5TN2.js.map +0 -1
  597. package/dist/chunk-NMQAHUYA.mjs +0 -149
  598. package/dist/chunk-NMQAHUYA.mjs.map +0 -1
  599. package/dist/chunk-NNZXBL7R.mjs.map +0 -1
  600. package/dist/chunk-NSJ6KGW2.js.map +0 -1
  601. package/dist/chunk-OL3BJSRC.mjs.map +0 -1
  602. package/dist/chunk-ORFI4BCJ.mjs.map +0 -1
  603. package/dist/chunk-OZHETX4J.mjs.map +0 -1
  604. package/dist/chunk-PYUZOVLY.js.map +0 -1
  605. package/dist/chunk-QHEHBC6M.js.map +0 -1
  606. package/dist/chunk-R2JJTREQ.mjs.map +0 -1
  607. package/dist/chunk-RFT2FLQT.js +0 -126
  608. package/dist/chunk-RFT2FLQT.js.map +0 -1
  609. package/dist/chunk-RIHJAEOL.js +0 -107
  610. package/dist/chunk-RIHJAEOL.js.map +0 -1
  611. package/dist/chunk-SSJXWD2M.mjs.map +0 -1
  612. package/dist/chunk-TTTYW3TR.js.map +0 -1
  613. package/dist/chunk-UGH23TAH.js +0 -342
  614. package/dist/chunk-UGH23TAH.js.map +0 -1
  615. package/dist/chunk-UPZ5XGUD.mjs +0 -100
  616. package/dist/chunk-UPZ5XGUD.mjs.map +0 -1
  617. package/dist/chunk-UR7TNW45.mjs.map +0 -1
  618. package/dist/chunk-UROKWFPX.mjs.map +0 -1
  619. package/dist/chunk-UY65KX3M.js.map +0 -1
  620. package/dist/chunk-V5JTDRV5.mjs +0 -278
  621. package/dist/chunk-V5JTDRV5.mjs.map +0 -1
  622. package/dist/chunk-VHVQELWF.js.map +0 -1
  623. package/dist/chunk-X3O45MPI.js.map +0 -1
  624. package/dist/chunk-XYEMP4K7.js.map +0 -1
  625. package/dist/chunk-Z4KHAD6Y.js +0 -295
  626. package/dist/chunk-Z4KHAD6Y.js.map +0 -1
  627. package/dist/chunk-ZUT7ZUM7.js +0 -84
  628. package/dist/chunk-ZUT7ZUM7.js.map +0 -1
  629. package/dist/chunk-ZX2IBIZT.js.map +0 -1
  630. package/dist/design-system/stepper.d.ts +0 -42
  631. package/dist/design-system/stepper.d.ts.map +0 -1
  632. package/dist/ui/stepper/index.d.ts +0 -4
  633. package/dist/ui/stepper/index.d.ts.map +0 -1
  634. package/dist/ui/stepper/stepper.d.ts +0 -28
  635. package/dist/ui/stepper/stepper.d.ts.map +0 -1
  636. package/dist/ui/stepper/types.d.ts +0 -25
  637. package/dist/ui/stepper/types.d.ts.map +0 -1
  638. package/dist/ui/stepper/variants.d.ts +0 -11
  639. package/dist/ui/stepper/variants.d.ts.map +0 -1
  640. package/dist/ui/stepper.js +0 -216
  641. package/dist/ui/stepper.js.map +0 -1
  642. package/dist/ui/stepper.mjs +0 -207
  643. package/dist/ui/stepper.mjs.map +0 -1
  644. package/src/design-system/stepper.ts +0 -66
  645. package/src/ui/stepper/index.ts +0 -22
  646. package/src/ui/stepper/stepper.test.tsx +0 -190
  647. package/src/ui/stepper/stepper.tsx +0 -171
  648. package/src/ui/stepper/types.ts +0 -38
  649. package/src/ui/stepper/variants.ts +0 -40
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/design-system/tree-view.ts","../src/ui/tree-view/variants.ts","../src/ui/tree-view/tree-view-base.tsx"],"names":["cva","createContext","useContext","jsx","jsxs","FaChevronRight","cn","useState","useMemo","useCallback","useRef"],"mappings":"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","file":"chunk-QHEHBC6M.js","sourcesContent":["export const zuiTreeViewBase =\n \"w-full text-[color:var(--zui-tree-view-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-tree-view-fg-dark,oklch(92.9%_0.013_255.508))]\";\n\nexport const zuiTreeViewAppearances = {\n default:\n \"rounded-xl border border-[color:var(--zui-tree-view-default-border,#0000001a)] dark:border-[color:var(--zui-tree-view-default-border-dark,#ffffff1a)] p-2\",\n outline:\n \"rounded-xl border border-[color:var(--zui-tree-view-outline-border,#00000026)] dark:border-[color:var(--zui-tree-view-outline-border-dark,#ffffff26)] p-2\",\n ghost: \"p-1\",\n card: \"rounded-xl border border-[color:var(--zui-tree-view-card-border,#0000001a)] dark:border-[color:var(--zui-tree-view-card-border-dark,#ffffff1a)] bg-[var(--zui-tree-view-card-bg,#0000000d)] dark:bg-[var(--zui-tree-view-card-bg-dark,#00000099)] p-3\",\n separated:\n \"rounded-xl border border-[color:var(--zui-tree-view-separated-border,#0000001a)] dark:border-[color:var(--zui-tree-view-separated-border-dark,#ffffff1a)] bg-[var(--zui-tree-view-separated-bg,oklch(98.4%_0.003_247.858_/_0.4))] dark:bg-[var(--zui-tree-view-separated-bg-dark,oklch(12.9%_0.042_264.695_/_0.4))] p-3\",\n sky: \"rounded-xl border border-[color:var(--zui-tree-view-sky-border,oklch(44.3%_0.11_240.79))] dark:border-[color:var(--zui-tree-view-sky-border-dark,oklch(58.8%_0.158_241.966))] p-2\",\n rose: \"rounded-xl border border-[color:var(--zui-tree-view-rose-border,oklch(45.5%_0.188_13.697))] dark:border-[color:var(--zui-tree-view-rose-border-dark,oklch(58.6%_0.253_17.585))] p-2\",\n purple:\n \"rounded-xl border border-[color:var(--zui-tree-view-purple-border,oklch(43.8%_0.218_303.724))] dark:border-[color:var(--zui-tree-view-purple-border-dark,oklch(55.8%_0.288_302.321))] p-2\",\n pink: \"rounded-xl border border-[color:var(--zui-tree-view-pink-border,oklch(45.9%_0.187_3.815))] dark:border-[color:var(--zui-tree-view-pink-border-dark,oklch(59.2%_0.249_0.584))] p-2\",\n orange:\n \"rounded-xl border border-[color:var(--zui-tree-view-orange-border,oklch(47%_0.157_37.304))] dark:border-[color:var(--zui-tree-view-orange-border-dark,oklch(64.6%_0.222_41.116))] p-2\",\n yellow:\n \"rounded-xl border border-[color:var(--zui-tree-view-yellow-border,oklch(47.6%_0.114_61.907))] dark:border-[color:var(--zui-tree-view-yellow-border-dark,oklch(68.1%_0.162_75.834))] p-2\",\n teal: \"rounded-xl border border-[color:var(--zui-tree-view-teal-border,oklch(43.7%_0.078_188.216))] dark:border-[color:var(--zui-tree-view-teal-border-dark,oklch(60%_0.118_184.704))] p-2\",\n indigo:\n \"rounded-xl border border-[color:var(--zui-tree-view-indigo-border,oklch(39.8%_0.195_277.366))] dark:border-[color:var(--zui-tree-view-indigo-border-dark,oklch(51.1%_0.262_276.966))] p-2\",\n emerald:\n \"rounded-xl border border-[color:var(--zui-tree-view-emerald-border,oklch(43.2%_0.095_166.913))] dark:border-[color:var(--zui-tree-view-emerald-border-dark,oklch(59.6%_0.145_163.225))] p-2\",\n \"gradient-blue\":\n \"rounded-xl border border-[color:var(--zui-tree-view-gradient-blue-border,oklch(42.4%_0.199_265.638))] dark:border-[color:var(--zui-tree-view-gradient-blue-border-dark,oklch(54.6%_0.245_262.881))] p-2\",\n \"gradient-green\":\n \"rounded-xl border border-[color:var(--zui-tree-view-gradient-green-border,oklch(44.8%_0.119_151.328))] dark:border-[color:var(--zui-tree-view-gradient-green-border-dark,oklch(62.7%_0.194_149.214))] p-2\",\n \"gradient-red\":\n \"rounded-xl border border-[color:var(--zui-tree-view-gradient-red-border,oklch(44.4%_0.177_26.899))] dark:border-[color:var(--zui-tree-view-gradient-red-border-dark,oklch(57.7%_0.245_27.325))] p-2\",\n \"gradient-yellow\":\n \"rounded-xl border border-[color:var(--zui-tree-view-gradient-yellow-border,oklch(47.6%_0.114_61.907))] dark:border-[color:var(--zui-tree-view-gradient-yellow-border-dark,oklch(68.1%_0.162_75.834))] p-2\",\n \"gradient-purple\":\n \"rounded-xl border border-[color:var(--zui-tree-view-gradient-purple-border,oklch(43.8%_0.218_303.724))] dark:border-[color:var(--zui-tree-view-gradient-purple-border-dark,oklch(55.8%_0.288_302.321))] p-2\",\n \"gradient-teal\":\n \"rounded-xl border border-[color:var(--zui-tree-view-gradient-teal-border,oklch(43.7%_0.078_188.216))] dark:border-[color:var(--zui-tree-view-gradient-teal-border-dark,oklch(60%_0.118_184.704))] p-2\",\n \"gradient-indigo\":\n \"rounded-xl border border-[color:var(--zui-tree-view-gradient-indigo-border,oklch(39.8%_0.195_277.366))] dark:border-[color:var(--zui-tree-view-gradient-indigo-border-dark,oklch(51.1%_0.262_276.966))] p-2\",\n \"gradient-pink\":\n \"rounded-xl border border-[color:var(--zui-tree-view-gradient-pink-border,oklch(45.9%_0.187_3.815))] dark:border-[color:var(--zui-tree-view-gradient-pink-border-dark,oklch(59.2%_0.249_0.584))] p-2\",\n \"gradient-orange\":\n \"rounded-xl border border-[color:var(--zui-tree-view-gradient-orange-border,oklch(47%_0.157_37.304))] dark:border-[color:var(--zui-tree-view-gradient-orange-border-dark,oklch(64.6%_0.222_41.116))] p-2\",\n} as const;\n\nexport const zuiTreeViewSizes = {\n sm: \"text-xs\",\n md: \"text-sm\",\n lg: \"text-base\",\n} as const;\n\nexport const zuiTreeViewItemBase =\n \"relative flex w-full items-center gap-2 rounded-lg pr-2 text-left font-medium outline-none transition select-none cursor-pointer hover:bg-[var(--zui-tree-view-item-hover,#0000000d)] dark:hover:bg-[var(--zui-tree-view-item-hover-dark,#ffffff0d)] focus-visible:ring-2 focus-visible:ring-[var(--zui-tree-view-ring-focus,#0000004d)] dark:focus-visible:ring-[var(--zui-tree-view-ring-focus-dark,#ffffff4d)] data-[disabled=true]:cursor-not-allowed data-[disabled=true]:opacity-50\";\n\nexport const zuiTreeViewItemSizes = {\n sm: \"py-1 text-xs\",\n md: \"py-1.5 text-sm\",\n lg: \"py-2 text-base\",\n} as const;\n\nexport const zuiTreeViewItemAppearances = {\n default:\n \"data-[selected=true]:bg-[var(--zui-tree-view-selected,#0000000f)] dark:data-[selected=true]:bg-[var(--zui-tree-view-selected-dark,#ffffff14)] data-[selected=true]:text-[color:var(--zui-tree-view-selected-fg,oklch(20.8%_0.042_265.755))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-selected-fg-dark,#ffffff)]\",\n outline:\n \"data-[selected=true]:bg-[var(--zui-tree-view-selected,#0000000f)] dark:data-[selected=true]:bg-[var(--zui-tree-view-selected-dark,#ffffff14)] data-[selected=true]:text-[color:var(--zui-tree-view-selected-fg,oklch(20.8%_0.042_265.755))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-selected-fg-dark,#ffffff)]\",\n ghost:\n \"data-[selected=true]:bg-[var(--zui-tree-view-selected,#0000000f)] dark:data-[selected=true]:bg-[var(--zui-tree-view-selected-dark,#ffffff14)] data-[selected=true]:text-[color:var(--zui-tree-view-selected-fg,oklch(20.8%_0.042_265.755))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-selected-fg-dark,#ffffff)]\",\n card: \"data-[selected=true]:bg-[var(--zui-tree-view-selected,#00000014)] dark:data-[selected=true]:bg-[var(--zui-tree-view-selected-dark,#ffffff1f)] data-[selected=true]:text-[color:var(--zui-tree-view-selected-fg,oklch(20.8%_0.042_265.755))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-selected-fg-dark,#ffffff)]\",\n separated:\n \"data-[selected=true]:bg-[var(--zui-tree-view-selected,#00000014)] dark:data-[selected=true]:bg-[var(--zui-tree-view-selected-dark,#ffffff1f)] data-[selected=true]:text-[color:var(--zui-tree-view-selected-fg,oklch(20.8%_0.042_265.755))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-selected-fg-dark,#ffffff)]\",\n sky: \"data-[selected=true]:bg-[var(--zui-tree-view-sky-selected,oklch(95.1%_0.026_236.824))] dark:data-[selected=true]:bg-[var(--zui-tree-view-sky-selected-dark,oklch(58.8%_0.158_241.966_/_0.16))] data-[selected=true]:text-[color:var(--zui-tree-view-sky-selected-fg,oklch(44.3%_0.11_240.79))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-sky-selected-fg-dark,oklch(82.8%_0.111_230.318))]\",\n rose: \"data-[selected=true]:bg-[var(--zui-tree-view-rose-selected,oklch(94.1%_0.03_12.58))] dark:data-[selected=true]:bg-[var(--zui-tree-view-rose-selected-dark,oklch(58.6%_0.253_17.585_/_0.16))] data-[selected=true]:text-[color:var(--zui-tree-view-rose-selected-fg,oklch(45.5%_0.188_13.697))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-rose-selected-fg-dark,oklch(81%_0.117_11.638))]\",\n purple:\n \"data-[selected=true]:bg-[var(--zui-tree-view-purple-selected,oklch(94.6%_0.033_307.174))] dark:data-[selected=true]:bg-[var(--zui-tree-view-purple-selected-dark,oklch(55.8%_0.288_302.321_/_0.16))] data-[selected=true]:text-[color:var(--zui-tree-view-purple-selected-fg,oklch(43.8%_0.218_303.724))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-purple-selected-fg-dark,oklch(82.7%_0.119_306.383))]\",\n pink: \"data-[selected=true]:bg-[var(--zui-tree-view-pink-selected,oklch(94.8%_0.028_342.258))] dark:data-[selected=true]:bg-[var(--zui-tree-view-pink-selected-dark,oklch(59.2%_0.249_0.584_/_0.16))] data-[selected=true]:text-[color:var(--zui-tree-view-pink-selected-fg,oklch(45.9%_0.187_3.815))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-pink-selected-fg-dark,oklch(82.3%_0.12_346.018))]\",\n orange:\n \"data-[selected=true]:bg-[var(--zui-tree-view-orange-selected,oklch(95.4%_0.038_75.164))] dark:data-[selected=true]:bg-[var(--zui-tree-view-orange-selected-dark,oklch(64.6%_0.222_41.116_/_0.16))] data-[selected=true]:text-[color:var(--zui-tree-view-orange-selected-fg,oklch(47%_0.157_37.304))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-orange-selected-fg-dark,oklch(83.7%_0.128_66.29))]\",\n yellow:\n \"data-[selected=true]:bg-[var(--zui-tree-view-yellow-selected,oklch(97.3%_0.071_103.193))] dark:data-[selected=true]:bg-[var(--zui-tree-view-yellow-selected-dark,oklch(68.1%_0.162_75.834_/_0.16))] data-[selected=true]:text-[color:var(--zui-tree-view-yellow-selected-fg,oklch(47.6%_0.114_61.907))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-yellow-selected-fg-dark,oklch(90.5%_0.182_98.111))]\",\n teal: \"data-[selected=true]:bg-[var(--zui-tree-view-teal-selected,oklch(95.3%_0.051_180.801))] dark:data-[selected=true]:bg-[var(--zui-tree-view-teal-selected-dark,oklch(60%_0.118_184.704_/_0.16))] data-[selected=true]:text-[color:var(--zui-tree-view-teal-selected-fg,oklch(43.7%_0.078_188.216))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-teal-selected-fg-dark,oklch(85.5%_0.138_181.071))]\",\n indigo:\n \"data-[selected=true]:bg-[var(--zui-tree-view-indigo-selected,oklch(93%_0.034_272.788))] dark:data-[selected=true]:bg-[var(--zui-tree-view-indigo-selected-dark,oklch(51.1%_0.262_276.966_/_0.16))] data-[selected=true]:text-[color:var(--zui-tree-view-indigo-selected-fg,oklch(39.8%_0.195_277.366))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-indigo-selected-fg-dark,oklch(78.5%_0.115_274.713))]\",\n emerald:\n \"data-[selected=true]:bg-[var(--zui-tree-view-emerald-selected,oklch(95%_0.052_163.051))] dark:data-[selected=true]:bg-[var(--zui-tree-view-emerald-selected-dark,oklch(59.6%_0.145_163.225_/_0.16))] data-[selected=true]:text-[color:var(--zui-tree-view-emerald-selected-fg,oklch(43.2%_0.095_166.913))] dark:data-[selected=true]:text-[color:var(--zui-tree-view-emerald-selected-fg-dark,oklch(84.5%_0.143_164.978))]\",\n \"gradient-blue\":\n \"data-[selected=true]:bg-linear-to-r data-[selected=true]:from-[var(--zui-tree-view-gradient-blue-from,oklch(80.9%_0.105_251.813))] data-[selected=true]:to-[var(--zui-tree-view-gradient-blue-to,oklch(82.7%_0.119_306.383))] dark:data-[selected=true]:from-[var(--zui-tree-view-gradient-blue-from-dark,oklch(54.6%_0.245_262.881))] dark:data-[selected=true]:to-[var(--zui-tree-view-gradient-blue-to-dark,oklch(55.8%_0.288_302.321))] data-[selected=true]:text-[color:var(--zui-tree-view-gradient-fg,#ffffff)]\",\n \"gradient-green\":\n \"data-[selected=true]:bg-linear-to-r data-[selected=true]:from-[var(--zui-tree-view-gradient-green-from,oklch(87.1%_0.15_154.449))] data-[selected=true]:to-[var(--zui-tree-view-gradient-green-to,oklch(89.7%_0.196_126.665))] dark:data-[selected=true]:from-[var(--zui-tree-view-gradient-green-from-dark,oklch(62.7%_0.194_149.214))] dark:data-[selected=true]:to-[var(--zui-tree-view-gradient-green-to-dark,oklch(64.8%_0.2_131.684))] data-[selected=true]:text-[color:var(--zui-tree-view-gradient-fg,#ffffff)]\",\n \"gradient-red\":\n \"data-[selected=true]:bg-linear-to-r data-[selected=true]:from-[var(--zui-tree-view-gradient-red-from,oklch(80.8%_0.114_19.571))] data-[selected=true]:to-[var(--zui-tree-view-gradient-red-to,oklch(82.3%_0.12_346.018))] dark:data-[selected=true]:from-[var(--zui-tree-view-gradient-red-from-dark,oklch(57.7%_0.245_27.325))] dark:data-[selected=true]:to-[var(--zui-tree-view-gradient-red-to-dark,oklch(59.2%_0.249_0.584))] data-[selected=true]:text-[color:var(--zui-tree-view-gradient-fg,#ffffff)]\",\n \"gradient-yellow\":\n \"data-[selected=true]:bg-linear-to-r data-[selected=true]:from-[var(--zui-tree-view-gradient-yellow-from,oklch(90.5%_0.182_98.111))] data-[selected=true]:to-[var(--zui-tree-view-gradient-yellow-to,oklch(83.7%_0.128_66.29))] dark:data-[selected=true]:from-[var(--zui-tree-view-gradient-yellow-from-dark,oklch(68.1%_0.162_75.834))] dark:data-[selected=true]:to-[var(--zui-tree-view-gradient-yellow-to-dark,oklch(64.6%_0.222_41.116))] data-[selected=true]:text-[color:var(--zui-tree-view-gradient-fg,#ffffff)]\",\n \"gradient-purple\":\n \"data-[selected=true]:bg-linear-to-r data-[selected=true]:from-[var(--zui-tree-view-gradient-purple-from,oklch(82.7%_0.119_306.383))] data-[selected=true]:to-[var(--zui-tree-view-gradient-purple-to,oklch(82.3%_0.12_346.018))] dark:data-[selected=true]:from-[var(--zui-tree-view-gradient-purple-from-dark,oklch(55.8%_0.288_302.321))] dark:data-[selected=true]:to-[var(--zui-tree-view-gradient-purple-to-dark,oklch(59.2%_0.249_0.584))] data-[selected=true]:text-[color:var(--zui-tree-view-gradient-fg,#ffffff)]\",\n \"gradient-teal\":\n \"data-[selected=true]:bg-linear-to-r data-[selected=true]:from-[var(--zui-tree-view-gradient-teal-from,oklch(85.5%_0.138_181.071))] data-[selected=true]:to-[var(--zui-tree-view-gradient-teal-to,oklch(86.5%_0.127_207.078))] dark:data-[selected=true]:from-[var(--zui-tree-view-gradient-teal-from-dark,oklch(60%_0.118_184.704))] dark:data-[selected=true]:to-[var(--zui-tree-view-gradient-teal-to-dark,oklch(60.9%_0.126_221.723))] data-[selected=true]:text-[color:var(--zui-tree-view-gradient-fg,#ffffff)]\",\n \"gradient-indigo\":\n \"data-[selected=true]:bg-linear-to-r data-[selected=true]:from-[var(--zui-tree-view-gradient-indigo-from,oklch(78.5%_0.115_274.713))] data-[selected=true]:to-[var(--zui-tree-view-gradient-indigo-to,oklch(82.7%_0.119_306.383))] dark:data-[selected=true]:from-[var(--zui-tree-view-gradient-indigo-from-dark,oklch(51.1%_0.262_276.966))] dark:data-[selected=true]:to-[var(--zui-tree-view-gradient-indigo-to-dark,oklch(55.8%_0.288_302.321))] data-[selected=true]:text-[color:var(--zui-tree-view-gradient-fg,#ffffff)]\",\n \"gradient-pink\":\n \"data-[selected=true]:bg-linear-to-r data-[selected=true]:from-[var(--zui-tree-view-gradient-pink-from,oklch(82.3%_0.12_346.018))] data-[selected=true]:to-[var(--zui-tree-view-gradient-pink-to,oklch(81%_0.117_11.638))] dark:data-[selected=true]:from-[var(--zui-tree-view-gradient-pink-from-dark,oklch(59.2%_0.249_0.584))] dark:data-[selected=true]:to-[var(--zui-tree-view-gradient-pink-to-dark,oklch(58.6%_0.253_17.585))] data-[selected=true]:text-[color:var(--zui-tree-view-gradient-fg,#ffffff)]\",\n \"gradient-orange\":\n \"data-[selected=true]:bg-linear-to-r data-[selected=true]:from-[var(--zui-tree-view-gradient-orange-from,oklch(83.7%_0.128_66.29))] data-[selected=true]:to-[var(--zui-tree-view-gradient-orange-to,oklch(80.8%_0.114_19.571))] dark:data-[selected=true]:from-[var(--zui-tree-view-gradient-orange-from-dark,oklch(64.6%_0.222_41.116))] dark:data-[selected=true]:to-[var(--zui-tree-view-gradient-orange-to-dark,oklch(57.7%_0.245_27.325))] data-[selected=true]:text-[color:var(--zui-tree-view-gradient-fg,#ffffff)]\",\n} as const;\n\nexport const zuiTreeViewChevron =\n \"inline-flex h-5 w-5 shrink-0 items-center justify-center rounded text-[color:var(--zui-tree-view-chevron,oklch(55.5%_0.041_257.417))] dark:text-[color:var(--zui-tree-view-chevron-dark,oklch(70.4%_0.04_256.788))] transition-transform duration-200 data-[expanded=true]:rotate-90\";\n\nexport const zuiTreeViewIcon =\n \"inline-flex shrink-0 items-center justify-center text-[color:var(--zui-tree-view-icon,oklch(55.5%_0.041_257.417))] dark:text-[color:var(--zui-tree-view-icon-dark,oklch(70.4%_0.04_256.788))]\";\n\nexport const zuiTreeViewGuide =\n \"border-l border-[color:var(--zui-tree-view-guide,#0000001a)] dark:border-[color:var(--zui-tree-view-guide-dark,#ffffff1a)]\";\n","import { cva } from \"class-variance-authority\";\n\nimport {\n zuiTreeViewAppearances,\n zuiTreeViewBase,\n zuiTreeViewItemAppearances,\n zuiTreeViewItemBase,\n zuiTreeViewItemSizes,\n zuiTreeViewSizes,\n} from \"../../design-system/tree-view\";\n\nexport const treeViewVariants = cva(zuiTreeViewBase, {\n variants: {\n appearance: zuiTreeViewAppearances,\n size: zuiTreeViewSizes,\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n },\n});\n\nexport const treeViewItemVariants = cva(zuiTreeViewItemBase, {\n variants: {\n appearance: zuiTreeViewItemAppearances,\n size: zuiTreeViewItemSizes,\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n },\n});\n","\"use client\";\n\nimport {\n createContext,\n useCallback,\n useContext,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { cn } from \"../../lib/utils\";\nimport {\n zuiTreeViewChevron,\n zuiTreeViewGuide,\n zuiTreeViewIcon,\n} from \"../../design-system/tree-view\";\n\nimport type {\n TreeGroupProps,\n TreeNode,\n TreeViewBaseProps,\n TreeViewCtx,\n} from \"./types\";\nimport { treeViewItemVariants, treeViewVariants } from \"./variants\";\nimport { FaChevronRight } from \"react-icons/fa6\";\n\nconst TreeViewContext = createContext<TreeViewCtx | null>(null);\n\n/**\n * Reads the shared tree-view state from context and fails early when a tree item\n * is rendered outside the TreeView provider. The component name keeps the error\n * message actionable for consumers composing custom tree-view pieces.\n */\nfunction useTreeViewContext(component: string): TreeViewCtx {\n const ctx = useContext(TreeViewContext);\n if (!ctx) {\n throw new Error(`${component} must be used within <TreeView>`);\n }\n return ctx;\n}\n\ntype FlatNode = { node: TreeNode; level: number; parentId: string | null };\n\n/**\n * Converts the nested tree into a flat list of the nodes that are currently\n * visible. Keyboard navigation works against this list so ArrowUp/ArrowDown can\n * move through the rendered rows in visual order without walking the nested\n * structure on every key press.\n *\n * The same accumulator is passed through recursive calls to avoid creating and\n * merging many intermediate arrays for large trees.\n */\nfunction flattenVisible(\n nodes: TreeNode[],\n isExpanded: (id: string) => boolean,\n level = 1,\n parentId: string | null = null,\n acc: FlatNode[] = [],\n): FlatNode[] {\n for (const node of nodes) {\n acc.push({ node, level, parentId });\n if (node.children?.length && isExpanded(node.id)) {\n flattenVisible(node.children, isExpanded, level + 1, node.id, acc);\n }\n }\n return acc;\n}\n\n/**\n * Default non-animated group wrapper. Animated tree variants can replace this\n * component through GroupComponent while the recursive TreeItemNode rendering\n * remains shared.\n */\nfunction StaticTreeGroup({ open, children }: TreeGroupProps) {\n if (!open) {\n return null;\n }\n return (\n <ul role=\"group\" data-slot=\"tree-view-group\" className=\"m-0 list-none p-0\">\n {children}\n </ul>\n );\n}\n\nfunction TreeItemNode({\n node,\n level,\n chevronIcon,\n}: {\n node: TreeNode;\n level: number;\n chevronIcon?: React.ReactNode;\n}) {\n const {\n isExpanded,\n selectedId,\n activeId,\n GroupComponent,\n registerItem,\n appearance,\n size,\n toggleExpanded,\n selectNode,\n onItemKeyDown,\n renderNode,\n showGuides,\n } = useTreeViewContext(\"TreeItem\");\n\n // These derived flags keep the JSX readable and mirror the ARIA state applied\n // to each row below.\n const hasChildren = Boolean(node.children?.length);\n const expanded = hasChildren && isExpanded(node.id);\n const selected = selectedId === node.id;\n const active = activeId === node.id;\n const disabled = Boolean(node.disabled);\n\n // GroupComponent is intentionally resolved from context so the base tree can\n // be reused by static and animated implementations without duplicating item\n // rendering logic.\n const Group = GroupComponent;\n\n return (\n <li role=\"none\" data-slot=\"tree-view-item\">\n <div\n role=\"treeitem\"\n // Register the focusable row so keyboard navigation can imperatively\n // focus the next visible item after the active id changes.\n ref={(el) => registerItem(node.id, el)}\n aria-expanded={hasChildren ? expanded : undefined}\n aria-selected={selected}\n aria-level={level}\n aria-disabled={disabled || undefined}\n data-slot=\"tree-view-item-row\"\n data-node-id={node.id}\n data-selected={selected}\n data-active={active}\n data-disabled={disabled}\n tabIndex={active ? 0 : -1}\n // Each level indents by a fixed step. The root still gets a small inset\n // so chevrons and labels align with surrounding UI.\n style={{ paddingLeft: `${(level - 1) * 1.25 + 0.5}rem` }}\n className={treeViewItemVariants({\n appearance: appearance,\n size: size,\n })}\n onClick={() => {\n // Disabled rows are rendered for context but should not toggle,\n // select, or receive active focus from pointer interaction.\n if (disabled) {\n return;\n }\n\n // Clicking a parent both toggles disclosure and selects the row,\n // matching the same selection behavior as leaf nodes.\n if (hasChildren) {\n toggleExpanded(node.id);\n }\n selectNode(node);\n }}\n onKeyDown={onItemKeyDown}\n >\n {hasChildren ? (\n <span\n data-slot=\"tree-view-chevron\"\n data-expanded={expanded}\n className={zuiTreeViewChevron}\n >\n {chevronIcon || <FaChevronRight />}\n </span>\n ) : (\n // Leaf nodes reserve chevron space to keep labels vertically aligned\n // with sibling branches that do have disclosure icons.\n <span aria-hidden className=\"inline-flex h-5 w-5 shrink-0\" />\n )}\n {node.icon ? (\n <span data-slot=\"tree-view-icon\" className={zuiTreeViewIcon}>\n {node.icon}\n </span>\n ) : null}\n <span data-slot=\"tree-view-label\" className=\"truncate\">\n {renderNode\n ? renderNode({\n node,\n depth: level,\n isExpanded: expanded,\n isSelected: selected,\n })\n : node.label}\n </span>\n </div>\n {hasChildren ? (\n <Group open={expanded} level={level}>\n <ol\n className={cn(showGuides && zuiTreeViewGuide, showGuides && \"ml-5\")}\n >\n {node.children?.map((child) => (\n // Recursion preserves each child's depth so ARIA levels,\n // indentation, and guide spacing all stay in sync.\n <TreeItemNode key={child.id} node={child} level={level + 1} />\n ))}\n </ol>\n </Group>\n ) : null}\n </li>\n );\n}\n\nexport function TreeViewBase({\n data = [],\n defaultExpanded,\n expanded,\n onExpandedChange,\n defaultSelected,\n selected,\n onSelect,\n renderNode,\n showGuides = false,\n appearance = \"default\",\n size = \"md\",\n className,\n GroupComponent = StaticTreeGroup,\n ...rest\n}: TreeViewBaseProps & {\n GroupComponent?: TreeViewCtx[\"GroupComponent\"];\n}) {\n // Mirror common React controlled/uncontrolled patterns. When a controlled prop\n // is provided, internal state is treated as read-only fallback state and every\n // change is reported through the matching callback.\n const isExpandedControlled = expanded !== undefined;\n const isSelectedControlled = selected !== undefined;\n\n const [expandedUncontrolled, setExpandedUncontrolled] = useState<string[]>(\n defaultExpanded ?? [],\n );\n const [selectedUncontrolled, setSelectedUncontrolled] = useState<\n string | undefined\n >(defaultSelected);\n\n const expandedIds = isExpandedControlled\n ? (expanded ?? [])\n : expandedUncontrolled;\n const selectedId = isSelectedControlled ? selected : selectedUncontrolled;\n\n // A Set gives O(1) lookup for expansion checks. This is used in render, the\n // flattening utility, and keyboard navigation, so memoizing it prevents\n // rebuilding the lookup unless the expanded ids actually change.\n const expandedSet = useMemo(() => new Set(expandedIds), [expandedIds]);\n\n const isExpanded = useCallback(\n (id: string) => expandedSet.has(id),\n [expandedSet],\n );\n\n // Centralizes the \"commit\" step so controlled and uncontrolled expansion\n // updates always notify consumers consistently.\n const commitExpanded = useCallback(\n (next: string[]) => {\n if (!isExpandedControlled) {\n setExpandedUncontrolled(next);\n }\n onExpandedChange?.(next);\n },\n [isExpandedControlled, onExpandedChange],\n );\n\n const setExpanded = useCallback(\n (id: string, open: boolean) => {\n const has = expandedSet.has(id);\n\n // Avoid sending duplicate updates when the requested state already\n // matches the current expansion state.\n if (open === has) {\n return;\n }\n\n const next = open\n ? [...expandedIds, id]\n : expandedIds.filter((entry) => entry !== id);\n commitExpanded(next);\n },\n [commitExpanded, expandedIds, expandedSet],\n );\n\n const toggleExpanded = useCallback(\n (id: string) => {\n setExpanded(id, !expandedSet.has(id));\n },\n [expandedSet, setExpanded],\n );\n\n // Stores mounted treeitem rows by node id. The Map is held in a ref because\n // focus targets change over time without needing to trigger React renders.\n const itemRefs = useRef(new Map<string, HTMLDivElement>());\n const registerItem = useCallback((id: string, el: HTMLDivElement | null) => {\n if (el) {\n itemRefs.current.set(id, el);\n } else {\n itemRefs.current.delete(id);\n }\n }, []);\n\n // Only expanded branches are included. This becomes the single source of truth\n // for roving focus and Home/End/Arrow navigation.\n const visible = useMemo(\n () => flattenVisible(data, isExpanded),\n [data, isExpanded],\n );\n\n // Used as a safe fallback for tab focus when nothing has been selected or when\n // the selected/active item is hidden by a collapsed parent.\n const firstEnabledId = useMemo(\n () => visible.find((entry) => !entry.node.disabled)?.node.id,\n [visible],\n );\n\n const [activeIdState, setActiveIdState] = useState<string | undefined>(\n undefined,\n );\n\n // A selected item can become hidden when an ancestor is collapsed. In that\n // case it should not keep the roving tab stop; focus falls back below.\n const isSelectedVisible =\n selectedId !== undefined &&\n visible.some((entry) => entry.node.id === selectedId);\n\n // Roving tabindex chooses a single keyboard tab stop: prefer the last active\n // visible item, then the selected visible item, then the first enabled row.\n const activeId =\n activeIdState && visible.some((entry) => entry.node.id === activeIdState)\n ? activeIdState\n : isSelectedVisible\n ? selectedId\n : firstEnabledId;\n\n // Updates logical focus state and then focuses the mounted row when available.\n // Optional chaining handles cases where React has not mounted the row yet.\n const focusItem = useCallback((id: string) => {\n setActiveIdState(id);\n itemRefs.current.get(id)?.focus();\n }, []);\n\n const selectNode = useCallback(\n (node: TreeNode) => {\n // Selection ignores disabled nodes from both pointer and keyboard paths.\n if (node.disabled) {\n return;\n }\n\n setActiveIdState(node.id);\n if (!isSelectedControlled) {\n setSelectedUncontrolled(node.id);\n }\n onSelect?.(node);\n },\n [isSelectedControlled, onSelect],\n );\n\n const onItemKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n // Prefer the DOM row id because the event always originates from a\n // treeitem. activeId is a fallback for unusual composed event paths.\n const currentId = (event.currentTarget.dataset.nodeId ??\n activeId) as string;\n const index = visible.findIndex((entry) => entry.node.id === currentId);\n const current = visible[index];\n if (index === -1 || !current) {\n return;\n }\n\n const moveTo = (target: number) => {\n // Clamp so repeated ArrowUp/ArrowDown at the edges keeps focus on the\n // first or last visible item instead of producing an invalid index.\n const clamped = Math.max(0, Math.min(visible.length - 1, target));\n const next = visible[clamped];\n if (next) {\n focusItem(next.node.id);\n }\n };\n\n switch (event.key) {\n case \"ArrowDown\":\n event.preventDefault();\n moveTo(index + 1);\n break;\n case \"ArrowUp\":\n event.preventDefault();\n moveTo(index - 1);\n break;\n case \"Home\":\n event.preventDefault();\n moveTo(0);\n break;\n case \"End\":\n event.preventDefault();\n moveTo(visible.length - 1);\n break;\n case \"ArrowRight\": {\n event.preventDefault();\n const hasChildren = Boolean(current.node.children?.length);\n\n // Right arrow first opens a closed branch. If it is already open,\n // focus moves to the next visible row, which is the first child.\n if (hasChildren && !isExpanded(current.node.id)) {\n setExpanded(current.node.id, true);\n } else if (hasChildren) {\n moveTo(index + 1);\n }\n break;\n }\n case \"ArrowLeft\": {\n event.preventDefault();\n const hasChildren = Boolean(current.node.children?.length);\n\n // Left arrow closes an open branch. From a leaf or already-closed\n // branch, it moves focus back to the parent row when there is one.\n if (hasChildren && isExpanded(current.node.id)) {\n setExpanded(current.node.id, false);\n } else if (current.parentId) {\n focusItem(current.parentId);\n }\n break;\n }\n case \"Enter\":\n case \" \":\n event.preventDefault();\n // Enter and Space select the current row. Parent expansion remains on\n // the arrow keys so keyboard users have predictable disclosure control.\n selectNode(current.node);\n break;\n default:\n break;\n }\n },\n [activeId, focusItem, isExpanded, selectNode, setExpanded, visible],\n );\n\n // Memoize the context payload so recursive items only re-render when the tree\n // state or rendering options they consume actually change.\n const ctx = useMemo<TreeViewCtx>(\n () => ({\n appearance: appearance ?? \"default\",\n size: size ?? \"md\",\n showGuides,\n GroupComponent,\n isExpanded,\n toggleExpanded,\n setExpanded,\n selectedId,\n activeId,\n selectNode,\n registerItem,\n onItemKeyDown,\n renderNode,\n }),\n [\n activeId,\n appearance,\n GroupComponent,\n isExpanded,\n onItemKeyDown,\n registerItem,\n renderNode,\n selectNode,\n selectedId,\n setExpanded,\n showGuides,\n size,\n toggleExpanded,\n ],\n );\n\n return (\n <TreeViewContext.Provider value={ctx}>\n <ul\n role=\"tree\"\n data-slot=\"tree-view\"\n aria-label={rest[\"aria-label\"]}\n aria-labelledby={rest[\"aria-labelledby\"]}\n className={cn(\n treeViewVariants({ appearance, size }),\n \"list-none\",\n className,\n )}\n >\n {data.map((node) => (\n <TreeItemNode key={node.id} node={node} level={1} />\n ))}\n </ul>\n </TreeViewContext.Provider>\n );\n}\n\nTreeViewBase.displayName = \"TreeView\";\n\nexport { useTreeViewContext };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/design-system/tooltip.ts","../src/ui/tooltip/variants.ts","../src/ui/tooltip/tooltip-base.tsx"],"names":[],"mappings":"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","file":"chunk-R2JJTREQ.mjs","sourcesContent":["export const zuiTooltipBase =\n \"absolute z-50 rounded-md shadow-md transition-all duration-200 pointer-events-none\";\n\nexport const zuiTooltipVariants = {\n default:\n \"bg-[var(--zui-tooltip-default-bg,#ffffff)] dark:bg-[var(--zui-tooltip-default-bg-dark,#000000)] text-[color:var(--zui-tooltip-default-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-tooltip-default-fg-dark,#ffffff)]\",\n outline:\n \"border bg-[var(--zui-tooltip-outline-bg,#000000)] dark:bg-[var(--zui-tooltip-outline-bg-dark,#ffffff)] text-[color:var(--zui-tooltip-outline-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-outline-fg-dark,#000000)]\",\n ghost:\n \"bg-[var(--zui-tooltip-ghost-bg,oklch(27.8%_0.033_256.848))] dark:bg-[var(--zui-tooltip-ghost-bg-dark,oklch(27.8%_0.033_256.848))] text-[color:var(--zui-tooltip-ghost-fg,#ffffffe6)] dark:text-[color:var(--zui-tooltip-ghost-fg-dark,#ffffffe6)]\",\n glass:\n \"border border-[color:var(--zui-tooltip-glass-border,#00000026)] dark:border-[color:var(--zui-tooltip-glass-border-dark,#ffffff26)] bg-[var(--zui-tooltip-glass-bg,#0000001a)] dark:bg-[var(--zui-tooltip-glass-bg-dark,#ffffff1a)] text-[color:var(--zui-tooltip-glass-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-tooltip-glass-fg-dark,#ffffff)] backdrop-blur-md\",\n emerald:\n \"bg-[var(--zui-tooltip-emerald-bg,oklch(43.2%_0.095_166.913))] dark:bg-[var(--zui-tooltip-emerald-bg-dark,oklch(43.2%_0.095_166.913))] text-[color:var(--zui-tooltip-emerald-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-emerald-fg-dark,#ffffff)]\",\n indigo:\n \"bg-[var(--zui-tooltip-indigo-bg,oklch(39.8%_0.195_277.366))] dark:bg-[var(--zui-tooltip-indigo-bg-dark,oklch(39.8%_0.195_277.366))] text-[color:var(--zui-tooltip-indigo-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-indigo-fg-dark,#ffffff)]\",\n purple:\n \"bg-[var(--zui-tooltip-purple-bg,oklch(43.8%_0.218_303.724))] dark:bg-[var(--zui-tooltip-purple-bg-dark,oklch(43.8%_0.218_303.724))] text-[color:var(--zui-tooltip-purple-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-purple-fg-dark,#ffffff)]\",\n pink: \"bg-[var(--zui-tooltip-pink-bg,oklch(45.9%_0.187_3.815))] dark:bg-[var(--zui-tooltip-pink-bg-dark,oklch(45.9%_0.187_3.815))] text-[color:var(--zui-tooltip-pink-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-pink-fg-dark,#ffffff)]\",\n rose: \"bg-[var(--zui-tooltip-rose-bg,oklch(45.5%_0.188_13.697))] dark:bg-[var(--zui-tooltip-rose-bg-dark,oklch(45.5%_0.188_13.697))] text-[color:var(--zui-tooltip-rose-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-rose-fg-dark,#ffffff)]\",\n sky: \"bg-[var(--zui-tooltip-sky-bg,oklch(50%_0.134_242.749))] dark:bg-[var(--zui-tooltip-sky-bg-dark,oklch(50%_0.134_242.749))] text-[color:var(--zui-tooltip-sky-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-sky-fg-dark,#ffffff)]\",\n teal: \"bg-[var(--zui-tooltip-teal-bg,oklch(43.7%_0.078_188.216))] dark:bg-[var(--zui-tooltip-teal-bg-dark,oklch(43.7%_0.078_188.216))] text-[color:var(--zui-tooltip-teal-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-teal-fg-dark,#ffffff)]\",\n yellow:\n \"bg-[var(--zui-tooltip-yellow-bg,oklch(47.6%_0.114_61.907))] dark:bg-[var(--zui-tooltip-yellow-bg-dark,oklch(47.6%_0.114_61.907))] text-[color:var(--zui-tooltip-yellow-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-yellow-fg-dark,#ffffff)]\",\n orange:\n \"bg-[var(--zui-tooltip-orange-bg,oklch(47%_0.157_37.304))] dark:bg-[var(--zui-tooltip-orange-bg-dark,oklch(47%_0.157_37.304))] text-[color:var(--zui-tooltip-orange-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-orange-fg-dark,#ffffff)]\",\n green:\n \"bg-[var(--zui-tooltip-green-bg,oklch(44.8%_0.119_151.328))] dark:bg-[var(--zui-tooltip-green-bg-dark,oklch(44.8%_0.119_151.328))] text-[color:var(--zui-tooltip-green-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-green-fg-dark,#ffffff)]\",\n \"gradient-blue\":\n \"bg-linear-to-r from-[var(--zui-tooltip-gradient-blue-from,oklch(42.4%_0.199_265.638))] dark:from-[var(--zui-tooltip-gradient-blue-from-dark,oklch(42.4%_0.199_265.638))] to-[var(--zui-tooltip-gradient-blue-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-tooltip-gradient-blue-to-dark,oklch(43.8%_0.218_303.724))] text-[color:var(--zui-tooltip-gradient-blue-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-gradient-blue-fg-dark,#ffffff)]\",\n \"gradient-green\":\n \"bg-linear-to-r from-[var(--zui-tooltip-gradient-green-from,oklch(44.8%_0.119_151.328))] dark:from-[var(--zui-tooltip-gradient-green-from-dark,oklch(44.8%_0.119_151.328))] to-[var(--zui-tooltip-gradient-green-to,oklch(45.3%_0.124_130.933))] dark:to-[var(--zui-tooltip-gradient-green-to-dark,oklch(45.3%_0.124_130.933))] text-[color:var(--zui-tooltip-gradient-green-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-gradient-green-fg-dark,#ffffff)]\",\n \"gradient-red\":\n \"bg-linear-to-r from-[var(--zui-tooltip-gradient-red-from,oklch(44.4%_0.177_26.899))] dark:from-[var(--zui-tooltip-gradient-red-from-dark,oklch(44.4%_0.177_26.899))] to-[var(--zui-tooltip-gradient-red-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-tooltip-gradient-red-to-dark,oklch(45.9%_0.187_3.815))] text-[color:var(--zui-tooltip-gradient-red-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-gradient-red-fg-dark,#ffffff)]\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-[var(--zui-tooltip-gradient-yellow-from,oklch(47.6%_0.114_61.907))] dark:from-[var(--zui-tooltip-gradient-yellow-from-dark,oklch(47.6%_0.114_61.907))] to-[var(--zui-tooltip-gradient-yellow-to,oklch(47%_0.157_37.304))] dark:to-[var(--zui-tooltip-gradient-yellow-to-dark,oklch(47%_0.157_37.304))] text-[color:var(--zui-tooltip-gradient-yellow-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-gradient-yellow-fg-dark,#ffffff)]\",\n \"gradient-purple\":\n \"bg-linear-to-r from-[var(--zui-tooltip-gradient-purple-from,oklch(43.8%_0.218_303.724))] dark:from-[var(--zui-tooltip-gradient-purple-from-dark,oklch(43.8%_0.218_303.724))] to-[var(--zui-tooltip-gradient-purple-to,oklch(45.9%_0.187_3.815))] dark:to-[var(--zui-tooltip-gradient-purple-to-dark,oklch(45.9%_0.187_3.815))] text-[color:var(--zui-tooltip-gradient-purple-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-gradient-purple-fg-dark,#ffffff)]\",\n \"gradient-teal\":\n \"bg-linear-to-r from-[var(--zui-tooltip-gradient-teal-from,oklch(43.7%_0.078_188.216))] dark:from-[var(--zui-tooltip-gradient-teal-from-dark,oklch(43.7%_0.078_188.216))] to-[var(--zui-tooltip-gradient-teal-to,oklch(45%_0.085_224.283))] dark:to-[var(--zui-tooltip-gradient-teal-to-dark,oklch(45%_0.085_224.283))] text-[color:var(--zui-tooltip-gradient-teal-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-gradient-teal-fg-dark,#ffffff)]\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-[var(--zui-tooltip-gradient-indigo-from,oklch(39.8%_0.195_277.366))] dark:from-[var(--zui-tooltip-gradient-indigo-from-dark,oklch(39.8%_0.195_277.366))] to-[var(--zui-tooltip-gradient-indigo-to,oklch(43.8%_0.218_303.724))] dark:to-[var(--zui-tooltip-gradient-indigo-to-dark,oklch(43.8%_0.218_303.724))] text-[color:var(--zui-tooltip-gradient-indigo-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-gradient-indigo-fg-dark,#ffffff)]\",\n \"gradient-pink\":\n \"bg-linear-to-r from-[var(--zui-tooltip-gradient-pink-from,oklch(45.9%_0.187_3.815))] dark:from-[var(--zui-tooltip-gradient-pink-from-dark,oklch(45.9%_0.187_3.815))] to-[var(--zui-tooltip-gradient-pink-to,oklch(45.5%_0.188_13.697))] dark:to-[var(--zui-tooltip-gradient-pink-to-dark,oklch(45.5%_0.188_13.697))] text-[color:var(--zui-tooltip-gradient-pink-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-gradient-pink-fg-dark,#ffffff)]\",\n \"gradient-orange\":\n \"bg-linear-to-r from-[var(--zui-tooltip-gradient-orange-from,oklch(47%_0.157_37.304))] dark:from-[var(--zui-tooltip-gradient-orange-from-dark,oklch(47%_0.157_37.304))] to-[var(--zui-tooltip-gradient-orange-to,oklch(44.4%_0.177_26.899))] dark:to-[var(--zui-tooltip-gradient-orange-to-dark,oklch(44.4%_0.177_26.899))] text-[color:var(--zui-tooltip-gradient-orange-fg,#ffffff)] dark:text-[color:var(--zui-tooltip-gradient-orange-fg-dark,#ffffff)]\",\n} as const;\n\nexport const zuiTooltipSizes = {\n sm: \"text-xs px-2 py-1\",\n md: \"text-sm px-3 py-1.5\",\n lg: \"text-base px-4 py-2\",\n} as const;\n\nexport const zuiTooltipWidths = {\n fit: \"min-w-75 md:min-w-fit\",\n xs: \"min-w-75 md:min-w-xs\",\n sm: \"min-w-75 md:min-w-sm\",\n md: \"min-w-75 md:min-w-md\",\n lg: \"min-w-75 md:min-w-lg\",\n xl: \"min-w-75 md:min-w-xl\",\n \"2xl\": \"min-w-75 md:min-w-2xl\",\n} as const;\n","import { cva } from \"class-variance-authority\";\n\nimport {\n zuiTooltipBase,\n zuiTooltipSizes,\n zuiTooltipVariants,\n zuiTooltipWidths,\n} from \"../../design-system/tooltip\";\n\nexport const tooltipVariants = cva(zuiTooltipBase, {\n variants: {\n variant: zuiTooltipVariants,\n size: zuiTooltipSizes,\n width: zuiTooltipWidths,\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n width: \"xs\",\n },\n});\n","\"use client\";\n\nimport {\n Children,\n cloneElement,\n createContext,\n isValidElement,\n useCallback,\n useContext,\n useEffect,\n useId,\n useRef,\n useState,\n type KeyboardEventHandler,\n type MouseEventHandler,\n type FocusEventHandler,\n type ReactElement,\n} from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type {\n TooltipProps,\n TooltipContextType,\n TooltipTriggerProps,\n TooltipContentProps,\n} from \"./types\";\nimport { tooltipVariants } from \"./variants\";\n\nexport const TooltipContext = createContext<TooltipContextType | null>(null);\n\nexport const useTooltip = () => {\n const context = useContext(TooltipContext);\n if (!context) {\n throw new Error(\"Tooltip components must be used within Tooltip\");\n }\n return context;\n};\n\nfunction mergeDescribedBy(\n tooltipId: string,\n existing: unknown,\n open: boolean,\n): string | undefined {\n if (!open) {\n return typeof existing === \"string\" ? existing : undefined;\n }\n const baseIds =\n typeof existing === \"string\" && existing.trim().length > 0\n ? existing.split(/\\s+/).filter(Boolean)\n : [];\n const merged = [...new Set([...baseIds, tooltipId])];\n return merged.join(\" \");\n}\n\nexport const Tooltip = ({\n children,\n defaultOpen = false,\n open: controlledOpen,\n onOpenChange,\n position = \"top\",\n delay = 100,\n}: TooltipProps) => {\n const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);\n const tooltipId = `${useId()}-tooltip`;\n\n const isControlled = controlledOpen !== undefined;\n const open = isControlled ? controlledOpen : uncontrolledOpen;\n\n const setOpen = useCallback(\n (value: boolean) => {\n if (!isControlled) setUncontrolledOpen(value);\n onOpenChange?.(value);\n },\n [isControlled, onOpenChange],\n );\n\n const showTimeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const cancelDelayedOpen = useCallback(() => {\n if (showTimeoutRef.current !== null) {\n clearTimeout(showTimeoutRef.current);\n showTimeoutRef.current = null;\n }\n }, []);\n\n const scheduleDelayedOpen = useCallback(() => {\n cancelDelayedOpen();\n showTimeoutRef.current = setTimeout(() => {\n showTimeoutRef.current = null;\n setOpen(true);\n }, delay);\n }, [cancelDelayedOpen, delay, setOpen]);\n\n useEffect(() => () => cancelDelayedOpen(), [cancelDelayedOpen]);\n\n return (\n <TooltipContext.Provider\n value={{\n open,\n setOpen,\n position,\n delay,\n scheduleDelayedOpen,\n cancelDelayedOpen,\n tooltipId,\n }}\n >\n <div className=\"relative inline-block\">{children}</div>\n </TooltipContext.Provider>\n );\n};\n\nexport const TooltipTrigger = ({\n children,\n className,\n}: TooltipTriggerProps) => {\n const { setOpen, scheduleDelayedOpen, cancelDelayedOpen, open, tooltipId } =\n useTooltip();\n\n const onMouseEnter: MouseEventHandler = () => scheduleDelayedOpen();\n const onMouseLeave: MouseEventHandler = () => {\n cancelDelayedOpen();\n setOpen(false);\n };\n const onFocus: FocusEventHandler = () => {\n cancelDelayedOpen();\n setOpen(true);\n };\n const onBlur: FocusEventHandler = () => {\n cancelDelayedOpen();\n setOpen(false);\n };\n const onKeyDown: KeyboardEventHandler = (event) => {\n if (event.key === \"Escape\") {\n cancelDelayedOpen();\n setOpen(false);\n }\n };\n\n const childList = Children.toArray(children).filter(\n (node) => node !== null && node !== undefined && typeof node !== \"boolean\",\n );\n\n const soleCandidate =\n childList.length === 1 && isValidElement(childList[0])\n ? (childList[0] as ReactElement<{\n className?: string;\n \"aria-describedby\"?: string;\n onMouseEnter?: MouseEventHandler;\n onMouseLeave?: MouseEventHandler;\n onFocus?: FocusEventHandler;\n onBlur?: FocusEventHandler;\n onKeyDown?: KeyboardEventHandler;\n }>)\n : undefined;\n\n if (soleCandidate) {\n const describedBy = mergeDescribedBy(\n tooltipId,\n soleCandidate.props[\"aria-describedby\"],\n open,\n );\n return cloneElement(soleCandidate, {\n onMouseEnter: (event: React.MouseEvent) => {\n soleCandidate.props.onMouseEnter?.(event);\n if (!event.defaultPrevented) {\n scheduleDelayedOpen();\n }\n },\n onMouseLeave: (event: React.MouseEvent) => {\n soleCandidate.props.onMouseLeave?.(event);\n cancelDelayedOpen();\n setOpen(false);\n },\n onFocus: (event: React.FocusEvent) => {\n soleCandidate.props.onFocus?.(event);\n if (!event.defaultPrevented) {\n cancelDelayedOpen();\n setOpen(true);\n }\n },\n onBlur: (event: React.FocusEvent) => {\n soleCandidate.props.onBlur?.(event);\n cancelDelayedOpen();\n setOpen(false);\n },\n onKeyDown: (event: React.KeyboardEvent) => {\n soleCandidate.props.onKeyDown?.(event);\n if (event.key === \"Escape\") {\n cancelDelayedOpen();\n setOpen(false);\n }\n },\n className: cn(className, soleCandidate.props.className),\n \"aria-describedby\": describedBy,\n });\n }\n\n return (\n <span\n className={className}\n tabIndex={0}\n aria-describedby={mergeDescribedBy(tooltipId, undefined, open)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onFocus={onFocus}\n onBlur={onBlur}\n onKeyDown={onKeyDown}\n >\n {children}\n </span>\n );\n};\n\nexport const TooltipContent = ({\n children,\n className,\n variant,\n size,\n width,\n}: TooltipContentProps) => {\n const { open, position, tooltipId } = useTooltip();\n\n if (!open) return null;\n\n const positionStyles = {\n top: \"bottom-full mb-2\",\n bottom: \"top-full mt-2\",\n left: \"right-full top-1/2 -translate-y-1/2 mr-2\",\n right: \"left-full top-1/2 -translate-y-1/2 ml-2\",\n };\n\n return (\n <div\n id={tooltipId}\n data-open={open}\n role=\"tooltip\"\n className={cn(\n tooltipVariants({ variant, size, width }),\n positionStyles[position],\n className,\n )}\n >\n {children}\n </div>\n );\n};\n"]}
@@ -1,126 +0,0 @@
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/kbd.ts
9
- var zuiKbdBase = [
10
- "inline-flex items-center justify-center gap-1 align-middle",
11
- "rounded-[var(--zui-kbd-radius,0.375rem)] font-mono font-medium leading-none select-none"
12
- ];
13
- var zuiKbdKeyAppearances = {
14
- default: "bg-[var(--zui-kbd-default-bg,#0f172a)] dark:bg-[var(--zui-kbd-default-bg-dark,#f8fafc)] text-[color:var(--zui-kbd-default-fg,#f8fafc)] dark:text-[color:var(--zui-kbd-default-fg-dark,#020617)] shadow-[var(--zui-kbd-default-shadow,0_1px_2px_#0f172a14)] dark:shadow-[var(--zui-kbd-default-shadow-dark,0_1px_2px_#0f172a1f)]",
15
- secondary: "bg-[var(--zui-kbd-secondary-bg,#e2e8f0)] dark:bg-[var(--zui-kbd-secondary-bg-dark,#1e293b)] text-[color:var(--zui-kbd-secondary-fg,#0f172a)] dark:text-[color:var(--zui-kbd-secondary-fg-dark,#f8fafc)]",
16
- destructive: "bg-[var(--zui-kbd-destructive-bg,#f43f5e)] dark:bg-[var(--zui-kbd-destructive-bg-dark,#be123c)] text-[color:var(--zui-kbd-destructive-fg,#ffffff)] dark:text-[color:var(--zui-kbd-destructive-fg-dark,#ffffff)]",
17
- outline: "border border-[color:var(--zui-kbd-outline-border,#0000001a)] dark:border-[color:var(--zui-kbd-outline-border-dark,#ffffff1a)] bg-[var(--zui-kbd-outline-bg,#0000000d)] dark:bg-[var(--zui-kbd-outline-bg-dark,#ffffff0d)] text-[color:var(--zui-kbd-outline-fg,#0f172a)] dark:text-[color:var(--zui-kbd-outline-fg-dark,#f8fafc)]",
18
- ghost: "bg-transparent text-[color:var(--zui-kbd-ghost-fg,#334155)] dark:text-[color:var(--zui-kbd-ghost-fg-dark,#e2e8f0)]",
19
- glass: "border border-[color:var(--zui-kbd-glass-border,#00000026)] dark:border-[color:var(--zui-kbd-glass-border-dark,#ffffff26)] bg-[var(--zui-kbd-glass-bg,#0000001a)] dark:bg-[var(--zui-kbd-glass-bg-dark,#ffffff1a)] text-[color:var(--zui-kbd-glass-fg,#0f172a)] dark:text-[color:var(--zui-kbd-glass-fg-dark,#ffffff)] backdrop-blur-md",
20
- emerald: "bg-[var(--zui-kbd-emerald-bg,#10b981)] dark:bg-[var(--zui-kbd-emerald-bg-dark,#065f46)] text-[color:var(--zui-kbd-emerald-fg,#ffffff)] dark:text-[color:var(--zui-kbd-emerald-fg-dark,#ffffff)]",
21
- indigo: "bg-[var(--zui-kbd-indigo-bg,#3730a3)] dark:bg-[var(--zui-kbd-indigo-bg-dark,#4f46e5)] text-[color:var(--zui-kbd-indigo-fg,#ffffff)] dark:text-[color:var(--zui-kbd-indigo-fg-dark,#ffffff)]",
22
- purple: "bg-[var(--zui-kbd-purple-bg,#6b21a8)] dark:bg-[var(--zui-kbd-purple-bg-dark,#9333ea)] text-[color:var(--zui-kbd-purple-fg,#ffffff)] dark:text-[color:var(--zui-kbd-purple-fg-dark,#ffffff)]",
23
- pink: "bg-[var(--zui-kbd-pink-bg,#9d174d)] dark:bg-[var(--zui-kbd-pink-bg-dark,#db2777)] text-[color:var(--zui-kbd-pink-fg,#ffffff)] dark:text-[color:var(--zui-kbd-pink-fg-dark,#ffffff)]",
24
- rose: "bg-[var(--zui-kbd-rose-bg,#9f1239)] dark:bg-[var(--zui-kbd-rose-bg-dark,#e11d48)] text-[color:var(--zui-kbd-rose-fg,#ffffff)] dark:text-[color:var(--zui-kbd-rose-fg-dark,#ffffff)]",
25
- sky: "bg-[var(--zui-kbd-sky-bg,#0ea5e9)] dark:bg-[var(--zui-kbd-sky-bg-dark,#0369a1)] text-[color:var(--zui-kbd-sky-fg,#ffffff)] dark:text-[color:var(--zui-kbd-sky-fg-dark,#ffffff)]",
26
- teal: "bg-[var(--zui-kbd-teal-bg,#14b8a6)] dark:bg-[var(--zui-kbd-teal-bg-dark,#0f766e)] text-[color:var(--zui-kbd-teal-fg,#ffffff)] dark:text-[color:var(--zui-kbd-teal-fg-dark,#ffffff)]",
27
- yellow: "bg-[var(--zui-kbd-yellow-bg,#eab308)] dark:bg-[var(--zui-kbd-yellow-bg-dark,#854d0e)] text-[color:var(--zui-kbd-yellow-fg,#ffffff)] dark:text-[color:var(--zui-kbd-yellow-fg-dark,#ffffff)]",
28
- orange: "bg-[var(--zui-kbd-orange-bg,#f97316)] dark:bg-[var(--zui-kbd-orange-bg-dark,#9a3412)] text-[color:var(--zui-kbd-orange-fg,#ffffff)] dark:text-[color:var(--zui-kbd-orange-fg-dark,#ffffff)]",
29
- gray: "bg-[var(--zui-kbd-gray-bg,#6b7280)] dark:bg-[var(--zui-kbd-gray-bg-dark,#374151)] text-[color:var(--zui-kbd-gray-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gray-fg-dark,#ffffff)]",
30
- amber: "bg-[var(--zui-kbd-amber-bg,#f59e0b)] dark:bg-[var(--zui-kbd-amber-bg-dark,#92400e)] text-[color:var(--zui-kbd-amber-fg,#ffffff)] dark:text-[color:var(--zui-kbd-amber-fg-dark,#ffffff)]",
31
- violet: "bg-[var(--zui-kbd-violet-bg,#5b21b6)] dark:bg-[var(--zui-kbd-violet-bg-dark,#7c3aed)] text-[color:var(--zui-kbd-violet-fg,#ffffff)] dark:text-[color:var(--zui-kbd-violet-fg-dark,#ffffff)]",
32
- "gradient-blue": "bg-linear-to-r from-[var(--zui-kbd-gradient-blue-from,#1e40af)] dark:from-[var(--zui-kbd-gradient-blue-from-dark,#2563eb)] to-[var(--zui-kbd-gradient-blue-to,#6b21a8)] dark:to-[var(--zui-kbd-gradient-blue-to-dark,#9333ea)] text-[color:var(--zui-kbd-gradient-blue-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-blue-fg-dark,#ffffff)]",
33
- "gradient-green": "bg-linear-to-r from-[var(--zui-kbd-gradient-green-from,#166534)] dark:from-[var(--zui-kbd-gradient-green-from-dark,#16a34a)] to-[var(--zui-kbd-gradient-green-to,#3f6212)] dark:to-[var(--zui-kbd-gradient-green-to-dark,#65a30d)] text-[color:var(--zui-kbd-gradient-green-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-green-fg-dark,#ffffff)]",
34
- "gradient-red": "bg-linear-to-r from-[var(--zui-kbd-gradient-red-from,#991b1b)] dark:from-[var(--zui-kbd-gradient-red-from-dark,#dc2626)] to-[var(--zui-kbd-gradient-red-to,#9d174d)] dark:to-[var(--zui-kbd-gradient-red-to-dark,#db2777)] text-[color:var(--zui-kbd-gradient-red-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-red-fg-dark,#ffffff)]",
35
- "gradient-yellow": "bg-linear-to-r from-[var(--zui-kbd-gradient-yellow-from,#854d0e)] dark:from-[var(--zui-kbd-gradient-yellow-from-dark,#ca8a04)] to-[var(--zui-kbd-gradient-yellow-to,#9a3412)] dark:to-[var(--zui-kbd-gradient-yellow-to-dark,#ea580c)] text-[color:var(--zui-kbd-gradient-yellow-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-yellow-fg-dark,#ffffff)]",
36
- "gradient-purple": "bg-linear-to-r from-[var(--zui-kbd-gradient-purple-from,#6b21a8)] dark:from-[var(--zui-kbd-gradient-purple-from-dark,#9333ea)] to-[var(--zui-kbd-gradient-purple-to,#9d174d)] dark:to-[var(--zui-kbd-gradient-purple-to-dark,#db2777)] text-[color:var(--zui-kbd-gradient-purple-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-purple-fg-dark,#ffffff)]",
37
- "gradient-teal": "bg-linear-to-r from-[var(--zui-kbd-gradient-teal-from,#115e59)] dark:from-[var(--zui-kbd-gradient-teal-from-dark,#0d9488)] to-[var(--zui-kbd-gradient-teal-to,#155e75)] dark:to-[var(--zui-kbd-gradient-teal-to-dark,#0891b2)] text-[color:var(--zui-kbd-gradient-teal-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-teal-fg-dark,#ffffff)]",
38
- "gradient-indigo": "bg-linear-to-r from-[var(--zui-kbd-gradient-indigo-from,#3730a3)] dark:from-[var(--zui-kbd-gradient-indigo-from-dark,#4f46e5)] to-[var(--zui-kbd-gradient-indigo-to,#6b21a8)] dark:to-[var(--zui-kbd-gradient-indigo-to-dark,#9333ea)] text-[color:var(--zui-kbd-gradient-indigo-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-indigo-fg-dark,#ffffff)]",
39
- "gradient-pink": "bg-linear-to-r from-[var(--zui-kbd-gradient-pink-from,#9d174d)] dark:from-[var(--zui-kbd-gradient-pink-from-dark,#db2777)] to-[var(--zui-kbd-gradient-pink-to,#9f1239)] dark:to-[var(--zui-kbd-gradient-pink-to-dark,#e11d48)] text-[color:var(--zui-kbd-gradient-pink-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-pink-fg-dark,#ffffff)]",
40
- "gradient-orange": "bg-linear-to-r from-[var(--zui-kbd-gradient-orange-from,#9a3412)] dark:from-[var(--zui-kbd-gradient-orange-from-dark,#ea580c)] to-[var(--zui-kbd-gradient-orange-to,#991b1b)] dark:to-[var(--zui-kbd-gradient-orange-to-dark,#dc2626)] text-[color:var(--zui-kbd-gradient-orange-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-orange-fg-dark,#ffffff)]"
41
- };
42
- var zuiKbdKeyBase = [
43
- "inline-flex items-center justify-center font-mono font-medium leading-none",
44
- "rounded-[var(--zui-kbd-radius,0.375rem)]",
45
- "shadow-[var(--zui-kbd-shadow,inset_0_-1px_0_#0000001f)] dark:shadow-[var(--zui-kbd-shadow-dark,inset_0_-1px_0_#0000004d)]"
46
- ];
47
- var zuiKbdKeySizes = {
48
- sm: "h-5 min-w-5 px-1 text-[0.7rem]",
49
- md: "h-6 min-w-6 px-1.5 text-xs",
50
- lg: "h-7 min-w-7 px-2 text-sm"
51
- };
52
- var zuiKbdSeparatorSizes = {
53
- sm: "text-[0.7rem]",
54
- md: "text-xs",
55
- lg: "text-sm"
56
- };
57
-
58
- // src/ui/kbd/variants.ts
59
- var kbdKeyVariants = classVarianceAuthority.cva(zuiKbdKeyBase, {
60
- variants: {
61
- appearance: zuiKbdKeyAppearances,
62
- size: zuiKbdKeySizes
63
- },
64
- defaultVariants: {
65
- appearance: "outline",
66
- size: "md"
67
- }
68
- });
69
- var kbdSeparatorVariants = classVarianceAuthority.cva(
70
- "text-[color:var(--zui-kbd-separator-fg,#94a3b8)] dark:text-[color:var(--zui-kbd-separator-fg-dark,#64748b)]",
71
- {
72
- variants: {
73
- size: zuiKbdSeparatorSizes
74
- },
75
- defaultVariants: {
76
- size: "md"
77
- }
78
- }
79
- );
80
- function KbdBase({
81
- keys,
82
- separator,
83
- appearance,
84
- size,
85
- children,
86
- className,
87
- as: Wrapper = "span",
88
- ref,
89
- ...rest
90
- }) {
91
- const items = keys ?? (children != null ? [children] : []);
92
- return /* @__PURE__ */ jsxRuntime.jsx(
93
- Wrapper,
94
- {
95
- ref,
96
- "data-slot": "kbd",
97
- className: chunkZS5756ZC_js.cn(zuiKbdBase, className),
98
- ...rest,
99
- children: items.map((key, index) => /* @__PURE__ */ jsxRuntime.jsxs(react.Fragment, { children: [
100
- index > 0 && separator != null ? /* @__PURE__ */ jsxRuntime.jsx(
101
- "span",
102
- {
103
- "data-slot": "kbd-separator",
104
- className: kbdSeparatorVariants({ size }),
105
- children: separator
106
- }
107
- ) : null,
108
- /* @__PURE__ */ jsxRuntime.jsx(
109
- "kbd",
110
- {
111
- "data-slot": "kbd-key",
112
- className: kbdKeyVariants({ appearance, size }),
113
- children: key
114
- }
115
- )
116
- ] }, index))
117
- }
118
- );
119
- }
120
- KbdBase.displayName = "Kbd";
121
-
122
- exports.KbdBase = KbdBase;
123
- exports.kbdKeyVariants = kbdKeyVariants;
124
- exports.kbdSeparatorVariants = kbdSeparatorVariants;
125
- //# sourceMappingURL=chunk-RFT2FLQT.js.map
126
- //# sourceMappingURL=chunk-RFT2FLQT.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/design-system/kbd.ts","../src/ui/kbd/variants.ts","../src/ui/kbd/kbd-base.tsx"],"names":["cva","jsx","cn","Fragment"],"mappings":"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","file":"chunk-RFT2FLQT.js","sourcesContent":["export const zuiKbdBase = [\n \"inline-flex items-center justify-center gap-1 align-middle\",\n \"rounded-[var(--zui-kbd-radius,0.375rem)] font-mono font-medium leading-none select-none\",\n] as const;\n\nexport const zuiKbdKeyAppearances = {\n default:\n \"bg-[var(--zui-kbd-default-bg,#0f172a)] dark:bg-[var(--zui-kbd-default-bg-dark,#f8fafc)] text-[color:var(--zui-kbd-default-fg,#f8fafc)] dark:text-[color:var(--zui-kbd-default-fg-dark,#020617)] shadow-[var(--zui-kbd-default-shadow,0_1px_2px_#0f172a14)] dark:shadow-[var(--zui-kbd-default-shadow-dark,0_1px_2px_#0f172a1f)]\",\n secondary:\n \"bg-[var(--zui-kbd-secondary-bg,#e2e8f0)] dark:bg-[var(--zui-kbd-secondary-bg-dark,#1e293b)] text-[color:var(--zui-kbd-secondary-fg,#0f172a)] dark:text-[color:var(--zui-kbd-secondary-fg-dark,#f8fafc)]\",\n destructive:\n \"bg-[var(--zui-kbd-destructive-bg,#f43f5e)] dark:bg-[var(--zui-kbd-destructive-bg-dark,#be123c)] text-[color:var(--zui-kbd-destructive-fg,#ffffff)] dark:text-[color:var(--zui-kbd-destructive-fg-dark,#ffffff)]\",\n outline:\n \"border border-[color:var(--zui-kbd-outline-border,#0000001a)] dark:border-[color:var(--zui-kbd-outline-border-dark,#ffffff1a)] bg-[var(--zui-kbd-outline-bg,#0000000d)] dark:bg-[var(--zui-kbd-outline-bg-dark,#ffffff0d)] text-[color:var(--zui-kbd-outline-fg,#0f172a)] dark:text-[color:var(--zui-kbd-outline-fg-dark,#f8fafc)]\",\n ghost:\n \"bg-transparent text-[color:var(--zui-kbd-ghost-fg,#334155)] dark:text-[color:var(--zui-kbd-ghost-fg-dark,#e2e8f0)]\",\n glass:\n \"border border-[color:var(--zui-kbd-glass-border,#00000026)] dark:border-[color:var(--zui-kbd-glass-border-dark,#ffffff26)] bg-[var(--zui-kbd-glass-bg,#0000001a)] dark:bg-[var(--zui-kbd-glass-bg-dark,#ffffff1a)] text-[color:var(--zui-kbd-glass-fg,#0f172a)] dark:text-[color:var(--zui-kbd-glass-fg-dark,#ffffff)] backdrop-blur-md\",\n emerald:\n \"bg-[var(--zui-kbd-emerald-bg,#10b981)] dark:bg-[var(--zui-kbd-emerald-bg-dark,#065f46)] text-[color:var(--zui-kbd-emerald-fg,#ffffff)] dark:text-[color:var(--zui-kbd-emerald-fg-dark,#ffffff)]\",\n indigo:\n \"bg-[var(--zui-kbd-indigo-bg,#3730a3)] dark:bg-[var(--zui-kbd-indigo-bg-dark,#4f46e5)] text-[color:var(--zui-kbd-indigo-fg,#ffffff)] dark:text-[color:var(--zui-kbd-indigo-fg-dark,#ffffff)]\",\n purple:\n \"bg-[var(--zui-kbd-purple-bg,#6b21a8)] dark:bg-[var(--zui-kbd-purple-bg-dark,#9333ea)] text-[color:var(--zui-kbd-purple-fg,#ffffff)] dark:text-[color:var(--zui-kbd-purple-fg-dark,#ffffff)]\",\n pink: \"bg-[var(--zui-kbd-pink-bg,#9d174d)] dark:bg-[var(--zui-kbd-pink-bg-dark,#db2777)] text-[color:var(--zui-kbd-pink-fg,#ffffff)] dark:text-[color:var(--zui-kbd-pink-fg-dark,#ffffff)]\",\n rose: \"bg-[var(--zui-kbd-rose-bg,#9f1239)] dark:bg-[var(--zui-kbd-rose-bg-dark,#e11d48)] text-[color:var(--zui-kbd-rose-fg,#ffffff)] dark:text-[color:var(--zui-kbd-rose-fg-dark,#ffffff)]\",\n sky: \"bg-[var(--zui-kbd-sky-bg,#0ea5e9)] dark:bg-[var(--zui-kbd-sky-bg-dark,#0369a1)] text-[color:var(--zui-kbd-sky-fg,#ffffff)] dark:text-[color:var(--zui-kbd-sky-fg-dark,#ffffff)]\",\n teal: \"bg-[var(--zui-kbd-teal-bg,#14b8a6)] dark:bg-[var(--zui-kbd-teal-bg-dark,#0f766e)] text-[color:var(--zui-kbd-teal-fg,#ffffff)] dark:text-[color:var(--zui-kbd-teal-fg-dark,#ffffff)]\",\n yellow:\n \"bg-[var(--zui-kbd-yellow-bg,#eab308)] dark:bg-[var(--zui-kbd-yellow-bg-dark,#854d0e)] text-[color:var(--zui-kbd-yellow-fg,#ffffff)] dark:text-[color:var(--zui-kbd-yellow-fg-dark,#ffffff)]\",\n orange:\n \"bg-[var(--zui-kbd-orange-bg,#f97316)] dark:bg-[var(--zui-kbd-orange-bg-dark,#9a3412)] text-[color:var(--zui-kbd-orange-fg,#ffffff)] dark:text-[color:var(--zui-kbd-orange-fg-dark,#ffffff)]\",\n gray: \"bg-[var(--zui-kbd-gray-bg,#6b7280)] dark:bg-[var(--zui-kbd-gray-bg-dark,#374151)] text-[color:var(--zui-kbd-gray-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gray-fg-dark,#ffffff)]\",\n amber:\n \"bg-[var(--zui-kbd-amber-bg,#f59e0b)] dark:bg-[var(--zui-kbd-amber-bg-dark,#92400e)] text-[color:var(--zui-kbd-amber-fg,#ffffff)] dark:text-[color:var(--zui-kbd-amber-fg-dark,#ffffff)]\",\n violet:\n \"bg-[var(--zui-kbd-violet-bg,#5b21b6)] dark:bg-[var(--zui-kbd-violet-bg-dark,#7c3aed)] text-[color:var(--zui-kbd-violet-fg,#ffffff)] dark:text-[color:var(--zui-kbd-violet-fg-dark,#ffffff)]\",\n \"gradient-blue\":\n \"bg-linear-to-r from-[var(--zui-kbd-gradient-blue-from,#1e40af)] dark:from-[var(--zui-kbd-gradient-blue-from-dark,#2563eb)] to-[var(--zui-kbd-gradient-blue-to,#6b21a8)] dark:to-[var(--zui-kbd-gradient-blue-to-dark,#9333ea)] text-[color:var(--zui-kbd-gradient-blue-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-blue-fg-dark,#ffffff)]\",\n \"gradient-green\":\n \"bg-linear-to-r from-[var(--zui-kbd-gradient-green-from,#166534)] dark:from-[var(--zui-kbd-gradient-green-from-dark,#16a34a)] to-[var(--zui-kbd-gradient-green-to,#3f6212)] dark:to-[var(--zui-kbd-gradient-green-to-dark,#65a30d)] text-[color:var(--zui-kbd-gradient-green-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-green-fg-dark,#ffffff)]\",\n \"gradient-red\":\n \"bg-linear-to-r from-[var(--zui-kbd-gradient-red-from,#991b1b)] dark:from-[var(--zui-kbd-gradient-red-from-dark,#dc2626)] to-[var(--zui-kbd-gradient-red-to,#9d174d)] dark:to-[var(--zui-kbd-gradient-red-to-dark,#db2777)] text-[color:var(--zui-kbd-gradient-red-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-red-fg-dark,#ffffff)]\",\n \"gradient-yellow\":\n \"bg-linear-to-r from-[var(--zui-kbd-gradient-yellow-from,#854d0e)] dark:from-[var(--zui-kbd-gradient-yellow-from-dark,#ca8a04)] to-[var(--zui-kbd-gradient-yellow-to,#9a3412)] dark:to-[var(--zui-kbd-gradient-yellow-to-dark,#ea580c)] text-[color:var(--zui-kbd-gradient-yellow-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-yellow-fg-dark,#ffffff)]\",\n \"gradient-purple\":\n \"bg-linear-to-r from-[var(--zui-kbd-gradient-purple-from,#6b21a8)] dark:from-[var(--zui-kbd-gradient-purple-from-dark,#9333ea)] to-[var(--zui-kbd-gradient-purple-to,#9d174d)] dark:to-[var(--zui-kbd-gradient-purple-to-dark,#db2777)] text-[color:var(--zui-kbd-gradient-purple-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-purple-fg-dark,#ffffff)]\",\n \"gradient-teal\":\n \"bg-linear-to-r from-[var(--zui-kbd-gradient-teal-from,#115e59)] dark:from-[var(--zui-kbd-gradient-teal-from-dark,#0d9488)] to-[var(--zui-kbd-gradient-teal-to,#155e75)] dark:to-[var(--zui-kbd-gradient-teal-to-dark,#0891b2)] text-[color:var(--zui-kbd-gradient-teal-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-teal-fg-dark,#ffffff)]\",\n \"gradient-indigo\":\n \"bg-linear-to-r from-[var(--zui-kbd-gradient-indigo-from,#3730a3)] dark:from-[var(--zui-kbd-gradient-indigo-from-dark,#4f46e5)] to-[var(--zui-kbd-gradient-indigo-to,#6b21a8)] dark:to-[var(--zui-kbd-gradient-indigo-to-dark,#9333ea)] text-[color:var(--zui-kbd-gradient-indigo-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-indigo-fg-dark,#ffffff)]\",\n \"gradient-pink\":\n \"bg-linear-to-r from-[var(--zui-kbd-gradient-pink-from,#9d174d)] dark:from-[var(--zui-kbd-gradient-pink-from-dark,#db2777)] to-[var(--zui-kbd-gradient-pink-to,#9f1239)] dark:to-[var(--zui-kbd-gradient-pink-to-dark,#e11d48)] text-[color:var(--zui-kbd-gradient-pink-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-pink-fg-dark,#ffffff)]\",\n \"gradient-orange\":\n \"bg-linear-to-r from-[var(--zui-kbd-gradient-orange-from,#9a3412)] dark:from-[var(--zui-kbd-gradient-orange-from-dark,#ea580c)] to-[var(--zui-kbd-gradient-orange-to,#991b1b)] dark:to-[var(--zui-kbd-gradient-orange-to-dark,#dc2626)] text-[color:var(--zui-kbd-gradient-orange-fg,#ffffff)] dark:text-[color:var(--zui-kbd-gradient-orange-fg-dark,#ffffff)]\",\n} as const;\n\nexport type ZuiKbdAppearance = keyof typeof zuiKbdKeyAppearances;\n\nexport const zuiKbdKeyBase = [\n \"inline-flex items-center justify-center font-mono font-medium leading-none\",\n \"rounded-[var(--zui-kbd-radius,0.375rem)]\",\n \"shadow-[var(--zui-kbd-shadow,inset_0_-1px_0_#0000001f)] dark:shadow-[var(--zui-kbd-shadow-dark,inset_0_-1px_0_#0000004d)]\",\n] as const;\n\nexport const zuiKbdKeySizes = {\n sm: \"h-5 min-w-5 px-1 text-[0.7rem]\",\n md: \"h-6 min-w-6 px-1.5 text-xs\",\n lg: \"h-7 min-w-7 px-2 text-sm\",\n} as const;\n\nexport type ZuiKbdSize = keyof typeof zuiKbdKeySizes;\n\nexport const zuiKbdSeparatorSizes = {\n sm: \"text-[0.7rem]\",\n md: \"text-xs\",\n lg: \"text-sm\",\n} as const;\n","import { cva } from \"class-variance-authority\";\n\nimport {\n zuiKbdKeyAppearances,\n zuiKbdKeyBase,\n zuiKbdKeySizes,\n zuiKbdSeparatorSizes,\n} from \"../../design-system/kbd\";\n\nexport const kbdKeyVariants = cva(zuiKbdKeyBase, {\n variants: {\n appearance: zuiKbdKeyAppearances,\n size: zuiKbdKeySizes,\n },\n defaultVariants: {\n appearance: \"outline\",\n size: \"md\",\n },\n});\n\nexport const kbdSeparatorVariants = cva(\n \"text-[color:var(--zui-kbd-separator-fg,#94a3b8)] dark:text-[color:var(--zui-kbd-separator-fg-dark,#64748b)]\",\n {\n variants: {\n size: zuiKbdSeparatorSizes,\n },\n defaultVariants: {\n size: \"md\",\n },\n },\n);\n","\"use client\";\n\nimport { Fragment } from \"react\";\n\nimport { zuiKbdBase } from \"../../design-system/kbd\";\nimport { cn } from \"../../lib/utils\";\n\nimport type { KbdBaseProps } from \"./types\";\nimport { kbdKeyVariants, kbdSeparatorVariants } from \"./variants\";\n\nexport function KbdBase({\n keys,\n separator,\n appearance,\n size,\n children,\n className,\n as: Wrapper = \"span\",\n ref,\n ...rest\n}: KbdBaseProps) {\n const items = keys ?? (children != null ? [children] : []);\n\n return (\n <Wrapper\n ref={ref}\n data-slot=\"kbd\"\n className={cn(zuiKbdBase, className)}\n {...rest}\n >\n {items.map((key, index) => (\n <Fragment key={index}>\n {index > 0 && separator != null ? (\n <span\n data-slot=\"kbd-separator\"\n className={kbdSeparatorVariants({ size })}\n >\n {separator}\n </span>\n ) : null}\n <kbd\n data-slot=\"kbd-key\"\n className={kbdKeyVariants({ appearance, size })}\n >\n {key}\n </kbd>\n </Fragment>\n ))}\n </Wrapper>\n );\n}\n\nKbdBase.displayName = \"Kbd\";\n"]}
@@ -1,107 +0,0 @@
1
- 'use strict';
2
-
3
- var classVarianceAuthority = require('class-variance-authority');
4
- var react = require('react');
5
-
6
- // src/ui/radio-group/variants.ts
7
-
8
- // src/design-system/radio-group.ts
9
- var zuiRadioGroupRootBase = "grid gap-2";
10
- var zuiRadioGroupItemBase = "group inline-flex w-fit items-start gap-2.5 text-sm font-medium text-[color:var(--zui-radio-label-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-radio-label-fg-dark,oklch(98.4%_0.003_247.858))] data-[disabled=true]:cursor-not-allowed data-[disabled=true]:opacity-50";
11
- var zuiRadioGroupControlBase = "grid shrink-0 place-items-center rounded-full border-2 border-[color:var(--zui-radio-border,#0000004d)] bg-[var(--zui-radio-bg,transparent)] dark:bg-[var(--zui-radio-bg-dark,transparent)] transition-[background-color,border-color,box-shadow] peer-focus-visible:outline-none peer-focus-visible:ring-2 peer-focus-visible:ring-[var(--zui-radio-ring-focus,oklch(44.6%_0.043_257.281_/_0.7))] peer-focus-visible:ring-offset-2 peer-focus-visible:ring-offset-[var(--zui-radio-ring-offset-focus,oklch(98.4%_0.003_247.858))] dark:border-[color:var(--zui-radio-border-dark,#ffffff4d)] dark:peer-focus-visible:ring-[var(--zui-radio-ring-focus-dark,oklch(86.9%_0.022_252.894_/_0.7))] dark:peer-focus-visible:ring-offset-[var(--zui-radio-ring-offset-focus-dark,oklch(12.9%_0.042_264.695))] group-data-[disabled=true]:cursor-not-allowed";
12
- var zuiRadioGroupIndicatorBase = "pointer-events-none block rounded-full opacity-0 transition-opacity duration-150 group-data-[state=checked]:opacity-100";
13
- var zuiRadioGroupSizes = {
14
- sm: {
15
- item: "text-xs",
16
- control: "mt-0.5 size-4",
17
- indicator: "size-1.5"
18
- },
19
- md: {
20
- item: "text-sm",
21
- control: "mt-0.5 size-5",
22
- indicator: "size-2"
23
- },
24
- lg: {
25
- item: "text-base",
26
- control: "mt-0.5 size-6",
27
- indicator: "size-2.5"
28
- }
29
- };
30
- var zuiRadioGroupAppearances = {
31
- default: "group-data-[state=checked]:border-[color:var(--zui-radio-default-border-checked,oklch(44.6%_0.043_257.281))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-default-border-checked-dark,oklch(44.6%_0.043_257.281))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-default-indicator-bg,oklch(44.6%_0.043_257.281))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-default-indicator-bg-dark,oklch(44.6%_0.043_257.281))]",
32
- success: "group-data-[state=checked]:border-[color:var(--zui-radio-success-border-checked,oklch(59.6%_0.145_163.225))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-success-border-checked-dark,oklch(59.6%_0.145_163.225))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-success-indicator-bg,oklch(59.6%_0.145_163.225))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-success-indicator-bg-dark,oklch(59.6%_0.145_163.225))]",
33
- warning: "group-data-[state=checked]:border-[color:var(--zui-radio-warning-border-checked,oklch(68.1%_0.162_75.834))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-warning-border-checked-dark,oklch(68.1%_0.162_75.834))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-warning-indicator-bg,oklch(68.1%_0.162_75.834))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-warning-indicator-bg-dark,oklch(68.1%_0.162_75.834))]",
34
- error: "group-data-[state=checked]:border-[color:var(--zui-radio-error-border-checked,oklch(58.6%_0.253_17.585))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-error-border-checked-dark,oklch(58.6%_0.253_17.585))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-error-indicator-bg,oklch(58.6%_0.253_17.585))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-error-indicator-bg-dark,oklch(58.6%_0.253_17.585))]",
35
- info: "group-data-[state=checked]:border-[color:var(--zui-radio-info-border-checked,oklch(54.6%_0.245_262.881))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-info-border-checked-dark,oklch(54.6%_0.245_262.881))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-info-indicator-bg,oklch(54.6%_0.245_262.881))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-info-indicator-bg-dark,oklch(54.6%_0.245_262.881))]",
36
- violet: "group-data-[state=checked]:border-[color:var(--zui-radio-violet-border-checked,oklch(54.1%_0.281_293.009))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-violet-border-checked-dark,oklch(54.1%_0.281_293.009))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-violet-indicator-bg,oklch(54.1%_0.281_293.009))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-violet-indicator-bg-dark,oklch(54.1%_0.281_293.009))]",
37
- amber: "group-data-[state=checked]:border-[color:var(--zui-radio-amber-border-checked,oklch(66.6%_0.179_58.318))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-amber-border-checked-dark,oklch(66.6%_0.179_58.318))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-amber-indicator-bg,oklch(66.6%_0.179_58.318))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-amber-indicator-bg-dark,oklch(66.6%_0.179_58.318))]",
38
- pink: "group-data-[state=checked]:border-[color:var(--zui-radio-pink-border-checked,oklch(59.2%_0.249_0.584))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-pink-border-checked-dark,oklch(59.2%_0.249_0.584))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-pink-indicator-bg,oklch(59.2%_0.249_0.584))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-pink-indicator-bg-dark,oklch(59.2%_0.249_0.584))]",
39
- indigo: "group-data-[state=checked]:border-[color:var(--zui-radio-indigo-border-checked,oklch(51.1%_0.262_276.966))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-indigo-border-checked-dark,oklch(51.1%_0.262_276.966))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-indigo-indicator-bg,oklch(51.1%_0.262_276.966))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-indigo-indicator-bg-dark,oklch(51.1%_0.262_276.966))]"
40
- };
41
- var zuiRadioGroupOrientations = {
42
- vertical: "grid gap-2",
43
- horizontal: "flex flex-wrap gap-x-5 gap-y-2"
44
- };
45
-
46
- // src/ui/radio-group/variants.ts
47
- var radioGroupRootVariants = classVarianceAuthority.cva(zuiRadioGroupRootBase, {
48
- variants: {
49
- orientation: zuiRadioGroupOrientations
50
- },
51
- defaultVariants: {
52
- orientation: "vertical"
53
- }
54
- });
55
- var radioGroupItemVariants = classVarianceAuthority.cva(zuiRadioGroupItemBase, {
56
- variants: {
57
- size: {
58
- sm: zuiRadioGroupSizes.sm.item,
59
- md: zuiRadioGroupSizes.md.item,
60
- lg: zuiRadioGroupSizes.lg.item
61
- }
62
- },
63
- defaultVariants: {
64
- size: "md"
65
- }
66
- });
67
- var radioGroupControlVariants = classVarianceAuthority.cva(zuiRadioGroupControlBase, {
68
- variants: {
69
- appearance: zuiRadioGroupAppearances,
70
- size: {
71
- sm: zuiRadioGroupSizes.sm.control,
72
- md: zuiRadioGroupSizes.md.control,
73
- lg: zuiRadioGroupSizes.lg.control
74
- }
75
- },
76
- defaultVariants: {
77
- appearance: "default",
78
- size: "md"
79
- }
80
- });
81
- var radioGroupIndicatorVariants = classVarianceAuthority.cva(zuiRadioGroupIndicatorBase, {
82
- variants: {
83
- size: {
84
- sm: zuiRadioGroupSizes.sm.indicator,
85
- md: zuiRadioGroupSizes.md.indicator,
86
- lg: zuiRadioGroupSizes.lg.indicator
87
- }
88
- },
89
- defaultVariants: {
90
- size: "md"
91
- }
92
- });
93
- var RadioGroupContext = react.createContext(
94
- null
95
- );
96
- function useRadioGroupContext() {
97
- return react.useContext(RadioGroupContext);
98
- }
99
-
100
- exports.RadioGroupContext = RadioGroupContext;
101
- exports.radioGroupControlVariants = radioGroupControlVariants;
102
- exports.radioGroupIndicatorVariants = radioGroupIndicatorVariants;
103
- exports.radioGroupItemVariants = radioGroupItemVariants;
104
- exports.radioGroupRootVariants = radioGroupRootVariants;
105
- exports.useRadioGroupContext = useRadioGroupContext;
106
- //# sourceMappingURL=chunk-RIHJAEOL.js.map
107
- //# sourceMappingURL=chunk-RIHJAEOL.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/design-system/radio-group.ts","../src/ui/radio-group/variants.ts","../src/ui/radio-group/radio-group-context.ts"],"names":["cva","createContext","useContext"],"mappings":";;;;;;;;AAAO,IAAM,qBAAA,GAAwB,YAAA;AAE9B,IAAM,qBAAA,GACX,uRAAA;AAEK,IAAM,wBAAA,GACX,uzBAAA;AAEK,IAAM,0BAAA,GACX,yHAAA;AAEK,IAAM,kBAAA,GAAqB;AAAA,EAChC,EAAA,EAAI;AAAA,IACF,IAAA,EAAM,SAAA;AAAA,IACN,OAAA,EAAS,eAAA;AAAA,IACT,SAAA,EAAW;AAAA,GACb;AAAA,EACA,EAAA,EAAI;AAAA,IACF,IAAA,EAAM,SAAA;AAAA,IACN,OAAA,EAAS,eAAA;AAAA,IACT,SAAA,EAAW;AAAA,GACb;AAAA,EACA,EAAA,EAAI;AAAA,IACF,IAAA,EAAM,WAAA;AAAA,IACN,OAAA,EAAS,eAAA;AAAA,IACT,SAAA,EAAW;AAAA;AAEf,CAAA;AAEO,IAAM,wBAAA,GAA2B;AAAA,EACtC,OAAA,EACE,ucAAA;AAAA,EACF,OAAA,EACE,ucAAA;AAAA,EACF,OAAA,EACE,mcAAA;AAAA,EACF,KAAA,EACE,2bAAA;AAAA,EACF,IAAA,EAAM,2bAAA;AAAA,EACN,MAAA,EACE,mcAAA;AAAA,EACF,KAAA,EACE,2bAAA;AAAA,EACF,IAAA,EAAM,mbAAA;AAAA,EACN,MAAA,EACE;AACJ,CAAA;AAEO,IAAM,yBAAA,GAA4B;AAAA,EACvC,QAAA,EAAU,YAAA;AAAA,EACV,UAAA,EAAY;AACd,CAAA;;;ACvCO,IAAM,sBAAA,GAAyBA,2BAAI,qBAAA,EAAuB;AAAA,EAC/D,QAAA,EAAU;AAAA,IACR,WAAA,EAAa;AAAA,GACf;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,WAAA,EAAa;AAAA;AAEjB,CAAC;AAEM,IAAM,sBAAA,GAAyBA,2BAAI,qBAAA,EAAuB;AAAA,EAC/D,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,EAAA,EAAI,mBAAmB,EAAA,CAAG,IAAA;AAAA,MAC1B,EAAA,EAAI,mBAAmB,EAAA,CAAG,IAAA;AAAA,MAC1B,EAAA,EAAI,mBAAmB,EAAA,CAAG;AAAA;AAC5B,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,IAAA,EAAM;AAAA;AAEV,CAAC;AAEM,IAAM,yBAAA,GAA4BA,2BAAI,wBAAA,EAA0B;AAAA,EACrE,QAAA,EAAU;AAAA,IACR,UAAA,EAAY,wBAAA;AAAA,IACZ,IAAA,EAAM;AAAA,MACJ,EAAA,EAAI,mBAAmB,EAAA,CAAG,OAAA;AAAA,MAC1B,EAAA,EAAI,mBAAmB,EAAA,CAAG,OAAA;AAAA,MAC1B,EAAA,EAAI,mBAAmB,EAAA,CAAG;AAAA;AAC5B,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,UAAA,EAAY,SAAA;AAAA,IACZ,IAAA,EAAM;AAAA;AAEV,CAAC;AAEM,IAAM,2BAAA,GAA8BA,2BAAI,0BAAA,EAA4B;AAAA,EACzE,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,EAAA,EAAI,mBAAmB,EAAA,CAAG,SAAA;AAAA,MAC1B,EAAA,EAAI,mBAAmB,EAAA,CAAG,SAAA;AAAA,MAC1B,EAAA,EAAI,mBAAmB,EAAA,CAAG;AAAA;AAC5B,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,IAAA,EAAM;AAAA;AAEV,CAAC;AC5CM,IAAM,iBAAA,GAAoBC,mBAAA;AAAA,EAC/B;AACF;AAEO,SAAS,oBAAA,GAAuB;AACrC,EAAA,OAAOC,iBAAW,iBAAiB,CAAA;AACrC","file":"chunk-RIHJAEOL.js","sourcesContent":["export const zuiRadioGroupRootBase = \"grid gap-2\";\n\nexport const zuiRadioGroupItemBase =\n \"group inline-flex w-fit items-start gap-2.5 text-sm font-medium text-[color:var(--zui-radio-label-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-radio-label-fg-dark,oklch(98.4%_0.003_247.858))] data-[disabled=true]:cursor-not-allowed data-[disabled=true]:opacity-50\";\n\nexport const zuiRadioGroupControlBase =\n \"grid shrink-0 place-items-center rounded-full border-2 border-[color:var(--zui-radio-border,#0000004d)] bg-[var(--zui-radio-bg,transparent)] dark:bg-[var(--zui-radio-bg-dark,transparent)] transition-[background-color,border-color,box-shadow] peer-focus-visible:outline-none peer-focus-visible:ring-2 peer-focus-visible:ring-[var(--zui-radio-ring-focus,oklch(44.6%_0.043_257.281_/_0.7))] peer-focus-visible:ring-offset-2 peer-focus-visible:ring-offset-[var(--zui-radio-ring-offset-focus,oklch(98.4%_0.003_247.858))] dark:border-[color:var(--zui-radio-border-dark,#ffffff4d)] dark:peer-focus-visible:ring-[var(--zui-radio-ring-focus-dark,oklch(86.9%_0.022_252.894_/_0.7))] dark:peer-focus-visible:ring-offset-[var(--zui-radio-ring-offset-focus-dark,oklch(12.9%_0.042_264.695))] group-data-[disabled=true]:cursor-not-allowed\";\n\nexport const zuiRadioGroupIndicatorBase =\n \"pointer-events-none block rounded-full opacity-0 transition-opacity duration-150 group-data-[state=checked]:opacity-100\";\n\nexport const zuiRadioGroupSizes = {\n sm: {\n item: \"text-xs\",\n control: \"mt-0.5 size-4\",\n indicator: \"size-1.5\",\n },\n md: {\n item: \"text-sm\",\n control: \"mt-0.5 size-5\",\n indicator: \"size-2\",\n },\n lg: {\n item: \"text-base\",\n control: \"mt-0.5 size-6\",\n indicator: \"size-2.5\",\n },\n} as const;\n\nexport const zuiRadioGroupAppearances = {\n default:\n \"group-data-[state=checked]:border-[color:var(--zui-radio-default-border-checked,oklch(44.6%_0.043_257.281))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-default-border-checked-dark,oklch(44.6%_0.043_257.281))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-default-indicator-bg,oklch(44.6%_0.043_257.281))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-default-indicator-bg-dark,oklch(44.6%_0.043_257.281))]\",\n success:\n \"group-data-[state=checked]:border-[color:var(--zui-radio-success-border-checked,oklch(59.6%_0.145_163.225))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-success-border-checked-dark,oklch(59.6%_0.145_163.225))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-success-indicator-bg,oklch(59.6%_0.145_163.225))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-success-indicator-bg-dark,oklch(59.6%_0.145_163.225))]\",\n warning:\n \"group-data-[state=checked]:border-[color:var(--zui-radio-warning-border-checked,oklch(68.1%_0.162_75.834))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-warning-border-checked-dark,oklch(68.1%_0.162_75.834))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-warning-indicator-bg,oklch(68.1%_0.162_75.834))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-warning-indicator-bg-dark,oklch(68.1%_0.162_75.834))]\",\n error:\n \"group-data-[state=checked]:border-[color:var(--zui-radio-error-border-checked,oklch(58.6%_0.253_17.585))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-error-border-checked-dark,oklch(58.6%_0.253_17.585))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-error-indicator-bg,oklch(58.6%_0.253_17.585))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-error-indicator-bg-dark,oklch(58.6%_0.253_17.585))]\",\n info: \"group-data-[state=checked]:border-[color:var(--zui-radio-info-border-checked,oklch(54.6%_0.245_262.881))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-info-border-checked-dark,oklch(54.6%_0.245_262.881))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-info-indicator-bg,oklch(54.6%_0.245_262.881))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-info-indicator-bg-dark,oklch(54.6%_0.245_262.881))]\",\n violet:\n \"group-data-[state=checked]:border-[color:var(--zui-radio-violet-border-checked,oklch(54.1%_0.281_293.009))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-violet-border-checked-dark,oklch(54.1%_0.281_293.009))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-violet-indicator-bg,oklch(54.1%_0.281_293.009))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-violet-indicator-bg-dark,oklch(54.1%_0.281_293.009))]\",\n amber:\n \"group-data-[state=checked]:border-[color:var(--zui-radio-amber-border-checked,oklch(66.6%_0.179_58.318))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-amber-border-checked-dark,oklch(66.6%_0.179_58.318))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-amber-indicator-bg,oklch(66.6%_0.179_58.318))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-amber-indicator-bg-dark,oklch(66.6%_0.179_58.318))]\",\n pink: \"group-data-[state=checked]:border-[color:var(--zui-radio-pink-border-checked,oklch(59.2%_0.249_0.584))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-pink-border-checked-dark,oklch(59.2%_0.249_0.584))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-pink-indicator-bg,oklch(59.2%_0.249_0.584))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-pink-indicator-bg-dark,oklch(59.2%_0.249_0.584))]\",\n indigo:\n \"group-data-[state=checked]:border-[color:var(--zui-radio-indigo-border-checked,oklch(51.1%_0.262_276.966))] dark:group-data-[state=checked]:border-[color:var(--zui-radio-indigo-border-checked-dark,oklch(51.1%_0.262_276.966))] [&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-indigo-indicator-bg,oklch(51.1%_0.262_276.966))] dark:[&_[data-slot=radio-group-indicator]]:bg-[var(--zui-radio-indigo-indicator-bg-dark,oklch(51.1%_0.262_276.966))]\",\n} as const;\n\nexport const zuiRadioGroupOrientations = {\n vertical: \"grid gap-2\",\n horizontal: \"flex flex-wrap gap-x-5 gap-y-2\",\n} as const;\n","import { cva } from \"class-variance-authority\";\n\nimport {\n zuiRadioGroupAppearances,\n zuiRadioGroupControlBase,\n zuiRadioGroupIndicatorBase,\n zuiRadioGroupItemBase,\n zuiRadioGroupOrientations,\n zuiRadioGroupRootBase,\n zuiRadioGroupSizes,\n} from \"../../design-system/radio-group\";\n\nexport const radioGroupRootVariants = cva(zuiRadioGroupRootBase, {\n variants: {\n orientation: zuiRadioGroupOrientations,\n },\n defaultVariants: {\n orientation: \"vertical\",\n },\n});\n\nexport const radioGroupItemVariants = cva(zuiRadioGroupItemBase, {\n variants: {\n size: {\n sm: zuiRadioGroupSizes.sm.item,\n md: zuiRadioGroupSizes.md.item,\n lg: zuiRadioGroupSizes.lg.item,\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\nexport const radioGroupControlVariants = cva(zuiRadioGroupControlBase, {\n variants: {\n appearance: zuiRadioGroupAppearances,\n size: {\n sm: zuiRadioGroupSizes.sm.control,\n md: zuiRadioGroupSizes.md.control,\n lg: zuiRadioGroupSizes.lg.control,\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n },\n});\n\nexport const radioGroupIndicatorVariants = cva(zuiRadioGroupIndicatorBase, {\n variants: {\n size: {\n sm: zuiRadioGroupSizes.sm.indicator,\n md: zuiRadioGroupSizes.md.indicator,\n lg: zuiRadioGroupSizes.lg.indicator,\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n","\"use client\";\n\nimport { createContext, useContext } from \"react\";\n\nimport type { RadioGroupAppearance, RadioGroupSize } from \"./types\";\n\nexport type RadioGroupContextValue = {\n value: string | undefined;\n name: string;\n disabled?: boolean;\n required?: boolean;\n appearance?: RadioGroupAppearance;\n size?: RadioGroupSize;\n onValueChange: (value: string) => void;\n};\n\nexport const RadioGroupContext = createContext<RadioGroupContextValue | null>(\n null,\n);\n\nexport function useRadioGroupContext() {\n return useContext(RadioGroupContext);\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/design-system/modal.ts","../src/ui/modal/variants.ts","../src/ui/modal/modal-base.tsx"],"names":[],"mappings":"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","file":"chunk-SSJXWD2M.mjs","sourcesContent":["export const zuiModalOverlayBase =\n \"fixed inset-0 z-50 bg-[var(--zui-modal-overlay-bg,oklch(12.9%_0.042_264.695_/_0.7))] dark:bg-[var(--zui-modal-overlay-bg-dark,oklch(12.9%_0.042_264.695_/_0.7))] backdrop-blur-sm data-[state=open]:animate-in\";\n\nexport const zuiModalTriggerBase =\n \"relative inline-flex shrink-0 cursor-pointer rounded-md border\";\n\nexport const zuiModalTriggerAppearances = {\n default:\n \"bg-[var(--zui-modal-trigger-default-bg,oklch(98.4%_0.003_247.858))] dark:bg-[var(--zui-modal-trigger-default-bg-dark,oklch(12.9%_0.042_264.695))] text-[color:var(--zui-modal-trigger-default-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-modal-trigger-default-fg-dark,oklch(98.4%_0.003_247.858))]\",\n glass:\n \"border-[color:var(--zui-modal-trigger-glass-border,#00000026)] dark:border-[color:var(--zui-modal-trigger-glass-border-dark,#ffffff26)] bg-[var(--zui-modal-trigger-glass-bg,oklch(98.4%_0.003_247.858_/_0.7))] dark:bg-[var(--zui-modal-trigger-glass-bg-dark,oklch(12.9%_0.042_264.695_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-glass-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-modal-trigger-glass-fg-dark,oklch(98.4%_0.003_247.858))]\",\n sky: \"border-[color:var(--zui-modal-trigger-sky-border,oklch(44.3%_0.11_240.79))] dark:border-[color:var(--zui-modal-trigger-sky-border-dark,oklch(58.8%_0.158_241.966))] bg-[var(--zui-modal-trigger-sky-bg,oklch(97.7%_0.013_236.62))] dark:bg-[var(--zui-modal-trigger-sky-bg-dark,oklch(29.3%_0.066_243.157_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-sky-fg,oklch(44.3%_0.11_240.79))] dark:text-[color:var(--zui-modal-trigger-sky-fg-dark,oklch(97.7%_0.013_236.62))]\",\n rose: \"border-[color:var(--zui-modal-trigger-rose-border,oklch(45.5%_0.188_13.697))] dark:border-[color:var(--zui-modal-trigger-rose-border-dark,oklch(58.6%_0.253_17.585))] bg-[var(--zui-modal-trigger-rose-bg,oklch(96.9%_0.015_12.422))] dark:bg-[var(--zui-modal-trigger-rose-bg-dark,oklch(27.1%_0.105_12.094_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-rose-fg,oklch(45.5%_0.188_13.697))] dark:text-[color:var(--zui-modal-trigger-rose-fg-dark,oklch(96.9%_0.015_12.422))]\",\n purple:\n \"border-[color:var(--zui-modal-trigger-purple-border,oklch(43.8%_0.218_303.724))] dark:border-[color:var(--zui-modal-trigger-purple-border-dark,oklch(55.8%_0.288_302.321))] bg-[var(--zui-modal-trigger-purple-bg,oklch(97.7%_0.014_308.299))] dark:bg-[var(--zui-modal-trigger-purple-bg-dark,oklch(29.1%_0.149_302.717_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-purple-fg,oklch(43.8%_0.218_303.724))] dark:text-[color:var(--zui-modal-trigger-purple-fg-dark,oklch(97.7%_0.014_308.299))]\",\n pink: \"border-[color:var(--zui-modal-trigger-pink-border,oklch(45.9%_0.187_3.815))] dark:border-[color:var(--zui-modal-trigger-pink-border-dark,oklch(59.2%_0.249_0.584))] bg-[var(--zui-modal-trigger-pink-bg,oklch(97.1%_0.014_343.198))] dark:bg-[var(--zui-modal-trigger-pink-bg-dark,oklch(28.4%_0.109_3.907_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-pink-fg,oklch(45.9%_0.187_3.815))] dark:text-[color:var(--zui-modal-trigger-pink-fg-dark,oklch(97.1%_0.014_343.198))]\",\n orange:\n \"border-[color:var(--zui-modal-trigger-orange-border,oklch(47%_0.157_37.304))] dark:border-[color:var(--zui-modal-trigger-orange-border-dark,oklch(64.6%_0.222_41.116))] bg-[var(--zui-modal-trigger-orange-bg,oklch(98%_0.016_73.684))] dark:bg-[var(--zui-modal-trigger-orange-bg-dark,oklch(26.6%_0.079_36.259_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-orange-fg,oklch(47%_0.157_37.304))] dark:text-[color:var(--zui-modal-trigger-orange-fg-dark,oklch(98%_0.016_73.684))]\",\n yellow:\n \"border-[color:var(--zui-modal-trigger-yellow-border,oklch(47.6%_0.114_61.907))] dark:border-[color:var(--zui-modal-trigger-yellow-border-dark,oklch(68.1%_0.162_75.834))] bg-[var(--zui-modal-trigger-yellow-bg,oklch(98.7%_0.026_102.212))] dark:bg-[var(--zui-modal-trigger-yellow-bg-dark,oklch(28.6%_0.066_53.813_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-yellow-fg,oklch(47.6%_0.114_61.907))] dark:text-[color:var(--zui-modal-trigger-yellow-fg-dark,oklch(98.7%_0.026_102.212))]\",\n teal: \"border-[color:var(--zui-modal-trigger-teal-border,oklch(43.7%_0.078_188.216))] dark:border-[color:var(--zui-modal-trigger-teal-border-dark,oklch(60%_0.118_184.704))] bg-[var(--zui-modal-trigger-teal-bg,oklch(98.4%_0.014_180.72))] dark:bg-[var(--zui-modal-trigger-teal-bg-dark,oklch(27.7%_0.046_192.524_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-teal-fg,oklch(43.7%_0.078_188.216))] dark:text-[color:var(--zui-modal-trigger-teal-fg-dark,oklch(98.4%_0.014_180.72))]\",\n indigo:\n \"border-[color:var(--zui-modal-trigger-indigo-border,oklch(39.8%_0.195_277.366))] dark:border-[color:var(--zui-modal-trigger-indigo-border-dark,oklch(51.1%_0.262_276.966))] bg-[var(--zui-modal-trigger-indigo-bg,oklch(96.2%_0.018_272.314))] dark:bg-[var(--zui-modal-trigger-indigo-bg-dark,oklch(25.7%_0.09_281.288_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-indigo-fg,oklch(39.8%_0.195_277.366))] dark:text-[color:var(--zui-modal-trigger-indigo-fg-dark,oklch(96.2%_0.018_272.314))]\",\n emerald:\n \"border-[color:var(--zui-modal-trigger-emerald-border,oklch(43.2%_0.095_166.913))] dark:border-[color:var(--zui-modal-trigger-emerald-border-dark,oklch(59.6%_0.145_163.225))] bg-[var(--zui-modal-trigger-emerald-bg,oklch(97.9%_0.021_166.113))] dark:bg-[var(--zui-modal-trigger-emerald-bg-dark,oklch(26.2%_0.051_172.552_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-emerald-fg,oklch(43.2%_0.095_166.913))] dark:text-[color:var(--zui-modal-trigger-emerald-fg-dark,oklch(97.9%_0.021_166.113))]\",\n gray: \"border-[color:var(--zui-modal-trigger-gray-border,oklch(27.8%_0.033_256.848))] dark:border-[color:var(--zui-modal-trigger-gray-border-dark,oklch(44.6%_0.03_256.802))] bg-[var(--zui-modal-trigger-gray-bg,oklch(98.5%_0.002_247.839))] dark:bg-[var(--zui-modal-trigger-gray-bg-dark,oklch(13%_0.028_261.692_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-gray-fg,oklch(27.8%_0.033_256.848))] dark:text-[color:var(--zui-modal-trigger-gray-fg-dark,oklch(98.5%_0.002_247.839))]\",\n amber:\n \"border-[color:var(--zui-modal-trigger-amber-border,oklch(47.3%_0.137_46.201))] dark:border-[color:var(--zui-modal-trigger-amber-border-dark,oklch(66.6%_0.179_58.318))] bg-[var(--zui-modal-trigger-amber-bg,oklch(98.7%_0.022_95.277))] dark:bg-[var(--zui-modal-trigger-amber-bg-dark,oklch(27.9%_0.077_45.635_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-amber-fg,oklch(47.3%_0.137_46.201))] dark:text-[color:var(--zui-modal-trigger-amber-fg-dark,oklch(98.7%_0.022_95.277))]\",\n violet:\n \"border-[color:var(--zui-modal-trigger-violet-border,oklch(43.2%_0.232_292.759))] dark:border-[color:var(--zui-modal-trigger-violet-border-dark,oklch(54.1%_0.281_293.009))] bg-[var(--zui-modal-trigger-violet-bg,oklch(96.9%_0.016_293.756))] dark:bg-[var(--zui-modal-trigger-violet-bg-dark,oklch(28.3%_0.141_291.089_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-violet-fg,oklch(43.2%_0.232_292.759))] dark:text-[color:var(--zui-modal-trigger-violet-fg-dark,oklch(96.9%_0.016_293.756))]\",\n \"gradient-blue\":\n \"border-[color:var(--zui-modal-trigger-gradient-blue-border,oklch(42.4%_0.199_265.638))] dark:border-[color:var(--zui-modal-trigger-gradient-blue-border-dark,oklch(54.6%_0.245_262.881))] bg-linear-to-r from-[var(--zui-modal-trigger-gradient-blue-from,oklch(97%_0.014_254.604))] dark:from-[var(--zui-modal-trigger-gradient-blue-from-dark,oklch(28.2%_0.091_267.935_/_0.7))] to-[var(--zui-modal-trigger-gradient-blue-to,oklch(97.7%_0.014_308.299))] dark:to-[var(--zui-modal-trigger-gradient-blue-to-dark,oklch(29.1%_0.149_302.717_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-gradient-blue-fg,oklch(42.4%_0.199_265.638))] dark:text-[color:var(--zui-modal-trigger-gradient-blue-fg-dark,oklch(97%_0.014_254.604))]\",\n \"gradient-green\":\n \"border-[color:var(--zui-modal-trigger-gradient-green-border,oklch(44.8%_0.119_151.328))] dark:border-[color:var(--zui-modal-trigger-gradient-green-border-dark,oklch(62.7%_0.194_149.214))] bg-linear-to-r from-[var(--zui-modal-trigger-gradient-green-from,oklch(98.2%_0.018_155.826))] dark:from-[var(--zui-modal-trigger-gradient-green-from-dark,oklch(26.6%_0.065_152.934_/_0.7))] to-[var(--zui-modal-trigger-gradient-green-to,oklch(98.6%_0.031_120.757))] dark:to-[var(--zui-modal-trigger-gradient-green-to-dark,oklch(27.4%_0.072_132.109_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-gradient-green-fg,oklch(44.8%_0.119_151.328))] dark:text-[color:var(--zui-modal-trigger-gradient-green-fg-dark,oklch(98.2%_0.018_155.826))]\",\n \"gradient-red\":\n \"border-[color:var(--zui-modal-trigger-gradient-red-border,oklch(44.4%_0.177_26.899))] dark:border-[color:var(--zui-modal-trigger-gradient-red-border-dark,oklch(57.7%_0.245_27.325))] bg-linear-to-r from-[var(--zui-modal-trigger-gradient-red-from,oklch(97.1%_0.013_17.38))] dark:from-[var(--zui-modal-trigger-gradient-red-from-dark,oklch(25.8%_0.092_26.042_/_0.7))] to-[var(--zui-modal-trigger-gradient-red-to,oklch(97.1%_0.014_343.198))] dark:to-[var(--zui-modal-trigger-gradient-red-to-dark,oklch(28.4%_0.109_3.907_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-gradient-red-fg,oklch(44.4%_0.177_26.899))] dark:text-[color:var(--zui-modal-trigger-gradient-red-fg-dark,oklch(97.1%_0.013_17.38))]\",\n \"gradient-yellow\":\n \"border-[color:var(--zui-modal-trigger-gradient-yellow-border,oklch(47.6%_0.114_61.907))] dark:border-[color:var(--zui-modal-trigger-gradient-yellow-border-dark,oklch(68.1%_0.162_75.834))] bg-linear-to-r from-[var(--zui-modal-trigger-gradient-yellow-from,oklch(98.7%_0.026_102.212))] dark:from-[var(--zui-modal-trigger-gradient-yellow-from-dark,oklch(28.6%_0.066_53.813_/_0.7))] to-[var(--zui-modal-trigger-gradient-yellow-to,oklch(98%_0.016_73.684))] dark:to-[var(--zui-modal-trigger-gradient-yellow-to-dark,oklch(26.6%_0.079_36.259_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-gradient-yellow-fg,oklch(47.6%_0.114_61.907))] dark:text-[color:var(--zui-modal-trigger-gradient-yellow-fg-dark,oklch(98.7%_0.026_102.212))]\",\n \"gradient-purple\":\n \"border-[color:var(--zui-modal-trigger-gradient-purple-border,oklch(43.8%_0.218_303.724))] dark:border-[color:var(--zui-modal-trigger-gradient-purple-border-dark,oklch(55.8%_0.288_302.321))] bg-linear-to-r from-[var(--zui-modal-trigger-gradient-purple-from,oklch(97.7%_0.014_308.299))] dark:from-[var(--zui-modal-trigger-gradient-purple-from-dark,oklch(29.1%_0.149_302.717_/_0.7))] to-[var(--zui-modal-trigger-gradient-purple-to,oklch(97.1%_0.014_343.198))] dark:to-[var(--zui-modal-trigger-gradient-purple-to-dark,oklch(28.4%_0.109_3.907_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-gradient-purple-fg,oklch(43.8%_0.218_303.724))] dark:text-[color:var(--zui-modal-trigger-gradient-purple-fg-dark,oklch(97.7%_0.014_308.299))]\",\n \"gradient-teal\":\n \"border-[color:var(--zui-modal-trigger-gradient-teal-border,oklch(43.7%_0.078_188.216))] dark:border-[color:var(--zui-modal-trigger-gradient-teal-border-dark,oklch(60%_0.118_184.704))] bg-linear-to-r from-[var(--zui-modal-trigger-gradient-teal-from,oklch(98.4%_0.014_180.72))] dark:from-[var(--zui-modal-trigger-gradient-teal-from-dark,oklch(27.7%_0.046_192.524_/_0.7))] to-[var(--zui-modal-trigger-gradient-teal-to,oklch(98.4%_0.019_200.873))] dark:to-[var(--zui-modal-trigger-gradient-teal-to-dark,oklch(30.2%_0.056_229.695_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-gradient-teal-fg,oklch(43.7%_0.078_188.216))] dark:text-[color:var(--zui-modal-trigger-gradient-teal-fg-dark,oklch(98.4%_0.014_180.72))]\",\n \"gradient-indigo\":\n \"border-[color:var(--zui-modal-trigger-gradient-indigo-border,oklch(39.8%_0.195_277.366))] dark:border-[color:var(--zui-modal-trigger-gradient-indigo-border-dark,oklch(51.1%_0.262_276.966))] bg-linear-to-r from-[var(--zui-modal-trigger-gradient-indigo-from,oklch(96.2%_0.018_272.314))] dark:from-[var(--zui-modal-trigger-gradient-indigo-from-dark,oklch(25.7%_0.09_281.288_/_0.7))] to-[var(--zui-modal-trigger-gradient-indigo-to,oklch(97.7%_0.014_308.299))] dark:to-[var(--zui-modal-trigger-gradient-indigo-to-dark,oklch(29.1%_0.149_302.717_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-gradient-indigo-fg,oklch(39.8%_0.195_277.366))] dark:text-[color:var(--zui-modal-trigger-gradient-indigo-fg-dark,oklch(96.2%_0.018_272.314))]\",\n \"gradient-pink\":\n \"border-[color:var(--zui-modal-trigger-gradient-pink-border,oklch(45.9%_0.187_3.815))] dark:border-[color:var(--zui-modal-trigger-gradient-pink-border-dark,oklch(59.2%_0.249_0.584))] bg-linear-to-r from-[var(--zui-modal-trigger-gradient-pink-from,oklch(97.1%_0.014_343.198))] dark:from-[var(--zui-modal-trigger-gradient-pink-from-dark,oklch(28.4%_0.109_3.907_/_0.7))] to-[var(--zui-modal-trigger-gradient-pink-to,oklch(96.9%_0.015_12.422))] dark:to-[var(--zui-modal-trigger-gradient-pink-to-dark,oklch(27.1%_0.105_12.094_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-gradient-pink-fg,oklch(45.9%_0.187_3.815))] dark:text-[color:var(--zui-modal-trigger-gradient-pink-fg-dark,oklch(97.1%_0.014_343.198))]\",\n \"gradient-orange\":\n \"border-[color:var(--zui-modal-trigger-gradient-orange-border,oklch(47%_0.157_37.304))] dark:border-[color:var(--zui-modal-trigger-gradient-orange-border-dark,oklch(64.6%_0.222_41.116))] bg-linear-to-r from-[var(--zui-modal-trigger-gradient-orange-from,oklch(98%_0.016_73.684))] dark:from-[var(--zui-modal-trigger-gradient-orange-from-dark,oklch(26.6%_0.079_36.259_/_0.7))] to-[var(--zui-modal-trigger-gradient-orange-to,oklch(97.1%_0.013_17.38))] dark:to-[var(--zui-modal-trigger-gradient-orange-to-dark,oklch(25.8%_0.092_26.042_/_0.7))] backdrop-blur-xl text-[color:var(--zui-modal-trigger-gradient-orange-fg,oklch(47%_0.157_37.304))] dark:text-[color:var(--zui-modal-trigger-gradient-orange-fg-dark,oklch(98%_0.016_73.684))]\",\n} as const;\n\nexport const zuiModalContentBase =\n \"fixed left-1/2 z-50 w-[calc(100%-2rem)] max-h-[min(90vh,720px)] translate-x-[-50%] overflow-y-auto border border-[color:var(--zui-modal-content-border,#0000001a)] dark:border-[color:var(--zui-modal-content-border-dark,#ffffff1a)] bg-[var(--zui-modal-content-bg,oklch(98.4%_0.003_247.858))] dark:bg-[var(--zui-modal-content-bg-dark,oklch(12.9%_0.042_264.695))] p-6 text-[color:var(--zui-modal-content-fg,oklch(20.8%_0.042_265.755))] dark:text-[color:var(--zui-modal-content-fg-dark,oklch(98.4%_0.003_247.858))] shadow-[var(--zui-modal-content-shadow,0_12px_40px_rgba(15,23,42,0.14))] dark:shadow-[var(--zui-modal-content-shadow-dark,0_24px_80px_rgba(15,23,42,0.55))] focus:outline-none\";\n\nexport const zuiModalContentSizes = {\n sm: \"max-w-md\",\n md: \"max-w-lg\",\n lg: \"max-w-2xl\",\n xl: \"max-w-4xl\",\n full: \"max-w-[calc(100%-2rem)]\",\n} as const;\n\nexport const zuiModalContentPositions = {\n center: \"top-1/2 translate-y-[-50%]\",\n top: \"top-10 translate-y-0\",\n bottom: \"bottom-10 translate-y-0\",\n} as const;\n\nexport const zuiModalContentAppearances = {\n default:\n \"bg-[var(--zui-modal-content-default-bg,oklch(98.4%_0.003_247.858))] dark:bg-[var(--zui-modal-content-default-bg-dark,oklch(12.9%_0.042_264.695))]\",\n glass:\n \"border-[color:var(--zui-modal-content-glass-border,#00000026)] dark:border-[color:var(--zui-modal-content-glass-border-dark,#ffffff26)] bg-[var(--zui-modal-content-glass-bg,oklch(98.4%_0.003_247.858_/_0.7))] dark:bg-[var(--zui-modal-content-glass-bg-dark,oklch(12.9%_0.042_264.695_/_0.7))] backdrop-blur-xl\",\n sky: \"border-[color:var(--zui-modal-content-sky-border,oklch(44.3%_0.11_240.79))] dark:border-[color:var(--zui-modal-content-sky-border-dark,oklch(58.8%_0.158_241.966))] bg-[var(--zui-modal-content-sky-bg,oklch(97.7%_0.013_236.62))] dark:bg-[var(--zui-modal-content-sky-bg-dark,oklch(29.3%_0.066_243.157_/_0.7))] backdrop-blur-xl\",\n rose: \"border-[color:var(--zui-modal-content-rose-border,oklch(45.5%_0.188_13.697))] dark:border-[color:var(--zui-modal-content-rose-border-dark,oklch(58.6%_0.253_17.585))] bg-[var(--zui-modal-content-rose-bg,oklch(96.9%_0.015_12.422))] dark:bg-[var(--zui-modal-content-rose-bg-dark,oklch(27.1%_0.105_12.094_/_0.7))] backdrop-blur-xl\",\n purple:\n \"border-[color:var(--zui-modal-content-purple-border,oklch(43.8%_0.218_303.724))] dark:border-[color:var(--zui-modal-content-purple-border-dark,oklch(55.8%_0.288_302.321))] bg-[var(--zui-modal-content-purple-bg,oklch(97.7%_0.014_308.299))] dark:bg-[var(--zui-modal-content-purple-bg-dark,oklch(29.1%_0.149_302.717_/_0.7))] backdrop-blur-xl\",\n pink: \"border-[color:var(--zui-modal-content-pink-border,oklch(45.9%_0.187_3.815))] dark:border-[color:var(--zui-modal-content-pink-border-dark,oklch(59.2%_0.249_0.584))] bg-[var(--zui-modal-content-pink-bg,oklch(97.1%_0.014_343.198))] dark:bg-[var(--zui-modal-content-pink-bg-dark,oklch(28.4%_0.109_3.907_/_0.7))] backdrop-blur-xl\",\n orange:\n \"border-[color:var(--zui-modal-content-orange-border,oklch(47%_0.157_37.304))] dark:border-[color:var(--zui-modal-content-orange-border-dark,oklch(64.6%_0.222_41.116))] bg-[var(--zui-modal-content-orange-bg,oklch(98%_0.016_73.684))] dark:bg-[var(--zui-modal-content-orange-bg-dark,oklch(26.6%_0.079_36.259_/_0.7))] backdrop-blur-xl\",\n yellow:\n \"border-[color:var(--zui-modal-content-yellow-border,oklch(47.6%_0.114_61.907))] dark:border-[color:var(--zui-modal-content-yellow-border-dark,oklch(68.1%_0.162_75.834))] bg-[var(--zui-modal-content-yellow-bg,oklch(98.7%_0.026_102.212))] dark:bg-[var(--zui-modal-content-yellow-bg-dark,oklch(28.6%_0.066_53.813_/_0.7))] backdrop-blur-xl\",\n teal: \"border-[color:var(--zui-modal-content-teal-border,oklch(43.7%_0.078_188.216))] dark:border-[color:var(--zui-modal-content-teal-border-dark,oklch(60%_0.118_184.704))] bg-[var(--zui-modal-content-teal-bg,oklch(98.4%_0.014_180.72))] dark:bg-[var(--zui-modal-content-teal-bg-dark,oklch(27.7%_0.046_192.524_/_0.7))] backdrop-blur-xl\",\n indigo:\n \"border-[color:var(--zui-modal-content-indigo-border,oklch(39.8%_0.195_277.366))] dark:border-[color:var(--zui-modal-content-indigo-border-dark,oklch(51.1%_0.262_276.966))] bg-[var(--zui-modal-content-indigo-bg,oklch(96.2%_0.018_272.314))] dark:bg-[var(--zui-modal-content-indigo-bg-dark,oklch(25.7%_0.09_281.288_/_0.7))] backdrop-blur-xl\",\n emerald:\n \"border-[color:var(--zui-modal-content-emerald-border,oklch(43.2%_0.095_166.913))] dark:border-[color:var(--zui-modal-content-emerald-border-dark,oklch(59.6%_0.145_163.225))] bg-[var(--zui-modal-content-emerald-bg,oklch(97.9%_0.021_166.113))] dark:bg-[var(--zui-modal-content-emerald-bg-dark,oklch(26.2%_0.051_172.552_/_0.7))] backdrop-blur-xl\",\n gray: \"border-[color:var(--zui-modal-content-gray-border,oklch(27.8%_0.033_256.848))] dark:border-[color:var(--zui-modal-content-gray-border-dark,oklch(44.6%_0.03_256.802))] bg-[var(--zui-modal-content-gray-bg,oklch(98.5%_0.002_247.839))] dark:bg-[var(--zui-modal-content-gray-bg-dark,oklch(13%_0.028_261.692_/_0.7))] backdrop-blur-xl\",\n amber:\n \"border-[color:var(--zui-modal-content-amber-border,oklch(47.3%_0.137_46.201))] dark:border-[color:var(--zui-modal-content-amber-border-dark,oklch(66.6%_0.179_58.318))] bg-[var(--zui-modal-content-amber-bg,oklch(98.7%_0.022_95.277))] dark:bg-[var(--zui-modal-content-amber-bg-dark,oklch(27.9%_0.077_45.635_/_0.7))] backdrop-blur-xl\",\n violet:\n \"border-[color:var(--zui-modal-content-violet-border,oklch(43.2%_0.232_292.759))] dark:border-[color:var(--zui-modal-content-violet-border-dark,oklch(54.1%_0.281_293.009))] bg-[var(--zui-modal-content-violet-bg,oklch(96.9%_0.016_293.756))] dark:bg-[var(--zui-modal-content-violet-bg-dark,oklch(28.3%_0.141_291.089_/_0.7))] backdrop-blur-xl\",\n \"gradient-blue\":\n \"border-[color:var(--zui-modal-content-gradient-blue-border,oklch(42.4%_0.199_265.638))] dark:border-[color:var(--zui-modal-content-gradient-blue-border-dark,oklch(54.6%_0.245_262.881))] bg-linear-to-r from-[var(--zui-modal-content-gradient-blue-from,oklch(97%_0.014_254.604))] dark:from-[var(--zui-modal-content-gradient-blue-from-dark,oklch(28.2%_0.091_267.935_/_0.7))] to-[var(--zui-modal-content-gradient-blue-to,oklch(97.7%_0.014_308.299))] dark:to-[var(--zui-modal-content-gradient-blue-to-dark,oklch(29.1%_0.149_302.717_/_0.7))] backdrop-blur-xl\",\n \"gradient-green\":\n \"border-[color:var(--zui-modal-content-gradient-green-border,oklch(44.8%_0.119_151.328))] dark:border-[color:var(--zui-modal-content-gradient-green-border-dark,oklch(62.7%_0.194_149.214))] bg-linear-to-r from-[var(--zui-modal-content-gradient-green-from,oklch(98.2%_0.018_155.826))] dark:from-[var(--zui-modal-content-gradient-green-from-dark,oklch(26.6%_0.065_152.934_/_0.7))] to-[var(--zui-modal-content-gradient-green-to,oklch(98.6%_0.031_120.757))] dark:to-[var(--zui-modal-content-gradient-green-to-dark,oklch(27.4%_0.072_132.109_/_0.7))] backdrop-blur-xl\",\n \"gradient-red\":\n \"border-[color:var(--zui-modal-content-gradient-red-border,oklch(44.4%_0.177_26.899))] dark:border-[color:var(--zui-modal-content-gradient-red-border-dark,oklch(57.7%_0.245_27.325))] bg-linear-to-r from-[var(--zui-modal-content-gradient-red-from,oklch(97.1%_0.013_17.38))] dark:from-[var(--zui-modal-content-gradient-red-from-dark,oklch(25.8%_0.092_26.042_/_0.7))] to-[var(--zui-modal-content-gradient-red-to,oklch(97.1%_0.014_343.198))] dark:to-[var(--zui-modal-content-gradient-red-to-dark,oklch(28.4%_0.109_3.907_/_0.7))] backdrop-blur-xl\",\n \"gradient-yellow\":\n \"border-[color:var(--zui-modal-content-gradient-yellow-border,oklch(47.6%_0.114_61.907))] dark:border-[color:var(--zui-modal-content-gradient-yellow-border-dark,oklch(68.1%_0.162_75.834))] bg-linear-to-r from-[var(--zui-modal-content-gradient-yellow-from,oklch(98.7%_0.026_102.212))] dark:from-[var(--zui-modal-content-gradient-yellow-from-dark,oklch(28.6%_0.066_53.813_/_0.7))] to-[var(--zui-modal-content-gradient-yellow-to,oklch(98%_0.016_73.684))] dark:to-[var(--zui-modal-content-gradient-yellow-to-dark,oklch(26.6%_0.079_36.259_/_0.7))] backdrop-blur-xl\",\n \"gradient-purple\":\n \"border-[color:var(--zui-modal-content-gradient-purple-border,oklch(43.8%_0.218_303.724))] dark:border-[color:var(--zui-modal-content-gradient-purple-border-dark,oklch(55.8%_0.288_302.321))] bg-linear-to-r from-[var(--zui-modal-content-gradient-purple-from,oklch(97.7%_0.014_308.299))] dark:from-[var(--zui-modal-content-gradient-purple-from-dark,oklch(29.1%_0.149_302.717_/_0.7))] to-[var(--zui-modal-content-gradient-purple-to,oklch(97.1%_0.014_343.198))] dark:to-[var(--zui-modal-content-gradient-purple-to-dark,oklch(28.4%_0.109_3.907_/_0.7))] backdrop-blur-xl\",\n \"gradient-teal\":\n \"border-[color:var(--zui-modal-content-gradient-teal-border,oklch(43.7%_0.078_188.216))] dark:border-[color:var(--zui-modal-content-gradient-teal-border-dark,oklch(60%_0.118_184.704))] bg-linear-to-r from-[var(--zui-modal-content-gradient-teal-from,oklch(98.4%_0.014_180.72))] dark:from-[var(--zui-modal-content-gradient-teal-from-dark,oklch(27.7%_0.046_192.524_/_0.7))] to-[var(--zui-modal-content-gradient-teal-to,oklch(98.4%_0.019_200.873))] dark:to-[var(--zui-modal-content-gradient-teal-to-dark,oklch(30.2%_0.056_229.695_/_0.7))] backdrop-blur-xl\",\n \"gradient-indigo\":\n \"border-[color:var(--zui-modal-content-gradient-indigo-border,oklch(39.8%_0.195_277.366))] dark:border-[color:var(--zui-modal-content-gradient-indigo-border-dark,oklch(51.1%_0.262_276.966))] bg-linear-to-r from-[var(--zui-modal-content-gradient-indigo-from,oklch(96.2%_0.018_272.314))] dark:from-[var(--zui-modal-content-gradient-indigo-from-dark,oklch(25.7%_0.09_281.288_/_0.7))] to-[var(--zui-modal-content-gradient-indigo-to,oklch(97.7%_0.014_308.299))] dark:to-[var(--zui-modal-content-gradient-indigo-to-dark,oklch(29.1%_0.149_302.717_/_0.7))] backdrop-blur-xl\",\n \"gradient-pink\":\n \"border-[color:var(--zui-modal-content-gradient-pink-border,oklch(45.9%_0.187_3.815))] dark:border-[color:var(--zui-modal-content-gradient-pink-border-dark,oklch(59.2%_0.249_0.584))] bg-linear-to-r from-[var(--zui-modal-content-gradient-pink-from,oklch(97.1%_0.014_343.198))] dark:from-[var(--zui-modal-content-gradient-pink-from-dark,oklch(28.4%_0.109_3.907_/_0.7))] to-[var(--zui-modal-content-gradient-pink-to,oklch(96.9%_0.015_12.422))] dark:to-[var(--zui-modal-content-gradient-pink-to-dark,oklch(27.1%_0.105_12.094_/_0.7))] backdrop-blur-xl\",\n \"gradient-orange\":\n \"border-[color:var(--zui-modal-content-gradient-orange-border,oklch(47%_0.157_37.304))] dark:border-[color:var(--zui-modal-content-gradient-orange-border-dark,oklch(64.6%_0.222_41.116))] bg-linear-to-r from-[var(--zui-modal-content-gradient-orange-from,oklch(98%_0.016_73.684))] dark:from-[var(--zui-modal-content-gradient-orange-from-dark,oklch(26.6%_0.079_36.259_/_0.7))] to-[var(--zui-modal-content-gradient-orange-to,oklch(97.1%_0.013_17.38))] dark:to-[var(--zui-modal-content-gradient-orange-to-dark,oklch(25.8%_0.092_26.042_/_0.7))] backdrop-blur-xl\",\n} as const;\n","import { cva } from \"class-variance-authority\";\n\nimport {\n zuiModalContentAppearances,\n zuiModalContentBase,\n zuiModalContentPositions,\n zuiModalContentSizes,\n zuiModalOverlayBase,\n zuiModalTriggerAppearances,\n zuiModalTriggerBase,\n} from \"../../design-system/modal\";\n\nexport const modalOverlayVariants = cva(zuiModalOverlayBase);\n\nexport const modalTriggerVariants = cva(zuiModalTriggerBase, {\n variants: {\n appearance: zuiModalTriggerAppearances,\n },\n defaultVariants: {\n appearance: \"default\",\n },\n});\n\nexport const modalContentVariants = cva(zuiModalContentBase, {\n variants: {\n size: zuiModalContentSizes,\n position: zuiModalContentPositions,\n appearance: zuiModalContentAppearances,\n },\n defaultVariants: {\n size: \"md\",\n position: \"center\",\n appearance: \"default\",\n },\n});\n","\"use client\";\n\nimport {\n createContext,\n useCallback,\n useContext,\n useId,\n useMemo,\n useRef,\n useState,\n type RefObject,\n} from \"react\";\nimport { createPortal } from \"react-dom\";\n\nimport { cn } from \"../../lib/utils\";\nimport { useFocusManagement } from \"../../hooks/useFocusManagement\";\n\nimport type {\n ModalContentProps,\n ModalProps,\n ModalSectionProps,\n ModalTriggerProps,\n} from \"./types\";\nimport {\n modalContentVariants,\n modalOverlayVariants,\n modalTriggerVariants,\n} from \"./variants\";\n\ntype ModalCtx = {\n open: boolean;\n setOpen: (next: boolean) => void;\n titleId: string;\n descriptionId: string;\n contentRef: RefObject<HTMLDivElement | null>;\n triggerRef: RefObject<HTMLElement | null>;\n};\n\nconst ModalContext = createContext<ModalCtx | null>(null);\n\nexport function useModalContext(component: string): ModalCtx {\n const ctx = useContext(ModalContext);\n if (!ctx) {\n throw new Error(`${component} must be used within <Modal>`);\n }\n return ctx;\n}\n\nexport function Modal({\n open,\n defaultOpen = false,\n onOpenChange,\n children,\n}: ModalProps) {\n const isControlled = open !== undefined;\n const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);\n const resolvedOpen = isControlled ? Boolean(open) : uncontrolledOpen;\n\n const setOpen = useCallback(\n (next: boolean) => {\n if (!isControlled) {\n setUncontrolledOpen(next);\n }\n onOpenChange?.(next);\n },\n [isControlled, onOpenChange],\n );\n\n const baseId = useId();\n const titleId = `${baseId}-title`;\n const descriptionId = `${baseId}-description`;\n const contentRef = useRef<HTMLDivElement | null>(null);\n const triggerRef = useRef<HTMLElement | null>(null);\n\n const ctx = useMemo(\n () => ({\n open: resolvedOpen,\n setOpen,\n titleId,\n descriptionId,\n contentRef,\n triggerRef,\n }),\n [descriptionId, resolvedOpen, setOpen, titleId],\n );\n\n return <ModalContext.Provider value={ctx}>{children}</ModalContext.Provider>;\n}\n\nModal.displayName = \"Modal\";\n\nexport function ModalTrigger({\n className,\n children,\n appearance,\n onClick,\n ref: refProp,\n ...rest\n}: ModalTriggerProps) {\n const { setOpen, triggerRef } = useModalContext(\"ModalTrigger\");\n return (\n <button\n ref={(node) => {\n triggerRef.current = node;\n if (typeof refProp === \"function\") {\n refProp(node);\n } else if (refProp) {\n (refProp as RefObject<HTMLButtonElement | null>).current = node;\n }\n }}\n type=\"button\"\n data-slot=\"modal-trigger\"\n className={cn(modalTriggerVariants({ appearance }), className)}\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n setOpen(true);\n }\n }}\n {...rest}\n >\n {children}\n </button>\n );\n}\n\nModalTrigger.displayName = \"ModalTrigger\";\n\nexport function ModalContent({\n className,\n size,\n position,\n appearance,\n children,\n ref,\n id,\n style,\n}: ModalContentProps) {\n const { open, setOpen, titleId, descriptionId, contentRef, triggerRef } =\n useModalContext(\"ModalContent\");\n\n useFocusManagement({\n open,\n setOpen,\n contentRef,\n triggerRef,\n });\n\n const portalTarget = typeof document !== \"undefined\" ? document.body : null;\n\n if (!portalTarget) {\n return null;\n }\n\n return createPortal(\n open ? (\n <div className=\"fixed inset-0 z-9999\" data-slot=\"modal-portal\">\n <div\n role=\"presentation\"\n data-slot=\"modal-overlay\"\n className={modalOverlayVariants()}\n onClick={() => setOpen(false)}\n />\n <div\n ref={(node) => {\n contentRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref) {\n (ref as React.RefObject<HTMLDivElement | null>).current = node;\n }\n }}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={titleId}\n aria-describedby={descriptionId}\n data-slot=\"modal-content\"\n tabIndex={-1}\n className={cn(\n modalContentVariants({ size, position, appearance }),\n className,\n )}\n id={id}\n style={style}\n >\n {children}\n </div>\n </div>\n ) : null,\n portalTarget,\n );\n}\n\nModalContent.displayName = \"ModalContent\";\n\nexport function ModalHeader({ className, children }: ModalSectionProps) {\n return (\n <header\n data-slot=\"modal-header\"\n className={cn(\"mb-4 flex flex-col gap-2\", className)}\n >\n {children}\n </header>\n );\n}\n\nModalHeader.displayName = \"ModalHeader\";\n\nexport function ModalBody({ className, children }: ModalSectionProps) {\n return (\n <div\n data-slot=\"modal-body\"\n className={cn(\"text-sm text-slate-300\", className)}\n >\n {children}\n </div>\n );\n}\n\nModalBody.displayName = \"ModalBody\";\n\nexport function ModalFooter({ className, children }: ModalSectionProps) {\n return (\n <footer\n data-slot=\"modal-footer\"\n className={cn(\"mt-6 flex justify-end gap-2\", className)}\n >\n {children}\n </footer>\n );\n}\n\nModalFooter.displayName = \"ModalFooter\";\n\nexport function ModalTitle({ className, children }: ModalSectionProps) {\n const { titleId } = useModalContext(\"ModalTitle\");\n return (\n <h2\n id={titleId}\n data-slot=\"modal-title\"\n className={cn(\"text-lg font-semibold\", className)}\n >\n {children}\n </h2>\n );\n}\n\nModalTitle.displayName = \"ModalTitle\";\n\nexport function ModalDescription({ className, children }: ModalSectionProps) {\n const { descriptionId } = useModalContext(\"ModalDescription\");\n return (\n <p\n id={descriptionId}\n data-slot=\"modal-description\"\n className={cn(\"text-sm text-slate-400\", className)}\n >\n {children}\n </p>\n );\n}\n\nModalDescription.displayName = \"ModalDescription\";\n\nexport function ModalClose({\n className,\n children,\n ...rest\n}: ModalSectionProps) {\n const { setOpen } = useModalContext(\"ModalClose\");\n return (\n <button\n type=\"button\"\n data-slot=\"modal-close\"\n className={cn(\n \"absolute right-4 top-4 inline-flex size-14 items-center cursor-pointer justify-center rounded-md text-slate-800 dark:text-slate-200 transition hover:bg-white/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/30\",\n className,\n )}\n aria-label=\"Close dialog\"\n onClick={() => setOpen(false)}\n {...rest}\n >\n {children ?? \"×\"}\n </button>\n );\n}\n\nModalClose.displayName = \"ModalClose\";\n"]}